Module: BetterUi::General::Components::Tabs::PanelHelper

Included in:
ApplicationHelper
Defined in:
app/helpers/better_ui/general/components/tabs/panel_helper.rb

Instance Method Summary collapse

Instance Method Details

#bui_tab_panel(id:, active: false, classes: '', **options, &block) ⇒ String

Crea un pannello di contenuto associato a una tab

Examples:

Uso base

<%= bui_tab_panel(id: "generale", active: true) do %>
  <h3>Impostazioni Generali</h3>
  <p>Contenuto del pannello generale...</p>
<% end %>

Pannello nascosto

<%= bui_tab_panel(id: "sicurezza") do %>
  <h3>Sicurezza</h3>
  <p>Contenuto del pannello sicurezza...</p>
<% end %>

Con classi personalizzate

<%= bui_tab_panel(id: "notifiche", classes: "p-6 bg-gray-50") do %>
  <h3>Notifiche</h3>
  <p>Contenuto del pannello notifiche...</p>
<% end %>

Con attributi personalizzati

<%= bui_tab_panel(id: "dashboard", data: { testid: "dashboard-panel" }) do %>
  <div class="grid grid-cols-2 gap-4">
    <div>Statistiche</div>
    <div>Grafici</div>
  </div>
<% end %>

Con form Rails

<%= bui_tab_panel(id: "profile") do %>
  <%= form_with model: @user do |form| %>
    <%= form.text_field :name, class: "form-input" %>
    <%= form.submit "Salva", class: "btn btn-primary" %>
  <% end %>
<% end %>

Parameters:

  • id (String)

    l’identificatore univoco del pannello (deve corrispondere al target della tab)

  • active (Boolean) (defaults to: false)

    se questo pannello è attualmente visibile

  • classes (String) (defaults to: '')

    classi CSS aggiuntive da applicare al pannello

  • options (Hash)

    attributi HTML aggiuntivi da applicare all’elemento

  • block (Proc)

    il contenuto del pannello

Returns:

  • (String)

    l’HTML del pannello



50
51
52
53
54
55
56
57
# File 'app/helpers/better_ui/general/components/tabs/panel_helper.rb', line 50

def bui_tab_panel(id:, active: false, classes: '', **options, &block)
  render BetterUi::General::Tabs::PanelComponent.new(
    id: id,
    active: active,
    classes: classes,
    **options
  ), &block
end