Sha256: cff7eeee2f14549ae959a56f36e48a6ed9ffb6da29df4a695a1912201bccf9c8

Contents?: true

Size: 748 Bytes

Versions: 5

Compression:

Stored size: 748 Bytes

Contents

# frozen_string_literal: true

module Primer
  # A basic wrapper component for most layout related needs.
  class BoxComponent < Primer::Component
    # @example Default
    #   <%= render(Primer::BoxComponent.new) { "Your content here" } %>
    #
    # @example Color and padding
    #   <%= render(Primer::BoxComponent.new(bg: :gray, p: 3)) { "Hello world" } %>
    #
    # @param system_arguments [Hash] <%= link_to_system_arguments_docs %>
    def initialize(**system_arguments)
      @system_arguments = system_arguments
      @system_arguments[:tag] = :div
    end

    def call
      render(Primer::BaseComponent.new(**@system_arguments)) { content }
    end

    def self.status
      Primer::Component::STATUSES[:stable]
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
primer_view_components-0.0.26 app/components/primer/box_component.rb
primer_view_components-0.0.25 app/components/primer/box_component.rb
primer_view_components-0.0.24 app/components/primer/box_component.rb
primer_view_components-0.0.23 app/components/primer/box_component.rb
primer_view_components-0.0.22 app/components/primer/box_component.rb