Module: HakumiComponents::Table::Concerns::Columns
- Extended by:
- ActiveSupport::Concern, T::Helpers, T::Sig
- Included in:
- HakumiComponents::Table::Component
- Defined in:
- app/components/hakumi_components/table/concerns/columns.rb
Constant Summary collapse
- ColumnInputValue =
T.type_alias { HakumiComponents::Table::DefinitionTypes::DefinitionValue }
- ColumnInputHash =
T.type_alias { HakumiComponents::Table::DefinitionTypes::RawRecord }
- ColumnInput =
T.type_alias { T.any(Symbol, ColumnInputHash) }
Instance Method Summary collapse
- #columns_data ⇒ Object
- #compute_fixed_offsets(leaf_columns) ⇒ Object
- #dimension_to_css(value) ⇒ Object
- #expand_column? ⇒ Boolean
- #expandable? ⇒ Boolean
- #expandable_config ⇒ Object
- #generate_id(prefix = "") ⇒ Object
- #leaf_column_count ⇒ Object
- #leaf_columns ⇒ Object
- #normalized_columns ⇒ Object
- #row_drag_config ⇒ Object
- #row_selection_config ⇒ Object
- #selection_column? ⇒ Boolean
Instance Method Details
#columns_data ⇒ Object
19 |
# File 'app/components/hakumi_components/table/concerns/columns.rb', line 19 def columns_data; end |
#compute_fixed_offsets(leaf_columns) ⇒ Object
37 |
# File 'app/components/hakumi_components/table/concerns/columns.rb', line 37 def compute_fixed_offsets(leaf_columns); end |
#dimension_to_css(value) ⇒ Object
34 |
# File 'app/components/hakumi_components/table/concerns/columns.rb', line 34 def dimension_to_css(value); end |
#expand_column? ⇒ Boolean
62 63 64 |
# File 'app/components/hakumi_components/table/concerns/columns.rb', line 62 def &. == true end |
#expandable? ⇒ Boolean
57 58 59 |
# File 'app/components/hakumi_components/table/concerns/columns.rb', line 57 def !.nil? end |
#expandable_config ⇒ Object
25 |
# File 'app/components/hakumi_components/table/concerns/columns.rb', line 25 def ; end |
#generate_id(prefix = "") ⇒ Object
31 |
# File 'app/components/hakumi_components/table/concerns/columns.rb', line 31 def generate_id(prefix = ""); end |
#leaf_column_count ⇒ Object
47 48 49 |
# File 'app/components/hakumi_components/table/concerns/columns.rb', line 47 def leaf_column_count [ leaf_columns.size, 1 ].max end |
#leaf_columns ⇒ Object
40 41 42 43 44 |
# File 'app/components/hakumi_components/table/concerns/columns.rb', line 40 def leaf_columns @leaf_columns = T.let(@leaf_columns, T.nilable(T::Array[HakumiComponents::Table::ColumnDefinition])) if defined?(@leaf_columns) @leaf_columns = T.let(nil, T.nilable(T::Array[HakumiComponents::Table::ColumnDefinition])) unless defined?(@leaf_columns) @leaf_columns ||= flatten_leaf_columns(normalized_columns) end |
#normalized_columns ⇒ Object
67 68 69 70 71 72 73 74 75 76 77 78 79 |
# File 'app/components/hakumi_components/table/concerns/columns.rb', line 67 def normalized_columns @normalized_columns = T.let(@normalized_columns, T.nilable(T::Array[HakumiComponents::Table::ColumnDefinition])) if defined?(@normalized_columns) @normalized_columns = T.let(nil, T.nilable(T::Array[HakumiComponents::Table::ColumnDefinition])) unless defined?(@normalized_columns) @normalized_columns ||= begin columns = normalize_columns(columns_data) columns = insert_drag_handle_column(columns) columns = insert_selection_column(columns) columns = (columns) columns = columns.compact compute_fixed_offsets(flatten_leaf_columns(columns)) columns end end |
#row_drag_config ⇒ Object
28 |
# File 'app/components/hakumi_components/table/concerns/columns.rb', line 28 def row_drag_config; end |
#row_selection_config ⇒ Object
22 |
# File 'app/components/hakumi_components/table/concerns/columns.rb', line 22 def row_selection_config; end |
#selection_column? ⇒ Boolean
52 53 54 |
# File 'app/components/hakumi_components/table/concerns/columns.rb', line 52 def selection_column? !row_selection_config.nil? end |