rails_i18n_extended 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9f06aeae35fc27132e4b1c79b387dbedde3b950ca476803c7b1195652e89729a
4
- data.tar.gz: 32937a649d66ce181748a1adbc1e11c67e9000a27e9fb43e11ef54a91989e6b8
3
+ metadata.gz: 5cb26034602a59290e068729def78b2944d2963faacb18f162108d6c258052a3
4
+ data.tar.gz: 3752b3fe15b4460ab036eba1ecb54f9492cef0ac7adde75beebee02fcf4d712b
5
5
  SHA512:
6
- metadata.gz: fd4f03e9b9c2113f960d84aa79a1751967d7105608e4c84f3beeabe4a8c9dbc10dcf4986ecd2f6fb2953486a71a1ae4c1b9288133561407348c383a149f49bdc
7
- data.tar.gz: 41117349d808239ade16f34567f17f0c68da874a9ca266f039f3c84016aaf4c808b197fb03b06e1d3021bba11bb29393ad6b987d3d79bb51169e873b9da0dabe
6
+ metadata.gz: 1257d55e226ff56d2c31cfa3de33bf3f8af1df6db10f3610a18ea148150f9f56931acd2d0fce7df5d1a036c1f11391d1e67d6042af22f7cb4bc48d0d0ad360fa
7
+ data.tar.gz: 1d0be4257ee048b8303d827582d4491c7f07405c6ce82ff71515bbccee74f28bdfcc76b262b4b748d36f77a635fc331b7a3d3fcf61205c378cd67ac38a22c17b
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rails_i18n_extended (0.1.2)
4
+ rails_i18n_extended (0.1.3)
5
5
  activerecord (>= 6)
6
6
  sqlite3
7
7
 
@@ -4,22 +4,19 @@ module I18n
4
4
  class << self
5
5
 
6
6
  def translate_with_default key, options={}, original=nil
7
- begin
8
- self.translate_without_default(key, **{raise: true}.update(options))
9
- rescue => e
10
- split = key.to_s.split('.')
11
- if split.size <= 2
12
- translate_without_default original || key, **options
13
- else
14
- v = split.pop
15
- v2 = split.pop
16
- split.pop if v2 == 'defaults'
17
- split << 'defaults' << v
18
- new_key = split.join('.')
19
- translate_with_default new_key, options, original || key
7
+ defaults = []
8
+ chain = key.to_s.split('.')
9
+ unless chain[-2] == 'defaults'
10
+ last = chain.pop
11
+ while chain.size > 0
12
+ chain.pop
13
+ defaults << (chain + ['defaults', last]).join('.').to_sym
20
14
  end
21
15
  end
16
+
17
+ translate_without_default(key, **{default: defaults}.update(options))
22
18
  end
19
+
23
20
  alias_method :translate_without_default, :translate
24
21
  alias_method :translate, :translate_with_default
25
22
  alias_method :t, :translate
@@ -27,6 +24,7 @@ module I18n
27
24
  def translate_with_fallback(key = nil, **options)
28
25
  locale = options[:locale] || I18n.locale
29
26
  intended_to_raise = options[:raise]
27
+
30
28
  translate_without_fallback(key, options.dup.update(raise: true))
31
29
  rescue I18n::MissingTranslationData => e
32
30
  raise if locale == I18n.default_locale && intended_to_raise
@@ -1,3 +1,3 @@
1
1
  module RailsI18nExtended
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_i18n_extended
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Johan VAN RYSEGHEM