@frontiers-labs/argon 0.1.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 +36 -0
- package/dist/annotations.d.ts +4 -0
- package/dist/annotations.d.ts.map +1 -0
- package/dist/annotations.js +10 -0
- package/dist/annotations.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 +159 -0
- package/dist/codegen/js.js.map +1 -0
- package/dist/codegen/rust.d.ts +4 -0
- package/dist/codegen/rust.d.ts.map +1 -0
- package/dist/codegen/rust.js +578 -0
- package/dist/codegen/rust.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +106 -0
- package/dist/index.js.map +1 -0
- package/dist/ir.d.ts +194 -0
- package/dist/ir.d.ts.map +1 -0
- package/dist/ir.js +3 -0
- package/dist/ir.js.map +1 -0
- package/dist/parser.d.ts +3 -0
- package/dist/parser.d.ts.map +1 -0
- package/dist/parser.js +524 -0
- package/dist/parser.js.map +1 -0
- package/dist/runtime.d.ts +13 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +49 -0
- package/dist/runtime.js.map +1 -0
- package/package.json +62 -0
package/dist/index.js
ADDED
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { readFileSync, writeFileSync, mkdirSync } from 'node:fs';
|
|
3
|
+
import { join, basename } from 'node:path';
|
|
4
|
+
import { parseModule } from './parser.js';
|
|
5
|
+
import { generateJS } from './codegen/js.js';
|
|
6
|
+
import { generateRust } from './codegen/rust.js';
|
|
7
|
+
import { transform } from 'lightningcss';
|
|
8
|
+
function usage() {
|
|
9
|
+
console.error('Usage: argon compile <input.ts> [--js] [--rust] [--out-dir <dir>] [--minify-css]\n' +
|
|
10
|
+
'\n' +
|
|
11
|
+
'Options:\n' +
|
|
12
|
+
' --js Emit only JavaScript output\n' +
|
|
13
|
+
' --rust Emit only Rust output\n' +
|
|
14
|
+
' --out-dir Directory to write output files (default: .)\n' +
|
|
15
|
+
' --minify-css Minify CSS styles in emitted output\n' +
|
|
16
|
+
'\n' +
|
|
17
|
+
'With neither --js nor --rust, both outputs are emitted.\n' +
|
|
18
|
+
'\n' +
|
|
19
|
+
'Example:\n' +
|
|
20
|
+
' argon compile components/dashboard-widget.ts --out-dir demo/src/components\n');
|
|
21
|
+
process.exit(1);
|
|
22
|
+
}
|
|
23
|
+
let argv = process.argv.slice(2);
|
|
24
|
+
if (argv.length === 0 || argv[0] === '--help')
|
|
25
|
+
usage();
|
|
26
|
+
// Skip optional 'compile' subcommand for forward-compatibility.
|
|
27
|
+
if (argv[0] === 'compile')
|
|
28
|
+
argv = argv.slice(1);
|
|
29
|
+
const inputFile = argv.find(a => !a.startsWith('--'));
|
|
30
|
+
if (!inputFile)
|
|
31
|
+
usage();
|
|
32
|
+
const outDirIdx = argv.indexOf('--out-dir');
|
|
33
|
+
const outDir = outDirIdx !== -1 ? argv[outDirIdx + 1] : '.';
|
|
34
|
+
const emitJS = argv.includes('--js') || (!argv.includes('--js') && !argv.includes('--rust'));
|
|
35
|
+
const emitRust = argv.includes('--rust') || (!argv.includes('--js') && !argv.includes('--rust'));
|
|
36
|
+
const minifyCSS = argv.includes('--minify-css');
|
|
37
|
+
if (!outDir) {
|
|
38
|
+
console.error('--out-dir requires a directory argument');
|
|
39
|
+
process.exit(1);
|
|
40
|
+
}
|
|
41
|
+
// ── Compile ────────────────────────────────────────────────────────────────────
|
|
42
|
+
const source = readFileSync(inputFile, 'utf-8');
|
|
43
|
+
let irModule;
|
|
44
|
+
try {
|
|
45
|
+
irModule = parseModule(source, inputFile);
|
|
46
|
+
}
|
|
47
|
+
catch (e) {
|
|
48
|
+
console.error(`Parse error in ${inputFile}:`);
|
|
49
|
+
console.error(e instanceof Error ? e.message : String(e));
|
|
50
|
+
process.exit(1);
|
|
51
|
+
}
|
|
52
|
+
mkdirSync(outDir, { recursive: true });
|
|
53
|
+
if (minifyCSS) {
|
|
54
|
+
try {
|
|
55
|
+
const { code } = transform({
|
|
56
|
+
filename: 'styles.css',
|
|
57
|
+
code: Buffer.from(irModule.component.styles),
|
|
58
|
+
minify: true,
|
|
59
|
+
});
|
|
60
|
+
irModule.component.styles = code.toString();
|
|
61
|
+
}
|
|
62
|
+
catch (e) {
|
|
63
|
+
console.error('CSS minification error:', e instanceof Error ? e.message : e);
|
|
64
|
+
process.exit(1);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
const baseName = basename(inputFile, '.ts');
|
|
68
|
+
const rustIdent = baseName.replace(/-/g, '_');
|
|
69
|
+
// ── JS output ──────────────────────────────────────────────────────────────────
|
|
70
|
+
if (emitJS) {
|
|
71
|
+
try {
|
|
72
|
+
const js = generateJS(irModule);
|
|
73
|
+
const jsPath = join(outDir, `${baseName}.js`);
|
|
74
|
+
writeFileSync(jsPath, js, 'utf-8');
|
|
75
|
+
console.log(`✓ JS → ${jsPath}`);
|
|
76
|
+
}
|
|
77
|
+
catch (e) {
|
|
78
|
+
console.error('JS codegen error:', e instanceof Error ? e.message : e);
|
|
79
|
+
process.exit(1);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
// ── Rust output ────────────────────────────────────────────────────────────────
|
|
83
|
+
if (emitRust) {
|
|
84
|
+
try {
|
|
85
|
+
const rust = generateRust(irModule);
|
|
86
|
+
const rsPath = join(outDir, `${rustIdent}.rs`);
|
|
87
|
+
writeFileSync(rsPath, rust, 'utf-8');
|
|
88
|
+
console.log(`✓ Rust → ${rsPath}`);
|
|
89
|
+
// Keep mod.rs in sync
|
|
90
|
+
const modPath = join(outDir, 'mod.rs');
|
|
91
|
+
const pubMod = `pub mod ${rustIdent};\n`;
|
|
92
|
+
let modContent = '';
|
|
93
|
+
try {
|
|
94
|
+
modContent = readFileSync(modPath, 'utf-8');
|
|
95
|
+
}
|
|
96
|
+
catch { /* file doesn't exist yet */ }
|
|
97
|
+
if (!modContent.includes(`pub mod ${rustIdent};`)) {
|
|
98
|
+
writeFileSync(modPath, modContent + pubMod, 'utf-8');
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
catch (e) {
|
|
102
|
+
console.error('Rust codegen error:', e instanceof Error ? e.message : e);
|
|
103
|
+
process.exit(1);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/ir.d.ts
ADDED
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
export type IrLiteral = {
|
|
2
|
+
kind: 'string';
|
|
3
|
+
value: string;
|
|
4
|
+
} | {
|
|
5
|
+
kind: 'number';
|
|
6
|
+
value: number;
|
|
7
|
+
} | {
|
|
8
|
+
kind: 'boolean';
|
|
9
|
+
value: boolean;
|
|
10
|
+
} | {
|
|
11
|
+
kind: 'array';
|
|
12
|
+
elements: IrLiteral[];
|
|
13
|
+
} | {
|
|
14
|
+
kind: 'object';
|
|
15
|
+
properties: {
|
|
16
|
+
key: string;
|
|
17
|
+
value: IrLiteral;
|
|
18
|
+
}[];
|
|
19
|
+
};
|
|
20
|
+
export interface IrArrowParam {
|
|
21
|
+
name: string;
|
|
22
|
+
destructured?: string[];
|
|
23
|
+
hasIndex?: boolean;
|
|
24
|
+
}
|
|
25
|
+
export type IrExpr = {
|
|
26
|
+
kind: 'self_field';
|
|
27
|
+
field: string;
|
|
28
|
+
} | {
|
|
29
|
+
kind: 'local_ref';
|
|
30
|
+
name: string;
|
|
31
|
+
} | {
|
|
32
|
+
kind: 'prop_access';
|
|
33
|
+
object: IrExpr;
|
|
34
|
+
property: string;
|
|
35
|
+
} | {
|
|
36
|
+
kind: 'index';
|
|
37
|
+
object: IrExpr;
|
|
38
|
+
index: IrExpr;
|
|
39
|
+
} | {
|
|
40
|
+
kind: 'call';
|
|
41
|
+
callee: string;
|
|
42
|
+
args: IrExpr[];
|
|
43
|
+
} | {
|
|
44
|
+
kind: 'method_call';
|
|
45
|
+
receiver: IrExpr;
|
|
46
|
+
method: string;
|
|
47
|
+
args: IrExpr[];
|
|
48
|
+
} | {
|
|
49
|
+
kind: 'arrow_fn';
|
|
50
|
+
params: IrArrowParam[];
|
|
51
|
+
body: IrExpr | IrStatement[];
|
|
52
|
+
} | {
|
|
53
|
+
kind: 'binary';
|
|
54
|
+
op: string;
|
|
55
|
+
left: IrExpr;
|
|
56
|
+
right: IrExpr;
|
|
57
|
+
} | {
|
|
58
|
+
kind: 'eq';
|
|
59
|
+
left: IrExpr;
|
|
60
|
+
right: IrExpr;
|
|
61
|
+
} | {
|
|
62
|
+
kind: 'ternary';
|
|
63
|
+
condition: IrExpr;
|
|
64
|
+
then: IrExpr;
|
|
65
|
+
else: IrExpr;
|
|
66
|
+
} | {
|
|
67
|
+
kind: 'array_literal';
|
|
68
|
+
elements: IrExpr[];
|
|
69
|
+
} | {
|
|
70
|
+
kind: 'object_literal';
|
|
71
|
+
properties: {
|
|
72
|
+
key: string;
|
|
73
|
+
value: IrExpr;
|
|
74
|
+
}[];
|
|
75
|
+
} | {
|
|
76
|
+
kind: 'spread';
|
|
77
|
+
expr: IrExpr;
|
|
78
|
+
} | {
|
|
79
|
+
kind: 'template_str';
|
|
80
|
+
parts: IrTemplatePart[];
|
|
81
|
+
} | {
|
|
82
|
+
kind: 'literal';
|
|
83
|
+
value: IrLiteral;
|
|
84
|
+
} | {
|
|
85
|
+
kind: 'as_expr';
|
|
86
|
+
expr: IrExpr;
|
|
87
|
+
};
|
|
88
|
+
export type IrTemplatePart = {
|
|
89
|
+
kind: 'static';
|
|
90
|
+
text: string;
|
|
91
|
+
} | {
|
|
92
|
+
kind: 'expr';
|
|
93
|
+
expr: IrExpr;
|
|
94
|
+
};
|
|
95
|
+
export type IrStatement = {
|
|
96
|
+
kind: 'const';
|
|
97
|
+
names: string[];
|
|
98
|
+
init: IrExpr;
|
|
99
|
+
} | {
|
|
100
|
+
kind: 'return';
|
|
101
|
+
value: IrExpr;
|
|
102
|
+
} | {
|
|
103
|
+
kind: 'expr_stmt';
|
|
104
|
+
expr: IrExpr;
|
|
105
|
+
};
|
|
106
|
+
export type IrType = {
|
|
107
|
+
kind: 'string';
|
|
108
|
+
} | {
|
|
109
|
+
kind: 'number';
|
|
110
|
+
} | {
|
|
111
|
+
kind: 'boolean';
|
|
112
|
+
} | {
|
|
113
|
+
kind: 'void';
|
|
114
|
+
} | {
|
|
115
|
+
kind: 'array';
|
|
116
|
+
element: IrType;
|
|
117
|
+
} | {
|
|
118
|
+
kind: 'record';
|
|
119
|
+
key: IrType;
|
|
120
|
+
value: IrType;
|
|
121
|
+
} | {
|
|
122
|
+
kind: 'tuple';
|
|
123
|
+
elements: IrType[];
|
|
124
|
+
} | {
|
|
125
|
+
kind: 'named';
|
|
126
|
+
name: string;
|
|
127
|
+
} | {
|
|
128
|
+
kind: 'object';
|
|
129
|
+
fields: IrInterfaceField[];
|
|
130
|
+
} | {
|
|
131
|
+
kind: 'unknown';
|
|
132
|
+
};
|
|
133
|
+
export interface IrInterfaceField {
|
|
134
|
+
name: string;
|
|
135
|
+
type: IrType;
|
|
136
|
+
optional: boolean;
|
|
137
|
+
}
|
|
138
|
+
export interface IrInterface {
|
|
139
|
+
name: string;
|
|
140
|
+
fields: IrInterfaceField[];
|
|
141
|
+
}
|
|
142
|
+
export interface IrDataConst {
|
|
143
|
+
name: string;
|
|
144
|
+
value: IrLiteral;
|
|
145
|
+
}
|
|
146
|
+
export interface IrFunctionParam {
|
|
147
|
+
name: string;
|
|
148
|
+
type: IrType;
|
|
149
|
+
}
|
|
150
|
+
export interface IrFunction {
|
|
151
|
+
name: string;
|
|
152
|
+
params: IrFunctionParam[];
|
|
153
|
+
returnType: IrType;
|
|
154
|
+
bodySource: string;
|
|
155
|
+
body: IrStatement[];
|
|
156
|
+
}
|
|
157
|
+
export interface IrProp {
|
|
158
|
+
name: string;
|
|
159
|
+
type: IrType;
|
|
160
|
+
defaultValue: IrLiteral;
|
|
161
|
+
}
|
|
162
|
+
export interface IrComponent {
|
|
163
|
+
tagName: string;
|
|
164
|
+
className: string;
|
|
165
|
+
props: IrProp[];
|
|
166
|
+
styles: string;
|
|
167
|
+
renderBindings: IrLocalBinding[];
|
|
168
|
+
renderTemplate: IrTemplateNode[];
|
|
169
|
+
renderBodySource: string;
|
|
170
|
+
hydrateBodySource: string;
|
|
171
|
+
privateMethods: {
|
|
172
|
+
name: string;
|
|
173
|
+
source: string;
|
|
174
|
+
}[];
|
|
175
|
+
}
|
|
176
|
+
export interface IrLocalBinding {
|
|
177
|
+
name: string;
|
|
178
|
+
init: IrExpr;
|
|
179
|
+
}
|
|
180
|
+
export type IrTemplateNode = {
|
|
181
|
+
kind: 'static';
|
|
182
|
+
text: string;
|
|
183
|
+
} | {
|
|
184
|
+
kind: 'expr';
|
|
185
|
+
expr: IrExpr;
|
|
186
|
+
};
|
|
187
|
+
export interface IrModule {
|
|
188
|
+
sourceFile: string;
|
|
189
|
+
interfaces: IrInterface[];
|
|
190
|
+
dataConsts: IrDataConst[];
|
|
191
|
+
functions: IrFunction[];
|
|
192
|
+
component: IrComponent;
|
|
193
|
+
}
|
|
194
|
+
//# sourceMappingURL=ir.d.ts.map
|
package/dist/ir.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ir.d.ts","sourceRoot":"","sources":["../src/ir.ts"],"names":[],"mappings":"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"}
|
package/dist/ir.js
ADDED
package/dist/ir.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ir.js","sourceRoot":"","sources":["../src/ir.ts"],"names":[],"mappings":"AAAA,kFAAkF"}
|
package/dist/parser.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,QAAQ,EAIT,MAAM,SAAS,CAAC;AAUjB,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,QAAQ,CA6CtE"}
|