@kernlang/core 3.1.3 → 3.1.4

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/spec.d.ts CHANGED
@@ -11,14 +11,15 @@
11
11
  */
12
12
  export declare const KERN_VERSION = "2.0.0";
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
- export declare const NODE_TYPES: readonly ["screen", "row", "col", "card", "scroll", "text", "image", "progress", "divider", "codeblock", "section", "button", "input", "modal", "list", "item", "tabs", "tab", "header", "theme", "server", "route", "middleware", "handler", "schema", "stream", "spawn", "timer", "on", "env", "websocket", "params", "auth", "validate", "respond", "trigger", "cli", "command", "arg", "flag", "import", "separator", "table", "thead", "tbody", "tr", "th", "td", "scoreboard", "metric", "spinner", "progress", "box", "gradient", "state", "repl", "guard", "parallel", "dispatch", "then", "each", "generateMetadata", "notFound", "redirect", "fetch", "type", "interface", "field", "fn", "union", "variant", "service", "method", "singleton", "constructor", "signal", "cleanup", "machine", "transition", "error", "module", "export", "config", "store", "test", "describe", "it", "event", "hook", "provider", "effect", "memo", "callback", "ref", "context", "cleanup", "prop", "returns", "input-area", "output-area", "text-input", "select-input", "model", "column", "relation", "repository", "dependency", "inject", "cache", "entry", "invalidate", "conditional", "select", "option", "template", "slot", "body", "derive", "transform", "action", "assume", "invariant", "branch", "path", "resolve", "candidate", "discriminator", "collect", "pattern", "apply", "expect", "recover", "strategy", "reason", "evidence", "needs", "rule", "message"];
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", "server", "route", "middleware", "handler", "schema", "stream", "spawn", "timer", "on", "env", "websocket", "params", "auth", "validate", "respond", "trigger", "cli", "command", "arg", "flag", "import", "separator", "table", "thead", "tbody", "tr", "th", "td", "scoreboard", "metric", "spinner", "box", "gradient", "state", "repl", "guard", "parallel", "dispatch", "then", "each", "layout", "loading", "metadata", "generateMetadata", "notFound", "redirect", "fetch", "type", "interface", "field", "fn", "const", "union", "variant", "service", "method", "singleton", "constructor", "signal", "cleanup", "machine", "transition", "error", "module", "export", "config", "store", "test", "describe", "it", "event", "hook", "provider", "effect", "logic", "memo", "callback", "ref", "context", "prop", "returns", "input-area", "output-area", "text-input", "select-input", "model", "column", "relation", "repository", "dependency", "inject", "cache", "entry", "invalidate", "conditional", "component", "select", "option", "icon", "svg", "template", "slot", "body", "derive", "transform", "action", "assume", "invariant", "branch", "path", "resolve", "candidate", "discriminator", "collect", "pattern", "apply", "expect", "recover", "strategy", "reason", "evidence", "needs", "rule", "message"];
15
15
  export type IRNodeType = (typeof NODE_TYPES)[number];
16
+ import { type KernRuntime } from './runtime.js';
16
17
  /** Register an evolved node type (called at startup from .kern/evolved/). */
17
18
  export declare function registerEvolvedType(keyword: string): void;
18
19
  /** Unregister an evolved node type (for rollback/testing). */
19
20
  export declare function unregisterEvolvedType(keyword: string): void;
20
21
  /** Check if a type is a known node type (core or evolved). */
21
- export declare function isKnownNodeType(type: string): boolean;
22
+ export declare function isKnownNodeType(type: string, runtime?: KernRuntime): boolean;
22
23
  /** Get all dynamically registered evolved types (defensive copy). */
23
24
  export declare function getEvolvedTypes(): ReadonlySet<string>;
24
25
  /** Clear all dynamic types (for test isolation). */
package/dist/spec.js CHANGED
@@ -34,17 +34,17 @@ NL = "\\n" | EOF
34
34
  // ── Node Types ──────────────────────────────────────────────────────────
35
35
  export const NODE_TYPES = [
36
36
  // Layout
37
- 'screen', 'row', 'col', 'card', 'scroll',
37
+ 'screen', 'page', 'row', 'col', 'card', 'grid', 'scroll',
38
38
  // Content
39
39
  'text', 'image', 'progress', 'divider', 'codeblock',
40
40
  // Structural
41
- 'section',
41
+ 'section', 'form',
42
42
  // Interactive
43
- 'button', 'input', 'modal',
43
+ 'button', 'input', 'textarea', 'slider', 'toggle', 'modal',
44
44
  // Lists
45
45
  'list', 'item',
46
46
  // Navigation
47
- 'tabs', 'tab', 'header',
47
+ 'tabs', 'tab', 'header', 'link',
48
48
  // Meta
49
49
  'theme',
50
50
  // Backend
@@ -56,12 +56,14 @@ export const NODE_TYPES = [
56
56
  'cli', 'command', 'arg', 'flag', 'import',
57
57
  // Terminal
58
58
  'separator', 'table', 'thead', 'tbody', 'tr', 'th', 'td', 'scoreboard', 'metric',
59
- 'spinner', 'progress', 'box', 'gradient',
59
+ 'spinner', 'box', 'gradient',
60
60
  'state', 'repl', 'guard', 'parallel', 'dispatch', 'then', 'each',
61
+ // Next.js App Router
62
+ 'layout', 'loading',
61
63
  // Next.js production patterns
62
- 'generateMetadata', 'notFound', 'redirect', 'fetch',
64
+ 'metadata', 'generateMetadata', 'notFound', 'redirect', 'fetch',
63
65
  // Core Language — type system, functions, state machines
64
- 'type', 'interface', 'field', 'fn',
66
+ 'type', 'interface', 'field', 'fn', 'const',
65
67
  'union', 'variant',
66
68
  'service', 'method', 'singleton', 'constructor',
67
69
  'signal', 'cleanup',
@@ -71,8 +73,8 @@ export const NODE_TYPES = [
71
73
  'test', 'describe', 'it',
72
74
  'event',
73
75
  // React — hooks, providers, effects
74
- 'hook', 'provider', 'effect',
75
- 'memo', 'callback', 'ref', 'context', 'cleanup',
76
+ 'hook', 'provider', 'effect', 'logic',
77
+ 'memo', 'callback', 'ref', 'context',
76
78
  'prop', 'returns',
77
79
  // Ink — terminal React (Ink) specific nodes
78
80
  'input-area', 'output-area', 'text-input', 'select-input',
@@ -82,8 +84,10 @@ export const NODE_TYPES = [
82
84
  'dependency', 'inject',
83
85
  'cache', 'entry', 'invalidate',
84
86
  // UI controls
85
- 'conditional',
87
+ 'conditional', 'component',
86
88
  'select', 'option',
89
+ // Graphics
90
+ 'icon', 'svg',
87
91
  // Template system
88
92
  'template', 'slot', 'body',
89
93
  // Ground layer — semantic reasoning
@@ -100,26 +104,27 @@ export const NODE_TYPES = [
100
104
  ];
101
105
  // ── Dynamic Node Types (Evolve v4 — graduated nodes) ────────────────────
102
106
  // Evolved nodes register here at startup. Checked by parser alongside NODE_TYPES.
103
- const _dynamicNodeTypes = new Set();
107
+ import { defaultRuntime } from './runtime.js';
104
108
  /** Register an evolved node type (called at startup from .kern/evolved/). */
105
109
  export function registerEvolvedType(keyword) {
106
- _dynamicNodeTypes.add(keyword);
110
+ defaultRuntime.registerEvolvedType(keyword);
107
111
  }
108
112
  /** Unregister an evolved node type (for rollback/testing). */
109
113
  export function unregisterEvolvedType(keyword) {
110
- _dynamicNodeTypes.delete(keyword);
114
+ defaultRuntime.unregisterEvolvedType(keyword);
111
115
  }
112
116
  /** Check if a type is a known node type (core or evolved). */
113
- export function isKnownNodeType(type) {
114
- return NODE_TYPES.includes(type) || _dynamicNodeTypes.has(type);
117
+ export function isKnownNodeType(type, runtime) {
118
+ const rt = runtime ?? defaultRuntime;
119
+ return NODE_TYPES.includes(type) || rt.dynamicNodeTypes.has(type);
115
120
  }
116
121
  /** Get all dynamically registered evolved types (defensive copy). */
117
122
  export function getEvolvedTypes() {
118
- return new Set(_dynamicNodeTypes);
123
+ return defaultRuntime.getEvolvedTypes();
119
124
  }
120
125
  /** Clear all dynamic types (for test isolation). */
121
126
  export function clearEvolvedTypes() {
122
- _dynamicNodeTypes.clear();
127
+ defaultRuntime.clearEvolvedTypes();
123
128
  }
124
129
  /** Reserved keywords — evolved nodes cannot use these. */
125
130
  export const KERN_RESERVED = Object.freeze(new Set(NODE_TYPES));
@@ -129,10 +134,16 @@ export const KERN_RESERVED = Object.freeze(new Set(NODE_TYPES));
129
134
  export const STYLE_SHORTHANDS = {
130
135
  // Spacing
131
136
  p: 'padding', m: 'margin',
137
+ px: 'paddingX', py: 'paddingY',
132
138
  pt: 'paddingTop', pb: 'paddingBottom', pl: 'paddingLeft', pr: 'paddingRight',
139
+ mx: 'marginX', my: 'marginY',
133
140
  mt: 'marginTop', mb: 'marginBottom', ml: 'marginLeft', mr: 'marginRight',
134
141
  // Sizing
135
142
  w: 'width', h: 'height', f: 'flex',
143
+ 'max-width': 'maxWidth', 'min-width': 'minWidth',
144
+ 'max-height': 'maxHeight', 'min-height': 'minHeight',
145
+ // Positioning
146
+ 'z-index': 'zIndex',
136
147
  // Colors
137
148
  bg: 'backgroundColor', c: 'color', bc: 'borderColor',
138
149
  // Typography
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,OAAO,CAAC;AAEpC,2EAA2E;AAC3E,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;CAmBzB,CAAC;AAEF,2EAA2E;AAC3E,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,SAAS;IACT,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ;IACxC,UAAU;IACV,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW;IACnD,aAAa;IACb,SAAS;IACT,cAAc;IACd,QAAQ,EAAE,OAAO,EAAE,OAAO;IAC1B,QAAQ;IACR,MAAM,EAAE,MAAM;IACd,aAAa;IACb,MAAM,EAAE,KAAK,EAAE,QAAQ;IACvB,OAAO;IACP,OAAO;IACP,UAAU;IACV,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ;IACpD,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW;IACpD,wDAAwD;IACxD,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS;IAClD,MAAM;IACN,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ;IACzC,WAAW;IACX,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ;IAChF,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU;IACxC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM;IAChE,8BAA8B;IAC9B,kBAAkB,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO;IACnD,yDAAyD;IACzD,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI;IAClC,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa;IAC/C,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,QAAQ,EAAE,QAAQ;IAC3B,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,UAAU,EAAE,IAAI;IACxB,OAAO;IACP,oCAAoC;IACpC,MAAM,EAAE,UAAU,EAAE,QAAQ;IAC5B,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS;IAC/C,MAAM,EAAE,SAAS;IACjB,4CAA4C;IAC5C,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc;IACzD,qBAAqB;IACrB,OAAO,EAAE,QAAQ,EAAE,UAAU;IAC7B,YAAY;IACZ,YAAY,EAAE,QAAQ;IACtB,OAAO,EAAE,OAAO,EAAE,YAAY;IAC9B,cAAc;IACd,aAAa;IACb,QAAQ,EAAE,QAAQ;IAClB,kBAAkB;IAClB,UAAU,EAAE,MAAM,EAAE,MAAM;IAC1B,oCAAoC;IACpC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW;IACtD,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe;IACzD,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ;IACvC,SAAS,EAAE,UAAU;IACrB,mCAAmC;IACnC,QAAQ,EAAE,UAAU;IACpB,mCAAmC;IACnC,OAAO;IACP,uCAAuC;IACvC,MAAM,EAAE,SAAS;CACT,CAAC;AAIX,2EAA2E;AAC3E,kFAAkF;AAElF,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;AAE5C,6EAA6E;AAC7E,MAAM,UAAU,mBAAmB,CAAC,OAAe;IACjD,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAQ,UAAgC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACzF,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,eAAe;IAC7B,OAAO,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC;AACpC,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,iBAAiB;IAC/B,iBAAiB,CAAC,KAAK,EAAE,CAAC;AAC5B,CAAC;AAED,0DAA0D;AAC1D,MAAM,CAAC,MAAM,aAAa,GAAwB,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;AAErF,2EAA2E;AAC3E,6EAA6E;AAC7E,kEAAkE;AAClE,MAAM,CAAC,MAAM,gBAAgB,GAA2B;IACtD,UAAU;IACV,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ;IACzB,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,cAAc;IAC5E,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,aAAa;IACxE,SAAS;IACT,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM;IAClC,SAAS;IACT,EAAE,EAAE,iBAAiB,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,aAAa;IACpD,aAAa;IACb,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,WAAW;IACjD,UAAU;IACV,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,aAAa;IACrC,SAAS;IACT,EAAE,EAAE,gBAAgB,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,eAAe;IAC3D,UAAU;IACV,MAAM,EAAE,WAAW;CACpB,CAAC;AAEF,2EAA2E;AAC3E,MAAM,CAAC,MAAM,gBAAgB,GAA2B;IACtD,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,cAAc;IAC3D,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,EAAE,UAAU;IACtD,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM;IAChC,IAAI,EAAE,MAAM;CACb,CAAC"}
1
+ {"version":3,"file":"spec.js","sourceRoot":"","sources":["../src/spec.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,12 @@ export function stylesToTailwind(styles, colors) {
29
29
  case 'padding':
30
30
  classes.push(pxToTw('p', v));
31
31
  break;
32
+ case 'paddingX':
33
+ classes.push(pxToTw('px', v));
34
+ break;
35
+ case 'paddingY':
36
+ classes.push(pxToTw('py', v));
37
+ break;
32
38
  case 'paddingTop':
33
39
  classes.push(pxToTw('pt', v));
34
40
  break;
@@ -44,6 +50,12 @@ export function stylesToTailwind(styles, colors) {
44
50
  case 'margin':
45
51
  classes.push(pxToTw('m', v));
46
52
  break;
53
+ case 'marginX':
54
+ classes.push(pxToTw('mx', v));
55
+ break;
56
+ case 'marginY':
57
+ classes.push(pxToTw('my', v));
58
+ break;
47
59
  case 'marginTop':
48
60
  classes.push(pxToTw('mt', v));
49
61
  break;
@@ -77,6 +89,18 @@ export function stylesToTailwind(styles, colors) {
77
89
  case 'height':
78
90
  v === '100%' ? classes.push('h-full') : classes.push(`h-[${addPx(v)}]`);
79
91
  break;
92
+ case 'maxWidth':
93
+ classes.push(`max-w-[${addPx(v)}]`);
94
+ break;
95
+ case 'minWidth':
96
+ classes.push(`min-w-[${addPx(v)}]`);
97
+ break;
98
+ case 'maxHeight':
99
+ classes.push(`max-h-[${addPx(v)}]`);
100
+ break;
101
+ case 'minHeight':
102
+ classes.push(`min-h-[${addPx(v)}]`);
103
+ break;
80
104
  case 'justifyContent':
81
105
  if (v === 'space-between')
82
106
  classes.push('justify-between');
@@ -145,6 +169,11 @@ export function stylesToTailwind(styles, colors) {
145
169
  return classes.join(' ');
146
170
  }
147
171
  export function pxToTw(prefix, v) {
172
+ // Tailwind-native keyword values
173
+ if (v === 'auto')
174
+ return `${prefix}-auto`;
175
+ if (v === '0')
176
+ return `${prefix}-0`;
148
177
  const n = Number(v);
149
178
  if (isNaN(n))
150
179
  return `${prefix}-[${v}]`;
@@ -1 +1 @@
1
- {"version":3,"file":"styles-tailwind.js","sourceRoot":"","sources":["../src/styles-tailwind.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"styles-tailwind.js","sourceRoot":"","sources":["../src/styles-tailwind.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@
5
5
  * Templates are registered at config/CLI time, then expanded during codegen.
6
6
  */
7
7
  import type { IRNode, TemplateDefinition } from './types.js';
8
+ import { type KernRuntime } from './runtime.js';
8
9
  export declare class KernTemplateError extends Error {
9
10
  constructor(message: string);
10
11
  }
@@ -14,7 +15,7 @@ export declare class KernTemplateError extends Error {
14
15
  */
15
16
  export declare function registerTemplate(node: IRNode, sourceFile?: string): void;
16
17
  /** Check if a node type matches a registered template. */
17
- export declare function isTemplateNode(type: string): boolean;
18
+ export declare function isTemplateNode(type: string, runtime?: KernRuntime): boolean;
18
19
  /** Clear all registered templates (for test isolation). */
19
20
  export declare function clearTemplates(): void;
20
21
  /** Get a registered template definition by name. */
@@ -30,4 +31,4 @@ export declare function templateCount(): number;
30
31
  * 4. Handle {{CHILDREN}}: iterate child nodes through codegen
31
32
  * 5. Prepend import lines
32
33
  */
33
- export declare function expandTemplateNode(node: IRNode, _depth?: number): string[];
34
+ export declare function expandTemplateNode(node: IRNode, _depth?: number, runtime?: KernRuntime): string[];
@@ -5,8 +5,8 @@
5
5
  * Templates are registered at config/CLI time, then expanded during codegen.
6
6
  */
7
7
  import { generateCoreNode, emitIdentifier, emitTemplateSafe } from './codegen-core.js';
8
- // ── Registry ────────────────────────────────────────────────────────────
9
- const _registry = new Map();
8
+ import { defaultRuntime } from './runtime.js';
9
+ // ── Registry now delegates to defaultRuntime ──────────────────────────
10
10
  const MAX_EXPANSION_DEPTH = 10;
11
11
  // ── Errors ──────────────────────────────────────────────────────────────
12
12
  export class KernTemplateError extends Error {
@@ -82,23 +82,24 @@ export function registerTemplate(node, sourceFile) {
82
82
  throw new KernTemplateError(`Template '${name}': must have a body <<< >>> block`);
83
83
  }
84
84
  const body = p(bodyNode).code || '';
85
- _registry.set(name, { name, slots, imports, body, sourceFile });
85
+ defaultRuntime.registerTemplate(name, { name, slots, imports, body, sourceFile });
86
86
  }
87
87
  /** Check if a node type matches a registered template. */
88
- export function isTemplateNode(type) {
89
- return _registry.has(type);
88
+ export function isTemplateNode(type, runtime) {
89
+ const rt = runtime ?? defaultRuntime;
90
+ return rt.isTemplateNode(type);
90
91
  }
91
92
  /** Clear all registered templates (for test isolation). */
92
93
  export function clearTemplates() {
93
- _registry.clear();
94
+ defaultRuntime.clearTemplates();
94
95
  }
95
96
  /** Get a registered template definition by name. */
96
97
  export function getTemplate(name) {
97
- return _registry.get(name);
98
+ return defaultRuntime.getTemplate(name);
98
99
  }
99
100
  /** Get count of registered templates. */
100
101
  export function templateCount() {
101
- return _registry.size;
102
+ return defaultRuntime.templateCount();
102
103
  }
103
104
  // ── Expansion ───────────────────────────────────────────────────────────
104
105
  /** Strip common leading whitespace from multiline body text. */
@@ -119,11 +120,12 @@ function dedentBody(code) {
119
120
  * 4. Handle {{CHILDREN}}: iterate child nodes through codegen
120
121
  * 5. Prepend import lines
121
122
  */
122
- export function expandTemplateNode(node, _depth = 0) {
123
+ export function expandTemplateNode(node, _depth = 0, runtime) {
124
+ const rt = runtime ?? defaultRuntime;
123
125
  if (_depth > MAX_EXPANSION_DEPTH) {
124
126
  throw new KernTemplateError(`Template expansion depth exceeded ${MAX_EXPANSION_DEPTH} — possible recursion in template '${node.type}'`);
125
127
  }
126
- const template = _registry.get(node.type);
128
+ const template = rt.templateRegistry.get(node.type);
127
129
  if (!template) {
128
130
  throw new KernTemplateError(`No template registered for type '${node.type}'`);
129
131
  }
@@ -160,9 +162,9 @@ export function expandTemplateNode(node, _depth = 0) {
160
162
  }
161
163
  else {
162
164
  // Other children go through codegen (supports nested templates)
163
- const expanded = isTemplateNode(child.type)
164
- ? expandTemplateNode(child, _depth + 1)
165
- : generateCoreNode(child);
165
+ const expanded = isTemplateNode(child.type, rt)
166
+ ? expandTemplateNode(child, _depth + 1, rt)
167
+ : generateCoreNode(child, undefined, rt);
166
168
  childrenLines.push(...expanded);
167
169
  }
168
170
  }
@@ -1 +1 @@
1
- {"version":3,"file":"template-engine.js","sourceRoot":"","sources":["../src/template-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template-engine.js","sourceRoot":"","sources":["../src/template-engine.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -80,6 +80,21 @@ export interface TranspileResult {
80
80
  /** Node-level diagnostics (never silently drop) */
81
81
  diagnostics?: TranspileDiagnostic[];
82
82
  }
83
+ export type ParseErrorCode = 'UNCLOSED_EXPR' | 'UNCLOSED_STYLE' | 'UNCLOSED_STRING' | 'UNEXPECTED_TOKEN' | 'EMPTY_DOCUMENT' | 'INVALID_INDENT' | 'UNKNOWN_NODE_TYPE' | 'INDENT_JUMP' | 'DUPLICATE_PROP' | 'DROPPED_LINE';
84
+ export type ParseDiagnosticSeverity = 'error' | 'warning' | 'info';
85
+ export interface ParseDiagnostic {
86
+ code: ParseErrorCode;
87
+ severity: ParseDiagnosticSeverity;
88
+ message: string;
89
+ line: number;
90
+ col: number;
91
+ endCol: number;
92
+ suggestion: string;
93
+ }
94
+ export interface ParseResult {
95
+ root: IRNode;
96
+ diagnostics: ParseDiagnostic[];
97
+ }
83
98
  /** Result of decompilation (IR → human-readable) */
84
99
  export interface DecompileResult {
85
100
  /** Human-readable TypeScript representation */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kernlang/core",
3
- "version": "3.1.3",
3
+ "version": "3.1.4",
4
4
  "description": "Kern core — parser, types, spec, config, style engines, codegen",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -9,6 +9,26 @@
9
9
  ".": {
10
10
  "types": "./dist/index.d.ts",
11
11
  "default": "./dist/index.js"
12
+ },
13
+ "./codegen": {
14
+ "types": "./dist/codegen-core.d.ts",
15
+ "default": "./dist/codegen-core.js"
16
+ },
17
+ "./codegen/emitters": {
18
+ "types": "./dist/codegen/emitters.d.ts",
19
+ "default": "./dist/codegen/emitters.js"
20
+ },
21
+ "./codegen/helpers": {
22
+ "types": "./dist/codegen/helpers.d.ts",
23
+ "default": "./dist/codegen/helpers.js"
24
+ },
25
+ "./runtime": {
26
+ "types": "./dist/runtime.d.ts",
27
+ "default": "./dist/runtime.js"
28
+ },
29
+ "./schema": {
30
+ "types": "./dist/schema.d.ts",
31
+ "default": "./dist/schema.js"
12
32
  }
13
33
  },
14
34
  "files": [