@weavelogic/knowledge-graph-agent 0.2.0 → 0.3.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 (585) hide show
  1. package/README.md +686 -304
  2. package/dist/_virtual/_commonjsHelpers.js +7 -0
  3. package/dist/_virtual/_commonjsHelpers.js.map +1 -0
  4. package/dist/_virtual/additionalItems.js +5 -0
  5. package/dist/_virtual/additionalItems.js.map +1 -0
  6. package/dist/_virtual/additionalProperties.js +5 -0
  7. package/dist/_virtual/additionalProperties.js.map +1 -0
  8. package/dist/_virtual/ajv.js +6 -0
  9. package/dist/_virtual/ajv.js.map +1 -0
  10. package/dist/_virtual/ajv2.js +5 -0
  11. package/dist/_virtual/ajv2.js.map +1 -0
  12. package/dist/_virtual/allOf.js +5 -0
  13. package/dist/_virtual/allOf.js.map +1 -0
  14. package/dist/_virtual/anyOf.js +5 -0
  15. package/dist/_virtual/anyOf.js.map +1 -0
  16. package/dist/_virtual/applicability.js +5 -0
  17. package/dist/_virtual/applicability.js.map +1 -0
  18. package/dist/_virtual/boolSchema.js +5 -0
  19. package/dist/_virtual/boolSchema.js.map +1 -0
  20. package/dist/_virtual/code.js +5 -0
  21. package/dist/_virtual/code.js.map +1 -0
  22. package/dist/_virtual/code2.js +5 -0
  23. package/dist/_virtual/code2.js.map +1 -0
  24. package/dist/_virtual/const.js +5 -0
  25. package/dist/_virtual/const.js.map +1 -0
  26. package/dist/_virtual/contains.js +5 -0
  27. package/dist/_virtual/contains.js.map +1 -0
  28. package/dist/_virtual/core.js +5 -0
  29. package/dist/_virtual/core.js.map +1 -0
  30. package/dist/_virtual/dataType.js +5 -0
  31. package/dist/_virtual/dataType.js.map +1 -0
  32. package/dist/_virtual/defaults.js +5 -0
  33. package/dist/_virtual/defaults.js.map +1 -0
  34. package/dist/_virtual/dependencies.js +5 -0
  35. package/dist/_virtual/dependencies.js.map +1 -0
  36. package/dist/_virtual/draft7.js +5 -0
  37. package/dist/_virtual/draft7.js.map +1 -0
  38. package/dist/_virtual/enum.js +5 -0
  39. package/dist/_virtual/enum.js.map +1 -0
  40. package/dist/_virtual/equal.js +5 -0
  41. package/dist/_virtual/equal.js.map +1 -0
  42. package/dist/_virtual/errors.js +5 -0
  43. package/dist/_virtual/errors.js.map +1 -0
  44. package/dist/_virtual/format.js +5 -0
  45. package/dist/_virtual/format.js.map +1 -0
  46. package/dist/_virtual/formats.js +5 -0
  47. package/dist/_virtual/formats.js.map +1 -0
  48. package/dist/_virtual/id.js +5 -0
  49. package/dist/_virtual/id.js.map +1 -0
  50. package/dist/_virtual/if.js +5 -0
  51. package/dist/_virtual/if.js.map +1 -0
  52. package/dist/_virtual/index.js +8 -0
  53. package/dist/_virtual/index.js.map +1 -0
  54. package/dist/_virtual/index10.js +5 -0
  55. package/dist/_virtual/index10.js.map +1 -0
  56. package/dist/_virtual/index11.js +5 -0
  57. package/dist/_virtual/index11.js.map +1 -0
  58. package/dist/_virtual/index12.js +5 -0
  59. package/dist/_virtual/index12.js.map +1 -0
  60. package/dist/_virtual/index2.js +5 -0
  61. package/dist/_virtual/index2.js.map +1 -0
  62. package/dist/_virtual/index3.js +5 -0
  63. package/dist/_virtual/index3.js.map +1 -0
  64. package/dist/_virtual/index4.js +5 -0
  65. package/dist/_virtual/index4.js.map +1 -0
  66. package/dist/_virtual/index5.js +5 -0
  67. package/dist/_virtual/index5.js.map +1 -0
  68. package/dist/_virtual/index6.js +5 -0
  69. package/dist/_virtual/index6.js.map +1 -0
  70. package/dist/_virtual/index7.js +5 -0
  71. package/dist/_virtual/index7.js.map +1 -0
  72. package/dist/_virtual/index8.js +5 -0
  73. package/dist/_virtual/index8.js.map +1 -0
  74. package/dist/_virtual/index9.js +5 -0
  75. package/dist/_virtual/index9.js.map +1 -0
  76. package/dist/_virtual/items.js +5 -0
  77. package/dist/_virtual/items.js.map +1 -0
  78. package/dist/_virtual/items2020.js +5 -0
  79. package/dist/_virtual/items2020.js.map +1 -0
  80. package/dist/_virtual/keyword.js +5 -0
  81. package/dist/_virtual/keyword.js.map +1 -0
  82. package/dist/_virtual/limit.js +5 -0
  83. package/dist/_virtual/limit.js.map +1 -0
  84. package/dist/_virtual/limitItems.js +5 -0
  85. package/dist/_virtual/limitItems.js.map +1 -0
  86. package/dist/_virtual/limitLength.js +5 -0
  87. package/dist/_virtual/limitLength.js.map +1 -0
  88. package/dist/_virtual/limitNumber.js +5 -0
  89. package/dist/_virtual/limitNumber.js.map +1 -0
  90. package/dist/_virtual/limitProperties.js +5 -0
  91. package/dist/_virtual/limitProperties.js.map +1 -0
  92. package/dist/_virtual/metadata.js +5 -0
  93. package/dist/_virtual/metadata.js.map +1 -0
  94. package/dist/_virtual/multipleOf.js +5 -0
  95. package/dist/_virtual/multipleOf.js.map +1 -0
  96. package/dist/_virtual/names.js +5 -0
  97. package/dist/_virtual/names.js.map +1 -0
  98. package/dist/_virtual/not.js +5 -0
  99. package/dist/_virtual/not.js.map +1 -0
  100. package/dist/_virtual/oneOf.js +5 -0
  101. package/dist/_virtual/oneOf.js.map +1 -0
  102. package/dist/_virtual/pattern.js +5 -0
  103. package/dist/_virtual/pattern.js.map +1 -0
  104. package/dist/_virtual/patternProperties.js +5 -0
  105. package/dist/_virtual/patternProperties.js.map +1 -0
  106. package/dist/_virtual/prefixItems.js +5 -0
  107. package/dist/_virtual/prefixItems.js.map +1 -0
  108. package/dist/_virtual/properties.js +5 -0
  109. package/dist/_virtual/properties.js.map +1 -0
  110. package/dist/_virtual/propertyNames.js +5 -0
  111. package/dist/_virtual/propertyNames.js.map +1 -0
  112. package/dist/_virtual/ref.js +5 -0
  113. package/dist/_virtual/ref.js.map +1 -0
  114. package/dist/_virtual/ref_error.js +5 -0
  115. package/dist/_virtual/ref_error.js.map +1 -0
  116. package/dist/_virtual/required.js +5 -0
  117. package/dist/_virtual/required.js.map +1 -0
  118. package/dist/_virtual/resolve.js +5 -0
  119. package/dist/_virtual/resolve.js.map +1 -0
  120. package/dist/_virtual/rules.js +5 -0
  121. package/dist/_virtual/rules.js.map +1 -0
  122. package/dist/_virtual/scope.js +5 -0
  123. package/dist/_virtual/scope.js.map +1 -0
  124. package/dist/_virtual/subschema.js +5 -0
  125. package/dist/_virtual/subschema.js.map +1 -0
  126. package/dist/_virtual/thenElse.js +5 -0
  127. package/dist/_virtual/thenElse.js.map +1 -0
  128. package/dist/_virtual/types.js +5 -0
  129. package/dist/_virtual/types.js.map +1 -0
  130. package/dist/_virtual/ucs2length.js +5 -0
  131. package/dist/_virtual/ucs2length.js.map +1 -0
  132. package/dist/_virtual/uniqueItems.js +5 -0
  133. package/dist/_virtual/uniqueItems.js.map +1 -0
  134. package/dist/_virtual/uri.js +5 -0
  135. package/dist/_virtual/uri.js.map +1 -0
  136. package/dist/_virtual/util.js +5 -0
  137. package/dist/_virtual/util.js.map +1 -0
  138. package/dist/_virtual/validation_error.js +5 -0
  139. package/dist/_virtual/validation_error.js.map +1 -0
  140. package/dist/agents/analyst-agent.d.ts +230 -0
  141. package/dist/agents/analyst-agent.d.ts.map +1 -0
  142. package/dist/agents/analyst-agent.js +793 -0
  143. package/dist/agents/analyst-agent.js.map +1 -0
  144. package/dist/agents/architect-agent.d.ts +248 -0
  145. package/dist/agents/architect-agent.d.ts.map +1 -0
  146. package/dist/agents/architect-agent.js +685 -0
  147. package/dist/agents/architect-agent.js.map +1 -0
  148. package/dist/agents/base-agent.d.ts +169 -0
  149. package/dist/agents/base-agent.d.ts.map +1 -0
  150. package/dist/agents/base-agent.js +441 -0
  151. package/dist/agents/base-agent.js.map +1 -0
  152. package/dist/agents/coder-agent.d.ts +191 -0
  153. package/dist/agents/coder-agent.d.ts.map +1 -0
  154. package/dist/agents/coder-agent.js +1008 -0
  155. package/dist/agents/coder-agent.js.map +1 -0
  156. package/dist/agents/index.d.ts +18 -0
  157. package/dist/agents/index.d.ts.map +1 -0
  158. package/dist/agents/index.js +40 -0
  159. package/dist/agents/index.js.map +1 -0
  160. package/dist/agents/registry.d.ts +213 -0
  161. package/dist/agents/registry.d.ts.map +1 -0
  162. package/dist/agents/registry.js +419 -0
  163. package/dist/agents/registry.js.map +1 -0
  164. package/dist/agents/researcher-agent.d.ts +226 -0
  165. package/dist/agents/researcher-agent.d.ts.map +1 -0
  166. package/dist/agents/researcher-agent.js +572 -0
  167. package/dist/agents/researcher-agent.js.map +1 -0
  168. package/dist/agents/rules-engine.d.ts +320 -0
  169. package/dist/agents/rules-engine.d.ts.map +1 -0
  170. package/dist/agents/rules-engine.js +552 -0
  171. package/dist/agents/rules-engine.js.map +1 -0
  172. package/dist/agents/tester-agent.d.ts +219 -0
  173. package/dist/agents/tester-agent.d.ts.map +1 -0
  174. package/dist/agents/tester-agent.js +683 -0
  175. package/dist/agents/tester-agent.js.map +1 -0
  176. package/dist/agents/types.d.ts +425 -0
  177. package/dist/agents/types.d.ts.map +1 -0
  178. package/dist/agents/types.js +57 -0
  179. package/dist/agents/types.js.map +1 -0
  180. package/dist/caching/index.d.ts +55 -0
  181. package/dist/caching/index.d.ts.map +1 -0
  182. package/dist/caching/index.js +206 -0
  183. package/dist/caching/index.js.map +1 -0
  184. package/dist/caching/lru-cache.d.ts +254 -0
  185. package/dist/caching/lru-cache.d.ts.map +1 -0
  186. package/dist/caching/types.d.ts +95 -0
  187. package/dist/caching/types.d.ts.map +1 -0
  188. package/dist/chunking/chunker.d.ts +94 -0
  189. package/dist/chunking/chunker.d.ts.map +1 -0
  190. package/dist/chunking/index.d.ts +125 -0
  191. package/dist/chunking/index.d.ts.map +1 -0
  192. package/dist/chunking/index.js +283 -0
  193. package/dist/chunking/index.js.map +1 -0
  194. package/dist/chunking/types.d.ts +92 -0
  195. package/dist/chunking/types.d.ts.map +1 -0
  196. package/dist/cli/commands/commit.d.ts +11 -0
  197. package/dist/cli/commands/commit.d.ts.map +1 -0
  198. package/dist/cli/commands/commit.js +379 -0
  199. package/dist/cli/commands/commit.js.map +1 -0
  200. package/dist/cli/commands/config.d.ts +8 -0
  201. package/dist/cli/commands/config.d.ts.map +1 -0
  202. package/dist/cli/commands/config.js +107 -0
  203. package/dist/cli/commands/config.js.map +1 -0
  204. package/dist/cli/commands/cultivate.d.ts +16 -0
  205. package/dist/cli/commands/cultivate.d.ts.map +1 -0
  206. package/dist/cli/commands/cultivate.js +254 -0
  207. package/dist/cli/commands/cultivate.js.map +1 -0
  208. package/dist/cli/commands/diagnostics.d.ts +8 -0
  209. package/dist/cli/commands/diagnostics.d.ts.map +1 -0
  210. package/dist/cli/commands/diagnostics.js +140 -0
  211. package/dist/cli/commands/diagnostics.js.map +1 -0
  212. package/dist/cli/commands/generate.d.ts +13 -0
  213. package/dist/cli/commands/generate.d.ts.map +1 -0
  214. package/dist/cli/commands/init-primitives.d.ts +19 -0
  215. package/dist/cli/commands/init-primitives.d.ts.map +1 -0
  216. package/dist/cli/commands/init-primitives.js +208 -0
  217. package/dist/cli/commands/init-primitives.js.map +1 -0
  218. package/dist/cli/commands/sop.d.ts +14 -0
  219. package/dist/cli/commands/sop.d.ts.map +1 -0
  220. package/dist/cli/commands/sop.js +598 -0
  221. package/dist/cli/commands/sop.js.map +1 -0
  222. package/dist/cli/index.d.ts.map +1 -1
  223. package/dist/cli/index.js +40 -1
  224. package/dist/cli/index.js.map +1 -1
  225. package/dist/config/index.d.ts +153 -0
  226. package/dist/config/index.d.ts.map +1 -0
  227. package/dist/config/index.js +141 -0
  228. package/dist/config/index.js.map +1 -0
  229. package/dist/config/manager.d.ts +136 -0
  230. package/dist/config/manager.d.ts.map +1 -0
  231. package/dist/config/types.d.ts +127 -0
  232. package/dist/config/types.d.ts.map +1 -0
  233. package/dist/core/cache.d.ts +185 -0
  234. package/dist/core/cache.d.ts.map +1 -0
  235. package/dist/core/cache.js +435 -0
  236. package/dist/core/cache.js.map +1 -0
  237. package/dist/cultivation/deep-analyzer.d.ts +129 -0
  238. package/dist/cultivation/deep-analyzer.d.ts.map +1 -0
  239. package/dist/cultivation/deep-analyzer.js +322 -0
  240. package/dist/cultivation/deep-analyzer.js.map +1 -0
  241. package/dist/cultivation/index.d.ts +13 -0
  242. package/dist/cultivation/index.d.ts.map +1 -0
  243. package/dist/cultivation/seed-generator.d.ts +92 -0
  244. package/dist/cultivation/seed-generator.d.ts.map +1 -0
  245. package/dist/cultivation/seed-generator.js +1033 -0
  246. package/dist/cultivation/seed-generator.js.map +1 -0
  247. package/dist/cultivation/types.d.ts +230 -0
  248. package/dist/cultivation/types.d.ts.map +1 -0
  249. package/dist/generators/claude-md.d.ts +7 -0
  250. package/dist/generators/claude-md.d.ts.map +1 -1
  251. package/dist/generators/claude-md.js.map +1 -1
  252. package/dist/generators/docs-init.d.ts +6 -0
  253. package/dist/generators/docs-init.d.ts.map +1 -1
  254. package/dist/generators/docs-init.js.map +1 -1
  255. package/dist/health/checks.d.ts +135 -0
  256. package/dist/health/checks.d.ts.map +1 -0
  257. package/dist/health/index.d.ts +119 -0
  258. package/dist/health/index.d.ts.map +1 -0
  259. package/dist/health/index.js +191 -0
  260. package/dist/health/index.js.map +1 -0
  261. package/dist/health/monitor.d.ts +146 -0
  262. package/dist/health/monitor.d.ts.map +1 -0
  263. package/dist/health/types.d.ts +135 -0
  264. package/dist/health/types.d.ts.map +1 -0
  265. package/dist/index.d.ts +30 -0
  266. package/dist/index.d.ts.map +1 -1
  267. package/dist/index.js +173 -1
  268. package/dist/index.js.map +1 -1
  269. package/dist/integrations/auto-commit.d.ts +175 -0
  270. package/dist/integrations/auto-commit.d.ts.map +1 -0
  271. package/dist/integrations/auto-commit.js +399 -0
  272. package/dist/integrations/auto-commit.js.map +1 -0
  273. package/dist/integrations/git.d.ts +299 -0
  274. package/dist/integrations/git.d.ts.map +1 -0
  275. package/dist/integrations/git.js +465 -0
  276. package/dist/integrations/git.js.map +1 -0
  277. package/dist/mcp-server/bin.d.ts +11 -0
  278. package/dist/mcp-server/bin.d.ts.map +1 -0
  279. package/dist/mcp-server/handlers/index.d.ts +57 -0
  280. package/dist/mcp-server/handlers/index.d.ts.map +1 -0
  281. package/dist/mcp-server/handlers/index.js +235 -0
  282. package/dist/mcp-server/handlers/index.js.map +1 -0
  283. package/dist/mcp-server/index.d.ts +28 -0
  284. package/dist/mcp-server/index.d.ts.map +1 -0
  285. package/dist/mcp-server/server.d.ts +133 -0
  286. package/dist/mcp-server/server.d.ts.map +1 -0
  287. package/dist/mcp-server/server.js +280 -0
  288. package/dist/mcp-server/server.js.map +1 -0
  289. package/dist/mcp-server/tools/agents/index.d.ts +10 -0
  290. package/dist/mcp-server/tools/agents/index.d.ts.map +1 -0
  291. package/dist/mcp-server/tools/agents/list.d.ts +19 -0
  292. package/dist/mcp-server/tools/agents/list.d.ts.map +1 -0
  293. package/dist/mcp-server/tools/agents/spawn.d.ts +19 -0
  294. package/dist/mcp-server/tools/agents/spawn.d.ts.map +1 -0
  295. package/dist/mcp-server/tools/graph/generate.d.ts +21 -0
  296. package/dist/mcp-server/tools/graph/generate.d.ts.map +1 -0
  297. package/dist/mcp-server/tools/graph/index.d.ts +11 -0
  298. package/dist/mcp-server/tools/graph/index.d.ts.map +1 -0
  299. package/dist/mcp-server/tools/graph/query.d.ts +22 -0
  300. package/dist/mcp-server/tools/graph/query.d.ts.map +1 -0
  301. package/dist/mcp-server/tools/graph/stats.d.ts +22 -0
  302. package/dist/mcp-server/tools/graph/stats.d.ts.map +1 -0
  303. package/dist/mcp-server/tools/health.d.ts +21 -0
  304. package/dist/mcp-server/tools/health.d.ts.map +1 -0
  305. package/dist/mcp-server/tools/index.d.ts +13 -0
  306. package/dist/mcp-server/tools/index.d.ts.map +1 -0
  307. package/dist/mcp-server/tools/registry.d.ts +90 -0
  308. package/dist/mcp-server/tools/registry.d.ts.map +1 -0
  309. package/dist/mcp-server/tools/registry.js +663 -0
  310. package/dist/mcp-server/tools/registry.js.map +1 -0
  311. package/dist/mcp-server/tools/search/index.d.ts +10 -0
  312. package/dist/mcp-server/tools/search/index.d.ts.map +1 -0
  313. package/dist/mcp-server/tools/search/nodes.d.ts +22 -0
  314. package/dist/mcp-server/tools/search/nodes.d.ts.map +1 -0
  315. package/dist/mcp-server/tools/search/tags.d.ts +22 -0
  316. package/dist/mcp-server/tools/search/tags.d.ts.map +1 -0
  317. package/dist/mcp-server/types/index.d.ts +286 -0
  318. package/dist/mcp-server/types/index.d.ts.map +1 -0
  319. package/dist/memory/index.d.ts +10 -0
  320. package/dist/memory/index.d.ts.map +1 -0
  321. package/dist/memory/vault-sync.d.ts +212 -0
  322. package/dist/memory/vault-sync.d.ts.map +1 -0
  323. package/dist/memory/vault-sync.js +463 -0
  324. package/dist/memory/vault-sync.js.map +1 -0
  325. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js +296 -0
  326. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js.map +1 -0
  327. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js +71 -0
  328. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js.map +1 -0
  329. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js +26 -0
  330. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js.map +1 -0
  331. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js +407 -0
  332. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js.map +1 -0
  333. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js +1332 -0
  334. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js.map +1 -0
  335. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js +71 -0
  336. package/dist/node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js.map +1 -0
  337. package/dist/node_modules/ajv/dist/ajv.js +84 -0
  338. package/dist/node_modules/ajv/dist/ajv.js.map +1 -0
  339. package/dist/node_modules/ajv/dist/compile/codegen/code.js +160 -0
  340. package/dist/node_modules/ajv/dist/compile/codegen/code.js.map +1 -0
  341. package/dist/node_modules/ajv/dist/compile/codegen/index.js +728 -0
  342. package/dist/node_modules/ajv/dist/compile/codegen/index.js.map +1 -0
  343. package/dist/node_modules/ajv/dist/compile/codegen/scope.js +152 -0
  344. package/dist/node_modules/ajv/dist/compile/codegen/scope.js.map +1 -0
  345. package/dist/node_modules/ajv/dist/compile/errors.js +131 -0
  346. package/dist/node_modules/ajv/dist/compile/errors.js.map +1 -0
  347. package/dist/node_modules/ajv/dist/compile/index.js +234 -0
  348. package/dist/node_modules/ajv/dist/compile/index.js.map +1 -0
  349. package/dist/node_modules/ajv/dist/compile/names.js +44 -0
  350. package/dist/node_modules/ajv/dist/compile/names.js.map +1 -0
  351. package/dist/node_modules/ajv/dist/compile/ref_error.js +22 -0
  352. package/dist/node_modules/ajv/dist/compile/ref_error.js.map +1 -0
  353. package/dist/node_modules/ajv/dist/compile/resolve.js +163 -0
  354. package/dist/node_modules/ajv/dist/compile/resolve.js.map +1 -0
  355. package/dist/node_modules/ajv/dist/compile/rules.js +35 -0
  356. package/dist/node_modules/ajv/dist/compile/rules.js.map +1 -0
  357. package/dist/node_modules/ajv/dist/compile/util.js +173 -0
  358. package/dist/node_modules/ajv/dist/compile/util.js.map +1 -0
  359. package/dist/node_modules/ajv/dist/compile/validate/applicability.js +27 -0
  360. package/dist/node_modules/ajv/dist/compile/validate/applicability.js.map +1 -0
  361. package/dist/node_modules/ajv/dist/compile/validate/boolSchema.js +58 -0
  362. package/dist/node_modules/ajv/dist/compile/validate/boolSchema.js.map +1 -0
  363. package/dist/node_modules/ajv/dist/compile/validate/dataType.js +193 -0
  364. package/dist/node_modules/ajv/dist/compile/validate/dataType.js.map +1 -0
  365. package/dist/node_modules/ajv/dist/compile/validate/defaults.js +43 -0
  366. package/dist/node_modules/ajv/dist/compile/validate/defaults.js.map +1 -0
  367. package/dist/node_modules/ajv/dist/compile/validate/index.js +522 -0
  368. package/dist/node_modules/ajv/dist/compile/validate/index.js.map +1 -0
  369. package/dist/node_modules/ajv/dist/compile/validate/keyword.js +126 -0
  370. package/dist/node_modules/ajv/dist/compile/validate/keyword.js.map +1 -0
  371. package/dist/node_modules/ajv/dist/compile/validate/subschema.js +89 -0
  372. package/dist/node_modules/ajv/dist/compile/validate/subschema.js.map +1 -0
  373. package/dist/node_modules/ajv/dist/core.js +628 -0
  374. package/dist/node_modules/ajv/dist/core.js.map +1 -0
  375. package/dist/node_modules/ajv/dist/refs/data.json.js +24 -0
  376. package/dist/node_modules/ajv/dist/refs/data.json.js.map +1 -0
  377. package/dist/node_modules/ajv/dist/refs/json-schema-draft-07.json.js +25 -0
  378. package/dist/node_modules/ajv/dist/refs/json-schema-draft-07.json.js.map +1 -0
  379. package/dist/node_modules/ajv/dist/runtime/equal.js +16 -0
  380. package/dist/node_modules/ajv/dist/runtime/equal.js.map +1 -0
  381. package/dist/node_modules/ajv/dist/runtime/ucs2length.js +30 -0
  382. package/dist/node_modules/ajv/dist/runtime/ucs2length.js.map +1 -0
  383. package/dist/node_modules/ajv/dist/runtime/uri.js +16 -0
  384. package/dist/node_modules/ajv/dist/runtime/uri.js.map +1 -0
  385. package/dist/node_modules/ajv/dist/runtime/validation_error.js +20 -0
  386. package/dist/node_modules/ajv/dist/runtime/validation_error.js.map +1 -0
  387. package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +59 -0
  388. package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js.map +1 -0
  389. package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +114 -0
  390. package/dist/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js.map +1 -0
  391. package/dist/node_modules/ajv/dist/vocabularies/applicator/allOf.js +32 -0
  392. package/dist/node_modules/ajv/dist/vocabularies/applicator/allOf.js.map +1 -0
  393. package/dist/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +22 -0
  394. package/dist/node_modules/ajv/dist/vocabularies/applicator/anyOf.js.map +1 -0
  395. package/dist/node_modules/ajv/dist/vocabularies/applicator/contains.js +100 -0
  396. package/dist/node_modules/ajv/dist/vocabularies/applicator/contains.js.map +1 -0
  397. package/dist/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +103 -0
  398. package/dist/node_modules/ajv/dist/vocabularies/applicator/dependencies.js.map +1 -0
  399. package/dist/node_modules/ajv/dist/vocabularies/applicator/if.js +75 -0
  400. package/dist/node_modules/ajv/dist/vocabularies/applicator/if.js.map +1 -0
  401. package/dist/node_modules/ajv/dist/vocabularies/applicator/index.js +68 -0
  402. package/dist/node_modules/ajv/dist/vocabularies/applicator/index.js.map +1 -0
  403. package/dist/node_modules/ajv/dist/vocabularies/applicator/items.js +64 -0
  404. package/dist/node_modules/ajv/dist/vocabularies/applicator/items.js.map +1 -0
  405. package/dist/node_modules/ajv/dist/vocabularies/applicator/items2020.js +43 -0
  406. package/dist/node_modules/ajv/dist/vocabularies/applicator/items2020.js.map +1 -0
  407. package/dist/node_modules/ajv/dist/vocabularies/applicator/not.js +36 -0
  408. package/dist/node_modules/ajv/dist/vocabularies/applicator/not.js.map +1 -0
  409. package/dist/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +64 -0
  410. package/dist/node_modules/ajv/dist/vocabularies/applicator/oneOf.js.map +1 -0
  411. package/dist/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +81 -0
  412. package/dist/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js.map +1 -0
  413. package/dist/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +22 -0
  414. package/dist/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js.map +1 -0
  415. package/dist/node_modules/ajv/dist/vocabularies/applicator/properties.js +66 -0
  416. package/dist/node_modules/ajv/dist/vocabularies/applicator/properties.js.map +1 -0
  417. package/dist/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +49 -0
  418. package/dist/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js.map +1 -0
  419. package/dist/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +23 -0
  420. package/dist/node_modules/ajv/dist/vocabularies/applicator/thenElse.js.map +1 -0
  421. package/dist/node_modules/ajv/dist/vocabularies/code.js +140 -0
  422. package/dist/node_modules/ajv/dist/vocabularies/code.js.map +1 -0
  423. package/dist/node_modules/ajv/dist/vocabularies/core/id.js +19 -0
  424. package/dist/node_modules/ajv/dist/vocabularies/core/id.js.map +1 -0
  425. package/dist/node_modules/ajv/dist/vocabularies/core/index.js +27 -0
  426. package/dist/node_modules/ajv/dist/vocabularies/core/index.js.map +1 -0
  427. package/dist/node_modules/ajv/dist/vocabularies/core/ref.js +132 -0
  428. package/dist/node_modules/ajv/dist/vocabularies/core/ref.js.map +1 -0
  429. package/dist/node_modules/ajv/dist/vocabularies/discriminator/index.js +114 -0
  430. package/dist/node_modules/ajv/dist/vocabularies/discriminator/index.js.map +1 -0
  431. package/dist/node_modules/ajv/dist/vocabularies/discriminator/types.js +18 -0
  432. package/dist/node_modules/ajv/dist/vocabularies/discriminator/types.js.map +1 -0
  433. package/dist/node_modules/ajv/dist/vocabularies/draft7.js +31 -0
  434. package/dist/node_modules/ajv/dist/vocabularies/draft7.js.map +1 -0
  435. package/dist/node_modules/ajv/dist/vocabularies/format/format.js +95 -0
  436. package/dist/node_modules/ajv/dist/vocabularies/format/format.js.map +1 -0
  437. package/dist/node_modules/ajv/dist/vocabularies/format/index.js +16 -0
  438. package/dist/node_modules/ajv/dist/vocabularies/format/index.js.map +1 -0
  439. package/dist/node_modules/ajv/dist/vocabularies/metadata.js +27 -0
  440. package/dist/node_modules/ajv/dist/vocabularies/metadata.js.map +1 -0
  441. package/dist/node_modules/ajv/dist/vocabularies/validation/const.js +36 -0
  442. package/dist/node_modules/ajv/dist/vocabularies/validation/const.js.map +1 -0
  443. package/dist/node_modules/ajv/dist/vocabularies/validation/enum.js +56 -0
  444. package/dist/node_modules/ajv/dist/vocabularies/validation/enum.js.map +1 -0
  445. package/dist/node_modules/ajv/dist/vocabularies/validation/index.js +52 -0
  446. package/dist/node_modules/ajv/dist/vocabularies/validation/index.js.map +1 -0
  447. package/dist/node_modules/ajv/dist/vocabularies/validation/limitItems.js +34 -0
  448. package/dist/node_modules/ajv/dist/vocabularies/validation/limitItems.js.map +1 -0
  449. package/dist/node_modules/ajv/dist/vocabularies/validation/limitLength.js +39 -0
  450. package/dist/node_modules/ajv/dist/vocabularies/validation/limitLength.js.map +1 -0
  451. package/dist/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +37 -0
  452. package/dist/node_modules/ajv/dist/vocabularies/validation/limitNumber.js.map +1 -0
  453. package/dist/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +34 -0
  454. package/dist/node_modules/ajv/dist/vocabularies/validation/limitProperties.js.map +1 -0
  455. package/dist/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +33 -0
  456. package/dist/node_modules/ajv/dist/vocabularies/validation/multipleOf.js.map +1 -0
  457. package/dist/node_modules/ajv/dist/vocabularies/validation/pattern.js +34 -0
  458. package/dist/node_modules/ajv/dist/vocabularies/validation/pattern.js.map +1 -0
  459. package/dist/node_modules/ajv/dist/vocabularies/validation/required.js +89 -0
  460. package/dist/node_modules/ajv/dist/vocabularies/validation/required.js.map +1 -0
  461. package/dist/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +75 -0
  462. package/dist/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js.map +1 -0
  463. package/dist/node_modules/ajv-formats/dist/formats.js +209 -0
  464. package/dist/node_modules/ajv-formats/dist/formats.js.map +1 -0
  465. package/dist/node_modules/ajv-formats/dist/index.js +51 -0
  466. package/dist/node_modules/ajv-formats/dist/index.js.map +1 -0
  467. package/dist/node_modules/ajv-formats/dist/limit.js +80 -0
  468. package/dist/node_modules/ajv-formats/dist/limit.js.map +1 -0
  469. package/dist/node_modules/fast-deep-equal/index.js +39 -0
  470. package/dist/node_modules/fast-deep-equal/index.js.map +1 -0
  471. package/dist/node_modules/fast-uri/index.js +261 -0
  472. package/dist/node_modules/fast-uri/index.js.map +1 -0
  473. package/dist/node_modules/fast-uri/lib/schemes.js +215 -0
  474. package/dist/node_modules/fast-uri/lib/schemes.js.map +1 -0
  475. package/dist/node_modules/fast-uri/lib/utils.js +261 -0
  476. package/dist/node_modules/fast-uri/lib/utils.js.map +1 -0
  477. package/dist/node_modules/json-schema-traverse/index.js +92 -0
  478. package/dist/node_modules/json-schema-traverse/index.js.map +1 -0
  479. package/dist/node_modules/zod/v4/classic/errors.js +37 -0
  480. package/dist/node_modules/zod/v4/classic/errors.js.map +1 -0
  481. package/dist/node_modules/zod/v4/classic/iso.js +43 -0
  482. package/dist/node_modules/zod/v4/classic/iso.js.map +1 -0
  483. package/dist/node_modules/zod/v4/classic/parse.js +13 -0
  484. package/dist/node_modules/zod/v4/classic/parse.js.map +1 -0
  485. package/dist/node_modules/zod/v4/classic/schemas.js +688 -0
  486. package/dist/node_modules/zod/v4/classic/schemas.js.map +1 -0
  487. package/dist/node_modules/zod/v4/core/api.js +492 -0
  488. package/dist/node_modules/zod/v4/core/api.js.map +1 -0
  489. package/dist/node_modules/zod/v4/core/checks.js +405 -0
  490. package/dist/node_modules/zod/v4/core/checks.js.map +1 -0
  491. package/dist/node_modules/zod/v4/core/core.js +58 -0
  492. package/dist/node_modules/zod/v4/core/core.js.map +1 -0
  493. package/dist/node_modules/zod/v4/core/doc.js +38 -0
  494. package/dist/node_modules/zod/v4/core/doc.js.map +1 -0
  495. package/dist/node_modules/zod/v4/core/errors.js +82 -0
  496. package/dist/node_modules/zod/v4/core/errors.js.map +1 -0
  497. package/dist/node_modules/zod/v4/core/parse.js +60 -0
  498. package/dist/node_modules/zod/v4/core/parse.js.map +1 -0
  499. package/dist/node_modules/zod/v4/core/regexes.js +87 -0
  500. package/dist/node_modules/zod/v4/core/regexes.js.map +1 -0
  501. package/dist/node_modules/zod/v4/core/registries.js +52 -0
  502. package/dist/node_modules/zod/v4/core/registries.js.map +1 -0
  503. package/dist/node_modules/zod/v4/core/schemas.js +1283 -0
  504. package/dist/node_modules/zod/v4/core/schemas.js.map +1 -0
  505. package/dist/node_modules/zod/v4/core/util.js +341 -0
  506. package/dist/node_modules/zod/v4/core/util.js.map +1 -0
  507. package/dist/node_modules/zod/v4/core/versions.js +9 -0
  508. package/dist/node_modules/zod/v4/core/versions.js.map +1 -0
  509. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/string.js +2 -0
  510. package/dist/node_modules/zod-to-json-schema/dist/esm/parsers/string.js.map +1 -0
  511. package/dist/reasoning/index.d.ts +74 -0
  512. package/dist/reasoning/index.d.ts.map +1 -0
  513. package/dist/reasoning/index.js +124 -0
  514. package/dist/reasoning/index.js.map +1 -0
  515. package/dist/reasoning/tracker.d.ts +210 -0
  516. package/dist/reasoning/tracker.d.ts.map +1 -0
  517. package/dist/reasoning/types.d.ts +146 -0
  518. package/dist/reasoning/types.d.ts.map +1 -0
  519. package/dist/recovery/backup.d.ts +110 -0
  520. package/dist/recovery/backup.d.ts.map +1 -0
  521. package/dist/recovery/index.d.ts +70 -0
  522. package/dist/recovery/index.d.ts.map +1 -0
  523. package/dist/recovery/index.js +186 -0
  524. package/dist/recovery/index.js.map +1 -0
  525. package/dist/recovery/integrity.d.ts +74 -0
  526. package/dist/recovery/integrity.d.ts.map +1 -0
  527. package/dist/recovery/types.d.ts +94 -0
  528. package/dist/recovery/types.d.ts.map +1 -0
  529. package/dist/services/index.d.ts +130 -0
  530. package/dist/services/index.d.ts.map +1 -0
  531. package/dist/services/index.js +134 -0
  532. package/dist/services/index.js.map +1 -0
  533. package/dist/services/manager.d.ts +140 -0
  534. package/dist/services/manager.d.ts.map +1 -0
  535. package/dist/services/types.d.ts +106 -0
  536. package/dist/services/types.d.ts.map +1 -0
  537. package/dist/services/watchers.d.ts +95 -0
  538. package/dist/services/watchers.d.ts.map +1 -0
  539. package/dist/sops/compliance-checker.d.ts +83 -0
  540. package/dist/sops/compliance-checker.d.ts.map +1 -0
  541. package/dist/sops/compliance-checker.js +399 -0
  542. package/dist/sops/compliance-checker.js.map +1 -0
  543. package/dist/sops/gap-analyzer.d.ts +124 -0
  544. package/dist/sops/gap-analyzer.d.ts.map +1 -0
  545. package/dist/sops/gap-analyzer.js +313 -0
  546. package/dist/sops/gap-analyzer.js.map +1 -0
  547. package/dist/sops/index.d.ts +14 -0
  548. package/dist/sops/index.d.ts.map +1 -0
  549. package/dist/sops/overlay-manager.d.ts +115 -0
  550. package/dist/sops/overlay-manager.d.ts.map +1 -0
  551. package/dist/sops/overlay-manager.js +394 -0
  552. package/dist/sops/overlay-manager.js.map +1 -0
  553. package/dist/sops/registry.d.ts +73 -0
  554. package/dist/sops/registry.d.ts.map +1 -0
  555. package/dist/sops/registry.js +919 -0
  556. package/dist/sops/registry.js.map +1 -0
  557. package/dist/sops/types.d.ts +377 -0
  558. package/dist/sops/types.d.ts.map +1 -0
  559. package/dist/sops/types.js +46 -0
  560. package/dist/sops/types.js.map +1 -0
  561. package/dist/utils/error-recovery.d.ts +230 -0
  562. package/dist/utils/error-recovery.d.ts.map +1 -0
  563. package/dist/utils/error-recovery.js +228 -0
  564. package/dist/utils/error-recovery.js.map +1 -0
  565. package/dist/utils/error-taxonomy.d.ts +149 -0
  566. package/dist/utils/error-taxonomy.d.ts.map +1 -0
  567. package/dist/utils/error-taxonomy.js +260 -0
  568. package/dist/utils/error-taxonomy.js.map +1 -0
  569. package/dist/utils/index.d.ts +11 -0
  570. package/dist/utils/index.d.ts.map +1 -0
  571. package/dist/utils/logger.d.ts +139 -0
  572. package/dist/utils/logger.d.ts.map +1 -0
  573. package/dist/utils/logger.js +311 -0
  574. package/dist/utils/logger.js.map +1 -0
  575. package/dist/workflows/index.d.ts +11 -0
  576. package/dist/workflows/index.d.ts.map +1 -0
  577. package/dist/workflows/registry.d.ts +118 -0
  578. package/dist/workflows/registry.d.ts.map +1 -0
  579. package/dist/workflows/registry.js +575 -0
  580. package/dist/workflows/registry.js.map +1 -0
  581. package/dist/workflows/types.d.ts +322 -0
  582. package/dist/workflows/types.d.ts.map +1 -0
  583. package/dist/workflows/types.js +16 -0
  584. package/dist/workflows/types.js.map +1 -0
  585. package/package.json +1 -1
@@ -0,0 +1,522 @@
1
+ import { __exports as validate } from "../../../../../_virtual/index5.js";
2
+ import { __require as requireBoolSchema } from "./boolSchema.js";
3
+ import { __require as requireDataType } from "./dataType.js";
4
+ import { __require as requireApplicability } from "./applicability.js";
5
+ import { __require as requireDefaults } from "./defaults.js";
6
+ import { __require as requireKeyword } from "./keyword.js";
7
+ import { __require as requireSubschema } from "./subschema.js";
8
+ import { __require as requireCodegen } from "../codegen/index.js";
9
+ import { __require as requireNames } from "../names.js";
10
+ import { __require as requireResolve } from "../resolve.js";
11
+ import { __require as requireUtil } from "../util.js";
12
+ import { __require as requireErrors } from "../errors.js";
13
+ var hasRequiredValidate;
14
+ function requireValidate() {
15
+ if (hasRequiredValidate) return validate;
16
+ hasRequiredValidate = 1;
17
+ Object.defineProperty(validate, "__esModule", { value: true });
18
+ validate.getData = validate.KeywordCxt = validate.validateFunctionCode = void 0;
19
+ const boolSchema_1 = requireBoolSchema();
20
+ const dataType_1 = requireDataType();
21
+ const applicability_1 = requireApplicability();
22
+ const dataType_2 = requireDataType();
23
+ const defaults_1 = requireDefaults();
24
+ const keyword_1 = requireKeyword();
25
+ const subschema_1 = requireSubschema();
26
+ const codegen_1 = requireCodegen();
27
+ const names_1 = requireNames();
28
+ const resolve_1 = requireResolve();
29
+ const util_1 = requireUtil();
30
+ const errors_1 = requireErrors();
31
+ function validateFunctionCode(it) {
32
+ if (isSchemaObj(it)) {
33
+ checkKeywords(it);
34
+ if (schemaCxtHasRules(it)) {
35
+ topSchemaObjCode(it);
36
+ return;
37
+ }
38
+ }
39
+ validateFunction(it, () => (0, boolSchema_1.topBoolOrEmptySchema)(it));
40
+ }
41
+ validate.validateFunctionCode = validateFunctionCode;
42
+ function validateFunction({ gen, validateName, schema, schemaEnv, opts }, body) {
43
+ if (opts.code.es5) {
44
+ gen.func(validateName, (0, codegen_1._)`${names_1.default.data}, ${names_1.default.valCxt}`, schemaEnv.$async, () => {
45
+ gen.code((0, codegen_1._)`"use strict"; ${funcSourceUrl(schema, opts)}`);
46
+ destructureValCxtES5(gen, opts);
47
+ gen.code(body);
48
+ });
49
+ } else {
50
+ gen.func(validateName, (0, codegen_1._)`${names_1.default.data}, ${destructureValCxt(opts)}`, schemaEnv.$async, () => gen.code(funcSourceUrl(schema, opts)).code(body));
51
+ }
52
+ }
53
+ function destructureValCxt(opts) {
54
+ return (0, codegen_1._)`{${names_1.default.instancePath}="", ${names_1.default.parentData}, ${names_1.default.parentDataProperty}, ${names_1.default.rootData}=${names_1.default.data}${opts.dynamicRef ? (0, codegen_1._)`, ${names_1.default.dynamicAnchors}={}` : codegen_1.nil}}={}`;
55
+ }
56
+ function destructureValCxtES5(gen, opts) {
57
+ gen.if(names_1.default.valCxt, () => {
58
+ gen.var(names_1.default.instancePath, (0, codegen_1._)`${names_1.default.valCxt}.${names_1.default.instancePath}`);
59
+ gen.var(names_1.default.parentData, (0, codegen_1._)`${names_1.default.valCxt}.${names_1.default.parentData}`);
60
+ gen.var(names_1.default.parentDataProperty, (0, codegen_1._)`${names_1.default.valCxt}.${names_1.default.parentDataProperty}`);
61
+ gen.var(names_1.default.rootData, (0, codegen_1._)`${names_1.default.valCxt}.${names_1.default.rootData}`);
62
+ if (opts.dynamicRef)
63
+ gen.var(names_1.default.dynamicAnchors, (0, codegen_1._)`${names_1.default.valCxt}.${names_1.default.dynamicAnchors}`);
64
+ }, () => {
65
+ gen.var(names_1.default.instancePath, (0, codegen_1._)`""`);
66
+ gen.var(names_1.default.parentData, (0, codegen_1._)`undefined`);
67
+ gen.var(names_1.default.parentDataProperty, (0, codegen_1._)`undefined`);
68
+ gen.var(names_1.default.rootData, names_1.default.data);
69
+ if (opts.dynamicRef)
70
+ gen.var(names_1.default.dynamicAnchors, (0, codegen_1._)`{}`);
71
+ });
72
+ }
73
+ function topSchemaObjCode(it) {
74
+ const { schema, opts, gen } = it;
75
+ validateFunction(it, () => {
76
+ if (opts.$comment && schema.$comment)
77
+ commentKeyword(it);
78
+ checkNoDefault(it);
79
+ gen.let(names_1.default.vErrors, null);
80
+ gen.let(names_1.default.errors, 0);
81
+ if (opts.unevaluated)
82
+ resetEvaluated(it);
83
+ typeAndKeywords(it);
84
+ returnResults(it);
85
+ });
86
+ return;
87
+ }
88
+ function resetEvaluated(it) {
89
+ const { gen, validateName } = it;
90
+ it.evaluated = gen.const("evaluated", (0, codegen_1._)`${validateName}.evaluated`);
91
+ gen.if((0, codegen_1._)`${it.evaluated}.dynamicProps`, () => gen.assign((0, codegen_1._)`${it.evaluated}.props`, (0, codegen_1._)`undefined`));
92
+ gen.if((0, codegen_1._)`${it.evaluated}.dynamicItems`, () => gen.assign((0, codegen_1._)`${it.evaluated}.items`, (0, codegen_1._)`undefined`));
93
+ }
94
+ function funcSourceUrl(schema, opts) {
95
+ const schId = typeof schema == "object" && schema[opts.schemaId];
96
+ return schId && (opts.code.source || opts.code.process) ? (0, codegen_1._)`/*# sourceURL=${schId} */` : codegen_1.nil;
97
+ }
98
+ function subschemaCode(it, valid) {
99
+ if (isSchemaObj(it)) {
100
+ checkKeywords(it);
101
+ if (schemaCxtHasRules(it)) {
102
+ subSchemaObjCode(it, valid);
103
+ return;
104
+ }
105
+ }
106
+ (0, boolSchema_1.boolOrEmptySchema)(it, valid);
107
+ }
108
+ function schemaCxtHasRules({ schema, self }) {
109
+ if (typeof schema == "boolean")
110
+ return !schema;
111
+ for (const key in schema)
112
+ if (self.RULES.all[key])
113
+ return true;
114
+ return false;
115
+ }
116
+ function isSchemaObj(it) {
117
+ return typeof it.schema != "boolean";
118
+ }
119
+ function subSchemaObjCode(it, valid) {
120
+ const { schema, gen, opts } = it;
121
+ if (opts.$comment && schema.$comment)
122
+ commentKeyword(it);
123
+ updateContext(it);
124
+ checkAsyncSchema(it);
125
+ const errsCount = gen.const("_errs", names_1.default.errors);
126
+ typeAndKeywords(it, errsCount);
127
+ gen.var(valid, (0, codegen_1._)`${errsCount} === ${names_1.default.errors}`);
128
+ }
129
+ function checkKeywords(it) {
130
+ (0, util_1.checkUnknownRules)(it);
131
+ checkRefsAndKeywords(it);
132
+ }
133
+ function typeAndKeywords(it, errsCount) {
134
+ if (it.opts.jtd)
135
+ return schemaKeywords(it, [], false, errsCount);
136
+ const types = (0, dataType_1.getSchemaTypes)(it.schema);
137
+ const checkedTypes = (0, dataType_1.coerceAndCheckDataType)(it, types);
138
+ schemaKeywords(it, types, !checkedTypes, errsCount);
139
+ }
140
+ function checkRefsAndKeywords(it) {
141
+ const { schema, errSchemaPath, opts, self } = it;
142
+ if (schema.$ref && opts.ignoreKeywordsWithRef && (0, util_1.schemaHasRulesButRef)(schema, self.RULES)) {
143
+ self.logger.warn(`$ref: keywords ignored in schema at path "${errSchemaPath}"`);
144
+ }
145
+ }
146
+ function checkNoDefault(it) {
147
+ const { schema, opts } = it;
148
+ if (schema.default !== void 0 && opts.useDefaults && opts.strictSchema) {
149
+ (0, util_1.checkStrictMode)(it, "default is ignored in the schema root");
150
+ }
151
+ }
152
+ function updateContext(it) {
153
+ const schId = it.schema[it.opts.schemaId];
154
+ if (schId)
155
+ it.baseId = (0, resolve_1.resolveUrl)(it.opts.uriResolver, it.baseId, schId);
156
+ }
157
+ function checkAsyncSchema(it) {
158
+ if (it.schema.$async && !it.schemaEnv.$async)
159
+ throw new Error("async schema in sync schema");
160
+ }
161
+ function commentKeyword({ gen, schemaEnv, schema, errSchemaPath, opts }) {
162
+ const msg = schema.$comment;
163
+ if (opts.$comment === true) {
164
+ gen.code((0, codegen_1._)`${names_1.default.self}.logger.log(${msg})`);
165
+ } else if (typeof opts.$comment == "function") {
166
+ const schemaPath = (0, codegen_1.str)`${errSchemaPath}/$comment`;
167
+ const rootName = gen.scopeValue("root", { ref: schemaEnv.root });
168
+ gen.code((0, codegen_1._)`${names_1.default.self}.opts.$comment(${msg}, ${schemaPath}, ${rootName}.schema)`);
169
+ }
170
+ }
171
+ function returnResults(it) {
172
+ const { gen, schemaEnv, validateName, ValidationError, opts } = it;
173
+ if (schemaEnv.$async) {
174
+ gen.if((0, codegen_1._)`${names_1.default.errors} === 0`, () => gen.return(names_1.default.data), () => gen.throw((0, codegen_1._)`new ${ValidationError}(${names_1.default.vErrors})`));
175
+ } else {
176
+ gen.assign((0, codegen_1._)`${validateName}.errors`, names_1.default.vErrors);
177
+ if (opts.unevaluated)
178
+ assignEvaluated(it);
179
+ gen.return((0, codegen_1._)`${names_1.default.errors} === 0`);
180
+ }
181
+ }
182
+ function assignEvaluated({ gen, evaluated, props, items }) {
183
+ if (props instanceof codegen_1.Name)
184
+ gen.assign((0, codegen_1._)`${evaluated}.props`, props);
185
+ if (items instanceof codegen_1.Name)
186
+ gen.assign((0, codegen_1._)`${evaluated}.items`, items);
187
+ }
188
+ function schemaKeywords(it, types, typeErrors, errsCount) {
189
+ const { gen, schema, data, allErrors, opts, self } = it;
190
+ const { RULES } = self;
191
+ if (schema.$ref && (opts.ignoreKeywordsWithRef || !(0, util_1.schemaHasRulesButRef)(schema, RULES))) {
192
+ gen.block(() => keywordCode(it, "$ref", RULES.all.$ref.definition));
193
+ return;
194
+ }
195
+ if (!opts.jtd)
196
+ checkStrictTypes(it, types);
197
+ gen.block(() => {
198
+ for (const group of RULES.rules)
199
+ groupKeywords(group);
200
+ groupKeywords(RULES.post);
201
+ });
202
+ function groupKeywords(group) {
203
+ if (!(0, applicability_1.shouldUseGroup)(schema, group))
204
+ return;
205
+ if (group.type) {
206
+ gen.if((0, dataType_2.checkDataType)(group.type, data, opts.strictNumbers));
207
+ iterateKeywords(it, group);
208
+ if (types.length === 1 && types[0] === group.type && typeErrors) {
209
+ gen.else();
210
+ (0, dataType_2.reportTypeError)(it);
211
+ }
212
+ gen.endIf();
213
+ } else {
214
+ iterateKeywords(it, group);
215
+ }
216
+ if (!allErrors)
217
+ gen.if((0, codegen_1._)`${names_1.default.errors} === ${errsCount || 0}`);
218
+ }
219
+ }
220
+ function iterateKeywords(it, group) {
221
+ const { gen, schema, opts: { useDefaults } } = it;
222
+ if (useDefaults)
223
+ (0, defaults_1.assignDefaults)(it, group.type);
224
+ gen.block(() => {
225
+ for (const rule of group.rules) {
226
+ if ((0, applicability_1.shouldUseRule)(schema, rule)) {
227
+ keywordCode(it, rule.keyword, rule.definition, group.type);
228
+ }
229
+ }
230
+ });
231
+ }
232
+ function checkStrictTypes(it, types) {
233
+ if (it.schemaEnv.meta || !it.opts.strictTypes)
234
+ return;
235
+ checkContextTypes(it, types);
236
+ if (!it.opts.allowUnionTypes)
237
+ checkMultipleTypes(it, types);
238
+ checkKeywordTypes(it, it.dataTypes);
239
+ }
240
+ function checkContextTypes(it, types) {
241
+ if (!types.length)
242
+ return;
243
+ if (!it.dataTypes.length) {
244
+ it.dataTypes = types;
245
+ return;
246
+ }
247
+ types.forEach((t) => {
248
+ if (!includesType(it.dataTypes, t)) {
249
+ strictTypesError(it, `type "${t}" not allowed by context "${it.dataTypes.join(",")}"`);
250
+ }
251
+ });
252
+ narrowSchemaTypes(it, types);
253
+ }
254
+ function checkMultipleTypes(it, ts) {
255
+ if (ts.length > 1 && !(ts.length === 2 && ts.includes("null"))) {
256
+ strictTypesError(it, "use allowUnionTypes to allow union type keyword");
257
+ }
258
+ }
259
+ function checkKeywordTypes(it, ts) {
260
+ const rules = it.self.RULES.all;
261
+ for (const keyword in rules) {
262
+ const rule = rules[keyword];
263
+ if (typeof rule == "object" && (0, applicability_1.shouldUseRule)(it.schema, rule)) {
264
+ const { type } = rule.definition;
265
+ if (type.length && !type.some((t) => hasApplicableType(ts, t))) {
266
+ strictTypesError(it, `missing type "${type.join(",")}" for keyword "${keyword}"`);
267
+ }
268
+ }
269
+ }
270
+ }
271
+ function hasApplicableType(schTs, kwdT) {
272
+ return schTs.includes(kwdT) || kwdT === "number" && schTs.includes("integer");
273
+ }
274
+ function includesType(ts, t) {
275
+ return ts.includes(t) || t === "integer" && ts.includes("number");
276
+ }
277
+ function narrowSchemaTypes(it, withTypes) {
278
+ const ts = [];
279
+ for (const t of it.dataTypes) {
280
+ if (includesType(withTypes, t))
281
+ ts.push(t);
282
+ else if (withTypes.includes("integer") && t === "number")
283
+ ts.push("integer");
284
+ }
285
+ it.dataTypes = ts;
286
+ }
287
+ function strictTypesError(it, msg) {
288
+ const schemaPath = it.schemaEnv.baseId + it.errSchemaPath;
289
+ msg += ` at "${schemaPath}" (strictTypes)`;
290
+ (0, util_1.checkStrictMode)(it, msg, it.opts.strictTypes);
291
+ }
292
+ class KeywordCxt {
293
+ constructor(it, def, keyword) {
294
+ (0, keyword_1.validateKeywordUsage)(it, def, keyword);
295
+ this.gen = it.gen;
296
+ this.allErrors = it.allErrors;
297
+ this.keyword = keyword;
298
+ this.data = it.data;
299
+ this.schema = it.schema[keyword];
300
+ this.$data = def.$data && it.opts.$data && this.schema && this.schema.$data;
301
+ this.schemaValue = (0, util_1.schemaRefOrVal)(it, this.schema, keyword, this.$data);
302
+ this.schemaType = def.schemaType;
303
+ this.parentSchema = it.schema;
304
+ this.params = {};
305
+ this.it = it;
306
+ this.def = def;
307
+ if (this.$data) {
308
+ this.schemaCode = it.gen.const("vSchema", getData(this.$data, it));
309
+ } else {
310
+ this.schemaCode = this.schemaValue;
311
+ if (!(0, keyword_1.validSchemaType)(this.schema, def.schemaType, def.allowUndefined)) {
312
+ throw new Error(`${keyword} value must be ${JSON.stringify(def.schemaType)}`);
313
+ }
314
+ }
315
+ if ("code" in def ? def.trackErrors : def.errors !== false) {
316
+ this.errsCount = it.gen.const("_errs", names_1.default.errors);
317
+ }
318
+ }
319
+ result(condition, successAction, failAction) {
320
+ this.failResult((0, codegen_1.not)(condition), successAction, failAction);
321
+ }
322
+ failResult(condition, successAction, failAction) {
323
+ this.gen.if(condition);
324
+ if (failAction)
325
+ failAction();
326
+ else
327
+ this.error();
328
+ if (successAction) {
329
+ this.gen.else();
330
+ successAction();
331
+ if (this.allErrors)
332
+ this.gen.endIf();
333
+ } else {
334
+ if (this.allErrors)
335
+ this.gen.endIf();
336
+ else
337
+ this.gen.else();
338
+ }
339
+ }
340
+ pass(condition, failAction) {
341
+ this.failResult((0, codegen_1.not)(condition), void 0, failAction);
342
+ }
343
+ fail(condition) {
344
+ if (condition === void 0) {
345
+ this.error();
346
+ if (!this.allErrors)
347
+ this.gen.if(false);
348
+ return;
349
+ }
350
+ this.gen.if(condition);
351
+ this.error();
352
+ if (this.allErrors)
353
+ this.gen.endIf();
354
+ else
355
+ this.gen.else();
356
+ }
357
+ fail$data(condition) {
358
+ if (!this.$data)
359
+ return this.fail(condition);
360
+ const { schemaCode } = this;
361
+ this.fail((0, codegen_1._)`${schemaCode} !== undefined && (${(0, codegen_1.or)(this.invalid$data(), condition)})`);
362
+ }
363
+ error(append, errorParams, errorPaths) {
364
+ if (errorParams) {
365
+ this.setParams(errorParams);
366
+ this._error(append, errorPaths);
367
+ this.setParams({});
368
+ return;
369
+ }
370
+ this._error(append, errorPaths);
371
+ }
372
+ _error(append, errorPaths) {
373
+ (append ? errors_1.reportExtraError : errors_1.reportError)(this, this.def.error, errorPaths);
374
+ }
375
+ $dataError() {
376
+ (0, errors_1.reportError)(this, this.def.$dataError || errors_1.keyword$DataError);
377
+ }
378
+ reset() {
379
+ if (this.errsCount === void 0)
380
+ throw new Error('add "trackErrors" to keyword definition');
381
+ (0, errors_1.resetErrorsCount)(this.gen, this.errsCount);
382
+ }
383
+ ok(cond) {
384
+ if (!this.allErrors)
385
+ this.gen.if(cond);
386
+ }
387
+ setParams(obj, assign) {
388
+ if (assign)
389
+ Object.assign(this.params, obj);
390
+ else
391
+ this.params = obj;
392
+ }
393
+ block$data(valid, codeBlock, $dataValid = codegen_1.nil) {
394
+ this.gen.block(() => {
395
+ this.check$data(valid, $dataValid);
396
+ codeBlock();
397
+ });
398
+ }
399
+ check$data(valid = codegen_1.nil, $dataValid = codegen_1.nil) {
400
+ if (!this.$data)
401
+ return;
402
+ const { gen, schemaCode, schemaType, def } = this;
403
+ gen.if((0, codegen_1.or)((0, codegen_1._)`${schemaCode} === undefined`, $dataValid));
404
+ if (valid !== codegen_1.nil)
405
+ gen.assign(valid, true);
406
+ if (schemaType.length || def.validateSchema) {
407
+ gen.elseIf(this.invalid$data());
408
+ this.$dataError();
409
+ if (valid !== codegen_1.nil)
410
+ gen.assign(valid, false);
411
+ }
412
+ gen.else();
413
+ }
414
+ invalid$data() {
415
+ const { gen, schemaCode, schemaType, def, it } = this;
416
+ return (0, codegen_1.or)(wrong$DataType(), invalid$DataSchema());
417
+ function wrong$DataType() {
418
+ if (schemaType.length) {
419
+ if (!(schemaCode instanceof codegen_1.Name))
420
+ throw new Error("ajv implementation error");
421
+ const st = Array.isArray(schemaType) ? schemaType : [schemaType];
422
+ return (0, codegen_1._)`${(0, dataType_2.checkDataTypes)(st, schemaCode, it.opts.strictNumbers, dataType_2.DataType.Wrong)}`;
423
+ }
424
+ return codegen_1.nil;
425
+ }
426
+ function invalid$DataSchema() {
427
+ if (def.validateSchema) {
428
+ const validateSchemaRef = gen.scopeValue("validate$data", { ref: def.validateSchema });
429
+ return (0, codegen_1._)`!${validateSchemaRef}(${schemaCode})`;
430
+ }
431
+ return codegen_1.nil;
432
+ }
433
+ }
434
+ subschema(appl, valid) {
435
+ const subschema = (0, subschema_1.getSubschema)(this.it, appl);
436
+ (0, subschema_1.extendSubschemaData)(subschema, this.it, appl);
437
+ (0, subschema_1.extendSubschemaMode)(subschema, appl);
438
+ const nextContext = { ...this.it, ...subschema, items: void 0, props: void 0 };
439
+ subschemaCode(nextContext, valid);
440
+ return nextContext;
441
+ }
442
+ mergeEvaluated(schemaCxt, toName) {
443
+ const { it, gen } = this;
444
+ if (!it.opts.unevaluated)
445
+ return;
446
+ if (it.props !== true && schemaCxt.props !== void 0) {
447
+ it.props = util_1.mergeEvaluated.props(gen, schemaCxt.props, it.props, toName);
448
+ }
449
+ if (it.items !== true && schemaCxt.items !== void 0) {
450
+ it.items = util_1.mergeEvaluated.items(gen, schemaCxt.items, it.items, toName);
451
+ }
452
+ }
453
+ mergeValidEvaluated(schemaCxt, valid) {
454
+ const { it, gen } = this;
455
+ if (it.opts.unevaluated && (it.props !== true || it.items !== true)) {
456
+ gen.if(valid, () => this.mergeEvaluated(schemaCxt, codegen_1.Name));
457
+ return true;
458
+ }
459
+ }
460
+ }
461
+ validate.KeywordCxt = KeywordCxt;
462
+ function keywordCode(it, keyword, def, ruleType) {
463
+ const cxt = new KeywordCxt(it, def, keyword);
464
+ if ("code" in def) {
465
+ def.code(cxt, ruleType);
466
+ } else if (cxt.$data && def.validate) {
467
+ (0, keyword_1.funcKeywordCode)(cxt, def);
468
+ } else if ("macro" in def) {
469
+ (0, keyword_1.macroKeywordCode)(cxt, def);
470
+ } else if (def.compile || def.validate) {
471
+ (0, keyword_1.funcKeywordCode)(cxt, def);
472
+ }
473
+ }
474
+ const JSON_POINTER = /^\/(?:[^~]|~0|~1)*$/;
475
+ const RELATIVE_JSON_POINTER = /^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;
476
+ function getData($data, { dataLevel, dataNames, dataPathArr }) {
477
+ let jsonPointer;
478
+ let data;
479
+ if ($data === "")
480
+ return names_1.default.rootData;
481
+ if ($data[0] === "/") {
482
+ if (!JSON_POINTER.test($data))
483
+ throw new Error(`Invalid JSON-pointer: ${$data}`);
484
+ jsonPointer = $data;
485
+ data = names_1.default.rootData;
486
+ } else {
487
+ const matches = RELATIVE_JSON_POINTER.exec($data);
488
+ if (!matches)
489
+ throw new Error(`Invalid JSON-pointer: ${$data}`);
490
+ const up = +matches[1];
491
+ jsonPointer = matches[2];
492
+ if (jsonPointer === "#") {
493
+ if (up >= dataLevel)
494
+ throw new Error(errorMsg("property/index", up));
495
+ return dataPathArr[dataLevel - up];
496
+ }
497
+ if (up > dataLevel)
498
+ throw new Error(errorMsg("data", up));
499
+ data = dataNames[dataLevel - up];
500
+ if (!jsonPointer)
501
+ return data;
502
+ }
503
+ let expr = data;
504
+ const segments = jsonPointer.split("/");
505
+ for (const segment of segments) {
506
+ if (segment) {
507
+ data = (0, codegen_1._)`${data}${(0, codegen_1.getProperty)((0, util_1.unescapeJsonPointer)(segment))}`;
508
+ expr = (0, codegen_1._)`${expr} && ${data}`;
509
+ }
510
+ }
511
+ return expr;
512
+ function errorMsg(pointerType, up) {
513
+ return `Cannot access ${pointerType} ${up} levels up, current level is ${dataLevel}`;
514
+ }
515
+ }
516
+ validate.getData = getData;
517
+ return validate;
518
+ }
519
+ export {
520
+ requireValidate as __require
521
+ };
522
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../../../node_modules/ajv/dist/compile/validate/index.js"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getData = exports.KeywordCxt = exports.validateFunctionCode = void 0;\nconst boolSchema_1 = require(\"./boolSchema\");\nconst dataType_1 = require(\"./dataType\");\nconst applicability_1 = require(\"./applicability\");\nconst dataType_2 = require(\"./dataType\");\nconst defaults_1 = require(\"./defaults\");\nconst keyword_1 = require(\"./keyword\");\nconst subschema_1 = require(\"./subschema\");\nconst codegen_1 = require(\"../codegen\");\nconst names_1 = require(\"../names\");\nconst resolve_1 = require(\"../resolve\");\nconst util_1 = require(\"../util\");\nconst errors_1 = require(\"../errors\");\n// schema compilation - generates validation function, subschemaCode (below) is used for subschemas\nfunction validateFunctionCode(it) {\n if (isSchemaObj(it)) {\n checkKeywords(it);\n if (schemaCxtHasRules(it)) {\n topSchemaObjCode(it);\n return;\n }\n }\n validateFunction(it, () => (0, boolSchema_1.topBoolOrEmptySchema)(it));\n}\nexports.validateFunctionCode = validateFunctionCode;\nfunction validateFunction({ gen, validateName, schema, schemaEnv, opts }, body) {\n if (opts.code.es5) {\n gen.func(validateName, (0, codegen_1._) `${names_1.default.data}, ${names_1.default.valCxt}`, schemaEnv.$async, () => {\n gen.code((0, codegen_1._) `\"use strict\"; ${funcSourceUrl(schema, opts)}`);\n destructureValCxtES5(gen, opts);\n gen.code(body);\n });\n }\n else {\n gen.func(validateName, (0, codegen_1._) `${names_1.default.data}, ${destructureValCxt(opts)}`, schemaEnv.$async, () => gen.code(funcSourceUrl(schema, opts)).code(body));\n }\n}\nfunction destructureValCxt(opts) {\n return (0, codegen_1._) `{${names_1.default.instancePath}=\"\", ${names_1.default.parentData}, ${names_1.default.parentDataProperty}, ${names_1.default.rootData}=${names_1.default.data}${opts.dynamicRef ? (0, codegen_1._) `, ${names_1.default.dynamicAnchors}={}` : codegen_1.nil}}={}`;\n}\nfunction destructureValCxtES5(gen, opts) {\n gen.if(names_1.default.valCxt, () => {\n gen.var(names_1.default.instancePath, (0, codegen_1._) `${names_1.default.valCxt}.${names_1.default.instancePath}`);\n gen.var(names_1.default.parentData, (0, codegen_1._) `${names_1.default.valCxt}.${names_1.default.parentData}`);\n gen.var(names_1.default.parentDataProperty, (0, codegen_1._) `${names_1.default.valCxt}.${names_1.default.parentDataProperty}`);\n gen.var(names_1.default.rootData, (0, codegen_1._) `${names_1.default.valCxt}.${names_1.default.rootData}`);\n if (opts.dynamicRef)\n gen.var(names_1.default.dynamicAnchors, (0, codegen_1._) `${names_1.default.valCxt}.${names_1.default.dynamicAnchors}`);\n }, () => {\n gen.var(names_1.default.instancePath, (0, codegen_1._) `\"\"`);\n gen.var(names_1.default.parentData, (0, codegen_1._) `undefined`);\n gen.var(names_1.default.parentDataProperty, (0, codegen_1._) `undefined`);\n gen.var(names_1.default.rootData, names_1.default.data);\n if (opts.dynamicRef)\n gen.var(names_1.default.dynamicAnchors, (0, codegen_1._) `{}`);\n });\n}\nfunction topSchemaObjCode(it) {\n const { schema, opts, gen } = it;\n validateFunction(it, () => {\n if (opts.$comment && schema.$comment)\n commentKeyword(it);\n checkNoDefault(it);\n gen.let(names_1.default.vErrors, null);\n gen.let(names_1.default.errors, 0);\n if (opts.unevaluated)\n resetEvaluated(it);\n typeAndKeywords(it);\n returnResults(it);\n });\n return;\n}\nfunction resetEvaluated(it) {\n // TODO maybe some hook to execute it in the end to check whether props/items are Name, as in assignEvaluated\n const { gen, validateName } = it;\n it.evaluated = gen.const(\"evaluated\", (0, codegen_1._) `${validateName}.evaluated`);\n gen.if((0, codegen_1._) `${it.evaluated}.dynamicProps`, () => gen.assign((0, codegen_1._) `${it.evaluated}.props`, (0, codegen_1._) `undefined`));\n gen.if((0, codegen_1._) `${it.evaluated}.dynamicItems`, () => gen.assign((0, codegen_1._) `${it.evaluated}.items`, (0, codegen_1._) `undefined`));\n}\nfunction funcSourceUrl(schema, opts) {\n const schId = typeof schema == \"object\" && schema[opts.schemaId];\n return schId && (opts.code.source || opts.code.process) ? (0, codegen_1._) `/*# sourceURL=${schId} */` : codegen_1.nil;\n}\n// schema compilation - this function is used recursively to generate code for sub-schemas\nfunction subschemaCode(it, valid) {\n if (isSchemaObj(it)) {\n checkKeywords(it);\n if (schemaCxtHasRules(it)) {\n subSchemaObjCode(it, valid);\n return;\n }\n }\n (0, boolSchema_1.boolOrEmptySchema)(it, valid);\n}\nfunction schemaCxtHasRules({ schema, self }) {\n if (typeof schema == \"boolean\")\n return !schema;\n for (const key in schema)\n if (self.RULES.all[key])\n return true;\n return false;\n}\nfunction isSchemaObj(it) {\n return typeof it.schema != \"boolean\";\n}\nfunction subSchemaObjCode(it, valid) {\n const { schema, gen, opts } = it;\n if (opts.$comment && schema.$comment)\n commentKeyword(it);\n updateContext(it);\n checkAsyncSchema(it);\n const errsCount = gen.const(\"_errs\", names_1.default.errors);\n typeAndKeywords(it, errsCount);\n // TODO var\n gen.var(valid, (0, codegen_1._) `${errsCount} === ${names_1.default.errors}`);\n}\nfunction checkKeywords(it) {\n (0, util_1.checkUnknownRules)(it);\n checkRefsAndKeywords(it);\n}\nfunction typeAndKeywords(it, errsCount) {\n if (it.opts.jtd)\n return schemaKeywords(it, [], false, errsCount);\n const types = (0, dataType_1.getSchemaTypes)(it.schema);\n const checkedTypes = (0, dataType_1.coerceAndCheckDataType)(it, types);\n schemaKeywords(it, types, !checkedTypes, errsCount);\n}\nfunction checkRefsAndKeywords(it) {\n const { schema, errSchemaPath, opts, self } = it;\n if (schema.$ref && opts.ignoreKeywordsWithRef && (0, util_1.schemaHasRulesButRef)(schema, self.RULES)) {\n self.logger.warn(`$ref: keywords ignored in schema at path \"${errSchemaPath}\"`);\n }\n}\nfunction checkNoDefault(it) {\n const { schema, opts } = it;\n if (schema.default !== undefined && opts.useDefaults && opts.strictSchema) {\n (0, util_1.checkStrictMode)(it, \"default is ignored in the schema root\");\n }\n}\nfunction updateContext(it) {\n const schId = it.schema[it.opts.schemaId];\n if (schId)\n it.baseId = (0, resolve_1.resolveUrl)(it.opts.uriResolver, it.baseId, schId);\n}\nfunction checkAsyncSchema(it) {\n if (it.schema.$async && !it.schemaEnv.$async)\n throw new Error(\"async schema in sync schema\");\n}\nfunction commentKeyword({ gen, schemaEnv, schema, errSchemaPath, opts }) {\n const msg = schema.$comment;\n if (opts.$comment === true) {\n gen.code((0, codegen_1._) `${names_1.default.self}.logger.log(${msg})`);\n }\n else if (typeof opts.$comment == \"function\") {\n const schemaPath = (0, codegen_1.str) `${errSchemaPath}/$comment`;\n const rootName = gen.scopeValue(\"root\", { ref: schemaEnv.root });\n gen.code((0, codegen_1._) `${names_1.default.self}.opts.$comment(${msg}, ${schemaPath}, ${rootName}.schema)`);\n }\n}\nfunction returnResults(it) {\n const { gen, schemaEnv, validateName, ValidationError, opts } = it;\n if (schemaEnv.$async) {\n // TODO assign unevaluated\n gen.if((0, codegen_1._) `${names_1.default.errors} === 0`, () => gen.return(names_1.default.data), () => gen.throw((0, codegen_1._) `new ${ValidationError}(${names_1.default.vErrors})`));\n }\n else {\n gen.assign((0, codegen_1._) `${validateName}.errors`, names_1.default.vErrors);\n if (opts.unevaluated)\n assignEvaluated(it);\n gen.return((0, codegen_1._) `${names_1.default.errors} === 0`);\n }\n}\nfunction assignEvaluated({ gen, evaluated, props, items }) {\n if (props instanceof codegen_1.Name)\n gen.assign((0, codegen_1._) `${evaluated}.props`, props);\n if (items instanceof codegen_1.Name)\n gen.assign((0, codegen_1._) `${evaluated}.items`, items);\n}\nfunction schemaKeywords(it, types, typeErrors, errsCount) {\n const { gen, schema, data, allErrors, opts, self } = it;\n const { RULES } = self;\n if (schema.$ref && (opts.ignoreKeywordsWithRef || !(0, util_1.schemaHasRulesButRef)(schema, RULES))) {\n gen.block(() => keywordCode(it, \"$ref\", RULES.all.$ref.definition)); // TODO typecast\n return;\n }\n if (!opts.jtd)\n checkStrictTypes(it, types);\n gen.block(() => {\n for (const group of RULES.rules)\n groupKeywords(group);\n groupKeywords(RULES.post);\n });\n function groupKeywords(group) {\n if (!(0, applicability_1.shouldUseGroup)(schema, group))\n return;\n if (group.type) {\n gen.if((0, dataType_2.checkDataType)(group.type, data, opts.strictNumbers));\n iterateKeywords(it, group);\n if (types.length === 1 && types[0] === group.type && typeErrors) {\n gen.else();\n (0, dataType_2.reportTypeError)(it);\n }\n gen.endIf();\n }\n else {\n iterateKeywords(it, group);\n }\n // TODO make it \"ok\" call?\n if (!allErrors)\n gen.if((0, codegen_1._) `${names_1.default.errors} === ${errsCount || 0}`);\n }\n}\nfunction iterateKeywords(it, group) {\n const { gen, schema, opts: { useDefaults }, } = it;\n if (useDefaults)\n (0, defaults_1.assignDefaults)(it, group.type);\n gen.block(() => {\n for (const rule of group.rules) {\n if ((0, applicability_1.shouldUseRule)(schema, rule)) {\n keywordCode(it, rule.keyword, rule.definition, group.type);\n }\n }\n });\n}\nfunction checkStrictTypes(it, types) {\n if (it.schemaEnv.meta || !it.opts.strictTypes)\n return;\n checkContextTypes(it, types);\n if (!it.opts.allowUnionTypes)\n checkMultipleTypes(it, types);\n checkKeywordTypes(it, it.dataTypes);\n}\nfunction checkContextTypes(it, types) {\n if (!types.length)\n return;\n if (!it.dataTypes.length) {\n it.dataTypes = types;\n return;\n }\n types.forEach((t) => {\n if (!includesType(it.dataTypes, t)) {\n strictTypesError(it, `type \"${t}\" not allowed by context \"${it.dataTypes.join(\",\")}\"`);\n }\n });\n narrowSchemaTypes(it, types);\n}\nfunction checkMultipleTypes(it, ts) {\n if (ts.length > 1 && !(ts.length === 2 && ts.includes(\"null\"))) {\n strictTypesError(it, \"use allowUnionTypes to allow union type keyword\");\n }\n}\nfunction checkKeywordTypes(it, ts) {\n const rules = it.self.RULES.all;\n for (const keyword in rules) {\n const rule = rules[keyword];\n if (typeof rule == \"object\" && (0, applicability_1.shouldUseRule)(it.schema, rule)) {\n const { type } = rule.definition;\n if (type.length && !type.some((t) => hasApplicableType(ts, t))) {\n strictTypesError(it, `missing type \"${type.join(\",\")}\" for keyword \"${keyword}\"`);\n }\n }\n }\n}\nfunction hasApplicableType(schTs, kwdT) {\n return schTs.includes(kwdT) || (kwdT === \"number\" && schTs.includes(\"integer\"));\n}\nfunction includesType(ts, t) {\n return ts.includes(t) || (t === \"integer\" && ts.includes(\"number\"));\n}\nfunction narrowSchemaTypes(it, withTypes) {\n const ts = [];\n for (const t of it.dataTypes) {\n if (includesType(withTypes, t))\n ts.push(t);\n else if (withTypes.includes(\"integer\") && t === \"number\")\n ts.push(\"integer\");\n }\n it.dataTypes = ts;\n}\nfunction strictTypesError(it, msg) {\n const schemaPath = it.schemaEnv.baseId + it.errSchemaPath;\n msg += ` at \"${schemaPath}\" (strictTypes)`;\n (0, util_1.checkStrictMode)(it, msg, it.opts.strictTypes);\n}\nclass KeywordCxt {\n constructor(it, def, keyword) {\n (0, keyword_1.validateKeywordUsage)(it, def, keyword);\n this.gen = it.gen;\n this.allErrors = it.allErrors;\n this.keyword = keyword;\n this.data = it.data;\n this.schema = it.schema[keyword];\n this.$data = def.$data && it.opts.$data && this.schema && this.schema.$data;\n this.schemaValue = (0, util_1.schemaRefOrVal)(it, this.schema, keyword, this.$data);\n this.schemaType = def.schemaType;\n this.parentSchema = it.schema;\n this.params = {};\n this.it = it;\n this.def = def;\n if (this.$data) {\n this.schemaCode = it.gen.const(\"vSchema\", getData(this.$data, it));\n }\n else {\n this.schemaCode = this.schemaValue;\n if (!(0, keyword_1.validSchemaType)(this.schema, def.schemaType, def.allowUndefined)) {\n throw new Error(`${keyword} value must be ${JSON.stringify(def.schemaType)}`);\n }\n }\n if (\"code\" in def ? def.trackErrors : def.errors !== false) {\n this.errsCount = it.gen.const(\"_errs\", names_1.default.errors);\n }\n }\n result(condition, successAction, failAction) {\n this.failResult((0, codegen_1.not)(condition), successAction, failAction);\n }\n failResult(condition, successAction, failAction) {\n this.gen.if(condition);\n if (failAction)\n failAction();\n else\n this.error();\n if (successAction) {\n this.gen.else();\n successAction();\n if (this.allErrors)\n this.gen.endIf();\n }\n else {\n if (this.allErrors)\n this.gen.endIf();\n else\n this.gen.else();\n }\n }\n pass(condition, failAction) {\n this.failResult((0, codegen_1.not)(condition), undefined, failAction);\n }\n fail(condition) {\n if (condition === undefined) {\n this.error();\n if (!this.allErrors)\n this.gen.if(false); // this branch will be removed by gen.optimize\n return;\n }\n this.gen.if(condition);\n this.error();\n if (this.allErrors)\n this.gen.endIf();\n else\n this.gen.else();\n }\n fail$data(condition) {\n if (!this.$data)\n return this.fail(condition);\n const { schemaCode } = this;\n this.fail((0, codegen_1._) `${schemaCode} !== undefined && (${(0, codegen_1.or)(this.invalid$data(), condition)})`);\n }\n error(append, errorParams, errorPaths) {\n if (errorParams) {\n this.setParams(errorParams);\n this._error(append, errorPaths);\n this.setParams({});\n return;\n }\n this._error(append, errorPaths);\n }\n _error(append, errorPaths) {\n ;\n (append ? errors_1.reportExtraError : errors_1.reportError)(this, this.def.error, errorPaths);\n }\n $dataError() {\n (0, errors_1.reportError)(this, this.def.$dataError || errors_1.keyword$DataError);\n }\n reset() {\n if (this.errsCount === undefined)\n throw new Error('add \"trackErrors\" to keyword definition');\n (0, errors_1.resetErrorsCount)(this.gen, this.errsCount);\n }\n ok(cond) {\n if (!this.allErrors)\n this.gen.if(cond);\n }\n setParams(obj, assign) {\n if (assign)\n Object.assign(this.params, obj);\n else\n this.params = obj;\n }\n block$data(valid, codeBlock, $dataValid = codegen_1.nil) {\n this.gen.block(() => {\n this.check$data(valid, $dataValid);\n codeBlock();\n });\n }\n check$data(valid = codegen_1.nil, $dataValid = codegen_1.nil) {\n if (!this.$data)\n return;\n const { gen, schemaCode, schemaType, def } = this;\n gen.if((0, codegen_1.or)((0, codegen_1._) `${schemaCode} === undefined`, $dataValid));\n if (valid !== codegen_1.nil)\n gen.assign(valid, true);\n if (schemaType.length || def.validateSchema) {\n gen.elseIf(this.invalid$data());\n this.$dataError();\n if (valid !== codegen_1.nil)\n gen.assign(valid, false);\n }\n gen.else();\n }\n invalid$data() {\n const { gen, schemaCode, schemaType, def, it } = this;\n return (0, codegen_1.or)(wrong$DataType(), invalid$DataSchema());\n function wrong$DataType() {\n if (schemaType.length) {\n /* istanbul ignore if */\n if (!(schemaCode instanceof codegen_1.Name))\n throw new Error(\"ajv implementation error\");\n const st = Array.isArray(schemaType) ? schemaType : [schemaType];\n return (0, codegen_1._) `${(0, dataType_2.checkDataTypes)(st, schemaCode, it.opts.strictNumbers, dataType_2.DataType.Wrong)}`;\n }\n return codegen_1.nil;\n }\n function invalid$DataSchema() {\n if (def.validateSchema) {\n const validateSchemaRef = gen.scopeValue(\"validate$data\", { ref: def.validateSchema }); // TODO value.code for standalone\n return (0, codegen_1._) `!${validateSchemaRef}(${schemaCode})`;\n }\n return codegen_1.nil;\n }\n }\n subschema(appl, valid) {\n const subschema = (0, subschema_1.getSubschema)(this.it, appl);\n (0, subschema_1.extendSubschemaData)(subschema, this.it, appl);\n (0, subschema_1.extendSubschemaMode)(subschema, appl);\n const nextContext = { ...this.it, ...subschema, items: undefined, props: undefined };\n subschemaCode(nextContext, valid);\n return nextContext;\n }\n mergeEvaluated(schemaCxt, toName) {\n const { it, gen } = this;\n if (!it.opts.unevaluated)\n return;\n if (it.props !== true && schemaCxt.props !== undefined) {\n it.props = util_1.mergeEvaluated.props(gen, schemaCxt.props, it.props, toName);\n }\n if (it.items !== true && schemaCxt.items !== undefined) {\n it.items = util_1.mergeEvaluated.items(gen, schemaCxt.items, it.items, toName);\n }\n }\n mergeValidEvaluated(schemaCxt, valid) {\n const { it, gen } = this;\n if (it.opts.unevaluated && (it.props !== true || it.items !== true)) {\n gen.if(valid, () => this.mergeEvaluated(schemaCxt, codegen_1.Name));\n return true;\n }\n }\n}\nexports.KeywordCxt = KeywordCxt;\nfunction keywordCode(it, keyword, def, ruleType) {\n const cxt = new KeywordCxt(it, def, keyword);\n if (\"code\" in def) {\n def.code(cxt, ruleType);\n }\n else if (cxt.$data && def.validate) {\n (0, keyword_1.funcKeywordCode)(cxt, def);\n }\n else if (\"macro\" in def) {\n (0, keyword_1.macroKeywordCode)(cxt, def);\n }\n else if (def.compile || def.validate) {\n (0, keyword_1.funcKeywordCode)(cxt, def);\n }\n}\nconst JSON_POINTER = /^\\/(?:[^~]|~0|~1)*$/;\nconst RELATIVE_JSON_POINTER = /^([0-9]+)(#|\\/(?:[^~]|~0|~1)*)?$/;\nfunction getData($data, { dataLevel, dataNames, dataPathArr }) {\n let jsonPointer;\n let data;\n if ($data === \"\")\n return names_1.default.rootData;\n if ($data[0] === \"/\") {\n if (!JSON_POINTER.test($data))\n throw new Error(`Invalid JSON-pointer: ${$data}`);\n jsonPointer = $data;\n data = names_1.default.rootData;\n }\n else {\n const matches = RELATIVE_JSON_POINTER.exec($data);\n if (!matches)\n throw new Error(`Invalid JSON-pointer: ${$data}`);\n const up = +matches[1];\n jsonPointer = matches[2];\n if (jsonPointer === \"#\") {\n if (up >= dataLevel)\n throw new Error(errorMsg(\"property/index\", up));\n return dataPathArr[dataLevel - up];\n }\n if (up > dataLevel)\n throw new Error(errorMsg(\"data\", up));\n data = dataNames[dataLevel - up];\n if (!jsonPointer)\n return data;\n }\n let expr = data;\n const segments = jsonPointer.split(\"/\");\n for (const segment of segments) {\n if (segment) {\n data = (0, codegen_1._) `${data}${(0, codegen_1.getProperty)((0, util_1.unescapeJsonPointer)(segment))}`;\n expr = (0, codegen_1._) `${expr} && ${data}`;\n }\n }\n return expr;\n function errorMsg(pointerType, up) {\n return `Cannot access ${pointerType} ${up} levels up, current level is ${dataLevel}`;\n }\n}\nexports.getData = getData;\n//# sourceMappingURL=index.js.map"],"names":["require$$0","require$$1","require$$2","require$$3","require$$4","require$$5","require$$6","require$$7","require$$8","require$$9","require$$10"],"mappings":";;;;;;;;;;;;;;;;AACA,SAAO,eAAe,UAAS,cAAc,EAAE,OAAO,MAAM;AAC5D,WAAA,UAAkB,SAAA,aAAqB,SAAA,uBAA+B;AACtE,QAAM,eAAeA,kBAAA;AACrB,QAAM,aAAaC,gBAAA;AACnB,QAAM,kBAAkBC,qBAAA;AACxB,QAAM,aAAaD,gBAAA;AACnB,QAAM,aAAaE,gBAAA;AACnB,QAAM,YAAYC,eAAA;AAClB,QAAM,cAAcC,iBAAA;AACpB,QAAM,YAAYC,eAAA;AAClB,QAAM,UAAUC,aAAA;AAChB,QAAM,YAAYC,eAAA;AAClB,QAAM,SAASC,YAAA;AACf,QAAM,WAAWC,cAAA;AAEjB,WAAS,qBAAqB,IAAI;AAC9B,QAAI,YAAY,EAAE,GAAG;AACjB,oBAAc,EAAE;AAChB,UAAI,kBAAkB,EAAE,GAAG;AACvB,yBAAiB,EAAE;AACnB;AAAA,MACZ;AAAA,IACA;AACI,qBAAiB,IAAI,OAAM,GAAI,aAAa,sBAAsB,EAAE,CAAC;AAAA,EACzE;AACA,WAAA,uBAA+B;AAC/B,WAAS,iBAAiB,EAAE,KAAK,cAAc,QAAQ,WAAW,KAAI,GAAI,MAAM;AAC5E,QAAI,KAAK,KAAK,KAAK;AACf,UAAI,KAAK,eAAc,GAAI,UAAU,KAAM,QAAQ,QAAQ,IAAI,KAAK,QAAQ,QAAQ,MAAM,IAAI,UAAU,QAAQ,MAAM;AAClH,YAAI,SAAS,UAAU,mBAAoB,cAAc,QAAQ,IAAI,CAAC,EAAE;AACxE,6BAAqB,KAAK,IAAI;AAC9B,YAAI,KAAK,IAAI;AAAA,MACzB,CAAS;AAAA,IACT,OACS;AACD,UAAI,KAAK,eAAc,GAAI,UAAU,KAAM,QAAQ,QAAQ,IAAI,KAAK,kBAAkB,IAAI,CAAC,IAAI,UAAU,QAAQ,MAAM,IAAI,KAAK,cAAc,QAAQ,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC;AAAA,IAC/K;AAAA,EACA;AACA,WAAS,kBAAkB,MAAM;AAC7B,YAAO,GAAI,UAAU,MAAO,QAAQ,QAAQ,YAAY,QAAQ,QAAQ,QAAQ,UAAU,KAAK,QAAQ,QAAQ,kBAAkB,KAAK,QAAQ,QAAQ,QAAQ,IAAI,QAAQ,QAAQ,IAAI,GAAG,KAAK,cAAa,GAAI,UAAU,OAAQ,QAAQ,QAAQ,cAAc,QAAQ,UAAU,GAAG;AAAA,EACxR;AACA,WAAS,qBAAqB,KAAK,MAAM;AACrC,QAAI,GAAG,QAAQ,QAAQ,QAAQ,MAAM;AACjC,UAAI,IAAI,QAAQ,QAAQ,eAAc,GAAI,UAAU,KAAM,QAAQ,QAAQ,MAAM,IAAI,QAAQ,QAAQ,YAAY,EAAE;AAClH,UAAI,IAAI,QAAQ,QAAQ,aAAY,GAAI,UAAU,KAAM,QAAQ,QAAQ,MAAM,IAAI,QAAQ,QAAQ,UAAU,EAAE;AAC9G,UAAI,IAAI,QAAQ,QAAQ,qBAAoB,GAAI,UAAU,KAAM,QAAQ,QAAQ,MAAM,IAAI,QAAQ,QAAQ,kBAAkB,EAAE;AAC9H,UAAI,IAAI,QAAQ,QAAQ,WAAU,GAAI,UAAU,KAAM,QAAQ,QAAQ,MAAM,IAAI,QAAQ,QAAQ,QAAQ,EAAE;AAC1G,UAAI,KAAK;AACL,YAAI,IAAI,QAAQ,QAAQ,iBAAgB,GAAI,UAAU,KAAM,QAAQ,QAAQ,MAAM,IAAI,QAAQ,QAAQ,cAAc,EAAE;AAAA,IAClI,GAAO,MAAM;AACL,UAAI,IAAI,QAAQ,QAAQ,eAAc,GAAI,UAAU,MAAO;AAC3D,UAAI,IAAI,QAAQ,QAAQ,aAAY,GAAI,UAAU,aAAc;AAChE,UAAI,IAAI,QAAQ,QAAQ,qBAAoB,GAAI,UAAU,aAAc;AACxE,UAAI,IAAI,QAAQ,QAAQ,UAAU,QAAQ,QAAQ,IAAI;AACtD,UAAI,KAAK;AACL,YAAI,IAAI,QAAQ,QAAQ,iBAAgB,GAAI,UAAU,MAAO;AAAA,IACzE,CAAK;AAAA,EACL;AACA,WAAS,iBAAiB,IAAI;AAC1B,UAAM,EAAE,QAAQ,MAAM,IAAG,IAAK;AAC9B,qBAAiB,IAAI,MAAM;AACvB,UAAI,KAAK,YAAY,OAAO;AACxB,uBAAe,EAAE;AACrB,qBAAe,EAAE;AACjB,UAAI,IAAI,QAAQ,QAAQ,SAAS,IAAI;AACrC,UAAI,IAAI,QAAQ,QAAQ,QAAQ,CAAC;AACjC,UAAI,KAAK;AACL,uBAAe,EAAE;AACrB,sBAAgB,EAAE;AAClB,oBAAc,EAAE;AAAA,IACxB,CAAK;AACD;AAAA,EACJ;AACA,WAAS,eAAe,IAAI;AAExB,UAAM,EAAE,KAAK,aAAY,IAAK;AAC9B,OAAG,YAAY,IAAI,MAAM,iBAAiB,UAAU,KAAM,YAAY,YAAY;AAClF,QAAI,OAAO,UAAU,KAAM,GAAG,SAAS,iBAAiB,MAAM,IAAI,WAAW,UAAU,KAAM,GAAG,SAAS,WAAU,GAAI,UAAU,aAAc,CAAC;AAChJ,QAAI,OAAO,UAAU,KAAM,GAAG,SAAS,iBAAiB,MAAM,IAAI,WAAW,UAAU,KAAM,GAAG,SAAS,WAAU,GAAI,UAAU,aAAc,CAAC;AAAA,EACpJ;AACA,WAAS,cAAc,QAAQ,MAAM;AACjC,UAAM,QAAQ,OAAO,UAAU,YAAY,OAAO,KAAK,QAAQ;AAC/D,WAAO,UAAU,KAAK,KAAK,UAAU,KAAK,KAAK,YAAW,GAAI,UAAU,mBAAoB,KAAK,QAAQ,UAAU;AAAA,EACvH;AAEA,WAAS,cAAc,IAAI,OAAO;AAC9B,QAAI,YAAY,EAAE,GAAG;AACjB,oBAAc,EAAE;AAChB,UAAI,kBAAkB,EAAE,GAAG;AACvB,yBAAiB,IAAI,KAAK;AAC1B;AAAA,MACZ;AAAA,IACA;AACI,KAAA,GAAI,aAAa,mBAAmB,IAAI,KAAK;AAAA,EACjD;AACA,WAAS,kBAAkB,EAAE,QAAQ,QAAQ;AACzC,QAAI,OAAO,UAAU;AACjB,aAAO,CAAC;AACZ,eAAW,OAAO;AACd,UAAI,KAAK,MAAM,IAAI,GAAG;AAClB,eAAO;AACf,WAAO;AAAA,EACX;AACA,WAAS,YAAY,IAAI;AACrB,WAAO,OAAO,GAAG,UAAU;AAAA,EAC/B;AACA,WAAS,iBAAiB,IAAI,OAAO;AACjC,UAAM,EAAE,QAAQ,KAAK,KAAI,IAAK;AAC9B,QAAI,KAAK,YAAY,OAAO;AACxB,qBAAe,EAAE;AACrB,kBAAc,EAAE;AAChB,qBAAiB,EAAE;AACnB,UAAM,YAAY,IAAI,MAAM,SAAS,QAAQ,QAAQ,MAAM;AAC3D,oBAAgB,IAAI,SAAS;AAE7B,QAAI,IAAI,QAAO,GAAI,UAAU,KAAM,SAAS,QAAQ,QAAQ,QAAQ,MAAM,EAAE;AAAA,EAChF;AACA,WAAS,cAAc,IAAI;AACvB,QAAI,OAAO,mBAAmB,EAAE;AAChC,yBAAqB,EAAE;AAAA,EAC3B;AACA,WAAS,gBAAgB,IAAI,WAAW;AACpC,QAAI,GAAG,KAAK;AACR,aAAO,eAAe,IAAI,IAAI,OAAO,SAAS;AAClD,UAAM,SAAQ,GAAI,WAAW,gBAAgB,GAAG,MAAM;AACtD,UAAM,gBAAe,GAAI,WAAW,wBAAwB,IAAI,KAAK;AACrE,mBAAe,IAAI,OAAO,CAAC,cAAc,SAAS;AAAA,EACtD;AACA,WAAS,qBAAqB,IAAI;AAC9B,UAAM,EAAE,QAAQ,eAAe,MAAM,KAAI,IAAK;AAC9C,QAAI,OAAO,QAAQ,KAAK,0BAAyB,GAAI,OAAO,sBAAsB,QAAQ,KAAK,KAAK,GAAG;AACnG,WAAK,OAAO,KAAK,6CAA6C,aAAa,GAAG;AAAA,IACtF;AAAA,EACA;AACA,WAAS,eAAe,IAAI;AACxB,UAAM,EAAE,QAAQ,KAAI,IAAK;AACzB,QAAI,OAAO,YAAY,UAAa,KAAK,eAAe,KAAK,cAAc;AACvE,OAAA,GAAI,OAAO,iBAAiB,IAAI,uCAAuC;AAAA,IAC/E;AAAA,EACA;AACA,WAAS,cAAc,IAAI;AACvB,UAAM,QAAQ,GAAG,OAAO,GAAG,KAAK,QAAQ;AACxC,QAAI;AACA,SAAG,aAAa,UAAU,YAAY,GAAG,KAAK,aAAa,GAAG,QAAQ,KAAK;AAAA,EACnF;AACA,WAAS,iBAAiB,IAAI;AAC1B,QAAI,GAAG,OAAO,UAAU,CAAC,GAAG,UAAU;AAClC,YAAM,IAAI,MAAM,6BAA6B;AAAA,EACrD;AACA,WAAS,eAAe,EAAE,KAAK,WAAW,QAAQ,eAAe,QAAQ;AACrE,UAAM,MAAM,OAAO;AACnB,QAAI,KAAK,aAAa,MAAM;AACxB,UAAI,SAAS,UAAU,KAAM,QAAQ,QAAQ,IAAI,eAAe,GAAG,GAAG;AAAA,IAC9E,WACa,OAAO,KAAK,YAAY,YAAY;AACzC,YAAM,cAAa,GAAI,UAAU,OAAQ,aAAa;AACtD,YAAM,WAAW,IAAI,WAAW,QAAQ,EAAE,KAAK,UAAU,MAAM;AAC/D,UAAI,MAAK,GAAI,UAAU,KAAM,QAAQ,QAAQ,IAAI,kBAAkB,GAAG,KAAK,UAAU,KAAK,QAAQ,UAAU;AAAA,IACpH;AAAA,EACA;AACA,WAAS,cAAc,IAAI;AACvB,UAAM,EAAE,KAAK,WAAW,cAAc,iBAAiB,KAAI,IAAK;AAChE,QAAI,UAAU,QAAQ;AAElB,UAAI,IAAG,GAAI,UAAU,KAAM,QAAQ,QAAQ,MAAM,UAAU,MAAM,IAAI,OAAO,QAAQ,QAAQ,IAAI,GAAG,MAAM,IAAI,OAAM,GAAI,UAAU,SAAU,eAAe,IAAI,QAAQ,QAAQ,OAAO,GAAG,CAAC;AAAA,IACjM,OACS;AACD,UAAI,WAAW,UAAU,KAAM,YAAY,WAAW,QAAQ,QAAQ,OAAO;AAC7E,UAAI,KAAK;AACL,wBAAgB,EAAE;AACtB,UAAI,QAAO,GAAI,UAAU,KAAM,QAAQ,QAAQ,MAAM,QAAQ;AAAA,IACrE;AAAA,EACA;AACA,WAAS,gBAAgB,EAAE,KAAK,WAAW,OAAO,MAAK,GAAI;AACvD,QAAI,iBAAiB,UAAU;AAC3B,UAAI,QAAO,GAAI,UAAU,KAAM,SAAS,UAAU,KAAK;AAC3D,QAAI,iBAAiB,UAAU;AAC3B,UAAI,QAAO,GAAI,UAAU,KAAM,SAAS,UAAU,KAAK;AAAA,EAC/D;AACA,WAAS,eAAe,IAAI,OAAO,YAAY,WAAW;AACtD,UAAM,EAAE,KAAK,QAAQ,MAAM,WAAW,MAAM,KAAI,IAAK;AACrD,UAAM,EAAE,MAAK,IAAK;AAClB,QAAI,OAAO,SAAS,KAAK,yBAAyB,KAAK,OAAO,sBAAsB,QAAQ,KAAK,IAAI;AACjG,UAAI,MAAM,MAAM,YAAY,IAAI,QAAQ,MAAM,IAAI,KAAK,UAAU,CAAC;AAClE;AAAA,IACR;AACI,QAAI,CAAC,KAAK;AACN,uBAAiB,IAAI,KAAK;AAC9B,QAAI,MAAM,MAAM;AACZ,iBAAW,SAAS,MAAM;AACtB,sBAAc,KAAK;AACvB,oBAAc,MAAM,IAAI;AAAA,IAChC,CAAK;AACD,aAAS,cAAc,OAAO;AAC1B,UAAI,EAAC,GAAI,gBAAgB,gBAAgB,QAAQ,KAAK;AAClD;AACJ,UAAI,MAAM,MAAM;AACZ,YAAI,IAAG,GAAI,WAAW,eAAe,MAAM,MAAM,MAAM,KAAK,aAAa,CAAC;AAC1E,wBAAgB,IAAI,KAAK;AACzB,YAAI,MAAM,WAAW,KAAK,MAAM,CAAC,MAAM,MAAM,QAAQ,YAAY;AAC7D,cAAI,KAAI;AACR,cAAI,WAAW,iBAAiB,EAAE;AAAA,QAClD;AACY,YAAI,MAAK;AAAA,MACrB,OACa;AACD,wBAAgB,IAAI,KAAK;AAAA,MACrC;AAEQ,UAAI,CAAC;AACD,YAAI,IAAG,GAAI,UAAU,KAAM,QAAQ,QAAQ,MAAM,QAAQ,aAAa,CAAC,EAAE;AAAA,IACrF;AAAA,EACA;AACA,WAAS,gBAAgB,IAAI,OAAO;AAChC,UAAM,EAAE,KAAK,QAAQ,MAAM,EAAE,YAAW,EAAE,IAAM;AAChD,QAAI;AACA,OAAA,GAAI,WAAW,gBAAgB,IAAI,MAAM,IAAI;AACjD,QAAI,MAAM,MAAM;AACZ,iBAAW,QAAQ,MAAM,OAAO;AAC5B,aAAI,GAAI,gBAAgB,eAAe,QAAQ,IAAI,GAAG;AAClD,sBAAY,IAAI,KAAK,SAAS,KAAK,YAAY,MAAM,IAAI;AAAA,QACzE;AAAA,MACA;AAAA,IACA,CAAK;AAAA,EACL;AACA,WAAS,iBAAiB,IAAI,OAAO;AACjC,QAAI,GAAG,UAAU,QAAQ,CAAC,GAAG,KAAK;AAC9B;AACJ,sBAAkB,IAAI,KAAK;AAC3B,QAAI,CAAC,GAAG,KAAK;AACT,yBAAmB,IAAI,KAAK;AAChC,sBAAkB,IAAI,GAAG,SAAS;AAAA,EACtC;AACA,WAAS,kBAAkB,IAAI,OAAO;AAClC,QAAI,CAAC,MAAM;AACP;AACJ,QAAI,CAAC,GAAG,UAAU,QAAQ;AACtB,SAAG,YAAY;AACf;AAAA,IACR;AACI,UAAM,QAAQ,CAAC,MAAM;AACjB,UAAI,CAAC,aAAa,GAAG,WAAW,CAAC,GAAG;AAChC,yBAAiB,IAAI,SAAS,CAAC,6BAA6B,GAAG,UAAU,KAAK,GAAG,CAAC,GAAG;AAAA,MACjG;AAAA,IACA,CAAK;AACD,sBAAkB,IAAI,KAAK;AAAA,EAC/B;AACA,WAAS,mBAAmB,IAAI,IAAI;AAChC,QAAI,GAAG,SAAS,KAAK,EAAE,GAAG,WAAW,KAAK,GAAG,SAAS,MAAM,IAAI;AAC5D,uBAAiB,IAAI,iDAAiD;AAAA,IAC9E;AAAA,EACA;AACA,WAAS,kBAAkB,IAAI,IAAI;AAC/B,UAAM,QAAQ,GAAG,KAAK,MAAM;AAC5B,eAAW,WAAW,OAAO;AACzB,YAAM,OAAO,MAAM,OAAO;AAC1B,UAAI,OAAO,QAAQ,aAAY,GAAI,gBAAgB,eAAe,GAAG,QAAQ,IAAI,GAAG;AAChF,cAAM,EAAE,SAAS,KAAK;AACtB,YAAI,KAAK,UAAU,CAAC,KAAK,KAAK,CAAC,MAAM,kBAAkB,IAAI,CAAC,CAAC,GAAG;AAC5D,2BAAiB,IAAI,iBAAiB,KAAK,KAAK,GAAG,CAAC,kBAAkB,OAAO,GAAG;AAAA,QAChG;AAAA,MACA;AAAA,IACA;AAAA,EACA;AACA,WAAS,kBAAkB,OAAO,MAAM;AACpC,WAAO,MAAM,SAAS,IAAI,KAAM,SAAS,YAAY,MAAM,SAAS,SAAS;AAAA,EACjF;AACA,WAAS,aAAa,IAAI,GAAG;AACzB,WAAO,GAAG,SAAS,CAAC,KAAM,MAAM,aAAa,GAAG,SAAS,QAAQ;AAAA,EACrE;AACA,WAAS,kBAAkB,IAAI,WAAW;AACtC,UAAM,KAAK,CAAA;AACX,eAAW,KAAK,GAAG,WAAW;AAC1B,UAAI,aAAa,WAAW,CAAC;AACzB,WAAG,KAAK,CAAC;AAAA,eACJ,UAAU,SAAS,SAAS,KAAK,MAAM;AAC5C,WAAG,KAAK,SAAS;AAAA,IAC7B;AACI,OAAG,YAAY;AAAA,EACnB;AACA,WAAS,iBAAiB,IAAI,KAAK;AAC/B,UAAM,aAAa,GAAG,UAAU,SAAS,GAAG;AAC5C,WAAO,QAAQ,UAAU;AACzB,KAAA,GAAI,OAAO,iBAAiB,IAAI,KAAK,GAAG,KAAK,WAAW;AAAA,EAC5D;AAAA,EACA,MAAM,WAAW;AAAA,IACb,YAAY,IAAI,KAAK,SAAS;AAC1B,OAAA,GAAI,UAAU,sBAAsB,IAAI,KAAK,OAAO;AACpD,WAAK,MAAM,GAAG;AACd,WAAK,YAAY,GAAG;AACpB,WAAK,UAAU;AACf,WAAK,OAAO,GAAG;AACf,WAAK,SAAS,GAAG,OAAO,OAAO;AAC/B,WAAK,QAAQ,IAAI,SAAS,GAAG,KAAK,SAAS,KAAK,UAAU,KAAK,OAAO;AACtE,WAAK,kBAAkB,OAAO,gBAAgB,IAAI,KAAK,QAAQ,SAAS,KAAK,KAAK;AAClF,WAAK,aAAa,IAAI;AACtB,WAAK,eAAe,GAAG;AACvB,WAAK,SAAS,CAAA;AACd,WAAK,KAAK;AACV,WAAK,MAAM;AACX,UAAI,KAAK,OAAO;AACZ,aAAK,aAAa,GAAG,IAAI,MAAM,WAAW,QAAQ,KAAK,OAAO,EAAE,CAAC;AAAA,MAC7E,OACa;AACD,aAAK,aAAa,KAAK;AACvB,YAAI,EAAC,GAAI,UAAU,iBAAiB,KAAK,QAAQ,IAAI,YAAY,IAAI,cAAc,GAAG;AAClF,gBAAM,IAAI,MAAM,GAAG,OAAO,kBAAkB,KAAK,UAAU,IAAI,UAAU,CAAC,EAAE;AAAA,QAC5F;AAAA,MACA;AACQ,UAAI,UAAU,MAAM,IAAI,cAAc,IAAI,WAAW,OAAO;AACxD,aAAK,YAAY,GAAG,IAAI,MAAM,SAAS,QAAQ,QAAQ,MAAM;AAAA,MACzE;AAAA,IACA;AAAA,IACI,OAAO,WAAW,eAAe,YAAY;AACzC,WAAK,eAAe,UAAU,KAAK,SAAS,GAAG,eAAe,UAAU;AAAA,IAChF;AAAA,IACI,WAAW,WAAW,eAAe,YAAY;AAC7C,WAAK,IAAI,GAAG,SAAS;AACrB,UAAI;AACA,mBAAU;AAAA;AAEV,aAAK,MAAK;AACd,UAAI,eAAe;AACf,aAAK,IAAI,KAAI;AACb,sBAAa;AACb,YAAI,KAAK;AACL,eAAK,IAAI,MAAK;AAAA,MAC9B,OACa;AACD,YAAI,KAAK;AACL,eAAK,IAAI,MAAK;AAAA;AAEd,eAAK,IAAI,KAAI;AAAA,MAC7B;AAAA,IACA;AAAA,IACI,KAAK,WAAW,YAAY;AACxB,WAAK,eAAe,UAAU,KAAK,SAAS,GAAG,QAAW,UAAU;AAAA,IAC5E;AAAA,IACI,KAAK,WAAW;AACZ,UAAI,cAAc,QAAW;AACzB,aAAK,MAAK;AACV,YAAI,CAAC,KAAK;AACN,eAAK,IAAI,GAAG,KAAK;AACrB;AAAA,MACZ;AACQ,WAAK,IAAI,GAAG,SAAS;AACrB,WAAK,MAAK;AACV,UAAI,KAAK;AACL,aAAK,IAAI,MAAK;AAAA;AAEd,aAAK,IAAI,KAAI;AAAA,IACzB;AAAA,IACI,UAAU,WAAW;AACjB,UAAI,CAAC,KAAK;AACN,eAAO,KAAK,KAAK,SAAS;AAC9B,YAAM,EAAE,WAAU,IAAK;AACvB,WAAK,MAAK,GAAI,UAAU,KAAM,UAAU,uBAAsB,GAAI,UAAU,IAAI,KAAK,aAAY,GAAI,SAAS,CAAC,GAAG;AAAA,IAC1H;AAAA,IACI,MAAM,QAAQ,aAAa,YAAY;AACnC,UAAI,aAAa;AACb,aAAK,UAAU,WAAW;AAC1B,aAAK,OAAO,QAAQ,UAAU;AAC9B,aAAK,UAAU,EAAE;AACjB;AAAA,MACZ;AACQ,WAAK,OAAO,QAAQ,UAAU;AAAA,IACtC;AAAA,IACI,OAAO,QAAQ,YAAY;AAEvB,OAAC,SAAS,SAAS,mBAAmB,SAAS,aAAa,MAAM,KAAK,IAAI,OAAO,UAAU;AAAA,IACpG;AAAA,IACI,aAAa;AACT,UAAI,SAAS,aAAa,MAAM,KAAK,IAAI,cAAc,SAAS,iBAAiB;AAAA,IACzF;AAAA,IACI,QAAQ;AACJ,UAAI,KAAK,cAAc;AACnB,cAAM,IAAI,MAAM,yCAAyC;AAC7D,OAAA,GAAI,SAAS,kBAAkB,KAAK,KAAK,KAAK,SAAS;AAAA,IAC/D;AAAA,IACI,GAAG,MAAM;AACL,UAAI,CAAC,KAAK;AACN,aAAK,IAAI,GAAG,IAAI;AAAA,IAC5B;AAAA,IACI,UAAU,KAAK,QAAQ;AACnB,UAAI;AACA,eAAO,OAAO,KAAK,QAAQ,GAAG;AAAA;AAE9B,aAAK,SAAS;AAAA,IAC1B;AAAA,IACI,WAAW,OAAO,WAAW,aAAa,UAAU,KAAK;AACrD,WAAK,IAAI,MAAM,MAAM;AACjB,aAAK,WAAW,OAAO,UAAU;AACjC,kBAAS;AAAA,MACrB,CAAS;AAAA,IACT;AAAA,IACI,WAAW,QAAQ,UAAU,KAAK,aAAa,UAAU,KAAK;AAC1D,UAAI,CAAC,KAAK;AACN;AACJ,YAAM,EAAE,KAAK,YAAY,YAAY,IAAG,IAAK;AAC7C,UAAI,OAAO,UAAU,KAAI,GAAI,UAAU,KAAM,UAAU,kBAAkB,UAAU,CAAC;AACpF,UAAI,UAAU,UAAU;AACpB,YAAI,OAAO,OAAO,IAAI;AAC1B,UAAI,WAAW,UAAU,IAAI,gBAAgB;AACzC,YAAI,OAAO,KAAK,cAAc;AAC9B,aAAK,WAAU;AACf,YAAI,UAAU,UAAU;AACpB,cAAI,OAAO,OAAO,KAAK;AAAA,MACvC;AACQ,UAAI,KAAI;AAAA,IAChB;AAAA,IACI,eAAe;AACX,YAAM,EAAE,KAAK,YAAY,YAAY,KAAK,GAAE,IAAK;AACjD,cAAO,GAAI,UAAU,IAAI,eAAc,GAAI,mBAAkB,CAAE;AAC/D,eAAS,iBAAiB;AACtB,YAAI,WAAW,QAAQ;AAEnB,cAAI,EAAE,sBAAsB,UAAU;AAClC,kBAAM,IAAI,MAAM,0BAA0B;AAC9C,gBAAM,KAAK,MAAM,QAAQ,UAAU,IAAI,aAAa,CAAC,UAAU;AAC/D,kBAAO,GAAI,UAAU,MAAM,GAAI,WAAW,gBAAgB,IAAI,YAAY,GAAG,KAAK,eAAe,WAAW,SAAS,KAAK,CAAC;AAAA,QAC3I;AACY,eAAO,UAAU;AAAA,MAC7B;AACQ,eAAS,qBAAqB;AAC1B,YAAI,IAAI,gBAAgB;AACpB,gBAAM,oBAAoB,IAAI,WAAW,iBAAiB,EAAE,KAAK,IAAI,eAAc,CAAE;AACrF,kBAAO,GAAI,UAAU,MAAO,iBAAiB,IAAI,UAAU;AAAA,QAC3E;AACY,eAAO,UAAU;AAAA,MAC7B;AAAA,IACA;AAAA,IACI,UAAU,MAAM,OAAO;AACnB,YAAM,aAAY,GAAI,YAAY,cAAc,KAAK,IAAI,IAAI;AAC7D,OAAA,GAAI,YAAY,qBAAqB,WAAW,KAAK,IAAI,IAAI;AAC7D,OAAA,GAAI,YAAY,qBAAqB,WAAW,IAAI;AACpD,YAAM,cAAc,EAAE,GAAG,KAAK,IAAI,GAAG,WAAW,OAAO,QAAW,OAAO,OAAS;AAClF,oBAAc,aAAa,KAAK;AAChC,aAAO;AAAA,IACf;AAAA,IACI,eAAe,WAAW,QAAQ;AAC9B,YAAM,EAAE,IAAI,IAAG,IAAK;AACpB,UAAI,CAAC,GAAG,KAAK;AACT;AACJ,UAAI,GAAG,UAAU,QAAQ,UAAU,UAAU,QAAW;AACpD,WAAG,QAAQ,OAAO,eAAe,MAAM,KAAK,UAAU,OAAO,GAAG,OAAO,MAAM;AAAA,MACzF;AACQ,UAAI,GAAG,UAAU,QAAQ,UAAU,UAAU,QAAW;AACpD,WAAG,QAAQ,OAAO,eAAe,MAAM,KAAK,UAAU,OAAO,GAAG,OAAO,MAAM;AAAA,MACzF;AAAA,IACA;AAAA,IACI,oBAAoB,WAAW,OAAO;AAClC,YAAM,EAAE,IAAI,IAAG,IAAK;AACpB,UAAI,GAAG,KAAK,gBAAgB,GAAG,UAAU,QAAQ,GAAG,UAAU,OAAO;AACjE,YAAI,GAAG,OAAO,MAAM,KAAK,eAAe,WAAW,UAAU,IAAI,CAAC;AAClE,eAAO;AAAA,MACnB;AAAA,IACA;AAAA,EACA;AACA,WAAA,aAAqB;AACrB,WAAS,YAAY,IAAI,SAAS,KAAK,UAAU;AAC7C,UAAM,MAAM,IAAI,WAAW,IAAI,KAAK,OAAO;AAC3C,QAAI,UAAU,KAAK;AACf,UAAI,KAAK,KAAK,QAAQ;AAAA,IAC9B,WACa,IAAI,SAAS,IAAI,UAAU;AAChC,OAAA,GAAI,UAAU,iBAAiB,KAAK,GAAG;AAAA,IAC/C,WACa,WAAW,KAAK;AACrB,OAAA,GAAI,UAAU,kBAAkB,KAAK,GAAG;AAAA,IAChD,WACa,IAAI,WAAW,IAAI,UAAU;AAClC,OAAA,GAAI,UAAU,iBAAiB,KAAK,GAAG;AAAA,IAC/C;AAAA,EACA;AACA,QAAM,eAAe;AACrB,QAAM,wBAAwB;AAC9B,WAAS,QAAQ,OAAO,EAAE,WAAW,WAAW,YAAW,GAAI;AAC3D,QAAI;AACJ,QAAI;AACJ,QAAI,UAAU;AACV,aAAO,QAAQ,QAAQ;AAC3B,QAAI,MAAM,CAAC,MAAM,KAAK;AAClB,UAAI,CAAC,aAAa,KAAK,KAAK;AACxB,cAAM,IAAI,MAAM,yBAAyB,KAAK,EAAE;AACpD,oBAAc;AACd,aAAO,QAAQ,QAAQ;AAAA,IAC/B,OACS;AACD,YAAM,UAAU,sBAAsB,KAAK,KAAK;AAChD,UAAI,CAAC;AACD,cAAM,IAAI,MAAM,yBAAyB,KAAK,EAAE;AACpD,YAAM,KAAK,CAAC,QAAQ,CAAC;AACrB,oBAAc,QAAQ,CAAC;AACvB,UAAI,gBAAgB,KAAK;AACrB,YAAI,MAAM;AACN,gBAAM,IAAI,MAAM,SAAS,kBAAkB,EAAE,CAAC;AAClD,eAAO,YAAY,YAAY,EAAE;AAAA,MAC7C;AACQ,UAAI,KAAK;AACL,cAAM,IAAI,MAAM,SAAS,QAAQ,EAAE,CAAC;AACxC,aAAO,UAAU,YAAY,EAAE;AAC/B,UAAI,CAAC;AACD,eAAO;AAAA,IACnB;AACI,QAAI,OAAO;AACX,UAAM,WAAW,YAAY,MAAM,GAAG;AACtC,eAAW,WAAW,UAAU;AAC5B,UAAI,SAAS;AACT,gBAAO,GAAI,UAAU,KAAM,IAAI,IAAG,GAAI,UAAU,cAAa,GAAI,OAAO,qBAAqB,OAAO,CAAC,CAAC;AACtG,gBAAO,GAAI,UAAU,KAAM,IAAI,OAAO,IAAI;AAAA,MACtD;AAAA,IACA;AACI,WAAO;AACP,aAAS,SAAS,aAAa,IAAI;AAC/B,aAAO,iBAAiB,WAAW,IAAI,EAAE,gCAAgC,SAAS;AAAA,IAC1F;AAAA,EACA;AACA,WAAA,UAAkB;;;","x_google_ignoreList":[0]}