reactive_views 0.1.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 (40) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +49 -0
  3. data/LICENSE.txt +22 -0
  4. data/README.md +134 -0
  5. data/app/controllers/reactive_views/bundles_controller.rb +47 -0
  6. data/app/frontend/reactive_views/boot.ts +215 -0
  7. data/config/routes.rb +10 -0
  8. data/lib/generators/reactive_views/install/install_generator.rb +645 -0
  9. data/lib/generators/reactive_views/install/templates/application.html.erb.tt +19 -0
  10. data/lib/generators/reactive_views/install/templates/application.js.tt +9 -0
  11. data/lib/generators/reactive_views/install/templates/boot.ts.tt +225 -0
  12. data/lib/generators/reactive_views/install/templates/example_component.tsx.tt +4 -0
  13. data/lib/generators/reactive_views/install/templates/initializer.rb.tt +7 -0
  14. data/lib/generators/reactive_views/install/templates/vite.config.mts.tt +78 -0
  15. data/lib/generators/reactive_views/install/templates/vite.json.tt +22 -0
  16. data/lib/reactive_views/cache_store.rb +269 -0
  17. data/lib/reactive_views/component_resolver.rb +243 -0
  18. data/lib/reactive_views/configuration.rb +71 -0
  19. data/lib/reactive_views/controller_props.rb +43 -0
  20. data/lib/reactive_views/css_strategy.rb +179 -0
  21. data/lib/reactive_views/engine.rb +14 -0
  22. data/lib/reactive_views/error_overlay.rb +1390 -0
  23. data/lib/reactive_views/full_page_renderer.rb +158 -0
  24. data/lib/reactive_views/helpers.rb +209 -0
  25. data/lib/reactive_views/props_builder.rb +42 -0
  26. data/lib/reactive_views/props_inference.rb +89 -0
  27. data/lib/reactive_views/railtie.rb +93 -0
  28. data/lib/reactive_views/renderer.rb +484 -0
  29. data/lib/reactive_views/resolver.rb +66 -0
  30. data/lib/reactive_views/ssr_process.rb +274 -0
  31. data/lib/reactive_views/tag_transformer.rb +523 -0
  32. data/lib/reactive_views/temp_file_manager.rb +81 -0
  33. data/lib/reactive_views/template_handler.rb +52 -0
  34. data/lib/reactive_views/version.rb +5 -0
  35. data/lib/reactive_views.rb +58 -0
  36. data/lib/tasks/reactive_views.rake +104 -0
  37. data/node/ssr/server.mjs +965 -0
  38. data/package-lock.json +516 -0
  39. data/package.json +14 -0
  40. metadata +322 -0
data/package-lock.json ADDED
@@ -0,0 +1,516 @@
1
+ {
2
+ "name": "reactive-views-gem",
3
+ "lockfileVersion": 3,
4
+ "requires": true,
5
+ "packages": {
6
+ "": {
7
+ "name": "reactive-views-gem",
8
+ "dependencies": {
9
+ "esbuild": "^0.27.0",
10
+ "react": "^19.0.0",
11
+ "react-dom": "^19.0.0",
12
+ "typescript": "^5.7.0"
13
+ },
14
+ "engines": {
15
+ "node": ">=22.0.0"
16
+ }
17
+ },
18
+ "node_modules/@esbuild/aix-ppc64": {
19
+ "version": "0.27.2",
20
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.2.tgz",
21
+ "integrity": "sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw==",
22
+ "cpu": [
23
+ "ppc64"
24
+ ],
25
+ "license": "MIT",
26
+ "optional": true,
27
+ "os": [
28
+ "aix"
29
+ ],
30
+ "engines": {
31
+ "node": ">=18"
32
+ }
33
+ },
34
+ "node_modules/@esbuild/android-arm": {
35
+ "version": "0.27.2",
36
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.2.tgz",
37
+ "integrity": "sha512-DVNI8jlPa7Ujbr1yjU2PfUSRtAUZPG9I1RwW4F4xFB1Imiu2on0ADiI/c3td+KmDtVKNbi+nffGDQMfcIMkwIA==",
38
+ "cpu": [
39
+ "arm"
40
+ ],
41
+ "license": "MIT",
42
+ "optional": true,
43
+ "os": [
44
+ "android"
45
+ ],
46
+ "engines": {
47
+ "node": ">=18"
48
+ }
49
+ },
50
+ "node_modules/@esbuild/android-arm64": {
51
+ "version": "0.27.2",
52
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.2.tgz",
53
+ "integrity": "sha512-pvz8ZZ7ot/RBphf8fv60ljmaoydPU12VuXHImtAs0XhLLw+EXBi2BLe3OYSBslR4rryHvweW5gmkKFwTiFy6KA==",
54
+ "cpu": [
55
+ "arm64"
56
+ ],
57
+ "license": "MIT",
58
+ "optional": true,
59
+ "os": [
60
+ "android"
61
+ ],
62
+ "engines": {
63
+ "node": ">=18"
64
+ }
65
+ },
66
+ "node_modules/@esbuild/android-x64": {
67
+ "version": "0.27.2",
68
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.2.tgz",
69
+ "integrity": "sha512-z8Ank4Byh4TJJOh4wpz8g2vDy75zFL0TlZlkUkEwYXuPSgX8yzep596n6mT7905kA9uHZsf/o2OJZubl2l3M7A==",
70
+ "cpu": [
71
+ "x64"
72
+ ],
73
+ "license": "MIT",
74
+ "optional": true,
75
+ "os": [
76
+ "android"
77
+ ],
78
+ "engines": {
79
+ "node": ">=18"
80
+ }
81
+ },
82
+ "node_modules/@esbuild/darwin-arm64": {
83
+ "version": "0.27.2",
84
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.2.tgz",
85
+ "integrity": "sha512-davCD2Zc80nzDVRwXTcQP/28fiJbcOwvdolL0sOiOsbwBa72kegmVU0Wrh1MYrbuCL98Omp5dVhQFWRKR2ZAlg==",
86
+ "cpu": [
87
+ "arm64"
88
+ ],
89
+ "license": "MIT",
90
+ "optional": true,
91
+ "os": [
92
+ "darwin"
93
+ ],
94
+ "engines": {
95
+ "node": ">=18"
96
+ }
97
+ },
98
+ "node_modules/@esbuild/darwin-x64": {
99
+ "version": "0.27.2",
100
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.2.tgz",
101
+ "integrity": "sha512-ZxtijOmlQCBWGwbVmwOF/UCzuGIbUkqB1faQRf5akQmxRJ1ujusWsb3CVfk/9iZKr2L5SMU5wPBi1UWbvL+VQA==",
102
+ "cpu": [
103
+ "x64"
104
+ ],
105
+ "license": "MIT",
106
+ "optional": true,
107
+ "os": [
108
+ "darwin"
109
+ ],
110
+ "engines": {
111
+ "node": ">=18"
112
+ }
113
+ },
114
+ "node_modules/@esbuild/freebsd-arm64": {
115
+ "version": "0.27.2",
116
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.2.tgz",
117
+ "integrity": "sha512-lS/9CN+rgqQ9czogxlMcBMGd+l8Q3Nj1MFQwBZJyoEKI50XGxwuzznYdwcav6lpOGv5BqaZXqvBSiB/kJ5op+g==",
118
+ "cpu": [
119
+ "arm64"
120
+ ],
121
+ "license": "MIT",
122
+ "optional": true,
123
+ "os": [
124
+ "freebsd"
125
+ ],
126
+ "engines": {
127
+ "node": ">=18"
128
+ }
129
+ },
130
+ "node_modules/@esbuild/freebsd-x64": {
131
+ "version": "0.27.2",
132
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.2.tgz",
133
+ "integrity": "sha512-tAfqtNYb4YgPnJlEFu4c212HYjQWSO/w/h/lQaBK7RbwGIkBOuNKQI9tqWzx7Wtp7bTPaGC6MJvWI608P3wXYA==",
134
+ "cpu": [
135
+ "x64"
136
+ ],
137
+ "license": "MIT",
138
+ "optional": true,
139
+ "os": [
140
+ "freebsd"
141
+ ],
142
+ "engines": {
143
+ "node": ">=18"
144
+ }
145
+ },
146
+ "node_modules/@esbuild/linux-arm": {
147
+ "version": "0.27.2",
148
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.2.tgz",
149
+ "integrity": "sha512-vWfq4GaIMP9AIe4yj1ZUW18RDhx6EPQKjwe7n8BbIecFtCQG4CfHGaHuh7fdfq+y3LIA2vGS/o9ZBGVxIDi9hw==",
150
+ "cpu": [
151
+ "arm"
152
+ ],
153
+ "license": "MIT",
154
+ "optional": true,
155
+ "os": [
156
+ "linux"
157
+ ],
158
+ "engines": {
159
+ "node": ">=18"
160
+ }
161
+ },
162
+ "node_modules/@esbuild/linux-arm64": {
163
+ "version": "0.27.2",
164
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.2.tgz",
165
+ "integrity": "sha512-hYxN8pr66NsCCiRFkHUAsxylNOcAQaxSSkHMMjcpx0si13t1LHFphxJZUiGwojB1a/Hd5OiPIqDdXONia6bhTw==",
166
+ "cpu": [
167
+ "arm64"
168
+ ],
169
+ "license": "MIT",
170
+ "optional": true,
171
+ "os": [
172
+ "linux"
173
+ ],
174
+ "engines": {
175
+ "node": ">=18"
176
+ }
177
+ },
178
+ "node_modules/@esbuild/linux-ia32": {
179
+ "version": "0.27.2",
180
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.2.tgz",
181
+ "integrity": "sha512-MJt5BRRSScPDwG2hLelYhAAKh9imjHK5+NE/tvnRLbIqUWa+0E9N4WNMjmp/kXXPHZGqPLxggwVhz7QP8CTR8w==",
182
+ "cpu": [
183
+ "ia32"
184
+ ],
185
+ "license": "MIT",
186
+ "optional": true,
187
+ "os": [
188
+ "linux"
189
+ ],
190
+ "engines": {
191
+ "node": ">=18"
192
+ }
193
+ },
194
+ "node_modules/@esbuild/linux-loong64": {
195
+ "version": "0.27.2",
196
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.2.tgz",
197
+ "integrity": "sha512-lugyF1atnAT463aO6KPshVCJK5NgRnU4yb3FUumyVz+cGvZbontBgzeGFO1nF+dPueHD367a2ZXe1NtUkAjOtg==",
198
+ "cpu": [
199
+ "loong64"
200
+ ],
201
+ "license": "MIT",
202
+ "optional": true,
203
+ "os": [
204
+ "linux"
205
+ ],
206
+ "engines": {
207
+ "node": ">=18"
208
+ }
209
+ },
210
+ "node_modules/@esbuild/linux-mips64el": {
211
+ "version": "0.27.2",
212
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.2.tgz",
213
+ "integrity": "sha512-nlP2I6ArEBewvJ2gjrrkESEZkB5mIoaTswuqNFRv/WYd+ATtUpe9Y09RnJvgvdag7he0OWgEZWhviS1OTOKixw==",
214
+ "cpu": [
215
+ "mips64el"
216
+ ],
217
+ "license": "MIT",
218
+ "optional": true,
219
+ "os": [
220
+ "linux"
221
+ ],
222
+ "engines": {
223
+ "node": ">=18"
224
+ }
225
+ },
226
+ "node_modules/@esbuild/linux-ppc64": {
227
+ "version": "0.27.2",
228
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.2.tgz",
229
+ "integrity": "sha512-C92gnpey7tUQONqg1n6dKVbx3vphKtTHJaNG2Ok9lGwbZil6DrfyecMsp9CrmXGQJmZ7iiVXvvZH6Ml5hL6XdQ==",
230
+ "cpu": [
231
+ "ppc64"
232
+ ],
233
+ "license": "MIT",
234
+ "optional": true,
235
+ "os": [
236
+ "linux"
237
+ ],
238
+ "engines": {
239
+ "node": ">=18"
240
+ }
241
+ },
242
+ "node_modules/@esbuild/linux-riscv64": {
243
+ "version": "0.27.2",
244
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.2.tgz",
245
+ "integrity": "sha512-B5BOmojNtUyN8AXlK0QJyvjEZkWwy/FKvakkTDCziX95AowLZKR6aCDhG7LeF7uMCXEJqwa8Bejz5LTPYm8AvA==",
246
+ "cpu": [
247
+ "riscv64"
248
+ ],
249
+ "license": "MIT",
250
+ "optional": true,
251
+ "os": [
252
+ "linux"
253
+ ],
254
+ "engines": {
255
+ "node": ">=18"
256
+ }
257
+ },
258
+ "node_modules/@esbuild/linux-s390x": {
259
+ "version": "0.27.2",
260
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.2.tgz",
261
+ "integrity": "sha512-p4bm9+wsPwup5Z8f4EpfN63qNagQ47Ua2znaqGH6bqLlmJ4bx97Y9JdqxgGZ6Y8xVTixUnEkoKSHcpRlDnNr5w==",
262
+ "cpu": [
263
+ "s390x"
264
+ ],
265
+ "license": "MIT",
266
+ "optional": true,
267
+ "os": [
268
+ "linux"
269
+ ],
270
+ "engines": {
271
+ "node": ">=18"
272
+ }
273
+ },
274
+ "node_modules/@esbuild/linux-x64": {
275
+ "version": "0.27.2",
276
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.2.tgz",
277
+ "integrity": "sha512-uwp2Tip5aPmH+NRUwTcfLb+W32WXjpFejTIOWZFw/v7/KnpCDKG66u4DLcurQpiYTiYwQ9B7KOeMJvLCu/OvbA==",
278
+ "cpu": [
279
+ "x64"
280
+ ],
281
+ "license": "MIT",
282
+ "optional": true,
283
+ "os": [
284
+ "linux"
285
+ ],
286
+ "engines": {
287
+ "node": ">=18"
288
+ }
289
+ },
290
+ "node_modules/@esbuild/netbsd-arm64": {
291
+ "version": "0.27.2",
292
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.2.tgz",
293
+ "integrity": "sha512-Kj6DiBlwXrPsCRDeRvGAUb/LNrBASrfqAIok+xB0LxK8CHqxZ037viF13ugfsIpePH93mX7xfJp97cyDuTZ3cw==",
294
+ "cpu": [
295
+ "arm64"
296
+ ],
297
+ "license": "MIT",
298
+ "optional": true,
299
+ "os": [
300
+ "netbsd"
301
+ ],
302
+ "engines": {
303
+ "node": ">=18"
304
+ }
305
+ },
306
+ "node_modules/@esbuild/netbsd-x64": {
307
+ "version": "0.27.2",
308
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.2.tgz",
309
+ "integrity": "sha512-HwGDZ0VLVBY3Y+Nw0JexZy9o/nUAWq9MlV7cahpaXKW6TOzfVno3y3/M8Ga8u8Yr7GldLOov27xiCnqRZf0tCA==",
310
+ "cpu": [
311
+ "x64"
312
+ ],
313
+ "license": "MIT",
314
+ "optional": true,
315
+ "os": [
316
+ "netbsd"
317
+ ],
318
+ "engines": {
319
+ "node": ">=18"
320
+ }
321
+ },
322
+ "node_modules/@esbuild/openbsd-arm64": {
323
+ "version": "0.27.2",
324
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.2.tgz",
325
+ "integrity": "sha512-DNIHH2BPQ5551A7oSHD0CKbwIA/Ox7+78/AWkbS5QoRzaqlev2uFayfSxq68EkonB+IKjiuxBFoV8ESJy8bOHA==",
326
+ "cpu": [
327
+ "arm64"
328
+ ],
329
+ "license": "MIT",
330
+ "optional": true,
331
+ "os": [
332
+ "openbsd"
333
+ ],
334
+ "engines": {
335
+ "node": ">=18"
336
+ }
337
+ },
338
+ "node_modules/@esbuild/openbsd-x64": {
339
+ "version": "0.27.2",
340
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.2.tgz",
341
+ "integrity": "sha512-/it7w9Nb7+0KFIzjalNJVR5bOzA9Vay+yIPLVHfIQYG/j+j9VTH84aNB8ExGKPU4AzfaEvN9/V4HV+F+vo8OEg==",
342
+ "cpu": [
343
+ "x64"
344
+ ],
345
+ "license": "MIT",
346
+ "optional": true,
347
+ "os": [
348
+ "openbsd"
349
+ ],
350
+ "engines": {
351
+ "node": ">=18"
352
+ }
353
+ },
354
+ "node_modules/@esbuild/openharmony-arm64": {
355
+ "version": "0.27.2",
356
+ "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.2.tgz",
357
+ "integrity": "sha512-LRBbCmiU51IXfeXk59csuX/aSaToeG7w48nMwA6049Y4J4+VbWALAuXcs+qcD04rHDuSCSRKdmY63sruDS5qag==",
358
+ "cpu": [
359
+ "arm64"
360
+ ],
361
+ "license": "MIT",
362
+ "optional": true,
363
+ "os": [
364
+ "openharmony"
365
+ ],
366
+ "engines": {
367
+ "node": ">=18"
368
+ }
369
+ },
370
+ "node_modules/@esbuild/sunos-x64": {
371
+ "version": "0.27.2",
372
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.2.tgz",
373
+ "integrity": "sha512-kMtx1yqJHTmqaqHPAzKCAkDaKsffmXkPHThSfRwZGyuqyIeBvf08KSsYXl+abf5HDAPMJIPnbBfXvP2ZC2TfHg==",
374
+ "cpu": [
375
+ "x64"
376
+ ],
377
+ "license": "MIT",
378
+ "optional": true,
379
+ "os": [
380
+ "sunos"
381
+ ],
382
+ "engines": {
383
+ "node": ">=18"
384
+ }
385
+ },
386
+ "node_modules/@esbuild/win32-arm64": {
387
+ "version": "0.27.2",
388
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.2.tgz",
389
+ "integrity": "sha512-Yaf78O/B3Kkh+nKABUF++bvJv5Ijoy9AN1ww904rOXZFLWVc5OLOfL56W+C8F9xn5JQZa3UX6m+IktJnIb1Jjg==",
390
+ "cpu": [
391
+ "arm64"
392
+ ],
393
+ "license": "MIT",
394
+ "optional": true,
395
+ "os": [
396
+ "win32"
397
+ ],
398
+ "engines": {
399
+ "node": ">=18"
400
+ }
401
+ },
402
+ "node_modules/@esbuild/win32-ia32": {
403
+ "version": "0.27.2",
404
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.2.tgz",
405
+ "integrity": "sha512-Iuws0kxo4yusk7sw70Xa2E2imZU5HoixzxfGCdxwBdhiDgt9vX9VUCBhqcwY7/uh//78A1hMkkROMJq9l27oLQ==",
406
+ "cpu": [
407
+ "ia32"
408
+ ],
409
+ "license": "MIT",
410
+ "optional": true,
411
+ "os": [
412
+ "win32"
413
+ ],
414
+ "engines": {
415
+ "node": ">=18"
416
+ }
417
+ },
418
+ "node_modules/@esbuild/win32-x64": {
419
+ "version": "0.27.2",
420
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.2.tgz",
421
+ "integrity": "sha512-sRdU18mcKf7F+YgheI/zGf5alZatMUTKj/jNS6l744f9u3WFu4v7twcUI9vu4mknF4Y9aDlblIie0IM+5xxaqQ==",
422
+ "cpu": [
423
+ "x64"
424
+ ],
425
+ "license": "MIT",
426
+ "optional": true,
427
+ "os": [
428
+ "win32"
429
+ ],
430
+ "engines": {
431
+ "node": ">=18"
432
+ }
433
+ },
434
+ "node_modules/esbuild": {
435
+ "version": "0.27.2",
436
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.2.tgz",
437
+ "integrity": "sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw==",
438
+ "hasInstallScript": true,
439
+ "license": "MIT",
440
+ "bin": {
441
+ "esbuild": "bin/esbuild"
442
+ },
443
+ "engines": {
444
+ "node": ">=18"
445
+ },
446
+ "optionalDependencies": {
447
+ "@esbuild/aix-ppc64": "0.27.2",
448
+ "@esbuild/android-arm": "0.27.2",
449
+ "@esbuild/android-arm64": "0.27.2",
450
+ "@esbuild/android-x64": "0.27.2",
451
+ "@esbuild/darwin-arm64": "0.27.2",
452
+ "@esbuild/darwin-x64": "0.27.2",
453
+ "@esbuild/freebsd-arm64": "0.27.2",
454
+ "@esbuild/freebsd-x64": "0.27.2",
455
+ "@esbuild/linux-arm": "0.27.2",
456
+ "@esbuild/linux-arm64": "0.27.2",
457
+ "@esbuild/linux-ia32": "0.27.2",
458
+ "@esbuild/linux-loong64": "0.27.2",
459
+ "@esbuild/linux-mips64el": "0.27.2",
460
+ "@esbuild/linux-ppc64": "0.27.2",
461
+ "@esbuild/linux-riscv64": "0.27.2",
462
+ "@esbuild/linux-s390x": "0.27.2",
463
+ "@esbuild/linux-x64": "0.27.2",
464
+ "@esbuild/netbsd-arm64": "0.27.2",
465
+ "@esbuild/netbsd-x64": "0.27.2",
466
+ "@esbuild/openbsd-arm64": "0.27.2",
467
+ "@esbuild/openbsd-x64": "0.27.2",
468
+ "@esbuild/openharmony-arm64": "0.27.2",
469
+ "@esbuild/sunos-x64": "0.27.2",
470
+ "@esbuild/win32-arm64": "0.27.2",
471
+ "@esbuild/win32-ia32": "0.27.2",
472
+ "@esbuild/win32-x64": "0.27.2"
473
+ }
474
+ },
475
+ "node_modules/react": {
476
+ "version": "19.2.1",
477
+ "resolved": "https://registry.npmjs.org/react/-/react-19.2.1.tgz",
478
+ "integrity": "sha512-DGrYcCWK7tvYMnWh79yrPHt+vdx9tY+1gPZa7nJQtO/p8bLTDaHp4dzwEhQB7pZ4Xe3ok4XKuEPrVuc+wlpkmw==",
479
+ "license": "MIT",
480
+ "engines": {
481
+ "node": ">=0.10.0"
482
+ }
483
+ },
484
+ "node_modules/react-dom": {
485
+ "version": "19.2.1",
486
+ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.1.tgz",
487
+ "integrity": "sha512-ibrK8llX2a4eOskq1mXKu/TGZj9qzomO+sNfO98M6d9zIPOEhlBkMkBUBLd1vgS0gQsLDBzA+8jJBVXDnfHmJg==",
488
+ "license": "MIT",
489
+ "dependencies": {
490
+ "scheduler": "^0.27.0"
491
+ },
492
+ "peerDependencies": {
493
+ "react": "^19.2.1"
494
+ }
495
+ },
496
+ "node_modules/scheduler": {
497
+ "version": "0.27.0",
498
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz",
499
+ "integrity": "sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==",
500
+ "license": "MIT"
501
+ },
502
+ "node_modules/typescript": {
503
+ "version": "5.9.3",
504
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz",
505
+ "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
506
+ "license": "Apache-2.0",
507
+ "bin": {
508
+ "tsc": "bin/tsc",
509
+ "tsserver": "bin/tsserver"
510
+ },
511
+ "engines": {
512
+ "node": ">=14.17"
513
+ }
514
+ }
515
+ }
516
+ }
data/package.json ADDED
@@ -0,0 +1,14 @@
1
+ {
2
+ "name": "reactive-views-gem",
3
+ "private": true,
4
+ "description": "Node.js dependencies for ReactiveViews SSR server",
5
+ "engines": {
6
+ "node": ">=22.0.0"
7
+ },
8
+ "dependencies": {
9
+ "react": "^19.0.0",
10
+ "react-dom": "^19.0.0",
11
+ "esbuild": "^0.27.0",
12
+ "typescript": "^5.7.0"
13
+ }
14
+ }