@madenowhere/phaze-compile 0.0.5 → 0.0.6
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.
- package/LICENSE +21 -0
- package/dist/babel-plugin.d.ts +1 -0
- package/dist/babel-plugin.d.ts.map +1 -1
- package/dist/babel-plugin.js +309 -64
- package/dist/babel-plugin.js.map +1 -1
- package/package.json +6 -6
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Rohan Rehman
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/dist/babel-plugin.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ interface Babel {
|
|
|
5
5
|
}
|
|
6
6
|
interface DslState extends PluginPass {
|
|
7
7
|
dslLocals?: Map<string, 'c' | 'watch' | 'phaze' | 's'>;
|
|
8
|
+
needsRuntimeImport?: Set<'effect' | 'listen'>;
|
|
8
9
|
}
|
|
9
10
|
declare const phazeCompile: (babel: Babel) => PluginObj<DslState>;
|
|
10
11
|
export default phazeCompile;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"babel-plugin.d.ts","sourceRoot":"","sources":["../src/babel-plugin.ts"],"names":[],"mappings":"AAkCA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"babel-plugin.d.ts","sourceRoot":"","sources":["../src/babel-plugin.ts"],"names":[],"mappings":"AAkCA,OAAO,KAAK,EAAY,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAClE,OAAO,KAAK,KAAK,CAAC,MAAM,cAAc,CAAA;AAItC,UAAU,KAAK;IACb,KAAK,EAAE,OAAO,CAAC,CAAA;CAChB;AAUD,UAAU,QAAS,SAAQ,UAAU;IACnC,SAAS,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,GAAG,OAAO,GAAG,GAAG,CAAC,CAAA;IACtD,kBAAkB,CAAC,EAAE,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAA;CAC9C;AAID,QAAA,MAAM,YAAY,GAAI,OAAO,KAAK,KAAG,SAAS,CAAC,QAAQ,CAgKtD,CAAA;AAofD,eAAe,YAAY,CAAA"}
|
package/dist/babel-plugin.js
CHANGED
|
@@ -40,11 +40,59 @@ const phazeCompile = (babel) => {
|
|
|
40
40
|
name: '@madenowhere/phaze-compile',
|
|
41
41
|
inherits: jsxSyntax.default ?? jsxSyntax,
|
|
42
42
|
visitor: {
|
|
43
|
-
Program
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
43
|
+
Program: {
|
|
44
|
+
enter(_path, state) {
|
|
45
|
+
// Reset per-file. Babel reuses the plugin object across files
|
|
46
|
+
// when invoked in batch; without this reset, DSL bindings from
|
|
47
|
+
// one file would bleed into the next.
|
|
48
|
+
state.dslLocals = new Map();
|
|
49
|
+
state.needsRuntimeImport = new Set();
|
|
50
|
+
},
|
|
51
|
+
exit(path, state) {
|
|
52
|
+
// Auto-inject `effect` / `listen` imports from the main phaze
|
|
53
|
+
// entry when class: / bind: namespaces in this file referenced
|
|
54
|
+
// them. The compiler treats these like compile-emitted builtins
|
|
55
|
+
// (same as React's JSX automatic transform auto-imports jsx() /
|
|
56
|
+
// Fragment) — users shouldn't have to remember to import a
|
|
57
|
+
// runtime helper they didn't name in their source.
|
|
58
|
+
//
|
|
59
|
+
// Merge with an existing `from '@madenowhere/phaze'` import if
|
|
60
|
+
// one exists; otherwise prepend a fresh one. Skip names already
|
|
61
|
+
// imported.
|
|
62
|
+
const need = state.needsRuntimeImport;
|
|
63
|
+
if (!need || need.size === 0)
|
|
64
|
+
return;
|
|
65
|
+
const PHAZE = '@madenowhere/phaze';
|
|
66
|
+
let existing = null;
|
|
67
|
+
for (const stmt of path.node.body) {
|
|
68
|
+
if (stmt.type === 'ImportDeclaration' && stmt.source.value === PHAZE) {
|
|
69
|
+
existing = stmt;
|
|
70
|
+
break;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
const already = new Set();
|
|
74
|
+
if (existing) {
|
|
75
|
+
for (const spec of existing.specifiers) {
|
|
76
|
+
if (spec.type === 'ImportSpecifier' && spec.imported.type === 'Identifier') {
|
|
77
|
+
already.add(spec.imported.name);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
const toAdd = [];
|
|
82
|
+
for (const name of need) {
|
|
83
|
+
if (!already.has(name))
|
|
84
|
+
toAdd.push(name);
|
|
85
|
+
}
|
|
86
|
+
if (toAdd.length === 0)
|
|
87
|
+
return;
|
|
88
|
+
const newSpecs = toAdd.map((name) => types.importSpecifier(types.identifier(name), types.identifier(name)));
|
|
89
|
+
if (existing) {
|
|
90
|
+
existing.specifiers.push(...newSpecs);
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
path.node.body.unshift(types.importDeclaration(newSpecs, types.stringLiteral(PHAZE)));
|
|
94
|
+
}
|
|
95
|
+
},
|
|
48
96
|
},
|
|
49
97
|
ImportDeclaration(path, state) {
|
|
50
98
|
if (path.node.source.value !== DSL_SOURCE)
|
|
@@ -97,10 +145,10 @@ const phazeCompile = (babel) => {
|
|
|
97
145
|
path.node.arguments[0] = arrow;
|
|
98
146
|
}
|
|
99
147
|
},
|
|
100
|
-
JSXElement(path) {
|
|
148
|
+
JSXElement(path, state) {
|
|
101
149
|
const opening = path.node.openingElement;
|
|
102
150
|
rewriteJSXNamespaces(opening, types);
|
|
103
|
-
const
|
|
151
|
+
const ops = extractPostCreationOps(path, types, state);
|
|
104
152
|
if (isComponentJSX(opening.name)) {
|
|
105
153
|
// Component children — wrap unconditionally so the parent
|
|
106
154
|
// controls construction timing (error scopes, etc.).
|
|
@@ -114,12 +162,32 @@ const phazeCompile = (babel) => {
|
|
|
114
162
|
// without the user writing an explicit thunk.
|
|
115
163
|
wrapHostExpressionChildren(path.node, types);
|
|
116
164
|
}
|
|
117
|
-
if (
|
|
118
|
-
// Wrap the JSX in an IIFE that runs each
|
|
119
|
-
// post-creation. Replacing the JSXElement here is
|
|
120
|
-
// Babel re-enters the new tree, and the inner JSX no
|
|
121
|
-
// carries
|
|
122
|
-
|
|
165
|
+
if (ops.length > 0) {
|
|
166
|
+
// Wrap the JSX in an IIFE that runs each use: / class: / bind:
|
|
167
|
+
// post-creation operation. Replacing the JSXElement here is
|
|
168
|
+
// safe — Babel re-enters the new tree, and the inner JSX no
|
|
169
|
+
// longer carries the stripped attrs so this branch won't fire
|
|
170
|
+
// twice.
|
|
171
|
+
//
|
|
172
|
+
// Position-aware substitution: a bare CallExpression is valid
|
|
173
|
+
// wherever an Expression is, EXCEPT as a JSX child. JSX child
|
|
174
|
+
// positions only accept JSXElement / JSXFragment / JSXText /
|
|
175
|
+
// JSXSpreadChild / JSXExpressionContainer. Emitting
|
|
176
|
+
// `<outer>(__el => …)(<inner/>)</outer>` directly produces
|
|
177
|
+
// invalid JSX that downstream esbuild rejects with "The
|
|
178
|
+
// character '>' is not valid inside a JSX element". When the
|
|
179
|
+
// parent node is a JSXElement or JSXFragment, wrap the IIFE
|
|
180
|
+
// in `{ … }`. Top-level / attribute / non-JSX positions take
|
|
181
|
+
// the bare expression — `path.replaceWith(callExpr)` works as
|
|
182
|
+
// before.
|
|
183
|
+
const iife = buildPostCreationIIFE(path.node, ops, types);
|
|
184
|
+
const parentType = path.parent.type;
|
|
185
|
+
if (parentType === 'JSXElement' || parentType === 'JSXFragment') {
|
|
186
|
+
path.replaceWith(types.jsxExpressionContainer(iife));
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
189
|
+
path.replaceWith(iife);
|
|
190
|
+
}
|
|
123
191
|
}
|
|
124
192
|
},
|
|
125
193
|
JSXFragment(path) {
|
|
@@ -129,14 +197,13 @@ const phazeCompile = (babel) => {
|
|
|
129
197
|
},
|
|
130
198
|
};
|
|
131
199
|
};
|
|
132
|
-
// Rewrite the
|
|
133
|
-
// element.
|
|
134
|
-
//
|
|
135
|
-
//
|
|
136
|
-
//
|
|
137
|
-
//
|
|
138
|
-
//
|
|
139
|
-
// invoke directives once an element exists.)
|
|
200
|
+
// Rewrite the in-place Phaze JSX namespaces (`phaze:`, `on:`) on a
|
|
201
|
+
// single opening element. Pure attribute renames + value rewraps —
|
|
202
|
+
// these don't need post-creation code, so they don't participate in
|
|
203
|
+
// the IIFE wrapping pass.
|
|
204
|
+
//
|
|
205
|
+
// `use:`, `class:`, `bind:` are handled by `extractPostCreationOps`
|
|
206
|
+
// because they each need code that runs *after* the element exists.
|
|
140
207
|
const rewriteJSXNamespaces = (opening, types) => {
|
|
141
208
|
for (const attr of opening.attributes) {
|
|
142
209
|
if (attr.type !== 'JSXAttribute')
|
|
@@ -171,77 +238,227 @@ const rewriteJSXNamespaces = (opening, types) => {
|
|
|
171
238
|
const camel = 'on' + local.charAt(0).toUpperCase() + local.slice(1);
|
|
172
239
|
attr.name = types.jsxIdentifier(camel);
|
|
173
240
|
}
|
|
174
|
-
// `use:` is handled separately by extractUseDirectives — that pass
|
|
175
|
-
// pulls each directive into a post-creation IIFE rather than
|
|
176
|
-
// surviving as a regular attribute.
|
|
177
241
|
}
|
|
178
242
|
};
|
|
179
|
-
//
|
|
180
|
-
//
|
|
181
|
-
//
|
|
182
|
-
//
|
|
183
|
-
//
|
|
184
|
-
|
|
185
|
-
|
|
243
|
+
// Walk a JSX opening element's attributes once, in source order, and:
|
|
244
|
+
// - `use:NAME={value}` → push a `use` op; strip the attribute.
|
|
245
|
+
// - `class:NAME={expr}` → push a `class` op; strip the attribute.
|
|
246
|
+
// - `bind:value={sig}` → push a `bind` op + emit a signal
|
|
247
|
+
// pass-through `value={sig}` attribute.
|
|
248
|
+
// - `bind:checked={sig}` → same, with `checked={sig}`.
|
|
249
|
+
// - everything else → keep verbatim.
|
|
250
|
+
//
|
|
251
|
+
// Source-order in `ops` matches the user's attribute order so the IIFE
|
|
252
|
+
// emits the post-creation calls in the order the source declares them.
|
|
253
|
+
const extractPostCreationOps = (path, types, state) => {
|
|
254
|
+
const opening = path.node.openingElement;
|
|
255
|
+
const ops = [];
|
|
186
256
|
const kept = [];
|
|
257
|
+
// Pre-scan for the element's tag and static `type` attribute. Used
|
|
258
|
+
// for `bind:`-target validation. A non-string-literal `type` value
|
|
259
|
+
// marks the type as dynamic — in that case we emit the basic
|
|
260
|
+
// transform and skip validation (the user knows what they're doing).
|
|
261
|
+
const tagName = opening.name.type === 'JSXIdentifier' ? opening.name.name : null;
|
|
262
|
+
let staticType = null;
|
|
263
|
+
let typeIsDynamic = false;
|
|
264
|
+
for (const attr of opening.attributes) {
|
|
265
|
+
if (attr.type !== 'JSXAttribute')
|
|
266
|
+
continue;
|
|
267
|
+
if (attr.name.type !== 'JSXIdentifier' || attr.name.name !== 'type')
|
|
268
|
+
continue;
|
|
269
|
+
const v = attr.value;
|
|
270
|
+
if (v && v.type === 'StringLiteral')
|
|
271
|
+
staticType = v.value;
|
|
272
|
+
else if (v && v.type === 'JSXExpressionContainer' && v.expression.type === 'StringLiteral') {
|
|
273
|
+
staticType = v.expression.value;
|
|
274
|
+
}
|
|
275
|
+
else {
|
|
276
|
+
typeIsDynamic = true;
|
|
277
|
+
}
|
|
278
|
+
}
|
|
187
279
|
for (const attr of opening.attributes) {
|
|
188
280
|
if (attr.type !== 'JSXAttribute') {
|
|
189
281
|
kept.push(attr);
|
|
190
282
|
continue;
|
|
191
283
|
}
|
|
192
284
|
const name = attr.name;
|
|
193
|
-
if (name.type !== 'JSXNamespacedName'
|
|
285
|
+
if (name.type !== 'JSXNamespacedName') {
|
|
194
286
|
kept.push(attr);
|
|
195
287
|
continue;
|
|
196
288
|
}
|
|
289
|
+
const ns = name.namespace.name;
|
|
197
290
|
const local = name.name.name;
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
291
|
+
if (ns === 'use') {
|
|
292
|
+
const val = attr.value;
|
|
293
|
+
let valueThunk;
|
|
294
|
+
if (val && val.type === 'JSXExpressionContainer') {
|
|
295
|
+
const expr = val.expression;
|
|
296
|
+
if (expr.type === 'JSXEmptyExpression') {
|
|
297
|
+
valueThunk = types.arrowFunctionExpression([], types.booleanLiteral(true));
|
|
298
|
+
}
|
|
299
|
+
else if (expr.type === 'ArrowFunctionExpression' ||
|
|
300
|
+
expr.type === 'FunctionExpression') {
|
|
301
|
+
valueThunk = expr;
|
|
302
|
+
}
|
|
303
|
+
else {
|
|
304
|
+
valueThunk = types.arrowFunctionExpression([], expr);
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
else {
|
|
203
308
|
valueThunk = types.arrowFunctionExpression([], types.booleanLiteral(true));
|
|
204
309
|
}
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
310
|
+
ops.push({ kind: 'use', name: local, valueThunk });
|
|
311
|
+
continue;
|
|
312
|
+
}
|
|
313
|
+
if (ns === 'class') {
|
|
314
|
+
// class:NAME={expr} → toggle class NAME based on truthiness of expr.
|
|
315
|
+
// Bare `class:NAME` and `class:NAME="…"` (string-literal value)
|
|
316
|
+
// both mean "always on" — JSX semantics for valueless attrs +
|
|
317
|
+
// the spec's explicit treatment of string-literal values.
|
|
318
|
+
const val = attr.value;
|
|
319
|
+
let valueExpr;
|
|
320
|
+
if (!val) {
|
|
321
|
+
valueExpr = types.booleanLiteral(true);
|
|
322
|
+
}
|
|
323
|
+
else if (val.type === 'StringLiteral') {
|
|
324
|
+
valueExpr = types.booleanLiteral(true);
|
|
325
|
+
}
|
|
326
|
+
else if (val.type === 'JSXExpressionContainer') {
|
|
327
|
+
const expr = val.expression;
|
|
328
|
+
valueExpr = expr.type === 'JSXEmptyExpression'
|
|
329
|
+
? types.booleanLiteral(true)
|
|
330
|
+
: expr;
|
|
209
331
|
}
|
|
210
332
|
else {
|
|
211
|
-
|
|
333
|
+
valueExpr = types.booleanLiteral(true);
|
|
212
334
|
}
|
|
335
|
+
ops.push({ kind: 'class', className: local, valueExpr });
|
|
336
|
+
state.needsRuntimeImport.add('effect');
|
|
337
|
+
continue;
|
|
213
338
|
}
|
|
214
|
-
|
|
215
|
-
//
|
|
216
|
-
|
|
339
|
+
if (ns === 'bind') {
|
|
340
|
+
// Minimal-scope two-way binding: bind:value (text-like inputs,
|
|
341
|
+
// textarea) and bind:checked (checkboxes). Anything else is a
|
|
342
|
+
// compile error pointing at the manual form.
|
|
343
|
+
if (local !== 'value' && local !== 'checked') {
|
|
344
|
+
throw path.buildCodeFrameError(`bind:${local} is not supported. Phaze's bind: namespace handles ` +
|
|
345
|
+
`bind:value (text inputs, textarea) and bind:checked (checkboxes) ` +
|
|
346
|
+
`only. Use the manual form for other cases: ` +
|
|
347
|
+
`value={signal} on:input={(e) => signal.set(e.currentTarget.value)} ` +
|
|
348
|
+
`or similar.`);
|
|
349
|
+
}
|
|
350
|
+
const val = attr.value;
|
|
351
|
+
if (!val ||
|
|
352
|
+
val.type !== 'JSXExpressionContainer' ||
|
|
353
|
+
val.expression.type === 'JSXEmptyExpression') {
|
|
354
|
+
throw path.buildCodeFrameError(`bind:${local} requires a signal as its value (e.g. bind:${local}={mySignal}).`);
|
|
355
|
+
}
|
|
356
|
+
const signalExpr = val.expression;
|
|
357
|
+
if (local === 'value') {
|
|
358
|
+
// Element must be <input> with a text-like / unspecified /
|
|
359
|
+
// dynamic type, or <textarea>.
|
|
360
|
+
if (tagName === 'select') {
|
|
361
|
+
throw path.buildCodeFrameError(`bind:value on <select> is not supported. Use the manual form:\n` +
|
|
362
|
+
` <select value={signal} on:change={(e) => signal.set(e.currentTarget.value)}>`);
|
|
363
|
+
}
|
|
364
|
+
if (tagName !== 'input' && tagName !== 'textarea') {
|
|
365
|
+
throw path.buildCodeFrameError(`bind:value is only supported on <input> (text-like types) and ` +
|
|
366
|
+
`<textarea>. For <${tagName ?? 'unknown'}>, use the manual form: ` +
|
|
367
|
+
`value={signal} on:input={(e) => signal.set(e.currentTarget.value)}.`);
|
|
368
|
+
}
|
|
369
|
+
if (tagName === 'input' && !typeIsDynamic) {
|
|
370
|
+
const TEXT_LIKE = new Set([
|
|
371
|
+
null, '', 'text', 'email', 'password', 'search', 'url', 'tel',
|
|
372
|
+
]);
|
|
373
|
+
if (!TEXT_LIKE.has(staticType)) {
|
|
374
|
+
const hint = staticType === 'number'
|
|
375
|
+
? '+e.currentTarget.value'
|
|
376
|
+
: staticType === 'date'
|
|
377
|
+
? 'new Date(e.currentTarget.value)'
|
|
378
|
+
: 'e.currentTarget.value';
|
|
379
|
+
throw path.buildCodeFrameError(`bind:value on <input type="${staticType}"> is not supported. ` +
|
|
380
|
+
`Use the manual form with explicit coercion:\n` +
|
|
381
|
+
` <input type="${staticType}" value={signal} ` +
|
|
382
|
+
`on:input={(e) => signal.set(${hint})} />`);
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
else {
|
|
387
|
+
// bind:checked: <input type="checkbox"> only (static type).
|
|
388
|
+
// Dynamic type → emit the basic transform; trust the user.
|
|
389
|
+
if (tagName !== 'input') {
|
|
390
|
+
throw path.buildCodeFrameError(`bind:checked is only supported on <input type="checkbox">. ` +
|
|
391
|
+
`For <${tagName ?? 'unknown'}>, use the manual form: ` +
|
|
392
|
+
`checked={signal} on:change={(e) => signal.set(e.currentTarget.checked)}.`);
|
|
393
|
+
}
|
|
394
|
+
if (!typeIsDynamic && staticType !== 'checkbox') {
|
|
395
|
+
throw path.buildCodeFrameError(`bind:checked is only supported on <input type="checkbox"> ` +
|
|
396
|
+
`(got type="${staticType ?? '(none)'}"). Use the manual form: ` +
|
|
397
|
+
`checked={signal} on:change={(e) => signal.set(e.currentTarget.checked)}.`);
|
|
398
|
+
}
|
|
399
|
+
}
|
|
400
|
+
// Emit signal pass-through as a regular attribute. Phaze's JSX
|
|
401
|
+
// runtime detects callable attr values (signals are callable) and
|
|
402
|
+
// sets up a reactive binding — same fast path as `value={signal}`
|
|
403
|
+
// written by hand. Placed back in kept[] in source-order position.
|
|
404
|
+
kept.push(types.jsxAttribute(types.jsxIdentifier(local), types.jsxExpressionContainer(signalExpr)));
|
|
405
|
+
const event = local === 'checked' ? 'change' : 'input';
|
|
406
|
+
ops.push({ kind: 'bind', event, dotProp: local, signalExpr });
|
|
407
|
+
state.needsRuntimeImport.add('listen');
|
|
408
|
+
continue;
|
|
217
409
|
}
|
|
218
|
-
|
|
410
|
+
// Unrecognized namespace (e.g. SVG xlink:href) — leave alone.
|
|
411
|
+
kept.push(attr);
|
|
219
412
|
}
|
|
220
413
|
opening.attributes = kept;
|
|
221
|
-
return
|
|
414
|
+
return ops;
|
|
222
415
|
};
|
|
223
|
-
// Build the IIFE that wraps a JSX element + applies its
|
|
224
|
-
// after the element exists.
|
|
225
|
-
//
|
|
226
|
-
//
|
|
227
|
-
// so the element value flowing into the IIFE is always a real Element.
|
|
416
|
+
// Build the IIFE that wraps a JSX element + applies its post-creation
|
|
417
|
+
// operations after the element exists. Each op emits one expression in
|
|
418
|
+
// a comma-sequence; the final expression is `__el` so the IIFE returns
|
|
419
|
+
// the element unchanged.
|
|
228
420
|
//
|
|
229
|
-
// Output shape (single directive):
|
|
421
|
+
// Output shape (single use: directive):
|
|
230
422
|
// ((__el) => (autofocus(__el, () => true), __el))(<input />)
|
|
231
423
|
//
|
|
232
|
-
//
|
|
233
|
-
//
|
|
234
|
-
//
|
|
235
|
-
//
|
|
236
|
-
//
|
|
237
|
-
|
|
424
|
+
// Output shape (mixed use: + class: + bind:):
|
|
425
|
+
// ((__el) => (
|
|
426
|
+
// autofocus(__el, () => true),
|
|
427
|
+
// effect(() => __el.classList.toggle('invalid', !valid())),
|
|
428
|
+
// listen(__el, 'input', (e) => text.set(e.currentTarget.value)),
|
|
429
|
+
// __el
|
|
430
|
+
// ))(<input value={text} />)
|
|
431
|
+
const buildPostCreationIIFE = (jsx, ops, types) => {
|
|
238
432
|
const elId = types.identifier('__el');
|
|
239
|
-
|
|
240
|
-
|
|
433
|
+
const exprs = ops.map((op) => {
|
|
434
|
+
if (op.kind === 'use') {
|
|
435
|
+
return types.callExpression(types.identifier(op.name), [elId, op.valueThunk]);
|
|
436
|
+
}
|
|
437
|
+
if (op.kind === 'class') {
|
|
438
|
+
// effect(() => __el.classList.toggle('NAME', !!valueExpr))
|
|
439
|
+
// Skip the `!!` coercion when valueExpr is already a BooleanLiteral
|
|
440
|
+
// — `!!true` and `!!false` are pointless in emitted code.
|
|
441
|
+
const coerced = op.valueExpr.type === 'BooleanLiteral'
|
|
442
|
+
? op.valueExpr
|
|
443
|
+
: types.unaryExpression('!', types.unaryExpression('!', op.valueExpr));
|
|
444
|
+
const toggle = types.callExpression(types.memberExpression(types.memberExpression(elId, types.identifier('classList')), types.identifier('toggle')), [types.stringLiteral(op.className), coerced]);
|
|
445
|
+
const arrow = types.arrowFunctionExpression([], toggle);
|
|
446
|
+
return types.callExpression(types.identifier('effect'), [arrow]);
|
|
447
|
+
}
|
|
448
|
+
// op.kind === 'bind'
|
|
449
|
+
// listen(__el, 'EVENT', (e) => signal.set(e.currentTarget.PROP))
|
|
450
|
+
const eParam = types.identifier('e');
|
|
451
|
+
const access = types.memberExpression(types.memberExpression(eParam, types.identifier('currentTarget')), types.identifier(op.dotProp));
|
|
452
|
+
const setCall = types.callExpression(types.memberExpression(op.signalExpr, types.identifier('set')), [access]);
|
|
453
|
+
const handler = types.arrowFunctionExpression([eParam], setCall);
|
|
454
|
+
return types.callExpression(types.identifier('listen'), [
|
|
455
|
+
elId,
|
|
456
|
+
types.stringLiteral(op.event),
|
|
457
|
+
handler,
|
|
458
|
+
]);
|
|
459
|
+
});
|
|
241
460
|
exprs.push(elId);
|
|
242
|
-
const body = exprs.length === 1
|
|
243
|
-
? exprs[0] // unreachable — exprs always has >=2 entries (calls + __el) but TS narrowing
|
|
244
|
-
: types.sequenceExpression(exprs);
|
|
461
|
+
const body = exprs.length === 1 ? exprs[0] : types.sequenceExpression(exprs);
|
|
245
462
|
const arrow = types.arrowFunctionExpression([elId], body);
|
|
246
463
|
return types.callExpression(arrow, [jsx]);
|
|
247
464
|
};
|
|
@@ -357,8 +574,36 @@ const shouldWrapExpression = (expr) => {
|
|
|
357
574
|
return true;
|
|
358
575
|
if (expr.type === 'JSXElement' || expr.type === 'JSXFragment')
|
|
359
576
|
return true;
|
|
577
|
+
// Our own use:/class:/bind: post-creation IIFE — `(__el => (…))(jsx)`
|
|
578
|
+
// — is a CallExpression containing JSX as its call argument. The IIFE
|
|
579
|
+
// returns a Node eagerly when invoked, so the value flowing into the
|
|
580
|
+
// outer JSX child position is already a constructed Node. Wrapping it
|
|
581
|
+
// in `() =>` would route it through appendDynamicChild's untrack-
|
|
582
|
+
// then-effect path, which calls the thunk twice. Both calls would
|
|
583
|
+
// re-evaluate the inner JSX AND re-run the directives (parallax,
|
|
584
|
+
// warp, etc.), orphaning one mount with active bindings and leaving
|
|
585
|
+
// the visible element competing with the orphan's scroll/spring
|
|
586
|
+
// subscriptions — observable as inverted parallax direction, double
|
|
587
|
+
// listeners, and elements appearing where they shouldn't.
|
|
588
|
+
//
|
|
589
|
+
// The check is signature-specific: callee is an ArrowFunctionExpression
|
|
590
|
+
// taking exactly `__el` as its parameter. That matches every IIFE
|
|
591
|
+
// emitted by buildPostCreationIIFE and nothing user-written.
|
|
592
|
+
if (isUseDirectiveIIFE(expr))
|
|
593
|
+
return false;
|
|
360
594
|
return containsJSX(expr);
|
|
361
595
|
};
|
|
596
|
+
const isUseDirectiveIIFE = (expr) => {
|
|
597
|
+
if (expr.type !== 'CallExpression')
|
|
598
|
+
return false;
|
|
599
|
+
const callee = expr.callee;
|
|
600
|
+
if (callee.type !== 'ArrowFunctionExpression')
|
|
601
|
+
return false;
|
|
602
|
+
if (callee.params.length !== 1)
|
|
603
|
+
return false;
|
|
604
|
+
const p = callee.params[0];
|
|
605
|
+
return p?.type === 'Identifier' && p.name === '__el';
|
|
606
|
+
};
|
|
362
607
|
const containsJSX = (node) => {
|
|
363
608
|
if (!node || typeof node !== 'object')
|
|
364
609
|
return false;
|
package/dist/babel-plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"babel-plugin.js","sourceRoot":"","sources":["../src/babel-plugin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"babel-plugin.js","sourceRoot":"","sources":["../src/babel-plugin.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@madenowhere/phaze-compile",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.6",
|
|
4
4
|
"description": "Compiler for Phaze JSX — hoists component children to thunks so user code matches React/Preact JSX shape",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -35,10 +35,6 @@
|
|
|
35
35
|
"dist",
|
|
36
36
|
"README.md"
|
|
37
37
|
],
|
|
38
|
-
"scripts": {
|
|
39
|
-
"build": "tsc -p tsconfig.json",
|
|
40
|
-
"dev": "tsc -p tsconfig.json --watch"
|
|
41
|
-
},
|
|
42
38
|
"engines": {
|
|
43
39
|
"node": ">=25"
|
|
44
40
|
},
|
|
@@ -50,5 +46,9 @@
|
|
|
50
46
|
"@babel/preset-typescript": "^7.26.0",
|
|
51
47
|
"@babel/types": "^7.26.0",
|
|
52
48
|
"@types/babel__core": "^7.20.5"
|
|
49
|
+
},
|
|
50
|
+
"scripts": {
|
|
51
|
+
"build": "tsc -p tsconfig.json",
|
|
52
|
+
"dev": "tsc -p tsconfig.json --watch"
|
|
53
53
|
}
|
|
54
|
-
}
|
|
54
|
+
}
|