isomorfeus-i18n 2.0.13 → 2.0.17

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ea585a5bea7705cbbe044ced0b6d36d2c5abcea25ce7d769b9cd6f23c24c2cbc
4
- data.tar.gz: f348a005aa131e9fe8ccf2c79ddf8360be8afe29bcff99ee397a716229838aba
3
+ metadata.gz: 19c3f04397961ff73562b1c3b2ed2e88748d1c43e1155ca143ec89a8854181d5
4
+ data.tar.gz: 5ec0ac920f141b67c8ed05553f342c933084441a44699bf1dab22b8ca9a738ca
5
5
  SHA512:
6
- metadata.gz: 6a6270eef401a5b9876ef8d8bebac278866715accc7bc5e0ab22c1e72171670145e911d2ec008c3ffd568e93a251ec5c80ca9b2f55437c79fb67f3ba63b4445c
7
- data.tar.gz: 6e58bf7de6ae186ec8f70fcd68b2de0a582e8d48981c76a3642a3dca42a9d74882b7d76239b7a5713e0df3a59855da2f1192915138e68d2492411508c3556553
6
+ metadata.gz: 4d971aa6da6acfd4bce69b92c1f2593ee70523fb2b9a4a8cc2d0b900377f97fffe5e2939ec889dd9ec58a3523a90ec2195793970f6b850d065a46a6c9d741f76
7
+ data.tar.gz: 164115c3a80efe2114548debedf6db48823645a824ef64f5c63e3a335831f979aaaec59400aedcc03cd6c877f0d23ff34f87678d9b2b7f05fd3d83502a952314
@@ -0,0 +1,6 @@
1
+ class FastGettext::Cache
2
+ def reload_all!
3
+ @store = {}
4
+ reload!
5
+ end
6
+ end
@@ -24,7 +24,10 @@ module Isomorfeus
24
24
  else
25
25
  response_agent.agent_result[domain] = {}
26
26
  begin
27
- Isomorfeus::I18n::Init.init if Isomorfeus.development?
27
+ if Isomorfeus.development?
28
+ Isomorfeus::I18n::Init.init
29
+ FastGettext.cache.reload_all!
30
+ end
28
31
  FastGettext.with_domain(domain) do
29
32
  response_agent.request[domain].each_key do |locale|
30
33
  response_agent.agent_result[domain][locale] = {}
@@ -18,13 +18,7 @@ module Isomorfeus
18
18
 
19
19
  def init_from_server
20
20
  Isomorfeus::Transport.promise_send_path('Isomorfeus::I18n::Handler::LocaleHandler', :init, Isomorfeus.negotiated_locale).then do |agent|
21
- if agent.processed
22
- agent.result
23
- else
24
- agent.processed = true
25
- if agent.response.key?(:error)
26
- Isomorfeus.raise_error(message: agent.response[:error])
27
- end
21
+ agent.process do
28
22
  @initializing = false
29
23
  Isomorfeus.store.dispatch(type: 'I18N_LOAD', data: agent.response[:data])
30
24
  @initialized = true
@@ -34,13 +28,7 @@ module Isomorfeus
34
28
 
35
29
  def reload_from_server
36
30
  Isomorfeus::Transport.promise_send_path('Isomorfeus::I18n::Handler::LocaleHandler', :init, Isomorfeus.negotiated_locale).then do |agent|
37
- if agent.processed
38
- agent.result
39
- else
40
- agent.processed = true
41
- if agent.response.key?(:error)
42
- Isomorfeus.raise_error(message: agent.response[:error])
43
- end
31
+ agent.process do
44
32
  Isomorfeus.store.dispatch(type: 'I18N_STATE', set_state: agent.response[:data])
45
33
  end
46
34
  end
@@ -1,5 +1,5 @@
1
1
  module Isomorfeus
2
2
  module I18n
3
- VERSION = '2.0.13'
3
+ VERSION = '2.0.17'
4
4
  end
5
5
  end
@@ -15,6 +15,7 @@ else
15
15
  require 'active_support'
16
16
  require 'oj'
17
17
  require 'fast_gettext'
18
+ require 'isomorfeus/fast_gettext_cache'
18
19
  require 'http_accept_language/parser'
19
20
  require 'http_accept_language/middleware'
20
21
  require 'isomorfeus-data'
@@ -13,7 +13,7 @@ module LucidTranslation
13
13
  result = Redux.fetch_by_path(:i18n_state, domain, locale, '_', keys)
14
14
  return result if result
15
15
  _promise_send_i18n_method(domain, locale, '_', keys)
16
- block_given? ? block.call : keys.first
16
+ block_given? ? block.call : ''
17
17
  end
18
18
 
19
19
  def n_(*keys, count, &block)
@@ -23,7 +23,7 @@ module LucidTranslation
23
23
  result = Redux.fetch_by_path(:i18n_state, domain, locale, 'n_', keys + [count])
24
24
  return result if result
25
25
  _promise_send_i18n_method(domain, locale, 'n_', keys + [count])
26
- block_given? ? block.call : keys.last
26
+ block_given? ? block.call : ''
27
27
  end
28
28
 
29
29
  def np_(context, plural_one, *args, separator: nil, &block)
@@ -50,7 +50,7 @@ module LucidTranslation
50
50
  result = Redux.fetch_by_path(:i18n_state, domain, locale, 'p_', args)
51
51
  return result if result
52
52
  _promise_send_i18n_method(domain, locale, 'p_', args)
53
- block_given? ? block.call : key
53
+ block_given? ? block.call : ''
54
54
  end
55
55
 
56
56
  def s_(key, separator = nil, &block)
@@ -60,7 +60,7 @@ module LucidTranslation
60
60
  result = Redux.fetch_by_path(:i18n_state, domain, locale, 's_', args)
61
61
  return result if result
62
62
  _promise_send_i18n_method(domain, locale, 's_', args)
63
- block_given? ? block.call : key.split(separator || NAMESPACE_SEPARATOR).last
63
+ block_given? ? block.call : ''
64
64
  end
65
65
 
66
66
  def N_(translate)
@@ -112,13 +112,7 @@ module LucidTranslation
112
112
  end
113
113
 
114
114
  def _handle_i18n_response(agent, domain)
115
- if agent.processed
116
- agent.result
117
- else
118
- agent.processed = true
119
- if agent.response.key?(:error)
120
- Isomorfeus.raise_error(message: agent.response[:error])
121
- end
115
+ agent.process do
122
116
  if on_browser?
123
117
  Isomorfeus.store.collect_and_defer_dispatch(type: 'I18N_LOAD', data: { domain => agent.response[domain] })
124
118
  else
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: isomorfeus-i18n
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.13
4
+ version: 2.0.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Biedermann
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-01 00:00:00.000000000 Z
11
+ date: 2022-02-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -114,14 +114,14 @@ dependencies:
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: 10.6.24
117
+ version: 10.6.27
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: 10.6.24
124
+ version: 10.6.27
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: isomorfeus-redux
127
127
  requirement: !ruby/object:Gem::Requirement
@@ -142,42 +142,42 @@ dependencies:
142
142
  requirements:
143
143
  - - '='
144
144
  - !ruby/object:Gem::Version
145
- version: 2.0.13
145
+ version: 2.0.17
146
146
  type: :runtime
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - '='
151
151
  - !ruby/object:Gem::Version
152
- version: 2.0.13
152
+ version: 2.0.17
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: isomorfeus-data
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
157
  - - '='
158
158
  - !ruby/object:Gem::Version
159
- version: 2.0.13
159
+ version: 2.0.17
160
160
  type: :runtime
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - '='
165
165
  - !ruby/object:Gem::Version
166
- version: 2.0.13
166
+ version: 2.0.17
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: isomorfeus
169
169
  requirement: !ruby/object:Gem::Requirement
170
170
  requirements:
171
171
  - - '='
172
172
  - !ruby/object:Gem::Version
173
- version: 2.0.13
173
+ version: 2.0.17
174
174
  type: :development
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
178
  - - '='
179
179
  - !ruby/object:Gem::Version
180
- version: 2.0.13
180
+ version: 2.0.17
181
181
  - !ruby/object:Gem::Dependency
182
182
  name: rake
183
183
  requirement: !ruby/object:Gem::Requirement
@@ -215,6 +215,7 @@ files:
215
215
  - LICENSE
216
216
  - README.md
217
217
  - lib/isomorfeus-i18n.rb
218
+ - lib/isomorfeus/fast_gettext_cache.rb
218
219
  - lib/isomorfeus/i18n/config.rb
219
220
  - lib/isomorfeus/i18n/handler/locale_handler.rb
220
221
  - lib/isomorfeus/i18n/init.rb