orcaq 1.0.20

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 (1018) hide show
  1. package/.output/nitro.json +15 -0
  2. package/.output/public/_nuxt/8qASMGdV.js +1 -0
  3. package/.output/public/_nuxt/9lJACZIQ.js +19 -0
  4. package/.output/public/_nuxt/B2DnNiWd.js +1 -0
  5. package/.output/public/_nuxt/B6E6ObS_.js +8 -0
  6. package/.output/public/_nuxt/BH83_dXo.js +39 -0
  7. package/.output/public/_nuxt/BIKqrFbQ.js +1 -0
  8. package/.output/public/_nuxt/BNjPC06x.js +1 -0
  9. package/.output/public/_nuxt/BPQ-Pz1w.js +39 -0
  10. package/.output/public/_nuxt/BRpgKkVT.js +51 -0
  11. package/.output/public/_nuxt/BTCLPbPY.js +4 -0
  12. package/.output/public/_nuxt/BUV-RarV.js +1 -0
  13. package/.output/public/_nuxt/Bh6RgYlO.js +1 -0
  14. package/.output/public/_nuxt/Bq3cyzOD.js +1 -0
  15. package/.output/public/_nuxt/Bt9sU68B.js +9 -0
  16. package/.output/public/_nuxt/BwpH2ZxJ.js +1 -0
  17. package/.output/public/_nuxt/C25Tmn1m.js +1 -0
  18. package/.output/public/_nuxt/C2HlI1ss.js +1 -0
  19. package/.output/public/_nuxt/CU3ZV9iV.js +1 -0
  20. package/.output/public/_nuxt/CbcyysXi.js +1 -0
  21. package/.output/public/_nuxt/CepyvMhE.js +1 -0
  22. package/.output/public/_nuxt/CrgoNCm2.js +2 -0
  23. package/.output/public/_nuxt/CuBKbBH_.js +1 -0
  24. package/.output/public/_nuxt/CulD8qYQ.js +193 -0
  25. package/.output/public/_nuxt/CustomEdge.BNBpjEHb.css +1 -0
  26. package/.output/public/_nuxt/CylkLpwm.js +1 -0
  27. package/.output/public/_nuxt/D-bWLYHw.js +1 -0
  28. package/.output/public/_nuxt/D-zecHND.js +1 -0
  29. package/.output/public/_nuxt/D8vj6kFe.js +160 -0
  30. package/.output/public/_nuxt/DIETYtCL.js +1 -0
  31. package/.output/public/_nuxt/DJ4vUzxS.js +1 -0
  32. package/.output/public/_nuxt/DK-itzXx.js +8 -0
  33. package/.output/public/_nuxt/DL3T5jYo.js +3867 -0
  34. package/.output/public/_nuxt/DUsuhY9i.js +1 -0
  35. package/.output/public/_nuxt/DXV2HFBA.js +224 -0
  36. package/.output/public/_nuxt/Dh2zppOR.js +1 -0
  37. package/.output/public/_nuxt/DlAUqK2U.js +1 -0
  38. package/.output/public/_nuxt/DlmSeCnw.js +5 -0
  39. package/.output/public/_nuxt/DswTpYG4.js +1 -0
  40. package/.output/public/_nuxt/DynamicTable.DJeANwbG.css +1 -0
  41. package/.output/public/_nuxt/G830WtVn.js +1 -0
  42. package/.output/public/_nuxt/ICwM1E4-.js +15 -0
  43. package/.output/public/_nuxt/QZbJy9YW.js +31 -0
  44. package/.output/public/_nuxt/QuickQueryTable.DS_ON57S.css +1 -0
  45. package/.output/public/_nuxt/UXhX8z2W.js +1 -0
  46. package/.output/public/_nuxt/WrapperErdDiagram.DwhUd9Wr.css +1 -0
  47. package/.output/public/_nuxt/_fileId_.DmPfwyyD.css +1 -0
  48. package/.output/public/_nuxt/_tabViewId_.9Axt3zoi.css +1 -0
  49. package/.output/public/_nuxt/builds/latest.json +1 -0
  50. package/.output/public/_nuxt/builds/meta/6364d5cf-4642-479f-ba12-6440c56702af.json +1 -0
  51. package/.output/public/_nuxt/default.DixIpIal.css +1 -0
  52. package/.output/public/_nuxt/entry.GqPNPe1e.css +1 -0
  53. package/.output/public/_nuxt/index.CrXmf4gr.css +1 -0
  54. package/.output/public/_nuxt/ivUnXl9B.js +1 -0
  55. package/.output/public/_nuxt/pAheHeBV.js +36 -0
  56. package/.output/public/_nuxt/s5fCn4j5.js +1 -0
  57. package/.output/public/favicon.ico +0 -0
  58. package/.output/public/logo.png +0 -0
  59. package/.output/public/manifest.json +25 -0
  60. package/.output/public/robots.txt +1 -0
  61. package/.output/public/vite.svg +1 -0
  62. package/.output/server/chunks/_/error-500.mjs +8 -0
  63. package/.output/server/chunks/_/error-500.mjs.map +1 -0
  64. package/.output/server/chunks/build/client.manifest.mjs +773 -0
  65. package/.output/server/chunks/build/client.manifest.mjs.map +1 -0
  66. package/.output/server/chunks/nitro/nitro.mjs +6432 -0
  67. package/.output/server/chunks/nitro/nitro.mjs.map +1 -0
  68. package/.output/server/chunks/routes/api/ai/chat.mjs +77 -0
  69. package/.output/server/chunks/routes/api/ai/chat.mjs.map +1 -0
  70. package/.output/server/chunks/routes/api/execute-bulk-delete.mjs +100 -0
  71. package/.output/server/chunks/routes/api/execute-bulk-delete.mjs.map +1 -0
  72. package/.output/server/chunks/routes/api/execute-bulk-update.mjs +105 -0
  73. package/.output/server/chunks/routes/api/execute-bulk-update.mjs.map +1 -0
  74. package/.output/server/chunks/routes/api/execute.mjs +47 -0
  75. package/.output/server/chunks/routes/api/execute.mjs.map +1 -0
  76. package/.output/server/chunks/routes/api/get-one-function.mjs +28 -0
  77. package/.output/server/chunks/routes/api/get-one-function.mjs.map +1 -0
  78. package/.output/server/chunks/routes/api/get-one-table.mjs +180 -0
  79. package/.output/server/chunks/routes/api/get-one-table.mjs.map +1 -0
  80. package/.output/server/chunks/routes/api/get-over-view-function.mjs +41 -0
  81. package/.output/server/chunks/routes/api/get-over-view-function.mjs.map +1 -0
  82. package/.output/server/chunks/routes/api/get-over-view-tables.mjs +53 -0
  83. package/.output/server/chunks/routes/api/get-over-view-tables.mjs.map +1 -0
  84. package/.output/server/chunks/routes/api/get-reverse-table-schemas.mjs +112 -0
  85. package/.output/server/chunks/routes/api/get-reverse-table-schemas.mjs.map +1 -0
  86. package/.output/server/chunks/routes/api/get-schema-meta-data.mjs +152 -0
  87. package/.output/server/chunks/routes/api/get-schema-meta-data.mjs.map +1 -0
  88. package/.output/server/chunks/routes/api/get-table-size.mjs +49 -0
  89. package/.output/server/chunks/routes/api/get-table-size.mjs.map +1 -0
  90. package/.output/server/chunks/routes/api/get-table-structure.mjs +111 -0
  91. package/.output/server/chunks/routes/api/get-table-structure.mjs.map +1 -0
  92. package/.output/server/chunks/routes/api/get-tables.mjs +287 -0
  93. package/.output/server/chunks/routes/api/get-tables.mjs.map +1 -0
  94. package/.output/server/chunks/routes/api/getMetricMonitor.mjs +46 -0
  95. package/.output/server/chunks/routes/api/getMetricMonitor.mjs.map +1 -0
  96. package/.output/server/chunks/routes/api/managment-connection/health-check.mjs +28 -0
  97. package/.output/server/chunks/routes/api/managment-connection/health-check.mjs.map +1 -0
  98. package/.output/server/chunks/routes/api/raw-execute.mjs +48 -0
  99. package/.output/server/chunks/routes/api/raw-execute.mjs.map +1 -0
  100. package/.output/server/chunks/routes/renderer.mjs +316 -0
  101. package/.output/server/chunks/routes/renderer.mjs.map +1 -0
  102. package/.output/server/chunks/virtual/_virtual_spa-template.mjs +4 -0
  103. package/.output/server/chunks/virtual/_virtual_spa-template.mjs.map +1 -0
  104. package/.output/server/index.mjs +14 -0
  105. package/.output/server/index.mjs.map +1 -0
  106. package/.output/server/node_modules/@ai-sdk/anthropic/dist/index.mjs +4374 -0
  107. package/.output/server/node_modules/@ai-sdk/anthropic/package.json +74 -0
  108. package/.output/server/node_modules/@ai-sdk/gateway/dist/index.mjs +1082 -0
  109. package/.output/server/node_modules/@ai-sdk/gateway/package.json +69 -0
  110. package/.output/server/node_modules/@ai-sdk/google/dist/index.mjs +2007 -0
  111. package/.output/server/node_modules/@ai-sdk/google/package.json +74 -0
  112. package/.output/server/node_modules/@ai-sdk/openai/dist/index.mjs +5956 -0
  113. package/.output/server/node_modules/@ai-sdk/openai/package.json +74 -0
  114. package/.output/server/node_modules/@ai-sdk/openai-compatible/dist/index.mjs +1551 -0
  115. package/.output/server/node_modules/@ai-sdk/openai-compatible/package.json +74 -0
  116. package/.output/server/node_modules/@ai-sdk/provider/dist/index.mjs +377 -0
  117. package/.output/server/node_modules/@ai-sdk/provider/package.json +57 -0
  118. package/.output/server/node_modules/@ai-sdk/provider-utils/dist/index.mjs +2549 -0
  119. package/.output/server/node_modules/@ai-sdk/provider-utils/package.json +75 -0
  120. package/.output/server/node_modules/@ai-sdk/xai/dist/index.mjs +2214 -0
  121. package/.output/server/node_modules/@ai-sdk/xai/package.json +68 -0
  122. package/.output/server/node_modules/@babel/parser/lib/index.js +14246 -0
  123. package/.output/server/node_modules/@babel/parser/package.json +50 -0
  124. package/.output/server/node_modules/@iconify/utils/lib/colors/index.mjs +350 -0
  125. package/.output/server/node_modules/@iconify/utils/lib/colors/keywords.mjs +188 -0
  126. package/.output/server/node_modules/@iconify/utils/lib/css/common.mjs +90 -0
  127. package/.output/server/node_modules/@iconify/utils/lib/css/format.mjs +38 -0
  128. package/.output/server/node_modules/@iconify/utils/lib/css/icon.mjs +76 -0
  129. package/.output/server/node_modules/@iconify/utils/lib/css/icons.mjs +168 -0
  130. package/.output/server/node_modules/@iconify/utils/lib/customisations/bool.mjs +22 -0
  131. package/.output/server/node_modules/@iconify/utils/lib/customisations/defaults.mjs +14 -0
  132. package/.output/server/node_modules/@iconify/utils/lib/customisations/flip.mjs +16 -0
  133. package/.output/server/node_modules/@iconify/utils/lib/customisations/merge.mjs +22 -0
  134. package/.output/server/node_modules/@iconify/utils/lib/customisations/rotate.mjs +33 -0
  135. package/.output/server/node_modules/@iconify/utils/lib/emoji/cleanup.mjs +51 -0
  136. package/.output/server/node_modules/@iconify/utils/lib/emoji/convert.mjs +84 -0
  137. package/.output/server/node_modules/@iconify/utils/lib/emoji/data.mjs +16 -0
  138. package/.output/server/node_modules/@iconify/utils/lib/emoji/format.mjs +44 -0
  139. package/.output/server/node_modules/@iconify/utils/lib/emoji/parse.mjs +58 -0
  140. package/.output/server/node_modules/@iconify/utils/lib/emoji/regex/base.mjs +231 -0
  141. package/.output/server/node_modules/@iconify/utils/lib/emoji/regex/create.mjs +31 -0
  142. package/.output/server/node_modules/@iconify/utils/lib/emoji/regex/numbers.mjs +164 -0
  143. package/.output/server/node_modules/@iconify/utils/lib/emoji/regex/similar.mjs +216 -0
  144. package/.output/server/node_modules/@iconify/utils/lib/emoji/regex/tree.mjs +113 -0
  145. package/.output/server/node_modules/@iconify/utils/lib/emoji/replace/find.mjs +104 -0
  146. package/.output/server/node_modules/@iconify/utils/lib/emoji/replace/replace.mjs +34 -0
  147. package/.output/server/node_modules/@iconify/utils/lib/emoji/test/components.mjs +75 -0
  148. package/.output/server/node_modules/@iconify/utils/lib/emoji/test/missing.mjs +97 -0
  149. package/.output/server/node_modules/@iconify/utils/lib/emoji/test/name.mjs +54 -0
  150. package/.output/server/node_modules/@iconify/utils/lib/emoji/test/parse.mjs +97 -0
  151. package/.output/server/node_modules/@iconify/utils/lib/emoji/test/similar.mjs +45 -0
  152. package/.output/server/node_modules/@iconify/utils/lib/emoji/test/tree.mjs +105 -0
  153. package/.output/server/node_modules/@iconify/utils/lib/emoji/test/variations.mjs +54 -0
  154. package/.output/server/node_modules/@iconify/utils/lib/icon/defaults.mjs +24 -0
  155. package/.output/server/node_modules/@iconify/utils/lib/icon/merge.mjs +20 -0
  156. package/.output/server/node_modules/@iconify/utils/lib/icon/name.mjs +53 -0
  157. package/.output/server/node_modules/@iconify/utils/lib/icon/square.mjs +23 -0
  158. package/.output/server/node_modules/@iconify/utils/lib/icon/transformations.mjs +16 -0
  159. package/.output/server/node_modules/@iconify/utils/lib/icon-set/convert-info.mjs +182 -0
  160. package/.output/server/node_modules/@iconify/utils/lib/icon-set/expand.mjs +22 -0
  161. package/.output/server/node_modules/@iconify/utils/lib/icon-set/get-icon.mjs +28 -0
  162. package/.output/server/node_modules/@iconify/utils/lib/icon-set/get-icons.mjs +46 -0
  163. package/.output/server/node_modules/@iconify/utils/lib/icon-set/minify.mjs +66 -0
  164. package/.output/server/node_modules/@iconify/utils/lib/icon-set/parse.mjs +51 -0
  165. package/.output/server/node_modules/@iconify/utils/lib/icon-set/tree.mjs +23 -0
  166. package/.output/server/node_modules/@iconify/utils/lib/icon-set/validate-basic.mjs +62 -0
  167. package/.output/server/node_modules/@iconify/utils/lib/icon-set/validate.mjs +161 -0
  168. package/.output/server/node_modules/@iconify/utils/lib/index.mjs +64 -0
  169. package/.output/server/node_modules/@iconify/utils/lib/loader/custom.mjs +50 -0
  170. package/.output/server/node_modules/@iconify/utils/lib/loader/loader.mjs +59 -0
  171. package/.output/server/node_modules/@iconify/utils/lib/loader/modern.mjs +80 -0
  172. package/.output/server/node_modules/@iconify/utils/lib/loader/utils.mjs +92 -0
  173. package/.output/server/node_modules/@iconify/utils/lib/misc/objects.mjs +30 -0
  174. package/.output/server/node_modules/@iconify/utils/lib/misc/strings.mjs +17 -0
  175. package/.output/server/node_modules/@iconify/utils/lib/misc/title.mjs +5 -0
  176. package/.output/server/node_modules/@iconify/utils/lib/svg/build.mjs +119 -0
  177. package/.output/server/node_modules/@iconify/utils/lib/svg/defs.mjs +30 -0
  178. package/.output/server/node_modules/@iconify/utils/lib/svg/encode-svg-for-css.mjs +20 -0
  179. package/.output/server/node_modules/@iconify/utils/lib/svg/html.mjs +9 -0
  180. package/.output/server/node_modules/@iconify/utils/lib/svg/id.mjs +28 -0
  181. package/.output/server/node_modules/@iconify/utils/lib/svg/inner-html.mjs +19 -0
  182. package/.output/server/node_modules/@iconify/utils/lib/svg/parse.mjs +83 -0
  183. package/.output/server/node_modules/@iconify/utils/lib/svg/pretty.mjs +70 -0
  184. package/.output/server/node_modules/@iconify/utils/lib/svg/size.mjs +40 -0
  185. package/.output/server/node_modules/@iconify/utils/lib/svg/trim.mjs +5 -0
  186. package/.output/server/node_modules/@iconify/utils/lib/svg/url.mjs +11 -0
  187. package/.output/server/node_modules/@iconify/utils/lib/svg/viewbox.mjs +8 -0
  188. package/.output/server/node_modules/@iconify/utils/package.json +447 -0
  189. package/.output/server/node_modules/@ioredis/commands/built/commands.json +2447 -0
  190. package/.output/server/node_modules/@ioredis/commands/built/index.js +208 -0
  191. package/.output/server/node_modules/@ioredis/commands/package.json +52 -0
  192. package/.output/server/node_modules/@opentelemetry/api/build/src/api/context.js +81 -0
  193. package/.output/server/node_modules/@opentelemetry/api/build/src/api/diag.js +93 -0
  194. package/.output/server/node_modules/@opentelemetry/api/build/src/api/metrics.js +61 -0
  195. package/.output/server/node_modules/@opentelemetry/api/build/src/api/propagation.js +89 -0
  196. package/.output/server/node_modules/@opentelemetry/api/build/src/api/trace.js +79 -0
  197. package/.output/server/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js +63 -0
  198. package/.output/server/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js +55 -0
  199. package/.output/server/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js +23 -0
  200. package/.output/server/node_modules/@opentelemetry/api/build/src/baggage/utils.js +51 -0
  201. package/.output/server/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js +38 -0
  202. package/.output/server/node_modules/@opentelemetry/api/build/src/context/context.js +55 -0
  203. package/.output/server/node_modules/@opentelemetry/api/build/src/context-api.js +24 -0
  204. package/.output/server/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js +59 -0
  205. package/.output/server/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js +57 -0
  206. package/.output/server/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js +45 -0
  207. package/.output/server/node_modules/@opentelemetry/api/build/src/diag/types.js +44 -0
  208. package/.output/server/node_modules/@opentelemetry/api/build/src/diag-api.js +29 -0
  209. package/.output/server/node_modules/@opentelemetry/api/build/src/index.js +81 -0
  210. package/.output/server/node_modules/@opentelemetry/api/build/src/internal/global-utils.js +64 -0
  211. package/.output/server/node_modules/@opentelemetry/api/build/src/internal/semver.js +122 -0
  212. package/.output/server/node_modules/@opentelemetry/api/build/src/metrics/Metric.js +25 -0
  213. package/.output/server/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js +127 -0
  214. package/.output/server/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js +31 -0
  215. package/.output/server/node_modules/@opentelemetry/api/build/src/metrics-api.js +24 -0
  216. package/.output/server/node_modules/@opentelemetry/api/build/src/platform/index.js +29 -0
  217. package/.output/server/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js +22 -0
  218. package/.output/server/node_modules/@opentelemetry/api/build/src/platform/node/index.js +29 -0
  219. package/.output/server/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js +34 -0
  220. package/.output/server/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js +41 -0
  221. package/.output/server/node_modules/@opentelemetry/api/build/src/propagation-api.js +24 -0
  222. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js +69 -0
  223. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js +75 -0
  224. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js +32 -0
  225. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js +55 -0
  226. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js +54 -0
  227. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js +42 -0
  228. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/context-utils.js +82 -0
  229. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js +103 -0
  230. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js +46 -0
  231. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/internal/utils.js +24 -0
  232. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js +27 -0
  233. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/span_kind.js +46 -0
  234. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js +49 -0
  235. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/status.js +23 -0
  236. package/.output/server/node_modules/@opentelemetry/api/build/src/trace/trace_flags.js +26 -0
  237. package/.output/server/node_modules/@opentelemetry/api/build/src/trace-api.js +24 -0
  238. package/.output/server/node_modules/@opentelemetry/api/build/src/version.js +21 -0
  239. package/.output/server/node_modules/@opentelemetry/api/package.json +113 -0
  240. package/.output/server/node_modules/@sqltools/formatter/lib/core/Formatter.js +234 -0
  241. package/.output/server/node_modules/@sqltools/formatter/lib/core/Indentation.js +42 -0
  242. package/.output/server/node_modules/@sqltools/formatter/lib/core/InlineBlock.js +60 -0
  243. package/.output/server/node_modules/@sqltools/formatter/lib/core/Params.js +21 -0
  244. package/.output/server/node_modules/@sqltools/formatter/lib/core/Tokenizer.js +272 -0
  245. package/.output/server/node_modules/@sqltools/formatter/lib/core/escapeRegExp.js +10 -0
  246. package/.output/server/node_modules/@sqltools/formatter/lib/core/last.js +7 -0
  247. package/.output/server/node_modules/@sqltools/formatter/lib/core/types.js +22 -0
  248. package/.output/server/node_modules/@sqltools/formatter/lib/languages/Db2Formatter.js +585 -0
  249. package/.output/server/node_modules/@sqltools/formatter/lib/languages/N1qlFormatter.js +257 -0
  250. package/.output/server/node_modules/@sqltools/formatter/lib/languages/PlSqlFormatter.js +459 -0
  251. package/.output/server/node_modules/@sqltools/formatter/lib/languages/StandardSqlFormatter.js +369 -0
  252. package/.output/server/node_modules/@sqltools/formatter/lib/languages/utils/abstract.js +23 -0
  253. package/.output/server/node_modules/@sqltools/formatter/lib/sqlFormatter.js +34 -0
  254. package/.output/server/node_modules/@sqltools/formatter/package.json +59 -0
  255. package/.output/server/node_modules/@standard-schema/spec/dist/index.js +0 -0
  256. package/.output/server/node_modules/@standard-schema/spec/package.json +52 -0
  257. package/.output/server/node_modules/@vercel/oidc/dist/auth-config.js +84 -0
  258. package/.output/server/node_modules/@vercel/oidc/dist/get-context.js +34 -0
  259. package/.output/server/node_modules/@vercel/oidc/dist/get-vercel-oidc-token.js +80 -0
  260. package/.output/server/node_modules/@vercel/oidc/dist/index.js +33 -0
  261. package/.output/server/node_modules/@vercel/oidc/dist/oauth.js +88 -0
  262. package/.output/server/node_modules/@vercel/oidc/dist/token-error.js +40 -0
  263. package/.output/server/node_modules/@vercel/oidc/dist/token-io.js +78 -0
  264. package/.output/server/node_modules/@vercel/oidc/dist/token-util.js +198 -0
  265. package/.output/server/node_modules/@vercel/oidc/dist/token.js +53 -0
  266. package/.output/server/node_modules/@vercel/oidc/package.json +52 -0
  267. package/.output/server/node_modules/@vue/compiler-core/dist/compiler-core.cjs.prod.js +6690 -0
  268. package/.output/server/node_modules/@vue/compiler-core/package.json +58 -0
  269. package/.output/server/node_modules/@vue/compiler-dom/dist/compiler-dom.cjs.prod.js +686 -0
  270. package/.output/server/node_modules/@vue/compiler-dom/package.json +57 -0
  271. package/.output/server/node_modules/@vue/compiler-ssr/dist/compiler-ssr.cjs.js +1404 -0
  272. package/.output/server/node_modules/@vue/compiler-ssr/package.json +34 -0
  273. package/.output/server/node_modules/@vue/reactivity/dist/reactivity.cjs.prod.js +1789 -0
  274. package/.output/server/node_modules/@vue/reactivity/package.json +55 -0
  275. package/.output/server/node_modules/@vue/runtime-core/dist/runtime-core.cjs.prod.js +6654 -0
  276. package/.output/server/node_modules/@vue/runtime-core/package.json +52 -0
  277. package/.output/server/node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.prod.js +1669 -0
  278. package/.output/server/node_modules/@vue/runtime-dom/package.json +60 -0
  279. package/.output/server/node_modules/@vue/server-renderer/dist/server-renderer.cjs.prod.js +857 -0
  280. package/.output/server/node_modules/@vue/server-renderer/package.json +55 -0
  281. package/.output/server/node_modules/@vue/shared/dist/shared.cjs.prod.js +594 -0
  282. package/.output/server/node_modules/@vue/shared/package.json +47 -0
  283. package/.output/server/node_modules/ai/dist/index.mjs +12363 -0
  284. package/.output/server/node_modules/ai/package.json +106 -0
  285. package/.output/server/node_modules/ansis/index.js +1 -0
  286. package/.output/server/node_modules/ansis/package.json +28 -0
  287. package/.output/server/node_modules/app-root-path/index.js +4 -0
  288. package/.output/server/node_modules/app-root-path/lib/app-root-path.js +30 -0
  289. package/.output/server/node_modules/app-root-path/lib/resolve.js +128 -0
  290. package/.output/server/node_modules/app-root-path/package.json +66 -0
  291. package/.output/server/node_modules/balanced-match/index.js +62 -0
  292. package/.output/server/node_modules/balanced-match/package.json +48 -0
  293. package/.output/server/node_modules/bindings/bindings.js +221 -0
  294. package/.output/server/node_modules/bindings/package.json +28 -0
  295. package/.output/server/node_modules/brace-expansion/index.js +203 -0
  296. package/.output/server/node_modules/brace-expansion/package.json +46 -0
  297. package/.output/server/node_modules/cluster-key-slot/lib/index.js +166 -0
  298. package/.output/server/node_modules/cluster-key-slot/package.json +56 -0
  299. package/.output/server/node_modules/consola/dist/chunks/prompt.mjs +280 -0
  300. package/.output/server/node_modules/consola/dist/core.mjs +512 -0
  301. package/.output/server/node_modules/consola/dist/index.mjs +651 -0
  302. package/.output/server/node_modules/consola/dist/shared/consola.DRwqZj3T.mjs +72 -0
  303. package/.output/server/node_modules/consola/dist/shared/consola.DXBYu-KD.mjs +288 -0
  304. package/.output/server/node_modules/consola/package.json +136 -0
  305. package/.output/server/node_modules/dayjs/dayjs.min.js +1 -0
  306. package/.output/server/node_modules/dayjs/package.json +84 -0
  307. package/.output/server/node_modules/debug/package.json +65 -0
  308. package/.output/server/node_modules/debug/src/browser.js +272 -0
  309. package/.output/server/node_modules/debug/src/common.js +292 -0
  310. package/.output/server/node_modules/debug/src/index.js +10 -0
  311. package/.output/server/node_modules/debug/src/node.js +263 -0
  312. package/.output/server/node_modules/dedent/dist/dedent.js +73 -0
  313. package/.output/server/node_modules/dedent/package.json +119 -0
  314. package/.output/server/node_modules/denque/index.js +481 -0
  315. package/.output/server/node_modules/denque/package.json +58 -0
  316. package/.output/server/node_modules/devalue/index.js +3 -0
  317. package/.output/server/node_modules/devalue/package.json +34 -0
  318. package/.output/server/node_modules/devalue/src/base64.js +110 -0
  319. package/.output/server/node_modules/devalue/src/constants.js +6 -0
  320. package/.output/server/node_modules/devalue/src/parse.js +160 -0
  321. package/.output/server/node_modules/devalue/src/stringify.js +232 -0
  322. package/.output/server/node_modules/devalue/src/uneval.js +351 -0
  323. package/.output/server/node_modules/devalue/src/utils.js +113 -0
  324. package/.output/server/node_modules/dotenv/lib/main.js +361 -0
  325. package/.output/server/node_modules/dotenv/package.json +61 -0
  326. package/.output/server/node_modules/entities/lib/decode.js +536 -0
  327. package/.output/server/node_modules/entities/lib/decode_codepoint.js +76 -0
  328. package/.output/server/node_modules/entities/lib/generated/decode-data-html.js +9 -0
  329. package/.output/server/node_modules/entities/lib/generated/decode-data-xml.js +9 -0
  330. package/.output/server/node_modules/entities/package.json +90 -0
  331. package/.output/server/node_modules/estree-walker/dist/umd/estree-walker.js +344 -0
  332. package/.output/server/node_modules/estree-walker/package.json +37 -0
  333. package/.output/server/node_modules/eventsource-parser/dist/index.js +106 -0
  334. package/.output/server/node_modules/eventsource-parser/dist/stream.js +29 -0
  335. package/.output/server/node_modules/eventsource-parser/package.json +115 -0
  336. package/.output/server/node_modules/file-uri-to-path/index.js +66 -0
  337. package/.output/server/node_modules/file-uri-to-path/package.json +32 -0
  338. package/.output/server/node_modules/glob/dist/commonjs/glob.js +247 -0
  339. package/.output/server/node_modules/glob/dist/commonjs/has-magic.js +27 -0
  340. package/.output/server/node_modules/glob/dist/commonjs/ignore.js +119 -0
  341. package/.output/server/node_modules/glob/dist/commonjs/index.js +68 -0
  342. package/.output/server/node_modules/glob/dist/commonjs/package.json +3 -0
  343. package/.output/server/node_modules/glob/dist/commonjs/pattern.js +219 -0
  344. package/.output/server/node_modules/glob/dist/commonjs/processor.js +301 -0
  345. package/.output/server/node_modules/glob/dist/commonjs/walker.js +387 -0
  346. package/.output/server/node_modules/glob/package.json +99 -0
  347. package/.output/server/node_modules/has-flag/index.js +8 -0
  348. package/.output/server/node_modules/has-flag/package.json +46 -0
  349. package/.output/server/node_modules/hookable/dist/index.mjs +290 -0
  350. package/.output/server/node_modules/hookable/package.json +49 -0
  351. package/.output/server/node_modules/inherits/inherits.js +9 -0
  352. package/.output/server/node_modules/inherits/inherits_browser.js +27 -0
  353. package/.output/server/node_modules/inherits/package.json +29 -0
  354. package/.output/server/node_modules/ioredis/built/Command.js +349 -0
  355. package/.output/server/node_modules/ioredis/built/DataHandler.js +220 -0
  356. package/.output/server/node_modules/ioredis/built/Pipeline.js +334 -0
  357. package/.output/server/node_modules/ioredis/built/Redis.js +697 -0
  358. package/.output/server/node_modules/ioredis/built/ScanStream.js +51 -0
  359. package/.output/server/node_modules/ioredis/built/Script.js +62 -0
  360. package/.output/server/node_modules/ioredis/built/SubscriptionSet.js +41 -0
  361. package/.output/server/node_modules/ioredis/built/autoPipelining.js +159 -0
  362. package/.output/server/node_modules/ioredis/built/cluster/ClusterOptions.js +22 -0
  363. package/.output/server/node_modules/ioredis/built/cluster/ClusterSubscriber.js +202 -0
  364. package/.output/server/node_modules/ioredis/built/cluster/ClusterSubscriberGroup.js +224 -0
  365. package/.output/server/node_modules/ioredis/built/cluster/ConnectionPool.js +154 -0
  366. package/.output/server/node_modules/ioredis/built/cluster/DelayQueue.js +53 -0
  367. package/.output/server/node_modules/ioredis/built/cluster/index.js +862 -0
  368. package/.output/server/node_modules/ioredis/built/cluster/util.js +100 -0
  369. package/.output/server/node_modules/ioredis/built/connectors/AbstractConnector.js +26 -0
  370. package/.output/server/node_modules/ioredis/built/connectors/SentinelConnector/FailoverDetector.js +45 -0
  371. package/.output/server/node_modules/ioredis/built/connectors/SentinelConnector/SentinelIterator.js +37 -0
  372. package/.output/server/node_modules/ioredis/built/connectors/SentinelConnector/index.js +305 -0
  373. package/.output/server/node_modules/ioredis/built/connectors/StandaloneConnector.js +69 -0
  374. package/.output/server/node_modules/ioredis/built/connectors/index.js +7 -0
  375. package/.output/server/node_modules/ioredis/built/constants/TLSProfiles.js +149 -0
  376. package/.output/server/node_modules/ioredis/built/errors/ClusterAllFailedError.js +15 -0
  377. package/.output/server/node_modules/ioredis/built/errors/MaxRetriesPerRequestError.js +14 -0
  378. package/.output/server/node_modules/ioredis/built/errors/index.js +5 -0
  379. package/.output/server/node_modules/ioredis/built/index.js +62 -0
  380. package/.output/server/node_modules/ioredis/built/redis/RedisOptions.js +55 -0
  381. package/.output/server/node_modules/ioredis/built/redis/event_handler.js +292 -0
  382. package/.output/server/node_modules/ioredis/built/transaction.js +93 -0
  383. package/.output/server/node_modules/ioredis/built/utils/Commander.js +117 -0
  384. package/.output/server/node_modules/ioredis/built/utils/applyMixin.js +8 -0
  385. package/.output/server/node_modules/ioredis/built/utils/debug.js +95 -0
  386. package/.output/server/node_modules/ioredis/built/utils/index.js +297 -0
  387. package/.output/server/node_modules/ioredis/built/utils/lodash.js +9 -0
  388. package/.output/server/node_modules/ioredis/package.json +100 -0
  389. package/.output/server/node_modules/lodash.defaults/index.js +668 -0
  390. package/.output/server/node_modules/lodash.defaults/package.json +19 -0
  391. package/.output/server/node_modules/lodash.isarguments/index.js +229 -0
  392. package/.output/server/node_modules/lodash.isarguments/package.json +19 -0
  393. package/.output/server/node_modules/lru-cache/dist/commonjs/index.js +1546 -0
  394. package/.output/server/node_modules/lru-cache/dist/commonjs/package.json +3 -0
  395. package/.output/server/node_modules/lru-cache/package.json +116 -0
  396. package/.output/server/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js +14 -0
  397. package/.output/server/node_modules/minimatch/dist/commonjs/ast.js +592 -0
  398. package/.output/server/node_modules/minimatch/dist/commonjs/brace-expressions.js +152 -0
  399. package/.output/server/node_modules/minimatch/dist/commonjs/escape.js +22 -0
  400. package/.output/server/node_modules/minimatch/dist/commonjs/index.js +1017 -0
  401. package/.output/server/node_modules/minimatch/dist/commonjs/package.json +3 -0
  402. package/.output/server/node_modules/minimatch/dist/commonjs/unescape.js +24 -0
  403. package/.output/server/node_modules/minimatch/package.json +82 -0
  404. package/.output/server/node_modules/minipass/dist/commonjs/index.js +1028 -0
  405. package/.output/server/node_modules/minipass/dist/commonjs/package.json +3 -0
  406. package/.output/server/node_modules/minipass/package.json +82 -0
  407. package/.output/server/node_modules/ms/index.js +162 -0
  408. package/.output/server/node_modules/ms/package.json +38 -0
  409. package/.output/server/node_modules/path-scurry/dist/commonjs/index.js +2014 -0
  410. package/.output/server/node_modules/path-scurry/dist/commonjs/package.json +3 -0
  411. package/.output/server/node_modules/path-scurry/package.json +89 -0
  412. package/.output/server/node_modules/pg/lib/client.js +650 -0
  413. package/.output/server/node_modules/pg/lib/connection-parameters.js +167 -0
  414. package/.output/server/node_modules/pg/lib/connection.js +222 -0
  415. package/.output/server/node_modules/pg/lib/crypto/cert-signatures.js +121 -0
  416. package/.output/server/node_modules/pg/lib/crypto/sasl.js +212 -0
  417. package/.output/server/node_modules/pg/lib/crypto/utils-legacy.js +43 -0
  418. package/.output/server/node_modules/pg/lib/crypto/utils-webcrypto.js +88 -0
  419. package/.output/server/node_modules/pg/lib/crypto/utils.js +9 -0
  420. package/.output/server/node_modules/pg/lib/defaults.js +84 -0
  421. package/.output/server/node_modules/pg/lib/index.js +58 -0
  422. package/.output/server/node_modules/pg/lib/native/client.js +307 -0
  423. package/.output/server/node_modules/pg/lib/native/index.js +2 -0
  424. package/.output/server/node_modules/pg/lib/native/query.js +168 -0
  425. package/.output/server/node_modules/pg/lib/query.js +253 -0
  426. package/.output/server/node_modules/pg/lib/result.js +108 -0
  427. package/.output/server/node_modules/pg/lib/stream.js +81 -0
  428. package/.output/server/node_modules/pg/lib/type-overrides.js +35 -0
  429. package/.output/server/node_modules/pg/lib/utils.js +206 -0
  430. package/.output/server/node_modules/pg/package.json +62 -0
  431. package/.output/server/node_modules/pg-cloudflare/dist/empty.js +4 -0
  432. package/.output/server/node_modules/pg-cloudflare/package.json +32 -0
  433. package/.output/server/node_modules/pg-connection-string/index.js +112 -0
  434. package/.output/server/node_modules/pg-connection-string/package.json +40 -0
  435. package/.output/server/node_modules/pg-cursor/index.js +265 -0
  436. package/.output/server/node_modules/pg-cursor/package.json +38 -0
  437. package/.output/server/node_modules/pg-int8/index.js +100 -0
  438. package/.output/server/node_modules/pg-int8/package.json +24 -0
  439. package/.output/server/node_modules/pg-pool/index.js +471 -0
  440. package/.output/server/node_modules/pg-pool/package.json +41 -0
  441. package/.output/server/node_modules/pg-protocol/dist/buffer-reader.js +55 -0
  442. package/.output/server/node_modules/pg-protocol/dist/buffer-writer.js +81 -0
  443. package/.output/server/node_modules/pg-protocol/dist/index.js +15 -0
  444. package/.output/server/node_modules/pg-protocol/dist/messages.js +160 -0
  445. package/.output/server/node_modules/pg-protocol/dist/parser.js +304 -0
  446. package/.output/server/node_modules/pg-protocol/dist/serializer.js +189 -0
  447. package/.output/server/node_modules/pg-protocol/package.json +35 -0
  448. package/.output/server/node_modules/pg-query-stream/dist/index.js +48 -0
  449. package/.output/server/node_modules/pg-query-stream/package.json +60 -0
  450. package/.output/server/node_modules/pg-types/index.js +47 -0
  451. package/.output/server/node_modules/pg-types/lib/arrayParser.js +11 -0
  452. package/.output/server/node_modules/pg-types/lib/binaryParsers.js +257 -0
  453. package/.output/server/node_modules/pg-types/lib/builtins.js +73 -0
  454. package/.output/server/node_modules/pg-types/lib/textParsers.js +215 -0
  455. package/.output/server/node_modules/pg-types/package.json +42 -0
  456. package/.output/server/node_modules/pgpass/lib/helper.js +233 -0
  457. package/.output/server/node_modules/pgpass/lib/index.js +23 -0
  458. package/.output/server/node_modules/pgpass/package.json +41 -0
  459. package/.output/server/node_modules/postgres-array/index.js +97 -0
  460. package/.output/server/node_modules/postgres-array/package.json +35 -0
  461. package/.output/server/node_modules/postgres-bytea/index.js +31 -0
  462. package/.output/server/node_modules/postgres-bytea/package.json +34 -0
  463. package/.output/server/node_modules/postgres-date/index.js +116 -0
  464. package/.output/server/node_modules/postgres-date/package.json +33 -0
  465. package/.output/server/node_modules/postgres-interval/index.js +125 -0
  466. package/.output/server/node_modules/postgres-interval/package.json +36 -0
  467. package/.output/server/node_modules/redis-errors/index.js +7 -0
  468. package/.output/server/node_modules/redis-errors/lib/modern.js +59 -0
  469. package/.output/server/node_modules/redis-errors/lib/old.js +119 -0
  470. package/.output/server/node_modules/redis-errors/package.json +41 -0
  471. package/.output/server/node_modules/redis-parser/index.js +3 -0
  472. package/.output/server/node_modules/redis-parser/lib/parser.js +552 -0
  473. package/.output/server/node_modules/redis-parser/package.json +53 -0
  474. package/.output/server/node_modules/reflect-metadata/Reflect.js +1415 -0
  475. package/.output/server/node_modules/reflect-metadata/package.json +68 -0
  476. package/.output/server/node_modules/safe-buffer/index.js +65 -0
  477. package/.output/server/node_modules/safe-buffer/package.json +51 -0
  478. package/.output/server/node_modules/sha.js/hash.js +81 -0
  479. package/.output/server/node_modules/sha.js/index.js +15 -0
  480. package/.output/server/node_modules/sha.js/package.json +30 -0
  481. package/.output/server/node_modules/sha.js/sha.js +94 -0
  482. package/.output/server/node_modules/sha.js/sha1.js +99 -0
  483. package/.output/server/node_modules/sha.js/sha224.js +53 -0
  484. package/.output/server/node_modules/sha.js/sha256.js +135 -0
  485. package/.output/server/node_modules/sha.js/sha384.js +57 -0
  486. package/.output/server/node_modules/sha.js/sha512.js +260 -0
  487. package/.output/server/node_modules/source-map-js/lib/array-set.js +121 -0
  488. package/.output/server/node_modules/source-map-js/lib/base64-vlq.js +140 -0
  489. package/.output/server/node_modules/source-map-js/lib/base64.js +67 -0
  490. package/.output/server/node_modules/source-map-js/lib/binary-search.js +111 -0
  491. package/.output/server/node_modules/source-map-js/lib/mapping-list.js +79 -0
  492. package/.output/server/node_modules/source-map-js/lib/quick-sort.js +132 -0
  493. package/.output/server/node_modules/source-map-js/lib/source-map-consumer.js +1188 -0
  494. package/.output/server/node_modules/source-map-js/lib/source-map-generator.js +444 -0
  495. package/.output/server/node_modules/source-map-js/lib/source-node.js +413 -0
  496. package/.output/server/node_modules/source-map-js/lib/util.js +594 -0
  497. package/.output/server/node_modules/source-map-js/package.json +71 -0
  498. package/.output/server/node_modules/source-map-js/source-map.js +8 -0
  499. package/.output/server/node_modules/split2/index.js +141 -0
  500. package/.output/server/node_modules/split2/package.json +39 -0
  501. package/.output/server/node_modules/sql-highlight/lib/escapeHtml.js +59 -0
  502. package/.output/server/node_modules/sql-highlight/lib/index.js +85 -0
  503. package/.output/server/node_modules/sql-highlight/lib/keywords.js +145 -0
  504. package/.output/server/node_modules/sql-highlight/package.json +49 -0
  505. package/.output/server/node_modules/sqlite3/build/Release/node_sqlite3.node +0 -0
  506. package/.output/server/node_modules/sqlite3/build/Release/node_sqlite3.node.bak +0 -0
  507. package/.output/server/node_modules/sqlite3/lib/sqlite3-binding.js +1 -0
  508. package/.output/server/node_modules/sqlite3/lib/sqlite3.js +207 -0
  509. package/.output/server/node_modules/sqlite3/lib/trace.js +38 -0
  510. package/.output/server/node_modules/sqlite3/package.json +89 -0
  511. package/.output/server/node_modules/standard-as-callback/built/index.js +41 -0
  512. package/.output/server/node_modules/standard-as-callback/built/utils.js +23 -0
  513. package/.output/server/node_modules/standard-as-callback/package.json +40 -0
  514. package/.output/server/node_modules/supports-color/index.js +152 -0
  515. package/.output/server/node_modules/supports-color/package.json +58 -0
  516. package/.output/server/node_modules/tslib/package.json +47 -0
  517. package/.output/server/node_modules/tslib/tslib.js +484 -0
  518. package/.output/server/node_modules/typeorm/cache/DbQueryResultCache.js +264 -0
  519. package/.output/server/node_modules/typeorm/cache/QueryResultCacheFactory.js +42 -0
  520. package/.output/server/node_modules/typeorm/cache/RedisQueryResultCache.js +197 -0
  521. package/.output/server/node_modules/typeorm/common/DeepPartial.js +4 -0
  522. package/.output/server/node_modules/typeorm/common/EntityTarget.js +4 -0
  523. package/.output/server/node_modules/typeorm/common/MixedList.js +4 -0
  524. package/.output/server/node_modules/typeorm/common/ObjectLiteral.js +4 -0
  525. package/.output/server/node_modules/typeorm/common/ObjectType.js +4 -0
  526. package/.output/server/node_modules/typeorm/common/RelationType.js +4 -0
  527. package/.output/server/node_modules/typeorm/connection/Connection.js +16 -0
  528. package/.output/server/node_modules/typeorm/connection/ConnectionManager.js +66 -0
  529. package/.output/server/node_modules/typeorm/connection/ConnectionMetadataBuilder.js +74 -0
  530. package/.output/server/node_modules/typeorm/connection/ConnectionOptionsReader.js +198 -0
  531. package/.output/server/node_modules/typeorm/connection/options-reader/ConnectionOptionsEnvReader.js +111 -0
  532. package/.output/server/node_modules/typeorm/container.js +60 -0
  533. package/.output/server/node_modules/typeorm/data-source/DataSource.js +517 -0
  534. package/.output/server/node_modules/typeorm/decorator/Check.js +27 -0
  535. package/.output/server/node_modules/typeorm/decorator/EntityRepository.js +21 -0
  536. package/.output/server/node_modules/typeorm/decorator/Exclusion.js +27 -0
  537. package/.output/server/node_modules/typeorm/decorator/ForeignKey.js +44 -0
  538. package/.output/server/node_modules/typeorm/decorator/Generated.js +24 -0
  539. package/.output/server/node_modules/typeorm/decorator/Index.js +56 -0
  540. package/.output/server/node_modules/typeorm/decorator/Unique.js +50 -0
  541. package/.output/server/node_modules/typeorm/decorator/columns/Column.js +78 -0
  542. package/.output/server/node_modules/typeorm/decorator/columns/CreateDateColumn.js +21 -0
  543. package/.output/server/node_modules/typeorm/decorator/columns/DeleteDateColumn.js +20 -0
  544. package/.output/server/node_modules/typeorm/decorator/columns/ObjectIdColumn.js +27 -0
  545. package/.output/server/node_modules/typeorm/decorator/columns/PrimaryColumn.js +63 -0
  546. package/.output/server/node_modules/typeorm/decorator/columns/PrimaryGeneratedColumn.js +59 -0
  547. package/.output/server/node_modules/typeorm/decorator/columns/UpdateDateColumn.js +20 -0
  548. package/.output/server/node_modules/typeorm/decorator/columns/VersionColumn.js +21 -0
  549. package/.output/server/node_modules/typeorm/decorator/columns/ViewColumn.js +19 -0
  550. package/.output/server/node_modules/typeorm/decorator/columns/VirtualColumn.js +49 -0
  551. package/.output/server/node_modules/typeorm/decorator/entity/ChildEntity.js +25 -0
  552. package/.output/server/node_modules/typeorm/decorator/entity/Entity.js +31 -0
  553. package/.output/server/node_modules/typeorm/decorator/entity/TableInheritance.js +22 -0
  554. package/.output/server/node_modules/typeorm/decorator/entity-view/ViewEntity.js +32 -0
  555. package/.output/server/node_modules/typeorm/decorator/listeners/AfterInsert.js +19 -0
  556. package/.output/server/node_modules/typeorm/decorator/listeners/AfterLoad.js +19 -0
  557. package/.output/server/node_modules/typeorm/decorator/listeners/AfterRecover.js +19 -0
  558. package/.output/server/node_modules/typeorm/decorator/listeners/AfterRemove.js +19 -0
  559. package/.output/server/node_modules/typeorm/decorator/listeners/AfterSoftRemove.js +19 -0
  560. package/.output/server/node_modules/typeorm/decorator/listeners/AfterUpdate.js +19 -0
  561. package/.output/server/node_modules/typeorm/decorator/listeners/BeforeInsert.js +19 -0
  562. package/.output/server/node_modules/typeorm/decorator/listeners/BeforeRecover.js +19 -0
  563. package/.output/server/node_modules/typeorm/decorator/listeners/BeforeRemove.js +19 -0
  564. package/.output/server/node_modules/typeorm/decorator/listeners/BeforeSoftRemove.js +19 -0
  565. package/.output/server/node_modules/typeorm/decorator/listeners/BeforeUpdate.js +19 -0
  566. package/.output/server/node_modules/typeorm/decorator/listeners/EventSubscriber.js +17 -0
  567. package/.output/server/node_modules/typeorm/decorator/options/ColumnOptions.js +4 -0
  568. package/.output/server/node_modules/typeorm/decorator/options/EntityOptions.js +4 -0
  569. package/.output/server/node_modules/typeorm/decorator/options/IndexOptions.js +4 -0
  570. package/.output/server/node_modules/typeorm/decorator/options/JoinColumnOptions.js +4 -0
  571. package/.output/server/node_modules/typeorm/decorator/options/JoinTableOptions.js +4 -0
  572. package/.output/server/node_modules/typeorm/decorator/options/RelationOptions.js +4 -0
  573. package/.output/server/node_modules/typeorm/decorator/options/ValueTransformer.js +4 -0
  574. package/.output/server/node_modules/typeorm/decorator/relations/JoinColumn.js +27 -0
  575. package/.output/server/node_modules/typeorm/decorator/relations/JoinTable.js +34 -0
  576. package/.output/server/node_modules/typeorm/decorator/relations/ManyToMany.js +46 -0
  577. package/.output/server/node_modules/typeorm/decorator/relations/ManyToOne.js +46 -0
  578. package/.output/server/node_modules/typeorm/decorator/relations/OneToMany.js +37 -0
  579. package/.output/server/node_modules/typeorm/decorator/relations/OneToOne.js +45 -0
  580. package/.output/server/node_modules/typeorm/decorator/relations/RelationCount.js +23 -0
  581. package/.output/server/node_modules/typeorm/decorator/relations/RelationId.js +22 -0
  582. package/.output/server/node_modules/typeorm/decorator/tree/Tree.js +21 -0
  583. package/.output/server/node_modules/typeorm/decorator/tree/TreeChildren.js +34 -0
  584. package/.output/server/node_modules/typeorm/decorator/tree/TreeLevelColumn.js +19 -0
  585. package/.output/server/node_modules/typeorm/decorator/tree/TreeParent.js +33 -0
  586. package/.output/server/node_modules/typeorm/driver/DriverFactory.js +98 -0
  587. package/.output/server/node_modules/typeorm/driver/DriverUtils.js +228 -0
  588. package/.output/server/node_modules/typeorm/driver/Query.js +16 -0
  589. package/.output/server/node_modules/typeorm/driver/SqlInMemory.js +15 -0
  590. package/.output/server/node_modules/typeorm/driver/aurora-mysql/AuroraMysqlDriver.js +847 -0
  591. package/.output/server/node_modules/typeorm/driver/aurora-mysql/AuroraMysqlQueryRunner.js +1709 -0
  592. package/.output/server/node_modules/typeorm/driver/aurora-postgres/AuroraPostgresDriver.js +103 -0
  593. package/.output/server/node_modules/typeorm/driver/aurora-postgres/AuroraPostgresQueryRunner.js +146 -0
  594. package/.output/server/node_modules/typeorm/driver/better-sqlite3/BetterSqlite3Driver.js +153 -0
  595. package/.output/server/node_modules/typeorm/driver/better-sqlite3/BetterSqlite3QueryRunner.js +126 -0
  596. package/.output/server/node_modules/typeorm/driver/capacitor/CapacitorDriver.js +78 -0
  597. package/.output/server/node_modules/typeorm/driver/capacitor/CapacitorQueryRunner.js +98 -0
  598. package/.output/server/node_modules/typeorm/driver/cockroachdb/CockroachDriver.js +885 -0
  599. package/.output/server/node_modules/typeorm/driver/cockroachdb/CockroachQueryRunner.js +2453 -0
  600. package/.output/server/node_modules/typeorm/driver/cordova/CordovaDriver.js +76 -0
  601. package/.output/server/node_modules/typeorm/driver/cordova/CordovaQueryRunner.js +170 -0
  602. package/.output/server/node_modules/typeorm/driver/expo/ExpoDriver.js +29 -0
  603. package/.output/server/node_modules/typeorm/driver/expo/ExpoDriverFactory.js +22 -0
  604. package/.output/server/node_modules/typeorm/driver/expo/ExpoQueryRunner.js +65 -0
  605. package/.output/server/node_modules/typeorm/driver/expo/legacy/ExpoLegacyDriver.js +75 -0
  606. package/.output/server/node_modules/typeorm/driver/expo/legacy/ExpoLegacyQueryRunner.js +169 -0
  607. package/.output/server/node_modules/typeorm/driver/mongodb/MongoDriver.js +404 -0
  608. package/.output/server/node_modules/typeorm/driver/mongodb/MongoQueryRunner.js +701 -0
  609. package/.output/server/node_modules/typeorm/driver/mongodb/bson.typings.js +5 -0
  610. package/.output/server/node_modules/typeorm/driver/mongodb/typings.js +23 -0
  611. package/.output/server/node_modules/typeorm/driver/mysql/MysqlDriver.js +1105 -0
  612. package/.output/server/node_modules/typeorm/driver/mysql/MysqlQueryRunner.js +2139 -0
  613. package/.output/server/node_modules/typeorm/driver/nativescript/NativescriptDriver.js +94 -0
  614. package/.output/server/node_modules/typeorm/driver/nativescript/NativescriptQueryRunner.js +92 -0
  615. package/.output/server/node_modules/typeorm/driver/oracle/OracleDriver.js +869 -0
  616. package/.output/server/node_modules/typeorm/driver/oracle/OracleQueryRunner.js +1884 -0
  617. package/.output/server/node_modules/typeorm/driver/postgres/PostgresDriver.js +1259 -0
  618. package/.output/server/node_modules/typeorm/driver/postgres/PostgresQueryRunner.js +2729 -0
  619. package/.output/server/node_modules/typeorm/driver/react-native/ReactNativeDriver.js +728 -0
  620. package/.output/server/node_modules/typeorm/driver/react-native/ReactNativeQueryRunner.js +107 -0
  621. package/.output/server/node_modules/typeorm/driver/sap/SapDriver.js +681 -0
  622. package/.output/server/node_modules/typeorm/driver/sap/SapQueryRunner.js +2054 -0
  623. package/.output/server/node_modules/typeorm/driver/spanner/SpannerDriver.js +613 -0
  624. package/.output/server/node_modules/typeorm/driver/spanner/SpannerQueryRunner.js +1464 -0
  625. package/.output/server/node_modules/typeorm/driver/sqlite/SqliteDriver.js +174 -0
  626. package/.output/server/node_modules/typeorm/driver/sqlite/SqliteQueryRunner.js +124 -0
  627. package/.output/server/node_modules/typeorm/driver/sqlite-abstract/AbstractSqliteDriver.js +695 -0
  628. package/.output/server/node_modules/typeorm/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +1511 -0
  629. package/.output/server/node_modules/typeorm/driver/sqljs/SqljsDriver.js +250 -0
  630. package/.output/server/node_modules/typeorm/driver/sqljs/SqljsQueryRunner.js +123 -0
  631. package/.output/server/node_modules/typeorm/driver/sqlserver/MssqlParameter.js +23 -0
  632. package/.output/server/node_modules/typeorm/driver/sqlserver/SqlServerDriver.js +922 -0
  633. package/.output/server/node_modules/typeorm/driver/sqlserver/SqlServerQueryRunner.js +2484 -0
  634. package/.output/server/node_modules/typeorm/driver/types/DatabaseType.js +4 -0
  635. package/.output/server/node_modules/typeorm/driver/types/GeoJsonTypes.js +4 -0
  636. package/.output/server/node_modules/typeorm/driver/types/MetadataTableType.js +11 -0
  637. package/.output/server/node_modules/typeorm/driver/types/ReplicationMode.js +4 -0
  638. package/.output/server/node_modules/typeorm/entity-manager/EntityManager.js +853 -0
  639. package/.output/server/node_modules/typeorm/entity-manager/EntityManagerFactory.js +24 -0
  640. package/.output/server/node_modules/typeorm/entity-manager/MongoEntityManager.js +668 -0
  641. package/.output/server/node_modules/typeorm/entity-manager/SqljsEntityManager.js +44 -0
  642. package/.output/server/node_modules/typeorm/entity-schema/EntitySchema.js +15 -0
  643. package/.output/server/node_modules/typeorm/entity-schema/EntitySchemaEmbeddedColumnOptions.js +8 -0
  644. package/.output/server/node_modules/typeorm/entity-schema/EntitySchemaEmbeddedError.js +18 -0
  645. package/.output/server/node_modules/typeorm/entity-schema/EntitySchemaOptions.js +11 -0
  646. package/.output/server/node_modules/typeorm/entity-schema/EntitySchemaTransformer.js +333 -0
  647. package/.output/server/node_modules/typeorm/error/AlreadyHasActiveConnectionError.js +16 -0
  648. package/.output/server/node_modules/typeorm/error/CannotAttachTreeChildrenEntityError.js +16 -0
  649. package/.output/server/node_modules/typeorm/error/CannotConnectAlreadyConnectedError.js +15 -0
  650. package/.output/server/node_modules/typeorm/error/CannotCreateEntityIdMapError.js +21 -0
  651. package/.output/server/node_modules/typeorm/error/CannotDetermineEntityError.js +16 -0
  652. package/.output/server/node_modules/typeorm/error/CannotExecuteNotConnectedError.js +15 -0
  653. package/.output/server/node_modules/typeorm/error/CannotGetEntityManagerNotConnectedError.js +15 -0
  654. package/.output/server/node_modules/typeorm/error/CannotReflectMethodParameterTypeError.js +18 -0
  655. package/.output/server/node_modules/typeorm/error/CircularRelationsError.js +16 -0
  656. package/.output/server/node_modules/typeorm/error/ColumnTypeUndefinedError.js +19 -0
  657. package/.output/server/node_modules/typeorm/error/ConnectionIsNotSetError.js +15 -0
  658. package/.output/server/node_modules/typeorm/error/ConnectionNotFoundError.js +15 -0
  659. package/.output/server/node_modules/typeorm/error/CustomRepositoryCannotInheritRepositoryError.js +18 -0
  660. package/.output/server/node_modules/typeorm/error/CustomRepositoryDoesNotHaveEntityError.js +18 -0
  661. package/.output/server/node_modules/typeorm/error/CustomRepositoryNotFoundError.js +18 -0
  662. package/.output/server/node_modules/typeorm/error/DataTypeNotSupportedError.js +14 -0
  663. package/.output/server/node_modules/typeorm/error/DriverOptionNotSetError.js +16 -0
  664. package/.output/server/node_modules/typeorm/error/DriverPackageNotInstalledError.js +16 -0
  665. package/.output/server/node_modules/typeorm/error/EntityMetadataNotFoundError.js +29 -0
  666. package/.output/server/node_modules/typeorm/error/EntityNotFoundError.js +42 -0
  667. package/.output/server/node_modules/typeorm/error/EntityPropertyNotFoundError.js +17 -0
  668. package/.output/server/node_modules/typeorm/error/FindRelationsNotFoundError.js +23 -0
  669. package/.output/server/node_modules/typeorm/error/ForbiddenTransactionModeOverrideError.js +16 -0
  670. package/.output/server/node_modules/typeorm/error/InitializedRelationError.js +20 -0
  671. package/.output/server/node_modules/typeorm/error/InsertValuesMissingError.js +16 -0
  672. package/.output/server/node_modules/typeorm/error/LimitOnUpdateNotSupportedError.js +15 -0
  673. package/.output/server/node_modules/typeorm/error/LockNotSupportedOnGivenDriverError.js +15 -0
  674. package/.output/server/node_modules/typeorm/error/MetadataAlreadyExistsError.js +18 -0
  675. package/.output/server/node_modules/typeorm/error/MetadataWithSuchNameAlreadyExistsError.js +16 -0
  676. package/.output/server/node_modules/typeorm/error/MissingDeleteDateColumnError.js +12 -0
  677. package/.output/server/node_modules/typeorm/error/MissingDriverError.js +16 -0
  678. package/.output/server/node_modules/typeorm/error/MissingJoinColumnError.js +23 -0
  679. package/.output/server/node_modules/typeorm/error/MissingJoinTableError.js +23 -0
  680. package/.output/server/node_modules/typeorm/error/MissingPrimaryColumnError.js +13 -0
  681. package/.output/server/node_modules/typeorm/error/MustBeEntityError.js +15 -0
  682. package/.output/server/node_modules/typeorm/error/NestedSetMultipleRootError.js +12 -0
  683. package/.output/server/node_modules/typeorm/error/NoConnectionForRepositoryError.js +16 -0
  684. package/.output/server/node_modules/typeorm/error/NoConnectionOptionError.js +16 -0
  685. package/.output/server/node_modules/typeorm/error/NoNeedToReleaseEntityManagerError.js +17 -0
  686. package/.output/server/node_modules/typeorm/error/NoVersionOrUpdateDateColumnError.js +15 -0
  687. package/.output/server/node_modules/typeorm/error/OffsetWithoutLimitNotSupportedError.js +17 -0
  688. package/.output/server/node_modules/typeorm/error/OptimisticLockCanNotBeUsedError.js +15 -0
  689. package/.output/server/node_modules/typeorm/error/OptimisticLockVersionMismatchError.js +15 -0
  690. package/.output/server/node_modules/typeorm/error/PersistedEntityNotFoundError.js +15 -0
  691. package/.output/server/node_modules/typeorm/error/PessimisticLockTransactionRequiredError.js +15 -0
  692. package/.output/server/node_modules/typeorm/error/PrimaryColumnCannotBeNullableError.js +13 -0
  693. package/.output/server/node_modules/typeorm/error/QueryFailedError.js +30 -0
  694. package/.output/server/node_modules/typeorm/error/QueryRunnerAlreadyReleasedError.js +12 -0
  695. package/.output/server/node_modules/typeorm/error/QueryRunnerProviderAlreadyReleasedError.js +16 -0
  696. package/.output/server/node_modules/typeorm/error/RepositoryNotTreeError.js +32 -0
  697. package/.output/server/node_modules/typeorm/error/ReturningStatementNotSupportedError.js +16 -0
  698. package/.output/server/node_modules/typeorm/error/SubjectRemovedAndUpdatedError.js +16 -0
  699. package/.output/server/node_modules/typeorm/error/SubjectWithoutIdentifierError.js +17 -0
  700. package/.output/server/node_modules/typeorm/error/TransactionAlreadyStartedError.js +15 -0
  701. package/.output/server/node_modules/typeorm/error/TransactionNotStartedError.js +15 -0
  702. package/.output/server/node_modules/typeorm/error/TreeRepositoryNotSupportedError.js +12 -0
  703. package/.output/server/node_modules/typeorm/error/TypeORMError.js +23 -0
  704. package/.output/server/node_modules/typeorm/error/UpdateValuesMissingError.js +12 -0
  705. package/.output/server/node_modules/typeorm/error/UsingJoinColumnIsNotAllowedError.js +13 -0
  706. package/.output/server/node_modules/typeorm/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +14 -0
  707. package/.output/server/node_modules/typeorm/error/UsingJoinTableIsNotAllowedError.js +14 -0
  708. package/.output/server/node_modules/typeorm/error/UsingJoinTableOnlyOnOneSideAllowedError.js +14 -0
  709. package/.output/server/node_modules/typeorm/error/index.js +66 -0
  710. package/.output/server/node_modules/typeorm/find-options/EqualOperator.js +13 -0
  711. package/.output/server/node_modules/typeorm/find-options/FindManyOptions.js +4 -0
  712. package/.output/server/node_modules/typeorm/find-options/FindOneOptions.js +4 -0
  713. package/.output/server/node_modules/typeorm/find-options/FindOperator.js +96 -0
  714. package/.output/server/node_modules/typeorm/find-options/FindOperatorType.js +4 -0
  715. package/.output/server/node_modules/typeorm/find-options/FindOptionsOrder.js +4 -0
  716. package/.output/server/node_modules/typeorm/find-options/FindOptionsRelations.js +4 -0
  717. package/.output/server/node_modules/typeorm/find-options/FindOptionsSelect.js +4 -0
  718. package/.output/server/node_modules/typeorm/find-options/FindOptionsUtils.js +350 -0
  719. package/.output/server/node_modules/typeorm/find-options/FindOptionsWhere.js +4 -0
  720. package/.output/server/node_modules/typeorm/find-options/FindTreeOptions.js +4 -0
  721. package/.output/server/node_modules/typeorm/find-options/JoinOptions.js +4 -0
  722. package/.output/server/node_modules/typeorm/find-options/OrderByCondition.js +4 -0
  723. package/.output/server/node_modules/typeorm/find-options/operator/And.js +9 -0
  724. package/.output/server/node_modules/typeorm/find-options/operator/Any.js +13 -0
  725. package/.output/server/node_modules/typeorm/find-options/operator/ArrayContainedBy.js +13 -0
  726. package/.output/server/node_modules/typeorm/find-options/operator/ArrayContains.js +13 -0
  727. package/.output/server/node_modules/typeorm/find-options/operator/ArrayOverlap.js +13 -0
  728. package/.output/server/node_modules/typeorm/find-options/operator/Between.js +13 -0
  729. package/.output/server/node_modules/typeorm/find-options/operator/Equal.js +17 -0
  730. package/.output/server/node_modules/typeorm/find-options/operator/ILike.js +13 -0
  731. package/.output/server/node_modules/typeorm/find-options/operator/In.js +13 -0
  732. package/.output/server/node_modules/typeorm/find-options/operator/IsNull.js +13 -0
  733. package/.output/server/node_modules/typeorm/find-options/operator/JsonContains.js +13 -0
  734. package/.output/server/node_modules/typeorm/find-options/operator/LessThan.js +13 -0
  735. package/.output/server/node_modules/typeorm/find-options/operator/LessThanOrEqual.js +13 -0
  736. package/.output/server/node_modules/typeorm/find-options/operator/Like.js +13 -0
  737. package/.output/server/node_modules/typeorm/find-options/operator/MoreThan.js +13 -0
  738. package/.output/server/node_modules/typeorm/find-options/operator/MoreThanOrEqual.js +13 -0
  739. package/.output/server/node_modules/typeorm/find-options/operator/Not.js +14 -0
  740. package/.output/server/node_modules/typeorm/find-options/operator/Or.js +9 -0
  741. package/.output/server/node_modules/typeorm/find-options/operator/Raw.js +12 -0
  742. package/.output/server/node_modules/typeorm/globals.js +182 -0
  743. package/.output/server/node_modules/typeorm/index.js +196 -0
  744. package/.output/server/node_modules/typeorm/index.mjs +422 -0
  745. package/.output/server/node_modules/typeorm/logger/AbstractLogger.js +238 -0
  746. package/.output/server/node_modules/typeorm/logger/AdvancedConsoleLogger.js +56 -0
  747. package/.output/server/node_modules/typeorm/logger/DebugLogger.js +78 -0
  748. package/.output/server/node_modules/typeorm/logger/FileLogger.js +88 -0
  749. package/.output/server/node_modules/typeorm/logger/FormattedConsoleLogger.js +59 -0
  750. package/.output/server/node_modules/typeorm/logger/Logger.js +4 -0
  751. package/.output/server/node_modules/typeorm/logger/LoggerFactory.js +39 -0
  752. package/.output/server/node_modules/typeorm/logger/LoggerOptions.js +4 -0
  753. package/.output/server/node_modules/typeorm/logger/SimpleConsoleLogger.js +57 -0
  754. package/.output/server/node_modules/typeorm/metadata/CheckMetadata.js +35 -0
  755. package/.output/server/node_modules/typeorm/metadata/ColumnMetadata.js +618 -0
  756. package/.output/server/node_modules/typeorm/metadata/EmbeddedMetadata.js +224 -0
  757. package/.output/server/node_modules/typeorm/metadata/EntityListenerMetadata.js +77 -0
  758. package/.output/server/node_modules/typeorm/metadata/EntityMetadata.js +692 -0
  759. package/.output/server/node_modules/typeorm/metadata/ExclusionMetadata.js +35 -0
  760. package/.output/server/node_modules/typeorm/metadata/ForeignKeyMetadata.js +57 -0
  761. package/.output/server/node_modules/typeorm/metadata/IndexMetadata.js +144 -0
  762. package/.output/server/node_modules/typeorm/metadata/RelationCountMetadata.js +39 -0
  763. package/.output/server/node_modules/typeorm/metadata/RelationIdMetadata.js +62 -0
  764. package/.output/server/node_modules/typeorm/metadata/RelationMetadata.js +440 -0
  765. package/.output/server/node_modules/typeorm/metadata/UniqueMetadata.js +101 -0
  766. package/.output/server/node_modules/typeorm/metadata/types/EventListenerTypes.js +22 -0
  767. package/.output/server/node_modules/typeorm/metadata-args/MetadataArgsStorage.js +236 -0
  768. package/.output/server/node_modules/typeorm/metadata-builder/ClosureJunctionEntityMetadataBuilder.js +145 -0
  769. package/.output/server/node_modules/typeorm/metadata-builder/EntityMetadataBuilder.js +838 -0
  770. package/.output/server/node_modules/typeorm/metadata-builder/EntityMetadataValidator.js +258 -0
  771. package/.output/server/node_modules/typeorm/metadata-builder/JunctionEntityMetadataBuilder.js +287 -0
  772. package/.output/server/node_modules/typeorm/metadata-builder/MetadataUtils.js +44 -0
  773. package/.output/server/node_modules/typeorm/metadata-builder/RelationJoinColumnBuilder.js +185 -0
  774. package/.output/server/node_modules/typeorm/migration/Migration.js +21 -0
  775. package/.output/server/node_modules/typeorm/migration/MigrationExecutor.js +534 -0
  776. package/.output/server/node_modules/typeorm/naming-strategy/DefaultNamingStrategy.js +145 -0
  777. package/.output/server/node_modules/typeorm/naming-strategy/LegacyOracleNamingStrategy.js +50 -0
  778. package/.output/server/node_modules/typeorm/package.json +268 -0
  779. package/.output/server/node_modules/typeorm/persistence/EntityPersistExecutor.js +170 -0
  780. package/.output/server/node_modules/typeorm/persistence/Subject.js +239 -0
  781. package/.output/server/node_modules/typeorm/persistence/SubjectChangedColumnsComputer.js +216 -0
  782. package/.output/server/node_modules/typeorm/persistence/SubjectDatabaseEntityLoader.js +135 -0
  783. package/.output/server/node_modules/typeorm/persistence/SubjectExecutor.js +760 -0
  784. package/.output/server/node_modules/typeorm/persistence/SubjectTopologicalSorter.js +174 -0
  785. package/.output/server/node_modules/typeorm/persistence/subject-builder/CascadesSubjectBuilder.js +107 -0
  786. package/.output/server/node_modules/typeorm/persistence/subject-builder/ManyToManySubjectBuilder.js +218 -0
  787. package/.output/server/node_modules/typeorm/persistence/subject-builder/OneToManySubjectBuilder.js +181 -0
  788. package/.output/server/node_modules/typeorm/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js +155 -0
  789. package/.output/server/node_modules/typeorm/persistence/tree/ClosureSubjectExecutor.js +241 -0
  790. package/.output/server/node_modules/typeorm/persistence/tree/MaterializedPathSubjectExecutor.js +125 -0
  791. package/.output/server/node_modules/typeorm/persistence/tree/NestedSetSubjectExecutor.js +271 -0
  792. package/.output/server/node_modules/typeorm/platform/PlatformTools.js +243 -0
  793. package/.output/server/node_modules/typeorm/query-builder/Alias.js +29 -0
  794. package/.output/server/node_modules/typeorm/query-builder/Brackets.js +19 -0
  795. package/.output/server/node_modules/typeorm/query-builder/DeleteQueryBuilder.js +200 -0
  796. package/.output/server/node_modules/typeorm/query-builder/InsertQueryBuilder.js +745 -0
  797. package/.output/server/node_modules/typeorm/query-builder/JoinAttribute.js +175 -0
  798. package/.output/server/node_modules/typeorm/query-builder/NotBrackets.js +17 -0
  799. package/.output/server/node_modules/typeorm/query-builder/QueryBuilder.js +1139 -0
  800. package/.output/server/node_modules/typeorm/query-builder/QueryBuilderUtils.js +32 -0
  801. package/.output/server/node_modules/typeorm/query-builder/QueryExpressionMap.js +328 -0
  802. package/.output/server/node_modules/typeorm/query-builder/RelationIdLoader.js +503 -0
  803. package/.output/server/node_modules/typeorm/query-builder/RelationLoader.js +283 -0
  804. package/.output/server/node_modules/typeorm/query-builder/RelationQueryBuilder.js +155 -0
  805. package/.output/server/node_modules/typeorm/query-builder/RelationRemover.js +143 -0
  806. package/.output/server/node_modules/typeorm/query-builder/RelationUpdater.js +152 -0
  807. package/.output/server/node_modules/typeorm/query-builder/ReturningResultsEntityUpdator.js +176 -0
  808. package/.output/server/node_modules/typeorm/query-builder/SelectQueryBuilder.js +2656 -0
  809. package/.output/server/node_modules/typeorm/query-builder/SoftDeleteQueryBuilder.js +368 -0
  810. package/.output/server/node_modules/typeorm/query-builder/UpdateQueryBuilder.js +498 -0
  811. package/.output/server/node_modules/typeorm/query-builder/index.js +20 -0
  812. package/.output/server/node_modules/typeorm/query-builder/relation-count/RelationCountAttribute.js +80 -0
  813. package/.output/server/node_modules/typeorm/query-builder/relation-count/RelationCountLoader.js +168 -0
  814. package/.output/server/node_modules/typeorm/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.js +55 -0
  815. package/.output/server/node_modules/typeorm/query-builder/relation-id/RelationIdAttribute.js +88 -0
  816. package/.output/server/node_modules/typeorm/query-builder/relation-id/RelationIdLoader.js +275 -0
  817. package/.output/server/node_modules/typeorm/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js +55 -0
  818. package/.output/server/node_modules/typeorm/query-builder/result/DeleteResult.js +17 -0
  819. package/.output/server/node_modules/typeorm/query-builder/result/InsertResult.js +28 -0
  820. package/.output/server/node_modules/typeorm/query-builder/result/UpdateResult.js +29 -0
  821. package/.output/server/node_modules/typeorm/query-builder/transformer/DocumentToEntityTransformer.js +196 -0
  822. package/.output/server/node_modules/typeorm/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js +112 -0
  823. package/.output/server/node_modules/typeorm/query-builder/transformer/PlainObjectToNewEntityTransformer.js +92 -0
  824. package/.output/server/node_modules/typeorm/query-builder/transformer/RawSqlResultsToEntityTransformer.js +447 -0
  825. package/.output/server/node_modules/typeorm/query-runner/BaseQueryRunner.js +454 -0
  826. package/.output/server/node_modules/typeorm/query-runner/QueryLock.js +28 -0
  827. package/.output/server/node_modules/typeorm/query-runner/QueryResult.js +17 -0
  828. package/.output/server/node_modules/typeorm/repository/AbstractRepository.js +92 -0
  829. package/.output/server/node_modules/typeorm/repository/BaseEntity.js +328 -0
  830. package/.output/server/node_modules/typeorm/repository/MongoRepository.js +305 -0
  831. package/.output/server/node_modules/typeorm/repository/RemoveOptions.js +4 -0
  832. package/.output/server/node_modules/typeorm/repository/Repository.js +379 -0
  833. package/.output/server/node_modules/typeorm/repository/SaveOptions.js +4 -0
  834. package/.output/server/node_modules/typeorm/repository/TreeRepository.js +255 -0
  835. package/.output/server/node_modules/typeorm/schema-builder/MongoSchemaBuilder.js +66 -0
  836. package/.output/server/node_modules/typeorm/schema-builder/RdbmsSchemaBuilder.js +929 -0
  837. package/.output/server/node_modules/typeorm/schema-builder/options/TableCheckOptions.js +4 -0
  838. package/.output/server/node_modules/typeorm/schema-builder/options/TableColumnOptions.js +4 -0
  839. package/.output/server/node_modules/typeorm/schema-builder/options/TableExclusionOptions.js +4 -0
  840. package/.output/server/node_modules/typeorm/schema-builder/options/TableForeignKeyOptions.js +4 -0
  841. package/.output/server/node_modules/typeorm/schema-builder/options/TableIndexOptions.js +4 -0
  842. package/.output/server/node_modules/typeorm/schema-builder/options/TableOptions.js +4 -0
  843. package/.output/server/node_modules/typeorm/schema-builder/options/TableUniqueOptions.js +4 -0
  844. package/.output/server/node_modules/typeorm/schema-builder/options/ViewOptions.js +4 -0
  845. package/.output/server/node_modules/typeorm/schema-builder/table/Table.js +296 -0
  846. package/.output/server/node_modules/typeorm/schema-builder/table/TableCheck.js +49 -0
  847. package/.output/server/node_modules/typeorm/schema-builder/table/TableColumn.js +117 -0
  848. package/.output/server/node_modules/typeorm/schema-builder/table/TableExclusion.js +43 -0
  849. package/.output/server/node_modules/typeorm/schema-builder/table/TableForeignKey.js +72 -0
  850. package/.output/server/node_modules/typeorm/schema-builder/table/TableIndex.js +68 -0
  851. package/.output/server/node_modules/typeorm/schema-builder/table/TableUnique.js +50 -0
  852. package/.output/server/node_modules/typeorm/schema-builder/util/TableUtils.js +41 -0
  853. package/.output/server/node_modules/typeorm/schema-builder/util/ViewUtils.js +27 -0
  854. package/.output/server/node_modules/typeorm/schema-builder/view/View.js +71 -0
  855. package/.output/server/node_modules/typeorm/subscriber/Broadcaster.js +660 -0
  856. package/.output/server/node_modules/typeorm/subscriber/BroadcasterResult.js +30 -0
  857. package/.output/server/node_modules/typeorm/subscriber/event/QueryEvent.js +4 -0
  858. package/.output/server/node_modules/typeorm/util/ApplyValueTransformers.js +25 -0
  859. package/.output/server/node_modules/typeorm/util/DateUtils.js +229 -0
  860. package/.output/server/node_modules/typeorm/util/DepGraph.js +230 -0
  861. package/.output/server/node_modules/typeorm/util/DirectoryExportedClassesLoader.js +65 -0
  862. package/.output/server/node_modules/typeorm/util/ImportUtils.js +66 -0
  863. package/.output/server/node_modules/typeorm/util/InstanceChecker.js +104 -0
  864. package/.output/server/node_modules/typeorm/util/ObjectUtils.js +49 -0
  865. package/.output/server/node_modules/typeorm/util/OrmUtils.js +443 -0
  866. package/.output/server/node_modules/typeorm/util/PathUtils.js +33 -0
  867. package/.output/server/node_modules/typeorm/util/RandomGenerator.js +154 -0
  868. package/.output/server/node_modules/typeorm/util/SqlTagUtils.js +43 -0
  869. package/.output/server/node_modules/typeorm/util/StringUtils.js +113 -0
  870. package/.output/server/node_modules/typeorm/util/TreeRepositoryUtils.js +67 -0
  871. package/.output/server/node_modules/typeorm/util/VersionUtils.js +27 -0
  872. package/.output/server/node_modules/typeorm/util/escapeRegExp.js +10 -0
  873. package/.output/server/node_modules/ufo/dist/index.mjs +630 -0
  874. package/.output/server/node_modules/ufo/package.json +47 -0
  875. package/.output/server/node_modules/unhead/dist/plugins.mjs +94 -0
  876. package/.output/server/node_modules/unhead/dist/server.mjs +220 -0
  877. package/.output/server/node_modules/unhead/dist/shared/unhead.C13swrCa.mjs +48 -0
  878. package/.output/server/node_modules/unhead/dist/shared/unhead.CApf5sj3.mjs +148 -0
  879. package/.output/server/node_modules/unhead/dist/shared/unhead.Cp0iF6eN.mjs +177 -0
  880. package/.output/server/node_modules/unhead/dist/shared/unhead.DGkFBTYv.mjs +172 -0
  881. package/.output/server/node_modules/unhead/dist/shared/unhead.DQc16pHI.mjs +196 -0
  882. package/.output/server/node_modules/unhead/dist/shared/unhead.DZbvapt-.mjs +70 -0
  883. package/.output/server/node_modules/unhead/dist/shared/unhead.DeCxexjU.mjs +166 -0
  884. package/.output/server/node_modules/unhead/dist/shared/unhead.yem5I2v_.mjs +38 -0
  885. package/.output/server/node_modules/unhead/dist/utils.mjs +5 -0
  886. package/.output/server/node_modules/unhead/package.json +101 -0
  887. package/.output/server/node_modules/uuid/dist/cjs/index.js +31 -0
  888. package/.output/server/node_modules/uuid/dist/cjs/max.js +3 -0
  889. package/.output/server/node_modules/uuid/dist/cjs/md5.js +13 -0
  890. package/.output/server/node_modules/uuid/dist/cjs/native.js +4 -0
  891. package/.output/server/node_modules/uuid/dist/cjs/nil.js +3 -0
  892. package/.output/server/node_modules/uuid/dist/cjs/package.json +1 -0
  893. package/.output/server/node_modules/uuid/dist/cjs/parse.js +11 -0
  894. package/.output/server/node_modules/uuid/dist/cjs/regex.js +3 -0
  895. package/.output/server/node_modules/uuid/dist/cjs/rng.js +13 -0
  896. package/.output/server/node_modules/uuid/dist/cjs/sha1.js +13 -0
  897. package/.output/server/node_modules/uuid/dist/cjs/stringify.js +39 -0
  898. package/.output/server/node_modules/uuid/dist/cjs/v1.js +87 -0
  899. package/.output/server/node_modules/uuid/dist/cjs/v1ToV6.js +13 -0
  900. package/.output/server/node_modules/uuid/dist/cjs/v3.js +14 -0
  901. package/.output/server/node_modules/uuid/dist/cjs/v35.js +41 -0
  902. package/.output/server/node_modules/uuid/dist/cjs/v4.js +29 -0
  903. package/.output/server/node_modules/uuid/dist/cjs/v5.js +14 -0
  904. package/.output/server/node_modules/uuid/dist/cjs/v6.js +19 -0
  905. package/.output/server/node_modules/uuid/dist/cjs/v6ToV1.js +13 -0
  906. package/.output/server/node_modules/uuid/dist/cjs/v7.js +69 -0
  907. package/.output/server/node_modules/uuid/dist/cjs/validate.js +7 -0
  908. package/.output/server/node_modules/uuid/dist/cjs/version.js +10 -0
  909. package/.output/server/node_modules/uuid/package.json +132 -0
  910. package/.output/server/node_modules/vue/dist/vue.cjs.js +80 -0
  911. package/.output/server/node_modules/vue/dist/vue.cjs.prod.js +66 -0
  912. package/.output/server/node_modules/vue/index.js +7 -0
  913. package/.output/server/node_modules/vue/index.mjs +1 -0
  914. package/.output/server/node_modules/vue/package.json +112 -0
  915. package/.output/server/node_modules/vue/server-renderer/index.mjs +1 -0
  916. package/.output/server/node_modules/vue-bundle-renderer/dist/runtime.mjs +196 -0
  917. package/.output/server/node_modules/vue-bundle-renderer/package.json +50 -0
  918. package/.output/server/node_modules/xtend/mutable.js +17 -0
  919. package/.output/server/node_modules/xtend/package.json +55 -0
  920. package/.output/server/node_modules/zod/index.js +4 -0
  921. package/.output/server/node_modules/zod/package.json +135 -0
  922. package/.output/server/node_modules/zod/v3/ZodError.js +133 -0
  923. package/.output/server/node_modules/zod/v3/errors.js +9 -0
  924. package/.output/server/node_modules/zod/v3/external.js +6 -0
  925. package/.output/server/node_modules/zod/v3/helpers/errorUtil.js +6 -0
  926. package/.output/server/node_modules/zod/v3/helpers/parseUtil.js +109 -0
  927. package/.output/server/node_modules/zod/v3/helpers/typeAliases.js +1 -0
  928. package/.output/server/node_modules/zod/v3/helpers/util.js +133 -0
  929. package/.output/server/node_modules/zod/v3/index.js +4 -0
  930. package/.output/server/node_modules/zod/v3/locales/en.js +109 -0
  931. package/.output/server/node_modules/zod/v3/package.json +6 -0
  932. package/.output/server/node_modules/zod/v3/types.js +3695 -0
  933. package/.output/server/node_modules/zod/v4/classic/checks.js +1 -0
  934. package/.output/server/node_modules/zod/v4/classic/coerce.js +17 -0
  935. package/.output/server/node_modules/zod/v4/classic/compat.js +31 -0
  936. package/.output/server/node_modules/zod/v4/classic/errors.js +48 -0
  937. package/.output/server/node_modules/zod/v4/classic/external.js +20 -0
  938. package/.output/server/node_modules/zod/v4/classic/from-json-schema.js +584 -0
  939. package/.output/server/node_modules/zod/v4/classic/index.js +4 -0
  940. package/.output/server/node_modules/zod/v4/classic/iso.js +30 -0
  941. package/.output/server/node_modules/zod/v4/classic/package.json +6 -0
  942. package/.output/server/node_modules/zod/v4/classic/parse.js +15 -0
  943. package/.output/server/node_modules/zod/v4/classic/schemas.js +1157 -0
  944. package/.output/server/node_modules/zod/v4/core/api.js +1082 -0
  945. package/.output/server/node_modules/zod/v4/core/checks.js +575 -0
  946. package/.output/server/node_modules/zod/v4/core/core.js +76 -0
  947. package/.output/server/node_modules/zod/v4/core/doc.js +35 -0
  948. package/.output/server/node_modules/zod/v4/core/errors.js +182 -0
  949. package/.output/server/node_modules/zod/v4/core/index.js +16 -0
  950. package/.output/server/node_modules/zod/v4/core/json-schema-generator.js +95 -0
  951. package/.output/server/node_modules/zod/v4/core/json-schema-processors.js +605 -0
  952. package/.output/server/node_modules/zod/v4/core/json-schema.js +1 -0
  953. package/.output/server/node_modules/zod/v4/core/package.json +6 -0
  954. package/.output/server/node_modules/zod/v4/core/parse.js +93 -0
  955. package/.output/server/node_modules/zod/v4/core/regexes.js +133 -0
  956. package/.output/server/node_modules/zod/v4/core/registries.js +51 -0
  957. package/.output/server/node_modules/zod/v4/core/schemas.js +2095 -0
  958. package/.output/server/node_modules/zod/v4/core/to-json-schema.js +437 -0
  959. package/.output/server/node_modules/zod/v4/core/util.js +651 -0
  960. package/.output/server/node_modules/zod/v4/core/versions.js +5 -0
  961. package/.output/server/node_modules/zod/v4/index.js +3 -0
  962. package/.output/server/node_modules/zod/v4/locales/ar.js +106 -0
  963. package/.output/server/node_modules/zod/v4/locales/az.js +105 -0
  964. package/.output/server/node_modules/zod/v4/locales/be.js +156 -0
  965. package/.output/server/node_modules/zod/v4/locales/bg.js +120 -0
  966. package/.output/server/node_modules/zod/v4/locales/ca.js +107 -0
  967. package/.output/server/node_modules/zod/v4/locales/cs.js +111 -0
  968. package/.output/server/node_modules/zod/v4/locales/da.js +115 -0
  969. package/.output/server/node_modules/zod/v4/locales/de.js +108 -0
  970. package/.output/server/node_modules/zod/v4/locales/en.js +109 -0
  971. package/.output/server/node_modules/zod/v4/locales/eo.js +109 -0
  972. package/.output/server/node_modules/zod/v4/locales/es.js +132 -0
  973. package/.output/server/node_modules/zod/v4/locales/fa.js +114 -0
  974. package/.output/server/node_modules/zod/v4/locales/fi.js +112 -0
  975. package/.output/server/node_modules/zod/v4/locales/fr-CA.js +107 -0
  976. package/.output/server/node_modules/zod/v4/locales/fr.js +108 -0
  977. package/.output/server/node_modules/zod/v4/locales/he.js +214 -0
  978. package/.output/server/node_modules/zod/v4/locales/hu.js +108 -0
  979. package/.output/server/node_modules/zod/v4/locales/hy.js +147 -0
  980. package/.output/server/node_modules/zod/v4/locales/id.js +106 -0
  981. package/.output/server/node_modules/zod/v4/locales/index.js +49 -0
  982. package/.output/server/node_modules/zod/v4/locales/is.js +109 -0
  983. package/.output/server/node_modules/zod/v4/locales/it.js +108 -0
  984. package/.output/server/node_modules/zod/v4/locales/ja.js +107 -0
  985. package/.output/server/node_modules/zod/v4/locales/ka.js +112 -0
  986. package/.output/server/node_modules/zod/v4/locales/kh.js +5 -0
  987. package/.output/server/node_modules/zod/v4/locales/km.js +110 -0
  988. package/.output/server/node_modules/zod/v4/locales/ko.js +111 -0
  989. package/.output/server/node_modules/zod/v4/locales/lt.js +203 -0
  990. package/.output/server/node_modules/zod/v4/locales/mk.js +109 -0
  991. package/.output/server/node_modules/zod/v4/locales/ms.js +107 -0
  992. package/.output/server/node_modules/zod/v4/locales/nl.js +110 -0
  993. package/.output/server/node_modules/zod/v4/locales/no.js +108 -0
  994. package/.output/server/node_modules/zod/v4/locales/ota.js +109 -0
  995. package/.output/server/node_modules/zod/v4/locales/package.json +6 -0
  996. package/.output/server/node_modules/zod/v4/locales/pl.js +109 -0
  997. package/.output/server/node_modules/zod/v4/locales/ps.js +114 -0
  998. package/.output/server/node_modules/zod/v4/locales/pt.js +108 -0
  999. package/.output/server/node_modules/zod/v4/locales/ru.js +156 -0
  1000. package/.output/server/node_modules/zod/v4/locales/sl.js +109 -0
  1001. package/.output/server/node_modules/zod/v4/locales/sv.js +110 -0
  1002. package/.output/server/node_modules/zod/v4/locales/ta.js +110 -0
  1003. package/.output/server/node_modules/zod/v4/locales/th.js +110 -0
  1004. package/.output/server/node_modules/zod/v4/locales/tr.js +105 -0
  1005. package/.output/server/node_modules/zod/v4/locales/ua.js +5 -0
  1006. package/.output/server/node_modules/zod/v4/locales/uk.js +108 -0
  1007. package/.output/server/node_modules/zod/v4/locales/ur.js +110 -0
  1008. package/.output/server/node_modules/zod/v4/locales/uz.js +109 -0
  1009. package/.output/server/node_modules/zod/v4/locales/vi.js +108 -0
  1010. package/.output/server/node_modules/zod/v4/locales/yo.js +107 -0
  1011. package/.output/server/node_modules/zod/v4/locales/zh-CN.js +109 -0
  1012. package/.output/server/node_modules/zod/v4/locales/zh-TW.js +107 -0
  1013. package/.output/server/node_modules/zod/v4/package.json +6 -0
  1014. package/.output/server/package.json +95 -0
  1015. package/README.md +46 -0
  1016. package/bin/cli.mjs +113 -0
  1017. package/bin/entry.cjs +84 -0
  1018. package/package.json +48 -0
@@ -0,0 +1,3695 @@
1
+ import { ZodError, ZodIssueCode, } from "./ZodError.js";
2
+ import { defaultErrorMap, getErrorMap } from "./errors.js";
3
+ import { errorUtil } from "./helpers/errorUtil.js";
4
+ import { DIRTY, INVALID, OK, ParseStatus, addIssueToContext, isAborted, isAsync, isDirty, isValid, makeIssue, } from "./helpers/parseUtil.js";
5
+ import { util, ZodParsedType, getParsedType } from "./helpers/util.js";
6
+ class ParseInputLazyPath {
7
+ constructor(parent, value, path, key) {
8
+ this._cachedPath = [];
9
+ this.parent = parent;
10
+ this.data = value;
11
+ this._path = path;
12
+ this._key = key;
13
+ }
14
+ get path() {
15
+ if (!this._cachedPath.length) {
16
+ if (Array.isArray(this._key)) {
17
+ this._cachedPath.push(...this._path, ...this._key);
18
+ }
19
+ else {
20
+ this._cachedPath.push(...this._path, this._key);
21
+ }
22
+ }
23
+ return this._cachedPath;
24
+ }
25
+ }
26
+ const handleResult = (ctx, result) => {
27
+ if (isValid(result)) {
28
+ return { success: true, data: result.value };
29
+ }
30
+ else {
31
+ if (!ctx.common.issues.length) {
32
+ throw new Error("Validation failed but no issues detected.");
33
+ }
34
+ return {
35
+ success: false,
36
+ get error() {
37
+ if (this._error)
38
+ return this._error;
39
+ const error = new ZodError(ctx.common.issues);
40
+ this._error = error;
41
+ return this._error;
42
+ },
43
+ };
44
+ }
45
+ };
46
+ function processCreateParams(params) {
47
+ if (!params)
48
+ return {};
49
+ const { errorMap, invalid_type_error, required_error, description } = params;
50
+ if (errorMap && (invalid_type_error || required_error)) {
51
+ throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);
52
+ }
53
+ if (errorMap)
54
+ return { errorMap: errorMap, description };
55
+ const customMap = (iss, ctx) => {
56
+ const { message } = params;
57
+ if (iss.code === "invalid_enum_value") {
58
+ return { message: message ?? ctx.defaultError };
59
+ }
60
+ if (typeof ctx.data === "undefined") {
61
+ return { message: message ?? required_error ?? ctx.defaultError };
62
+ }
63
+ if (iss.code !== "invalid_type")
64
+ return { message: ctx.defaultError };
65
+ return { message: message ?? invalid_type_error ?? ctx.defaultError };
66
+ };
67
+ return { errorMap: customMap, description };
68
+ }
69
+ export class ZodType {
70
+ get description() {
71
+ return this._def.description;
72
+ }
73
+ _getType(input) {
74
+ return getParsedType(input.data);
75
+ }
76
+ _getOrReturnCtx(input, ctx) {
77
+ return (ctx || {
78
+ common: input.parent.common,
79
+ data: input.data,
80
+ parsedType: getParsedType(input.data),
81
+ schemaErrorMap: this._def.errorMap,
82
+ path: input.path,
83
+ parent: input.parent,
84
+ });
85
+ }
86
+ _processInputParams(input) {
87
+ return {
88
+ status: new ParseStatus(),
89
+ ctx: {
90
+ common: input.parent.common,
91
+ data: input.data,
92
+ parsedType: getParsedType(input.data),
93
+ schemaErrorMap: this._def.errorMap,
94
+ path: input.path,
95
+ parent: input.parent,
96
+ },
97
+ };
98
+ }
99
+ _parseSync(input) {
100
+ const result = this._parse(input);
101
+ if (isAsync(result)) {
102
+ throw new Error("Synchronous parse encountered promise.");
103
+ }
104
+ return result;
105
+ }
106
+ _parseAsync(input) {
107
+ const result = this._parse(input);
108
+ return Promise.resolve(result);
109
+ }
110
+ parse(data, params) {
111
+ const result = this.safeParse(data, params);
112
+ if (result.success)
113
+ return result.data;
114
+ throw result.error;
115
+ }
116
+ safeParse(data, params) {
117
+ const ctx = {
118
+ common: {
119
+ issues: [],
120
+ async: params?.async ?? false,
121
+ contextualErrorMap: params?.errorMap,
122
+ },
123
+ path: params?.path || [],
124
+ schemaErrorMap: this._def.errorMap,
125
+ parent: null,
126
+ data,
127
+ parsedType: getParsedType(data),
128
+ };
129
+ const result = this._parseSync({ data, path: ctx.path, parent: ctx });
130
+ return handleResult(ctx, result);
131
+ }
132
+ "~validate"(data) {
133
+ const ctx = {
134
+ common: {
135
+ issues: [],
136
+ async: !!this["~standard"].async,
137
+ },
138
+ path: [],
139
+ schemaErrorMap: this._def.errorMap,
140
+ parent: null,
141
+ data,
142
+ parsedType: getParsedType(data),
143
+ };
144
+ if (!this["~standard"].async) {
145
+ try {
146
+ const result = this._parseSync({ data, path: [], parent: ctx });
147
+ return isValid(result)
148
+ ? {
149
+ value: result.value,
150
+ }
151
+ : {
152
+ issues: ctx.common.issues,
153
+ };
154
+ }
155
+ catch (err) {
156
+ if (err?.message?.toLowerCase()?.includes("encountered")) {
157
+ this["~standard"].async = true;
158
+ }
159
+ ctx.common = {
160
+ issues: [],
161
+ async: true,
162
+ };
163
+ }
164
+ }
165
+ return this._parseAsync({ data, path: [], parent: ctx }).then((result) => isValid(result)
166
+ ? {
167
+ value: result.value,
168
+ }
169
+ : {
170
+ issues: ctx.common.issues,
171
+ });
172
+ }
173
+ async parseAsync(data, params) {
174
+ const result = await this.safeParseAsync(data, params);
175
+ if (result.success)
176
+ return result.data;
177
+ throw result.error;
178
+ }
179
+ async safeParseAsync(data, params) {
180
+ const ctx = {
181
+ common: {
182
+ issues: [],
183
+ contextualErrorMap: params?.errorMap,
184
+ async: true,
185
+ },
186
+ path: params?.path || [],
187
+ schemaErrorMap: this._def.errorMap,
188
+ parent: null,
189
+ data,
190
+ parsedType: getParsedType(data),
191
+ };
192
+ const maybeAsyncResult = this._parse({ data, path: ctx.path, parent: ctx });
193
+ const result = await (isAsync(maybeAsyncResult) ? maybeAsyncResult : Promise.resolve(maybeAsyncResult));
194
+ return handleResult(ctx, result);
195
+ }
196
+ refine(check, message) {
197
+ const getIssueProperties = (val) => {
198
+ if (typeof message === "string" || typeof message === "undefined") {
199
+ return { message };
200
+ }
201
+ else if (typeof message === "function") {
202
+ return message(val);
203
+ }
204
+ else {
205
+ return message;
206
+ }
207
+ };
208
+ return this._refinement((val, ctx) => {
209
+ const result = check(val);
210
+ const setError = () => ctx.addIssue({
211
+ code: ZodIssueCode.custom,
212
+ ...getIssueProperties(val),
213
+ });
214
+ if (typeof Promise !== "undefined" && result instanceof Promise) {
215
+ return result.then((data) => {
216
+ if (!data) {
217
+ setError();
218
+ return false;
219
+ }
220
+ else {
221
+ return true;
222
+ }
223
+ });
224
+ }
225
+ if (!result) {
226
+ setError();
227
+ return false;
228
+ }
229
+ else {
230
+ return true;
231
+ }
232
+ });
233
+ }
234
+ refinement(check, refinementData) {
235
+ return this._refinement((val, ctx) => {
236
+ if (!check(val)) {
237
+ ctx.addIssue(typeof refinementData === "function" ? refinementData(val, ctx) : refinementData);
238
+ return false;
239
+ }
240
+ else {
241
+ return true;
242
+ }
243
+ });
244
+ }
245
+ _refinement(refinement) {
246
+ return new ZodEffects({
247
+ schema: this,
248
+ typeName: ZodFirstPartyTypeKind.ZodEffects,
249
+ effect: { type: "refinement", refinement },
250
+ });
251
+ }
252
+ superRefine(refinement) {
253
+ return this._refinement(refinement);
254
+ }
255
+ constructor(def) {
256
+ /** Alias of safeParseAsync */
257
+ this.spa = this.safeParseAsync;
258
+ this._def = def;
259
+ this.parse = this.parse.bind(this);
260
+ this.safeParse = this.safeParse.bind(this);
261
+ this.parseAsync = this.parseAsync.bind(this);
262
+ this.safeParseAsync = this.safeParseAsync.bind(this);
263
+ this.spa = this.spa.bind(this);
264
+ this.refine = this.refine.bind(this);
265
+ this.refinement = this.refinement.bind(this);
266
+ this.superRefine = this.superRefine.bind(this);
267
+ this.optional = this.optional.bind(this);
268
+ this.nullable = this.nullable.bind(this);
269
+ this.nullish = this.nullish.bind(this);
270
+ this.array = this.array.bind(this);
271
+ this.promise = this.promise.bind(this);
272
+ this.or = this.or.bind(this);
273
+ this.and = this.and.bind(this);
274
+ this.transform = this.transform.bind(this);
275
+ this.brand = this.brand.bind(this);
276
+ this.default = this.default.bind(this);
277
+ this.catch = this.catch.bind(this);
278
+ this.describe = this.describe.bind(this);
279
+ this.pipe = this.pipe.bind(this);
280
+ this.readonly = this.readonly.bind(this);
281
+ this.isNullable = this.isNullable.bind(this);
282
+ this.isOptional = this.isOptional.bind(this);
283
+ this["~standard"] = {
284
+ version: 1,
285
+ vendor: "zod",
286
+ validate: (data) => this["~validate"](data),
287
+ };
288
+ }
289
+ optional() {
290
+ return ZodOptional.create(this, this._def);
291
+ }
292
+ nullable() {
293
+ return ZodNullable.create(this, this._def);
294
+ }
295
+ nullish() {
296
+ return this.nullable().optional();
297
+ }
298
+ array() {
299
+ return ZodArray.create(this);
300
+ }
301
+ promise() {
302
+ return ZodPromise.create(this, this._def);
303
+ }
304
+ or(option) {
305
+ return ZodUnion.create([this, option], this._def);
306
+ }
307
+ and(incoming) {
308
+ return ZodIntersection.create(this, incoming, this._def);
309
+ }
310
+ transform(transform) {
311
+ return new ZodEffects({
312
+ ...processCreateParams(this._def),
313
+ schema: this,
314
+ typeName: ZodFirstPartyTypeKind.ZodEffects,
315
+ effect: { type: "transform", transform },
316
+ });
317
+ }
318
+ default(def) {
319
+ const defaultValueFunc = typeof def === "function" ? def : () => def;
320
+ return new ZodDefault({
321
+ ...processCreateParams(this._def),
322
+ innerType: this,
323
+ defaultValue: defaultValueFunc,
324
+ typeName: ZodFirstPartyTypeKind.ZodDefault,
325
+ });
326
+ }
327
+ brand() {
328
+ return new ZodBranded({
329
+ typeName: ZodFirstPartyTypeKind.ZodBranded,
330
+ type: this,
331
+ ...processCreateParams(this._def),
332
+ });
333
+ }
334
+ catch(def) {
335
+ const catchValueFunc = typeof def === "function" ? def : () => def;
336
+ return new ZodCatch({
337
+ ...processCreateParams(this._def),
338
+ innerType: this,
339
+ catchValue: catchValueFunc,
340
+ typeName: ZodFirstPartyTypeKind.ZodCatch,
341
+ });
342
+ }
343
+ describe(description) {
344
+ const This = this.constructor;
345
+ return new This({
346
+ ...this._def,
347
+ description,
348
+ });
349
+ }
350
+ pipe(target) {
351
+ return ZodPipeline.create(this, target);
352
+ }
353
+ readonly() {
354
+ return ZodReadonly.create(this);
355
+ }
356
+ isOptional() {
357
+ return this.safeParse(undefined).success;
358
+ }
359
+ isNullable() {
360
+ return this.safeParse(null).success;
361
+ }
362
+ }
363
+ const cuidRegex = /^c[^\s-]{8,}$/i;
364
+ const cuid2Regex = /^[0-9a-z]+$/;
365
+ const ulidRegex = /^[0-9A-HJKMNP-TV-Z]{26}$/i;
366
+ // const uuidRegex =
367
+ // /^([a-f0-9]{8}-[a-f0-9]{4}-[1-5][a-f0-9]{3}-[a-f0-9]{4}-[a-f0-9]{12}|00000000-0000-0000-0000-000000000000)$/i;
368
+ const uuidRegex = /^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i;
369
+ const nanoidRegex = /^[a-z0-9_-]{21}$/i;
370
+ const jwtRegex = /^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/;
371
+ const durationRegex = /^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/;
372
+ // from https://stackoverflow.com/a/46181/1550155
373
+ // old version: too slow, didn't support unicode
374
+ // const emailRegex = /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i;
375
+ //old email regex
376
+ // const emailRegex = /^(([^<>()[\].,;:\s@"]+(\.[^<>()[\].,;:\s@"]+)*)|(".+"))@((?!-)([^<>()[\].,;:\s@"]+\.)+[^<>()[\].,;:\s@"]{1,})[^-<>()[\].,;:\s@"]$/i;
377
+ // eslint-disable-next-line
378
+ // const emailRegex =
379
+ // /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\])|(\[IPv6:(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))\])|([A-Za-z0-9]([A-Za-z0-9-]*[A-Za-z0-9])*(\.[A-Za-z]{2,})+))$/;
380
+ // const emailRegex =
381
+ // /^[a-zA-Z0-9\.\!\#\$\%\&\'\*\+\/\=\?\^\_\`\{\|\}\~\-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
382
+ // const emailRegex =
383
+ // /^(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])$/i;
384
+ const emailRegex = /^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i;
385
+ // const emailRegex =
386
+ // /^[a-z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-z0-9-]+(?:\.[a-z0-9\-]+)*$/i;
387
+ // from https://thekevinscott.com/emojis-in-javascript/#writing-a-regular-expression
388
+ const _emojiRegex = `^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`;
389
+ let emojiRegex;
390
+ // faster, simpler, safer
391
+ const ipv4Regex = /^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/;
392
+ const ipv4CidrRegex = /^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/;
393
+ // const ipv6Regex =
394
+ // /^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/;
395
+ const ipv6Regex = /^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/;
396
+ const ipv6CidrRegex = /^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/;
397
+ // https://stackoverflow.com/questions/7860392/determine-if-string-is-in-base64-using-javascript
398
+ const base64Regex = /^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/;
399
+ // https://base64.guru/standards/base64url
400
+ const base64urlRegex = /^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/;
401
+ // simple
402
+ // const dateRegexSource = `\\d{4}-\\d{2}-\\d{2}`;
403
+ // no leap year validation
404
+ // const dateRegexSource = `\\d{4}-((0[13578]|10|12)-31|(0[13-9]|1[0-2])-30|(0[1-9]|1[0-2])-(0[1-9]|1\\d|2\\d))`;
405
+ // with leap year validation
406
+ const dateRegexSource = `((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))`;
407
+ const dateRegex = new RegExp(`^${dateRegexSource}$`);
408
+ function timeRegexSource(args) {
409
+ let secondsRegexSource = `[0-5]\\d`;
410
+ if (args.precision) {
411
+ secondsRegexSource = `${secondsRegexSource}\\.\\d{${args.precision}}`;
412
+ }
413
+ else if (args.precision == null) {
414
+ secondsRegexSource = `${secondsRegexSource}(\\.\\d+)?`;
415
+ }
416
+ const secondsQuantifier = args.precision ? "+" : "?"; // require seconds if precision is nonzero
417
+ return `([01]\\d|2[0-3]):[0-5]\\d(:${secondsRegexSource})${secondsQuantifier}`;
418
+ }
419
+ function timeRegex(args) {
420
+ return new RegExp(`^${timeRegexSource(args)}$`);
421
+ }
422
+ // Adapted from https://stackoverflow.com/a/3143231
423
+ export function datetimeRegex(args) {
424
+ let regex = `${dateRegexSource}T${timeRegexSource(args)}`;
425
+ const opts = [];
426
+ opts.push(args.local ? `Z?` : `Z`);
427
+ if (args.offset)
428
+ opts.push(`([+-]\\d{2}:?\\d{2})`);
429
+ regex = `${regex}(${opts.join("|")})`;
430
+ return new RegExp(`^${regex}$`);
431
+ }
432
+ function isValidIP(ip, version) {
433
+ if ((version === "v4" || !version) && ipv4Regex.test(ip)) {
434
+ return true;
435
+ }
436
+ if ((version === "v6" || !version) && ipv6Regex.test(ip)) {
437
+ return true;
438
+ }
439
+ return false;
440
+ }
441
+ function isValidJWT(jwt, alg) {
442
+ if (!jwtRegex.test(jwt))
443
+ return false;
444
+ try {
445
+ const [header] = jwt.split(".");
446
+ if (!header)
447
+ return false;
448
+ // Convert base64url to base64
449
+ const base64 = header
450
+ .replace(/-/g, "+")
451
+ .replace(/_/g, "/")
452
+ .padEnd(header.length + ((4 - (header.length % 4)) % 4), "=");
453
+ // @ts-ignore
454
+ const decoded = JSON.parse(atob(base64));
455
+ if (typeof decoded !== "object" || decoded === null)
456
+ return false;
457
+ if ("typ" in decoded && decoded?.typ !== "JWT")
458
+ return false;
459
+ if (!decoded.alg)
460
+ return false;
461
+ if (alg && decoded.alg !== alg)
462
+ return false;
463
+ return true;
464
+ }
465
+ catch {
466
+ return false;
467
+ }
468
+ }
469
+ function isValidCidr(ip, version) {
470
+ if ((version === "v4" || !version) && ipv4CidrRegex.test(ip)) {
471
+ return true;
472
+ }
473
+ if ((version === "v6" || !version) && ipv6CidrRegex.test(ip)) {
474
+ return true;
475
+ }
476
+ return false;
477
+ }
478
+ export class ZodString extends ZodType {
479
+ _parse(input) {
480
+ if (this._def.coerce) {
481
+ input.data = String(input.data);
482
+ }
483
+ const parsedType = this._getType(input);
484
+ if (parsedType !== ZodParsedType.string) {
485
+ const ctx = this._getOrReturnCtx(input);
486
+ addIssueToContext(ctx, {
487
+ code: ZodIssueCode.invalid_type,
488
+ expected: ZodParsedType.string,
489
+ received: ctx.parsedType,
490
+ });
491
+ return INVALID;
492
+ }
493
+ const status = new ParseStatus();
494
+ let ctx = undefined;
495
+ for (const check of this._def.checks) {
496
+ if (check.kind === "min") {
497
+ if (input.data.length < check.value) {
498
+ ctx = this._getOrReturnCtx(input, ctx);
499
+ addIssueToContext(ctx, {
500
+ code: ZodIssueCode.too_small,
501
+ minimum: check.value,
502
+ type: "string",
503
+ inclusive: true,
504
+ exact: false,
505
+ message: check.message,
506
+ });
507
+ status.dirty();
508
+ }
509
+ }
510
+ else if (check.kind === "max") {
511
+ if (input.data.length > check.value) {
512
+ ctx = this._getOrReturnCtx(input, ctx);
513
+ addIssueToContext(ctx, {
514
+ code: ZodIssueCode.too_big,
515
+ maximum: check.value,
516
+ type: "string",
517
+ inclusive: true,
518
+ exact: false,
519
+ message: check.message,
520
+ });
521
+ status.dirty();
522
+ }
523
+ }
524
+ else if (check.kind === "length") {
525
+ const tooBig = input.data.length > check.value;
526
+ const tooSmall = input.data.length < check.value;
527
+ if (tooBig || tooSmall) {
528
+ ctx = this._getOrReturnCtx(input, ctx);
529
+ if (tooBig) {
530
+ addIssueToContext(ctx, {
531
+ code: ZodIssueCode.too_big,
532
+ maximum: check.value,
533
+ type: "string",
534
+ inclusive: true,
535
+ exact: true,
536
+ message: check.message,
537
+ });
538
+ }
539
+ else if (tooSmall) {
540
+ addIssueToContext(ctx, {
541
+ code: ZodIssueCode.too_small,
542
+ minimum: check.value,
543
+ type: "string",
544
+ inclusive: true,
545
+ exact: true,
546
+ message: check.message,
547
+ });
548
+ }
549
+ status.dirty();
550
+ }
551
+ }
552
+ else if (check.kind === "email") {
553
+ if (!emailRegex.test(input.data)) {
554
+ ctx = this._getOrReturnCtx(input, ctx);
555
+ addIssueToContext(ctx, {
556
+ validation: "email",
557
+ code: ZodIssueCode.invalid_string,
558
+ message: check.message,
559
+ });
560
+ status.dirty();
561
+ }
562
+ }
563
+ else if (check.kind === "emoji") {
564
+ if (!emojiRegex) {
565
+ emojiRegex = new RegExp(_emojiRegex, "u");
566
+ }
567
+ if (!emojiRegex.test(input.data)) {
568
+ ctx = this._getOrReturnCtx(input, ctx);
569
+ addIssueToContext(ctx, {
570
+ validation: "emoji",
571
+ code: ZodIssueCode.invalid_string,
572
+ message: check.message,
573
+ });
574
+ status.dirty();
575
+ }
576
+ }
577
+ else if (check.kind === "uuid") {
578
+ if (!uuidRegex.test(input.data)) {
579
+ ctx = this._getOrReturnCtx(input, ctx);
580
+ addIssueToContext(ctx, {
581
+ validation: "uuid",
582
+ code: ZodIssueCode.invalid_string,
583
+ message: check.message,
584
+ });
585
+ status.dirty();
586
+ }
587
+ }
588
+ else if (check.kind === "nanoid") {
589
+ if (!nanoidRegex.test(input.data)) {
590
+ ctx = this._getOrReturnCtx(input, ctx);
591
+ addIssueToContext(ctx, {
592
+ validation: "nanoid",
593
+ code: ZodIssueCode.invalid_string,
594
+ message: check.message,
595
+ });
596
+ status.dirty();
597
+ }
598
+ }
599
+ else if (check.kind === "cuid") {
600
+ if (!cuidRegex.test(input.data)) {
601
+ ctx = this._getOrReturnCtx(input, ctx);
602
+ addIssueToContext(ctx, {
603
+ validation: "cuid",
604
+ code: ZodIssueCode.invalid_string,
605
+ message: check.message,
606
+ });
607
+ status.dirty();
608
+ }
609
+ }
610
+ else if (check.kind === "cuid2") {
611
+ if (!cuid2Regex.test(input.data)) {
612
+ ctx = this._getOrReturnCtx(input, ctx);
613
+ addIssueToContext(ctx, {
614
+ validation: "cuid2",
615
+ code: ZodIssueCode.invalid_string,
616
+ message: check.message,
617
+ });
618
+ status.dirty();
619
+ }
620
+ }
621
+ else if (check.kind === "ulid") {
622
+ if (!ulidRegex.test(input.data)) {
623
+ ctx = this._getOrReturnCtx(input, ctx);
624
+ addIssueToContext(ctx, {
625
+ validation: "ulid",
626
+ code: ZodIssueCode.invalid_string,
627
+ message: check.message,
628
+ });
629
+ status.dirty();
630
+ }
631
+ }
632
+ else if (check.kind === "url") {
633
+ try {
634
+ // @ts-ignore
635
+ new URL(input.data);
636
+ }
637
+ catch {
638
+ ctx = this._getOrReturnCtx(input, ctx);
639
+ addIssueToContext(ctx, {
640
+ validation: "url",
641
+ code: ZodIssueCode.invalid_string,
642
+ message: check.message,
643
+ });
644
+ status.dirty();
645
+ }
646
+ }
647
+ else if (check.kind === "regex") {
648
+ check.regex.lastIndex = 0;
649
+ const testResult = check.regex.test(input.data);
650
+ if (!testResult) {
651
+ ctx = this._getOrReturnCtx(input, ctx);
652
+ addIssueToContext(ctx, {
653
+ validation: "regex",
654
+ code: ZodIssueCode.invalid_string,
655
+ message: check.message,
656
+ });
657
+ status.dirty();
658
+ }
659
+ }
660
+ else if (check.kind === "trim") {
661
+ input.data = input.data.trim();
662
+ }
663
+ else if (check.kind === "includes") {
664
+ if (!input.data.includes(check.value, check.position)) {
665
+ ctx = this._getOrReturnCtx(input, ctx);
666
+ addIssueToContext(ctx, {
667
+ code: ZodIssueCode.invalid_string,
668
+ validation: { includes: check.value, position: check.position },
669
+ message: check.message,
670
+ });
671
+ status.dirty();
672
+ }
673
+ }
674
+ else if (check.kind === "toLowerCase") {
675
+ input.data = input.data.toLowerCase();
676
+ }
677
+ else if (check.kind === "toUpperCase") {
678
+ input.data = input.data.toUpperCase();
679
+ }
680
+ else if (check.kind === "startsWith") {
681
+ if (!input.data.startsWith(check.value)) {
682
+ ctx = this._getOrReturnCtx(input, ctx);
683
+ addIssueToContext(ctx, {
684
+ code: ZodIssueCode.invalid_string,
685
+ validation: { startsWith: check.value },
686
+ message: check.message,
687
+ });
688
+ status.dirty();
689
+ }
690
+ }
691
+ else if (check.kind === "endsWith") {
692
+ if (!input.data.endsWith(check.value)) {
693
+ ctx = this._getOrReturnCtx(input, ctx);
694
+ addIssueToContext(ctx, {
695
+ code: ZodIssueCode.invalid_string,
696
+ validation: { endsWith: check.value },
697
+ message: check.message,
698
+ });
699
+ status.dirty();
700
+ }
701
+ }
702
+ else if (check.kind === "datetime") {
703
+ const regex = datetimeRegex(check);
704
+ if (!regex.test(input.data)) {
705
+ ctx = this._getOrReturnCtx(input, ctx);
706
+ addIssueToContext(ctx, {
707
+ code: ZodIssueCode.invalid_string,
708
+ validation: "datetime",
709
+ message: check.message,
710
+ });
711
+ status.dirty();
712
+ }
713
+ }
714
+ else if (check.kind === "date") {
715
+ const regex = dateRegex;
716
+ if (!regex.test(input.data)) {
717
+ ctx = this._getOrReturnCtx(input, ctx);
718
+ addIssueToContext(ctx, {
719
+ code: ZodIssueCode.invalid_string,
720
+ validation: "date",
721
+ message: check.message,
722
+ });
723
+ status.dirty();
724
+ }
725
+ }
726
+ else if (check.kind === "time") {
727
+ const regex = timeRegex(check);
728
+ if (!regex.test(input.data)) {
729
+ ctx = this._getOrReturnCtx(input, ctx);
730
+ addIssueToContext(ctx, {
731
+ code: ZodIssueCode.invalid_string,
732
+ validation: "time",
733
+ message: check.message,
734
+ });
735
+ status.dirty();
736
+ }
737
+ }
738
+ else if (check.kind === "duration") {
739
+ if (!durationRegex.test(input.data)) {
740
+ ctx = this._getOrReturnCtx(input, ctx);
741
+ addIssueToContext(ctx, {
742
+ validation: "duration",
743
+ code: ZodIssueCode.invalid_string,
744
+ message: check.message,
745
+ });
746
+ status.dirty();
747
+ }
748
+ }
749
+ else if (check.kind === "ip") {
750
+ if (!isValidIP(input.data, check.version)) {
751
+ ctx = this._getOrReturnCtx(input, ctx);
752
+ addIssueToContext(ctx, {
753
+ validation: "ip",
754
+ code: ZodIssueCode.invalid_string,
755
+ message: check.message,
756
+ });
757
+ status.dirty();
758
+ }
759
+ }
760
+ else if (check.kind === "jwt") {
761
+ if (!isValidJWT(input.data, check.alg)) {
762
+ ctx = this._getOrReturnCtx(input, ctx);
763
+ addIssueToContext(ctx, {
764
+ validation: "jwt",
765
+ code: ZodIssueCode.invalid_string,
766
+ message: check.message,
767
+ });
768
+ status.dirty();
769
+ }
770
+ }
771
+ else if (check.kind === "cidr") {
772
+ if (!isValidCidr(input.data, check.version)) {
773
+ ctx = this._getOrReturnCtx(input, ctx);
774
+ addIssueToContext(ctx, {
775
+ validation: "cidr",
776
+ code: ZodIssueCode.invalid_string,
777
+ message: check.message,
778
+ });
779
+ status.dirty();
780
+ }
781
+ }
782
+ else if (check.kind === "base64") {
783
+ if (!base64Regex.test(input.data)) {
784
+ ctx = this._getOrReturnCtx(input, ctx);
785
+ addIssueToContext(ctx, {
786
+ validation: "base64",
787
+ code: ZodIssueCode.invalid_string,
788
+ message: check.message,
789
+ });
790
+ status.dirty();
791
+ }
792
+ }
793
+ else if (check.kind === "base64url") {
794
+ if (!base64urlRegex.test(input.data)) {
795
+ ctx = this._getOrReturnCtx(input, ctx);
796
+ addIssueToContext(ctx, {
797
+ validation: "base64url",
798
+ code: ZodIssueCode.invalid_string,
799
+ message: check.message,
800
+ });
801
+ status.dirty();
802
+ }
803
+ }
804
+ else {
805
+ util.assertNever(check);
806
+ }
807
+ }
808
+ return { status: status.value, value: input.data };
809
+ }
810
+ _regex(regex, validation, message) {
811
+ return this.refinement((data) => regex.test(data), {
812
+ validation,
813
+ code: ZodIssueCode.invalid_string,
814
+ ...errorUtil.errToObj(message),
815
+ });
816
+ }
817
+ _addCheck(check) {
818
+ return new ZodString({
819
+ ...this._def,
820
+ checks: [...this._def.checks, check],
821
+ });
822
+ }
823
+ email(message) {
824
+ return this._addCheck({ kind: "email", ...errorUtil.errToObj(message) });
825
+ }
826
+ url(message) {
827
+ return this._addCheck({ kind: "url", ...errorUtil.errToObj(message) });
828
+ }
829
+ emoji(message) {
830
+ return this._addCheck({ kind: "emoji", ...errorUtil.errToObj(message) });
831
+ }
832
+ uuid(message) {
833
+ return this._addCheck({ kind: "uuid", ...errorUtil.errToObj(message) });
834
+ }
835
+ nanoid(message) {
836
+ return this._addCheck({ kind: "nanoid", ...errorUtil.errToObj(message) });
837
+ }
838
+ cuid(message) {
839
+ return this._addCheck({ kind: "cuid", ...errorUtil.errToObj(message) });
840
+ }
841
+ cuid2(message) {
842
+ return this._addCheck({ kind: "cuid2", ...errorUtil.errToObj(message) });
843
+ }
844
+ ulid(message) {
845
+ return this._addCheck({ kind: "ulid", ...errorUtil.errToObj(message) });
846
+ }
847
+ base64(message) {
848
+ return this._addCheck({ kind: "base64", ...errorUtil.errToObj(message) });
849
+ }
850
+ base64url(message) {
851
+ // base64url encoding is a modification of base64 that can safely be used in URLs and filenames
852
+ return this._addCheck({
853
+ kind: "base64url",
854
+ ...errorUtil.errToObj(message),
855
+ });
856
+ }
857
+ jwt(options) {
858
+ return this._addCheck({ kind: "jwt", ...errorUtil.errToObj(options) });
859
+ }
860
+ ip(options) {
861
+ return this._addCheck({ kind: "ip", ...errorUtil.errToObj(options) });
862
+ }
863
+ cidr(options) {
864
+ return this._addCheck({ kind: "cidr", ...errorUtil.errToObj(options) });
865
+ }
866
+ datetime(options) {
867
+ if (typeof options === "string") {
868
+ return this._addCheck({
869
+ kind: "datetime",
870
+ precision: null,
871
+ offset: false,
872
+ local: false,
873
+ message: options,
874
+ });
875
+ }
876
+ return this._addCheck({
877
+ kind: "datetime",
878
+ precision: typeof options?.precision === "undefined" ? null : options?.precision,
879
+ offset: options?.offset ?? false,
880
+ local: options?.local ?? false,
881
+ ...errorUtil.errToObj(options?.message),
882
+ });
883
+ }
884
+ date(message) {
885
+ return this._addCheck({ kind: "date", message });
886
+ }
887
+ time(options) {
888
+ if (typeof options === "string") {
889
+ return this._addCheck({
890
+ kind: "time",
891
+ precision: null,
892
+ message: options,
893
+ });
894
+ }
895
+ return this._addCheck({
896
+ kind: "time",
897
+ precision: typeof options?.precision === "undefined" ? null : options?.precision,
898
+ ...errorUtil.errToObj(options?.message),
899
+ });
900
+ }
901
+ duration(message) {
902
+ return this._addCheck({ kind: "duration", ...errorUtil.errToObj(message) });
903
+ }
904
+ regex(regex, message) {
905
+ return this._addCheck({
906
+ kind: "regex",
907
+ regex: regex,
908
+ ...errorUtil.errToObj(message),
909
+ });
910
+ }
911
+ includes(value, options) {
912
+ return this._addCheck({
913
+ kind: "includes",
914
+ value: value,
915
+ position: options?.position,
916
+ ...errorUtil.errToObj(options?.message),
917
+ });
918
+ }
919
+ startsWith(value, message) {
920
+ return this._addCheck({
921
+ kind: "startsWith",
922
+ value: value,
923
+ ...errorUtil.errToObj(message),
924
+ });
925
+ }
926
+ endsWith(value, message) {
927
+ return this._addCheck({
928
+ kind: "endsWith",
929
+ value: value,
930
+ ...errorUtil.errToObj(message),
931
+ });
932
+ }
933
+ min(minLength, message) {
934
+ return this._addCheck({
935
+ kind: "min",
936
+ value: minLength,
937
+ ...errorUtil.errToObj(message),
938
+ });
939
+ }
940
+ max(maxLength, message) {
941
+ return this._addCheck({
942
+ kind: "max",
943
+ value: maxLength,
944
+ ...errorUtil.errToObj(message),
945
+ });
946
+ }
947
+ length(len, message) {
948
+ return this._addCheck({
949
+ kind: "length",
950
+ value: len,
951
+ ...errorUtil.errToObj(message),
952
+ });
953
+ }
954
+ /**
955
+ * Equivalent to `.min(1)`
956
+ */
957
+ nonempty(message) {
958
+ return this.min(1, errorUtil.errToObj(message));
959
+ }
960
+ trim() {
961
+ return new ZodString({
962
+ ...this._def,
963
+ checks: [...this._def.checks, { kind: "trim" }],
964
+ });
965
+ }
966
+ toLowerCase() {
967
+ return new ZodString({
968
+ ...this._def,
969
+ checks: [...this._def.checks, { kind: "toLowerCase" }],
970
+ });
971
+ }
972
+ toUpperCase() {
973
+ return new ZodString({
974
+ ...this._def,
975
+ checks: [...this._def.checks, { kind: "toUpperCase" }],
976
+ });
977
+ }
978
+ get isDatetime() {
979
+ return !!this._def.checks.find((ch) => ch.kind === "datetime");
980
+ }
981
+ get isDate() {
982
+ return !!this._def.checks.find((ch) => ch.kind === "date");
983
+ }
984
+ get isTime() {
985
+ return !!this._def.checks.find((ch) => ch.kind === "time");
986
+ }
987
+ get isDuration() {
988
+ return !!this._def.checks.find((ch) => ch.kind === "duration");
989
+ }
990
+ get isEmail() {
991
+ return !!this._def.checks.find((ch) => ch.kind === "email");
992
+ }
993
+ get isURL() {
994
+ return !!this._def.checks.find((ch) => ch.kind === "url");
995
+ }
996
+ get isEmoji() {
997
+ return !!this._def.checks.find((ch) => ch.kind === "emoji");
998
+ }
999
+ get isUUID() {
1000
+ return !!this._def.checks.find((ch) => ch.kind === "uuid");
1001
+ }
1002
+ get isNANOID() {
1003
+ return !!this._def.checks.find((ch) => ch.kind === "nanoid");
1004
+ }
1005
+ get isCUID() {
1006
+ return !!this._def.checks.find((ch) => ch.kind === "cuid");
1007
+ }
1008
+ get isCUID2() {
1009
+ return !!this._def.checks.find((ch) => ch.kind === "cuid2");
1010
+ }
1011
+ get isULID() {
1012
+ return !!this._def.checks.find((ch) => ch.kind === "ulid");
1013
+ }
1014
+ get isIP() {
1015
+ return !!this._def.checks.find((ch) => ch.kind === "ip");
1016
+ }
1017
+ get isCIDR() {
1018
+ return !!this._def.checks.find((ch) => ch.kind === "cidr");
1019
+ }
1020
+ get isBase64() {
1021
+ return !!this._def.checks.find((ch) => ch.kind === "base64");
1022
+ }
1023
+ get isBase64url() {
1024
+ // base64url encoding is a modification of base64 that can safely be used in URLs and filenames
1025
+ return !!this._def.checks.find((ch) => ch.kind === "base64url");
1026
+ }
1027
+ get minLength() {
1028
+ let min = null;
1029
+ for (const ch of this._def.checks) {
1030
+ if (ch.kind === "min") {
1031
+ if (min === null || ch.value > min)
1032
+ min = ch.value;
1033
+ }
1034
+ }
1035
+ return min;
1036
+ }
1037
+ get maxLength() {
1038
+ let max = null;
1039
+ for (const ch of this._def.checks) {
1040
+ if (ch.kind === "max") {
1041
+ if (max === null || ch.value < max)
1042
+ max = ch.value;
1043
+ }
1044
+ }
1045
+ return max;
1046
+ }
1047
+ }
1048
+ ZodString.create = (params) => {
1049
+ return new ZodString({
1050
+ checks: [],
1051
+ typeName: ZodFirstPartyTypeKind.ZodString,
1052
+ coerce: params?.coerce ?? false,
1053
+ ...processCreateParams(params),
1054
+ });
1055
+ };
1056
+ // https://stackoverflow.com/questions/3966484/why-does-modulus-operator-return-fractional-number-in-javascript/31711034#31711034
1057
+ function floatSafeRemainder(val, step) {
1058
+ const valDecCount = (val.toString().split(".")[1] || "").length;
1059
+ const stepDecCount = (step.toString().split(".")[1] || "").length;
1060
+ const decCount = valDecCount > stepDecCount ? valDecCount : stepDecCount;
1061
+ const valInt = Number.parseInt(val.toFixed(decCount).replace(".", ""));
1062
+ const stepInt = Number.parseInt(step.toFixed(decCount).replace(".", ""));
1063
+ return (valInt % stepInt) / 10 ** decCount;
1064
+ }
1065
+ export class ZodNumber extends ZodType {
1066
+ constructor() {
1067
+ super(...arguments);
1068
+ this.min = this.gte;
1069
+ this.max = this.lte;
1070
+ this.step = this.multipleOf;
1071
+ }
1072
+ _parse(input) {
1073
+ if (this._def.coerce) {
1074
+ input.data = Number(input.data);
1075
+ }
1076
+ const parsedType = this._getType(input);
1077
+ if (parsedType !== ZodParsedType.number) {
1078
+ const ctx = this._getOrReturnCtx(input);
1079
+ addIssueToContext(ctx, {
1080
+ code: ZodIssueCode.invalid_type,
1081
+ expected: ZodParsedType.number,
1082
+ received: ctx.parsedType,
1083
+ });
1084
+ return INVALID;
1085
+ }
1086
+ let ctx = undefined;
1087
+ const status = new ParseStatus();
1088
+ for (const check of this._def.checks) {
1089
+ if (check.kind === "int") {
1090
+ if (!util.isInteger(input.data)) {
1091
+ ctx = this._getOrReturnCtx(input, ctx);
1092
+ addIssueToContext(ctx, {
1093
+ code: ZodIssueCode.invalid_type,
1094
+ expected: "integer",
1095
+ received: "float",
1096
+ message: check.message,
1097
+ });
1098
+ status.dirty();
1099
+ }
1100
+ }
1101
+ else if (check.kind === "min") {
1102
+ const tooSmall = check.inclusive ? input.data < check.value : input.data <= check.value;
1103
+ if (tooSmall) {
1104
+ ctx = this._getOrReturnCtx(input, ctx);
1105
+ addIssueToContext(ctx, {
1106
+ code: ZodIssueCode.too_small,
1107
+ minimum: check.value,
1108
+ type: "number",
1109
+ inclusive: check.inclusive,
1110
+ exact: false,
1111
+ message: check.message,
1112
+ });
1113
+ status.dirty();
1114
+ }
1115
+ }
1116
+ else if (check.kind === "max") {
1117
+ const tooBig = check.inclusive ? input.data > check.value : input.data >= check.value;
1118
+ if (tooBig) {
1119
+ ctx = this._getOrReturnCtx(input, ctx);
1120
+ addIssueToContext(ctx, {
1121
+ code: ZodIssueCode.too_big,
1122
+ maximum: check.value,
1123
+ type: "number",
1124
+ inclusive: check.inclusive,
1125
+ exact: false,
1126
+ message: check.message,
1127
+ });
1128
+ status.dirty();
1129
+ }
1130
+ }
1131
+ else if (check.kind === "multipleOf") {
1132
+ if (floatSafeRemainder(input.data, check.value) !== 0) {
1133
+ ctx = this._getOrReturnCtx(input, ctx);
1134
+ addIssueToContext(ctx, {
1135
+ code: ZodIssueCode.not_multiple_of,
1136
+ multipleOf: check.value,
1137
+ message: check.message,
1138
+ });
1139
+ status.dirty();
1140
+ }
1141
+ }
1142
+ else if (check.kind === "finite") {
1143
+ if (!Number.isFinite(input.data)) {
1144
+ ctx = this._getOrReturnCtx(input, ctx);
1145
+ addIssueToContext(ctx, {
1146
+ code: ZodIssueCode.not_finite,
1147
+ message: check.message,
1148
+ });
1149
+ status.dirty();
1150
+ }
1151
+ }
1152
+ else {
1153
+ util.assertNever(check);
1154
+ }
1155
+ }
1156
+ return { status: status.value, value: input.data };
1157
+ }
1158
+ gte(value, message) {
1159
+ return this.setLimit("min", value, true, errorUtil.toString(message));
1160
+ }
1161
+ gt(value, message) {
1162
+ return this.setLimit("min", value, false, errorUtil.toString(message));
1163
+ }
1164
+ lte(value, message) {
1165
+ return this.setLimit("max", value, true, errorUtil.toString(message));
1166
+ }
1167
+ lt(value, message) {
1168
+ return this.setLimit("max", value, false, errorUtil.toString(message));
1169
+ }
1170
+ setLimit(kind, value, inclusive, message) {
1171
+ return new ZodNumber({
1172
+ ...this._def,
1173
+ checks: [
1174
+ ...this._def.checks,
1175
+ {
1176
+ kind,
1177
+ value,
1178
+ inclusive,
1179
+ message: errorUtil.toString(message),
1180
+ },
1181
+ ],
1182
+ });
1183
+ }
1184
+ _addCheck(check) {
1185
+ return new ZodNumber({
1186
+ ...this._def,
1187
+ checks: [...this._def.checks, check],
1188
+ });
1189
+ }
1190
+ int(message) {
1191
+ return this._addCheck({
1192
+ kind: "int",
1193
+ message: errorUtil.toString(message),
1194
+ });
1195
+ }
1196
+ positive(message) {
1197
+ return this._addCheck({
1198
+ kind: "min",
1199
+ value: 0,
1200
+ inclusive: false,
1201
+ message: errorUtil.toString(message),
1202
+ });
1203
+ }
1204
+ negative(message) {
1205
+ return this._addCheck({
1206
+ kind: "max",
1207
+ value: 0,
1208
+ inclusive: false,
1209
+ message: errorUtil.toString(message),
1210
+ });
1211
+ }
1212
+ nonpositive(message) {
1213
+ return this._addCheck({
1214
+ kind: "max",
1215
+ value: 0,
1216
+ inclusive: true,
1217
+ message: errorUtil.toString(message),
1218
+ });
1219
+ }
1220
+ nonnegative(message) {
1221
+ return this._addCheck({
1222
+ kind: "min",
1223
+ value: 0,
1224
+ inclusive: true,
1225
+ message: errorUtil.toString(message),
1226
+ });
1227
+ }
1228
+ multipleOf(value, message) {
1229
+ return this._addCheck({
1230
+ kind: "multipleOf",
1231
+ value: value,
1232
+ message: errorUtil.toString(message),
1233
+ });
1234
+ }
1235
+ finite(message) {
1236
+ return this._addCheck({
1237
+ kind: "finite",
1238
+ message: errorUtil.toString(message),
1239
+ });
1240
+ }
1241
+ safe(message) {
1242
+ return this._addCheck({
1243
+ kind: "min",
1244
+ inclusive: true,
1245
+ value: Number.MIN_SAFE_INTEGER,
1246
+ message: errorUtil.toString(message),
1247
+ })._addCheck({
1248
+ kind: "max",
1249
+ inclusive: true,
1250
+ value: Number.MAX_SAFE_INTEGER,
1251
+ message: errorUtil.toString(message),
1252
+ });
1253
+ }
1254
+ get minValue() {
1255
+ let min = null;
1256
+ for (const ch of this._def.checks) {
1257
+ if (ch.kind === "min") {
1258
+ if (min === null || ch.value > min)
1259
+ min = ch.value;
1260
+ }
1261
+ }
1262
+ return min;
1263
+ }
1264
+ get maxValue() {
1265
+ let max = null;
1266
+ for (const ch of this._def.checks) {
1267
+ if (ch.kind === "max") {
1268
+ if (max === null || ch.value < max)
1269
+ max = ch.value;
1270
+ }
1271
+ }
1272
+ return max;
1273
+ }
1274
+ get isInt() {
1275
+ return !!this._def.checks.find((ch) => ch.kind === "int" || (ch.kind === "multipleOf" && util.isInteger(ch.value)));
1276
+ }
1277
+ get isFinite() {
1278
+ let max = null;
1279
+ let min = null;
1280
+ for (const ch of this._def.checks) {
1281
+ if (ch.kind === "finite" || ch.kind === "int" || ch.kind === "multipleOf") {
1282
+ return true;
1283
+ }
1284
+ else if (ch.kind === "min") {
1285
+ if (min === null || ch.value > min)
1286
+ min = ch.value;
1287
+ }
1288
+ else if (ch.kind === "max") {
1289
+ if (max === null || ch.value < max)
1290
+ max = ch.value;
1291
+ }
1292
+ }
1293
+ return Number.isFinite(min) && Number.isFinite(max);
1294
+ }
1295
+ }
1296
+ ZodNumber.create = (params) => {
1297
+ return new ZodNumber({
1298
+ checks: [],
1299
+ typeName: ZodFirstPartyTypeKind.ZodNumber,
1300
+ coerce: params?.coerce || false,
1301
+ ...processCreateParams(params),
1302
+ });
1303
+ };
1304
+ export class ZodBigInt extends ZodType {
1305
+ constructor() {
1306
+ super(...arguments);
1307
+ this.min = this.gte;
1308
+ this.max = this.lte;
1309
+ }
1310
+ _parse(input) {
1311
+ if (this._def.coerce) {
1312
+ try {
1313
+ input.data = BigInt(input.data);
1314
+ }
1315
+ catch {
1316
+ return this._getInvalidInput(input);
1317
+ }
1318
+ }
1319
+ const parsedType = this._getType(input);
1320
+ if (parsedType !== ZodParsedType.bigint) {
1321
+ return this._getInvalidInput(input);
1322
+ }
1323
+ let ctx = undefined;
1324
+ const status = new ParseStatus();
1325
+ for (const check of this._def.checks) {
1326
+ if (check.kind === "min") {
1327
+ const tooSmall = check.inclusive ? input.data < check.value : input.data <= check.value;
1328
+ if (tooSmall) {
1329
+ ctx = this._getOrReturnCtx(input, ctx);
1330
+ addIssueToContext(ctx, {
1331
+ code: ZodIssueCode.too_small,
1332
+ type: "bigint",
1333
+ minimum: check.value,
1334
+ inclusive: check.inclusive,
1335
+ message: check.message,
1336
+ });
1337
+ status.dirty();
1338
+ }
1339
+ }
1340
+ else if (check.kind === "max") {
1341
+ const tooBig = check.inclusive ? input.data > check.value : input.data >= check.value;
1342
+ if (tooBig) {
1343
+ ctx = this._getOrReturnCtx(input, ctx);
1344
+ addIssueToContext(ctx, {
1345
+ code: ZodIssueCode.too_big,
1346
+ type: "bigint",
1347
+ maximum: check.value,
1348
+ inclusive: check.inclusive,
1349
+ message: check.message,
1350
+ });
1351
+ status.dirty();
1352
+ }
1353
+ }
1354
+ else if (check.kind === "multipleOf") {
1355
+ if (input.data % check.value !== BigInt(0)) {
1356
+ ctx = this._getOrReturnCtx(input, ctx);
1357
+ addIssueToContext(ctx, {
1358
+ code: ZodIssueCode.not_multiple_of,
1359
+ multipleOf: check.value,
1360
+ message: check.message,
1361
+ });
1362
+ status.dirty();
1363
+ }
1364
+ }
1365
+ else {
1366
+ util.assertNever(check);
1367
+ }
1368
+ }
1369
+ return { status: status.value, value: input.data };
1370
+ }
1371
+ _getInvalidInput(input) {
1372
+ const ctx = this._getOrReturnCtx(input);
1373
+ addIssueToContext(ctx, {
1374
+ code: ZodIssueCode.invalid_type,
1375
+ expected: ZodParsedType.bigint,
1376
+ received: ctx.parsedType,
1377
+ });
1378
+ return INVALID;
1379
+ }
1380
+ gte(value, message) {
1381
+ return this.setLimit("min", value, true, errorUtil.toString(message));
1382
+ }
1383
+ gt(value, message) {
1384
+ return this.setLimit("min", value, false, errorUtil.toString(message));
1385
+ }
1386
+ lte(value, message) {
1387
+ return this.setLimit("max", value, true, errorUtil.toString(message));
1388
+ }
1389
+ lt(value, message) {
1390
+ return this.setLimit("max", value, false, errorUtil.toString(message));
1391
+ }
1392
+ setLimit(kind, value, inclusive, message) {
1393
+ return new ZodBigInt({
1394
+ ...this._def,
1395
+ checks: [
1396
+ ...this._def.checks,
1397
+ {
1398
+ kind,
1399
+ value,
1400
+ inclusive,
1401
+ message: errorUtil.toString(message),
1402
+ },
1403
+ ],
1404
+ });
1405
+ }
1406
+ _addCheck(check) {
1407
+ return new ZodBigInt({
1408
+ ...this._def,
1409
+ checks: [...this._def.checks, check],
1410
+ });
1411
+ }
1412
+ positive(message) {
1413
+ return this._addCheck({
1414
+ kind: "min",
1415
+ value: BigInt(0),
1416
+ inclusive: false,
1417
+ message: errorUtil.toString(message),
1418
+ });
1419
+ }
1420
+ negative(message) {
1421
+ return this._addCheck({
1422
+ kind: "max",
1423
+ value: BigInt(0),
1424
+ inclusive: false,
1425
+ message: errorUtil.toString(message),
1426
+ });
1427
+ }
1428
+ nonpositive(message) {
1429
+ return this._addCheck({
1430
+ kind: "max",
1431
+ value: BigInt(0),
1432
+ inclusive: true,
1433
+ message: errorUtil.toString(message),
1434
+ });
1435
+ }
1436
+ nonnegative(message) {
1437
+ return this._addCheck({
1438
+ kind: "min",
1439
+ value: BigInt(0),
1440
+ inclusive: true,
1441
+ message: errorUtil.toString(message),
1442
+ });
1443
+ }
1444
+ multipleOf(value, message) {
1445
+ return this._addCheck({
1446
+ kind: "multipleOf",
1447
+ value,
1448
+ message: errorUtil.toString(message),
1449
+ });
1450
+ }
1451
+ get minValue() {
1452
+ let min = null;
1453
+ for (const ch of this._def.checks) {
1454
+ if (ch.kind === "min") {
1455
+ if (min === null || ch.value > min)
1456
+ min = ch.value;
1457
+ }
1458
+ }
1459
+ return min;
1460
+ }
1461
+ get maxValue() {
1462
+ let max = null;
1463
+ for (const ch of this._def.checks) {
1464
+ if (ch.kind === "max") {
1465
+ if (max === null || ch.value < max)
1466
+ max = ch.value;
1467
+ }
1468
+ }
1469
+ return max;
1470
+ }
1471
+ }
1472
+ ZodBigInt.create = (params) => {
1473
+ return new ZodBigInt({
1474
+ checks: [],
1475
+ typeName: ZodFirstPartyTypeKind.ZodBigInt,
1476
+ coerce: params?.coerce ?? false,
1477
+ ...processCreateParams(params),
1478
+ });
1479
+ };
1480
+ export class ZodBoolean extends ZodType {
1481
+ _parse(input) {
1482
+ if (this._def.coerce) {
1483
+ input.data = Boolean(input.data);
1484
+ }
1485
+ const parsedType = this._getType(input);
1486
+ if (parsedType !== ZodParsedType.boolean) {
1487
+ const ctx = this._getOrReturnCtx(input);
1488
+ addIssueToContext(ctx, {
1489
+ code: ZodIssueCode.invalid_type,
1490
+ expected: ZodParsedType.boolean,
1491
+ received: ctx.parsedType,
1492
+ });
1493
+ return INVALID;
1494
+ }
1495
+ return OK(input.data);
1496
+ }
1497
+ }
1498
+ ZodBoolean.create = (params) => {
1499
+ return new ZodBoolean({
1500
+ typeName: ZodFirstPartyTypeKind.ZodBoolean,
1501
+ coerce: params?.coerce || false,
1502
+ ...processCreateParams(params),
1503
+ });
1504
+ };
1505
+ export class ZodDate extends ZodType {
1506
+ _parse(input) {
1507
+ if (this._def.coerce) {
1508
+ input.data = new Date(input.data);
1509
+ }
1510
+ const parsedType = this._getType(input);
1511
+ if (parsedType !== ZodParsedType.date) {
1512
+ const ctx = this._getOrReturnCtx(input);
1513
+ addIssueToContext(ctx, {
1514
+ code: ZodIssueCode.invalid_type,
1515
+ expected: ZodParsedType.date,
1516
+ received: ctx.parsedType,
1517
+ });
1518
+ return INVALID;
1519
+ }
1520
+ if (Number.isNaN(input.data.getTime())) {
1521
+ const ctx = this._getOrReturnCtx(input);
1522
+ addIssueToContext(ctx, {
1523
+ code: ZodIssueCode.invalid_date,
1524
+ });
1525
+ return INVALID;
1526
+ }
1527
+ const status = new ParseStatus();
1528
+ let ctx = undefined;
1529
+ for (const check of this._def.checks) {
1530
+ if (check.kind === "min") {
1531
+ if (input.data.getTime() < check.value) {
1532
+ ctx = this._getOrReturnCtx(input, ctx);
1533
+ addIssueToContext(ctx, {
1534
+ code: ZodIssueCode.too_small,
1535
+ message: check.message,
1536
+ inclusive: true,
1537
+ exact: false,
1538
+ minimum: check.value,
1539
+ type: "date",
1540
+ });
1541
+ status.dirty();
1542
+ }
1543
+ }
1544
+ else if (check.kind === "max") {
1545
+ if (input.data.getTime() > check.value) {
1546
+ ctx = this._getOrReturnCtx(input, ctx);
1547
+ addIssueToContext(ctx, {
1548
+ code: ZodIssueCode.too_big,
1549
+ message: check.message,
1550
+ inclusive: true,
1551
+ exact: false,
1552
+ maximum: check.value,
1553
+ type: "date",
1554
+ });
1555
+ status.dirty();
1556
+ }
1557
+ }
1558
+ else {
1559
+ util.assertNever(check);
1560
+ }
1561
+ }
1562
+ return {
1563
+ status: status.value,
1564
+ value: new Date(input.data.getTime()),
1565
+ };
1566
+ }
1567
+ _addCheck(check) {
1568
+ return new ZodDate({
1569
+ ...this._def,
1570
+ checks: [...this._def.checks, check],
1571
+ });
1572
+ }
1573
+ min(minDate, message) {
1574
+ return this._addCheck({
1575
+ kind: "min",
1576
+ value: minDate.getTime(),
1577
+ message: errorUtil.toString(message),
1578
+ });
1579
+ }
1580
+ max(maxDate, message) {
1581
+ return this._addCheck({
1582
+ kind: "max",
1583
+ value: maxDate.getTime(),
1584
+ message: errorUtil.toString(message),
1585
+ });
1586
+ }
1587
+ get minDate() {
1588
+ let min = null;
1589
+ for (const ch of this._def.checks) {
1590
+ if (ch.kind === "min") {
1591
+ if (min === null || ch.value > min)
1592
+ min = ch.value;
1593
+ }
1594
+ }
1595
+ return min != null ? new Date(min) : null;
1596
+ }
1597
+ get maxDate() {
1598
+ let max = null;
1599
+ for (const ch of this._def.checks) {
1600
+ if (ch.kind === "max") {
1601
+ if (max === null || ch.value < max)
1602
+ max = ch.value;
1603
+ }
1604
+ }
1605
+ return max != null ? new Date(max) : null;
1606
+ }
1607
+ }
1608
+ ZodDate.create = (params) => {
1609
+ return new ZodDate({
1610
+ checks: [],
1611
+ coerce: params?.coerce || false,
1612
+ typeName: ZodFirstPartyTypeKind.ZodDate,
1613
+ ...processCreateParams(params),
1614
+ });
1615
+ };
1616
+ export class ZodSymbol extends ZodType {
1617
+ _parse(input) {
1618
+ const parsedType = this._getType(input);
1619
+ if (parsedType !== ZodParsedType.symbol) {
1620
+ const ctx = this._getOrReturnCtx(input);
1621
+ addIssueToContext(ctx, {
1622
+ code: ZodIssueCode.invalid_type,
1623
+ expected: ZodParsedType.symbol,
1624
+ received: ctx.parsedType,
1625
+ });
1626
+ return INVALID;
1627
+ }
1628
+ return OK(input.data);
1629
+ }
1630
+ }
1631
+ ZodSymbol.create = (params) => {
1632
+ return new ZodSymbol({
1633
+ typeName: ZodFirstPartyTypeKind.ZodSymbol,
1634
+ ...processCreateParams(params),
1635
+ });
1636
+ };
1637
+ export class ZodUndefined extends ZodType {
1638
+ _parse(input) {
1639
+ const parsedType = this._getType(input);
1640
+ if (parsedType !== ZodParsedType.undefined) {
1641
+ const ctx = this._getOrReturnCtx(input);
1642
+ addIssueToContext(ctx, {
1643
+ code: ZodIssueCode.invalid_type,
1644
+ expected: ZodParsedType.undefined,
1645
+ received: ctx.parsedType,
1646
+ });
1647
+ return INVALID;
1648
+ }
1649
+ return OK(input.data);
1650
+ }
1651
+ }
1652
+ ZodUndefined.create = (params) => {
1653
+ return new ZodUndefined({
1654
+ typeName: ZodFirstPartyTypeKind.ZodUndefined,
1655
+ ...processCreateParams(params),
1656
+ });
1657
+ };
1658
+ export class ZodNull extends ZodType {
1659
+ _parse(input) {
1660
+ const parsedType = this._getType(input);
1661
+ if (parsedType !== ZodParsedType.null) {
1662
+ const ctx = this._getOrReturnCtx(input);
1663
+ addIssueToContext(ctx, {
1664
+ code: ZodIssueCode.invalid_type,
1665
+ expected: ZodParsedType.null,
1666
+ received: ctx.parsedType,
1667
+ });
1668
+ return INVALID;
1669
+ }
1670
+ return OK(input.data);
1671
+ }
1672
+ }
1673
+ ZodNull.create = (params) => {
1674
+ return new ZodNull({
1675
+ typeName: ZodFirstPartyTypeKind.ZodNull,
1676
+ ...processCreateParams(params),
1677
+ });
1678
+ };
1679
+ export class ZodAny extends ZodType {
1680
+ constructor() {
1681
+ super(...arguments);
1682
+ // to prevent instances of other classes from extending ZodAny. this causes issues with catchall in ZodObject.
1683
+ this._any = true;
1684
+ }
1685
+ _parse(input) {
1686
+ return OK(input.data);
1687
+ }
1688
+ }
1689
+ ZodAny.create = (params) => {
1690
+ return new ZodAny({
1691
+ typeName: ZodFirstPartyTypeKind.ZodAny,
1692
+ ...processCreateParams(params),
1693
+ });
1694
+ };
1695
+ export class ZodUnknown extends ZodType {
1696
+ constructor() {
1697
+ super(...arguments);
1698
+ // required
1699
+ this._unknown = true;
1700
+ }
1701
+ _parse(input) {
1702
+ return OK(input.data);
1703
+ }
1704
+ }
1705
+ ZodUnknown.create = (params) => {
1706
+ return new ZodUnknown({
1707
+ typeName: ZodFirstPartyTypeKind.ZodUnknown,
1708
+ ...processCreateParams(params),
1709
+ });
1710
+ };
1711
+ export class ZodNever extends ZodType {
1712
+ _parse(input) {
1713
+ const ctx = this._getOrReturnCtx(input);
1714
+ addIssueToContext(ctx, {
1715
+ code: ZodIssueCode.invalid_type,
1716
+ expected: ZodParsedType.never,
1717
+ received: ctx.parsedType,
1718
+ });
1719
+ return INVALID;
1720
+ }
1721
+ }
1722
+ ZodNever.create = (params) => {
1723
+ return new ZodNever({
1724
+ typeName: ZodFirstPartyTypeKind.ZodNever,
1725
+ ...processCreateParams(params),
1726
+ });
1727
+ };
1728
+ export class ZodVoid extends ZodType {
1729
+ _parse(input) {
1730
+ const parsedType = this._getType(input);
1731
+ if (parsedType !== ZodParsedType.undefined) {
1732
+ const ctx = this._getOrReturnCtx(input);
1733
+ addIssueToContext(ctx, {
1734
+ code: ZodIssueCode.invalid_type,
1735
+ expected: ZodParsedType.void,
1736
+ received: ctx.parsedType,
1737
+ });
1738
+ return INVALID;
1739
+ }
1740
+ return OK(input.data);
1741
+ }
1742
+ }
1743
+ ZodVoid.create = (params) => {
1744
+ return new ZodVoid({
1745
+ typeName: ZodFirstPartyTypeKind.ZodVoid,
1746
+ ...processCreateParams(params),
1747
+ });
1748
+ };
1749
+ export class ZodArray extends ZodType {
1750
+ _parse(input) {
1751
+ const { ctx, status } = this._processInputParams(input);
1752
+ const def = this._def;
1753
+ if (ctx.parsedType !== ZodParsedType.array) {
1754
+ addIssueToContext(ctx, {
1755
+ code: ZodIssueCode.invalid_type,
1756
+ expected: ZodParsedType.array,
1757
+ received: ctx.parsedType,
1758
+ });
1759
+ return INVALID;
1760
+ }
1761
+ if (def.exactLength !== null) {
1762
+ const tooBig = ctx.data.length > def.exactLength.value;
1763
+ const tooSmall = ctx.data.length < def.exactLength.value;
1764
+ if (tooBig || tooSmall) {
1765
+ addIssueToContext(ctx, {
1766
+ code: tooBig ? ZodIssueCode.too_big : ZodIssueCode.too_small,
1767
+ minimum: (tooSmall ? def.exactLength.value : undefined),
1768
+ maximum: (tooBig ? def.exactLength.value : undefined),
1769
+ type: "array",
1770
+ inclusive: true,
1771
+ exact: true,
1772
+ message: def.exactLength.message,
1773
+ });
1774
+ status.dirty();
1775
+ }
1776
+ }
1777
+ if (def.minLength !== null) {
1778
+ if (ctx.data.length < def.minLength.value) {
1779
+ addIssueToContext(ctx, {
1780
+ code: ZodIssueCode.too_small,
1781
+ minimum: def.minLength.value,
1782
+ type: "array",
1783
+ inclusive: true,
1784
+ exact: false,
1785
+ message: def.minLength.message,
1786
+ });
1787
+ status.dirty();
1788
+ }
1789
+ }
1790
+ if (def.maxLength !== null) {
1791
+ if (ctx.data.length > def.maxLength.value) {
1792
+ addIssueToContext(ctx, {
1793
+ code: ZodIssueCode.too_big,
1794
+ maximum: def.maxLength.value,
1795
+ type: "array",
1796
+ inclusive: true,
1797
+ exact: false,
1798
+ message: def.maxLength.message,
1799
+ });
1800
+ status.dirty();
1801
+ }
1802
+ }
1803
+ if (ctx.common.async) {
1804
+ return Promise.all([...ctx.data].map((item, i) => {
1805
+ return def.type._parseAsync(new ParseInputLazyPath(ctx, item, ctx.path, i));
1806
+ })).then((result) => {
1807
+ return ParseStatus.mergeArray(status, result);
1808
+ });
1809
+ }
1810
+ const result = [...ctx.data].map((item, i) => {
1811
+ return def.type._parseSync(new ParseInputLazyPath(ctx, item, ctx.path, i));
1812
+ });
1813
+ return ParseStatus.mergeArray(status, result);
1814
+ }
1815
+ get element() {
1816
+ return this._def.type;
1817
+ }
1818
+ min(minLength, message) {
1819
+ return new ZodArray({
1820
+ ...this._def,
1821
+ minLength: { value: minLength, message: errorUtil.toString(message) },
1822
+ });
1823
+ }
1824
+ max(maxLength, message) {
1825
+ return new ZodArray({
1826
+ ...this._def,
1827
+ maxLength: { value: maxLength, message: errorUtil.toString(message) },
1828
+ });
1829
+ }
1830
+ length(len, message) {
1831
+ return new ZodArray({
1832
+ ...this._def,
1833
+ exactLength: { value: len, message: errorUtil.toString(message) },
1834
+ });
1835
+ }
1836
+ nonempty(message) {
1837
+ return this.min(1, message);
1838
+ }
1839
+ }
1840
+ ZodArray.create = (schema, params) => {
1841
+ return new ZodArray({
1842
+ type: schema,
1843
+ minLength: null,
1844
+ maxLength: null,
1845
+ exactLength: null,
1846
+ typeName: ZodFirstPartyTypeKind.ZodArray,
1847
+ ...processCreateParams(params),
1848
+ });
1849
+ };
1850
+ function deepPartialify(schema) {
1851
+ if (schema instanceof ZodObject) {
1852
+ const newShape = {};
1853
+ for (const key in schema.shape) {
1854
+ const fieldSchema = schema.shape[key];
1855
+ newShape[key] = ZodOptional.create(deepPartialify(fieldSchema));
1856
+ }
1857
+ return new ZodObject({
1858
+ ...schema._def,
1859
+ shape: () => newShape,
1860
+ });
1861
+ }
1862
+ else if (schema instanceof ZodArray) {
1863
+ return new ZodArray({
1864
+ ...schema._def,
1865
+ type: deepPartialify(schema.element),
1866
+ });
1867
+ }
1868
+ else if (schema instanceof ZodOptional) {
1869
+ return ZodOptional.create(deepPartialify(schema.unwrap()));
1870
+ }
1871
+ else if (schema instanceof ZodNullable) {
1872
+ return ZodNullable.create(deepPartialify(schema.unwrap()));
1873
+ }
1874
+ else if (schema instanceof ZodTuple) {
1875
+ return ZodTuple.create(schema.items.map((item) => deepPartialify(item)));
1876
+ }
1877
+ else {
1878
+ return schema;
1879
+ }
1880
+ }
1881
+ export class ZodObject extends ZodType {
1882
+ constructor() {
1883
+ super(...arguments);
1884
+ this._cached = null;
1885
+ /**
1886
+ * @deprecated In most cases, this is no longer needed - unknown properties are now silently stripped.
1887
+ * If you want to pass through unknown properties, use `.passthrough()` instead.
1888
+ */
1889
+ this.nonstrict = this.passthrough;
1890
+ // extend<
1891
+ // Augmentation extends ZodRawShape,
1892
+ // NewOutput extends util.flatten<{
1893
+ // [k in keyof Augmentation | keyof Output]: k extends keyof Augmentation
1894
+ // ? Augmentation[k]["_output"]
1895
+ // : k extends keyof Output
1896
+ // ? Output[k]
1897
+ // : never;
1898
+ // }>,
1899
+ // NewInput extends util.flatten<{
1900
+ // [k in keyof Augmentation | keyof Input]: k extends keyof Augmentation
1901
+ // ? Augmentation[k]["_input"]
1902
+ // : k extends keyof Input
1903
+ // ? Input[k]
1904
+ // : never;
1905
+ // }>
1906
+ // >(
1907
+ // augmentation: Augmentation
1908
+ // ): ZodObject<
1909
+ // extendShape<T, Augmentation>,
1910
+ // UnknownKeys,
1911
+ // Catchall,
1912
+ // NewOutput,
1913
+ // NewInput
1914
+ // > {
1915
+ // return new ZodObject({
1916
+ // ...this._def,
1917
+ // shape: () => ({
1918
+ // ...this._def.shape(),
1919
+ // ...augmentation,
1920
+ // }),
1921
+ // }) as any;
1922
+ // }
1923
+ /**
1924
+ * @deprecated Use `.extend` instead
1925
+ * */
1926
+ this.augment = this.extend;
1927
+ }
1928
+ _getCached() {
1929
+ if (this._cached !== null)
1930
+ return this._cached;
1931
+ const shape = this._def.shape();
1932
+ const keys = util.objectKeys(shape);
1933
+ this._cached = { shape, keys };
1934
+ return this._cached;
1935
+ }
1936
+ _parse(input) {
1937
+ const parsedType = this._getType(input);
1938
+ if (parsedType !== ZodParsedType.object) {
1939
+ const ctx = this._getOrReturnCtx(input);
1940
+ addIssueToContext(ctx, {
1941
+ code: ZodIssueCode.invalid_type,
1942
+ expected: ZodParsedType.object,
1943
+ received: ctx.parsedType,
1944
+ });
1945
+ return INVALID;
1946
+ }
1947
+ const { status, ctx } = this._processInputParams(input);
1948
+ const { shape, keys: shapeKeys } = this._getCached();
1949
+ const extraKeys = [];
1950
+ if (!(this._def.catchall instanceof ZodNever && this._def.unknownKeys === "strip")) {
1951
+ for (const key in ctx.data) {
1952
+ if (!shapeKeys.includes(key)) {
1953
+ extraKeys.push(key);
1954
+ }
1955
+ }
1956
+ }
1957
+ const pairs = [];
1958
+ for (const key of shapeKeys) {
1959
+ const keyValidator = shape[key];
1960
+ const value = ctx.data[key];
1961
+ pairs.push({
1962
+ key: { status: "valid", value: key },
1963
+ value: keyValidator._parse(new ParseInputLazyPath(ctx, value, ctx.path, key)),
1964
+ alwaysSet: key in ctx.data,
1965
+ });
1966
+ }
1967
+ if (this._def.catchall instanceof ZodNever) {
1968
+ const unknownKeys = this._def.unknownKeys;
1969
+ if (unknownKeys === "passthrough") {
1970
+ for (const key of extraKeys) {
1971
+ pairs.push({
1972
+ key: { status: "valid", value: key },
1973
+ value: { status: "valid", value: ctx.data[key] },
1974
+ });
1975
+ }
1976
+ }
1977
+ else if (unknownKeys === "strict") {
1978
+ if (extraKeys.length > 0) {
1979
+ addIssueToContext(ctx, {
1980
+ code: ZodIssueCode.unrecognized_keys,
1981
+ keys: extraKeys,
1982
+ });
1983
+ status.dirty();
1984
+ }
1985
+ }
1986
+ else if (unknownKeys === "strip") {
1987
+ }
1988
+ else {
1989
+ throw new Error(`Internal ZodObject error: invalid unknownKeys value.`);
1990
+ }
1991
+ }
1992
+ else {
1993
+ // run catchall validation
1994
+ const catchall = this._def.catchall;
1995
+ for (const key of extraKeys) {
1996
+ const value = ctx.data[key];
1997
+ pairs.push({
1998
+ key: { status: "valid", value: key },
1999
+ value: catchall._parse(new ParseInputLazyPath(ctx, value, ctx.path, key) //, ctx.child(key), value, getParsedType(value)
2000
+ ),
2001
+ alwaysSet: key in ctx.data,
2002
+ });
2003
+ }
2004
+ }
2005
+ if (ctx.common.async) {
2006
+ return Promise.resolve()
2007
+ .then(async () => {
2008
+ const syncPairs = [];
2009
+ for (const pair of pairs) {
2010
+ const key = await pair.key;
2011
+ const value = await pair.value;
2012
+ syncPairs.push({
2013
+ key,
2014
+ value,
2015
+ alwaysSet: pair.alwaysSet,
2016
+ });
2017
+ }
2018
+ return syncPairs;
2019
+ })
2020
+ .then((syncPairs) => {
2021
+ return ParseStatus.mergeObjectSync(status, syncPairs);
2022
+ });
2023
+ }
2024
+ else {
2025
+ return ParseStatus.mergeObjectSync(status, pairs);
2026
+ }
2027
+ }
2028
+ get shape() {
2029
+ return this._def.shape();
2030
+ }
2031
+ strict(message) {
2032
+ errorUtil.errToObj;
2033
+ return new ZodObject({
2034
+ ...this._def,
2035
+ unknownKeys: "strict",
2036
+ ...(message !== undefined
2037
+ ? {
2038
+ errorMap: (issue, ctx) => {
2039
+ const defaultError = this._def.errorMap?.(issue, ctx).message ?? ctx.defaultError;
2040
+ if (issue.code === "unrecognized_keys")
2041
+ return {
2042
+ message: errorUtil.errToObj(message).message ?? defaultError,
2043
+ };
2044
+ return {
2045
+ message: defaultError,
2046
+ };
2047
+ },
2048
+ }
2049
+ : {}),
2050
+ });
2051
+ }
2052
+ strip() {
2053
+ return new ZodObject({
2054
+ ...this._def,
2055
+ unknownKeys: "strip",
2056
+ });
2057
+ }
2058
+ passthrough() {
2059
+ return new ZodObject({
2060
+ ...this._def,
2061
+ unknownKeys: "passthrough",
2062
+ });
2063
+ }
2064
+ // const AugmentFactory =
2065
+ // <Def extends ZodObjectDef>(def: Def) =>
2066
+ // <Augmentation extends ZodRawShape>(
2067
+ // augmentation: Augmentation
2068
+ // ): ZodObject<
2069
+ // extendShape<ReturnType<Def["shape"]>, Augmentation>,
2070
+ // Def["unknownKeys"],
2071
+ // Def["catchall"]
2072
+ // > => {
2073
+ // return new ZodObject({
2074
+ // ...def,
2075
+ // shape: () => ({
2076
+ // ...def.shape(),
2077
+ // ...augmentation,
2078
+ // }),
2079
+ // }) as any;
2080
+ // };
2081
+ extend(augmentation) {
2082
+ return new ZodObject({
2083
+ ...this._def,
2084
+ shape: () => ({
2085
+ ...this._def.shape(),
2086
+ ...augmentation,
2087
+ }),
2088
+ });
2089
+ }
2090
+ /**
2091
+ * Prior to zod@1.0.12 there was a bug in the
2092
+ * inferred type of merged objects. Please
2093
+ * upgrade if you are experiencing issues.
2094
+ */
2095
+ merge(merging) {
2096
+ const merged = new ZodObject({
2097
+ unknownKeys: merging._def.unknownKeys,
2098
+ catchall: merging._def.catchall,
2099
+ shape: () => ({
2100
+ ...this._def.shape(),
2101
+ ...merging._def.shape(),
2102
+ }),
2103
+ typeName: ZodFirstPartyTypeKind.ZodObject,
2104
+ });
2105
+ return merged;
2106
+ }
2107
+ // merge<
2108
+ // Incoming extends AnyZodObject,
2109
+ // Augmentation extends Incoming["shape"],
2110
+ // NewOutput extends {
2111
+ // [k in keyof Augmentation | keyof Output]: k extends keyof Augmentation
2112
+ // ? Augmentation[k]["_output"]
2113
+ // : k extends keyof Output
2114
+ // ? Output[k]
2115
+ // : never;
2116
+ // },
2117
+ // NewInput extends {
2118
+ // [k in keyof Augmentation | keyof Input]: k extends keyof Augmentation
2119
+ // ? Augmentation[k]["_input"]
2120
+ // : k extends keyof Input
2121
+ // ? Input[k]
2122
+ // : never;
2123
+ // }
2124
+ // >(
2125
+ // merging: Incoming
2126
+ // ): ZodObject<
2127
+ // extendShape<T, ReturnType<Incoming["_def"]["shape"]>>,
2128
+ // Incoming["_def"]["unknownKeys"],
2129
+ // Incoming["_def"]["catchall"],
2130
+ // NewOutput,
2131
+ // NewInput
2132
+ // > {
2133
+ // const merged: any = new ZodObject({
2134
+ // unknownKeys: merging._def.unknownKeys,
2135
+ // catchall: merging._def.catchall,
2136
+ // shape: () =>
2137
+ // objectUtil.mergeShapes(this._def.shape(), merging._def.shape()),
2138
+ // typeName: ZodFirstPartyTypeKind.ZodObject,
2139
+ // }) as any;
2140
+ // return merged;
2141
+ // }
2142
+ setKey(key, schema) {
2143
+ return this.augment({ [key]: schema });
2144
+ }
2145
+ // merge<Incoming extends AnyZodObject>(
2146
+ // merging: Incoming
2147
+ // ): //ZodObject<T & Incoming["_shape"], UnknownKeys, Catchall> = (merging) => {
2148
+ // ZodObject<
2149
+ // extendShape<T, ReturnType<Incoming["_def"]["shape"]>>,
2150
+ // Incoming["_def"]["unknownKeys"],
2151
+ // Incoming["_def"]["catchall"]
2152
+ // > {
2153
+ // // const mergedShape = objectUtil.mergeShapes(
2154
+ // // this._def.shape(),
2155
+ // // merging._def.shape()
2156
+ // // );
2157
+ // const merged: any = new ZodObject({
2158
+ // unknownKeys: merging._def.unknownKeys,
2159
+ // catchall: merging._def.catchall,
2160
+ // shape: () =>
2161
+ // objectUtil.mergeShapes(this._def.shape(), merging._def.shape()),
2162
+ // typeName: ZodFirstPartyTypeKind.ZodObject,
2163
+ // }) as any;
2164
+ // return merged;
2165
+ // }
2166
+ catchall(index) {
2167
+ return new ZodObject({
2168
+ ...this._def,
2169
+ catchall: index,
2170
+ });
2171
+ }
2172
+ pick(mask) {
2173
+ const shape = {};
2174
+ for (const key of util.objectKeys(mask)) {
2175
+ if (mask[key] && this.shape[key]) {
2176
+ shape[key] = this.shape[key];
2177
+ }
2178
+ }
2179
+ return new ZodObject({
2180
+ ...this._def,
2181
+ shape: () => shape,
2182
+ });
2183
+ }
2184
+ omit(mask) {
2185
+ const shape = {};
2186
+ for (const key of util.objectKeys(this.shape)) {
2187
+ if (!mask[key]) {
2188
+ shape[key] = this.shape[key];
2189
+ }
2190
+ }
2191
+ return new ZodObject({
2192
+ ...this._def,
2193
+ shape: () => shape,
2194
+ });
2195
+ }
2196
+ /**
2197
+ * @deprecated
2198
+ */
2199
+ deepPartial() {
2200
+ return deepPartialify(this);
2201
+ }
2202
+ partial(mask) {
2203
+ const newShape = {};
2204
+ for (const key of util.objectKeys(this.shape)) {
2205
+ const fieldSchema = this.shape[key];
2206
+ if (mask && !mask[key]) {
2207
+ newShape[key] = fieldSchema;
2208
+ }
2209
+ else {
2210
+ newShape[key] = fieldSchema.optional();
2211
+ }
2212
+ }
2213
+ return new ZodObject({
2214
+ ...this._def,
2215
+ shape: () => newShape,
2216
+ });
2217
+ }
2218
+ required(mask) {
2219
+ const newShape = {};
2220
+ for (const key of util.objectKeys(this.shape)) {
2221
+ if (mask && !mask[key]) {
2222
+ newShape[key] = this.shape[key];
2223
+ }
2224
+ else {
2225
+ const fieldSchema = this.shape[key];
2226
+ let newField = fieldSchema;
2227
+ while (newField instanceof ZodOptional) {
2228
+ newField = newField._def.innerType;
2229
+ }
2230
+ newShape[key] = newField;
2231
+ }
2232
+ }
2233
+ return new ZodObject({
2234
+ ...this._def,
2235
+ shape: () => newShape,
2236
+ });
2237
+ }
2238
+ keyof() {
2239
+ return createZodEnum(util.objectKeys(this.shape));
2240
+ }
2241
+ }
2242
+ ZodObject.create = (shape, params) => {
2243
+ return new ZodObject({
2244
+ shape: () => shape,
2245
+ unknownKeys: "strip",
2246
+ catchall: ZodNever.create(),
2247
+ typeName: ZodFirstPartyTypeKind.ZodObject,
2248
+ ...processCreateParams(params),
2249
+ });
2250
+ };
2251
+ ZodObject.strictCreate = (shape, params) => {
2252
+ return new ZodObject({
2253
+ shape: () => shape,
2254
+ unknownKeys: "strict",
2255
+ catchall: ZodNever.create(),
2256
+ typeName: ZodFirstPartyTypeKind.ZodObject,
2257
+ ...processCreateParams(params),
2258
+ });
2259
+ };
2260
+ ZodObject.lazycreate = (shape, params) => {
2261
+ return new ZodObject({
2262
+ shape,
2263
+ unknownKeys: "strip",
2264
+ catchall: ZodNever.create(),
2265
+ typeName: ZodFirstPartyTypeKind.ZodObject,
2266
+ ...processCreateParams(params),
2267
+ });
2268
+ };
2269
+ export class ZodUnion extends ZodType {
2270
+ _parse(input) {
2271
+ const { ctx } = this._processInputParams(input);
2272
+ const options = this._def.options;
2273
+ function handleResults(results) {
2274
+ // return first issue-free validation if it exists
2275
+ for (const result of results) {
2276
+ if (result.result.status === "valid") {
2277
+ return result.result;
2278
+ }
2279
+ }
2280
+ for (const result of results) {
2281
+ if (result.result.status === "dirty") {
2282
+ // add issues from dirty option
2283
+ ctx.common.issues.push(...result.ctx.common.issues);
2284
+ return result.result;
2285
+ }
2286
+ }
2287
+ // return invalid
2288
+ const unionErrors = results.map((result) => new ZodError(result.ctx.common.issues));
2289
+ addIssueToContext(ctx, {
2290
+ code: ZodIssueCode.invalid_union,
2291
+ unionErrors,
2292
+ });
2293
+ return INVALID;
2294
+ }
2295
+ if (ctx.common.async) {
2296
+ return Promise.all(options.map(async (option) => {
2297
+ const childCtx = {
2298
+ ...ctx,
2299
+ common: {
2300
+ ...ctx.common,
2301
+ issues: [],
2302
+ },
2303
+ parent: null,
2304
+ };
2305
+ return {
2306
+ result: await option._parseAsync({
2307
+ data: ctx.data,
2308
+ path: ctx.path,
2309
+ parent: childCtx,
2310
+ }),
2311
+ ctx: childCtx,
2312
+ };
2313
+ })).then(handleResults);
2314
+ }
2315
+ else {
2316
+ let dirty = undefined;
2317
+ const issues = [];
2318
+ for (const option of options) {
2319
+ const childCtx = {
2320
+ ...ctx,
2321
+ common: {
2322
+ ...ctx.common,
2323
+ issues: [],
2324
+ },
2325
+ parent: null,
2326
+ };
2327
+ const result = option._parseSync({
2328
+ data: ctx.data,
2329
+ path: ctx.path,
2330
+ parent: childCtx,
2331
+ });
2332
+ if (result.status === "valid") {
2333
+ return result;
2334
+ }
2335
+ else if (result.status === "dirty" && !dirty) {
2336
+ dirty = { result, ctx: childCtx };
2337
+ }
2338
+ if (childCtx.common.issues.length) {
2339
+ issues.push(childCtx.common.issues);
2340
+ }
2341
+ }
2342
+ if (dirty) {
2343
+ ctx.common.issues.push(...dirty.ctx.common.issues);
2344
+ return dirty.result;
2345
+ }
2346
+ const unionErrors = issues.map((issues) => new ZodError(issues));
2347
+ addIssueToContext(ctx, {
2348
+ code: ZodIssueCode.invalid_union,
2349
+ unionErrors,
2350
+ });
2351
+ return INVALID;
2352
+ }
2353
+ }
2354
+ get options() {
2355
+ return this._def.options;
2356
+ }
2357
+ }
2358
+ ZodUnion.create = (types, params) => {
2359
+ return new ZodUnion({
2360
+ options: types,
2361
+ typeName: ZodFirstPartyTypeKind.ZodUnion,
2362
+ ...processCreateParams(params),
2363
+ });
2364
+ };
2365
+ /////////////////////////////////////////////////////
2366
+ /////////////////////////////////////////////////////
2367
+ ////////// //////////
2368
+ ////////// ZodDiscriminatedUnion //////////
2369
+ ////////// //////////
2370
+ /////////////////////////////////////////////////////
2371
+ /////////////////////////////////////////////////////
2372
+ const getDiscriminator = (type) => {
2373
+ if (type instanceof ZodLazy) {
2374
+ return getDiscriminator(type.schema);
2375
+ }
2376
+ else if (type instanceof ZodEffects) {
2377
+ return getDiscriminator(type.innerType());
2378
+ }
2379
+ else if (type instanceof ZodLiteral) {
2380
+ return [type.value];
2381
+ }
2382
+ else if (type instanceof ZodEnum) {
2383
+ return type.options;
2384
+ }
2385
+ else if (type instanceof ZodNativeEnum) {
2386
+ // eslint-disable-next-line ban/ban
2387
+ return util.objectValues(type.enum);
2388
+ }
2389
+ else if (type instanceof ZodDefault) {
2390
+ return getDiscriminator(type._def.innerType);
2391
+ }
2392
+ else if (type instanceof ZodUndefined) {
2393
+ return [undefined];
2394
+ }
2395
+ else if (type instanceof ZodNull) {
2396
+ return [null];
2397
+ }
2398
+ else if (type instanceof ZodOptional) {
2399
+ return [undefined, ...getDiscriminator(type.unwrap())];
2400
+ }
2401
+ else if (type instanceof ZodNullable) {
2402
+ return [null, ...getDiscriminator(type.unwrap())];
2403
+ }
2404
+ else if (type instanceof ZodBranded) {
2405
+ return getDiscriminator(type.unwrap());
2406
+ }
2407
+ else if (type instanceof ZodReadonly) {
2408
+ return getDiscriminator(type.unwrap());
2409
+ }
2410
+ else if (type instanceof ZodCatch) {
2411
+ return getDiscriminator(type._def.innerType);
2412
+ }
2413
+ else {
2414
+ return [];
2415
+ }
2416
+ };
2417
+ export class ZodDiscriminatedUnion extends ZodType {
2418
+ _parse(input) {
2419
+ const { ctx } = this._processInputParams(input);
2420
+ if (ctx.parsedType !== ZodParsedType.object) {
2421
+ addIssueToContext(ctx, {
2422
+ code: ZodIssueCode.invalid_type,
2423
+ expected: ZodParsedType.object,
2424
+ received: ctx.parsedType,
2425
+ });
2426
+ return INVALID;
2427
+ }
2428
+ const discriminator = this.discriminator;
2429
+ const discriminatorValue = ctx.data[discriminator];
2430
+ const option = this.optionsMap.get(discriminatorValue);
2431
+ if (!option) {
2432
+ addIssueToContext(ctx, {
2433
+ code: ZodIssueCode.invalid_union_discriminator,
2434
+ options: Array.from(this.optionsMap.keys()),
2435
+ path: [discriminator],
2436
+ });
2437
+ return INVALID;
2438
+ }
2439
+ if (ctx.common.async) {
2440
+ return option._parseAsync({
2441
+ data: ctx.data,
2442
+ path: ctx.path,
2443
+ parent: ctx,
2444
+ });
2445
+ }
2446
+ else {
2447
+ return option._parseSync({
2448
+ data: ctx.data,
2449
+ path: ctx.path,
2450
+ parent: ctx,
2451
+ });
2452
+ }
2453
+ }
2454
+ get discriminator() {
2455
+ return this._def.discriminator;
2456
+ }
2457
+ get options() {
2458
+ return this._def.options;
2459
+ }
2460
+ get optionsMap() {
2461
+ return this._def.optionsMap;
2462
+ }
2463
+ /**
2464
+ * The constructor of the discriminated union schema. Its behaviour is very similar to that of the normal z.union() constructor.
2465
+ * However, it only allows a union of objects, all of which need to share a discriminator property. This property must
2466
+ * have a different value for each object in the union.
2467
+ * @param discriminator the name of the discriminator property
2468
+ * @param types an array of object schemas
2469
+ * @param params
2470
+ */
2471
+ static create(discriminator, options, params) {
2472
+ // Get all the valid discriminator values
2473
+ const optionsMap = new Map();
2474
+ // try {
2475
+ for (const type of options) {
2476
+ const discriminatorValues = getDiscriminator(type.shape[discriminator]);
2477
+ if (!discriminatorValues.length) {
2478
+ throw new Error(`A discriminator value for key \`${discriminator}\` could not be extracted from all schema options`);
2479
+ }
2480
+ for (const value of discriminatorValues) {
2481
+ if (optionsMap.has(value)) {
2482
+ throw new Error(`Discriminator property ${String(discriminator)} has duplicate value ${String(value)}`);
2483
+ }
2484
+ optionsMap.set(value, type);
2485
+ }
2486
+ }
2487
+ return new ZodDiscriminatedUnion({
2488
+ typeName: ZodFirstPartyTypeKind.ZodDiscriminatedUnion,
2489
+ discriminator,
2490
+ options,
2491
+ optionsMap,
2492
+ ...processCreateParams(params),
2493
+ });
2494
+ }
2495
+ }
2496
+ function mergeValues(a, b) {
2497
+ const aType = getParsedType(a);
2498
+ const bType = getParsedType(b);
2499
+ if (a === b) {
2500
+ return { valid: true, data: a };
2501
+ }
2502
+ else if (aType === ZodParsedType.object && bType === ZodParsedType.object) {
2503
+ const bKeys = util.objectKeys(b);
2504
+ const sharedKeys = util.objectKeys(a).filter((key) => bKeys.indexOf(key) !== -1);
2505
+ const newObj = { ...a, ...b };
2506
+ for (const key of sharedKeys) {
2507
+ const sharedValue = mergeValues(a[key], b[key]);
2508
+ if (!sharedValue.valid) {
2509
+ return { valid: false };
2510
+ }
2511
+ newObj[key] = sharedValue.data;
2512
+ }
2513
+ return { valid: true, data: newObj };
2514
+ }
2515
+ else if (aType === ZodParsedType.array && bType === ZodParsedType.array) {
2516
+ if (a.length !== b.length) {
2517
+ return { valid: false };
2518
+ }
2519
+ const newArray = [];
2520
+ for (let index = 0; index < a.length; index++) {
2521
+ const itemA = a[index];
2522
+ const itemB = b[index];
2523
+ const sharedValue = mergeValues(itemA, itemB);
2524
+ if (!sharedValue.valid) {
2525
+ return { valid: false };
2526
+ }
2527
+ newArray.push(sharedValue.data);
2528
+ }
2529
+ return { valid: true, data: newArray };
2530
+ }
2531
+ else if (aType === ZodParsedType.date && bType === ZodParsedType.date && +a === +b) {
2532
+ return { valid: true, data: a };
2533
+ }
2534
+ else {
2535
+ return { valid: false };
2536
+ }
2537
+ }
2538
+ export class ZodIntersection extends ZodType {
2539
+ _parse(input) {
2540
+ const { status, ctx } = this._processInputParams(input);
2541
+ const handleParsed = (parsedLeft, parsedRight) => {
2542
+ if (isAborted(parsedLeft) || isAborted(parsedRight)) {
2543
+ return INVALID;
2544
+ }
2545
+ const merged = mergeValues(parsedLeft.value, parsedRight.value);
2546
+ if (!merged.valid) {
2547
+ addIssueToContext(ctx, {
2548
+ code: ZodIssueCode.invalid_intersection_types,
2549
+ });
2550
+ return INVALID;
2551
+ }
2552
+ if (isDirty(parsedLeft) || isDirty(parsedRight)) {
2553
+ status.dirty();
2554
+ }
2555
+ return { status: status.value, value: merged.data };
2556
+ };
2557
+ if (ctx.common.async) {
2558
+ return Promise.all([
2559
+ this._def.left._parseAsync({
2560
+ data: ctx.data,
2561
+ path: ctx.path,
2562
+ parent: ctx,
2563
+ }),
2564
+ this._def.right._parseAsync({
2565
+ data: ctx.data,
2566
+ path: ctx.path,
2567
+ parent: ctx,
2568
+ }),
2569
+ ]).then(([left, right]) => handleParsed(left, right));
2570
+ }
2571
+ else {
2572
+ return handleParsed(this._def.left._parseSync({
2573
+ data: ctx.data,
2574
+ path: ctx.path,
2575
+ parent: ctx,
2576
+ }), this._def.right._parseSync({
2577
+ data: ctx.data,
2578
+ path: ctx.path,
2579
+ parent: ctx,
2580
+ }));
2581
+ }
2582
+ }
2583
+ }
2584
+ ZodIntersection.create = (left, right, params) => {
2585
+ return new ZodIntersection({
2586
+ left: left,
2587
+ right: right,
2588
+ typeName: ZodFirstPartyTypeKind.ZodIntersection,
2589
+ ...processCreateParams(params),
2590
+ });
2591
+ };
2592
+ // type ZodTupleItems = [ZodTypeAny, ...ZodTypeAny[]];
2593
+ export class ZodTuple extends ZodType {
2594
+ _parse(input) {
2595
+ const { status, ctx } = this._processInputParams(input);
2596
+ if (ctx.parsedType !== ZodParsedType.array) {
2597
+ addIssueToContext(ctx, {
2598
+ code: ZodIssueCode.invalid_type,
2599
+ expected: ZodParsedType.array,
2600
+ received: ctx.parsedType,
2601
+ });
2602
+ return INVALID;
2603
+ }
2604
+ if (ctx.data.length < this._def.items.length) {
2605
+ addIssueToContext(ctx, {
2606
+ code: ZodIssueCode.too_small,
2607
+ minimum: this._def.items.length,
2608
+ inclusive: true,
2609
+ exact: false,
2610
+ type: "array",
2611
+ });
2612
+ return INVALID;
2613
+ }
2614
+ const rest = this._def.rest;
2615
+ if (!rest && ctx.data.length > this._def.items.length) {
2616
+ addIssueToContext(ctx, {
2617
+ code: ZodIssueCode.too_big,
2618
+ maximum: this._def.items.length,
2619
+ inclusive: true,
2620
+ exact: false,
2621
+ type: "array",
2622
+ });
2623
+ status.dirty();
2624
+ }
2625
+ const items = [...ctx.data]
2626
+ .map((item, itemIndex) => {
2627
+ const schema = this._def.items[itemIndex] || this._def.rest;
2628
+ if (!schema)
2629
+ return null;
2630
+ return schema._parse(new ParseInputLazyPath(ctx, item, ctx.path, itemIndex));
2631
+ })
2632
+ .filter((x) => !!x); // filter nulls
2633
+ if (ctx.common.async) {
2634
+ return Promise.all(items).then((results) => {
2635
+ return ParseStatus.mergeArray(status, results);
2636
+ });
2637
+ }
2638
+ else {
2639
+ return ParseStatus.mergeArray(status, items);
2640
+ }
2641
+ }
2642
+ get items() {
2643
+ return this._def.items;
2644
+ }
2645
+ rest(rest) {
2646
+ return new ZodTuple({
2647
+ ...this._def,
2648
+ rest,
2649
+ });
2650
+ }
2651
+ }
2652
+ ZodTuple.create = (schemas, params) => {
2653
+ if (!Array.isArray(schemas)) {
2654
+ throw new Error("You must pass an array of schemas to z.tuple([ ... ])");
2655
+ }
2656
+ return new ZodTuple({
2657
+ items: schemas,
2658
+ typeName: ZodFirstPartyTypeKind.ZodTuple,
2659
+ rest: null,
2660
+ ...processCreateParams(params),
2661
+ });
2662
+ };
2663
+ export class ZodRecord extends ZodType {
2664
+ get keySchema() {
2665
+ return this._def.keyType;
2666
+ }
2667
+ get valueSchema() {
2668
+ return this._def.valueType;
2669
+ }
2670
+ _parse(input) {
2671
+ const { status, ctx } = this._processInputParams(input);
2672
+ if (ctx.parsedType !== ZodParsedType.object) {
2673
+ addIssueToContext(ctx, {
2674
+ code: ZodIssueCode.invalid_type,
2675
+ expected: ZodParsedType.object,
2676
+ received: ctx.parsedType,
2677
+ });
2678
+ return INVALID;
2679
+ }
2680
+ const pairs = [];
2681
+ const keyType = this._def.keyType;
2682
+ const valueType = this._def.valueType;
2683
+ for (const key in ctx.data) {
2684
+ pairs.push({
2685
+ key: keyType._parse(new ParseInputLazyPath(ctx, key, ctx.path, key)),
2686
+ value: valueType._parse(new ParseInputLazyPath(ctx, ctx.data[key], ctx.path, key)),
2687
+ alwaysSet: key in ctx.data,
2688
+ });
2689
+ }
2690
+ if (ctx.common.async) {
2691
+ return ParseStatus.mergeObjectAsync(status, pairs);
2692
+ }
2693
+ else {
2694
+ return ParseStatus.mergeObjectSync(status, pairs);
2695
+ }
2696
+ }
2697
+ get element() {
2698
+ return this._def.valueType;
2699
+ }
2700
+ static create(first, second, third) {
2701
+ if (second instanceof ZodType) {
2702
+ return new ZodRecord({
2703
+ keyType: first,
2704
+ valueType: second,
2705
+ typeName: ZodFirstPartyTypeKind.ZodRecord,
2706
+ ...processCreateParams(third),
2707
+ });
2708
+ }
2709
+ return new ZodRecord({
2710
+ keyType: ZodString.create(),
2711
+ valueType: first,
2712
+ typeName: ZodFirstPartyTypeKind.ZodRecord,
2713
+ ...processCreateParams(second),
2714
+ });
2715
+ }
2716
+ }
2717
+ export class ZodMap extends ZodType {
2718
+ get keySchema() {
2719
+ return this._def.keyType;
2720
+ }
2721
+ get valueSchema() {
2722
+ return this._def.valueType;
2723
+ }
2724
+ _parse(input) {
2725
+ const { status, ctx } = this._processInputParams(input);
2726
+ if (ctx.parsedType !== ZodParsedType.map) {
2727
+ addIssueToContext(ctx, {
2728
+ code: ZodIssueCode.invalid_type,
2729
+ expected: ZodParsedType.map,
2730
+ received: ctx.parsedType,
2731
+ });
2732
+ return INVALID;
2733
+ }
2734
+ const keyType = this._def.keyType;
2735
+ const valueType = this._def.valueType;
2736
+ const pairs = [...ctx.data.entries()].map(([key, value], index) => {
2737
+ return {
2738
+ key: keyType._parse(new ParseInputLazyPath(ctx, key, ctx.path, [index, "key"])),
2739
+ value: valueType._parse(new ParseInputLazyPath(ctx, value, ctx.path, [index, "value"])),
2740
+ };
2741
+ });
2742
+ if (ctx.common.async) {
2743
+ const finalMap = new Map();
2744
+ return Promise.resolve().then(async () => {
2745
+ for (const pair of pairs) {
2746
+ const key = await pair.key;
2747
+ const value = await pair.value;
2748
+ if (key.status === "aborted" || value.status === "aborted") {
2749
+ return INVALID;
2750
+ }
2751
+ if (key.status === "dirty" || value.status === "dirty") {
2752
+ status.dirty();
2753
+ }
2754
+ finalMap.set(key.value, value.value);
2755
+ }
2756
+ return { status: status.value, value: finalMap };
2757
+ });
2758
+ }
2759
+ else {
2760
+ const finalMap = new Map();
2761
+ for (const pair of pairs) {
2762
+ const key = pair.key;
2763
+ const value = pair.value;
2764
+ if (key.status === "aborted" || value.status === "aborted") {
2765
+ return INVALID;
2766
+ }
2767
+ if (key.status === "dirty" || value.status === "dirty") {
2768
+ status.dirty();
2769
+ }
2770
+ finalMap.set(key.value, value.value);
2771
+ }
2772
+ return { status: status.value, value: finalMap };
2773
+ }
2774
+ }
2775
+ }
2776
+ ZodMap.create = (keyType, valueType, params) => {
2777
+ return new ZodMap({
2778
+ valueType,
2779
+ keyType,
2780
+ typeName: ZodFirstPartyTypeKind.ZodMap,
2781
+ ...processCreateParams(params),
2782
+ });
2783
+ };
2784
+ export class ZodSet extends ZodType {
2785
+ _parse(input) {
2786
+ const { status, ctx } = this._processInputParams(input);
2787
+ if (ctx.parsedType !== ZodParsedType.set) {
2788
+ addIssueToContext(ctx, {
2789
+ code: ZodIssueCode.invalid_type,
2790
+ expected: ZodParsedType.set,
2791
+ received: ctx.parsedType,
2792
+ });
2793
+ return INVALID;
2794
+ }
2795
+ const def = this._def;
2796
+ if (def.minSize !== null) {
2797
+ if (ctx.data.size < def.minSize.value) {
2798
+ addIssueToContext(ctx, {
2799
+ code: ZodIssueCode.too_small,
2800
+ minimum: def.minSize.value,
2801
+ type: "set",
2802
+ inclusive: true,
2803
+ exact: false,
2804
+ message: def.minSize.message,
2805
+ });
2806
+ status.dirty();
2807
+ }
2808
+ }
2809
+ if (def.maxSize !== null) {
2810
+ if (ctx.data.size > def.maxSize.value) {
2811
+ addIssueToContext(ctx, {
2812
+ code: ZodIssueCode.too_big,
2813
+ maximum: def.maxSize.value,
2814
+ type: "set",
2815
+ inclusive: true,
2816
+ exact: false,
2817
+ message: def.maxSize.message,
2818
+ });
2819
+ status.dirty();
2820
+ }
2821
+ }
2822
+ const valueType = this._def.valueType;
2823
+ function finalizeSet(elements) {
2824
+ const parsedSet = new Set();
2825
+ for (const element of elements) {
2826
+ if (element.status === "aborted")
2827
+ return INVALID;
2828
+ if (element.status === "dirty")
2829
+ status.dirty();
2830
+ parsedSet.add(element.value);
2831
+ }
2832
+ return { status: status.value, value: parsedSet };
2833
+ }
2834
+ const elements = [...ctx.data.values()].map((item, i) => valueType._parse(new ParseInputLazyPath(ctx, item, ctx.path, i)));
2835
+ if (ctx.common.async) {
2836
+ return Promise.all(elements).then((elements) => finalizeSet(elements));
2837
+ }
2838
+ else {
2839
+ return finalizeSet(elements);
2840
+ }
2841
+ }
2842
+ min(minSize, message) {
2843
+ return new ZodSet({
2844
+ ...this._def,
2845
+ minSize: { value: minSize, message: errorUtil.toString(message) },
2846
+ });
2847
+ }
2848
+ max(maxSize, message) {
2849
+ return new ZodSet({
2850
+ ...this._def,
2851
+ maxSize: { value: maxSize, message: errorUtil.toString(message) },
2852
+ });
2853
+ }
2854
+ size(size, message) {
2855
+ return this.min(size, message).max(size, message);
2856
+ }
2857
+ nonempty(message) {
2858
+ return this.min(1, message);
2859
+ }
2860
+ }
2861
+ ZodSet.create = (valueType, params) => {
2862
+ return new ZodSet({
2863
+ valueType,
2864
+ minSize: null,
2865
+ maxSize: null,
2866
+ typeName: ZodFirstPartyTypeKind.ZodSet,
2867
+ ...processCreateParams(params),
2868
+ });
2869
+ };
2870
+ export class ZodFunction extends ZodType {
2871
+ constructor() {
2872
+ super(...arguments);
2873
+ this.validate = this.implement;
2874
+ }
2875
+ _parse(input) {
2876
+ const { ctx } = this._processInputParams(input);
2877
+ if (ctx.parsedType !== ZodParsedType.function) {
2878
+ addIssueToContext(ctx, {
2879
+ code: ZodIssueCode.invalid_type,
2880
+ expected: ZodParsedType.function,
2881
+ received: ctx.parsedType,
2882
+ });
2883
+ return INVALID;
2884
+ }
2885
+ function makeArgsIssue(args, error) {
2886
+ return makeIssue({
2887
+ data: args,
2888
+ path: ctx.path,
2889
+ errorMaps: [ctx.common.contextualErrorMap, ctx.schemaErrorMap, getErrorMap(), defaultErrorMap].filter((x) => !!x),
2890
+ issueData: {
2891
+ code: ZodIssueCode.invalid_arguments,
2892
+ argumentsError: error,
2893
+ },
2894
+ });
2895
+ }
2896
+ function makeReturnsIssue(returns, error) {
2897
+ return makeIssue({
2898
+ data: returns,
2899
+ path: ctx.path,
2900
+ errorMaps: [ctx.common.contextualErrorMap, ctx.schemaErrorMap, getErrorMap(), defaultErrorMap].filter((x) => !!x),
2901
+ issueData: {
2902
+ code: ZodIssueCode.invalid_return_type,
2903
+ returnTypeError: error,
2904
+ },
2905
+ });
2906
+ }
2907
+ const params = { errorMap: ctx.common.contextualErrorMap };
2908
+ const fn = ctx.data;
2909
+ if (this._def.returns instanceof ZodPromise) {
2910
+ // Would love a way to avoid disabling this rule, but we need
2911
+ // an alias (using an arrow function was what caused 2651).
2912
+ // eslint-disable-next-line @typescript-eslint/no-this-alias
2913
+ const me = this;
2914
+ return OK(async function (...args) {
2915
+ const error = new ZodError([]);
2916
+ const parsedArgs = await me._def.args.parseAsync(args, params).catch((e) => {
2917
+ error.addIssue(makeArgsIssue(args, e));
2918
+ throw error;
2919
+ });
2920
+ const result = await Reflect.apply(fn, this, parsedArgs);
2921
+ const parsedReturns = await me._def.returns._def.type
2922
+ .parseAsync(result, params)
2923
+ .catch((e) => {
2924
+ error.addIssue(makeReturnsIssue(result, e));
2925
+ throw error;
2926
+ });
2927
+ return parsedReturns;
2928
+ });
2929
+ }
2930
+ else {
2931
+ // Would love a way to avoid disabling this rule, but we need
2932
+ // an alias (using an arrow function was what caused 2651).
2933
+ // eslint-disable-next-line @typescript-eslint/no-this-alias
2934
+ const me = this;
2935
+ return OK(function (...args) {
2936
+ const parsedArgs = me._def.args.safeParse(args, params);
2937
+ if (!parsedArgs.success) {
2938
+ throw new ZodError([makeArgsIssue(args, parsedArgs.error)]);
2939
+ }
2940
+ const result = Reflect.apply(fn, this, parsedArgs.data);
2941
+ const parsedReturns = me._def.returns.safeParse(result, params);
2942
+ if (!parsedReturns.success) {
2943
+ throw new ZodError([makeReturnsIssue(result, parsedReturns.error)]);
2944
+ }
2945
+ return parsedReturns.data;
2946
+ });
2947
+ }
2948
+ }
2949
+ parameters() {
2950
+ return this._def.args;
2951
+ }
2952
+ returnType() {
2953
+ return this._def.returns;
2954
+ }
2955
+ args(...items) {
2956
+ return new ZodFunction({
2957
+ ...this._def,
2958
+ args: ZodTuple.create(items).rest(ZodUnknown.create()),
2959
+ });
2960
+ }
2961
+ returns(returnType) {
2962
+ return new ZodFunction({
2963
+ ...this._def,
2964
+ returns: returnType,
2965
+ });
2966
+ }
2967
+ implement(func) {
2968
+ const validatedFunc = this.parse(func);
2969
+ return validatedFunc;
2970
+ }
2971
+ strictImplement(func) {
2972
+ const validatedFunc = this.parse(func);
2973
+ return validatedFunc;
2974
+ }
2975
+ static create(args, returns, params) {
2976
+ return new ZodFunction({
2977
+ args: (args ? args : ZodTuple.create([]).rest(ZodUnknown.create())),
2978
+ returns: returns || ZodUnknown.create(),
2979
+ typeName: ZodFirstPartyTypeKind.ZodFunction,
2980
+ ...processCreateParams(params),
2981
+ });
2982
+ }
2983
+ }
2984
+ export class ZodLazy extends ZodType {
2985
+ get schema() {
2986
+ return this._def.getter();
2987
+ }
2988
+ _parse(input) {
2989
+ const { ctx } = this._processInputParams(input);
2990
+ const lazySchema = this._def.getter();
2991
+ return lazySchema._parse({ data: ctx.data, path: ctx.path, parent: ctx });
2992
+ }
2993
+ }
2994
+ ZodLazy.create = (getter, params) => {
2995
+ return new ZodLazy({
2996
+ getter: getter,
2997
+ typeName: ZodFirstPartyTypeKind.ZodLazy,
2998
+ ...processCreateParams(params),
2999
+ });
3000
+ };
3001
+ export class ZodLiteral extends ZodType {
3002
+ _parse(input) {
3003
+ if (input.data !== this._def.value) {
3004
+ const ctx = this._getOrReturnCtx(input);
3005
+ addIssueToContext(ctx, {
3006
+ received: ctx.data,
3007
+ code: ZodIssueCode.invalid_literal,
3008
+ expected: this._def.value,
3009
+ });
3010
+ return INVALID;
3011
+ }
3012
+ return { status: "valid", value: input.data };
3013
+ }
3014
+ get value() {
3015
+ return this._def.value;
3016
+ }
3017
+ }
3018
+ ZodLiteral.create = (value, params) => {
3019
+ return new ZodLiteral({
3020
+ value: value,
3021
+ typeName: ZodFirstPartyTypeKind.ZodLiteral,
3022
+ ...processCreateParams(params),
3023
+ });
3024
+ };
3025
+ function createZodEnum(values, params) {
3026
+ return new ZodEnum({
3027
+ values,
3028
+ typeName: ZodFirstPartyTypeKind.ZodEnum,
3029
+ ...processCreateParams(params),
3030
+ });
3031
+ }
3032
+ export class ZodEnum extends ZodType {
3033
+ _parse(input) {
3034
+ if (typeof input.data !== "string") {
3035
+ const ctx = this._getOrReturnCtx(input);
3036
+ const expectedValues = this._def.values;
3037
+ addIssueToContext(ctx, {
3038
+ expected: util.joinValues(expectedValues),
3039
+ received: ctx.parsedType,
3040
+ code: ZodIssueCode.invalid_type,
3041
+ });
3042
+ return INVALID;
3043
+ }
3044
+ if (!this._cache) {
3045
+ this._cache = new Set(this._def.values);
3046
+ }
3047
+ if (!this._cache.has(input.data)) {
3048
+ const ctx = this._getOrReturnCtx(input);
3049
+ const expectedValues = this._def.values;
3050
+ addIssueToContext(ctx, {
3051
+ received: ctx.data,
3052
+ code: ZodIssueCode.invalid_enum_value,
3053
+ options: expectedValues,
3054
+ });
3055
+ return INVALID;
3056
+ }
3057
+ return OK(input.data);
3058
+ }
3059
+ get options() {
3060
+ return this._def.values;
3061
+ }
3062
+ get enum() {
3063
+ const enumValues = {};
3064
+ for (const val of this._def.values) {
3065
+ enumValues[val] = val;
3066
+ }
3067
+ return enumValues;
3068
+ }
3069
+ get Values() {
3070
+ const enumValues = {};
3071
+ for (const val of this._def.values) {
3072
+ enumValues[val] = val;
3073
+ }
3074
+ return enumValues;
3075
+ }
3076
+ get Enum() {
3077
+ const enumValues = {};
3078
+ for (const val of this._def.values) {
3079
+ enumValues[val] = val;
3080
+ }
3081
+ return enumValues;
3082
+ }
3083
+ extract(values, newDef = this._def) {
3084
+ return ZodEnum.create(values, {
3085
+ ...this._def,
3086
+ ...newDef,
3087
+ });
3088
+ }
3089
+ exclude(values, newDef = this._def) {
3090
+ return ZodEnum.create(this.options.filter((opt) => !values.includes(opt)), {
3091
+ ...this._def,
3092
+ ...newDef,
3093
+ });
3094
+ }
3095
+ }
3096
+ ZodEnum.create = createZodEnum;
3097
+ export class ZodNativeEnum extends ZodType {
3098
+ _parse(input) {
3099
+ const nativeEnumValues = util.getValidEnumValues(this._def.values);
3100
+ const ctx = this._getOrReturnCtx(input);
3101
+ if (ctx.parsedType !== ZodParsedType.string && ctx.parsedType !== ZodParsedType.number) {
3102
+ const expectedValues = util.objectValues(nativeEnumValues);
3103
+ addIssueToContext(ctx, {
3104
+ expected: util.joinValues(expectedValues),
3105
+ received: ctx.parsedType,
3106
+ code: ZodIssueCode.invalid_type,
3107
+ });
3108
+ return INVALID;
3109
+ }
3110
+ if (!this._cache) {
3111
+ this._cache = new Set(util.getValidEnumValues(this._def.values));
3112
+ }
3113
+ if (!this._cache.has(input.data)) {
3114
+ const expectedValues = util.objectValues(nativeEnumValues);
3115
+ addIssueToContext(ctx, {
3116
+ received: ctx.data,
3117
+ code: ZodIssueCode.invalid_enum_value,
3118
+ options: expectedValues,
3119
+ });
3120
+ return INVALID;
3121
+ }
3122
+ return OK(input.data);
3123
+ }
3124
+ get enum() {
3125
+ return this._def.values;
3126
+ }
3127
+ }
3128
+ ZodNativeEnum.create = (values, params) => {
3129
+ return new ZodNativeEnum({
3130
+ values: values,
3131
+ typeName: ZodFirstPartyTypeKind.ZodNativeEnum,
3132
+ ...processCreateParams(params),
3133
+ });
3134
+ };
3135
+ export class ZodPromise extends ZodType {
3136
+ unwrap() {
3137
+ return this._def.type;
3138
+ }
3139
+ _parse(input) {
3140
+ const { ctx } = this._processInputParams(input);
3141
+ if (ctx.parsedType !== ZodParsedType.promise && ctx.common.async === false) {
3142
+ addIssueToContext(ctx, {
3143
+ code: ZodIssueCode.invalid_type,
3144
+ expected: ZodParsedType.promise,
3145
+ received: ctx.parsedType,
3146
+ });
3147
+ return INVALID;
3148
+ }
3149
+ const promisified = ctx.parsedType === ZodParsedType.promise ? ctx.data : Promise.resolve(ctx.data);
3150
+ return OK(promisified.then((data) => {
3151
+ return this._def.type.parseAsync(data, {
3152
+ path: ctx.path,
3153
+ errorMap: ctx.common.contextualErrorMap,
3154
+ });
3155
+ }));
3156
+ }
3157
+ }
3158
+ ZodPromise.create = (schema, params) => {
3159
+ return new ZodPromise({
3160
+ type: schema,
3161
+ typeName: ZodFirstPartyTypeKind.ZodPromise,
3162
+ ...processCreateParams(params),
3163
+ });
3164
+ };
3165
+ export class ZodEffects extends ZodType {
3166
+ innerType() {
3167
+ return this._def.schema;
3168
+ }
3169
+ sourceType() {
3170
+ return this._def.schema._def.typeName === ZodFirstPartyTypeKind.ZodEffects
3171
+ ? this._def.schema.sourceType()
3172
+ : this._def.schema;
3173
+ }
3174
+ _parse(input) {
3175
+ const { status, ctx } = this._processInputParams(input);
3176
+ const effect = this._def.effect || null;
3177
+ const checkCtx = {
3178
+ addIssue: (arg) => {
3179
+ addIssueToContext(ctx, arg);
3180
+ if (arg.fatal) {
3181
+ status.abort();
3182
+ }
3183
+ else {
3184
+ status.dirty();
3185
+ }
3186
+ },
3187
+ get path() {
3188
+ return ctx.path;
3189
+ },
3190
+ };
3191
+ checkCtx.addIssue = checkCtx.addIssue.bind(checkCtx);
3192
+ if (effect.type === "preprocess") {
3193
+ const processed = effect.transform(ctx.data, checkCtx);
3194
+ if (ctx.common.async) {
3195
+ return Promise.resolve(processed).then(async (processed) => {
3196
+ if (status.value === "aborted")
3197
+ return INVALID;
3198
+ const result = await this._def.schema._parseAsync({
3199
+ data: processed,
3200
+ path: ctx.path,
3201
+ parent: ctx,
3202
+ });
3203
+ if (result.status === "aborted")
3204
+ return INVALID;
3205
+ if (result.status === "dirty")
3206
+ return DIRTY(result.value);
3207
+ if (status.value === "dirty")
3208
+ return DIRTY(result.value);
3209
+ return result;
3210
+ });
3211
+ }
3212
+ else {
3213
+ if (status.value === "aborted")
3214
+ return INVALID;
3215
+ const result = this._def.schema._parseSync({
3216
+ data: processed,
3217
+ path: ctx.path,
3218
+ parent: ctx,
3219
+ });
3220
+ if (result.status === "aborted")
3221
+ return INVALID;
3222
+ if (result.status === "dirty")
3223
+ return DIRTY(result.value);
3224
+ if (status.value === "dirty")
3225
+ return DIRTY(result.value);
3226
+ return result;
3227
+ }
3228
+ }
3229
+ if (effect.type === "refinement") {
3230
+ const executeRefinement = (acc) => {
3231
+ const result = effect.refinement(acc, checkCtx);
3232
+ if (ctx.common.async) {
3233
+ return Promise.resolve(result);
3234
+ }
3235
+ if (result instanceof Promise) {
3236
+ throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");
3237
+ }
3238
+ return acc;
3239
+ };
3240
+ if (ctx.common.async === false) {
3241
+ const inner = this._def.schema._parseSync({
3242
+ data: ctx.data,
3243
+ path: ctx.path,
3244
+ parent: ctx,
3245
+ });
3246
+ if (inner.status === "aborted")
3247
+ return INVALID;
3248
+ if (inner.status === "dirty")
3249
+ status.dirty();
3250
+ // return value is ignored
3251
+ executeRefinement(inner.value);
3252
+ return { status: status.value, value: inner.value };
3253
+ }
3254
+ else {
3255
+ return this._def.schema._parseAsync({ data: ctx.data, path: ctx.path, parent: ctx }).then((inner) => {
3256
+ if (inner.status === "aborted")
3257
+ return INVALID;
3258
+ if (inner.status === "dirty")
3259
+ status.dirty();
3260
+ return executeRefinement(inner.value).then(() => {
3261
+ return { status: status.value, value: inner.value };
3262
+ });
3263
+ });
3264
+ }
3265
+ }
3266
+ if (effect.type === "transform") {
3267
+ if (ctx.common.async === false) {
3268
+ const base = this._def.schema._parseSync({
3269
+ data: ctx.data,
3270
+ path: ctx.path,
3271
+ parent: ctx,
3272
+ });
3273
+ if (!isValid(base))
3274
+ return INVALID;
3275
+ const result = effect.transform(base.value, checkCtx);
3276
+ if (result instanceof Promise) {
3277
+ throw new Error(`Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.`);
3278
+ }
3279
+ return { status: status.value, value: result };
3280
+ }
3281
+ else {
3282
+ return this._def.schema._parseAsync({ data: ctx.data, path: ctx.path, parent: ctx }).then((base) => {
3283
+ if (!isValid(base))
3284
+ return INVALID;
3285
+ return Promise.resolve(effect.transform(base.value, checkCtx)).then((result) => ({
3286
+ status: status.value,
3287
+ value: result,
3288
+ }));
3289
+ });
3290
+ }
3291
+ }
3292
+ util.assertNever(effect);
3293
+ }
3294
+ }
3295
+ ZodEffects.create = (schema, effect, params) => {
3296
+ return new ZodEffects({
3297
+ schema,
3298
+ typeName: ZodFirstPartyTypeKind.ZodEffects,
3299
+ effect,
3300
+ ...processCreateParams(params),
3301
+ });
3302
+ };
3303
+ ZodEffects.createWithPreprocess = (preprocess, schema, params) => {
3304
+ return new ZodEffects({
3305
+ schema,
3306
+ effect: { type: "preprocess", transform: preprocess },
3307
+ typeName: ZodFirstPartyTypeKind.ZodEffects,
3308
+ ...processCreateParams(params),
3309
+ });
3310
+ };
3311
+ export { ZodEffects as ZodTransformer };
3312
+ export class ZodOptional extends ZodType {
3313
+ _parse(input) {
3314
+ const parsedType = this._getType(input);
3315
+ if (parsedType === ZodParsedType.undefined) {
3316
+ return OK(undefined);
3317
+ }
3318
+ return this._def.innerType._parse(input);
3319
+ }
3320
+ unwrap() {
3321
+ return this._def.innerType;
3322
+ }
3323
+ }
3324
+ ZodOptional.create = (type, params) => {
3325
+ return new ZodOptional({
3326
+ innerType: type,
3327
+ typeName: ZodFirstPartyTypeKind.ZodOptional,
3328
+ ...processCreateParams(params),
3329
+ });
3330
+ };
3331
+ export class ZodNullable extends ZodType {
3332
+ _parse(input) {
3333
+ const parsedType = this._getType(input);
3334
+ if (parsedType === ZodParsedType.null) {
3335
+ return OK(null);
3336
+ }
3337
+ return this._def.innerType._parse(input);
3338
+ }
3339
+ unwrap() {
3340
+ return this._def.innerType;
3341
+ }
3342
+ }
3343
+ ZodNullable.create = (type, params) => {
3344
+ return new ZodNullable({
3345
+ innerType: type,
3346
+ typeName: ZodFirstPartyTypeKind.ZodNullable,
3347
+ ...processCreateParams(params),
3348
+ });
3349
+ };
3350
+ export class ZodDefault extends ZodType {
3351
+ _parse(input) {
3352
+ const { ctx } = this._processInputParams(input);
3353
+ let data = ctx.data;
3354
+ if (ctx.parsedType === ZodParsedType.undefined) {
3355
+ data = this._def.defaultValue();
3356
+ }
3357
+ return this._def.innerType._parse({
3358
+ data,
3359
+ path: ctx.path,
3360
+ parent: ctx,
3361
+ });
3362
+ }
3363
+ removeDefault() {
3364
+ return this._def.innerType;
3365
+ }
3366
+ }
3367
+ ZodDefault.create = (type, params) => {
3368
+ return new ZodDefault({
3369
+ innerType: type,
3370
+ typeName: ZodFirstPartyTypeKind.ZodDefault,
3371
+ defaultValue: typeof params.default === "function" ? params.default : () => params.default,
3372
+ ...processCreateParams(params),
3373
+ });
3374
+ };
3375
+ export class ZodCatch extends ZodType {
3376
+ _parse(input) {
3377
+ const { ctx } = this._processInputParams(input);
3378
+ // newCtx is used to not collect issues from inner types in ctx
3379
+ const newCtx = {
3380
+ ...ctx,
3381
+ common: {
3382
+ ...ctx.common,
3383
+ issues: [],
3384
+ },
3385
+ };
3386
+ const result = this._def.innerType._parse({
3387
+ data: newCtx.data,
3388
+ path: newCtx.path,
3389
+ parent: {
3390
+ ...newCtx,
3391
+ },
3392
+ });
3393
+ if (isAsync(result)) {
3394
+ return result.then((result) => {
3395
+ return {
3396
+ status: "valid",
3397
+ value: result.status === "valid"
3398
+ ? result.value
3399
+ : this._def.catchValue({
3400
+ get error() {
3401
+ return new ZodError(newCtx.common.issues);
3402
+ },
3403
+ input: newCtx.data,
3404
+ }),
3405
+ };
3406
+ });
3407
+ }
3408
+ else {
3409
+ return {
3410
+ status: "valid",
3411
+ value: result.status === "valid"
3412
+ ? result.value
3413
+ : this._def.catchValue({
3414
+ get error() {
3415
+ return new ZodError(newCtx.common.issues);
3416
+ },
3417
+ input: newCtx.data,
3418
+ }),
3419
+ };
3420
+ }
3421
+ }
3422
+ removeCatch() {
3423
+ return this._def.innerType;
3424
+ }
3425
+ }
3426
+ ZodCatch.create = (type, params) => {
3427
+ return new ZodCatch({
3428
+ innerType: type,
3429
+ typeName: ZodFirstPartyTypeKind.ZodCatch,
3430
+ catchValue: typeof params.catch === "function" ? params.catch : () => params.catch,
3431
+ ...processCreateParams(params),
3432
+ });
3433
+ };
3434
+ export class ZodNaN extends ZodType {
3435
+ _parse(input) {
3436
+ const parsedType = this._getType(input);
3437
+ if (parsedType !== ZodParsedType.nan) {
3438
+ const ctx = this._getOrReturnCtx(input);
3439
+ addIssueToContext(ctx, {
3440
+ code: ZodIssueCode.invalid_type,
3441
+ expected: ZodParsedType.nan,
3442
+ received: ctx.parsedType,
3443
+ });
3444
+ return INVALID;
3445
+ }
3446
+ return { status: "valid", value: input.data };
3447
+ }
3448
+ }
3449
+ ZodNaN.create = (params) => {
3450
+ return new ZodNaN({
3451
+ typeName: ZodFirstPartyTypeKind.ZodNaN,
3452
+ ...processCreateParams(params),
3453
+ });
3454
+ };
3455
+ export const BRAND = Symbol("zod_brand");
3456
+ export class ZodBranded extends ZodType {
3457
+ _parse(input) {
3458
+ const { ctx } = this._processInputParams(input);
3459
+ const data = ctx.data;
3460
+ return this._def.type._parse({
3461
+ data,
3462
+ path: ctx.path,
3463
+ parent: ctx,
3464
+ });
3465
+ }
3466
+ unwrap() {
3467
+ return this._def.type;
3468
+ }
3469
+ }
3470
+ export class ZodPipeline extends ZodType {
3471
+ _parse(input) {
3472
+ const { status, ctx } = this._processInputParams(input);
3473
+ if (ctx.common.async) {
3474
+ const handleAsync = async () => {
3475
+ const inResult = await this._def.in._parseAsync({
3476
+ data: ctx.data,
3477
+ path: ctx.path,
3478
+ parent: ctx,
3479
+ });
3480
+ if (inResult.status === "aborted")
3481
+ return INVALID;
3482
+ if (inResult.status === "dirty") {
3483
+ status.dirty();
3484
+ return DIRTY(inResult.value);
3485
+ }
3486
+ else {
3487
+ return this._def.out._parseAsync({
3488
+ data: inResult.value,
3489
+ path: ctx.path,
3490
+ parent: ctx,
3491
+ });
3492
+ }
3493
+ };
3494
+ return handleAsync();
3495
+ }
3496
+ else {
3497
+ const inResult = this._def.in._parseSync({
3498
+ data: ctx.data,
3499
+ path: ctx.path,
3500
+ parent: ctx,
3501
+ });
3502
+ if (inResult.status === "aborted")
3503
+ return INVALID;
3504
+ if (inResult.status === "dirty") {
3505
+ status.dirty();
3506
+ return {
3507
+ status: "dirty",
3508
+ value: inResult.value,
3509
+ };
3510
+ }
3511
+ else {
3512
+ return this._def.out._parseSync({
3513
+ data: inResult.value,
3514
+ path: ctx.path,
3515
+ parent: ctx,
3516
+ });
3517
+ }
3518
+ }
3519
+ }
3520
+ static create(a, b) {
3521
+ return new ZodPipeline({
3522
+ in: a,
3523
+ out: b,
3524
+ typeName: ZodFirstPartyTypeKind.ZodPipeline,
3525
+ });
3526
+ }
3527
+ }
3528
+ export class ZodReadonly extends ZodType {
3529
+ _parse(input) {
3530
+ const result = this._def.innerType._parse(input);
3531
+ const freeze = (data) => {
3532
+ if (isValid(data)) {
3533
+ data.value = Object.freeze(data.value);
3534
+ }
3535
+ return data;
3536
+ };
3537
+ return isAsync(result) ? result.then((data) => freeze(data)) : freeze(result);
3538
+ }
3539
+ unwrap() {
3540
+ return this._def.innerType;
3541
+ }
3542
+ }
3543
+ ZodReadonly.create = (type, params) => {
3544
+ return new ZodReadonly({
3545
+ innerType: type,
3546
+ typeName: ZodFirstPartyTypeKind.ZodReadonly,
3547
+ ...processCreateParams(params),
3548
+ });
3549
+ };
3550
+ ////////////////////////////////////////
3551
+ ////////////////////////////////////////
3552
+ ////////// //////////
3553
+ ////////// z.custom //////////
3554
+ ////////// //////////
3555
+ ////////////////////////////////////////
3556
+ ////////////////////////////////////////
3557
+ function cleanParams(params, data) {
3558
+ const p = typeof params === "function" ? params(data) : typeof params === "string" ? { message: params } : params;
3559
+ const p2 = typeof p === "string" ? { message: p } : p;
3560
+ return p2;
3561
+ }
3562
+ export function custom(check, _params = {},
3563
+ /**
3564
+ * @deprecated
3565
+ *
3566
+ * Pass `fatal` into the params object instead:
3567
+ *
3568
+ * ```ts
3569
+ * z.string().custom((val) => val.length > 5, { fatal: false })
3570
+ * ```
3571
+ *
3572
+ */
3573
+ fatal) {
3574
+ if (check)
3575
+ return ZodAny.create().superRefine((data, ctx) => {
3576
+ const r = check(data);
3577
+ if (r instanceof Promise) {
3578
+ return r.then((r) => {
3579
+ if (!r) {
3580
+ const params = cleanParams(_params, data);
3581
+ const _fatal = params.fatal ?? fatal ?? true;
3582
+ ctx.addIssue({ code: "custom", ...params, fatal: _fatal });
3583
+ }
3584
+ });
3585
+ }
3586
+ if (!r) {
3587
+ const params = cleanParams(_params, data);
3588
+ const _fatal = params.fatal ?? fatal ?? true;
3589
+ ctx.addIssue({ code: "custom", ...params, fatal: _fatal });
3590
+ }
3591
+ return;
3592
+ });
3593
+ return ZodAny.create();
3594
+ }
3595
+ export { ZodType as Schema, ZodType as ZodSchema };
3596
+ export const late = {
3597
+ object: ZodObject.lazycreate,
3598
+ };
3599
+ export var ZodFirstPartyTypeKind;
3600
+ (function (ZodFirstPartyTypeKind) {
3601
+ ZodFirstPartyTypeKind["ZodString"] = "ZodString";
3602
+ ZodFirstPartyTypeKind["ZodNumber"] = "ZodNumber";
3603
+ ZodFirstPartyTypeKind["ZodNaN"] = "ZodNaN";
3604
+ ZodFirstPartyTypeKind["ZodBigInt"] = "ZodBigInt";
3605
+ ZodFirstPartyTypeKind["ZodBoolean"] = "ZodBoolean";
3606
+ ZodFirstPartyTypeKind["ZodDate"] = "ZodDate";
3607
+ ZodFirstPartyTypeKind["ZodSymbol"] = "ZodSymbol";
3608
+ ZodFirstPartyTypeKind["ZodUndefined"] = "ZodUndefined";
3609
+ ZodFirstPartyTypeKind["ZodNull"] = "ZodNull";
3610
+ ZodFirstPartyTypeKind["ZodAny"] = "ZodAny";
3611
+ ZodFirstPartyTypeKind["ZodUnknown"] = "ZodUnknown";
3612
+ ZodFirstPartyTypeKind["ZodNever"] = "ZodNever";
3613
+ ZodFirstPartyTypeKind["ZodVoid"] = "ZodVoid";
3614
+ ZodFirstPartyTypeKind["ZodArray"] = "ZodArray";
3615
+ ZodFirstPartyTypeKind["ZodObject"] = "ZodObject";
3616
+ ZodFirstPartyTypeKind["ZodUnion"] = "ZodUnion";
3617
+ ZodFirstPartyTypeKind["ZodDiscriminatedUnion"] = "ZodDiscriminatedUnion";
3618
+ ZodFirstPartyTypeKind["ZodIntersection"] = "ZodIntersection";
3619
+ ZodFirstPartyTypeKind["ZodTuple"] = "ZodTuple";
3620
+ ZodFirstPartyTypeKind["ZodRecord"] = "ZodRecord";
3621
+ ZodFirstPartyTypeKind["ZodMap"] = "ZodMap";
3622
+ ZodFirstPartyTypeKind["ZodSet"] = "ZodSet";
3623
+ ZodFirstPartyTypeKind["ZodFunction"] = "ZodFunction";
3624
+ ZodFirstPartyTypeKind["ZodLazy"] = "ZodLazy";
3625
+ ZodFirstPartyTypeKind["ZodLiteral"] = "ZodLiteral";
3626
+ ZodFirstPartyTypeKind["ZodEnum"] = "ZodEnum";
3627
+ ZodFirstPartyTypeKind["ZodEffects"] = "ZodEffects";
3628
+ ZodFirstPartyTypeKind["ZodNativeEnum"] = "ZodNativeEnum";
3629
+ ZodFirstPartyTypeKind["ZodOptional"] = "ZodOptional";
3630
+ ZodFirstPartyTypeKind["ZodNullable"] = "ZodNullable";
3631
+ ZodFirstPartyTypeKind["ZodDefault"] = "ZodDefault";
3632
+ ZodFirstPartyTypeKind["ZodCatch"] = "ZodCatch";
3633
+ ZodFirstPartyTypeKind["ZodPromise"] = "ZodPromise";
3634
+ ZodFirstPartyTypeKind["ZodBranded"] = "ZodBranded";
3635
+ ZodFirstPartyTypeKind["ZodPipeline"] = "ZodPipeline";
3636
+ ZodFirstPartyTypeKind["ZodReadonly"] = "ZodReadonly";
3637
+ })(ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {}));
3638
+ // requires TS 4.4+
3639
+ class Class {
3640
+ constructor(..._) { }
3641
+ }
3642
+ const instanceOfType = (
3643
+ // const instanceOfType = <T extends new (...args: any[]) => any>(
3644
+ cls, params = {
3645
+ message: `Input not instance of ${cls.name}`,
3646
+ }) => custom((data) => data instanceof cls, params);
3647
+ const stringType = ZodString.create;
3648
+ const numberType = ZodNumber.create;
3649
+ const nanType = ZodNaN.create;
3650
+ const bigIntType = ZodBigInt.create;
3651
+ const booleanType = ZodBoolean.create;
3652
+ const dateType = ZodDate.create;
3653
+ const symbolType = ZodSymbol.create;
3654
+ const undefinedType = ZodUndefined.create;
3655
+ const nullType = ZodNull.create;
3656
+ const anyType = ZodAny.create;
3657
+ const unknownType = ZodUnknown.create;
3658
+ const neverType = ZodNever.create;
3659
+ const voidType = ZodVoid.create;
3660
+ const arrayType = ZodArray.create;
3661
+ const objectType = ZodObject.create;
3662
+ const strictObjectType = ZodObject.strictCreate;
3663
+ const unionType = ZodUnion.create;
3664
+ const discriminatedUnionType = ZodDiscriminatedUnion.create;
3665
+ const intersectionType = ZodIntersection.create;
3666
+ const tupleType = ZodTuple.create;
3667
+ const recordType = ZodRecord.create;
3668
+ const mapType = ZodMap.create;
3669
+ const setType = ZodSet.create;
3670
+ const functionType = ZodFunction.create;
3671
+ const lazyType = ZodLazy.create;
3672
+ const literalType = ZodLiteral.create;
3673
+ const enumType = ZodEnum.create;
3674
+ const nativeEnumType = ZodNativeEnum.create;
3675
+ const promiseType = ZodPromise.create;
3676
+ const effectsType = ZodEffects.create;
3677
+ const optionalType = ZodOptional.create;
3678
+ const nullableType = ZodNullable.create;
3679
+ const preprocessType = ZodEffects.createWithPreprocess;
3680
+ const pipelineType = ZodPipeline.create;
3681
+ const ostring = () => stringType().optional();
3682
+ const onumber = () => numberType().optional();
3683
+ const oboolean = () => booleanType().optional();
3684
+ export const coerce = {
3685
+ string: ((arg) => ZodString.create({ ...arg, coerce: true })),
3686
+ number: ((arg) => ZodNumber.create({ ...arg, coerce: true })),
3687
+ boolean: ((arg) => ZodBoolean.create({
3688
+ ...arg,
3689
+ coerce: true,
3690
+ })),
3691
+ bigint: ((arg) => ZodBigInt.create({ ...arg, coerce: true })),
3692
+ date: ((arg) => ZodDate.create({ ...arg, coerce: true })),
3693
+ };
3694
+ export { anyType as any, arrayType as array, bigIntType as bigint, booleanType as boolean, dateType as date, discriminatedUnionType as discriminatedUnion, effectsType as effect, enumType as enum, functionType as function, instanceOfType as instanceof, intersectionType as intersection, lazyType as lazy, literalType as literal, mapType as map, nanType as nan, nativeEnumType as nativeEnum, neverType as never, nullType as null, nullableType as nullable, numberType as number, objectType as object, oboolean, onumber, optionalType as optional, ostring, pipelineType as pipeline, preprocessType as preprocess, promiseType as promise, recordType as record, setType as set, strictObjectType as strictObject, stringType as string, symbolType as symbol, effectsType as transformer, tupleType as tuple, undefinedType as undefined, unionType as union, unknownType as unknown, voidType as void, };
3695
+ export const NEVER = INVALID;