Class: ViewComponent::Translatable::I18nBackend
- Inherits:
-
I18n::Backend::Simple
- Object
- I18n::Backend::Simple
- ViewComponent::Translatable::I18nBackend
- Defined in:
- lib/view_component/translatable.rb
Constant Summary collapse
- EMPTY_HASH =
{}.freeze
Instance Method Summary collapse
-
#initialize(i18n_scope:, load_paths:) ⇒ I18nBackend
constructor
A new instance of I18nBackend.
-
#load_translations ⇒ Object
Ensure the Simple backend won’t load paths from ::I18n.load_path.
- #scope_data(data) ⇒ Object
- #store_translations(locale, data, options = EMPTY_HASH) ⇒ Object
Constructor Details
#initialize(i18n_scope:, load_paths:) ⇒ I18nBackend
Returns a new instance of I18nBackend.
69 70 71 72 |
# File 'lib/view_component/translatable.rb', line 69 def initialize(i18n_scope:, load_paths:) @i18n_scope = i18n_scope.split(".").map(&:to_sym) @load_paths = load_paths end |
Instance Method Details
#load_translations ⇒ Object
Ensure the Simple backend won’t load paths from ::I18n.load_path
75 76 77 |
# File 'lib/view_component/translatable.rb', line 75 def load_translations super(@load_paths) end |
#scope_data(data) ⇒ Object
79 80 81 82 83 84 |
# File 'lib/view_component/translatable.rb', line 79 def scope_data(data) @i18n_scope.reverse_each do |part| data = {part => data} end data end |
#store_translations(locale, data, options = EMPTY_HASH) ⇒ Object
86 87 88 |
# File 'lib/view_component/translatable.rb', line 86 def store_translations(locale, data, = EMPTY_HASH) super(locale, scope_data(data), ) end |