Class: TypicalSort::Params

Inherits:
Object
  • Object
show all
Defined in:
lib/typical_sort/params.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params:, configuration:, default_attribute:, default_direction:) ⇒ Params

Returns a new instance of Params.



7
8
9
10
11
12
# File 'lib/typical_sort/params.rb', line 7

def initialize(params:, configuration:, default_attribute:, default_direction:)
  @params = params
  @configuration = configuration
  @default_attribute = default_attribute
  @default_direction = default_direction
end

Instance Attribute Details

#configurationObject (readonly)

Returns the value of attribute configuration.



5
6
7
# File 'lib/typical_sort/params.rb', line 5

def configuration
  @configuration
end

#default_attributeObject (readonly)

Returns the value of attribute default_attribute.



5
6
7
# File 'lib/typical_sort/params.rb', line 5

def default_attribute
  @default_attribute
end

#default_directionObject (readonly)

Returns the value of attribute default_direction.



5
6
7
# File 'lib/typical_sort/params.rb', line 5

def default_direction
  @default_direction
end

#paramsObject (readonly)

Returns the value of attribute params.



5
6
7
# File 'lib/typical_sort/params.rb', line 5

def params
  @params
end

Instance Method Details

#attributeObject



14
15
16
# File 'lib/typical_sort/params.rb', line 14

def attribute
  explicit_attribute || default_attribute
end

#directionObject



18
19
20
# File 'lib/typical_sort/params.rb', line 18

def direction
  explicit_direction || normalized_direction(default_direction) || configuration.default_direction
end

#explicit?Boolean

Returns:

  • (Boolean)


22
23
24
# File 'lib/typical_sort/params.rb', line 22

def explicit?
  raw_sort.present?
end