@blockml/framework 0.9.3 → 0.9.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 (75) hide show
  1. package/blocks/org/blockml/bml/framework/FrameworkType.bml +16 -20
  2. package/blocks/org/blockml/bml/framework/Library.bml +21 -29
  3. package/blocks/org/blockml/bml/framework/README.bml +15 -22
  4. package/blocks/org/blockml/bml/framework/capability/BootstrapFullProjectRegistry.bml +25 -23
  5. package/blocks/org/blockml/bml/framework/capability/BootstrapTypeRegistry.bml +19 -21
  6. package/blocks/org/blockml/bml/framework/capability/CollectBaseTypeChain.bml +22 -21
  7. package/blocks/org/blockml/bml/framework/capability/DefaultBootstrapPaths.bml +19 -20
  8. package/blocks/org/blockml/bml/framework/capability/EvaluateExpression.bml +19 -20
  9. package/blocks/org/blockml/bml/framework/capability/EvaluateInterpolatedText.bml +19 -20
  10. package/blocks/org/blockml/bml/framework/capability/EvaluateParseValue.bml +23 -23
  11. package/blocks/org/blockml/bml/framework/capability/FindLocalMember.bml +22 -22
  12. package/blocks/org/blockml/bml/framework/capability/ForkBom.bml +19 -21
  13. package/blocks/org/blockml/bml/framework/capability/GetExportedFqns.bml +25 -22
  14. package/blocks/org/blockml/bml/framework/capability/GetPropertyNumericValue.bml +19 -20
  15. package/blocks/org/blockml/bml/framework/capability/IsLiteralValue.bml +19 -20
  16. package/blocks/org/blockml/bml/framework/capability/MemberIdentityKey.bml +19 -20
  17. package/blocks/org/blockml/bml/framework/capability/ParseExpression.bml +19 -21
  18. package/blocks/org/blockml/bml/framework/capability/ParseInterpolatedText.bml +22 -21
  19. package/blocks/org/blockml/bml/framework/capability/PeekLibraryTypeFqn.bml +19 -21
  20. package/blocks/org/blockml/bml/framework/capability/ProjectLibraryPackageDirs.bml +19 -20
  21. package/blocks/org/blockml/bml/framework/capability/ProjectLibraryPackageRoots.bml +19 -20
  22. package/blocks/org/blockml/bml/framework/capability/ProjectSourceRoots.bml +22 -21
  23. package/blocks/org/blockml/bml/framework/capability/RegistryFilesUnderRoots.bml +22 -21
  24. package/blocks/org/blockml/bml/framework/capability/ResolveContracts.bml +22 -22
  25. package/blocks/org/blockml/bml/framework/capability/ResolveEffectiveMembers.bml +22 -22
  26. package/blocks/org/blockml/bml/framework/capability/ResolveLibrarySeeds.bml +22 -22
  27. package/blocks/org/blockml/bml/framework/capability/RootFqnByFilePath.bml +19 -20
  28. package/blocks/org/blockml/bml/framework/capability/RootFqns.bml +19 -20
  29. package/blocks/org/blockml/bml/framework/capability/TypeRegistry.bml +12 -19
  30. package/blocks/org/blockml/bml/framework/capability/ValidateConstraints.bml +22 -22
  31. package/blocks/org/blockml/bml/framework/capability/ValidateEmbeddedBlocks.bml +19 -20
  32. package/blocks/org/blockml/bml/framework/capability/ValidateGenerics.bml +25 -24
  33. package/blocks/org/blockml/bml/framework/capability/ValidateInstances.bml +22 -21
  34. package/blocks/org/blockml/bml/framework/capability/ValidatePresets.bml +22 -21
  35. package/blocks/org/blockml/bml/framework/capability/ValidateReadOnly.bml +22 -21
  36. package/blocks/org/blockml/bml/framework/capability/ValidateTypes.bml +30 -25
  37. package/blocks/org/blockml/bml/framework/capability/ValidateVersions.bml +22 -22
  38. package/blocks/org/blockml/bml/framework/capability/ValidateVisibility.bml +22 -21
  39. package/blocks/org/blockml/bml/framework/config/FrameworkDiagnosticCodes.bml +16 -19
  40. package/blocks/org/blockml/bml/framework/documentation/ArchitectureOverview.bml +16 -21
  41. package/blocks/org/blockml/bml/framework/documentation/ConstraintValidation.bml +17 -22
  42. package/blocks/org/blockml/bml/framework/documentation/Diagnostics.bml +23 -28
  43. package/blocks/org/blockml/bml/framework/documentation/EffectiveMembers.bml +18 -23
  44. package/blocks/org/blockml/bml/framework/documentation/ExpressionParsing.bml +23 -24
  45. package/blocks/org/blockml/bml/framework/documentation/Introduction.bml +17 -22
  46. package/blocks/org/blockml/bml/framework/documentation/LayerSeparation.bml +19 -24
  47. package/blocks/org/blockml/bml/framework/documentation/PackageOwnership.bml +19 -24
  48. package/blocks/org/blockml/bml/framework/documentation/PublicApi.bml +19 -22
  49. package/blocks/org/blockml/bml/framework/documentation/ScopeExclusions.bml +16 -21
  50. package/blocks/org/blockml/bml/framework/documentation/TypeRegistryBootstrap.bml +22 -27
  51. package/blocks/org/blockml/bml/framework/expression/ArrayExpressionNode.bml +19 -20
  52. package/blocks/org/blockml/bml/framework/expression/BinaryExpressionNode.bml +25 -22
  53. package/blocks/org/blockml/bml/framework/expression/CallExpressionNode.bml +22 -21
  54. package/blocks/org/blockml/bml/framework/expression/ExpressionNode.bml +16 -20
  55. package/blocks/org/blockml/bml/framework/expression/InterpolatedStringNode.bml +19 -20
  56. package/blocks/org/blockml/bml/framework/expression/LiteralExpressionNode.bml +19 -20
  57. package/blocks/org/blockml/bml/framework/expression/ObjectExpressionEntry.bml +19 -20
  58. package/blocks/org/blockml/bml/framework/expression/ObjectExpressionNode.bml +19 -20
  59. package/blocks/org/blockml/bml/framework/expression/ParseExpressionError.bml +19 -20
  60. package/blocks/org/blockml/bml/framework/expression/ParseExpressionOutcome.bml +22 -21
  61. package/blocks/org/blockml/bml/framework/expression/ParseExpressionResult.bml +19 -20
  62. package/blocks/org/blockml/bml/framework/expression/PropertyExpressionNode.bml +19 -20
  63. package/blocks/org/blockml/bml/framework/registry/BootstrapOptions.bml +22 -21
  64. package/blocks/org/blockml/bml/framework/registry/BootstrapResult.bml +25 -22
  65. package/blocks/org/blockml/bml/framework/registry/BootstrapTrace.bml +28 -23
  66. package/dist/expression/parse-expression.d.ts.map +1 -1
  67. package/dist/expression/parse-expression.js +4 -1
  68. package/dist/expression/parse-expression.js.map +1 -1
  69. package/dist/expression/parse-interpolated-text.d.ts.map +1 -1
  70. package/dist/expression/parse-interpolated-text.js +60 -30
  71. package/dist/expression/parse-interpolated-text.js.map +1 -1
  72. package/dist/validate/validate-types.d.ts.map +1 -1
  73. package/dist/validate/validate-types.js +17 -26
  74. package/dist/validate/validate-types.js.map +1 -1
  75. package/package.json +4 -4
@@ -1,12 +1,6 @@
1
- <!--
2
- Framework PropertyExpressionNode
3
- FQN: org.blockml.bml.framework.expression.PropertyExpressionNode
4
- -->
5
- <block
6
- xmlns="http://blockml.org/bml"
7
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
- xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
- "
1
+ <!--Framework — PropertyExpressionNode
2
+ FQN: org.blockml.bml.framework.expression.PropertyExpressionNode-->
3
+ <fwexpression:PropertyExpressionNode xmlns="http://blockml.org/bml"
10
4
  xmlns:blockml="org.blockml.bml"
11
5
  xmlns:bom="org.blockml.bml.bom"
12
6
  xmlns:bomapi="org.blockml.bml.bom.api"
@@ -31,21 +25,26 @@
31
25
  xmlns:pardocumentation="org.blockml.bml.compiler.parser.documentation"
32
26
  xmlns:valdocumentation="org.blockml.bml.compiler.validator.documentation">
33
27
 
34
- <name>PropertyExpressionNode</name>
35
- <type>fwexpression:PropertyExpressionNode</type>
36
- <baseType>fwexpression:ExpressionNode</baseType>
37
- <is>Property path expression AST node</is>
38
-
39
- <documentation>kind: property. path: string[] (dot-separated property access).</documentation>
40
-
28
+ <baseType>
29
+ fwexpression:ExpressionNode
30
+ </baseType>
31
+ <is>
32
+ Property path expression AST node
33
+ </is>
34
+ <documentation>
35
+ kind: property. path: string[] (dot-separated property access).
36
+ </documentation>
41
37
  <properties>
42
38
  <kind type="type:Text">
43
- <documentation>kind. TS type: type:Text. (required)</documentation>
39
+ <documentation>
40
+ kind. TS type: type:Text. (required)
41
+ </documentation>
44
42
  <value>property</value>
45
43
  </kind>
46
44
  <path type="type:Text[]">
47
- <documentation>path. TS type: type:Text[]. (required)</documentation>
45
+ <documentation>
46
+ path. TS type: type:Text[]. (required)
47
+ </documentation>
48
48
  </path>
49
49
  </properties>
50
-
51
- </block>
50
+ </fwexpression:PropertyExpressionNode>
@@ -1,12 +1,6 @@
1
- <!--
2
- Framework BootstrapOptions
3
- FQN: org.blockml.bml.framework.registry.BootstrapOptions
4
- -->
5
- <block
6
- xmlns="http://blockml.org/bml"
7
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
- xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
- "
1
+ <!--Framework — BootstrapOptions
2
+ FQN: org.blockml.bml.framework.registry.BootstrapOptions-->
3
+ <fwregistry:BootstrapOptions xmlns="http://blockml.org/bml"
10
4
  xmlns:blockml="org.blockml.bml"
11
5
  xmlns:bom="org.blockml.bml.bom"
12
6
  xmlns:bomapi="org.blockml.bml.bom.api"
@@ -31,23 +25,30 @@
31
25
  xmlns:pardocumentation="org.blockml.bml.compiler.parser.documentation"
32
26
  xmlns:valdocumentation="org.blockml.bml.compiler.validator.documentation">
33
27
 
34
- <name>BootstrapOptions</name>
35
- <type>fwregistry:BootstrapOptions</type>
36
- <baseType>framework:FrameworkType</baseType>
37
- <is>Options for bootstrapTypeRegistry corpus or library graph modes</is>
38
-
39
- <documentation>paths — flat corpus scan roots. libraryPaths — Library.bml entry points for dependency-ordered library mode. rootDir — relative path resolution base.</documentation>
40
-
28
+ <baseType>
29
+ framework:FrameworkType
30
+ </baseType>
31
+ <is>
32
+ Options for bootstrapTypeRegistry corpus or library graph modes
33
+ </is>
34
+ <documentation>
35
+ paths — flat corpus scan roots. libraryPaths — Library.bml entry points for dependency-ordered library mode. rootDir — relative path resolution base.
36
+ </documentation>
41
37
  <properties>
42
38
  <paths type="type:Text[]">
43
- <documentation>Corpus roots for flat scan mode. (optional)</documentation>
39
+ <documentation>
40
+ Corpus roots for flat scan mode. (optional)
41
+ </documentation>
44
42
  </paths>
45
43
  <libraryPaths type="type:Text[]">
46
- <documentation>Library.bml file paths for library graph mode. (optional)</documentation>
44
+ <documentation>
45
+ Library.bml file paths for library graph mode. (optional)
46
+ </documentation>
47
47
  </libraryPaths>
48
48
  <rootDir type="type:Text">
49
- <documentation>Working directory for relative paths. (optional)</documentation>
49
+ <documentation>
50
+ Working directory for relative paths. (optional)
51
+ </documentation>
50
52
  </rootDir>
51
53
  </properties>
52
-
53
- </block>
54
+ </fwregistry:BootstrapOptions>
@@ -1,12 +1,6 @@
1
- <!--
2
- Framework BootstrapResult
3
- FQN: org.blockml.bml.framework.registry.BootstrapResult
4
- -->
5
- <block
6
- xmlns="http://blockml.org/bml"
7
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
- xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
- "
1
+ <!--Framework — BootstrapResult
2
+ FQN: org.blockml.bml.framework.registry.BootstrapResult-->
3
+ <fwregistry:BootstrapResult xmlns="http://blockml.org/bml"
10
4
  xmlns:blockml="org.blockml.bml"
11
5
  xmlns:bom="org.blockml.bml.bom"
12
6
  xmlns:bomapi="org.blockml.bml.bom.api"
@@ -31,26 +25,35 @@
31
25
  xmlns:pardocumentation="org.blockml.bml.compiler.parser.documentation"
32
26
  xmlns:valdocumentation="org.blockml.bml.compiler.validator.documentation">
33
27
 
34
- <name>BootstrapResult</name>
35
- <type>fwregistry:BootstrapResult</type>
36
- <baseType>framework:FrameworkType</baseType>
37
- <is>Result of bootstrapTypeRegistry corpus walk</is>
38
-
39
- <documentation>Returned by fwcap:BootstrapTypeRegistry. Registry may be partially populated when diagnostics are present. exportsByLibrary is set in libraryPaths mode. trace lists corpus, seeds, search index, visited libraries, and skipped covered roots.</documentation>
40
-
28
+ <baseType>
29
+ framework:FrameworkType
30
+ </baseType>
31
+ <is>
32
+ Result of bootstrapTypeRegistry corpus walk
33
+ </is>
34
+ <documentation>
35
+ Returned by fwcap:BootstrapTypeRegistry. Registry may be partially populated when diagnostics are present. exportsByLibrary is set in libraryPaths mode. trace lists corpus, seeds, search index, visited libraries, and skipped covered roots.
36
+ </documentation>
41
37
  <properties>
42
38
  <registry type="fwcap:TypeRegistry">
43
- <documentation>registry. TS type: fwcap:TypeRegistry. (required)</documentation>
39
+ <documentation>
40
+ registry. TS type: fwcap:TypeRegistry. (required)
41
+ </documentation>
44
42
  </registry>
45
43
  <diagnostics type="bomcommon:Diagnostic[]">
46
- <documentation>diagnostics. TS type: bomcommon:Diagnostic[]. (required)</documentation>
44
+ <documentation>
45
+ diagnostics. TS type: bomcommon:Diagnostic[]. (required)
46
+ </documentation>
47
47
  </diagnostics>
48
48
  <exportsByLibrary type="type:Text">
49
- <documentation>exportsByLibrary — Map&lt;libraryPath, Set&lt;exportedFqn&gt;&gt; when libraryPaths bootstrap. (optional)</documentation>
49
+ <documentation>
50
+ exportsByLibrary — Map&lt;libraryPath, Set&lt;exportedFqn>> when libraryPaths bootstrap. (optional)
51
+ </documentation>
50
52
  </exportsByLibrary>
51
53
  <trace type="fwregistry:BootstrapTrace">
52
- <documentation>Bootstrap source trace for hosts such as CLI --verbose. (optional)</documentation>
54
+ <documentation>
55
+ Bootstrap source trace for hosts such as CLI --verbose. (optional)
56
+ </documentation>
53
57
  </trace>
54
58
  </properties>
55
-
56
- </block>
59
+ </fwregistry:BootstrapResult>
@@ -1,12 +1,6 @@
1
- <!--
2
- Framework BootstrapTrace
3
- FQN: org.blockml.bml.framework.registry.BootstrapTrace
4
- -->
5
- <block
6
- xmlns="http://blockml.org/bml"
7
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
- xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
- "
1
+ <!--Framework — BootstrapTrace
2
+ FQN: org.blockml.bml.framework.registry.BootstrapTrace-->
3
+ <fwregistry:BootstrapTrace xmlns="http://blockml.org/bml"
10
4
  xmlns:blockml="org.blockml.bml"
11
5
  xmlns:bom="org.blockml.bml.bom"
12
6
  xmlns:bomapi="org.blockml.bml.bom.api"
@@ -31,29 +25,40 @@
31
25
  xmlns:pardocumentation="org.blockml.bml.compiler.parser.documentation"
32
26
  xmlns:valdocumentation="org.blockml.bml.compiler.validator.documentation">
33
27
 
34
- <name>BootstrapTrace</name>
35
- <type>fwregistry:BootstrapTrace</type>
36
- <baseType>framework:FrameworkType</baseType>
37
- <is>Resolved bootstrap sources for tracing</is>
38
-
39
- <documentation>corpusPaths — scanned corpus roots. seeds — libraryPaths used. searchRoots — discovery index (not a corpus dump). librariesVisited — graph order. skippedCoveredRoots — library trees skipped because they sit inside corpus srcDir.</documentation>
40
-
28
+ <baseType>
29
+ framework:FrameworkType
30
+ </baseType>
31
+ <is>
32
+ Resolved bootstrap sources for tracing
33
+ </is>
34
+ <documentation>
35
+ corpusPaths — scanned corpus roots. seeds — libraryPaths used. searchRoots — discovery index (not a corpus dump). librariesVisited — graph order. skippedCoveredRoots — library trees skipped because they sit inside corpus srcDir.
36
+ </documentation>
41
37
  <properties>
42
38
  <corpusPaths type="type:Text[]">
43
- <documentation>corpusPaths. TS type: type:Text[]. (required)</documentation>
39
+ <documentation>
40
+ corpusPaths. TS type: type:Text[]. (required)
41
+ </documentation>
44
42
  </corpusPaths>
45
43
  <seeds type="type:Text[]">
46
- <documentation>seeds. TS type: type:Text[]. (required)</documentation>
44
+ <documentation>
45
+ seeds. TS type: type:Text[]. (required)
46
+ </documentation>
47
47
  </seeds>
48
48
  <searchRoots type="type:Text[]">
49
- <documentation>searchRoots. TS type: type:Text[]. (required)</documentation>
49
+ <documentation>
50
+ searchRoots. TS type: type:Text[]. (required)
51
+ </documentation>
50
52
  </searchRoots>
51
53
  <librariesVisited type="type:Text[]">
52
- <documentation>librariesVisited. TS type: type:Text[]. (required)</documentation>
54
+ <documentation>
55
+ librariesVisited. TS type: type:Text[]. (required)
56
+ </documentation>
53
57
  </librariesVisited>
54
58
  <skippedCoveredRoots type="type:Text[]">
55
- <documentation>skippedCoveredRoots. TS type: type:Text[]. (required)</documentation>
59
+ <documentation>
60
+ skippedCoveredRoots. TS type: type:Text[]. (required)
61
+ </documentation>
56
62
  </skippedCoveredRoots>
57
63
  </properties>
58
-
59
- </block>
64
+ </fwregistry:BootstrapTrace>
@@ -1 +1 @@
1
- {"version":3,"file":"parse-expression.d.ts","sourceRoot":"","sources":["../../src/expression/parse-expression.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,sBAAsB,EAEvB,MAAM,YAAY,CAAC;AA4LpB,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB,CAmBnE"}
1
+ {"version":3,"file":"parse-expression.d.ts","sourceRoot":"","sources":["../../src/expression/parse-expression.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,sBAAsB,EAEvB,MAAM,YAAY,CAAC;AA4LpB,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB,CAsBnE"}
@@ -171,7 +171,10 @@ function parseExpressionInternal(input, i) {
171
171
  export function parseExpression(raw) {
172
172
  const trimmed = raw.trim();
173
173
  if (!trimmed) {
174
- return { ok: false, error: { message: "Empty expression", offset: 0 } };
174
+ return {
175
+ ok: false,
176
+ error: { message: "Empty expression; write \\${ } for literal delimiters", offset: 0 },
177
+ };
175
178
  }
176
179
  try {
177
180
  const { node, next } = parseExpressionInternal(trimmed, 0);
@@ -1 +1 @@
1
- {"version":3,"file":"parse-expression.js","sourceRoot":"","sources":["../../src/expression/parse-expression.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parse-expression.js","sourceRoot":"","sources":["../../src/expression/parse-expression.ts"],"names":[],"mappings":"AAMA,SAAS,MAAM,CAAC,KAAa,EAAE,CAAS;IACtC,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC;QAChD,CAAC,EAAE,CAAC;IACN,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,eAAe,CAAC,KAAa,EAAE,CAAS;IAC/C,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACrB,MAAM,KAAK,GAAG,CAAC,CAAC;IAChB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,CAAC,EAAE,CAAC;IACJ,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC;QAC7D,CAAC,EAAE,CAAC;IACN,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,YAAY,CAAC,KAAa,EAAE,CAAS;IAC5C,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAErB,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QACrB,CAAC,EAAE,CAAC;QACJ,MAAM,QAAQ,GAAqB,EAAE,CAAC;QACtC,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACrB,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACrB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5D,CAAC;QACD,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YACxB,MAAM,EAAE,GAAG,uBAAuB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC7C,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACrB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5D,CAAC;YACD,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;YACjD,CAAC;YACD,CAAC,EAAE,CAAC;QACN,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QACrB,CAAC,EAAE,CAAC;QACJ,MAAM,OAAO,GAAmC,EAAE,CAAC;QACnD,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACrB,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACrB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5D,CAAC;QACD,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YACxB,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;YACjD,CAAC;YACD,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;YAC1C,CAAC;YACD,CAAC,EAAE,CAAC;YACJ,MAAM,GAAG,GAAG,uBAAuB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC9C,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC;YAChC,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACrB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5D,CAAC;YACD,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;YACjD,CAAC;YACD,CAAC,EAAE,CAAC;QACN,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QACrB,CAAC,EAAE,CAAC;QACJ,MAAM,KAAK,GAAG,uBAAuB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAChD,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;IAC3C,CAAC;IAED,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QACzC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;QACpB,CAAC,EAAE,CAAC;QACJ,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1C,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;YACd,CAAC,EAAE,CAAC;QACN,CAAC;QACD,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;IAC9D,CAAC;IAED,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;QACrC,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;IACjE,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QACtC,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;IAClE,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC1D,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC;QACzB,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACpF,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;IACpE,CAAC;IAED,MAAM,EAAE,GAAG,eAAe,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACrC,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC;IACD,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;IAEZ,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QACrB,CAAC,EAAE,CAAC;QACJ,MAAM,IAAI,GAAqB,EAAE,CAAC;QAClC,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACrB,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACrB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;QACtE,CAAC;QACD,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,uBAAuB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC9C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACrB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;YACtE,CAAC;YACD,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;YACjD,CAAC;YACD,CAAC,EAAE,CAAC;QACN,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACrB,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QACxB,CAAC,EAAE,CAAC;QACJ,MAAM,GAAG,GAAG,eAAe,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACtC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC;IACf,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AACvD,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa,EAAE,CAAS;IACnD,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC5C,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACxB,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAC5C,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAc,CAAC;QACjC,CAAC,EAAE,CAAC;QACJ,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACrC,IAAI,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;QACvE,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAC3B,CAAC;AAED,SAAS,aAAa,CAAC,KAAa,EAAE,CAAS;IAC7C,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACnD,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACxB,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAC5C,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAc,CAAC;QACjC,CAAC,EAAE,CAAC;QACJ,MAAM,KAAK,GAAG,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC5C,IAAI,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;QACvE,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAC3B,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAa,EAAE,CAAS;IACvD,OAAO,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,EAAE,OAAO,EAAE,uDAAuD,EAAE,MAAM,EAAE,CAAC,EAAE;SACvF,CAAC;IACJ,CAAC;IACD,IAAI,CAAC;QACH,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,uBAAuB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QAClD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,8BAA8B,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QAC/F,CAAC;QACD,MAAM,MAAM,GAA0B,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;QACpD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC9B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;SAC1E,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"parse-interpolated-text.d.ts","sourceRoot":"","sources":["../../src/expression/parse-interpolated-text.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAkB,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAiCzE,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB,CA6CzE"}
1
+ {"version":3,"file":"parse-interpolated-text.d.ts","sourceRoot":"","sources":["../../src/expression/parse-interpolated-text.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAkB,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAyCzE,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB,CAuEzE"}
@@ -31,50 +31,80 @@ function findMatchingBrace(input, start) {
31
31
  }
32
32
  return -1;
33
33
  }
34
+ function countBackslashes(raw, start) {
35
+ let n = 0;
36
+ while (start + n < raw.length && raw[start + n] === "\\") {
37
+ n++;
38
+ }
39
+ return n;
40
+ }
34
41
  export function parseInterpolatedText(raw) {
35
42
  const parts = [];
36
43
  let i = 0;
37
44
  let literal = "";
45
+ const flushLiteral = () => {
46
+ if (literal) {
47
+ parts.push({ kind: "literal", value: literal });
48
+ literal = "";
49
+ }
50
+ };
51
+ const takeHole = (at) => {
52
+ flushLiteral();
53
+ const end = findMatchingBrace(raw, at + 2);
54
+ if (end < 0) {
55
+ return { ok: false, error: { message: "Unclosed interpolation", offset: at } };
56
+ }
57
+ const hole = raw.slice(at + 2, end);
58
+ if (holeLooksLikeModelBinding(hole)) {
59
+ return {
60
+ ok: false,
61
+ error: { message: INTERPOLATION_NOT_ALLOWED, offset: at },
62
+ };
63
+ }
64
+ const parsed = parseExpression(hole);
65
+ if (!parsed.ok) {
66
+ return parsed;
67
+ }
68
+ const restricted = restrictedExpressionError(parsed.result.ast);
69
+ if (restricted) {
70
+ return { ok: false, error: { message: restricted, offset: at } };
71
+ }
72
+ parts.push(parsed.result.ast);
73
+ return end + 1;
74
+ };
38
75
  while (i < raw.length) {
39
- if (raw[i] === "\\" && raw.slice(i, i + 3) === "\\${") {
40
- literal += "${";
41
- i += 3;
76
+ if (raw[i] === "\\") {
77
+ const n = countBackslashes(raw, i);
78
+ if (raw[i + n] === "$" && raw[i + n + 1] === "{") {
79
+ literal += "\\".repeat(Math.floor(n / 2));
80
+ if (n % 2 === 1) {
81
+ literal += "${";
82
+ i += n + 2;
83
+ continue;
84
+ }
85
+ const next = takeHole(i + n);
86
+ if (typeof next !== "number") {
87
+ return next;
88
+ }
89
+ i = next;
90
+ continue;
91
+ }
92
+ literal += raw.slice(i, i + n);
93
+ i += n;
42
94
  continue;
43
95
  }
44
96
  if (raw[i] === "$" && raw[i + 1] === "{") {
45
- if (literal) {
46
- parts.push({ kind: "literal", value: literal });
47
- literal = "";
48
- }
49
- const end = findMatchingBrace(raw, i + 2);
50
- if (end < 0) {
51
- return { ok: false, error: { message: "Unclosed interpolation", offset: i } };
52
- }
53
- const hole = raw.slice(i + 2, end);
54
- if (holeLooksLikeModelBinding(hole)) {
55
- return {
56
- ok: false,
57
- error: { message: INTERPOLATION_NOT_ALLOWED, offset: i },
58
- };
97
+ const next = takeHole(i);
98
+ if (typeof next !== "number") {
99
+ return next;
59
100
  }
60
- const parsed = parseExpression(hole);
61
- if (!parsed.ok) {
62
- return parsed;
63
- }
64
- const restricted = restrictedExpressionError(parsed.result.ast);
65
- if (restricted) {
66
- return { ok: false, error: { message: restricted, offset: i } };
67
- }
68
- parts.push(parsed.result.ast);
69
- i = end + 1;
101
+ i = next;
70
102
  continue;
71
103
  }
72
104
  literal += raw[i];
73
105
  i++;
74
106
  }
75
- if (literal) {
76
- parts.push({ kind: "literal", value: literal });
77
- }
107
+ flushLiteral();
78
108
  return { ok: true, result: { ast: { kind: "interpolated", parts } } };
79
109
  }
80
110
  //# sourceMappingURL=parse-interpolated-text.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parse-interpolated-text.js","sourceRoot":"","sources":["../../src/expression/parse-interpolated-text.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parse-interpolated-text.js","sourceRoot":"","sources":["../../src/expression/parse-interpolated-text.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate-types.d.ts","sourceRoot":"","sources":["../../src/validate/validate-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,WAAW,EAEX,UAAU,EAGV,YAAY,EACZ,WAAW,EACX,kBAAkB,EAGnB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAwTjE,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,WAAW,EACrB,QAAQ,EAAE,YAAY,GACrB,UAAU,EAAE,CAcd;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAEvF;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,kBAAkB,GAAG,MAAM,GAAG,SAAS,CAYpF;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,SAAS,GAAG,GAAG,IAAI,YAAY,CAEhF"}
1
+ {"version":3,"file":"validate-types.d.ts","sourceRoot":"","sources":["../../src/validate/validate-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,WAAW,EAEX,UAAU,EAGV,YAAY,EAEZ,WAAW,EACX,kBAAkB,EAGnB,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAmTjE,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,WAAW,EACrB,QAAQ,EAAE,YAAY,GACrB,UAAU,EAAE,CAcd;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAEvF;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,kBAAkB,GAAG,MAAM,GAAG,SAAS,CAYpF;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,SAAS,GAAG,GAAG,IAAI,YAAY,CAEhF"}
@@ -1,20 +1,11 @@
1
+ import { containsUnescapedInterpolation } from "@blockml/parser";
1
2
  import { parseExpression } from "../expression/parse-expression.js";
2
3
  import { parseInterpolatedText } from "../expression/parse-interpolated-text.js";
3
4
  import { INTERPOLATION_NOT_ALLOWED } from "../expression/restricted.js";
4
- import { memberIdentityKey, resolveEffectiveMembers, } from "../resolve/resolve-effective-members.js";
5
+ import { memberIdentityKey, resolveContracts, resolveEffectiveMembers, } from "../resolve/resolve-effective-members.js";
5
6
  import { validateParseValues } from "./validate-parse-values.js";
6
7
  import { validateReferences } from "./validate-references.js";
7
8
  const TEXT_TYPE_FQN = "org.blockml.bml.type.Text";
8
- function containsUnescapedInterpolation(raw) {
9
- for (let i = 0; i < raw.length - 1; i++) {
10
- if (raw[i] === "$" && raw[i + 1] === "{") {
11
- if (i === 0 || raw[i - 1] !== "\\") {
12
- return true;
13
- }
14
- }
15
- }
16
- return false;
17
- }
18
9
  function namedTypeFqn(expr, fallback) {
19
10
  if (expr?.kind === "named") {
20
11
  return expr.fqn;
@@ -62,6 +53,15 @@ function literalNumber(val) {
62
53
  }
63
54
  return typeof val.value === "number" ? val.value : undefined;
64
55
  }
56
+ function inheritedOrContractMembers(block, registry) {
57
+ const parentBlock = block.baseType ? registry.get(block.baseType)?.block : undefined;
58
+ const inherited = parentBlock ? resolveEffectiveMembers(parentBlock, registry) : [];
59
+ return [...inherited, ...resolveContracts(block, registry)];
60
+ }
61
+ function hasMatchingParentMember(member, parentMembers) {
62
+ return parentMembers.some((candidate) => memberIdentityKey(candidate) === memberIdentityKey(member) &&
63
+ candidate.kind === member.kind);
64
+ }
65
65
  function validateBlockDefinition(block, registry, file, diagnostics) {
66
66
  const effective = resolveEffectiveMembers(block, registry);
67
67
  const seen = new Set();
@@ -72,26 +72,17 @@ function validateBlockDefinition(block, registry, file, diagnostics) {
72
72
  }
73
73
  seen.add(key);
74
74
  }
75
+ const parentMembers = inheritedOrContractMembers(block, registry);
76
+ const parentResolved = !block.baseType || registry.has(block.baseType);
75
77
  for (const member of block.members) {
76
- const skipOverrideCheck = member.kind === "aggregation" &&
77
- (member.composition !== undefined || member.default === true);
78
+ const hasParent = hasMatchingParentMember(member, parentMembers);
78
79
  if (member.override) {
79
- const parentBlock = block.baseType ? registry.get(block.baseType)?.block : undefined;
80
- const parentMembers = parentBlock
81
- ? resolveEffectiveMembers(parentBlock, registry)
82
- : [];
83
- const hasParent = parentMembers.some((m) => memberIdentityKey(m) === memberIdentityKey(member) && m.kind === member.kind);
84
- if (block.baseType && registry.has(block.baseType) && !hasParent) {
80
+ if (parentResolved && !hasParent) {
85
81
  diagnostics.push(diag("BML_OVERRIDE_WITHOUT_PARENT", `override without parent member: ${member.name}`, file, member.source));
86
82
  }
87
83
  }
88
- else if (block.baseType && registry.has(block.baseType) && !skipOverrideCheck) {
89
- const parentBlock = registry.get(block.baseType)?.block;
90
- const parentDirect = parentBlock?.members ?? [];
91
- const hasParent = parentDirect.some((m) => memberIdentityKey(m) === memberIdentityKey(member) && m.kind === member.kind);
92
- if (hasParent && !member.override) {
93
- diagnostics.push(diag("BML_OVERRIDE_REQUIRED", `override required for redeclared member: ${member.name}`, file, member.source));
94
- }
84
+ else if (hasParent) {
85
+ diagnostics.push(diag("BML_OVERRIDE_REQUIRED", `override required for redeclared member: ${member.name}`, file, member.source));
95
86
  }
96
87
  if (member.kind === "property") {
97
88
  validatePropertyExpressions(member, file, diagnostics);
@@ -1 +1 @@
1
- {"version":3,"file":"validate-types.js","sourceRoot":"","sources":["../../src/validate/validate-types.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EACL,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,MAAM,aAAa,GAAG,2BAA2B,CAAC;AAElD,SAAS,8BAA8B,CAAC,GAAW;IACjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACzC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;gBACnC,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CAAC,IAAgC,EAAE,QAAiB;IACvE,IAAI,IAAI,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IACD,IAAI,IAAI,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,UAAU,CAAC,IAAgC,EAAE,QAAiB;IACrE,OAAO,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,aAAa,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;AAClF,CAAC;AAED,SAAS,cAAc,CAAC,IAAgC,EAAE,QAAiB;IACzE,IAAI,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,aAAa,EAAE,CAAC;QACnD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,eAAe,CAAC,IAAgC;IACvD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACrD,OAAO,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC;IACzC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,IAAI,CACX,IAAY,EACZ,OAAe,EACf,IAAY,EACZ,GAAgF;IAEhF,MAAM,MAAM,GAAmB;QAC7B,IAAI,EAAE,GAAG,EAAE,IAAI,IAAI,IAAI;QACvB,IAAI,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC;QACpB,MAAM,EAAE,GAAG,EAAE,MAAM,IAAI,CAAC;KACzB,CAAC;IACF,IAAI,GAAG,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IAC/B,CAAC;IACD,IAAI,GAAG,EAAE,SAAS,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;IACnC,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AACtD,CAAC;AAED,SAAS,aAAa,CAAC,GAA4B;IACjD,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACnC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/D,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAAsB,EACtB,QAAsB,EACtB,IAAY,EACZ,WAAyB;IAEzB,MAAM,SAAS,GAAG,uBAAuB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,MAAM,IAAI,SAAS,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,WAAW,CAAC,IAAI,CACd,IAAI,CACF,sBAAsB,EACtB,wCAAwC,GAAG,EAAE,EAC7C,IAAI,EACJ,MAAM,CAAC,MAAM,CACd,CACF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAChB,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,iBAAiB,GACrB,MAAM,CAAC,IAAI,KAAK,aAAa;YAC7B,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC;QAEhE,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YACrF,MAAM,aAAa,GAAG,WAAW;gBAC/B,CAAC,CAAC,uBAAuB,CAAC,WAAW,EAAE,QAAQ,CAAC;gBAChD,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAClC,CAAC,CAAC,EAAE,EAAE,CACJ,iBAAiB,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAC/E,CAAC;YACF,IAAI,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACjE,WAAW,CAAC,IAAI,CACd,IAAI,CACF,6BAA6B,EAC7B,mCAAmC,MAAM,CAAC,IAAI,EAAE,EAChD,IAAI,EACJ,MAAM,CAAC,MAAM,CACd,CACF,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAChF,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;YACxD,MAAM,YAAY,GAAG,WAAW,EAAE,OAAO,IAAI,EAAE,CAAC;YAChD,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CACjC,CAAC,CAAC,EAAE,EAAE,CACJ,iBAAiB,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAC/E,CAAC;YACF,IAAI,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBAClC,WAAW,CAAC,IAAI,CACd,IAAI,CACF,uBAAuB,EACvB,4CAA4C,MAAM,CAAC,IAAI,EAAE,EACzD,IAAI,EACJ,MAAM,CAAC,MAAM,CACd,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC/B,2BAA2B,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACxD,oBAAoB,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QAClC,uBAAuB,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAe;IAC7C,IAAI,OAAO,KAAK,yBAAyB,EAAE,CAAC;QAC1C,OAAO,uCAAuC,CAAC;IACjD,CAAC;IACD,IAAI,OAAO,KAAK,wBAAwB,EAAE,CAAC;QACzC,OAAO,uBAAuB,CAAC;IACjC,CAAC;IACD,OAAO,4BAA4B,CAAC;AACtC,CAAC;AAED,SAAS,uBAAuB,CAC9B,GAAW,EACX,KAAa,EACb,IAAY,EACZ,WAAyB,EACzB,GAAoB;IAEpB,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;IAC1C,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,WAAW,CAAC,IAAI,CACd,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,CACnG,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAc,EACd,KAAa,EACb,IAAY,EACZ,WAAyB,EACzB,GAAoB;IAEpB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO;IACT,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,8BAA8B,CAAC,IAAI,CAAC,EAAE,CAAC;YACrE,uBAAuB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,8BAA8B,CACrC,GAA4B,EAC5B,KAAa,EACb,IAAY,EACZ,WAAyB,EACzB,IAAgC,EAChC,OAAgB;IAEhB,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO;IACT,CAAC;IACD,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,GAAsB,CAAC;QACpC,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,WAAW,CAAC,IAAI,CACd,IAAI,CACF,4BAA4B,EAC5B,GAAG,KAAK,KAAK,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,EACnC,IAAI,EACJ,IAAI,CAAC,MAAM,CACZ,CACF,CAAC;QACJ,CAAC;QACD,OAAO;IACT,CAAC;IACD,IAAI,GAAG,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QAChC,MAAM,YAAY,GAAG,GAA4B,CAAC;QAClD,IAAI,IAAI,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAChD,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;gBAC/B,WAAW,CAAC,IAAI,CACd,IAAI,CACF,wBAAwB,EACxB,GAAG,KAAK,kDAAkD,EAC1D,IAAI,EACJ,YAAY,CAAC,MAAM,CACpB,CACF,CAAC;gBACF,OAAO;YACT,CAAC;QACH,CAAC;QACD,uBAAuB,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;QACzF,OAAO;IACT,CAAC;IACD,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;QAC5D,sBAAsB,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IAC9D,CAAC;AACH,CAAC;AAED,SAAS,2BAA2B,CAClC,IAAwB,EACxB,IAAY,EACZ,WAAyB;IAEzB,MAAM,QAAQ,GAAG,CAAC,GAA4B,EAAE,EAAE;QAChD,8BAA8B,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7F,CAAC,CAAC;IACF,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;QACtC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;AACH,CAAC;AAED,SAAS,2BAA2B,CAClC,QAAuB,EACvB,QAAsB,EACtB,IAAY,EACZ,WAAyB;IAEzB,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC;IACxD,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,uBAAuB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9E,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CACvB,CAAC,MAAM,EAAgC,EAAE,CACvC,MAAM,CAAC,IAAI,KAAK,UAAU,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,CACrD,CAAC;QACF,8BAA8B,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1F,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAC3B,KAAwB,EACxB,QAAsB,EACtB,IAAY,EACZ,WAAyB;IAEzB,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACnC,2BAA2B,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;YACzE,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,QAAQ,CAAC,uBAAuB,IAAI,EAAE,EAAE,CAAC;gBAC/D,oBAAoB,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC;aAAM,CAAC;YACN,oBAAoB,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,KAAsB,EACtB,QAAsB,EACtB,IAAY,EACZ,WAAyB;IAEzB,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QAC1C,oBAAoB,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,QAAqB,EACrB,QAAsB;IAEtB,MAAM,WAAW,GAAiB,EAAE,CAAC;IACrC,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,IAAI,UAAU,CAAC;IAEpD,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9D,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAED,WAAW,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC5D,WAAW,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC7D,uBAAuB,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IACrE,gBAAgB,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IAE9D,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,GAA4B;IACjE,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,IAAwB;IAC9D,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;QACtC,MAAM,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAA4B;IACzD,OAAO,GAAG,EAAE,IAAI,KAAK,SAAS,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"validate-types.js","sourceRoot":"","sources":["../../src/validate/validate-types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blockml/framework",
3
- "version": "0.9.3",
3
+ "version": "0.9.5",
4
4
  "description": "BlockML framework — TypeRegistry, fork/resolve, parseExpression, validateTypes",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -32,9 +32,9 @@
32
32
  "test": "vitest run packages/framework/test"
33
33
  },
34
34
  "dependencies": {
35
- "@blockml/bom": "^0.9.3",
36
- "@blockml/core": "^1.1.1",
37
- "@blockml/parser": "^0.9.3"
35
+ "@blockml/bom": "^0.9.5",
36
+ "@blockml/core": "^1.2.1",
37
+ "@blockml/parser": "^0.9.5"
38
38
  },
39
39
  "engines": {
40
40
  "node": ">=20"