@nocobase/plugin-ai 2.0.0-alpha.8 → 2.0.0-beta.1

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