superglue 2.0.0.beta.3 → 2.0.0.rc.2

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 (51) hide show
  1. checksums.yaml +4 -4
  2. data/app/views/application/_humid.html.erb +1 -0
  3. data/lib/generators/superglue/install/install_generator.rb +223 -83
  4. data/lib/generators/superglue/install/templates/bun/bun.config.deepkit.js +5 -7
  5. data/lib/generators/superglue/install/templates/bun/bun.config.js +5 -7
  6. data/lib/generators/superglue/install/templates/bun/bun.config.ts.js +5 -7
  7. data/lib/generators/superglue/install/templates/bun/bun.config.typia.js +37 -0
  8. data/lib/generators/superglue/install/templates/bun/page_to_page_mapping.js +1 -1
  9. data/lib/generators/superglue/install/templates/bun/page_to_page_mapping.ts +1 -1
  10. data/lib/generators/superglue/install/templates/humid_initializer.rb +47 -0
  11. data/lib/generators/superglue/install/templates/js/application.jsx +8 -3
  12. data/lib/generators/superglue/install/templates/js/build.mjs +14 -3
  13. data/lib/generators/superglue/install/templates/js/page_to_page_mapping.js +9 -32
  14. data/lib/generators/superglue/install/templates/rollup/page_to_page_mapping.js +1 -1
  15. data/lib/generators/superglue/install/templates/rollup/page_to_page_mapping.ts +1 -1
  16. data/lib/generators/superglue/install/templates/rollup/rollup.config.deepkit.js +1 -1
  17. data/lib/generators/superglue/install/templates/rollup/rollup.config.js +2 -2
  18. data/lib/generators/superglue/install/templates/rollup/rollup.config.ts.js +2 -2
  19. data/lib/generators/superglue/install/templates/rollup/rollup.config.typia.js +38 -0
  20. data/lib/generators/superglue/install/templates/ssr/bun.build_ssr.js +37 -0
  21. data/lib/generators/superglue/install/templates/ssr/esbuild.build_ssr.mjs +37 -0
  22. data/lib/generators/superglue/install/templates/ssr/rollup.build_ssr.config.js +42 -0
  23. data/lib/generators/superglue/install/templates/ssr/server_rendering.jsx +22 -0
  24. data/lib/generators/superglue/install/templates/ssr/server_rendering.tsx +26 -0
  25. data/lib/generators/superglue/install/templates/ssr/shim.js +8490 -0
  26. data/lib/generators/superglue/install/templates/ssr/webpack.build_ssr.js +40 -0
  27. data/lib/generators/superglue/install/templates/ts/application.tsx +9 -4
  28. data/lib/generators/superglue/install/templates/ts/build.deepkit.mjs +13 -2
  29. data/lib/generators/superglue/install/templates/ts/build.mjs +14 -3
  30. data/lib/generators/superglue/install/templates/ts/build.typia.mjs +39 -0
  31. data/lib/generators/superglue/install/templates/ts/page_to_page_mapping.ts +11 -33
  32. data/lib/generators/superglue/install/templates/ts/tsconfig.json +1 -0
  33. data/lib/generators/superglue/install/templates/webpack/page_to_page_mapping.js +1 -1
  34. data/lib/generators/superglue/install/templates/webpack/page_to_page_mapping.ts +1 -1
  35. data/lib/generators/superglue/install/templates/webpack/webpack.config.typia.js +42 -0
  36. data/lib/generators/superglue/scaffold_controller/scaffold_controller_generator.rb +0 -3
  37. data/lib/generators/superglue/view_collection/view_collection_generator.rb +5 -3
  38. data/lib/superglue/engine.rb +25 -4
  39. data/lib/superglue/rendering.rb +8 -69
  40. data/lib/superglue.rb +1 -1
  41. metadata +38 -13
  42. data/lib/generators/superglue/install/templates/erb/superglue.html.erb +0 -5
  43. data/lib/superglue/resolver.rb +0 -58
  44. /data/lib/generators/superglue/view_collection/templates/js/{edit.jsx → edit.html.jsx} +0 -0
  45. /data/lib/generators/superglue/view_collection/templates/js/{index.jsx → index.html.jsx} +0 -0
  46. /data/lib/generators/superglue/view_collection/templates/js/{new.jsx → new.html.jsx} +0 -0
  47. /data/lib/generators/superglue/view_collection/templates/js/{show.jsx → show.html.jsx} +0 -0
  48. /data/lib/generators/superglue/view_collection/templates/ts/{edit.tsx → edit.html.tsx} +0 -0
  49. /data/lib/generators/superglue/view_collection/templates/ts/{index.tsx → index.html.tsx} +0 -0
  50. /data/lib/generators/superglue/view_collection/templates/ts/{new.tsx → new.html.tsx} +0 -0
  51. /data/lib/generators/superglue/view_collection/templates/ts/{show.tsx → show.html.tsx} +0 -0
@@ -1,58 +0,0 @@
1
- require 'action_view'
2
-
3
- module Superglue
4
- class Resolver < ActionView::FileSystemResolver
5
- class JsxPathParser < ActionView::Resolver::PathParser
6
- REACT_FORMATS = [:tsx, :jsx]
7
-
8
- def build_path_regex
9
- formats = Regexp.union(REACT_FORMATS.map(&:to_s))
10
-
11
- %r{
12
- \A
13
- (?:(?<prefix>.*)/)?
14
- (?<action>.*?)
15
- (?:\.(?<format>#{formats}))??
16
- \z
17
- }x
18
- end
19
-
20
- def parse(path)
21
- @regex ||= build_path_regex
22
- match = @regex.match(path)
23
- path = ActionView::TemplatePath.build(match[:action], match[:prefix] || "", false)
24
- details = ActionView::TemplateDetails.new(
25
- nil,
26
- nil,
27
- match[:format]&.to_sym,
28
- nil
29
- )
30
- ParsedPath.new(path, details)
31
- end
32
- end
33
-
34
- def initialize(path)
35
- raise ArgumentError, "path already is a Resolver class" if path.is_a?(ActionView::Resolver)
36
- @unbound_templates = Concurrent::Map.new
37
- @path_parser = JsxPathParser.new
38
- @path = File.expand_path(path)
39
- end
40
-
41
- def clear_cache
42
- @unbound_templates.clear
43
- @path_parser = JsxPathParser.new
44
- end
45
-
46
- def source_for_template(template)
47
- "''"
48
- end
49
-
50
- def filter_and_sort_by_details(templates, requested_details)
51
- if requested_details.formats.empty?
52
- templates
53
- else
54
- []
55
- end
56
- end
57
- end
58
- end