@frontiers-labs/argon 0.4.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.
- package/LICENSE +21 -0
- package/README.md +26 -0
- package/dist/annotations.d.ts +23 -0
- package/dist/annotations.d.ts.map +1 -0
- package/dist/annotations.js +23 -0
- package/dist/annotations.js.map +1 -0
- package/dist/codegen/client.d.ts +14 -0
- package/dist/codegen/client.d.ts.map +1 -0
- package/dist/codegen/client.js +964 -0
- package/dist/codegen/client.js.map +1 -0
- package/dist/codegen/dts.d.ts +3 -0
- package/dist/codegen/dts.d.ts.map +1 -0
- package/dist/codegen/dts.js +82 -0
- package/dist/codegen/dts.js.map +1 -0
- package/dist/codegen/js.d.ts +3 -0
- package/dist/codegen/js.d.ts.map +1 -0
- package/dist/codegen/js.js +278 -0
- package/dist/codegen/js.js.map +1 -0
- package/dist/codegen/rust.d.ts +6 -0
- package/dist/codegen/rust.d.ts.map +1 -0
- package/dist/codegen/rust.js +1076 -0
- package/dist/codegen/rust.js.map +1 -0
- package/dist/component.d.ts +35 -0
- package/dist/component.d.ts.map +1 -0
- package/dist/component.js +120 -0
- package/dist/component.js.map +1 -0
- package/dist/diagnostics.d.ts +20 -0
- package/dist/diagnostics.d.ts.map +1 -0
- package/dist/diagnostics.js +40 -0
- package/dist/diagnostics.js.map +1 -0
- package/dist/docs.d.ts +3 -0
- package/dist/docs.d.ts.map +1 -0
- package/dist/docs.js +42 -0
- package/dist/docs.js.map +1 -0
- package/dist/error-catalog.d.ts +11 -0
- package/dist/error-catalog.d.ts.map +1 -0
- package/dist/error-catalog.js +92 -0
- package/dist/error-catalog.js.map +1 -0
- package/dist/html-attrs.d.ts +2 -0
- package/dist/html-attrs.d.ts.map +1 -0
- package/dist/html-attrs.js +37 -0
- package/dist/html-attrs.js.map +1 -0
- package/dist/html.d.ts +41 -0
- package/dist/html.d.ts.map +1 -0
- package/dist/html.js +188 -0
- package/dist/html.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +139 -0
- package/dist/index.js.map +1 -0
- package/dist/ir.d.ts +321 -0
- package/dist/ir.d.ts.map +1 -0
- package/dist/ir.js +243 -0
- package/dist/ir.js.map +1 -0
- package/dist/jsx.d.ts +31 -0
- package/dist/jsx.d.ts.map +1 -0
- package/dist/jsx.js +242 -0
- package/dist/jsx.js.map +1 -0
- package/dist/lower.d.ts +6 -0
- package/dist/lower.d.ts.map +1 -0
- package/dist/lower.js +1341 -0
- package/dist/lower.js.map +1 -0
- package/dist/parser.d.ts +3 -0
- package/dist/parser.d.ts.map +1 -0
- package/dist/parser.js +714 -0
- package/dist/parser.js.map +1 -0
- package/dist/ssr-subset.d.ts +29 -0
- package/dist/ssr-subset.d.ts.map +1 -0
- package/dist/ssr-subset.js +119 -0
- package/dist/ssr-subset.js.map +1 -0
- package/dist/template.d.ts +32 -0
- package/dist/template.d.ts.map +1 -0
- package/dist/template.js +90 -0
- package/dist/template.js.map +1 -0
- package/package.json +67 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/codegen/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dts.d.ts","sourceRoot":"","sources":["../../src/codegen/dts.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAe,QAAQ,EAAoB,MAAM,UAAU,CAAC;AAExE,wBAAgB,UAAU,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAqBnD"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
// Declaration backend: ModuleIR → a .d.ts companion for the CSR module.
|
|
2
|
+
//
|
|
3
|
+
// Consumers get typed element classes (constructor props and reactive
|
|
4
|
+
// accessors) plus HTMLElementTagNameMap entries, so document.createElement
|
|
5
|
+
// and querySelector return the right type without hand-written casts.
|
|
6
|
+
export function compileDts(module) {
|
|
7
|
+
const structs = reachableStructs(module);
|
|
8
|
+
const interfaces = structs.map(printStruct);
|
|
9
|
+
const classes = module.components.map(printComponent);
|
|
10
|
+
const tagMap = module.components
|
|
11
|
+
.map(c => ` '${c.tagName}': ${c.className};`)
|
|
12
|
+
.join("\n");
|
|
13
|
+
return [
|
|
14
|
+
"// Generated by Argon compiler — do not edit by hand.",
|
|
15
|
+
"",
|
|
16
|
+
...interfaces,
|
|
17
|
+
...classes,
|
|
18
|
+
`declare global {
|
|
19
|
+
interface HTMLElementTagNameMap {
|
|
20
|
+
${tagMap}
|
|
21
|
+
}
|
|
22
|
+
}`,
|
|
23
|
+
"export {};",
|
|
24
|
+
"",
|
|
25
|
+
].join("\n");
|
|
26
|
+
}
|
|
27
|
+
// Structs reachable from component props, in declaration order.
|
|
28
|
+
function reachableStructs(module) {
|
|
29
|
+
const used = new Set();
|
|
30
|
+
const visit = (type) => {
|
|
31
|
+
if (type.kind === "array" || type.kind === "fixed")
|
|
32
|
+
visit(type.elem);
|
|
33
|
+
else if (type.kind === "tuple")
|
|
34
|
+
for (const e of type.elems)
|
|
35
|
+
visit(e);
|
|
36
|
+
else if (type.kind === "option")
|
|
37
|
+
visit(type.inner);
|
|
38
|
+
else if (type.kind === "struct" && !used.has(type.name)) {
|
|
39
|
+
used.add(type.name);
|
|
40
|
+
for (const field of module.structs.get(type.name)?.fields ?? [])
|
|
41
|
+
visit(field.type);
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
for (const component of module.components) {
|
|
45
|
+
for (const prop of component.props)
|
|
46
|
+
visit(prop.type);
|
|
47
|
+
}
|
|
48
|
+
return [...module.structs.values()].filter(s => used.has(s.name));
|
|
49
|
+
}
|
|
50
|
+
function printStruct(struct) {
|
|
51
|
+
const fields = struct.fields.map(f => f.type.kind === "option"
|
|
52
|
+
? ` ${f.name}?: ${tsType(f.type.inner)};`
|
|
53
|
+
: ` ${f.name}: ${tsType(f.type)};`);
|
|
54
|
+
return `export interface ${struct.name} {\n${fields.join("\n")}\n}\n`;
|
|
55
|
+
}
|
|
56
|
+
function printComponent(component) {
|
|
57
|
+
// Required props must be passed for client-side construction; props with a
|
|
58
|
+
// default (or marked optional) may be omitted.
|
|
59
|
+
const ctorProps = component.props.map(p => {
|
|
60
|
+
const required = p.default === undefined && p.type.kind !== "option";
|
|
61
|
+
return `${p.name}${required ? "" : "?"}: ${tsType(p.type)}`;
|
|
62
|
+
});
|
|
63
|
+
const accessors = component.props.map(p => ` ${p.name}: ${tsType(p.type)};`);
|
|
64
|
+
return `export declare class ${component.className} extends HTMLElement {
|
|
65
|
+
constructor(props?: { ${ctorProps.join("; ")} });
|
|
66
|
+
${accessors.join("\n")}${accessors.length ? "\n" : ""}}\n`;
|
|
67
|
+
}
|
|
68
|
+
function tsType(type) {
|
|
69
|
+
switch (type.kind) {
|
|
70
|
+
case "string": return "string";
|
|
71
|
+
case "number": return "number";
|
|
72
|
+
case "boolean": return "boolean";
|
|
73
|
+
case "array":
|
|
74
|
+
case "fixed":
|
|
75
|
+
return `${tsType(type.elem)}[]`;
|
|
76
|
+
case "tuple": return `[${type.elems.map(tsType).join(", ")}]`;
|
|
77
|
+
case "struct": return type.name;
|
|
78
|
+
case "option": return `${tsType(type.inner)} | undefined`;
|
|
79
|
+
case "unknown": return "unknown";
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=dts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dts.js","sourceRoot":"","sources":["../../src/codegen/dts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js.d.ts","sourceRoot":"","sources":["../../src/codegen/js.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,QAAQ,EAET,MAAM,UAAU,CAAC;AAWlB,wBAAgB,UAAU,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CA4BnD"}
|
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
// ── Public API ─────────────────────────────────────────────────────────────────
|
|
3
|
+
function componentHasCsr(comp) {
|
|
4
|
+
if (comp.renderBodySource)
|
|
5
|
+
return true;
|
|
6
|
+
// Function components: CSR is possible when there is a render template
|
|
7
|
+
if (!comp.hydrateBodySource && comp.renderTemplate.length > 0)
|
|
8
|
+
return true;
|
|
9
|
+
return false;
|
|
10
|
+
}
|
|
11
|
+
export function generateJS(module) {
|
|
12
|
+
const parts = [
|
|
13
|
+
'// Generated by Argon compiler — do not edit by hand.\n',
|
|
14
|
+
];
|
|
15
|
+
// Data constants
|
|
16
|
+
for (const dc of module.dataConsts) {
|
|
17
|
+
parts.push(`const ${dc.name} = ${literalToJS(dc.value)};\n`);
|
|
18
|
+
}
|
|
19
|
+
// Helper functions (compiled from IR)
|
|
20
|
+
for (const fn of module.functions) {
|
|
21
|
+
const paramsJS = fn.params.map(p => p.name).join(', ');
|
|
22
|
+
const bodyJS = stripTypeAnnotations(`function __wrapper__(${fn.params.map(p => `${p.name}: any`).join(', ')}) {\n${fn.bodySource}\n}`);
|
|
23
|
+
// Extract just the body from the transpiled wrapper
|
|
24
|
+
const body = extractFunctionBody(bodyJS);
|
|
25
|
+
parts.push(`function ${fn.name}(${paramsJS}) {\n${body}\n}\n`);
|
|
26
|
+
}
|
|
27
|
+
// JS-only helper functions (type-stripped from raw source)
|
|
28
|
+
for (const fn of module.jsFunctions) {
|
|
29
|
+
parts.push(stripTypeAnnotations(fn.source) + '\n');
|
|
30
|
+
}
|
|
31
|
+
// Custom element class
|
|
32
|
+
parts.push(componentToJS(module.component));
|
|
33
|
+
return parts.join('\n');
|
|
34
|
+
}
|
|
35
|
+
// ── Literal → JS ───────────────────────────────────────────────────────────────
|
|
36
|
+
function literalToJS(lit) {
|
|
37
|
+
switch (lit.kind) {
|
|
38
|
+
case 'string': return JSON.stringify(lit.value);
|
|
39
|
+
case 'number': return String(lit.value);
|
|
40
|
+
case 'boolean': return String(lit.value);
|
|
41
|
+
case 'array': return `[${lit.elements.map(literalToJS).join(', ')}]`;
|
|
42
|
+
case 'object': {
|
|
43
|
+
const entries = lit.properties.map(p => ` ${JSON.stringify(p.key)}: ${literalToJS(p.value)}`);
|
|
44
|
+
return `{\n${entries.join(',\n')}\n}`;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
// ── Type stripping ─────────────────────────────────────────────────────────────
|
|
49
|
+
function stripTypeAnnotations(source) {
|
|
50
|
+
const result = ts.transpileModule(source, {
|
|
51
|
+
compilerOptions: {
|
|
52
|
+
target: ts.ScriptTarget.ESNext,
|
|
53
|
+
module: ts.ModuleKind.ESNext,
|
|
54
|
+
useDefineForClassFields: false,
|
|
55
|
+
},
|
|
56
|
+
});
|
|
57
|
+
return result.outputText;
|
|
58
|
+
}
|
|
59
|
+
function extractFunctionBody(transpiled) {
|
|
60
|
+
const open = transpiled.indexOf('{');
|
|
61
|
+
const close = transpiled.lastIndexOf('}');
|
|
62
|
+
if (open === -1 || close === -1)
|
|
63
|
+
return transpiled;
|
|
64
|
+
return transpiled.slice(open + 1, close).trim();
|
|
65
|
+
}
|
|
66
|
+
function stripMethodTypes(methodSrc) {
|
|
67
|
+
const classWrapped = `class __X__ extends HTMLElement {\n${methodSrc}\n}`;
|
|
68
|
+
const out = stripTypeAnnotations(classWrapped);
|
|
69
|
+
// Remove the class wrapper lines
|
|
70
|
+
const lines = out.split('\n');
|
|
71
|
+
// Drop first line (class __X__...) and last line (closing })
|
|
72
|
+
const inner = lines.slice(1, lines.length - 2);
|
|
73
|
+
return inner.join('\n').trim();
|
|
74
|
+
}
|
|
75
|
+
function stripExprTypes(source) {
|
|
76
|
+
const result = ts.transpileModule(`const __e = ${source}`, {
|
|
77
|
+
compilerOptions: { target: ts.ScriptTarget.ESNext, module: ts.ModuleKind.ESNext },
|
|
78
|
+
});
|
|
79
|
+
const out = result.outputText.trim();
|
|
80
|
+
const prefix = 'const __e = ';
|
|
81
|
+
if (out.startsWith(prefix)) {
|
|
82
|
+
return out.slice(prefix.length).replace(/;$/, '').trim();
|
|
83
|
+
}
|
|
84
|
+
return source;
|
|
85
|
+
}
|
|
86
|
+
function stripBodyTypes(body, paramsSrc) {
|
|
87
|
+
const src = `class __X__ extends HTMLElement {\n __m__(${paramsSrc}) {\n${body}\n }\n}`;
|
|
88
|
+
const out = stripTypeAnnotations(src);
|
|
89
|
+
const methodMatch = out.match(/__m__\([^)]*\)\s*\{([\s\S]*)\s*\}\s*\}\s*$/);
|
|
90
|
+
if (methodMatch)
|
|
91
|
+
return methodMatch[1].trim();
|
|
92
|
+
// Fallback: crude regex strip
|
|
93
|
+
return body
|
|
94
|
+
.replace(/<[A-Z][A-Za-z<>, [\]|&]*>/g, '') // remove generic params
|
|
95
|
+
.replace(/\s*:\s*[A-Z][A-Za-z<>, [\]|&]+/g, '') // remove type annotations
|
|
96
|
+
.replace(/([^!])!/g, '$1'); // remove non-null assertions
|
|
97
|
+
}
|
|
98
|
+
// ── Component → JS class ───────────────────────────────────────────────────────
|
|
99
|
+
function rewritePropsInRenderBody(js, className, props) {
|
|
100
|
+
let out = js;
|
|
101
|
+
for (const prop of props) {
|
|
102
|
+
out = out.replace(new RegExp(`\\bthis\\.${prop.name}\\b`, 'g'), `this.#${prop.name}`);
|
|
103
|
+
}
|
|
104
|
+
// Static styles field accessed as ClassName.styles → ClassName.#styles
|
|
105
|
+
out = out.replace(new RegExp(`\\b${className}\\.styles\\b`, 'g'), `${className}.#styles`);
|
|
106
|
+
return out;
|
|
107
|
+
}
|
|
108
|
+
// ── IR → JS expression codegen ─────────────────────────────────────────────────
|
|
109
|
+
function irExprToJS(expr, className) {
|
|
110
|
+
switch (expr.kind) {
|
|
111
|
+
case 'self_field':
|
|
112
|
+
return `this.#${expr.field}`;
|
|
113
|
+
case 'local_ref':
|
|
114
|
+
return expr.name === '__styles__' ? `${className}.#styles` : expr.name;
|
|
115
|
+
case 'prop_access':
|
|
116
|
+
return `${irExprToJS(expr.object, className)}.${expr.property}`;
|
|
117
|
+
case 'index':
|
|
118
|
+
return `${irExprToJS(expr.object, className)}[${irExprToJS(expr.index, className)}]`;
|
|
119
|
+
case 'call':
|
|
120
|
+
return `${expr.callee}(${expr.args.map(a => irExprToJS(a, className)).join(', ')})`;
|
|
121
|
+
case 'method_call':
|
|
122
|
+
return `${irExprToJS(expr.receiver, className)}.${expr.method}(${expr.args.map(a => irExprToJS(a, className)).join(', ')})`;
|
|
123
|
+
case 'binary':
|
|
124
|
+
return `(${irExprToJS(expr.left, className)} ${expr.op} ${irExprToJS(expr.right, className)})`;
|
|
125
|
+
case 'eq':
|
|
126
|
+
return `(${irExprToJS(expr.left, className)} === ${irExprToJS(expr.right, className)})`;
|
|
127
|
+
case 'ternary':
|
|
128
|
+
return `(${irExprToJS(expr.condition, className)} ? ${irExprToJS(expr.then, className)} : ${irExprToJS(expr.else, className)})`;
|
|
129
|
+
case 'array_literal':
|
|
130
|
+
return `[${expr.elements.map(e => irExprToJS(e, className)).join(', ')}]`;
|
|
131
|
+
case 'object_literal':
|
|
132
|
+
return `{${expr.properties.map(p => `${JSON.stringify(p.key)}: ${irExprToJS(p.value, className)}`).join(', ')}}`;
|
|
133
|
+
case 'spread':
|
|
134
|
+
return `...${irExprToJS(expr.expr, className)}`;
|
|
135
|
+
case 'template_str': {
|
|
136
|
+
const parts = expr.parts.map(p => p.kind === 'static' ? p.text.replace(/`/g, '\\`').replace(/\\/g, '\\\\') : `\${${irExprToJS(p.expr, className)}}`).join('');
|
|
137
|
+
return `\`${parts}\``;
|
|
138
|
+
}
|
|
139
|
+
case 'literal':
|
|
140
|
+
return literalToJS(expr.value);
|
|
141
|
+
case 'as_expr':
|
|
142
|
+
return irExprToJS(expr.expr, className);
|
|
143
|
+
case 'arrow_fn': {
|
|
144
|
+
const params = expr.params.map(p => p.destructured ? `[${p.destructured.join(', ')}]` : p.name).join(', ');
|
|
145
|
+
if (Array.isArray(expr.body)) {
|
|
146
|
+
const stmts = expr.body.map(s => irStmtToJS(s, className)).join(' ');
|
|
147
|
+
return `(${params}) => { ${stmts} }`;
|
|
148
|
+
}
|
|
149
|
+
return `(${params}) => ${irExprToJS(expr.body, className)}`;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
function irStmtToJS(stmt, className) {
|
|
154
|
+
if (stmt.kind === 'const') {
|
|
155
|
+
const lhs = stmt.names.length === 1 ? stmt.names[0] : `[${stmt.names.join(', ')}]`;
|
|
156
|
+
return `const ${lhs} = ${irExprToJS(stmt.init, className)};`;
|
|
157
|
+
}
|
|
158
|
+
if (stmt.kind === 'return')
|
|
159
|
+
return `return ${irExprToJS(stmt.value, className)};`;
|
|
160
|
+
return `${irExprToJS(stmt.expr, className)};`;
|
|
161
|
+
}
|
|
162
|
+
function renderBodyFromIR(bindings, template, className) {
|
|
163
|
+
const lines = [];
|
|
164
|
+
for (const b of bindings) {
|
|
165
|
+
lines.push(` const ${b.name} = ${irExprToJS(b.init, className)};`);
|
|
166
|
+
}
|
|
167
|
+
const templateBody = template.map(node => node.kind === 'static'
|
|
168
|
+
? node.text.replace(/\\/g, '\\\\').replace(/`/g, '\\`')
|
|
169
|
+
: `\${${irExprToJS(node.expr, className)}}`).join('');
|
|
170
|
+
lines.push(` return \`${templateBody}\`;`);
|
|
171
|
+
return lines.join('\n');
|
|
172
|
+
}
|
|
173
|
+
function eventBindingsToHydrate(bindings, props, isFunctionComponent) {
|
|
174
|
+
return bindings.map(b => {
|
|
175
|
+
let handler = stripExprTypes(b.handlerSource);
|
|
176
|
+
// For function components, prop names in handlers are bare identifiers; rewrite to this.#prop.
|
|
177
|
+
if (isFunctionComponent) {
|
|
178
|
+
for (const prop of props) {
|
|
179
|
+
// Negative lookbehind/lookahead for quotes so we don't rewrite string literal contents.
|
|
180
|
+
handler = handler.replace(new RegExp(`(?<!['"\\w])\\b${prop.name}\\b(?!['"\\w])`, 'g'), `this.#${prop.name}`);
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
return ` root.querySelector('[data-e${b.elementId}]').addEventListener('${b.eventName}', ${handler});`;
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
function componentToJS(comp) {
|
|
187
|
+
const { tagName, className, props, styles, renderBodySource, hydrateBodySource, eventBindings, privateMethods, renderBindings, renderTemplate } = comp;
|
|
188
|
+
const isFunctionComponent = !renderBodySource && !hydrateBodySource;
|
|
189
|
+
const hasCsr = componentHasCsr(comp);
|
|
190
|
+
// Static styles — needed so #renderHTML() can embed them
|
|
191
|
+
const stylesField = styles && hasCsr
|
|
192
|
+
? ` static #styles = ${JSON.stringify(styles)};\n`
|
|
193
|
+
: '';
|
|
194
|
+
// Private field declarations
|
|
195
|
+
const propFields = props.map(p => ` #${p.name} = ${literalToJS(p.defaultValue)};`).join('\n');
|
|
196
|
+
const isCSRField = hasCsr ? ` #isCSR = false;` : '';
|
|
197
|
+
const fields = [propFields, isCSRField].filter(Boolean).join('\n');
|
|
198
|
+
// Constructor (CSR path)
|
|
199
|
+
let constructorBlock = '';
|
|
200
|
+
if (hasCsr) {
|
|
201
|
+
const propInits = props.map(p => ` this.#${p.name} = props.${p.name} ?? ${literalToJS(p.defaultValue)};`).join('\n');
|
|
202
|
+
constructorBlock = `
|
|
203
|
+
constructor(props) {
|
|
204
|
+
super();
|
|
205
|
+
if (props !== undefined) {
|
|
206
|
+
this.#isCSR = true;
|
|
207
|
+
${propInits}
|
|
208
|
+
const shadow = this.attachShadow({ mode: 'open' });
|
|
209
|
+
shadow.innerHTML = this.#renderHTML();
|
|
210
|
+
this.#hydrate(shadow);
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
`;
|
|
214
|
+
}
|
|
215
|
+
// connectedCallback: SSR hydration path
|
|
216
|
+
const attrInits = props.map(p => {
|
|
217
|
+
const def = literalToJS(p.defaultValue);
|
|
218
|
+
return ` this.#${p.name} = this.dataset['${p.name}'] || ${def};`;
|
|
219
|
+
}).join('\n');
|
|
220
|
+
const csrGuard = hasCsr ? ` if (this.#isCSR) return;\n` : '';
|
|
221
|
+
// #hydrate: template-derived event bindings first, then manual body
|
|
222
|
+
const hydrateLines = [
|
|
223
|
+
...eventBindingsToHydrate(eventBindings, props, isFunctionComponent),
|
|
224
|
+
...(() => {
|
|
225
|
+
const manual = stripBodyTypes(hydrateBodySource, 'root');
|
|
226
|
+
return manual ? [` ${manual}`] : [];
|
|
227
|
+
})(),
|
|
228
|
+
];
|
|
229
|
+
const hydrateBody = hydrateLines.join('\n');
|
|
230
|
+
// #renderHTML() for CSR
|
|
231
|
+
let renderMethod = '';
|
|
232
|
+
if (hasCsr) {
|
|
233
|
+
let renderBody;
|
|
234
|
+
if (isFunctionComponent) {
|
|
235
|
+
renderBody = renderBodyFromIR(renderBindings, renderTemplate, className);
|
|
236
|
+
}
|
|
237
|
+
else {
|
|
238
|
+
const rawRenderJS = stripBodyTypes(renderBodySource, '');
|
|
239
|
+
const rewritten = rewritePropsInRenderBody(rawRenderJS, className, props);
|
|
240
|
+
// Strip the html tag — plain template literals work identically at runtime
|
|
241
|
+
renderBody = ` ${rewritten.replace(/\bhtml`/g, '`')}`;
|
|
242
|
+
}
|
|
243
|
+
renderMethod = `
|
|
244
|
+
#renderHTML() {
|
|
245
|
+
${renderBody}
|
|
246
|
+
}
|
|
247
|
+
`;
|
|
248
|
+
}
|
|
249
|
+
// Private methods — strip types from each
|
|
250
|
+
const privateMethodsJS = privateMethods.map(m => {
|
|
251
|
+
const stripped = stripMethodTypes(m.source);
|
|
252
|
+
return `\n${stripped}`;
|
|
253
|
+
}).join('\n');
|
|
254
|
+
const connectRender = hasCsr
|
|
255
|
+
? `\n } else {\n const shadow = this.attachShadow({ mode: 'open' });\n shadow.innerHTML = this.#renderHTML();\n this.#hydrate(shadow);\n }`
|
|
256
|
+
: `\n }`;
|
|
257
|
+
return `
|
|
258
|
+
class ${className} extends HTMLElement {
|
|
259
|
+
${stylesField}${fields}
|
|
260
|
+
${constructorBlock}
|
|
261
|
+
connectedCallback() {
|
|
262
|
+
${csrGuard}${attrInits}
|
|
263
|
+
if (this.shadowRoot) {
|
|
264
|
+
this.#hydrate(this.shadowRoot);
|
|
265
|
+
${connectRender}
|
|
266
|
+
this.setAttribute('hydrated', '');
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
#hydrate(root) {
|
|
270
|
+
${hydrateBody}
|
|
271
|
+
}
|
|
272
|
+
${renderMethod}${privateMethodsJS}
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
customElements.define('${tagName}', ${className});
|
|
276
|
+
`;
|
|
277
|
+
}
|
|
278
|
+
//# sourceMappingURL=js.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js.js","sourceRoot":"","sources":["../../src/codegen/js.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rust.d.ts","sourceRoot":"","sources":["../../src/codegen/rust.ts"],"names":[],"mappings":"AAOA,OAAO,EAWL,KAAK,QAAQ,EAKd,MAAM,UAAU,CAAC;AAMlB,MAAM,WAAW,WAAW;IAG1B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,GAAE,WAAgB,GAAG,MAAM,CAG5E"}
|