@kernlang/core 3.5.6-canary.195.1.72010f21 → 3.5.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/dist/capability-matrix.js +28 -0
- package/dist/capability-matrix.js.map +1 -1
- package/dist/closure-python-lowering.d.ts +10 -0
- package/dist/closure-python-lowering.js +138 -0
- package/dist/closure-python-lowering.js.map +1 -0
- package/dist/config.d.ts +8 -1
- package/dist/config.js +5 -0
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/shadow-analyzer.d.ts +21 -1
- package/dist/shadow-analyzer.js +93 -5
- package/dist/shadow-analyzer.js.map +1 -1
- package/dist/spec.d.ts +1 -1
- package/dist/spec.js +1 -1
- package/dist/spec.js.map +1 -1
- package/package.json +1 -1
|
@@ -224,6 +224,32 @@ const PY_CORE_CAPABILITIES = [
|
|
|
224
224
|
note: 'FastAPI codegen has not been wired to lower `mapLit`/`setLit` to Python `dict`/`set` literals',
|
|
225
225
|
},
|
|
226
226
|
];
|
|
227
|
+
const GO_CORE_CAPABILITIES = [
|
|
228
|
+
{ feature: 'literal-float', position: 'expression', support: 'native' },
|
|
229
|
+
{ feature: 'literal-numeric-separator', position: 'expression', support: 'lowered' },
|
|
230
|
+
{ feature: 'literal-bigint', position: 'expression', support: 'unsupported' },
|
|
231
|
+
{ feature: 'literal-hex', position: 'expression', support: 'native' },
|
|
232
|
+
{ feature: 'literal-binary', position: 'expression', support: 'native' },
|
|
233
|
+
{ feature: 'literal-octal', position: 'expression', support: 'native' },
|
|
234
|
+
{ feature: 'literal-string-single-quote', position: 'expression', support: 'lowered' },
|
|
235
|
+
{ feature: 'optional-chain', position: 'expression', support: 'lowered', note: 'lowered through kernrt.OptionalGet' },
|
|
236
|
+
{ feature: 'nullish-coalesce', position: 'expression', support: 'lowered', note: 'lowered through kernrt.Coalesce' },
|
|
237
|
+
{ feature: 'spread', position: 'expression', support: 'unsupported' },
|
|
238
|
+
{ feature: 'template-literal', position: 'expression', support: 'unsupported' },
|
|
239
|
+
{ feature: 'const-value-as-expression', position: 'top-level', support: 'unsupported' },
|
|
240
|
+
{ feature: 'tuple-type', position: 'top-level', support: 'unsupported' },
|
|
241
|
+
{ feature: 'enum-type', position: 'top-level', support: 'unsupported' },
|
|
242
|
+
{ feature: 'index-signature', position: 'top-level', support: 'unsupported' },
|
|
243
|
+
{ feature: 'type-guard', position: 'top-level', support: 'unsupported' },
|
|
244
|
+
{ feature: 'function-overloads', position: 'top-level', support: 'unsupported' },
|
|
245
|
+
{ feature: 'generics', position: 'top-level', support: 'unsupported' },
|
|
246
|
+
{ feature: 'cross-kern-import', position: 'top-level', support: 'unsupported' },
|
|
247
|
+
{ feature: 'let-native-value', position: 'top-level', support: 'unsupported' },
|
|
248
|
+
{ feature: 'field-native-value', position: 'top-level', support: 'unsupported' },
|
|
249
|
+
{ feature: 'param-native-value', position: 'top-level', support: 'unsupported' },
|
|
250
|
+
{ feature: 'destructure-native', position: 'top-level', support: 'unsupported' },
|
|
251
|
+
{ feature: 'maplit-setlit-native', position: 'top-level', support: 'unsupported' },
|
|
252
|
+
];
|
|
227
253
|
export const CAPABILITY_MATRIX = {
|
|
228
254
|
auto: TS_CORE_CAPABILITIES,
|
|
229
255
|
lib: TS_CORE_CAPABILITIES,
|
|
@@ -238,6 +264,8 @@ export const CAPABILITY_MATRIX = {
|
|
|
238
264
|
vue: TS_CORE_CAPABILITIES,
|
|
239
265
|
nuxt: TS_CORE_CAPABILITIES,
|
|
240
266
|
fastapi: PY_CORE_CAPABILITIES,
|
|
267
|
+
python: PY_CORE_CAPABILITIES,
|
|
268
|
+
go: GO_CORE_CAPABILITIES,
|
|
241
269
|
mcp: TS_CORE_CAPABILITIES,
|
|
242
270
|
};
|
|
243
271
|
export function capabilitySupport(target, feature, position) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capability-matrix.js","sourceRoot":"","sources":["../src/capability-matrix.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"capability-matrix.js","sourceRoot":"","sources":["../src/capability-matrix.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface LowerJsClosureBodyToPythonOptions {
|
|
2
|
+
lowerExpression(expr: string): string;
|
|
3
|
+
lowerCondition?(expr: string): string;
|
|
4
|
+
}
|
|
5
|
+
export interface LowerJsClosureBodyToPythonResult {
|
|
6
|
+
ok: boolean;
|
|
7
|
+
lines: string[];
|
|
8
|
+
reason?: string;
|
|
9
|
+
}
|
|
10
|
+
export declare function lowerJsClosureBodyToPython(body: string, opts: LowerJsClosureBodyToPythonOptions): LowerJsClosureBodyToPythonResult;
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
function hasUnsupportedNestedConstruct(node) {
|
|
3
|
+
let unsupported = false;
|
|
4
|
+
const visit = (child) => {
|
|
5
|
+
if (ts.isArrowFunction(child) ||
|
|
6
|
+
ts.isFunctionExpression(child) ||
|
|
7
|
+
ts.isFunctionDeclaration(child) ||
|
|
8
|
+
child.kind === ts.SyntaxKind.ThisKeyword ||
|
|
9
|
+
child.kind === ts.SyntaxKind.YieldExpression) {
|
|
10
|
+
unsupported = true;
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
ts.forEachChild(child, visit);
|
|
14
|
+
};
|
|
15
|
+
ts.forEachChild(node, visit);
|
|
16
|
+
return unsupported;
|
|
17
|
+
}
|
|
18
|
+
function parseClosureBlock(body) {
|
|
19
|
+
const trimmed = body.trim();
|
|
20
|
+
if (trimmed.length < 2 || trimmed[0] !== '{' || trimmed[trimmed.length - 1] !== '}')
|
|
21
|
+
return null;
|
|
22
|
+
const source = `function __kern_closure__() ${trimmed}`;
|
|
23
|
+
const sf = ts.createSourceFile('__kern_closure__.ts', source, ts.ScriptTarget.Latest, true, ts.ScriptKind.TS);
|
|
24
|
+
const diags = sf.parseDiagnostics;
|
|
25
|
+
if (diags && diags.length > 0)
|
|
26
|
+
return null;
|
|
27
|
+
const fn = sf.statements[0];
|
|
28
|
+
if (!fn || !ts.isFunctionDeclaration(fn) || !fn.body)
|
|
29
|
+
return null;
|
|
30
|
+
return { sf, block: fn.body };
|
|
31
|
+
}
|
|
32
|
+
export function lowerJsClosureBodyToPython(body, opts) {
|
|
33
|
+
const parsed = parseClosureBlock(body);
|
|
34
|
+
if (!parsed)
|
|
35
|
+
return { ok: false, lines: [], reason: 'parse' };
|
|
36
|
+
const { sf, block } = parsed;
|
|
37
|
+
if (hasUnsupportedNestedConstruct(block))
|
|
38
|
+
return { ok: false, lines: [], reason: 'unsupported-nested' };
|
|
39
|
+
const lowerExpr = (expr) => opts.lowerExpression(expr.getText(sf));
|
|
40
|
+
const lowerCond = (expr) => opts.lowerCondition ? opts.lowerCondition(expr.getText(sf)) : `js_truthy(${lowerExpr(expr)})`;
|
|
41
|
+
const emitStatement = (stmt, indent) => {
|
|
42
|
+
if (ts.isVariableStatement(stmt)) {
|
|
43
|
+
const flags = stmt.declarationList.flags;
|
|
44
|
+
if ((flags & ts.NodeFlags.Let) === 0 && (flags & ts.NodeFlags.Const) === 0)
|
|
45
|
+
return null;
|
|
46
|
+
const lines = [];
|
|
47
|
+
for (const decl of stmt.declarationList.declarations) {
|
|
48
|
+
if (!ts.isIdentifier(decl.name) || !decl.initializer)
|
|
49
|
+
return null;
|
|
50
|
+
lines.push(`${indent}${decl.name.text} = ${lowerExpr(decl.initializer)}`);
|
|
51
|
+
}
|
|
52
|
+
return lines;
|
|
53
|
+
}
|
|
54
|
+
if (ts.isReturnStatement(stmt)) {
|
|
55
|
+
return [`${indent}return ${stmt.expression ? lowerExpr(stmt.expression) : 'None'}`];
|
|
56
|
+
}
|
|
57
|
+
if (ts.isExpressionStatement(stmt)) {
|
|
58
|
+
return [`${indent}${lowerExpr(stmt.expression)}`];
|
|
59
|
+
}
|
|
60
|
+
if (ts.isIfStatement(stmt)) {
|
|
61
|
+
const consequent = emitStatementBody(stmt.thenStatement, `${indent} `);
|
|
62
|
+
if (!consequent)
|
|
63
|
+
return null;
|
|
64
|
+
const lines = [`${indent}if ${lowerCond(stmt.expression)}:`, ...nonEmptyBody(consequent, `${indent} `)];
|
|
65
|
+
if (stmt.elseStatement) {
|
|
66
|
+
const alternate = emitStatementBody(stmt.elseStatement, `${indent} `);
|
|
67
|
+
if (!alternate)
|
|
68
|
+
return null;
|
|
69
|
+
lines.push(`${indent}else:`, ...nonEmptyBody(alternate, `${indent} `));
|
|
70
|
+
}
|
|
71
|
+
return lines;
|
|
72
|
+
}
|
|
73
|
+
if (ts.isTryStatement(stmt)) {
|
|
74
|
+
if (stmt.finallyBlock || !stmt.catchClause)
|
|
75
|
+
return null;
|
|
76
|
+
const tryLines = emitBlock(stmt.tryBlock, `${indent} `);
|
|
77
|
+
if (!tryLines)
|
|
78
|
+
return null;
|
|
79
|
+
const catchLines = emitBlock(stmt.catchClause.block, `${indent} `);
|
|
80
|
+
if (!catchLines)
|
|
81
|
+
return null;
|
|
82
|
+
const catchName = stmt.catchClause.variableDeclaration?.name;
|
|
83
|
+
if (catchName && !ts.isIdentifier(catchName))
|
|
84
|
+
return null;
|
|
85
|
+
return [
|
|
86
|
+
`${indent}try:`,
|
|
87
|
+
...nonEmptyBody(tryLines, `${indent} `),
|
|
88
|
+
catchName ? `${indent}except Exception as ${catchName.text}:` : `${indent}except Exception:`,
|
|
89
|
+
...nonEmptyBody(catchLines, `${indent} `),
|
|
90
|
+
];
|
|
91
|
+
}
|
|
92
|
+
if (ts.isForOfStatement(stmt)) {
|
|
93
|
+
if (stmt.awaitModifier)
|
|
94
|
+
return null;
|
|
95
|
+
let target = null;
|
|
96
|
+
const initializer = stmt.initializer;
|
|
97
|
+
if (ts.isVariableDeclarationList(initializer)) {
|
|
98
|
+
if (initializer.declarations.length !== 1)
|
|
99
|
+
return null;
|
|
100
|
+
const decl = initializer.declarations[0];
|
|
101
|
+
if (!ts.isIdentifier(decl.name) || decl.initializer)
|
|
102
|
+
return null;
|
|
103
|
+
target = decl.name.text;
|
|
104
|
+
}
|
|
105
|
+
else if (ts.isIdentifier(initializer)) {
|
|
106
|
+
target = initializer.text;
|
|
107
|
+
}
|
|
108
|
+
if (!target)
|
|
109
|
+
return null;
|
|
110
|
+
const bodyLines = emitStatementBody(stmt.statement, `${indent} `);
|
|
111
|
+
if (!bodyLines)
|
|
112
|
+
return null;
|
|
113
|
+
return [`${indent}for ${target} in ${lowerExpr(stmt.expression)}:`, ...nonEmptyBody(bodyLines, `${indent} `)];
|
|
114
|
+
}
|
|
115
|
+
return null;
|
|
116
|
+
};
|
|
117
|
+
const emitStatementBody = (stmt, indent) => {
|
|
118
|
+
if (ts.isBlock(stmt))
|
|
119
|
+
return emitBlock(stmt, indent);
|
|
120
|
+
return emitStatement(stmt, indent);
|
|
121
|
+
};
|
|
122
|
+
const emitBlock = (b, indent) => {
|
|
123
|
+
const lines = [];
|
|
124
|
+
for (const stmt of b.statements) {
|
|
125
|
+
const emitted = emitStatement(stmt, indent);
|
|
126
|
+
if (!emitted)
|
|
127
|
+
return null;
|
|
128
|
+
lines.push(...emitted);
|
|
129
|
+
}
|
|
130
|
+
return lines;
|
|
131
|
+
};
|
|
132
|
+
const nonEmptyBody = (lines, indent) => (lines.length > 0 ? lines : [`${indent}pass`]);
|
|
133
|
+
const lines = emitBlock(block, ' ');
|
|
134
|
+
if (!lines)
|
|
135
|
+
return { ok: false, lines: [], reason: 'unsupported-statement' };
|
|
136
|
+
return { ok: true, lines };
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=closure-python-lowering.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"closure-python-lowering.js","sourceRoot":"","sources":["../src/closure-python-lowering.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Kern Configuration Types
|
|
3
3
|
*/
|
|
4
4
|
import type { IRNode } from './types.js';
|
|
5
|
-
export type KernTarget = 'auto' | 'lib' | 'nextjs' | 'tailwind' | 'web' | 'native' | 'express' | 'cli' | 'terminal' | 'ink' | 'vue' | 'nuxt' | 'fastapi' | 'mcp';
|
|
5
|
+
export type KernTarget = 'auto' | 'lib' | 'nextjs' | 'tailwind' | 'web' | 'native' | 'express' | 'cli' | 'terminal' | 'ink' | 'vue' | 'nuxt' | 'fastapi' | 'mcp' | 'python' | 'go';
|
|
6
6
|
/** Concrete transpiler targets (displayed to users). */
|
|
7
7
|
export declare const VALID_TARGETS: KernTarget[];
|
|
8
8
|
/** All accepted target values including meta-targets like 'auto'. */
|
|
@@ -20,6 +20,10 @@ export interface KernConfig {
|
|
|
20
20
|
structure?: KernStructure;
|
|
21
21
|
frameworkVersions?: FrameworkVersions;
|
|
22
22
|
templates?: string[];
|
|
23
|
+
emit?: string;
|
|
24
|
+
pythonModelBackend?: 'pydantic' | 'sqlmodel' | 'auto';
|
|
25
|
+
/** Severity for raw (unmarked) TS fences dropped by the python target. Default 'warning'. */
|
|
26
|
+
pythonFenceSeverity?: 'error' | 'warning' | 'info';
|
|
23
27
|
i18n?: {
|
|
24
28
|
enabled?: boolean;
|
|
25
29
|
hookName?: string;
|
|
@@ -94,6 +98,9 @@ export interface ResolvedKernConfig {
|
|
|
94
98
|
structure: KernStructure;
|
|
95
99
|
frameworkVersions: FrameworkVersions;
|
|
96
100
|
templates: string[];
|
|
101
|
+
emit?: string;
|
|
102
|
+
pythonModelBackend?: 'pydantic' | 'sqlmodel' | 'auto';
|
|
103
|
+
pythonFenceSeverity?: 'error' | 'warning' | 'info';
|
|
97
104
|
i18n: {
|
|
98
105
|
enabled: boolean;
|
|
99
106
|
hookName: string;
|
package/dist/config.js
CHANGED
|
@@ -18,6 +18,8 @@ export const VALID_TARGETS = [
|
|
|
18
18
|
'nuxt',
|
|
19
19
|
'fastapi',
|
|
20
20
|
'mcp',
|
|
21
|
+
'python',
|
|
22
|
+
'go',
|
|
21
23
|
];
|
|
22
24
|
/** All accepted target values including meta-targets like 'auto'. */
|
|
23
25
|
export const ALL_TARGETS = ['auto', ...VALID_TARGETS];
|
|
@@ -102,6 +104,9 @@ export function resolveConfig(user) {
|
|
|
102
104
|
return {
|
|
103
105
|
target: user.target || DEFAULT_CONFIG.target,
|
|
104
106
|
structure: user.structure || DEFAULT_CONFIG.structure,
|
|
107
|
+
emit: user.emit,
|
|
108
|
+
pythonModelBackend: user.pythonModelBackend,
|
|
109
|
+
pythonFenceSeverity: user.pythonFenceSeverity,
|
|
105
110
|
frameworkVersions: {
|
|
106
111
|
...DEFAULT_CONFIG.frameworkVersions,
|
|
107
112
|
...user.frameworkVersions,
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
* @kernlang/core — parser, types, spec, config, style engines, codegen
|
|
3
3
|
*/
|
|
4
4
|
export { isPostfixMutationOperator, isSupportedAssignOperator, SUPPORTED_ASSIGN_OPERATORS, supportedCompoundAssignmentOperator, } from './assignment-operators.js';
|
|
5
|
+
export type { LowerJsClosureBodyToPythonOptions, LowerJsClosureBodyToPythonResult, } from './closure-python-lowering.js';
|
|
6
|
+
export { lowerJsClosureBodyToPython } from './closure-python-lowering.js';
|
|
5
7
|
export type { BodyEmitOptions, BodyEmitResult } from './codegen/body-ts.js';
|
|
6
8
|
export { emitNativeKernBodyTS, emitNativeKernBodyTSWithImports } from './codegen/body-ts.js';
|
|
7
9
|
export type { StdlibEntry } from './codegen/kern-stdlib.js';
|
|
@@ -58,7 +60,7 @@ export type { KernSchemaJSON, NodeSchema, PropKind, PropSchema, SchemaViolation
|
|
|
58
60
|
export { exportSchemaJSON, NODE_SCHEMAS, validateSchema } from './schema.js';
|
|
59
61
|
export type { SemanticViolation } from './semantic-validator.js';
|
|
60
62
|
export { validateSemantics } from './semantic-validator.js';
|
|
61
|
-
export type { ShadowDiagnostic } from './shadow-analyzer.js';
|
|
63
|
+
export type { ShadowAnalyzeOptions, ShadowDiagnostic } from './shadow-analyzer.js';
|
|
62
64
|
export { analyzeShadow } from './shadow-analyzer.js';
|
|
63
65
|
export type { SourceMapV3 } from './source-map.js';
|
|
64
66
|
export { serializeSourceMap } from './source-map.js';
|
package/dist/index.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* @kernlang/core — parser, types, spec, config, style engines, codegen
|
|
3
3
|
*/
|
|
4
4
|
export { isPostfixMutationOperator, isSupportedAssignOperator, SUPPORTED_ASSIGN_OPERATORS, supportedCompoundAssignmentOperator, } from './assignment-operators.js';
|
|
5
|
+
export { lowerJsClosureBodyToPython } from './closure-python-lowering.js';
|
|
5
6
|
export { emitNativeKernBodyTS, emitNativeKernBodyTSWithImports } from './codegen/body-ts.js';
|
|
6
7
|
export { applyTemplate, KERN_STDLIB, KERN_STDLIB_MODULES, lookupStdlib, suggestStdlibMethod, } from './codegen/kern-stdlib.js';
|
|
7
8
|
export { detectReactHookDeps, injectReactHookImports } from './codegen/react-hook-imports.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,mCAAmC,GACpC,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,4 +19,24 @@ export interface ShadowDiagnostic {
|
|
|
19
19
|
col?: number;
|
|
20
20
|
tsCode?: number;
|
|
21
21
|
}
|
|
22
|
-
export
|
|
22
|
+
export interface ShadowAnalyzeOptions {
|
|
23
|
+
/**
|
|
24
|
+
* Emit the real TypeScript shape for in-file declared types (interface/union/type)
|
|
25
|
+
* into the shadow support file instead of the lossy `type X = any;` stub, so fence
|
|
26
|
+
* bodies are checked against actual domain shapes. Default `false` (legacy any-stub
|
|
27
|
+
* behavior). Project-wide (cross-module) resolution layers on top of this seam.
|
|
28
|
+
*/
|
|
29
|
+
realTypes?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Project-wide resolution: imported type nodes keyed by the name they are referenced
|
|
32
|
+
* by inside this file (the import's local/aliased name). The caller (CLI compile path)
|
|
33
|
+
* resolves a file's KERN imports to the exported type IR and supplies them here so a
|
|
34
|
+
* fence using `NeroOptions{registry: EngineRegistry}` is checked against the real
|
|
35
|
+
* `@agon/core` shapes. Only honored when `realTypes` is set; in-file declarations win
|
|
36
|
+
* on a name clash. The map need not be transitively complete — any referenced type the
|
|
37
|
+
* map omits degrades cleanly to `any` (no false positive), so partial resolution just
|
|
38
|
+
* means partial checking.
|
|
39
|
+
*/
|
|
40
|
+
importedTypeNodes?: Map<string, IRNode>;
|
|
41
|
+
}
|
|
42
|
+
export declare function analyzeShadow(root: IRNode, analyzeOptions?: ShadowAnalyzeOptions): Promise<ShadowDiagnostic[]>;
|
package/dist/shadow-analyzer.js
CHANGED
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
* we'd rather miss diagnostics than emit confident false ones.
|
|
12
12
|
*/
|
|
13
13
|
import { parseParamList } from './codegen/helpers.js';
|
|
14
|
+
import { generateInterface, generateType, generateUnion } from './codegen/type-system.js';
|
|
14
15
|
const HANDLER_OPEN = 'handler <<<';
|
|
15
16
|
// Minimal set of type names that should NOT be declared as `type X = any;` in the support file.
|
|
16
17
|
// Narrowly scoped — everything not in this set but referenced as a type must either come from
|
|
@@ -70,7 +71,7 @@ const DECLARING_NODE_TYPES = new Set([
|
|
|
70
71
|
'class',
|
|
71
72
|
'repository',
|
|
72
73
|
]);
|
|
73
|
-
export async function analyzeShadow(root) {
|
|
74
|
+
export async function analyzeShadow(root, analyzeOptions = {}) {
|
|
74
75
|
const ts = await loadTypeScript();
|
|
75
76
|
if (!ts) {
|
|
76
77
|
return [
|
|
@@ -84,6 +85,17 @@ export async function analyzeShadow(root) {
|
|
|
84
85
|
];
|
|
85
86
|
}
|
|
86
87
|
const declaredTypeNames = collectDeclaredTypeNames(root);
|
|
88
|
+
// Type names used in fn/method SIGNATURES (params/returns) land in the `__shadow`
|
|
89
|
+
// wrapper, where an undefined type errors and is attributed to the handler (a false
|
|
90
|
+
// positive). Stub any such name that isn't declared/resolved as `any` so the signature
|
|
91
|
+
// resolves — "rather miss than false-positive". Fixes the pre-existing case of a fn with
|
|
92
|
+
// an imported param type, and makes unresolved imports degrade cleanly under realTypes.
|
|
93
|
+
const referencedTypeNames = collectReferencedSignatureTypeNames(root);
|
|
94
|
+
// In-file declarations win over imported ones on a name clash (a local declaration
|
|
95
|
+
// shadows an import). Imported nodes are seeded first, then overwritten by in-file.
|
|
96
|
+
const realTypeNodes = analyzeOptions.realTypes
|
|
97
|
+
? new Map([...(analyzeOptions.importedTypeNodes ?? []), ...collectDeclaredTypeNodes(root)])
|
|
98
|
+
: new Map();
|
|
87
99
|
const moduleDeclarations = collectModuleDeclarations(root);
|
|
88
100
|
const diagnostics = [];
|
|
89
101
|
const units = [];
|
|
@@ -103,7 +115,9 @@ export async function analyzeShadow(root) {
|
|
|
103
115
|
if (units.length === 0)
|
|
104
116
|
return diagnostics;
|
|
105
117
|
const supportFileName = '/__kern_shadow__/support.d.ts';
|
|
106
|
-
const files = new Map([
|
|
118
|
+
const files = new Map([
|
|
119
|
+
[supportFileName, buildSupportFile(declaredTypeNames, moduleDeclarations, realTypeNodes, referencedTypeNames)],
|
|
120
|
+
]);
|
|
107
121
|
const unitsByFile = new Map();
|
|
108
122
|
for (const unit of units) {
|
|
109
123
|
files.set(unit.fileName, unit.virtualSource);
|
|
@@ -310,11 +324,22 @@ function createUnit({ index, handlerNode, parentType, lines, bodyStartLine, rawC
|
|
|
310
324
|
sourceStartCol: sourceLoc.col,
|
|
311
325
|
};
|
|
312
326
|
}
|
|
313
|
-
function buildSupportFile(declaredTypeNames, moduleDeclarations) {
|
|
314
|
-
|
|
327
|
+
function buildSupportFile(declaredTypeNames, moduleDeclarations, realTypeNodes, referencedTypeNames = new Set()) {
|
|
328
|
+
// Union of: in-file declared names; caller-supplied imported type names (not in
|
|
329
|
+
// declaredTypeNames, which only walks this file); and signature-referenced names (which
|
|
330
|
+
// must exist so the `__shadow` wrapper doesn't error). Names with a real node emit the
|
|
331
|
+
// real shape; the rest fall through to an `any` stub.
|
|
332
|
+
const allNames = new Set([...declaredTypeNames, ...realTypeNodes.keys(), ...referencedTypeNames]);
|
|
333
|
+
const extraTypes = [...allNames]
|
|
315
334
|
.filter((name) => !BUILTIN_TYPE_NAMES.has(name))
|
|
316
335
|
.sort()
|
|
317
|
-
.
|
|
336
|
+
.flatMap((name) => {
|
|
337
|
+
const node = realTypeNodes.get(name);
|
|
338
|
+
// Real shape (in-file or resolved import) when available + opted in; otherwise the
|
|
339
|
+
// lossy `any` stub. A name absent from realTypeNodes is an unresolved import or a
|
|
340
|
+
// non-emittable kind (service/model/error) — either way it degrades to `any`.
|
|
341
|
+
return node ? emitRealShadowType(node) : [`type ${name} = any;`];
|
|
342
|
+
});
|
|
318
343
|
// `lib: ['lib.es2022.d.ts']` strips Node's ambient runtime globals, so we stub the
|
|
319
344
|
// handful that real handlers routinely reach for. Typed as `any` to avoid downstream
|
|
320
345
|
// false positives on shape — this is a lint assist, not a strict type-check.
|
|
@@ -584,6 +609,69 @@ function collectDeclaredTypeNames(root) {
|
|
|
584
609
|
});
|
|
585
610
|
return names;
|
|
586
611
|
}
|
|
612
|
+
// Node kinds whose real TS shape we can emit into the support file via the pure
|
|
613
|
+
// codegen emitters. Deliberately narrower than DECLARING_NODE_TYPES: service/class/
|
|
614
|
+
// repository compile to values (handled as `declare const` in collectModuleDeclarations)
|
|
615
|
+
// and model/event/error have value/runtime-adjacent emission, so they stay `any` stubs.
|
|
616
|
+
const EMITTABLE_TYPE_NODES = new Set(['interface', 'union', 'type']);
|
|
617
|
+
/** Map of declared type name -> IR node for the kinds whose real shape is emittable.
|
|
618
|
+
* First declaration wins on a name clash (mirrors single-file scope). */
|
|
619
|
+
function collectDeclaredTypeNodes(root) {
|
|
620
|
+
const nodes = new Map();
|
|
621
|
+
walk(root, [], (node) => {
|
|
622
|
+
if (!EMITTABLE_TYPE_NODES.has(node.type))
|
|
623
|
+
return;
|
|
624
|
+
const name = typeof node.props?.name === 'string' ? node.props.name : '';
|
|
625
|
+
if (name && /^[A-Za-z_]\w*$/.test(name) && !nodes.has(name)) {
|
|
626
|
+
nodes.set(name, node);
|
|
627
|
+
}
|
|
628
|
+
});
|
|
629
|
+
return nodes;
|
|
630
|
+
}
|
|
631
|
+
// Node kinds that carry a typed signature (params/returns) which is reproduced in the
|
|
632
|
+
// `__shadow` wrapper, so any type name they reference must exist in the support file.
|
|
633
|
+
const SIGNATURE_NODE_TYPES = new Set(['fn', 'method', 'on', 'constructor', 'getter', 'setter']);
|
|
634
|
+
/** PascalCase type names referenced in fn/method signature positions (params + returns).
|
|
635
|
+
* Undeclared ones get an `any` stub in the support file so the wrapper signature resolves
|
|
636
|
+
* instead of erroring on the handler. Lowercase tokens (param names, primitives, keywords)
|
|
637
|
+
* are skipped by the PascalCase match; builtin PascalCase types (Promise/Array/...) are
|
|
638
|
+
* filtered later by BUILTIN_TYPE_NAMES, so they never get a bogus stub. */
|
|
639
|
+
function collectReferencedSignatureTypeNames(root) {
|
|
640
|
+
const names = new Set();
|
|
641
|
+
const add = (typeText) => {
|
|
642
|
+
if (typeof typeText !== 'string')
|
|
643
|
+
return;
|
|
644
|
+
for (const match of typeText.matchAll(/[A-Z][A-Za-z0-9_$]*/g)) {
|
|
645
|
+
names.add(match[0]);
|
|
646
|
+
}
|
|
647
|
+
};
|
|
648
|
+
walk(root, [], (node) => {
|
|
649
|
+
if (!SIGNATURE_NODE_TYPES.has(node.type))
|
|
650
|
+
return;
|
|
651
|
+
add(node.props?.params);
|
|
652
|
+
add(node.props?.returns);
|
|
653
|
+
});
|
|
654
|
+
return names;
|
|
655
|
+
}
|
|
656
|
+
/** Shadow type-emission adapter around the pure codegen emitters. Emits the type with
|
|
657
|
+
* `export` forced OFF (via `props.export='false'`, which `exportPrefix` honors) so the
|
|
658
|
+
* declaration is ambient in the `/// <reference>`-d support file — a module export would
|
|
659
|
+
* hide it from the virtual handler files. Setting the prop is robust where a line-start
|
|
660
|
+
* regex strip is not (indentation, `export default`, `export` inside literals). This is
|
|
661
|
+
* the seam where project-wide canonical-id mangling will layer in. */
|
|
662
|
+
function emitRealShadowType(node) {
|
|
663
|
+
const ambient = { ...node, props: { ...(node.props ?? {}), export: 'false' } };
|
|
664
|
+
switch (node.type) {
|
|
665
|
+
case 'interface':
|
|
666
|
+
return generateInterface(ambient);
|
|
667
|
+
case 'union':
|
|
668
|
+
return generateUnion(ambient);
|
|
669
|
+
case 'type':
|
|
670
|
+
return generateType(ambient);
|
|
671
|
+
default:
|
|
672
|
+
return [`type ${typeof node.props?.name === 'string' ? node.props.name : 'Unknown'} = any;`];
|
|
673
|
+
}
|
|
674
|
+
}
|
|
587
675
|
function walk(node, ancestors, visit) {
|
|
588
676
|
visit(node, ancestors);
|
|
589
677
|
for (const child of node.children || []) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shadow-analyzer.js","sourceRoot":"","sources":["../src/shadow-analyzer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shadow-analyzer.js","sourceRoot":"","sources":["../src/shadow-analyzer.ts"],"names":[],"mappings":"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"}
|
package/dist/spec.d.ts
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* Meta: theme nodes ($ref), pseudo-selectors (:press, :hover)
|
|
10
10
|
* Targets: Next.js, React+Tailwind, React Native, Express
|
|
11
11
|
*/
|
|
12
|
-
export declare const KERN_VERSION = "3.5.6
|
|
12
|
+
export declare const KERN_VERSION = "3.5.6";
|
|
13
13
|
export declare const IR_GRAMMAR = "\ndocument = node+\nnode = indent type (SP prop)* (SP style)? (SP themeref)* NL child*\nchild = node\nindent = \" \"*\ntype = ident\nprop = ident \"=\" value\nvalue = quoted | bare\nquoted = '\"' [^\"]* '\"'\nbare = [^\\s{$]+\nstyle = \"{\" spair (\",\" spair)* \"}\"\nspair = sident \":\" svalue | \":\" pseudo \":\" sident \":\" svalue\npseudo = \"press\" | \"hover\" | \"active\" | \"focus\"\nsident = shorthand | ident\nsvalue = [^,}]+\nthemeref = \"$\" ident\nident = [A-Za-z_][A-Za-z0-9_-]*\nSP = \" \"+\nNL = \"\\n\" | EOF\n";
|
|
14
14
|
export declare const NODE_TYPES: readonly ["screen", "page", "row", "col", "card", "grid", "scroll", "text", "image", "progress", "divider", "codeblock", "section", "form", "button", "input", "textarea", "slider", "toggle", "modal", "list", "item", "tabs", "tab", "header", "link", "theme", "doc", "decorator", "server", "route", "middleware", "handler", "schema", "stream", "spawn", "timer", "on", "env", "websocket", "params", "auth", "validate", "respond", "trigger", "cli", "command", "arg", "flag", "import", "extern", "island", "separator", "table", "thead", "tbody", "tr", "th", "td", "scoreboard", "metric", "spinner", "box", "gradient", "state", "animation", "repl", "guard", "parallel", "dispatch", "then", "each", "let", "assign", "local", "comment", "return", "throw", "do", "continue", "break", "if", "while", "for", "with", "layout", "loading", "metadata", "generateMetadata", "notFound", "redirect", "fetch", "type", "interface", "field", "fn", "const", "destructure", "binding", "element", "mapLit", "mapEntry", "setLit", "setItem", "enum", "member", "union", "variant", "indexer", "overload", "service", "class", "method", "getter", "setter", "singleton", "constructor", "signal", "cleanup", "machine", "transition", "error", "module", "export", "use", "from", "config", "store", "test", "describe", "it", "event", "hook", "provider", "effect", "logic", "memo", "callback", "ref", "context", "prop", "returns", "render", "input-area", "output-area", "text-input", "select-input", "multi-select", "confirm-input", "password-input", "status-message", "alert", "ordered-list", "unordered-list", "focus", "app-exit", "static-log", "newline", "layout-row", "layout-col", "layout-stack", "spacer", "screen-embed", "alternate-screen", "scroll-box", "model", "column", "relation", "repository", "dependency", "inject", "cache", "entry", "invalidate", "conditional", "else", "elseif", "component", "select", "option", "group", "icon", "svg", "template", "slot", "body", "derive", "fmt", "cell", "set", "async", "try", "step", "catch", "finally", "filter", "find", "some", "every", "findIndex", "reduce", "map", "flatMap", "flat", "slice", "at", "sort", "reverse", "join", "includes", "indexOf", "lastIndexOf", "concat", "forEach", "compact", "pluck", "unique", "uniqueBy", "groupBy", "partition", "indexBy", "countBy", "chunk", "zip", "range", "take", "drop", "min", "max", "minBy", "maxBy", "sum", "sumBy", "avg", "intersect", "findLast", "findLastIndex", "transform", "action", "actionRegistry", "assume", "invariant", "branch", "path", "resolve", "candidate", "discriminator", "collect", "fanout", "emit", "pattern", "apply", "expect", "recover", "strategy", "reason", "evidence", "needs", "rule", "message", "mcp", "tool", "resource", "prompt", "param", "description", "sampling", "elicitation"];
|
|
15
15
|
export type IRNodeType = (typeof NODE_TYPES)[number];
|
package/dist/spec.js
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* Meta: theme nodes ($ref), pseudo-selectors (:press, :hover)
|
|
10
10
|
* Targets: Next.js, React+Tailwind, React Native, Express
|
|
11
11
|
*/
|
|
12
|
-
export const KERN_VERSION = '3.5.6
|
|
12
|
+
export const KERN_VERSION = '3.5.6';
|
|
13
13
|
// ── Grammar ─────────────────────────────────────────────────────────────
|
|
14
14
|
export const IR_GRAMMAR = `
|
|
15
15
|
document = node+
|
package/dist/spec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spec.js","sourceRoot":"","sources":["../src/spec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,
|
|
1
|
+
{"version":3,"file":"spec.js","sourceRoot":"","sources":["../src/spec.ts"],"names":[],"mappings":"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"}
|