@mastra/deployer 1.0.0-beta.11 → 1.0.0-beta.14

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 (136) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/dist/arktype-aI7TBD0R-CCZH3EYK.js +8 -0
  3. package/dist/{arktype-aI7TBD0R-OEPFT4G6.js.map → arktype-aI7TBD0R-CCZH3EYK.js.map} +1 -1
  4. package/dist/{arktype-aI7TBD0R-4YXBEQBG.cjs → arktype-aI7TBD0R-XHBHUL3T.cjs} +3 -3
  5. package/dist/{arktype-aI7TBD0R-4YXBEQBG.cjs.map → arktype-aI7TBD0R-XHBHUL3T.cjs.map} +1 -1
  6. package/dist/build/analyze/bundleExternals.d.ts +4 -5
  7. package/dist/build/analyze/bundleExternals.d.ts.map +1 -1
  8. package/dist/build/analyze.cjs +2 -2
  9. package/dist/build/analyze.d.ts +3 -4
  10. package/dist/build/analyze.d.ts.map +1 -1
  11. package/dist/build/analyze.js +1 -1
  12. package/dist/build/bundler.cjs +3 -3
  13. package/dist/build/bundler.d.ts +2 -1
  14. package/dist/build/bundler.d.ts.map +1 -1
  15. package/dist/build/bundler.js +1 -1
  16. package/dist/build/index.cjs +12 -12
  17. package/dist/build/index.js +4 -4
  18. package/dist/build/plugins/node-modules-extension-resolver.d.ts +7 -0
  19. package/dist/build/plugins/node-modules-extension-resolver.d.ts.map +1 -1
  20. package/dist/build/types.d.ts +5 -0
  21. package/dist/build/types.d.ts.map +1 -1
  22. package/dist/build/utils.d.ts +6 -0
  23. package/dist/build/utils.d.ts.map +1 -1
  24. package/dist/build/watcher.d.ts.map +1 -1
  25. package/dist/bundler/index.cjs +6 -2
  26. package/dist/bundler/index.d.ts +7 -7
  27. package/dist/bundler/index.d.ts.map +1 -1
  28. package/dist/bundler/index.js +1 -1
  29. package/dist/chunk-2VG357HT.cjs +4 -0
  30. package/dist/{chunk-BTNPI4Z7.cjs.map → chunk-2VG357HT.cjs.map} +1 -1
  31. package/dist/chunk-4P2LYC33.js +14 -0
  32. package/dist/{chunk-N5TMJUIR.js.map → chunk-4P2LYC33.js.map} +1 -1
  33. package/dist/chunk-54PQDTM3.cjs +16 -0
  34. package/dist/{chunk-ID3HN3BH.cjs.map → chunk-54PQDTM3.cjs.map} +1 -1
  35. package/dist/{chunk-MMUE22EL.js → chunk-5HTKP372.js} +9 -9
  36. package/dist/{chunk-MMUE22EL.js.map → chunk-5HTKP372.js.map} +1 -1
  37. package/dist/{chunk-HFP6WWM5.js → chunk-BFA354MH.js} +6 -76
  38. package/dist/chunk-BFA354MH.js.map +1 -0
  39. package/dist/chunk-C6UFSG3V.js +249 -0
  40. package/dist/chunk-C6UFSG3V.js.map +1 -0
  41. package/dist/{chunk-TXKETRIN.cjs → chunk-DMISJICL.cjs} +9 -9
  42. package/dist/{chunk-TXKETRIN.cjs.map → chunk-DMISJICL.cjs.map} +1 -1
  43. package/dist/chunk-G6GFAPPU.js +6 -0
  44. package/dist/{chunk-Q2YGWEXY.js.map → chunk-G6GFAPPU.js.map} +1 -1
  45. package/dist/{chunk-NM6R77PX.js → chunk-HHA2Y3AS.js} +7 -3
  46. package/dist/chunk-HHA2Y3AS.js.map +1 -0
  47. package/dist/{chunk-3KATYU33.js → chunk-HNSVE6YO.js} +85 -36
  48. package/dist/chunk-HNSVE6YO.js.map +1 -0
  49. package/dist/chunk-HPGDVJAZ.js +3 -0
  50. package/dist/{chunk-FBT6QP7J.js.map → chunk-HPGDVJAZ.js.map} +1 -1
  51. package/dist/{chunk-PK3AX3KO.cjs → chunk-IVKDKRCR.cjs} +42 -31
  52. package/dist/chunk-IVKDKRCR.cjs.map +1 -0
  53. package/dist/{chunk-GD2TGMBP.cjs → chunk-JBE6KM7R.cjs} +3 -3
  54. package/dist/{chunk-GD2TGMBP.cjs.map → chunk-JBE6KM7R.cjs.map} +1 -1
  55. package/dist/{chunk-7PLNIFGZ.cjs → chunk-KE4NVPI4.cjs} +3 -3
  56. package/dist/{chunk-7PLNIFGZ.cjs.map → chunk-KE4NVPI4.cjs.map} +1 -1
  57. package/dist/chunk-PB5O2NTZ.cjs +261 -0
  58. package/dist/chunk-PB5O2NTZ.cjs.map +1 -0
  59. package/dist/{chunk-EHZKDGGA.cjs → chunk-UJXH5MNH.cjs} +102 -53
  60. package/dist/chunk-UJXH5MNH.cjs.map +1 -0
  61. package/dist/{chunk-P4L6VIHY.js → chunk-V4HCIN6G.js} +3 -3
  62. package/dist/{chunk-P4L6VIHY.js.map → chunk-V4HCIN6G.js.map} +1 -1
  63. package/dist/chunk-V5W7WIXT.cjs +123 -0
  64. package/dist/chunk-V5W7WIXT.cjs.map +1 -0
  65. package/dist/{chunk-F2LCS2DV.cjs → chunk-VA2CSOKJ.cjs} +7 -2
  66. package/dist/chunk-VA2CSOKJ.cjs.map +1 -0
  67. package/dist/{chunk-5OGQ7IFB.js → chunk-ZXT4NSIV.js} +35 -25
  68. package/dist/chunk-ZXT4NSIV.js.map +1 -0
  69. package/dist/default-u_dwuiYb-IKALPRLV.js +3 -0
  70. package/dist/{default-u_dwuiYb-65M4BHAA.js.map → default-u_dwuiYb-IKALPRLV.js.map} +1 -1
  71. package/dist/default-u_dwuiYb-ZNEZWEPC.cjs +9 -0
  72. package/dist/{default-u_dwuiYb-PWN6FHC6.cjs.map → default-u_dwuiYb-ZNEZWEPC.cjs.map} +1 -1
  73. package/dist/effect-QlVUlMFu-2KN4AWBH.cjs +17 -0
  74. package/dist/{effect-QlVUlMFu-2ADPKIDF.cjs.map → effect-QlVUlMFu-2KN4AWBH.cjs.map} +1 -1
  75. package/dist/{effect-QlVUlMFu-FD73M3OO.js → effect-QlVUlMFu-MWXQUT6S.js} +4 -4
  76. package/dist/{effect-QlVUlMFu-FD73M3OO.js.map → effect-QlVUlMFu-MWXQUT6S.js.map} +1 -1
  77. package/dist/index.cjs +5 -5
  78. package/dist/index.js +2 -2
  79. package/dist/server/index.cjs +5 -5
  80. package/dist/server/index.cjs.map +1 -1
  81. package/dist/server/index.js +3 -3
  82. package/dist/server/index.js.map +1 -1
  83. package/dist/sury-CWZTCd75-6QYFZXZY.cjs +17 -0
  84. package/dist/{sury-CWZTCd75-K3FHMZF5.cjs.map → sury-CWZTCd75-6QYFZXZY.cjs.map} +1 -1
  85. package/dist/{sury-CWZTCd75-Y2GURJ6K.js → sury-CWZTCd75-DAPFEZIA.js} +4 -4
  86. package/dist/{sury-CWZTCd75-Y2GURJ6K.js.map → sury-CWZTCd75-DAPFEZIA.js.map} +1 -1
  87. package/dist/typebox-Dei93FPO-LBLFC3RD.js +8 -0
  88. package/dist/{typebox-Dei93FPO-2WP4NOYD.js.map → typebox-Dei93FPO-LBLFC3RD.js.map} +1 -1
  89. package/dist/{typebox-Dei93FPO-WTXAW2LA.cjs → typebox-Dei93FPO-RDSW6DFA.cjs} +3 -3
  90. package/dist/{typebox-Dei93FPO-WTXAW2LA.cjs.map → typebox-Dei93FPO-RDSW6DFA.cjs.map} +1 -1
  91. package/dist/{valibot--1zFm7rT-VGFBTDTW.js → valibot--1zFm7rT-AASENK42.js} +4 -4
  92. package/dist/{valibot--1zFm7rT-VGFBTDTW.js.map → valibot--1zFm7rT-AASENK42.js.map} +1 -1
  93. package/dist/valibot--1zFm7rT-OOWNQW47.cjs +17 -0
  94. package/dist/{valibot--1zFm7rT-HMTCRBB3.cjs.map → valibot--1zFm7rT-OOWNQW47.cjs.map} +1 -1
  95. package/dist/{valibot-D_HTw1Gn-ILCWWLE4.cjs → valibot-D_HTw1Gn-PBXMZJWR.cjs} +7 -7
  96. package/dist/{valibot-D_HTw1Gn-ILCWWLE4.cjs.map → valibot-D_HTw1Gn-PBXMZJWR.cjs.map} +1 -1
  97. package/dist/{valibot-D_HTw1Gn-LLCGNU3W.js → valibot-D_HTw1Gn-PCY2UTIB.js} +5 -5
  98. package/dist/{valibot-D_HTw1Gn-LLCGNU3W.js.map → valibot-D_HTw1Gn-PCY2UTIB.js.map} +1 -1
  99. package/dist/validator/custom-resolver.cjs +2 -2
  100. package/dist/validator/custom-resolver.js +1 -1
  101. package/dist/{zod-Bwrt9trS-XCRGYQVE.js → zod-Bwrt9trS-MTR3E2QO.js} +4 -4
  102. package/dist/{zod-Bwrt9trS-XCRGYQVE.js.map → zod-Bwrt9trS-MTR3E2QO.js.map} +1 -1
  103. package/dist/{zod-Bwrt9trS-XDMWF3NW.cjs → zod-Bwrt9trS-OXQA54TZ.cjs} +6 -6
  104. package/dist/{zod-Bwrt9trS-XDMWF3NW.cjs.map → zod-Bwrt9trS-OXQA54TZ.cjs.map} +1 -1
  105. package/dist/{zod-DSgpEGAE-ZWQMF6SS.cjs → zod-DSgpEGAE-7BIIMWZW.cjs} +7 -7
  106. package/dist/{zod-DSgpEGAE-ZWQMF6SS.cjs.map → zod-DSgpEGAE-7BIIMWZW.cjs.map} +1 -1
  107. package/dist/{zod-DSgpEGAE-TKBHSSLS.js → zod-DSgpEGAE-UO7OP3J6.js} +5 -5
  108. package/dist/{zod-DSgpEGAE-TKBHSSLS.js.map → zod-DSgpEGAE-UO7OP3J6.js.map} +1 -1
  109. package/package.json +5 -6
  110. package/dist/arktype-aI7TBD0R-OEPFT4G6.js +0 -8
  111. package/dist/chunk-3KATYU33.js.map +0 -1
  112. package/dist/chunk-5OGQ7IFB.js.map +0 -1
  113. package/dist/chunk-BTNPI4Z7.cjs +0 -4
  114. package/dist/chunk-EHZKDGGA.cjs.map +0 -1
  115. package/dist/chunk-F2LCS2DV.cjs.map +0 -1
  116. package/dist/chunk-FBT6QP7J.js +0 -3
  117. package/dist/chunk-HFP6WWM5.js.map +0 -1
  118. package/dist/chunk-ID3HN3BH.cjs +0 -16
  119. package/dist/chunk-N5TMJUIR.js +0 -14
  120. package/dist/chunk-NM6R77PX.js.map +0 -1
  121. package/dist/chunk-PK3AX3KO.cjs.map +0 -1
  122. package/dist/chunk-Q2YGWEXY.js +0 -6
  123. package/dist/chunk-UG72ONP7.js +0 -147
  124. package/dist/chunk-UG72ONP7.js.map +0 -1
  125. package/dist/chunk-Z33LQHGJ.cjs +0 -196
  126. package/dist/chunk-Z33LQHGJ.cjs.map +0 -1
  127. package/dist/chunk-ZPUTJSEC.cjs +0 -157
  128. package/dist/chunk-ZPUTJSEC.cjs.map +0 -1
  129. package/dist/default-u_dwuiYb-65M4BHAA.js +0 -3
  130. package/dist/default-u_dwuiYb-PWN6FHC6.cjs +0 -9
  131. package/dist/effect-QlVUlMFu-2ADPKIDF.cjs +0 -17
  132. package/dist/server/handlers/prompt.d.ts +0 -3
  133. package/dist/server/handlers/prompt.d.ts.map +0 -1
  134. package/dist/sury-CWZTCd75-K3FHMZF5.cjs +0 -17
  135. package/dist/typebox-Dei93FPO-2WP4NOYD.js +0 -8
  136. package/dist/valibot--1zFm7rT-HMTCRBB3.cjs +0 -17
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkZPUTJSEC_cjs = require('./chunk-ZPUTJSEC.cjs');
4
- var chunkEHZKDGGA_cjs = require('./chunk-EHZKDGGA.cjs');
3
+ var chunkPB5O2NTZ_cjs = require('./chunk-PB5O2NTZ.cjs');
4
+ var chunkUJXH5MNH_cjs = require('./chunk-UJXH5MNH.cjs');
5
5
  var chunkJVBCN3RH_cjs = require('./chunk-JVBCN3RH.cjs');
6
- var chunkF2LCS2DV_cjs = require('./chunk-F2LCS2DV.cjs');
6
+ var chunkVA2CSOKJ_cjs = require('./chunk-VA2CSOKJ.cjs');
7
7
  var fs = require('fs');
8
8
  var promises = require('fs/promises');
9
9
  var path = require('path');
@@ -38,6 +38,7 @@ var virtual__default = /*#__PURE__*/_interopDefault(virtual);
38
38
  var pkg__namespace = /*#__PURE__*/_interopNamespace(pkg);
39
39
  var fsExtra__default = /*#__PURE__*/_interopDefault(fsExtra);
40
40
 
41
+ var IS_DEFAULT = Symbol("IS_DEFAULT");
41
42
  var Bundler = class extends bundler.MastraBundler {
42
43
  analyzeOutputDir = ".build";
43
44
  outputDir = "output";
@@ -89,19 +90,31 @@ var Bundler = class extends bundler.MastraBundler {
89
90
  );
90
91
  }
91
92
  createBundler(inputOptions, outputOptions) {
92
- return chunkZPUTJSEC_cjs.createBundler(inputOptions, outputOptions);
93
+ return chunkPB5O2NTZ_cjs.createBundler(inputOptions, outputOptions);
93
94
  }
94
- async analyze(entry, mastraFile, outputDirectory, { enableEsmShim = true } = {}) {
95
- return await chunkEHZKDGGA_cjs.analyzeBundle(
95
+ async getUserBundlerOptions(mastraEntryFile, outputDirectory) {
96
+ const defaultBundlerOptions = {
97
+ externals: [],
98
+ sourcemap: false,
99
+ transpilePackages: [],
100
+ [IS_DEFAULT]: true
101
+ };
102
+ try {
103
+ const bundlerOptions = await chunkUJXH5MNH_cjs.getBundlerOptions(mastraEntryFile, outputDirectory);
104
+ return bundlerOptions ?? defaultBundlerOptions;
105
+ } catch (error) {
106
+ this.logger.debug("Failed to get bundler options, sourcemap will be disabled", { error });
107
+ }
108
+ return defaultBundlerOptions;
109
+ }
110
+ async analyze(entry, mastraFile, outputDirectory) {
111
+ return await chunkUJXH5MNH_cjs.analyzeBundle(
96
112
  [].concat(entry),
97
113
  mastraFile,
98
114
  {
99
115
  outputDir: path.join(outputDirectory, this.analyzeOutputDir),
100
116
  projectRoot: outputDirectory,
101
- platform: "node",
102
- bundlerOptions: {
103
- enableEsmShim
104
- }
117
+ platform: "node"
105
118
  },
106
119
  this.logger
107
120
  );
@@ -133,18 +146,18 @@ var Bundler = class extends bundler.MastraBundler {
133
146
  return;
134
147
  }
135
148
  }
136
- async getBundlerOptions(serverFile, mastraEntryFile, analyzedBundleInfo, toolsPaths, { enableSourcemap = false, enableEsmShim = true } = {}) {
137
- const { workspaceRoot } = await chunkEHZKDGGA_cjs.getWorkspaceInformation({ mastraEntryFile });
149
+ async getBundlerOptions(serverFile, mastraEntryFile, analyzedBundleInfo, toolsPaths, { enableSourcemap, enableEsmShim, externals }) {
150
+ const { workspaceRoot } = await chunkUJXH5MNH_cjs.getWorkspaceInformation({ mastraEntryFile });
138
151
  const closestPkgJson = pkg__namespace.up({ cwd: path.dirname(mastraEntryFile) });
139
152
  const projectRoot = closestPkgJson ? path.dirname(closestPkgJson) : process.cwd();
140
- const inputOptions = await chunkZPUTJSEC_cjs.getInputOptions(
153
+ const inputOptions = await chunkPB5O2NTZ_cjs.getInputOptions(
141
154
  mastraEntryFile,
142
155
  analyzedBundleInfo,
143
156
  "node",
144
157
  {
145
158
  "process.env.NODE_ENV": JSON.stringify("production")
146
159
  },
147
- { sourcemap: enableSourcemap, workspaceRoot, projectRoot, enableEsmShim }
160
+ { sourcemap: enableSourcemap, workspaceRoot, projectRoot, enableEsmShim, externalsPreset: externals === true }
148
161
  );
149
162
  const isVirtual = serverFile.includes("\n") || fs.existsSync(serverFile);
150
163
  const toolsInputOptions = await this.listToolsInputOptions(toolsPaths);
@@ -161,7 +174,7 @@ var Bundler = class extends bundler.MastraBundler {
161
174
  return inputOptions;
162
175
  }
163
176
  getAllToolPaths(mastraDir, toolsPaths = []) {
164
- const normalizedMastraDir = chunkF2LCS2DV_cjs.slash(mastraDir);
177
+ const normalizedMastraDir = chunkVA2CSOKJ_cjs.slash(mastraDir);
165
178
  const defaultToolsPath = path.posix.join(normalizedMastraDir, "tools/**/*.{js,ts}");
166
179
  const defaultToolsIgnorePaths = [
167
180
  `!${path.posix.join(normalizedMastraDir, "tools/**/*.{test,spec}.{js,ts}")}`,
@@ -209,26 +222,23 @@ var Bundler = class extends bundler.MastraBundler {
209
222
  enableEsmShim = true
210
223
  }, toolsPaths = [], bundleLocation = path.join(outputDirectory, this.outputDir)) {
211
224
  const analyzeDir = path.join(outputDirectory, this.analyzeOutputDir);
212
- let sourcemap = false;
213
- try {
214
- const bundlerOptions = await chunkEHZKDGGA_cjs.getBundlerOptions(mastraEntryFile, analyzeDir);
215
- sourcemap = !!bundlerOptions?.sourcemap;
216
- } catch (error) {
217
- this.logger.debug("Failed to get bundler options, sourcemap will be disabled", { error });
218
- }
225
+ const bundlerOptions = await this.getUserBundlerOptions(mastraEntryFile, outputDirectory);
226
+ const internalBundlerOptions = {
227
+ enableSourcemap: !!bundlerOptions.sourcemap,
228
+ externals: bundlerOptions.externals ?? [],
229
+ enableEsmShim
230
+ };
219
231
  let analyzedBundleInfo;
220
232
  try {
221
233
  const resolvedToolsPaths = await this.listToolsInputOptions(toolsPaths);
222
- analyzedBundleInfo = await chunkEHZKDGGA_cjs.analyzeBundle(
234
+ analyzedBundleInfo = await chunkUJXH5MNH_cjs.analyzeBundle(
223
235
  [serverFile, ...Object.values(resolvedToolsPaths)],
224
236
  mastraEntryFile,
225
237
  {
226
238
  outputDir: analyzeDir,
227
239
  projectRoot,
228
240
  platform: "node",
229
- bundlerOptions: {
230
- enableEsmShim
231
- }
241
+ bundlerOptions: internalBundlerOptions
232
242
  },
233
243
  this.logger
234
244
  );
@@ -253,7 +263,7 @@ var Bundler = class extends bundler.MastraBundler {
253
263
  if (analyzedBundleInfo.workspaceMap.has(dep)) {
254
264
  continue;
255
265
  }
256
- const rootPath = await chunkEHZKDGGA_cjs.getPackageRootPath(dep);
266
+ const rootPath = await chunkUJXH5MNH_cjs.getPackageRootPath(dep);
257
267
  const pkg2 = await fsExtra.readJSON(`${rootPath}/package.json`);
258
268
  dependenciesToInstall.set(dep, pkg2.version || "latest");
259
269
  } catch {
@@ -268,7 +278,7 @@ var Bundler = class extends bundler.MastraBundler {
268
278
  mastraEntryFile,
269
279
  analyzedBundleInfo,
270
280
  toolsPaths,
271
- { enableSourcemap: sourcemap, enableEsmShim }
281
+ internalBundlerOptions
272
282
  );
273
283
  const bundler = await this.createBundler(
274
284
  {
@@ -289,7 +299,7 @@ var Bundler = class extends bundler.MastraBundler {
289
299
  manualChunks: {
290
300
  mastra: ["#mastra"]
291
301
  },
292
- sourcemap
302
+ sourcemap: internalBundlerOptions.enableSourcemap
293
303
  }
294
304
  );
295
305
  await bundler.write();
@@ -339,5 +349,6 @@ export const tools = [${toolsExports.join(", ")}]`
339
349
  };
340
350
 
341
351
  exports.Bundler = Bundler;
342
- //# sourceMappingURL=chunk-PK3AX3KO.cjs.map
343
- //# sourceMappingURL=chunk-PK3AX3KO.cjs.map
352
+ exports.IS_DEFAULT = IS_DEFAULT;
353
+ //# sourceMappingURL=chunk-IVKDKRCR.cjs.map
354
+ //# sourceMappingURL=chunk-IVKDKRCR.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/bundler/index.ts"],"names":["MastraBundler","emptyDir","ensureDir","join","writeFile","createBundler","getBundlerOptions","analyzeBundle","DepsService","stat","copy","getWorkspaceInformation","pkg","dirname","getInputOptions","existsSync","virtual","slash","posix","glob","path","fsExtra","FileService","error","MastraError","ErrorDomain","ErrorCategory","getPackageRootPath","readJSON"],"mappings":"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","file":"chunk-IVKDKRCR.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 type { Config } from '@mastra/core/mastra';\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 } from '../build/package-info';\nimport type { BundlerOptions } from '../build/types';\nimport { slash } from '../build/utils';\nimport { DepsService } from '../services/deps';\nimport { FileService } from '../services/fs';\nimport { getWorkspaceInformation } from './workspaceDependencies';\n\nexport type { BundlerOptions } from '../build/types';\n\nexport const IS_DEFAULT = Symbol('IS_DEFAULT');\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 getUserBundlerOptions(\n mastraEntryFile: string,\n outputDirectory: string,\n ): Promise<NonNullable<Config['bundler']>> {\n const defaultBundlerOptions: Config['bundler'] = {\n externals: [],\n sourcemap: false,\n transpilePackages: [],\n [IS_DEFAULT]: true,\n } as const;\n\n try {\n const bundlerOptions = await getBundlerOptions(mastraEntryFile, outputDirectory);\n\n return bundlerOptions ?? defaultBundlerOptions;\n } catch (error) {\n this.logger.debug('Failed to get bundler options, sourcemap will be disabled', { error });\n }\n\n return defaultBundlerOptions;\n }\n\n protected async analyze(entry: string | string[], mastraFile: string, outputDirectory: string) {\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 },\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, enableEsmShim, externals }: BundlerOptions,\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, externalsPreset: externals === true },\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 }: {\n projectRoot: string;\n outputDirectory: string;\n enableEsmShim?: boolean;\n },\n toolsPaths: (string | string[])[] = [],\n bundleLocation: string = join(outputDirectory, this.outputDir),\n ): Promise<void> {\n const analyzeDir = join(outputDirectory, this.analyzeOutputDir);\n\n const bundlerOptions = await this.getUserBundlerOptions(mastraEntryFile, outputDirectory);\n const internalBundlerOptions: BundlerOptions = {\n enableSourcemap: !!bundlerOptions.sourcemap,\n externals: bundlerOptions.externals ?? [],\n enableEsmShim,\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: internalBundlerOptions,\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\n const inputOptions: InputOptions = await this.getBundlerOptions(\n serverFile,\n mastraEntryFile,\n analyzedBundleInfo,\n toolsPaths,\n internalBundlerOptions,\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: internalBundlerOptions.enableSourcemap,\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,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- // ../../node_modules/.pnpm/@standard-community+standard-openapi@0.2.9_@standard-community+standard-json@0.3.5_@sta_6b2d9861b7a7c4d0a87a848bef7ad405/node_modules/@standard-community/standard-openapi/dist/vendors/convert.js
3
+ // ../../node_modules/.pnpm/@standard-community+standard-openapi@0.2.9_@standard-community+standard-json@0.3.5_@sta_54b5e515d9ef28e1ec1313d6d3effba2/node_modules/@standard-community/standard-openapi/dist/vendors/convert.js
4
4
  function convertToOpenAPISchema(jsonSchema, context) {
5
5
  const _jsonSchema = JSON.parse(JSON.stringify(jsonSchema));
6
6
  if ("nullable" in _jsonSchema && _jsonSchema.nullable === true) {
@@ -91,5 +91,5 @@ function convertToOpenAPISchema(jsonSchema, context) {
91
91
  }
92
92
 
93
93
  exports.convertToOpenAPISchema = convertToOpenAPISchema;
94
- //# sourceMappingURL=chunk-GD2TGMBP.cjs.map
95
- //# sourceMappingURL=chunk-GD2TGMBP.cjs.map
94
+ //# sourceMappingURL=chunk-JBE6KM7R.cjs.map
95
+ //# sourceMappingURL=chunk-JBE6KM7R.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/.pnpm/@standard-community+standard-openapi@0.2.9_@standard-community+standard-json@0.3.5_@sta_6b2d9861b7a7c4d0a87a848bef7ad405/node_modules/@standard-community/standard-openapi/dist/vendors/convert.js"],"names":[],"mappings":"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","file":"chunk-GD2TGMBP.cjs","sourcesContent":["function convertToOpenAPISchema(jsonSchema, context) {\n const _jsonSchema = JSON.parse(JSON.stringify(jsonSchema));\n if (\"nullable\" in _jsonSchema && _jsonSchema.nullable === true) {\n if (_jsonSchema.type) {\n if (Array.isArray(_jsonSchema.type)) {\n if (!_jsonSchema.type.includes(\"null\")) {\n _jsonSchema.type.push(\"null\");\n }\n } else {\n _jsonSchema.type = [_jsonSchema.type, \"null\"];\n }\n } else {\n _jsonSchema.type = [\"null\"];\n }\n delete _jsonSchema.nullable;\n }\n if (_jsonSchema.$schema) {\n delete _jsonSchema.$schema;\n }\n const nestedSchemaKeys = [\n \"properties\",\n \"additionalProperties\",\n \"items\",\n \"additionalItems\",\n \"allOf\",\n \"anyOf\",\n \"oneOf\",\n \"not\",\n \"if\",\n \"then\",\n \"else\",\n \"definitions\",\n \"$defs\",\n \"patternProperties\",\n \"propertyNames\",\n \"contains\"\n // \"unevaluatedProperties\",\n // \"unevaluatedItems\",\n ];\n nestedSchemaKeys.forEach((key) => {\n if (_jsonSchema[key] && (typeof _jsonSchema[key] === \"object\" || Array.isArray(_jsonSchema[key]))) {\n if (key === \"properties\" || key === \"definitions\" || key === \"$defs\" || key === \"patternProperties\") {\n for (const subKey in _jsonSchema[key]) {\n _jsonSchema[key][subKey] = convertToOpenAPISchema(\n _jsonSchema[key][subKey],\n context\n );\n }\n } else if (key === \"allOf\" || key === \"anyOf\" || key === \"oneOf\") {\n _jsonSchema[key] = _jsonSchema[key].map(\n (item) => convertToOpenAPISchema(item, context)\n );\n } else if (key === \"items\") {\n if (Array.isArray(_jsonSchema[key])) {\n _jsonSchema[key] = _jsonSchema[key].map(\n (item) => convertToOpenAPISchema(item, context)\n );\n } else {\n _jsonSchema[key] = convertToOpenAPISchema(_jsonSchema[key], context);\n }\n } else {\n _jsonSchema[key] = convertToOpenAPISchema(_jsonSchema[key], context);\n }\n }\n });\n if (_jsonSchema.ref || _jsonSchema.$id) {\n const { ref, $id, ...component } = _jsonSchema;\n const id = ref || $id;\n context.components.schemas = {\n ...context.components.schemas,\n [id]: component\n };\n return {\n $ref: `#/components/schemas/${id}`\n };\n } else if (_jsonSchema.$ref) {\n const { $ref, $defs } = _jsonSchema;\n const ref = $ref.split(\"/\").pop();\n context.components.schemas = {\n ...context.components.schemas,\n ...$defs\n };\n return {\n $ref: `#/components/schemas/${ref}`\n };\n }\n return _jsonSchema;\n}\n\nexport { convertToOpenAPISchema };\n"]}
1
+ {"version":3,"sources":["../../../node_modules/.pnpm/@standard-community+standard-openapi@0.2.9_@standard-community+standard-json@0.3.5_@sta_54b5e515d9ef28e1ec1313d6d3effba2/node_modules/@standard-community/standard-openapi/dist/vendors/convert.js"],"names":[],"mappings":"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","file":"chunk-JBE6KM7R.cjs","sourcesContent":["function convertToOpenAPISchema(jsonSchema, context) {\n const _jsonSchema = JSON.parse(JSON.stringify(jsonSchema));\n if (\"nullable\" in _jsonSchema && _jsonSchema.nullable === true) {\n if (_jsonSchema.type) {\n if (Array.isArray(_jsonSchema.type)) {\n if (!_jsonSchema.type.includes(\"null\")) {\n _jsonSchema.type.push(\"null\");\n }\n } else {\n _jsonSchema.type = [_jsonSchema.type, \"null\"];\n }\n } else {\n _jsonSchema.type = [\"null\"];\n }\n delete _jsonSchema.nullable;\n }\n if (_jsonSchema.$schema) {\n delete _jsonSchema.$schema;\n }\n const nestedSchemaKeys = [\n \"properties\",\n \"additionalProperties\",\n \"items\",\n \"additionalItems\",\n \"allOf\",\n \"anyOf\",\n \"oneOf\",\n \"not\",\n \"if\",\n \"then\",\n \"else\",\n \"definitions\",\n \"$defs\",\n \"patternProperties\",\n \"propertyNames\",\n \"contains\"\n // \"unevaluatedProperties\",\n // \"unevaluatedItems\",\n ];\n nestedSchemaKeys.forEach((key) => {\n if (_jsonSchema[key] && (typeof _jsonSchema[key] === \"object\" || Array.isArray(_jsonSchema[key]))) {\n if (key === \"properties\" || key === \"definitions\" || key === \"$defs\" || key === \"patternProperties\") {\n for (const subKey in _jsonSchema[key]) {\n _jsonSchema[key][subKey] = convertToOpenAPISchema(\n _jsonSchema[key][subKey],\n context\n );\n }\n } else if (key === \"allOf\" || key === \"anyOf\" || key === \"oneOf\") {\n _jsonSchema[key] = _jsonSchema[key].map(\n (item) => convertToOpenAPISchema(item, context)\n );\n } else if (key === \"items\") {\n if (Array.isArray(_jsonSchema[key])) {\n _jsonSchema[key] = _jsonSchema[key].map(\n (item) => convertToOpenAPISchema(item, context)\n );\n } else {\n _jsonSchema[key] = convertToOpenAPISchema(_jsonSchema[key], context);\n }\n } else {\n _jsonSchema[key] = convertToOpenAPISchema(_jsonSchema[key], context);\n }\n }\n });\n if (_jsonSchema.ref || _jsonSchema.$id) {\n const { ref, $id, ...component } = _jsonSchema;\n const id = ref || $id;\n context.components.schemas = {\n ...context.components.schemas,\n [id]: component\n };\n return {\n $ref: `#/components/schemas/${id}`\n };\n } else if (_jsonSchema.$ref) {\n const { $ref, $defs } = _jsonSchema;\n const ref = $ref.split(\"/\").pop();\n context.components.schemas = {\n ...context.components.schemas,\n ...$defs\n };\n return {\n $ref: `#/components/schemas/${ref}`\n };\n }\n return _jsonSchema;\n}\n\nexport { convertToOpenAPISchema };\n"]}
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- // ../../node_modules/.pnpm/@standard-community+standard-openapi@0.2.9_@standard-community+standard-json@0.3.5_@sta_6b2d9861b7a7c4d0a87a848bef7ad405/node_modules/@standard-community/standard-openapi/dist/index-DZEfthgZ.js
3
+ // ../../node_modules/.pnpm/@standard-community+standard-openapi@0.2.9_@standard-community+standard-json@0.3.5_@sta_54b5e515d9ef28e1ec1313d6d3effba2/node_modules/@standard-community/standard-openapi/dist/index-DZEfthgZ.js
4
4
  var errorMessageWrapper = (message) => `standard-openapi: ${message}`;
5
5
 
6
6
  exports.errorMessageWrapper = errorMessageWrapper;
7
- //# sourceMappingURL=chunk-7PLNIFGZ.cjs.map
8
- //# sourceMappingURL=chunk-7PLNIFGZ.cjs.map
7
+ //# sourceMappingURL=chunk-KE4NVPI4.cjs.map
8
+ //# sourceMappingURL=chunk-KE4NVPI4.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/.pnpm/@standard-community+standard-openapi@0.2.9_@standard-community+standard-json@0.3.5_@sta_6b2d9861b7a7c4d0a87a848bef7ad405/node_modules/@standard-community/standard-openapi/dist/index-DZEfthgZ.js"],"names":[],"mappings":";;;AAAA,IAAM,mBAAA,GAAsB,CAAC,OAAA,KAAY,CAAA,kBAAA,EAAqB,OAAO,CAAA","file":"chunk-7PLNIFGZ.cjs","sourcesContent":["const errorMessageWrapper = (message) => `standard-openapi: ${message}`;\nconst openapiVendorMap = /* @__PURE__ */ new Map();\n\nconst getToOpenAPISchemaFn = async (vendor) => {\n const cached = openapiVendorMap.get(vendor);\n if (cached) {\n return cached;\n }\n let vendorFn;\n switch (vendor) {\n case \"valibot\":\n vendorFn = (await import('./valibot-D_HTw1Gn.js')).default();\n break;\n case \"zod\":\n vendorFn = (await import('./zod-DSgpEGAE.js')).default();\n break;\n default:\n vendorFn = (await import('./default-u_dwuiYb.js')).default();\n }\n openapiVendorMap.set(vendor, vendorFn);\n return vendorFn;\n};\n\nconst toOpenAPISchema = async (schema, context = {}) => {\n const fn = await getToOpenAPISchemaFn(schema[\"~standard\"].vendor);\n const { components = {}, options } = context;\n const _schema = await fn(schema, { components, options });\n return {\n schema: _schema,\n components: Object.keys(components).length > 0 ? components : void 0\n };\n};\nfunction loadVendor(vendor, fn) {\n openapiVendorMap.set(vendor, fn);\n}\n\nexport { errorMessageWrapper as e, loadVendor as l, toOpenAPISchema as t };\n"]}
1
+ {"version":3,"sources":["../../../node_modules/.pnpm/@standard-community+standard-openapi@0.2.9_@standard-community+standard-json@0.3.5_@sta_54b5e515d9ef28e1ec1313d6d3effba2/node_modules/@standard-community/standard-openapi/dist/index-DZEfthgZ.js"],"names":[],"mappings":";;;AAAA,IAAM,mBAAA,GAAsB,CAAC,OAAA,KAAY,CAAA,kBAAA,EAAqB,OAAO,CAAA","file":"chunk-KE4NVPI4.cjs","sourcesContent":["const errorMessageWrapper = (message) => `standard-openapi: ${message}`;\nconst openapiVendorMap = /* @__PURE__ */ new Map();\n\nconst getToOpenAPISchemaFn = async (vendor) => {\n const cached = openapiVendorMap.get(vendor);\n if (cached) {\n return cached;\n }\n let vendorFn;\n switch (vendor) {\n case \"valibot\":\n vendorFn = (await import('./valibot-D_HTw1Gn.js')).default();\n break;\n case \"zod\":\n vendorFn = (await import('./zod-DSgpEGAE.js')).default();\n break;\n default:\n vendorFn = (await import('./default-u_dwuiYb.js')).default();\n }\n openapiVendorMap.set(vendor, vendorFn);\n return vendorFn;\n};\n\nconst toOpenAPISchema = async (schema, context = {}) => {\n const fn = await getToOpenAPISchemaFn(schema[\"~standard\"].vendor);\n const { components = {}, options } = context;\n const _schema = await fn(schema, { components, options });\n return {\n schema: _schema,\n components: Object.keys(components).length > 0 ? components : void 0\n };\n};\nfunction loadVendor(vendor, fn) {\n openapiVendorMap.set(vendor, fn);\n}\n\nexport { errorMessageWrapper as e, loadVendor as l, toOpenAPISchema as t };\n"]}
@@ -0,0 +1,261 @@
1
+ 'use strict';
2
+
3
+ var chunkUJXH5MNH_cjs = require('./chunk-UJXH5MNH.cjs');
4
+ var chunkVA2CSOKJ_cjs = require('./chunk-VA2CSOKJ.cjs');
5
+ var alias = require('@rollup/plugin-alias');
6
+ var commonjs = require('@rollup/plugin-commonjs');
7
+ var json = require('@rollup/plugin-json');
8
+ var nodeResolve2 = require('@rollup/plugin-node-resolve');
9
+ var url = require('url');
10
+ var rollup = require('rollup');
11
+ var rollupPlugin = require('@optimize-lodash/rollup-plugin');
12
+ var path = require('path');
13
+ var fs = require('fs');
14
+ var resolveFrom = require('resolve-from');
15
+
16
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
17
+
18
+ var alias__default = /*#__PURE__*/_interopDefault(alias);
19
+ var commonjs__default = /*#__PURE__*/_interopDefault(commonjs);
20
+ var json__default = /*#__PURE__*/_interopDefault(json);
21
+ var nodeResolve2__default = /*#__PURE__*/_interopDefault(nodeResolve2);
22
+ var resolveFrom__default = /*#__PURE__*/_interopDefault(resolveFrom);
23
+
24
+ var JS_EXTENSIONS = /* @__PURE__ */ new Set([".js", ".mjs", ".cjs"]);
25
+ var packageExportsCache = /* @__PURE__ */ new Map();
26
+ var resolveCache = /* @__PURE__ */ new Map();
27
+ function safeResolve(id, importer) {
28
+ const cacheKey = `${id}\0${importer}`;
29
+ const cached = resolveCache.get(cacheKey);
30
+ if (cached !== void 0) {
31
+ return cached;
32
+ }
33
+ let result;
34
+ try {
35
+ result = resolveFrom__default.default(importer, id);
36
+ } catch {
37
+ result = null;
38
+ }
39
+ resolveCache.set(cacheKey, result);
40
+ return result;
41
+ }
42
+ function packageHasExports(pkgName, importer) {
43
+ const pkgMainPath = safeResolve(pkgName, importer);
44
+ if (!pkgMainPath) return false;
45
+ let dir = pkgMainPath;
46
+ for (let i = 0; i < 10; i++) {
47
+ dir = path.dirname(dir);
48
+ const cached = packageExportsCache.get(dir);
49
+ if (cached !== void 0) return cached;
50
+ try {
51
+ const pkgJson = JSON.parse(fs.readFileSync(`${dir}/package.json`, "utf-8"));
52
+ if (pkgJson.name === pkgName) {
53
+ const result = !!pkgJson.exports;
54
+ packageExportsCache.set(dir, result);
55
+ return result;
56
+ }
57
+ } catch {
58
+ }
59
+ }
60
+ return false;
61
+ }
62
+ function nodeModulesExtensionResolver() {
63
+ const nodeResolvePlugin = nodeResolve2__default.default();
64
+ return {
65
+ name: "node-modules-extension-resolver",
66
+ async resolveId(id, importer, options) {
67
+ if (!importer || id.startsWith(".") || id.startsWith("/") || chunkVA2CSOKJ_cjs.isBuiltinModule(id)) {
68
+ return null;
69
+ }
70
+ const parts = id.split("/");
71
+ const isScoped = id.startsWith("@");
72
+ if (isScoped && parts.length === 2 || !isScoped && parts.length === 1) {
73
+ return null;
74
+ }
75
+ const foundExt = path.extname(id);
76
+ const pkgName = chunkVA2CSOKJ_cjs.getPackageName(id);
77
+ if (foundExt && JS_EXTENSIONS.has(foundExt)) {
78
+ if (pkgName && packageHasExports(pkgName, importer)) {
79
+ return {
80
+ id: id.slice(0, -foundExt.length),
81
+ external: true
82
+ };
83
+ }
84
+ return { id, external: true };
85
+ }
86
+ try {
87
+ const resolved2 = undefined(id);
88
+ if (resolved2 && path.extname(resolved2)) {
89
+ return { id, external: true };
90
+ }
91
+ } catch {
92
+ }
93
+ const nodeResolved = await nodeResolvePlugin.resolveId?.handler?.call(this, id, importer, options);
94
+ if (!nodeResolved?.id) {
95
+ return null;
96
+ }
97
+ const resolved = safeResolve(id, importer);
98
+ if (!resolved) {
99
+ for (const ext of JS_EXTENSIONS) {
100
+ if (safeResolve(id + ext, importer)) {
101
+ return { id: id + ext, external: true };
102
+ }
103
+ }
104
+ return null;
105
+ }
106
+ const resolvedExt = path.extname(resolved);
107
+ if (!resolvedExt || !JS_EXTENSIONS.has(resolvedExt)) {
108
+ return { id, external: true };
109
+ }
110
+ if (pkgName && packageHasExports(pkgName, importer)) {
111
+ return { id, external: true };
112
+ }
113
+ const subpath = pkgName ? id.slice(pkgName.length + 1) : "";
114
+ if (subpath && resolved.endsWith(`/${subpath}${resolvedExt}`)) {
115
+ return { id: id + resolvedExt, external: true };
116
+ }
117
+ return { id, external: true };
118
+ }
119
+ };
120
+ }
121
+
122
+ // src/build/bundler.ts
123
+ async function getInputOptions(entryFile, analyzedBundleInfo, platform, env = { "process.env.NODE_ENV": JSON.stringify("production") }, {
124
+ sourcemap = false,
125
+ isDev = false,
126
+ projectRoot,
127
+ workspaceRoot = void 0,
128
+ enableEsmShim = true,
129
+ externalsPreset = false
130
+ }) {
131
+ let nodeResolvePlugin = platform === "node" ? nodeResolve2__default.default({
132
+ preferBuiltins: true,
133
+ exportConditions: ["node"]
134
+ }) : nodeResolve2__default.default({
135
+ preferBuiltins: false,
136
+ browser: true
137
+ });
138
+ const externalsCopy = new Set(analyzedBundleInfo.externalDependencies);
139
+ const externals = externalsPreset ? [] : Array.from(externalsCopy);
140
+ const normalizedEntryFile = chunkVA2CSOKJ_cjs.slash(entryFile);
141
+ return {
142
+ logLevel: process.env.MASTRA_BUNDLER_DEBUG === "true" ? "debug" : "silent",
143
+ treeshake: "smallest",
144
+ preserveSymlinks: true,
145
+ external: externals,
146
+ plugins: [
147
+ chunkUJXH5MNH_cjs.subpathExternalsResolver(externals),
148
+ {
149
+ name: "alias-optimized-deps",
150
+ resolveId(id) {
151
+ if (!analyzedBundleInfo.dependencies.has(id)) {
152
+ return null;
153
+ }
154
+ const filename = analyzedBundleInfo.dependencies.get(id);
155
+ const absolutePath = path.join(workspaceRoot || projectRoot, filename);
156
+ if (isDev) {
157
+ return {
158
+ id: process.platform === "win32" ? url.pathToFileURL(absolutePath).href : absolutePath,
159
+ external: true
160
+ };
161
+ }
162
+ return {
163
+ id: absolutePath,
164
+ external: false
165
+ };
166
+ }
167
+ },
168
+ alias__default.default({
169
+ entries: [
170
+ {
171
+ find: /^\#server$/,
172
+ replacement: chunkVA2CSOKJ_cjs.slash(url.fileURLToPath(undefined("@mastra/deployer/server")))
173
+ },
174
+ {
175
+ find: /^\@mastra\/server\/(.*)/,
176
+ replacement: `@mastra/server/$1`,
177
+ customResolver: (id) => {
178
+ if (id.startsWith("@mastra/server")) {
179
+ return {
180
+ id: url.fileURLToPath(undefined(id))
181
+ };
182
+ }
183
+ }
184
+ },
185
+ { find: /^\#mastra$/, replacement: normalizedEntryFile }
186
+ ]
187
+ }),
188
+ chunkUJXH5MNH_cjs.tsConfigPaths(),
189
+ {
190
+ name: "tools-rewriter",
191
+ resolveId(id) {
192
+ if (id === "#tools") {
193
+ return {
194
+ id: "./tools.mjs",
195
+ external: true
196
+ };
197
+ }
198
+ }
199
+ },
200
+ chunkUJXH5MNH_cjs.esbuild({
201
+ platform,
202
+ define: env
203
+ }),
204
+ rollupPlugin.optimizeLodashImports({
205
+ include: "**/*.{js,ts,mjs,cjs}"
206
+ }),
207
+ commonjs__default.default({
208
+ extensions: [".js", ".ts"],
209
+ transformMixedEsModules: true,
210
+ esmExternals(id) {
211
+ return externals.includes(id);
212
+ }
213
+ }),
214
+ enableEsmShim ? chunkUJXH5MNH_cjs.esmShim() : void 0,
215
+ externalsPreset ? nodeModulesExtensionResolver() : nodeResolvePlugin,
216
+ // for debugging
217
+ // {
218
+ // name: 'logger',
219
+ // //@ts-ignore
220
+ // resolveId(id, ...args) {
221
+ // console.log({ id, args });
222
+ // },
223
+ // // @ts-ignore
224
+ // transform(code, id) {
225
+ // if (code.includes('class Duplexify ')) {
226
+ // console.log({ duplex: id });
227
+ // }
228
+ // },
229
+ // },
230
+ json__default.default(),
231
+ chunkUJXH5MNH_cjs.removeDeployer(entryFile, { sourcemap }),
232
+ // treeshake unused imports
233
+ chunkUJXH5MNH_cjs.esbuild({
234
+ include: entryFile,
235
+ platform
236
+ })
237
+ ].filter(Boolean)
238
+ };
239
+ }
240
+ async function createBundler(inputOptions, outputOptions) {
241
+ const bundler = await rollup.rollup(inputOptions);
242
+ return {
243
+ write: () => {
244
+ return bundler.write({
245
+ ...outputOptions,
246
+ format: "esm",
247
+ entryFileNames: "[name].mjs",
248
+ chunkFileNames: "[name].mjs"
249
+ });
250
+ },
251
+ close: () => {
252
+ return bundler.close();
253
+ }
254
+ };
255
+ }
256
+
257
+ exports.createBundler = createBundler;
258
+ exports.getInputOptions = getInputOptions;
259
+ exports.nodeModulesExtensionResolver = nodeModulesExtensionResolver;
260
+ //# sourceMappingURL=chunk-PB5O2NTZ.cjs.map
261
+ //# sourceMappingURL=chunk-PB5O2NTZ.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/build/plugins/node-modules-extension-resolver.ts","../src/build/bundler.ts"],"names":["resolveFrom","dirname","readFileSync","nodeResolve","isBuiltinModule","extname","getPackageName","resolved","slash","subpathExternalsResolver","join","pathToFileURL","alias","fileURLToPath","tsConfigPaths","esbuild","optimizeLodashImports","commonjs","esmShim","json","removeDeployer","rollup"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAOA,IAAM,gCAAgB,IAAI,GAAA,CAAI,CAAC,KAAA,EAAO,MAAA,EAAQ,MAAM,CAAC,CAAA;AAErD,IAAM,mBAAA,uBAA0B,GAAA,EAAqB;AACrD,IAAM,YAAA,uBAAmB,GAAA,EAA2B;AAEpD,SAAS,WAAA,CAAY,IAAY,QAAA,EAAiC;AAChE,EAAA,MAAM,QAAA,GAAW,CAAA,EAAG,EAAE,CAAA,EAAA,EAAK,QAAQ,CAAA,CAAA;AACnC,EAAA,MAAM,MAAA,GAAS,YAAA,CAAa,GAAA,CAAI,QAAQ,CAAA;AACxC,EAAA,IAAI,WAAW,MAAA,EAAW;AACxB,IAAA,OAAO,MAAA;AAAA,EACT;AACA,EAAA,IAAI,MAAA;AACJ,EAAA,IAAI;AACF,IAAA,MAAA,GAASA,4BAAA,CAAY,UAAU,EAAE,CAAA;AAAA,EACnC,CAAA,CAAA,MAAQ;AACN,IAAA,MAAA,GAAS,IAAA;AAAA,EACX;AACA,EAAA,YAAA,CAAa,GAAA,CAAI,UAAU,MAAM,CAAA;AACjC,EAAA,OAAO,MAAA;AACT;AAMA,SAAS,iBAAA,CAAkB,SAAiB,QAAA,EAA2B;AACrE,EAAA,MAAM,WAAA,GAAc,WAAA,CAAY,OAAA,EAAS,QAAQ,CAAA;AACjD,EAAA,IAAI,CAAC,aAAa,OAAO,KAAA;AAEzB,EAAA,IAAI,GAAA,GAAM,WAAA;AACV,EAAA,KAAA,IAAS,CAAA,GAAI,CAAA,EAAG,CAAA,GAAI,EAAA,EAAI,CAAA,EAAA,EAAK;AAC3B,IAAA,GAAA,GAAMC,aAAQ,GAAG,CAAA;AACjB,IAAA,MAAM,MAAA,GAAS,mBAAA,CAAoB,GAAA,CAAI,GAAG,CAAA;AAC1C,IAAA,IAAI,MAAA,KAAW,QAAW,OAAO,MAAA;AAEjC,IAAA,IAAI;AACF,MAAA,MAAM,OAAA,GAAU,KAAK,KAAA,CAAMC,eAAA,CAAa,GAAG,GAAG,CAAA,aAAA,CAAA,EAAiB,OAAO,CAAC,CAAA;AACvE,MAAA,IAAI,OAAA,CAAQ,SAAS,OAAA,EAAS;AAC5B,QAAA,MAAM,MAAA,GAAS,CAAC,CAAC,OAAA,CAAQ,OAAA;AACzB,QAAA,mBAAA,CAAoB,GAAA,CAAI,KAAK,MAAM,CAAA;AACnC,QAAA,OAAO,MAAA;AAAA,MACT;AAAA,IACF,CAAA,CAAA,MAAQ;AAAA,IAER;AAAA,EACF;AACA,EAAA,OAAO,KAAA;AACT;AASO,SAAS,4BAAA,GAAuC;AAErD,EAAA,MAAM,oBAAoBC,6BAAA,EAAY;AAEtC,EAAA,OAAO;AAAA,IACL,IAAA,EAAM,iCAAA;AAAA,IACN,MAAM,SAAA,CAAU,EAAA,EAAI,QAAA,EAAU,OAAA,EAAS;AAErC,MAAA,IAAI,CAAC,QAAA,IAAY,EAAA,CAAG,UAAA,CAAW,GAAG,CAAA,IAAK,EAAA,CAAG,UAAA,CAAW,GAAG,CAAA,IAAKC,iCAAA,CAAgB,EAAE,CAAA,EAAG;AAChF,QAAA,OAAO,IAAA;AAAA,MACT;AAGA,MAAA,MAAM,KAAA,GAAQ,EAAA,CAAG,KAAA,CAAM,GAAG,CAAA;AAC1B,MAAA,MAAM,QAAA,GAAW,EAAA,CAAG,UAAA,CAAW,GAAG,CAAA;AAClC,MAAA,IAAK,QAAA,IAAY,MAAM,MAAA,KAAW,CAAA,IAAO,CAAC,QAAA,IAAY,KAAA,CAAM,WAAW,CAAA,EAAI;AACzE,QAAA,OAAO,IAAA;AAAA,MACT;AAEA,MAAA,MAAM,QAAA,GAAWC,aAAQ,EAAE,CAAA;AAC3B,MAAA,MAAM,OAAA,GAAUC,iCAAe,EAAE,CAAA;AAGjC,MAAA,IAAI,QAAA,IAAY,aAAA,CAAc,GAAA,CAAI,QAAQ,CAAA,EAAG;AAG3C,QAAA,IAAI,OAAA,IAAW,iBAAA,CAAkB,OAAA,EAAS,QAAQ,CAAA,EAAG;AACnD,UAAA,OAAO;AAAA,YACL,IAAI,EAAA,CAAG,KAAA,CAAM,CAAA,EAAG,CAAC,SAAS,MAAM,CAAA;AAAA,YAChC,QAAA,EAAU;AAAA,WACZ;AAAA,QACF;AAEA,QAAA,OAAO,EAAE,EAAA,EAAI,QAAA,EAAU,IAAA,EAAK;AAAA,MAC9B;AAIA,MAAA,IAAI;AACF,QAAA,MAAMC,SAAAA,GAAW,SAAY,CAAQ,EAAE,CAAA;AACvC,QAAA,IAAIA,SAAAA,IAAYF,YAAA,CAAQE,SAAQ,CAAA,EAAG;AACjC,UAAA,OAAO,EAAE,EAAA,EAAI,QAAA,EAAU,IAAA,EAAK;AAAA,QAC9B;AAAA,MACF,CAAA,CAAA,MAAQ;AAAA,MAER;AAIA,MAAA,MAAM,YAAA,GAAe,MAAM,iBAAA,CAAkB,SAAA,EAAW,SAAS,IAAA,CAAK,IAAA,EAAM,EAAA,EAAI,QAAA,EAAU,OAAO,CAAA;AAEjG,MAAA,IAAI,CAAC,cAAc,EAAA,EAAI;AACrB,QAAA,OAAO,IAAA;AAAA,MACT;AAEA,MAAA,MAAM,QAAA,GAAW,WAAA,CAAY,EAAA,EAAI,QAAQ,CAAA;AACzC,MAAA,IAAI,CAAC,QAAA,EAAU;AAEb,QAAA,KAAA,MAAW,OAAO,aAAA,EAAe;AAC/B,UAAA,IAAI,WAAA,CAAY,EAAA,GAAK,GAAA,EAAK,QAAQ,CAAA,EAAG;AACnC,YAAA,OAAO,EAAE,EAAA,EAAI,EAAA,GAAK,GAAA,EAAK,UAAU,IAAA,EAAK;AAAA,UACxC;AAAA,QACF;AACA,QAAA,OAAO,IAAA;AAAA,MACT;AAEA,MAAA,MAAM,WAAA,GAAcF,aAAQ,QAAQ,CAAA;AAGpC,MAAA,IAAI,CAAC,WAAA,IAAe,CAAC,aAAA,CAAc,GAAA,CAAI,WAAW,CAAA,EAAG;AACnD,QAAA,OAAO,EAAE,EAAA,EAAI,QAAA,EAAU,IAAA,EAAK;AAAA,MAC9B;AAGA,MAAA,IAAI,OAAA,IAAW,iBAAA,CAAkB,OAAA,EAAS,QAAQ,CAAA,EAAG;AACnD,QAAA,OAAO,EAAE,EAAA,EAAI,QAAA,EAAU,IAAA,EAAK;AAAA,MAC9B;AAIA,MAAA,MAAM,UAAU,OAAA,GAAU,EAAA,CAAG,MAAM,OAAA,CAAQ,MAAA,GAAS,CAAC,CAAA,GAAI,EAAA;AACzD,MAAA,IAAI,OAAA,IAAW,SAAS,QAAA,CAAS,CAAA,CAAA,EAAI,OAAO,CAAA,EAAG,WAAW,EAAE,CAAA,EAAG;AAC7D,QAAA,OAAO,EAAE,EAAA,EAAI,EAAA,GAAK,WAAA,EAAa,UAAU,IAAA,EAAK;AAAA,MAChD;AAEA,MAAA,OAAO,EAAE,EAAA,EAAI,QAAA,EAAU,IAAA,EAAK;AAAA,IAC9B;AAAA,GACF;AACF;;;ACtIA,eAAsB,eAAA,CACpB,SAAA,EACA,kBAAA,EACA,QAAA,EACA,GAAA,GAA8B,EAAE,sBAAA,EAAwB,IAAA,CAAK,SAAA,CAAU,YAAY,CAAA,EAAE,EACrF;AAAA,EACE,SAAA,GAAY,KAAA;AAAA,EACZ,KAAA,GAAQ,KAAA;AAAA,EACR,WAAA;AAAA,EACA,aAAA,GAAgB,MAAA;AAAA,EAChB,aAAA,GAAgB,IAAA;AAAA,EAChB,eAAA,GAAkB;AACpB,CAAA,EAQuB;AACvB,EAAA,IAAI,iBAAA,GACF,QAAA,KAAa,MAAA,GACTF,6BAAAA,CAAY;AAAA,IACV,cAAA,EAAgB,IAAA;AAAA,IAChB,gBAAA,EAAkB,CAAC,MAAM;AAAA,GAC1B,IACDA,6BAAAA,CAAY;AAAA,IACV,cAAA,EAAgB,KAAA;AAAA,IAChB,OAAA,EAAS;AAAA,GACV,CAAA;AAEP,EAAA,MAAM,aAAA,GAAgB,IAAI,GAAA,CAAY,kBAAA,CAAmB,oBAAoB,CAAA;AAC7E,EAAA,MAAM,YAAY,eAAA,GAAkB,EAAC,GAAI,KAAA,CAAM,KAAK,aAAa,CAAA;AAEjE,EAAA,MAAM,mBAAA,GAAsBK,wBAAM,SAAS,CAAA;AAC3C,EAAA,OAAO;AAAA,IACL,QAAA,EAAU,OAAA,CAAQ,GAAA,CAAI,oBAAA,KAAyB,SAAS,OAAA,GAAU,QAAA;AAAA,IAClE,SAAA,EAAW,UAAA;AAAA,IACX,gBAAA,EAAkB,IAAA;AAAA,IAClB,QAAA,EAAU,SAAA;AAAA,IACV,OAAA,EAAS;AAAA,MACPC,2CAAyB,SAAS,CAAA;AAAA,MAClC;AAAA,QACE,IAAA,EAAM,sBAAA;AAAA,QACN,UAAU,EAAA,EAAY;AACpB,UAAA,IAAI,CAAC,kBAAA,CAAmB,YAAA,CAAa,GAAA,CAAI,EAAE,CAAA,EAAG;AAC5C,YAAA,OAAO,IAAA;AAAA,UACT;AAEA,UAAA,MAAM,QAAA,GAAW,kBAAA,CAAmB,YAAA,CAAa,GAAA,CAAI,EAAE,CAAA;AACvD,UAAA,MAAM,YAAA,GAAeC,SAAA,CAAK,aAAA,IAAiB,WAAA,EAAa,QAAQ,CAAA;AAGhE,UAAA,IAAI,KAAA,EAAO;AACT,YAAA,OAAO;AAAA,cACL,IAAI,OAAA,CAAQ,QAAA,KAAa,UAAUC,iBAAA,CAAc,YAAY,EAAE,IAAA,GAAO,YAAA;AAAA,cACtE,QAAA,EAAU;AAAA,aACZ;AAAA,UACF;AAGA,UAAA,OAAO;AAAA,YACL,EAAA,EAAI,YAAA;AAAA,YACJ,QAAA,EAAU;AAAA,WACZ;AAAA,QACF;AAAA,OACF;AAAA,MACAC,sBAAA,CAAM;AAAA,QACJ,OAAA,EAAS;AAAA,UACP;AAAA,YACE,IAAA,EAAM,YAAA;AAAA,YACN,aAAaJ,uBAAA,CAAMK,iBAAA,CAAc,SAAY,CAAQ,yBAAyB,CAAC,CAAC;AAAA,WAClF;AAAA,UACA;AAAA,YACE,IAAA,EAAM,yBAAA;AAAA,YACN,WAAA,EAAa,CAAA,iBAAA,CAAA;AAAA,YACb,gBAAgB,CAAA,EAAA,KAAM;AACpB,cAAA,IAAI,EAAA,CAAG,UAAA,CAAW,gBAAgB,CAAA,EAAG;AACnC,gBAAA,OAAO;AAAA,kBACL,EAAA,EAAIA,iBAAA,CAAc,SAAY,CAAQ,EAAE,CAAC;AAAA,iBAC3C;AAAA,cACF;AAAA,YACF;AAAA,WACF;AAAA,UACA,EAAE,IAAA,EAAM,YAAA,EAAc,WAAA,EAAa,mBAAA;AAAoB;AACzD,OACD,CAAA;AAAA,MACDC,+BAAA,EAAc;AAAA,MACd;AAAA,QACE,IAAA,EAAM,gBAAA;AAAA,QACN,UAAU,EAAA,EAAY;AACpB,UAAA,IAAI,OAAO,QAAA,EAAU;AACnB,YAAA,OAAO;AAAA,cACL,EAAA,EAAI,aAAA;AAAA,cACJ,QAAA,EAAU;AAAA,aACZ;AAAA,UACF;AAAA,QACF;AAAA,OACF;AAAA,MACAC,yBAAA,CAAQ;AAAA,QACN,QAAA;AAAA,QACA,MAAA,EAAQ;AAAA,OACT,CAAA;AAAA,MACDC,kCAAA,CAAsB;AAAA,QACpB,OAAA,EAAS;AAAA,OACV,CAAA;AAAA,MACDC,yBAAA,CAAS;AAAA,QACP,UAAA,EAAY,CAAC,KAAA,EAAO,KAAK,CAAA;AAAA,QACzB,uBAAA,EAAyB,IAAA;AAAA,QACzB,aAAa,EAAA,EAAI;AACf,UAAA,OAAO,SAAA,CAAU,SAAS,EAAE,CAAA;AAAA,QAC9B;AAAA,OACD,CAAA;AAAA,MACD,aAAA,GAAgBC,2BAAQ,GAAI,MAAA;AAAA,MAC5B,eAAA,GAAkB,8BAA6B,GAAI,iBAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAenDC,qBAAA,EAAK;AAAA,MACLC,gCAAA,CAAe,SAAA,EAAW,EAAE,SAAA,EAAW,CAAA;AAAA;AAAA,MAEvCL,yBAAA,CAAQ;AAAA,QACN,OAAA,EAAS,SAAA;AAAA,QACT;AAAA,OACD;AAAA,KACH,CAAE,OAAO,OAAO;AAAA,GAClB;AACF;AAEA,eAAsB,aAAA,CACpB,cACA,aAAA,EACA;AACA,EAAA,MAAM,OAAA,GAAU,MAAMM,aAAA,CAAO,YAAY,CAAA;AAEzC,EAAA,OAAO;AAAA,IACL,OAAO,MAAM;AACX,MAAA,OAAO,QAAQ,KAAA,CAAM;AAAA,QACnB,GAAG,aAAA;AAAA,QACH,MAAA,EAAQ,KAAA;AAAA,QACR,cAAA,EAAgB,YAAA;AAAA,QAChB,cAAA,EAAgB;AAAA,OACjB,CAAA;AAAA,IACH,CAAA;AAAA,IACA,OAAO,MAAM;AACX,MAAA,OAAO,QAAQ,KAAA,EAAM;AAAA,IACvB;AAAA,GACF;AACF","file":"chunk-PB5O2NTZ.cjs","sourcesContent":["import { dirname, extname } from 'node:path';\nimport { readFileSync } from 'node:fs';\nimport resolveFrom from 'resolve-from';\nimport type { Plugin } from 'rollup';\nimport nodeResolve from '@rollup/plugin-node-resolve';\nimport { getPackageName, isBuiltinModule } from '../utils';\n\nconst JS_EXTENSIONS = new Set(['.js', '.mjs', '.cjs']);\n\nconst packageExportsCache = new Map<string, boolean>();\nconst resolveCache = new Map<string, string | null>();\n\nfunction safeResolve(id: string, importer: string): string | null {\n const cacheKey = `${id}\\0${importer}`;\n const cached = resolveCache.get(cacheKey);\n if (cached !== undefined) {\n return cached;\n }\n let result: string | null;\n try {\n result = resolveFrom(importer, id);\n } catch {\n result = null;\n }\n resolveCache.set(cacheKey, result);\n return result;\n}\n\n/**\n * Check if a package has an exports field in its package.json.\n * Results are cached to avoid repeated filesystem reads.\n */\nfunction packageHasExports(pkgName: string, importer: string): boolean {\n const pkgMainPath = safeResolve(pkgName, importer);\n if (!pkgMainPath) return false;\n // Find package.json and cache by its directory\n let dir = pkgMainPath;\n for (let i = 0; i < 10; i++) {\n dir = dirname(dir);\n const cached = packageExportsCache.get(dir);\n if (cached !== undefined) return cached;\n\n try {\n const pkgJson = JSON.parse(readFileSync(`${dir}/package.json`, 'utf-8'));\n if (pkgJson.name === pkgName) {\n const result = !!pkgJson.exports;\n packageExportsCache.set(dir, result);\n return result;\n }\n } catch {\n // continue up\n }\n }\n return false;\n}\n\n/**\n * Rollup plugin that resolves module extensions for external dependencies.\n *\n * This plugin handles ESM compatibility for external imports when node-resolve is not used:\n * - Packages WITH exports field (e.g., hono, date-fns): Keep imports as-is or strip redundant extensions\n * - Packages WITHOUT exports field (e.g., lodash): Add .js extension for direct file imports\n */\nexport function nodeModulesExtensionResolver(): Plugin {\n // Create a single instance of node-resolve to reuse\n const nodeResolvePlugin = nodeResolve();\n\n return {\n name: 'node-modules-extension-resolver',\n async resolveId(id, importer, options) {\n // Skip relative imports, absolute paths, no importer, or builtin modules\n if (!importer || id.startsWith('.') || id.startsWith('/') || isBuiltinModule(id)) {\n return null;\n }\n\n // Skip direct package imports (e.g., 'lodash', '@mastra/core')\n const parts = id.split('/');\n const isScoped = id.startsWith('@');\n if ((isScoped && parts.length === 2) || (!isScoped && parts.length === 1)) {\n return null;\n }\n\n const foundExt = extname(id);\n const pkgName = getPackageName(id);\n\n // Handle imports that already have a JS extension\n if (foundExt && JS_EXTENSIONS.has(foundExt)) {\n // If package has exports, strip the extension to avoid double-extension issues\n // (e.g., hono/utils/mime.js -> hono/dist/utils/mime.js.js)\n if (pkgName && packageHasExports(pkgName, importer)) {\n return {\n id: id.slice(0, -foundExt.length),\n external: true,\n };\n }\n // For packages without exports, keep the extension as-is\n return { id, external: true };\n }\n\n // Try import.meta.resolve first - if it works, the import is valid as-is\n // This respects ESM exports maps correctly\n try {\n const resolved = import.meta.resolve(id);\n if (resolved && extname(resolved)) {\n return { id, external: true };\n }\n } catch {\n // import.meta.resolve failed, continue with fallback logic\n }\n\n // Fallback: For imports without extension, check if we need to add one\n // @ts-expect-error - resolveId.handler exists but isn't typed\n const nodeResolved = await nodeResolvePlugin.resolveId?.handler?.call(this, id, importer, options);\n\n if (!nodeResolved?.id) {\n return null;\n }\n\n const resolved = safeResolve(id, importer);\n if (!resolved) {\n // Try adding extensions manually\n for (const ext of JS_EXTENSIONS) {\n if (safeResolve(id + ext, importer)) {\n return { id: id + ext, external: true };\n }\n }\n return null;\n }\n\n const resolvedExt = extname(resolved);\n\n // No JS extension in resolved path - keep as-is\n if (!resolvedExt || !JS_EXTENSIONS.has(resolvedExt)) {\n return { id, external: true };\n }\n\n // Package has exports - let Node.js resolve via exports map\n if (pkgName && packageHasExports(pkgName, importer)) {\n return { id, external: true };\n }\n\n // Check if this is a direct file reference that needs the extension\n // e.g., lodash/fp/get resolves to .../lodash/fp/get.js\n const subpath = pkgName ? id.slice(pkgName.length + 1) : '';\n if (subpath && resolved.endsWith(`/${subpath}${resolvedExt}`)) {\n return { id: id + resolvedExt, external: true };\n }\n\n return { id, external: true };\n },\n };\n}\n","import alias from '@rollup/plugin-alias';\nimport commonjs from '@rollup/plugin-commonjs';\nimport json from '@rollup/plugin-json';\nimport nodeResolve from '@rollup/plugin-node-resolve';\nimport { esmShim } from './plugins/esm-shim';\nimport { fileURLToPath, pathToFileURL } from 'node:url';\nimport { rollup, type InputOptions, type OutputOptions, type Plugin } from 'rollup';\nimport { esbuild } from './plugins/esbuild';\nimport { optimizeLodashImports } from '@optimize-lodash/rollup-plugin';\nimport { analyzeBundle } from './analyze';\nimport { removeDeployer } from './plugins/remove-deployer';\nimport { tsConfigPaths } from './plugins/tsconfig-paths';\nimport { join } from 'node:path';\nimport { slash } from './utils';\nimport { subpathExternalsResolver } from './plugins/subpath-externals-resolver';\nimport { nodeModulesExtensionResolver } from './plugins/node-modules-extension-resolver';\n\nexport async function getInputOptions(\n entryFile: string,\n analyzedBundleInfo: Awaited<ReturnType<typeof analyzeBundle>>,\n platform: 'node' | 'browser',\n env: Record<string, string> = { 'process.env.NODE_ENV': JSON.stringify('production') },\n {\n sourcemap = false,\n isDev = false,\n projectRoot,\n workspaceRoot = undefined,\n enableEsmShim = true,\n externalsPreset = false,\n }: {\n sourcemap?: boolean;\n isDev?: boolean;\n workspaceRoot?: string;\n projectRoot: string;\n enableEsmShim?: boolean;\n externalsPreset?: boolean;\n },\n): Promise<InputOptions> {\n let nodeResolvePlugin =\n platform === 'node'\n ? nodeResolve({\n preferBuiltins: true,\n exportConditions: ['node'],\n })\n : nodeResolve({\n preferBuiltins: false,\n browser: true,\n });\n\n const externalsCopy = new Set<string>(analyzedBundleInfo.externalDependencies);\n const externals = externalsPreset ? [] : Array.from(externalsCopy);\n\n const normalizedEntryFile = slash(entryFile);\n return {\n logLevel: process.env.MASTRA_BUNDLER_DEBUG === 'true' ? 'debug' : 'silent',\n treeshake: 'smallest',\n preserveSymlinks: true,\n external: externals,\n plugins: [\n subpathExternalsResolver(externals),\n {\n name: 'alias-optimized-deps',\n resolveId(id: string) {\n if (!analyzedBundleInfo.dependencies.has(id)) {\n return null;\n }\n\n const filename = analyzedBundleInfo.dependencies.get(id)!;\n const absolutePath = join(workspaceRoot || projectRoot, filename);\n\n // During `mastra dev` we want to keep deps as external\n if (isDev) {\n return {\n id: process.platform === 'win32' ? pathToFileURL(absolutePath).href : absolutePath,\n external: true,\n };\n }\n\n // For production builds return the absolute path as-is so Rollup can handle itself\n return {\n id: absolutePath,\n external: false,\n };\n },\n } satisfies Plugin,\n alias({\n entries: [\n {\n find: /^\\#server$/,\n replacement: slash(fileURLToPath(import.meta.resolve('@mastra/deployer/server'))),\n },\n {\n find: /^\\@mastra\\/server\\/(.*)/,\n replacement: `@mastra/server/$1`,\n customResolver: id => {\n if (id.startsWith('@mastra/server')) {\n return {\n id: fileURLToPath(import.meta.resolve(id)),\n };\n }\n },\n },\n { find: /^\\#mastra$/, replacement: normalizedEntryFile },\n ],\n }),\n tsConfigPaths(),\n {\n name: 'tools-rewriter',\n resolveId(id: string) {\n if (id === '#tools') {\n return {\n id: './tools.mjs',\n external: true,\n };\n }\n },\n } satisfies Plugin,\n esbuild({\n platform,\n define: env,\n }),\n optimizeLodashImports({\n include: '**/*.{js,ts,mjs,cjs}',\n }),\n commonjs({\n extensions: ['.js', '.ts'],\n transformMixedEsModules: true,\n esmExternals(id) {\n return externals.includes(id);\n },\n }),\n enableEsmShim ? esmShim() : undefined,\n externalsPreset ? nodeModulesExtensionResolver() : nodeResolvePlugin,\n // for debugging\n // {\n // name: 'logger',\n // //@ts-ignore\n // resolveId(id, ...args) {\n // console.log({ id, args });\n // },\n // // @ts-ignore\n // transform(code, id) {\n // if (code.includes('class Duplexify ')) {\n // console.log({ duplex: id });\n // }\n // },\n // },\n json(),\n removeDeployer(entryFile, { sourcemap }),\n // treeshake unused imports\n esbuild({\n include: entryFile,\n platform,\n }),\n ].filter(Boolean),\n } satisfies InputOptions;\n}\n\nexport async function createBundler(\n inputOptions: InputOptions,\n outputOptions: Partial<OutputOptions> & { dir: string },\n) {\n const bundler = await rollup(inputOptions);\n\n return {\n write: () => {\n return bundler.write({\n ...outputOptions,\n format: 'esm',\n entryFileNames: '[name].mjs',\n chunkFileNames: '[name].mjs',\n });\n },\n close: () => {\n return bundler.close();\n },\n };\n}\n"]}