@kernlang/core 3.1.6 → 3.1.8

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 (96) hide show
  1. package/dist/codegen/data-layer.js +28 -29
  2. package/dist/codegen/data-layer.js.map +1 -1
  3. package/dist/codegen/emitters.js +1 -4
  4. package/dist/codegen/emitters.js.map +1 -1
  5. package/dist/codegen/events.js +31 -20
  6. package/dist/codegen/events.js.map +1 -1
  7. package/dist/codegen/functions.js +7 -5
  8. package/dist/codegen/functions.js.map +1 -1
  9. package/dist/codegen/ground-layer.js +9 -5
  10. package/dist/codegen/ground-layer.js.map +1 -1
  11. package/dist/codegen/helpers.d.ts +4 -0
  12. package/dist/codegen/helpers.js +43 -7
  13. package/dist/codegen/helpers.js.map +1 -1
  14. package/dist/codegen/machines.js +13 -11
  15. package/dist/codegen/machines.js.map +1 -1
  16. package/dist/codegen/modules.js +5 -2
  17. package/dist/codegen/modules.js.map +1 -1
  18. package/dist/codegen/screens.d.ts +29 -0
  19. package/dist/codegen/screens.js +202 -0
  20. package/dist/codegen/screens.js.map +1 -0
  21. package/dist/codegen/semantic-types.js.map +1 -1
  22. package/dist/codegen/test-gen.js +1 -1
  23. package/dist/codegen/test-gen.js.map +1 -1
  24. package/dist/codegen/type-system.js +36 -18
  25. package/dist/codegen/type-system.js.map +1 -1
  26. package/dist/codegen-core.d.ts +11 -10
  27. package/dist/codegen-core.js +225 -108
  28. package/dist/codegen-core.js.map +1 -1
  29. package/dist/concepts.js.map +1 -1
  30. package/dist/config.js +15 -2
  31. package/dist/config.js.map +1 -1
  32. package/dist/coverage-gap.js +5 -5
  33. package/dist/coverage-gap.js.map +1 -1
  34. package/dist/decompiler.d.ts +1 -1
  35. package/dist/decompiler.js +6 -4
  36. package/dist/decompiler.js.map +1 -1
  37. package/dist/errors.d.ts +3 -1
  38. package/dist/errors.js +4 -2
  39. package/dist/errors.js.map +1 -1
  40. package/dist/importer.d.ts +38 -0
  41. package/dist/importer.js +1135 -0
  42. package/dist/importer.js.map +1 -0
  43. package/dist/index.d.ts +37 -34
  44. package/dist/index.js +38 -38
  45. package/dist/index.js.map +1 -1
  46. package/dist/node-props.d.ts +7 -0
  47. package/dist/node-props.js.map +1 -1
  48. package/dist/parser-core.d.ts +1 -1
  49. package/dist/parser-core.js +65 -9
  50. package/dist/parser-core.js.map +1 -1
  51. package/dist/parser-diagnostics.d.ts +1 -1
  52. package/dist/parser-diagnostics.js +3 -2
  53. package/dist/parser-diagnostics.js.map +1 -1
  54. package/dist/parser-keywords.d.ts +1 -1
  55. package/dist/parser-keywords.js +119 -27
  56. package/dist/parser-keywords.js.map +1 -1
  57. package/dist/parser-token-stream.js +18 -6
  58. package/dist/parser-token-stream.js.map +1 -1
  59. package/dist/parser-tokenizer.js.map +1 -1
  60. package/dist/parser.d.ts +3 -3
  61. package/dist/parser.js +15 -4
  62. package/dist/parser.js.map +1 -1
  63. package/dist/runtime.js +1 -1
  64. package/dist/runtime.js.map +1 -1
  65. package/dist/scanner.js +85 -25
  66. package/dist/scanner.js.map +1 -1
  67. package/dist/schema.d.ts +25 -0
  68. package/dist/schema.js +442 -4
  69. package/dist/schema.js.map +1 -1
  70. package/dist/semantic-validator.d.ts +20 -0
  71. package/dist/semantic-validator.js +82 -0
  72. package/dist/semantic-validator.js.map +1 -0
  73. package/dist/source-map.js +2 -2
  74. package/dist/source-map.js.map +1 -1
  75. package/dist/spec.d.ts +1 -1
  76. package/dist/spec.js +197 -56
  77. package/dist/spec.js.map +1 -1
  78. package/dist/styles-react.js +1 -1
  79. package/dist/styles-react.js.map +1 -1
  80. package/dist/styles-tailwind.js +52 -15
  81. package/dist/styles-tailwind.js.map +1 -1
  82. package/dist/template-catalog.js +1 -1
  83. package/dist/template-catalog.js.map +1 -1
  84. package/dist/template-engine.d.ts +1 -1
  85. package/dist/template-engine.js +10 -7
  86. package/dist/template-engine.js.map +1 -1
  87. package/dist/utils.d.ts +1 -1
  88. package/dist/utils.js +9 -5
  89. package/dist/utils.js.map +1 -1
  90. package/dist/version-adapters.js +1 -2
  91. package/dist/version-adapters.js.map +1 -1
  92. package/dist/version-detect.js +3 -3
  93. package/dist/version-detect.js.map +1 -1
  94. package/dist/walk.js +6 -2
  95. package/dist/walk.js.map +1 -1
  96. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"importer.js","sourceRoot":"","sources":["../src/importer.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,41 +1,44 @@
1
1
  /**
2
2
  * @kernlang/core — parser, types, spec, config, style engines, codegen
3
3
  */
4
- export { KernRuntime, defaultRuntime } from './runtime.js';
5
- export type { ParserHintsConfig } from './runtime.js';
6
- export { parse, parseDocument, parseWithDiagnostics, parseDocumentWithDiagnostics, parseStrict, parseDocumentStrict, getParseDiagnostics, getParseWarnings, registerParserHints, unregisterParserHints, clearParserHints, tokenizeLine } from './parser.js';
7
- export type { Token, TokenKind } from './parser.js';
8
- export { decompile } from './decompiler.js';
9
- export { KernParseError, KernConfigError } from './errors.js';
10
- export type { ExprObject, IRNode, IRSourceLocation, SourceMapEntry, TranspileResult, TranspileDiagnostic, DiagnosticOutcome, DecompileResult, GeneratedArtifact, KernEngine, ParseDiagnostic, ParseDiagnosticSeverity, ParseErrorCode, ParseResult, } from './types.js';
11
- export { resolveConfig, mergeConfig, DEFAULT_CONFIG, VALID_TARGETS, VALID_STRUCTURES } from './config.js';
12
- export type { KernConfig, KernTarget, KernStructure, ResolvedKernConfig, FrameworkVersions, ExpressSecurityLevel } from './config.js';
13
- export { parseMajorVersion, detectVersionsFromPackageJson, resolveTailwindMajor, resolveNextjsMajor } from './version-detect.js';
14
- export { buildTailwindProfile, buildNextjsProfile, buildVersionProfile, applyTailwindTokenRules, } from './version-adapters.js';
15
- export type { TailwindTokenRule, TailwindOutputRules, TailwindVersionProfile, NextjsOutputRules, NextjsVersionProfile, VersionProfile, } from './version-adapters.js';
16
- export { KERN_VERSION, NODE_TYPES, STYLE_SHORTHANDS, VALUE_SHORTHANDS, registerEvolvedType, unregisterEvolvedType, isKnownNodeType, getEvolvedTypes, clearEvolvedTypes, KERN_RESERVED, } from './spec.js';
17
- export { validateSchema, NODE_SCHEMAS } from './schema.js';
18
- export type { NodeSchema, PropSchema, PropKind, SchemaViolation } from './schema.js';
19
- export { stylesToTailwind, colorToTw, pxToTw, DEFAULT_COLORS } from './styles-tailwind.js';
20
- export { expandStyles, expandStyleKey, expandStyleValue } from './styles-react.js';
21
- export { generateCoreNode, isCoreNode, CORE_NODE_TYPES, generateMachineReducer, emitIdentifier, emitStringLiteral, emitPath, emitTemplateSafe, emitTypeAnnotation, emitImportSpecifier, getProps, getChildren, getFirstChild, getStyles, getPseudoStyles, getThemeRefs, dedent, cssPropertyName, handlerCode, exportPrefix, parseParamList, capitalize, emitReasonAnnotations, emitLowConfidenceTodo, registerEvolvedGenerator, registerEvolvedTargetGenerator, unregisterEvolvedGenerator, clearEvolvedGenerators, hasEvolvedGenerator, mapSemanticType, SEMANTIC_TYPE_MAP, } from './codegen-core.js';
22
4
  export type { SemanticTypeMapping } from './codegen-core.js';
23
- export { KernCodegenError } from './errors.js';
24
- export { registerTemplate, isTemplateNode, expandTemplateNode, clearTemplates, getTemplate, templateCount, KernTemplateError, } from './template-engine.js';
25
- export type { TemplateDefinition, TemplateSlot, TemplateImport, TemplateSlotType } from './types.js';
26
- export { collectCoverageGaps, writeCoverageGaps, readCoverageGaps } from './coverage-gap.js';
27
- export type { CoverageGap } from './coverage-gap.js';
28
- export { TEMPLATE_CATALOG, COMMON_TEMPLATES, detectTemplates } from './template-catalog.js';
29
- export type { CatalogEntry } from './template-catalog.js';
30
- export { scanProject, generateConfigSource, formatScanSummary } from './scanner.js';
31
- export type { ScanResult, ScanInfo, Detection } from './scanner.js';
5
+ export { CORE_NODE_TYPES, capitalize, clearEvolvedGenerators, cssPropertyName, dedent, emitIdentifier, emitImportSpecifier, emitLowConfidenceTodo, emitPath, emitReasonAnnotations, emitStringLiteral, emitTemplateSafe, emitTypeAnnotation, exportPrefix, generateCoreNode, generateMachineReducer, getChildren, getFirstChild, getProps, getPseudoStyles, getStyles, getThemeRefs, handlerCode, hasEvolvedGenerator, isCoreNode, mapSemanticType, parseParamList, registerEvolvedGenerator, registerEvolvedTargetGenerator, SEMANTIC_TYPE_MAP, sourceComment, unregisterEvolvedGenerator, } from './codegen-core.js';
6
+ export type { CallPayload, ConceptEdge, ConceptEdgeKind, ConceptEdgePayload, ConceptMap, ConceptNode, ConceptNodeKind, ConceptNodePayload, ConceptSpan, DependencyPayload, EffectPayload, EntrypointPayload, ErrorHandlePayload, ErrorRaisePayload, FunctionDeclarationPayload, GuardPayload, StateMutationPayload, } from './concepts.js';
32
7
  export { conceptId, conceptSpan } from './concepts.js';
33
- export type { ConceptNode, ConceptEdge, ConceptMap, ConceptSpan, ConceptNodeKind, ConceptEdgeKind, ConceptNodePayload, ConceptEdgePayload, EntrypointPayload, EffectPayload, StateMutationPayload, FunctionDeclarationPayload, ErrorRaisePayload, ErrorHandlePayload, GuardPayload, CallPayload, DependencyPayload, } from './concepts.js';
34
- export { countTokens, serializeIR, camelKey, escapeJsx, escapeJsxText, escapeJsxAttr, escapeJsString, buildDiagnostics, accountNode } from './utils.js';
35
- export type { AccountedEntry } from './utils.js';
36
- export { walkIR, getNodeAtPosition } from './walk.js';
37
- export type { WalkContext, VisitorFn, Visitor, VisitorMap } from './walk.js';
8
+ export type { ExpressSecurityLevel, FrameworkVersions, KernConfig, KernStructure, KernTarget, ResolvedKernConfig, } from './config.js';
9
+ export { DEFAULT_CONFIG, mergeConfig, resolveConfig, VALID_STRUCTURES, VALID_TARGETS } from './config.js';
10
+ export type { CoverageGap } from './coverage-gap.js';
11
+ export { collectCoverageGaps, readCoverageGaps, writeCoverageGaps } from './coverage-gap.js';
12
+ export { decompile } from './decompiler.js';
13
+ export type { CodegenErrorCode } from './errors.js';
14
+ export { KernCodegenError, KernConfigError, KernParseError } from './errors.js';
15
+ export type { ImportResult } from './importer.js';
16
+ export { importTypeScript } from './importer.js';
17
+ export type { ActionProps, AssumeProps, BranchProps, CacheProps, CollectProps, ColumnProps, ConditionalProps, ConfigProps, ConstProps, DependencyProps, DeriveProps, EachProps, ErrorProps, EventProps, ExpectProps, FieldProps, FnProps, GuardProps, ImportProps, InterfaceProps, InvariantProps, MachineProps, MethodProps, ModelProps, ModuleProps, NodePropsMap, OnProps, OptionProps, PatternProps, RecoverProps, RelationProps, RepositoryProps, ResolveProps, SelectProps, ServiceProps, StateProps, StoreProps, TestProps, TransformProps, TransitionProps, TypeProps, UnionProps, VariantProps, WebSocketProps, } from './node-props.js';
38
18
  export { propsOf, propsUntyped } from './node-props.js';
39
- export type { NodePropsMap, TypeProps, InterfaceProps, UnionProps, ServiceProps, ConstProps, FnProps, ErrorProps, MachineProps, ConfigProps, StoreProps, RepositoryProps, CacheProps, DependencyProps, ModelProps, EventProps, OnProps, WebSocketProps, DeriveProps, TransformProps, ActionProps, GuardProps, AssumeProps, InvariantProps, EachProps, CollectProps, BranchProps, ResolveProps, ExpectProps, RecoverProps, PatternProps, ConditionalProps, SelectProps, ModuleProps, ImportProps, FieldProps, VariantProps, MethodProps, TransitionProps, StateProps, ColumnProps, RelationProps, OptionProps, TestProps, } from './node-props.js';
40
- export { serializeSourceMap } from './source-map.js';
19
+ export type { Token, TokenKind } from './parser.js';
20
+ export { clearParserHints, getParseDiagnostics, getParseWarnings, parse, parseDocument, parseDocumentStrict, parseDocumentWithDiagnostics, parseStrict, parseWithDiagnostics, registerParserHints, tokenizeLine, unregisterParserHints, } from './parser.js';
21
+ export type { ParserHintsConfig } from './runtime.js';
22
+ export { defaultRuntime, KernRuntime } from './runtime.js';
23
+ export type { Detection, ScanInfo, ScanResult } from './scanner.js';
24
+ export { formatScanSummary, generateConfigSource, scanProject } from './scanner.js';
25
+ export type { KernSchemaJSON, NodeSchema, PropKind, PropSchema, SchemaViolation } from './schema.js';
26
+ export { exportSchemaJSON, NODE_SCHEMAS, validateSchema } from './schema.js';
27
+ export type { SemanticViolation } from './semantic-validator.js';
28
+ export { validateSemantics } from './semantic-validator.js';
41
29
  export type { SourceMapV3 } from './source-map.js';
30
+ export { serializeSourceMap } from './source-map.js';
31
+ export { clearEvolvedTypes, getEvolvedTypes, isKnownNodeType, KERN_RESERVED, KERN_VERSION, NODE_TYPES, registerEvolvedType, STYLE_SHORTHANDS, unregisterEvolvedType, VALUE_SHORTHANDS, } from './spec.js';
32
+ export { expandStyleKey, expandStyles, expandStyleValue } from './styles-react.js';
33
+ export { colorToTw, DEFAULT_COLORS, pxToTw, stylesToTailwind } from './styles-tailwind.js';
34
+ export type { CatalogEntry } from './template-catalog.js';
35
+ export { COMMON_TEMPLATES, detectTemplates, TEMPLATE_CATALOG } from './template-catalog.js';
36
+ export { clearTemplates, expandTemplateNode, getTemplate, isTemplateNode, KernTemplateError, registerTemplate, templateCount, } from './template-engine.js';
37
+ export type { DecompileResult, DiagnosticOutcome, ExprObject, GeneratedArtifact, IRNode, IRSourceLocation, KernEngine, ParseDiagnostic, ParseDiagnosticSeverity, ParseErrorCode, ParseResult, SourceMapEntry, TemplateDefinition, TemplateImport, TemplateSlot, TemplateSlotType, TranspileDiagnostic, TranspileResult, } from './types.js';
38
+ export type { AccountedEntry } from './utils.js';
39
+ export { accountNode, buildDiagnostics, camelKey, countTokens, escapeJsString, escapeJsx, escapeJsxAttr, escapeJsxText, serializeIR, } from './utils.js';
40
+ export type { NextjsOutputRules, NextjsVersionProfile, TailwindOutputRules, TailwindTokenRule, TailwindVersionProfile, VersionProfile, } from './version-adapters.js';
41
+ export { applyTailwindTokenRules, buildNextjsProfile, buildTailwindProfile, buildVersionProfile, } from './version-adapters.js';
42
+ export { detectVersionsFromPackageJson, parseMajorVersion, resolveNextjsMajor, resolveTailwindMajor, } from './version-detect.js';
43
+ export type { Visitor, VisitorFn, VisitorMap, WalkContext } from './walk.js';
44
+ export { getNodeAtPosition, walkIR } from './walk.js';
package/dist/index.js CHANGED
@@ -1,52 +1,52 @@
1
1
  /**
2
2
  * @kernlang/core — parser, types, spec, config, style engines, codegen
3
3
  */
4
- // Runtime (instance-based state)
5
- export { KernRuntime, defaultRuntime } from './runtime.js';
6
- // Core
7
- export { parse, parseDocument, parseWithDiagnostics, parseDocumentWithDiagnostics, parseStrict, parseDocumentStrict, getParseDiagnostics, getParseWarnings, registerParserHints, unregisterParserHints, clearParserHints, tokenizeLine } from './parser.js';
8
- export { decompile } from './decompiler.js';
9
- export { KernParseError, KernConfigError } from './errors.js';
10
- // Config
11
- export { resolveConfig, mergeConfig, DEFAULT_CONFIG, VALID_TARGETS, VALID_STRUCTURES } from './config.js';
12
- // Version detection & adapters
13
- export { parseMajorVersion, detectVersionsFromPackageJson, resolveTailwindMajor, resolveNextjsMajor } from './version-detect.js';
14
- export { buildTailwindProfile, buildNextjsProfile, buildVersionProfile, applyTailwindTokenRules, } from './version-adapters.js';
15
- // Spec
16
- export { KERN_VERSION, NODE_TYPES, STYLE_SHORTHANDS, VALUE_SHORTHANDS,
17
- // Evolved types (v4)
18
- registerEvolvedType, unregisterEvolvedType, isKnownNodeType, getEvolvedTypes, clearEvolvedTypes, KERN_RESERVED, } from './spec.js';
19
- // Schema validation
20
- export { validateSchema, NODE_SCHEMAS } from './schema.js';
21
- // Style engines
22
- export { stylesToTailwind, colorToTw, pxToTw, DEFAULT_COLORS } from './styles-tailwind.js';
23
- export { expandStyles, expandStyleKey, expandStyleValue } from './styles-react.js';
24
4
  // Codegen — public entry points
25
- export { generateCoreNode, isCoreNode, CORE_NODE_TYPES, generateMachineReducer,
5
+ export { CORE_NODE_TYPES, capitalize, clearEvolvedGenerators, cssPropertyName, dedent,
26
6
  // Safe emitters (prompt-injection immunity)
27
- emitIdentifier, emitStringLiteral, emitPath, emitTemplateSafe, emitTypeAnnotation, emitImportSpecifier,
7
+ emitIdentifier, emitImportSpecifier, emitLowConfidenceTodo, emitPath, emitReasonAnnotations, emitStringLiteral, emitTemplateSafe, emitTypeAnnotation, exportPrefix, generateCoreNode, generateMachineReducer, getChildren, getFirstChild,
28
8
  // Shared IR node helpers (used by transpiler packages)
29
- getProps, getChildren, getFirstChild, getStyles, getPseudoStyles, getThemeRefs, dedent, cssPropertyName, handlerCode, exportPrefix, parseParamList, capitalize, emitReasonAnnotations, emitLowConfidenceTodo,
9
+ getProps, getPseudoStyles, getStyles, getThemeRefs, handlerCode, hasEvolvedGenerator, isCoreNode, mapSemanticType, parseParamList,
30
10
  // Evolved generators — prefer KernRuntime for new code
31
- registerEvolvedGenerator, registerEvolvedTargetGenerator, unregisterEvolvedGenerator, clearEvolvedGenerators, hasEvolvedGenerator, mapSemanticType, SEMANTIC_TYPE_MAP, } from './codegen-core.js';
32
- // Codegen errors
33
- export { KernCodegenError } from './errors.js';
34
- // Template engine
35
- export { registerTemplate, isTemplateNode, expandTemplateNode, clearTemplates, getTemplate, templateCount, KernTemplateError, } from './template-engine.js';
36
- // Coverage gap emitter (v3)
37
- export { collectCoverageGaps, writeCoverageGaps, readCoverageGaps } from './coverage-gap.js';
38
- // Template catalog
39
- export { TEMPLATE_CATALOG, COMMON_TEMPLATES, detectTemplates } from './template-catalog.js';
40
- // Scanner
41
- export { scanProject, generateConfigSource, formatScanSummary } from './scanner.js';
11
+ registerEvolvedGenerator, registerEvolvedTargetGenerator, SEMANTIC_TYPE_MAP, sourceComment, unregisterEvolvedGenerator, } from './codegen-core.js';
42
12
  // Concepts (universal cross-language review model)
43
13
  export { conceptId, conceptSpan } from './concepts.js';
44
- // Utilities
45
- export { countTokens, serializeIR, camelKey, escapeJsx, escapeJsxText, escapeJsxAttr, escapeJsString, buildDiagnostics, accountNode } from './utils.js';
46
- // Walker
47
- export { walkIR, getNodeAtPosition } from './walk.js';
14
+ // Config
15
+ export { DEFAULT_CONFIG, mergeConfig, resolveConfig, VALID_STRUCTURES, VALID_TARGETS } from './config.js';
16
+ // Coverage gap emitter (v3)
17
+ export { collectCoverageGaps, readCoverageGaps, writeCoverageGaps } from './coverage-gap.js';
18
+ export { decompile } from './decompiler.js';
19
+ export { KernCodegenError, KernConfigError, KernParseError } from './errors.js';
20
+ export { importTypeScript } from './importer.js';
48
21
  // Typed node props
49
22
  export { propsOf, propsUntyped } from './node-props.js';
23
+ // Core
24
+ export { clearParserHints, getParseDiagnostics, getParseWarnings, parse, parseDocument, parseDocumentStrict, parseDocumentWithDiagnostics, parseStrict, parseWithDiagnostics, registerParserHints, tokenizeLine, unregisterParserHints, } from './parser.js';
25
+ // Runtime (instance-based state)
26
+ export { defaultRuntime, KernRuntime } from './runtime.js';
27
+ // Scanner
28
+ export { formatScanSummary, generateConfigSource, scanProject } from './scanner.js';
29
+ // Schema validation + export
30
+ export { exportSchemaJSON, NODE_SCHEMAS, validateSchema } from './schema.js';
31
+ export { validateSemantics } from './semantic-validator.js';
50
32
  // Source map serialization
51
33
  export { serializeSourceMap } from './source-map.js';
34
+ // Spec
35
+ export { clearEvolvedTypes, getEvolvedTypes, isKnownNodeType, KERN_RESERVED, KERN_VERSION, NODE_TYPES,
36
+ // Evolved types (v4)
37
+ registerEvolvedType, STYLE_SHORTHANDS, unregisterEvolvedType, VALUE_SHORTHANDS, } from './spec.js';
38
+ export { expandStyleKey, expandStyles, expandStyleValue } from './styles-react.js';
39
+ // Style engines
40
+ export { colorToTw, DEFAULT_COLORS, pxToTw, stylesToTailwind } from './styles-tailwind.js';
41
+ // Template catalog
42
+ export { COMMON_TEMPLATES, detectTemplates, TEMPLATE_CATALOG } from './template-catalog.js';
43
+ // Template engine
44
+ export { clearTemplates, expandTemplateNode, getTemplate, isTemplateNode, KernTemplateError, registerTemplate, templateCount, } from './template-engine.js';
45
+ // Utilities
46
+ export { accountNode, buildDiagnostics, camelKey, countTokens, escapeJsString, escapeJsx, escapeJsxAttr, escapeJsxText, serializeIR, } from './utils.js';
47
+ export { applyTailwindTokenRules, buildNextjsProfile, buildTailwindProfile, buildVersionProfile, } from './version-adapters.js';
48
+ // Version detection & adapters
49
+ export { detectVersionsFromPackageJson, parseMajorVersion, resolveNextjsMajor, resolveTailwindMajor, } from './version-detect.js';
50
+ // Walker
51
+ export { getNodeAtPosition, walkIR } from './walk.js';
52
52
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,iCAAiC;AACjC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG3D,OAAO;AACP,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,WAAW,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE5P,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAoB9D,SAAS;AACT,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG1G,+BAA+B;AAC/B,OAAO,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACjI,OAAO,EACL,oBAAoB,EAAE,kBAAkB,EAAE,mBAAmB,EAC7D,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAM/B,OAAO;AACP,OAAO,EACL,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB;AAC5D,qBAAqB;AACrB,mBAAmB,EAAE,qBAAqB,EAAE,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,aAAa,GAC/G,MAAM,WAAW,CAAC;AAEnB,oBAAoB;AACpB,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3D,gBAAgB;AAChB,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAEnF,gCAAgC;AAChC,OAAO,EACL,gBAAgB,EAAE,UAAU,EAAE,eAAe,EAC7C,sBAAsB;AACtB,4CAA4C;AAC5C,cAAc,EAAE,iBAAiB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,mBAAmB;AACtG,uDAAuD;AACvD,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,eAAe,EAAE,YAAY,EAC9E,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,YAAY,EAClD,cAAc,EAAE,UAAU,EAC1B,qBAAqB,EAAE,qBAAqB;AAC5C,uDAAuD;AACvD,wBAAwB,EAAE,8BAA8B,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,mBAAmB,EACjI,eAAe,EAAE,iBAAiB,GACnC,MAAM,mBAAmB,CAAC;AAG3B,iBAAiB;AACjB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,kBAAkB;AAClB,OAAO,EACL,gBAAgB,EAAE,cAAc,EAAE,kBAAkB,EACpD,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,iBAAiB,GAC9D,MAAM,sBAAsB,CAAC;AAG9B,4BAA4B;AAC5B,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAG7F,mBAAmB;AACnB,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAG5F,UAAU;AACV,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAGpF,mDAAmD;AACnD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAUvD,YAAY;AACZ,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGxJ,SAAS;AACT,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAGtD,mBAAmB;AACnB,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAcxD,2BAA2B;AAC3B,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,9 @@ interface BaseProps {
15
15
  export?: string | boolean;
16
16
  confidence?: string;
17
17
  }
18
+ export interface DocProps extends BaseProps {
19
+ text?: string;
20
+ }
18
21
  export interface TypeProps extends BaseProps {
19
22
  values?: string;
20
23
  alias?: string;
@@ -37,6 +40,7 @@ export interface FnProps extends BaseProps {
37
40
  returns?: string;
38
41
  async?: string | boolean;
39
42
  stream?: string | boolean;
43
+ generator?: string | boolean;
40
44
  }
41
45
  export interface ErrorProps extends BaseProps {
42
46
  extends?: string;
@@ -66,6 +70,7 @@ export interface DependencyProps extends BaseProps {
66
70
  }
67
71
  export interface ModelProps extends BaseProps {
68
72
  table?: string;
73
+ extends?: string;
69
74
  }
70
75
  export interface EventProps extends BaseProps {
71
76
  payload?: string;
@@ -151,6 +156,7 @@ export interface FieldProps extends BaseProps {
151
156
  private?: string | boolean;
152
157
  }
153
158
  export interface VariantProps extends BaseProps {
159
+ type?: string;
154
160
  }
155
161
  export interface MethodProps extends BaseProps {
156
162
  params?: string;
@@ -188,6 +194,7 @@ export interface TestProps extends BaseProps {
188
194
  }
189
195
  /** Maps known node types to their typed prop interface. */
190
196
  export interface NodePropsMap {
197
+ doc: DocProps;
191
198
  type: TypeProps;
192
199
  interface: InterfaceProps;
193
200
  union: UnionProps;
@@ -1 +1 @@
1
- {"version":3,"file":"node-props.js","sourceRoot":"","sources":["../src/node-props.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAmSH,2EAA2E;AAE3E;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,OAAO,CAA+B,IAAY;IAChE,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAoB,CAAC;AAC/C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAA4B,CAAC;AACvD,CAAC"}
1
+ {"version":3,"file":"node-props.js","sourceRoot":"","sources":["../src/node-props.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA2SH,2EAA2E;AAE3E;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,OAAO,CAA+B,IAAY;IAChE,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAoB,CAAC;AAC/C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAA4B,CAAC;AACvD,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /** @internal Core parser pipeline — line parsing, tree building, and orchestration. */
2
- import type { ParseResult } from './types.js';
3
2
  import { type KernRuntime } from './runtime.js';
3
+ import type { ParseResult } from './types.js';
4
4
  /** @internal Single internal entry that wires parseLines → buildTree → computeEndSpans. */
5
5
  export declare function parseInternal(source: string, asDocument: boolean, runtime?: KernRuntime): ParseResult;
@@ -1,10 +1,61 @@
1
- import { isKnownNodeType } from './spec.js';
2
- import { defaultRuntime } from './runtime.js';
3
- import { createParseState, commitParseState, emitDiagnostic } from './parser-diagnostics.js';
4
- import { tokenizeLineInternal } from './parser-tokenizer.js';
5
- import { TokenStream } from './parser-token-stream.js';
6
- import { parseStyleBlock } from './parser-style.js';
1
+ /** @internal Core parser pipeline — line parsing, tree building, and orchestration. */
2
+ import { commitParseState, createParseState, emitDiagnostic } from './parser-diagnostics.js';
7
3
  import { KEYWORD_HANDLERS } from './parser-keywords.js';
4
+ import { parseStyleBlock } from './parser-style.js';
5
+ import { TokenStream } from './parser-token-stream.js';
6
+ import { tokenizeLineInternal } from './parser-tokenizer.js';
7
+ import { defaultRuntime } from './runtime.js';
8
+ import { isKnownNodeType } from './spec.js';
9
+ function stripInlineComment(content) {
10
+ let inQuote = false;
11
+ let styleDepth = 0;
12
+ let exprDepth = 0;
13
+ for (let i = 0; i < content.length; i++) {
14
+ const ch = content[i];
15
+ const next = content[i + 1];
16
+ const prev = i > 0 ? content[i - 1] : '';
17
+ if (ch === '\\' && inQuote) {
18
+ i++;
19
+ continue;
20
+ }
21
+ if (ch === '"') {
22
+ inQuote = !inQuote;
23
+ continue;
24
+ }
25
+ if (inQuote)
26
+ continue;
27
+ if (ch === '{' && next === '{') {
28
+ exprDepth++;
29
+ i++;
30
+ continue;
31
+ }
32
+ if (ch === '}' && next === '}' && exprDepth > 0) {
33
+ exprDepth--;
34
+ i++;
35
+ continue;
36
+ }
37
+ if (exprDepth > 0)
38
+ continue;
39
+ if (ch === '{') {
40
+ styleDepth++;
41
+ continue;
42
+ }
43
+ if (ch === '}' && styleDepth > 0) {
44
+ styleDepth--;
45
+ continue;
46
+ }
47
+ if (styleDepth > 0)
48
+ continue;
49
+ const precededByWs = i === 0 || prev === ' ' || prev === '\t';
50
+ if (ch === '#' && precededByWs) {
51
+ return content.slice(0, i).trimEnd();
52
+ }
53
+ if (ch === '/' && next === '/' && precededByWs) {
54
+ return content.slice(0, i).trimEnd();
55
+ }
56
+ }
57
+ return content;
58
+ }
8
59
  // ── Prop parsing ─────────────────────────────────────────────────────────
9
60
  /** Map a value token to its JS representation. */
10
61
  function tokenValue(tok) {
@@ -55,7 +106,9 @@ function parseLine(state, raw, lineNum, runtime = defaultRuntime) {
55
106
  return null;
56
107
  const indent = raw.search(/\S/);
57
108
  const indentText = raw.slice(0, indent);
58
- const content = raw.slice(indent);
109
+ const content = stripInlineComment(raw.slice(indent));
110
+ if (content.trim() === '')
111
+ return null;
59
112
  const col = indent + 1;
60
113
  if (indentText.includes('\t')) {
61
114
  emitDiagnostic(state, 'INVALID_INDENT', 'warning', `Tab indentation at line ${lineNum}`, lineNum, 1, {
@@ -74,7 +127,7 @@ function parseLine(state, raw, lineNum, runtime = defaultRuntime) {
74
127
  // First token must be an identifier (the node type)
75
128
  const typeToken = s.tryIdent();
76
129
  if (!typeToken) {
77
- const firstToken = tokens.find(tok => tok.kind !== 'whitespace');
130
+ const firstToken = tokens.find((tok) => tok.kind !== 'whitespace');
78
131
  if (firstToken) {
79
132
  emitDiagnostic(state, 'DROPPED_LINE', 'error', `Dropped line ${lineNum}: expected a node type at the start of the line`, lineNum, col + firstToken.pos, {
80
133
  endCol: col + content.length,
@@ -219,7 +272,10 @@ function parseLines(state, source, runtime = defaultRuntime) {
219
272
  const parsed = [];
220
273
  for (let i = 0; i < lines.length; i++) {
221
274
  const trimmed = lines[i].trimStart();
222
- const multilineType = [...runtime.multilineBlockTypes].find(type => trimmed.startsWith(`${type} <<<`));
275
+ // Skip comment lines (// or #)
276
+ if (trimmed.startsWith('//') || trimmed.startsWith('#'))
277
+ continue;
278
+ const multilineType = [...runtime.multilineBlockTypes].find((type) => trimmed.startsWith(`${type} <<<`));
223
279
  if (multilineType) {
224
280
  const indent = lines[i].search(/\S/);
225
281
  const codeLines = [];
@@ -1 +1 @@
1
- {"version":3,"file":"parser-core.js","sourceRoot":"","sources":["../src/parser-core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser-core.js","sourceRoot":"","sources":["../src/parser-core.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /** @internal Parser diagnostics infrastructure — not part of the public API. */
2
- import type { ParseDiagnostic, ParseErrorCode } from './types.js';
3
2
  import { type KernRuntime } from './runtime.js';
3
+ import type { ParseDiagnostic, ParseErrorCode } from './types.js';
4
4
  export interface ParseState {
5
5
  diagnostics: ParseDiagnostic[];
6
6
  }
@@ -1,3 +1,4 @@
1
+ /** @internal Parser diagnostics infrastructure — not part of the public API. */
1
2
  import { defaultRuntime } from './runtime.js';
2
3
  const DIAGNOSTIC_SUGGESTIONS = {
3
4
  UNCLOSED_EXPR: 'Close the `{{ ... }}` expression or move the unfinished code into a quoted string.',
@@ -15,7 +16,7 @@ export function createParseState() {
15
16
  return { diagnostics: [] };
16
17
  }
17
18
  export function commitParseState(state, runtime = defaultRuntime) {
18
- runtime.lastParseDiagnostics = state.diagnostics.map(d => ({ ...d }));
19
+ runtime.lastParseDiagnostics = state.diagnostics.map((d) => ({ ...d }));
19
20
  }
20
21
  export function emitDiagnostic(state, code, severity, message, line, col, options = {}) {
21
22
  state.diagnostics.push({
@@ -24,7 +25,7 @@ export function emitDiagnostic(state, code, severity, message, line, col, option
24
25
  message,
25
26
  line,
26
27
  col,
27
- endCol: Math.max(options.endCol ?? (col + 1), col),
28
+ endCol: Math.max(options.endCol ?? col + 1, col),
28
29
  suggestion: options.suggestion ?? DIAGNOSTIC_SUGGESTIONS[code],
29
30
  });
30
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"parser-diagnostics.js","sourceRoot":"","sources":["../src/parser-diagnostics.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAoB,MAAM,cAAc,CAAC;AAWhE,MAAM,sBAAsB,GAAmC;IAC7D,aAAa,EAAE,oFAAoF;IACnG,cAAc,EAAE,gFAAgF;IAChG,eAAe,EAAE,gFAAgF;IACjG,gBAAgB,EAAE,2EAA2E;IAC7F,cAAc,EAAE,sEAAsE;IACtF,cAAc,EAAE,6EAA6E;IAC7F,iBAAiB,EAAE,sFAAsF;IACzG,WAAW,EAAE,kGAAkG;IAC/G,cAAc,EAAE,kFAAkF;IAClG,YAAY,EAAE,+FAA+F;CAC9G,CAAC;AAEF,MAAM,UAAU,gBAAgB;IAC9B,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAiB,EAAE,UAAuB,cAAc;IACvF,OAAO,CAAC,oBAAoB,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,KAAiB,EACjB,IAAoB,EACpB,QAAqC,EACrC,OAAe,EACf,IAAY,EACZ,GAAW,EACX,UAAiC,EAAE;IAEnC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;QACrB,IAAI;QACJ,QAAQ;QACR,OAAO;QACP,IAAI;QACJ,GAAG;QACH,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC;QAClD,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,sBAAsB,CAAC,IAAI,CAAC;KAC/D,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"parser-diagnostics.js","sourceRoot":"","sources":["../src/parser-diagnostics.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAEhF,OAAO,EAAE,cAAc,EAAoB,MAAM,cAAc,CAAC;AAYhE,MAAM,sBAAsB,GAAmC;IAC7D,aAAa,EAAE,oFAAoF;IACnG,cAAc,EAAE,gFAAgF;IAChG,eAAe,EAAE,gFAAgF;IACjG,gBAAgB,EAAE,2EAA2E;IAC7F,cAAc,EAAE,sEAAsE;IACtF,cAAc,EAAE,6EAA6E;IAC7F,iBAAiB,EAAE,sFAAsF;IACzG,WAAW,EAAE,kGAAkG;IAC/G,cAAc,EAAE,kFAAkF;IAClG,YAAY,EAAE,+FAA+F;CAC9G,CAAC;AAEF,MAAM,UAAU,gBAAgB;IAC9B,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAiB,EAAE,UAAuB,cAAc;IACvF,OAAO,CAAC,oBAAoB,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,KAAiB,EACjB,IAAoB,EACpB,QAAqC,EACrC,OAAe,EACf,IAAY,EACZ,GAAW,EACX,UAAiC,EAAE;IAEnC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;QACrB,IAAI;QACJ,QAAQ;QACR,OAAO;QACP,IAAI;QACJ,GAAG;QACH,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,CAAC;QAChD,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,sBAAsB,CAAC,IAAI,CAAC;KAC/D,CAAC,CAAC;AACL,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /** @internal Keyword-specific parsing handlers for KERN node types. */
2
- import { TokenStream } from './parser-token-stream.js';
2
+ import type { TokenStream } from './parser-token-stream.js';
3
3
  type KeywordHandler = (s: TokenStream, props: Record<string, unknown>, content: string) => void;
4
4
  export declare const KEYWORD_HANDLERS: Map<string, KeywordHandler>;
5
5
  export {};