@fluixi/compiler 1.0.0-alpha.92 → 1.0.0-alpha.94

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 (102) hide show
  1. package/dist/analyze/intrinsics.cjs +31 -1
  2. package/dist/analyze/intrinsics.d.cts +14 -0
  3. package/dist/analyze/intrinsics.d.ts +14 -0
  4. package/dist/analyze/intrinsics.d.ts.map +1 -1
  5. package/dist/analyze/intrinsics.js +35 -0
  6. package/dist/analyze/intrinsics.mjs +31 -1
  7. package/dist/analyze/reactive-bindings.cjs +18 -0
  8. package/dist/analyze/reactive-bindings.mjs +18 -0
  9. package/dist/analyze/static-graph.cjs +22 -4
  10. package/dist/analyze/static-graph.d.ts.map +1 -1
  11. package/dist/analyze/static-graph.js +6 -4
  12. package/dist/analyze/static-graph.mjs +22 -4
  13. package/dist/{babel-GI375YZ2.mjs → babel-RJFQVFJW.mjs} +4 -4
  14. package/dist/{chunk-QZ4CJPYP.mjs → chunk-DP2QDWWH.mjs} +1 -1
  15. package/dist/{chunk-DWNWN5RH.mjs → chunk-E2RWTIYE.mjs} +21 -15
  16. package/dist/{chunk-XJ5H2MXY.mjs → chunk-HCCBEJEZ.mjs} +31 -1
  17. package/dist/{chunk-VOUI6XPV.mjs → chunk-HIZU7WI2.mjs} +1 -1
  18. package/dist/{chunk-VC6X44FS.mjs → chunk-ZR2QHTEX.mjs} +505 -68
  19. package/dist/codegen/backends/imperative.cjs +24 -6
  20. package/dist/codegen/backends/imperative.d.ts.map +1 -1
  21. package/dist/codegen/backends/imperative.js +20 -4
  22. package/dist/codegen/backends/imperative.mjs +24 -6
  23. package/dist/frontend/babel/build-ir-lit.cjs +470 -63
  24. package/dist/frontend/babel/build-ir-lit.mjs +470 -63
  25. package/dist/frontend/babel/build-ir.cjs +470 -63
  26. package/dist/frontend/babel/build-ir.mjs +470 -63
  27. package/dist/frontend/babel/index.cjs +471 -64
  28. package/dist/frontend/babel/index.mjs +471 -64
  29. package/dist/frontend/babel/lower-template.cjs +470 -63
  30. package/dist/frontend/babel/lower-template.mjs +470 -63
  31. package/dist/frontend/babel/plugin.cjs +470 -63
  32. package/dist/frontend/babel/plugin.mjs +470 -63
  33. package/dist/index.cjs +360 -58
  34. package/dist/index.mjs +372 -58
  35. package/dist/integrations.cjs +1347 -98
  36. package/dist/integrations.d.ts.map +1 -1
  37. package/dist/integrations.js +44 -2
  38. package/dist/integrations.mjs +205 -19
  39. package/dist/lower/compile-template.cjs +354 -57
  40. package/dist/lower/compile-template.d.cts +13 -0
  41. package/dist/lower/compile-template.d.ts +13 -0
  42. package/dist/lower/compile-template.d.ts.map +1 -1
  43. package/dist/lower/compile-template.js +3 -0
  44. package/dist/lower/compile-template.mjs +366 -57
  45. package/dist/lower/entities.cjs +288 -0
  46. package/dist/lower/entities.d.cts +1 -0
  47. package/dist/lower/entities.d.ts +2 -0
  48. package/dist/lower/entities.d.ts.map +1 -0
  49. package/dist/lower/entities.js +54 -0
  50. package/dist/lower/entities.mjs +267 -0
  51. package/dist/lower/jsx.cjs +567 -7
  52. package/dist/lower/jsx.d.cts +8 -0
  53. package/dist/lower/jsx.d.ts +8 -0
  54. package/dist/lower/jsx.d.ts.map +1 -1
  55. package/dist/lower/jsx.js +205 -7
  56. package/dist/lower/jsx.mjs +567 -7
  57. package/dist/lower/template.cjs +332 -56
  58. package/dist/lower/template.d.ts.map +1 -1
  59. package/dist/lower/template.js +57 -49
  60. package/dist/lower/template.mjs +332 -56
  61. package/dist/resolve/builtins.cjs +1 -1
  62. package/dist/resolve/builtins.mjs +1 -1
  63. package/dist/resolve/component-globals.cjs +20 -1
  64. package/dist/resolve/component-globals.js +2 -2
  65. package/dist/resolve/component-globals.mjs +20 -1
  66. package/dist/resolve/write-globals.cjs +20 -1
  67. package/dist/resolve/write-globals.mjs +20 -1
  68. package/dist/{server-fns-BBZRZUPP.mjs → server-fns-JLSTKWPS.mjs} +4 -4
  69. package/dist/{server-functions-VEGLIFCE.mjs → server-functions-BGY3RD4R.mjs} +3 -3
  70. package/dist/transform/index.cjs +1123 -77
  71. package/dist/transform/index.mjs +1141 -91
  72. package/dist/transform/intrinsics.cjs +18 -0
  73. package/dist/transform/intrinsics.mjs +18 -0
  74. package/dist/transform/props.mjs +19 -14
  75. package/dist/transform/server-fns.mjs +19 -14
  76. package/dist/transform/source-locations.cjs +64 -3
  77. package/dist/transform/source-locations.d.cts +7 -2
  78. package/dist/transform/source-locations.d.ts +7 -2
  79. package/dist/transform/source-locations.d.ts.map +1 -1
  80. package/dist/transform/source-locations.js +68 -3
  81. package/dist/transform/source-locations.mjs +64 -3
  82. package/dist/transform/styles.cjs +588 -0
  83. package/dist/transform/styles.d.cts +211 -0
  84. package/dist/transform/styles.d.ts +212 -0
  85. package/dist/transform/styles.d.ts.map +1 -0
  86. package/dist/transform/styles.js +714 -0
  87. package/dist/transform/styles.mjs +653 -0
  88. package/dist/transform/templates.cjs +1122 -76
  89. package/dist/transform/templates.d.cts +13 -0
  90. package/dist/transform/templates.d.ts +13 -0
  91. package/dist/transform/templates.d.ts.map +1 -1
  92. package/dist/transform/templates.js +51 -14
  93. package/dist/transform/templates.mjs +1140 -90
  94. package/dist/{transform-UWZ7ZGJ2.mjs → transform-GBP6Y4UI.mjs} +603 -19
  95. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  96. package/dist/vite-styles.cjs +180 -0
  97. package/dist/vite-styles.d.cts +59 -0
  98. package/dist/vite-styles.d.ts +60 -0
  99. package/dist/vite-styles.d.ts.map +1 -0
  100. package/dist/vite-styles.js +198 -0
  101. package/dist/vite-styles.mjs +159 -0
  102. package/package.json +10 -3
@@ -128,6 +128,7 @@ var INTRINSICS = {
128
128
  $effect: { export: "effect", module: REACTIVE_MODULE, returns: "effect" },
129
129
  $store: { export: "store", module: "@fluixi/reactive/store", returns: "store-handle" },
130
130
  $resource: { export: "resource", module: REACTIVE_MODULE, returns: "resource-handle" },
131
+ $cachedResource: { export: "cachedResource", module: "@fluixi/reactive/cached-resource", returns: "resource-handle" },
131
132
  // No short runtime form for these yet, so the intrinsic stands for the `create*`
132
133
  // name. Still worth having: no import to write, and when a shorter form is
133
134
  // designed, the change is this line rather than a compiler pass.
@@ -138,9 +139,27 @@ var INTRINSICS = {
138
139
  // dependency analysis must not guess at.
139
140
  $untrack: { export: "untrack", module: REACTIVE_MODULE, returns: "plain" },
140
141
  $untrackStore: { export: "untrackStore", module: "@fluixi/reactive/store", returns: "plain" },
142
+ // Scopes, scheduling and lifecycle: no value to classify, but the same authoring promise,
143
+ // no import to write. `$cleanup` registers a callback on the current owner (`onCleanup`).
144
+ $batch: { export: "batch", module: REACTIVE_MODULE, returns: "plain" },
145
+ $cleanup: { export: "onCleanup", module: REACTIVE_MODULE, returns: "plain" },
146
+ $root: { export: "root", module: REACTIVE_MODULE, returns: "plain" },
147
+ $context: { export: "context", module: REACTIVE_MODULE, returns: "plain" },
148
+ $renderEffect: { export: "renderEffect", module: REACTIVE_MODULE, returns: "effect" },
149
+ $computed: { export: "computed", module: REACTIVE_MODULE, returns: "effect" },
150
+ // Storage for where the code runs, and a signal kept in it. `$persisted` is a signal
151
+ // handle as far as reads go: the same accessor with `set` on it.
152
+ $storage: { export: "useStorage", module: "@fluixi/core/storage", returns: "plain" },
153
+ $asyncStorage: { export: "useAsyncStorage", module: "@fluixi/core/storage", returns: "plain" },
154
+ $persisted: { export: "persisted", module: "@fluixi/core/storage", returns: "signal-handle" },
141
155
  // An environment variable, public or server-only; the browser build refuses a secret.
142
156
  $env: { export: "env", module: "@fluixi/start/env", returns: "plain" }
143
157
  };
158
+ var TAG_INTRINSICS = {
159
+ $html: { export: "html", module: "@fluixi/core" },
160
+ $svg: { export: "svg", module: "@fluixi/core" },
161
+ $css: { export: "css", module: "@fluixi/core" }
162
+ };
144
163
  var INTRINSIC_CALL = new RegExp(`\\$(?:${Object.keys(INTRINSICS).map((n) => n.slice(1)).join("|")})\\s*\\(`);
145
164
 
146
165
  // src/resolve/component-globals.ts
@@ -206,7 +225,7 @@ function componentGlobals(rules, options = {}) {
206
225
  resolved.set(name, target);
207
226
  }
208
227
  }
209
- const usableIntrinsics = intrinsics ? Object.entries(INTRINSICS).filter(([, i]) => {
228
+ const usableIntrinsics = intrinsics ? Object.entries({ ...INTRINSICS, ...TAG_INTRINSICS }).filter(([, i]) => {
210
229
  const pkg = packageOf(i.module);
211
230
  return !available || !pkg || available.has(pkg);
212
231
  }) : [];
@@ -102,6 +102,7 @@ var INTRINSICS = {
102
102
  $effect: { export: "effect", module: REACTIVE_MODULE, returns: "effect" },
103
103
  $store: { export: "store", module: "@fluixi/reactive/store", returns: "store-handle" },
104
104
  $resource: { export: "resource", module: REACTIVE_MODULE, returns: "resource-handle" },
105
+ $cachedResource: { export: "cachedResource", module: "@fluixi/reactive/cached-resource", returns: "resource-handle" },
105
106
  // No short runtime form for these yet, so the intrinsic stands for the `create*`
106
107
  // name. Still worth having: no import to write, and when a shorter form is
107
108
  // designed, the change is this line rather than a compiler pass.
@@ -112,9 +113,27 @@ var INTRINSICS = {
112
113
  // dependency analysis must not guess at.
113
114
  $untrack: { export: "untrack", module: REACTIVE_MODULE, returns: "plain" },
114
115
  $untrackStore: { export: "untrackStore", module: "@fluixi/reactive/store", returns: "plain" },
116
+ // Scopes, scheduling and lifecycle: no value to classify, but the same authoring promise,
117
+ // no import to write. `$cleanup` registers a callback on the current owner (`onCleanup`).
118
+ $batch: { export: "batch", module: REACTIVE_MODULE, returns: "plain" },
119
+ $cleanup: { export: "onCleanup", module: REACTIVE_MODULE, returns: "plain" },
120
+ $root: { export: "root", module: REACTIVE_MODULE, returns: "plain" },
121
+ $context: { export: "context", module: REACTIVE_MODULE, returns: "plain" },
122
+ $renderEffect: { export: "renderEffect", module: REACTIVE_MODULE, returns: "effect" },
123
+ $computed: { export: "computed", module: REACTIVE_MODULE, returns: "effect" },
124
+ // Storage for where the code runs, and a signal kept in it. `$persisted` is a signal
125
+ // handle as far as reads go: the same accessor with `set` on it.
126
+ $storage: { export: "useStorage", module: "@fluixi/core/storage", returns: "plain" },
127
+ $asyncStorage: { export: "useAsyncStorage", module: "@fluixi/core/storage", returns: "plain" },
128
+ $persisted: { export: "persisted", module: "@fluixi/core/storage", returns: "signal-handle" },
115
129
  // An environment variable, public or server-only; the browser build refuses a secret.
116
130
  $env: { export: "env", module: "@fluixi/start/env", returns: "plain" }
117
131
  };
132
+ var TAG_INTRINSICS = {
133
+ $html: { export: "html", module: "@fluixi/core" },
134
+ $svg: { export: "svg", module: "@fluixi/core" },
135
+ $css: { export: "css", module: "@fluixi/core" }
136
+ };
118
137
  var INTRINSIC_CALL = new RegExp(`\\$(?:${Object.keys(INTRINSICS).map((n) => n.slice(1)).join("|")})\\s*\\(`);
119
138
 
120
139
  // src/resolve/component-globals.ts
@@ -180,7 +199,7 @@ function componentGlobals(rules, options = {}) {
180
199
  resolved.set(name, target);
181
200
  }
182
201
  }
183
- const usableIntrinsics = intrinsics ? Object.entries(INTRINSICS).filter(([, i]) => {
202
+ const usableIntrinsics = intrinsics ? Object.entries({ ...INTRINSICS, ...TAG_INTRINSICS }).filter(([, i]) => {
184
203
  const pkg = packageOf(i.module);
185
204
  return !available || !pkg || available.has(pkg);
186
205
  }) : [];
@@ -1,11 +1,11 @@
1
- /*! @fluixi/compiler v1.0.0-alpha.92 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/compiler v1.0.0-alpha.94 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
  import {
3
3
  MagicString
4
- } from "./chunk-DWNWN5RH.mjs";
4
+ } from "./chunk-E2RWTIYE.mjs";
5
5
  import {
6
6
  serverFnId
7
- } from "./chunk-QZ4CJPYP.mjs";
8
- import "./chunk-VOUI6XPV.mjs";
7
+ } from "./chunk-DP2QDWWH.mjs";
8
+ import "./chunk-HIZU7WI2.mjs";
9
9
 
10
10
  // src/transform/server-fns.ts
11
11
  import { parse } from "@babel/parser";
@@ -1,8 +1,8 @@
1
- /*! @fluixi/compiler v1.0.0-alpha.92 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/compiler v1.0.0-alpha.94 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
  import {
3
3
  serverFnId
4
- } from "./chunk-QZ4CJPYP.mjs";
5
- import "./chunk-VOUI6XPV.mjs";
4
+ } from "./chunk-DP2QDWWH.mjs";
5
+ import "./chunk-HIZU7WI2.mjs";
6
6
 
7
7
  // src/frontend/babel/server-functions.ts
8
8
  import { transformSync } from "@babel/core";