class ReportsKit::Reports::Dimension

Attributes

properties[RW]

Public Class Methods

new(properties) click to toggle source
# File lib/reports_kit/reports/dimension.rb, line 6
def initialize(properties)
  raise ArgumentError.new('Blank properties') if properties.blank?
  properties = { key: properties } if properties.is_a?(String)
  raise ArgumentError.new("Dimension properties must be a String or Hash, not a #{properties.class.name}: #{properties.inspect}") unless properties.is_a?(Hash)
  properties = properties.deep_symbolize_keys
  self.properties = properties
end

Public Instance Methods

expression() click to toggle source
# File lib/reports_kit/reports/dimension.rb, line 18
def expression
  properties[:expression] || key
end
key() click to toggle source
# File lib/reports_kit/reports/dimension.rb, line 14
def key
  properties[:key]
end
label() click to toggle source
# File lib/reports_kit/reports/dimension.rb, line 22
def label
  properties.key?(:label) ? properties[:label] : key.titleize
end