Sha256: 113efe95a96973ddce44e4486ccb5e60dac63f4e790bb4627d8b66b3b60daf4a
Contents?: true
Size: 1.16 KB
Versions: 2
Compression:
Stored size: 1.16 KB
Contents
# frozen_string_literal: true module Primer # Use ButtonGroupComponent to render a series of buttons. class ButtonGroupComponent < Primer::Component # Required list of buttons to be rendered. # # @param kwargs [Hash] The same arguments as <%= link_to_component(Primer::ButtonComponent) %>. renders_many :buttons, ->(**kwargs) { Primer::ButtonComponent.new(group_item: true, **kwargs) } # @example Default # <%= render(Primer::ButtonGroupComponent.new) do |component| # component.button { "Default" } # component.button(button_type: :primary) { "Primary" } # component.button(button_type: :danger) { "Danger" } # component.button(button_type: :outline) { "Outline" } # component.button(classes: "my-class") { "Custom class" } # end %> # # @param system_arguments [Hash] <%= link_to_system_arguments_docs %> def initialize(**system_arguments) @system_arguments = system_arguments @system_arguments[:tag] ||= :div @system_arguments[:classes] = class_names( "BtnGroup", system_arguments[:classes] ) end def render? buttons.any? end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
primer_view_components-0.0.33 | app/components/primer/button_group_component.rb |
primer_view_components-0.0.32 | app/components/primer/button_group_component.rb |