react-rails 2.6.2 → 2.7.1

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.
@@ -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: []