Sha256: d1e178e39ebc26b603aa6d7015d04642f4f7e999b035e0d9b55842d7410d633d

Contents?: true

Size: 808 Bytes

Versions: 10

Compression:

Stored size: 808 Bytes

Contents

# frozen_string_literal: true

module Alchemy
  module Admin
    module Resource
      # Renders a table cell with the given css classes
      #
      # @param [String, nil] :css_classes
      #   css classes that are show at the table cell
      # @param [Lambda] :block
      #   a block to include a button or a link
      #
      class Cell < ViewComponent::Base
        attr_reader :block, :css_classes

        erb_template <<~ERB
          <td class="<%= css_classes %>">
            <%= view_context.capture(@resource, &block) %>
          </td>
        ERB

        def initialize(css_classes, &block)
          @css_classes = css_classes
          @block = block
        end

        def with_resource(resource)
          @resource = resource
          self
        end
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
alchemy_cms-7.4.2 app/components/alchemy/admin/resource/cell.rb
alchemy_cms-7.3.6 app/components/alchemy/admin/resource/cell.rb
alchemy_cms-7.4.1 app/components/alchemy/admin/resource/cell.rb
alchemy_cms-7.4.0 app/components/alchemy/admin/resource/cell.rb
alchemy_cms-7.3.5 app/components/alchemy/admin/resource/cell.rb
alchemy_cms-7.3.4 app/components/alchemy/admin/resource/cell.rb
alchemy_cms-7.3.3 app/components/alchemy/admin/resource/cell.rb
alchemy_cms-7.3.2 app/components/alchemy/admin/resource/cell.rb
alchemy_cms-7.3.1 app/components/alchemy/admin/resource/cell.rb
alchemy_cms-7.3.0 app/components/alchemy/admin/resource/cell.rb