Sha256: 6079434cd0b2b725265498c9dcba00d2354b740dc8e6bb64553ef5b0d4833dc6

Contents?: true

Size: 1.3 KB

Versions: 8

Compression:

Stored size: 1.3 KB

Contents

# frozen_string_literal: true

module Katalyst
  module Content
    class EditorComponent < Editor::BaseComponent
      ACTIONS = <<~ACTIONS.gsub(/\s+/, " ").freeze
        submit->#{CONTAINER_CONTROLLER}#reindex
        content:drop->#{CONTAINER_CONTROLLER}#drop
        content:reindex->#{CONTAINER_CONTROLLER}#reindex
        turbo:render@document->#{CONTAINER_CONTROLLER}#connect
        content:reset->#{CONTAINER_CONTROLLER}#reset
      ACTIONS

      attr_reader :url, :scope

      def initialize(container:, url: [:admin, container], scope: :container, **)
        super(container:, **)

        @url   = url
        @scope = scope
      end

      def status_bar
        Editor::StatusBarComponent.new(container:)
      end

      def new_items
        Editor::NewItemsComponent.new(container:)
      end

      def item_editor(item:)
        Editor::ItemEditorComponent.new(container:, item:)
      end

      def item(item:)
        Editor::ItemComponent.new(container:, item:)
      end

      def errors
        Katalyst::Content.config.errors_component.constantize.new(container:)
      end

      def default_html_attributes
        {
          id:   container_form_id,
          data: {
            controller: CONTAINER_CONTROLLER,
            action:     ACTIONS,
          },
        }
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
katalyst-content-2.7.1 app/components/katalyst/content/editor_component.rb
katalyst-content-2.7.0 app/components/katalyst/content/editor_component.rb
katalyst-content-2.6.2 app/components/katalyst/content/editor_component.rb
katalyst-content-2.6.1 app/components/katalyst/content/editor_component.rb
katalyst-content-2.6.0 app/components/katalyst/content/editor_component.rb
katalyst-content-2.5.1 app/components/katalyst/content/editor_component.rb
katalyst-content-2.5.0 app/components/katalyst/content/editor_component.rb
katalyst-content-2.4.2 app/components/katalyst/content/editor_component.rb