toolcraft 0.0.115 → 0.0.116

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 (547) hide show
  1. package/composition.json +2 -27
  2. package/dist/composition.json +2 -27
  3. package/node_modules/tiny-stdio-mcp-server/dist/composition.json +15 -0
  4. package/node_modules/tiny-stdio-mcp-server/dist/server.js +21 -16
  5. package/node_modules/tiny-stdio-mcp-server/package.json +3 -1
  6. package/node_modules/toolcraft-schema/dist/index.d.ts +2 -0
  7. package/node_modules/toolcraft-schema/dist/index.js +1 -0
  8. package/node_modules/toolcraft-schema/dist/json-schema/compiler.d.ts +11 -0
  9. package/node_modules/toolcraft-schema/dist/json-schema/compiler.js +390 -0
  10. package/node_modules/toolcraft-schema/dist/json-schema/evaluate.d.ts +3 -0
  11. package/node_modules/toolcraft-schema/dist/json-schema/evaluate.js +442 -0
  12. package/node_modules/toolcraft-schema/dist/json-schema/index.d.ts +5 -0
  13. package/node_modules/toolcraft-schema/dist/json-schema/index.js +19 -0
  14. package/node_modules/toolcraft-schema/dist/json-schema/types.d.ts +33 -0
  15. package/node_modules/toolcraft-schema/dist/json-schema/types.js +1 -0
  16. package/node_modules/toolcraft-schema/dist/json-schema/utils.d.ts +19 -0
  17. package/node_modules/toolcraft-schema/dist/json-schema/utils.js +171 -0
  18. package/node_modules/toolcraft-schema/dist/validate.d.ts +1 -0
  19. package/node_modules/toolcraft-schema/package.json +3 -3
  20. package/package.json +4 -6
  21. package/node_modules/ajv/.runkit_example.js +0 -23
  22. package/node_modules/ajv/LICENSE +0 -22
  23. package/node_modules/ajv/README.md +0 -207
  24. package/node_modules/ajv/dist/2019.d.ts +0 -19
  25. package/node_modules/ajv/dist/2019.js +0 -61
  26. package/node_modules/ajv/dist/2019.js.map +0 -1
  27. package/node_modules/ajv/dist/2020.d.ts +0 -19
  28. package/node_modules/ajv/dist/2020.js +0 -55
  29. package/node_modules/ajv/dist/2020.js.map +0 -1
  30. package/node_modules/ajv/dist/ajv.d.ts +0 -18
  31. package/node_modules/ajv/dist/ajv.js +0 -50
  32. package/node_modules/ajv/dist/ajv.js.map +0 -1
  33. package/node_modules/ajv/dist/compile/codegen/code.d.ts +0 -40
  34. package/node_modules/ajv/dist/compile/codegen/code.js +0 -156
  35. package/node_modules/ajv/dist/compile/codegen/code.js.map +0 -1
  36. package/node_modules/ajv/dist/compile/codegen/index.d.ts +0 -79
  37. package/node_modules/ajv/dist/compile/codegen/index.js +0 -697
  38. package/node_modules/ajv/dist/compile/codegen/index.js.map +0 -1
  39. package/node_modules/ajv/dist/compile/codegen/scope.d.ts +0 -79
  40. package/node_modules/ajv/dist/compile/codegen/scope.js +0 -143
  41. package/node_modules/ajv/dist/compile/codegen/scope.js.map +0 -1
  42. package/node_modules/ajv/dist/compile/errors.d.ts +0 -13
  43. package/node_modules/ajv/dist/compile/errors.js +0 -123
  44. package/node_modules/ajv/dist/compile/errors.js.map +0 -1
  45. package/node_modules/ajv/dist/compile/index.d.ts +0 -80
  46. package/node_modules/ajv/dist/compile/index.js +0 -242
  47. package/node_modules/ajv/dist/compile/index.js.map +0 -1
  48. package/node_modules/ajv/dist/compile/jtd/parse.d.ts +0 -4
  49. package/node_modules/ajv/dist/compile/jtd/parse.js +0 -350
  50. package/node_modules/ajv/dist/compile/jtd/parse.js.map +0 -1
  51. package/node_modules/ajv/dist/compile/jtd/serialize.d.ts +0 -4
  52. package/node_modules/ajv/dist/compile/jtd/serialize.js +0 -236
  53. package/node_modules/ajv/dist/compile/jtd/serialize.js.map +0 -1
  54. package/node_modules/ajv/dist/compile/jtd/types.d.ts +0 -6
  55. package/node_modules/ajv/dist/compile/jtd/types.js +0 -14
  56. package/node_modules/ajv/dist/compile/jtd/types.js.map +0 -1
  57. package/node_modules/ajv/dist/compile/names.d.ts +0 -20
  58. package/node_modules/ajv/dist/compile/names.js +0 -28
  59. package/node_modules/ajv/dist/compile/names.js.map +0 -1
  60. package/node_modules/ajv/dist/compile/ref_error.d.ts +0 -6
  61. package/node_modules/ajv/dist/compile/ref_error.js +0 -12
  62. package/node_modules/ajv/dist/compile/ref_error.js.map +0 -1
  63. package/node_modules/ajv/dist/compile/resolve.d.ts +0 -12
  64. package/node_modules/ajv/dist/compile/resolve.js +0 -155
  65. package/node_modules/ajv/dist/compile/resolve.js.map +0 -1
  66. package/node_modules/ajv/dist/compile/rules.d.ts +0 -28
  67. package/node_modules/ajv/dist/compile/rules.js +0 -26
  68. package/node_modules/ajv/dist/compile/rules.js.map +0 -1
  69. package/node_modules/ajv/dist/compile/util.d.ts +0 -40
  70. package/node_modules/ajv/dist/compile/util.js +0 -178
  71. package/node_modules/ajv/dist/compile/util.js.map +0 -1
  72. package/node_modules/ajv/dist/compile/validate/applicability.d.ts +0 -6
  73. package/node_modules/ajv/dist/compile/validate/applicability.js +0 -19
  74. package/node_modules/ajv/dist/compile/validate/applicability.js.map +0 -1
  75. package/node_modules/ajv/dist/compile/validate/boolSchema.d.ts +0 -4
  76. package/node_modules/ajv/dist/compile/validate/boolSchema.js +0 -50
  77. package/node_modules/ajv/dist/compile/validate/boolSchema.js.map +0 -1
  78. package/node_modules/ajv/dist/compile/validate/dataType.d.ts +0 -17
  79. package/node_modules/ajv/dist/compile/validate/dataType.js +0 -203
  80. package/node_modules/ajv/dist/compile/validate/dataType.js.map +0 -1
  81. package/node_modules/ajv/dist/compile/validate/defaults.d.ts +0 -2
  82. package/node_modules/ajv/dist/compile/validate/defaults.js +0 -35
  83. package/node_modules/ajv/dist/compile/validate/defaults.js.map +0 -1
  84. package/node_modules/ajv/dist/compile/validate/index.d.ts +0 -42
  85. package/node_modules/ajv/dist/compile/validate/index.js +0 -520
  86. package/node_modules/ajv/dist/compile/validate/index.js.map +0 -1
  87. package/node_modules/ajv/dist/compile/validate/keyword.d.ts +0 -8
  88. package/node_modules/ajv/dist/compile/validate/keyword.js +0 -124
  89. package/node_modules/ajv/dist/compile/validate/keyword.js.map +0 -1
  90. package/node_modules/ajv/dist/compile/validate/subschema.d.ts +0 -47
  91. package/node_modules/ajv/dist/compile/validate/subschema.js +0 -81
  92. package/node_modules/ajv/dist/compile/validate/subschema.js.map +0 -1
  93. package/node_modules/ajv/dist/core.d.ts +0 -174
  94. package/node_modules/ajv/dist/core.js +0 -618
  95. package/node_modules/ajv/dist/core.js.map +0 -1
  96. package/node_modules/ajv/dist/jtd.d.ts +0 -47
  97. package/node_modules/ajv/dist/jtd.js +0 -72
  98. package/node_modules/ajv/dist/jtd.js.map +0 -1
  99. package/node_modules/ajv/dist/refs/data.json +0 -13
  100. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.d.ts +0 -2
  101. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.js +0 -28
  102. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.js.map +0 -1
  103. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/applicator.json +0 -53
  104. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/content.json +0 -17
  105. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/core.json +0 -57
  106. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/format.json +0 -14
  107. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/meta-data.json +0 -37
  108. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/validation.json +0 -90
  109. package/node_modules/ajv/dist/refs/json-schema-2019-09/schema.json +0 -39
  110. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.d.ts +0 -2
  111. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.js +0 -30
  112. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.js.map +0 -1
  113. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/applicator.json +0 -48
  114. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/content.json +0 -17
  115. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/core.json +0 -51
  116. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/format-annotation.json +0 -14
  117. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/meta-data.json +0 -37
  118. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/unevaluated.json +0 -15
  119. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/validation.json +0 -90
  120. package/node_modules/ajv/dist/refs/json-schema-2020-12/schema.json +0 -55
  121. package/node_modules/ajv/dist/refs/json-schema-draft-06.json +0 -137
  122. package/node_modules/ajv/dist/refs/json-schema-draft-07.json +0 -151
  123. package/node_modules/ajv/dist/refs/json-schema-secure.json +0 -88
  124. package/node_modules/ajv/dist/refs/jtd-schema.d.ts +0 -3
  125. package/node_modules/ajv/dist/refs/jtd-schema.js +0 -118
  126. package/node_modules/ajv/dist/refs/jtd-schema.js.map +0 -1
  127. package/node_modules/ajv/dist/runtime/equal.d.ts +0 -6
  128. package/node_modules/ajv/dist/runtime/equal.js +0 -7
  129. package/node_modules/ajv/dist/runtime/equal.js.map +0 -1
  130. package/node_modules/ajv/dist/runtime/parseJson.d.ts +0 -18
  131. package/node_modules/ajv/dist/runtime/parseJson.js +0 -185
  132. package/node_modules/ajv/dist/runtime/parseJson.js.map +0 -1
  133. package/node_modules/ajv/dist/runtime/quote.d.ts +0 -5
  134. package/node_modules/ajv/dist/runtime/quote.js +0 -30
  135. package/node_modules/ajv/dist/runtime/quote.js.map +0 -1
  136. package/node_modules/ajv/dist/runtime/re2.d.ts +0 -6
  137. package/node_modules/ajv/dist/runtime/re2.js +0 -6
  138. package/node_modules/ajv/dist/runtime/re2.js.map +0 -1
  139. package/node_modules/ajv/dist/runtime/timestamp.d.ts +0 -5
  140. package/node_modules/ajv/dist/runtime/timestamp.js +0 -42
  141. package/node_modules/ajv/dist/runtime/timestamp.js.map +0 -1
  142. package/node_modules/ajv/dist/runtime/ucs2length.d.ts +0 -5
  143. package/node_modules/ajv/dist/runtime/ucs2length.js +0 -24
  144. package/node_modules/ajv/dist/runtime/ucs2length.js.map +0 -1
  145. package/node_modules/ajv/dist/runtime/uri.d.ts +0 -6
  146. package/node_modules/ajv/dist/runtime/uri.js +0 -6
  147. package/node_modules/ajv/dist/runtime/uri.js.map +0 -1
  148. package/node_modules/ajv/dist/runtime/validation_error.d.ts +0 -7
  149. package/node_modules/ajv/dist/runtime/validation_error.js +0 -11
  150. package/node_modules/ajv/dist/runtime/validation_error.js.map +0 -1
  151. package/node_modules/ajv/dist/standalone/index.d.ts +0 -6
  152. package/node_modules/ajv/dist/standalone/index.js +0 -90
  153. package/node_modules/ajv/dist/standalone/index.js.map +0 -1
  154. package/node_modules/ajv/dist/standalone/instance.d.ts +0 -12
  155. package/node_modules/ajv/dist/standalone/instance.js +0 -35
  156. package/node_modules/ajv/dist/standalone/instance.js.map +0 -1
  157. package/node_modules/ajv/dist/types/index.d.ts +0 -183
  158. package/node_modules/ajv/dist/types/index.js +0 -3
  159. package/node_modules/ajv/dist/types/index.js.map +0 -1
  160. package/node_modules/ajv/dist/types/json-schema.d.ts +0 -125
  161. package/node_modules/ajv/dist/types/json-schema.js +0 -3
  162. package/node_modules/ajv/dist/types/json-schema.js.map +0 -1
  163. package/node_modules/ajv/dist/types/jtd-schema.d.ts +0 -174
  164. package/node_modules/ajv/dist/types/jtd-schema.js +0 -3
  165. package/node_modules/ajv/dist/types/jtd-schema.js.map +0 -1
  166. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.d.ts +0 -8
  167. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +0 -49
  168. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js.map +0 -1
  169. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.d.ts +0 -6
  170. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +0 -106
  171. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js.map +0 -1
  172. package/node_modules/ajv/dist/vocabularies/applicator/allOf.d.ts +0 -3
  173. package/node_modules/ajv/dist/vocabularies/applicator/allOf.js +0 -23
  174. package/node_modules/ajv/dist/vocabularies/applicator/allOf.js.map +0 -1
  175. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.d.ts +0 -4
  176. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +0 -12
  177. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.js.map +0 -1
  178. package/node_modules/ajv/dist/vocabularies/applicator/contains.d.ts +0 -7
  179. package/node_modules/ajv/dist/vocabularies/applicator/contains.js +0 -95
  180. package/node_modules/ajv/dist/vocabularies/applicator/contains.js.map +0 -1
  181. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.d.ts +0 -21
  182. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +0 -85
  183. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.js.map +0 -1
  184. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.d.ts +0 -3
  185. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js +0 -11
  186. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js.map +0 -1
  187. package/node_modules/ajv/dist/vocabularies/applicator/if.d.ts +0 -6
  188. package/node_modules/ajv/dist/vocabularies/applicator/if.js +0 -66
  189. package/node_modules/ajv/dist/vocabularies/applicator/if.js.map +0 -1
  190. package/node_modules/ajv/dist/vocabularies/applicator/index.d.ts +0 -13
  191. package/node_modules/ajv/dist/vocabularies/applicator/index.js +0 -44
  192. package/node_modules/ajv/dist/vocabularies/applicator/index.js.map +0 -1
  193. package/node_modules/ajv/dist/vocabularies/applicator/items.d.ts +0 -5
  194. package/node_modules/ajv/dist/vocabularies/applicator/items.js +0 -52
  195. package/node_modules/ajv/dist/vocabularies/applicator/items.js.map +0 -1
  196. package/node_modules/ajv/dist/vocabularies/applicator/items2020.d.ts +0 -6
  197. package/node_modules/ajv/dist/vocabularies/applicator/items2020.js +0 -30
  198. package/node_modules/ajv/dist/vocabularies/applicator/items2020.js.map +0 -1
  199. package/node_modules/ajv/dist/vocabularies/applicator/not.d.ts +0 -4
  200. package/node_modules/ajv/dist/vocabularies/applicator/not.js +0 -26
  201. package/node_modules/ajv/dist/vocabularies/applicator/not.js.map +0 -1
  202. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.d.ts +0 -6
  203. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +0 -60
  204. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.js.map +0 -1
  205. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.d.ts +0 -3
  206. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +0 -75
  207. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js.map +0 -1
  208. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.d.ts +0 -3
  209. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +0 -12
  210. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js.map +0 -1
  211. package/node_modules/ajv/dist/vocabularies/applicator/properties.d.ts +0 -3
  212. package/node_modules/ajv/dist/vocabularies/applicator/properties.js +0 -54
  213. package/node_modules/ajv/dist/vocabularies/applicator/properties.js.map +0 -1
  214. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.d.ts +0 -6
  215. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +0 -38
  216. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js.map +0 -1
  217. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.d.ts +0 -3
  218. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +0 -13
  219. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.js.map +0 -1
  220. package/node_modules/ajv/dist/vocabularies/code.d.ts +0 -17
  221. package/node_modules/ajv/dist/vocabularies/code.js +0 -131
  222. package/node_modules/ajv/dist/vocabularies/code.js.map +0 -1
  223. package/node_modules/ajv/dist/vocabularies/core/id.d.ts +0 -3
  224. package/node_modules/ajv/dist/vocabularies/core/id.js +0 -10
  225. package/node_modules/ajv/dist/vocabularies/core/id.js.map +0 -1
  226. package/node_modules/ajv/dist/vocabularies/core/index.d.ts +0 -3
  227. package/node_modules/ajv/dist/vocabularies/core/index.js +0 -16
  228. package/node_modules/ajv/dist/vocabularies/core/index.js.map +0 -1
  229. package/node_modules/ajv/dist/vocabularies/core/ref.d.ts +0 -8
  230. package/node_modules/ajv/dist/vocabularies/core/ref.js +0 -122
  231. package/node_modules/ajv/dist/vocabularies/core/ref.js.map +0 -1
  232. package/node_modules/ajv/dist/vocabularies/discriminator/index.d.ts +0 -5
  233. package/node_modules/ajv/dist/vocabularies/discriminator/index.js +0 -104
  234. package/node_modules/ajv/dist/vocabularies/discriminator/index.js.map +0 -1
  235. package/node_modules/ajv/dist/vocabularies/discriminator/types.d.ts +0 -10
  236. package/node_modules/ajv/dist/vocabularies/discriminator/types.js +0 -9
  237. package/node_modules/ajv/dist/vocabularies/discriminator/types.js.map +0 -1
  238. package/node_modules/ajv/dist/vocabularies/draft2020.d.ts +0 -3
  239. package/node_modules/ajv/dist/vocabularies/draft2020.js +0 -23
  240. package/node_modules/ajv/dist/vocabularies/draft2020.js.map +0 -1
  241. package/node_modules/ajv/dist/vocabularies/draft7.d.ts +0 -3
  242. package/node_modules/ajv/dist/vocabularies/draft7.js +0 -17
  243. package/node_modules/ajv/dist/vocabularies/draft7.js.map +0 -1
  244. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.d.ts +0 -5
  245. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js +0 -30
  246. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js.map +0 -1
  247. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.d.ts +0 -5
  248. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js +0 -51
  249. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js.map +0 -1
  250. package/node_modules/ajv/dist/vocabularies/dynamic/index.d.ts +0 -3
  251. package/node_modules/ajv/dist/vocabularies/dynamic/index.js +0 -9
  252. package/node_modules/ajv/dist/vocabularies/dynamic/index.js.map +0 -1
  253. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.d.ts +0 -3
  254. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js +0 -16
  255. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js.map +0 -1
  256. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.d.ts +0 -3
  257. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js +0 -10
  258. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js.map +0 -1
  259. package/node_modules/ajv/dist/vocabularies/errors.d.ts +0 -9
  260. package/node_modules/ajv/dist/vocabularies/errors.js +0 -3
  261. package/node_modules/ajv/dist/vocabularies/errors.js.map +0 -1
  262. package/node_modules/ajv/dist/vocabularies/format/format.d.ts +0 -8
  263. package/node_modules/ajv/dist/vocabularies/format/format.js +0 -92
  264. package/node_modules/ajv/dist/vocabularies/format/format.js.map +0 -1
  265. package/node_modules/ajv/dist/vocabularies/format/index.d.ts +0 -3
  266. package/node_modules/ajv/dist/vocabularies/format/index.js +0 -6
  267. package/node_modules/ajv/dist/vocabularies/format/index.js.map +0 -1
  268. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.d.ts +0 -6
  269. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.js +0 -71
  270. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.js.map +0 -1
  271. package/node_modules/ajv/dist/vocabularies/jtd/elements.d.ts +0 -5
  272. package/node_modules/ajv/dist/vocabularies/jtd/elements.js +0 -24
  273. package/node_modules/ajv/dist/vocabularies/jtd/elements.js.map +0 -1
  274. package/node_modules/ajv/dist/vocabularies/jtd/enum.d.ts +0 -6
  275. package/node_modules/ajv/dist/vocabularies/jtd/enum.js +0 -43
  276. package/node_modules/ajv/dist/vocabularies/jtd/enum.js.map +0 -1
  277. package/node_modules/ajv/dist/vocabularies/jtd/error.d.ts +0 -9
  278. package/node_modules/ajv/dist/vocabularies/jtd/error.js +0 -20
  279. package/node_modules/ajv/dist/vocabularies/jtd/error.js.map +0 -1
  280. package/node_modules/ajv/dist/vocabularies/jtd/index.d.ts +0 -10
  281. package/node_modules/ajv/dist/vocabularies/jtd/index.js +0 -29
  282. package/node_modules/ajv/dist/vocabularies/jtd/index.js.map +0 -1
  283. package/node_modules/ajv/dist/vocabularies/jtd/metadata.d.ts +0 -5
  284. package/node_modules/ajv/dist/vocabularies/jtd/metadata.js +0 -25
  285. package/node_modules/ajv/dist/vocabularies/jtd/metadata.js.map +0 -1
  286. package/node_modules/ajv/dist/vocabularies/jtd/nullable.d.ts +0 -4
  287. package/node_modules/ajv/dist/vocabularies/jtd/nullable.js +0 -22
  288. package/node_modules/ajv/dist/vocabularies/jtd/nullable.js.map +0 -1
  289. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.d.ts +0 -3
  290. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js +0 -15
  291. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js.map +0 -1
  292. package/node_modules/ajv/dist/vocabularies/jtd/properties.d.ts +0 -22
  293. package/node_modules/ajv/dist/vocabularies/jtd/properties.js +0 -149
  294. package/node_modules/ajv/dist/vocabularies/jtd/properties.js.map +0 -1
  295. package/node_modules/ajv/dist/vocabularies/jtd/ref.d.ts +0 -4
  296. package/node_modules/ajv/dist/vocabularies/jtd/ref.js +0 -67
  297. package/node_modules/ajv/dist/vocabularies/jtd/ref.js.map +0 -1
  298. package/node_modules/ajv/dist/vocabularies/jtd/type.d.ts +0 -10
  299. package/node_modules/ajv/dist/vocabularies/jtd/type.js +0 -69
  300. package/node_modules/ajv/dist/vocabularies/jtd/type.js.map +0 -1
  301. package/node_modules/ajv/dist/vocabularies/jtd/union.d.ts +0 -3
  302. package/node_modules/ajv/dist/vocabularies/jtd/union.js +0 -12
  303. package/node_modules/ajv/dist/vocabularies/jtd/union.js.map +0 -1
  304. package/node_modules/ajv/dist/vocabularies/jtd/values.d.ts +0 -5
  305. package/node_modules/ajv/dist/vocabularies/jtd/values.js +0 -51
  306. package/node_modules/ajv/dist/vocabularies/jtd/values.js.map +0 -1
  307. package/node_modules/ajv/dist/vocabularies/metadata.d.ts +0 -3
  308. package/node_modules/ajv/dist/vocabularies/metadata.js +0 -18
  309. package/node_modules/ajv/dist/vocabularies/metadata.js.map +0 -1
  310. package/node_modules/ajv/dist/vocabularies/next.d.ts +0 -3
  311. package/node_modules/ajv/dist/vocabularies/next.js +0 -8
  312. package/node_modules/ajv/dist/vocabularies/next.js.map +0 -1
  313. package/node_modules/ajv/dist/vocabularies/unevaluated/index.d.ts +0 -3
  314. package/node_modules/ajv/dist/vocabularies/unevaluated/index.js +0 -7
  315. package/node_modules/ajv/dist/vocabularies/unevaluated/index.js.map +0 -1
  316. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.d.ts +0 -6
  317. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js +0 -40
  318. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js.map +0 -1
  319. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.d.ts +0 -6
  320. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js +0 -65
  321. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js.map +0 -1
  322. package/node_modules/ajv/dist/vocabularies/validation/const.d.ts +0 -6
  323. package/node_modules/ajv/dist/vocabularies/validation/const.js +0 -25
  324. package/node_modules/ajv/dist/vocabularies/validation/const.js.map +0 -1
  325. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.d.ts +0 -5
  326. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js +0 -12
  327. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js.map +0 -1
  328. package/node_modules/ajv/dist/vocabularies/validation/enum.d.ts +0 -8
  329. package/node_modules/ajv/dist/vocabularies/validation/enum.js +0 -48
  330. package/node_modules/ajv/dist/vocabularies/validation/enum.js.map +0 -1
  331. package/node_modules/ajv/dist/vocabularies/validation/index.d.ts +0 -16
  332. package/node_modules/ajv/dist/vocabularies/validation/index.js +0 -33
  333. package/node_modules/ajv/dist/vocabularies/validation/index.js.map +0 -1
  334. package/node_modules/ajv/dist/vocabularies/validation/limitContains.d.ts +0 -3
  335. package/node_modules/ajv/dist/vocabularies/validation/limitContains.js +0 -15
  336. package/node_modules/ajv/dist/vocabularies/validation/limitContains.js.map +0 -1
  337. package/node_modules/ajv/dist/vocabularies/validation/limitItems.d.ts +0 -3
  338. package/node_modules/ajv/dist/vocabularies/validation/limitItems.js +0 -24
  339. package/node_modules/ajv/dist/vocabularies/validation/limitItems.js.map +0 -1
  340. package/node_modules/ajv/dist/vocabularies/validation/limitLength.d.ts +0 -3
  341. package/node_modules/ajv/dist/vocabularies/validation/limitLength.js +0 -27
  342. package/node_modules/ajv/dist/vocabularies/validation/limitLength.js.map +0 -1
  343. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.d.ts +0 -11
  344. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +0 -27
  345. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.js.map +0 -1
  346. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.d.ts +0 -3
  347. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +0 -24
  348. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.js.map +0 -1
  349. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.d.ts +0 -8
  350. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +0 -26
  351. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.js.map +0 -1
  352. package/node_modules/ajv/dist/vocabularies/validation/pattern.d.ts +0 -8
  353. package/node_modules/ajv/dist/vocabularies/validation/pattern.js +0 -33
  354. package/node_modules/ajv/dist/vocabularies/validation/pattern.js.map +0 -1
  355. package/node_modules/ajv/dist/vocabularies/validation/required.d.ts +0 -8
  356. package/node_modules/ajv/dist/vocabularies/validation/required.js +0 -79
  357. package/node_modules/ajv/dist/vocabularies/validation/required.js.map +0 -1
  358. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.d.ts +0 -9
  359. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +0 -64
  360. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js.map +0 -1
  361. package/node_modules/ajv/lib/2019.ts +0 -81
  362. package/node_modules/ajv/lib/2020.ts +0 -75
  363. package/node_modules/ajv/lib/ajv.ts +0 -70
  364. package/node_modules/ajv/lib/compile/codegen/code.ts +0 -169
  365. package/node_modules/ajv/lib/compile/codegen/index.ts +0 -852
  366. package/node_modules/ajv/lib/compile/codegen/scope.ts +0 -215
  367. package/node_modules/ajv/lib/compile/errors.ts +0 -184
  368. package/node_modules/ajv/lib/compile/index.ts +0 -324
  369. package/node_modules/ajv/lib/compile/jtd/parse.ts +0 -411
  370. package/node_modules/ajv/lib/compile/jtd/serialize.ts +0 -277
  371. package/node_modules/ajv/lib/compile/jtd/types.ts +0 -16
  372. package/node_modules/ajv/lib/compile/names.ts +0 -27
  373. package/node_modules/ajv/lib/compile/ref_error.ts +0 -13
  374. package/node_modules/ajv/lib/compile/resolve.ts +0 -149
  375. package/node_modules/ajv/lib/compile/rules.ts +0 -50
  376. package/node_modules/ajv/lib/compile/util.ts +0 -213
  377. package/node_modules/ajv/lib/compile/validate/applicability.ts +0 -22
  378. package/node_modules/ajv/lib/compile/validate/boolSchema.ts +0 -47
  379. package/node_modules/ajv/lib/compile/validate/dataType.ts +0 -230
  380. package/node_modules/ajv/lib/compile/validate/defaults.ts +0 -32
  381. package/node_modules/ajv/lib/compile/validate/index.ts +0 -582
  382. package/node_modules/ajv/lib/compile/validate/keyword.ts +0 -171
  383. package/node_modules/ajv/lib/compile/validate/subschema.ts +0 -135
  384. package/node_modules/ajv/lib/core.ts +0 -892
  385. package/node_modules/ajv/lib/jtd.ts +0 -132
  386. package/node_modules/ajv/lib/refs/data.json +0 -13
  387. package/node_modules/ajv/lib/refs/json-schema-2019-09/index.ts +0 -28
  388. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/applicator.json +0 -53
  389. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/content.json +0 -17
  390. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/core.json +0 -57
  391. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/format.json +0 -14
  392. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/meta-data.json +0 -37
  393. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/validation.json +0 -90
  394. package/node_modules/ajv/lib/refs/json-schema-2019-09/schema.json +0 -39
  395. package/node_modules/ajv/lib/refs/json-schema-2020-12/index.ts +0 -30
  396. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/applicator.json +0 -48
  397. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/content.json +0 -17
  398. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/core.json +0 -51
  399. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/format-annotation.json +0 -14
  400. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/meta-data.json +0 -37
  401. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/unevaluated.json +0 -15
  402. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/validation.json +0 -90
  403. package/node_modules/ajv/lib/refs/json-schema-2020-12/schema.json +0 -55
  404. package/node_modules/ajv/lib/refs/json-schema-draft-06.json +0 -137
  405. package/node_modules/ajv/lib/refs/json-schema-draft-07.json +0 -151
  406. package/node_modules/ajv/lib/refs/json-schema-secure.json +0 -88
  407. package/node_modules/ajv/lib/refs/jtd-schema.ts +0 -130
  408. package/node_modules/ajv/lib/runtime/equal.ts +0 -7
  409. package/node_modules/ajv/lib/runtime/parseJson.ts +0 -177
  410. package/node_modules/ajv/lib/runtime/quote.ts +0 -31
  411. package/node_modules/ajv/lib/runtime/re2.ts +0 -6
  412. package/node_modules/ajv/lib/runtime/timestamp.ts +0 -46
  413. package/node_modules/ajv/lib/runtime/ucs2length.ts +0 -20
  414. package/node_modules/ajv/lib/runtime/uri.ts +0 -6
  415. package/node_modules/ajv/lib/runtime/validation_error.ts +0 -13
  416. package/node_modules/ajv/lib/standalone/index.ts +0 -100
  417. package/node_modules/ajv/lib/standalone/instance.ts +0 -36
  418. package/node_modules/ajv/lib/types/index.ts +0 -244
  419. package/node_modules/ajv/lib/types/json-schema.ts +0 -187
  420. package/node_modules/ajv/lib/types/jtd-schema.ts +0 -273
  421. package/node_modules/ajv/lib/vocabularies/applicator/additionalItems.ts +0 -56
  422. package/node_modules/ajv/lib/vocabularies/applicator/additionalProperties.ts +0 -118
  423. package/node_modules/ajv/lib/vocabularies/applicator/allOf.ts +0 -22
  424. package/node_modules/ajv/lib/vocabularies/applicator/anyOf.ts +0 -14
  425. package/node_modules/ajv/lib/vocabularies/applicator/contains.ts +0 -109
  426. package/node_modules/ajv/lib/vocabularies/applicator/dependencies.ts +0 -112
  427. package/node_modules/ajv/lib/vocabularies/applicator/dependentSchemas.ts +0 -11
  428. package/node_modules/ajv/lib/vocabularies/applicator/if.ts +0 -80
  429. package/node_modules/ajv/lib/vocabularies/applicator/index.ts +0 -53
  430. package/node_modules/ajv/lib/vocabularies/applicator/items.ts +0 -59
  431. package/node_modules/ajv/lib/vocabularies/applicator/items2020.ts +0 -36
  432. package/node_modules/ajv/lib/vocabularies/applicator/not.ts +0 -38
  433. package/node_modules/ajv/lib/vocabularies/applicator/oneOf.ts +0 -82
  434. package/node_modules/ajv/lib/vocabularies/applicator/patternProperties.ts +0 -91
  435. package/node_modules/ajv/lib/vocabularies/applicator/prefixItems.ts +0 -12
  436. package/node_modules/ajv/lib/vocabularies/applicator/properties.ts +0 -57
  437. package/node_modules/ajv/lib/vocabularies/applicator/propertyNames.ts +0 -50
  438. package/node_modules/ajv/lib/vocabularies/applicator/thenElse.ts +0 -13
  439. package/node_modules/ajv/lib/vocabularies/code.ts +0 -168
  440. package/node_modules/ajv/lib/vocabularies/core/id.ts +0 -10
  441. package/node_modules/ajv/lib/vocabularies/core/index.ts +0 -16
  442. package/node_modules/ajv/lib/vocabularies/core/ref.ts +0 -129
  443. package/node_modules/ajv/lib/vocabularies/discriminator/index.ts +0 -113
  444. package/node_modules/ajv/lib/vocabularies/discriminator/types.ts +0 -12
  445. package/node_modules/ajv/lib/vocabularies/draft2020.ts +0 -23
  446. package/node_modules/ajv/lib/vocabularies/draft7.ts +0 -17
  447. package/node_modules/ajv/lib/vocabularies/dynamic/dynamicAnchor.ts +0 -31
  448. package/node_modules/ajv/lib/vocabularies/dynamic/dynamicRef.ts +0 -51
  449. package/node_modules/ajv/lib/vocabularies/dynamic/index.ts +0 -9
  450. package/node_modules/ajv/lib/vocabularies/dynamic/recursiveAnchor.ts +0 -14
  451. package/node_modules/ajv/lib/vocabularies/dynamic/recursiveRef.ts +0 -10
  452. package/node_modules/ajv/lib/vocabularies/errors.ts +0 -18
  453. package/node_modules/ajv/lib/vocabularies/format/format.ts +0 -120
  454. package/node_modules/ajv/lib/vocabularies/format/index.ts +0 -6
  455. package/node_modules/ajv/lib/vocabularies/jtd/discriminator.ts +0 -89
  456. package/node_modules/ajv/lib/vocabularies/jtd/elements.ts +0 -32
  457. package/node_modules/ajv/lib/vocabularies/jtd/enum.ts +0 -45
  458. package/node_modules/ajv/lib/vocabularies/jtd/error.ts +0 -23
  459. package/node_modules/ajv/lib/vocabularies/jtd/index.ts +0 -37
  460. package/node_modules/ajv/lib/vocabularies/jtd/metadata.ts +0 -24
  461. package/node_modules/ajv/lib/vocabularies/jtd/nullable.ts +0 -21
  462. package/node_modules/ajv/lib/vocabularies/jtd/optionalProperties.ts +0 -15
  463. package/node_modules/ajv/lib/vocabularies/jtd/properties.ts +0 -184
  464. package/node_modules/ajv/lib/vocabularies/jtd/ref.ts +0 -76
  465. package/node_modules/ajv/lib/vocabularies/jtd/type.ts +0 -75
  466. package/node_modules/ajv/lib/vocabularies/jtd/union.ts +0 -12
  467. package/node_modules/ajv/lib/vocabularies/jtd/values.ts +0 -58
  468. package/node_modules/ajv/lib/vocabularies/metadata.ts +0 -17
  469. package/node_modules/ajv/lib/vocabularies/next.ts +0 -8
  470. package/node_modules/ajv/lib/vocabularies/unevaluated/index.ts +0 -7
  471. package/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedItems.ts +0 -47
  472. package/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedProperties.ts +0 -85
  473. package/node_modules/ajv/lib/vocabularies/validation/const.ts +0 -28
  474. package/node_modules/ajv/lib/vocabularies/validation/dependentRequired.ts +0 -23
  475. package/node_modules/ajv/lib/vocabularies/validation/enum.ts +0 -54
  476. package/node_modules/ajv/lib/vocabularies/validation/index.ts +0 -49
  477. package/node_modules/ajv/lib/vocabularies/validation/limitContains.ts +0 -16
  478. package/node_modules/ajv/lib/vocabularies/validation/limitItems.ts +0 -26
  479. package/node_modules/ajv/lib/vocabularies/validation/limitLength.ts +0 -30
  480. package/node_modules/ajv/lib/vocabularies/validation/limitNumber.ts +0 -42
  481. package/node_modules/ajv/lib/vocabularies/validation/limitProperties.ts +0 -26
  482. package/node_modules/ajv/lib/vocabularies/validation/multipleOf.ts +0 -34
  483. package/node_modules/ajv/lib/vocabularies/validation/pattern.ts +0 -39
  484. package/node_modules/ajv/lib/vocabularies/validation/required.ts +0 -98
  485. package/node_modules/ajv/lib/vocabularies/validation/uniqueItems.ts +0 -79
  486. package/node_modules/ajv/package.json +0 -126
  487. package/node_modules/fast-deep-equal/LICENSE +0 -21
  488. package/node_modules/fast-deep-equal/README.md +0 -96
  489. package/node_modules/fast-deep-equal/es6/index.d.ts +0 -2
  490. package/node_modules/fast-deep-equal/es6/index.js +0 -72
  491. package/node_modules/fast-deep-equal/es6/react.d.ts +0 -2
  492. package/node_modules/fast-deep-equal/es6/react.js +0 -79
  493. package/node_modules/fast-deep-equal/index.d.ts +0 -4
  494. package/node_modules/fast-deep-equal/index.js +0 -46
  495. package/node_modules/fast-deep-equal/package.json +0 -61
  496. package/node_modules/fast-deep-equal/react.d.ts +0 -2
  497. package/node_modules/fast-deep-equal/react.js +0 -53
  498. package/node_modules/fast-uri/.gitattributes +0 -2
  499. package/node_modules/fast-uri/.github/dependabot.yml +0 -13
  500. package/node_modules/fast-uri/.github/workflows/ci.yml +0 -106
  501. package/node_modules/fast-uri/.github/workflows/lock-threads.yml +0 -19
  502. package/node_modules/fast-uri/.github/workflows/package-manager-ci.yml +0 -24
  503. package/node_modules/fast-uri/LICENSE +0 -30
  504. package/node_modules/fast-uri/README.md +0 -152
  505. package/node_modules/fast-uri/benchmark/benchmark.mjs +0 -159
  506. package/node_modules/fast-uri/benchmark/equal.mjs +0 -51
  507. package/node_modules/fast-uri/benchmark/non-simple-domain.mjs +0 -22
  508. package/node_modules/fast-uri/benchmark/package.json +0 -17
  509. package/node_modules/fast-uri/benchmark/string-array-to-hex-stripped.mjs +0 -24
  510. package/node_modules/fast-uri/benchmark/ws-is-secure.mjs +0 -65
  511. package/node_modules/fast-uri/eslint.config.js +0 -6
  512. package/node_modules/fast-uri/index.js +0 -406
  513. package/node_modules/fast-uri/lib/schemes.js +0 -267
  514. package/node_modules/fast-uri/lib/utils.js +0 -443
  515. package/node_modules/fast-uri/package.json +0 -68
  516. package/node_modules/fast-uri/test/ajv.test.js +0 -43
  517. package/node_modules/fast-uri/test/equal.test.js +0 -117
  518. package/node_modules/fast-uri/test/fixtures/uri-js-parse.json +0 -501
  519. package/node_modules/fast-uri/test/fixtures/uri-js-serialize.json +0 -120
  520. package/node_modules/fast-uri/test/parse.test.js +0 -323
  521. package/node_modules/fast-uri/test/resolve.test.js +0 -87
  522. package/node_modules/fast-uri/test/rfc-3986.test.js +0 -90
  523. package/node_modules/fast-uri/test/security-normalization.test.js +0 -39
  524. package/node_modules/fast-uri/test/security.test.js +0 -133
  525. package/node_modules/fast-uri/test/serialize.test.js +0 -151
  526. package/node_modules/fast-uri/test/uri-js-compatibility.test.js +0 -33
  527. package/node_modules/fast-uri/test/uri-js.test.js +0 -912
  528. package/node_modules/fast-uri/test/util.test.js +0 -38
  529. package/node_modules/fast-uri/tsconfig.json +0 -9
  530. package/node_modules/fast-uri/types/index.d.ts +0 -60
  531. package/node_modules/fast-uri/types/index.test-d.ts +0 -17
  532. package/node_modules/json-schema-traverse/.eslintrc.yml +0 -27
  533. package/node_modules/json-schema-traverse/.github/FUNDING.yml +0 -2
  534. package/node_modules/json-schema-traverse/.github/workflows/build.yml +0 -28
  535. package/node_modules/json-schema-traverse/.github/workflows/publish.yml +0 -27
  536. package/node_modules/json-schema-traverse/LICENSE +0 -21
  537. package/node_modules/json-schema-traverse/README.md +0 -95
  538. package/node_modules/json-schema-traverse/index.d.ts +0 -40
  539. package/node_modules/json-schema-traverse/index.js +0 -93
  540. package/node_modules/json-schema-traverse/package.json +0 -43
  541. package/node_modules/json-schema-traverse/spec/.eslintrc.yml +0 -6
  542. package/node_modules/json-schema-traverse/spec/fixtures/schema.js +0 -125
  543. package/node_modules/json-schema-traverse/spec/index.spec.js +0 -171
  544. package/node_modules/require-from-string/index.js +0 -34
  545. package/node_modules/require-from-string/license +0 -21
  546. package/node_modules/require-from-string/package.json +0 -28
  547. 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
- }