Class: Admin::SortableThComponent

Inherits:
ViewComponent::Base
  • Object
show all
Defined in:
lib/generators/infold/install/templates/app/components/admin/sortable_th_component.rb

Instance Method Summary collapse

Constructor Details

#initialize(search, field, title) ⇒ SortableThComponent

Returns a new instance of SortableThComponent.



5
6
7
8
9
# File 'lib/generators/infold/install/templates/app/components/admin/sortable_th_component.rb', line 5

def initialize(search, field, title)
  @search = search
  @field = field.to_s
  @title = title
end

Instance Method Details

#datasetObject



11
12
13
14
15
16
17
18
19
# File 'lib/generators/infold/install/templates/app/components/admin/sortable_th_component.rb', line 11

def dataset
  sort_kind = 'desc'
  sort_kind = 'asc' if @search.sort_field.to_s == @field && @search.sort_kind.to_s == 'desc'
  {
    action: 'index-page#sortChange',
    sort_field: @field,
    sort_kind: sort_kind
  }
end

#icon_classObject



21
22
23
24
25
# File 'lib/generators/infold/install/templates/app/components/admin/sortable_th_component.rb', line 21

def icon_class
  if @search.sort_field.to_s == @field
    "ms-1 bi bi-chevron-#{@search.sort_kind.to_s == 'desc' ? 'down' : 'up'}"
  end
end