Sha256: f69bf511b232ffb7c0e9fb2b14077fa286859f8a487d065aacb4eea8e02fb40e
Contents?: true
Size: 1.61 KB
Versions: 13
Compression:
Stored size: 1.61 KB
Contents
module Locomotive module API module Entities class PageEntity < BaseEntity expose :title, :parent_id, :position, :handle, :depth, :response_type, :listed, :published, :translated_in, :cache_enabled # Path expose :slug, :fullpath # Sections expose :sections_dropzone_content, :sections_content expose :localized_fullpaths do |page, options| (options[:site]&.locales || []).inject({}) do |hash, locale| hash.merge(locale => options[:url_builder].url_for(page, locale)) end end # Redirection expose :redirect, :redirect_url, :redirect_type # Templatized page (related to a content type) expose :templatized, :templatized_from_parent expose :content_type do |page, _| page.content_type.try(:slug) end # Layout / Template expose :is_layout, :allow_layout expose :template do |page, _| page.raw_template end # Editable elements expose :editable_elements, using: EditableElementEntity # Sections expose :sections_dropzone_content do |page, _| page.sections_dropzone_content&.to_json end expose :sections_content do |page, _| page.sections_content&.to_json end # SEO expose :seo_title, :meta_keywords, :meta_description end class FullpathPageEntity < BaseEntity expose :fullpath expose :handle unexpose :created_at unexpose :updated_at end end end end
Version data entries
13 entries across 13 versions & 1 rubygems