react_on_rails 16.0.0 → 16.0.1.rc.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.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +117 -77
  3. data/CLAUDE.md +14 -2
  4. data/Gemfile.lock +1 -1
  5. data/LICENSE.md +15 -1
  6. data/README.md +68 -18
  7. data/eslint.config.ts +3 -0
  8. data/knip.ts +20 -9
  9. data/lib/generators/react_on_rails/USAGE +65 -0
  10. data/lib/generators/react_on_rails/base_generator.rb +7 -7
  11. data/lib/generators/react_on_rails/generator_helper.rb +4 -0
  12. data/lib/generators/react_on_rails/generator_messages.rb +2 -2
  13. data/lib/generators/react_on_rails/install_generator.rb +115 -7
  14. data/lib/generators/react_on_rails/react_no_redux_generator.rb +16 -4
  15. data/lib/generators/react_on_rails/react_with_redux_generator.rb +83 -14
  16. data/lib/generators/react_on_rails/templates/base/base/app/javascript/src/HelloWorld/ror_components/HelloWorld.client.tsx +25 -0
  17. data/lib/generators/react_on_rails/templates/base/base/app/javascript/src/HelloWorld/ror_components/HelloWorld.server.tsx +5 -0
  18. data/lib/generators/react_on_rails/templates/base/base/bin/dev +12 -24
  19. data/lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/actions/helloWorldActionCreators.ts +18 -0
  20. data/lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/components/HelloWorld.tsx +24 -0
  21. data/lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/constants/helloWorldConstants.ts +6 -0
  22. data/lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/containers/HelloWorldContainer.ts +20 -0
  23. data/lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/reducers/helloWorldReducer.ts +22 -0
  24. data/lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/startup/HelloWorldApp.client.tsx +23 -0
  25. data/lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/startup/HelloWorldApp.server.tsx +5 -0
  26. data/lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/store/helloWorldStore.ts +18 -0
  27. data/lib/react_on_rails/configuration.rb +10 -6
  28. data/lib/react_on_rails/dev/server_manager.rb +185 -28
  29. data/lib/react_on_rails/doctor.rb +1149 -0
  30. data/lib/react_on_rails/helper.rb +9 -78
  31. data/lib/react_on_rails/pro/NOTICE +21 -0
  32. data/lib/react_on_rails/pro/helper.rb +122 -0
  33. data/lib/react_on_rails/pro/utils.rb +53 -0
  34. data/lib/react_on_rails/react_component/render_options.rb +6 -2
  35. data/lib/react_on_rails/system_checker.rb +659 -0
  36. data/lib/react_on_rails/version.rb +1 -1
  37. data/lib/tasks/doctor.rake +51 -0
  38. data/lib/tasks/generate_packs.rake +127 -4
  39. data/package-lock.json +11984 -0
  40. metadata +21 -6
  41. data/lib/generators/react_on_rails/bin/dev +0 -46
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: react_on_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 16.0.0
4
+ version: 16.0.1.rc.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Gordon
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2025-09-17 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: addressable
@@ -138,8 +137,8 @@ files:
138
137
  - eslint.config.ts
139
138
  - knip.ts
140
139
  - lib/generators/USAGE
140
+ - lib/generators/react_on_rails/USAGE
141
141
  - lib/generators/react_on_rails/base_generator.rb
142
- - lib/generators/react_on_rails/bin/dev
143
142
  - lib/generators/react_on_rails/dev_tests_generator.rb
144
143
  - lib/generators/react_on_rails/generator_helper.rb
145
144
  - lib/generators/react_on_rails/generator_messages.rb
@@ -156,8 +155,10 @@ files:
156
155
  - lib/generators/react_on_rails/templates/base/base/app/javascript/bundles/HelloWorld/components/HelloWorldServer.js
157
156
  - lib/generators/react_on_rails/templates/base/base/app/javascript/packs/server-bundle.js
158
157
  - lib/generators/react_on_rails/templates/base/base/app/javascript/src/HelloWorld/ror_components/HelloWorld.client.jsx
158
+ - lib/generators/react_on_rails/templates/base/base/app/javascript/src/HelloWorld/ror_components/HelloWorld.client.tsx
159
159
  - lib/generators/react_on_rails/templates/base/base/app/javascript/src/HelloWorld/ror_components/HelloWorld.module.css
160
160
  - lib/generators/react_on_rails/templates/base/base/app/javascript/src/HelloWorld/ror_components/HelloWorld.server.jsx
161
+ - lib/generators/react_on_rails/templates/base/base/app/javascript/src/HelloWorld/ror_components/HelloWorld.server.tsx
161
162
  - lib/generators/react_on_rails/templates/base/base/app/views/hello_world/index.html.erb.tt
162
163
  - lib/generators/react_on_rails/templates/base/base/app/views/layouts/hello_world.html.erb
163
164
  - lib/generators/react_on_rails/templates/base/base/babel.config.js.tt
@@ -179,14 +180,22 @@ files:
179
180
  - lib/generators/react_on_rails/templates/dev_tests/spec/spec_helper.rb
180
181
  - lib/generators/react_on_rails/templates/dev_tests/spec/system/hello_world_spec.rb
181
182
  - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/actions/helloWorldActionCreators.js
183
+ - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/actions/helloWorldActionCreators.ts
182
184
  - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/components/HelloWorld.jsx
183
185
  - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/components/HelloWorld.module.css
186
+ - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/components/HelloWorld.tsx
184
187
  - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/constants/helloWorldConstants.js
188
+ - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/constants/helloWorldConstants.ts
185
189
  - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/containers/HelloWorldContainer.js
190
+ - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/containers/HelloWorldContainer.ts
186
191
  - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/reducers/helloWorldReducer.js
192
+ - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/reducers/helloWorldReducer.ts
187
193
  - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/startup/HelloWorldApp.client.jsx
194
+ - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/startup/HelloWorldApp.client.tsx
188
195
  - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/startup/HelloWorldApp.server.jsx
196
+ - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/startup/HelloWorldApp.server.tsx
189
197
  - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/store/helloWorldStore.js
198
+ - lib/generators/react_on_rails/templates/redux/base/app/javascript/bundles/HelloWorld/store/helloWorldStore.ts
190
199
  - lib/react_on_rails.rb
191
200
  - lib/react_on_rails/configuration.rb
192
201
  - lib/react_on_rails/controller.rb
@@ -195,6 +204,7 @@ files:
195
204
  - lib/react_on_rails/dev/pack_generator.rb
196
205
  - lib/react_on_rails/dev/process_manager.rb
197
206
  - lib/react_on_rails/dev/server_manager.rb
207
+ - lib/react_on_rails/doctor.rb
198
208
  - lib/react_on_rails/engine.rb
199
209
  - lib/react_on_rails/error.rb
200
210
  - lib/react_on_rails/git_utils.rb
@@ -207,10 +217,14 @@ files:
207
217
  - lib/react_on_rails/packer_utils.rb
208
218
  - lib/react_on_rails/packs_generator.rb
209
219
  - lib/react_on_rails/prerender_error.rb
220
+ - lib/react_on_rails/pro/NOTICE
221
+ - lib/react_on_rails/pro/helper.rb
222
+ - lib/react_on_rails/pro/utils.rb
210
223
  - lib/react_on_rails/react_component/render_options.rb
211
224
  - lib/react_on_rails/server_rendering_js_code.rb
212
225
  - lib/react_on_rails/server_rendering_pool.rb
213
226
  - lib/react_on_rails/server_rendering_pool/ruby_embedded_java_script.rb
227
+ - lib/react_on_rails/system_checker.rb
214
228
  - lib/react_on_rails/test_helper.rb
215
229
  - lib/react_on_rails/test_helper/ensure_assets_compiled.rb
216
230
  - lib/react_on_rails/test_helper/webpack_assets_compiler.rb
@@ -220,8 +234,10 @@ files:
220
234
  - lib/react_on_rails/version_checker.rb
221
235
  - lib/react_on_rails/version_syntax_converter.rb
222
236
  - lib/tasks/assets.rake
237
+ - lib/tasks/doctor.rake
223
238
  - lib/tasks/generate_packs.rake
224
239
  - lib/tasks/locale.rake
240
+ - package-lock.json
225
241
  - react_on_rails.gemspec
226
242
  - tsconfig.eslint.json
227
243
  - tsconfig.json
@@ -250,8 +266,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
250
266
  - !ruby/object:Gem::Version
251
267
  version: '0'
252
268
  requirements: []
253
- rubygems_version: 3.5.22
254
- signing_key:
269
+ rubygems_version: 3.6.7
255
270
  specification_version: 4
256
271
  summary: Rails with react server rendering with webpack.
257
272
  test_files: []
@@ -1,46 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- # ReactOnRails Development Server
5
- #
6
- # This script provides a simple interface to the ReactOnRails development
7
- # server management. The core logic is implemented in ReactOnRails::Dev
8
- # classes for better maintainability and testing.
9
- #
10
- # Each command uses a specific Procfile for process management:
11
- # - bin/dev (default/hmr): Uses Procfile.dev
12
- # - bin/dev static: Uses Procfile.dev-static-assets
13
- # - bin/dev prod: Uses Procfile.dev-prod-assets
14
- #
15
- # To customize development environment:
16
- # 1. Edit the appropriate Procfile to modify which processes run
17
- # 2. Modify this script for project-specific command-line behavior
18
- # 3. Extend ReactOnRails::Dev classes in your Rails app for advanced customization
19
- # 4. Use classes directly: ReactOnRails::Dev::ServerManager.start(:development, "Custom.procfile")
20
-
21
- begin
22
- require "bundler/setup"
23
- require "react_on_rails/dev"
24
- rescue LoadError
25
- # Fallback for when gem is not yet installed
26
- puts "Loading ReactOnRails development tools..."
27
- require_relative "../../lib/react_on_rails/dev"
28
- end
29
-
30
- # Main execution
31
- case ARGV[0]
32
- when "production-assets", "prod"
33
- ReactOnRails::Dev::ServerManager.start(:production_like)
34
- when "static"
35
- ReactOnRails::Dev::ServerManager.start(:static, "Procfile.dev-static-assets")
36
- when "kill"
37
- ReactOnRails::Dev::ServerManager.kill_processes
38
- when "help", "--help", "-h"
39
- ReactOnRails::Dev::ServerManager.show_help
40
- when "hmr", nil
41
- ReactOnRails::Dev::ServerManager.start(:development, "Procfile.dev")
42
- else
43
- puts "Unknown argument: #{ARGV[0]}"
44
- puts "Run 'bin/dev help' for usage information"
45
- exit 1
46
- end