Class: StompBase::Pages::ModelDetailComponent
- Inherits:
-
BaseComponent
- Object
- ViewComponent::Base
- BaseComponent
- StompBase::Pages::ModelDetailComponent
- Defined in:
- app/components/stomp_base/pages/model_detail_component.rb
Instance Method Summary collapse
- #data_table_component ⇒ Object
- #header_component ⇒ Object
-
#initialize(model_name:, model_class:, columns:, records:, pagination:) ⇒ ModelDetailComponent
constructor
A new instance of ModelDetailComponent.
- #pagination_component ⇒ Object
- #summary_card_component ⇒ Object
Methods inherited from BaseComponent
Constructor Details
#initialize(model_name:, model_class:, columns:, records:, pagination:) ⇒ ModelDetailComponent
Returns a new instance of ModelDetailComponent.
6 7 8 9 10 11 12 13 |
# File 'app/components/stomp_base/pages/model_detail_component.rb', line 6 def initialize(model_name:, model_class:, columns:, records:, pagination:) super() @model_name = model_name @model_class = model_class @columns = columns @records = records @pagination = pagination end |
Instance Method Details
#data_table_component ⇒ Object
34 35 36 37 38 39 40 41 42 |
# File 'app/components/stomp_base/pages/model_detail_component.rb', line 34 def data_table_component StompBase::Models::DataTableComponent.new( columns: @columns, records: @records, model_class: @model_class, current_page: @pagination[:current_page], total_pages: @pagination[:total_pages] ) end |
#header_component ⇒ Object
15 16 17 18 19 20 21 22 23 24 |
# File 'app/components/stomp_base/pages/model_detail_component.rb', line 15 def header_component StompBase::Ui::HeaderComponent.new( title: model_name, navigation: { back_path: helpers.stomp_base.models_path, back_label: t("stomp_base.models.list"), show_refresh: true } ) end |
#pagination_component ⇒ Object
44 45 46 47 48 49 50 51 52 |
# File 'app/components/stomp_base/pages/model_detail_component.rb', line 44 def pagination_component StompBase::Ui::PaginationComponent.new( model_name: @model_name, current_page: @pagination[:current_page], total_pages: @pagination[:total_pages], per_page: @pagination[:per_page], total_count: @pagination[:total_count] ) end |
#summary_card_component ⇒ Object
26 27 28 29 30 31 32 |
# File 'app/components/stomp_base/pages/model_detail_component.rb', line 26 def summary_card_component StompBase::Models::SummaryCardComponent.new( table_name: @model_class.table_name, column_count: @columns.size, total_count: @pagination[:total_count] ) end |