mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-24 07:39:39 +02:00
* [claudesquad] update from 'component-namespacing' on 18 Jul 25 07:23 EDT * [claudesquad] update from 'component-namespacing' on 18 Jul 25 07:30 EDT * Update stimulus controller references to use namespace * Fix remaining tests
29 lines
930 B
Ruby
29 lines
930 B
Ruby
class DS::Tabs::Nav < DesignSystemComponent
|
|
erb_template <<~ERB
|
|
<%= tag.nav class: classes do %>
|
|
<% btns.each do |btn| %>
|
|
<%= btn %>
|
|
<% end %>
|
|
<% end %>
|
|
ERB
|
|
|
|
renders_many :btns, ->(id:, label:, classes: nil, &block) do
|
|
content_tag(
|
|
:button, label, id: id,
|
|
type: "button",
|
|
class: class_names(btn_classes, id == active_tab ? active_btn_classes : inactive_btn_classes, classes),
|
|
data: { id: id, action: "DS--tabs#show", DS__tabs_target: "navBtn" },
|
|
&block
|
|
)
|
|
end
|
|
|
|
attr_reader :active_tab, :classes, :active_btn_classes, :inactive_btn_classes, :btn_classes
|
|
|
|
def initialize(active_tab:, classes: nil, active_btn_classes: nil, inactive_btn_classes: nil, btn_classes: nil)
|
|
@active_tab = active_tab
|
|
@classes = classes
|
|
@active_btn_classes = active_btn_classes
|
|
@inactive_btn_classes = inactive_btn_classes
|
|
@btn_classes = btn_classes
|
|
end
|
|
end
|