URI: 
       resources/page: Pull internal Page methods into its own interface - hugo - [fork] hugo port for 9front
  HTML git clone git@git.drkhsh.at/hugo.git
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
   DIR README
   DIR LICENSE
       ---
   DIR commit c892e75fbce3a0ed04cd4edcda7a480a4e36836c
   DIR parent 4255d13d3e2e64f6ca9d29b640081992eb31161e
  HTML Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
       Date:   Thu,  2 May 2024 10:41:58 +0200
       
       resources/page: Pull internal Page methods into its own interface
       
       So it doesn't get visible when passing it to `jsonify`.
       
       Diffstat:
         M hugolib/page__common.go             |       1 +
         M hugolib/page__new.go                |       1 +
         M resources/page/page.go              |      10 +++++++---
       
       3 files changed, 9 insertions(+), 3 deletions(-)
       ---
   DIR diff --git a/hugolib/page__common.go b/hugolib/page__common.go
       @@ -67,6 +67,7 @@ type pageCommon struct {
                page.InSectionPositioner
                page.OutputFormatsProvider
                page.PageMetaProvider
       +        page.PageMetaInternalProvider
                page.Positioner
                page.RawContentProvider
                page.RelatedKeywordsProvider
   DIR diff --git a/hugolib/page__new.go b/hugolib/page__new.go
       @@ -184,6 +184,7 @@ func (h *HugoSites) newPage(m *pageMeta) (*pageState, *paths.Path, error) {
                                        ResourceNameTitleProvider: m,
                                        ResourceParamsProvider:    m,
                                        PageMetaProvider:          m,
       +                                PageMetaInternalProvider:  m,
                                        RelatedKeywordsProvider:   m,
                                        OutputFormatsProvider:     page.NopPage,
                                        ResourceTypeProvider:      pageTypesProvider,
   DIR diff --git a/resources/page/page.go b/resources/page/page.go
       @@ -225,9 +225,6 @@ type PageMetaProvider interface {
                // to the source of this Page. It will be relative to any content root.
                Path() string
        
       -        // This is for internal use only.
       -        PathInfo() *paths.Path
       -
                // The slug, typically defined in front matter.
                Slug() string
        
       @@ -253,6 +250,12 @@ type PageMetaProvider interface {
                Weight() int
        }
        
       +// PageMetaInternalProvider provides internal page metadata.
       +type PageMetaInternalProvider interface {
       +        // This is for internal use only.
       +        PathInfo() *paths.Path
       +}
       +
        // PageRenderProvider provides a way for a Page to render content.
        type PageRenderProvider interface {
                // Render renders the given layout with this Page as context.
       @@ -273,6 +276,7 @@ type PageWithoutContent interface {
                RenderShortcodesProvider
                resource.Resource
                PageMetaProvider
       +        PageMetaInternalProvider
                resource.LanguageProvider
        
                // For pages backed by a file.