@es-joy/jsoe 0.24.3 → 0.25.1

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 +51 -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 +399 -54
  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
@@ -0,0 +1,581 @@
1
+ // import { $ZodType } from "./schemas.js";
2
+ import * as core from "./core.js";
3
+ import * as regexes from "./regexes.js";
4
+ import * as util from "./util.js";
5
+ export const $ZodCheck = /*@__PURE__*/ core.$constructor("$ZodCheck", (inst, def) => {
6
+ var _a;
7
+ inst._zod ?? (inst._zod = {});
8
+ inst._zod.def = def;
9
+ (_a = inst._zod).onattach ?? (_a.onattach = []);
10
+ });
11
+ /** Default `when` for size-based checks: run only on non-nullish values with a `size`. */
12
+ const _whenHasSize = (payload) => {
13
+ const val = payload.value;
14
+ return !util.nullish(val) && val.size !== undefined;
15
+ };
16
+ /** Default `when` for length-based checks: run only on non-nullish values with a `length`. */
17
+ const _whenHasLength = (payload) => {
18
+ const val = payload.value;
19
+ return !util.nullish(val) && val.length !== undefined;
20
+ };
21
+ const numericOriginMap = {
22
+ number: "number",
23
+ bigint: "bigint",
24
+ object: "date",
25
+ };
26
+ export const $ZodCheckLessThan = /*@__PURE__*/ core.$constructor("$ZodCheckLessThan", (inst, def) => {
27
+ $ZodCheck.init(inst, def);
28
+ const origin = numericOriginMap[typeof def.value];
29
+ inst._zod.onattach.push((inst) => {
30
+ const bag = inst._zod.bag;
31
+ const curr = (def.inclusive ? bag.maximum : bag.exclusiveMaximum) ?? Number.POSITIVE_INFINITY;
32
+ if (def.value < curr) {
33
+ if (def.inclusive)
34
+ bag.maximum = def.value;
35
+ else
36
+ bag.exclusiveMaximum = def.value;
37
+ }
38
+ });
39
+ inst._zod.check = (payload) => {
40
+ if (def.inclusive ? payload.value <= def.value : payload.value < def.value) {
41
+ return;
42
+ }
43
+ payload.issues.push({
44
+ origin: numericOriginMap[typeof payload.value] ?? origin,
45
+ code: "too_big",
46
+ maximum: typeof def.value === "object" ? def.value.getTime() : def.value,
47
+ input: payload.value,
48
+ inclusive: def.inclusive,
49
+ inst,
50
+ continue: !def.abort,
51
+ });
52
+ };
53
+ });
54
+ export const $ZodCheckGreaterThan = /*@__PURE__*/ core.$constructor("$ZodCheckGreaterThan", (inst, def) => {
55
+ $ZodCheck.init(inst, def);
56
+ const origin = numericOriginMap[typeof def.value];
57
+ inst._zod.onattach.push((inst) => {
58
+ const bag = inst._zod.bag;
59
+ const curr = (def.inclusive ? bag.minimum : bag.exclusiveMinimum) ?? Number.NEGATIVE_INFINITY;
60
+ if (def.value > curr) {
61
+ if (def.inclusive)
62
+ bag.minimum = def.value;
63
+ else
64
+ bag.exclusiveMinimum = def.value;
65
+ }
66
+ });
67
+ inst._zod.check = (payload) => {
68
+ if (def.inclusive ? payload.value >= def.value : payload.value > def.value) {
69
+ return;
70
+ }
71
+ payload.issues.push({
72
+ origin: numericOriginMap[typeof payload.value] ?? origin,
73
+ code: "too_small",
74
+ minimum: typeof def.value === "object" ? def.value.getTime() : def.value,
75
+ input: payload.value,
76
+ inclusive: def.inclusive,
77
+ inst,
78
+ continue: !def.abort,
79
+ });
80
+ };
81
+ });
82
+ export const $ZodCheckMultipleOf =
83
+ /*@__PURE__*/ core.$constructor("$ZodCheckMultipleOf", (inst, def) => {
84
+ $ZodCheck.init(inst, def);
85
+ inst._zod.onattach.push((inst) => {
86
+ var _a;
87
+ (_a = inst._zod.bag).multipleOf ?? (_a.multipleOf = def.value);
88
+ });
89
+ inst._zod.check = (payload) => {
90
+ if (typeof payload.value !== typeof def.value)
91
+ throw new Error("Cannot mix number and bigint in multiple_of check.");
92
+ const isMultiple = typeof payload.value === "bigint"
93
+ ? // `value % 0n` throws, and nothing is a multiple of zero — the number branch already fails this way via NaN
94
+ def.value !== BigInt(0) && payload.value % def.value === BigInt(0)
95
+ : util.floatSafeRemainder(payload.value, def.value) === 0;
96
+ if (isMultiple)
97
+ return;
98
+ payload.issues.push({
99
+ origin: typeof payload.value,
100
+ code: "not_multiple_of",
101
+ divisor: def.value,
102
+ input: payload.value,
103
+ inst,
104
+ continue: !def.abort,
105
+ });
106
+ };
107
+ });
108
+ export const $ZodCheckNumberFormat = /*@__PURE__*/ core.$constructor("$ZodCheckNumberFormat", (inst, def) => {
109
+ $ZodCheck.init(inst, def); // no format checks
110
+ def.format = def.format || "float64";
111
+ const isInt = def.format?.includes("int");
112
+ const origin = isInt ? "int" : "number";
113
+ const [minimum, maximum] = util.NUMBER_FORMAT_RANGES[def.format];
114
+ inst._zod.onattach.push((inst) => {
115
+ const bag = inst._zod.bag;
116
+ bag.format = def.format;
117
+ bag.minimum = minimum;
118
+ bag.maximum = maximum;
119
+ if (isInt)
120
+ bag.pattern = regexes.integer;
121
+ });
122
+ inst._zod.check = (payload) => {
123
+ const input = payload.value;
124
+ if (isInt) {
125
+ if (!Number.isInteger(input)) {
126
+ // invalid_format issue
127
+ // payload.issues.push({
128
+ // expected: def.format,
129
+ // format: def.format,
130
+ // code: "invalid_format",
131
+ // input,
132
+ // inst,
133
+ // });
134
+ // invalid_type issue
135
+ payload.issues.push({
136
+ expected: origin,
137
+ format: def.format,
138
+ code: "invalid_type",
139
+ continue: false,
140
+ input,
141
+ inst,
142
+ });
143
+ return;
144
+ // not_multiple_of issue
145
+ // payload.issues.push({
146
+ // code: "not_multiple_of",
147
+ // origin: "number",
148
+ // input,
149
+ // inst,
150
+ // divisor: 1,
151
+ // });
152
+ }
153
+ if (!Number.isSafeInteger(input)) {
154
+ if (input > 0) {
155
+ // too_big
156
+ payload.issues.push({
157
+ input,
158
+ code: "too_big",
159
+ maximum: Number.MAX_SAFE_INTEGER,
160
+ note: "Integers must be within the safe integer range.",
161
+ inst,
162
+ origin,
163
+ inclusive: true,
164
+ continue: !def.abort,
165
+ });
166
+ }
167
+ else {
168
+ // too_small
169
+ payload.issues.push({
170
+ input,
171
+ code: "too_small",
172
+ minimum: Number.MIN_SAFE_INTEGER,
173
+ note: "Integers must be within the safe integer range.",
174
+ inst,
175
+ origin,
176
+ inclusive: true,
177
+ continue: !def.abort,
178
+ });
179
+ }
180
+ return;
181
+ }
182
+ }
183
+ if (input < minimum) {
184
+ payload.issues.push({
185
+ origin: "number",
186
+ input,
187
+ code: "too_small",
188
+ minimum,
189
+ inclusive: true,
190
+ inst,
191
+ continue: !def.abort,
192
+ });
193
+ }
194
+ if (input > maximum) {
195
+ payload.issues.push({
196
+ origin: "number",
197
+ input,
198
+ code: "too_big",
199
+ maximum,
200
+ inclusive: true,
201
+ inst,
202
+ continue: !def.abort,
203
+ });
204
+ }
205
+ };
206
+ });
207
+ export const $ZodCheckBigIntFormat = /*@__PURE__*/ core.$constructor("$ZodCheckBigIntFormat", (inst, def) => {
208
+ $ZodCheck.init(inst, def); // no format checks
209
+ const [minimum, maximum] = util.BIGINT_FORMAT_RANGES[def.format];
210
+ inst._zod.onattach.push((inst) => {
211
+ const bag = inst._zod.bag;
212
+ bag.format = def.format;
213
+ bag.minimum = minimum;
214
+ bag.maximum = maximum;
215
+ });
216
+ inst._zod.check = (payload) => {
217
+ const input = payload.value;
218
+ if (input < minimum) {
219
+ payload.issues.push({
220
+ origin: "bigint",
221
+ input,
222
+ code: "too_small",
223
+ minimum: minimum,
224
+ inclusive: true,
225
+ inst,
226
+ continue: !def.abort,
227
+ });
228
+ }
229
+ if (input > maximum) {
230
+ payload.issues.push({
231
+ origin: "bigint",
232
+ input,
233
+ code: "too_big",
234
+ maximum,
235
+ inclusive: true,
236
+ inst,
237
+ continue: !def.abort,
238
+ });
239
+ }
240
+ };
241
+ });
242
+ export const $ZodCheckMaxSize = /*@__PURE__*/ core.$constructor("$ZodCheckMaxSize", (inst, def) => {
243
+ var _a;
244
+ $ZodCheck.init(inst, def);
245
+ (_a = inst._zod.def).when ?? (_a.when = _whenHasSize);
246
+ inst._zod.onattach.push((inst) => {
247
+ const curr = (inst._zod.bag.maximum ?? Number.POSITIVE_INFINITY);
248
+ if (def.maximum < curr)
249
+ inst._zod.bag.maximum = def.maximum;
250
+ });
251
+ inst._zod.check = (payload) => {
252
+ const input = payload.value;
253
+ const size = input.size;
254
+ if (size <= def.maximum)
255
+ return;
256
+ payload.issues.push({
257
+ origin: util.getSizableOrigin(input),
258
+ code: "too_big",
259
+ maximum: def.maximum,
260
+ inclusive: true,
261
+ input,
262
+ inst,
263
+ continue: !def.abort,
264
+ });
265
+ };
266
+ });
267
+ export const $ZodCheckMinSize = /*@__PURE__*/ core.$constructor("$ZodCheckMinSize", (inst, def) => {
268
+ var _a;
269
+ $ZodCheck.init(inst, def);
270
+ (_a = inst._zod.def).when ?? (_a.when = _whenHasSize);
271
+ inst._zod.onattach.push((inst) => {
272
+ const curr = (inst._zod.bag.minimum ?? Number.NEGATIVE_INFINITY);
273
+ if (def.minimum > curr)
274
+ inst._zod.bag.minimum = def.minimum;
275
+ });
276
+ inst._zod.check = (payload) => {
277
+ const input = payload.value;
278
+ const size = input.size;
279
+ if (size >= def.minimum)
280
+ return;
281
+ payload.issues.push({
282
+ origin: util.getSizableOrigin(input),
283
+ code: "too_small",
284
+ minimum: def.minimum,
285
+ inclusive: true,
286
+ input,
287
+ inst,
288
+ continue: !def.abort,
289
+ });
290
+ };
291
+ });
292
+ export const $ZodCheckSizeEquals = /*@__PURE__*/ core.$constructor("$ZodCheckSizeEquals", (inst, def) => {
293
+ var _a;
294
+ $ZodCheck.init(inst, def);
295
+ (_a = inst._zod.def).when ?? (_a.when = _whenHasSize);
296
+ inst._zod.onattach.push((inst) => {
297
+ const bag = inst._zod.bag;
298
+ bag.minimum = def.size;
299
+ bag.maximum = def.size;
300
+ bag.size = def.size;
301
+ });
302
+ inst._zod.check = (payload) => {
303
+ const input = payload.value;
304
+ const size = input.size;
305
+ if (size === def.size)
306
+ return;
307
+ const tooBig = size > def.size;
308
+ payload.issues.push({
309
+ origin: util.getSizableOrigin(input),
310
+ ...(tooBig ? { code: "too_big", maximum: def.size } : { code: "too_small", minimum: def.size }),
311
+ inclusive: true,
312
+ exact: true,
313
+ input: payload.value,
314
+ inst,
315
+ continue: !def.abort,
316
+ });
317
+ };
318
+ });
319
+ export const $ZodCheckMaxLength = /*@__PURE__*/ core.$constructor("$ZodCheckMaxLength", (inst, def) => {
320
+ var _a;
321
+ $ZodCheck.init(inst, def);
322
+ (_a = inst._zod.def).when ?? (_a.when = _whenHasLength);
323
+ inst._zod.onattach.push((inst) => {
324
+ const curr = (inst._zod.bag.maximum ?? Number.POSITIVE_INFINITY);
325
+ if (def.maximum < curr)
326
+ inst._zod.bag.maximum = def.maximum;
327
+ });
328
+ inst._zod.check = (payload) => {
329
+ const input = payload.value;
330
+ const units = input.length;
331
+ // Strings are measured in Unicode code points, not UTF-16 units. A code point is at most two units, so a string that already fits in units fits in code points; only an overflow has to be counted.
332
+ const length = typeof input === "string" && units > def.maximum ? util.codePointLength(input) : units;
333
+ if (length <= def.maximum)
334
+ return;
335
+ const origin = util.getLengthableOrigin(input);
336
+ payload.issues.push({
337
+ origin,
338
+ code: "too_big",
339
+ maximum: def.maximum,
340
+ inclusive: true,
341
+ input,
342
+ inst,
343
+ continue: !def.abort,
344
+ });
345
+ };
346
+ });
347
+ export const $ZodCheckMinLength = /*@__PURE__*/ core.$constructor("$ZodCheckMinLength", (inst, def) => {
348
+ var _a;
349
+ $ZodCheck.init(inst, def);
350
+ (_a = inst._zod.def).when ?? (_a.when = _whenHasLength);
351
+ inst._zod.onattach.push((inst) => {
352
+ const curr = (inst._zod.bag.minimum ?? Number.NEGATIVE_INFINITY);
353
+ if (def.minimum > curr)
354
+ inst._zod.bag.minimum = def.minimum;
355
+ });
356
+ inst._zod.check = (payload) => {
357
+ const input = payload.value;
358
+ const units = input.length;
359
+ // A code point is one or two UTF-16 units, so fewer units than the floor can never reach it and twice the floor always clears it. Only in between is the exact count in doubt.
360
+ const length = typeof input === "string" && units >= def.minimum && units < def.minimum * 2
361
+ ? util.codePointLength(input)
362
+ : units;
363
+ if (length >= def.minimum)
364
+ return;
365
+ const origin = util.getLengthableOrigin(input);
366
+ payload.issues.push({
367
+ origin,
368
+ code: "too_small",
369
+ minimum: def.minimum,
370
+ inclusive: true,
371
+ input,
372
+ inst,
373
+ continue: !def.abort,
374
+ });
375
+ };
376
+ });
377
+ export const $ZodCheckLengthEquals = /*@__PURE__*/ core.$constructor("$ZodCheckLengthEquals", (inst, def) => {
378
+ var _a;
379
+ $ZodCheck.init(inst, def);
380
+ (_a = inst._zod.def).when ?? (_a.when = _whenHasLength);
381
+ inst._zod.onattach.push((inst) => {
382
+ const bag = inst._zod.bag;
383
+ bag.minimum = def.length;
384
+ bag.maximum = def.length;
385
+ bag.length = def.length;
386
+ });
387
+ inst._zod.check = (payload) => {
388
+ const input = payload.value;
389
+ const units = input.length;
390
+ // A code point is one or two UTF-16 units, so outside `[length, length * 2]` units the target is missed either way — and missed in the same direction in both measures.
391
+ const length = typeof input === "string" && units >= def.length && units <= def.length * 2
392
+ ? util.codePointLength(input)
393
+ : units;
394
+ if (length === def.length)
395
+ return;
396
+ const origin = util.getLengthableOrigin(input);
397
+ const tooBig = length > def.length;
398
+ payload.issues.push({
399
+ origin,
400
+ ...(tooBig ? { code: "too_big", maximum: def.length } : { code: "too_small", minimum: def.length }),
401
+ inclusive: true,
402
+ exact: true,
403
+ input: payload.value,
404
+ inst,
405
+ continue: !def.abort,
406
+ });
407
+ };
408
+ });
409
+ export const $ZodCheckStringFormat = /*@__PURE__*/ core.$constructor("$ZodCheckStringFormat", (inst, def) => {
410
+ var _a, _b;
411
+ $ZodCheck.init(inst, def);
412
+ inst._zod.onattach.push((inst) => {
413
+ const bag = inst._zod.bag;
414
+ bag.format = def.format;
415
+ if (def.pattern) {
416
+ bag.patterns ?? (bag.patterns = new Set());
417
+ bag.patterns.add(def.pattern);
418
+ }
419
+ });
420
+ if (def.pattern)
421
+ (_a = inst._zod).check ?? (_a.check = (payload) => {
422
+ def.pattern.lastIndex = 0;
423
+ if (def.pattern.test(payload.value))
424
+ return;
425
+ payload.issues.push({
426
+ origin: "string",
427
+ code: "invalid_format",
428
+ format: def.format,
429
+ input: payload.value,
430
+ ...(def.pattern ? { pattern: def.pattern.toString() } : {}),
431
+ inst,
432
+ continue: !def.abort,
433
+ });
434
+ });
435
+ else
436
+ (_b = inst._zod).check ?? (_b.check = () => { });
437
+ });
438
+ export const $ZodCheckRegex = /*@__PURE__*/ core.$constructor("$ZodCheckRegex", (inst, def) => {
439
+ $ZodCheckStringFormat.init(inst, def);
440
+ inst._zod.check = (payload) => {
441
+ def.pattern.lastIndex = 0;
442
+ if (def.pattern.test(payload.value))
443
+ return;
444
+ payload.issues.push({
445
+ origin: "string",
446
+ code: "invalid_format",
447
+ format: "regex",
448
+ input: payload.value,
449
+ pattern: def.pattern.toString(),
450
+ inst,
451
+ continue: !def.abort,
452
+ });
453
+ };
454
+ });
455
+ export const $ZodCheckLowerCase = /*@__PURE__*/ core.$constructor("$ZodCheckLowerCase", (inst, def) => {
456
+ def.pattern ?? (def.pattern = regexes.lowercase);
457
+ $ZodCheckStringFormat.init(inst, def);
458
+ });
459
+ export const $ZodCheckUpperCase = /*@__PURE__*/ core.$constructor("$ZodCheckUpperCase", (inst, def) => {
460
+ def.pattern ?? (def.pattern = regexes.uppercase);
461
+ $ZodCheckStringFormat.init(inst, def);
462
+ });
463
+ export const $ZodCheckIncludes = /*@__PURE__*/ core.$constructor("$ZodCheckIncludes", (inst, def) => {
464
+ $ZodCheck.init(inst, def);
465
+ const escapedRegex = util.escapeRegex(def.includes);
466
+ // `String.prototype.includes(sub, position)` matches `sub` at `position`
467
+ // OR LATER, so the pattern must allow at least `position` leading chars
468
+ // (`{N,}`), not exactly `position` chars (`{N}`).
469
+ const pattern = new RegExp(typeof def.position === "number" ? `^.{${def.position},}${escapedRegex}` : escapedRegex);
470
+ def.pattern = pattern;
471
+ inst._zod.onattach.push((inst) => {
472
+ const bag = inst._zod.bag;
473
+ bag.patterns ?? (bag.patterns = new Set());
474
+ bag.patterns.add(pattern);
475
+ });
476
+ inst._zod.check = (payload) => {
477
+ if (payload.value.includes(def.includes, def.position))
478
+ return;
479
+ payload.issues.push({
480
+ origin: "string",
481
+ code: "invalid_format",
482
+ format: "includes",
483
+ includes: def.includes,
484
+ input: payload.value,
485
+ inst,
486
+ continue: !def.abort,
487
+ });
488
+ };
489
+ });
490
+ export const $ZodCheckStartsWith = /*@__PURE__*/ core.$constructor("$ZodCheckStartsWith", (inst, def) => {
491
+ $ZodCheck.init(inst, def);
492
+ const pattern = new RegExp(`^${util.escapeRegex(def.prefix)}.*`);
493
+ def.pattern ?? (def.pattern = pattern);
494
+ inst._zod.onattach.push((inst) => {
495
+ const bag = inst._zod.bag;
496
+ bag.patterns ?? (bag.patterns = new Set());
497
+ bag.patterns.add(pattern);
498
+ });
499
+ inst._zod.check = (payload) => {
500
+ if (payload.value.startsWith(def.prefix))
501
+ return;
502
+ payload.issues.push({
503
+ origin: "string",
504
+ code: "invalid_format",
505
+ format: "starts_with",
506
+ prefix: def.prefix,
507
+ input: payload.value,
508
+ inst,
509
+ continue: !def.abort,
510
+ });
511
+ };
512
+ });
513
+ export const $ZodCheckEndsWith = /*@__PURE__*/ core.$constructor("$ZodCheckEndsWith", (inst, def) => {
514
+ $ZodCheck.init(inst, def);
515
+ const pattern = new RegExp(`.*${util.escapeRegex(def.suffix)}$`);
516
+ def.pattern ?? (def.pattern = pattern);
517
+ inst._zod.onattach.push((inst) => {
518
+ const bag = inst._zod.bag;
519
+ bag.patterns ?? (bag.patterns = new Set());
520
+ bag.patterns.add(pattern);
521
+ });
522
+ inst._zod.check = (payload) => {
523
+ if (payload.value.endsWith(def.suffix))
524
+ return;
525
+ payload.issues.push({
526
+ origin: "string",
527
+ code: "invalid_format",
528
+ format: "ends_with",
529
+ suffix: def.suffix,
530
+ input: payload.value,
531
+ inst,
532
+ continue: !def.abort,
533
+ });
534
+ };
535
+ });
536
+ ///////////////////////////////////
537
+ ///// $ZodCheckProperty /////
538
+ ///////////////////////////////////
539
+ function handleCheckPropertyResult(result, payload, property) {
540
+ if (result.issues.length) {
541
+ payload.issues.push(...util.prefixIssues(property, result.issues));
542
+ }
543
+ }
544
+ export const $ZodCheckProperty = /*@__PURE__*/ core.$constructor("$ZodCheckProperty", (inst, def) => {
545
+ $ZodCheck.init(inst, def);
546
+ inst._zod.check = (payload) => {
547
+ const result = def.schema._zod.run({
548
+ value: payload.value[def.property],
549
+ issues: [],
550
+ }, {});
551
+ if (result instanceof Promise) {
552
+ return result.then((result) => handleCheckPropertyResult(result, payload, def.property));
553
+ }
554
+ handleCheckPropertyResult(result, payload, def.property);
555
+ return;
556
+ };
557
+ });
558
+ export const $ZodCheckMimeType = /*@__PURE__*/ core.$constructor("$ZodCheckMimeType", (inst, def) => {
559
+ $ZodCheck.init(inst, def);
560
+ const mimeSet = new Set(def.mime);
561
+ inst._zod.onattach.push((inst) => {
562
+ inst._zod.bag.mime = def.mime;
563
+ });
564
+ inst._zod.check = (payload) => {
565
+ if (mimeSet.has(payload.value.type))
566
+ return;
567
+ payload.issues.push({
568
+ code: "invalid_value",
569
+ values: def.mime,
570
+ input: payload.value.type,
571
+ inst,
572
+ continue: !def.abort,
573
+ });
574
+ };
575
+ });
576
+ export const $ZodCheckOverwrite = /*@__PURE__*/ core.$constructor("$ZodCheckOverwrite", (inst, def) => {
577
+ $ZodCheck.init(inst, def);
578
+ inst._zod.check = (payload) => {
579
+ payload.value = def.tx(payload.value);
580
+ };
581
+ });
@@ -0,0 +1,51 @@
1
+ import type * as core from "./core.js";
2
+ import type { SomeType } from "./schemas.js";
3
+ /** Sentinel value returned by the compiled fast path when validation fails. Internal. */
4
+ export declare const INVALID: unique symbol;
5
+ export type INVALID = typeof INVALID;
6
+ interface CompileFnOptions {
7
+ debug?: boolean | undefined;
8
+ /** Emit a validator instead of a parser: skip building the output value where nothing reads it. */
9
+ assertOnly?: boolean | undefined;
10
+ }
11
+ type CompiledFn<T> = ((input: unknown) => T | INVALID) & {
12
+ code?: string | undefined;
13
+ };
14
+ /** Raised when the schema contains async refinements or transforms. Surfaces only under `compile(schema, { strict: true })`. */
15
+ export declare class ZodCompileAsyncError extends Error {
16
+ constructor(message?: string);
17
+ }
18
+ /**
19
+ * Raised when the schema contains a feature whose semantics the fast path
20
+ * can't fully model. Both the shim in `zod/compile` and the default
21
+ * `compile()` fall back to the runtime parser for that schema; only
22
+ * `compile(schema, { strict: true })` lets it surface.
23
+ */
24
+ export declare class ZodCompileUnsupportedError extends Error {
25
+ /** Whether a container may absorb this refusal by running the child through the runtime (see `compileChild`). False when running only that node on the runtime is not equivalent to running the whole parse there — a runtime island gets no parse context, so a node that *consumes* issues rather than propagating them would finalize them against the wrong error map and still succeed. */
26
+ readonly islandable: boolean;
27
+ constructor(feature: string, islandable?: boolean);
28
+ }
29
+ export interface CompileOptions {
30
+ /** Throw the refusal instead of returning the schema uncompiled. */
31
+ strict?: boolean | undefined;
32
+ }
33
+ /**
34
+ * AOT-compile a Zod schema. Returns a clone whose `_zod.run` calls a generated
35
+ * fast path first and falls back to the original runtime parser on failure.
36
+ *
37
+ * - Forward direction only. Backward (encode), async, and `skipChecks` paths
38
+ * bypass the fast path and use the runtime directly.
39
+ * - Never throws. A schema the fast path can't model is returned unchanged and
40
+ * keeps using the runtime parser. Pass `{ strict: true }` to get the refusal
41
+ * as a thrown `ZodCompileUnsupportedError` / `ZodCompileAsyncError` instead.
42
+ * - The original schema is unchanged. The clone shares children by reference.
43
+ */
44
+ export declare function compile<T extends SomeType>(schema: T, options?: CompileOptions): T;
45
+ /**
46
+ * Generate the standalone compiled function: a parser by default, a validator under
47
+ * `assertOnly`. Returns either the parsed value, `true` where nothing reads the output,
48
+ * or the `INVALID` sentinel. Internal — consumers should use `compile()`.
49
+ */
50
+ export declare function compileFn<T extends SomeType>(schema: T, options?: CompileFnOptions): CompiledFn<core.output<T>>;
51
+ export {};