react_on_rails 14.0.3 → 14.0.5
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 +4 -4
- data/CHANGELOG.md +10 -1
- data/Gemfile.development_dependencies +3 -0
- data/Gemfile.lock +22 -16
- data/lib/generators/react_on_rails/base_generator.rb +21 -7
- data/lib/generators/react_on_rails/generator_helper.rb +5 -0
- data/lib/react_on_rails/configuration.rb +7 -3
- data/lib/react_on_rails/helper.rb +8 -0
- data/lib/react_on_rails/react_component/render_options.rb +4 -0
- data/lib/react_on_rails/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ca8ba0235b9256e1b24f5afc2c874f258cf239d78ad6490e86ce4d918b26ecf4
|
|
4
|
+
data.tar.gz: 54796b7b8067b98180bf0e41eb20c4d6bb0a4ea54594af8365eb95c74158d1b7
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: c081c9e1b626d9c986f212c2c351fd1774fddaa9be301ae05d6c890b41c30f21871acb56002001b2bf64584da3932457ffc9da522463f3d49f7b73dd62852032
|
|
7
|
+
data.tar.gz: 005f0dc9f274c6ba9edc8784efb679e6ba5bc7610b708c7c072f4301f4fe25d3a4bf887ad2e9449284f2bbce346dfec54f0e7bd54192ab8d3532c7d5b3004267
|
data/CHANGELOG.md
CHANGED
|
@@ -18,6 +18,14 @@ Please follow the recommendations outlined at [keepachangelog.com](http://keepac
|
|
|
18
18
|
### [Unreleased]
|
|
19
19
|
Changes since the last non-beta release.
|
|
20
20
|
|
|
21
|
+
### [14.0.4] - 2024-07-02
|
|
22
|
+
|
|
23
|
+
#### Improved
|
|
24
|
+
- Improved dependency management by integrating package_json. [PR 1639](https://github.com/shakacode/react_on_rails/pull/1639) by [vaukalak](https://github.com/vaukalak).
|
|
25
|
+
|
|
26
|
+
#### Changed
|
|
27
|
+
- Update outdated GitHub Actions to use Node.js 20.0 versions instead [PR 1623](https://github.com/shakacode/react_on_rails/pull/1623) by [adriangohjw](https://github.com/adriangohjw).
|
|
28
|
+
|
|
21
29
|
### [14.0.3] - 2024-06-28
|
|
22
30
|
|
|
23
31
|
#### Fixed
|
|
@@ -1140,7 +1148,8 @@ Best done with Object destructing:
|
|
|
1140
1148
|
##### Fixed
|
|
1141
1149
|
- Fix several generator-related issues.
|
|
1142
1150
|
|
|
1143
|
-
[Unreleased]: https://github.com/shakacode/react_on_rails/compare/14.0.
|
|
1151
|
+
[Unreleased]: https://github.com/shakacode/react_on_rails/compare/14.0.4...master
|
|
1152
|
+
[14.0.4]: https://github.com/shakacode/react_on_rails/compare/14.0.3...14.0.4
|
|
1144
1153
|
[14.0.3]: https://github.com/shakacode/react_on_rails/compare/14.0.2...14.0.3
|
|
1145
1154
|
[14.0.2]: https://github.com/shakacode/react_on_rails/compare/14.0.1...14.0.2
|
|
1146
1155
|
[14.0.1]: https://github.com/shakacode/react_on_rails/compare/14.0.0...14.0.1
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
react_on_rails (14.0.
|
|
4
|
+
react_on_rails (14.0.4)
|
|
5
5
|
addressable
|
|
6
6
|
connection_pool
|
|
7
7
|
execjs (~> 2.5)
|
|
@@ -93,7 +93,7 @@ GEM
|
|
|
93
93
|
bigdecimal (3.1.8)
|
|
94
94
|
bootsnap (1.18.3)
|
|
95
95
|
msgpack (~> 1.2)
|
|
96
|
-
builder (3.
|
|
96
|
+
builder (3.3.0)
|
|
97
97
|
byebug (11.1.3)
|
|
98
98
|
capybara (3.40.0)
|
|
99
99
|
addressable
|
|
@@ -109,7 +109,7 @@ GEM
|
|
|
109
109
|
launchy
|
|
110
110
|
childprocess (5.0.0)
|
|
111
111
|
coderay (1.1.3)
|
|
112
|
-
concurrent-ruby (1.
|
|
112
|
+
concurrent-ruby (1.3.3)
|
|
113
113
|
connection_pool (2.4.1)
|
|
114
114
|
coveralls (0.8.23)
|
|
115
115
|
json (>= 1.8, < 3)
|
|
@@ -127,7 +127,7 @@ GEM
|
|
|
127
127
|
drb (2.2.1)
|
|
128
128
|
equivalent-xml (0.6.0)
|
|
129
129
|
nokogiri (>= 1.4.3)
|
|
130
|
-
erubi (1.
|
|
130
|
+
erubi (1.13.0)
|
|
131
131
|
execjs (2.9.1)
|
|
132
132
|
ffi (1.16.3)
|
|
133
133
|
gem-release (2.2.2)
|
|
@@ -140,7 +140,7 @@ GEM
|
|
|
140
140
|
concurrent-ruby (~> 1.0)
|
|
141
141
|
interception (0.5)
|
|
142
142
|
io-console (0.7.2)
|
|
143
|
-
irb (1.13.
|
|
143
|
+
irb (1.13.2)
|
|
144
144
|
rdoc (>= 4.0.0)
|
|
145
145
|
reline (>= 0.4.2)
|
|
146
146
|
jbuilder (2.12.0)
|
|
@@ -170,8 +170,8 @@ GEM
|
|
|
170
170
|
matrix (0.4.2)
|
|
171
171
|
method_source (1.1.0)
|
|
172
172
|
mini_mime (1.1.5)
|
|
173
|
-
mini_portile2 (2.8.
|
|
174
|
-
minitest (5.
|
|
173
|
+
mini_portile2 (2.8.7)
|
|
174
|
+
minitest (5.24.1)
|
|
175
175
|
msgpack (1.7.2)
|
|
176
176
|
mutex_m (0.2.0)
|
|
177
177
|
net-imap (0.4.11)
|
|
@@ -184,7 +184,7 @@ GEM
|
|
|
184
184
|
net-smtp (0.5.0)
|
|
185
185
|
net-protocol
|
|
186
186
|
nio4r (2.7.3)
|
|
187
|
-
nokogiri (1.16.
|
|
187
|
+
nokogiri (1.16.6)
|
|
188
188
|
mini_portile2 (~> 2.8.2)
|
|
189
189
|
racc (~> 1.4)
|
|
190
190
|
package_json (0.1.0)
|
|
@@ -211,8 +211,8 @@ GEM
|
|
|
211
211
|
public_suffix (5.0.5)
|
|
212
212
|
puma (6.4.2)
|
|
213
213
|
nio4r (~> 2.0)
|
|
214
|
-
racc (1.
|
|
215
|
-
rack (3.
|
|
214
|
+
racc (1.8.0)
|
|
215
|
+
rack (3.1.4)
|
|
216
216
|
rack-proxy (0.7.7)
|
|
217
217
|
rack
|
|
218
218
|
rack-session (2.0.0)
|
|
@@ -256,22 +256,22 @@ GEM
|
|
|
256
256
|
rb-fsevent (0.11.2)
|
|
257
257
|
rb-inotify (0.10.1)
|
|
258
258
|
ffi (~> 1.0)
|
|
259
|
-
rdoc (6.
|
|
259
|
+
rdoc (6.7.0)
|
|
260
260
|
psych (>= 4.0.0)
|
|
261
261
|
regexp_parser (2.9.2)
|
|
262
|
-
reline (0.5.
|
|
262
|
+
reline (0.5.9)
|
|
263
263
|
io-console (~> 0.5)
|
|
264
264
|
rexml (3.2.7)
|
|
265
265
|
strscan (>= 3.0.9)
|
|
266
266
|
rspec-core (3.13.0)
|
|
267
267
|
rspec-support (~> 3.13.0)
|
|
268
|
-
rspec-expectations (3.13.
|
|
268
|
+
rspec-expectations (3.13.1)
|
|
269
269
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
270
270
|
rspec-support (~> 3.13.0)
|
|
271
271
|
rspec-mocks (3.13.1)
|
|
272
272
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
273
273
|
rspec-support (~> 3.13.0)
|
|
274
|
-
rspec-rails (6.1.
|
|
274
|
+
rspec-rails (6.1.3)
|
|
275
275
|
actionpack (>= 6.1)
|
|
276
276
|
activesupport (>= 6.1)
|
|
277
277
|
railties (>= 6.1)
|
|
@@ -358,7 +358,7 @@ GEM
|
|
|
358
358
|
sprockets (>= 3.0.0)
|
|
359
359
|
sqlite3 (1.7.3)
|
|
360
360
|
mini_portile2 (~> 2.8.0)
|
|
361
|
-
stringio (3.1.
|
|
361
|
+
stringio (3.1.1)
|
|
362
362
|
strscan (3.1.0)
|
|
363
363
|
sync (0.5.0)
|
|
364
364
|
term-ansicolor (1.8.0)
|
|
@@ -369,6 +369,10 @@ GEM
|
|
|
369
369
|
tins (1.33.0)
|
|
370
370
|
bigdecimal
|
|
371
371
|
sync
|
|
372
|
+
turbo-rails (2.0.6)
|
|
373
|
+
actionpack (>= 6.0.0)
|
|
374
|
+
activejob (>= 6.0.0)
|
|
375
|
+
railties (>= 6.0.0)
|
|
372
376
|
turbolinks (5.2.1)
|
|
373
377
|
turbolinks-source (~> 5.2)
|
|
374
378
|
turbolinks-source (5.2.0)
|
|
@@ -389,7 +393,7 @@ GEM
|
|
|
389
393
|
xpath (3.2.0)
|
|
390
394
|
nokogiri (~> 1.8)
|
|
391
395
|
yard (0.9.36)
|
|
392
|
-
zeitwerk (2.6.
|
|
396
|
+
zeitwerk (2.6.16)
|
|
393
397
|
|
|
394
398
|
PLATFORMS
|
|
395
399
|
ruby
|
|
@@ -408,6 +412,7 @@ DEPENDENCIES
|
|
|
408
412
|
jquery-rails
|
|
409
413
|
launchy
|
|
410
414
|
listen
|
|
415
|
+
package_json
|
|
411
416
|
pry
|
|
412
417
|
pry-byebug
|
|
413
418
|
pry-doc
|
|
@@ -430,6 +435,7 @@ DEPENDENCIES
|
|
|
430
435
|
spring (~> 4.0)
|
|
431
436
|
sprockets (~> 4.0)
|
|
432
437
|
sqlite3 (~> 1.6)
|
|
438
|
+
turbo-rails
|
|
433
439
|
turbolinks
|
|
434
440
|
uglifier
|
|
435
441
|
webdrivers (= 5.3.0)
|
|
@@ -76,26 +76,40 @@ module ReactOnRails
|
|
|
76
76
|
run "bundle"
|
|
77
77
|
end
|
|
78
78
|
|
|
79
|
-
def
|
|
79
|
+
def add_js_dependencies
|
|
80
80
|
major_minor_patch_only = /\A\d+\.\d+\.\d+\z/
|
|
81
81
|
if ReactOnRails::VERSION.match?(major_minor_patch_only)
|
|
82
|
-
|
|
82
|
+
package_json.manager.add(["react-on-rails@#{ReactOnRails::VERSION}"])
|
|
83
83
|
else
|
|
84
84
|
# otherwise add latest
|
|
85
85
|
puts "Adding the latest react-on-rails NPM module. Double check this is correct in package.json"
|
|
86
|
-
|
|
86
|
+
package_json.manager.add(["react-on-rails"])
|
|
87
87
|
end
|
|
88
88
|
|
|
89
89
|
puts "Adding React dependencies"
|
|
90
|
-
|
|
91
|
-
|
|
90
|
+
package_json.manager.add([
|
|
91
|
+
"react",
|
|
92
|
+
"react-dom",
|
|
93
|
+
"@babel/preset-react",
|
|
94
|
+
"prop-types",
|
|
95
|
+
"babel-plugin-transform-react-remove-prop-types",
|
|
96
|
+
"babel-plugin-macros"
|
|
97
|
+
])
|
|
92
98
|
|
|
93
99
|
puts "Adding CSS handlers"
|
|
94
100
|
|
|
95
|
-
|
|
101
|
+
package_json.manager.add(%w[
|
|
102
|
+
css-loader
|
|
103
|
+
css-minimizer-webpack-plugin
|
|
104
|
+
mini-css-extract-plugin
|
|
105
|
+
style-loader
|
|
106
|
+
])
|
|
96
107
|
|
|
97
108
|
puts "Adding dev dependencies"
|
|
98
|
-
|
|
109
|
+
package_json.manager.add([
|
|
110
|
+
"@pmmmwh/react-refresh-webpack-plugin",
|
|
111
|
+
"react-refresh"
|
|
112
|
+
], type: :dev)
|
|
99
113
|
end
|
|
100
114
|
|
|
101
115
|
def append_to_spec_rails_helper
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
+
require "package_json"
|
|
3
4
|
require "rainbow"
|
|
4
5
|
|
|
5
6
|
module GeneratorHelper
|
|
7
|
+
def package_json
|
|
8
|
+
@package_json ||= PackageJson.read
|
|
9
|
+
end
|
|
10
|
+
|
|
6
11
|
# Takes a relative path from the destination root, such as `.gitignore` or `app/assets/javascripts/application.js`
|
|
7
12
|
def dest_file_exists?(file)
|
|
8
13
|
dest_file = File.join(destination_root, file)
|
|
@@ -39,7 +39,9 @@ module ReactOnRails
|
|
|
39
39
|
i18n_output_format: nil,
|
|
40
40
|
components_subdirectory: nil,
|
|
41
41
|
make_generated_server_bundle_the_entrypoint: false,
|
|
42
|
-
defer_generated_component_packs: true
|
|
42
|
+
defer_generated_component_packs: true,
|
|
43
|
+
# forces the loading of React components
|
|
44
|
+
force_load: false
|
|
43
45
|
)
|
|
44
46
|
end
|
|
45
47
|
|
|
@@ -53,7 +55,8 @@ module ReactOnRails
|
|
|
53
55
|
:server_render_method, :random_dom_id, :auto_load_bundle,
|
|
54
56
|
:same_bundle_for_client_and_server, :rendering_props_extension,
|
|
55
57
|
:make_generated_server_bundle_the_entrypoint,
|
|
56
|
-
:defer_generated_component_packs
|
|
58
|
+
:defer_generated_component_packs,
|
|
59
|
+
:force_load
|
|
57
60
|
|
|
58
61
|
# rubocop:disable Metrics/AbcSize
|
|
59
62
|
def initialize(node_modules_location: nil, server_bundle_js_file: nil, prerender: nil,
|
|
@@ -68,7 +71,7 @@ module ReactOnRails
|
|
|
68
71
|
same_bundle_for_client_and_server: nil,
|
|
69
72
|
i18n_dir: nil, i18n_yml_dir: nil, i18n_output_format: nil,
|
|
70
73
|
random_dom_id: nil, server_render_method: nil, rendering_props_extension: nil,
|
|
71
|
-
components_subdirectory: nil, auto_load_bundle: nil)
|
|
74
|
+
components_subdirectory: nil, auto_load_bundle: nil, force_load: nil)
|
|
72
75
|
self.node_modules_location = node_modules_location.present? ? node_modules_location : Rails.root
|
|
73
76
|
self.generated_assets_dirs = generated_assets_dirs
|
|
74
77
|
self.generated_assets_dir = generated_assets_dir
|
|
@@ -106,6 +109,7 @@ module ReactOnRails
|
|
|
106
109
|
self.auto_load_bundle = auto_load_bundle
|
|
107
110
|
self.make_generated_server_bundle_the_entrypoint = make_generated_server_bundle_the_entrypoint
|
|
108
111
|
self.defer_generated_component_packs = defer_generated_component_packs
|
|
112
|
+
self.force_load = force_load
|
|
109
113
|
end
|
|
110
114
|
# rubocop:enable Metrics/AbcSize
|
|
111
115
|
|
|
@@ -441,6 +441,14 @@ module ReactOnRails
|
|
|
441
441
|
"data-trace" => (render_options.trace ? true : nil),
|
|
442
442
|
"data-dom-id" => render_options.dom_id)
|
|
443
443
|
|
|
444
|
+
if render_options.force_load
|
|
445
|
+
component_specification_tag.concat(
|
|
446
|
+
content_tag(:script, %(
|
|
447
|
+
ReactOnRails.reactOnRailsComponentLoaded('#{render_options.dom_id}');
|
|
448
|
+
).html_safe)
|
|
449
|
+
)
|
|
450
|
+
end
|
|
451
|
+
|
|
444
452
|
load_pack_for_generated_component(react_component_name, render_options)
|
|
445
453
|
# Create the HTML rendering part
|
|
446
454
|
result = server_rendered_react_component(render_options)
|
|
@@ -91,6 +91,10 @@ module ReactOnRails
|
|
|
91
91
|
retrieve_configuration_value_for(:logging_on_server)
|
|
92
92
|
end
|
|
93
93
|
|
|
94
|
+
def force_load
|
|
95
|
+
retrieve_configuration_value_for(:force_load)
|
|
96
|
+
end
|
|
97
|
+
|
|
94
98
|
def to_s
|
|
95
99
|
"{ react_component_name = #{react_component_name}, options = #{options}, request_digest = #{request_digest}"
|
|
96
100
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: react_on_rails
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 14.0.
|
|
4
|
+
version: 14.0.5
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Justin Gordon
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2024-
|
|
11
|
+
date: 2024-08-21 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: addressable
|