@jasonbelmonti/markdown-engine 2.0.0 → 3.1.0

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 (196) hide show
  1. package/CHANGELOG.md +45 -1
  2. package/README.md +132 -57
  3. package/dist/api/contracts.d.ts +2 -1
  4. package/dist/api/contracts.d.ts.map +1 -1
  5. package/dist/api/contracts.js +1 -0
  6. package/dist/api/contracts.js.map +1 -1
  7. package/dist/api/declarative-validation.d.ts +2 -2
  8. package/dist/api/declarative-validation.d.ts.map +1 -1
  9. package/dist/api/declarative-validation.js +53 -31
  10. package/dist/api/declarative-validation.js.map +1 -1
  11. package/dist/api/document-set-validation-types.d.ts +32 -0
  12. package/dist/api/document-set-validation-types.d.ts.map +1 -0
  13. package/dist/api/document-set-validation-types.js +2 -0
  14. package/dist/api/document-set-validation-types.js.map +1 -0
  15. package/dist/api/document-set-validation.d.ts +4 -0
  16. package/dist/api/document-set-validation.d.ts.map +1 -0
  17. package/dist/api/document-set-validation.js +60 -0
  18. package/dist/api/document-set-validation.js.map +1 -0
  19. package/dist/api/serialize.d.ts +2 -1
  20. package/dist/api/serialize.d.ts.map +1 -1
  21. package/dist/api/serialize.js.map +1 -1
  22. package/dist/cli/declarative-validation.d.ts.map +1 -1
  23. package/dist/cli/declarative-validation.js +7 -12
  24. package/dist/cli/declarative-validation.js.map +1 -1
  25. package/dist/declarative-validation/applicability/classifier.d.ts +18 -0
  26. package/dist/declarative-validation/applicability/classifier.d.ts.map +1 -0
  27. package/dist/declarative-validation/applicability/classifier.js +37 -0
  28. package/dist/declarative-validation/applicability/classifier.js.map +1 -0
  29. package/dist/declarative-validation/applicability/index.d.ts +2 -0
  30. package/dist/declarative-validation/applicability/index.d.ts.map +1 -0
  31. package/dist/declarative-validation/applicability/index.js +2 -0
  32. package/dist/declarative-validation/applicability/index.js.map +1 -0
  33. package/dist/declarative-validation/assertions/context.d.ts +2 -2
  34. package/dist/declarative-validation/assertions/context.d.ts.map +1 -1
  35. package/dist/declarative-validation/assertions/diagnostics.d.ts +7 -4
  36. package/dist/declarative-validation/assertions/diagnostics.d.ts.map +1 -1
  37. package/dist/declarative-validation/assertions/diagnostics.js +26 -1
  38. package/dist/declarative-validation/assertions/diagnostics.js.map +1 -1
  39. package/dist/declarative-validation/assertions/evaluator.d.ts +2 -2
  40. package/dist/declarative-validation/assertions/evaluator.d.ts.map +1 -1
  41. package/dist/declarative-validation/assertions/evaluator.js +9 -0
  42. package/dist/declarative-validation/assertions/evaluator.js.map +1 -1
  43. package/dist/declarative-validation/assertions/frontmatter-shape.d.ts +9 -0
  44. package/dist/declarative-validation/assertions/frontmatter-shape.d.ts.map +1 -0
  45. package/dist/declarative-validation/assertions/frontmatter-shape.js +105 -0
  46. package/dist/declarative-validation/assertions/frontmatter-shape.js.map +1 -0
  47. package/dist/declarative-validation/assertions/group-evaluator.d.ts +6 -0
  48. package/dist/declarative-validation/assertions/group-evaluator.d.ts.map +1 -0
  49. package/dist/declarative-validation/assertions/group-evaluator.js +57 -0
  50. package/dist/declarative-validation/assertions/group-evaluator.js.map +1 -0
  51. package/dist/declarative-validation/assertions/id-targets.d.ts +15 -0
  52. package/dist/declarative-validation/assertions/id-targets.d.ts.map +1 -1
  53. package/dist/declarative-validation/assertions/id-targets.js +18 -55
  54. package/dist/declarative-validation/assertions/id-targets.js.map +1 -1
  55. package/dist/declarative-validation/assertions/ids.d.ts.map +1 -1
  56. package/dist/declarative-validation/assertions/ids.js +100 -14
  57. package/dist/declarative-validation/assertions/ids.js.map +1 -1
  58. package/dist/declarative-validation/assertions/index.d.ts +1 -0
  59. package/dist/declarative-validation/assertions/index.d.ts.map +1 -1
  60. package/dist/declarative-validation/assertions/index.js +1 -0
  61. package/dist/declarative-validation/assertions/index.js.map +1 -1
  62. package/dist/declarative-validation/assertions/table-column-coverage.d.ts +9 -0
  63. package/dist/declarative-validation/assertions/table-column-coverage.d.ts.map +1 -0
  64. package/dist/declarative-validation/assertions/table-column-coverage.js +108 -0
  65. package/dist/declarative-validation/assertions/table-column-coverage.js.map +1 -0
  66. package/dist/declarative-validation/assertions/text-format.d.ts +9 -0
  67. package/dist/declarative-validation/assertions/text-format.d.ts.map +1 -0
  68. package/dist/declarative-validation/assertions/text-format.js +75 -0
  69. package/dist/declarative-validation/assertions/text-format.js.map +1 -0
  70. package/dist/declarative-validation/compiler/applicability-plan.d.ts +5 -0
  71. package/dist/declarative-validation/compiler/applicability-plan.d.ts.map +1 -0
  72. package/dist/declarative-validation/compiler/applicability-plan.js +22 -0
  73. package/dist/declarative-validation/compiler/applicability-plan.js.map +1 -0
  74. package/dist/declarative-validation/compiler/assertion-builders.d.ts +2 -1
  75. package/dist/declarative-validation/compiler/assertion-builders.d.ts.map +1 -1
  76. package/dist/declarative-validation/compiler/assertion-builders.js +88 -13
  77. package/dist/declarative-validation/compiler/assertion-builders.js.map +1 -1
  78. package/dist/declarative-validation/compiler/assertion-shapes.d.ts +5 -1
  79. package/dist/declarative-validation/compiler/assertion-shapes.d.ts.map +1 -1
  80. package/dist/declarative-validation/compiler/assertion-shapes.js +120 -0
  81. package/dist/declarative-validation/compiler/assertion-shapes.js.map +1 -1
  82. package/dist/declarative-validation/compiler/assertions.d.ts +2 -1
  83. package/dist/declarative-validation/compiler/assertions.d.ts.map +1 -1
  84. package/dist/declarative-validation/compiler/assertions.js +16 -4
  85. package/dist/declarative-validation/compiler/assertions.js.map +1 -1
  86. package/dist/declarative-validation/compiler/compatibility.d.ts.map +1 -1
  87. package/dist/declarative-validation/compiler/compatibility.js +3 -0
  88. package/dist/declarative-validation/compiler/compatibility.js.map +1 -1
  89. package/dist/declarative-validation/compiler/group-plans.d.ts +6 -0
  90. package/dist/declarative-validation/compiler/group-plans.d.ts.map +1 -0
  91. package/dist/declarative-validation/compiler/group-plans.js +67 -0
  92. package/dist/declarative-validation/compiler/group-plans.js.map +1 -0
  93. package/dist/declarative-validation/compiler/index.d.ts +1 -1
  94. package/dist/declarative-validation/compiler/index.d.ts.map +1 -1
  95. package/dist/declarative-validation/compiler/index.js +70 -35
  96. package/dist/declarative-validation/compiler/index.js.map +1 -1
  97. package/dist/declarative-validation/compiler/plan.d.ts +80 -5
  98. package/dist/declarative-validation/compiler/plan.d.ts.map +1 -1
  99. package/dist/declarative-validation/compiler/rule-fields.d.ts +6 -0
  100. package/dist/declarative-validation/compiler/rule-fields.d.ts.map +1 -0
  101. package/dist/declarative-validation/compiler/rule-fields.js +40 -0
  102. package/dist/declarative-validation/compiler/rule-fields.js.map +1 -0
  103. package/dist/declarative-validation/diagnostics/profile-config-diagnostics.d.ts +0 -1
  104. package/dist/declarative-validation/diagnostics/profile-config-diagnostics.d.ts.map +1 -1
  105. package/dist/declarative-validation/diagnostics/profile-config-diagnostics.js +8 -2
  106. package/dist/declarative-validation/diagnostics/profile-config-diagnostics.js.map +1 -1
  107. package/dist/declarative-validation/evidence/index.d.ts +3 -3
  108. package/dist/declarative-validation/evidence/index.d.ts.map +1 -1
  109. package/dist/declarative-validation/evidence/index.js +6 -6
  110. package/dist/declarative-validation/evidence/index.js.map +1 -1
  111. package/dist/declarative-validation/profile/applicability-schema.d.ts +4 -0
  112. package/dist/declarative-validation/profile/applicability-schema.d.ts.map +1 -0
  113. package/dist/declarative-validation/profile/applicability-schema.js +24 -0
  114. package/dist/declarative-validation/profile/applicability-schema.js.map +1 -0
  115. package/dist/declarative-validation/profile/assertion-schema.d.ts +2 -1
  116. package/dist/declarative-validation/profile/assertion-schema.d.ts.map +1 -1
  117. package/dist/declarative-validation/profile/assertion-schema.js +194 -14
  118. package/dist/declarative-validation/profile/assertion-schema.js.map +1 -1
  119. package/dist/declarative-validation/profile/direct-profile-diagnostics.d.ts +3 -1
  120. package/dist/declarative-validation/profile/direct-profile-diagnostics.d.ts.map +1 -1
  121. package/dist/declarative-validation/profile/direct-profile-diagnostics.js +10 -2
  122. package/dist/declarative-validation/profile/direct-profile-diagnostics.js.map +1 -1
  123. package/dist/declarative-validation/profile/frontmatter-shape-schema.d.ts +8 -0
  124. package/dist/declarative-validation/profile/frontmatter-shape-schema.d.ts.map +1 -0
  125. package/dist/declarative-validation/profile/frontmatter-shape-schema.js +178 -0
  126. package/dist/declarative-validation/profile/frontmatter-shape-schema.js.map +1 -0
  127. package/dist/declarative-validation/profile/group-schema.d.ts +5 -0
  128. package/dist/declarative-validation/profile/group-schema.d.ts.map +1 -0
  129. package/dist/declarative-validation/profile/group-schema.js +55 -0
  130. package/dist/declarative-validation/profile/group-schema.js.map +1 -0
  131. package/dist/declarative-validation/profile/ids-assertion-contract.d.ts +12 -0
  132. package/dist/declarative-validation/profile/ids-assertion-contract.d.ts.map +1 -0
  133. package/dist/declarative-validation/profile/ids-assertion-contract.js +32 -0
  134. package/dist/declarative-validation/profile/ids-assertion-contract.js.map +1 -0
  135. package/dist/declarative-validation/profile/index.d.ts +63 -2
  136. package/dist/declarative-validation/profile/index.d.ts.map +1 -1
  137. package/dist/declarative-validation/profile/index.js.map +1 -1
  138. package/dist/declarative-validation/profile/materialization.d.ts.map +1 -1
  139. package/dist/declarative-validation/profile/materialization.js +13 -10
  140. package/dist/declarative-validation/profile/materialization.js.map +1 -1
  141. package/dist/declarative-validation/profile/schema.d.ts.map +1 -1
  142. package/dist/declarative-validation/profile/schema.js +73 -12
  143. package/dist/declarative-validation/profile/schema.js.map +1 -1
  144. package/dist/declarative-validation/profile/syntax-version.d.ts +7 -0
  145. package/dist/declarative-validation/profile/syntax-version.d.ts.map +1 -0
  146. package/dist/declarative-validation/profile/syntax-version.js +11 -0
  147. package/dist/declarative-validation/profile/syntax-version.js.map +1 -0
  148. package/dist/declarative-validation/profile/text-format-contract.d.ts +4 -0
  149. package/dist/declarative-validation/profile/text-format-contract.d.ts.map +1 -0
  150. package/dist/declarative-validation/profile/text-format-contract.js +6 -0
  151. package/dist/declarative-validation/profile/text-format-contract.js.map +1 -0
  152. package/dist/declarative-validation/results/clone-rule-result.d.ts +6 -0
  153. package/dist/declarative-validation/results/clone-rule-result.d.ts.map +1 -0
  154. package/dist/declarative-validation/results/clone-rule-result.js +125 -0
  155. package/dist/declarative-validation/results/clone-rule-result.js.map +1 -0
  156. package/dist/declarative-validation/results/create-result.d.ts +15 -0
  157. package/dist/declarative-validation/results/create-result.d.ts.map +1 -0
  158. package/dist/declarative-validation/results/create-result.js +58 -0
  159. package/dist/declarative-validation/results/create-result.js.map +1 -0
  160. package/dist/declarative-validation/results/index.d.ts +3 -25
  161. package/dist/declarative-validation/results/index.d.ts.map +1 -1
  162. package/dist/declarative-validation/results/index.js +2 -1
  163. package/dist/declarative-validation/results/index.js.map +1 -1
  164. package/dist/declarative-validation/results/skipped-rule-result.d.ts +10 -0
  165. package/dist/declarative-validation/results/skipped-rule-result.d.ts.map +1 -0
  166. package/dist/declarative-validation/results/skipped-rule-result.js +18 -0
  167. package/dist/declarative-validation/results/skipped-rule-result.js.map +1 -0
  168. package/dist/declarative-validation/results/types.d.ts +77 -0
  169. package/dist/declarative-validation/results/types.d.ts.map +1 -0
  170. package/dist/declarative-validation/results/types.js +2 -0
  171. package/dist/declarative-validation/results/types.js.map +1 -0
  172. package/dist/declarative-validation/selectors/table-targets.d.ts +23 -0
  173. package/dist/declarative-validation/selectors/table-targets.d.ts.map +1 -1
  174. package/dist/declarative-validation/selectors/table-targets.js +52 -9
  175. package/dist/declarative-validation/selectors/table-targets.js.map +1 -1
  176. package/dist-bundled/markdown-engine-cli.mjs +27373 -0
  177. package/docs/contracts/api.md +79 -15
  178. package/docs/contracts/declarative-validation.md +462 -40
  179. package/fixtures/declarative-validation/examples/okf-v0.1/fail/invalid-log-date/log.md +5 -0
  180. package/fixtures/declarative-validation/examples/okf-v0.1/fail/missing-concept-type/concepts/customer-metric.md +8 -0
  181. package/fixtures/declarative-validation/examples/okf-v0.1/fail/non-root-index-frontmatter/datasets/index.md +7 -0
  182. package/fixtures/declarative-validation/examples/okf-v0.1/pass/datasets/index.md +3 -0
  183. package/fixtures/declarative-validation/examples/okf-v0.1/pass/datasets/sales.md +16 -0
  184. package/fixtures/declarative-validation/examples/okf-v0.1/pass/index.md +8 -0
  185. package/fixtures/declarative-validation/examples/okf-v0.1/pass/log.md +9 -0
  186. package/fixtures/declarative-validation/examples/okf-v0.1/pass/playbooks/incident-response.md +17 -0
  187. package/fixtures/declarative-validation/examples/okf-v0.1/profiles/concept.yaml +14 -0
  188. package/fixtures/declarative-validation/examples/okf-v0.1/profiles/log.yaml +10 -0
  189. package/fixtures/declarative-validation/examples/okf-v0.1/profiles/non-root-index.yaml +9 -0
  190. package/fixtures/declarative-validation/examples/okf-v0.1/profiles/root-index.yaml +12 -0
  191. package/package.json +9 -3
  192. package/scripts/install-markdown-engine-cli.sh +113 -0
  193. package/skills/profile-backed-markdown/SKILL.md +54 -0
  194. package/skills/profile-backed-markdown/assets/profiles/operational-spec.yaml +98 -0
  195. package/skills/profile-backed-markdown/references/repair-brief.md +14 -0
  196. package/skills/profile-backed-markdown/scripts/validate-profile-backed-markdown.mjs +590 -0
@@ -1 +1 @@
1
- {"version":3,"file":"assertion-schema.d.ts","sourceRoot":"","sources":["../../../src/declarative-validation/profile/assertion-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAOnE,OAAO,KAAK,EAAE,oBAAoB,EAAuB,MAAM,YAAY,CAAC;AAwB5E,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,OAAO,EACd,WAAW,EAAE,kBAAkB,EAAE,GAChC,oBAAoB,GAAG,SAAS,CAkClC"}
1
+ {"version":3,"file":"assertion-schema.d.ts","sourceRoot":"","sources":["../../../src/declarative-validation/profile/assertion-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAOnE,OAAO,KAAK,EACV,oBAAoB,EAIrB,MAAM,YAAY,CAAC;AAmBpB,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,qBAAqB,CAAC;AAyB7B,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,OAAO,EACd,aAAa,EAAE,8BAA8B,EAC7C,WAAW,EAAE,kBAAkB,EAAE,GAChC,oBAAoB,GAAG,SAAS,CA+ClC"}
@@ -1,7 +1,11 @@
1
1
  import { isPlainRecord } from "../../internal/plain-record.js";
2
2
  import { hasConfigUnsupportedKeyPrecedence, profileDiagnostic, unsupportedProfileKey, } from "../diagnostics/profile-config-diagnostics.js";
3
+ import { frontmatterShapeFromValue as frontmatterShapeSchemaFromValue } from "./frontmatter-shape-schema.js";
4
+ import { hasEffectiveIdsPredicate, hasValidIdsCountRange, idsAssertionKeysForSyntaxVersion, idsAssertionSupportsCountBounds, } from "./ids-assertion-contract.js";
3
5
  import { invalidShape, isFiniteNumber, optionalBooleanField, optionalStringArrayField, optionalStringField, requiredNonEmptyStringField, stringArray, unsupportedKeys, } from "./schema-values.js";
4
- const SUPPORTED_ASSERTION_KEYS = [
6
+ import { PROFILE_SYNTAX_VERSION_V2, } from "./syntax-version.js";
7
+ import { isTextFormatAssertionFormat, TEXT_FORMAT_ASSERTION_KEYS, } from "./text-format-contract.js";
8
+ const SUPPORTED_ASSERTION_KEYS_V1 = [
5
9
  "exists",
6
10
  "sectionsRequired",
7
11
  "tableColumnsRequired",
@@ -12,22 +16,37 @@ const SUPPORTED_ASSERTION_KEYS = [
12
16
  "textLength",
13
17
  "frontmatterRequired",
14
18
  ];
15
- export function assertionFromValue(value, diagnostics) {
19
+ const SUPPORTED_ASSERTION_KEYS_V2 = [
20
+ ...SUPPORTED_ASSERTION_KEYS_V1,
21
+ "tableColumnCoverage",
22
+ "frontmatterShape",
23
+ "textFormat",
24
+ ];
25
+ export function assertionFromValue(value, syntaxVersion, diagnostics) {
16
26
  if (!isPlainRecord(value)) {
17
27
  diagnostics.push(invalidShape("Rule assert must be an object."));
18
28
  return undefined;
19
29
  }
20
- const hasUnsupportedVocabulary = unsupportedAssertionKeys(value, diagnostics);
30
+ const hasUnsupportedVocabulary = unsupportedAssertionKeys(value, syntaxVersion, diagnostics);
21
31
  const assertion = {
22
32
  ...existsFromValue(value.exists, diagnostics),
23
33
  ...sectionsRequiredFromValue(value.sectionsRequired, diagnostics),
24
34
  ...tableColumnsRequiredFromValue(value.tableColumnsRequired, diagnostics),
25
- ...idsFromValue(value.ids, diagnostics),
35
+ ...idsFromValue(value.ids, syntaxVersion, diagnostics),
26
36
  ...referencesFromValue(value.references, diagnostics),
27
37
  ...textAssertionFromValue(value.text, diagnostics),
28
38
  ...textOccurrenceCountFromValue(value.textOccurrenceCount, diagnostics),
29
39
  ...textLengthFromValue(value.textLength, diagnostics),
30
40
  ...frontmatterRequiredFromValue(value.frontmatterRequired, diagnostics),
41
+ ...(supportsV2AssertionSurface(syntaxVersion)
42
+ ? tableColumnCoverageFromValue(value.tableColumnCoverage, diagnostics)
43
+ : {}),
44
+ ...(supportsV2AssertionSurface(syntaxVersion)
45
+ ? frontmatterShapeFromValue(value.frontmatterShape, diagnostics)
46
+ : {}),
47
+ ...(supportsV2AssertionSurface(syntaxVersion)
48
+ ? textFormatFromValue(value.textFormat, diagnostics)
49
+ : {}),
31
50
  };
32
51
  if (Object.keys(assertion).length === 0) {
33
52
  if (hasUnsupportedVocabulary) {
@@ -38,10 +57,11 @@ export function assertionFromValue(value, diagnostics) {
38
57
  }
39
58
  return assertion;
40
59
  }
41
- function unsupportedAssertionKeys(value, diagnostics) {
60
+ function unsupportedAssertionKeys(value, syntaxVersion, diagnostics) {
42
61
  let hasUnsupportedVocabulary = false;
62
+ const supportedAssertionKeys = assertionKeysForSyntaxVersion(syntaxVersion);
43
63
  for (const key of Object.keys(value)) {
44
- if (SUPPORTED_ASSERTION_KEYS.includes(key)) {
64
+ if (supportedAssertionKeys.includes(key)) {
45
65
  continue;
46
66
  }
47
67
  hasUnsupportedVocabulary = true;
@@ -53,6 +73,14 @@ function unsupportedAssertionKeys(value, diagnostics) {
53
73
  }
54
74
  return hasUnsupportedVocabulary;
55
75
  }
76
+ function assertionKeysForSyntaxVersion(syntaxVersion) {
77
+ return supportsV2AssertionSurface(syntaxVersion)
78
+ ? SUPPORTED_ASSERTION_KEYS_V2
79
+ : SUPPORTED_ASSERTION_KEYS_V1;
80
+ }
81
+ function supportsV2AssertionSurface(syntaxVersion) {
82
+ return syntaxVersion === PROFILE_SYNTAX_VERSION_V2;
83
+ }
56
84
  function existsFromValue(value, diagnostics) {
57
85
  if (value === undefined) {
58
86
  return {};
@@ -106,7 +134,7 @@ function tableColumnsRequiredFromValue(value, diagnostics) {
106
134
  }
107
135
  return { tableColumnsRequired: { columns } };
108
136
  }
109
- function idsFromValue(value, diagnostics) {
137
+ function idsFromValue(value, syntaxVersion, diagnostics) {
110
138
  if (value === undefined) {
111
139
  return {};
112
140
  }
@@ -114,17 +142,37 @@ function idsFromValue(value, diagnostics) {
114
142
  diagnostics.push(invalidShape("ids must be an object."));
115
143
  return {};
116
144
  }
117
- unsupportedKeys(value, ["prefix", "unique", "caseSensitive"], diagnostics);
118
- if (value.unique !== true) {
145
+ const supportsCountBounds = idsAssertionSupportsCountBounds(syntaxVersion);
146
+ unsupportedKeys(value, idsAssertionKeysForSyntaxVersion(syntaxVersion), diagnostics);
147
+ const diagnosticCountBeforeIdsShape = diagnostics.length;
148
+ const ids = {
149
+ ...optionalAssertionString(value, "prefix", diagnostics),
150
+ ...(value.unique === true ? { unique: true } : {}),
151
+ ...optionalBoolean(value, "caseSensitive", diagnostics),
152
+ ...(supportsCountBounds
153
+ ? optionalIdCountBound(value, "minCount", diagnostics)
154
+ : {}),
155
+ ...(supportsCountBounds
156
+ ? optionalIdCountBound(value, "maxCount", diagnostics)
157
+ : {}),
158
+ };
159
+ if (diagnostics.length > diagnosticCountBeforeIdsShape) {
160
+ return {};
161
+ }
162
+ if (value.unique !== undefined && value.unique !== true) {
163
+ diagnostics.push(invalidShape("ids.unique must be true."));
164
+ return {};
165
+ }
166
+ if (!hasEffectiveIdsPredicate(ids, syntaxVersion)) {
119
167
  diagnostics.push(invalidShape("ids.unique must be true."));
120
168
  return {};
121
169
  }
170
+ if (!hasValidIdsCountRange(ids)) {
171
+ diagnostics.push(invalidShape("ids.minCount must be less than or equal to ids.maxCount."));
172
+ return {};
173
+ }
122
174
  return {
123
- ids: {
124
- ...optionalAssertionString(value, "prefix", diagnostics),
125
- unique: true,
126
- ...optionalBoolean(value, "caseSensitive", diagnostics),
127
- },
175
+ ids,
128
176
  };
129
177
  }
130
178
  function referencesFromValue(value, diagnostics) {
@@ -145,6 +193,100 @@ function referencesFromValue(value, diagnostics) {
145
193
  ? {}
146
194
  : { references: { idsFrom, mustAppearIn } };
147
195
  }
196
+ function tableColumnCoverageFromValue(value, diagnostics) {
197
+ if (value === undefined) {
198
+ return {};
199
+ }
200
+ if (!isPlainRecord(value)) {
201
+ diagnostics.push(invalidShape("tableColumnCoverage must be an object."));
202
+ return {};
203
+ }
204
+ unsupportedKeys(value, ["source", "target", "require"], diagnostics);
205
+ const source = tableColumnCoverageSourceFromValue(value.source, diagnostics);
206
+ const target = tableColumnCoverageTargetFromValue(value.target, diagnostics);
207
+ const require = value.require === "everySourceId" ? "everySourceId" : undefined;
208
+ if (require === undefined) {
209
+ diagnostics.push(invalidShape('tableColumnCoverage.require must be "everySourceId".'));
210
+ }
211
+ return source === undefined || target === undefined || require === undefined
212
+ ? {}
213
+ : {
214
+ tableColumnCoverage: {
215
+ source,
216
+ target,
217
+ require,
218
+ },
219
+ };
220
+ }
221
+ function tableColumnCoverageSourceFromValue(value, diagnostics) {
222
+ const diagnosticCountBefore = diagnostics.length;
223
+ if (!isPlainRecord(value)) {
224
+ diagnostics.push(invalidShape("tableColumnCoverage.source must be an object."));
225
+ return undefined;
226
+ }
227
+ unsupportedKeys(value, ["section", "column", "prefix", "caseSensitive"], diagnostics);
228
+ const section = requiredAssertionString(value.section, "tableColumnCoverage.source.section", diagnostics);
229
+ const column = requiredAssertionString(value.column, "tableColumnCoverage.source.column", diagnostics);
230
+ const source = {
231
+ ...optionalTableColumnCoverageSourceString(value, "prefix", diagnostics),
232
+ ...optionalTableColumnCoverageSourceBoolean(value, "caseSensitive", diagnostics),
233
+ };
234
+ return section === undefined ||
235
+ column === undefined ||
236
+ diagnostics.length > diagnosticCountBefore
237
+ ? undefined
238
+ : {
239
+ section,
240
+ column,
241
+ ...source,
242
+ };
243
+ }
244
+ function tableColumnCoverageTargetFromValue(value, diagnostics) {
245
+ const diagnosticCountBefore = diagnostics.length;
246
+ if (!isPlainRecord(value)) {
247
+ diagnostics.push(invalidShape("tableColumnCoverage.target must be an object."));
248
+ return undefined;
249
+ }
250
+ unsupportedKeys(value, ["section", "tableHeader", "column"], diagnostics);
251
+ const section = requiredAssertionString(value.section, "tableColumnCoverage.target.section", diagnostics);
252
+ const column = requiredAssertionString(value.column, "tableColumnCoverage.target.column", diagnostics);
253
+ const target = {
254
+ ...optionalTableColumnCoverageTargetStringArray(value, "tableHeader", diagnostics),
255
+ };
256
+ return section === undefined ||
257
+ column === undefined ||
258
+ diagnostics.length > diagnosticCountBefore
259
+ ? undefined
260
+ : {
261
+ section,
262
+ ...target,
263
+ column,
264
+ };
265
+ }
266
+ function optionalTableColumnCoverageSourceString(record, key, diagnostics) {
267
+ return optionalStringField(record, key, diagnostics, (field) => `tableColumnCoverage.source.${field} must be a non-empty string when provided.`);
268
+ }
269
+ function optionalTableColumnCoverageSourceBoolean(record, key, diagnostics) {
270
+ return optionalBooleanField(record, key, diagnostics, (field) => `tableColumnCoverage.source.${field} must be a boolean when provided.`);
271
+ }
272
+ function optionalTableColumnCoverageTargetStringArray(record, key, diagnostics) {
273
+ return optionalStringArrayField(record, key, diagnostics, (field) => `tableColumnCoverage.target.${field} must be an array of non-empty strings when provided.`);
274
+ }
275
+ function frontmatterShapeFromValue(value, diagnostics) {
276
+ if (value === undefined) {
277
+ return {};
278
+ }
279
+ const result = frontmatterShapeSchemaFromValue(value);
280
+ for (const key of result.unsupportedKeys) {
281
+ diagnostics.push(unsupportedProfileKey(key));
282
+ }
283
+ for (const message of result.invalidShapes) {
284
+ diagnostics.push(invalidShape(message));
285
+ }
286
+ return result.shape === undefined
287
+ ? {}
288
+ : { frontmatterShape: result.shape };
289
+ }
148
290
  function textAssertionFromValue(value, diagnostics) {
149
291
  if (value === undefined) {
150
292
  return {};
@@ -213,6 +355,26 @@ function textLengthFromValue(value, diagnostics) {
213
355
  }
214
356
  return { textLength };
215
357
  }
358
+ function textFormatFromValue(value, diagnostics) {
359
+ if (value === undefined) {
360
+ return {};
361
+ }
362
+ if (!isPlainRecord(value)) {
363
+ diagnostics.push(invalidShape("textFormat must be an object."));
364
+ return {};
365
+ }
366
+ const diagnosticCountBeforeShape = diagnostics.length;
367
+ unsupportedKeys(value, TEXT_FORMAT_ASSERTION_KEYS, diagnostics);
368
+ const format = value.format;
369
+ const hasSupportedFormat = isTextFormatAssertionFormat(format);
370
+ if (!hasSupportedFormat) {
371
+ diagnostics.push(invalidShape('textFormat.format must be "isoDate".'));
372
+ }
373
+ if (diagnostics.length > diagnosticCountBeforeShape || !hasSupportedFormat) {
374
+ return {};
375
+ }
376
+ return { textFormat: { format } };
377
+ }
216
378
  function frontmatterRequiredFromValue(value, diagnostics) {
217
379
  if (value === undefined) {
218
380
  return {};
@@ -265,6 +427,21 @@ function optionalTextLengthBound(record, key, diagnostics) {
265
427
  }
266
428
  return { [key]: value };
267
429
  }
430
+ function optionalIdCountBound(record, key, diagnostics) {
431
+ const value = record[key];
432
+ if (value === undefined) {
433
+ return {};
434
+ }
435
+ if (!isFiniteNumber(value)) {
436
+ diagnostics.push(invalidShape(`ids.${key} must be a number when provided.`));
437
+ return {};
438
+ }
439
+ if (!isNonNegativeInteger(value)) {
440
+ diagnostics.push(invalidShape(`ids.${key} must be a non-negative integer when provided.`));
441
+ return {};
442
+ }
443
+ return { [key]: value };
444
+ }
268
445
  function requiredAssertionString(value, field, diagnostics) {
269
446
  return requiredNonEmptyStringField(value, field, diagnostics, (fieldName) => `${fieldName} must be a non-empty string.`);
270
447
  }
@@ -280,6 +457,9 @@ function hasValidTextLengthRange(textLength) {
280
457
  textLength.min <= textLength.max);
281
458
  }
282
459
  function isTextLengthBound(value) {
460
+ return isNonNegativeInteger(value);
461
+ }
462
+ function isNonNegativeInteger(value) {
283
463
  return Number.isInteger(value) && value >= 0;
284
464
  }
285
465
  //# sourceMappingURL=assertion-schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"assertion-schema.js","sourceRoot":"","sources":["../../../src/declarative-validation/profile/assertion-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EACL,iCAAiC,EACjC,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,8CAA8C,CAAC;AAEtD,OAAO,EACL,YAAY,EACZ,cAAc,EACd,oBAAoB,EACpB,wBAAwB,EACxB,mBAAmB,EACnB,2BAA2B,EAC3B,WAAW,EACX,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,wBAAwB,GAAG;IAC/B,QAAQ;IACR,kBAAkB;IAClB,sBAAsB;IACtB,KAAK;IACL,YAAY;IACZ,MAAM;IACN,qBAAqB;IACrB,YAAY;IACZ,qBAAqB;CACb,CAAC;AAEX,MAAM,UAAU,kBAAkB,CAChC,KAAc,EACd,WAAiC;IAEjC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAEjE,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,wBAAwB,GAAG,wBAAwB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAE9E,MAAM,SAAS,GAAG;QAChB,GAAG,eAAe,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC;QAC7C,GAAG,yBAAyB,CAAC,KAAK,CAAC,gBAAgB,EAAE,WAAW,CAAC;QACjE,GAAG,6BAA6B,CAAC,KAAK,CAAC,oBAAoB,EAAE,WAAW,CAAC;QACzE,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC;QACvC,GAAG,mBAAmB,CAAC,KAAK,CAAC,UAAU,EAAE,WAAW,CAAC;QACrD,GAAG,sBAAsB,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,CAAC;QAClD,GAAG,4BAA4B,CAAC,KAAK,CAAC,mBAAmB,EAAE,WAAW,CAAC;QACvE,GAAG,mBAAmB,CAAC,KAAK,CAAC,UAAU,EAAE,WAAW,CAAC;QACrD,GAAG,4BAA4B,CAAC,KAAK,CAAC,mBAAmB,EAAE,WAAW,CAAC;KACxE,CAAC;IAEF,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxC,IAAI,wBAAwB,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,WAAW,CAAC,IAAI,CACd,YAAY,CAAC,4DAA4D,CAAC,CAC3E,CAAC;QAEF,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,wBAAwB,CAC/B,KAA8B,EAC9B,WAAiC;IAEjC,IAAI,wBAAwB,GAAG,KAAK,CAAC;IAErC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,IAAI,wBAAwB,CAAC,QAAQ,CAAC,GAA4B,CAAC,EAAE,CAAC;YACpE,SAAS;QACX,CAAC;QAED,wBAAwB,GAAG,IAAI,CAAC;QAEhC,IAAI,iCAAiC,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3C,WAAW,CAAC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC;YAC7C,SAAS;QACX,CAAC;QAED,WAAW,CAAC,IAAI,CACd,iBAAiB,CACf,sCAAsC,EACtC,0BAA0B,GAAG,IAAI,CAClC,CACF,CAAC;IACJ,CAAC;IAED,OAAO,wBAAwB,CAAC;AAClC,CAAC;AAID,SAAS,eAAe,CACtB,KAAc,EACd,WAAiC;IAEjC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAEvD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED,SAAS,yBAAyB,CAChC,KAAc,EACd,WAAiC;IAEjC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAEtE,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,eAAe,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,WAAW,CAAC,CAAC;IAE3D,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,WAAW,CAAC,IAAI,CACd,YAAY,CACV,kEAAkE,CACnE,CACF,CAAC;QAEF,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IACE,KAAK,CAAC,KAAK,KAAK,SAAS;QACzB,KAAK,CAAC,KAAK,KAAK,MAAM;QACtB,KAAK,CAAC,KAAK,KAAK,QAAQ,EACxB,CAAC;QACD,WAAW,CAAC,IAAI,CACd,YAAY,CACV,sEAAsE,CACvE,CACF,CAAC;QAEF,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO;QACL,gBAAgB,EAAE;YAChB,QAAQ;YACR,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7D;KACF,CAAC;AACJ,CAAC;AAED,SAAS,6BAA6B,CACpC,KAAc,EACd,WAAiC;IAEjC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,yCAAyC,CAAC,CAAC,CAAC;QAE1E,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,eAAe,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC;IAEjD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CACd,YAAY,CACV,qEAAqE,CACtE,CACF,CAAC;QAEF,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,EAAE,oBAAoB,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC;AAC/C,CAAC;AAED,SAAS,YAAY,CACnB,KAAc,EACd,WAAiC;IAEjC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC,CAAC;QAEzD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,eAAe,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC,EAAE,WAAW,CAAC,CAAC;IAE3E,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,0BAA0B,CAAC,CAAC,CAAC;QAE3D,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO;QACL,GAAG,EAAE;YACH,GAAG,uBAAuB,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC;YACxD,MAAM,EAAE,IAAI;YACZ,GAAG,eAAe,CAAC,KAAK,EAAE,eAAe,EAAE,WAAW,CAAC;SACxD;KACF,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,KAAc,EACd,WAAiC;IAEjC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAEhE,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,eAAe,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,WAAW,CAAC,CAAC;IAEjE,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC9D,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAErD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,WAAW,CAAC,IAAI,CACd,YAAY,CAAC,gEAAgE,CAAC,CAC/E,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,KAAK,SAAS,IAAI,YAAY,KAAK,SAAS;QACxD,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAc,EACd,WAAiC;IAEjC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC,CAAC;QAE1D,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,eAAe,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,WAAW,CAAC,CAAC;IAE9D,MAAM,IAAI,GAAG;QACX,GAAG,uBAAuB,CAAC,KAAK,EAAE,UAAU,EAAE,WAAW,CAAC;QAC1D,GAAG,mBAAmB,CAAC,KAAK,EAAE,UAAU,EAAE,WAAW,CAAC;KACvD,CAAC;IAEF,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,WAAW,CAAC,IAAI,CACd,YAAY,CACV,2DAA2D,CAC5D,CACF,CAAC;QAEF,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,CAAC;AAClB,CAAC;AAED,SAAS,4BAA4B,CACnC,KAAc,EACd,WAAiC;IAEjC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,wCAAwC,CAAC,CAAC,CAAC;QAEzE,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,eAAe,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,CAAC,CAAC;IAEvD,MAAM,IAAI,GAAG,uBAAuB,CAClC,KAAK,CAAC,IAAI,EACV,0BAA0B,EAC1B,WAAW,CACZ,CAAC;IACF,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAEpE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,6CAA6C,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,OAAO,IAAI,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS;QAC9C,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC;YACE,mBAAmB,EAAE;gBACnB,IAAI;gBACJ,KAAK;aACN;SACF,CAAC;AACR,CAAC;AAED,SAAS,mBAAmB,CAC1B,KAAc,EACd,WAAiC;IAEjC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAEhE,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,eAAe,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC;IAEpD,MAAM,2BAA2B,GAAG,WAAW,CAAC,MAAM,CAAC;IACvD,MAAM,UAAU,GAAG;QACjB,GAAG,uBAAuB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC;QACrD,GAAG,uBAAuB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC;KACtD,CAAC;IAEF,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC;QACpC,IAAI,WAAW,CAAC,MAAM,KAAK,2BAA2B,EAAE,CAAC;YACvD,WAAW,CAAC,IAAI,CACd,YAAY,CAAC,4CAA4C,CAAC,CAC3D,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,EAAE,CAAC;QACzC,WAAW,CAAC,IAAI,CACd,YAAY,CAAC,8DAA8D,CAAC,CAC7E,CAAC;QAEF,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,EAAE,UAAU,EAAE,CAAC;AACxB,CAAC;AAED,SAAS,4BAA4B,CACnC,KAAc,EACd,WAAiC;IAEjC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,wCAAwC,CAAC,CAAC,CAAC;QAEzE,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,eAAe,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,CAAC;IAEhD,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACzC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,WAAW,CAAC,IAAI,CACd,YAAY,CAAC,mEAAmE,CAAC,CAClF,CAAC;QAEF,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,EAAE,mBAAmB,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC;AAC7C,CAAC;AAED,SAAS,iBAAiB,CACxB,KAAc,EACd,WAAiC;IAEjC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,uCAAuC,CAAC,CAAC,CAAC;QAExE,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,eAAe,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,WAAW,CAAC,CAAC;IAErE,OAAO;QACL,GAAG,uBAAuB,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC;QACzD,GAAG,uBAAuB,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC;QACxD,GAAG,uBAAuB,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC;KACzD,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAC9B,MAA+B,EAC/B,GAAW,EACX,WAAiC;IAEjC,OAAO,mBAAmB,CACxB,MAAM,EACN,GAAG,EACH,WAAW,EACX,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,4CAA4C,CAChE,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,MAA+B,EAC/B,GAAW,EACX,WAAiC;IAEjC,OAAO,wBAAwB,CAC7B,MAAM,EACN,GAAG,EACH,WAAW,EACX,CAAC,KAAK,EAAE,EAAE,CACR,GAAG,KAAK,uDAAuD,CAClE,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CACtB,MAA+B,EAC/B,GAAW,EACX,WAAiC;IAEjC,OAAO,oBAAoB,CACzB,MAAM,EACN,GAAG,EACH,WAAW,EACX,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,mCAAmC,CACvD,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAC9B,MAA+B,EAC/B,GAAkB,EAClB,WAAiC;IAEjC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAE1B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,WAAW,CAAC,IAAI,CACd,YAAY,CAAC,cAAc,GAAG,kCAAkC,CAAC,CAClE,CAAC;QAEF,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,WAAW,CAAC,IAAI,CACd,YAAY,CACV,cAAc,GAAG,gDAAgD,CAClE,CACF,CAAC;QAEF,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAA4C,CAAC;AACpE,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAAc,EACd,KAAa,EACb,WAAiC;IAEjC,OAAO,2BAA2B,CAChC,KAAK,EACL,KAAK,EACL,WAAW,EACX,CAAC,SAAS,EAAE,EAAE,CAAC,GAAG,SAAS,8BAA8B,CAC1D,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAkC;IAC1D,OAAO,IAAI,EAAE,QAAQ,KAAK,SAAS,IAAI,IAAI,EAAE,QAAQ,KAAK,SAAS,CAAC;AACtE,CAAC;AAED,SAAS,kBAAkB,CACzB,UAA8C;IAE9C,OAAO,UAAU,EAAE,GAAG,KAAK,SAAS,IAAI,UAAU,EAAE,GAAG,KAAK,SAAS,CAAC;AACxE,CAAC;AAED,SAAS,uBAAuB,CAC9B,UAA8C;IAE9C,OAAO,CACL,UAAU,EAAE,GAAG,KAAK,SAAS;QAC7B,UAAU,CAAC,GAAG,KAAK,SAAS;QAC5B,UAAU,CAAC,GAAG,IAAI,UAAU,CAAC,GAAG,CACjC,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa;IACtC,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AAC/C,CAAC"}
1
+ {"version":3,"file":"assertion-schema.js","sourceRoot":"","sources":["../../../src/declarative-validation/profile/assertion-schema.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  import type { MarkdownDiagnostic } from "../../api/diagnostics.js";
2
2
  export declare const PROFILE_KEYS: readonly ["syntaxVersion", "documentVersion", "rules"];
3
- export declare const RULE_KEYS: readonly ["id", "severity", "select", "assert"];
3
+ export declare const RULE_KEYS_V1: readonly ["id", "severity", "select", "assert"];
4
+ export declare const RULE_KEYS_V2: readonly ["id", "severity", "select", "assert", "when", "anyOf", "allOf"];
4
5
  export declare function pushDirectProfileUnsupportedKeyDiagnostics(value: unknown, diagnostics: MarkdownDiagnostic[]): boolean;
6
+ export declare function directProfileDataPropertyValue(value: unknown, key: (typeof PROFILE_KEYS)[number]): unknown;
5
7
  //# sourceMappingURL=direct-profile-diagnostics.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"direct-profile-diagnostics.d.ts","sourceRoot":"","sources":["../../../src/declarative-validation/profile/direct-profile-diagnostics.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAInE,eAAO,MAAM,YAAY,wDAAyD,CAAC;AACnF,eAAO,MAAM,SAAS,iDAAkD,CAAC;AAEzE,wBAAgB,0CAA0C,CACxD,KAAK,EAAE,OAAO,EACd,WAAW,EAAE,kBAAkB,EAAE,GAChC,OAAO,CA+BT"}
1
+ {"version":3,"file":"direct-profile-diagnostics.d.ts","sourceRoot":"","sources":["../../../src/declarative-validation/profile/direct-profile-diagnostics.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAKnE,eAAO,MAAM,YAAY,wDAAyD,CAAC;AACnF,eAAO,MAAM,YAAY,iDAAkD,CAAC;AAC5E,eAAO,MAAM,YAAY,2EAAuD,CAAC;AAEjF,wBAAgB,0CAA0C,CACxD,KAAK,EAAE,OAAO,EACd,WAAW,EAAE,kBAAkB,EAAE,GAChC,OAAO,CAoCT;AAED,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,OAAO,EACd,GAAG,EAAE,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,GACjC,OAAO,CAET"}
@@ -1,8 +1,10 @@
1
1
  import { types as nodeTypes } from "node:util";
2
2
  import { isPlainRecord } from "../../internal/plain-record.js";
3
3
  import { unsupportedProfileKey } from "../diagnostics/profile-config-diagnostics.js";
4
+ import { PROFILE_SYNTAX_VERSION_V2 } from "./syntax-version.js";
4
5
  export const PROFILE_KEYS = ["syntaxVersion", "documentVersion", "rules"];
5
- export const RULE_KEYS = ["id", "severity", "select", "assert"];
6
+ export const RULE_KEYS_V1 = ["id", "severity", "select", "assert"];
7
+ export const RULE_KEYS_V2 = [...RULE_KEYS_V1, "when", "anyOf", "allOf"];
6
8
  export function pushDirectProfileUnsupportedKeyDiagnostics(value, diagnostics) {
7
9
  const keys = enumerableDataKeys(value);
8
10
  if (keys === undefined) {
@@ -16,6 +18,8 @@ export function pushDirectProfileUnsupportedKeyDiagnostics(value, diagnostics) {
16
18
  !Array.isArray(rules)) {
17
19
  return hasUnsupportedKeys;
18
20
  }
21
+ const syntaxVersion = dataPropertyValue(value, "syntaxVersion");
22
+ const allowedRuleKeys = syntaxVersion === PROFILE_SYNTAX_VERSION_V2 ? RULE_KEYS_V2 : RULE_KEYS_V1;
19
23
  for (let index = 0; index < rules.length; index += 1) {
20
24
  const descriptor = safePropertyDescriptor(rules, String(index));
21
25
  if (descriptor === undefined || !("value" in descriptor)) {
@@ -24,11 +28,15 @@ export function pushDirectProfileUnsupportedKeyDiagnostics(value, diagnostics) {
24
28
  const ruleKeys = enumerableDataKeys(descriptor.value);
25
29
  if (ruleKeys !== undefined) {
26
30
  hasUnsupportedKeys =
27
- pushUnsupportedKeys(ruleKeys, RULE_KEYS, diagnostics) || hasUnsupportedKeys;
31
+ pushUnsupportedKeys(ruleKeys, allowedRuleKeys, diagnostics) ||
32
+ hasUnsupportedKeys;
28
33
  }
29
34
  }
30
35
  return hasUnsupportedKeys;
31
36
  }
37
+ export function directProfileDataPropertyValue(value, key) {
38
+ return dataPropertyValue(value, key);
39
+ }
32
40
  function pushUnsupportedKeys(keys, allowedKeys, diagnostics) {
33
41
  let hasUnsupportedKeys = false;
34
42
  for (const key of keys) {
@@ -1 +1 @@
1
- {"version":3,"file":"direct-profile-diagnostics.js","sourceRoot":"","sources":["../../../src/declarative-validation/profile/direct-profile-diagnostics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"direct-profile-diagnostics.js","sourceRoot":"","sources":["../../../src/declarative-validation/profile/direct-profile-diagnostics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { DeclarativeFrontmatterShape } from "./index.js";
2
+ export interface FrontmatterShapeSchemaResult {
3
+ shape?: DeclarativeFrontmatterShape;
4
+ invalidShapes: readonly string[];
5
+ unsupportedKeys: readonly string[];
6
+ }
7
+ export declare function frontmatterShapeFromValue(value: unknown): FrontmatterShapeSchemaResult;
8
+ //# sourceMappingURL=frontmatter-shape-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frontmatter-shape-schema.d.ts","sourceRoot":"","sources":["../../../src/declarative-validation/profile/frontmatter-shape-schema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAGV,2BAA2B,EAE5B,MAAM,YAAY,CAAC;AAepB,MAAM,WAAW,4BAA4B;IAC3C,KAAK,CAAC,EAAE,2BAA2B,CAAC;IACpC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,GACb,4BAA4B,CAU9B"}
@@ -0,0 +1,178 @@
1
+ import { isPlainRecord } from "../../internal/plain-record.js";
2
+ const FRONTMATTER_PRESENCE_VALUES = new Set([
3
+ "required",
4
+ "forbidden",
5
+ ]);
6
+ const FRONTMATTER_VALUE_TYPES = new Set([
7
+ "string",
8
+ "number",
9
+ "boolean",
10
+ "array",
11
+ "object",
12
+ "null",
13
+ ]);
14
+ export function frontmatterShapeFromValue(value) {
15
+ const invalidShapes = [];
16
+ const unsupportedKeys = [];
17
+ const shape = frontmatterShape(value, invalidShapes, unsupportedKeys);
18
+ return {
19
+ ...(shape !== undefined ? { shape } : {}),
20
+ invalidShapes,
21
+ unsupportedKeys,
22
+ };
23
+ }
24
+ function frontmatterShape(value, invalidShapes, unsupportedKeys) {
25
+ if (!isPlainRecord(value)) {
26
+ invalidShapes.push("frontmatterShape must be an object.");
27
+ return undefined;
28
+ }
29
+ collectUnsupportedKeys(value, ["presence", "fields"], unsupportedKeys);
30
+ let valid = true;
31
+ const presence = frontmatterPresence(value.presence, invalidShapes);
32
+ if (value.presence !== undefined && presence === undefined) {
33
+ valid = false;
34
+ }
35
+ const fields = frontmatterFields(value.fields, invalidShapes, unsupportedKeys);
36
+ if (value.fields !== undefined && fields === undefined) {
37
+ valid = false;
38
+ }
39
+ if (value.presence === undefined && value.fields === undefined) {
40
+ invalidShapes.push("frontmatterShape must include presence or fields.");
41
+ valid = false;
42
+ }
43
+ if (presence === "forbidden" && fields !== undefined) {
44
+ invalidShapes.push("frontmatterShape.fields cannot be provided when presence is forbidden.");
45
+ valid = false;
46
+ }
47
+ return valid
48
+ ? {
49
+ ...(presence !== undefined ? { presence } : {}),
50
+ ...(fields !== undefined ? { fields } : {}),
51
+ }
52
+ : undefined;
53
+ }
54
+ function frontmatterPresence(value, invalidShapes) {
55
+ if (value === undefined) {
56
+ return undefined;
57
+ }
58
+ if (typeof value === "string" &&
59
+ FRONTMATTER_PRESENCE_VALUES.has(value)) {
60
+ return value;
61
+ }
62
+ invalidShapes.push('frontmatterShape.presence must be "required" or "forbidden" when provided.');
63
+ return undefined;
64
+ }
65
+ function frontmatterFields(value, invalidShapes, unsupportedKeys) {
66
+ if (value === undefined) {
67
+ return undefined;
68
+ }
69
+ if (!Array.isArray(value) || value.length === 0) {
70
+ invalidShapes.push("frontmatterShape.fields must be a non-empty array when provided.");
71
+ return undefined;
72
+ }
73
+ const fields = [];
74
+ const seenFields = new Set();
75
+ let valid = true;
76
+ for (let index = 0; index < value.length; index += 1) {
77
+ const fieldShape = frontmatterField(value[index], index, invalidShapes, unsupportedKeys);
78
+ if (fieldShape === undefined) {
79
+ valid = false;
80
+ continue;
81
+ }
82
+ if (seenFields.has(fieldShape.field)) {
83
+ invalidShapes.push(`frontmatterShape.fields[${index}].field duplicates field "${fieldShape.field}".`);
84
+ valid = false;
85
+ continue;
86
+ }
87
+ seenFields.add(fieldShape.field);
88
+ fields.push(fieldShape);
89
+ }
90
+ return valid ? fields : undefined;
91
+ }
92
+ function frontmatterField(value, index, invalidShapes, unsupportedKeys) {
93
+ const fieldName = `frontmatterShape.fields[${index}]`;
94
+ if (!isPlainRecord(value)) {
95
+ invalidShapes.push(`${fieldName} must be an object.`);
96
+ return undefined;
97
+ }
98
+ collectUnsupportedKeys(value, ["field", "required", "valueType", "nonEmpty"], unsupportedKeys);
99
+ let valid = true;
100
+ const field = nonEmptyString(value.field);
101
+ if (field === undefined) {
102
+ invalidShapes.push(`${fieldName}.field must be a non-empty string.`);
103
+ valid = false;
104
+ }
105
+ const required = trueConstraint(value.required, `${fieldName}.required`, invalidShapes);
106
+ if (value.required !== undefined && required === undefined) {
107
+ valid = false;
108
+ }
109
+ const valueType = frontmatterValueType(value.valueType, `${fieldName}.valueType`, invalidShapes);
110
+ if (value.valueType !== undefined && valueType === undefined) {
111
+ valid = false;
112
+ }
113
+ const nonEmpty = trueConstraint(value.nonEmpty, `${fieldName}.nonEmpty`, invalidShapes);
114
+ if (value.nonEmpty !== undefined && nonEmpty === undefined) {
115
+ valid = false;
116
+ }
117
+ if (nonEmpty === true && valueType !== undefined && valueType !== "string") {
118
+ invalidShapes.push(`${fieldName}.nonEmpty can be combined only with valueType "string".`);
119
+ valid = false;
120
+ }
121
+ const hasPredicateInput = value.required !== undefined ||
122
+ value.valueType !== undefined ||
123
+ value.nonEmpty !== undefined;
124
+ if (!hasPredicateInput) {
125
+ invalidShapes.push(`${fieldName} must include required, valueType, or nonEmpty.`);
126
+ valid = false;
127
+ }
128
+ if (!valid || field === undefined) {
129
+ return undefined;
130
+ }
131
+ const baseField = {
132
+ field,
133
+ ...(required === true ? { required: true } : {}),
134
+ };
135
+ if (nonEmpty === true) {
136
+ return {
137
+ ...baseField,
138
+ ...(valueType === "string" ? { valueType } : {}),
139
+ nonEmpty: true,
140
+ };
141
+ }
142
+ return {
143
+ ...baseField,
144
+ ...(valueType !== undefined ? { valueType } : {}),
145
+ };
146
+ }
147
+ function trueConstraint(value, fieldName, invalidShapes) {
148
+ if (value === undefined) {
149
+ return undefined;
150
+ }
151
+ if (value === true) {
152
+ return true;
153
+ }
154
+ invalidShapes.push(`${fieldName} must be true when provided.`);
155
+ return undefined;
156
+ }
157
+ function frontmatterValueType(value, fieldName, invalidShapes) {
158
+ if (value === undefined) {
159
+ return undefined;
160
+ }
161
+ if (typeof value === "string" &&
162
+ FRONTMATTER_VALUE_TYPES.has(value)) {
163
+ return value;
164
+ }
165
+ invalidShapes.push(`${fieldName} must be "string", "number", "boolean", "array", "object", or "null" when provided.`);
166
+ return undefined;
167
+ }
168
+ function nonEmptyString(value) {
169
+ return typeof value === "string" && value.length > 0 ? value : undefined;
170
+ }
171
+ function collectUnsupportedKeys(record, allowedKeys, unsupportedKeys) {
172
+ for (const key of Object.keys(record)) {
173
+ if (!allowedKeys.includes(key)) {
174
+ unsupportedKeys.push(key);
175
+ }
176
+ }
177
+ }
178
+ //# sourceMappingURL=frontmatter-shape-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frontmatter-shape-schema.js","sourceRoot":"","sources":["../../../src/declarative-validation/profile/frontmatter-shape-schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { MarkdownDiagnostic } from "../../api/diagnostics.js";
2
+ import type { DeclarativeValidationBranch, ValidationProfile } from "./index.js";
3
+ export type DeclarativeValidationGroupKind = "anyOf" | "allOf";
4
+ export declare function branchesFromValue(value: unknown, ruleIndex: number, groupKind: DeclarativeValidationGroupKind, syntaxVersion: ValidationProfile["syntaxVersion"], diagnostics: MarkdownDiagnostic[]): readonly DeclarativeValidationBranch[] | undefined;
5
+ //# sourceMappingURL=group-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"group-schema.d.ts","sourceRoot":"","sources":["../../../src/declarative-validation/profile/group-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEnE,OAAO,KAAK,EACV,2BAA2B,EAC3B,iBAAiB,EAClB,MAAM,YAAY,CAAC;AAKpB,MAAM,MAAM,8BAA8B,GAAG,OAAO,GAAG,OAAO,CAAC;AAI/D,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,8BAA8B,EACzC,aAAa,EAAE,iBAAiB,CAAC,eAAe,CAAC,EACjD,WAAW,EAAE,kBAAkB,EAAE,GAChC,SAAS,2BAA2B,EAAE,GAAG,SAAS,CA4CpD"}