hugo/resources/page/page_marshaljson.autogen.go
Bjørn Erik Pedersen 241b21b0fd Create a struct with all of Hugo's config options
Primary motivation is documentation, but it will also hopefully simplify the code.

Also,

* Lower case the default output format names; this is in line with the custom ones (map keys) and how
it's treated all the places. This avoids doing `stringds.EqualFold` everywhere.

Closes #10896
Closes #10620
2023-05-16 18:01:29 +02:00

183 lines
5.8 KiB
Go

// Copyright 2019 The Hugo Authors. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// This file is autogenerated.
package page
import (
"encoding/json"
"github.com/gohugoio/hugo/common/maps"
"github.com/gohugoio/hugo/config"
"github.com/gohugoio/hugo/hugofs/files"
"github.com/gohugoio/hugo/identity"
"github.com/gohugoio/hugo/langs"
"github.com/gohugoio/hugo/media"
"github.com/gohugoio/hugo/navigation"
"github.com/gohugoio/hugo/source"
"time"
)
func MarshalPageToJSON(p Page) ([]byte, error) {
rawContent := p.RawContent()
resourceType := p.ResourceType()
mediaType := p.MediaType()
permalink := p.Permalink()
relPermalink := p.RelPermalink()
name := p.Name()
title := p.Title()
params := p.Params()
data := p.Data()
date := p.Date()
lastmod := p.Lastmod()
publishDate := p.PublishDate()
expiryDate := p.ExpiryDate()
aliases := p.Aliases()
bundleType := p.BundleType()
description := p.Description()
draft := p.Draft()
isHome := p.IsHome()
keywords := p.Keywords()
kind := p.Kind()
layout := p.Layout()
linkTitle := p.LinkTitle()
isNode := p.IsNode()
isPage := p.IsPage()
path := p.Path()
pathc := p.Pathc()
slug := p.Slug()
lang := p.Lang()
isSection := p.IsSection()
section := p.Section()
sectionsEntries := p.SectionsEntries()
sectionsPath := p.SectionsPath()
sitemap := p.Sitemap()
typ := p.Type()
weight := p.Weight()
language := p.Language()
file := p.File()
gitInfo := p.GitInfo()
codeOwners := p.CodeOwners()
outputFormats := p.OutputFormats()
alternativeOutputFormats := p.AlternativeOutputFormats()
menus := p.Menus()
translationKey := p.TranslationKey()
isTranslated := p.IsTranslated()
allTranslations := p.AllTranslations()
translations := p.Translations()
store := p.Store()
getIdentity := p.GetIdentity()
s := struct {
RawContent string
ResourceType string
MediaType media.Type
Permalink string
RelPermalink string
Name string
Title string
Params maps.Params
Data interface{}
Date time.Time
Lastmod time.Time
PublishDate time.Time
ExpiryDate time.Time
Aliases []string
BundleType files.ContentClass
Description string
Draft bool
IsHome bool
Keywords []string
Kind string
Layout string
LinkTitle string
IsNode bool
IsPage bool
Path string
Pathc string
Slug string
Lang string
IsSection bool
Section string
SectionsEntries []string
SectionsPath string
Sitemap config.SitemapConfig
Type string
Weight int
Language *langs.Language
File source.File
GitInfo source.GitInfo
CodeOwners []string
OutputFormats OutputFormats
AlternativeOutputFormats OutputFormats
Menus navigation.PageMenus
TranslationKey string
IsTranslated bool
AllTranslations Pages
Translations Pages
Store *maps.Scratch
GetIdentity identity.Identity
}{
RawContent: rawContent,
ResourceType: resourceType,
MediaType: mediaType,
Permalink: permalink,
RelPermalink: relPermalink,
Name: name,
Title: title,
Params: params,
Data: data,
Date: date,
Lastmod: lastmod,
PublishDate: publishDate,
ExpiryDate: expiryDate,
Aliases: aliases,
BundleType: bundleType,
Description: description,
Draft: draft,
IsHome: isHome,
Keywords: keywords,
Kind: kind,
Layout: layout,
LinkTitle: linkTitle,
IsNode: isNode,
IsPage: isPage,
Path: path,
Pathc: pathc,
Slug: slug,
Lang: lang,
IsSection: isSection,
Section: section,
SectionsEntries: sectionsEntries,
SectionsPath: sectionsPath,
Sitemap: sitemap,
Type: typ,
Weight: weight,
Language: language,
File: file,
GitInfo: gitInfo,
CodeOwners: codeOwners,
OutputFormats: outputFormats,
AlternativeOutputFormats: alternativeOutputFormats,
Menus: menus,
TranslationKey: translationKey,
IsTranslated: isTranslated,
AllTranslations: allTranslations,
Translations: translations,
Store: store,
GetIdentity: getIdentity,
}
return json.Marshal(&s)
}