@blade-hq/agent-client 1.1.1 → 1.1.2

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 (583) hide show
  1. package/README.md +48 -25
  2. package/dist/blade-client.d.ts +2 -14
  3. package/dist/index.d.ts +5 -2
  4. package/dist/index.js +212 -106
  5. package/dist/index.js.map +1 -1
  6. package/dist/resources/models.d.ts +15 -0
  7. package/dist/resources/sessions.d.ts +8 -1
  8. package/dist/session/agent-session.d.ts +10 -0
  9. package/dist/session/definition.d.ts +49 -0
  10. package/dist/shared/projection/helpers.d.ts +1 -1
  11. package/dist/types/rest.d.ts +378 -10
  12. package/dist/version.d.ts +4 -42
  13. package/node_modules/@ark/schema/LICENSE +7 -0
  14. package/node_modules/@ark/schema/README.md +18 -0
  15. package/node_modules/@ark/schema/out/config.d.ts +58 -0
  16. package/node_modules/@ark/schema/out/config.js +95 -0
  17. package/node_modules/@ark/schema/out/constraint.d.ts +67 -0
  18. package/node_modules/@ark/schema/out/constraint.js +136 -0
  19. package/node_modules/@ark/schema/out/generic.d.ts +73 -0
  20. package/node_modules/@ark/schema/out/generic.js +76 -0
  21. package/node_modules/@ark/schema/out/index.d.ts +47 -0
  22. package/node_modules/@ark/schema/out/index.js +47 -0
  23. package/node_modules/@ark/schema/out/intrinsic.d.ts +24 -0
  24. package/node_modules/@ark/schema/out/intrinsic.js +56 -0
  25. package/node_modules/@ark/schema/out/kinds.d.ts +73 -0
  26. package/node_modules/@ark/schema/out/kinds.js +71 -0
  27. package/node_modules/@ark/schema/out/module.d.ts +24 -0
  28. package/node_modules/@ark/schema/out/module.js +15 -0
  29. package/node_modules/@ark/schema/out/node.d.ts +154 -0
  30. package/node_modules/@ark/schema/out/node.js +438 -0
  31. package/node_modules/@ark/schema/out/parse.d.ts +52 -0
  32. package/node_modules/@ark/schema/out/parse.js +215 -0
  33. package/node_modules/@ark/schema/out/predicate.d.ts +52 -0
  34. package/node_modules/@ark/schema/out/predicate.js +63 -0
  35. package/node_modules/@ark/schema/out/refinements/after.d.ts +41 -0
  36. package/node_modules/@ark/schema/out/refinements/after.js +35 -0
  37. package/node_modules/@ark/schema/out/refinements/before.d.ts +41 -0
  38. package/node_modules/@ark/schema/out/refinements/before.js +41 -0
  39. package/node_modules/@ark/schema/out/refinements/divisor.d.ts +43 -0
  40. package/node_modules/@ark/schema/out/refinements/divisor.js +58 -0
  41. package/node_modules/@ark/schema/out/refinements/exactLength.d.ts +49 -0
  42. package/node_modules/@ark/schema/out/refinements/exactLength.js +55 -0
  43. package/node_modules/@ark/schema/out/refinements/kinds.d.ts +34 -0
  44. package/node_modules/@ark/schema/out/refinements/kinds.js +25 -0
  45. package/node_modules/@ark/schema/out/refinements/max.d.ts +37 -0
  46. package/node_modules/@ark/schema/out/refinements/max.js +45 -0
  47. package/node_modules/@ark/schema/out/refinements/maxLength.d.ts +40 -0
  48. package/node_modules/@ark/schema/out/refinements/maxLength.js +49 -0
  49. package/node_modules/@ark/schema/out/refinements/min.d.ts +37 -0
  50. package/node_modules/@ark/schema/out/refinements/min.js +39 -0
  51. package/node_modules/@ark/schema/out/refinements/minLength.d.ts +40 -0
  52. package/node_modules/@ark/schema/out/refinements/minLength.js +47 -0
  53. package/node_modules/@ark/schema/out/refinements/pattern.d.ts +43 -0
  54. package/node_modules/@ark/schema/out/refinements/pattern.js +52 -0
  55. package/node_modules/@ark/schema/out/refinements/range.d.ts +106 -0
  56. package/node_modules/@ark/schema/out/refinements/range.js +103 -0
  57. package/node_modules/@ark/schema/out/roots/alias.d.ts +45 -0
  58. package/node_modules/@ark/schema/out/roots/alias.js +115 -0
  59. package/node_modules/@ark/schema/out/roots/basis.d.ts +12 -0
  60. package/node_modules/@ark/schema/out/roots/basis.js +26 -0
  61. package/node_modules/@ark/schema/out/roots/domain.d.ts +45 -0
  62. package/node_modules/@ark/schema/out/roots/domain.js +72 -0
  63. package/node_modules/@ark/schema/out/roots/intersection.d.ts +98 -0
  64. package/node_modules/@ark/schema/out/roots/intersection.js +292 -0
  65. package/node_modules/@ark/schema/out/roots/morph.d.ts +62 -0
  66. package/node_modules/@ark/schema/out/roots/morph.js +159 -0
  67. package/node_modules/@ark/schema/out/roots/proto.d.ts +53 -0
  68. package/node_modules/@ark/schema/out/roots/proto.js +101 -0
  69. package/node_modules/@ark/schema/out/roots/root.d.ts +145 -0
  70. package/node_modules/@ark/schema/out/roots/root.js +455 -0
  71. package/node_modules/@ark/schema/out/roots/union.d.ts +99 -0
  72. package/node_modules/@ark/schema/out/roots/union.js +718 -0
  73. package/node_modules/@ark/schema/out/roots/unit.d.ts +41 -0
  74. package/node_modules/@ark/schema/out/roots/unit.js +86 -0
  75. package/node_modules/@ark/schema/out/roots/utils.d.ts +3 -0
  76. package/node_modules/@ark/schema/out/roots/utils.js +6 -0
  77. package/node_modules/@ark/schema/out/scope.d.ts +158 -0
  78. package/node_modules/@ark/schema/out/scope.js +481 -0
  79. package/node_modules/@ark/schema/out/shared/compile.d.ts +62 -0
  80. package/node_modules/@ark/schema/out/shared/compile.js +145 -0
  81. package/node_modules/@ark/schema/out/shared/declare.d.ts +80 -0
  82. package/node_modules/@ark/schema/out/shared/declare.js +1 -0
  83. package/node_modules/@ark/schema/out/shared/disjoint.d.ts +41 -0
  84. package/node_modules/@ark/schema/out/shared/disjoint.js +65 -0
  85. package/node_modules/@ark/schema/out/shared/errors.d.ts +145 -0
  86. package/node_modules/@ark/schema/out/shared/errors.js +252 -0
  87. package/node_modules/@ark/schema/out/shared/implement.d.ts +151 -0
  88. package/node_modules/@ark/schema/out/shared/implement.js +98 -0
  89. package/node_modules/@ark/schema/out/shared/intersections.d.ts +10 -0
  90. package/node_modules/@ark/schema/out/shared/intersections.js +132 -0
  91. package/node_modules/@ark/schema/out/shared/jsonSchema.d.ts +93 -0
  92. package/node_modules/@ark/schema/out/shared/jsonSchema.js +1 -0
  93. package/node_modules/@ark/schema/out/shared/registry.d.ts +7 -0
  94. package/node_modules/@ark/schema/out/shared/registry.js +10 -0
  95. package/node_modules/@ark/schema/out/shared/standardSchema.d.ts +122 -0
  96. package/node_modules/@ark/schema/out/shared/standardSchema.js +2 -0
  97. package/node_modules/@ark/schema/out/shared/toJsonSchema.d.ts +139 -0
  98. package/node_modules/@ark/schema/out/shared/toJsonSchema.js +40 -0
  99. package/node_modules/@ark/schema/out/shared/traversal.d.ts +117 -0
  100. package/node_modules/@ark/schema/out/shared/traversal.js +226 -0
  101. package/node_modules/@ark/schema/out/shared/utils.d.ts +34 -0
  102. package/node_modules/@ark/schema/out/shared/utils.js +8 -0
  103. package/node_modules/@ark/schema/out/structure/index.d.ts +46 -0
  104. package/node_modules/@ark/schema/out/structure/index.js +89 -0
  105. package/node_modules/@ark/schema/out/structure/optional.d.ts +49 -0
  106. package/node_modules/@ark/schema/out/structure/optional.js +127 -0
  107. package/node_modules/@ark/schema/out/structure/prop.d.ts +45 -0
  108. package/node_modules/@ark/schema/out/structure/prop.js +85 -0
  109. package/node_modules/@ark/schema/out/structure/required.d.ts +39 -0
  110. package/node_modules/@ark/schema/out/structure/required.js +38 -0
  111. package/node_modules/@ark/schema/out/structure/sequence.d.ts +110 -0
  112. package/node_modules/@ark/schema/out/structure/sequence.js +521 -0
  113. package/node_modules/@ark/schema/out/structure/shared.d.ts +4 -0
  114. package/node_modules/@ark/schema/out/structure/shared.js +4 -0
  115. package/node_modules/@ark/schema/out/structure/structure.d.ts +113 -0
  116. package/node_modules/@ark/schema/out/structure/structure.js +747 -0
  117. package/node_modules/@ark/schema/package.json +51 -0
  118. package/node_modules/@ark/util/LICENSE +7 -0
  119. package/node_modules/@ark/util/out/arrays.d.ts +166 -0
  120. package/node_modules/@ark/util/out/arrays.js +147 -0
  121. package/node_modules/@ark/util/out/clone.d.ts +4 -0
  122. package/node_modules/@ark/util/out/clone.js +33 -0
  123. package/node_modules/@ark/util/out/describe.d.ts +25 -0
  124. package/node_modules/@ark/util/out/describe.js +1 -0
  125. package/node_modules/@ark/util/out/domain.d.ts +48 -0
  126. package/node_modules/@ark/util/out/domain.js +25 -0
  127. package/node_modules/@ark/util/out/errors.d.ts +29 -0
  128. package/node_modules/@ark/util/out/errors.js +17 -0
  129. package/node_modules/@ark/util/out/flatMorph.d.ts +41 -0
  130. package/node_modules/@ark/util/out/flatMorph.js +24 -0
  131. package/node_modules/@ark/util/out/functions.d.ts +33 -0
  132. package/node_modules/@ark/util/out/functions.js +53 -0
  133. package/node_modules/@ark/util/out/generics.d.ts +59 -0
  134. package/node_modules/@ark/util/out/generics.js +5 -0
  135. package/node_modules/@ark/util/out/get.d.ts +9 -0
  136. package/node_modules/@ark/util/out/get.js +7 -0
  137. package/node_modules/@ark/util/out/hkt.d.ts +27 -0
  138. package/node_modules/@ark/util/out/hkt.js +5 -0
  139. package/node_modules/@ark/util/out/index.d.ts +24 -0
  140. package/node_modules/@ark/util/out/index.js +24 -0
  141. package/node_modules/@ark/util/out/intersections.d.ts +50 -0
  142. package/node_modules/@ark/util/out/intersections.js +1 -0
  143. package/node_modules/@ark/util/out/isomorphic.d.ts +5 -0
  144. package/node_modules/@ark/util/out/isomorphic.js +19 -0
  145. package/node_modules/@ark/util/out/keys.d.ts +18 -0
  146. package/node_modules/@ark/util/out/keys.js +1 -0
  147. package/node_modules/@ark/util/out/lazily.d.ts +1 -0
  148. package/node_modules/@ark/util/out/lazily.js +16 -0
  149. package/node_modules/@ark/util/out/numbers.d.ts +72 -0
  150. package/node_modules/@ark/util/out/numbers.js +138 -0
  151. package/node_modules/@ark/util/out/objectKinds.d.ts +205 -0
  152. package/node_modules/@ark/util/out/objectKinds.js +150 -0
  153. package/node_modules/@ark/util/out/path.d.ts +22 -0
  154. package/node_modules/@ark/util/out/path.js +65 -0
  155. package/node_modules/@ark/util/out/primitive.d.ts +16 -0
  156. package/node_modules/@ark/util/out/primitive.js +3 -0
  157. package/node_modules/@ark/util/out/records.d.ts +183 -0
  158. package/node_modules/@ark/util/out/records.js +63 -0
  159. package/node_modules/@ark/util/out/registry.d.ts +21 -0
  160. package/node_modules/@ark/util/out/registry.js +49 -0
  161. package/node_modules/@ark/util/out/scanner.d.ts +44 -0
  162. package/node_modules/@ark/util/out/scanner.js +87 -0
  163. package/node_modules/@ark/util/out/serialize.d.ts +34 -0
  164. package/node_modules/@ark/util/out/serialize.js +150 -0
  165. package/node_modules/@ark/util/out/strings.d.ts +33 -0
  166. package/node_modules/@ark/util/out/strings.js +59 -0
  167. package/node_modules/@ark/util/out/traits.d.ts +89 -0
  168. package/node_modules/@ark/util/out/traits.js +75 -0
  169. package/node_modules/@ark/util/out/unionToTuple.d.ts +14 -0
  170. package/node_modules/@ark/util/out/unionToTuple.js +1 -0
  171. package/node_modules/@ark/util/package.json +39 -0
  172. package/node_modules/@ark/util/tsconfig.base.json +18 -0
  173. package/node_modules/@socket.io/component-emitter/LICENSE +24 -0
  174. package/node_modules/@socket.io/component-emitter/Readme.md +79 -0
  175. package/node_modules/@socket.io/component-emitter/lib/cjs/index.d.ts +179 -0
  176. package/node_modules/@socket.io/component-emitter/lib/cjs/index.js +176 -0
  177. package/node_modules/@socket.io/component-emitter/lib/cjs/package.json +4 -0
  178. package/node_modules/@socket.io/component-emitter/lib/esm/index.d.ts +179 -0
  179. package/node_modules/@socket.io/component-emitter/lib/esm/index.js +169 -0
  180. package/node_modules/@socket.io/component-emitter/lib/esm/package.json +4 -0
  181. package/node_modules/@socket.io/component-emitter/package.json +28 -0
  182. package/node_modules/arkregex/LICENSE +7 -0
  183. package/node_modules/arkregex/README.md +61 -0
  184. package/node_modules/arkregex/out/charset.d.ts +15 -0
  185. package/node_modules/arkregex/out/charset.js +1 -0
  186. package/node_modules/arkregex/out/escape.d.ts +29 -0
  187. package/node_modules/arkregex/out/escape.js +10 -0
  188. package/node_modules/arkregex/out/execArray.d.ts +23 -0
  189. package/node_modules/arkregex/out/execArray.js +1 -0
  190. package/node_modules/arkregex/out/group.d.ts +33 -0
  191. package/node_modules/arkregex/out/group.js +6 -0
  192. package/node_modules/arkregex/out/index.d.ts +1 -0
  193. package/node_modules/arkregex/out/index.js +1 -0
  194. package/node_modules/arkregex/out/parse.d.ts +10 -0
  195. package/node_modules/arkregex/out/parse.js +1 -0
  196. package/node_modules/arkregex/out/quantify.d.ts +43 -0
  197. package/node_modules/arkregex/out/quantify.js +2 -0
  198. package/node_modules/arkregex/out/regex.d.ts +38 -0
  199. package/node_modules/arkregex/out/regex.js +2 -0
  200. package/node_modules/arkregex/out/state.d.ts +359 -0
  201. package/node_modules/arkregex/out/state.js +2 -0
  202. package/node_modules/arkregex/package.json +42 -0
  203. package/node_modules/arktype/LICENSE +7 -0
  204. package/node_modules/arktype/README.md +157 -0
  205. package/node_modules/arktype/out/attributes.d.ts +104 -0
  206. package/node_modules/arktype/out/attributes.js +3 -0
  207. package/node_modules/arktype/out/config.d.ts +35 -0
  208. package/node_modules/arktype/out/config.js +3 -0
  209. package/node_modules/arktype/out/declare.d.ts +35 -0
  210. package/node_modules/arktype/out/declare.js +1 -0
  211. package/node_modules/arktype/out/fn.d.ts +61 -0
  212. package/node_modules/arktype/out/fn.js +54 -0
  213. package/node_modules/arktype/out/generic.d.ts +118 -0
  214. package/node_modules/arktype/out/generic.js +37 -0
  215. package/node_modules/arktype/out/index.d.ts +12 -0
  216. package/node_modules/arktype/out/index.js +9 -0
  217. package/node_modules/arktype/out/keywords/Array.d.ts +20 -0
  218. package/node_modules/arktype/out/keywords/Array.js +21 -0
  219. package/node_modules/arktype/out/keywords/FormData.d.ts +15 -0
  220. package/node_modules/arktype/out/keywords/FormData.js +40 -0
  221. package/node_modules/arktype/out/keywords/TypedArray.d.ts +19 -0
  222. package/node_modules/arktype/out/keywords/TypedArray.js +16 -0
  223. package/node_modules/arktype/out/keywords/builtins.d.ts +18 -0
  224. package/node_modules/arktype/out/keywords/builtins.js +11 -0
  225. package/node_modules/arktype/out/keywords/constructors.d.ts +31 -0
  226. package/node_modules/arktype/out/keywords/constructors.js +16 -0
  227. package/node_modules/arktype/out/keywords/keywords.d.ts +70 -0
  228. package/node_modules/arktype/out/keywords/keywords.js +48 -0
  229. package/node_modules/arktype/out/keywords/number.d.ts +23 -0
  230. package/node_modules/arktype/out/keywords/number.js +49 -0
  231. package/node_modules/arktype/out/keywords/string.d.ts +334 -0
  232. package/node_modules/arktype/out/keywords/string.js +463 -0
  233. package/node_modules/arktype/out/keywords/ts.d.ts +108 -0
  234. package/node_modules/arktype/out/keywords/ts.js +82 -0
  235. package/node_modules/arktype/out/match.d.ts +152 -0
  236. package/node_modules/arktype/out/match.js +95 -0
  237. package/node_modules/arktype/out/module.d.ts +22 -0
  238. package/node_modules/arktype/out/module.js +3 -0
  239. package/node_modules/arktype/out/nary.d.ts +473 -0
  240. package/node_modules/arktype/out/nary.js +1 -0
  241. package/node_modules/arktype/out/parser/ast/bounds.d.ts +18 -0
  242. package/node_modules/arktype/out/parser/ast/bounds.js +1 -0
  243. package/node_modules/arktype/out/parser/ast/default.d.ts +8 -0
  244. package/node_modules/arktype/out/parser/ast/default.js +1 -0
  245. package/node_modules/arktype/out/parser/ast/divisor.d.ts +9 -0
  246. package/node_modules/arktype/out/parser/ast/divisor.js +1 -0
  247. package/node_modules/arktype/out/parser/ast/generic.d.ts +17 -0
  248. package/node_modules/arktype/out/parser/ast/generic.js +1 -0
  249. package/node_modules/arktype/out/parser/ast/infer.d.ts +25 -0
  250. package/node_modules/arktype/out/parser/ast/infer.js +1 -0
  251. package/node_modules/arktype/out/parser/ast/keyof.d.ts +7 -0
  252. package/node_modules/arktype/out/parser/ast/keyof.js +1 -0
  253. package/node_modules/arktype/out/parser/ast/utils.d.ts +8 -0
  254. package/node_modules/arktype/out/parser/ast/utils.js +1 -0
  255. package/node_modules/arktype/out/parser/ast/validate.d.ts +30 -0
  256. package/node_modules/arktype/out/parser/ast/validate.js +3 -0
  257. package/node_modules/arktype/out/parser/definition.d.ts +30 -0
  258. package/node_modules/arktype/out/parser/definition.js +74 -0
  259. package/node_modules/arktype/out/parser/objectLiteral.d.ts +70 -0
  260. package/node_modules/arktype/out/parser/objectLiteral.js +113 -0
  261. package/node_modules/arktype/out/parser/property.d.ts +34 -0
  262. package/node_modules/arktype/out/parser/property.js +16 -0
  263. package/node_modules/arktype/out/parser/reduce/dynamic.d.ts +42 -0
  264. package/node_modules/arktype/out/parser/reduce/dynamic.js +153 -0
  265. package/node_modules/arktype/out/parser/reduce/shared.d.ts +39 -0
  266. package/node_modules/arktype/out/parser/reduce/shared.js +25 -0
  267. package/node_modules/arktype/out/parser/reduce/static.d.ts +186 -0
  268. package/node_modules/arktype/out/parser/reduce/static.js +1 -0
  269. package/node_modules/arktype/out/parser/shift/operand/date.d.ts +11 -0
  270. package/node_modules/arktype/out/parser/shift/operand/date.js +23 -0
  271. package/node_modules/arktype/out/parser/shift/operand/enclosed.d.ts +57 -0
  272. package/node_modules/arktype/out/parser/shift/operand/enclosed.js +78 -0
  273. package/node_modules/arktype/out/parser/shift/operand/genericArgs.d.ts +27 -0
  274. package/node_modules/arktype/out/parser/shift/operand/genericArgs.js +16 -0
  275. package/node_modules/arktype/out/parser/shift/operand/operand.d.ts +8 -0
  276. package/node_modules/arktype/out/parser/shift/operand/operand.js +16 -0
  277. package/node_modules/arktype/out/parser/shift/operand/unenclosed.d.ts +43 -0
  278. package/node_modules/arktype/out/parser/shift/operand/unenclosed.js +59 -0
  279. package/node_modules/arktype/out/parser/shift/operator/bounds.d.ts +24 -0
  280. package/node_modules/arktype/out/parser/shift/operator/bounds.js +91 -0
  281. package/node_modules/arktype/out/parser/shift/operator/brand.d.ts +7 -0
  282. package/node_modules/arktype/out/parser/shift/operator/brand.js +6 -0
  283. package/node_modules/arktype/out/parser/shift/operator/default.d.ts +24 -0
  284. package/node_modules/arktype/out/parser/shift/operator/default.js +15 -0
  285. package/node_modules/arktype/out/parser/shift/operator/divisor.d.ts +8 -0
  286. package/node_modules/arktype/out/parser/shift/operator/divisor.js +13 -0
  287. package/node_modules/arktype/out/parser/shift/operator/operator.d.ts +14 -0
  288. package/node_modules/arktype/out/parser/shift/operator/operator.js +28 -0
  289. package/node_modules/arktype/out/parser/shift/tokens.d.ts +33 -0
  290. package/node_modules/arktype/out/parser/shift/tokens.js +37 -0
  291. package/node_modules/arktype/out/parser/string.d.ts +30 -0
  292. package/node_modules/arktype/out/parser/string.js +42 -0
  293. package/node_modules/arktype/out/parser/tupleExpressions.d.ts +79 -0
  294. package/node_modules/arktype/out/parser/tupleExpressions.js +75 -0
  295. package/node_modules/arktype/out/parser/tupleLiteral.d.ts +95 -0
  296. package/node_modules/arktype/out/parser/tupleLiteral.js +128 -0
  297. package/node_modules/arktype/out/scope.d.ts +158 -0
  298. package/node_modules/arktype/out/scope.js +106 -0
  299. package/node_modules/arktype/out/type.d.ts +144 -0
  300. package/node_modules/arktype/out/type.js +55 -0
  301. package/node_modules/arktype/out/variants/array.d.ts +12 -0
  302. package/node_modules/arktype/out/variants/array.js +1 -0
  303. package/node_modules/arktype/out/variants/base.d.ts +542 -0
  304. package/node_modules/arktype/out/variants/base.js +1 -0
  305. package/node_modules/arktype/out/variants/date.d.ts +10 -0
  306. package/node_modules/arktype/out/variants/date.js +1 -0
  307. package/node_modules/arktype/out/variants/instantiate.d.ts +12 -0
  308. package/node_modules/arktype/out/variants/instantiate.js +1 -0
  309. package/node_modules/arktype/out/variants/number.d.ts +11 -0
  310. package/node_modules/arktype/out/variants/number.js +1 -0
  311. package/node_modules/arktype/out/variants/object.d.ts +107 -0
  312. package/node_modules/arktype/out/variants/object.js +1 -0
  313. package/node_modules/arktype/out/variants/string.d.ts +15 -0
  314. package/node_modules/arktype/out/variants/string.js +1 -0
  315. package/node_modules/arktype/package.json +57 -0
  316. package/node_modules/debug/LICENSE +20 -0
  317. package/node_modules/debug/README.md +481 -0
  318. package/node_modules/debug/package.json +64 -0
  319. package/node_modules/debug/src/browser.js +272 -0
  320. package/node_modules/debug/src/common.js +292 -0
  321. package/node_modules/debug/src/index.js +10 -0
  322. package/node_modules/debug/src/node.js +263 -0
  323. package/node_modules/engine.io-client/LICENSE +22 -0
  324. package/node_modules/engine.io-client/README.md +331 -0
  325. package/node_modules/engine.io-client/build/cjs/browser-entrypoint.d.ts +3 -0
  326. package/node_modules/engine.io-client/build/cjs/browser-entrypoint.js +4 -0
  327. package/node_modules/engine.io-client/build/cjs/contrib/has-cors.d.ts +1 -0
  328. package/node_modules/engine.io-client/build/cjs/contrib/has-cors.js +14 -0
  329. package/node_modules/engine.io-client/build/cjs/contrib/parseqs.d.ts +15 -0
  330. package/node_modules/engine.io-client/build/cjs/contrib/parseqs.js +38 -0
  331. package/node_modules/engine.io-client/build/cjs/contrib/parseuri.d.ts +1 -0
  332. package/node_modules/engine.io-client/build/cjs/contrib/parseuri.js +67 -0
  333. package/node_modules/engine.io-client/build/cjs/globals.d.ts +4 -0
  334. package/node_modules/engine.io-client/build/cjs/globals.js +26 -0
  335. package/node_modules/engine.io-client/build/cjs/globals.node.d.ts +21 -0
  336. package/node_modules/engine.io-client/build/cjs/globals.node.js +97 -0
  337. package/node_modules/engine.io-client/build/cjs/index.d.ts +15 -0
  338. package/node_modules/engine.io-client/build/cjs/index.js +32 -0
  339. package/node_modules/engine.io-client/build/cjs/package.json +10 -0
  340. package/node_modules/engine.io-client/build/cjs/socket.d.ts +482 -0
  341. package/node_modules/engine.io-client/build/cjs/socket.js +765 -0
  342. package/node_modules/engine.io-client/build/cjs/transport.d.ts +106 -0
  343. package/node_modules/engine.io-client/build/cjs/transport.js +153 -0
  344. package/node_modules/engine.io-client/build/cjs/transports/index.d.ts +8 -0
  345. package/node_modules/engine.io-client/build/cjs/transports/index.js +11 -0
  346. package/node_modules/engine.io-client/build/cjs/transports/polling-fetch.d.ts +15 -0
  347. package/node_modules/engine.io-client/build/cjs/transports/polling-fetch.js +60 -0
  348. package/node_modules/engine.io-client/build/cjs/transports/polling-xhr.d.ts +108 -0
  349. package/node_modules/engine.io-client/build/cjs/transports/polling-xhr.js +285 -0
  350. package/node_modules/engine.io-client/build/cjs/transports/polling-xhr.node.d.ts +11 -0
  351. package/node_modules/engine.io-client/build/cjs/transports/polling-xhr.node.js +44 -0
  352. package/node_modules/engine.io-client/build/cjs/transports/polling.d.ts +52 -0
  353. package/node_modules/engine.io-client/build/cjs/transports/polling.js +165 -0
  354. package/node_modules/engine.io-client/build/cjs/transports/websocket.d.ts +36 -0
  355. package/node_modules/engine.io-client/build/cjs/transports/websocket.js +136 -0
  356. package/node_modules/engine.io-client/build/cjs/transports/websocket.node.d.ts +14 -0
  357. package/node_modules/engine.io-client/build/cjs/transports/websocket.node.js +68 -0
  358. package/node_modules/engine.io-client/build/cjs/transports/webtransport.d.ts +18 -0
  359. package/node_modules/engine.io-client/build/cjs/transports/webtransport.js +94 -0
  360. package/node_modules/engine.io-client/build/cjs/util.d.ts +7 -0
  361. package/node_modules/engine.io-client/build/cjs/util.js +65 -0
  362. package/node_modules/engine.io-client/build/esm/browser-entrypoint.d.ts +3 -0
  363. package/node_modules/engine.io-client/build/esm/browser-entrypoint.js +2 -0
  364. package/node_modules/engine.io-client/build/esm/contrib/has-cors.d.ts +1 -0
  365. package/node_modules/engine.io-client/build/esm/contrib/has-cors.js +11 -0
  366. package/node_modules/engine.io-client/build/esm/contrib/parseqs.d.ts +15 -0
  367. package/node_modules/engine.io-client/build/esm/contrib/parseqs.js +34 -0
  368. package/node_modules/engine.io-client/build/esm/contrib/parseuri.d.ts +1 -0
  369. package/node_modules/engine.io-client/build/esm/contrib/parseuri.js +64 -0
  370. package/node_modules/engine.io-client/build/esm/globals.d.ts +4 -0
  371. package/node_modules/engine.io-client/build/esm/globals.js +22 -0
  372. package/node_modules/engine.io-client/build/esm/globals.node.d.ts +21 -0
  373. package/node_modules/engine.io-client/build/esm/globals.node.js +91 -0
  374. package/node_modules/engine.io-client/build/esm/index.d.ts +15 -0
  375. package/node_modules/engine.io-client/build/esm/index.js +15 -0
  376. package/node_modules/engine.io-client/build/esm/package.json +10 -0
  377. package/node_modules/engine.io-client/build/esm/socket.d.ts +482 -0
  378. package/node_modules/engine.io-client/build/esm/socket.js +727 -0
  379. package/node_modules/engine.io-client/build/esm/transport.d.ts +106 -0
  380. package/node_modules/engine.io-client/build/esm/transport.js +142 -0
  381. package/node_modules/engine.io-client/build/esm/transports/index.d.ts +8 -0
  382. package/node_modules/engine.io-client/build/esm/transports/index.js +8 -0
  383. package/node_modules/engine.io-client/build/esm/transports/polling-fetch.d.ts +15 -0
  384. package/node_modules/engine.io-client/build/esm/transports/polling-fetch.js +56 -0
  385. package/node_modules/engine.io-client/build/esm/transports/polling-xhr.d.ts +108 -0
  386. package/node_modules/engine.io-client/build/esm/transports/polling-xhr.js +271 -0
  387. package/node_modules/engine.io-client/build/esm/transports/polling-xhr.node.d.ts +11 -0
  388. package/node_modules/engine.io-client/build/esm/transports/polling-xhr.node.js +17 -0
  389. package/node_modules/engine.io-client/build/esm/transports/polling.d.ts +52 -0
  390. package/node_modules/engine.io-client/build/esm/transports/polling.js +145 -0
  391. package/node_modules/engine.io-client/build/esm/transports/websocket.d.ts +36 -0
  392. package/node_modules/engine.io-client/build/esm/transports/websocket.js +125 -0
  393. package/node_modules/engine.io-client/build/esm/transports/websocket.node.d.ts +14 -0
  394. package/node_modules/engine.io-client/build/esm/transports/websocket.node.js +41 -0
  395. package/node_modules/engine.io-client/build/esm/transports/webtransport.d.ts +18 -0
  396. package/node_modules/engine.io-client/build/esm/transports/webtransport.js +80 -0
  397. package/node_modules/engine.io-client/build/esm/util.d.ts +7 -0
  398. package/node_modules/engine.io-client/build/esm/util.js +59 -0
  399. package/node_modules/engine.io-client/build/esm-debug/browser-entrypoint.d.ts +3 -0
  400. package/node_modules/engine.io-client/build/esm-debug/browser-entrypoint.js +2 -0
  401. package/node_modules/engine.io-client/build/esm-debug/contrib/has-cors.d.ts +1 -0
  402. package/node_modules/engine.io-client/build/esm-debug/contrib/has-cors.js +11 -0
  403. package/node_modules/engine.io-client/build/esm-debug/contrib/parseqs.d.ts +15 -0
  404. package/node_modules/engine.io-client/build/esm-debug/contrib/parseqs.js +34 -0
  405. package/node_modules/engine.io-client/build/esm-debug/contrib/parseuri.d.ts +1 -0
  406. package/node_modules/engine.io-client/build/esm-debug/contrib/parseuri.js +64 -0
  407. package/node_modules/engine.io-client/build/esm-debug/globals.d.ts +4 -0
  408. package/node_modules/engine.io-client/build/esm-debug/globals.js +22 -0
  409. package/node_modules/engine.io-client/build/esm-debug/globals.node.d.ts +21 -0
  410. package/node_modules/engine.io-client/build/esm-debug/globals.node.js +91 -0
  411. package/node_modules/engine.io-client/build/esm-debug/index.d.ts +15 -0
  412. package/node_modules/engine.io-client/build/esm-debug/index.js +15 -0
  413. package/node_modules/engine.io-client/build/esm-debug/package.json +10 -0
  414. package/node_modules/engine.io-client/build/esm-debug/socket.d.ts +482 -0
  415. package/node_modules/engine.io-client/build/esm-debug/socket.js +756 -0
  416. package/node_modules/engine.io-client/build/esm-debug/transport.d.ts +106 -0
  417. package/node_modules/engine.io-client/build/esm-debug/transport.js +145 -0
  418. package/node_modules/engine.io-client/build/esm-debug/transports/index.d.ts +8 -0
  419. package/node_modules/engine.io-client/build/esm-debug/transports/index.js +8 -0
  420. package/node_modules/engine.io-client/build/esm-debug/transports/polling-fetch.d.ts +15 -0
  421. package/node_modules/engine.io-client/build/esm-debug/transports/polling-fetch.js +56 -0
  422. package/node_modules/engine.io-client/build/esm-debug/transports/polling-xhr.d.ts +108 -0
  423. package/node_modules/engine.io-client/build/esm-debug/transports/polling-xhr.js +276 -0
  424. package/node_modules/engine.io-client/build/esm-debug/transports/polling-xhr.node.d.ts +11 -0
  425. package/node_modules/engine.io-client/build/esm-debug/transports/polling-xhr.node.js +17 -0
  426. package/node_modules/engine.io-client/build/esm-debug/transports/polling.d.ts +52 -0
  427. package/node_modules/engine.io-client/build/esm-debug/transports/polling.js +158 -0
  428. package/node_modules/engine.io-client/build/esm-debug/transports/websocket.d.ts +36 -0
  429. package/node_modules/engine.io-client/build/esm-debug/transports/websocket.js +128 -0
  430. package/node_modules/engine.io-client/build/esm-debug/transports/websocket.node.d.ts +14 -0
  431. package/node_modules/engine.io-client/build/esm-debug/transports/websocket.node.js +41 -0
  432. package/node_modules/engine.io-client/build/esm-debug/transports/webtransport.d.ts +18 -0
  433. package/node_modules/engine.io-client/build/esm-debug/transports/webtransport.js +87 -0
  434. package/node_modules/engine.io-client/build/esm-debug/util.d.ts +7 -0
  435. package/node_modules/engine.io-client/build/esm-debug/util.js +59 -0
  436. package/node_modules/engine.io-client/dist/engine.io.esm.min.js +7 -0
  437. package/node_modules/engine.io-client/dist/engine.io.esm.min.js.map +1 -0
  438. package/node_modules/engine.io-client/dist/engine.io.js +3064 -0
  439. package/node_modules/engine.io-client/dist/engine.io.js.map +1 -0
  440. package/node_modules/engine.io-client/dist/engine.io.min.js +7 -0
  441. package/node_modules/engine.io-client/dist/engine.io.min.js.map +1 -0
  442. package/node_modules/engine.io-client/package.json +95 -0
  443. package/node_modules/engine.io-parser/LICENSE +22 -0
  444. package/node_modules/engine.io-parser/Readme.md +158 -0
  445. package/node_modules/engine.io-parser/build/cjs/commons.d.ts +14 -0
  446. package/node_modules/engine.io-parser/build/cjs/commons.js +19 -0
  447. package/node_modules/engine.io-parser/build/cjs/contrib/base64-arraybuffer.d.ts +2 -0
  448. package/node_modules/engine.io-parser/build/cjs/contrib/base64-arraybuffer.js +48 -0
  449. package/node_modules/engine.io-parser/build/cjs/decodePacket.browser.d.ts +2 -0
  450. package/node_modules/engine.io-parser/build/cjs/decodePacket.browser.js +66 -0
  451. package/node_modules/engine.io-parser/build/cjs/decodePacket.d.ts +2 -0
  452. package/node_modules/engine.io-parser/build/cjs/decodePacket.js +59 -0
  453. package/node_modules/engine.io-parser/build/cjs/encodePacket.browser.d.ts +4 -0
  454. package/node_modules/engine.io-parser/build/cjs/encodePacket.browser.js +72 -0
  455. package/node_modules/engine.io-parser/build/cjs/encodePacket.d.ts +3 -0
  456. package/node_modules/engine.io-parser/build/cjs/encodePacket.js +38 -0
  457. package/node_modules/engine.io-parser/build/cjs/index.d.ts +9 -0
  458. package/node_modules/engine.io-parser/build/cjs/index.js +164 -0
  459. package/node_modules/engine.io-parser/build/cjs/package.json +8 -0
  460. package/node_modules/engine.io-parser/build/esm/commons.d.ts +14 -0
  461. package/node_modules/engine.io-parser/build/esm/commons.js +14 -0
  462. package/node_modules/engine.io-parser/build/esm/contrib/base64-arraybuffer.d.ts +2 -0
  463. package/node_modules/engine.io-parser/build/esm/contrib/base64-arraybuffer.js +43 -0
  464. package/node_modules/engine.io-parser/build/esm/decodePacket.browser.d.ts +2 -0
  465. package/node_modules/engine.io-parser/build/esm/decodePacket.browser.js +62 -0
  466. package/node_modules/engine.io-parser/build/esm/decodePacket.d.ts +2 -0
  467. package/node_modules/engine.io-parser/build/esm/decodePacket.js +55 -0
  468. package/node_modules/engine.io-parser/build/esm/encodePacket.browser.d.ts +4 -0
  469. package/node_modules/engine.io-parser/build/esm/encodePacket.browser.js +68 -0
  470. package/node_modules/engine.io-parser/build/esm/encodePacket.d.ts +3 -0
  471. package/node_modules/engine.io-parser/build/esm/encodePacket.js +33 -0
  472. package/node_modules/engine.io-parser/build/esm/index.d.ts +9 -0
  473. package/node_modules/engine.io-parser/build/esm/index.js +156 -0
  474. package/node_modules/engine.io-parser/build/esm/package.json +8 -0
  475. package/node_modules/engine.io-parser/package.json +46 -0
  476. package/node_modules/ms/index.js +162 -0
  477. package/node_modules/ms/license.md +21 -0
  478. package/node_modules/ms/package.json +38 -0
  479. package/node_modules/ms/readme.md +59 -0
  480. package/node_modules/socket.io-client/LICENSE +21 -0
  481. package/node_modules/socket.io-client/README.md +29 -0
  482. package/node_modules/socket.io-client/build/cjs/browser-entrypoint.d.ts +2 -0
  483. package/node_modules/socket.io-client/build/cjs/browser-entrypoint.js +4 -0
  484. package/node_modules/socket.io-client/build/cjs/contrib/backo2.d.ts +12 -0
  485. package/node_modules/socket.io-client/build/cjs/contrib/backo2.js +69 -0
  486. package/node_modules/socket.io-client/build/cjs/index.d.ts +29 -0
  487. package/node_modules/socket.io-client/build/cjs/index.js +76 -0
  488. package/node_modules/socket.io-client/build/cjs/manager.d.ts +295 -0
  489. package/node_modules/socket.io-client/build/cjs/manager.js +416 -0
  490. package/node_modules/socket.io-client/build/cjs/on.d.ts +2 -0
  491. package/node_modules/socket.io-client/build/cjs/on.js +9 -0
  492. package/node_modules/socket.io-client/build/cjs/socket.d.ts +593 -0
  493. package/node_modules/socket.io-client/build/cjs/socket.js +909 -0
  494. package/node_modules/socket.io-client/build/cjs/url.d.ts +33 -0
  495. package/node_modules/socket.io-client/build/cjs/url.js +69 -0
  496. package/node_modules/socket.io-client/build/esm/browser-entrypoint.d.ts +2 -0
  497. package/node_modules/socket.io-client/build/esm/browser-entrypoint.js +2 -0
  498. package/node_modules/socket.io-client/build/esm/contrib/backo2.d.ts +12 -0
  499. package/node_modules/socket.io-client/build/esm/contrib/backo2.js +66 -0
  500. package/node_modules/socket.io-client/build/esm/index.d.ts +29 -0
  501. package/node_modules/socket.io-client/build/esm/index.js +58 -0
  502. package/node_modules/socket.io-client/build/esm/manager.d.ts +295 -0
  503. package/node_modules/socket.io-client/build/esm/manager.js +367 -0
  504. package/node_modules/socket.io-client/build/esm/on.d.ts +2 -0
  505. package/node_modules/socket.io-client/build/esm/on.js +6 -0
  506. package/node_modules/socket.io-client/build/esm/package.json +5 -0
  507. package/node_modules/socket.io-client/build/esm/socket.d.ts +593 -0
  508. package/node_modules/socket.io-client/build/esm/socket.js +880 -0
  509. package/node_modules/socket.io-client/build/esm/url.d.ts +33 -0
  510. package/node_modules/socket.io-client/build/esm/url.js +59 -0
  511. package/node_modules/socket.io-client/build/esm-debug/browser-entrypoint.d.ts +2 -0
  512. package/node_modules/socket.io-client/build/esm-debug/browser-entrypoint.js +2 -0
  513. package/node_modules/socket.io-client/build/esm-debug/contrib/backo2.d.ts +12 -0
  514. package/node_modules/socket.io-client/build/esm-debug/contrib/backo2.js +66 -0
  515. package/node_modules/socket.io-client/build/esm-debug/index.d.ts +29 -0
  516. package/node_modules/socket.io-client/build/esm-debug/index.js +62 -0
  517. package/node_modules/socket.io-client/build/esm-debug/manager.d.ts +295 -0
  518. package/node_modules/socket.io-client/build/esm-debug/manager.js +386 -0
  519. package/node_modules/socket.io-client/build/esm-debug/on.d.ts +2 -0
  520. package/node_modules/socket.io-client/build/esm-debug/on.js +6 -0
  521. package/node_modules/socket.io-client/build/esm-debug/package.json +5 -0
  522. package/node_modules/socket.io-client/build/esm-debug/socket.d.ts +593 -0
  523. package/node_modules/socket.io-client/build/esm-debug/socket.js +902 -0
  524. package/node_modules/socket.io-client/build/esm-debug/url.d.ts +33 -0
  525. package/node_modules/socket.io-client/build/esm-debug/url.js +63 -0
  526. package/node_modules/socket.io-client/dist/socket.io.esm.min.js +7 -0
  527. package/node_modules/socket.io-client/dist/socket.io.esm.min.js.map +1 -0
  528. package/node_modules/socket.io-client/dist/socket.io.js +4955 -0
  529. package/node_modules/socket.io-client/dist/socket.io.js.map +1 -0
  530. package/node_modules/socket.io-client/dist/socket.io.min.js +7 -0
  531. package/node_modules/socket.io-client/dist/socket.io.min.js.map +1 -0
  532. package/node_modules/socket.io-client/dist/socket.io.msgpack.min.js +7 -0
  533. package/node_modules/socket.io-client/dist/socket.io.msgpack.min.js.map +1 -0
  534. package/node_modules/socket.io-client/package.json +101 -0
  535. package/node_modules/socket.io-parser/LICENSE +20 -0
  536. package/node_modules/socket.io-parser/Readme.md +81 -0
  537. package/node_modules/socket.io-parser/build/cjs/binary.d.ts +20 -0
  538. package/node_modules/socket.io-parser/build/cjs/binary.js +87 -0
  539. package/node_modules/socket.io-parser/build/cjs/index.d.ts +91 -0
  540. package/node_modules/socket.io-parser/build/cjs/index.js +359 -0
  541. package/node_modules/socket.io-parser/build/cjs/is-binary.d.ts +7 -0
  542. package/node_modules/socket.io-parser/build/cjs/is-binary.js +54 -0
  543. package/node_modules/socket.io-parser/build/cjs/package.json +3 -0
  544. package/node_modules/socket.io-parser/build/esm/binary.d.ts +20 -0
  545. package/node_modules/socket.io-parser/build/esm/binary.js +83 -0
  546. package/node_modules/socket.io-parser/build/esm/index.d.ts +91 -0
  547. package/node_modules/socket.io-parser/build/esm/index.js +348 -0
  548. package/node_modules/socket.io-parser/build/esm/is-binary.d.ts +7 -0
  549. package/node_modules/socket.io-parser/build/esm/is-binary.js +50 -0
  550. package/node_modules/socket.io-parser/build/esm/package.json +3 -0
  551. package/node_modules/socket.io-parser/build/esm-debug/binary.d.ts +20 -0
  552. package/node_modules/socket.io-parser/build/esm-debug/binary.js +83 -0
  553. package/node_modules/socket.io-parser/build/esm-debug/index.d.ts +91 -0
  554. package/node_modules/socket.io-parser/build/esm-debug/index.js +353 -0
  555. package/node_modules/socket.io-parser/build/esm-debug/is-binary.d.ts +7 -0
  556. package/node_modules/socket.io-parser/build/esm-debug/is-binary.js +50 -0
  557. package/node_modules/socket.io-parser/build/esm-debug/package.json +3 -0
  558. package/node_modules/socket.io-parser/package.json +44 -0
  559. package/node_modules/ws/LICENSE +20 -0
  560. package/node_modules/ws/README.md +548 -0
  561. package/node_modules/ws/browser.js +8 -0
  562. package/node_modules/ws/index.js +13 -0
  563. package/node_modules/ws/lib/buffer-util.js +131 -0
  564. package/node_modules/ws/lib/constants.js +18 -0
  565. package/node_modules/ws/lib/event-target.js +292 -0
  566. package/node_modules/ws/lib/extension.js +203 -0
  567. package/node_modules/ws/lib/limiter.js +55 -0
  568. package/node_modules/ws/lib/permessage-deflate.js +528 -0
  569. package/node_modules/ws/lib/receiver.js +706 -0
  570. package/node_modules/ws/lib/sender.js +602 -0
  571. package/node_modules/ws/lib/stream.js +161 -0
  572. package/node_modules/ws/lib/subprotocol.js +62 -0
  573. package/node_modules/ws/lib/validation.js +152 -0
  574. package/node_modules/ws/lib/websocket-server.js +550 -0
  575. package/node_modules/ws/lib/websocket.js +1388 -0
  576. package/node_modules/ws/package.json +69 -0
  577. package/node_modules/ws/wrapper.mjs +8 -0
  578. package/node_modules/xmlhttprequest-ssl/LICENSE +22 -0
  579. package/node_modules/xmlhttprequest-ssl/README.md +67 -0
  580. package/node_modules/xmlhttprequest-ssl/lib/XMLHttpRequest.js +689 -0
  581. package/node_modules/xmlhttprequest-ssl/package.json +40 -0
  582. package/package.json +34 -4
  583. package/public-api.md +85 -23
@@ -0,0 +1,80 @@
1
+ import type { merge, show } from "@ark/util";
2
+ import type { UnknownErrorConfigs } from "../config.ts";
3
+ import type { nodeOfKind, reducibleKindOf } from "../kinds.ts";
4
+ import type { Disjoint } from "./disjoint.ts";
5
+ import type { ArkErrors } from "./errors.ts";
6
+ import type { NarrowedAttachments, NodeKind } from "./implement.ts";
7
+ import type { JsonSchema } from "./jsonSchema.ts";
8
+ type withMetaPrefixedKeys<o> = {
9
+ [k in keyof o as k extends string ? `meta.${k}` : never]: o[k];
10
+ };
11
+ export interface DefaultArkEnv {
12
+ meta(): {};
13
+ onFail(errors: ArkErrors): ArkErrors;
14
+ }
15
+ interface NodeMeta extends JsonSchema.UniversalMeta, UnknownErrorConfigs {
16
+ alias?: string;
17
+ onFail?: ArkErrors.Handler;
18
+ }
19
+ declare global {
20
+ export interface ArkEnv extends DefaultArkEnv {
21
+ }
22
+ export namespace ArkEnv {
23
+ type meta = show<NodeMeta & ReturnType<ArkEnv["meta"]>>;
24
+ type onFail = ReturnType<ArkEnv["onFail"]>;
25
+ }
26
+ }
27
+ export type TypeMeta = Omit<ArkEnv.meta, "onFail">;
28
+ export declare namespace TypeMeta {
29
+ type Collapsible<meta extends TypeMeta = TypeMeta> = meta | string;
30
+ type Mapper<meta extends TypeMeta = TypeMeta> = (existing: Readonly<meta>) => meta;
31
+ type MappableInput<meta extends TypeMeta = TypeMeta> = Collapsible<meta> | Mapper<meta>;
32
+ namespace MappableInput {
33
+ type Internal = MappableInput<ArkEnv.meta>;
34
+ }
35
+ }
36
+ export interface BaseNormalizedSchema extends withMetaPrefixedKeys<TypeMeta> {
37
+ readonly meta?: ArkEnv.meta | string;
38
+ }
39
+ interface DeclarationInput {
40
+ kind: NodeKind;
41
+ schema: unknown;
42
+ normalizedSchema: BaseNormalizedSchema;
43
+ inner: object;
44
+ errorContext?: BaseErrorContext;
45
+ reducibleTo?: NodeKind;
46
+ intersectionIsOpen?: true;
47
+ prerequisite?: unknown;
48
+ childKind?: NodeKind;
49
+ }
50
+ export interface BaseErrorContext<kind extends NodeKind = NodeKind> {
51
+ readonly description?: string;
52
+ readonly code: kind;
53
+ readonly meta: ArkEnv.meta;
54
+ }
55
+ export type defaultErrorContext<d extends DeclarationInput> = show<BaseErrorContext<d["kind"]> & d["inner"]>;
56
+ export type declareNode<d extends {
57
+ [k in keyof d]: k extends keyof DeclarationInput ? DeclarationInput[k] : never;
58
+ } & DeclarationInput> = merge<{
59
+ intersectionIsOpen: false;
60
+ prerequisite: prerequisiteOf<d>;
61
+ childKind: never;
62
+ reducibleTo: d["kind"];
63
+ errorContext: null;
64
+ }, d>;
65
+ type prerequisiteOf<d extends DeclarationInput> = "prerequisite" extends keyof d ? d["prerequisite"] : unknown;
66
+ export type attachmentsOf<d extends BaseNodeDeclaration> = NarrowedAttachments<d> & attachedInner<d>;
67
+ type attachedInner<d extends BaseNodeDeclaration> = "intersection" & d["kind"] extends never ? d["inner"] : {};
68
+ export interface BaseNodeDeclaration {
69
+ kind: NodeKind;
70
+ schema: unknown;
71
+ normalizedSchema: BaseNormalizedSchema;
72
+ inner: {};
73
+ reducibleTo: NodeKind;
74
+ prerequisite: any;
75
+ intersectionIsOpen: boolean;
76
+ childKind: NodeKind;
77
+ errorContext: BaseErrorContext | null;
78
+ }
79
+ export type ownIntersectionResult<d extends BaseNodeDeclaration> = nodeOfKind<reducibleKindOf<d["kind"]>> | Disjoint;
80
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,41 @@
1
+ import { type Key } from "@ark/util";
2
+ import type { nodeOfKind } from "../kinds.ts";
3
+ import type { BaseNode } from "../node.ts";
4
+ import type { BoundKind } from "../refinements/kinds.ts";
5
+ import type { Domain } from "../roots/domain.ts";
6
+ import type { BaseRoot } from "../roots/root.ts";
7
+ import type { Prop } from "../structure/prop.ts";
8
+ export interface DisjointEntry<kind extends DisjointKind = DisjointKind> {
9
+ kind: kind;
10
+ l: OperandsByDisjointKind[kind];
11
+ r: OperandsByDisjointKind[kind];
12
+ path: Key[];
13
+ optional: boolean;
14
+ }
15
+ type OperandsByDisjointKind = {
16
+ domain: nodeOfKind<"domain"> | Domain.Enumerable;
17
+ unit: nodeOfKind<"unit">;
18
+ proto: nodeOfKind<"proto">;
19
+ presence: BaseRoot;
20
+ range: nodeOfKind<BoundKind>;
21
+ assignability: BaseNode;
22
+ union: readonly BaseRoot[];
23
+ };
24
+ export type DisjointEntryContext = {
25
+ path?: Key[];
26
+ optional?: true;
27
+ };
28
+ export declare class Disjoint extends Array<DisjointEntry> {
29
+ static init<kind extends DisjointKind>(kind: kind, l: OperandsByDisjointKind[kind], r: OperandsByDisjointKind[kind], ctx?: DisjointEntryContext): Disjoint;
30
+ add<kind extends DisjointKind>(kind: kind, l: OperandsByDisjointKind[kind], r: OperandsByDisjointKind[kind], ctx?: DisjointEntryContext): Disjoint;
31
+ get summary(): string;
32
+ describeReasons(): string;
33
+ throw(): never;
34
+ invert(): Disjoint;
35
+ withPrefixKey(key: PropertyKey, kind: Prop.Kind): Disjoint;
36
+ toNeverIfDisjoint(): BaseRoot;
37
+ }
38
+ export type DisjointKind = keyof OperandsByDisjointKind;
39
+ export declare const writeUnsatisfiableExpressionError: <expression extends string>(expression: expression) => writeUnsatisfiableExpressionError<expression>;
40
+ export type writeUnsatisfiableExpressionError<expression extends string> = `${expression} results in an unsatisfiable type`;
41
+ export {};
@@ -0,0 +1,65 @@
1
+ import { isArray, stringifyPath, throwParseError } from "@ark/util";
2
+ import { $ark } from "./registry.js";
3
+ import { isNode } from "./utils.js";
4
+ export class Disjoint extends Array {
5
+ static init(kind, l, r, ctx) {
6
+ return new Disjoint({
7
+ kind,
8
+ l,
9
+ r,
10
+ path: ctx?.path ?? [],
11
+ optional: ctx?.optional ?? false
12
+ });
13
+ }
14
+ add(kind, l, r, ctx) {
15
+ this.push({
16
+ kind,
17
+ l,
18
+ r,
19
+ path: ctx?.path ?? [],
20
+ optional: ctx?.optional ?? false
21
+ });
22
+ return this;
23
+ }
24
+ get summary() {
25
+ return this.describeReasons();
26
+ }
27
+ describeReasons() {
28
+ if (this.length === 1) {
29
+ const { path, l, r } = this[0];
30
+ const pathString = stringifyPath(path);
31
+ return writeUnsatisfiableExpressionError(`Intersection${pathString && ` at ${pathString}`} of ${describeReasons(l, r)}`);
32
+ }
33
+ return `The following intersections result in unsatisfiable types:\n• ${this.map(({ path, l, r }) => `${path}: ${describeReasons(l, r)}`).join("\n• ")}`;
34
+ }
35
+ throw() {
36
+ return throwParseError(this.describeReasons());
37
+ }
38
+ invert() {
39
+ const result = this.map(entry => ({
40
+ ...entry,
41
+ l: entry.r,
42
+ r: entry.l
43
+ }));
44
+ // Workaround for Static Hermes, which doesn't preserve the Array subclass here
45
+ // https://github.com/arktypeio/arktype/issues/1027
46
+ if (!(result instanceof Disjoint))
47
+ return new Disjoint(...result);
48
+ return result;
49
+ }
50
+ withPrefixKey(key, kind) {
51
+ return this.map(entry => ({
52
+ ...entry,
53
+ path: [key, ...entry.path],
54
+ optional: entry.optional || kind === "optional"
55
+ }));
56
+ }
57
+ toNeverIfDisjoint() {
58
+ return $ark.intrinsic.never;
59
+ }
60
+ }
61
+ const describeReasons = (l, r) => `${describeReason(l)} and ${describeReason(r)}`;
62
+ const describeReason = (value) => isNode(value) ? value.expression
63
+ : isArray(value) ? value.map(describeReason).join(" | ") || "never"
64
+ : String(value);
65
+ export const writeUnsatisfiableExpressionError = (expression) => `${expression} results in an unsatisfiable type`;
@@ -0,0 +1,145 @@
1
+ import { CastableBase, ReadonlyArray, ReadonlyPath, type JsonArray, type JsonObject, type array, type merge, type propwiseXor, type show } from "@ark/util";
2
+ import type { Prerequisite, errorContext } from "../kinds.ts";
3
+ import type { NodeKind } from "./implement.ts";
4
+ import type { StandardSchemaV1 } from "./standardSchema.ts";
5
+ import type { Traversal } from "./traversal.ts";
6
+ import { arkKind } from "./utils.ts";
7
+ export type ArkErrorResult = ArkError | ArkErrors;
8
+ export declare class ArkError<code extends ArkErrorCode = ArkErrorCode> extends CastableBase<ArkErrorContextInput<code>> {
9
+ readonly [arkKind] = "error";
10
+ path: ReadonlyPath;
11
+ data: Prerequisite<code>;
12
+ private nodeConfig;
13
+ protected input: ArkErrorContextInput<code>;
14
+ protected ctx: Traversal;
15
+ constructor(input: ArkErrorContextInput<code>, ctx: Traversal);
16
+ transform(f: (input: ArkErrorContextInput<code>) => ArkErrorContextInput): ArkError;
17
+ hasCode<code extends ArkErrorCode>(code: code): this is ArkError<code>;
18
+ get propString(): string;
19
+ get expected(): string;
20
+ get actual(): string;
21
+ get problem(): string;
22
+ get message(): string;
23
+ get flat(): ArkError[];
24
+ toJSON(): JsonObject;
25
+ toString(): string;
26
+ throw(): never;
27
+ }
28
+ export declare namespace ArkErrors {
29
+ type Handler<returns = unknown> = (errors: ArkErrors) => returns;
30
+ }
31
+ /**
32
+ * A ReadonlyArray of `ArkError`s returned by a Type on invalid input.
33
+ *
34
+ * Subsequent errors added at an existing path are merged into an
35
+ * ArkError intersection.
36
+ */
37
+ export declare class ArkErrors extends ReadonlyArray<ArkError> implements StandardSchemaV1.FailureResult {
38
+ readonly [arkKind] = "errors";
39
+ protected ctx: Traversal;
40
+ constructor(ctx: Traversal);
41
+ /**
42
+ * Errors by a pathString representing their location.
43
+ */
44
+ byPath: Record<string, ArkError>;
45
+ /**
46
+ * {@link byPath} flattened so that each value is an array of ArkError instances at that path.
47
+ *
48
+ * ✅ Since "intersection" errors will be flattened to their constituent `.errors`,
49
+ * they will never be directly present in this representation.
50
+ */
51
+ get flatByPath(): Record<string, ArkError[]>;
52
+ /**
53
+ * {@link byPath} flattened so that each value is an array of problem strings at that path.
54
+ */
55
+ get flatProblemsByPath(): Record<string, string[]>;
56
+ /**
57
+ * All pathStrings at which errors are present mapped to the errors occuring
58
+ * at that path or any nested path within it.
59
+ */
60
+ byAncestorPath: Record<string, ArkError[]>;
61
+ count: number;
62
+ private mutable;
63
+ /**
64
+ * Throw a TraversalError based on these errors.
65
+ */
66
+ throw(): never;
67
+ /**
68
+ * Converts ArkErrors to TraversalError, a subclass of `Error` suitable for throwing with nice
69
+ * formatting.
70
+ */
71
+ toTraversalError(): TraversalError;
72
+ /**
73
+ * Append an ArkError to this array, ignoring duplicates.
74
+ */
75
+ add(error: ArkError): void;
76
+ transform(f: (e: ArkError) => ArkError): ArkErrors;
77
+ /**
78
+ * Add all errors from an ArkErrors instance, ignoring duplicates and
79
+ * prefixing their paths with that of the current Traversal.
80
+ */
81
+ merge(errors: ArkErrors): void;
82
+ /**
83
+ * @internal
84
+ */
85
+ affectsPath(path: ReadonlyPath): boolean;
86
+ /**
87
+ * A human-readable summary of all errors.
88
+ */
89
+ get summary(): string;
90
+ /**
91
+ * Alias of this ArkErrors instance for StandardSchema compatibility.
92
+ */
93
+ get issues(): this;
94
+ toJSON(): JsonArray;
95
+ toString(): string;
96
+ private addAncestorPaths;
97
+ }
98
+ export declare class TraversalError extends Error {
99
+ readonly name = "TraversalError";
100
+ arkErrors: ArkErrors;
101
+ constructor(errors: ArkErrors);
102
+ }
103
+ export interface DerivableErrorContext<code extends ArkErrorCode = ArkErrorCode> {
104
+ expected: string;
105
+ actual: string;
106
+ problem: string;
107
+ message: string;
108
+ data: Prerequisite<code>;
109
+ path: array<PropertyKey>;
110
+ propString: string;
111
+ }
112
+ export type DerivableErrorContextInput<code extends ArkErrorCode = ArkErrorCode> = Partial<DerivableErrorContext<code>> & propwiseXor<{
113
+ path?: array<PropertyKey>;
114
+ }, {
115
+ relativePath?: array<PropertyKey>;
116
+ prefixPath?: array<PropertyKey>;
117
+ }>;
118
+ export type ArkErrorCode = {
119
+ [kind in NodeKind]: errorContext<kind> extends null ? never : kind;
120
+ }[NodeKind];
121
+ type ArkErrorContextInputsByCode = {
122
+ [code in ArkErrorCode]: errorContext<code> & DerivableErrorContextInput<code>;
123
+ };
124
+ export type ArkErrorContextInput<code extends ArkErrorCode = ArkErrorCode> = merge<ArkErrorContextInputsByCode[code], {
125
+ meta?: ArkEnv.meta;
126
+ }>;
127
+ export type NodeErrorContextInput<code extends ArkErrorCode = ArkErrorCode> = ArkErrorContextInputsByCode[code] & {
128
+ meta: ArkEnv.meta;
129
+ };
130
+ export type MessageContext<code extends ArkErrorCode = ArkErrorCode> = Omit<ArkError<code>, "message">;
131
+ export type ProblemContext<code extends ArkErrorCode = ArkErrorCode> = Omit<MessageContext<code>, "problem">;
132
+ export type CustomErrorInput = show<{
133
+ code?: undefined;
134
+ } & DerivableErrorContextInput>;
135
+ export type ArkErrorInput = string | ArkErrorContextInput | CustomErrorInput;
136
+ export type ProblemConfig<code extends ArkErrorCode = ArkErrorCode> = string | ProblemWriter<code>;
137
+ export type ProblemWriter<code extends ArkErrorCode = ArkErrorCode> = (context: ProblemContext<code>) => string;
138
+ export type MessageConfig<code extends ArkErrorCode = ArkErrorCode> = string | MessageWriter<code>;
139
+ export type MessageWriter<code extends ArkErrorCode = ArkErrorCode> = (context: MessageContext<code>) => string;
140
+ export type getAssociatedDataForError<code extends ArkErrorCode> = code extends NodeKind ? Prerequisite<code> : unknown;
141
+ export type ExpectedConfig<code extends ArkErrorCode = ArkErrorCode> = string | ExpectedWriter<code>;
142
+ export type ExpectedWriter<code extends ArkErrorCode = ArkErrorCode> = (source: errorContext<code>) => string;
143
+ export type ActualConfig<code extends ArkErrorCode = ArkErrorCode> = string | ActualWriter<code>;
144
+ export type ActualWriter<code extends ArkErrorCode = ArkErrorCode> = (data: getAssociatedDataForError<code>) => string;
145
+ export {};
@@ -0,0 +1,252 @@
1
+ import { CastableBase, ReadonlyArray, ReadonlyPath, append, conflatenateAll, defineProperties, flatMorph, stringifyPath } from "@ark/util";
2
+ import { arkKind } from "./utils.js";
3
+ export class ArkError extends CastableBase {
4
+ [arkKind] = "error";
5
+ path;
6
+ data;
7
+ nodeConfig;
8
+ input;
9
+ ctx;
10
+ // TS gets confused by <code>, so internally we just use the base type for input
11
+ constructor({ prefixPath, relativePath, ...input }, ctx) {
12
+ super();
13
+ this.input = input;
14
+ this.ctx = ctx;
15
+ defineProperties(this, input);
16
+ const data = ctx.data;
17
+ if (input.code === "union") {
18
+ input.errors = input.errors.flatMap(innerError => {
19
+ // flatten union errors to avoid repeating context like "foo must be foo must be"...
20
+ const flat = innerError.hasCode("union") ? innerError.errors : [innerError];
21
+ if (!prefixPath && !relativePath)
22
+ return flat;
23
+ return flat.map(e => e.transform(e => ({
24
+ ...e,
25
+ path: conflatenateAll(prefixPath, e.path, relativePath)
26
+ })));
27
+ });
28
+ }
29
+ this.nodeConfig = ctx.config[this.code];
30
+ const basePath = [...(input.path ?? ctx.path)];
31
+ if (relativePath)
32
+ basePath.push(...relativePath);
33
+ if (prefixPath)
34
+ basePath.unshift(...prefixPath);
35
+ this.path = new ReadonlyPath(...basePath);
36
+ this.data = "data" in input ? input.data : data;
37
+ }
38
+ transform(f) {
39
+ return new ArkError(f({
40
+ data: this.data,
41
+ path: this.path,
42
+ ...this.input
43
+ }), this.ctx);
44
+ }
45
+ hasCode(code) {
46
+ return this.code === code;
47
+ }
48
+ get propString() {
49
+ return stringifyPath(this.path);
50
+ }
51
+ get expected() {
52
+ if (this.input.expected)
53
+ return this.input.expected;
54
+ const config = this.meta?.expected ?? this.nodeConfig.expected;
55
+ return typeof config === "function" ? config(this.input) : config;
56
+ }
57
+ get actual() {
58
+ if (this.input.actual)
59
+ return this.input.actual;
60
+ const config = this.meta?.actual ?? this.nodeConfig.actual;
61
+ return typeof config === "function" ? config(this.data) : config;
62
+ }
63
+ get problem() {
64
+ if (this.input.problem)
65
+ return this.input.problem;
66
+ const config = this.meta?.problem ?? this.nodeConfig.problem;
67
+ return typeof config === "function" ? config(this) : config;
68
+ }
69
+ get message() {
70
+ if (this.input.message)
71
+ return this.input.message;
72
+ const config = this.meta?.message ?? this.nodeConfig.message;
73
+ return typeof config === "function" ? config(this) : config;
74
+ }
75
+ get flat() {
76
+ return this.hasCode("intersection") ? [...this.errors] : [this];
77
+ }
78
+ toJSON() {
79
+ return {
80
+ data: this.data,
81
+ path: this.path,
82
+ ...this.input,
83
+ expected: this.expected,
84
+ actual: this.actual,
85
+ problem: this.problem,
86
+ message: this.message
87
+ };
88
+ }
89
+ toString() {
90
+ return this.message;
91
+ }
92
+ throw() {
93
+ throw this;
94
+ }
95
+ }
96
+ /**
97
+ * A ReadonlyArray of `ArkError`s returned by a Type on invalid input.
98
+ *
99
+ * Subsequent errors added at an existing path are merged into an
100
+ * ArkError intersection.
101
+ */
102
+ export class ArkErrors extends ReadonlyArray {
103
+ [arkKind] = "errors";
104
+ ctx;
105
+ constructor(ctx) {
106
+ super();
107
+ this.ctx = ctx;
108
+ }
109
+ /**
110
+ * Errors by a pathString representing their location.
111
+ */
112
+ byPath = Object.create(null);
113
+ /**
114
+ * {@link byPath} flattened so that each value is an array of ArkError instances at that path.
115
+ *
116
+ * ✅ Since "intersection" errors will be flattened to their constituent `.errors`,
117
+ * they will never be directly present in this representation.
118
+ */
119
+ get flatByPath() {
120
+ return flatMorph(this.byPath, (k, v) => [k, v.flat]);
121
+ }
122
+ /**
123
+ * {@link byPath} flattened so that each value is an array of problem strings at that path.
124
+ */
125
+ get flatProblemsByPath() {
126
+ return flatMorph(this.byPath, (k, v) => [k, v.flat.map(e => e.problem)]);
127
+ }
128
+ /**
129
+ * All pathStrings at which errors are present mapped to the errors occuring
130
+ * at that path or any nested path within it.
131
+ */
132
+ byAncestorPath = Object.create(null);
133
+ count = 0;
134
+ mutable = this;
135
+ /**
136
+ * Throw a TraversalError based on these errors.
137
+ */
138
+ throw() {
139
+ throw this.toTraversalError();
140
+ }
141
+ /**
142
+ * Converts ArkErrors to TraversalError, a subclass of `Error` suitable for throwing with nice
143
+ * formatting.
144
+ */
145
+ toTraversalError() {
146
+ return new TraversalError(this);
147
+ }
148
+ /**
149
+ * Append an ArkError to this array, ignoring duplicates.
150
+ */
151
+ add(error) {
152
+ const existing = this.byPath[error.propString];
153
+ if (existing) {
154
+ if (error === existing)
155
+ return;
156
+ // If the existing error is an error for a value constrained to "never",
157
+ // then we don't want to intersect the error messages.
158
+ if (existing.hasCode("union") && existing.errors.length === 0)
159
+ return;
160
+ // If the new error is an error for a value constrained to "never",
161
+ // then we want to override any existing errors.
162
+ const errorIntersection = error.hasCode("union") && error.errors.length === 0 ?
163
+ error
164
+ : new ArkError({
165
+ code: "intersection",
166
+ errors: existing.hasCode("intersection") ?
167
+ [...existing.errors, error]
168
+ : [existing, error]
169
+ }, this.ctx);
170
+ const existingIndex = this.indexOf(existing);
171
+ this.mutable[existingIndex === -1 ? this.length : existingIndex] =
172
+ errorIntersection;
173
+ this.byPath[error.propString] = errorIntersection;
174
+ // add the original error here rather than the intersection
175
+ // since the intersection is reflected by the array of errors at
176
+ // this path
177
+ this.addAncestorPaths(error);
178
+ }
179
+ else {
180
+ this.byPath[error.propString] = error;
181
+ this.addAncestorPaths(error);
182
+ this.mutable.push(error);
183
+ }
184
+ this.count++;
185
+ }
186
+ transform(f) {
187
+ const result = new ArkErrors(this.ctx);
188
+ for (const e of this)
189
+ result.add(f(e));
190
+ return result;
191
+ }
192
+ /**
193
+ * Add all errors from an ArkErrors instance, ignoring duplicates and
194
+ * prefixing their paths with that of the current Traversal.
195
+ */
196
+ merge(errors) {
197
+ for (const e of errors) {
198
+ this.add(new ArkError({ ...e, path: [...this.ctx.path, ...e.path] }, this.ctx));
199
+ }
200
+ }
201
+ /**
202
+ * @internal
203
+ */
204
+ affectsPath(path) {
205
+ if (this.length === 0)
206
+ return false;
207
+ return (
208
+ // this would occur if there is an existing error at a prefix of path
209
+ // e.g. the path is ["foo", "bar"] and there is an error at ["foo"]
210
+ path.stringifyAncestors().some(s => s in this.byPath) ||
211
+ // this would occur if there is an existing error at a suffix of path
212
+ // e.g. the path is ["foo"] and there is an error at ["foo", "bar"]
213
+ path.stringify() in this.byAncestorPath);
214
+ }
215
+ /**
216
+ * A human-readable summary of all errors.
217
+ */
218
+ get summary() {
219
+ return this.toString();
220
+ }
221
+ /**
222
+ * Alias of this ArkErrors instance for StandardSchema compatibility.
223
+ */
224
+ get issues() {
225
+ return this;
226
+ }
227
+ toJSON() {
228
+ return [...this.map(e => e.toJSON())];
229
+ }
230
+ toString() {
231
+ return this.join("\n");
232
+ }
233
+ addAncestorPaths(error) {
234
+ for (const propString of error.path.stringifyAncestors()) {
235
+ this.byAncestorPath[propString] = append(this.byAncestorPath[propString], error);
236
+ }
237
+ }
238
+ }
239
+ export class TraversalError extends Error {
240
+ name = "TraversalError";
241
+ constructor(errors) {
242
+ if (errors.length === 1)
243
+ super(errors.summary);
244
+ else
245
+ super("\n" + errors.map(error => ` • ${indent(error)}`).join("\n"));
246
+ Object.defineProperty(this, "arkErrors", {
247
+ value: errors,
248
+ enumerable: false
249
+ });
250
+ }
251
+ }
252
+ const indent = (error) => error.toString().split("\n").join("\n ");