@nikovirtala/projen-constructs 0.2.110 → 0.2.112

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 (549) hide show
  1. package/.jsii +4 -4
  2. package/lib/components/bundle-lambda-function-code.js +3 -3
  3. package/lib/components/colima.js +1 -1
  4. package/lib/components/homebrew.js +1 -1
  5. package/lib/components/lambda-function-construct-generator.js +1 -1
  6. package/lib/components/localstack.js +1 -1
  7. package/lib/components/mise.js +1 -1
  8. package/lib/components/typedoc.js +1 -1
  9. package/lib/components/vitest.js +1 -1
  10. package/lib/project-generator.js +1 -1
  11. package/lib/projects/awscdk-construct-library.generated.js +1 -1
  12. package/lib/projects/awscdk-typescript-app.generated.js +1 -1
  13. package/lib/projects/jsii.generated.js +1 -1
  14. package/lib/projects/typescript.generated.js +1 -1
  15. package/lib/versions.json +1 -1
  16. package/node_modules/@jsii/spec/jest.config.mjs +4 -1
  17. package/node_modules/@jsii/spec/lib/format-errors.d.ts +3 -0
  18. package/node_modules/@jsii/spec/lib/format-errors.js +12 -0
  19. package/node_modules/@jsii/spec/lib/redirect.js +5 -11
  20. package/node_modules/@jsii/spec/lib/validate-assembly.js +5 -11
  21. package/node_modules/@jsii/spec/lib/validators.js +43 -0
  22. package/node_modules/@jsii/spec/package.json +5 -7
  23. package/package.json +8 -8
  24. package/node_modules/ajv/.runkit_example.js +0 -23
  25. package/node_modules/ajv/LICENSE +0 -22
  26. package/node_modules/ajv/README.md +0 -207
  27. package/node_modules/ajv/dist/2019.d.ts +0 -19
  28. package/node_modules/ajv/dist/2019.js +0 -61
  29. package/node_modules/ajv/dist/2019.js.map +0 -1
  30. package/node_modules/ajv/dist/2020.d.ts +0 -19
  31. package/node_modules/ajv/dist/2020.js +0 -55
  32. package/node_modules/ajv/dist/2020.js.map +0 -1
  33. package/node_modules/ajv/dist/ajv.d.ts +0 -18
  34. package/node_modules/ajv/dist/ajv.js +0 -50
  35. package/node_modules/ajv/dist/ajv.js.map +0 -1
  36. package/node_modules/ajv/dist/compile/codegen/code.d.ts +0 -40
  37. package/node_modules/ajv/dist/compile/codegen/code.js +0 -156
  38. package/node_modules/ajv/dist/compile/codegen/code.js.map +0 -1
  39. package/node_modules/ajv/dist/compile/codegen/index.d.ts +0 -79
  40. package/node_modules/ajv/dist/compile/codegen/index.js +0 -697
  41. package/node_modules/ajv/dist/compile/codegen/index.js.map +0 -1
  42. package/node_modules/ajv/dist/compile/codegen/scope.d.ts +0 -79
  43. package/node_modules/ajv/dist/compile/codegen/scope.js +0 -143
  44. package/node_modules/ajv/dist/compile/codegen/scope.js.map +0 -1
  45. package/node_modules/ajv/dist/compile/errors.d.ts +0 -13
  46. package/node_modules/ajv/dist/compile/errors.js +0 -123
  47. package/node_modules/ajv/dist/compile/errors.js.map +0 -1
  48. package/node_modules/ajv/dist/compile/index.d.ts +0 -80
  49. package/node_modules/ajv/dist/compile/index.js +0 -242
  50. package/node_modules/ajv/dist/compile/index.js.map +0 -1
  51. package/node_modules/ajv/dist/compile/jtd/parse.d.ts +0 -4
  52. package/node_modules/ajv/dist/compile/jtd/parse.js +0 -350
  53. package/node_modules/ajv/dist/compile/jtd/parse.js.map +0 -1
  54. package/node_modules/ajv/dist/compile/jtd/serialize.d.ts +0 -4
  55. package/node_modules/ajv/dist/compile/jtd/serialize.js +0 -229
  56. package/node_modules/ajv/dist/compile/jtd/serialize.js.map +0 -1
  57. package/node_modules/ajv/dist/compile/jtd/types.d.ts +0 -6
  58. package/node_modules/ajv/dist/compile/jtd/types.js +0 -14
  59. package/node_modules/ajv/dist/compile/jtd/types.js.map +0 -1
  60. package/node_modules/ajv/dist/compile/names.d.ts +0 -20
  61. package/node_modules/ajv/dist/compile/names.js +0 -28
  62. package/node_modules/ajv/dist/compile/names.js.map +0 -1
  63. package/node_modules/ajv/dist/compile/ref_error.d.ts +0 -6
  64. package/node_modules/ajv/dist/compile/ref_error.js +0 -12
  65. package/node_modules/ajv/dist/compile/ref_error.js.map +0 -1
  66. package/node_modules/ajv/dist/compile/resolve.d.ts +0 -12
  67. package/node_modules/ajv/dist/compile/resolve.js +0 -155
  68. package/node_modules/ajv/dist/compile/resolve.js.map +0 -1
  69. package/node_modules/ajv/dist/compile/rules.d.ts +0 -28
  70. package/node_modules/ajv/dist/compile/rules.js +0 -26
  71. package/node_modules/ajv/dist/compile/rules.js.map +0 -1
  72. package/node_modules/ajv/dist/compile/util.d.ts +0 -40
  73. package/node_modules/ajv/dist/compile/util.js +0 -178
  74. package/node_modules/ajv/dist/compile/util.js.map +0 -1
  75. package/node_modules/ajv/dist/compile/validate/applicability.d.ts +0 -6
  76. package/node_modules/ajv/dist/compile/validate/applicability.js +0 -19
  77. package/node_modules/ajv/dist/compile/validate/applicability.js.map +0 -1
  78. package/node_modules/ajv/dist/compile/validate/boolSchema.d.ts +0 -4
  79. package/node_modules/ajv/dist/compile/validate/boolSchema.js +0 -50
  80. package/node_modules/ajv/dist/compile/validate/boolSchema.js.map +0 -1
  81. package/node_modules/ajv/dist/compile/validate/dataType.d.ts +0 -17
  82. package/node_modules/ajv/dist/compile/validate/dataType.js +0 -203
  83. package/node_modules/ajv/dist/compile/validate/dataType.js.map +0 -1
  84. package/node_modules/ajv/dist/compile/validate/defaults.d.ts +0 -2
  85. package/node_modules/ajv/dist/compile/validate/defaults.js +0 -35
  86. package/node_modules/ajv/dist/compile/validate/defaults.js.map +0 -1
  87. package/node_modules/ajv/dist/compile/validate/index.d.ts +0 -42
  88. package/node_modules/ajv/dist/compile/validate/index.js +0 -520
  89. package/node_modules/ajv/dist/compile/validate/index.js.map +0 -1
  90. package/node_modules/ajv/dist/compile/validate/keyword.d.ts +0 -8
  91. package/node_modules/ajv/dist/compile/validate/keyword.js +0 -124
  92. package/node_modules/ajv/dist/compile/validate/keyword.js.map +0 -1
  93. package/node_modules/ajv/dist/compile/validate/subschema.d.ts +0 -47
  94. package/node_modules/ajv/dist/compile/validate/subschema.js +0 -81
  95. package/node_modules/ajv/dist/compile/validate/subschema.js.map +0 -1
  96. package/node_modules/ajv/dist/core.d.ts +0 -173
  97. package/node_modules/ajv/dist/core.js +0 -618
  98. package/node_modules/ajv/dist/core.js.map +0 -1
  99. package/node_modules/ajv/dist/jtd.d.ts +0 -47
  100. package/node_modules/ajv/dist/jtd.js +0 -72
  101. package/node_modules/ajv/dist/jtd.js.map +0 -1
  102. package/node_modules/ajv/dist/refs/data.json +0 -13
  103. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.d.ts +0 -2
  104. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.js +0 -28
  105. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.js.map +0 -1
  106. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/applicator.json +0 -53
  107. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/content.json +0 -17
  108. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/core.json +0 -57
  109. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/format.json +0 -14
  110. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/meta-data.json +0 -37
  111. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/validation.json +0 -90
  112. package/node_modules/ajv/dist/refs/json-schema-2019-09/schema.json +0 -39
  113. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.d.ts +0 -2
  114. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.js +0 -30
  115. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.js.map +0 -1
  116. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/applicator.json +0 -48
  117. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/content.json +0 -17
  118. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/core.json +0 -51
  119. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/format-annotation.json +0 -14
  120. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/meta-data.json +0 -37
  121. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/unevaluated.json +0 -15
  122. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/validation.json +0 -90
  123. package/node_modules/ajv/dist/refs/json-schema-2020-12/schema.json +0 -55
  124. package/node_modules/ajv/dist/refs/json-schema-draft-06.json +0 -137
  125. package/node_modules/ajv/dist/refs/json-schema-draft-07.json +0 -151
  126. package/node_modules/ajv/dist/refs/json-schema-secure.json +0 -88
  127. package/node_modules/ajv/dist/refs/jtd-schema.d.ts +0 -3
  128. package/node_modules/ajv/dist/refs/jtd-schema.js +0 -118
  129. package/node_modules/ajv/dist/refs/jtd-schema.js.map +0 -1
  130. package/node_modules/ajv/dist/runtime/equal.d.ts +0 -6
  131. package/node_modules/ajv/dist/runtime/equal.js +0 -7
  132. package/node_modules/ajv/dist/runtime/equal.js.map +0 -1
  133. package/node_modules/ajv/dist/runtime/parseJson.d.ts +0 -18
  134. package/node_modules/ajv/dist/runtime/parseJson.js +0 -185
  135. package/node_modules/ajv/dist/runtime/parseJson.js.map +0 -1
  136. package/node_modules/ajv/dist/runtime/quote.d.ts +0 -5
  137. package/node_modules/ajv/dist/runtime/quote.js +0 -30
  138. package/node_modules/ajv/dist/runtime/quote.js.map +0 -1
  139. package/node_modules/ajv/dist/runtime/re2.d.ts +0 -6
  140. package/node_modules/ajv/dist/runtime/re2.js +0 -6
  141. package/node_modules/ajv/dist/runtime/re2.js.map +0 -1
  142. package/node_modules/ajv/dist/runtime/timestamp.d.ts +0 -5
  143. package/node_modules/ajv/dist/runtime/timestamp.js +0 -42
  144. package/node_modules/ajv/dist/runtime/timestamp.js.map +0 -1
  145. package/node_modules/ajv/dist/runtime/ucs2length.d.ts +0 -5
  146. package/node_modules/ajv/dist/runtime/ucs2length.js +0 -24
  147. package/node_modules/ajv/dist/runtime/ucs2length.js.map +0 -1
  148. package/node_modules/ajv/dist/runtime/uri.d.ts +0 -6
  149. package/node_modules/ajv/dist/runtime/uri.js +0 -6
  150. package/node_modules/ajv/dist/runtime/uri.js.map +0 -1
  151. package/node_modules/ajv/dist/runtime/validation_error.d.ts +0 -7
  152. package/node_modules/ajv/dist/runtime/validation_error.js +0 -11
  153. package/node_modules/ajv/dist/runtime/validation_error.js.map +0 -1
  154. package/node_modules/ajv/dist/standalone/index.d.ts +0 -6
  155. package/node_modules/ajv/dist/standalone/index.js +0 -90
  156. package/node_modules/ajv/dist/standalone/index.js.map +0 -1
  157. package/node_modules/ajv/dist/standalone/instance.d.ts +0 -12
  158. package/node_modules/ajv/dist/standalone/instance.js +0 -35
  159. package/node_modules/ajv/dist/standalone/instance.js.map +0 -1
  160. package/node_modules/ajv/dist/types/index.d.ts +0 -183
  161. package/node_modules/ajv/dist/types/index.js +0 -3
  162. package/node_modules/ajv/dist/types/index.js.map +0 -1
  163. package/node_modules/ajv/dist/types/json-schema.d.ts +0 -125
  164. package/node_modules/ajv/dist/types/json-schema.js +0 -3
  165. package/node_modules/ajv/dist/types/json-schema.js.map +0 -1
  166. package/node_modules/ajv/dist/types/jtd-schema.d.ts +0 -174
  167. package/node_modules/ajv/dist/types/jtd-schema.js +0 -3
  168. package/node_modules/ajv/dist/types/jtd-schema.js.map +0 -1
  169. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.d.ts +0 -8
  170. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +0 -49
  171. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js.map +0 -1
  172. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.d.ts +0 -6
  173. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +0 -106
  174. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js.map +0 -1
  175. package/node_modules/ajv/dist/vocabularies/applicator/allOf.d.ts +0 -3
  176. package/node_modules/ajv/dist/vocabularies/applicator/allOf.js +0 -23
  177. package/node_modules/ajv/dist/vocabularies/applicator/allOf.js.map +0 -1
  178. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.d.ts +0 -4
  179. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +0 -12
  180. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.js.map +0 -1
  181. package/node_modules/ajv/dist/vocabularies/applicator/contains.d.ts +0 -7
  182. package/node_modules/ajv/dist/vocabularies/applicator/contains.js +0 -95
  183. package/node_modules/ajv/dist/vocabularies/applicator/contains.js.map +0 -1
  184. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.d.ts +0 -21
  185. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +0 -85
  186. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.js.map +0 -1
  187. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.d.ts +0 -3
  188. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js +0 -11
  189. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js.map +0 -1
  190. package/node_modules/ajv/dist/vocabularies/applicator/if.d.ts +0 -6
  191. package/node_modules/ajv/dist/vocabularies/applicator/if.js +0 -66
  192. package/node_modules/ajv/dist/vocabularies/applicator/if.js.map +0 -1
  193. package/node_modules/ajv/dist/vocabularies/applicator/index.d.ts +0 -13
  194. package/node_modules/ajv/dist/vocabularies/applicator/index.js +0 -44
  195. package/node_modules/ajv/dist/vocabularies/applicator/index.js.map +0 -1
  196. package/node_modules/ajv/dist/vocabularies/applicator/items.d.ts +0 -5
  197. package/node_modules/ajv/dist/vocabularies/applicator/items.js +0 -52
  198. package/node_modules/ajv/dist/vocabularies/applicator/items.js.map +0 -1
  199. package/node_modules/ajv/dist/vocabularies/applicator/items2020.d.ts +0 -6
  200. package/node_modules/ajv/dist/vocabularies/applicator/items2020.js +0 -30
  201. package/node_modules/ajv/dist/vocabularies/applicator/items2020.js.map +0 -1
  202. package/node_modules/ajv/dist/vocabularies/applicator/not.d.ts +0 -4
  203. package/node_modules/ajv/dist/vocabularies/applicator/not.js +0 -26
  204. package/node_modules/ajv/dist/vocabularies/applicator/not.js.map +0 -1
  205. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.d.ts +0 -6
  206. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +0 -60
  207. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.js.map +0 -1
  208. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.d.ts +0 -3
  209. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +0 -75
  210. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js.map +0 -1
  211. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.d.ts +0 -3
  212. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +0 -12
  213. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js.map +0 -1
  214. package/node_modules/ajv/dist/vocabularies/applicator/properties.d.ts +0 -3
  215. package/node_modules/ajv/dist/vocabularies/applicator/properties.js +0 -54
  216. package/node_modules/ajv/dist/vocabularies/applicator/properties.js.map +0 -1
  217. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.d.ts +0 -6
  218. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +0 -38
  219. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js.map +0 -1
  220. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.d.ts +0 -3
  221. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +0 -13
  222. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.js.map +0 -1
  223. package/node_modules/ajv/dist/vocabularies/code.d.ts +0 -17
  224. package/node_modules/ajv/dist/vocabularies/code.js +0 -131
  225. package/node_modules/ajv/dist/vocabularies/code.js.map +0 -1
  226. package/node_modules/ajv/dist/vocabularies/core/id.d.ts +0 -3
  227. package/node_modules/ajv/dist/vocabularies/core/id.js +0 -10
  228. package/node_modules/ajv/dist/vocabularies/core/id.js.map +0 -1
  229. package/node_modules/ajv/dist/vocabularies/core/index.d.ts +0 -3
  230. package/node_modules/ajv/dist/vocabularies/core/index.js +0 -16
  231. package/node_modules/ajv/dist/vocabularies/core/index.js.map +0 -1
  232. package/node_modules/ajv/dist/vocabularies/core/ref.d.ts +0 -8
  233. package/node_modules/ajv/dist/vocabularies/core/ref.js +0 -122
  234. package/node_modules/ajv/dist/vocabularies/core/ref.js.map +0 -1
  235. package/node_modules/ajv/dist/vocabularies/discriminator/index.d.ts +0 -5
  236. package/node_modules/ajv/dist/vocabularies/discriminator/index.js +0 -104
  237. package/node_modules/ajv/dist/vocabularies/discriminator/index.js.map +0 -1
  238. package/node_modules/ajv/dist/vocabularies/discriminator/types.d.ts +0 -10
  239. package/node_modules/ajv/dist/vocabularies/discriminator/types.js +0 -9
  240. package/node_modules/ajv/dist/vocabularies/discriminator/types.js.map +0 -1
  241. package/node_modules/ajv/dist/vocabularies/draft2020.d.ts +0 -3
  242. package/node_modules/ajv/dist/vocabularies/draft2020.js +0 -23
  243. package/node_modules/ajv/dist/vocabularies/draft2020.js.map +0 -1
  244. package/node_modules/ajv/dist/vocabularies/draft7.d.ts +0 -3
  245. package/node_modules/ajv/dist/vocabularies/draft7.js +0 -17
  246. package/node_modules/ajv/dist/vocabularies/draft7.js.map +0 -1
  247. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.d.ts +0 -5
  248. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js +0 -30
  249. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js.map +0 -1
  250. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.d.ts +0 -5
  251. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js +0 -51
  252. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js.map +0 -1
  253. package/node_modules/ajv/dist/vocabularies/dynamic/index.d.ts +0 -3
  254. package/node_modules/ajv/dist/vocabularies/dynamic/index.js +0 -9
  255. package/node_modules/ajv/dist/vocabularies/dynamic/index.js.map +0 -1
  256. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.d.ts +0 -3
  257. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js +0 -16
  258. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js.map +0 -1
  259. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.d.ts +0 -3
  260. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js +0 -10
  261. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js.map +0 -1
  262. package/node_modules/ajv/dist/vocabularies/errors.d.ts +0 -9
  263. package/node_modules/ajv/dist/vocabularies/errors.js +0 -3
  264. package/node_modules/ajv/dist/vocabularies/errors.js.map +0 -1
  265. package/node_modules/ajv/dist/vocabularies/format/format.d.ts +0 -8
  266. package/node_modules/ajv/dist/vocabularies/format/format.js +0 -92
  267. package/node_modules/ajv/dist/vocabularies/format/format.js.map +0 -1
  268. package/node_modules/ajv/dist/vocabularies/format/index.d.ts +0 -3
  269. package/node_modules/ajv/dist/vocabularies/format/index.js +0 -6
  270. package/node_modules/ajv/dist/vocabularies/format/index.js.map +0 -1
  271. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.d.ts +0 -6
  272. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.js +0 -71
  273. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.js.map +0 -1
  274. package/node_modules/ajv/dist/vocabularies/jtd/elements.d.ts +0 -5
  275. package/node_modules/ajv/dist/vocabularies/jtd/elements.js +0 -24
  276. package/node_modules/ajv/dist/vocabularies/jtd/elements.js.map +0 -1
  277. package/node_modules/ajv/dist/vocabularies/jtd/enum.d.ts +0 -6
  278. package/node_modules/ajv/dist/vocabularies/jtd/enum.js +0 -43
  279. package/node_modules/ajv/dist/vocabularies/jtd/enum.js.map +0 -1
  280. package/node_modules/ajv/dist/vocabularies/jtd/error.d.ts +0 -9
  281. package/node_modules/ajv/dist/vocabularies/jtd/error.js +0 -20
  282. package/node_modules/ajv/dist/vocabularies/jtd/error.js.map +0 -1
  283. package/node_modules/ajv/dist/vocabularies/jtd/index.d.ts +0 -10
  284. package/node_modules/ajv/dist/vocabularies/jtd/index.js +0 -29
  285. package/node_modules/ajv/dist/vocabularies/jtd/index.js.map +0 -1
  286. package/node_modules/ajv/dist/vocabularies/jtd/metadata.d.ts +0 -5
  287. package/node_modules/ajv/dist/vocabularies/jtd/metadata.js +0 -25
  288. package/node_modules/ajv/dist/vocabularies/jtd/metadata.js.map +0 -1
  289. package/node_modules/ajv/dist/vocabularies/jtd/nullable.d.ts +0 -4
  290. package/node_modules/ajv/dist/vocabularies/jtd/nullable.js +0 -22
  291. package/node_modules/ajv/dist/vocabularies/jtd/nullable.js.map +0 -1
  292. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.d.ts +0 -3
  293. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js +0 -15
  294. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js.map +0 -1
  295. package/node_modules/ajv/dist/vocabularies/jtd/properties.d.ts +0 -22
  296. package/node_modules/ajv/dist/vocabularies/jtd/properties.js +0 -149
  297. package/node_modules/ajv/dist/vocabularies/jtd/properties.js.map +0 -1
  298. package/node_modules/ajv/dist/vocabularies/jtd/ref.d.ts +0 -4
  299. package/node_modules/ajv/dist/vocabularies/jtd/ref.js +0 -67
  300. package/node_modules/ajv/dist/vocabularies/jtd/ref.js.map +0 -1
  301. package/node_modules/ajv/dist/vocabularies/jtd/type.d.ts +0 -10
  302. package/node_modules/ajv/dist/vocabularies/jtd/type.js +0 -69
  303. package/node_modules/ajv/dist/vocabularies/jtd/type.js.map +0 -1
  304. package/node_modules/ajv/dist/vocabularies/jtd/union.d.ts +0 -3
  305. package/node_modules/ajv/dist/vocabularies/jtd/union.js +0 -12
  306. package/node_modules/ajv/dist/vocabularies/jtd/union.js.map +0 -1
  307. package/node_modules/ajv/dist/vocabularies/jtd/values.d.ts +0 -5
  308. package/node_modules/ajv/dist/vocabularies/jtd/values.js +0 -51
  309. package/node_modules/ajv/dist/vocabularies/jtd/values.js.map +0 -1
  310. package/node_modules/ajv/dist/vocabularies/metadata.d.ts +0 -3
  311. package/node_modules/ajv/dist/vocabularies/metadata.js +0 -18
  312. package/node_modules/ajv/dist/vocabularies/metadata.js.map +0 -1
  313. package/node_modules/ajv/dist/vocabularies/next.d.ts +0 -3
  314. package/node_modules/ajv/dist/vocabularies/next.js +0 -8
  315. package/node_modules/ajv/dist/vocabularies/next.js.map +0 -1
  316. package/node_modules/ajv/dist/vocabularies/unevaluated/index.d.ts +0 -3
  317. package/node_modules/ajv/dist/vocabularies/unevaluated/index.js +0 -7
  318. package/node_modules/ajv/dist/vocabularies/unevaluated/index.js.map +0 -1
  319. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.d.ts +0 -6
  320. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js +0 -40
  321. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js.map +0 -1
  322. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.d.ts +0 -6
  323. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js +0 -65
  324. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js.map +0 -1
  325. package/node_modules/ajv/dist/vocabularies/validation/const.d.ts +0 -6
  326. package/node_modules/ajv/dist/vocabularies/validation/const.js +0 -25
  327. package/node_modules/ajv/dist/vocabularies/validation/const.js.map +0 -1
  328. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.d.ts +0 -5
  329. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js +0 -12
  330. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js.map +0 -1
  331. package/node_modules/ajv/dist/vocabularies/validation/enum.d.ts +0 -8
  332. package/node_modules/ajv/dist/vocabularies/validation/enum.js +0 -48
  333. package/node_modules/ajv/dist/vocabularies/validation/enum.js.map +0 -1
  334. package/node_modules/ajv/dist/vocabularies/validation/index.d.ts +0 -16
  335. package/node_modules/ajv/dist/vocabularies/validation/index.js +0 -33
  336. package/node_modules/ajv/dist/vocabularies/validation/index.js.map +0 -1
  337. package/node_modules/ajv/dist/vocabularies/validation/limitContains.d.ts +0 -3
  338. package/node_modules/ajv/dist/vocabularies/validation/limitContains.js +0 -15
  339. package/node_modules/ajv/dist/vocabularies/validation/limitContains.js.map +0 -1
  340. package/node_modules/ajv/dist/vocabularies/validation/limitItems.d.ts +0 -3
  341. package/node_modules/ajv/dist/vocabularies/validation/limitItems.js +0 -24
  342. package/node_modules/ajv/dist/vocabularies/validation/limitItems.js.map +0 -1
  343. package/node_modules/ajv/dist/vocabularies/validation/limitLength.d.ts +0 -3
  344. package/node_modules/ajv/dist/vocabularies/validation/limitLength.js +0 -27
  345. package/node_modules/ajv/dist/vocabularies/validation/limitLength.js.map +0 -1
  346. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.d.ts +0 -11
  347. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +0 -27
  348. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.js.map +0 -1
  349. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.d.ts +0 -3
  350. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +0 -24
  351. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.js.map +0 -1
  352. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.d.ts +0 -8
  353. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +0 -26
  354. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.js.map +0 -1
  355. package/node_modules/ajv/dist/vocabularies/validation/pattern.d.ts +0 -8
  356. package/node_modules/ajv/dist/vocabularies/validation/pattern.js +0 -24
  357. package/node_modules/ajv/dist/vocabularies/validation/pattern.js.map +0 -1
  358. package/node_modules/ajv/dist/vocabularies/validation/required.d.ts +0 -8
  359. package/node_modules/ajv/dist/vocabularies/validation/required.js +0 -79
  360. package/node_modules/ajv/dist/vocabularies/validation/required.js.map +0 -1
  361. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.d.ts +0 -9
  362. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +0 -64
  363. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js.map +0 -1
  364. package/node_modules/ajv/lib/2019.ts +0 -81
  365. package/node_modules/ajv/lib/2020.ts +0 -75
  366. package/node_modules/ajv/lib/ajv.ts +0 -70
  367. package/node_modules/ajv/lib/compile/codegen/code.ts +0 -169
  368. package/node_modules/ajv/lib/compile/codegen/index.ts +0 -852
  369. package/node_modules/ajv/lib/compile/codegen/scope.ts +0 -215
  370. package/node_modules/ajv/lib/compile/errors.ts +0 -184
  371. package/node_modules/ajv/lib/compile/index.ts +0 -324
  372. package/node_modules/ajv/lib/compile/jtd/parse.ts +0 -411
  373. package/node_modules/ajv/lib/compile/jtd/serialize.ts +0 -266
  374. package/node_modules/ajv/lib/compile/jtd/types.ts +0 -16
  375. package/node_modules/ajv/lib/compile/names.ts +0 -27
  376. package/node_modules/ajv/lib/compile/ref_error.ts +0 -13
  377. package/node_modules/ajv/lib/compile/resolve.ts +0 -149
  378. package/node_modules/ajv/lib/compile/rules.ts +0 -50
  379. package/node_modules/ajv/lib/compile/util.ts +0 -213
  380. package/node_modules/ajv/lib/compile/validate/applicability.ts +0 -22
  381. package/node_modules/ajv/lib/compile/validate/boolSchema.ts +0 -47
  382. package/node_modules/ajv/lib/compile/validate/dataType.ts +0 -230
  383. package/node_modules/ajv/lib/compile/validate/defaults.ts +0 -32
  384. package/node_modules/ajv/lib/compile/validate/index.ts +0 -582
  385. package/node_modules/ajv/lib/compile/validate/keyword.ts +0 -171
  386. package/node_modules/ajv/lib/compile/validate/subschema.ts +0 -135
  387. package/node_modules/ajv/lib/core.ts +0 -891
  388. package/node_modules/ajv/lib/jtd.ts +0 -132
  389. package/node_modules/ajv/lib/refs/data.json +0 -13
  390. package/node_modules/ajv/lib/refs/json-schema-2019-09/index.ts +0 -28
  391. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/applicator.json +0 -53
  392. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/content.json +0 -17
  393. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/core.json +0 -57
  394. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/format.json +0 -14
  395. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/meta-data.json +0 -37
  396. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/validation.json +0 -90
  397. package/node_modules/ajv/lib/refs/json-schema-2019-09/schema.json +0 -39
  398. package/node_modules/ajv/lib/refs/json-schema-2020-12/index.ts +0 -30
  399. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/applicator.json +0 -48
  400. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/content.json +0 -17
  401. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/core.json +0 -51
  402. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/format-annotation.json +0 -14
  403. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/meta-data.json +0 -37
  404. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/unevaluated.json +0 -15
  405. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/validation.json +0 -90
  406. package/node_modules/ajv/lib/refs/json-schema-2020-12/schema.json +0 -55
  407. package/node_modules/ajv/lib/refs/json-schema-draft-06.json +0 -137
  408. package/node_modules/ajv/lib/refs/json-schema-draft-07.json +0 -151
  409. package/node_modules/ajv/lib/refs/json-schema-secure.json +0 -88
  410. package/node_modules/ajv/lib/refs/jtd-schema.ts +0 -130
  411. package/node_modules/ajv/lib/runtime/equal.ts +0 -7
  412. package/node_modules/ajv/lib/runtime/parseJson.ts +0 -177
  413. package/node_modules/ajv/lib/runtime/quote.ts +0 -31
  414. package/node_modules/ajv/lib/runtime/re2.ts +0 -6
  415. package/node_modules/ajv/lib/runtime/timestamp.ts +0 -46
  416. package/node_modules/ajv/lib/runtime/ucs2length.ts +0 -20
  417. package/node_modules/ajv/lib/runtime/uri.ts +0 -6
  418. package/node_modules/ajv/lib/runtime/validation_error.ts +0 -13
  419. package/node_modules/ajv/lib/standalone/index.ts +0 -100
  420. package/node_modules/ajv/lib/standalone/instance.ts +0 -36
  421. package/node_modules/ajv/lib/types/index.ts +0 -244
  422. package/node_modules/ajv/lib/types/json-schema.ts +0 -187
  423. package/node_modules/ajv/lib/types/jtd-schema.ts +0 -273
  424. package/node_modules/ajv/lib/vocabularies/applicator/additionalItems.ts +0 -56
  425. package/node_modules/ajv/lib/vocabularies/applicator/additionalProperties.ts +0 -118
  426. package/node_modules/ajv/lib/vocabularies/applicator/allOf.ts +0 -22
  427. package/node_modules/ajv/lib/vocabularies/applicator/anyOf.ts +0 -14
  428. package/node_modules/ajv/lib/vocabularies/applicator/contains.ts +0 -109
  429. package/node_modules/ajv/lib/vocabularies/applicator/dependencies.ts +0 -112
  430. package/node_modules/ajv/lib/vocabularies/applicator/dependentSchemas.ts +0 -11
  431. package/node_modules/ajv/lib/vocabularies/applicator/if.ts +0 -80
  432. package/node_modules/ajv/lib/vocabularies/applicator/index.ts +0 -53
  433. package/node_modules/ajv/lib/vocabularies/applicator/items.ts +0 -59
  434. package/node_modules/ajv/lib/vocabularies/applicator/items2020.ts +0 -36
  435. package/node_modules/ajv/lib/vocabularies/applicator/not.ts +0 -38
  436. package/node_modules/ajv/lib/vocabularies/applicator/oneOf.ts +0 -82
  437. package/node_modules/ajv/lib/vocabularies/applicator/patternProperties.ts +0 -91
  438. package/node_modules/ajv/lib/vocabularies/applicator/prefixItems.ts +0 -12
  439. package/node_modules/ajv/lib/vocabularies/applicator/properties.ts +0 -57
  440. package/node_modules/ajv/lib/vocabularies/applicator/propertyNames.ts +0 -50
  441. package/node_modules/ajv/lib/vocabularies/applicator/thenElse.ts +0 -13
  442. package/node_modules/ajv/lib/vocabularies/code.ts +0 -168
  443. package/node_modules/ajv/lib/vocabularies/core/id.ts +0 -10
  444. package/node_modules/ajv/lib/vocabularies/core/index.ts +0 -16
  445. package/node_modules/ajv/lib/vocabularies/core/ref.ts +0 -129
  446. package/node_modules/ajv/lib/vocabularies/discriminator/index.ts +0 -113
  447. package/node_modules/ajv/lib/vocabularies/discriminator/types.ts +0 -12
  448. package/node_modules/ajv/lib/vocabularies/draft2020.ts +0 -23
  449. package/node_modules/ajv/lib/vocabularies/draft7.ts +0 -17
  450. package/node_modules/ajv/lib/vocabularies/dynamic/dynamicAnchor.ts +0 -31
  451. package/node_modules/ajv/lib/vocabularies/dynamic/dynamicRef.ts +0 -51
  452. package/node_modules/ajv/lib/vocabularies/dynamic/index.ts +0 -9
  453. package/node_modules/ajv/lib/vocabularies/dynamic/recursiveAnchor.ts +0 -14
  454. package/node_modules/ajv/lib/vocabularies/dynamic/recursiveRef.ts +0 -10
  455. package/node_modules/ajv/lib/vocabularies/errors.ts +0 -18
  456. package/node_modules/ajv/lib/vocabularies/format/format.ts +0 -120
  457. package/node_modules/ajv/lib/vocabularies/format/index.ts +0 -6
  458. package/node_modules/ajv/lib/vocabularies/jtd/discriminator.ts +0 -89
  459. package/node_modules/ajv/lib/vocabularies/jtd/elements.ts +0 -32
  460. package/node_modules/ajv/lib/vocabularies/jtd/enum.ts +0 -45
  461. package/node_modules/ajv/lib/vocabularies/jtd/error.ts +0 -23
  462. package/node_modules/ajv/lib/vocabularies/jtd/index.ts +0 -37
  463. package/node_modules/ajv/lib/vocabularies/jtd/metadata.ts +0 -24
  464. package/node_modules/ajv/lib/vocabularies/jtd/nullable.ts +0 -21
  465. package/node_modules/ajv/lib/vocabularies/jtd/optionalProperties.ts +0 -15
  466. package/node_modules/ajv/lib/vocabularies/jtd/properties.ts +0 -184
  467. package/node_modules/ajv/lib/vocabularies/jtd/ref.ts +0 -76
  468. package/node_modules/ajv/lib/vocabularies/jtd/type.ts +0 -75
  469. package/node_modules/ajv/lib/vocabularies/jtd/union.ts +0 -12
  470. package/node_modules/ajv/lib/vocabularies/jtd/values.ts +0 -58
  471. package/node_modules/ajv/lib/vocabularies/metadata.ts +0 -17
  472. package/node_modules/ajv/lib/vocabularies/next.ts +0 -8
  473. package/node_modules/ajv/lib/vocabularies/unevaluated/index.ts +0 -7
  474. package/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedItems.ts +0 -47
  475. package/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedProperties.ts +0 -85
  476. package/node_modules/ajv/lib/vocabularies/validation/const.ts +0 -28
  477. package/node_modules/ajv/lib/vocabularies/validation/dependentRequired.ts +0 -23
  478. package/node_modules/ajv/lib/vocabularies/validation/enum.ts +0 -54
  479. package/node_modules/ajv/lib/vocabularies/validation/index.ts +0 -49
  480. package/node_modules/ajv/lib/vocabularies/validation/limitContains.ts +0 -16
  481. package/node_modules/ajv/lib/vocabularies/validation/limitItems.ts +0 -26
  482. package/node_modules/ajv/lib/vocabularies/validation/limitLength.ts +0 -30
  483. package/node_modules/ajv/lib/vocabularies/validation/limitNumber.ts +0 -42
  484. package/node_modules/ajv/lib/vocabularies/validation/limitProperties.ts +0 -26
  485. package/node_modules/ajv/lib/vocabularies/validation/multipleOf.ts +0 -34
  486. package/node_modules/ajv/lib/vocabularies/validation/pattern.ts +0 -28
  487. package/node_modules/ajv/lib/vocabularies/validation/required.ts +0 -98
  488. package/node_modules/ajv/lib/vocabularies/validation/uniqueItems.ts +0 -79
  489. package/node_modules/ajv/package.json +0 -126
  490. package/node_modules/fast-deep-equal/LICENSE +0 -21
  491. package/node_modules/fast-deep-equal/README.md +0 -96
  492. package/node_modules/fast-deep-equal/es6/index.d.ts +0 -2
  493. package/node_modules/fast-deep-equal/es6/index.js +0 -72
  494. package/node_modules/fast-deep-equal/es6/react.d.ts +0 -2
  495. package/node_modules/fast-deep-equal/es6/react.js +0 -79
  496. package/node_modules/fast-deep-equal/index.d.ts +0 -4
  497. package/node_modules/fast-deep-equal/index.js +0 -46
  498. package/node_modules/fast-deep-equal/package.json +0 -61
  499. package/node_modules/fast-deep-equal/react.d.ts +0 -2
  500. package/node_modules/fast-deep-equal/react.js +0 -53
  501. package/node_modules/fast-uri/.gitattributes +0 -2
  502. package/node_modules/fast-uri/.github/.stale.yml +0 -21
  503. package/node_modules/fast-uri/.github/dependabot.yml +0 -13
  504. package/node_modules/fast-uri/.github/tests_checker.yml +0 -8
  505. package/node_modules/fast-uri/.github/workflows/ci.yml +0 -101
  506. package/node_modules/fast-uri/.github/workflows/package-manager-ci.yml +0 -24
  507. package/node_modules/fast-uri/LICENSE +0 -32
  508. package/node_modules/fast-uri/README.md +0 -143
  509. package/node_modules/fast-uri/benchmark/benchmark.mjs +0 -159
  510. package/node_modules/fast-uri/benchmark/equal.mjs +0 -51
  511. package/node_modules/fast-uri/benchmark/non-simple-domain.mjs +0 -22
  512. package/node_modules/fast-uri/benchmark/package.json +0 -17
  513. package/node_modules/fast-uri/benchmark/string-array-to-hex-stripped.mjs +0 -24
  514. package/node_modules/fast-uri/benchmark/ws-is-secure.mjs +0 -65
  515. package/node_modules/fast-uri/eslint.config.js +0 -6
  516. package/node_modules/fast-uri/index.js +0 -340
  517. package/node_modules/fast-uri/lib/schemes.js +0 -267
  518. package/node_modules/fast-uri/lib/utils.js +0 -336
  519. package/node_modules/fast-uri/package.json +0 -69
  520. package/node_modules/fast-uri/test/ajv.test.js +0 -43
  521. package/node_modules/fast-uri/test/equal.test.js +0 -108
  522. package/node_modules/fast-uri/test/fixtures/uri-js-parse.json +0 -501
  523. package/node_modules/fast-uri/test/fixtures/uri-js-serialize.json +0 -120
  524. package/node_modules/fast-uri/test/parse.test.js +0 -318
  525. package/node_modules/fast-uri/test/resolve.test.js +0 -78
  526. package/node_modules/fast-uri/test/rfc-3986.test.js +0 -90
  527. package/node_modules/fast-uri/test/serialize.test.js +0 -151
  528. package/node_modules/fast-uri/test/uri-js-compatibility.test.js +0 -33
  529. package/node_modules/fast-uri/test/uri-js.test.js +0 -912
  530. package/node_modules/fast-uri/test/util.test.js +0 -38
  531. package/node_modules/fast-uri/tsconfig.json +0 -9
  532. package/node_modules/fast-uri/types/index.d.ts +0 -60
  533. package/node_modules/fast-uri/types/index.test-d.ts +0 -17
  534. package/node_modules/json-schema-traverse/.eslintrc.yml +0 -27
  535. package/node_modules/json-schema-traverse/.github/FUNDING.yml +0 -2
  536. package/node_modules/json-schema-traverse/.github/workflows/build.yml +0 -28
  537. package/node_modules/json-schema-traverse/.github/workflows/publish.yml +0 -27
  538. package/node_modules/json-schema-traverse/LICENSE +0 -21
  539. package/node_modules/json-schema-traverse/README.md +0 -95
  540. package/node_modules/json-schema-traverse/index.d.ts +0 -40
  541. package/node_modules/json-schema-traverse/index.js +0 -93
  542. package/node_modules/json-schema-traverse/package.json +0 -43
  543. package/node_modules/json-schema-traverse/spec/.eslintrc.yml +0 -6
  544. package/node_modules/json-schema-traverse/spec/fixtures/schema.js +0 -125
  545. package/node_modules/json-schema-traverse/spec/index.spec.js +0 -171
  546. package/node_modules/require-from-string/index.js +0 -34
  547. package/node_modules/require-from-string/license +0 -21
  548. package/node_modules/require-from-string/package.json +0 -28
  549. package/node_modules/require-from-string/readme.md +0 -56
@@ -1,113 +0,0 @@
1
- import type {CodeKeywordDefinition, AnySchemaObject, KeywordErrorDefinition} from "../../types"
2
- import type {KeywordCxt} from "../../compile/validate"
3
- import {_, getProperty, Name} from "../../compile/codegen"
4
- import {DiscrError, DiscrErrorObj} from "../discriminator/types"
5
- import {resolveRef, SchemaEnv} from "../../compile"
6
- import MissingRefError from "../../compile/ref_error"
7
- import {schemaHasRulesButRef} from "../../compile/util"
8
-
9
- export type DiscriminatorError = DiscrErrorObj<DiscrError.Tag> | DiscrErrorObj<DiscrError.Mapping>
10
-
11
- const error: KeywordErrorDefinition = {
12
- message: ({params: {discrError, tagName}}) =>
13
- discrError === DiscrError.Tag
14
- ? `tag "${tagName}" must be string`
15
- : `value of tag "${tagName}" must be in oneOf`,
16
- params: ({params: {discrError, tag, tagName}}) =>
17
- _`{error: ${discrError}, tag: ${tagName}, tagValue: ${tag}}`,
18
- }
19
-
20
- const def: CodeKeywordDefinition = {
21
- keyword: "discriminator",
22
- type: "object",
23
- schemaType: "object",
24
- error,
25
- code(cxt: KeywordCxt) {
26
- const {gen, data, schema, parentSchema, it} = cxt
27
- const {oneOf} = parentSchema
28
- if (!it.opts.discriminator) {
29
- throw new Error("discriminator: requires discriminator option")
30
- }
31
- const tagName = schema.propertyName
32
- if (typeof tagName != "string") throw new Error("discriminator: requires propertyName")
33
- if (schema.mapping) throw new Error("discriminator: mapping is not supported")
34
- if (!oneOf) throw new Error("discriminator: requires oneOf keyword")
35
- const valid = gen.let("valid", false)
36
- const tag = gen.const("tag", _`${data}${getProperty(tagName)}`)
37
- gen.if(
38
- _`typeof ${tag} == "string"`,
39
- () => validateMapping(),
40
- () => cxt.error(false, {discrError: DiscrError.Tag, tag, tagName})
41
- )
42
- cxt.ok(valid)
43
-
44
- function validateMapping(): void {
45
- const mapping = getMapping()
46
- gen.if(false)
47
- for (const tagValue in mapping) {
48
- gen.elseIf(_`${tag} === ${tagValue}`)
49
- gen.assign(valid, applyTagSchema(mapping[tagValue]))
50
- }
51
- gen.else()
52
- cxt.error(false, {discrError: DiscrError.Mapping, tag, tagName})
53
- gen.endIf()
54
- }
55
-
56
- function applyTagSchema(schemaProp?: number): Name {
57
- const _valid = gen.name("valid")
58
- const schCxt = cxt.subschema({keyword: "oneOf", schemaProp}, _valid)
59
- cxt.mergeEvaluated(schCxt, Name)
60
- return _valid
61
- }
62
-
63
- function getMapping(): {[T in string]?: number} {
64
- const oneOfMapping: {[T in string]?: number} = {}
65
- const topRequired = hasRequired(parentSchema)
66
- let tagRequired = true
67
- for (let i = 0; i < oneOf.length; i++) {
68
- let sch = oneOf[i]
69
- if (sch?.$ref && !schemaHasRulesButRef(sch, it.self.RULES)) {
70
- const ref = sch.$ref
71
- sch = resolveRef.call(it.self, it.schemaEnv.root, it.baseId, ref)
72
- if (sch instanceof SchemaEnv) sch = sch.schema
73
- if (sch === undefined) throw new MissingRefError(it.opts.uriResolver, it.baseId, ref)
74
- }
75
- const propSch = sch?.properties?.[tagName]
76
- if (typeof propSch != "object") {
77
- throw new Error(
78
- `discriminator: oneOf subschemas (or referenced schemas) must have "properties/${tagName}"`
79
- )
80
- }
81
- tagRequired = tagRequired && (topRequired || hasRequired(sch))
82
- addMappings(propSch, i)
83
- }
84
- if (!tagRequired) throw new Error(`discriminator: "${tagName}" must be required`)
85
- return oneOfMapping
86
-
87
- function hasRequired({required}: AnySchemaObject): boolean {
88
- return Array.isArray(required) && required.includes(tagName)
89
- }
90
-
91
- function addMappings(sch: AnySchemaObject, i: number): void {
92
- if (sch.const) {
93
- addMapping(sch.const, i)
94
- } else if (sch.enum) {
95
- for (const tagValue of sch.enum) {
96
- addMapping(tagValue, i)
97
- }
98
- } else {
99
- throw new Error(`discriminator: "properties/${tagName}" must have "const" or "enum"`)
100
- }
101
- }
102
-
103
- function addMapping(tagValue: unknown, i: number): void {
104
- if (typeof tagValue != "string" || tagValue in oneOfMapping) {
105
- throw new Error(`discriminator: "${tagName}" values must be unique strings`)
106
- }
107
- oneOfMapping[tagValue] = i
108
- }
109
- }
110
- },
111
- }
112
-
113
- export default def
@@ -1,12 +0,0 @@
1
- import type {ErrorObject} from "../../types"
2
-
3
- export enum DiscrError {
4
- Tag = "tag",
5
- Mapping = "mapping",
6
- }
7
-
8
- export type DiscrErrorObj<E extends DiscrError> = ErrorObject<
9
- "discriminator",
10
- {error: E; tag: string; tagValue: unknown},
11
- string
12
- >
@@ -1,23 +0,0 @@
1
- import type {Vocabulary} from "../types"
2
- import coreVocabulary from "./core"
3
- import validationVocabulary from "./validation"
4
- import getApplicatorVocabulary from "./applicator"
5
- import dynamicVocabulary from "./dynamic"
6
- import nextVocabulary from "./next"
7
- import unevaluatedVocabulary from "./unevaluated"
8
- import formatVocabulary from "./format"
9
- import {metadataVocabulary, contentVocabulary} from "./metadata"
10
-
11
- const draft2020Vocabularies: Vocabulary[] = [
12
- dynamicVocabulary,
13
- coreVocabulary,
14
- validationVocabulary,
15
- getApplicatorVocabulary(true),
16
- formatVocabulary,
17
- metadataVocabulary,
18
- contentVocabulary,
19
- nextVocabulary,
20
- unevaluatedVocabulary,
21
- ]
22
-
23
- export default draft2020Vocabularies
@@ -1,17 +0,0 @@
1
- import type {Vocabulary} from "../types"
2
- import coreVocabulary from "./core"
3
- import validationVocabulary from "./validation"
4
- import getApplicatorVocabulary from "./applicator"
5
- import formatVocabulary from "./format"
6
- import {metadataVocabulary, contentVocabulary} from "./metadata"
7
-
8
- const draft7Vocabularies: Vocabulary[] = [
9
- coreVocabulary,
10
- validationVocabulary,
11
- getApplicatorVocabulary(),
12
- formatVocabulary,
13
- metadataVocabulary,
14
- contentVocabulary,
15
- ]
16
-
17
- export default draft7Vocabularies
@@ -1,31 +0,0 @@
1
- import type {CodeKeywordDefinition} from "../../types"
2
- import type {KeywordCxt} from "../../compile/validate"
3
- import {_, getProperty, Code} from "../../compile/codegen"
4
- import N from "../../compile/names"
5
- import {SchemaEnv, compileSchema} from "../../compile"
6
- import {getValidate} from "../core/ref"
7
-
8
- const def: CodeKeywordDefinition = {
9
- keyword: "$dynamicAnchor",
10
- schemaType: "string",
11
- code: (cxt) => dynamicAnchor(cxt, cxt.schema),
12
- }
13
-
14
- export function dynamicAnchor(cxt: KeywordCxt, anchor: string): void {
15
- const {gen, it} = cxt
16
- it.schemaEnv.root.dynamicAnchors[anchor] = true
17
- const v = _`${N.dynamicAnchors}${getProperty(anchor)}`
18
- const validate = it.errSchemaPath === "#" ? it.validateName : _getValidate(cxt)
19
- gen.if(_`!${v}`, () => gen.assign(v, validate))
20
- }
21
-
22
- function _getValidate(cxt: KeywordCxt): Code {
23
- const {schemaEnv, schema, self} = cxt.it
24
- const {root, baseId, localRefs, meta} = schemaEnv.root
25
- const {schemaId} = self.opts
26
- const sch = new SchemaEnv({schema, schemaId, root, baseId, localRefs, meta})
27
- compileSchema.call(self, sch)
28
- return getValidate(cxt, sch)
29
- }
30
-
31
- export default def
@@ -1,51 +0,0 @@
1
- import type {CodeKeywordDefinition} from "../../types"
2
- import type {KeywordCxt} from "../../compile/validate"
3
- import {_, getProperty, Code, Name} from "../../compile/codegen"
4
- import N from "../../compile/names"
5
- import {callRef} from "../core/ref"
6
-
7
- const def: CodeKeywordDefinition = {
8
- keyword: "$dynamicRef",
9
- schemaType: "string",
10
- code: (cxt) => dynamicRef(cxt, cxt.schema),
11
- }
12
-
13
- export function dynamicRef(cxt: KeywordCxt, ref: string): void {
14
- const {gen, keyword, it} = cxt
15
- if (ref[0] !== "#") throw new Error(`"${keyword}" only supports hash fragment reference`)
16
- const anchor = ref.slice(1)
17
- if (it.allErrors) {
18
- _dynamicRef()
19
- } else {
20
- const valid = gen.let("valid", false)
21
- _dynamicRef(valid)
22
- cxt.ok(valid)
23
- }
24
-
25
- function _dynamicRef(valid?: Name): void {
26
- // TODO the assumption here is that `recursiveRef: #` always points to the root
27
- // of the schema object, which is not correct, because there may be $id that
28
- // makes # point to it, and the target schema may not contain dynamic/recursiveAnchor.
29
- // Because of that 2 tests in recursiveRef.json fail.
30
- // This is a similar problem to #815 (`$id` doesn't alter resolution scope for `{ "$ref": "#" }`).
31
- // (This problem is not tested in JSON-Schema-Test-Suite)
32
- if (it.schemaEnv.root.dynamicAnchors[anchor]) {
33
- const v = gen.let("_v", _`${N.dynamicAnchors}${getProperty(anchor)}`)
34
- gen.if(v, _callRef(v, valid), _callRef(it.validateName, valid))
35
- } else {
36
- _callRef(it.validateName, valid)()
37
- }
38
- }
39
-
40
- function _callRef(validate: Code, valid?: Name): () => void {
41
- return valid
42
- ? () =>
43
- gen.block(() => {
44
- callRef(cxt, validate)
45
- gen.let(valid, true)
46
- })
47
- : () => callRef(cxt, validate)
48
- }
49
- }
50
-
51
- export default def
@@ -1,9 +0,0 @@
1
- import type {Vocabulary} from "../../types"
2
- import dynamicAnchor from "./dynamicAnchor"
3
- import dynamicRef from "./dynamicRef"
4
- import recursiveAnchor from "./recursiveAnchor"
5
- import recursiveRef from "./recursiveRef"
6
-
7
- const dynamic: Vocabulary = [dynamicAnchor, dynamicRef, recursiveAnchor, recursiveRef]
8
-
9
- export default dynamic
@@ -1,14 +0,0 @@
1
- import type {CodeKeywordDefinition} from "../../types"
2
- import {dynamicAnchor} from "./dynamicAnchor"
3
- import {checkStrictMode} from "../../compile/util"
4
-
5
- const def: CodeKeywordDefinition = {
6
- keyword: "$recursiveAnchor",
7
- schemaType: "boolean",
8
- code(cxt) {
9
- if (cxt.schema) dynamicAnchor(cxt, "")
10
- else checkStrictMode(cxt.it, "$recursiveAnchor: false is ignored")
11
- },
12
- }
13
-
14
- export default def
@@ -1,10 +0,0 @@
1
- import type {CodeKeywordDefinition} from "../../types"
2
- import {dynamicRef} from "./dynamicRef"
3
-
4
- const def: CodeKeywordDefinition = {
5
- keyword: "$recursiveRef",
6
- schemaType: "string",
7
- code: (cxt) => dynamicRef(cxt, cxt.schema),
8
- }
9
-
10
- export default def
@@ -1,18 +0,0 @@
1
- import type {TypeError} from "../compile/validate/dataType"
2
- import type {ApplicatorKeywordError} from "./applicator"
3
- import type {ValidationKeywordError} from "./validation"
4
- import type {FormatError} from "./format/format"
5
- import type {UnevaluatedPropertiesError} from "./unevaluated/unevaluatedProperties"
6
- import type {UnevaluatedItemsError} from "./unevaluated/unevaluatedItems"
7
- import type {DependentRequiredError} from "./validation/dependentRequired"
8
- import type {DiscriminatorError} from "./discriminator"
9
-
10
- export type DefinedError =
11
- | TypeError
12
- | ApplicatorKeywordError
13
- | ValidationKeywordError
14
- | FormatError
15
- | UnevaluatedPropertiesError
16
- | UnevaluatedItemsError
17
- | DependentRequiredError
18
- | DiscriminatorError
@@ -1,120 +0,0 @@
1
- import type {
2
- AddedFormat,
3
- FormatValidator,
4
- AsyncFormatValidator,
5
- CodeKeywordDefinition,
6
- KeywordErrorDefinition,
7
- ErrorObject,
8
- } from "../../types"
9
- import type {KeywordCxt} from "../../compile/validate"
10
- import {_, str, nil, or, Code, getProperty, regexpCode} from "../../compile/codegen"
11
-
12
- type FormatValidate =
13
- | FormatValidator<string>
14
- | FormatValidator<number>
15
- | AsyncFormatValidator<string>
16
- | AsyncFormatValidator<number>
17
- | RegExp
18
- | string
19
- | true
20
-
21
- export type FormatError = ErrorObject<"format", {format: string}, string | {$data: string}>
22
-
23
- const error: KeywordErrorDefinition = {
24
- message: ({schemaCode}) => str`must match format "${schemaCode}"`,
25
- params: ({schemaCode}) => _`{format: ${schemaCode}}`,
26
- }
27
-
28
- const def: CodeKeywordDefinition = {
29
- keyword: "format",
30
- type: ["number", "string"],
31
- schemaType: "string",
32
- $data: true,
33
- error,
34
- code(cxt: KeywordCxt, ruleType?: string) {
35
- const {gen, data, $data, schema, schemaCode, it} = cxt
36
- const {opts, errSchemaPath, schemaEnv, self} = it
37
- if (!opts.validateFormats) return
38
-
39
- if ($data) validate$DataFormat()
40
- else validateFormat()
41
-
42
- function validate$DataFormat(): void {
43
- const fmts = gen.scopeValue("formats", {
44
- ref: self.formats,
45
- code: opts.code.formats,
46
- })
47
- const fDef = gen.const("fDef", _`${fmts}[${schemaCode}]`)
48
- const fType = gen.let("fType")
49
- const format = gen.let("format")
50
- // TODO simplify
51
- gen.if(
52
- _`typeof ${fDef} == "object" && !(${fDef} instanceof RegExp)`,
53
- () => gen.assign(fType, _`${fDef}.type || "string"`).assign(format, _`${fDef}.validate`),
54
- () => gen.assign(fType, _`"string"`).assign(format, fDef)
55
- )
56
- cxt.fail$data(or(unknownFmt(), invalidFmt()))
57
-
58
- function unknownFmt(): Code {
59
- if (opts.strictSchema === false) return nil
60
- return _`${schemaCode} && !${format}`
61
- }
62
-
63
- function invalidFmt(): Code {
64
- const callFormat = schemaEnv.$async
65
- ? _`(${fDef}.async ? await ${format}(${data}) : ${format}(${data}))`
66
- : _`${format}(${data})`
67
- const validData = _`(typeof ${format} == "function" ? ${callFormat} : ${format}.test(${data}))`
68
- return _`${format} && ${format} !== true && ${fType} === ${ruleType} && !${validData}`
69
- }
70
- }
71
-
72
- function validateFormat(): void {
73
- const formatDef: AddedFormat | undefined = self.formats[schema]
74
- if (!formatDef) {
75
- unknownFormat()
76
- return
77
- }
78
- if (formatDef === true) return
79
- const [fmtType, format, fmtRef] = getFormat(formatDef)
80
- if (fmtType === ruleType) cxt.pass(validCondition())
81
-
82
- function unknownFormat(): void {
83
- if (opts.strictSchema === false) {
84
- self.logger.warn(unknownMsg())
85
- return
86
- }
87
- throw new Error(unknownMsg())
88
-
89
- function unknownMsg(): string {
90
- return `unknown format "${schema as string}" ignored in schema at path "${errSchemaPath}"`
91
- }
92
- }
93
-
94
- function getFormat(fmtDef: AddedFormat): [string, FormatValidate, Code] {
95
- const code =
96
- fmtDef instanceof RegExp
97
- ? regexpCode(fmtDef)
98
- : opts.code.formats
99
- ? _`${opts.code.formats}${getProperty(schema)}`
100
- : undefined
101
- const fmt = gen.scopeValue("formats", {key: schema, ref: fmtDef, code})
102
- if (typeof fmtDef == "object" && !(fmtDef instanceof RegExp)) {
103
- return [fmtDef.type || "string", fmtDef.validate, _`${fmt}.validate`]
104
- }
105
-
106
- return ["string", fmtDef, fmt]
107
- }
108
-
109
- function validCondition(): Code {
110
- if (typeof formatDef == "object" && !(formatDef instanceof RegExp) && formatDef.async) {
111
- if (!schemaEnv.$async) throw new Error("async format in sync schema")
112
- return _`await ${fmtRef}(${data})`
113
- }
114
- return typeof format == "function" ? _`${fmtRef}(${data})` : _`${fmtRef}.test(${data})`
115
- }
116
- }
117
- },
118
- }
119
-
120
- export default def
@@ -1,6 +0,0 @@
1
- import type {Vocabulary} from "../../types"
2
- import formatKeyword from "./format"
3
-
4
- const format: Vocabulary = [formatKeyword]
5
-
6
- export default format
@@ -1,89 +0,0 @@
1
- import type {CodeKeywordDefinition, KeywordErrorDefinition} from "../../types"
2
- import type {KeywordCxt} from "../../compile/validate"
3
- import {_, not, getProperty, Name} from "../../compile/codegen"
4
- import {checkMetadata} from "./metadata"
5
- import {checkNullableObject} from "./nullable"
6
- import {typeErrorMessage, typeErrorParams, _JTDTypeError} from "./error"
7
- import {DiscrError, DiscrErrorObj} from "../discriminator/types"
8
-
9
- export type JTDDiscriminatorError =
10
- | _JTDTypeError<"discriminator", "object", string>
11
- | DiscrErrorObj<DiscrError.Tag>
12
- | DiscrErrorObj<DiscrError.Mapping>
13
-
14
- const error: KeywordErrorDefinition = {
15
- message: (cxt) => {
16
- const {schema, params} = cxt
17
- return params.discrError
18
- ? params.discrError === DiscrError.Tag
19
- ? `tag "${schema}" must be string`
20
- : `value of tag "${schema}" must be in mapping`
21
- : typeErrorMessage(cxt, "object")
22
- },
23
- params: (cxt) => {
24
- const {schema, params} = cxt
25
- return params.discrError
26
- ? _`{error: ${params.discrError}, tag: ${schema}, tagValue: ${params.tag}}`
27
- : typeErrorParams(cxt, "object")
28
- },
29
- }
30
-
31
- const def: CodeKeywordDefinition = {
32
- keyword: "discriminator",
33
- schemaType: "string",
34
- implements: ["mapping"],
35
- error,
36
- code(cxt: KeywordCxt) {
37
- checkMetadata(cxt)
38
- const {gen, data, schema, parentSchema} = cxt
39
- const [valid, cond] = checkNullableObject(cxt, data)
40
-
41
- gen.if(cond)
42
- validateDiscriminator()
43
- gen.elseIf(not(valid))
44
- cxt.error()
45
- gen.endIf()
46
- cxt.ok(valid)
47
-
48
- function validateDiscriminator(): void {
49
- const tag = gen.const("tag", _`${data}${getProperty(schema)}`)
50
- gen.if(_`${tag} === undefined`)
51
- cxt.error(false, {discrError: DiscrError.Tag, tag})
52
- gen.elseIf(_`typeof ${tag} == "string"`)
53
- validateMapping(tag)
54
- gen.else()
55
- cxt.error(false, {discrError: DiscrError.Tag, tag}, {instancePath: schema})
56
- gen.endIf()
57
- }
58
-
59
- function validateMapping(tag: Name): void {
60
- gen.if(false)
61
- for (const tagValue in parentSchema.mapping) {
62
- gen.elseIf(_`${tag} === ${tagValue}`)
63
- gen.assign(valid, applyTagSchema(tagValue))
64
- }
65
- gen.else()
66
- cxt.error(
67
- false,
68
- {discrError: DiscrError.Mapping, tag},
69
- {instancePath: schema, schemaPath: "mapping", parentSchema: true}
70
- )
71
- gen.endIf()
72
- }
73
-
74
- function applyTagSchema(schemaProp: string): Name {
75
- const _valid = gen.name("valid")
76
- cxt.subschema(
77
- {
78
- keyword: "mapping",
79
- schemaProp,
80
- jtdDiscriminator: schema,
81
- },
82
- _valid
83
- )
84
- return _valid
85
- }
86
- },
87
- }
88
-
89
- export default def
@@ -1,32 +0,0 @@
1
- import type {CodeKeywordDefinition, SchemaObject} from "../../types"
2
- import type {KeywordCxt} from "../../compile/validate"
3
- import {alwaysValidSchema} from "../../compile/util"
4
- import {validateArray} from "../code"
5
- import {_, not} from "../../compile/codegen"
6
- import {checkMetadata} from "./metadata"
7
- import {checkNullable} from "./nullable"
8
- import {typeError, _JTDTypeError} from "./error"
9
-
10
- export type JTDElementsError = _JTDTypeError<"elements", "array", SchemaObject>
11
-
12
- const def: CodeKeywordDefinition = {
13
- keyword: "elements",
14
- schemaType: "object",
15
- error: typeError("array"),
16
- code(cxt: KeywordCxt) {
17
- checkMetadata(cxt)
18
- const {gen, data, schema, it} = cxt
19
- if (alwaysValidSchema(it, schema)) return
20
- const [valid] = checkNullable(cxt)
21
- gen.if(not(valid), () =>
22
- gen.if(
23
- _`Array.isArray(${data})`,
24
- () => gen.assign(valid, validateArray(cxt)),
25
- () => cxt.error()
26
- )
27
- )
28
- cxt.ok(valid)
29
- },
30
- }
31
-
32
- export default def
@@ -1,45 +0,0 @@
1
- import type {CodeKeywordDefinition, KeywordErrorDefinition, ErrorObject} from "../../types"
2
- import type {KeywordCxt} from "../../compile/validate"
3
- import {_, or, and, Code} from "../../compile/codegen"
4
- import {checkMetadata} from "./metadata"
5
- import {checkNullable} from "./nullable"
6
-
7
- export type JTDEnumError = ErrorObject<"enum", {allowedValues: string[]}, string[]>
8
-
9
- const error: KeywordErrorDefinition = {
10
- message: "must be equal to one of the allowed values",
11
- params: ({schemaCode}) => _`{allowedValues: ${schemaCode}}`,
12
- }
13
-
14
- const def: CodeKeywordDefinition = {
15
- keyword: "enum",
16
- schemaType: "array",
17
- error,
18
- code(cxt: KeywordCxt) {
19
- checkMetadata(cxt)
20
- const {gen, data, schema, schemaValue, parentSchema, it} = cxt
21
- if (schema.length === 0) throw new Error("enum must have non-empty array")
22
- if (schema.length !== new Set(schema).size) throw new Error("enum items must be unique")
23
- let valid: Code
24
- const isString = _`typeof ${data} == "string"`
25
- if (schema.length >= it.opts.loopEnum) {
26
- let cond: Code
27
- ;[valid, cond] = checkNullable(cxt, isString)
28
- gen.if(cond, loopEnum)
29
- } else {
30
- /* istanbul ignore if */
31
- if (!Array.isArray(schema)) throw new Error("ajv implementation error")
32
- valid = and(isString, or(...schema.map((value: string) => _`${data} === ${value}`)))
33
- if (parentSchema.nullable) valid = or(_`${data} === null`, valid)
34
- }
35
- cxt.pass(valid)
36
-
37
- function loopEnum(): void {
38
- gen.forOf("v", schemaValue as Code, (v) =>
39
- gen.if(_`${valid} = ${data} === ${v}`, () => gen.break())
40
- )
41
- }
42
- },
43
- }
44
-
45
- export default def
@@ -1,23 +0,0 @@
1
- import type {KeywordErrorDefinition, KeywordErrorCxt, ErrorObject} from "../../types"
2
- import {_, Code} from "../../compile/codegen"
3
-
4
- export type _JTDTypeError<K extends string, T extends string, S> = ErrorObject<
5
- K,
6
- {type: T; nullable: boolean},
7
- S
8
- >
9
-
10
- export function typeError(t: string): KeywordErrorDefinition {
11
- return {
12
- message: (cxt) => typeErrorMessage(cxt, t),
13
- params: (cxt) => typeErrorParams(cxt, t),
14
- }
15
- }
16
-
17
- export function typeErrorMessage({parentSchema}: KeywordErrorCxt, t: string): string {
18
- return parentSchema?.nullable ? `must be ${t} or null` : `must be ${t}`
19
- }
20
-
21
- export function typeErrorParams({parentSchema}: KeywordErrorCxt, t: string): Code {
22
- return _`{type: ${t}, nullable: ${!!parentSchema?.nullable}}`
23
- }
@@ -1,37 +0,0 @@
1
- import type {Vocabulary} from "../../types"
2
- import refKeyword from "./ref"
3
- import typeKeyword, {JTDTypeError} from "./type"
4
- import enumKeyword, {JTDEnumError} from "./enum"
5
- import elements, {JTDElementsError} from "./elements"
6
- import properties, {JTDPropertiesError} from "./properties"
7
- import optionalProperties from "./optionalProperties"
8
- import discriminator, {JTDDiscriminatorError} from "./discriminator"
9
- import values, {JTDValuesError} from "./values"
10
- import union from "./union"
11
- import metadata from "./metadata"
12
-
13
- const jtdVocabulary: Vocabulary = [
14
- "definitions",
15
- refKeyword,
16
- typeKeyword,
17
- enumKeyword,
18
- elements,
19
- properties,
20
- optionalProperties,
21
- discriminator,
22
- values,
23
- union,
24
- metadata,
25
- {keyword: "additionalProperties", schemaType: "boolean"},
26
- {keyword: "nullable", schemaType: "boolean"},
27
- ]
28
-
29
- export default jtdVocabulary
30
-
31
- export type JTDErrorObject =
32
- | JTDTypeError
33
- | JTDEnumError
34
- | JTDElementsError
35
- | JTDPropertiesError
36
- | JTDDiscriminatorError
37
- | JTDValuesError