@es-joy/jsoe 0.24.3 → 0.25.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 (524) hide show
  1. package/.claude/settings.local.json +9 -0
  2. package/.ncurc.cjs +2 -2
  3. package/CHANGES.md +47 -0
  4. package/README.md +23 -13
  5. package/badges/coverage-badge.svg +1 -1
  6. package/dist/eslint.config.d.ts +3 -0
  7. package/dist/eslint.config.d.ts.map +1 -0
  8. package/dist/formatAndTypeChoices.d.ts +28 -30
  9. package/dist/formatAndTypeChoices.d.ts.map +1 -1
  10. package/dist/formats/indexedDBKey.d.ts.map +1 -1
  11. package/dist/formats/schema.d.ts +46 -3
  12. package/dist/formats/schema.d.ts.map +1 -1
  13. package/dist/formats/structuredCloning.d.ts +3 -0
  14. package/dist/formats/structuredCloning.d.ts.map +1 -1
  15. package/dist/formats.d.ts +24 -6
  16. package/dist/formats.d.ts.map +1 -1
  17. package/dist/fundamentalTypes/BooleanObjectType.d.ts.map +1 -1
  18. package/dist/fundamentalTypes/NumberObjectType.d.ts.map +1 -1
  19. package/dist/fundamentalTypes/StringObjectType.d.ts.map +1 -1
  20. package/dist/fundamentalTypes/arrayReferenceType.d.ts.map +1 -1
  21. package/dist/fundamentalTypes/arrayType.d.ts +7 -0
  22. package/dist/fundamentalTypes/arrayType.d.ts.map +1 -1
  23. package/dist/fundamentalTypes/bigintObjectType.d.ts.map +1 -1
  24. package/dist/fundamentalTypes/bigintType.d.ts +10 -0
  25. package/dist/fundamentalTypes/bigintType.d.ts.map +1 -1
  26. package/dist/fundamentalTypes/blobType.d.ts.map +1 -1
  27. package/dist/fundamentalTypes/booleanType.d.ts.map +1 -1
  28. package/dist/fundamentalTypes/catchType.d.ts +2 -2
  29. package/dist/fundamentalTypes/catchType.d.ts.map +1 -1
  30. package/dist/fundamentalTypes/dateType.d.ts.map +1 -1
  31. package/dist/fundamentalTypes/domexceptionType.d.ts.map +1 -1
  32. package/dist/fundamentalTypes/enumType.d.ts +2 -2
  33. package/dist/fundamentalTypes/enumType.d.ts.map +1 -1
  34. package/dist/fundamentalTypes/errorType.d.ts.map +1 -1
  35. package/dist/fundamentalTypes/fileType.d.ts +6 -0
  36. package/dist/fundamentalTypes/fileType.d.ts.map +1 -1
  37. package/dist/fundamentalTypes/functionType.d.ts.map +1 -1
  38. package/dist/fundamentalTypes/literalType.d.ts +3 -2
  39. package/dist/fundamentalTypes/literalType.d.ts.map +1 -1
  40. package/dist/fundamentalTypes/looseRecordType.d.ts +6 -0
  41. package/dist/fundamentalTypes/looseRecordType.d.ts.map +1 -0
  42. package/dist/fundamentalTypes/nanType.d.ts.map +1 -1
  43. package/dist/fundamentalTypes/neverType.d.ts +2 -2
  44. package/dist/fundamentalTypes/neverType.d.ts.map +1 -1
  45. package/dist/fundamentalTypes/noneditableType.d.ts.map +1 -1
  46. package/dist/fundamentalTypes/nullType.d.ts.map +1 -1
  47. package/dist/fundamentalTypes/numberType.d.ts.map +1 -1
  48. package/dist/fundamentalTypes/promiseType.d.ts.map +1 -1
  49. package/dist/fundamentalTypes/regexpType.d.ts.map +1 -1
  50. package/dist/fundamentalTypes/stringType.d.ts.map +1 -1
  51. package/dist/fundamentalTypes/symbolType.d.ts.map +1 -1
  52. package/dist/fundamentalTypes/undefinedType.d.ts.map +1 -1
  53. package/dist/fundamentalTypes/voidType.d.ts +2 -2
  54. package/dist/fundamentalTypes/voidType.d.ts.map +1 -1
  55. package/dist/index.d.ts.map +1 -1
  56. package/dist/index.js +6 -1
  57. package/dist/index.js.map +1 -1
  58. package/dist/rollup.config.d.ts +30 -0
  59. package/dist/rollup.config.d.ts.map +1 -0
  60. package/dist/server.d.ts +2 -0
  61. package/dist/server.d.ts.map +1 -0
  62. package/dist/src/formatAndTypeChoices.d.ts +108 -0
  63. package/dist/src/formatAndTypeChoices.d.ts.map +1 -0
  64. package/dist/src/formats/arbitraryJS.d.ts +4 -0
  65. package/dist/src/formats/arbitraryJS.d.ts.map +1 -0
  66. package/dist/src/formats/indexedDBKey.d.ts +4 -0
  67. package/dist/src/formats/indexedDBKey.d.ts.map +1 -0
  68. package/dist/src/formats/json.d.ts +4 -0
  69. package/dist/src/formats/json.d.ts.map +1 -0
  70. package/dist/src/formats/schema.d.ts +17 -0
  71. package/dist/src/formats/schema.d.ts.map +1 -0
  72. package/dist/src/formats/structuredCloning.d.ts +19 -0
  73. package/dist/src/formats/structuredCloning.d.ts.map +1 -0
  74. package/dist/src/formats.d.ts +135 -0
  75. package/dist/src/formats.d.ts.map +1 -0
  76. package/dist/src/fundamentalTypes/BooleanObjectType.d.ts +8 -0
  77. package/dist/src/fundamentalTypes/BooleanObjectType.d.ts.map +1 -0
  78. package/dist/src/fundamentalTypes/NumberObjectType.d.ts +6 -0
  79. package/dist/src/fundamentalTypes/NumberObjectType.d.ts.map +1 -0
  80. package/dist/src/fundamentalTypes/StringObjectType.d.ts +6 -0
  81. package/dist/src/fundamentalTypes/StringObjectType.d.ts.map +1 -0
  82. package/dist/src/fundamentalTypes/arrayReferenceType.d.ts +8 -0
  83. package/dist/src/fundamentalTypes/arrayReferenceType.d.ts.map +1 -0
  84. package/dist/src/fundamentalTypes/arrayType.d.ts +29 -0
  85. package/dist/src/fundamentalTypes/arrayType.d.ts.map +1 -0
  86. package/dist/src/fundamentalTypes/bigintObjectType.d.ts +6 -0
  87. package/dist/src/fundamentalTypes/bigintObjectType.d.ts.map +1 -0
  88. package/dist/src/fundamentalTypes/bigintType.d.ts +6 -0
  89. package/dist/src/fundamentalTypes/bigintType.d.ts.map +1 -0
  90. package/dist/src/fundamentalTypes/blobType.d.ts +11 -0
  91. package/dist/src/fundamentalTypes/blobType.d.ts.map +1 -0
  92. package/dist/src/fundamentalTypes/booleanType.d.ts +8 -0
  93. package/dist/src/fundamentalTypes/booleanType.d.ts.map +1 -0
  94. package/dist/src/fundamentalTypes/catchType.d.ts +6 -0
  95. package/dist/src/fundamentalTypes/catchType.d.ts.map +1 -0
  96. package/dist/src/fundamentalTypes/dateType.d.ts +26 -0
  97. package/dist/src/fundamentalTypes/dateType.d.ts.map +1 -0
  98. package/dist/src/fundamentalTypes/domexceptionType.d.ts +6 -0
  99. package/dist/src/fundamentalTypes/domexceptionType.d.ts.map +1 -0
  100. package/dist/src/fundamentalTypes/enumType.d.ts +6 -0
  101. package/dist/src/fundamentalTypes/enumType.d.ts.map +1 -0
  102. package/dist/src/fundamentalTypes/errorType.d.ts +6 -0
  103. package/dist/src/fundamentalTypes/errorType.d.ts.map +1 -0
  104. package/dist/src/fundamentalTypes/fileType.d.ts +13 -0
  105. package/dist/src/fundamentalTypes/fileType.d.ts.map +1 -0
  106. package/dist/src/fundamentalTypes/filelistType.d.ts +6 -0
  107. package/dist/src/fundamentalTypes/filelistType.d.ts.map +1 -0
  108. package/dist/src/fundamentalTypes/functionType.d.ts +7 -0
  109. package/dist/src/fundamentalTypes/functionType.d.ts.map +1 -0
  110. package/dist/src/fundamentalTypes/literalType.d.ts +6 -0
  111. package/dist/src/fundamentalTypes/literalType.d.ts.map +1 -0
  112. package/dist/src/fundamentalTypes/mapType.d.ts +6 -0
  113. package/dist/src/fundamentalTypes/mapType.d.ts.map +1 -0
  114. package/dist/src/fundamentalTypes/nanType.d.ts +6 -0
  115. package/dist/src/fundamentalTypes/nanType.d.ts.map +1 -0
  116. package/dist/src/fundamentalTypes/neverType.d.ts +6 -0
  117. package/dist/src/fundamentalTypes/neverType.d.ts.map +1 -0
  118. package/dist/src/fundamentalTypes/noneditableType.d.ts +6 -0
  119. package/dist/src/fundamentalTypes/noneditableType.d.ts.map +1 -0
  120. package/dist/src/fundamentalTypes/nullType.d.ts +6 -0
  121. package/dist/src/fundamentalTypes/nullType.d.ts.map +1 -0
  122. package/dist/src/fundamentalTypes/numberType.d.ts +6 -0
  123. package/dist/src/fundamentalTypes/numberType.d.ts.map +1 -0
  124. package/dist/src/fundamentalTypes/objectReferenceType.d.ts +8 -0
  125. package/dist/src/fundamentalTypes/objectReferenceType.d.ts.map +1 -0
  126. package/dist/src/fundamentalTypes/objectType.d.ts +6 -0
  127. package/dist/src/fundamentalTypes/objectType.d.ts.map +1 -0
  128. package/dist/src/fundamentalTypes/promiseType.d.ts +6 -0
  129. package/dist/src/fundamentalTypes/promiseType.d.ts.map +1 -0
  130. package/dist/src/fundamentalTypes/recordType.d.ts +6 -0
  131. package/dist/src/fundamentalTypes/recordType.d.ts.map +1 -0
  132. package/dist/src/fundamentalTypes/regexpType.d.ts +8 -0
  133. package/dist/src/fundamentalTypes/regexpType.d.ts.map +1 -0
  134. package/dist/src/fundamentalTypes/setType.d.ts +6 -0
  135. package/dist/src/fundamentalTypes/setType.d.ts.map +1 -0
  136. package/dist/src/fundamentalTypes/sparseUndefinedType.d.ts +6 -0
  137. package/dist/src/fundamentalTypes/sparseUndefinedType.d.ts.map +1 -0
  138. package/dist/src/fundamentalTypes/stringType.d.ts +6 -0
  139. package/dist/src/fundamentalTypes/stringType.d.ts.map +1 -0
  140. package/dist/src/fundamentalTypes/symbolType.d.ts +8 -0
  141. package/dist/src/fundamentalTypes/symbolType.d.ts.map +1 -0
  142. package/dist/src/fundamentalTypes/tupleType.d.ts +6 -0
  143. package/dist/src/fundamentalTypes/tupleType.d.ts.map +1 -0
  144. package/dist/src/fundamentalTypes/undefinedType.d.ts +6 -0
  145. package/dist/src/fundamentalTypes/undefinedType.d.ts.map +1 -0
  146. package/dist/src/fundamentalTypes/voidType.d.ts +6 -0
  147. package/dist/src/fundamentalTypes/voidType.d.ts.map +1 -0
  148. package/dist/src/index.d.ts +12 -0
  149. package/dist/src/index.d.ts.map +1 -0
  150. package/dist/src/subTypes/blobHTMLType.d.ts +20 -0
  151. package/dist/src/subTypes/blobHTMLType.d.ts.map +1 -0
  152. package/dist/src/subTypes/falseType.d.ts +8 -0
  153. package/dist/src/subTypes/falseType.d.ts.map +1 -0
  154. package/dist/src/subTypes/trueType.d.ts +8 -0
  155. package/dist/src/subTypes/trueType.d.ts.map +1 -0
  156. package/dist/src/superTypes/SpecialNumberType.d.ts +6 -0
  157. package/dist/src/superTypes/SpecialNumberType.d.ts.map +1 -0
  158. package/dist/src/superTypes/SpecialRealNumberType.d.ts +6 -0
  159. package/dist/src/superTypes/SpecialRealNumberType.d.ts.map +1 -0
  160. package/dist/src/superTypes/buffersourceType.d.ts +8 -0
  161. package/dist/src/superTypes/buffersourceType.d.ts.map +1 -0
  162. package/dist/src/superTypes/dommatrixType.d.ts +6 -0
  163. package/dist/src/superTypes/dommatrixType.d.ts.map +1 -0
  164. package/dist/src/superTypes/dompointType.d.ts +6 -0
  165. package/dist/src/superTypes/dompointType.d.ts.map +1 -0
  166. package/dist/src/superTypes/domrectType.d.ts +6 -0
  167. package/dist/src/superTypes/domrectType.d.ts.map +1 -0
  168. package/dist/src/superTypes/errorsSpecialType.d.ts +8 -0
  169. package/dist/src/superTypes/errorsSpecialType.d.ts.map +1 -0
  170. package/dist/src/typeChoices.d.ts +140 -0
  171. package/dist/src/typeChoices.d.ts.map +1 -0
  172. package/dist/src/types.d.ts +758 -0
  173. package/dist/src/types.d.ts.map +1 -0
  174. package/dist/src/utils/FileList.d.ts +26 -0
  175. package/dist/src/utils/FileList.d.ts.map +1 -0
  176. package/dist/src/utils/dialogs.d.ts +111 -0
  177. package/dist/src/utils/dialogs.d.ts.map +1 -0
  178. package/dist/src/utils/jsonPointer.d.ts +46 -0
  179. package/dist/src/utils/jsonPointer.d.ts.map +1 -0
  180. package/dist/src/utils/media.d.ts +18 -0
  181. package/dist/src/utils/media.d.ts.map +1 -0
  182. package/dist/src/utils/objects.d.ts +16 -0
  183. package/dist/src/utils/objects.d.ts.map +1 -0
  184. package/dist/src/utils/templateUtils.d.ts +59 -0
  185. package/dist/src/utils/templateUtils.d.ts.map +1 -0
  186. package/dist/src/utils/types.d.ts +2 -0
  187. package/dist/src/utils/types.d.ts.map +1 -0
  188. package/dist/src/vendor-imports.d.ts +4 -0
  189. package/dist/src/vendor-imports.d.ts.map +1 -0
  190. package/dist/subTypes/blobHTMLType.d.ts.map +1 -1
  191. package/dist/superTypes/SpecialRealNumberType.d.ts.map +1 -1
  192. package/dist/superTypes/buffersourceType.d.ts.map +1 -1
  193. package/dist/superTypes/dommatrixType.d.ts.map +1 -1
  194. package/dist/superTypes/dompointType.d.ts.map +1 -1
  195. package/dist/superTypes/domrectType.d.ts.map +1 -1
  196. package/dist/superTypes/errorsSpecialType.d.ts.map +1 -1
  197. package/dist/typeChoices.d.ts +21 -87
  198. package/dist/typeChoices.d.ts.map +1 -1
  199. package/dist/types.d.ts +90 -64
  200. package/dist/types.d.ts.map +1 -1
  201. package/dist/utils/FileList.d.ts +4 -3
  202. package/dist/utils/FileList.d.ts.map +1 -1
  203. package/dist/utils/dialogs.d.ts +4 -4
  204. package/dist/utils/dialogs.d.ts.map +1 -1
  205. package/dist/utils/media.d.ts.map +1 -1
  206. package/dist/utils/schemaMeta.d.ts +92 -0
  207. package/dist/utils/schemaMeta.d.ts.map +1 -0
  208. package/dist/utils/templateUtils.d.ts +3 -3
  209. package/dist/utils/templateUtils.d.ts.map +1 -1
  210. package/dist/utils/timing.d.ts +2 -0
  211. package/dist/utils/timing.d.ts.map +1 -0
  212. package/dist/utils/types.d.ts +1 -0
  213. package/dist/utils/types.d.ts.map +1 -1
  214. package/dist/vendor-imports.d.ts +3 -1
  215. package/docs/proposals/schema-meta.md +233 -0
  216. package/eslint.config.js +51 -4
  217. package/licenseInfo.json +1 -1
  218. package/package.json +52 -42
  219. package/pnpm-workspace.yaml +57 -0
  220. package/rollup.config.js +20 -18
  221. package/server.js +3 -3
  222. package/src/deepEqual.js.map +1 -1
  223. package/src/formatAndTypeChoices.js +62 -58
  224. package/src/formats/indexedDBKey.js +3 -4
  225. package/src/formats/schema.js +824 -475
  226. package/src/formats/structuredCloning.js +189 -79
  227. package/src/formats.js +17 -5
  228. package/src/fundamentalTypes/BooleanObjectType.js +4 -5
  229. package/src/fundamentalTypes/NumberObjectType.js +4 -4
  230. package/src/fundamentalTypes/StringObjectType.js +3 -4
  231. package/src/fundamentalTypes/arrayReferenceType.js +0 -2
  232. package/src/fundamentalTypes/arrayType.js +624 -389
  233. package/src/fundamentalTypes/bigintObjectType.js +3 -2
  234. package/src/fundamentalTypes/bigintType.js +79 -17
  235. package/src/fundamentalTypes/blobType.js +35 -35
  236. package/src/fundamentalTypes/booleanType.js +16 -8
  237. package/src/fundamentalTypes/dateType.js +6 -8
  238. package/src/fundamentalTypes/domexceptionType.js +5 -4
  239. package/src/fundamentalTypes/errorType.js +39 -32
  240. package/src/fundamentalTypes/fileType.js +238 -52
  241. package/src/fundamentalTypes/functionType.js +61 -41
  242. package/src/fundamentalTypes/nanType.js +5 -4
  243. package/src/fundamentalTypes/noneditableType.js +4 -3
  244. package/src/fundamentalTypes/nullType.js +3 -2
  245. package/src/fundamentalTypes/numberType.js +72 -20
  246. package/src/fundamentalTypes/promiseType.js +16 -40
  247. package/src/fundamentalTypes/regexpType.js +7 -13
  248. package/src/fundamentalTypes/stringType.js +176 -110
  249. package/src/fundamentalTypes/symbolType.js +3 -2
  250. package/src/fundamentalTypes/undefinedType.js +3 -2
  251. package/src/index.js +6 -5
  252. package/src/jsoe.css +107 -8
  253. package/src/subTypes/blobHTMLType.js +23 -10
  254. package/src/superTypes/SpecialNumberType.js +6 -6
  255. package/src/superTypes/SpecialRealNumberType.js +10 -9
  256. package/src/superTypes/buffersourceType.js +86 -75
  257. package/src/superTypes/dommatrixType.js +6 -5
  258. package/src/superTypes/dompointType.js +6 -5
  259. package/src/superTypes/domrectType.js +6 -5
  260. package/src/superTypes/errorsSpecialType.js +54 -35
  261. package/src/typeChoices.js +373 -53
  262. package/src/types.js +157 -97
  263. package/src/utils/FileList.js +3 -3
  264. package/src/utils/dialogs.js +5 -7
  265. package/src/utils/jsonPointer.js +1 -1
  266. package/src/utils/media.js +1 -0
  267. package/src/utils/schemaMeta.js +257 -0
  268. package/src/utils/templateUtils.js +3 -3
  269. package/src/utils/timing.js +12 -0
  270. package/src/utils/types.js +19 -0
  271. package/src/vendor-imports.js +10 -2
  272. package/tsconfig.json +2 -0
  273. package/vendor/acorn/dist/acorn.d.mts +46 -5
  274. package/vendor/acorn/dist/acorn.d.ts +46 -5
  275. package/vendor/acorn/dist/acorn.js +394 -117
  276. package/vendor/acorn/dist/acorn.mjs +394 -117
  277. package/vendor/acorn/dist/bin.js +1 -1
  278. package/vendor/jamilih/dist/{jml-es.js → jml.mjs} +590 -312
  279. package/vendor/jamilih/package.json +1 -1
  280. package/vendor/mime/dist/types/other.js +719 -0
  281. package/vendor/mime/dist/types/standard.js +366 -0
  282. package/vendor/typeson-registry/dist/index.js +519 -99
  283. package/vendor/zod/classic/checks.d.ts +1 -0
  284. package/vendor/zod/classic/checks.js +1 -0
  285. package/vendor/zod/classic/coerce.d.ts +17 -0
  286. package/vendor/zod/classic/coerce.js +17 -0
  287. package/vendor/zod/classic/compat.d.ts +48 -0
  288. package/vendor/zod/classic/compat.js +31 -0
  289. package/vendor/zod/classic/deep-partial.d.ts +14 -0
  290. package/vendor/zod/classic/deep-partial.js +13 -0
  291. package/vendor/zod/classic/errors.d.ts +29 -0
  292. package/vendor/zod/classic/errors.js +57 -0
  293. package/vendor/zod/classic/external.d.ts +19 -0
  294. package/vendor/zod/classic/external.js +17 -0
  295. package/vendor/zod/classic/from-json-schema.d.ts +12 -0
  296. package/vendor/zod/classic/from-json-schema.js +660 -0
  297. package/vendor/zod/classic/in-out.d.ts +8 -0
  298. package/vendor/zod/classic/in-out.js +36 -0
  299. package/vendor/zod/classic/index.d.ts +3 -0
  300. package/vendor/zod/classic/index.js +4 -0
  301. package/vendor/zod/classic/iso.d.ts +7 -0
  302. package/vendor/zod/classic/iso.js +15 -0
  303. package/vendor/zod/classic/package.json +7 -0
  304. package/vendor/zod/classic/parse.d.ts +44 -0
  305. package/vendor/zod/classic/parse.js +16 -0
  306. package/vendor/zod/classic/schemas.d.ts +802 -0
  307. package/vendor/zod/classic/schemas.js +1491 -0
  308. package/vendor/zod/core/api.d.ts +329 -0
  309. package/vendor/zod/core/api.js +1104 -0
  310. package/vendor/zod/core/checks.d.ts +278 -0
  311. package/vendor/zod/core/checks.js +581 -0
  312. package/vendor/zod/core/compile.d.ts +51 -0
  313. package/vendor/zod/core/compile.js +1783 -0
  314. package/vendor/zod/core/core.d.ts +82 -0
  315. package/vendor/zod/core/core.js +141 -0
  316. package/vendor/zod/core/doc.d.ts +16 -0
  317. package/vendor/zod/core/doc.js +33 -0
  318. package/vendor/zod/core/errors.d.ts +225 -0
  319. package/vendor/zod/core/errors.js +270 -0
  320. package/vendor/zod/core/index.d.ts +19 -0
  321. package/vendor/zod/core/index.js +19 -0
  322. package/vendor/zod/core/json-schema-generator.d.ts +65 -0
  323. package/vendor/zod/core/json-schema-generator.js +99 -0
  324. package/vendor/zod/core/json-schema-processors.d.ts +49 -0
  325. package/vendor/zod/core/json-schema-processors.js +747 -0
  326. package/vendor/zod/core/json-schema.d.ts +89 -0
  327. package/vendor/zod/core/memoizer.d.ts +15 -0
  328. package/vendor/zod/core/memoizer.js +265 -0
  329. package/vendor/zod/core/package.json +7 -0
  330. package/vendor/zod/core/parse.d.ts +52 -0
  331. package/vendor/zod/core/parse.js +154 -0
  332. package/vendor/zod/core/regexes.d.ts +87 -0
  333. package/vendor/zod/core/regexes.js +150 -0
  334. package/vendor/zod/core/registries.d.ts +35 -0
  335. package/vendor/zod/core/registries.js +51 -0
  336. package/vendor/zod/core/schemas.d.ts +1253 -0
  337. package/vendor/zod/core/schemas.js +2440 -0
  338. package/vendor/zod/core/standard-schema.d.ts +126 -0
  339. package/vendor/zod/core/to-json-schema.d.ts +153 -0
  340. package/vendor/zod/core/to-json-schema.js +650 -0
  341. package/vendor/zod/core/util.d.ts +257 -0
  342. package/vendor/zod/core/util.js +846 -0
  343. package/vendor/zod/core/versions.d.ts +5 -0
  344. package/vendor/zod/core/versions.js +5 -0
  345. package/vendor/zod/core/visit.d.ts +30 -0
  346. package/vendor/zod/core/visit.js +169 -0
  347. package/vendor/zod/index.d.ts +3 -0
  348. package/vendor/zod/index.js +4 -0
  349. package/vendor/zod/locales/ar.d.ts +4 -0
  350. package/vendor/zod/locales/ar.js +109 -0
  351. package/vendor/zod/locales/az.d.ts +4 -0
  352. package/vendor/zod/locales/az.js +108 -0
  353. package/vendor/zod/locales/be.d.ts +4 -0
  354. package/vendor/zod/locales/be.js +166 -0
  355. package/vendor/zod/locales/bg.d.ts +4 -0
  356. package/vendor/zod/locales/bg.js +123 -0
  357. package/vendor/zod/locales/bn.d.ts +4 -0
  358. package/vendor/zod/locales/bn.js +111 -0
  359. package/vendor/zod/locales/ca.d.ts +4 -0
  360. package/vendor/zod/locales/ca.js +110 -0
  361. package/vendor/zod/locales/ckb.d.ts +4 -0
  362. package/vendor/zod/locales/ckb.js +131 -0
  363. package/vendor/zod/locales/cs.d.ts +4 -0
  364. package/vendor/zod/locales/cs.js +114 -0
  365. package/vendor/zod/locales/da.d.ts +4 -0
  366. package/vendor/zod/locales/da.js +118 -0
  367. package/vendor/zod/locales/de.d.ts +4 -0
  368. package/vendor/zod/locales/de.js +111 -0
  369. package/vendor/zod/locales/el.d.ts +4 -0
  370. package/vendor/zod/locales/el.js +110 -0
  371. package/vendor/zod/locales/en.d.ts +4 -0
  372. package/vendor/zod/locales/en.js +123 -0
  373. package/vendor/zod/locales/eo.d.ts +4 -0
  374. package/vendor/zod/locales/eo.js +112 -0
  375. package/vendor/zod/locales/es.d.ts +4 -0
  376. package/vendor/zod/locales/es.js +134 -0
  377. package/vendor/zod/locales/fa.d.ts +4 -0
  378. package/vendor/zod/locales/fa.js +117 -0
  379. package/vendor/zod/locales/fi.d.ts +4 -0
  380. package/vendor/zod/locales/fi.js +115 -0
  381. package/vendor/zod/locales/fr-CA.d.ts +4 -0
  382. package/vendor/zod/locales/fr-CA.js +110 -0
  383. package/vendor/zod/locales/fr.d.ts +4 -0
  384. package/vendor/zod/locales/fr.js +127 -0
  385. package/vendor/zod/locales/gu.d.ts +4 -0
  386. package/vendor/zod/locales/gu.js +111 -0
  387. package/vendor/zod/locales/he.d.ts +4 -0
  388. package/vendor/zod/locales/he.js +219 -0
  389. package/vendor/zod/locales/hi.d.ts +4 -0
  390. package/vendor/zod/locales/hi.js +109 -0
  391. package/vendor/zod/locales/hr.d.ts +4 -0
  392. package/vendor/zod/locales/hr.js +124 -0
  393. package/vendor/zod/locales/hu.d.ts +4 -0
  394. package/vendor/zod/locales/hu.js +111 -0
  395. package/vendor/zod/locales/hy.d.ts +4 -0
  396. package/vendor/zod/locales/hy.js +156 -0
  397. package/vendor/zod/locales/id.d.ts +4 -0
  398. package/vendor/zod/locales/id.js +109 -0
  399. package/vendor/zod/locales/index.d.ts +62 -0
  400. package/vendor/zod/locales/index.js +62 -0
  401. package/vendor/zod/locales/is.d.ts +4 -0
  402. package/vendor/zod/locales/is.js +112 -0
  403. package/vendor/zod/locales/it.d.ts +4 -0
  404. package/vendor/zod/locales/it.js +111 -0
  405. package/vendor/zod/locales/ja.d.ts +4 -0
  406. package/vendor/zod/locales/ja.js +110 -0
  407. package/vendor/zod/locales/ka.d.ts +4 -0
  408. package/vendor/zod/locales/ka.js +115 -0
  409. package/vendor/zod/locales/kh.d.ts +5 -0
  410. package/vendor/zod/locales/kh.js +5 -0
  411. package/vendor/zod/locales/km.d.ts +4 -0
  412. package/vendor/zod/locales/km.js +113 -0
  413. package/vendor/zod/locales/kn.d.ts +4 -0
  414. package/vendor/zod/locales/kn.js +114 -0
  415. package/vendor/zod/locales/ko.d.ts +4 -0
  416. package/vendor/zod/locales/ko.js +114 -0
  417. package/vendor/zod/locales/lt.d.ts +4 -0
  418. package/vendor/zod/locales/lt.js +205 -0
  419. package/vendor/zod/locales/mk.d.ts +4 -0
  420. package/vendor/zod/locales/mk.js +112 -0
  421. package/vendor/zod/locales/ms.d.ts +4 -0
  422. package/vendor/zod/locales/ms.js +110 -0
  423. package/vendor/zod/locales/ne.d.ts +4 -0
  424. package/vendor/zod/locales/ne.js +109 -0
  425. package/vendor/zod/locales/nl.d.ts +4 -0
  426. package/vendor/zod/locales/nl.js +113 -0
  427. package/vendor/zod/locales/nn.d.ts +4 -0
  428. package/vendor/zod/locales/nn.js +111 -0
  429. package/vendor/zod/locales/no.d.ts +4 -0
  430. package/vendor/zod/locales/no.js +111 -0
  431. package/vendor/zod/locales/ota.d.ts +4 -0
  432. package/vendor/zod/locales/ota.js +112 -0
  433. package/vendor/zod/locales/package.json +7 -0
  434. package/vendor/zod/locales/pl.d.ts +4 -0
  435. package/vendor/zod/locales/pl.js +112 -0
  436. package/vendor/zod/locales/ps.d.ts +4 -0
  437. package/vendor/zod/locales/ps.js +117 -0
  438. package/vendor/zod/locales/pt-BR.d.ts +4 -0
  439. package/vendor/zod/locales/pt-BR.js +141 -0
  440. package/vendor/zod/locales/pt.d.ts +4 -0
  441. package/vendor/zod/locales/pt.js +140 -0
  442. package/vendor/zod/locales/ro.d.ts +4 -0
  443. package/vendor/zod/locales/ro.js +120 -0
  444. package/vendor/zod/locales/ru.d.ts +4 -0
  445. package/vendor/zod/locales/ru.js +166 -0
  446. package/vendor/zod/locales/sk.d.ts +4 -0
  447. package/vendor/zod/locales/sk.js +114 -0
  448. package/vendor/zod/locales/sl.d.ts +4 -0
  449. package/vendor/zod/locales/sl.js +112 -0
  450. package/vendor/zod/locales/sv.d.ts +4 -0
  451. package/vendor/zod/locales/sv.js +113 -0
  452. package/vendor/zod/locales/ta.d.ts +4 -0
  453. package/vendor/zod/locales/ta.js +113 -0
  454. package/vendor/zod/locales/th.d.ts +4 -0
  455. package/vendor/zod/locales/th.js +113 -0
  456. package/vendor/zod/locales/tk.d.ts +4 -0
  457. package/vendor/zod/locales/tk.js +105 -0
  458. package/vendor/zod/locales/tr.d.ts +4 -0
  459. package/vendor/zod/locales/tr.js +108 -0
  460. package/vendor/zod/locales/ua.d.ts +5 -0
  461. package/vendor/zod/locales/ua.js +5 -0
  462. package/vendor/zod/locales/uk.d.ts +4 -0
  463. package/vendor/zod/locales/uk.js +111 -0
  464. package/vendor/zod/locales/ur.d.ts +4 -0
  465. package/vendor/zod/locales/ur.js +113 -0
  466. package/vendor/zod/locales/uz.d.ts +4 -0
  467. package/vendor/zod/locales/uz.js +111 -0
  468. package/vendor/zod/locales/vi.d.ts +4 -0
  469. package/vendor/zod/locales/vi.js +111 -0
  470. package/vendor/zod/locales/yo.d.ts +4 -0
  471. package/vendor/zod/locales/yo.js +110 -0
  472. package/vendor/zod/locales/zh-CN.d.ts +4 -0
  473. package/vendor/zod/locales/zh-CN.js +112 -0
  474. package/vendor/zod/locales/zh-TW.d.ts +4 -0
  475. package/vendor/zod/locales/zh-TW.js +110 -0
  476. package/vendor/zod/mini/checks.d.ts +1 -0
  477. package/vendor/zod/mini/checks.js +1 -0
  478. package/vendor/zod/mini/coerce.d.ts +7 -0
  479. package/vendor/zod/mini/coerce.js +22 -0
  480. package/vendor/zod/mini/deep-partial.d.ts +14 -0
  481. package/vendor/zod/mini/deep-partial.js +13 -0
  482. package/vendor/zod/mini/external.d.ts +16 -0
  483. package/vendor/zod/mini/external.js +16 -0
  484. package/vendor/zod/mini/in-out.d.ts +8 -0
  485. package/vendor/zod/mini/in-out.js +36 -0
  486. package/vendor/zod/mini/index.d.ts +3 -0
  487. package/vendor/zod/mini/index.js +3 -0
  488. package/vendor/zod/mini/iso.d.ts +22 -0
  489. package/vendor/zod/mini/iso.js +34 -0
  490. package/vendor/zod/mini/package.json +7 -0
  491. package/vendor/zod/mini/parse.d.ts +1 -0
  492. package/vendor/zod/mini/parse.js +1 -0
  493. package/vendor/zod/mini/schemas.d.ts +475 -0
  494. package/vendor/zod/mini/schemas.js +987 -0
  495. package/vendor/zod/package.json +7 -0
  496. package/vendor/zodexy/dist/esm/index.js +1274 -0
  497. package/vendor/zodexy/dist/index.js +1088 -0
  498. package/vendor/zodexy/dist/schema.zodexy.json +1036 -0
  499. package/dist/fundamentalTypes/nativeEnumType.d.ts +0 -6
  500. package/dist/fundamentalTypes/nativeEnumType.d.ts.map +0 -1
  501. package/src/fundamentalTypes/catchType.js +0 -140
  502. package/src/fundamentalTypes/enumType.js +0 -52
  503. package/src/fundamentalTypes/literalType.js +0 -81
  504. package/src/fundamentalTypes/nativeEnumType.js +0 -157
  505. package/src/fundamentalTypes/neverType.js +0 -49
  506. package/src/fundamentalTypes/recordType.js +0 -42
  507. package/src/fundamentalTypes/tupleType.js +0 -39
  508. package/src/fundamentalTypes/voidType.js +0 -48
  509. package/vendor/zod/lib/index.mjs +0 -4236
  510. package/vendor/zodex/dist/esm/dezerialize.d.ts +0 -26
  511. package/vendor/zodex/dist/esm/dezerialize.js +0 -393
  512. package/vendor/zodex/dist/esm/index.d.ts +0 -9
  513. package/vendor/zodex/dist/esm/index.js +0 -4
  514. package/vendor/zodex/dist/esm/infer.d.ts +0 -29
  515. package/vendor/zodex/dist/esm/package.json +0 -1
  516. package/vendor/zodex/dist/esm/types.d.ts +0 -201
  517. package/vendor/zodex/dist/esm/types.js +0 -13
  518. package/vendor/zodex/dist/esm/ui.d.ts +0 -23
  519. package/vendor/zodex/dist/esm/ui.js +0 -10
  520. package/vendor/zodex/dist/esm/zerialize.d.ts +0 -50
  521. package/vendor/zodex/dist/esm/zerialize.js +0 -417
  522. package/vendor/zodex/dist/esm/zod-types.d.ts +0 -11
  523. /package/vendor/{zodex/dist/esm/infer.js → zod/core/json-schema.js} +0 -0
  524. /package/vendor/{zodex/dist/esm/zod-types.js → zod/core/standard-schema.js} +0 -0
@@ -1,26 +0,0 @@
1
- import { z } from "zod";
2
- import { SzOptional, SzNullable, SzReadonly, SzDefault, SzLiteral, SzArray, SzObject, SzUnion, SzDiscriminatedUnion, SzIntersection, SzTuple, SzRecord, SzMap, SzSet, SzFunction, SzEnum, SzNativeEnum, SzPromise, SzEffect, SzCatch, SzType, SzString, SzNumber, SzBoolean, SzBigInt, SzNaN, SzDate, SzAny, SzNever, SzNull, SzUndefined, SzSymbol, SzUnknown, SzVoid, SzRef } from "./types.js";
3
- import { ZodTypes } from "./zod-types.js";
4
- type DezerializerOptions = {
5
- superRefinements?: {
6
- [key: string]: (value: unknown, ctx: z.RefinementCtx) => Promise<void> | void;
7
- };
8
- transforms?: {
9
- [key: string]: (value: unknown, ctx: z.RefinementCtx) => Promise<unknown> | unknown;
10
- };
11
- preprocesses?: {
12
- [key: string]: (value: unknown, ctx: z.RefinementCtx) => unknown;
13
- };
14
- path: string;
15
- pathToSchema: Map<string, ZodTypes>;
16
- $refs: [z.ZodLazy<any>, string][];
17
- originalShape: SzType;
18
- };
19
- type DistributiveOmit<T, K extends keyof any> = T extends any ? Omit<T, K> : never;
20
- type OmitKey<T, K> = DistributiveOmit<T, keyof K>;
21
- export type Dezerialize<T extends SzType | SzRef> = T extends SzRef ? any : T extends SzOptional ? Dezerialize<OmitKey<T, SzOptional>> extends infer I ? I extends ZodTypes ? z.ZodOptional<I> : never : never : T extends SzNullable ? Dezerialize<OmitKey<T, SzNullable>> extends infer I ? I extends ZodTypes ? z.ZodNullable<I> : never : never : T extends SzReadonly ? Dezerialize<OmitKey<T, SzReadonly>> extends infer I ? I extends ZodTypes ? z.ZodReadonly<I> : never : never : T extends SzDefault<any> ? Dezerialize<OmitKey<T, SzDefault<any>>> extends infer I ? I extends ZodTypes ? z.ZodDefault<I> : never : never : T extends SzString ? z.ZodString : T extends SzNumber ? z.ZodNumber : T extends SzBoolean ? z.ZodBoolean : T extends SzBigInt ? z.ZodBigInt : T extends SzNaN ? z.ZodNaN : T extends SzDate ? z.ZodDate : T extends SzUndefined ? z.ZodUndefined : T extends SzNull ? z.ZodNull : T extends SzSymbol ? z.ZodSymbol : T extends SzAny ? z.ZodAny : T extends SzUnknown ? z.ZodUnknown : T extends SzNever ? z.ZodNever : T extends SzVoid ? z.ZodVoid : T extends SzLiteral<infer Value> ? z.ZodLiteral<Value> : T extends SzTuple<infer _Items> ? z.ZodTuple<any> : T extends SzSet<infer Value> ? z.ZodSet<Dezerialize<Value>> : T extends SzArray<infer Element> ? z.ZodArray<Dezerialize<Element>> : T extends SzObject<infer Properties> ? z.ZodObject<{
22
- [Property in keyof Properties]: Dezerialize<Properties[Property]>;
23
- }> : T extends SzRecord<infer Key, infer Value> ? z.ZodRecord<Dezerialize<Key>, Dezerialize<Value>> : T extends SzMap<infer Key, infer Value> ? z.ZodMap<Dezerialize<Key>, Dezerialize<Value>> : T extends SzEnum<infer Values> ? z.ZodEnum<Values> : T extends SzUnion<infer _Options> ? z.ZodUnion<any> : T extends SzDiscriminatedUnion<infer Discriminator, infer _Options> ? z.ZodDiscriminatedUnion<Discriminator, any> : T extends SzIntersection<infer L, infer R> ? z.ZodIntersection<Dezerialize<L>, Dezerialize<R>> : T extends SzFunction<infer Args, infer Return> ? z.ZodFunction<Dezerialize<Args>, Dezerialize<Return>> : T extends SzPromise<infer Value> ? z.ZodPromise<Dezerialize<Value>> : T extends SzEffect<infer Value> ? z.ZodEffects<Dezerialize<Value>> : T extends SzCatch<infer Value> ? z.ZodCatch<Dezerialize<Value>> : T extends SzNativeEnum<infer Value> ? z.ZodNativeEnum<Value> : unknown;
24
- export declare function dezerializeRefs(shape: SzType, opts: DezerializerOptions): ZodTypes;
25
- export declare function dezerialize(shape: SzType, opts?: Partial<DezerializerOptions>): ZodTypes;
26
- export {};
@@ -1,393 +0,0 @@
1
- import { z } from "zod";
2
- function checkRef(item, opts) {
3
- if ("$ref" in item) {
4
- const lazy = z.lazy(() => z.null());
5
- opts.$refs.push([lazy, item.$ref]);
6
- return lazy;
7
- }
8
- return false;
9
- }
10
- const d = dezerializeRefs;
11
- const dezerializers = {
12
- number: (shape) => {
13
- let n = shape.coerce ? z.coerce.number() : z.number();
14
- if (shape.min !== undefined) {
15
- n = shape.minInclusive ? n.min(shape.min) : n.gt(shape.min);
16
- }
17
- if (shape.max !== undefined) {
18
- n = shape.maxInclusive ? n.max(shape.max) : n.lt(shape.max);
19
- }
20
- if (shape.multipleOf !== undefined) {
21
- n = n.multipleOf(shape.multipleOf);
22
- }
23
- if (shape.int) {
24
- n = n.int();
25
- }
26
- if (shape.finite) {
27
- n = n.finite();
28
- }
29
- return n;
30
- },
31
- string: (shape) => {
32
- let s = shape.coerce ? z.coerce.string() : z.string();
33
- if (shape.min !== undefined) {
34
- s = s.min(shape.min);
35
- }
36
- if (shape.max !== undefined) {
37
- s = s.max(shape.max);
38
- }
39
- if (shape.length !== undefined) {
40
- s = s.length(shape.length);
41
- }
42
- if (shape.startsWith !== undefined) {
43
- s = s.startsWith(shape.startsWith);
44
- }
45
- if (shape.endsWith !== undefined) {
46
- s = s.endsWith(shape.endsWith);
47
- }
48
- if (shape.toLowerCase !== undefined) {
49
- s = s.toLowerCase();
50
- }
51
- if (shape.toUpperCase !== undefined) {
52
- s = s.toUpperCase();
53
- }
54
- if (shape.trim !== undefined) {
55
- s = s.trim();
56
- }
57
- if ("includes" in shape) {
58
- s = s.includes(shape.includes, { position: shape.position });
59
- }
60
- if ("regex" in shape) {
61
- s = s.regex(new RegExp(shape.regex, shape.flags));
62
- }
63
- if ("kind" in shape) {
64
- if (shape.kind == "ip") {
65
- s = s.ip({ version: shape.version });
66
- }
67
- else if (shape.kind == "datetime") {
68
- s = s.datetime({
69
- offset: shape.offset,
70
- precision: shape.precision,
71
- local: shape.local,
72
- });
73
- }
74
- else if (shape.kind == "time") {
75
- s = s.time({
76
- precision: shape.precision,
77
- });
78
- }
79
- else {
80
- s = s[shape.kind]();
81
- }
82
- }
83
- return s;
84
- },
85
- boolean: (shape) => (shape.coerce ? z.coerce.boolean() : z.boolean()),
86
- nan: () => z.nan(),
87
- bigInt: (shape) => {
88
- let i = shape.coerce ? z.coerce.bigint() : z.bigint();
89
- if (shape.min !== undefined) {
90
- const min = BigInt(shape.min);
91
- i = shape.minInclusive ? i.min(min) : i.gt(min);
92
- }
93
- if (shape.max !== undefined) {
94
- const max = BigInt(shape.max);
95
- i = shape.maxInclusive ? i.max(max) : i.lt(max);
96
- }
97
- if (shape.multipleOf !== undefined) {
98
- const multipleOf = BigInt(shape.multipleOf);
99
- i = i.multipleOf(multipleOf);
100
- }
101
- return i;
102
- },
103
- date: (shape) => {
104
- let i = shape.coerce ? z.coerce.date() : z.date();
105
- if (shape.min !== undefined) {
106
- i = i.min(new Date(shape.min));
107
- }
108
- if (shape.max !== undefined) {
109
- i = i.max(new Date(shape.max));
110
- }
111
- return i;
112
- },
113
- undefined: () => z.undefined(),
114
- null: () => z.null(),
115
- any: () => z.any(),
116
- unknown: () => z.unknown(),
117
- never: () => z.never(),
118
- void: () => z.void(),
119
- literal: (shape) => z.literal(shape.value),
120
- symbol: () => z.symbol(),
121
- tuple: ((shape, opts) => {
122
- let i = z.tuple(shape.items.map((item, idx) => {
123
- return (checkRef(item, opts) ||
124
- d(item, {
125
- ...opts,
126
- path: opts.path + "/items/" + idx,
127
- }));
128
- }));
129
- if (shape.rest) {
130
- const rest = checkRef(shape.rest, opts) ||
131
- d(shape.rest, {
132
- ...opts,
133
- path: opts.path + "/rest",
134
- });
135
- i = i.rest(rest);
136
- }
137
- opts.pathToSchema.set(opts.path, i);
138
- return i;
139
- }),
140
- set: ((shape, opts) => {
141
- let i = z.set(checkRef(shape.value, opts) ||
142
- d(shape.value, {
143
- ...opts,
144
- path: opts.path + "/value",
145
- }));
146
- if (shape.minSize !== undefined) {
147
- i = i.min(shape.minSize);
148
- }
149
- if (shape.maxSize !== undefined) {
150
- i = i.max(shape.maxSize);
151
- }
152
- opts.pathToSchema.set(opts.path, i);
153
- return i;
154
- }),
155
- array: ((shape, opts) => {
156
- let i = z.array(checkRef(shape.element, opts) ||
157
- d(shape.element, {
158
- ...opts,
159
- path: opts.path + "/element",
160
- }));
161
- if (shape.minLength !== undefined) {
162
- i = i.min(shape.minLength);
163
- }
164
- if (shape.maxLength !== undefined) {
165
- i = i.max(shape.maxLength);
166
- }
167
- opts.pathToSchema.set(opts.path, i);
168
- return i;
169
- }),
170
- object: ((shape, opts) => {
171
- let i = z.object(Object.fromEntries(Object.entries(shape.properties).map(([key, value]) => {
172
- return [
173
- key,
174
- checkRef(value, opts) ||
175
- d(value, {
176
- ...opts,
177
- path: opts.path + "/properties/" + key,
178
- }),
179
- ];
180
- })));
181
- if (shape.catchall) {
182
- i = i.catchall(d(shape.catchall, opts));
183
- }
184
- else if (shape.unknownKeys === "strict") {
185
- i = i.strict();
186
- }
187
- else if (shape.unknownKeys === "passthrough") {
188
- i = i.passthrough();
189
- }
190
- opts.pathToSchema.set(opts.path, i);
191
- return i;
192
- }),
193
- record: ((shape, opts) => {
194
- const i = z.record(checkRef(shape.key, opts) ||
195
- d(shape.key, {
196
- ...opts,
197
- path: opts.path + "/key",
198
- }), checkRef(shape.value, opts) ||
199
- d(shape.value, {
200
- ...opts,
201
- path: opts.path + "/value",
202
- }));
203
- opts.pathToSchema.set(opts.path, i);
204
- return i;
205
- }),
206
- map: ((shape, opts) => {
207
- const i = z.map(checkRef(shape.key, opts) ||
208
- d(shape.key, {
209
- ...opts,
210
- path: opts.path + "/key",
211
- }), checkRef(shape.value, opts) ||
212
- d(shape.value, {
213
- ...opts,
214
- path: opts.path + "/value",
215
- }));
216
- opts.pathToSchema.set(opts.path, i);
217
- return i;
218
- }),
219
- nativeEnum: ((shape) => z.nativeEnum(shape.values)),
220
- enum: ((shape) => z.enum(shape.values)),
221
- union: ((shape, opts) => {
222
- const i = z.union(shape.options.map((opt, idx) => checkRef(opt, opts) ||
223
- d(opt, {
224
- ...opts,
225
- path: opts.path + "/options/" + idx,
226
- })));
227
- opts.pathToSchema.set(opts.path, i);
228
- return i;
229
- }),
230
- discriminatedUnion: ((shape, opts) => {
231
- const i = z.discriminatedUnion(shape.discriminator, shape.options.map((opt, idx) => checkRef(opt, opts) ||
232
- d(opt, {
233
- ...opts,
234
- path: opts.path + "/options/" + idx,
235
- })));
236
- opts.pathToSchema.set(opts.path, i);
237
- return i;
238
- }),
239
- intersection: ((shape, opts) => {
240
- const i = z.intersection(checkRef(shape.left, opts) ||
241
- d(shape.left, {
242
- ...opts,
243
- path: opts.path + "/left",
244
- }), checkRef(shape.right, opts) ||
245
- d(shape.right, {
246
- ...opts,
247
- path: opts.path + "/right",
248
- }));
249
- opts.pathToSchema.set(opts.path, i);
250
- return i;
251
- }),
252
- function: ((shape, opts) => {
253
- const i = z.function(checkRef(shape.args, opts) ||
254
- d(shape.args, {
255
- ...opts,
256
- path: opts.path + "/args",
257
- }), checkRef(shape.returns, opts) ||
258
- d(shape.returns, {
259
- ...opts,
260
- path: opts.path + "/returns",
261
- }));
262
- opts.pathToSchema.set(opts.path, i);
263
- return i;
264
- }),
265
- promise: ((shape, opts) => {
266
- const i = z.promise(checkRef(shape.value, opts) ||
267
- d(shape.value, {
268
- ...opts,
269
- path: opts.path + "/value",
270
- }));
271
- opts.pathToSchema.set(opts.path, i);
272
- return i;
273
- }),
274
- catch: ((shape, opts) => {
275
- let base = checkRef(shape.innerType, opts) ||
276
- d(shape.innerType, {
277
- ...opts,
278
- path: opts.path + "/innerType",
279
- });
280
- base = base.catch(shape.value);
281
- opts.pathToSchema.set(opts.path, base);
282
- return base;
283
- }),
284
- effect: ((shape, opts) => {
285
- let base = checkRef(shape.inner, opts) ||
286
- d(shape.inner, {
287
- ...opts,
288
- path: opts.path + "/inner",
289
- });
290
- if (!("superRefinements" in opts ||
291
- "transforms" in opts ||
292
- "preprocesses" in opts)) {
293
- opts.pathToSchema.set(opts.path, base);
294
- return base;
295
- }
296
- for (const { name, type } of shape.effects) {
297
- if (type === "refinement" && opts.superRefinements?.[name]) {
298
- base = base.superRefine(opts.superRefinements[name]);
299
- }
300
- else if (type === "transform" && opts.transforms?.[name]) {
301
- base = base.transform(opts.transforms[name]);
302
- }
303
- else if (type === "preprocess" && opts.preprocesses?.[name]) {
304
- base = z.preprocess(opts.preprocesses[name], base);
305
- }
306
- }
307
- opts.pathToSchema.set(opts.path, base);
308
- return base;
309
- }),
310
- };
311
- // Must match the exported Dezerialize types
312
- // export function dezerialize<T extends SzType>(shape: T, opts?: DezerializerOptions): Dezerialize<T> {
313
- export function dezerializeRefs(shape, opts) {
314
- if ("isOptional" in shape) {
315
- const { isOptional, ...rest } = shape;
316
- const inner = d(rest, opts);
317
- const result = isOptional ? inner.optional() : inner;
318
- opts.pathToSchema.set(opts.path, result);
319
- return result;
320
- }
321
- if ("isNullable" in shape) {
322
- const { isNullable, ...rest } = shape;
323
- const inner = d(rest, opts);
324
- const result = isNullable ? inner.nullable() : inner;
325
- opts.pathToSchema.set(opts.path, result);
326
- return result;
327
- }
328
- if ("defaultValue" in shape) {
329
- const { defaultValue, ...rest } = shape;
330
- const inner = d(rest, opts);
331
- const result = inner.default(shape.type === "bigInt"
332
- ? BigInt(defaultValue)
333
- : shape.type === "date"
334
- ? new Date(defaultValue)
335
- : defaultValue);
336
- opts.pathToSchema.set(opts.path, result);
337
- return result;
338
- }
339
- if ("readonly" in shape) {
340
- const { readonly, ...rest } = shape;
341
- const inner = d(rest, opts);
342
- const result = readonly ? inner.readonly() : inner;
343
- opts.pathToSchema.set(opts.path, result);
344
- return result;
345
- }
346
- if ("description" in shape && typeof shape.description === "string") {
347
- const { description, ...rest } = shape;
348
- const inner = d(rest, opts);
349
- const result = inner.describe(description);
350
- opts.pathToSchema.set(opts.path, result);
351
- return result;
352
- }
353
- return dezerializers[shape.type](shape, opts);
354
- }
355
- function resolvePointer(obj, pointer) {
356
- const tokens = pointer.split("/").slice(1);
357
- return tokens.reduce((acc, token) => {
358
- /* c8 ignore next -- Guard */
359
- if (acc === undefined)
360
- return acc;
361
- return acc[token.replace(/~1/g, "/").replace(/~0/g, "~")];
362
- }, obj);
363
- }
364
- export function dezerialize(shape, opts = {}) {
365
- if (!("path" in opts)) {
366
- opts.path = "#";
367
- }
368
- if (!("pathToSchema" in opts)) {
369
- opts.pathToSchema = new Map();
370
- }
371
- if (!("$refs" in opts)) {
372
- opts.$refs = [];
373
- }
374
- if (!("originalShape" in opts)) {
375
- opts.originalShape = shape;
376
- }
377
- const options = opts;
378
- const dez = dezerializeRefs(shape, options);
379
- for (const [lazy, $ref] of options.$refs) {
380
- lazy._def.getter = () => {
381
- const schema = options.pathToSchema.get($ref);
382
- if (schema) {
383
- return schema;
384
- }
385
- const obj = resolvePointer(options.originalShape, $ref);
386
- // Ensure we act on the same options as the main document JSON
387
- const dez = dezerialize(obj, options);
388
- options.pathToSchema.set($ref, dez);
389
- return dez;
390
- };
391
- }
392
- return dez;
393
- }
@@ -1,9 +0,0 @@
1
- import { SzType } from "./types.js";
2
- export * from "./dezerialize.js";
3
- export * from "./zerialize.js";
4
- export * from "./types.js";
5
- export { mapTypesToViews } from "./ui.js";
6
- type KeysOfUnion<T> = T extends T ? keyof T : never;
7
- export type SzPropertyKeysOf<T extends SzType> = KeysOfUnion<Extract<T, {
8
- type: "object";
9
- }>["properties"]>;
@@ -1,4 +0,0 @@
1
- export * from "./dezerialize.js";
2
- export * from "./zerialize.js";
3
- export * from "./types.js";
4
- export { mapTypesToViews } from "./ui.js";
@@ -1,29 +0,0 @@
1
- import { SzType, SzOptional, SzNullable, SzArray, SzObject, SzUnion, SzDiscriminatedUnion, SzIntersection, SzTuple, SzRecord, SzMap, SzSet, SzFunction, SzEnum, SzPromise } from "./types.js";
2
- type PrimitiveTypes = {
3
- string: string;
4
- number: number;
5
- boolean: boolean;
6
- nan: number;
7
- date: Date;
8
- symbol: symbol;
9
- undefined: undefined;
10
- null: null;
11
- any: any;
12
- unknown: unknown;
13
- never: never;
14
- void: void;
15
- };
16
- type RequiredKeys<T extends Record<string, any>> = {
17
- [K in keyof T]: T[K] extends SzOptional ? never : K;
18
- }[keyof T];
19
- type OptionalKeys<T extends Record<string, any>> = {
20
- [K in keyof T]: T[K] extends SzOptional ? K : never;
21
- }[keyof T];
22
- export type SzInfer<T extends SzType> = (T extends SzOptional ? undefined : never) | (T extends SzNullable ? null : never) | (T["type"] extends keyof PrimitiveTypes ? PrimitiveTypes[T["type"]] : T extends {
23
- type: "literal";
24
- } ? T["value"] : T extends SzArray<infer T> ? SzInfer<T>[] : T extends SzObject<infer Properties> ? {
25
- [Key in RequiredKeys<Properties>]: SzInfer<Properties[Key]>;
26
- } & {
27
- [Key in OptionalKeys<Properties>]?: SzInfer<Properties[Key]>;
28
- } : T extends SzUnion<infer Options> ? SzInfer<Options[number]> : T extends SzDiscriminatedUnion<infer _D, infer Options> ? SzInfer<Options[number]> : T extends SzIntersection<infer L, infer R> ? SzInfer<L> & SzInfer<R> : T extends SzTuple<infer Items> ? SzInfer<Items[number]>[] : T extends SzRecord<infer _Key, infer Value> ? Record<string, SzInfer<Value>> : T extends SzMap<infer _Key, infer Value> ? Record<string, SzInfer<Value>> : T extends SzSet<infer T> ? T[] : T extends SzFunction<infer Args, infer Return> ? (...args: SzInfer<Args>[]) => SzInfer<Return> : T extends SzEnum<infer Values> ? Values[number] : T extends SzPromise<infer Value> ? Promise<SzInfer<Value>> : unknown);
29
- export {};
@@ -1 +0,0 @@
1
- {"type": "module"}
@@ -1,201 +0,0 @@
1
- import { ValueOf } from "type-fest";
2
- export type SzNumber = {
3
- type: "number";
4
- coerce?: boolean;
5
- min?: number;
6
- max?: number;
7
- minInclusive?: boolean;
8
- maxInclusive?: boolean;
9
- multipleOf?: number;
10
- int?: boolean;
11
- finite?: boolean;
12
- };
13
- export type SzBigInt = {
14
- type: "bigInt";
15
- coerce?: boolean;
16
- min?: string;
17
- max?: string;
18
- minInclusive?: boolean;
19
- maxInclusive?: boolean;
20
- multipleOf?: string;
21
- };
22
- export declare const STRING_KINDS: Set<"email" | "url" | "emoji" | "uuid" | "nanoid" | "cuid" | "cuid2" | "ulid" | "date" | "duration" | "base64">;
23
- export type SzString = {
24
- type: "string";
25
- coerce?: boolean;
26
- min?: number;
27
- max?: number;
28
- length?: number;
29
- startsWith?: string;
30
- endsWith?: string;
31
- toLowerCase?: boolean;
32
- toUpperCase?: boolean;
33
- trim?: boolean;
34
- } & (object | {
35
- includes: string;
36
- position?: number;
37
- }) & (object | {
38
- kind: "ip";
39
- version?: "v4" | "v6";
40
- } | {
41
- regex: string;
42
- flags?: string;
43
- } | {
44
- kind: "time";
45
- precision?: number;
46
- } | {
47
- kind: "datetime";
48
- offset?: true;
49
- local?: true;
50
- precision?: number;
51
- } | {
52
- kind: typeof STRING_KINDS extends Set<infer T> ? T : never;
53
- });
54
- export type SzDate = {
55
- type: "date";
56
- coerce?: boolean;
57
- min?: number;
58
- max?: number;
59
- };
60
- export type SzBoolean = {
61
- type: "boolean";
62
- coerce?: boolean;
63
- };
64
- export type SzNaN = {
65
- type: "nan";
66
- };
67
- export type SzUndefined = {
68
- type: "undefined";
69
- };
70
- export type SzNull = {
71
- type: "null";
72
- };
73
- export type SzAny = {
74
- type: "any";
75
- };
76
- export type SzUnknown = {
77
- type: "unknown";
78
- };
79
- export type SzNever = {
80
- type: "never";
81
- };
82
- export type SzVoid = {
83
- type: "void";
84
- };
85
- export type SzSymbol = {
86
- type: "symbol";
87
- };
88
- export type SzPrimitive = SzBoolean | SzNumber | SzBigInt | SzString | SzNaN | SzDate | SzUndefined | SzNull | SzAny | SzUnknown | SzNever | SzVoid | SzSymbol;
89
- export type SzLiteral<T> = {
90
- type: "literal";
91
- value: T;
92
- };
93
- export type SzArray<T extends SzType = SzType> = {
94
- type: "array";
95
- element: T;
96
- minLength?: number;
97
- maxLength?: number;
98
- };
99
- export type SzObject<T extends Record<string, SzType> = Record<string, SzType>, U extends SzType = SzType> = {
100
- type: "object";
101
- properties: T;
102
- unknownKeys?: "strict" | "strip" | "passthrough";
103
- catchall?: U;
104
- };
105
- export type SzUnion<Options extends [SzType, ...SzType[]] = [SzType]> = {
106
- type: "union";
107
- options: Options;
108
- };
109
- export type SzDiscriminatedUnionOption<Discriminator extends string> = {
110
- [key in Discriminator]: SzType;
111
- } & SzType;
112
- export type SzDiscriminatedUnion<Discriminator extends string = string, Options extends SzDiscriminatedUnionOption<Discriminator>[] = []> = {
113
- type: "discriminatedUnion";
114
- discriminator: Discriminator;
115
- options: Options;
116
- };
117
- export type SzIntersection<Left extends SzType = SzType, Right extends SzType = SzType> = {
118
- type: "intersection";
119
- left: Left;
120
- right: Right;
121
- };
122
- export type SzTuple<Items extends [SzType, ...SzType[]] | [] = [SzType, ...SzType[]] | []> = {
123
- type: "tuple";
124
- items: Items;
125
- rest?: SzType;
126
- };
127
- export type SzRecord<Key extends SzKey = SzKey, Value extends SzType = SzType> = {
128
- type: "record";
129
- key: Key;
130
- value: Value;
131
- };
132
- export type SzMap<Key extends SzKey, Value extends SzType> = {
133
- type: "map";
134
- key: Key;
135
- value: Value;
136
- };
137
- export type SzSet<T extends SzType = SzType> = {
138
- type: "set";
139
- value: T;
140
- minSize?: number;
141
- maxSize?: number;
142
- };
143
- export type SzFunction<Args extends SzTuple, Return extends SzType> = {
144
- type: "function";
145
- args: Args;
146
- returns: Return;
147
- };
148
- export type SzEnum<Values extends [string, ...string[]] = [string, ...string[]]> = {
149
- type: "enum";
150
- values: Values;
151
- };
152
- export type SzNativeEnum<Values extends {
153
- [key: string]: string | number;
154
- [key: number]: string;
155
- } = {
156
- [key: string]: string | number;
157
- [key: number]: string;
158
- }> = {
159
- type: "nativeEnum";
160
- values: Values;
161
- };
162
- export type SzPromise<T extends SzType = SzType> = {
163
- type: "promise";
164
- value: T;
165
- };
166
- export type SzCatch<T extends SzType = SzType> = {
167
- type: "catch";
168
- value: any;
169
- innerType: T;
170
- };
171
- export type SzEffect<T extends SzType = SzType> = {
172
- type: "effect";
173
- effects: {
174
- name: string;
175
- type: "refinement" | "transform" | "preprocess";
176
- }[];
177
- inner: T;
178
- };
179
- export type SzNullable = {
180
- isNullable: boolean;
181
- };
182
- export type SzOptional = {
183
- isOptional: boolean;
184
- };
185
- export type SzDefault<T> = {
186
- defaultValue: T;
187
- };
188
- export type SzDescription = {
189
- description: string;
190
- };
191
- export type SzReadonly = {
192
- readonly: boolean;
193
- };
194
- export type SzRef = {
195
- $ref: string;
196
- };
197
- export type SzExtras = Partial<SzNullable & SzOptional & SzDefault<any> & SzDescription & SzReadonly>;
198
- export type SzKey = (SzString | SzNumber | SzSymbol) & SzExtras;
199
- export type SzDefaultOrNullable = SzDefault<any> | SzNullable;
200
- export type SzType = (SzPrimitive | SzLiteral<any> | SzArray<any> | SzObject<any, any> | SzUnion<any> | SzDiscriminatedUnion<any, any> | SzIntersection<any, any> | SzTuple<any> | SzRecord<any, any> | SzMap<any, any> | SzSet<any> | SzFunction<any, any> | SzEnum<any> | SzNativeEnum<any> | SzPromise<any> | SzEffect<any> | SzCatch<any>) & SzExtras;
201
- export type SzUnionize<T extends SzType | SzRef> = T | (T extends SzArray<infer T> ? SzUnionize<T> : T extends SzObject<infer Properties> ? SzUnionize<ValueOf<Properties>> : T extends SzUnion<infer Options> ? SzUnionize<Options[number]> : T extends SzDiscriminatedUnion<infer _D, infer Options> ? SzUnionize<Options[number]> : T extends SzIntersection<infer L, infer R> ? SzUnionize<L | R> : T extends SzTuple<infer Items> ? SzUnionize<Items[number]> : T extends SzRecord<infer _Key, infer Value> ? SzUnionize<Value> : T extends SzMap<infer _Key, infer Value> ? SzUnionize<Value> : T extends SzSet<infer T> ? SzUnionize<T> : T extends SzFunction<infer Args, infer Return> ? SzUnionize<Args | Return> : T extends SzPromise<infer Value> ? SzUnionize<Value> : never);
@@ -1,13 +0,0 @@
1
- export const STRING_KINDS = new Set([
2
- "email",
3
- "url",
4
- "emoji",
5
- "uuid",
6
- "nanoid",
7
- "cuid",
8
- "cuid2",
9
- "ulid",
10
- "date",
11
- "duration",
12
- "base64",
13
- ]);