Sha256: 25b8c32f14d41c47f2c3d96d67473dcf8ce39c0e6ef7d648307110cbaf77fc04

Contents?: true

Size: 1.99 KB

Versions: 9

Compression:

Stored size: 1.99 KB

Contents

require 'pageflow_scrolled/engine'

# Entry type plugin for entries using native scrolling
module PageflowScrolled
  class << self
    def plugin
      PageflowScrolled::Plugin.new
    end

    def entry_type
      Pageflow::EntryType.new(name: 'scrolled',
                              frontend_app: PageflowScrolled::EntriesController.action(:show),
                              configuration: PageflowScrolled::Configuration,
                              editor_fragment_renderer: editor_fragment_renderer,
                              editor_app: PageflowScrolled::Engine,
                              web_app_manifest: PageflowScrolled::WebAppManifest,
                              theme_files: {
                                logo_mobile: LOGO_OPTIONS,
                                logo_desktop: LOGO_OPTIONS,
                                **FAVICONS
                              })
    end

    private

    def editor_fragment_renderer
      Pageflow::PartialEditorFragmentRenderer.new(PageflowScrolled::Editor::EntriesController)
    end
  end

  LOGO_OPTIONS = {
    content_type: %r{\Aimage/},

    styles: lambda do |file|
      if File.extname(file.file_name) == '.svg'
        {resized: {processors: [:noop]}}
      else
        {resized: '350x100>'}
      end
    end
  }.freeze

  FAVICONS = {
    favicon: {
      content_type: %r{\Aimage/svg\+xml\z},
      styles: {original: {}}
    },
    favicon_png: {
      content_type: %r{\Aimage/},
      styles: {
        w16: {
          geometry: '16x16#',
          format: 'png'
        },
        w32: {
          geometry: '32x32#',
          format: 'png'
        },
        w180: {
          geometry: '180x180#',
          format: 'png'
        },
        w192: {
          geometry: '192x192#',
          format: 'png'
        },
        w512: {
          geometry: '512x512#',
          format: 'png'
        }
      }
    },
    favicon_ico: {
      content_type: %r{\Aimage/vnd.microsoft.icon\z},
      styles: {original: {}}
    }
  }.freeze
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
pageflow-17.0.4 entry_types/scrolled/lib/pageflow_scrolled.rb
pageflow-17.0.3 entry_types/scrolled/lib/pageflow_scrolled.rb
pageflow-17.0.2 entry_types/scrolled/lib/pageflow_scrolled.rb
pageflow-17.0.1 entry_types/scrolled/lib/pageflow_scrolled.rb
pageflow-17.0.0 entry_types/scrolled/lib/pageflow_scrolled.rb
pageflow-16.2.0 entry_types/scrolled/lib/pageflow_scrolled.rb
pageflow-16.1.0 entry_types/scrolled/lib/pageflow_scrolled.rb
pageflow-16.0.0 entry_types/scrolled/lib/pageflow_scrolled.rb
pageflow-15.8.0 entry_types/scrolled/lib/pageflow_scrolled.rb