Sha256: 201acbfb5f6aedefde3645d8b89ad3e3d3acb3ee58a423a2b55f2831aef277b9

Contents?: true

Size: 1.01 KB

Versions: 7

Compression:

Stored size: 1.01 KB

Contents

# frozen_string_literal: true

module Katalyst
  module Navigation
    module Editor
      class TableComponent < BaseComponent
        ACTIONS = <<~ACTIONS.gsub(/\s+/, " ").freeze
          dragstart->#{LIST_CONTROLLER}#dragstart
          dragover->#{LIST_CONTROLLER}#dragover
          dragenter->#{LIST_CONTROLLER}#dragenter
          dragleave->#{LIST_CONTROLLER}#dragleave
          drop->#{LIST_CONTROLLER}#drop
          dragend->#{LIST_CONTROLLER}#dragend
          keyup.esc@document->#{LIST_CONTROLLER}#dragend
        ACTIONS

        renders_many :items, ->(item) do
          row = RowComponent.new(item:, menu:)
          row.with_content(render(ItemComponent.new(item:, menu:)))
          row
        end

        private

        def default_html_attributes
          {
            data: {
              controller:                  LIST_CONTROLLER,
              action:                      ACTIONS,
              "#{MENU_CONTROLLER}_target": "menu",
            },
          }
        end
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
katalyst-navigation-1.8.4 app/components/katalyst/navigation/editor/table_component.rb
katalyst-navigation-1.8.3 app/components/katalyst/navigation/editor/table_component.rb
katalyst-navigation-1.8.2 app/components/katalyst/navigation/editor/table_component.rb
katalyst-navigation-1.8.1 app/components/katalyst/navigation/editor/table_component.rb
katalyst-navigation-1.8.0 app/components/katalyst/navigation/editor/table_component.rb
katalyst-navigation-1.6.0 app/components/katalyst/navigation/editor/table_component.rb
katalyst-navigation-1.5.2 app/components/katalyst/navigation/editor/table_component.rb