jsx_rosetta 0.5.1 → 0.6.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 (43) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +128 -11
  3. data/CLAUDE.md +70 -0
  4. data/README.md +50 -0
  5. data/agents/jsx-rosetta-resolve-todo-file.md +90 -0
  6. data/lib/jsx_rosetta/ast/inflector.rb +17 -0
  7. data/lib/jsx_rosetta/backend/phlex.rb +1078 -77
  8. data/lib/jsx_rosetta/backend/rails_view.rb +1 -1
  9. data/lib/jsx_rosetta/backend/view_component/expression_translator.rb +73 -20
  10. data/lib/jsx_rosetta/backend/view_component.rb +48 -2
  11. data/lib/jsx_rosetta/cli.rb +175 -37
  12. data/lib/jsx_rosetta/icons/lucide.json +37 -0
  13. data/lib/jsx_rosetta/icons.rb +44 -0
  14. data/lib/jsx_rosetta/ir/lowering.rb +720 -31
  15. data/lib/jsx_rosetta/ir/radix_registry.rb +84 -0
  16. data/lib/jsx_rosetta/ir/types.rb +187 -3
  17. data/lib/jsx_rosetta/ir.rb +5 -4
  18. data/lib/jsx_rosetta/pages_routing.rb +640 -0
  19. data/lib/jsx_rosetta/version.rb +1 -1
  20. data/lib/jsx_rosetta.rb +8 -6
  21. data/plans/nextjs_pages_to_rails.md +200 -0
  22. data/plans/nextjs_pages_to_rails_slice_2.md +118 -0
  23. data/plans/nextjs_pages_to_rails_slice_3.md +121 -0
  24. data/plans/nextjs_pages_to_rails_slice_4.md +301 -0
  25. data/plans/translator_widening_and_pages_followups.md +120 -0
  26. data/plans/translator_widening_slice_a.md +208 -0
  27. data/skills/jsx-rosetta-resolve-todos/SKILL.md +206 -0
  28. data/skills/jsx-rosetta-resolve-todos/data/design_tokens.template.yml +71 -0
  29. data/skills/jsx-rosetta-resolve-todos/data/target_app_conventions.template.yml +107 -0
  30. data/skills/jsx-rosetta-resolve-todos/examples/design_tokens.ant_design_v5.yml +190 -0
  31. data/skills/jsx-rosetta-resolve-todos/recipes/01_design_tokens.md +74 -0
  32. data/skills/jsx-rosetta-resolve-todos/recipes/02_promoted_ivar.md +49 -0
  33. data/skills/jsx-rosetta-resolve-todos/recipes/03_react_hooks.md +34 -0
  34. data/skills/jsx-rosetta-resolve-todos/recipes/04_apollo_hooks.md +34 -0
  35. data/skills/jsx-rosetta-resolve-todos/recipes/05_event_handlers.md +45 -0
  36. data/skills/jsx-rosetta-resolve-todos/recipes/06_module_constants.md +29 -0
  37. data/skills/jsx-rosetta-resolve-todos/recipes/07_nextjs_navigation.md +44 -0
  38. data/skills/jsx-rosetta-resolve-todos/recipes/08_generic_js_bailouts.md +55 -0
  39. data/skills/jsx-rosetta-resolve-todos/tools/apply_promoted_ivar.rb +189 -0
  40. data/skills/jsx-rosetta-resolve-todos/tools/apply_substitutions.rb +292 -0
  41. data/skills/jsx-rosetta-resolve-todos/tools/diff_corpus.rb +161 -0
  42. data/skills/jsx-rosetta-resolve-todos/tools/discover_bailouts.rb +211 -0
  43. metadata +29 -1
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jsx_rosetta
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sean McCleary
@@ -24,12 +24,14 @@ extensions: []
24
24
  extra_rdoc_files: []
25
25
  files:
26
26
  - CHANGELOG.md
27
+ - CLAUDE.md
27
28
  - CODE_OF_CONDUCT.md
28
29
  - LICENSE.txt
29
30
  - PLAN.md
30
31
  - README.md
31
32
  - ROADMAP.md
32
33
  - Rakefile
34
+ - agents/jsx-rosetta-resolve-todo-file.md
33
35
  - exe/jsx_rosetta
34
36
  - lib/jsx_rosetta.rb
35
37
  - lib/jsx_rosetta/ast.rb
@@ -45,11 +47,15 @@ files:
45
47
  - lib/jsx_rosetta/backend/view_component.rb
46
48
  - lib/jsx_rosetta/backend/view_component/expression_translator.rb
47
49
  - lib/jsx_rosetta/cli.rb
50
+ - lib/jsx_rosetta/icons.rb
51
+ - lib/jsx_rosetta/icons/lucide.json
48
52
  - lib/jsx_rosetta/ir.rb
49
53
  - lib/jsx_rosetta/ir/lowering.rb
50
54
  - lib/jsx_rosetta/ir/module_shape_classifier.rb
55
+ - lib/jsx_rosetta/ir/radix_registry.rb
51
56
  - lib/jsx_rosetta/ir/types.rb
52
57
  - lib/jsx_rosetta/node_bridge.rb
58
+ - lib/jsx_rosetta/pages_routing.rb
53
59
  - lib/jsx_rosetta/parse_error.rb
54
60
  - lib/jsx_rosetta/parser.rb
55
61
  - lib/jsx_rosetta/routes.rb
@@ -58,6 +64,28 @@ files:
58
64
  - node/package-lock.json
59
65
  - node/package.json
60
66
  - node/parse.js
67
+ - plans/nextjs_pages_to_rails.md
68
+ - plans/nextjs_pages_to_rails_slice_2.md
69
+ - plans/nextjs_pages_to_rails_slice_3.md
70
+ - plans/nextjs_pages_to_rails_slice_4.md
71
+ - plans/translator_widening_and_pages_followups.md
72
+ - plans/translator_widening_slice_a.md
73
+ - skills/jsx-rosetta-resolve-todos/SKILL.md
74
+ - skills/jsx-rosetta-resolve-todos/data/design_tokens.template.yml
75
+ - skills/jsx-rosetta-resolve-todos/data/target_app_conventions.template.yml
76
+ - skills/jsx-rosetta-resolve-todos/examples/design_tokens.ant_design_v5.yml
77
+ - skills/jsx-rosetta-resolve-todos/recipes/01_design_tokens.md
78
+ - skills/jsx-rosetta-resolve-todos/recipes/02_promoted_ivar.md
79
+ - skills/jsx-rosetta-resolve-todos/recipes/03_react_hooks.md
80
+ - skills/jsx-rosetta-resolve-todos/recipes/04_apollo_hooks.md
81
+ - skills/jsx-rosetta-resolve-todos/recipes/05_event_handlers.md
82
+ - skills/jsx-rosetta-resolve-todos/recipes/06_module_constants.md
83
+ - skills/jsx-rosetta-resolve-todos/recipes/07_nextjs_navigation.md
84
+ - skills/jsx-rosetta-resolve-todos/recipes/08_generic_js_bailouts.md
85
+ - skills/jsx-rosetta-resolve-todos/tools/apply_promoted_ivar.rb
86
+ - skills/jsx-rosetta-resolve-todos/tools/apply_substitutions.rb
87
+ - skills/jsx-rosetta-resolve-todos/tools/diff_corpus.rb
88
+ - skills/jsx-rosetta-resolve-todos/tools/discover_bailouts.rb
61
89
  homepage: https://github.com/mrinterweb/jsx_rosetta
62
90
  licenses:
63
91
  - MIT