@kernlang/react 3.1.6 → 3.1.8
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/dist/artifact-utils.d.ts +1 -1
- package/dist/artifact-utils.js +6 -8
- package/dist/artifact-utils.js.map +1 -1
- package/dist/codegen-react.js +35 -17
- package/dist/codegen-react.js.map +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/nextjs-assembler.d.ts +33 -0
- package/dist/nextjs-assembler.js +233 -0
- package/dist/nextjs-assembler.js.map +1 -0
- package/dist/nextjs-imports.d.ts +9 -0
- package/dist/nextjs-imports.js +61 -0
- package/dist/nextjs-imports.js.map +1 -0
- package/dist/nextjs-renderers.d.ts +4 -0
- package/dist/nextjs-renderers.js +628 -0
- package/dist/nextjs-renderers.js.map +1 -0
- package/dist/nextjs-style.d.ts +8 -0
- package/dist/nextjs-style.js +135 -0
- package/dist/nextjs-style.js.map +1 -0
- package/dist/nextjs-types.d.ts +39 -0
- package/dist/nextjs-types.js +2 -0
- package/dist/nextjs-types.js.map +1 -0
- package/dist/structure.d.ts +1 -1
- package/dist/structure.js +56 -22
- package/dist/structure.js.map +1 -1
- package/dist/transpiler-nextjs.d.ts +4 -7
- package/dist/transpiler-nextjs.js +20 -1173
- package/dist/transpiler-nextjs.js.map +1 -1
- package/dist/transpiler-tailwind.d.ts +1 -1
- package/dist/transpiler-tailwind.js +83 -51
- package/dist/transpiler-tailwind.js.map +1 -1
- package/dist/transpiler-web.d.ts +1 -1
- package/dist/transpiler-web.js +33 -19
- package/dist/transpiler-web.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transpiler-nextjs.js","sourceRoot":"","sources":["../src/transpiler-nextjs.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"transpiler-nextjs.js","sourceRoot":"","sources":["../src/transpiler-nextjs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { IRNode,
|
|
1
|
+
import type { IRNode, ResolvedKernConfig, TranspileResult } from '@kernlang/core';
|
|
2
2
|
export declare function transpileTailwind(root: IRNode, config?: ResolvedKernConfig): TranspileResult;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { planStructure } from './structure.js';
|
|
1
|
+
import { accountNode, applyTailwindTokenRules, buildDiagnostics, buildTailwindProfile, camelKey, colorToTw, countTokens, escapeJsString, escapeJsxAttr, escapeJsxText, getProps, getPseudoStyles, getStyles, serializeIR, stylesToTailwind, } from '@kernlang/core';
|
|
3
2
|
import { buildStructuredArtifacts } from './artifact-utils.js';
|
|
3
|
+
import { planStructure } from './structure.js';
|
|
4
4
|
/** Wrap text with t() for i18n, or emit raw string when i18n is disabled */
|
|
5
5
|
function tText(ctx, key, value) {
|
|
6
6
|
return ctx.i18nEnabled ? `{t('${escapeJsString(key)}', '${escapeJsString(value)}')}` : escapeJsxText(value);
|
|
@@ -19,7 +19,10 @@ function twClasses(node, ctx, extra = '') {
|
|
|
19
19
|
if (ctx.twProfile)
|
|
20
20
|
expanded = applyTailwindTokenRules(expanded, ctx.twProfile);
|
|
21
21
|
if (expanded) {
|
|
22
|
-
pseudoClasses.push(expanded
|
|
22
|
+
pseudoClasses.push(expanded
|
|
23
|
+
.split(' ')
|
|
24
|
+
.map((c) => `${twState}:${c}`)
|
|
25
|
+
.join(' '));
|
|
23
26
|
}
|
|
24
27
|
}
|
|
25
28
|
const parts = [tw, ...pseudoClasses, extra].filter(Boolean);
|
|
@@ -40,7 +43,7 @@ function renderNode(node, ctx, indent) {
|
|
|
40
43
|
ctx.logicBlocks.push(String(p.code));
|
|
41
44
|
}
|
|
42
45
|
else if (node.children) {
|
|
43
|
-
const handlerChild = node.children.find(c => c.type === 'handler');
|
|
46
|
+
const handlerChild = node.children.find((c) => c.type === 'handler');
|
|
44
47
|
if (handlerChild?.props?.code)
|
|
45
48
|
ctx.logicBlocks.push(String(handlerChild.props.code));
|
|
46
49
|
}
|
|
@@ -131,12 +134,12 @@ function renderNode(node, ctx, indent) {
|
|
|
131
134
|
function renderChildren(node, ctx, indent) {
|
|
132
135
|
if (node.children) {
|
|
133
136
|
for (const child of node.children) {
|
|
134
|
-
renderNode(child, ctx, indent
|
|
137
|
+
renderNode(child, ctx, `${indent} `);
|
|
135
138
|
}
|
|
136
139
|
}
|
|
137
140
|
}
|
|
138
141
|
function renderScreen(node, ctx, indent) {
|
|
139
|
-
const
|
|
142
|
+
const _p = getProps(node);
|
|
140
143
|
const styles = getStyles(node);
|
|
141
144
|
// Auto-detect dark background and add light text
|
|
142
145
|
const bgColor = styles.backgroundColor || '';
|
|
@@ -147,14 +150,14 @@ function renderScreen(node, ctx, indent) {
|
|
|
147
150
|
ctx.lines.push(`${indent}</div>`);
|
|
148
151
|
}
|
|
149
152
|
function isDarkColor(hex) {
|
|
150
|
-
if (!hex
|
|
153
|
+
if (!hex?.startsWith('#'))
|
|
151
154
|
return false;
|
|
152
155
|
const c = hex.replace('#', '');
|
|
153
156
|
const r = parseInt(c.substring(0, 2), 16);
|
|
154
157
|
const g = parseInt(c.substring(2, 4), 16);
|
|
155
158
|
const b = parseInt(c.substring(4, 6), 16);
|
|
156
159
|
// Relative luminance
|
|
157
|
-
return
|
|
160
|
+
return r * 0.299 + g * 0.587 + b * 0.114 < 128;
|
|
158
161
|
}
|
|
159
162
|
function renderSection(node, ctx, indent) {
|
|
160
163
|
const p = getProps(node);
|
|
@@ -177,7 +180,7 @@ function renderSection(node, ctx, indent) {
|
|
|
177
180
|
}
|
|
178
181
|
ctx.lines.push(`${indent}>`);
|
|
179
182
|
ctx.lines.push(`${indent} <div className="space-y-8">`);
|
|
180
|
-
renderChildren(node, ctx, indent
|
|
183
|
+
renderChildren(node, ctx, `${indent} `);
|
|
181
184
|
ctx.lines.push(`${indent} </div>`);
|
|
182
185
|
ctx.lines.push(`${indent}</SettingsSection>`);
|
|
183
186
|
return;
|
|
@@ -251,7 +254,19 @@ function renderText(node, ctx, indent) {
|
|
|
251
254
|
const format = p.format;
|
|
252
255
|
const key = p.key;
|
|
253
256
|
const tag = p.tag || 'span';
|
|
254
|
-
const TEXT_TAG_MAP = {
|
|
257
|
+
const TEXT_TAG_MAP = {
|
|
258
|
+
p: 'p',
|
|
259
|
+
h1: 'h1',
|
|
260
|
+
h2: 'h2',
|
|
261
|
+
h3: 'h3',
|
|
262
|
+
h4: 'h4',
|
|
263
|
+
h5: 'h5',
|
|
264
|
+
h6: 'h6',
|
|
265
|
+
label: 'label',
|
|
266
|
+
span: 'span',
|
|
267
|
+
pre: 'pre',
|
|
268
|
+
code: 'code',
|
|
269
|
+
};
|
|
255
270
|
const el = TEXT_TAG_MAP[tag] || 'span';
|
|
256
271
|
const tw = twClasses(node, ctx);
|
|
257
272
|
if (isExpr(rawValue)) {
|
|
@@ -324,7 +339,7 @@ function renderSlider(node, ctx, indent) {
|
|
|
324
339
|
function renderToggle(node, ctx, indent) {
|
|
325
340
|
const p = getProps(node);
|
|
326
341
|
const bind = p.bind;
|
|
327
|
-
const
|
|
342
|
+
const _accent = p.accent || '#ea580c';
|
|
328
343
|
const setter = bindSetter(bind);
|
|
329
344
|
ctx.hasEventHandlers = true; // onChange requires 'use client'
|
|
330
345
|
ctx.lines.push(`${indent}<label className="relative inline-flex items-center cursor-pointer">`);
|
|
@@ -344,8 +359,8 @@ function renderOnHandler(node, ctx) {
|
|
|
344
359
|
const key = p.key;
|
|
345
360
|
const isAsync = p.async === 'true' || p.async === true;
|
|
346
361
|
// Get handler code from child handler node
|
|
347
|
-
const handlerChild = (node.children || []).find(c => c.type === 'handler');
|
|
348
|
-
const code = handlerChild ?
|
|
362
|
+
const handlerChild = (node.children || []).find((c) => c.type === 'handler');
|
|
363
|
+
const code = handlerChild ? getProps(handlerChild).code || '' : '';
|
|
349
364
|
if (handlerRef && !code) {
|
|
350
365
|
// Just a reference: on event=click handler=handleClick — no code to generate
|
|
351
366
|
return;
|
|
@@ -354,14 +369,22 @@ function renderOnHandler(node, ctx) {
|
|
|
354
369
|
const fnName = handlerRef || `handle${event.charAt(0).toUpperCase() + event.slice(1)}`;
|
|
355
370
|
const asyncKw = isAsync ? 'async ' : '';
|
|
356
371
|
// Event parameter type
|
|
357
|
-
const paramType = event === 'submit'
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
372
|
+
const paramType = event === 'submit'
|
|
373
|
+
? 'e: React.FormEvent'
|
|
374
|
+
: event === 'click'
|
|
375
|
+
? 'e: React.MouseEvent'
|
|
376
|
+
: event === 'change'
|
|
377
|
+
? 'e: React.ChangeEvent'
|
|
378
|
+
: event === 'key' || event === 'keydown' || event === 'keyup'
|
|
379
|
+
? 'e: React.KeyboardEvent'
|
|
380
|
+
: event === 'focus' || event === 'blur'
|
|
381
|
+
? 'e: React.FocusEvent'
|
|
382
|
+
: event === 'drag' || event === 'drop'
|
|
383
|
+
? 'e: React.DragEvent'
|
|
384
|
+
: event === 'scroll'
|
|
385
|
+
? 'e: React.UIEvent'
|
|
386
|
+
: event === 'resize'
|
|
387
|
+
? '' // window event, no param
|
|
365
388
|
: `e: React.SyntheticEvent`;
|
|
366
389
|
const keyGuard = key ? ` if (e.key !== '${key}') return;\n` : '';
|
|
367
390
|
// Use useCallback for event handlers
|
|
@@ -441,7 +464,7 @@ function renderConditional(node, ctx, indent) {
|
|
|
441
464
|
const jsCondition = irConditionToJs(condition);
|
|
442
465
|
ctx.lines.push(`${indent}{${jsCondition} && (`);
|
|
443
466
|
ctx.lines.push(`${indent} <>`);
|
|
444
|
-
renderChildren(node, ctx, indent
|
|
467
|
+
renderChildren(node, ctx, `${indent} `);
|
|
445
468
|
ctx.lines.push(`${indent} </>`);
|
|
446
469
|
ctx.lines.push(`${indent})}`);
|
|
447
470
|
}
|
|
@@ -484,7 +507,7 @@ function renderComponent(node, ctx, indent) {
|
|
|
484
507
|
attrs.push(`${k}={${JSON.stringify(v)}}`);
|
|
485
508
|
}
|
|
486
509
|
}
|
|
487
|
-
const attrStr = attrs.length > 0 ?
|
|
510
|
+
const attrStr = attrs.length > 0 ? ` ${attrs.join(' ')}` : '';
|
|
488
511
|
ctx.lines.push(`${indent}<${ref}${attrStr} />`);
|
|
489
512
|
}
|
|
490
513
|
function renderIcon(node, ctx, indent) {
|
|
@@ -552,7 +575,7 @@ function renderTab(node, ctx, indent) {
|
|
|
552
575
|
const p = getProps(node);
|
|
553
576
|
const label = p.label;
|
|
554
577
|
const icon = p.icon;
|
|
555
|
-
const
|
|
578
|
+
const _activeClass = '';
|
|
556
579
|
ctx.lines.push(`${indent}<button${twClasses(node, ctx, 'flex flex-col items-center gap-1 text-xs')} style={{ color: '#7A7485' }}>`);
|
|
557
580
|
if (icon)
|
|
558
581
|
ctx.lines.push(`${indent} <span dangerouslySetInnerHTML={{ __html: '${iconToSvg(icon).replace(/'/g, "\\'")}' }} />`);
|
|
@@ -570,7 +593,8 @@ function iconToSvg(icon) {
|
|
|
570
593
|
profile: '<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg>',
|
|
571
594
|
heart: '<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"><path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z"/></svg>',
|
|
572
595
|
};
|
|
573
|
-
return svgs[icon] ||
|
|
596
|
+
return (svgs[icon] ||
|
|
597
|
+
'<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2"><circle cx="12" cy="12" r="4"/></svg>');
|
|
574
598
|
}
|
|
575
599
|
function renderProgress(node, ctx, indent) {
|
|
576
600
|
const p = getProps(node);
|
|
@@ -613,16 +637,14 @@ function renderInput(node, ctx, indent) {
|
|
|
613
637
|
attrs.push(`placeholder="${p.placeholder}"`);
|
|
614
638
|
if (p.type)
|
|
615
639
|
attrs.push(`type="${p.type}"`);
|
|
616
|
-
const attrStr = attrs.length > 0 ?
|
|
640
|
+
const attrStr = attrs.length > 0 ? ` ${attrs.join(' ')}` : '';
|
|
617
641
|
ctx.lines.push(`${indent}<input${tw}${attrStr} />`);
|
|
618
642
|
}
|
|
619
643
|
// ── Helpers ─────────────────────────────────────────────────────────────
|
|
620
644
|
function bindExpr(bind, format) {
|
|
621
645
|
// "{v} dB ({presetLabel})" → `${fixStrengthDb.toFixed(1)} dB (${presetLabel})`
|
|
622
|
-
const expr = format
|
|
623
|
-
|
|
624
|
-
.replace(/\{(\w+)\}/g, (_, name) => `\${${name}}`);
|
|
625
|
-
return '`' + expr + '`';
|
|
646
|
+
const expr = format.replace(/\{v\}/g, `\${${bind}.toFixed(1)}`).replace(/\{(\w+)\}/g, (_, name) => `\${${name}}`);
|
|
647
|
+
return `\`${expr}\``;
|
|
626
648
|
}
|
|
627
649
|
function bindVar(bind) {
|
|
628
650
|
// "fixStrengthDb" → fixStrengthDb
|
|
@@ -691,13 +713,13 @@ function _transpileTailwindInner(root, config) {
|
|
|
691
713
|
const reactImports = [];
|
|
692
714
|
if (hasState)
|
|
693
715
|
reactImports.push('useState');
|
|
694
|
-
if (hasLogic && ctx.logicBlocks.some(b => b.includes('useEffect')))
|
|
716
|
+
if (hasLogic && ctx.logicBlocks.some((b) => b.includes('useEffect')))
|
|
695
717
|
reactImports.push('useEffect');
|
|
696
|
-
if (hasLogic && ctx.logicBlocks.some(b => b.includes('useCallback')))
|
|
718
|
+
if (hasLogic && ctx.logicBlocks.some((b) => b.includes('useCallback')))
|
|
697
719
|
reactImports.push('useCallback');
|
|
698
|
-
if (hasLogic && ctx.logicBlocks.some(b => b.includes('useMemo')))
|
|
720
|
+
if (hasLogic && ctx.logicBlocks.some((b) => b.includes('useMemo')))
|
|
699
721
|
reactImports.push('useMemo');
|
|
700
|
-
if (hasLogic && ctx.logicBlocks.some(b => b.includes('useRef')))
|
|
722
|
+
if (hasLogic && ctx.logicBlocks.some((b) => b.includes('useRef')))
|
|
701
723
|
reactImports.push('useRef');
|
|
702
724
|
if (reactImports.length > 0) {
|
|
703
725
|
code.push(`import React, { ${reactImports.join(', ')} } from 'react';`);
|
|
@@ -709,8 +731,8 @@ function _transpileTailwindInner(root, config) {
|
|
|
709
731
|
code.push(`import { ${i18nHook} } from '${i18nImport}';`);
|
|
710
732
|
}
|
|
711
733
|
if (ctx.componentImports.size > 0) {
|
|
712
|
-
const uiImports = [...ctx.componentImports].filter(c => ['Icon', 'Button'].includes(c));
|
|
713
|
-
const featureImports = [...ctx.componentImports].filter(c => !['Icon', 'Button'].includes(c));
|
|
734
|
+
const uiImports = [...ctx.componentImports].filter((c) => ['Icon', 'Button'].includes(c));
|
|
735
|
+
const featureImports = [...ctx.componentImports].filter((c) => !['Icon', 'Button'].includes(c));
|
|
714
736
|
if (uiImports.length > 0) {
|
|
715
737
|
code.push(`import { ${uiImports.join(', ')} } from '${uiLibrary}';`);
|
|
716
738
|
}
|
|
@@ -726,9 +748,15 @@ function _transpileTailwindInner(root, config) {
|
|
|
726
748
|
// Generate useState declarations
|
|
727
749
|
for (const s of ctx.stateDecls) {
|
|
728
750
|
const setter = `set${s.name.charAt(0).toUpperCase() + s.name.slice(1)}`;
|
|
729
|
-
const init = s.initial === 'true'
|
|
751
|
+
const init = s.initial === 'true'
|
|
752
|
+
? 'true'
|
|
753
|
+
: s.initial === 'false'
|
|
754
|
+
? 'false'
|
|
755
|
+
: Number.isNaN(Number(s.initial))
|
|
756
|
+
? `'${s.initial}'`
|
|
757
|
+
: s.initial;
|
|
730
758
|
// Check if initial is an expression
|
|
731
|
-
const stateNode = root.children?.find(c => c.type === 'state' && c.props?.name === s.name);
|
|
759
|
+
const stateNode = root.children?.find((c) => c.type === 'state' && c.props?.name === s.name);
|
|
732
760
|
const initProp = stateNode?.props?.initial;
|
|
733
761
|
const isExpr = typeof initProp === 'object' && initProp !== null && '__expr' in initProp;
|
|
734
762
|
const initVal = isExpr ? initProp.code : init;
|
|
@@ -756,7 +784,7 @@ function _transpileTailwindInner(root, config) {
|
|
|
756
784
|
const CONSUMED = new Set(['state', 'logic', 'on', 'theme', 'handler']);
|
|
757
785
|
for (const child of root.children || []) {
|
|
758
786
|
if (CONSUMED.has(child.type))
|
|
759
|
-
accountNode(accounted, child, 'consumed', child.type
|
|
787
|
+
accountNode(accounted, child, 'consumed', `${child.type} pre-pass`, true);
|
|
760
788
|
}
|
|
761
789
|
return {
|
|
762
790
|
code: output,
|
|
@@ -786,9 +814,7 @@ function _renderTailwindFile(file, config) {
|
|
|
786
814
|
};
|
|
787
815
|
const rootNode = file.rootNode;
|
|
788
816
|
renderNode(rootNode, ctx, ' ');
|
|
789
|
-
const name = file.componentName
|
|
790
|
-
|| rootNode.props?.name
|
|
791
|
-
|| 'Component';
|
|
817
|
+
const name = file.componentName || rootNode.props?.name || 'Component';
|
|
792
818
|
const hasState = ctx.stateDecls.length > 0;
|
|
793
819
|
const hasLogic = ctx.logicBlocks.length > 0;
|
|
794
820
|
const code = [];
|
|
@@ -802,13 +828,13 @@ function _renderTailwindFile(file, config) {
|
|
|
802
828
|
const reactImports = [];
|
|
803
829
|
if (hasState)
|
|
804
830
|
reactImports.push('useState');
|
|
805
|
-
if (hasLogic && ctx.logicBlocks.some(b => b.includes('useEffect')))
|
|
831
|
+
if (hasLogic && ctx.logicBlocks.some((b) => b.includes('useEffect')))
|
|
806
832
|
reactImports.push('useEffect');
|
|
807
|
-
if (hasLogic && ctx.logicBlocks.some(b => b.includes('useCallback')))
|
|
833
|
+
if (hasLogic && ctx.logicBlocks.some((b) => b.includes('useCallback')))
|
|
808
834
|
reactImports.push('useCallback');
|
|
809
|
-
if (hasLogic && ctx.logicBlocks.some(b => b.includes('useMemo')))
|
|
835
|
+
if (hasLogic && ctx.logicBlocks.some((b) => b.includes('useMemo')))
|
|
810
836
|
reactImports.push('useMemo');
|
|
811
|
-
if (hasLogic && ctx.logicBlocks.some(b => b.includes('useRef')))
|
|
837
|
+
if (hasLogic && ctx.logicBlocks.some((b) => b.includes('useRef')))
|
|
812
838
|
reactImports.push('useRef');
|
|
813
839
|
if (reactImports.length > 0) {
|
|
814
840
|
code.push(`import React, { ${reactImports.join(', ')} } from 'react';`);
|
|
@@ -820,8 +846,8 @@ function _renderTailwindFile(file, config) {
|
|
|
820
846
|
code.push(`import { ${i18nHook} } from '${i18nImport}';`);
|
|
821
847
|
}
|
|
822
848
|
if (ctx.componentImports.size > 0) {
|
|
823
|
-
const uiImports = [...ctx.componentImports].filter(c => ['Icon', 'Button'].includes(c));
|
|
824
|
-
const featureImports = [...ctx.componentImports].filter(c => !['Icon', 'Button'].includes(c));
|
|
849
|
+
const uiImports = [...ctx.componentImports].filter((c) => ['Icon', 'Button'].includes(c));
|
|
850
|
+
const featureImports = [...ctx.componentImports].filter((c) => !['Icon', 'Button'].includes(c));
|
|
825
851
|
if (uiImports.length > 0) {
|
|
826
852
|
code.push(`import { ${uiImports.join(', ')} } from '${uiLibrary}';`);
|
|
827
853
|
}
|
|
@@ -842,9 +868,15 @@ function _renderTailwindFile(file, config) {
|
|
|
842
868
|
// State declarations (only if not extracted to hooks)
|
|
843
869
|
for (const s of ctx.stateDecls) {
|
|
844
870
|
const setter = `set${s.name.charAt(0).toUpperCase() + s.name.slice(1)}`;
|
|
845
|
-
const init = s.initial === 'true'
|
|
871
|
+
const init = s.initial === 'true'
|
|
872
|
+
? 'true'
|
|
873
|
+
: s.initial === 'false'
|
|
874
|
+
? 'false'
|
|
875
|
+
: Number.isNaN(Number(s.initial))
|
|
876
|
+
? `'${s.initial}'`
|
|
877
|
+
: s.initial;
|
|
846
878
|
// Check if initial is an expression
|
|
847
|
-
const stateNode = rootNode.children?.find(c => c.type === 'state' && c.props?.name === s.name);
|
|
879
|
+
const stateNode = rootNode.children?.find((c) => c.type === 'state' && c.props?.name === s.name);
|
|
848
880
|
const initProp = stateNode?.props?.initial;
|
|
849
881
|
const isExprInit = typeof initProp === 'object' && initProp !== null && '__expr' in initProp;
|
|
850
882
|
const initVal = isExprInit ? initProp.code : init;
|
|
@@ -874,7 +906,7 @@ function _transpileTailwindStructured(root, config, plan) {
|
|
|
874
906
|
const CONSUMED = new Set(['state', 'logic', 'on', 'theme', 'handler']);
|
|
875
907
|
for (const child of root.children || []) {
|
|
876
908
|
if (CONSUMED.has(child.type))
|
|
877
|
-
accountNode(accounted, child, 'consumed', child.type
|
|
909
|
+
accountNode(accounted, child, 'consumed', `${child.type} pre-pass`, true);
|
|
878
910
|
}
|
|
879
911
|
return {
|
|
880
912
|
code: entryCode,
|