gon 6.6.0 → 7.0.0

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: fb4ea344f74cb962215bfcc4c6607e75e7f5be64f5b75cb4e3ae5a5aa10d6b27
4
- data.tar.gz: 48336de0a30b405faad2edb277766420f2d06c80b6804092dd4ae7764ec40363
3
+ metadata.gz: a1f213a83073d4b73d4a732ad6c08dd46bdc76f288f9501a59fd573654161029
4
+ data.tar.gz: 24c735289aca21c4946ee2a7b7ae46347b02f00bbce78aa9f2a1efa8c3cb74ac
5
5
  SHA512:
6
- metadata.gz: c7ddd83671c6caf68e29c1b5cde9d179c8b5cf746af9458fde6f8b7cba64e760c728e93fde8fede4ab2242b2b026e83f134318b1c3659636a2e57f89a6ead9b1
7
- data.tar.gz: ee87e834c70358fd8019f55564039581a4cc7636e62f655b7d123e7254ad0147fb6dfcf1f12de01a28e1c65a2d57c09d6e7cfc510933590386e1ae8152ede5e5
6
+ metadata.gz: ade05ffde11f213b5fb94961ed24185dfaede24e8e04db90970fae561bb15730866d6d205161d23b130e49d8bcb9218ef4a007554a0aa478472a0799d50ca879
7
+ data.tar.gz: a1adcea362385383cae266310055a237fb5f00bc0895f6089958b2e76e7de7b3d84c33378d13ca87772c8a35dfdc453a5cc70ce3c9def15ab0b83b80d84da2c7
data/README.md CHANGED
@@ -223,12 +223,20 @@ usage gon.global.
223
223
  You can use any [JSON Engine](https://github.com/sferik/multi_json#supported-json-engines) you want.
224
224
  Gon uses `MultiJson` with autodetect mode, so all you need is just require your JSON library.
225
225
 
226
- ## Contributors
226
+ ## Current Maintainers
227
+
228
+ * [@willnet](https://github.com/willnet)
229
+
230
+ ## Special thanks
227
231
 
228
- * @gazay
229
232
  * @takiy33
233
+ * @brainopia
234
+ * @kossnocorp
235
+ * @ai
236
+
237
+ ## Original Author
230
238
 
231
- Special thanks to @brainopia, @kossnocorp and @ai.
239
+ * [@gazay](https://github.com/gazay)
232
240
 
233
241
  ## License
234
242
 
data/lib/gon/base.rb CHANGED
@@ -126,7 +126,7 @@ class Gon
126
126
  end
127
127
 
128
128
  def convert_key(key, camelize)
129
- cache = RequestStore.store[:gon_keys_cache] ||= {}
129
+ cache = Current.gon_keys_cache ||= {}
130
130
  cache["#{key}_#{camelize}"] ||= camelize ? key.to_s.camelize(:lower) : key.to_s
131
131
  end
132
132
 
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ begin
4
+ require 'active_support/current_attributes'
5
+ rescue LoadError
6
+ begin
7
+ require 'request_store'
8
+ rescue LoadError => e
9
+ message = "#{e.message}\n" \
10
+ "If you want to use gon with Rails versions prior to 5.2, please add `gem 'request_store'` to your Gemfile."
11
+ raise LoadError, message
12
+ end
13
+ end
14
+
15
+ class Gon
16
+ if defined?(ActiveSupport::CurrentAttributes)
17
+ class Current < ActiveSupport::CurrentAttributes
18
+ attribute :gon
19
+ attribute :gon_keys_cache
20
+ end
21
+ else
22
+ class Current
23
+ def self.gon
24
+ RequestStore.store[:gon]
25
+ end
26
+
27
+ def self.gon=(value)
28
+ RequestStore.store[:gon] = value
29
+ end
30
+
31
+ def self.gon_keys_cache
32
+ RequestStore.store[:gon_keys_cache]
33
+ end
34
+
35
+ def self.gon_keys_cache=(value)
36
+ RequestStore.store[:gon_keys_cache] = value
37
+ end
38
+ end
39
+ end
40
+
41
+ private_constant :Current
42
+ end
@@ -39,7 +39,7 @@ class Gon
39
39
  end
40
40
 
41
41
  def current_gon
42
- RequestStore.store[:gon]
42
+ Current.gon
43
43
  end
44
44
 
45
45
  end
data/lib/gon/helpers.rb CHANGED
@@ -24,7 +24,7 @@ class Gon
24
24
  end
25
25
 
26
26
  def current_gon
27
- RequestStore.store[:gon]
27
+ Current.gon
28
28
  end
29
29
  end
30
30
 
@@ -33,7 +33,7 @@ class Gon
33
33
  if wrong_gon_request?
34
34
  gon_request = Request.new(request.env)
35
35
  gon_request.id = gon_request_uuid
36
- RequestStore.store[:gon] = gon_request
36
+ Current.gon = gon_request
37
37
  end
38
38
  Gon
39
39
  end
@@ -45,7 +45,7 @@ class Gon
45
45
  end
46
46
 
47
47
  def current_gon
48
- RequestStore.store[:gon]
48
+ Current.gon
49
49
  end
50
50
 
51
51
  def gon_request_uuid
data/lib/gon/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class Gon
4
- VERSION = '6.6.0'
4
+ VERSION = '7.0.0'
5
5
  end
data/lib/gon.rb CHANGED
@@ -1,11 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'request_store'
4
3
  require 'action_view'
5
4
  require 'action_controller'
6
5
  require 'multi_json'
7
6
 
8
7
  require 'gon/base'
8
+ require 'gon/current'
9
9
  require 'gon/env_finder'
10
10
  require 'gon/global'
11
11
  require 'gon/watch'
@@ -106,7 +106,7 @@ class Gon
106
106
  private
107
107
 
108
108
  def current_gon
109
- RequestStore.store[:gon]
109
+ Current.gon
110
110
  end
111
111
 
112
112
  def store_builder_data(builder, data, options)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gon
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.6.0
4
+ version: 7.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - gazay
@@ -24,33 +24,33 @@ dependencies:
24
24
  - !ruby/object:Gem::Version
25
25
  version: 3.0.20
26
26
  - !ruby/object:Gem::Dependency
27
- name: i18n
27
+ name: activesupport
28
28
  requirement: !ruby/object:Gem::Requirement
29
29
  requirements:
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: '0.7'
32
+ version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
35
  version_requirements: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - ">="
38
38
  - !ruby/object:Gem::Version
39
- version: '0.7'
39
+ version: '0'
40
40
  - !ruby/object:Gem::Dependency
41
- name: request_store
41
+ name: i18n
42
42
  requirement: !ruby/object:Gem::Requirement
43
43
  requirements:
44
44
  - - ">="
45
45
  - !ruby/object:Gem::Version
46
- version: '1.0'
46
+ version: '0.7'
47
47
  type: :runtime
48
48
  prerelease: false
49
49
  version_requirements: !ruby/object:Gem::Requirement
50
50
  requirements:
51
51
  - - ">="
52
52
  - !ruby/object:Gem::Version
53
- version: '1.0'
53
+ version: '0.7'
54
54
  - !ruby/object:Gem::Dependency
55
55
  name: multi_json
56
56
  requirement: !ruby/object:Gem::Requirement
@@ -99,14 +99,14 @@ dependencies:
99
99
  requirements:
100
100
  - - ">="
101
101
  - !ruby/object:Gem::Version
102
- version: 3.0.20
102
+ version: '0'
103
103
  type: :development
104
104
  prerelease: false
105
105
  version_requirements: !ruby/object:Gem::Requirement
106
106
  requirements:
107
107
  - - ">="
108
108
  - !ruby/object:Gem::Version
109
- version: 3.0.20
109
+ version: '0'
110
110
  - !ruby/object:Gem::Dependency
111
111
  name: rake
112
112
  requirement: !ruby/object:Gem::Requirement
@@ -165,6 +165,7 @@ files:
165
165
  - lib/gon.rb
166
166
  - lib/gon/base.rb
167
167
  - lib/gon/compatibility/old_rails.rb
168
+ - lib/gon/current.rb
168
169
  - lib/gon/env_finder.rb
169
170
  - lib/gon/escaper.rb
170
171
  - lib/gon/global.rb
@@ -195,7 +196,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
195
196
  - !ruby/object:Gem::Version
196
197
  version: '0'
197
198
  requirements: []
198
- rubygems_version: 3.6.9
199
+ rubygems_version: 4.0.3
199
200
  specification_version: 4
200
201
  summary: Get your Rails variables in your JS
201
202
  test_files: []