@kernlang/core 3.2.3 → 3.3.5

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.
Files changed (59) hide show
  1. package/dist/codegen/events.js +48 -5
  2. package/dist/codegen/events.js.map +1 -1
  3. package/dist/codegen/functions.js +19 -0
  4. package/dist/codegen/functions.js.map +1 -1
  5. package/dist/codegen/ground-layer.d.ts +3 -0
  6. package/dist/codegen/ground-layer.js +130 -0
  7. package/dist/codegen/ground-layer.js.map +1 -1
  8. package/dist/codegen/screens.js +227 -1
  9. package/dist/codegen/screens.js.map +1 -1
  10. package/dist/codegen/type-system.d.ts +1 -0
  11. package/dist/codegen/type-system.js +107 -24
  12. package/dist/codegen/type-system.js.map +1 -1
  13. package/dist/codegen-core.d.ts +2 -2
  14. package/dist/codegen-core.js +49 -7
  15. package/dist/codegen-core.js.map +1 -1
  16. package/dist/concepts.d.ts +19 -0
  17. package/dist/concepts.js.map +1 -1
  18. package/dist/config.d.ts +19 -0
  19. package/dist/config.js +10 -0
  20. package/dist/config.js.map +1 -1
  21. package/dist/coverage-gap.d.ts +15 -0
  22. package/dist/coverage-gap.js +17 -5
  23. package/dist/coverage-gap.js.map +1 -1
  24. package/dist/decompiler.js +56 -0
  25. package/dist/decompiler.js.map +1 -1
  26. package/dist/importer.js +82 -17
  27. package/dist/importer.js.map +1 -1
  28. package/dist/index.d.ts +7 -3
  29. package/dist/index.js +4 -2
  30. package/dist/index.js.map +1 -1
  31. package/dist/migrate-literals.d.ts +44 -0
  32. package/dist/migrate-literals.js +69 -0
  33. package/dist/migrate-literals.js.map +1 -0
  34. package/dist/node-props.d.ts +51 -3
  35. package/dist/node-props.js.map +1 -1
  36. package/dist/parser-core.js +90 -1
  37. package/dist/parser-core.js.map +1 -1
  38. package/dist/runtime.js +1 -1
  39. package/dist/runtime.js.map +1 -1
  40. package/dist/scanner.js +11 -1
  41. package/dist/scanner.js.map +1 -1
  42. package/dist/schema.js +115 -11
  43. package/dist/schema.js.map +1 -1
  44. package/dist/semantic-validator.d.ts +6 -0
  45. package/dist/semantic-validator.js +93 -3
  46. package/dist/semantic-validator.js.map +1 -1
  47. package/dist/shadow-analyzer.d.ts +22 -0
  48. package/dist/shadow-analyzer.js +593 -0
  49. package/dist/shadow-analyzer.js.map +1 -0
  50. package/dist/spec.d.ts +2 -2
  51. package/dist/spec.js +13 -1
  52. package/dist/spec.js.map +1 -1
  53. package/dist/version-adapters.d.ts +14 -0
  54. package/dist/version-adapters.js +23 -1
  55. package/dist/version-adapters.js.map +1 -1
  56. package/dist/version-detect.d.ts +7 -0
  57. package/dist/version-detect.js +17 -0
  58. package/dist/version-detect.js.map +1 -1
  59. package/package.json +9 -1
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 = '2.0.0';
12
+ export const KERN_VERSION = '3.3.5';
13
13
  // ── Grammar ─────────────────────────────────────────────────────────────
14
14
  export const IR_GRAMMAR = `
15
15
  document = node+
@@ -113,6 +113,7 @@ export const NODE_TYPES = [
113
113
  'dispatch',
114
114
  'then',
115
115
  'each',
116
+ 'let',
116
117
  // Next.js App Router
117
118
  'layout',
118
119
  'loading',
@@ -131,7 +132,10 @@ export const NODE_TYPES = [
131
132
  'union',
132
133
  'variant',
133
134
  'service',
135
+ 'class',
134
136
  'method',
137
+ 'getter',
138
+ 'setter',
135
139
  'singleton',
136
140
  'constructor',
137
141
  'signal',
@@ -180,6 +184,8 @@ export const NODE_TYPES = [
180
184
  'layout-stack',
181
185
  'spacer',
182
186
  'screen-embed',
187
+ 'alternate-screen',
188
+ 'scroll-box',
183
189
  // Backend data layer
184
190
  'model',
185
191
  'column',
@@ -192,6 +198,8 @@ export const NODE_TYPES = [
192
198
  'invalidate',
193
199
  // UI controls
194
200
  'conditional',
201
+ 'else',
202
+ 'elseif',
195
203
  'component',
196
204
  'select',
197
205
  'option',
@@ -204,8 +212,12 @@ export const NODE_TYPES = [
204
212
  'body',
205
213
  // Ground layer — semantic reasoning
206
214
  'derive',
215
+ 'fmt',
216
+ 'set',
217
+ 'async',
207
218
  'transform',
208
219
  'action',
220
+ 'actionRegistry',
209
221
  'assume',
210
222
  'invariant',
211
223
  'branch',
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;IACR,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,QAAQ;IACR,UAAU;IACV,MAAM;IACN,OAAO;IACP,UAAU;IACV,SAAS;IACT,WAAW;IACX,aAAa;IACb,SAAS;IACT,MAAM;IACN,cAAc;IACd,QAAQ;IACR,OAAO;IACP,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,MAAM;IACN,MAAM;IACN,aAAa;IACb,MAAM;IACN,KAAK;IACL,QAAQ;IACR,MAAM;IACN,OAAO;IACP,OAAO;IACP,KAAK;IACL,UAAU;IACV,QAAQ;IACR,OAAO;IACP,YAAY;IACZ,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,OAAO;IACP,IAAI;IACJ,KAAK;IACL,WAAW;IACX,wDAAwD;IACxD,QAAQ;IACR,MAAM;IACN,UAAU;IACV,SAAS;IACT,SAAS;IACT,MAAM;IACN,KAAK;IACL,SAAS;IACT,KAAK;IACL,MAAM;IACN,QAAQ;IACR,WAAW;IACX,WAAW;IACX,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,YAAY;IACZ,QAAQ;IACR,SAAS;IACT,KAAK;IACL,UAAU;IACV,OAAO;IACP,WAAW;IACX,MAAM;IACN,OAAO;IACP,UAAU;IACV,UAAU;IACV,MAAM;IACN,MAAM;IACN,qBAAqB;IACrB,QAAQ;IACR,SAAS;IACT,8BAA8B;IAC9B,UAAU;IACV,kBAAkB;IAClB,UAAU;IACV,UAAU;IACV,OAAO;IACP,yDAAyD;IACzD,MAAM;IACN,WAAW;IACX,OAAO;IACP,IAAI;IACJ,OAAO;IACP,OAAO;IACP,SAAS;IACT,SAAS;IACT,QAAQ;IACR,WAAW;IACX,aAAa;IACb,QAAQ;IACR,SAAS;IACT,SAAS;IACT,YAAY;IACZ,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,MAAM;IACN,UAAU;IACV,IAAI;IACJ,OAAO;IACP,oCAAoC;IACpC,MAAM;IACN,UAAU;IACV,QAAQ;IACR,OAAO;IACP,MAAM;IACN,UAAU;IACV,KAAK;IACL,SAAS;IACT,MAAM;IACN,SAAS;IACT,QAAQ;IACR,4CAA4C;IAC5C,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,cAAc;IACd,cAAc;IACd,eAAe;IACf,gBAAgB;IAChB,gBAAgB;IAChB,OAAO;IACP,cAAc;IACd,gBAAgB;IAChB,OAAO;IACP,UAAU;IACV,YAAY;IACZ,SAAS;IACT,YAAY;IACZ,YAAY;IACZ,cAAc;IACd,QAAQ;IACR,cAAc;IACd,qBAAqB;IACrB,OAAO;IACP,QAAQ;IACR,UAAU;IACV,YAAY;IACZ,YAAY;IACZ,QAAQ;IACR,OAAO;IACP,OAAO;IACP,YAAY;IACZ,cAAc;IACd,aAAa;IACb,WAAW;IACX,QAAQ;IACR,QAAQ;IACR,WAAW;IACX,MAAM;IACN,KAAK;IACL,kBAAkB;IAClB,UAAU;IACV,MAAM;IACN,MAAM;IACN,oCAAoC;IACpC,QAAQ;IACR,WAAW;IACX,QAAQ;IACR,QAAQ;IACR,WAAW;IACX,QAAQ;IACR,MAAM;IACN,SAAS;IACT,WAAW;IACX,eAAe;IACf,SAAS;IACT,SAAS;IACT,OAAO;IACP,QAAQ;IACR,SAAS;IACT,UAAU;IACV,mCAAmC;IACnC,QAAQ;IACR,UAAU;IACV,mCAAmC;IACnC,OAAO;IACP,uCAAuC;IACvC,MAAM;IACN,SAAS;IACT,kDAAkD;IAClD,KAAK;IACL,MAAM;IACN,UAAU;IACV,QAAQ;IACR,OAAO;IACP,aAAa;IACb,UAAU;IACV,aAAa;CACL,CAAC;AAIX,2EAA2E;AAC3E,kFAAkF;AAElF,OAAO,EAAE,cAAc,EAAoB,MAAM,cAAc,CAAC;AAEhE,6EAA6E;AAC7E,MAAM,UAAU,mBAAmB,CAAC,OAAe;IACjD,cAAc,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;AAC9C,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,cAAc,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAChD,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,OAAqB;IACjE,MAAM,EAAE,GAAG,OAAO,IAAI,cAAc,CAAC;IACrC,OAAQ,UAAgC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC3F,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,eAAe;IAC7B,OAAO,cAAc,CAAC,eAAe,EAAE,CAAC;AAC1C,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,iBAAiB;IAC/B,cAAc,CAAC,iBAAiB,EAAE,CAAC;AACrC,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;IACZ,CAAC,EAAE,QAAQ;IACX,EAAE,EAAE,UAAU;IACd,EAAE,EAAE,UAAU;IACd,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE,eAAe;IACnB,EAAE,EAAE,aAAa;IACjB,EAAE,EAAE,cAAc;IAClB,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,cAAc;IAClB,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE,aAAa;IACjB,SAAS;IACT,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,QAAQ;IACX,CAAC,EAAE,MAAM;IACT,WAAW,EAAE,UAAU;IACvB,WAAW,EAAE,UAAU;IACvB,YAAY,EAAE,WAAW;IACzB,YAAY,EAAE,WAAW;IACzB,cAAc;IACd,SAAS,EAAE,QAAQ;IACnB,SAAS;IACT,EAAE,EAAE,iBAAiB;IACrB,CAAC,EAAE,OAAO;IACV,EAAE,EAAE,aAAa;IACjB,aAAa;IACb,EAAE,EAAE,UAAU;IACd,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE,WAAW;IACf,UAAU;IACV,EAAE,EAAE,cAAc;IAClB,EAAE,EAAE,aAAa;IACjB,SAAS;IACT,EAAE,EAAE,gBAAgB;IACpB,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE,eAAe;IACnB,UAAU;IACV,MAAM,EAAE,WAAW;CACpB,CAAC;AAEF,2EAA2E;AAC3E,MAAM,CAAC,MAAM,gBAAgB,GAA2B;IACtD,EAAE,EAAE,eAAe;IACnB,EAAE,EAAE,cAAc;IAClB,EAAE,EAAE,cAAc;IAClB,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,YAAY;IACnB,GAAG,EAAE,UAAU;IACf,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;CACb,CAAC"}
1
+ {"version":3,"file":"spec.js","sourceRoot":"","sources":["../src/spec.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,19 @@
9
9
  * Shared across all targets that use Tailwind (React, Vue, Svelte).
10
10
  */
11
11
  import type { FrameworkVersions } from './config.js';
12
+ export interface ReactOutputRules {
13
+ /** Whether React action hooks like useActionState are available */
14
+ supportsActions: boolean;
15
+ /** Whether React 19's useEffectEvent hook is available */
16
+ supportsEffectEvent: boolean;
17
+ /** Whether UMD globals are available for preview/runtime bootstrapping */
18
+ supportsUmdBuilds: boolean;
19
+ }
20
+ export interface ReactVersionProfile {
21
+ major: 18 | 19;
22
+ outputRules: ReactOutputRules;
23
+ }
24
+ export declare function buildReactProfile(versions: FrameworkVersions): ReactVersionProfile;
12
25
  /**
13
26
  * A token rule transforms individual Tailwind class names.
14
27
  * If the predicate matches, the transform function is applied.
@@ -70,6 +83,7 @@ export interface NextjsVersionProfile {
70
83
  }
71
84
  export declare function buildNextjsProfile(versions: FrameworkVersions): NextjsVersionProfile;
72
85
  export interface VersionProfile {
86
+ react: ReactVersionProfile;
73
87
  tailwind: TailwindVersionProfile;
74
88
  nextjs: NextjsVersionProfile;
75
89
  }
@@ -8,7 +8,28 @@
8
8
  * Stored as TypeScript modules so they can hold predicates and transforms.
9
9
  * Shared across all targets that use Tailwind (React, Vue, Svelte).
10
10
  */
11
- import { resolveNextjsMajor, resolveTailwindMajor } from './version-detect.js';
11
+ import { resolveNextjsMajor, resolveReactMajor, resolveTailwindMajor } from './version-detect.js';
12
+ export function buildReactProfile(versions) {
13
+ const major = resolveReactMajor(versions);
14
+ if (major >= 19) {
15
+ return {
16
+ major: 19,
17
+ outputRules: {
18
+ supportsActions: true,
19
+ supportsEffectEvent: true,
20
+ supportsUmdBuilds: false,
21
+ },
22
+ };
23
+ }
24
+ return {
25
+ major: 18,
26
+ outputRules: {
27
+ supportsActions: false,
28
+ supportsEffectEvent: false,
29
+ supportsUmdBuilds: true,
30
+ },
31
+ };
32
+ }
12
33
  // ── Token rules for Tailwind v3 -> v4 migration ────────────────────────
13
34
  const TW_V4_TOKEN_RULES = [
14
35
  {
@@ -175,6 +196,7 @@ export function buildNextjsProfile(versions) {
175
196
  }
176
197
  export function buildVersionProfile(versions) {
177
198
  return {
199
+ react: buildReactProfile(versions),
178
200
  tailwind: buildTailwindProfile(versions),
179
201
  nextjs: buildNextjsProfile(versions),
180
202
  };
@@ -1 +1 @@
1
- {"version":3,"file":"version-adapters.js","sourceRoot":"","sources":["../src/version-adapters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"version-adapters.js","sourceRoot":"","sources":["../src/version-adapters.ts"],"names":[],"mappings":"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"}
@@ -14,10 +14,17 @@ export declare function parseMajorVersion(version: string): number;
14
14
  * Detect framework versions from a parsed package.json object.
15
15
  *
16
16
  * Looks in both dependencies and devDependencies for:
17
+ * - react -> react version
17
18
  * - tailwindcss -> tailwind version
18
19
  * - next -> nextjs version
19
20
  */
20
21
  export declare function detectVersionsFromPackageJson(packageJson: Record<string, unknown>): FrameworkVersions;
22
+ /**
23
+ * Resolve the effective React major version.
24
+ * Defaults to 19 when unspecified because React 19 is the current baseline.
25
+ * Future majors collapse to 19 until they gain explicit adapters.
26
+ */
27
+ export declare function resolveReactMajor(versions: FrameworkVersions): 18 | 19;
21
28
  /**
22
29
  * Resolve the effective Tailwind major version.
23
30
  * Defaults to 3 when unspecified (backward-compatible).
@@ -17,6 +17,7 @@ export function parseMajorVersion(version) {
17
17
  * Detect framework versions from a parsed package.json object.
18
18
  *
19
19
  * Looks in both dependencies and devDependencies for:
20
+ * - react -> react version
20
21
  * - tailwindcss -> tailwind version
21
22
  * - next -> nextjs version
22
23
  */
@@ -24,6 +25,11 @@ export function detectVersionsFromPackageJson(packageJson) {
24
25
  const versions = {};
25
26
  const deps = (packageJson.dependencies ?? {});
26
27
  const devDeps = (packageJson.devDependencies ?? {});
28
+ // React
29
+ const reactVersion = deps.react ?? devDeps.react;
30
+ if (reactVersion) {
31
+ versions.react = reactVersion;
32
+ }
27
33
  // Tailwind CSS
28
34
  const twVersion = devDeps.tailwindcss ?? deps.tailwindcss;
29
35
  if (twVersion) {
@@ -36,6 +42,17 @@ export function detectVersionsFromPackageJson(packageJson) {
36
42
  }
37
43
  return versions;
38
44
  }
45
+ /**
46
+ * Resolve the effective React major version.
47
+ * Defaults to 19 when unspecified because React 19 is the current baseline.
48
+ * Future majors collapse to 19 until they gain explicit adapters.
49
+ */
50
+ export function resolveReactMajor(versions) {
51
+ if (!versions.react)
52
+ return 19;
53
+ const major = parseMajorVersion(versions.react);
54
+ return major <= 18 ? 18 : 19;
55
+ }
39
56
  /**
40
57
  * Resolve the effective Tailwind major version.
41
58
  * Defaults to 3 when unspecified (backward-compatible).
@@ -1 +1 @@
1
- {"version":3,"file":"version-detect.js","sourceRoot":"","sources":["../src/version-detect.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1D,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACzC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,6BAA6B,CAAC,WAAoC;IAChF,MAAM,QAAQ,GAAsB,EAAE,CAAC;IAEvC,MAAM,IAAI,GAAG,CAAC,WAAW,CAAC,YAAY,IAAI,EAAE,CAA2B,CAAC;IACxE,MAAM,OAAO,GAAG,CAAC,WAAW,CAAC,eAAe,IAAI,EAAE,CAA2B,CAAC;IAE9E,eAAe;IACf,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC;IAC1D,IAAI,SAAS,EAAE,CAAC;QACd,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAC;IAChC,CAAC;IAED,UAAU;IACV,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAC9C,IAAI,WAAW,EAAE,CAAC;QAChB,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAC;IAChC,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAA2B;IAC9D,IAAI,CAAC,QAAQ,CAAC,QAAQ;QAAE,OAAO,CAAC,CAAC;IACjC,MAAM,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACnD,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAA2B;IAC5D,IAAI,CAAC,QAAQ,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,KAAK,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAC3B,IAAI,KAAK,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAC3B,IAAI,KAAK,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAC3B,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"version-detect.js","sourceRoot":"","sources":["../src/version-detect.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1D,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACzC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,6BAA6B,CAAC,WAAoC;IAChF,MAAM,QAAQ,GAAsB,EAAE,CAAC;IAEvC,MAAM,IAAI,GAAG,CAAC,WAAW,CAAC,YAAY,IAAI,EAAE,CAA2B,CAAC;IACxE,MAAM,OAAO,GAAG,CAAC,WAAW,CAAC,eAAe,IAAI,EAAE,CAA2B,CAAC;IAE9E,QAAQ;IACR,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC;IACjD,IAAI,YAAY,EAAE,CAAC;QACjB,QAAQ,CAAC,KAAK,GAAG,YAAY,CAAC;IAChC,CAAC;IAED,eAAe;IACf,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC;IAC1D,IAAI,SAAS,EAAE,CAAC;QACd,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAC;IAChC,CAAC;IAED,UAAU;IACV,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAC9C,IAAI,WAAW,EAAE,CAAC;QAChB,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAC;IAChC,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAA2B;IAC3D,IAAI,CAAC,QAAQ,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,OAAO,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAA2B;IAC9D,IAAI,CAAC,QAAQ,CAAC,QAAQ;QAAE,OAAO,CAAC,CAAC;IACjC,MAAM,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACnD,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAA2B;IAC5D,IAAI,CAAC,QAAQ,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,KAAK,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAC3B,IAAI,KAAK,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAC3B,IAAI,KAAK,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAC3B,OAAO,EAAE,CAAC;AACZ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kernlang/core",
3
- "version": "3.2.3",
3
+ "version": "3.3.5",
4
4
  "description": "Kern core — parser, types, spec, config, style engines, codegen",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -50,6 +50,14 @@
50
50
  "directory": "packages/core"
51
51
  },
52
52
  "dependencies": {},
53
+ "peerDependencies": {
54
+ "typescript": "^6.0.0"
55
+ },
56
+ "peerDependenciesMeta": {
57
+ "typescript": {
58
+ "optional": true
59
+ }
60
+ },
53
61
  "scripts": {
54
62
  "build": "tsc -b",
55
63
  "test": "node --experimental-vm-modules ../../node_modules/jest/bin/jest.js --config jest.config.js"