@bluefly/openstandardagents 0.4.8 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (757) hide show
  1. package/.version.json +4 -4
  2. package/CHANGELOG.md +22 -8
  3. package/README.md +70 -45
  4. package/bin/postinstall +0 -0
  5. package/dist/.version.json +4 -4
  6. package/dist/adapters/a2a/__tests__/mcp-integration.spec.js +1 -1
  7. package/dist/adapters/a2a/a2a-protocol.d.ts +1 -1
  8. package/dist/adapters/a2a/a2a-tool.js +3 -3
  9. package/dist/adapters/a2a/delegation.js +1 -1
  10. package/dist/adapters/base/common-file-generator.d.ts +1 -1
  11. package/dist/adapters/base/common-file-generator.js +22 -0
  12. package/dist/adapters/claude-code/adapter.js +2 -2
  13. package/dist/adapters/docker/generators.js +19 -19
  14. package/dist/adapters/drupal/generator.js +76 -76
  15. package/dist/adapters/openai-agents/adapter.js +2 -2
  16. package/dist/cli/banner.js +1 -1
  17. package/dist/cli/commands/agents-sync.command.d.ts +19 -0
  18. package/dist/cli/commands/agents-sync.command.js +268 -0
  19. package/dist/cli/commands/discover.js +48 -52
  20. package/dist/cli/commands/export.command.js +41 -12
  21. package/dist/cli/commands/lifecycle.command.d.ts +29 -0
  22. package/dist/cli/commands/lifecycle.command.js +495 -0
  23. package/dist/cli/commands/policy.command.d.ts +11 -0
  24. package/dist/cli/commands/policy.command.js +85 -0
  25. package/dist/cli/commands/publish.command.js +29 -3
  26. package/dist/cli/commands/search.command.js +31 -2
  27. package/dist/cli/commands/serve-builder-routes.d.ts +17 -0
  28. package/dist/cli/commands/serve-builder-routes.js +390 -0
  29. package/dist/cli/commands/validate.command.js +48 -2
  30. package/dist/cli/commands/verify.js +61 -34
  31. package/dist/cli/commands/wizard-api-first.command.js +6 -0
  32. package/dist/cli/commands/wizard.command.js +6 -0
  33. package/dist/cli/commands/workspace.command.js +65 -65
  34. package/dist/cli/index.js +11 -3
  35. package/dist/cli/schema-driven/schema-loader.js +5 -5
  36. package/dist/cli/utils/standard-options.js +1 -1
  37. package/dist/confidence/index.d.ts +67 -0
  38. package/dist/confidence/index.js +130 -0
  39. package/dist/data/platform-matrix.js +29 -0
  40. package/dist/mcp-server/__tests__/mcp-server.spec.js +20 -11
  41. package/dist/mesh/discovery-providers.js +2 -2
  42. package/dist/mesh/discovery.js +1 -1
  43. package/dist/mesh/index.d.ts +2 -2
  44. package/dist/mesh/index.js +2 -2
  45. package/dist/mesh/types.d.ts +202 -1
  46. package/dist/package.json +27 -20
  47. package/dist/services/agent-card-generator.d.ts +2 -2
  48. package/dist/services/agent-card-generator.js +3 -1
  49. package/dist/services/agents-md/agents-md.service.d.ts +4 -0
  50. package/dist/services/agents-md/agents-md.service.js +18 -0
  51. package/dist/services/export/langchain/langchain-exporter.js +2 -2
  52. package/dist/services/export/langchain/memory-generator.js +2 -2
  53. package/dist/services/export/testing/test-generator.js +1 -1
  54. package/dist/services/governance/cedar-validator.service.d.ts +32 -0
  55. package/dist/services/governance/cedar-validator.service.js +88 -0
  56. package/dist/services/mcp/bridge.service.d.ts +1 -0
  57. package/dist/services/mcp/bridge.service.js +31 -0
  58. package/dist/services/skills-pipeline/skills-install.service.js +2 -2
  59. package/dist/services/skills-pipeline/skills-research.service.d.ts +5 -7
  60. package/dist/services/skills-pipeline/skills-research.service.js +13 -58
  61. package/dist/services/taxonomy-service.d.ts +3 -3
  62. package/dist/services/trust/trust.service.d.ts +9 -0
  63. package/dist/services/trust/trust.service.js +35 -0
  64. package/dist/services/validators/a2a.validator.js +2 -2
  65. package/dist/skills/test-skill/package.json +1 -1
  66. package/dist/spec/extensions/role-manifest.md +188 -0
  67. package/dist/spec/uadp/README.md +1 -1
  68. package/dist/spec/v0.4/agent-card.schema.json +2 -2
  69. package/dist/spec/v0.4/agent.schema.json +69 -0
  70. package/dist/spec/v0.4/extensions/a2a/a2a.schema.json +1 -1
  71. package/dist/spec/v0.4/extensions/mcp/README.md +1 -1
  72. package/dist/spec/v0.5/agent-card.schema.json +1 -1
  73. package/dist/spec/v0.5/agent.schema.json +139 -68
  74. package/dist/spec/v0.5/extensions/mcp/README.md +1 -1
  75. package/dist/spec/v0.5/role.schema.json +268 -0
  76. package/dist/types/index.d.ts +5 -1
  77. package/dist/types/index.js +2 -0
  78. package/dist/types/role.d.ts +126 -0
  79. package/dist/types/role.js +38 -0
  80. package/dist/validation/progressive-scorer.d.ts +1 -1
  81. package/dist/validation/progressive-scorer.js +19 -2
  82. package/dist/validation/validator.js +1 -1
  83. package/dist/version-management/api/server.d.ts +1 -1
  84. package/examples/agent-mesh/DISCOVERY.md +25 -25
  85. package/examples/agent-mesh/README.ts +6 -6
  86. package/examples/agent-mesh/basic-usage.ts +11 -11
  87. package/examples/agent-mesh/discovery-system.ts +37 -37
  88. package/examples/agents/01-customer-support-bot/agent.ossa.yaml +24 -31
  89. package/examples/agents/05-sales-assistant/agent.ossa.yaml +35 -23
  90. package/examples/agents/07-research-assistant/agent.ossa.yaml +27 -21
  91. package/examples/agents/10-meeting-assistant/agent.ossa.yaml +27 -35
  92. package/examples/agents/security-audit-agent.ossa.yaml +234 -0
  93. package/examples/agentscope/react-assistant/agent.ossa.yaml +36 -32
  94. package/examples/drupal/content-moderator.ossa.yaml +2 -2
  95. package/examples/drupal/drupal-contributor.ossa.yaml +247 -0
  96. package/examples/export/langchain/production-agent-with-memory/README.md +1 -1
  97. package/examples/export/langchain/production-agent-with-memory/agent.ossa.yaml +13 -23
  98. package/examples/export/langchain/production-agent-with-streaming/agent.ossa.yaml +1 -15
  99. package/examples/export/langchain/production-agent-with-tools/agent.ossa.yaml +28 -29
  100. package/examples/getting-started/01-minimal-agent.ossa.yaml +1 -1
  101. package/examples/getting-started/02-agent-with-tools.ossa.yaml +1 -1
  102. package/examples/getting-started/03-agent-with-safety.ossa.yaml +1 -1
  103. package/examples/getting-started/04-agent-with-messaging.ossa.yaml +1 -1
  104. package/examples/getting-started/05-workflow-composition.ossa.yaml +1 -1
  105. package/examples/getting-started/README.md +3 -3
  106. package/examples/getting-started/hello-world-complete.ossa.yaml +1 -1
  107. package/examples/gitlab-agents/gitlab-ci-agent.ossa.yaml +221 -0
  108. package/examples/hierarchical-agent.ossa.yaml +10 -53
  109. package/examples/kagent/ossa-kagent-anthropic.ossa.yaml +2 -25
  110. package/examples/kagent/ossa-kagent-mcp-tools.ossa.yaml +2 -30
  111. package/examples/kagent/ossa-kagent-multi-tool.ossa.yaml +2 -18
  112. package/examples/kagent/ossa-kagent-poc.ossa.yaml +2 -16
  113. package/examples/pipeline-agent.ossa.yaml +3 -3
  114. package/examples/platform-specific/claude-code-subagent.yaml +1 -1
  115. package/examples/platform-specific/cursor-coding-agent.yaml +1 -1
  116. package/examples/platform-specific/warp-terminal-agent.yaml +1 -1
  117. package/examples/production-ready/01-customer-support-bot/agent.ossa.yaml +24 -31
  118. package/examples/production-ready/05-sales-assistant/agent.ossa.yaml +35 -23
  119. package/examples/production-ready/07-research-assistant/agent.ossa.yaml +27 -19
  120. package/examples/production-ready/10-meeting-assistant/agent.ossa.yaml +27 -35
  121. package/examples/reference-implementations/python-client/examples/basic_usage.py +0 -0
  122. package/examples/reference-implementations/python-client/examples/publish_agent.py +0 -0
  123. package/examples/roles/drupal-developer.role.yaml +37 -0
  124. package/examples/roles/platform-operator.role.yaml +28 -0
  125. package/examples/roles/security-auditor.role.yaml +27 -0
  126. package/examples/swarm-agent.ossa.yaml +13 -51
  127. package/examples/team-agent.ossa.yaml +12 -61
  128. package/examples/team-lead-teammate.ossa.yaml +12 -17
  129. package/openapi/agent-communication.yaml +268 -220
  130. package/openapi/agent-crud.yaml +217 -187
  131. package/openapi/agent-discovery.yaml +119 -81
  132. package/openapi/agent-identity.yaml +219 -187
  133. package/openapi/agent-taxonomy.yaml +95 -38
  134. package/openapi/agents-md-service.yaml +103 -30
  135. package/openapi/cli/openapi.yaml +147 -40
  136. package/openapi/core/ossa-core-api.openapi.yaml +327 -271
  137. package/openapi/core/ossa-registry-api.openapi.yaml +298 -235
  138. package/openapi/core/ossa-registry.openapi.yaml +299 -159
  139. package/openapi/core/unified-agent-gateway.openapi.yaml +234 -170
  140. package/openapi/daemon-api.openapi.yaml +323 -181
  141. package/openapi/dev-cli/openapi.yaml +137 -113
  142. package/openapi/github-sync.yaml +62 -19
  143. package/openapi/marketplace-plugin.openapi.yaml +539 -466
  144. package/openapi/ossa-api.openapi.yaml +354 -213
  145. package/openapi/ossa-cli-enhancements.openapi.yaml +108 -89
  146. package/openapi/ossa-cli.yaml +260 -184
  147. package/openapi/protocols/sse-streams.yaml +69 -77
  148. package/openapi/protocols/websocket-events.yaml +64 -57
  149. package/openapi/reference-implementations/aiflow-bridge-api.openapi.yaml +37 -20
  150. package/openapi/reference-implementations/compliance-agent-api.openapi.yaml +35 -23
  151. package/openapi/reference-implementations/crewai-agent-api.openapi.yaml +29 -18
  152. package/openapi/reference-implementations/critic-agent-api.openapi.yaml +45 -19
  153. package/openapi/reference-implementations/document-analyzer-api.openapi.yaml +30 -24
  154. package/openapi/reference-implementations/drupal-agent-api.openapi.yaml +101 -50
  155. package/openapi/reference-implementations/getting-started-hello-world-api.openapi.yaml +33 -22
  156. package/openapi/reference-implementations/gitlab-ml-recommender-api.openapi.yaml +20 -16
  157. package/openapi/reference-implementations/governor-agent-api.openapi.yaml +41 -23
  158. package/openapi/reference-implementations/helm-generator.openapi.yaml +88 -46
  159. package/openapi/reference-implementations/integrator-agent-api.openapi.yaml +30 -20
  160. package/openapi/reference-implementations/judge-agent-api.openapi.yaml +22 -16
  161. package/openapi/reference-implementations/k8s-troubleshooter-api.openapi.yaml +32 -18
  162. package/openapi/reference-implementations/langchain-agent-api.openapi.yaml +32 -21
  163. package/openapi/reference-implementations/monitor-agent-api.openapi.yaml +34 -21
  164. package/openapi/reference-implementations/orchestrator-agent-api.openapi.yaml +49 -27
  165. package/openapi/reference-implementations/quickstart-support-agent-api.openapi.yaml +27 -19
  166. package/openapi/reference-implementations/self-evolving-ecosystem.openapi.yaml +427 -293
  167. package/openapi/reference-implementations/worker-agent-api.openapi.yaml +34 -23
  168. package/openapi/reference-implementations/workflow-orchestrator-api.openapi.yaml +35 -21
  169. package/openapi/release-automation.openapi.yaml +47 -13
  170. package/openapi/schemas/common/agent.yaml +30 -29
  171. package/openapi/schemas/common/errors.yaml +13 -3
  172. package/openapi/schemas/common/metadata.yaml +22 -7
  173. package/openapi/schemas/common/pagination.yaml +18 -6
  174. package/openapi/schemas/common/security.yaml +13 -5
  175. package/openapi/schemas/index.yaml +49 -42
  176. package/openapi/uadp-asyncapi.yaml +5 -3
  177. package/openapi/uadp-openapi.yaml +325 -153
  178. package/openapi/version-management.openapi.yaml +142 -135
  179. package/package.json +115 -110
  180. package/spec/extensions/role-manifest.md +188 -0
  181. package/spec/uadp/README.md +393 -0
  182. package/spec/uadp/openapi.yaml +387 -0
  183. package/spec/uadp/schemas/uadp-agents-response.schema.json +68 -0
  184. package/spec/uadp/schemas/uadp-federation-response.schema.json +46 -0
  185. package/spec/uadp/schemas/uadp-manifest.schema.json +82 -0
  186. package/spec/uadp/schemas/uadp-skills-response.schema.json +72 -0
  187. package/spec/v0.4/agent-card.schema.json +2 -2
  188. package/spec/v0.4/extensions/a2a/a2a.schema.json +1 -1
  189. package/spec/v0.4/extensions/mcp/README.md +1 -1
  190. package/spec/v0.5/agent-card.schema.json +477 -0
  191. package/spec/v0.5/agent.schema.json +1627 -0
  192. package/spec/v0.5/conformance/profiles/baseline.json +19 -0
  193. package/spec/v0.5/conformance/profiles/enterprise.json +20 -0
  194. package/spec/v0.5/extensions/a2a/README.md +193 -0
  195. package/spec/v0.5/extensions/a2a/a2a.schema.json +77 -0
  196. package/spec/v0.5/extensions/ag2/ag2.schema.json +277 -0
  197. package/spec/v0.5/extensions/cognition/cognition.schema.json +94 -0
  198. package/spec/v0.5/extensions/cognition/thought-node.schema.json +80 -0
  199. package/spec/v0.5/extensions/crewai/crewai.schema.json +256 -0
  200. package/spec/v0.5/extensions/drupal/drupal.schema.json +318 -0
  201. package/spec/v0.5/extensions/evals/evals.schema.json +597 -0
  202. package/spec/v0.5/extensions/governance/governance-extension.yaml +161 -0
  203. package/spec/v0.5/extensions/identity/identity.schema.json +302 -0
  204. package/spec/v0.5/extensions/kagent/README.md +315 -0
  205. package/spec/v0.5/extensions/kagent/kagent.schema.json +624 -0
  206. package/spec/v0.5/extensions/langchain/langchain.schema.json +243 -0
  207. package/spec/v0.5/extensions/langgraph/langgraph.schema.json +211 -0
  208. package/spec/v0.5/extensions/mcp/README.md +276 -0
  209. package/spec/v0.5/extensions/mcp/mcp.schema.json +84 -0
  210. package/spec/v0.5/extensions/memory/memory.schema.json +7 -0
  211. package/spec/v0.5/extensions/team/team.schema.json +304 -0
  212. package/spec/v0.5/extensions/token-efficiency/token-efficiency.schema.json +47 -0
  213. package/spec/v0.5/mcp.schema.json +1 -0
  214. package/spec/v0.5/role.schema.json +268 -0
  215. package/spec/v0.5/skill.schema.json +1 -0
  216. package/spec/v0.5/validator.schema.json +282 -0
  217. package/node_modules/ajv/.runkit_example.js +0 -23
  218. package/node_modules/ajv/LICENSE +0 -22
  219. package/node_modules/ajv/README.md +0 -207
  220. package/node_modules/ajv/dist/2019.d.ts +0 -19
  221. package/node_modules/ajv/dist/2019.js +0 -61
  222. package/node_modules/ajv/dist/2019.js.map +0 -1
  223. package/node_modules/ajv/dist/2020.d.ts +0 -19
  224. package/node_modules/ajv/dist/2020.js +0 -55
  225. package/node_modules/ajv/dist/2020.js.map +0 -1
  226. package/node_modules/ajv/dist/ajv.d.ts +0 -18
  227. package/node_modules/ajv/dist/ajv.js +0 -50
  228. package/node_modules/ajv/dist/ajv.js.map +0 -1
  229. package/node_modules/ajv/dist/compile/codegen/code.d.ts +0 -40
  230. package/node_modules/ajv/dist/compile/codegen/code.js +0 -156
  231. package/node_modules/ajv/dist/compile/codegen/code.js.map +0 -1
  232. package/node_modules/ajv/dist/compile/codegen/index.d.ts +0 -79
  233. package/node_modules/ajv/dist/compile/codegen/index.js +0 -697
  234. package/node_modules/ajv/dist/compile/codegen/index.js.map +0 -1
  235. package/node_modules/ajv/dist/compile/codegen/scope.d.ts +0 -79
  236. package/node_modules/ajv/dist/compile/codegen/scope.js +0 -143
  237. package/node_modules/ajv/dist/compile/codegen/scope.js.map +0 -1
  238. package/node_modules/ajv/dist/compile/errors.d.ts +0 -13
  239. package/node_modules/ajv/dist/compile/errors.js +0 -123
  240. package/node_modules/ajv/dist/compile/errors.js.map +0 -1
  241. package/node_modules/ajv/dist/compile/index.d.ts +0 -80
  242. package/node_modules/ajv/dist/compile/index.js +0 -242
  243. package/node_modules/ajv/dist/compile/index.js.map +0 -1
  244. package/node_modules/ajv/dist/compile/jtd/parse.d.ts +0 -4
  245. package/node_modules/ajv/dist/compile/jtd/parse.js +0 -350
  246. package/node_modules/ajv/dist/compile/jtd/parse.js.map +0 -1
  247. package/node_modules/ajv/dist/compile/jtd/serialize.d.ts +0 -4
  248. package/node_modules/ajv/dist/compile/jtd/serialize.js +0 -236
  249. package/node_modules/ajv/dist/compile/jtd/serialize.js.map +0 -1
  250. package/node_modules/ajv/dist/compile/jtd/types.d.ts +0 -6
  251. package/node_modules/ajv/dist/compile/jtd/types.js +0 -14
  252. package/node_modules/ajv/dist/compile/jtd/types.js.map +0 -1
  253. package/node_modules/ajv/dist/compile/names.d.ts +0 -20
  254. package/node_modules/ajv/dist/compile/names.js +0 -28
  255. package/node_modules/ajv/dist/compile/names.js.map +0 -1
  256. package/node_modules/ajv/dist/compile/ref_error.d.ts +0 -6
  257. package/node_modules/ajv/dist/compile/ref_error.js +0 -12
  258. package/node_modules/ajv/dist/compile/ref_error.js.map +0 -1
  259. package/node_modules/ajv/dist/compile/resolve.d.ts +0 -12
  260. package/node_modules/ajv/dist/compile/resolve.js +0 -155
  261. package/node_modules/ajv/dist/compile/resolve.js.map +0 -1
  262. package/node_modules/ajv/dist/compile/rules.d.ts +0 -28
  263. package/node_modules/ajv/dist/compile/rules.js +0 -26
  264. package/node_modules/ajv/dist/compile/rules.js.map +0 -1
  265. package/node_modules/ajv/dist/compile/util.d.ts +0 -40
  266. package/node_modules/ajv/dist/compile/util.js +0 -178
  267. package/node_modules/ajv/dist/compile/util.js.map +0 -1
  268. package/node_modules/ajv/dist/compile/validate/applicability.d.ts +0 -6
  269. package/node_modules/ajv/dist/compile/validate/applicability.js +0 -19
  270. package/node_modules/ajv/dist/compile/validate/applicability.js.map +0 -1
  271. package/node_modules/ajv/dist/compile/validate/boolSchema.d.ts +0 -4
  272. package/node_modules/ajv/dist/compile/validate/boolSchema.js +0 -50
  273. package/node_modules/ajv/dist/compile/validate/boolSchema.js.map +0 -1
  274. package/node_modules/ajv/dist/compile/validate/dataType.d.ts +0 -17
  275. package/node_modules/ajv/dist/compile/validate/dataType.js +0 -203
  276. package/node_modules/ajv/dist/compile/validate/dataType.js.map +0 -1
  277. package/node_modules/ajv/dist/compile/validate/defaults.d.ts +0 -2
  278. package/node_modules/ajv/dist/compile/validate/defaults.js +0 -35
  279. package/node_modules/ajv/dist/compile/validate/defaults.js.map +0 -1
  280. package/node_modules/ajv/dist/compile/validate/index.d.ts +0 -42
  281. package/node_modules/ajv/dist/compile/validate/index.js +0 -520
  282. package/node_modules/ajv/dist/compile/validate/index.js.map +0 -1
  283. package/node_modules/ajv/dist/compile/validate/keyword.d.ts +0 -8
  284. package/node_modules/ajv/dist/compile/validate/keyword.js +0 -124
  285. package/node_modules/ajv/dist/compile/validate/keyword.js.map +0 -1
  286. package/node_modules/ajv/dist/compile/validate/subschema.d.ts +0 -47
  287. package/node_modules/ajv/dist/compile/validate/subschema.js +0 -81
  288. package/node_modules/ajv/dist/compile/validate/subschema.js.map +0 -1
  289. package/node_modules/ajv/dist/core.d.ts +0 -174
  290. package/node_modules/ajv/dist/core.js +0 -618
  291. package/node_modules/ajv/dist/core.js.map +0 -1
  292. package/node_modules/ajv/dist/jtd.d.ts +0 -47
  293. package/node_modules/ajv/dist/jtd.js +0 -72
  294. package/node_modules/ajv/dist/jtd.js.map +0 -1
  295. package/node_modules/ajv/dist/refs/data.json +0 -13
  296. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.d.ts +0 -2
  297. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.js +0 -28
  298. package/node_modules/ajv/dist/refs/json-schema-2019-09/index.js.map +0 -1
  299. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/applicator.json +0 -53
  300. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/content.json +0 -17
  301. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/core.json +0 -57
  302. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/format.json +0 -14
  303. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/meta-data.json +0 -37
  304. package/node_modules/ajv/dist/refs/json-schema-2019-09/meta/validation.json +0 -90
  305. package/node_modules/ajv/dist/refs/json-schema-2019-09/schema.json +0 -39
  306. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.d.ts +0 -2
  307. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.js +0 -30
  308. package/node_modules/ajv/dist/refs/json-schema-2020-12/index.js.map +0 -1
  309. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/applicator.json +0 -48
  310. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/content.json +0 -17
  311. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/core.json +0 -51
  312. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/format-annotation.json +0 -14
  313. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/meta-data.json +0 -37
  314. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/unevaluated.json +0 -15
  315. package/node_modules/ajv/dist/refs/json-schema-2020-12/meta/validation.json +0 -90
  316. package/node_modules/ajv/dist/refs/json-schema-2020-12/schema.json +0 -55
  317. package/node_modules/ajv/dist/refs/json-schema-draft-06.json +0 -137
  318. package/node_modules/ajv/dist/refs/json-schema-draft-07.json +0 -151
  319. package/node_modules/ajv/dist/refs/json-schema-secure.json +0 -88
  320. package/node_modules/ajv/dist/refs/jtd-schema.d.ts +0 -3
  321. package/node_modules/ajv/dist/refs/jtd-schema.js +0 -118
  322. package/node_modules/ajv/dist/refs/jtd-schema.js.map +0 -1
  323. package/node_modules/ajv/dist/runtime/equal.d.ts +0 -6
  324. package/node_modules/ajv/dist/runtime/equal.js +0 -7
  325. package/node_modules/ajv/dist/runtime/equal.js.map +0 -1
  326. package/node_modules/ajv/dist/runtime/parseJson.d.ts +0 -18
  327. package/node_modules/ajv/dist/runtime/parseJson.js +0 -185
  328. package/node_modules/ajv/dist/runtime/parseJson.js.map +0 -1
  329. package/node_modules/ajv/dist/runtime/quote.d.ts +0 -5
  330. package/node_modules/ajv/dist/runtime/quote.js +0 -30
  331. package/node_modules/ajv/dist/runtime/quote.js.map +0 -1
  332. package/node_modules/ajv/dist/runtime/re2.d.ts +0 -6
  333. package/node_modules/ajv/dist/runtime/re2.js +0 -6
  334. package/node_modules/ajv/dist/runtime/re2.js.map +0 -1
  335. package/node_modules/ajv/dist/runtime/timestamp.d.ts +0 -5
  336. package/node_modules/ajv/dist/runtime/timestamp.js +0 -42
  337. package/node_modules/ajv/dist/runtime/timestamp.js.map +0 -1
  338. package/node_modules/ajv/dist/runtime/ucs2length.d.ts +0 -5
  339. package/node_modules/ajv/dist/runtime/ucs2length.js +0 -24
  340. package/node_modules/ajv/dist/runtime/ucs2length.js.map +0 -1
  341. package/node_modules/ajv/dist/runtime/uri.d.ts +0 -6
  342. package/node_modules/ajv/dist/runtime/uri.js +0 -6
  343. package/node_modules/ajv/dist/runtime/uri.js.map +0 -1
  344. package/node_modules/ajv/dist/runtime/validation_error.d.ts +0 -7
  345. package/node_modules/ajv/dist/runtime/validation_error.js +0 -11
  346. package/node_modules/ajv/dist/runtime/validation_error.js.map +0 -1
  347. package/node_modules/ajv/dist/standalone/index.d.ts +0 -6
  348. package/node_modules/ajv/dist/standalone/index.js +0 -90
  349. package/node_modules/ajv/dist/standalone/index.js.map +0 -1
  350. package/node_modules/ajv/dist/standalone/instance.d.ts +0 -12
  351. package/node_modules/ajv/dist/standalone/instance.js +0 -35
  352. package/node_modules/ajv/dist/standalone/instance.js.map +0 -1
  353. package/node_modules/ajv/dist/types/index.d.ts +0 -183
  354. package/node_modules/ajv/dist/types/index.js +0 -3
  355. package/node_modules/ajv/dist/types/index.js.map +0 -1
  356. package/node_modules/ajv/dist/types/json-schema.d.ts +0 -125
  357. package/node_modules/ajv/dist/types/json-schema.js +0 -3
  358. package/node_modules/ajv/dist/types/json-schema.js.map +0 -1
  359. package/node_modules/ajv/dist/types/jtd-schema.d.ts +0 -174
  360. package/node_modules/ajv/dist/types/jtd-schema.js +0 -3
  361. package/node_modules/ajv/dist/types/jtd-schema.js.map +0 -1
  362. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.d.ts +0 -8
  363. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +0 -49
  364. package/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js.map +0 -1
  365. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.d.ts +0 -6
  366. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +0 -106
  367. package/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js.map +0 -1
  368. package/node_modules/ajv/dist/vocabularies/applicator/allOf.d.ts +0 -3
  369. package/node_modules/ajv/dist/vocabularies/applicator/allOf.js +0 -23
  370. package/node_modules/ajv/dist/vocabularies/applicator/allOf.js.map +0 -1
  371. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.d.ts +0 -4
  372. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +0 -12
  373. package/node_modules/ajv/dist/vocabularies/applicator/anyOf.js.map +0 -1
  374. package/node_modules/ajv/dist/vocabularies/applicator/contains.d.ts +0 -7
  375. package/node_modules/ajv/dist/vocabularies/applicator/contains.js +0 -95
  376. package/node_modules/ajv/dist/vocabularies/applicator/contains.js.map +0 -1
  377. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.d.ts +0 -21
  378. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +0 -85
  379. package/node_modules/ajv/dist/vocabularies/applicator/dependencies.js.map +0 -1
  380. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.d.ts +0 -3
  381. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js +0 -11
  382. package/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js.map +0 -1
  383. package/node_modules/ajv/dist/vocabularies/applicator/if.d.ts +0 -6
  384. package/node_modules/ajv/dist/vocabularies/applicator/if.js +0 -66
  385. package/node_modules/ajv/dist/vocabularies/applicator/if.js.map +0 -1
  386. package/node_modules/ajv/dist/vocabularies/applicator/index.d.ts +0 -13
  387. package/node_modules/ajv/dist/vocabularies/applicator/index.js +0 -44
  388. package/node_modules/ajv/dist/vocabularies/applicator/index.js.map +0 -1
  389. package/node_modules/ajv/dist/vocabularies/applicator/items.d.ts +0 -5
  390. package/node_modules/ajv/dist/vocabularies/applicator/items.js +0 -52
  391. package/node_modules/ajv/dist/vocabularies/applicator/items.js.map +0 -1
  392. package/node_modules/ajv/dist/vocabularies/applicator/items2020.d.ts +0 -6
  393. package/node_modules/ajv/dist/vocabularies/applicator/items2020.js +0 -30
  394. package/node_modules/ajv/dist/vocabularies/applicator/items2020.js.map +0 -1
  395. package/node_modules/ajv/dist/vocabularies/applicator/not.d.ts +0 -4
  396. package/node_modules/ajv/dist/vocabularies/applicator/not.js +0 -26
  397. package/node_modules/ajv/dist/vocabularies/applicator/not.js.map +0 -1
  398. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.d.ts +0 -6
  399. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +0 -60
  400. package/node_modules/ajv/dist/vocabularies/applicator/oneOf.js.map +0 -1
  401. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.d.ts +0 -3
  402. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +0 -75
  403. package/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js.map +0 -1
  404. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.d.ts +0 -3
  405. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +0 -12
  406. package/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js.map +0 -1
  407. package/node_modules/ajv/dist/vocabularies/applicator/properties.d.ts +0 -3
  408. package/node_modules/ajv/dist/vocabularies/applicator/properties.js +0 -54
  409. package/node_modules/ajv/dist/vocabularies/applicator/properties.js.map +0 -1
  410. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.d.ts +0 -6
  411. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +0 -38
  412. package/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js.map +0 -1
  413. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.d.ts +0 -3
  414. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +0 -13
  415. package/node_modules/ajv/dist/vocabularies/applicator/thenElse.js.map +0 -1
  416. package/node_modules/ajv/dist/vocabularies/code.d.ts +0 -17
  417. package/node_modules/ajv/dist/vocabularies/code.js +0 -131
  418. package/node_modules/ajv/dist/vocabularies/code.js.map +0 -1
  419. package/node_modules/ajv/dist/vocabularies/core/id.d.ts +0 -3
  420. package/node_modules/ajv/dist/vocabularies/core/id.js +0 -10
  421. package/node_modules/ajv/dist/vocabularies/core/id.js.map +0 -1
  422. package/node_modules/ajv/dist/vocabularies/core/index.d.ts +0 -3
  423. package/node_modules/ajv/dist/vocabularies/core/index.js +0 -16
  424. package/node_modules/ajv/dist/vocabularies/core/index.js.map +0 -1
  425. package/node_modules/ajv/dist/vocabularies/core/ref.d.ts +0 -8
  426. package/node_modules/ajv/dist/vocabularies/core/ref.js +0 -122
  427. package/node_modules/ajv/dist/vocabularies/core/ref.js.map +0 -1
  428. package/node_modules/ajv/dist/vocabularies/discriminator/index.d.ts +0 -5
  429. package/node_modules/ajv/dist/vocabularies/discriminator/index.js +0 -104
  430. package/node_modules/ajv/dist/vocabularies/discriminator/index.js.map +0 -1
  431. package/node_modules/ajv/dist/vocabularies/discriminator/types.d.ts +0 -10
  432. package/node_modules/ajv/dist/vocabularies/discriminator/types.js +0 -9
  433. package/node_modules/ajv/dist/vocabularies/discriminator/types.js.map +0 -1
  434. package/node_modules/ajv/dist/vocabularies/draft2020.d.ts +0 -3
  435. package/node_modules/ajv/dist/vocabularies/draft2020.js +0 -23
  436. package/node_modules/ajv/dist/vocabularies/draft2020.js.map +0 -1
  437. package/node_modules/ajv/dist/vocabularies/draft7.d.ts +0 -3
  438. package/node_modules/ajv/dist/vocabularies/draft7.js +0 -17
  439. package/node_modules/ajv/dist/vocabularies/draft7.js.map +0 -1
  440. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.d.ts +0 -5
  441. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js +0 -30
  442. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js.map +0 -1
  443. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.d.ts +0 -5
  444. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js +0 -51
  445. package/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js.map +0 -1
  446. package/node_modules/ajv/dist/vocabularies/dynamic/index.d.ts +0 -3
  447. package/node_modules/ajv/dist/vocabularies/dynamic/index.js +0 -9
  448. package/node_modules/ajv/dist/vocabularies/dynamic/index.js.map +0 -1
  449. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.d.ts +0 -3
  450. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js +0 -16
  451. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js.map +0 -1
  452. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.d.ts +0 -3
  453. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js +0 -10
  454. package/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js.map +0 -1
  455. package/node_modules/ajv/dist/vocabularies/errors.d.ts +0 -9
  456. package/node_modules/ajv/dist/vocabularies/errors.js +0 -3
  457. package/node_modules/ajv/dist/vocabularies/errors.js.map +0 -1
  458. package/node_modules/ajv/dist/vocabularies/format/format.d.ts +0 -8
  459. package/node_modules/ajv/dist/vocabularies/format/format.js +0 -92
  460. package/node_modules/ajv/dist/vocabularies/format/format.js.map +0 -1
  461. package/node_modules/ajv/dist/vocabularies/format/index.d.ts +0 -3
  462. package/node_modules/ajv/dist/vocabularies/format/index.js +0 -6
  463. package/node_modules/ajv/dist/vocabularies/format/index.js.map +0 -1
  464. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.d.ts +0 -6
  465. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.js +0 -71
  466. package/node_modules/ajv/dist/vocabularies/jtd/discriminator.js.map +0 -1
  467. package/node_modules/ajv/dist/vocabularies/jtd/elements.d.ts +0 -5
  468. package/node_modules/ajv/dist/vocabularies/jtd/elements.js +0 -24
  469. package/node_modules/ajv/dist/vocabularies/jtd/elements.js.map +0 -1
  470. package/node_modules/ajv/dist/vocabularies/jtd/enum.d.ts +0 -6
  471. package/node_modules/ajv/dist/vocabularies/jtd/enum.js +0 -43
  472. package/node_modules/ajv/dist/vocabularies/jtd/enum.js.map +0 -1
  473. package/node_modules/ajv/dist/vocabularies/jtd/error.d.ts +0 -9
  474. package/node_modules/ajv/dist/vocabularies/jtd/error.js +0 -20
  475. package/node_modules/ajv/dist/vocabularies/jtd/error.js.map +0 -1
  476. package/node_modules/ajv/dist/vocabularies/jtd/index.d.ts +0 -10
  477. package/node_modules/ajv/dist/vocabularies/jtd/index.js +0 -29
  478. package/node_modules/ajv/dist/vocabularies/jtd/index.js.map +0 -1
  479. package/node_modules/ajv/dist/vocabularies/jtd/metadata.d.ts +0 -5
  480. package/node_modules/ajv/dist/vocabularies/jtd/metadata.js +0 -25
  481. package/node_modules/ajv/dist/vocabularies/jtd/metadata.js.map +0 -1
  482. package/node_modules/ajv/dist/vocabularies/jtd/nullable.d.ts +0 -4
  483. package/node_modules/ajv/dist/vocabularies/jtd/nullable.js +0 -22
  484. package/node_modules/ajv/dist/vocabularies/jtd/nullable.js.map +0 -1
  485. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.d.ts +0 -3
  486. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js +0 -15
  487. package/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js.map +0 -1
  488. package/node_modules/ajv/dist/vocabularies/jtd/properties.d.ts +0 -22
  489. package/node_modules/ajv/dist/vocabularies/jtd/properties.js +0 -149
  490. package/node_modules/ajv/dist/vocabularies/jtd/properties.js.map +0 -1
  491. package/node_modules/ajv/dist/vocabularies/jtd/ref.d.ts +0 -4
  492. package/node_modules/ajv/dist/vocabularies/jtd/ref.js +0 -67
  493. package/node_modules/ajv/dist/vocabularies/jtd/ref.js.map +0 -1
  494. package/node_modules/ajv/dist/vocabularies/jtd/type.d.ts +0 -10
  495. package/node_modules/ajv/dist/vocabularies/jtd/type.js +0 -69
  496. package/node_modules/ajv/dist/vocabularies/jtd/type.js.map +0 -1
  497. package/node_modules/ajv/dist/vocabularies/jtd/union.d.ts +0 -3
  498. package/node_modules/ajv/dist/vocabularies/jtd/union.js +0 -12
  499. package/node_modules/ajv/dist/vocabularies/jtd/union.js.map +0 -1
  500. package/node_modules/ajv/dist/vocabularies/jtd/values.d.ts +0 -5
  501. package/node_modules/ajv/dist/vocabularies/jtd/values.js +0 -51
  502. package/node_modules/ajv/dist/vocabularies/jtd/values.js.map +0 -1
  503. package/node_modules/ajv/dist/vocabularies/metadata.d.ts +0 -3
  504. package/node_modules/ajv/dist/vocabularies/metadata.js +0 -18
  505. package/node_modules/ajv/dist/vocabularies/metadata.js.map +0 -1
  506. package/node_modules/ajv/dist/vocabularies/next.d.ts +0 -3
  507. package/node_modules/ajv/dist/vocabularies/next.js +0 -8
  508. package/node_modules/ajv/dist/vocabularies/next.js.map +0 -1
  509. package/node_modules/ajv/dist/vocabularies/unevaluated/index.d.ts +0 -3
  510. package/node_modules/ajv/dist/vocabularies/unevaluated/index.js +0 -7
  511. package/node_modules/ajv/dist/vocabularies/unevaluated/index.js.map +0 -1
  512. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.d.ts +0 -6
  513. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js +0 -40
  514. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js.map +0 -1
  515. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.d.ts +0 -6
  516. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js +0 -65
  517. package/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js.map +0 -1
  518. package/node_modules/ajv/dist/vocabularies/validation/const.d.ts +0 -6
  519. package/node_modules/ajv/dist/vocabularies/validation/const.js +0 -25
  520. package/node_modules/ajv/dist/vocabularies/validation/const.js.map +0 -1
  521. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.d.ts +0 -5
  522. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js +0 -12
  523. package/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js.map +0 -1
  524. package/node_modules/ajv/dist/vocabularies/validation/enum.d.ts +0 -8
  525. package/node_modules/ajv/dist/vocabularies/validation/enum.js +0 -48
  526. package/node_modules/ajv/dist/vocabularies/validation/enum.js.map +0 -1
  527. package/node_modules/ajv/dist/vocabularies/validation/index.d.ts +0 -16
  528. package/node_modules/ajv/dist/vocabularies/validation/index.js +0 -33
  529. package/node_modules/ajv/dist/vocabularies/validation/index.js.map +0 -1
  530. package/node_modules/ajv/dist/vocabularies/validation/limitContains.d.ts +0 -3
  531. package/node_modules/ajv/dist/vocabularies/validation/limitContains.js +0 -15
  532. package/node_modules/ajv/dist/vocabularies/validation/limitContains.js.map +0 -1
  533. package/node_modules/ajv/dist/vocabularies/validation/limitItems.d.ts +0 -3
  534. package/node_modules/ajv/dist/vocabularies/validation/limitItems.js +0 -24
  535. package/node_modules/ajv/dist/vocabularies/validation/limitItems.js.map +0 -1
  536. package/node_modules/ajv/dist/vocabularies/validation/limitLength.d.ts +0 -3
  537. package/node_modules/ajv/dist/vocabularies/validation/limitLength.js +0 -27
  538. package/node_modules/ajv/dist/vocabularies/validation/limitLength.js.map +0 -1
  539. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.d.ts +0 -11
  540. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +0 -27
  541. package/node_modules/ajv/dist/vocabularies/validation/limitNumber.js.map +0 -1
  542. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.d.ts +0 -3
  543. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +0 -24
  544. package/node_modules/ajv/dist/vocabularies/validation/limitProperties.js.map +0 -1
  545. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.d.ts +0 -8
  546. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +0 -26
  547. package/node_modules/ajv/dist/vocabularies/validation/multipleOf.js.map +0 -1
  548. package/node_modules/ajv/dist/vocabularies/validation/pattern.d.ts +0 -8
  549. package/node_modules/ajv/dist/vocabularies/validation/pattern.js +0 -33
  550. package/node_modules/ajv/dist/vocabularies/validation/pattern.js.map +0 -1
  551. package/node_modules/ajv/dist/vocabularies/validation/required.d.ts +0 -8
  552. package/node_modules/ajv/dist/vocabularies/validation/required.js +0 -79
  553. package/node_modules/ajv/dist/vocabularies/validation/required.js.map +0 -1
  554. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.d.ts +0 -9
  555. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +0 -64
  556. package/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js.map +0 -1
  557. package/node_modules/ajv/lib/2019.ts +0 -81
  558. package/node_modules/ajv/lib/2020.ts +0 -75
  559. package/node_modules/ajv/lib/ajv.ts +0 -70
  560. package/node_modules/ajv/lib/compile/codegen/code.ts +0 -169
  561. package/node_modules/ajv/lib/compile/codegen/index.ts +0 -852
  562. package/node_modules/ajv/lib/compile/codegen/scope.ts +0 -215
  563. package/node_modules/ajv/lib/compile/errors.ts +0 -184
  564. package/node_modules/ajv/lib/compile/index.ts +0 -324
  565. package/node_modules/ajv/lib/compile/jtd/parse.ts +0 -411
  566. package/node_modules/ajv/lib/compile/jtd/serialize.ts +0 -277
  567. package/node_modules/ajv/lib/compile/jtd/types.ts +0 -16
  568. package/node_modules/ajv/lib/compile/names.ts +0 -27
  569. package/node_modules/ajv/lib/compile/ref_error.ts +0 -13
  570. package/node_modules/ajv/lib/compile/resolve.ts +0 -149
  571. package/node_modules/ajv/lib/compile/rules.ts +0 -50
  572. package/node_modules/ajv/lib/compile/util.ts +0 -213
  573. package/node_modules/ajv/lib/compile/validate/applicability.ts +0 -22
  574. package/node_modules/ajv/lib/compile/validate/boolSchema.ts +0 -47
  575. package/node_modules/ajv/lib/compile/validate/dataType.ts +0 -230
  576. package/node_modules/ajv/lib/compile/validate/defaults.ts +0 -32
  577. package/node_modules/ajv/lib/compile/validate/index.ts +0 -582
  578. package/node_modules/ajv/lib/compile/validate/keyword.ts +0 -171
  579. package/node_modules/ajv/lib/compile/validate/subschema.ts +0 -135
  580. package/node_modules/ajv/lib/core.ts +0 -892
  581. package/node_modules/ajv/lib/jtd.ts +0 -132
  582. package/node_modules/ajv/lib/refs/data.json +0 -13
  583. package/node_modules/ajv/lib/refs/json-schema-2019-09/index.ts +0 -28
  584. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/applicator.json +0 -53
  585. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/content.json +0 -17
  586. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/core.json +0 -57
  587. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/format.json +0 -14
  588. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/meta-data.json +0 -37
  589. package/node_modules/ajv/lib/refs/json-schema-2019-09/meta/validation.json +0 -90
  590. package/node_modules/ajv/lib/refs/json-schema-2019-09/schema.json +0 -39
  591. package/node_modules/ajv/lib/refs/json-schema-2020-12/index.ts +0 -30
  592. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/applicator.json +0 -48
  593. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/content.json +0 -17
  594. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/core.json +0 -51
  595. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/format-annotation.json +0 -14
  596. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/meta-data.json +0 -37
  597. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/unevaluated.json +0 -15
  598. package/node_modules/ajv/lib/refs/json-schema-2020-12/meta/validation.json +0 -90
  599. package/node_modules/ajv/lib/refs/json-schema-2020-12/schema.json +0 -55
  600. package/node_modules/ajv/lib/refs/json-schema-draft-06.json +0 -137
  601. package/node_modules/ajv/lib/refs/json-schema-draft-07.json +0 -151
  602. package/node_modules/ajv/lib/refs/json-schema-secure.json +0 -88
  603. package/node_modules/ajv/lib/refs/jtd-schema.ts +0 -130
  604. package/node_modules/ajv/lib/runtime/equal.ts +0 -7
  605. package/node_modules/ajv/lib/runtime/parseJson.ts +0 -177
  606. package/node_modules/ajv/lib/runtime/quote.ts +0 -31
  607. package/node_modules/ajv/lib/runtime/re2.ts +0 -6
  608. package/node_modules/ajv/lib/runtime/timestamp.ts +0 -46
  609. package/node_modules/ajv/lib/runtime/ucs2length.ts +0 -20
  610. package/node_modules/ajv/lib/runtime/uri.ts +0 -6
  611. package/node_modules/ajv/lib/runtime/validation_error.ts +0 -13
  612. package/node_modules/ajv/lib/standalone/index.ts +0 -100
  613. package/node_modules/ajv/lib/standalone/instance.ts +0 -36
  614. package/node_modules/ajv/lib/types/index.ts +0 -244
  615. package/node_modules/ajv/lib/types/json-schema.ts +0 -187
  616. package/node_modules/ajv/lib/types/jtd-schema.ts +0 -273
  617. package/node_modules/ajv/lib/vocabularies/applicator/additionalItems.ts +0 -56
  618. package/node_modules/ajv/lib/vocabularies/applicator/additionalProperties.ts +0 -118
  619. package/node_modules/ajv/lib/vocabularies/applicator/allOf.ts +0 -22
  620. package/node_modules/ajv/lib/vocabularies/applicator/anyOf.ts +0 -14
  621. package/node_modules/ajv/lib/vocabularies/applicator/contains.ts +0 -109
  622. package/node_modules/ajv/lib/vocabularies/applicator/dependencies.ts +0 -112
  623. package/node_modules/ajv/lib/vocabularies/applicator/dependentSchemas.ts +0 -11
  624. package/node_modules/ajv/lib/vocabularies/applicator/if.ts +0 -80
  625. package/node_modules/ajv/lib/vocabularies/applicator/index.ts +0 -53
  626. package/node_modules/ajv/lib/vocabularies/applicator/items.ts +0 -59
  627. package/node_modules/ajv/lib/vocabularies/applicator/items2020.ts +0 -36
  628. package/node_modules/ajv/lib/vocabularies/applicator/not.ts +0 -38
  629. package/node_modules/ajv/lib/vocabularies/applicator/oneOf.ts +0 -82
  630. package/node_modules/ajv/lib/vocabularies/applicator/patternProperties.ts +0 -91
  631. package/node_modules/ajv/lib/vocabularies/applicator/prefixItems.ts +0 -12
  632. package/node_modules/ajv/lib/vocabularies/applicator/properties.ts +0 -57
  633. package/node_modules/ajv/lib/vocabularies/applicator/propertyNames.ts +0 -50
  634. package/node_modules/ajv/lib/vocabularies/applicator/thenElse.ts +0 -13
  635. package/node_modules/ajv/lib/vocabularies/code.ts +0 -168
  636. package/node_modules/ajv/lib/vocabularies/core/id.ts +0 -10
  637. package/node_modules/ajv/lib/vocabularies/core/index.ts +0 -16
  638. package/node_modules/ajv/lib/vocabularies/core/ref.ts +0 -129
  639. package/node_modules/ajv/lib/vocabularies/discriminator/index.ts +0 -113
  640. package/node_modules/ajv/lib/vocabularies/discriminator/types.ts +0 -12
  641. package/node_modules/ajv/lib/vocabularies/draft2020.ts +0 -23
  642. package/node_modules/ajv/lib/vocabularies/draft7.ts +0 -17
  643. package/node_modules/ajv/lib/vocabularies/dynamic/dynamicAnchor.ts +0 -31
  644. package/node_modules/ajv/lib/vocabularies/dynamic/dynamicRef.ts +0 -51
  645. package/node_modules/ajv/lib/vocabularies/dynamic/index.ts +0 -9
  646. package/node_modules/ajv/lib/vocabularies/dynamic/recursiveAnchor.ts +0 -14
  647. package/node_modules/ajv/lib/vocabularies/dynamic/recursiveRef.ts +0 -10
  648. package/node_modules/ajv/lib/vocabularies/errors.ts +0 -18
  649. package/node_modules/ajv/lib/vocabularies/format/format.ts +0 -120
  650. package/node_modules/ajv/lib/vocabularies/format/index.ts +0 -6
  651. package/node_modules/ajv/lib/vocabularies/jtd/discriminator.ts +0 -89
  652. package/node_modules/ajv/lib/vocabularies/jtd/elements.ts +0 -32
  653. package/node_modules/ajv/lib/vocabularies/jtd/enum.ts +0 -45
  654. package/node_modules/ajv/lib/vocabularies/jtd/error.ts +0 -23
  655. package/node_modules/ajv/lib/vocabularies/jtd/index.ts +0 -37
  656. package/node_modules/ajv/lib/vocabularies/jtd/metadata.ts +0 -24
  657. package/node_modules/ajv/lib/vocabularies/jtd/nullable.ts +0 -21
  658. package/node_modules/ajv/lib/vocabularies/jtd/optionalProperties.ts +0 -15
  659. package/node_modules/ajv/lib/vocabularies/jtd/properties.ts +0 -184
  660. package/node_modules/ajv/lib/vocabularies/jtd/ref.ts +0 -76
  661. package/node_modules/ajv/lib/vocabularies/jtd/type.ts +0 -75
  662. package/node_modules/ajv/lib/vocabularies/jtd/union.ts +0 -12
  663. package/node_modules/ajv/lib/vocabularies/jtd/values.ts +0 -58
  664. package/node_modules/ajv/lib/vocabularies/metadata.ts +0 -17
  665. package/node_modules/ajv/lib/vocabularies/next.ts +0 -8
  666. package/node_modules/ajv/lib/vocabularies/unevaluated/index.ts +0 -7
  667. package/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedItems.ts +0 -47
  668. package/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedProperties.ts +0 -85
  669. package/node_modules/ajv/lib/vocabularies/validation/const.ts +0 -28
  670. package/node_modules/ajv/lib/vocabularies/validation/dependentRequired.ts +0 -23
  671. package/node_modules/ajv/lib/vocabularies/validation/enum.ts +0 -54
  672. package/node_modules/ajv/lib/vocabularies/validation/index.ts +0 -49
  673. package/node_modules/ajv/lib/vocabularies/validation/limitContains.ts +0 -16
  674. package/node_modules/ajv/lib/vocabularies/validation/limitItems.ts +0 -26
  675. package/node_modules/ajv/lib/vocabularies/validation/limitLength.ts +0 -30
  676. package/node_modules/ajv/lib/vocabularies/validation/limitNumber.ts +0 -42
  677. package/node_modules/ajv/lib/vocabularies/validation/limitProperties.ts +0 -26
  678. package/node_modules/ajv/lib/vocabularies/validation/multipleOf.ts +0 -34
  679. package/node_modules/ajv/lib/vocabularies/validation/pattern.ts +0 -39
  680. package/node_modules/ajv/lib/vocabularies/validation/required.ts +0 -98
  681. package/node_modules/ajv/lib/vocabularies/validation/uniqueItems.ts +0 -79
  682. package/node_modules/ajv/package.json +0 -127
  683. package/node_modules/ajv-formats/LICENSE +0 -21
  684. package/node_modules/ajv-formats/README.md +0 -125
  685. package/node_modules/ajv-formats/dist/formats.d.ts +0 -9
  686. package/node_modules/ajv-formats/dist/formats.js +0 -208
  687. package/node_modules/ajv-formats/dist/formats.js.map +0 -1
  688. package/node_modules/ajv-formats/dist/index.d.ts +0 -15
  689. package/node_modules/ajv-formats/dist/index.js +0 -37
  690. package/node_modules/ajv-formats/dist/index.js.map +0 -1
  691. package/node_modules/ajv-formats/dist/limit.d.ts +0 -10
  692. package/node_modules/ajv-formats/dist/limit.js +0 -69
  693. package/node_modules/ajv-formats/dist/limit.js.map +0 -1
  694. package/node_modules/ajv-formats/package.json +0 -74
  695. package/node_modules/ajv-formats/src/formats.ts +0 -269
  696. package/node_modules/ajv-formats/src/index.ts +0 -62
  697. package/node_modules/ajv-formats/src/limit.ts +0 -99
  698. package/node_modules/fast-deep-equal/LICENSE +0 -21
  699. package/node_modules/fast-deep-equal/README.md +0 -96
  700. package/node_modules/fast-deep-equal/es6/index.d.ts +0 -2
  701. package/node_modules/fast-deep-equal/es6/index.js +0 -72
  702. package/node_modules/fast-deep-equal/es6/react.d.ts +0 -2
  703. package/node_modules/fast-deep-equal/es6/react.js +0 -79
  704. package/node_modules/fast-deep-equal/index.d.ts +0 -4
  705. package/node_modules/fast-deep-equal/index.js +0 -46
  706. package/node_modules/fast-deep-equal/package.json +0 -61
  707. package/node_modules/fast-deep-equal/react.d.ts +0 -2
  708. package/node_modules/fast-deep-equal/react.js +0 -53
  709. package/node_modules/fast-uri/.gitattributes +0 -2
  710. package/node_modules/fast-uri/.github/.stale.yml +0 -21
  711. package/node_modules/fast-uri/.github/dependabot.yml +0 -13
  712. package/node_modules/fast-uri/.github/tests_checker.yml +0 -8
  713. package/node_modules/fast-uri/.github/workflows/ci.yml +0 -101
  714. package/node_modules/fast-uri/.github/workflows/package-manager-ci.yml +0 -24
  715. package/node_modules/fast-uri/LICENSE +0 -32
  716. package/node_modules/fast-uri/README.md +0 -143
  717. package/node_modules/fast-uri/benchmark/benchmark.mjs +0 -159
  718. package/node_modules/fast-uri/benchmark/equal.mjs +0 -51
  719. package/node_modules/fast-uri/benchmark/non-simple-domain.mjs +0 -22
  720. package/node_modules/fast-uri/benchmark/package.json +0 -17
  721. package/node_modules/fast-uri/benchmark/string-array-to-hex-stripped.mjs +0 -24
  722. package/node_modules/fast-uri/benchmark/ws-is-secure.mjs +0 -65
  723. package/node_modules/fast-uri/eslint.config.js +0 -6
  724. package/node_modules/fast-uri/index.js +0 -340
  725. package/node_modules/fast-uri/lib/schemes.js +0 -267
  726. package/node_modules/fast-uri/lib/utils.js +0 -336
  727. package/node_modules/fast-uri/package.json +0 -69
  728. package/node_modules/fast-uri/test/ajv.test.js +0 -43
  729. package/node_modules/fast-uri/test/equal.test.js +0 -108
  730. package/node_modules/fast-uri/test/fixtures/uri-js-parse.json +0 -501
  731. package/node_modules/fast-uri/test/fixtures/uri-js-serialize.json +0 -120
  732. package/node_modules/fast-uri/test/parse.test.js +0 -318
  733. package/node_modules/fast-uri/test/resolve.test.js +0 -78
  734. package/node_modules/fast-uri/test/rfc-3986.test.js +0 -90
  735. package/node_modules/fast-uri/test/serialize.test.js +0 -151
  736. package/node_modules/fast-uri/test/uri-js-compatibility.test.js +0 -33
  737. package/node_modules/fast-uri/test/uri-js.test.js +0 -912
  738. package/node_modules/fast-uri/test/util.test.js +0 -38
  739. package/node_modules/fast-uri/tsconfig.json +0 -9
  740. package/node_modules/fast-uri/types/index.d.ts +0 -60
  741. package/node_modules/fast-uri/types/index.test-d.ts +0 -17
  742. package/node_modules/json-schema-traverse/.eslintrc.yml +0 -27
  743. package/node_modules/json-schema-traverse/.github/FUNDING.yml +0 -2
  744. package/node_modules/json-schema-traverse/.github/workflows/build.yml +0 -28
  745. package/node_modules/json-schema-traverse/.github/workflows/publish.yml +0 -27
  746. package/node_modules/json-schema-traverse/LICENSE +0 -21
  747. package/node_modules/json-schema-traverse/README.md +0 -95
  748. package/node_modules/json-schema-traverse/index.d.ts +0 -40
  749. package/node_modules/json-schema-traverse/index.js +0 -93
  750. package/node_modules/json-schema-traverse/package.json +0 -43
  751. package/node_modules/json-schema-traverse/spec/.eslintrc.yml +0 -6
  752. package/node_modules/json-schema-traverse/spec/fixtures/schema.js +0 -125
  753. package/node_modules/json-schema-traverse/spec/index.spec.js +0 -171
  754. package/node_modules/require-from-string/index.js +0 -34
  755. package/node_modules/require-from-string/license +0 -21
  756. package/node_modules/require-from-string/package.json +0 -28
  757. 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
- }