react-rails 2.6.2 → 2.7.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -16,6 +16,19 @@ module React
16
16
  default: false,
17
17
  desc: "Don't generate server_rendering.js or config/initializers/react_server_rendering.rb"
18
18
 
19
+ # For Shakapacker below version 7, we need to set relative path for source_entry_path
20
+ def modify_webpacker_yml
21
+ webpacker_yml_path = 'config/webpacker.yml'
22
+ if webpacker? && Pathname.new(webpacker_yml_path).exist?
23
+ gsub_file(
24
+ webpacker_yml_path,
25
+ "source_entry_path: /\n",
26
+ "source_entry_path: packs\n"
27
+ )
28
+ reloaded_webpacker_config
29
+ end
30
+ end
31
+
19
32
  # Make an empty `components/` directory in the right place:
20
33
  def create_directory
21
34
  components_dir = if webpacker?
@@ -119,6 +132,11 @@ JS
119
132
  Webpacker::Configuration.source_path.join(Webpacker::Configuration.entry_path) # Webpacker <3
120
133
  end
121
134
  end
135
+
136
+ def reloaded_webpacker_config
137
+ Webpacker.instance.instance_variable_set(:@config, nil)
138
+ Webpacker.config
139
+ end
122
140
  end
123
141
  end
124
142
  end
@@ -2,6 +2,6 @@ module React
2
2
  module Rails
3
3
  # If you change this, make sure to update VERSIONS.md
4
4
  # and republish the UJS by updating package.json and `bundle exec rake ujs:publish`
5
- VERSION = '2.6.2'
5
+ VERSION = '2.7.1'
6
6
  end
7
7
  end
data/lib/react.rb CHANGED
@@ -3,21 +3,19 @@ module React
3
3
  # @param props [Object] If it's a Hash or Array, it will be recursed. Otherwise it will be returned.
4
4
  # @return [Hash] a new hash whose keys are camelized strings
5
5
  def self.camelize_props(props)
6
- case props
6
+ props_as_json = props.as_json
7
+
8
+ case props_as_json
7
9
  when Hash
8
- props.each_with_object({}) do |(key, value), new_props|
10
+ props_as_json.each_with_object({}) do |(key, value), new_props|
9
11
  new_key = key.to_s.camelize(:lower)
10
12
  new_value = camelize_props(value)
11
13
  new_props[new_key] = new_value
12
14
  end
13
15
  when Array
14
- props.map { |item| camelize_props(item) }
16
+ props_as_json.map { |item| camelize_props(item) }
15
17
  else
16
- if defined?(ActionController::Parameters) && props.is_a?(ActionController::Parameters)
17
- camelize_props(props.to_h)
18
- else
19
- props
20
- end
18
+ props_as_json
21
19
  end
22
20
  end
23
21
  end
metadata CHANGED
@@ -1,17 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: react-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.6.2
4
+ version: 2.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Paul O’Shannessy
8
8
  - Robert Mosolgo
9
9
  - Gregory Myers
10
10
  - Tsukuru Tanimichi
11
- autorequire:
11
+ autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2022-04-06 00:00:00.000000000 Z
14
+ date: 2023-05-19 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: appraisal
@@ -31,16 +31,16 @@ dependencies:
31
31
  name: bundler
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  requirements:
34
- - - "~>"
34
+ - - '='
35
35
  - !ruby/object:Gem::Version
36
- version: '2.0'
36
+ version: 2.4.9
37
37
  type: :development
38
38
  prerelease: false
39
39
  version_requirements: !ruby/object:Gem::Requirement
40
40
  requirements:
41
- - - "~>"
41
+ - - '='
42
42
  - !ruby/object:Gem::Version
43
- version: '2.0'
43
+ version: 2.4.9
44
44
  - !ruby/object:Gem::Dependency
45
45
  name: codeclimate-test-reporter
46
46
  requirement: !ruby/object:Gem::Requirement
@@ -83,6 +83,20 @@ dependencies:
83
83
  - - ">="
84
84
  - !ruby/object:Gem::Version
85
85
  version: 2.0.5
86
+ - !ruby/object:Gem::Dependency
87
+ name: gem-release
88
+ requirement: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ version: '0'
93
+ type: :development
94
+ prerelease: false
95
+ version_requirements: !ruby/object:Gem::Requirement
96
+ requirements:
97
+ - - ">="
98
+ - !ruby/object:Gem::Version
99
+ version: '0'
86
100
  - !ruby/object:Gem::Dependency
87
101
  name: guard
88
102
  requirement: !ruby/object:Gem::Requirement
@@ -223,6 +237,20 @@ dependencies:
223
237
  - - ">="
224
238
  - !ruby/object:Gem::Version
225
239
  version: '0'
240
+ - !ruby/object:Gem::Dependency
241
+ name: turbolinks
242
+ requirement: !ruby/object:Gem::Requirement
243
+ requirements:
244
+ - - ">="
245
+ - !ruby/object:Gem::Version
246
+ version: '0'
247
+ type: :development
248
+ prerelease: false
249
+ version_requirements: !ruby/object:Gem::Requirement
250
+ requirements:
251
+ - - ">="
252
+ - !ruby/object:Gem::Version
253
+ version: '0'
226
254
  - !ruby/object:Gem::Dependency
227
255
  name: connection_pool
228
256
  requirement: !ruby/object:Gem::Requirement
@@ -354,7 +382,7 @@ homepage: https://github.com/reactjs/react-rails
354
382
  licenses:
355
383
  - Apache-2.0
356
384
  metadata: {}
357
- post_install_message:
385
+ post_install_message:
358
386
  rdoc_options: []
359
387
  require_paths:
360
388
  - lib
@@ -369,8 +397,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
369
397
  - !ruby/object:Gem::Version
370
398
  version: '0'
371
399
  requirements: []
372
- rubygems_version: 3.1.6
373
- signing_key:
400
+ rubygems_version: 3.4.12
401
+ signing_key:
374
402
  specification_version: 4
375
403
  summary: React integration for Ruby on Rails
376
404
  test_files: []