@mastra/deployer 1.0.0-beta.8 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/CHANGELOG.md +805 -0
  2. package/dist/arktype-aI7TBD0R-CCZH3EYK.js +8 -0
  3. package/dist/{arktype-aI7TBD0R-JG4WETGU.js.map → arktype-aI7TBD0R-CCZH3EYK.js.map} +1 -1
  4. package/dist/{arktype-aI7TBD0R-RMRB5ZNY.cjs → arktype-aI7TBD0R-XHBHUL3T.cjs} +3 -3
  5. package/dist/{arktype-aI7TBD0R-RMRB5ZNY.cjs.map → arktype-aI7TBD0R-XHBHUL3T.cjs.map} +1 -1
  6. package/dist/build/analyze/analyzeEntry.d.ts.map +1 -1
  7. package/dist/build/analyze/bundleExternals.d.ts +4 -5
  8. package/dist/build/analyze/bundleExternals.d.ts.map +1 -1
  9. package/dist/build/analyze.cjs +2 -2
  10. package/dist/build/analyze.d.ts +5 -5
  11. package/dist/build/analyze.d.ts.map +1 -1
  12. package/dist/build/analyze.js +1 -1
  13. package/dist/build/babel/remove-deployer.d.ts.map +1 -1
  14. package/dist/build/bundler.cjs +3 -3
  15. package/dist/build/bundler.d.ts +3 -1
  16. package/dist/build/bundler.d.ts.map +1 -1
  17. package/dist/build/bundler.js +1 -1
  18. package/dist/build/bundlerOptions.d.ts.map +1 -1
  19. package/dist/build/deployer.d.ts.map +1 -1
  20. package/dist/build/index.cjs +19 -10
  21. package/dist/build/index.d.ts +2 -0
  22. package/dist/build/index.d.ts.map +1 -1
  23. package/dist/build/index.js +4 -3
  24. package/dist/build/package-info.d.ts +9 -0
  25. package/dist/build/package-info.d.ts.map +1 -0
  26. package/dist/build/plugins/node-modules-extension-resolver.d.ts +7 -0
  27. package/dist/build/plugins/node-modules-extension-resolver.d.ts.map +1 -1
  28. package/dist/build/plugins/remove-all-except.d.ts +10 -0
  29. package/dist/build/plugins/remove-all-except.d.ts.map +1 -0
  30. package/dist/build/plugins/tsconfig-paths.d.ts +1 -1
  31. package/dist/build/plugins/tsconfig-paths.d.ts.map +1 -1
  32. package/dist/build/serverOptions.d.ts.map +1 -1
  33. package/dist/build/shared/extract-mastra-option.d.ts +4 -8
  34. package/dist/build/shared/extract-mastra-option.d.ts.map +1 -1
  35. package/dist/build/types.d.ts +5 -0
  36. package/dist/build/types.d.ts.map +1 -1
  37. package/dist/build/utils.d.ts +35 -4
  38. package/dist/build/utils.d.ts.map +1 -1
  39. package/dist/build/watcher.d.ts +2 -1
  40. package/dist/build/watcher.d.ts.map +1 -1
  41. package/dist/bundler/index.cjs +6 -2
  42. package/dist/bundler/index.d.ts +10 -7
  43. package/dist/bundler/index.d.ts.map +1 -1
  44. package/dist/bundler/index.js +1 -1
  45. package/dist/chunk-2VG357HT.cjs +4 -0
  46. package/dist/{chunk-4YYZKC2P.cjs.map → chunk-2VG357HT.cjs.map} +1 -1
  47. package/dist/chunk-5FPJTHRK.js +88 -0
  48. package/dist/chunk-5FPJTHRK.js.map +1 -0
  49. package/dist/{chunk-2OTEFUER.cjs → chunk-5TYVF4KJ.cjs} +31 -24
  50. package/dist/chunk-5TYVF4KJ.cjs.map +1 -0
  51. package/dist/{chunk-3NVSKU27.cjs → chunk-7EPD2XJR.cjs} +76 -20
  52. package/dist/chunk-7EPD2XJR.cjs.map +1 -0
  53. package/dist/{chunk-46SXOVGO.js → chunk-DBXWQ2CA.js} +10 -10
  54. package/dist/chunk-DBXWQ2CA.js.map +1 -0
  55. package/dist/chunk-G6GFAPPU.js +6 -0
  56. package/dist/{chunk-PDVYEX76.js.map → chunk-G6GFAPPU.js.map} +1 -1
  57. package/dist/chunk-GU4OME5Q.cjs +112 -0
  58. package/dist/chunk-GU4OME5Q.cjs.map +1 -0
  59. package/dist/chunk-HPGDVJAZ.js +3 -0
  60. package/dist/{chunk-HXYLK6CH.js.map → chunk-HPGDVJAZ.js.map} +1 -1
  61. package/dist/{chunk-I47TD6VX.js → chunk-HWSYWSD7.js} +279 -191
  62. package/dist/chunk-HWSYWSD7.js.map +1 -0
  63. package/dist/{chunk-IR2ZJ7CP.cjs → chunk-JBE6KM7R.cjs} +3 -3
  64. package/dist/{chunk-IR2ZJ7CP.cjs.map → chunk-JBE6KM7R.cjs.map} +1 -1
  65. package/dist/{chunk-NZ47MQSD.cjs → chunk-JRUJ546M.cjs} +10 -10
  66. package/dist/chunk-JRUJ546M.cjs.map +1 -0
  67. package/dist/{chunk-IL36YSXF.cjs → chunk-KE4NVPI4.cjs} +3 -3
  68. package/dist/{chunk-IL36YSXF.cjs.map → chunk-KE4NVPI4.cjs.map} +1 -1
  69. package/dist/chunk-MCWU6IKS.js +14 -0
  70. package/dist/{chunk-L4SN27ZE.js.map → chunk-MCWU6IKS.js.map} +1 -1
  71. package/dist/{chunk-HGMQ75WR.js → chunk-NGQZZ54Y.js} +68 -13
  72. package/dist/chunk-NGQZZ54Y.js.map +1 -0
  73. package/dist/chunk-QAOUDKHK.js +67 -0
  74. package/dist/chunk-QAOUDKHK.js.map +1 -0
  75. package/dist/{chunk-IJ2JJVRX.js → chunk-SD6NHZ2H.js} +47 -28
  76. package/dist/chunk-SD6NHZ2H.js.map +1 -0
  77. package/dist/{chunk-SYGG6SXN.cjs → chunk-T7NCLSYN.cjs} +298 -210
  78. package/dist/chunk-T7NCLSYN.cjs.map +1 -0
  79. package/dist/{chunk-2NO5NO4J.js → chunk-V4HCIN6G.js} +3 -3
  80. package/dist/{chunk-2NO5NO4J.js.map → chunk-V4HCIN6G.js.map} +1 -1
  81. package/dist/{chunk-UEEYA5FR.cjs → chunk-VOI3B5MX.cjs} +54 -34
  82. package/dist/chunk-VOI3B5MX.cjs.map +1 -0
  83. package/dist/chunk-ZXQ7DOYU.cjs +16 -0
  84. package/dist/{chunk-BJURVMEW.cjs.map → chunk-ZXQ7DOYU.cjs.map} +1 -1
  85. package/dist/default-u_dwuiYb-JPNIZQKK.cjs +9 -0
  86. package/dist/{default-u_dwuiYb-WPBHZH2R.cjs.map → default-u_dwuiYb-JPNIZQKK.cjs.map} +1 -1
  87. package/dist/default-u_dwuiYb-RK5OD4MY.js +3 -0
  88. package/dist/{default-u_dwuiYb-MRYQILW4.js.map → default-u_dwuiYb-RK5OD4MY.js.map} +1 -1
  89. package/dist/docs/README.md +32 -0
  90. package/dist/docs/SKILL.md +36 -0
  91. package/dist/docs/SOURCE_MAP.json +27 -0
  92. package/dist/docs/deployer/01-reference.md +93 -0
  93. package/dist/docs/deployment/01-overview.md +64 -0
  94. package/dist/docs/deployment/02-mastra-server.md +129 -0
  95. package/dist/docs/deployment/03-monorepo.md +142 -0
  96. package/dist/docs/deployment/04-cloud-providers.md +17 -0
  97. package/dist/docs/deployment/05-web-framework.md +55 -0
  98. package/dist/docs/deployment/06-workflow-runners.md +11 -0
  99. package/dist/effect-QlVUlMFu-HN3LWZSQ.cjs +17 -0
  100. package/dist/{effect-QlVUlMFu-N7VAYT2B.cjs.map → effect-QlVUlMFu-HN3LWZSQ.cjs.map} +1 -1
  101. package/dist/{effect-QlVUlMFu-NH625H3V.js → effect-QlVUlMFu-XOJ2F4UA.js} +4 -4
  102. package/dist/{effect-QlVUlMFu-NH625H3V.js.map → effect-QlVUlMFu-XOJ2F4UA.js.map} +1 -1
  103. package/dist/{esm-T7FR74HN.js → esm-6TGK2CUM.js} +41 -41
  104. package/dist/esm-6TGK2CUM.js.map +1 -0
  105. package/dist/{esm-BZAOWJTI.cjs → esm-SQKX5ABS.cjs} +82 -82
  106. package/dist/esm-SQKX5ABS.cjs.map +1 -0
  107. package/dist/index.cjs +4 -15
  108. package/dist/index.cjs.map +1 -1
  109. package/dist/index.js +3 -14
  110. package/dist/index.js.map +1 -1
  111. package/dist/server/index.cjs +523 -87
  112. package/dist/server/index.cjs.map +1 -1
  113. package/dist/server/index.d.ts.map +1 -1
  114. package/dist/server/index.js +521 -86
  115. package/dist/server/index.js.map +1 -1
  116. package/dist/server/types.d.ts +1 -1
  117. package/dist/server/types.d.ts.map +1 -1
  118. package/dist/sury-CWZTCd75-KEHKUXG7.cjs +17 -0
  119. package/dist/{sury-CWZTCd75-E5BDQIXB.cjs.map → sury-CWZTCd75-KEHKUXG7.cjs.map} +1 -1
  120. package/dist/{sury-CWZTCd75-HWBNYVQW.js → sury-CWZTCd75-L2D76L25.js} +4 -4
  121. package/dist/{sury-CWZTCd75-HWBNYVQW.js.map → sury-CWZTCd75-L2D76L25.js.map} +1 -1
  122. package/dist/typebox-Dei93FPO-LBLFC3RD.js +8 -0
  123. package/dist/{typebox-Dei93FPO-XXPZXWWK.js.map → typebox-Dei93FPO-LBLFC3RD.js.map} +1 -1
  124. package/dist/{typebox-Dei93FPO-42ICWLXF.cjs → typebox-Dei93FPO-RDSW6DFA.cjs} +3 -3
  125. package/dist/{typebox-Dei93FPO-42ICWLXF.cjs.map → typebox-Dei93FPO-RDSW6DFA.cjs.map} +1 -1
  126. package/dist/valibot--1zFm7rT-NVADAEQI.cjs +17 -0
  127. package/dist/{valibot--1zFm7rT-ALWQ34TP.cjs.map → valibot--1zFm7rT-NVADAEQI.cjs.map} +1 -1
  128. package/dist/{valibot--1zFm7rT-W6DSEVCL.js → valibot--1zFm7rT-R2UKWLZC.js} +4 -4
  129. package/dist/{valibot--1zFm7rT-W6DSEVCL.js.map → valibot--1zFm7rT-R2UKWLZC.js.map} +1 -1
  130. package/dist/{valibot-D_HTw1Gn-PN7GEV4F.cjs → valibot-D_HTw1Gn-DSFFOUBW.cjs} +7 -7
  131. package/dist/{valibot-D_HTw1Gn-PN7GEV4F.cjs.map → valibot-D_HTw1Gn-DSFFOUBW.cjs.map} +1 -1
  132. package/dist/{valibot-D_HTw1Gn-LVFT5X5F.js → valibot-D_HTw1Gn-KWXWP2TJ.js} +5 -5
  133. package/dist/{valibot-D_HTw1Gn-LVFT5X5F.js.map → valibot-D_HTw1Gn-KWXWP2TJ.js.map} +1 -1
  134. package/dist/validator/custom-resolver.cjs +2 -2
  135. package/dist/validator/custom-resolver.js +1 -1
  136. package/dist/{zod-Bwrt9trS-UDAV5VDV.js → zod-Bwrt9trS-GCUGPBJX.js} +5 -5
  137. package/dist/{zod-Bwrt9trS-UDAV5VDV.js.map → zod-Bwrt9trS-GCUGPBJX.js.map} +1 -1
  138. package/dist/{zod-Bwrt9trS-C5ATNTZG.cjs → zod-Bwrt9trS-ZZHFZ7YQ.cjs} +7 -7
  139. package/dist/{zod-Bwrt9trS-C5ATNTZG.cjs.map → zod-Bwrt9trS-ZZHFZ7YQ.cjs.map} +1 -1
  140. package/dist/{zod-DSgpEGAE-EH7N2QK7.cjs → zod-DSgpEGAE-3CMS4FSB.cjs} +7 -7
  141. package/dist/{zod-DSgpEGAE-EH7N2QK7.cjs.map → zod-DSgpEGAE-3CMS4FSB.cjs.map} +1 -1
  142. package/dist/{zod-DSgpEGAE-AVWGGTUD.js → zod-DSgpEGAE-IPE3O2NQ.js} +5 -5
  143. package/dist/{zod-DSgpEGAE-AVWGGTUD.js.map → zod-DSgpEGAE-IPE3O2NQ.js.map} +1 -1
  144. package/package.json +15 -15
  145. package/dist/arktype-aI7TBD0R-JG4WETGU.js +0 -8
  146. package/dist/build/babel/get-deployer.d.ts +0 -3
  147. package/dist/build/babel/get-deployer.d.ts.map +0 -1
  148. package/dist/build/babel/remove-all-options-bundler.d.ts +0 -5
  149. package/dist/build/babel/remove-all-options-bundler.d.ts.map +0 -1
  150. package/dist/build/babel/remove-all-options-deployer.d.ts +0 -5
  151. package/dist/build/babel/remove-all-options-deployer.d.ts.map +0 -1
  152. package/dist/build/babel/remove-all-options-server.d.ts +0 -5
  153. package/dist/build/babel/remove-all-options-server.d.ts.map +0 -1
  154. package/dist/chunk-2OTEFUER.cjs.map +0 -1
  155. package/dist/chunk-3NVSKU27.cjs.map +0 -1
  156. package/dist/chunk-46SXOVGO.js.map +0 -1
  157. package/dist/chunk-4YYZKC2P.cjs +0 -4
  158. package/dist/chunk-5CWPEG6R.js +0 -62
  159. package/dist/chunk-5CWPEG6R.js.map +0 -1
  160. package/dist/chunk-BJURVMEW.cjs +0 -16
  161. package/dist/chunk-HGMQ75WR.js.map +0 -1
  162. package/dist/chunk-HXYLK6CH.js +0 -3
  163. package/dist/chunk-I47TD6VX.js.map +0 -1
  164. package/dist/chunk-IJ2JJVRX.js.map +0 -1
  165. package/dist/chunk-KTLA3OLD.js +0 -169
  166. package/dist/chunk-KTLA3OLD.js.map +0 -1
  167. package/dist/chunk-L4SN27ZE.js +0 -14
  168. package/dist/chunk-NZ47MQSD.cjs.map +0 -1
  169. package/dist/chunk-PDVYEX76.js +0 -6
  170. package/dist/chunk-SYGG6SXN.cjs.map +0 -1
  171. package/dist/chunk-UEEYA5FR.cjs.map +0 -1
  172. package/dist/chunk-YQFLK7ZK.cjs +0 -196
  173. package/dist/chunk-YQFLK7ZK.cjs.map +0 -1
  174. package/dist/default-u_dwuiYb-MRYQILW4.js +0 -3
  175. package/dist/default-u_dwuiYb-WPBHZH2R.cjs +0 -9
  176. package/dist/effect-QlVUlMFu-N7VAYT2B.cjs +0 -17
  177. package/dist/esm-BZAOWJTI.cjs.map +0 -1
  178. package/dist/esm-T7FR74HN.js.map +0 -1
  179. package/dist/server/handlers/prompt.d.ts +0 -3
  180. package/dist/server/handlers/prompt.d.ts.map +0 -1
  181. package/dist/sury-CWZTCd75-E5BDQIXB.cjs +0 -17
  182. package/dist/typebox-Dei93FPO-XXPZXWWK.js +0 -8
  183. package/dist/valibot--1zFm7rT-ALWQ34TP.cjs +0 -17
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/bundler/index.ts"],"names":["MastraBundler","emptyDir","ensureDir","join","writeFile","createBundler","analyzeBundle","DepsService","stat","copy","getWorkspaceInformation","pkg","dirname","getInputOptions","existsSync","virtual","slash","posix","glob","path","fsExtra","FileService","getBundlerOptions","error","MastraError","ErrorDomain","ErrorCategory","getPackageRootPath","readJSON"],"mappings":"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","file":"chunk-UEEYA5FR.cjs","sourcesContent":["import { existsSync } from 'node:fs';\nimport { stat, writeFile } from 'node:fs/promises';\nimport { dirname, join, posix } from 'node:path';\nimport { MastraBundler } from '@mastra/core/bundler';\nimport { MastraError, ErrorDomain, ErrorCategory } from '@mastra/core/error';\nimport virtual from '@rollup/plugin-virtual';\nimport * as pkg from 'empathic/package';\nimport fsExtra, { copy, ensureDir, readJSON, emptyDir } from 'fs-extra/esm';\nimport type { InputOptions, OutputOptions } from 'rollup';\nimport { glob } from 'tinyglobby';\nimport { analyzeBundle } from '../build/analyze';\nimport { createBundler as createBundlerUtil, getInputOptions } from '../build/bundler';\nimport { getBundlerOptions } from '../build/bundlerOptions';\nimport { getPackageRootPath, slash } from '../build/utils';\nimport { DepsService } from '../services/deps';\nimport { FileService } from '../services/fs';\nimport { getWorkspaceInformation } from './workspaceDependencies';\n\nexport abstract class Bundler extends MastraBundler {\n protected analyzeOutputDir = '.build';\n protected outputDir = 'output';\n\n constructor(name: string, component: 'BUNDLER' | 'DEPLOYER' = 'BUNDLER') {\n super({ name, component });\n }\n\n async prepare(outputDirectory: string): Promise<void> {\n // Clean up the output directory first\n await emptyDir(outputDirectory);\n\n await ensureDir(join(outputDirectory, this.analyzeOutputDir));\n await ensureDir(join(outputDirectory, this.outputDir));\n }\n\n async writePackageJson(\n outputDirectory: string,\n dependencies: Map<string, string>,\n resolutions?: Record<string, string>,\n ) {\n this.logger.debug(`Writing project's package.json`);\n\n await ensureDir(outputDirectory);\n const pkgPath = join(outputDirectory, 'package.json');\n\n const dependenciesMap = new Map();\n for (const [key, value] of dependencies.entries()) {\n if (key.startsWith('@')) {\n // Handle scoped packages (e.g. @org/package)\n const pkgChunks = key.split('/');\n dependenciesMap.set(`${pkgChunks[0]}/${pkgChunks[1]}`, value);\n } else {\n // For non-scoped packages, take only the first part before any slash\n const pkgName = key.split('/')[0] || key;\n dependenciesMap.set(pkgName, value);\n }\n }\n\n await writeFile(\n pkgPath,\n JSON.stringify(\n {\n name: 'server',\n version: '1.0.0',\n description: '',\n type: 'module',\n main: 'index.mjs',\n scripts: {\n start: 'node ./index.mjs',\n },\n author: 'Mastra',\n license: 'ISC',\n dependencies: Object.fromEntries(dependenciesMap.entries()),\n ...(Object.keys(resolutions ?? {}).length > 0 && { resolutions }),\n pnpm: {\n neverBuiltDependencies: [],\n },\n },\n null,\n 2,\n ),\n );\n }\n\n protected createBundler(inputOptions: InputOptions, outputOptions: Partial<OutputOptions> & { dir: string }) {\n return createBundlerUtil(inputOptions, outputOptions);\n }\n\n protected async analyze(\n entry: string | string[],\n mastraFile: string,\n outputDirectory: string,\n { enableEsmShim = true }: { enableEsmShim?: boolean } = {},\n ) {\n return await analyzeBundle(\n ([] as string[]).concat(entry),\n mastraFile,\n {\n outputDir: join(outputDirectory, this.analyzeOutputDir),\n projectRoot: outputDirectory,\n platform: 'node',\n bundlerOptions: {\n enableEsmShim,\n },\n },\n this.logger,\n );\n }\n\n protected async installDependencies(outputDirectory: string, rootDir = process.cwd()) {\n const deps = new DepsService(rootDir);\n deps.__setLogger(this.logger);\n\n await deps.install({ dir: join(outputDirectory, this.outputDir) });\n }\n\n protected async copyPublic(mastraDir: string, outputDirectory: string) {\n const publicDir = join(mastraDir, 'public');\n\n try {\n await stat(publicDir);\n } catch {\n return;\n }\n\n await copy(publicDir, join(outputDirectory, this.outputDir));\n }\n\n protected async copyDOTNPMRC({\n rootDir = process.cwd(),\n outputDirectory,\n }: {\n rootDir?: string;\n outputDirectory: string;\n }) {\n const sourceDotNpmRcPath = join(rootDir, '.npmrc');\n const targetDotNpmRcPath = join(outputDirectory, this.outputDir, '.npmrc');\n\n try {\n await stat(sourceDotNpmRcPath);\n await copy(sourceDotNpmRcPath, targetDotNpmRcPath);\n } catch {\n return;\n }\n }\n\n protected async getBundlerOptions(\n serverFile: string,\n mastraEntryFile: string,\n analyzedBundleInfo: Awaited<ReturnType<typeof analyzeBundle>>,\n toolsPaths: (string | string[])[],\n { enableSourcemap = false, enableEsmShim = true }: { enableSourcemap?: boolean; enableEsmShim?: boolean } = {},\n ) {\n const { workspaceRoot } = await getWorkspaceInformation({ mastraEntryFile });\n const closestPkgJson = pkg.up({ cwd: dirname(mastraEntryFile) });\n const projectRoot = closestPkgJson ? dirname(closestPkgJson) : process.cwd();\n\n const inputOptions: InputOptions = await getInputOptions(\n mastraEntryFile,\n analyzedBundleInfo,\n 'node',\n {\n 'process.env.NODE_ENV': JSON.stringify('production'),\n },\n { sourcemap: enableSourcemap, workspaceRoot, projectRoot, enableEsmShim },\n );\n const isVirtual = serverFile.includes('\\n') || existsSync(serverFile);\n\n const toolsInputOptions = await this.listToolsInputOptions(toolsPaths);\n\n if (isVirtual) {\n inputOptions.input = { index: '#entry', ...toolsInputOptions };\n\n if (Array.isArray(inputOptions.plugins)) {\n inputOptions.plugins.unshift(virtual({ '#entry': serverFile }));\n } else {\n inputOptions.plugins = [virtual({ '#entry': serverFile })];\n }\n } else {\n inputOptions.input = { index: serverFile, ...toolsInputOptions };\n }\n\n return inputOptions;\n }\n\n getAllToolPaths(mastraDir: string, toolsPaths: (string | string[])[] = []): (string | string[])[] {\n // Normalize Windows paths to forward slashes for consistent handling\n const normalizedMastraDir = slash(mastraDir);\n\n // Prepare default tools paths with glob patterns\n const defaultToolsPath = posix.join(normalizedMastraDir, 'tools/**/*.{js,ts}');\n const defaultToolsIgnorePaths = [\n `!${posix.join(normalizedMastraDir, 'tools/**/*.{test,spec}.{js,ts}')}`,\n `!${posix.join(normalizedMastraDir, 'tools/**/__tests__/**')}`,\n ];\n\n // Combine default path with ignore patterns\n const defaultPaths = [defaultToolsPath, ...defaultToolsIgnorePaths];\n\n // If no tools paths provided, use only the default paths\n if (toolsPaths.length === 0) {\n return [defaultPaths];\n }\n\n // If tools paths are provided, add the default paths to ensure standard tools are always included\n return [...toolsPaths, defaultPaths];\n }\n\n async listToolsInputOptions(toolsPaths: (string | string[])[]) {\n const inputs: Record<string, string> = {};\n\n for (const toolPath of toolsPaths) {\n const expandedPaths = await glob(toolPath, {\n absolute: true,\n expandDirectories: false,\n });\n\n for (const path of expandedPaths) {\n if (await fsExtra.pathExists(path)) {\n const fileService = new FileService();\n const entryFile = fileService.getFirstExistingFile([\n join(path, 'index.ts'),\n join(path, 'index.js'),\n path, // if path itself is a file\n ]);\n\n // if it doesn't exist or is a dir skip it. using a dir as a tool will crash the process\n if (!entryFile || (await stat(entryFile)).isDirectory()) {\n this.logger.warn(`No entry file found in ${path}, skipping...`);\n continue;\n }\n\n const uniqueToolID = crypto.randomUUID();\n // Normalize Windows paths to forward slashes for consistent handling\n const normalizedEntryFile = entryFile.replaceAll('\\\\', '/');\n inputs[`tools/${uniqueToolID}`] = normalizedEntryFile;\n } else {\n this.logger.warn(`Tool path ${path} does not exist, skipping...`);\n }\n }\n }\n\n return inputs;\n }\n\n protected async _bundle(\n serverFile: string,\n mastraEntryFile: string,\n {\n projectRoot,\n outputDirectory,\n enableEsmShim = true,\n }: { projectRoot: string; outputDirectory: string; enableEsmShim?: boolean },\n toolsPaths: (string | string[])[] = [],\n bundleLocation: string = join(outputDirectory, this.outputDir),\n ): Promise<void> {\n const analyzeDir = join(outputDirectory, this.analyzeOutputDir);\n let sourcemap = false;\n\n try {\n const bundlerOptions = await getBundlerOptions(mastraEntryFile, analyzeDir);\n sourcemap = !!bundlerOptions?.sourcemap;\n } catch (error) {\n this.logger.debug('Failed to get bundler options, sourcemap will be disabled', { error });\n }\n\n let analyzedBundleInfo;\n try {\n const resolvedToolsPaths = await this.listToolsInputOptions(toolsPaths);\n analyzedBundleInfo = await analyzeBundle(\n [serverFile, ...Object.values(resolvedToolsPaths)],\n mastraEntryFile,\n {\n outputDir: analyzeDir,\n projectRoot,\n platform: 'node',\n bundlerOptions: {\n enableEsmShim,\n },\n },\n this.logger,\n );\n } catch (error) {\n const message = error instanceof Error ? error.message : String(error);\n\n if (error instanceof MastraError) {\n throw error;\n }\n\n throw new MastraError(\n {\n id: 'DEPLOYER_BUNDLER_ANALYZE_FAILED',\n text: `Failed to analyze Mastra application: ${message}`,\n domain: ErrorDomain.DEPLOYER,\n category: ErrorCategory.SYSTEM,\n },\n error,\n );\n }\n\n const dependenciesToInstall = new Map<string, string>();\n for (const dep of analyzedBundleInfo.externalDependencies) {\n try {\n if (analyzedBundleInfo.workspaceMap.has(dep)) {\n continue;\n }\n\n const rootPath = await getPackageRootPath(dep);\n const pkg = await readJSON(`${rootPath}/package.json`);\n\n dependenciesToInstall.set(dep, pkg.version || 'latest');\n } catch {\n dependenciesToInstall.set(dep, 'latest');\n }\n }\n\n try {\n await this.writePackageJson(join(outputDirectory, this.outputDir), dependenciesToInstall);\n\n this.logger.info('Bundling Mastra application');\n const inputOptions: InputOptions = await this.getBundlerOptions(\n serverFile,\n mastraEntryFile,\n analyzedBundleInfo,\n toolsPaths,\n { enableSourcemap: sourcemap, enableEsmShim },\n );\n\n const bundler = await this.createBundler(\n {\n ...inputOptions,\n logLevel: inputOptions.logLevel === 'silent' ? 'warn' : inputOptions.logLevel,\n onwarn: warning => {\n if (warning.code === 'CIRCULAR_DEPENDENCY') {\n if (warning.ids?.[0]?.includes('node_modules')) {\n return;\n }\n\n this.logger.warn(`Circular dependency found:\n\\t${warning.message.replace('Circular dependency: ', '')}`);\n }\n },\n },\n {\n dir: bundleLocation,\n manualChunks: {\n mastra: ['#mastra'],\n },\n sourcemap,\n },\n );\n\n await bundler.write();\n const toolImports: string[] = [];\n const toolsExports: string[] = [];\n Array.from(Object.keys(inputOptions.input || {}))\n .filter(key => key.startsWith('tools/'))\n .forEach((key, index) => {\n const toolExport = `tool${index}`;\n toolImports.push(`import * as ${toolExport} from './${key}.mjs';`);\n toolsExports.push(toolExport);\n });\n\n await writeFile(\n join(bundleLocation, 'tools.mjs'),\n `${toolImports.join('\\n')}\n\nexport const tools = [${toolsExports.join(', ')}]`,\n );\n this.logger.info('Bundling Mastra done');\n\n this.logger.info('Copying public files');\n await this.copyPublic(dirname(mastraEntryFile), outputDirectory);\n this.logger.info('Done copying public files');\n\n this.logger.info('Copying .npmrc file');\n await this.copyDOTNPMRC({ outputDirectory, rootDir: projectRoot });\n\n this.logger.info('Done copying .npmrc file');\n\n this.logger.info('Installing dependencies');\n await this.installDependencies(outputDirectory, projectRoot);\n\n this.logger.info('Done installing dependencies');\n } catch (error) {\n const message = error instanceof Error ? error.message : String(error);\n throw new MastraError(\n {\n id: 'DEPLOYER_BUNDLER_BUNDLE_STAGE_FAILED',\n text: `Failed during bundler bundle stage: ${message}`,\n domain: ErrorDomain.DEPLOYER,\n category: ErrorCategory.SYSTEM,\n },\n error,\n );\n }\n }\n\n async lint(_entryFile: string, _outputDirectory: string, toolsPaths: (string | string[])[]): Promise<void> {\n const toolsInputOptions = await this.listToolsInputOptions(toolsPaths);\n const toolsLength = Object.keys(toolsInputOptions).length;\n if (toolsLength > 0) {\n this.logger.info(`Found ${toolsLength} ${toolsLength === 1 ? 'tool' : 'tools'}`);\n }\n }\n}\n"]}
@@ -1,196 +0,0 @@
1
- 'use strict';
2
-
3
- var chunk3NVSKU27_cjs = require('./chunk-3NVSKU27.cjs');
4
- var chunkSYGG6SXN_cjs = require('./chunk-SYGG6SXN.cjs');
5
- var chunk2OTEFUER_cjs = require('./chunk-2OTEFUER.cjs');
6
- var rollup = require('rollup');
7
- var path = require('path');
8
- var pkg = require('empathic/package');
9
- var url = require('url');
10
- var resolveFrom = require('resolve-from');
11
- var module$1 = require('module');
12
- var logger = require('@mastra/core/logger');
13
-
14
- function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
15
-
16
- function _interopNamespace(e) {
17
- if (e && e.__esModule) return e;
18
- var n = Object.create(null);
19
- if (e) {
20
- Object.keys(e).forEach(function (k) {
21
- if (k !== 'default') {
22
- var d = Object.getOwnPropertyDescriptor(e, k);
23
- Object.defineProperty(n, k, d.get ? d : {
24
- enumerable: true,
25
- get: function () { return e[k]; }
26
- });
27
- }
28
- });
29
- }
30
- n.default = e;
31
- return Object.freeze(n);
32
- }
33
-
34
- var pkg__namespace = /*#__PURE__*/_interopNamespace(pkg);
35
- var resolveFrom__default = /*#__PURE__*/_interopDefault(resolveFrom);
36
-
37
- function isBuiltinModule(specifier) {
38
- return module$1.builtinModules.includes(specifier) || specifier.startsWith("node:") || module$1.builtinModules.includes(specifier.replace(/^node:/, ""));
39
- }
40
- function safeResolve(id, importer) {
41
- try {
42
- return resolveFrom__default.default(importer, id);
43
- } catch {
44
- return null;
45
- }
46
- }
47
- function nodeModulesExtensionResolver() {
48
- return {
49
- name: "node-modules-extension-resolver",
50
- resolveId(id, importer) {
51
- if (id.startsWith(".") || id.startsWith("/") || !importer) {
52
- return null;
53
- }
54
- if (isBuiltinModule(id)) {
55
- return null;
56
- }
57
- if (id.startsWith("@") && id.split("/").length === 2) {
58
- return null;
59
- }
60
- if (!id.startsWith("@") && id.split("/").length === 1) {
61
- return null;
62
- }
63
- const foundExt = path.extname(id);
64
- if (foundExt) {
65
- return null;
66
- }
67
- try {
68
- const resolved = undefined(id);
69
- if (!path.extname(resolved)) {
70
- throw new Error(`Cannot resolve ${id} from ${importer}`);
71
- }
72
- return null;
73
- } catch (e) {
74
- const resolved = safeResolve(id, importer);
75
- if (resolved) {
76
- return {
77
- id: url.pathToFileURL(resolved).href,
78
- external: true
79
- };
80
- }
81
- for (const ext of [".mjs", ".js", ".cjs"]) {
82
- const resolved2 = safeResolve(id + ext, importer);
83
- if (resolved2) {
84
- const pkgName = chunk2OTEFUER_cjs.getPackageName(id);
85
- if (!pkgName) {
86
- return null;
87
- }
88
- const pkgJsonPath = safeResolve(`${pkgName}/package.json`, importer);
89
- if (!pkgJsonPath) {
90
- return null;
91
- }
92
- const newImportWithExtension = resolved2.replace(path.dirname(pkgJsonPath), pkgName);
93
- return {
94
- id: url.pathToFileURL(newImportWithExtension).href,
95
- external: true
96
- };
97
- }
98
- }
99
- }
100
- return null;
101
- }
102
- };
103
- }
104
- async function getInputOptions2(entryFile, platform, env, { sourcemap = false } = {}) {
105
- const closestPkgJson = pkg__namespace.up({ cwd: path.dirname(entryFile) });
106
- const projectRoot = closestPkgJson ? path.dirname(chunk2OTEFUER_cjs.slash(closestPkgJson)) : chunk2OTEFUER_cjs.slash(process.cwd());
107
- const { workspaceMap, workspaceRoot } = await chunkSYGG6SXN_cjs.getWorkspaceInformation({ mastraEntryFile: entryFile });
108
- const analyzeEntryResult = await chunkSYGG6SXN_cjs.analyzeBundle(
109
- [entryFile],
110
- entryFile,
111
- {
112
- outputDir: path.posix.join(process.cwd(), ".mastra", ".build"),
113
- projectRoot: workspaceRoot || process.cwd(),
114
- platform: "node",
115
- isDev: true
116
- },
117
- logger.noopLogger
118
- );
119
- const deps = /* @__PURE__ */ new Map();
120
- for (const [dep, metadata] of analyzeEntryResult.dependencies.entries()) {
121
- const pkgName = chunk2OTEFUER_cjs.getPackageName(dep);
122
- if (pkgName && workspaceMap.has(pkgName)) {
123
- deps.set(dep, metadata);
124
- }
125
- }
126
- const inputOptions = await chunk3NVSKU27_cjs.getInputOptions(
127
- entryFile,
128
- {
129
- dependencies: deps,
130
- externalDependencies: /* @__PURE__ */ new Set(),
131
- workspaceMap
132
- },
133
- platform,
134
- env,
135
- { sourcemap, isDev: true, workspaceRoot, projectRoot }
136
- );
137
- if (Array.isArray(inputOptions.plugins)) {
138
- const plugins = [];
139
- inputOptions.plugins.forEach((plugin) => {
140
- if (plugin?.name === "node-resolve") {
141
- return;
142
- }
143
- if (plugin?.name === "tsconfig-paths") {
144
- plugins.push(
145
- chunkSYGG6SXN_cjs.tsConfigPaths({
146
- localResolve: true
147
- })
148
- );
149
- return;
150
- }
151
- plugins.push(plugin);
152
- });
153
- inputOptions.plugins = plugins;
154
- inputOptions.plugins.push(chunkSYGG6SXN_cjs.aliasHono());
155
- inputOptions.plugins.push(nodeModulesExtensionResolver());
156
- }
157
- return inputOptions;
158
- }
159
- async function createWatcher(inputOptions, outputOptions) {
160
- const watcher = await rollup.watch({
161
- ...inputOptions,
162
- output: {
163
- ...outputOptions,
164
- format: "esm",
165
- entryFileNames: "[name].mjs",
166
- chunkFileNames: "[name].mjs"
167
- }
168
- });
169
- return watcher;
170
- }
171
-
172
- // src/build/babel/remove-all-options-server.ts
173
- function removeAllOptionsExceptServer(result, logger) {
174
- return chunkSYGG6SXN_cjs.removeAllOptionsFromMastraExcept(result, "server", logger);
175
- }
176
-
177
- // src/build/serverOptions.ts
178
- async function getServerOptions(entryFile, outputDir, logger) {
179
- const result = await chunkSYGG6SXN_cjs.extractMastraOption(
180
- "server",
181
- entryFile,
182
- removeAllOptionsExceptServer,
183
- outputDir,
184
- logger
185
- );
186
- if (!result) {
187
- return null;
188
- }
189
- return result.getConfig();
190
- }
191
-
192
- exports.createWatcher = createWatcher;
193
- exports.getInputOptions = getInputOptions2;
194
- exports.getServerOptions = getServerOptions;
195
- //# sourceMappingURL=chunk-YQFLK7ZK.cjs.map
196
- //# sourceMappingURL=chunk-YQFLK7ZK.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/build/plugins/node-modules-extension-resolver.ts","../src/build/watcher.ts","../src/build/babel/remove-all-options-server.ts","../src/build/serverOptions.ts"],"names":["builtinModules","resolveFrom","extname","pathToFileURL","resolved","getPackageName","dirname","getInputOptions","pkg","slash","getWorkspaceInformation","analyzeBundle","posix","noopLogger","tsConfigPaths","aliasHono","watch","removeAllOptionsFromMastraExcept","extractMastraOption"],"mappings":"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","file":"chunk-YQFLK7ZK.cjs","sourcesContent":["import { dirname, extname } from 'node:path';\nimport { pathToFileURL } from 'node:url';\nimport resolveFrom from 'resolve-from';\nimport type { Plugin } from 'rollup';\nimport { builtinModules } from 'node:module';\nimport { getPackageName } from '../utils';\n\n/**\n * Check if a module is a Node.js builtin module\n * @param specifier - Module specifier\n * @returns True if it's a builtin module\n */\nfunction isBuiltinModule(specifier: string): boolean {\n return (\n builtinModules.includes(specifier) ||\n specifier.startsWith('node:') ||\n builtinModules.includes(specifier.replace(/^node:/, ''))\n );\n}\n\nfunction safeResolve(id: string, importer: string) {\n try {\n return resolveFrom(importer, id);\n } catch {\n return null;\n }\n}\n\n// we only need this for dev, so we can resolve the js extension of the module as we do not use node-resolve\nexport function nodeModulesExtensionResolver(): Plugin {\n return {\n name: 'node-modules-extension-resolver',\n resolveId(id, importer) {\n // if is relative, skip\n if (id.startsWith('.') || id.startsWith('/') || !importer) {\n return null;\n }\n\n if (isBuiltinModule(id)) {\n return null;\n }\n\n // if it's a scoped direct import skip\n if (id.startsWith('@') && id.split('/').length === 2) {\n return null;\n }\n\n // if it's a direct import, skip\n if (!id.startsWith('@') && id.split('/').length === 1) {\n return null;\n }\n\n const foundExt = extname(id);\n if (foundExt) {\n return null;\n }\n\n try {\n // if we cannot resolve it, it means it's a legacy module\n const resolved = import.meta.resolve(id);\n\n if (!extname(resolved)) {\n throw new Error(`Cannot resolve ${id} from ${importer}`);\n }\n\n return null;\n } catch (e) {\n // try to do a node like resolve first\n const resolved = safeResolve(id, importer);\n if (resolved) {\n return {\n id: pathToFileURL(resolved).href,\n external: true,\n };\n }\n\n for (const ext of ['.mjs', '.js', '.cjs']) {\n const resolved = safeResolve(id + ext, importer);\n if (resolved) {\n const pkgName = getPackageName(id);\n if (!pkgName) {\n return null;\n }\n\n const pkgJsonPath = safeResolve(`${pkgName}/package.json`, importer);\n if (!pkgJsonPath) {\n return null;\n }\n\n const newImportWithExtension = resolved.replace(dirname(pkgJsonPath), pkgName);\n\n return {\n id: pathToFileURL(newImportWithExtension).href,\n external: true,\n };\n }\n }\n }\n\n return null;\n },\n } satisfies Plugin;\n}\n","import type { InputOptions, OutputOptions, Plugin } from 'rollup';\nimport { watch } from 'rollup';\nimport { dirname, posix } from 'node:path';\nimport * as pkg from 'empathic/package';\nimport { getInputOptions as getBundlerInputOptions } from './bundler';\nimport { aliasHono } from './plugins/hono-alias';\nimport { nodeModulesExtensionResolver } from './plugins/node-modules-extension-resolver';\nimport { tsConfigPaths } from './plugins/tsconfig-paths';\nimport { noopLogger } from '@mastra/core/logger';\nimport { getWorkspaceInformation } from '../bundler/workspaceDependencies';\nimport { analyzeBundle } from './analyze';\nimport { getPackageName, slash } from './utils';\n\nexport async function getInputOptions(\n entryFile: string,\n platform: 'node' | 'browser',\n env?: Record<string, string>,\n { sourcemap = false }: { sourcemap?: boolean } = {},\n) {\n const closestPkgJson = pkg.up({ cwd: dirname(entryFile) });\n const projectRoot = closestPkgJson ? dirname(slash(closestPkgJson)) : slash(process.cwd());\n const { workspaceMap, workspaceRoot } = await getWorkspaceInformation({ mastraEntryFile: entryFile });\n\n const analyzeEntryResult = await analyzeBundle(\n [entryFile],\n entryFile,\n {\n outputDir: posix.join(process.cwd(), '.mastra', '.build'),\n projectRoot: workspaceRoot || process.cwd(),\n platform: 'node',\n isDev: true,\n },\n noopLogger,\n );\n\n const deps = /* @__PURE__ */ new Map();\n for (const [dep, metadata] of analyzeEntryResult.dependencies.entries()) {\n const pkgName = getPackageName(dep);\n if (pkgName && workspaceMap.has(pkgName)) {\n deps.set(dep, metadata);\n }\n }\n\n // In `analyzeBundle` we output this file and we want to use that instead of the original entry file\n //const analyzedEntryFile = posix.join(process.cwd(), '.mastra', '.build', 'entry-0.mjs');\n\n const inputOptions = await getBundlerInputOptions(\n entryFile,\n {\n dependencies: deps,\n externalDependencies: new Set(),\n workspaceMap,\n },\n platform,\n env,\n { sourcemap, isDev: true, workspaceRoot, projectRoot },\n );\n\n if (Array.isArray(inputOptions.plugins)) {\n // filter out node-resolve plugin so all node_modules are external\n // and tsconfig-paths plugin as we are injection a custom one\n const plugins = [] as Plugin[];\n inputOptions.plugins.forEach(plugin => {\n if ((plugin as Plugin | undefined)?.name === 'node-resolve') {\n return;\n }\n\n if ((plugin as Plugin | undefined)?.name === 'tsconfig-paths') {\n plugins.push(\n tsConfigPaths({\n localResolve: true,\n }),\n );\n return;\n }\n\n plugins.push(plugin as Plugin);\n });\n\n inputOptions.plugins = plugins;\n inputOptions.plugins.push(aliasHono());\n // fixes imports like lodash/fp/get\n inputOptions.plugins.push(nodeModulesExtensionResolver());\n }\n\n return inputOptions;\n}\n\nexport async function createWatcher(inputOptions: InputOptions, outputOptions: OutputOptions) {\n const watcher = await watch({\n ...inputOptions,\n output: {\n ...outputOptions,\n format: 'esm',\n entryFileNames: '[name].mjs',\n chunkFileNames: '[name].mjs',\n },\n });\n\n return watcher;\n}\n","import { removeAllOptionsFromMastraExcept } from './remove-all-options-except';\nimport type { IMastraLogger } from '@mastra/core/logger';\n\nexport function removeAllOptionsExceptServer(result: { hasCustomConfig: boolean }, logger?: IMastraLogger) {\n return removeAllOptionsFromMastraExcept(result, 'server', logger);\n}\n","import { removeAllOptionsExceptServer } from './babel/remove-all-options-server';\nimport type { Config } from '@mastra/core/mastra';\nimport { extractMastraOption, extractMastraOptionBundler } from './shared/extract-mastra-option';\nimport type { IMastraLogger } from '@mastra/core/logger';\n\nexport function getServerOptionsBundler(\n entryFile: string,\n result: {\n hasCustomConfig: false;\n },\n) {\n return extractMastraOptionBundler('server', entryFile, removeAllOptionsExceptServer, result);\n}\n\nexport async function getServerOptions(\n entryFile: string,\n outputDir: string,\n logger?: IMastraLogger,\n): Promise<Config['server'] | null> {\n const result = await extractMastraOption<Config['server']>(\n 'server',\n entryFile,\n removeAllOptionsExceptServer,\n outputDir,\n logger,\n );\n if (!result) {\n return null;\n }\n\n return result.getConfig();\n}\n"]}
@@ -1,3 +0,0 @@
1
- export { getToOpenAPISchemaFn as default } from './chunk-L4SN27ZE.js';
2
- //# sourceMappingURL=default-u_dwuiYb-MRYQILW4.js.map
3
- //# sourceMappingURL=default-u_dwuiYb-MRYQILW4.js.map
@@ -1,9 +0,0 @@
1
- 'use strict';
2
-
3
- var chunkBJURVMEW_cjs = require('./chunk-BJURVMEW.cjs');
4
-
5
-
6
-
7
- module.exports = chunkBJURVMEW_cjs.getToOpenAPISchemaFn;
8
- //# sourceMappingURL=default-u_dwuiYb-WPBHZH2R.cjs.map
9
- //# sourceMappingURL=default-u_dwuiYb-WPBHZH2R.cjs.map
@@ -1,17 +0,0 @@
1
- 'use strict';
2
-
3
- var chunkNZ47MQSD_cjs = require('./chunk-NZ47MQSD.cjs');
4
-
5
- // ../../node_modules/.pnpm/@standard-community+standard-json@0.3.5_@standard-schema+spec@1.0.0_@types+json-schema@_e6bb794be17a8db1278efa55a674be65/node_modules/@standard-community/standard-json/dist/effect-QlVUlMFu.js
6
- async function getToJsonSchemaFn() {
7
- try {
8
- const { JSONSchema } = await import('effect');
9
- return (schema) => JSONSchema.make(schema);
10
- } catch {
11
- throw new chunkNZ47MQSD_cjs.MissingDependencyError("effect");
12
- }
13
- }
14
-
15
- module.exports = getToJsonSchemaFn;
16
- //# sourceMappingURL=effect-QlVUlMFu-N7VAYT2B.cjs.map
17
- //# sourceMappingURL=effect-QlVUlMFu-N7VAYT2B.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Options.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Refs.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/errorMessages.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/any.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/array.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/date.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/default.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/string.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/record.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/map.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/never.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/null.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/union.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/number.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/object.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/set.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/selectParser.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parseDef.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js","../../../node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/index.js"],"names":["ZodFirstPartyTypeKind","types","x","base","name","schema"],"mappings":"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","file":"esm-BZAOWJTI.cjs","sourcesContent":["export const ignoreOverride = Symbol(\"Let zodToJsonSchema decide on which parser to use\");\nexport const jsonDescription = (jsonSchema, def) => {\n if (def.description) {\n try {\n return {\n ...jsonSchema,\n ...JSON.parse(def.description),\n };\n }\n catch { }\n }\n return jsonSchema;\n};\nexport const defaultOptions = {\n name: undefined,\n $refStrategy: \"root\",\n basePath: [\"#\"],\n effectStrategy: \"input\",\n pipeStrategy: \"all\",\n dateStrategy: \"format:date-time\",\n mapStrategy: \"entries\",\n removeAdditionalStrategy: \"passthrough\",\n allowedAdditionalProperties: true,\n rejectedAdditionalProperties: false,\n definitionPath: \"definitions\",\n target: \"jsonSchema7\",\n strictUnions: false,\n definitions: {},\n errorMessages: false,\n markdownDescription: false,\n patternStrategy: \"escape\",\n applyRegexFlags: false,\n emailStrategy: \"format:email\",\n base64Strategy: \"contentEncoding:base64\",\n nameStrategy: \"ref\",\n openAiAnyTypeName: \"OpenAiAnyType\"\n};\nexport const getDefaultOptions = (options) => (typeof options === \"string\"\n ? {\n ...defaultOptions,\n name: options,\n }\n : {\n ...defaultOptions,\n ...options,\n });\n","import { getDefaultOptions } from \"./Options.js\";\nexport const getRefs = (options) => {\n const _options = getDefaultOptions(options);\n const currentPath = _options.name !== undefined\n ? [..._options.basePath, _options.definitionPath, _options.name]\n : _options.basePath;\n return {\n ..._options,\n flags: { hasReferencedOpenAiAnyType: false },\n currentPath: currentPath,\n propertyPath: undefined,\n seen: new Map(Object.entries(_options.definitions).map(([name, def]) => [\n def._def,\n {\n def: def._def,\n path: [..._options.basePath, _options.definitionPath, name],\n // Resolution of references will be forced even though seen, so it's ok that the schema is undefined here for now.\n jsonSchema: undefined,\n },\n ])),\n };\n};\n","export function addErrorMessage(res, key, errorMessage, refs) {\n if (!refs?.errorMessages)\n return;\n if (errorMessage) {\n res.errorMessage = {\n ...res.errorMessage,\n [key]: errorMessage,\n };\n }\n}\nexport function setResponseValueAndErrors(res, key, value, errorMessage, refs) {\n res[key] = value;\n addErrorMessage(res, key, errorMessage, refs);\n}\n","export const getRelativePath = (pathA, pathB) => {\n let i = 0;\n for (; i < pathA.length && i < pathB.length; i++) {\n if (pathA[i] !== pathB[i])\n break;\n }\n return [(pathA.length - i).toString(), ...pathB.slice(i)].join(\"/\");\n};\n","import { getRelativePath } from \"../getRelativePath.js\";\nexport function parseAnyDef(refs) {\n if (refs.target !== \"openAi\") {\n return {};\n }\n const anyDefinitionPath = [\n ...refs.basePath,\n refs.definitionPath,\n refs.openAiAnyTypeName,\n ];\n refs.flags.hasReferencedOpenAiAnyType = true;\n return {\n $ref: refs.$refStrategy === \"relative\"\n ? getRelativePath(anyDefinitionPath, refs.currentPath)\n : anyDefinitionPath.join(\"/\"),\n };\n}\n","import { ZodFirstPartyTypeKind } from \"zod/v3\";\nimport { setResponseValueAndErrors } from \"../errorMessages.js\";\nimport { parseDef } from \"../parseDef.js\";\nexport function parseArrayDef(def, refs) {\n const res = {\n type: \"array\",\n };\n if (def.type?._def &&\n def.type?._def?.typeName !== ZodFirstPartyTypeKind.ZodAny) {\n res.items = parseDef(def.type._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\"],\n });\n }\n if (def.minLength) {\n setResponseValueAndErrors(res, \"minItems\", def.minLength.value, def.minLength.message, refs);\n }\n if (def.maxLength) {\n setResponseValueAndErrors(res, \"maxItems\", def.maxLength.value, def.maxLength.message, refs);\n }\n if (def.exactLength) {\n setResponseValueAndErrors(res, \"minItems\", def.exactLength.value, def.exactLength.message, refs);\n setResponseValueAndErrors(res, \"maxItems\", def.exactLength.value, def.exactLength.message, refs);\n }\n return res;\n}\n","import { setResponseValueAndErrors } from \"../errorMessages.js\";\nexport function parseBigintDef(def, refs) {\n const res = {\n type: \"integer\",\n format: \"int64\",\n };\n if (!def.checks)\n return res;\n for (const check of def.checks) {\n switch (check.kind) {\n case \"min\":\n if (refs.target === \"jsonSchema7\") {\n if (check.inclusive) {\n setResponseValueAndErrors(res, \"minimum\", check.value, check.message, refs);\n }\n else {\n setResponseValueAndErrors(res, \"exclusiveMinimum\", check.value, check.message, refs);\n }\n }\n else {\n if (!check.inclusive) {\n res.exclusiveMinimum = true;\n }\n setResponseValueAndErrors(res, \"minimum\", check.value, check.message, refs);\n }\n break;\n case \"max\":\n if (refs.target === \"jsonSchema7\") {\n if (check.inclusive) {\n setResponseValueAndErrors(res, \"maximum\", check.value, check.message, refs);\n }\n else {\n setResponseValueAndErrors(res, \"exclusiveMaximum\", check.value, check.message, refs);\n }\n }\n else {\n if (!check.inclusive) {\n res.exclusiveMaximum = true;\n }\n setResponseValueAndErrors(res, \"maximum\", check.value, check.message, refs);\n }\n break;\n case \"multipleOf\":\n setResponseValueAndErrors(res, \"multipleOf\", check.value, check.message, refs);\n break;\n }\n }\n return res;\n}\n","export function parseBooleanDef() {\n return {\n type: \"boolean\",\n };\n}\n","import { parseDef } from \"../parseDef.js\";\nexport function parseBrandedDef(_def, refs) {\n return parseDef(_def.type._def, refs);\n}\n","import { parseDef } from \"../parseDef.js\";\nexport const parseCatchDef = (def, refs) => {\n return parseDef(def.innerType._def, refs);\n};\n","import { setResponseValueAndErrors } from \"../errorMessages.js\";\nexport function parseDateDef(def, refs, overrideDateStrategy) {\n const strategy = overrideDateStrategy ?? refs.dateStrategy;\n if (Array.isArray(strategy)) {\n return {\n anyOf: strategy.map((item, i) => parseDateDef(def, refs, item)),\n };\n }\n switch (strategy) {\n case \"string\":\n case \"format:date-time\":\n return {\n type: \"string\",\n format: \"date-time\",\n };\n case \"format:date\":\n return {\n type: \"string\",\n format: \"date\",\n };\n case \"integer\":\n return integerDateParser(def, refs);\n }\n}\nconst integerDateParser = (def, refs) => {\n const res = {\n type: \"integer\",\n format: \"unix-time\",\n };\n if (refs.target === \"openApi3\") {\n return res;\n }\n for (const check of def.checks) {\n switch (check.kind) {\n case \"min\":\n setResponseValueAndErrors(res, \"minimum\", check.value, // This is in milliseconds\n check.message, refs);\n break;\n case \"max\":\n setResponseValueAndErrors(res, \"maximum\", check.value, // This is in milliseconds\n check.message, refs);\n break;\n }\n }\n return res;\n};\n","import { parseDef } from \"../parseDef.js\";\nexport function parseDefaultDef(_def, refs) {\n return {\n ...parseDef(_def.innerType._def, refs),\n default: _def.defaultValue(),\n };\n}\n","import { parseDef } from \"../parseDef.js\";\nimport { parseAnyDef } from \"./any.js\";\nexport function parseEffectsDef(_def, refs) {\n return refs.effectStrategy === \"input\"\n ? parseDef(_def.schema._def, refs)\n : parseAnyDef(refs);\n}\n","export function parseEnumDef(def) {\n return {\n type: \"string\",\n enum: Array.from(def.values),\n };\n}\n","import { parseDef } from \"../parseDef.js\";\nconst isJsonSchema7AllOfType = (type) => {\n if (\"type\" in type && type.type === \"string\")\n return false;\n return \"allOf\" in type;\n};\nexport function parseIntersectionDef(def, refs) {\n const allOf = [\n parseDef(def.left._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"allOf\", \"0\"],\n }),\n parseDef(def.right._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"allOf\", \"1\"],\n }),\n ].filter((x) => !!x);\n let unevaluatedProperties = refs.target === \"jsonSchema2019-09\"\n ? { unevaluatedProperties: false }\n : undefined;\n const mergedAllOf = [];\n // If either of the schemas is an allOf, merge them into a single allOf\n allOf.forEach((schema) => {\n if (isJsonSchema7AllOfType(schema)) {\n mergedAllOf.push(...schema.allOf);\n if (schema.unevaluatedProperties === undefined) {\n // If one of the schemas has no unevaluatedProperties set,\n // the merged schema should also have no unevaluatedProperties set\n unevaluatedProperties = undefined;\n }\n }\n else {\n let nestedSchema = schema;\n if (\"additionalProperties\" in schema &&\n schema.additionalProperties === false) {\n const { additionalProperties, ...rest } = schema;\n nestedSchema = rest;\n }\n else {\n // As soon as one of the schemas has additionalProperties set not to false, we allow unevaluatedProperties\n unevaluatedProperties = undefined;\n }\n mergedAllOf.push(nestedSchema);\n }\n });\n return mergedAllOf.length\n ? {\n allOf: mergedAllOf,\n ...unevaluatedProperties,\n }\n : undefined;\n}\n","export function parseLiteralDef(def, refs) {\n const parsedType = typeof def.value;\n if (parsedType !== \"bigint\" &&\n parsedType !== \"number\" &&\n parsedType !== \"boolean\" &&\n parsedType !== \"string\") {\n return {\n type: Array.isArray(def.value) ? \"array\" : \"object\",\n };\n }\n if (refs.target === \"openApi3\") {\n return {\n type: parsedType === \"bigint\" ? \"integer\" : parsedType,\n enum: [def.value],\n };\n }\n return {\n type: parsedType === \"bigint\" ? \"integer\" : parsedType,\n const: def.value,\n };\n}\n","import { setResponseValueAndErrors } from \"../errorMessages.js\";\nlet emojiRegex = undefined;\n/**\n * Generated from the regular expressions found here as of 2024-05-22:\n * https://github.com/colinhacks/zod/blob/master/src/types.ts.\n *\n * Expressions with /i flag have been changed accordingly.\n */\nexport const zodPatterns = {\n /**\n * `c` was changed to `[cC]` to replicate /i flag\n */\n cuid: /^[cC][^\\s-]{8,}$/,\n cuid2: /^[0-9a-z]+$/,\n ulid: /^[0-9A-HJKMNP-TV-Z]{26}$/,\n /**\n * `a-z` was added to replicate /i flag\n */\n email: /^(?!\\.)(?!.*\\.\\.)([a-zA-Z0-9_'+\\-\\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\\-]*\\.)+[a-zA-Z]{2,}$/,\n /**\n * Constructed a valid Unicode RegExp\n *\n * Lazily instantiate since this type of regex isn't supported\n * in all envs (e.g. React Native).\n *\n * See:\n * https://github.com/colinhacks/zod/issues/2433\n * Fix in Zod:\n * https://github.com/colinhacks/zod/commit/9340fd51e48576a75adc919bff65dbc4a5d4c99b\n */\n emoji: () => {\n if (emojiRegex === undefined) {\n emojiRegex = RegExp(\"^(\\\\p{Extended_Pictographic}|\\\\p{Emoji_Component})+$\", \"u\");\n }\n return emojiRegex;\n },\n /**\n * Unused\n */\n uuid: /^[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}$/,\n /**\n * Unused\n */\n ipv4: /^(?:(?: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])$/,\n ipv4Cidr: /^(?:(?: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])$/,\n /**\n * Unused\n */\n 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})))$/,\n ipv6Cidr: /^(([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])$/,\n base64: /^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,\n base64url: /^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,\n nanoid: /^[a-zA-Z0-9_-]{21}$/,\n jwt: /^[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]*$/,\n};\nexport function parseStringDef(def, refs) {\n const res = {\n type: \"string\",\n };\n if (def.checks) {\n for (const check of def.checks) {\n switch (check.kind) {\n case \"min\":\n setResponseValueAndErrors(res, \"minLength\", typeof res.minLength === \"number\"\n ? Math.max(res.minLength, check.value)\n : check.value, check.message, refs);\n break;\n case \"max\":\n setResponseValueAndErrors(res, \"maxLength\", typeof res.maxLength === \"number\"\n ? Math.min(res.maxLength, check.value)\n : check.value, check.message, refs);\n break;\n case \"email\":\n switch (refs.emailStrategy) {\n case \"format:email\":\n addFormat(res, \"email\", check.message, refs);\n break;\n case \"format:idn-email\":\n addFormat(res, \"idn-email\", check.message, refs);\n break;\n case \"pattern:zod\":\n addPattern(res, zodPatterns.email, check.message, refs);\n break;\n }\n break;\n case \"url\":\n addFormat(res, \"uri\", check.message, refs);\n break;\n case \"uuid\":\n addFormat(res, \"uuid\", check.message, refs);\n break;\n case \"regex\":\n addPattern(res, check.regex, check.message, refs);\n break;\n case \"cuid\":\n addPattern(res, zodPatterns.cuid, check.message, refs);\n break;\n case \"cuid2\":\n addPattern(res, zodPatterns.cuid2, check.message, refs);\n break;\n case \"startsWith\":\n addPattern(res, RegExp(`^${escapeLiteralCheckValue(check.value, refs)}`), check.message, refs);\n break;\n case \"endsWith\":\n addPattern(res, RegExp(`${escapeLiteralCheckValue(check.value, refs)}$`), check.message, refs);\n break;\n case \"datetime\":\n addFormat(res, \"date-time\", check.message, refs);\n break;\n case \"date\":\n addFormat(res, \"date\", check.message, refs);\n break;\n case \"time\":\n addFormat(res, \"time\", check.message, refs);\n break;\n case \"duration\":\n addFormat(res, \"duration\", check.message, refs);\n break;\n case \"length\":\n setResponseValueAndErrors(res, \"minLength\", typeof res.minLength === \"number\"\n ? Math.max(res.minLength, check.value)\n : check.value, check.message, refs);\n setResponseValueAndErrors(res, \"maxLength\", typeof res.maxLength === \"number\"\n ? Math.min(res.maxLength, check.value)\n : check.value, check.message, refs);\n break;\n case \"includes\": {\n addPattern(res, RegExp(escapeLiteralCheckValue(check.value, refs)), check.message, refs);\n break;\n }\n case \"ip\": {\n if (check.version !== \"v6\") {\n addFormat(res, \"ipv4\", check.message, refs);\n }\n if (check.version !== \"v4\") {\n addFormat(res, \"ipv6\", check.message, refs);\n }\n break;\n }\n case \"base64url\":\n addPattern(res, zodPatterns.base64url, check.message, refs);\n break;\n case \"jwt\":\n addPattern(res, zodPatterns.jwt, check.message, refs);\n break;\n case \"cidr\": {\n if (check.version !== \"v6\") {\n addPattern(res, zodPatterns.ipv4Cidr, check.message, refs);\n }\n if (check.version !== \"v4\") {\n addPattern(res, zodPatterns.ipv6Cidr, check.message, refs);\n }\n break;\n }\n case \"emoji\":\n addPattern(res, zodPatterns.emoji(), check.message, refs);\n break;\n case \"ulid\": {\n addPattern(res, zodPatterns.ulid, check.message, refs);\n break;\n }\n case \"base64\": {\n switch (refs.base64Strategy) {\n case \"format:binary\": {\n addFormat(res, \"binary\", check.message, refs);\n break;\n }\n case \"contentEncoding:base64\": {\n setResponseValueAndErrors(res, \"contentEncoding\", \"base64\", check.message, refs);\n break;\n }\n case \"pattern:zod\": {\n addPattern(res, zodPatterns.base64, check.message, refs);\n break;\n }\n }\n break;\n }\n case \"nanoid\": {\n addPattern(res, zodPatterns.nanoid, check.message, refs);\n }\n case \"toLowerCase\":\n case \"toUpperCase\":\n case \"trim\":\n break;\n default:\n ((_) => { })(check);\n }\n }\n }\n return res;\n}\nfunction escapeLiteralCheckValue(literal, refs) {\n return refs.patternStrategy === \"escape\"\n ? escapeNonAlphaNumeric(literal)\n : literal;\n}\nconst ALPHA_NUMERIC = new Set(\"ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789\");\nfunction escapeNonAlphaNumeric(source) {\n let result = \"\";\n for (let i = 0; i < source.length; i++) {\n if (!ALPHA_NUMERIC.has(source[i])) {\n result += \"\\\\\";\n }\n result += source[i];\n }\n return result;\n}\n// Adds a \"format\" keyword to the schema. If a format exists, both formats will be joined in an allOf-node, along with subsequent ones.\nfunction addFormat(schema, value, message, refs) {\n if (schema.format || schema.anyOf?.some((x) => x.format)) {\n if (!schema.anyOf) {\n schema.anyOf = [];\n }\n if (schema.format) {\n schema.anyOf.push({\n format: schema.format,\n ...(schema.errorMessage &&\n refs.errorMessages && {\n errorMessage: { format: schema.errorMessage.format },\n }),\n });\n delete schema.format;\n if (schema.errorMessage) {\n delete schema.errorMessage.format;\n if (Object.keys(schema.errorMessage).length === 0) {\n delete schema.errorMessage;\n }\n }\n }\n schema.anyOf.push({\n format: value,\n ...(message &&\n refs.errorMessages && { errorMessage: { format: message } }),\n });\n }\n else {\n setResponseValueAndErrors(schema, \"format\", value, message, refs);\n }\n}\n// Adds a \"pattern\" keyword to the schema. If a pattern exists, both patterns will be joined in an allOf-node, along with subsequent ones.\nfunction addPattern(schema, regex, message, refs) {\n if (schema.pattern || schema.allOf?.some((x) => x.pattern)) {\n if (!schema.allOf) {\n schema.allOf = [];\n }\n if (schema.pattern) {\n schema.allOf.push({\n pattern: schema.pattern,\n ...(schema.errorMessage &&\n refs.errorMessages && {\n errorMessage: { pattern: schema.errorMessage.pattern },\n }),\n });\n delete schema.pattern;\n if (schema.errorMessage) {\n delete schema.errorMessage.pattern;\n if (Object.keys(schema.errorMessage).length === 0) {\n delete schema.errorMessage;\n }\n }\n }\n schema.allOf.push({\n pattern: stringifyRegExpWithFlags(regex, refs),\n ...(message &&\n refs.errorMessages && { errorMessage: { pattern: message } }),\n });\n }\n else {\n setResponseValueAndErrors(schema, \"pattern\", stringifyRegExpWithFlags(regex, refs), message, refs);\n }\n}\n// Mutate z.string.regex() in a best attempt to accommodate for regex flags when applyRegexFlags is true\nfunction stringifyRegExpWithFlags(regex, refs) {\n if (!refs.applyRegexFlags || !regex.flags) {\n return regex.source;\n }\n // Currently handled flags\n const flags = {\n i: regex.flags.includes(\"i\"),\n m: regex.flags.includes(\"m\"),\n s: regex.flags.includes(\"s\"), // `.` matches newlines\n };\n // The general principle here is to step through each character, one at a time, applying mutations as flags require. We keep track when the current character is escaped, and when it's inside a group /like [this]/ or (also) a range like /[a-z]/. The following is fairly brittle imperative code; edit at your peril!\n const source = flags.i ? regex.source.toLowerCase() : regex.source;\n let pattern = \"\";\n let isEscaped = false;\n let inCharGroup = false;\n let inCharRange = false;\n for (let i = 0; i < source.length; i++) {\n if (isEscaped) {\n pattern += source[i];\n isEscaped = false;\n continue;\n }\n if (flags.i) {\n if (inCharGroup) {\n if (source[i].match(/[a-z]/)) {\n if (inCharRange) {\n pattern += source[i];\n pattern += `${source[i - 2]}-${source[i]}`.toUpperCase();\n inCharRange = false;\n }\n else if (source[i + 1] === \"-\" && source[i + 2]?.match(/[a-z]/)) {\n pattern += source[i];\n inCharRange = true;\n }\n else {\n pattern += `${source[i]}${source[i].toUpperCase()}`;\n }\n continue;\n }\n }\n else if (source[i].match(/[a-z]/)) {\n pattern += `[${source[i]}${source[i].toUpperCase()}]`;\n continue;\n }\n }\n if (flags.m) {\n if (source[i] === \"^\") {\n pattern += `(^|(?<=[\\r\\n]))`;\n continue;\n }\n else if (source[i] === \"$\") {\n pattern += `($|(?=[\\r\\n]))`;\n continue;\n }\n }\n if (flags.s && source[i] === \".\") {\n pattern += inCharGroup ? `${source[i]}\\r\\n` : `[${source[i]}\\r\\n]`;\n continue;\n }\n pattern += source[i];\n if (source[i] === \"\\\\\") {\n isEscaped = true;\n }\n else if (inCharGroup && source[i] === \"]\") {\n inCharGroup = false;\n }\n else if (!inCharGroup && source[i] === \"[\") {\n inCharGroup = true;\n }\n }\n try {\n new RegExp(pattern);\n }\n catch {\n console.warn(`Could not convert regex pattern at ${refs.currentPath.join(\"/\")} to a flag-independent form! Falling back to the flag-ignorant source`);\n return regex.source;\n }\n return pattern;\n}\n","import { ZodFirstPartyTypeKind, } from \"zod/v3\";\nimport { parseDef } from \"../parseDef.js\";\nimport { parseStringDef } from \"./string.js\";\nimport { parseBrandedDef } from \"./branded.js\";\nimport { parseAnyDef } from \"./any.js\";\nexport function parseRecordDef(def, refs) {\n if (refs.target === \"openAi\") {\n console.warn(\"Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead.\");\n }\n if (refs.target === \"openApi3\" &&\n def.keyType?._def.typeName === ZodFirstPartyTypeKind.ZodEnum) {\n return {\n type: \"object\",\n required: def.keyType._def.values,\n properties: def.keyType._def.values.reduce((acc, key) => ({\n ...acc,\n [key]: parseDef(def.valueType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"properties\", key],\n }) ?? parseAnyDef(refs),\n }), {}),\n additionalProperties: refs.rejectedAdditionalProperties,\n };\n }\n const schema = {\n type: \"object\",\n additionalProperties: parseDef(def.valueType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"additionalProperties\"],\n }) ?? refs.allowedAdditionalProperties,\n };\n if (refs.target === \"openApi3\") {\n return schema;\n }\n if (def.keyType?._def.typeName === ZodFirstPartyTypeKind.ZodString &&\n def.keyType._def.checks?.length) {\n const { type, ...keyType } = parseStringDef(def.keyType._def, refs);\n return {\n ...schema,\n propertyNames: keyType,\n };\n }\n else if (def.keyType?._def.typeName === ZodFirstPartyTypeKind.ZodEnum) {\n return {\n ...schema,\n propertyNames: {\n enum: def.keyType._def.values,\n },\n };\n }\n else if (def.keyType?._def.typeName === ZodFirstPartyTypeKind.ZodBranded &&\n def.keyType._def.type._def.typeName === ZodFirstPartyTypeKind.ZodString &&\n def.keyType._def.type._def.checks?.length) {\n const { type, ...keyType } = parseBrandedDef(def.keyType._def, refs);\n return {\n ...schema,\n propertyNames: keyType,\n };\n }\n return schema;\n}\n","import { parseDef } from \"../parseDef.js\";\nimport { parseRecordDef } from \"./record.js\";\nimport { parseAnyDef } from \"./any.js\";\nexport function parseMapDef(def, refs) {\n if (refs.mapStrategy === \"record\") {\n return parseRecordDef(def, refs);\n }\n const keys = parseDef(def.keyType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\", \"items\", \"0\"],\n }) || parseAnyDef(refs);\n const values = parseDef(def.valueType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\", \"items\", \"1\"],\n }) || parseAnyDef(refs);\n return {\n type: \"array\",\n maxItems: 125,\n items: {\n type: \"array\",\n items: [keys, values],\n minItems: 2,\n maxItems: 2,\n },\n };\n}\n","export function parseNativeEnumDef(def) {\n const object = def.values;\n const actualKeys = Object.keys(def.values).filter((key) => {\n return typeof object[object[key]] !== \"number\";\n });\n const actualValues = actualKeys.map((key) => object[key]);\n const parsedTypes = Array.from(new Set(actualValues.map((values) => typeof values)));\n return {\n type: parsedTypes.length === 1\n ? parsedTypes[0] === \"string\"\n ? \"string\"\n : \"number\"\n : [\"string\", \"number\"],\n enum: actualValues,\n };\n}\n","import { parseAnyDef } from \"./any.js\";\nexport function parseNeverDef(refs) {\n return refs.target === \"openAi\"\n ? undefined\n : {\n not: parseAnyDef({\n ...refs,\n currentPath: [...refs.currentPath, \"not\"],\n }),\n };\n}\n","export function parseNullDef(refs) {\n return refs.target === \"openApi3\"\n ? {\n enum: [\"null\"],\n nullable: true,\n }\n : {\n type: \"null\",\n };\n}\n","import { parseDef } from \"../parseDef.js\";\nexport const primitiveMappings = {\n ZodString: \"string\",\n ZodNumber: \"number\",\n ZodBigInt: \"integer\",\n ZodBoolean: \"boolean\",\n ZodNull: \"null\",\n};\nexport function parseUnionDef(def, refs) {\n if (refs.target === \"openApi3\")\n return asAnyOf(def, refs);\n const options = def.options instanceof Map ? Array.from(def.options.values()) : def.options;\n // This blocks tries to look ahead a bit to produce nicer looking schemas with type array instead of anyOf.\n if (options.every((x) => x._def.typeName in primitiveMappings &&\n (!x._def.checks || !x._def.checks.length))) {\n // all types in union are primitive and lack checks, so might as well squash into {type: [...]}\n const types = options.reduce((types, x) => {\n const type = primitiveMappings[x._def.typeName]; //Can be safely casted due to row 43\n return type && !types.includes(type) ? [...types, type] : types;\n }, []);\n return {\n type: types.length > 1 ? types : types[0],\n };\n }\n else if (options.every((x) => x._def.typeName === \"ZodLiteral\" && !x.description)) {\n // all options literals\n const types = options.reduce((acc, x) => {\n const type = typeof x._def.value;\n switch (type) {\n case \"string\":\n case \"number\":\n case \"boolean\":\n return [...acc, type];\n case \"bigint\":\n return [...acc, \"integer\"];\n case \"object\":\n if (x._def.value === null)\n return [...acc, \"null\"];\n case \"symbol\":\n case \"undefined\":\n case \"function\":\n default:\n return acc;\n }\n }, []);\n if (types.length === options.length) {\n // all the literals are primitive, as far as null can be considered primitive\n const uniqueTypes = types.filter((x, i, a) => a.indexOf(x) === i);\n return {\n type: uniqueTypes.length > 1 ? uniqueTypes : uniqueTypes[0],\n enum: options.reduce((acc, x) => {\n return acc.includes(x._def.value) ? acc : [...acc, x._def.value];\n }, []),\n };\n }\n }\n else if (options.every((x) => x._def.typeName === \"ZodEnum\")) {\n return {\n type: \"string\",\n enum: options.reduce((acc, x) => [\n ...acc,\n ...x._def.values.filter((x) => !acc.includes(x)),\n ], []),\n };\n }\n return asAnyOf(def, refs);\n}\nconst asAnyOf = (def, refs) => {\n const anyOf = (def.options instanceof Map\n ? Array.from(def.options.values())\n : def.options)\n .map((x, i) => parseDef(x._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"anyOf\", `${i}`],\n }))\n .filter((x) => !!x &&\n (!refs.strictUnions ||\n (typeof x === \"object\" && Object.keys(x).length > 0)));\n return anyOf.length ? { anyOf } : undefined;\n};\n","import { parseDef } from \"../parseDef.js\";\nimport { primitiveMappings } from \"./union.js\";\nexport function parseNullableDef(def, refs) {\n if ([\"ZodString\", \"ZodNumber\", \"ZodBigInt\", \"ZodBoolean\", \"ZodNull\"].includes(def.innerType._def.typeName) &&\n (!def.innerType._def.checks || !def.innerType._def.checks.length)) {\n if (refs.target === \"openApi3\") {\n return {\n type: primitiveMappings[def.innerType._def.typeName],\n nullable: true,\n };\n }\n return {\n type: [\n primitiveMappings[def.innerType._def.typeName],\n \"null\",\n ],\n };\n }\n if (refs.target === \"openApi3\") {\n const base = parseDef(def.innerType._def, {\n ...refs,\n currentPath: [...refs.currentPath],\n });\n if (base && \"$ref\" in base)\n return { allOf: [base], nullable: true };\n return base && { ...base, nullable: true };\n }\n const base = parseDef(def.innerType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"anyOf\", \"0\"],\n });\n return base && { anyOf: [base, { type: \"null\" }] };\n}\n","import { addErrorMessage, setResponseValueAndErrors, } from \"../errorMessages.js\";\nexport function parseNumberDef(def, refs) {\n const res = {\n type: \"number\",\n };\n if (!def.checks)\n return res;\n for (const check of def.checks) {\n switch (check.kind) {\n case \"int\":\n res.type = \"integer\";\n addErrorMessage(res, \"type\", check.message, refs);\n break;\n case \"min\":\n if (refs.target === \"jsonSchema7\") {\n if (check.inclusive) {\n setResponseValueAndErrors(res, \"minimum\", check.value, check.message, refs);\n }\n else {\n setResponseValueAndErrors(res, \"exclusiveMinimum\", check.value, check.message, refs);\n }\n }\n else {\n if (!check.inclusive) {\n res.exclusiveMinimum = true;\n }\n setResponseValueAndErrors(res, \"minimum\", check.value, check.message, refs);\n }\n break;\n case \"max\":\n if (refs.target === \"jsonSchema7\") {\n if (check.inclusive) {\n setResponseValueAndErrors(res, \"maximum\", check.value, check.message, refs);\n }\n else {\n setResponseValueAndErrors(res, \"exclusiveMaximum\", check.value, check.message, refs);\n }\n }\n else {\n if (!check.inclusive) {\n res.exclusiveMaximum = true;\n }\n setResponseValueAndErrors(res, \"maximum\", check.value, check.message, refs);\n }\n break;\n case \"multipleOf\":\n setResponseValueAndErrors(res, \"multipleOf\", check.value, check.message, refs);\n break;\n }\n }\n return res;\n}\n","import { parseDef } from \"../parseDef.js\";\nexport function parseObjectDef(def, refs) {\n const forceOptionalIntoNullable = refs.target === \"openAi\";\n const result = {\n type: \"object\",\n properties: {},\n };\n const required = [];\n const shape = def.shape();\n for (const propName in shape) {\n let propDef = shape[propName];\n if (propDef === undefined || propDef._def === undefined) {\n continue;\n }\n let propOptional = safeIsOptional(propDef);\n if (propOptional && forceOptionalIntoNullable) {\n if (propDef._def.typeName === \"ZodOptional\") {\n propDef = propDef._def.innerType;\n }\n if (!propDef.isNullable()) {\n propDef = propDef.nullable();\n }\n propOptional = false;\n }\n const parsedDef = parseDef(propDef._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"properties\", propName],\n propertyPath: [...refs.currentPath, \"properties\", propName],\n });\n if (parsedDef === undefined) {\n continue;\n }\n result.properties[propName] = parsedDef;\n if (!propOptional) {\n required.push(propName);\n }\n }\n if (required.length) {\n result.required = required;\n }\n const additionalProperties = decideAdditionalProperties(def, refs);\n if (additionalProperties !== undefined) {\n result.additionalProperties = additionalProperties;\n }\n return result;\n}\nfunction decideAdditionalProperties(def, refs) {\n if (def.catchall._def.typeName !== \"ZodNever\") {\n return parseDef(def.catchall._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"additionalProperties\"],\n });\n }\n switch (def.unknownKeys) {\n case \"passthrough\":\n return refs.allowedAdditionalProperties;\n case \"strict\":\n return refs.rejectedAdditionalProperties;\n case \"strip\":\n return refs.removeAdditionalStrategy === \"strict\"\n ? refs.allowedAdditionalProperties\n : refs.rejectedAdditionalProperties;\n }\n}\nfunction safeIsOptional(schema) {\n try {\n return schema.isOptional();\n }\n catch {\n return true;\n }\n}\n","import { parseDef } from \"../parseDef.js\";\nimport { parseAnyDef } from \"./any.js\";\nexport const parseOptionalDef = (def, refs) => {\n if (refs.currentPath.toString() === refs.propertyPath?.toString()) {\n return parseDef(def.innerType._def, refs);\n }\n const innerSchema = parseDef(def.innerType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"anyOf\", \"1\"],\n });\n return innerSchema\n ? {\n anyOf: [\n {\n not: parseAnyDef(refs),\n },\n innerSchema,\n ],\n }\n : parseAnyDef(refs);\n};\n","import { parseDef } from \"../parseDef.js\";\nexport const parsePipelineDef = (def, refs) => {\n if (refs.pipeStrategy === \"input\") {\n return parseDef(def.in._def, refs);\n }\n else if (refs.pipeStrategy === \"output\") {\n return parseDef(def.out._def, refs);\n }\n const a = parseDef(def.in._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"allOf\", \"0\"],\n });\n const b = parseDef(def.out._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"allOf\", a ? \"1\" : \"0\"],\n });\n return {\n allOf: [a, b].filter((x) => x !== undefined),\n };\n};\n","import { parseDef } from \"../parseDef.js\";\nexport function parsePromiseDef(def, refs) {\n return parseDef(def.type._def, refs);\n}\n","import { setResponseValueAndErrors } from \"../errorMessages.js\";\nimport { parseDef } from \"../parseDef.js\";\nexport function parseSetDef(def, refs) {\n const items = parseDef(def.valueType._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\"],\n });\n const schema = {\n type: \"array\",\n uniqueItems: true,\n items,\n };\n if (def.minSize) {\n setResponseValueAndErrors(schema, \"minItems\", def.minSize.value, def.minSize.message, refs);\n }\n if (def.maxSize) {\n setResponseValueAndErrors(schema, \"maxItems\", def.maxSize.value, def.maxSize.message, refs);\n }\n return schema;\n}\n","import { parseDef } from \"../parseDef.js\";\nexport function parseTupleDef(def, refs) {\n if (def.rest) {\n return {\n type: \"array\",\n minItems: def.items.length,\n items: def.items\n .map((x, i) => parseDef(x._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\", `${i}`],\n }))\n .reduce((acc, x) => (x === undefined ? acc : [...acc, x]), []),\n additionalItems: parseDef(def.rest._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"additionalItems\"],\n }),\n };\n }\n else {\n return {\n type: \"array\",\n minItems: def.items.length,\n maxItems: def.items.length,\n items: def.items\n .map((x, i) => parseDef(x._def, {\n ...refs,\n currentPath: [...refs.currentPath, \"items\", `${i}`],\n }))\n .reduce((acc, x) => (x === undefined ? acc : [...acc, x]), []),\n };\n }\n}\n","import { parseAnyDef } from \"./any.js\";\nexport function parseUndefinedDef(refs) {\n return {\n not: parseAnyDef(refs),\n };\n}\n","import { parseAnyDef } from \"./any.js\";\nexport function parseUnknownDef(refs) {\n return parseAnyDef(refs);\n}\n","import { parseDef } from \"../parseDef.js\";\nexport const parseReadonlyDef = (def, refs) => {\n return parseDef(def.innerType._def, refs);\n};\n","import { ZodFirstPartyTypeKind } from \"zod/v3\";\nimport { parseAnyDef } from \"./parsers/any.js\";\nimport { parseArrayDef } from \"./parsers/array.js\";\nimport { parseBigintDef } from \"./parsers/bigint.js\";\nimport { parseBooleanDef } from \"./parsers/boolean.js\";\nimport { parseBrandedDef } from \"./parsers/branded.js\";\nimport { parseCatchDef } from \"./parsers/catch.js\";\nimport { parseDateDef } from \"./parsers/date.js\";\nimport { parseDefaultDef } from \"./parsers/default.js\";\nimport { parseEffectsDef } from \"./parsers/effects.js\";\nimport { parseEnumDef } from \"./parsers/enum.js\";\nimport { parseIntersectionDef } from \"./parsers/intersection.js\";\nimport { parseLiteralDef } from \"./parsers/literal.js\";\nimport { parseMapDef } from \"./parsers/map.js\";\nimport { parseNativeEnumDef } from \"./parsers/nativeEnum.js\";\nimport { parseNeverDef } from \"./parsers/never.js\";\nimport { parseNullDef } from \"./parsers/null.js\";\nimport { parseNullableDef } from \"./parsers/nullable.js\";\nimport { parseNumberDef } from \"./parsers/number.js\";\nimport { parseObjectDef } from \"./parsers/object.js\";\nimport { parseOptionalDef } from \"./parsers/optional.js\";\nimport { parsePipelineDef } from \"./parsers/pipeline.js\";\nimport { parsePromiseDef } from \"./parsers/promise.js\";\nimport { parseRecordDef } from \"./parsers/record.js\";\nimport { parseSetDef } from \"./parsers/set.js\";\nimport { parseStringDef } from \"./parsers/string.js\";\nimport { parseTupleDef } from \"./parsers/tuple.js\";\nimport { parseUndefinedDef } from \"./parsers/undefined.js\";\nimport { parseUnionDef } from \"./parsers/union.js\";\nimport { parseUnknownDef } from \"./parsers/unknown.js\";\nimport { parseReadonlyDef } from \"./parsers/readonly.js\";\nexport const selectParser = (def, typeName, refs) => {\n switch (typeName) {\n case ZodFirstPartyTypeKind.ZodString:\n return parseStringDef(def, refs);\n case ZodFirstPartyTypeKind.ZodNumber:\n return parseNumberDef(def, refs);\n case ZodFirstPartyTypeKind.ZodObject:\n return parseObjectDef(def, refs);\n case ZodFirstPartyTypeKind.ZodBigInt:\n return parseBigintDef(def, refs);\n case ZodFirstPartyTypeKind.ZodBoolean:\n return parseBooleanDef();\n case ZodFirstPartyTypeKind.ZodDate:\n return parseDateDef(def, refs);\n case ZodFirstPartyTypeKind.ZodUndefined:\n return parseUndefinedDef(refs);\n case ZodFirstPartyTypeKind.ZodNull:\n return parseNullDef(refs);\n case ZodFirstPartyTypeKind.ZodArray:\n return parseArrayDef(def, refs);\n case ZodFirstPartyTypeKind.ZodUnion:\n case ZodFirstPartyTypeKind.ZodDiscriminatedUnion:\n return parseUnionDef(def, refs);\n case ZodFirstPartyTypeKind.ZodIntersection:\n return parseIntersectionDef(def, refs);\n case ZodFirstPartyTypeKind.ZodTuple:\n return parseTupleDef(def, refs);\n case ZodFirstPartyTypeKind.ZodRecord:\n return parseRecordDef(def, refs);\n case ZodFirstPartyTypeKind.ZodLiteral:\n return parseLiteralDef(def, refs);\n case ZodFirstPartyTypeKind.ZodEnum:\n return parseEnumDef(def);\n case ZodFirstPartyTypeKind.ZodNativeEnum:\n return parseNativeEnumDef(def);\n case ZodFirstPartyTypeKind.ZodNullable:\n return parseNullableDef(def, refs);\n case ZodFirstPartyTypeKind.ZodOptional:\n return parseOptionalDef(def, refs);\n case ZodFirstPartyTypeKind.ZodMap:\n return parseMapDef(def, refs);\n case ZodFirstPartyTypeKind.ZodSet:\n return parseSetDef(def, refs);\n case ZodFirstPartyTypeKind.ZodLazy:\n return () => def.getter()._def;\n case ZodFirstPartyTypeKind.ZodPromise:\n return parsePromiseDef(def, refs);\n case ZodFirstPartyTypeKind.ZodNaN:\n case ZodFirstPartyTypeKind.ZodNever:\n return parseNeverDef(refs);\n case ZodFirstPartyTypeKind.ZodEffects:\n return parseEffectsDef(def, refs);\n case ZodFirstPartyTypeKind.ZodAny:\n return parseAnyDef(refs);\n case ZodFirstPartyTypeKind.ZodUnknown:\n return parseUnknownDef(refs);\n case ZodFirstPartyTypeKind.ZodDefault:\n return parseDefaultDef(def, refs);\n case ZodFirstPartyTypeKind.ZodBranded:\n return parseBrandedDef(def, refs);\n case ZodFirstPartyTypeKind.ZodReadonly:\n return parseReadonlyDef(def, refs);\n case ZodFirstPartyTypeKind.ZodCatch:\n return parseCatchDef(def, refs);\n case ZodFirstPartyTypeKind.ZodPipeline:\n return parsePipelineDef(def, refs);\n case ZodFirstPartyTypeKind.ZodFunction:\n case ZodFirstPartyTypeKind.ZodVoid:\n case ZodFirstPartyTypeKind.ZodSymbol:\n return undefined;\n default:\n return ((_) => undefined)(typeName);\n }\n};\n","import { ignoreOverride } from \"./Options.js\";\nimport { selectParser } from \"./selectParser.js\";\nimport { getRelativePath } from \"./getRelativePath.js\";\nimport { parseAnyDef } from \"./parsers/any.js\";\nexport function parseDef(def, refs, forceResolution = false) {\n const seenItem = refs.seen.get(def);\n if (refs.override) {\n const overrideResult = refs.override?.(def, refs, seenItem, forceResolution);\n if (overrideResult !== ignoreOverride) {\n return overrideResult;\n }\n }\n if (seenItem && !forceResolution) {\n const seenSchema = get$ref(seenItem, refs);\n if (seenSchema !== undefined) {\n return seenSchema;\n }\n }\n const newItem = { def, path: refs.currentPath, jsonSchema: undefined };\n refs.seen.set(def, newItem);\n const jsonSchemaOrGetter = selectParser(def, def.typeName, refs);\n // If the return was a function, then the inner definition needs to be extracted before a call to parseDef (recursive)\n const jsonSchema = typeof jsonSchemaOrGetter === \"function\"\n ? parseDef(jsonSchemaOrGetter(), refs)\n : jsonSchemaOrGetter;\n if (jsonSchema) {\n addMeta(def, refs, jsonSchema);\n }\n if (refs.postProcess) {\n const postProcessResult = refs.postProcess(jsonSchema, def, refs);\n newItem.jsonSchema = jsonSchema;\n return postProcessResult;\n }\n newItem.jsonSchema = jsonSchema;\n return jsonSchema;\n}\nconst get$ref = (item, refs) => {\n switch (refs.$refStrategy) {\n case \"root\":\n return { $ref: item.path.join(\"/\") };\n case \"relative\":\n return { $ref: getRelativePath(refs.currentPath, item.path) };\n case \"none\":\n case \"seen\": {\n if (item.path.length < refs.currentPath.length &&\n item.path.every((value, index) => refs.currentPath[index] === value)) {\n console.warn(`Recursive reference detected at ${refs.currentPath.join(\"/\")}! Defaulting to any`);\n return parseAnyDef(refs);\n }\n return refs.$refStrategy === \"seen\" ? parseAnyDef(refs) : undefined;\n }\n }\n};\nconst addMeta = (def, refs, jsonSchema) => {\n if (def.description) {\n jsonSchema.description = def.description;\n if (refs.markdownDescription) {\n jsonSchema.markdownDescription = def.description;\n }\n }\n return jsonSchema;\n};\n","import { parseDef } from \"./parseDef.js\";\nimport { getRefs } from \"./Refs.js\";\nimport { parseAnyDef } from \"./parsers/any.js\";\nconst zodToJsonSchema = (schema, options) => {\n const refs = getRefs(options);\n let definitions = typeof options === \"object\" && options.definitions\n ? Object.entries(options.definitions).reduce((acc, [name, schema]) => ({\n ...acc,\n [name]: parseDef(schema._def, {\n ...refs,\n currentPath: [...refs.basePath, refs.definitionPath, name],\n }, true) ?? parseAnyDef(refs),\n }), {})\n : undefined;\n const name = typeof options === \"string\"\n ? options\n : options?.nameStrategy === \"title\"\n ? undefined\n : options?.name;\n const main = parseDef(schema._def, name === undefined\n ? refs\n : {\n ...refs,\n currentPath: [...refs.basePath, refs.definitionPath, name],\n }, false) ?? parseAnyDef(refs);\n const title = typeof options === \"object\" &&\n options.name !== undefined &&\n options.nameStrategy === \"title\"\n ? options.name\n : undefined;\n if (title !== undefined) {\n main.title = title;\n }\n if (refs.flags.hasReferencedOpenAiAnyType) {\n if (!definitions) {\n definitions = {};\n }\n if (!definitions[refs.openAiAnyTypeName]) {\n definitions[refs.openAiAnyTypeName] = {\n // Skipping \"object\" as no properties can be defined and additionalProperties must be \"false\"\n type: [\"string\", \"number\", \"integer\", \"boolean\", \"array\", \"null\"],\n items: {\n $ref: refs.$refStrategy === \"relative\"\n ? \"1\"\n : [\n ...refs.basePath,\n refs.definitionPath,\n refs.openAiAnyTypeName,\n ].join(\"/\"),\n },\n };\n }\n }\n const combined = name === undefined\n ? definitions\n ? {\n ...main,\n [refs.definitionPath]: definitions,\n }\n : main\n : {\n $ref: [\n ...(refs.$refStrategy === \"relative\" ? [] : refs.basePath),\n refs.definitionPath,\n name,\n ].join(\"/\"),\n [refs.definitionPath]: {\n ...definitions,\n [name]: main,\n },\n };\n if (refs.target === \"jsonSchema7\") {\n combined.$schema = \"http://json-schema.org/draft-07/schema#\";\n }\n else if (refs.target === \"jsonSchema2019-09\" || refs.target === \"openAi\") {\n combined.$schema = \"https://json-schema.org/draft/2019-09/schema#\";\n }\n if (refs.target === \"openAi\" &&\n (\"anyOf\" in combined ||\n \"oneOf\" in combined ||\n \"allOf\" in combined ||\n (\"type\" in combined && Array.isArray(combined.type)))) {\n console.warn(\"Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property.\");\n }\n return combined;\n};\nexport { zodToJsonSchema };\n","export * from \"./Options.js\";\nexport * from \"./Refs.js\";\nexport * from \"./errorMessages.js\";\nexport * from \"./getRelativePath.js\";\nexport * from \"./parseDef.js\";\nexport * from \"./parseTypes.js\";\nexport * from \"./parsers/any.js\";\nexport * from \"./parsers/array.js\";\nexport * from \"./parsers/bigint.js\";\nexport * from \"./parsers/boolean.js\";\nexport * from \"./parsers/branded.js\";\nexport * from \"./parsers/catch.js\";\nexport * from \"./parsers/date.js\";\nexport * from \"./parsers/default.js\";\nexport * from \"./parsers/effects.js\";\nexport * from \"./parsers/enum.js\";\nexport * from \"./parsers/intersection.js\";\nexport * from \"./parsers/literal.js\";\nexport * from \"./parsers/map.js\";\nexport * from \"./parsers/nativeEnum.js\";\nexport * from \"./parsers/never.js\";\nexport * from \"./parsers/null.js\";\nexport * from \"./parsers/nullable.js\";\nexport * from \"./parsers/number.js\";\nexport * from \"./parsers/object.js\";\nexport * from \"./parsers/optional.js\";\nexport * from \"./parsers/pipeline.js\";\nexport * from \"./parsers/promise.js\";\nexport * from \"./parsers/readonly.js\";\nexport * from \"./parsers/record.js\";\nexport * from \"./parsers/set.js\";\nexport * from \"./parsers/string.js\";\nexport * from \"./parsers/tuple.js\";\nexport * from \"./parsers/undefined.js\";\nexport * from \"./parsers/union.js\";\nexport * from \"./parsers/unknown.js\";\nexport * from \"./selectParser.js\";\nexport * from \"./zodToJsonSchema.js\";\nimport { zodToJsonSchema } from \"./zodToJsonSchema.js\";\nexport default zodToJsonSchema;\n"]}