Class: HaveAPI::LocalizedMessage

Inherits:
Object
  • Object
show all
Defined in:
lib/haveapi/i18n.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(key, default: nil, scope: nil, **values) ⇒ LocalizedMessage

Returns a new instance of LocalizedMessage.



7
8
9
10
11
# File 'lib/haveapi/i18n.rb', line 7

def initialize(key, default: nil, scope: nil, **values)
  @key = normalize_key(key, scope)
  @default = default
  @values = values
end

Instance Attribute Details

#defaultObject (readonly)

Returns the value of attribute default.



5
6
7
# File 'lib/haveapi/i18n.rb', line 5

def default
  @default
end

#keyObject (readonly)

Returns the value of attribute key.



5
6
7
# File 'lib/haveapi/i18n.rb', line 5

def key
  @key
end

#valuesObject (readonly)

Returns the value of attribute values.



5
6
7
# File 'lib/haveapi/i18n.rb', line 5

def values
  @values
end

Instance Method Details

#to_sObject



21
22
23
# File 'lib/haveapi/i18n.rb', line 21

def to_s
  translate
end

#translate(extra_values = {}) ⇒ Object



13
14
15
16
17
18
19
# File 'lib/haveapi/i18n.rb', line 13

def translate(extra_values = {})
  values = localized_values(@values.merge(extra_values))
  opts = values
  opts[:default] = @default if @default

  ::I18n.t(@key, **opts)
end