Class: ActiveElement::Components::Util::I18n
- Inherits:
-
Object
- Object
- ActiveElement::Components::Util::I18n
- Defined in:
- lib/active_element/components/util/i18n.rb
Overview
Translates various parameters using ‘I18n` library, allows users to specify labels, descriptions, placeholders, etc. for various components in locales files.
Class Method Summary collapse
Instance Method Summary collapse
- #description(field, record: nil) ⇒ Object
- #format(field, record: nil) ⇒ Object
-
#initialize(component) ⇒ I18n
constructor
A new instance of I18n.
- #label(field, record: nil) ⇒ Object
- #placeholder(field, record: nil) ⇒ Object
Constructor Details
#initialize(component) ⇒ I18n
Returns a new instance of I18n.
14 15 16 |
# File 'lib/active_element/components/util/i18n.rb', line 14 def initialize(component) @component = component end |
Class Method Details
.class_name(val, plural: false) ⇒ Object
9 10 11 12 |
# File 'lib/active_element/components/util/i18n.rb', line 9 def self.class_name(val, plural: false) base = val&.to_s&.underscore&.tr('/', '_') plural ? base&.pluralize : base end |
Instance Method Details
#description(field, record: nil) ⇒ Object
25 26 27 28 29 30 |
# File 'lib/active_element/components/util/i18n.rb', line 25 def description(field, record: nil) return nil unless model?(record) key = "admin.models.#{model_key(record)}.fields.#{field}.description" ::I18n.t(key, default: nil) end |
#format(field, record: nil) ⇒ Object
39 40 41 42 43 44 |
# File 'lib/active_element/components/util/i18n.rb', line 39 def format(field, record: nil) return nil unless model?(record) key = "admin.models.#{model_key(record)}.fields.#{field}.format" ::I18n.t(key, default: nil) end |
#label(field, record: nil) ⇒ Object
18 19 20 21 22 23 |
# File 'lib/active_element/components/util/i18n.rb', line 18 def label(field, record: nil) return titleize(field) unless model?(record) key = "admin.models.#{model_key(record)}.fields.#{field}.label" ::I18n.t(key, default: titleize(field)) end |
#placeholder(field, record: nil) ⇒ Object
32 33 34 35 36 37 |
# File 'lib/active_element/components/util/i18n.rb', line 32 def placeholder(field, record: nil) return nil unless model?(record) key = "admin.models.#{model_key(record)}.fields.#{field}.placeholder" ::I18n.t(key, default: nil) end |