@barefootjs/jsx 0.31.0 → 0.31.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 (73) hide show
  1. package/dist/adapters/interface.d.ts +11 -0
  2. package/dist/adapters/interface.d.ts.map +1 -1
  3. package/dist/adapters/jsx-adapter.d.ts +92 -1
  4. package/dist/adapters/jsx-adapter.d.ts.map +1 -1
  5. package/dist/adapters/test-adapter.d.ts.map +1 -1
  6. package/dist/analyzer.d.ts.map +1 -1
  7. package/dist/compiler.d.ts.map +1 -1
  8. package/dist/css-layer-prefixer.d.ts +16 -0
  9. package/dist/css-layer-prefixer.d.ts.map +1 -1
  10. package/dist/errors.d.ts +1 -0
  11. package/dist/errors.d.ts.map +1 -1
  12. package/dist/html-types.d.ts +19 -0
  13. package/dist/html-types.d.ts.map +1 -1
  14. package/dist/index.d.ts +3 -2
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +1402 -1124
  17. package/dist/ir-to-client-js/collect-elements.d.ts.map +1 -1
  18. package/dist/ir-to-client-js/emit-reactive.d.ts.map +1 -1
  19. package/dist/ir-to-client-js/phases/props-event-handlers.d.ts.map +1 -1
  20. package/dist/ir-to-client-js/phases/props-extraction.d.ts.map +1 -1
  21. package/dist/ir-to-client-js/utils.d.ts +6 -4
  22. package/dist/ir-to-client-js/utils.d.ts.map +1 -1
  23. package/dist/jsx-runtime/index.d.ts +2 -8
  24. package/dist/jsx-runtime/index.d.ts.map +1 -1
  25. package/dist/jsx-to-ir.d.ts.map +1 -1
  26. package/dist/module-exports.d.ts +9 -1
  27. package/dist/module-exports.d.ts.map +1 -1
  28. package/dist/prop-rewrite.d.ts +7 -2
  29. package/dist/prop-rewrite.d.ts.map +1 -1
  30. package/dist/props-binding.d.ts +40 -0
  31. package/dist/props-binding.d.ts.map +1 -0
  32. package/dist/relocate.d.ts +9 -0
  33. package/dist/relocate.d.ts.map +1 -1
  34. package/dist/ssr-defaults.d.ts +43 -0
  35. package/dist/ssr-defaults.d.ts.map +1 -1
  36. package/dist/template-parts.d.ts +53 -0
  37. package/dist/template-parts.d.ts.map +1 -0
  38. package/dist/types.d.ts +10 -0
  39. package/dist/types.d.ts.map +1 -1
  40. package/package.json +2 -2
  41. package/src/__tests__/adapter-output.test.ts +8 -4
  42. package/src/__tests__/aliased-destructured-prop-csr.test.ts +112 -0
  43. package/src/__tests__/css-layer-prefixer.test.ts +72 -0
  44. package/src/__tests__/form-control-value-ssr.test.ts +48 -3
  45. package/src/__tests__/memo-deps-comments.test.ts +99 -0
  46. package/src/__tests__/multi-return-sibling-diagnostic.test.ts +241 -0
  47. package/src/__tests__/ssr-defaults.test.ts +124 -1
  48. package/src/__tests__/staged-ir/08-relocate-unit.test.ts +1 -0
  49. package/src/__tests__/staged-ir/11-template-primitive-registry.test.ts +1 -0
  50. package/src/adapters/interface.ts +11 -0
  51. package/src/adapters/jsx-adapter.ts +266 -4
  52. package/src/adapters/test-adapter.ts +13 -10
  53. package/src/analyzer.ts +50 -8
  54. package/src/compiler.ts +119 -18
  55. package/src/css-layer-prefixer.ts +80 -24
  56. package/src/errors.ts +18 -0
  57. package/src/html-types.ts +24 -0
  58. package/src/index.ts +7 -1
  59. package/src/ir-to-client-js/collect-elements.ts +4 -1
  60. package/src/ir-to-client-js/emit-reactive.ts +4 -2
  61. package/src/ir-to-client-js/phases/props-event-handlers.ts +4 -3
  62. package/src/ir-to-client-js/phases/props-extraction.ts +7 -4
  63. package/src/ir-to-client-js/plan/build-declaration-emit.ts +6 -3
  64. package/src/ir-to-client-js/utils.ts +5 -24
  65. package/src/jsx-runtime/index.ts +2 -7
  66. package/src/jsx-to-ir.ts +75 -42
  67. package/src/module-exports.ts +11 -2
  68. package/src/prop-rewrite.ts +25 -5
  69. package/src/props-binding.ts +70 -0
  70. package/src/relocate.ts +19 -2
  71. package/src/ssr-defaults.ts +70 -0
  72. package/src/template-parts.ts +81 -0
  73. package/src/types.ts +10 -0
package/src/types.ts CHANGED
@@ -93,6 +93,16 @@ export interface ParamInfo {
93
93
  type: TypeInfo
94
94
  optional: boolean
95
95
  defaultValue?: string
96
+ /**
97
+ * `defaultValue` parsed into a structured tree, mirroring `SignalInfo.parsed`
98
+ * (Roadmap A). Attached best-effort by the analyzer (`tsNodeToParsedExpr` on
99
+ * the binding element's own `initializer` node — no re-parse of the
100
+ * `defaultValue` text) so adapters can classify a destructure default's
101
+ * literal shape (`{ count = 3 }`, `{ ratio = 1.5 }`) from structure instead
102
+ * of regexing `defaultValue`. Absent when the shape isn't supported;
103
+ * consumers fall back to text-matching `defaultValue`.
104
+ */
105
+ parsed?: ParsedExpr
96
106
  /** When true, the default value contains an arrow function or function expression (computed from AST). */
97
107
  defaultContainsArrow?: boolean
98
108
  /** When true, the parameter is a rest spread (`...args`) — emit must prepend `...`. */