@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,27 +0,0 @@
1
- import {Name} from "./codegen"
2
-
3
- const names = {
4
- // validation function arguments
5
- data: new Name("data"), // data passed to validation function
6
- // args passed from referencing schema
7
- valCxt: new Name("valCxt"), // validation/data context - should not be used directly, it is destructured to the names below
8
- instancePath: new Name("instancePath"),
9
- parentData: new Name("parentData"),
10
- parentDataProperty: new Name("parentDataProperty"),
11
- rootData: new Name("rootData"), // root data - same as the data passed to the first/top validation function
12
- dynamicAnchors: new Name("dynamicAnchors"), // used to support recursiveRef and dynamicRef
13
- // function scoped variables
14
- vErrors: new Name("vErrors"), // null or array of validation errors
15
- errors: new Name("errors"), // counter of validation errors
16
- this: new Name("this"),
17
- // "globals"
18
- self: new Name("self"),
19
- scope: new Name("scope"),
20
- // JTD serialize/parse name for JSON string and position
21
- json: new Name("json"),
22
- jsonPos: new Name("jsonPos"),
23
- jsonLen: new Name("jsonLen"),
24
- jsonPart: new Name("jsonPart"),
25
- }
26
-
27
- export default names
@@ -1,13 +0,0 @@
1
- import {resolveUrl, normalizeId, getFullPath} from "./resolve"
2
- import type {UriResolver} from "../types"
3
-
4
- export default class MissingRefError extends Error {
5
- readonly missingRef: string
6
- readonly missingSchema: string
7
-
8
- constructor(resolver: UriResolver, baseId: string, ref: string, msg?: string) {
9
- super(msg || `can't resolve reference ${ref} from id ${baseId}`)
10
- this.missingRef = resolveUrl(resolver, baseId, ref)
11
- this.missingSchema = normalizeId(getFullPath(resolver, this.missingRef))
12
- }
13
- }
@@ -1,149 +0,0 @@
1
- import type {AnySchema, AnySchemaObject, UriResolver} from "../types"
2
- import type Ajv from "../ajv"
3
- import type {URIComponent} from "fast-uri"
4
- import {eachItem} from "./util"
5
- import * as equal from "fast-deep-equal"
6
- import * as traverse from "json-schema-traverse"
7
-
8
- // the hash of local references inside the schema (created by getSchemaRefs), used for inline resolution
9
- export type LocalRefs = {[Ref in string]?: AnySchemaObject}
10
-
11
- // TODO refactor to use keyword definitions
12
- const SIMPLE_INLINED = new Set([
13
- "type",
14
- "format",
15
- "pattern",
16
- "maxLength",
17
- "minLength",
18
- "maxProperties",
19
- "minProperties",
20
- "maxItems",
21
- "minItems",
22
- "maximum",
23
- "minimum",
24
- "uniqueItems",
25
- "multipleOf",
26
- "required",
27
- "enum",
28
- "const",
29
- ])
30
-
31
- export function inlineRef(schema: AnySchema, limit: boolean | number = true): boolean {
32
- if (typeof schema == "boolean") return true
33
- if (limit === true) return !hasRef(schema)
34
- if (!limit) return false
35
- return countKeys(schema) <= limit
36
- }
37
-
38
- const REF_KEYWORDS = new Set([
39
- "$ref",
40
- "$recursiveRef",
41
- "$recursiveAnchor",
42
- "$dynamicRef",
43
- "$dynamicAnchor",
44
- ])
45
-
46
- function hasRef(schema: AnySchemaObject): boolean {
47
- for (const key in schema) {
48
- if (REF_KEYWORDS.has(key)) return true
49
- const sch = schema[key]
50
- if (Array.isArray(sch) && sch.some(hasRef)) return true
51
- if (typeof sch == "object" && hasRef(sch)) return true
52
- }
53
- return false
54
- }
55
-
56
- function countKeys(schema: AnySchemaObject): number {
57
- let count = 0
58
- for (const key in schema) {
59
- if (key === "$ref") return Infinity
60
- count++
61
- if (SIMPLE_INLINED.has(key)) continue
62
- if (typeof schema[key] == "object") {
63
- eachItem(schema[key], (sch) => (count += countKeys(sch)))
64
- }
65
- if (count === Infinity) return Infinity
66
- }
67
- return count
68
- }
69
-
70
- export function getFullPath(resolver: UriResolver, id = "", normalize?: boolean): string {
71
- if (normalize !== false) id = normalizeId(id)
72
- const p = resolver.parse(id)
73
- return _getFullPath(resolver, p)
74
- }
75
-
76
- export function _getFullPath(resolver: UriResolver, p: URIComponent): string {
77
- const serialized = resolver.serialize(p)
78
- return serialized.split("#")[0] + "#"
79
- }
80
-
81
- const TRAILING_SLASH_HASH = /#\/?$/
82
- export function normalizeId(id: string | undefined): string {
83
- return id ? id.replace(TRAILING_SLASH_HASH, "") : ""
84
- }
85
-
86
- export function resolveUrl(resolver: UriResolver, baseId: string, id: string): string {
87
- id = normalizeId(id)
88
- return resolver.resolve(baseId, id)
89
- }
90
-
91
- const ANCHOR = /^[a-z_][-a-z0-9._]*$/i
92
-
93
- export function getSchemaRefs(this: Ajv, schema: AnySchema, baseId: string): LocalRefs {
94
- if (typeof schema == "boolean") return {}
95
- const {schemaId, uriResolver} = this.opts
96
- const schId = normalizeId(schema[schemaId] || baseId)
97
- const baseIds: {[JsonPtr in string]?: string} = {"": schId}
98
- const pathPrefix = getFullPath(uriResolver, schId, false)
99
- const localRefs: LocalRefs = {}
100
- const schemaRefs: Set<string> = new Set()
101
-
102
- traverse(schema, {allKeys: true}, (sch, jsonPtr, _, parentJsonPtr) => {
103
- if (parentJsonPtr === undefined) return
104
- const fullPath = pathPrefix + jsonPtr
105
- let innerBaseId = baseIds[parentJsonPtr]
106
- if (typeof sch[schemaId] == "string") innerBaseId = addRef.call(this, sch[schemaId])
107
- addAnchor.call(this, sch.$anchor)
108
- addAnchor.call(this, sch.$dynamicAnchor)
109
- baseIds[jsonPtr] = innerBaseId
110
-
111
- function addRef(this: Ajv, ref: string): string {
112
- // eslint-disable-next-line @typescript-eslint/unbound-method
113
- const _resolve = this.opts.uriResolver.resolve
114
- ref = normalizeId(innerBaseId ? _resolve(innerBaseId, ref) : ref)
115
- if (schemaRefs.has(ref)) throw ambiguos(ref)
116
- schemaRefs.add(ref)
117
- let schOrRef = this.refs[ref]
118
- if (typeof schOrRef == "string") schOrRef = this.refs[schOrRef]
119
- if (typeof schOrRef == "object") {
120
- checkAmbiguosRef(sch, schOrRef.schema, ref)
121
- } else if (ref !== normalizeId(fullPath)) {
122
- if (ref[0] === "#") {
123
- checkAmbiguosRef(sch, localRefs[ref], ref)
124
- localRefs[ref] = sch
125
- } else {
126
- this.refs[ref] = fullPath
127
- }
128
- }
129
- return ref
130
- }
131
-
132
- function addAnchor(this: Ajv, anchor: unknown): void {
133
- if (typeof anchor == "string") {
134
- if (!ANCHOR.test(anchor)) throw new Error(`invalid anchor "${anchor}"`)
135
- addRef.call(this, `#${anchor}`)
136
- }
137
- }
138
- })
139
-
140
- return localRefs
141
-
142
- function checkAmbiguosRef(sch1: AnySchema, sch2: AnySchema | undefined, ref: string): void {
143
- if (sch2 !== undefined && !equal(sch1, sch2)) throw ambiguos(ref)
144
- }
145
-
146
- function ambiguos(ref: string): Error {
147
- return new Error(`reference "${ref}" resolves to more than one schema`)
148
- }
149
- }
@@ -1,50 +0,0 @@
1
- import type {AddedKeywordDefinition} from "../types"
2
-
3
- const _jsonTypes = ["string", "number", "integer", "boolean", "null", "object", "array"] as const
4
-
5
- export type JSONType = (typeof _jsonTypes)[number]
6
-
7
- const jsonTypes: Set<string> = new Set(_jsonTypes)
8
-
9
- export function isJSONType(x: unknown): x is JSONType {
10
- return typeof x == "string" && jsonTypes.has(x)
11
- }
12
-
13
- type ValidationTypes = {
14
- [K in JSONType]: boolean | RuleGroup | undefined
15
- }
16
-
17
- export interface ValidationRules {
18
- rules: RuleGroup[]
19
- post: RuleGroup
20
- all: {[Key in string]?: boolean | Rule} // rules that have to be validated
21
- keywords: {[Key in string]?: boolean} // all known keywords (superset of "all")
22
- types: ValidationTypes
23
- }
24
-
25
- export interface RuleGroup {
26
- type?: JSONType
27
- rules: Rule[]
28
- }
29
-
30
- // This interface wraps KeywordDefinition because definition can have multiple keywords
31
- export interface Rule {
32
- keyword: string
33
- definition: AddedKeywordDefinition
34
- }
35
-
36
- export function getRules(): ValidationRules {
37
- const groups: Record<"number" | "string" | "array" | "object", RuleGroup> = {
38
- number: {type: "number", rules: []},
39
- string: {type: "string", rules: []},
40
- array: {type: "array", rules: []},
41
- object: {type: "object", rules: []},
42
- }
43
- return {
44
- types: {...groups, integer: true, boolean: true, null: true},
45
- rules: [{rules: []}, groups.number, groups.string, groups.array, groups.object],
46
- post: {rules: []},
47
- all: {},
48
- keywords: {},
49
- }
50
- }
@@ -1,213 +0,0 @@
1
- import type {AnySchema, EvaluatedProperties, EvaluatedItems} from "../types"
2
- import type {SchemaCxt, SchemaObjCxt} from "."
3
- import {_, getProperty, Code, Name, CodeGen} from "./codegen"
4
- import {_Code} from "./codegen/code"
5
- import type {Rule, ValidationRules} from "./rules"
6
-
7
- // TODO refactor to use Set
8
- export function toHash<T extends string = string>(arr: T[]): {[K in T]?: true} {
9
- const hash: {[K in T]?: true} = {}
10
- for (const item of arr) hash[item] = true
11
- return hash
12
- }
13
-
14
- export function alwaysValidSchema(it: SchemaCxt, schema: AnySchema): boolean | void {
15
- if (typeof schema == "boolean") return schema
16
- if (Object.keys(schema).length === 0) return true
17
- checkUnknownRules(it, schema)
18
- return !schemaHasRules(schema, it.self.RULES.all)
19
- }
20
-
21
- export function checkUnknownRules(it: SchemaCxt, schema: AnySchema = it.schema): void {
22
- const {opts, self} = it
23
- if (!opts.strictSchema) return
24
- if (typeof schema === "boolean") return
25
- const rules = self.RULES.keywords
26
- for (const key in schema) {
27
- if (!rules[key]) checkStrictMode(it, `unknown keyword: "${key}"`)
28
- }
29
- }
30
-
31
- export function schemaHasRules(
32
- schema: AnySchema,
33
- rules: {[Key in string]?: boolean | Rule}
34
- ): boolean {
35
- if (typeof schema == "boolean") return !schema
36
- for (const key in schema) if (rules[key]) return true
37
- return false
38
- }
39
-
40
- export function schemaHasRulesButRef(schema: AnySchema, RULES: ValidationRules): boolean {
41
- if (typeof schema == "boolean") return !schema
42
- for (const key in schema) if (key !== "$ref" && RULES.all[key]) return true
43
- return false
44
- }
45
-
46
- export function schemaRefOrVal(
47
- {topSchemaRef, schemaPath}: SchemaObjCxt,
48
- schema: unknown,
49
- keyword: string,
50
- $data?: string | false
51
- ): Code | number | boolean {
52
- if (!$data) {
53
- if (typeof schema == "number" || typeof schema == "boolean") return schema
54
- if (typeof schema == "string") return _`${schema}`
55
- }
56
- return _`${topSchemaRef}${schemaPath}${getProperty(keyword)}`
57
- }
58
-
59
- export function unescapeFragment(str: string): string {
60
- return unescapeJsonPointer(decodeURIComponent(str))
61
- }
62
-
63
- export function escapeFragment(str: string | number): string {
64
- return encodeURIComponent(escapeJsonPointer(str))
65
- }
66
-
67
- export function escapeJsonPointer(str: string | number): string {
68
- if (typeof str == "number") return `${str}`
69
- return str.replace(/~/g, "~0").replace(/\//g, "~1")
70
- }
71
-
72
- export function unescapeJsonPointer(str: string): string {
73
- return str.replace(/~1/g, "/").replace(/~0/g, "~")
74
- }
75
-
76
- export function eachItem<T>(xs: T | T[], f: (x: T) => void): void {
77
- if (Array.isArray(xs)) {
78
- for (const x of xs) f(x)
79
- } else {
80
- f(xs)
81
- }
82
- }
83
-
84
- type SomeEvaluated = EvaluatedProperties | EvaluatedItems
85
-
86
- type MergeEvaluatedFunc<T extends SomeEvaluated> = (
87
- gen: CodeGen,
88
- from: Name | T,
89
- to: Name | Exclude<T, true> | undefined,
90
- toName?: typeof Name
91
- ) => Name | T
92
-
93
- interface MakeMergeFuncArgs<T extends SomeEvaluated> {
94
- mergeNames: (gen: CodeGen, from: Name, to: Name) => void
95
- mergeToName: (gen: CodeGen, from: T, to: Name) => void
96
- mergeValues: (from: T, to: Exclude<T, true>) => T
97
- resultToName: (gen: CodeGen, res?: T) => Name
98
- }
99
-
100
- function makeMergeEvaluated<T extends SomeEvaluated>({
101
- mergeNames,
102
- mergeToName,
103
- mergeValues,
104
- resultToName,
105
- }: MakeMergeFuncArgs<T>): MergeEvaluatedFunc<T> {
106
- return (gen, from, to, toName) => {
107
- const res =
108
- to === undefined
109
- ? from
110
- : to instanceof Name
111
- ? (from instanceof Name ? mergeNames(gen, from, to) : mergeToName(gen, from, to), to)
112
- : from instanceof Name
113
- ? (mergeToName(gen, to, from), from)
114
- : mergeValues(from, to)
115
- return toName === Name && !(res instanceof Name) ? resultToName(gen, res) : res
116
- }
117
- }
118
-
119
- interface MergeEvaluated {
120
- props: MergeEvaluatedFunc<EvaluatedProperties>
121
- items: MergeEvaluatedFunc<EvaluatedItems>
122
- }
123
-
124
- export const mergeEvaluated: MergeEvaluated = {
125
- props: makeMergeEvaluated({
126
- mergeNames: (gen, from, to) =>
127
- gen.if(_`${to} !== true && ${from} !== undefined`, () => {
128
- gen.if(
129
- _`${from} === true`,
130
- () => gen.assign(to, true),
131
- () => gen.assign(to, _`${to} || {}`).code(_`Object.assign(${to}, ${from})`)
132
- )
133
- }),
134
- mergeToName: (gen, from, to) =>
135
- gen.if(_`${to} !== true`, () => {
136
- if (from === true) {
137
- gen.assign(to, true)
138
- } else {
139
- gen.assign(to, _`${to} || {}`)
140
- setEvaluated(gen, to, from)
141
- }
142
- }),
143
- mergeValues: (from, to) => (from === true ? true : {...from, ...to}),
144
- resultToName: evaluatedPropsToName,
145
- }),
146
- items: makeMergeEvaluated({
147
- mergeNames: (gen, from, to) =>
148
- gen.if(_`${to} !== true && ${from} !== undefined`, () =>
149
- gen.assign(to, _`${from} === true ? true : ${to} > ${from} ? ${to} : ${from}`)
150
- ),
151
- mergeToName: (gen, from, to) =>
152
- gen.if(_`${to} !== true`, () =>
153
- gen.assign(to, from === true ? true : _`${to} > ${from} ? ${to} : ${from}`)
154
- ),
155
- mergeValues: (from, to) => (from === true ? true : Math.max(from, to)),
156
- resultToName: (gen, items) => gen.var("items", items),
157
- }),
158
- }
159
-
160
- export function evaluatedPropsToName(gen: CodeGen, ps?: EvaluatedProperties): Name {
161
- if (ps === true) return gen.var("props", true)
162
- const props = gen.var("props", _`{}`)
163
- if (ps !== undefined) setEvaluated(gen, props, ps)
164
- return props
165
- }
166
-
167
- export function setEvaluated(gen: CodeGen, props: Name, ps: {[K in string]?: true}): void {
168
- Object.keys(ps).forEach((p) => gen.assign(_`${props}${getProperty(p)}`, true))
169
- }
170
-
171
- const snippets: {[S in string]?: _Code} = {}
172
-
173
- export function useFunc(gen: CodeGen, f: {code: string}): Name {
174
- return gen.scopeValue("func", {
175
- ref: f,
176
- code: snippets[f.code] || (snippets[f.code] = new _Code(f.code)),
177
- })
178
- }
179
-
180
- export enum Type {
181
- Num,
182
- Str,
183
- }
184
-
185
- export function getErrorPath(
186
- dataProp: Name | string | number,
187
- dataPropType?: Type,
188
- jsPropertySyntax?: boolean
189
- ): Code | string {
190
- // let path
191
- if (dataProp instanceof Name) {
192
- const isNumber = dataPropType === Type.Num
193
- return jsPropertySyntax
194
- ? isNumber
195
- ? _`"[" + ${dataProp} + "]"`
196
- : _`"['" + ${dataProp} + "']"`
197
- : isNumber
198
- ? _`"/" + ${dataProp}`
199
- : _`"/" + ${dataProp}.replace(/~/g, "~0").replace(/\\//g, "~1")` // TODO maybe use global escapePointer
200
- }
201
- return jsPropertySyntax ? getProperty(dataProp).toString() : "/" + escapeJsonPointer(dataProp)
202
- }
203
-
204
- export function checkStrictMode(
205
- it: SchemaCxt,
206
- msg: string,
207
- mode: boolean | "log" = it.opts.strictSchema
208
- ): void {
209
- if (!mode) return
210
- msg = `strict mode: ${msg}`
211
- if (mode === true) throw new Error(msg)
212
- it.self.logger.warn(msg)
213
- }
@@ -1,22 +0,0 @@
1
- import type {AnySchemaObject} from "../../types"
2
- import type {SchemaObjCxt} from ".."
3
- import type {JSONType, RuleGroup, Rule} from "../rules"
4
-
5
- export function schemaHasRulesForType(
6
- {schema, self}: SchemaObjCxt,
7
- type: JSONType
8
- ): boolean | undefined {
9
- const group = self.RULES.types[type]
10
- return group && group !== true && shouldUseGroup(schema, group)
11
- }
12
-
13
- export function shouldUseGroup(schema: AnySchemaObject, group: RuleGroup): boolean {
14
- return group.rules.some((rule) => shouldUseRule(schema, rule))
15
- }
16
-
17
- export function shouldUseRule(schema: AnySchemaObject, rule: Rule): boolean | undefined {
18
- return (
19
- schema[rule.keyword] !== undefined ||
20
- rule.definition.implements?.some((kwd) => schema[kwd] !== undefined)
21
- )
22
- }
@@ -1,47 +0,0 @@
1
- import type {KeywordErrorDefinition, KeywordErrorCxt} from "../../types"
2
- import type {SchemaCxt} from ".."
3
- import {reportError} from "../errors"
4
- import {_, Name} from "../codegen"
5
- import N from "../names"
6
-
7
- const boolError: KeywordErrorDefinition = {
8
- message: "boolean schema is false",
9
- }
10
-
11
- export function topBoolOrEmptySchema(it: SchemaCxt): void {
12
- const {gen, schema, validateName} = it
13
- if (schema === false) {
14
- falseSchemaError(it, false)
15
- } else if (typeof schema == "object" && schema.$async === true) {
16
- gen.return(N.data)
17
- } else {
18
- gen.assign(_`${validateName}.errors`, null)
19
- gen.return(true)
20
- }
21
- }
22
-
23
- export function boolOrEmptySchema(it: SchemaCxt, valid: Name): void {
24
- const {gen, schema} = it
25
- if (schema === false) {
26
- gen.var(valid, false) // TODO var
27
- falseSchemaError(it)
28
- } else {
29
- gen.var(valid, true) // TODO var
30
- }
31
- }
32
-
33
- function falseSchemaError(it: SchemaCxt, overrideAllErrors?: boolean): void {
34
- const {gen, data} = it
35
- // TODO maybe some other interface should be used for non-keyword validation errors...
36
- const cxt: KeywordErrorCxt = {
37
- gen,
38
- keyword: "false schema",
39
- data,
40
- schema: false,
41
- schemaCode: false,
42
- schemaValue: false,
43
- params: {},
44
- it,
45
- }
46
- reportError(cxt, boolError, undefined, overrideAllErrors)
47
- }