@prisma/migrate 6.19.0-integration-next.11 → 6.19.0-integration-engines-6-19-0-27-feat-bump-database-versions-2-4b6e368f6da3d45f65f44068ed2758da3adcf9e2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/Migrate.js +3 -3
  2. package/dist/bin.js +27 -26
  3. package/dist/{chunk-NG4757TP.js → chunk-3AKRTEIK.js} +7 -7
  4. package/dist/{chunk-OPD3GTJ2.js → chunk-6ORQRJLP.js} +45 -14
  5. package/dist/{chunk-AP47ZTTC.js → chunk-7TVX3D4W.js} +65 -27
  6. package/dist/{chunk-ANMWKEMD.js → chunk-BHJMJSM4.js} +6 -6
  7. package/dist/{chunk-W2NKGYXF.js → chunk-D4TRX77Y.js} +9 -7
  8. package/dist/{chunk-MOFG2YPJ.js → chunk-D6LYHB65.js} +7 -5
  9. package/dist/{chunk-4LNQFWQD.js → chunk-F2XCBEZ4.js} +12 -10
  10. package/dist/{chunk-UJA5DXI3.js → chunk-J33EXHZB.js} +12 -10
  11. package/dist/{chunk-SIUB4YHK.js → chunk-NB4FRYRQ.js} +5 -5
  12. package/dist/{chunk-XAPRGBTZ.js → chunk-O35BTK6Y.js} +5 -5
  13. package/dist/{chunk-L7EZFBB4.js → chunk-PHXLQVPT.js} +68 -40
  14. package/dist/{chunk-Q66L2LFA.js → chunk-R4IWP35Z.js} +6 -6
  15. package/dist/chunk-RR6BKMNO.js +80 -0
  16. package/dist/{chunk-CQLPPAWH.js → chunk-TW22Y3AA.js} +7 -7
  17. package/dist/{chunk-43R3GFIU.js → chunk-Z27SI4AV.js} +4 -4
  18. package/dist/{chunk-HDTRNRXE.js → chunk-ZTIS675B.js} +42 -7
  19. package/dist/commands/DbDrop.js +2 -2
  20. package/dist/commands/DbExecute.js +4 -4
  21. package/dist/commands/DbPull.js +5 -4
  22. package/dist/commands/DbPush.js +4 -4
  23. package/dist/commands/DbSeed.js +3 -3
  24. package/dist/commands/MigrateDeploy.js +4 -4
  25. package/dist/commands/MigrateDev.js +5 -5
  26. package/dist/commands/MigrateDiff.js +4 -4
  27. package/dist/commands/MigrateReset.js +5 -5
  28. package/dist/commands/MigrateResolve.js +4 -4
  29. package/dist/commands/MigrateStatus.js +4 -4
  30. package/dist/index.js +31 -30
  31. package/dist/internals/src/cli/getSchema.d.ts +15 -1
  32. package/dist/migrate/src/Migrate.d.ts +2 -1
  33. package/dist/migrate/src/utils/replaceOrAddDatasource.d.ts +2 -0
  34. package/dist/migrate/src/utils/replaceOrAddDatasource.test.d.ts +1 -0
  35. package/dist/migrate/src/utils/seed.d.ts +6 -0
  36. package/dist/utils/getDatabaseVersionSafe.js +4 -4
  37. package/dist/utils/introspectSql.js +4 -4
  38. package/dist/utils/replaceOrAddDatasource.js +25 -0
  39. package/dist/utils/replaceOrAddDatasource.test.js +207 -0
  40. package/dist/utils/seed.js +3 -2
  41. package/package.json +11 -11
@@ -26,18 +26,18 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var chunk_UJA5DXI3_exports = {};
30
- __export(chunk_UJA5DXI3_exports, {
29
+ var chunk_J33EXHZB_exports = {};
30
+ __export(chunk_J33EXHZB_exports, {
31
31
  MigrateReset: () => MigrateReset
32
32
  });
33
- module.exports = __toCommonJS(chunk_UJA5DXI3_exports);
33
+ module.exports = __toCommonJS(chunk_J33EXHZB_exports);
34
34
  var import_chunk_KRQEFTDT = require("./chunk-KRQEFTDT.js");
35
35
  var import_chunk_FBDQVK4W = require("./chunk-FBDQVK4W.js");
36
36
  var import_chunk_3WC4XD74 = require("./chunk-3WC4XD74.js");
37
37
  var import_chunk_2FXU5NZQ = require("./chunk-2FXU5NZQ.js");
38
38
  var import_chunk_74LUB4XX = require("./chunk-74LUB4XX.js");
39
- var import_chunk_L7EZFBB4 = require("./chunk-L7EZFBB4.js");
40
- var import_chunk_MOFG2YPJ = require("./chunk-MOFG2YPJ.js");
39
+ var import_chunk_PHXLQVPT = require("./chunk-PHXLQVPT.js");
40
+ var import_chunk_D6LYHB65 = require("./chunk-D6LYHB65.js");
41
41
  var import_chunk_SKRR5WT4 = require("./chunk-SKRR5WT4.js");
42
42
  var import_internals = require("@prisma/internals");
43
43
  var import_prompts = __toESM(require("prompts"));
@@ -90,7 +90,7 @@ ${(0, import_chunk_SKRR5WT4.bold)("Examples")}
90
90
  if (args["--help"]) {
91
91
  return this.help();
92
92
  }
93
- (0, import_internals.loadEnvFile)({ schemaPath: args["--schema"], printMessage: true, config });
93
+ await (0, import_internals.loadEnvFile)({ schemaPath: args["--schema"], printMessage: true, config });
94
94
  const schemaContext = await (0, import_internals.loadSchemaContext)({
95
95
  schemaPathFromArg: args["--schema"],
96
96
  schemaPathFromConfig: config.schema,
@@ -128,7 +128,7 @@ ${(0, import_chunk_SKRR5WT4.bold)("Examples")}
128
128
  externalTables: config.tables?.external ?? [],
129
129
  externalEnums: config.enums?.external ?? []
130
130
  };
131
- const migrate = await import_chunk_MOFG2YPJ.Migrate.setup({
131
+ const migrate = await import_chunk_D6LYHB65.Migrate.setup({
132
132
  schemaEngineConfig: config,
133
133
  migrationsDirPath,
134
134
  schemaContext,
@@ -160,13 +160,15 @@ ${(0, import_chunk_KRQEFTDT.printFilesFromMigrationIds)("migrations", migrationI
160
160
  );
161
161
  }
162
162
  if (!process.env.PRISMA_MIGRATE_SKIP_GENERATE && !args["--skip-generate"]) {
163
- await migrate.tryToRunGenerate();
163
+ await migrate.tryToRunGenerate(datasourceInfo);
164
164
  }
165
165
  if (!process.env.PRISMA_MIGRATE_SKIP_SEED && !args["--skip-seed"]) {
166
- const seedCommand = config.migrations?.seed;
166
+ const seedCommandFromPrismaConfig = config.migrations?.seed;
167
+ const seedCommandFromPkgJson = await (0, import_chunk_PHXLQVPT.getSeedCommandFromPackageJson)(process.cwd());
168
+ const seedCommand = seedCommandFromPrismaConfig ?? seedCommandFromPkgJson;
167
169
  if (seedCommand) {
168
170
  process.stdout.write("\n");
169
- const successfulSeeding = await (0, import_chunk_L7EZFBB4.executeSeedCommand)({ commandFromConfig: seedCommand });
171
+ const successfulSeeding = await (0, import_chunk_PHXLQVPT.executeSeedCommand)({ commandFromConfig: seedCommand });
170
172
  if (successfulSeeding) {
171
173
  process.stdout.write(`
172
174
  ${process.platform === "win32" ? "" : "\u{1F331} "}The seed command has been executed.
@@ -26,19 +26,19 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var chunk_SIUB4YHK_exports = {};
30
- __export(chunk_SIUB4YHK_exports, {
29
+ var chunk_NB4FRYRQ_exports = {};
30
+ __export(chunk_NB4FRYRQ_exports, {
31
31
  getDatabaseVersionSafe: () => getDatabaseVersionSafe
32
32
  });
33
- module.exports = __toCommonJS(chunk_SIUB4YHK_exports);
34
- var import_chunk_MOFG2YPJ = require("./chunk-MOFG2YPJ.js");
33
+ module.exports = __toCommonJS(chunk_NB4FRYRQ_exports);
34
+ var import_chunk_D6LYHB65 = require("./chunk-D6LYHB65.js");
35
35
  var import_debug = __toESM(require("@prisma/debug"));
36
36
  var debug = (0, import_debug.default)("prisma:cli");
37
37
  async function getDatabaseVersionSafe(args) {
38
38
  let migrate;
39
39
  let dbVersion;
40
40
  try {
41
- migrate = await import_chunk_MOFG2YPJ.Migrate.setup({});
41
+ migrate = await import_chunk_D6LYHB65.Migrate.setup({});
42
42
  dbVersion = await migrate.engine.getDatabaseVersion(args);
43
43
  } catch (e) {
44
44
  debug(e);
@@ -16,12 +16,12 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var chunk_XAPRGBTZ_exports = {};
20
- __export(chunk_XAPRGBTZ_exports, {
19
+ var chunk_O35BTK6Y_exports = {};
20
+ __export(chunk_O35BTK6Y_exports, {
21
21
  introspectSql: () => introspectSql
22
22
  });
23
- module.exports = __toCommonJS(chunk_XAPRGBTZ_exports);
24
- var import_chunk_MOFG2YPJ = require("./chunk-MOFG2YPJ.js");
23
+ module.exports = __toCommonJS(chunk_O35BTK6Y_exports);
24
+ var import_chunk_D6LYHB65 = require("./chunk-D6LYHB65.js");
25
25
  var import_internals = require("@prisma/internals");
26
26
  var supportedProviders = ["postgresql", "cockroachdb", "mysql", "sqlite"];
27
27
  async function introspectSql(schemaContext, queries) {
@@ -41,7 +41,7 @@ async function introspectSql(schemaContext, queries) {
41
41
  `Could not get url from datasource ${firstDatasource.name} in ${schemaContext.loadedFromPathForLogMessages}`
42
42
  );
43
43
  }
44
- const migrate = await import_chunk_MOFG2YPJ.Migrate.setup({ schemaContext });
44
+ const migrate = await import_chunk_D6LYHB65.Migrate.setup({ schemaContext });
45
45
  const schemaEngine = migrate.engine;
46
46
  const results = [];
47
47
  const errors = [];
@@ -26,21 +26,24 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var chunk_L7EZFBB4_exports = {};
30
- __export(chunk_L7EZFBB4_exports, {
31
- executeSeedCommand: () => executeSeedCommand
29
+ var chunk_PHXLQVPT_exports = {};
30
+ __export(chunk_PHXLQVPT_exports, {
31
+ executeSeedCommand: () => executeSeedCommand,
32
+ getSeedCommandFromPackageJson: () => getSeedCommandFromPackageJson
32
33
  });
33
- module.exports = __toCommonJS(chunk_L7EZFBB4_exports);
34
+ module.exports = __toCommonJS(chunk_PHXLQVPT_exports);
34
35
  var import_chunk_3WDCTXHL = require("./chunk-3WDCTXHL.js");
35
36
  var import_chunk_SKRR5WT4 = require("./chunk-SKRR5WT4.js");
36
37
  var import_chunk_2ESYSVXG = require("./chunk-2ESYSVXG.js");
38
+ var import_node_path = __toESM(require("node:path"));
39
+ var import_config = require("@prisma/config");
37
40
  var import_debug = __toESM(require("@prisma/debug"));
38
41
  var import_node_buffer = require("node:buffer");
39
- var import_node_path = __toESM(require("node:path"));
42
+ var import_node_path2 = __toESM(require("node:path"));
40
43
  var import_node_child_process = __toESM(require("node:child_process"));
41
44
  var import_node_process = __toESM(require("node:process"));
42
45
  var import_node_process2 = __toESM(require("node:process"));
43
- var import_node_path2 = __toESM(require("node:path"));
46
+ var import_node_path3 = __toESM(require("node:path"));
44
47
  var import_node_url = require("node:url");
45
48
  var import_node_process3 = __toESM(require("node:process"));
46
49
  var import_node_os = require("node:os");
@@ -60,7 +63,7 @@ var require_windows = (0, import_chunk_2ESYSVXG.__commonJS)({
60
63
  module2.exports = isexe;
61
64
  isexe.sync = sync;
62
65
  var fs = (0, import_chunk_2ESYSVXG.__require)("fs");
63
- function checkPathExt(path3, options) {
66
+ function checkPathExt(path4, options) {
64
67
  var pathext = options.pathExt !== void 0 ? options.pathExt : process.env.PATHEXT;
65
68
  if (!pathext) {
66
69
  return true;
@@ -71,25 +74,25 @@ var require_windows = (0, import_chunk_2ESYSVXG.__commonJS)({
71
74
  }
72
75
  for (var i = 0; i < pathext.length; i++) {
73
76
  var p = pathext[i].toLowerCase();
74
- if (p && path3.substr(-p.length).toLowerCase() === p) {
77
+ if (p && path4.substr(-p.length).toLowerCase() === p) {
75
78
  return true;
76
79
  }
77
80
  }
78
81
  return false;
79
82
  }
80
- function checkStat(stat, path3, options) {
83
+ function checkStat(stat, path4, options) {
81
84
  if (!stat.isSymbolicLink() && !stat.isFile()) {
82
85
  return false;
83
86
  }
84
- return checkPathExt(path3, options);
87
+ return checkPathExt(path4, options);
85
88
  }
86
- function isexe(path3, options, cb) {
87
- fs.stat(path3, function(er, stat) {
88
- cb(er, er ? false : checkStat(stat, path3, options));
89
+ function isexe(path4, options, cb) {
90
+ fs.stat(path4, function(er, stat) {
91
+ cb(er, er ? false : checkStat(stat, path4, options));
89
92
  });
90
93
  }
91
- function sync(path3, options) {
92
- return checkStat(fs.statSync(path3), path3, options);
94
+ function sync(path4, options) {
95
+ return checkStat(fs.statSync(path4), path4, options);
93
96
  }
94
97
  }
95
98
  });
@@ -99,13 +102,13 @@ var require_mode = (0, import_chunk_2ESYSVXG.__commonJS)({
99
102
  module2.exports = isexe;
100
103
  isexe.sync = sync;
101
104
  var fs = (0, import_chunk_2ESYSVXG.__require)("fs");
102
- function isexe(path3, options, cb) {
103
- fs.stat(path3, function(er, stat) {
105
+ function isexe(path4, options, cb) {
106
+ fs.stat(path4, function(er, stat) {
104
107
  cb(er, er ? false : checkStat(stat, options));
105
108
  });
106
109
  }
107
- function sync(path3, options) {
108
- return checkStat(fs.statSync(path3), options);
110
+ function sync(path4, options) {
111
+ return checkStat(fs.statSync(path4), options);
109
112
  }
110
113
  function checkStat(stat, options) {
111
114
  return stat.isFile() && checkMode(stat, options);
@@ -137,7 +140,7 @@ var require_isexe = (0, import_chunk_2ESYSVXG.__commonJS)({
137
140
  }
138
141
  module2.exports = isexe;
139
142
  isexe.sync = sync;
140
- function isexe(path3, options, cb) {
143
+ function isexe(path4, options, cb) {
141
144
  if (typeof options === "function") {
142
145
  cb = options;
143
146
  options = {};
@@ -147,7 +150,7 @@ var require_isexe = (0, import_chunk_2ESYSVXG.__commonJS)({
147
150
  throw new TypeError("callback not provided");
148
151
  }
149
152
  return new Promise(function(resolve, reject) {
150
- isexe(path3, options || {}, function(er, is) {
153
+ isexe(path4, options || {}, function(er, is) {
151
154
  if (er) {
152
155
  reject(er);
153
156
  } else {
@@ -156,7 +159,7 @@ var require_isexe = (0, import_chunk_2ESYSVXG.__commonJS)({
156
159
  });
157
160
  });
158
161
  }
159
- core(path3, options || {}, function(er, is) {
162
+ core(path4, options || {}, function(er, is) {
160
163
  if (er) {
161
164
  if (er.code === "EACCES" || options && options.ignoreErrors) {
162
165
  er = null;
@@ -166,9 +169,9 @@ var require_isexe = (0, import_chunk_2ESYSVXG.__commonJS)({
166
169
  cb(er, is);
167
170
  });
168
171
  }
169
- function sync(path3, options) {
172
+ function sync(path4, options) {
170
173
  try {
171
- return core.sync(path3, options || {});
174
+ return core.sync(path4, options || {});
172
175
  } catch (er) {
173
176
  if (options && options.ignoreErrors || er.code === "EACCES") {
174
177
  return false;
@@ -183,7 +186,7 @@ var require_which = (0, import_chunk_2ESYSVXG.__commonJS)({
183
186
  "../../node_modules/.pnpm/which@2.0.2/node_modules/which/which.js"(exports, module2) {
184
187
  "use strict";
185
188
  var isWindows = process.platform === "win32" || process.env.OSTYPE === "cygwin" || process.env.OSTYPE === "msys";
186
- var path3 = (0, import_chunk_2ESYSVXG.__require)("path");
189
+ var path4 = (0, import_chunk_2ESYSVXG.__require)("path");
187
190
  var COLON = isWindows ? ";" : ":";
188
191
  var isexe = require_isexe();
189
192
  var getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: "ENOENT" });
@@ -221,7 +224,7 @@ var require_which = (0, import_chunk_2ESYSVXG.__commonJS)({
221
224
  return opt.all && found.length ? resolve(found) : reject(getNotFoundError(cmd));
222
225
  const ppRaw = pathEnv[i];
223
226
  const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
224
- const pCmd = path3.join(pathPart, cmd);
227
+ const pCmd = path4.join(pathPart, cmd);
225
228
  const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd;
226
229
  resolve(subStep(p, i, 0));
227
230
  });
@@ -248,7 +251,7 @@ var require_which = (0, import_chunk_2ESYSVXG.__commonJS)({
248
251
  for (let i = 0; i < pathEnv.length; i++) {
249
252
  const ppRaw = pathEnv[i];
250
253
  const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
251
- const pCmd = path3.join(pathPart, cmd);
254
+ const pCmd = path4.join(pathPart, cmd);
252
255
  const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd;
253
256
  for (let j = 0; j < pathExt.length; j++) {
254
257
  const cur = p + pathExt[j];
@@ -292,7 +295,7 @@ var require_path_key = (0, import_chunk_2ESYSVXG.__commonJS)({
292
295
  var require_resolveCommand = (0, import_chunk_2ESYSVXG.__commonJS)({
293
296
  "../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/resolveCommand.js"(exports, module2) {
294
297
  "use strict";
295
- var path3 = (0, import_chunk_2ESYSVXG.__require)("path");
298
+ var path4 = (0, import_chunk_2ESYSVXG.__require)("path");
296
299
  var which = require_which();
297
300
  var getPathKey = require_path_key();
298
301
  function resolveCommandAttempt(parsed, withoutPathExt) {
@@ -310,7 +313,7 @@ var require_resolveCommand = (0, import_chunk_2ESYSVXG.__commonJS)({
310
313
  try {
311
314
  resolved = which.sync(parsed.command, {
312
315
  path: env[getPathKey({ env })],
313
- pathExt: withoutPathExt ? path3.delimiter : void 0
316
+ pathExt: withoutPathExt ? path4.delimiter : void 0
314
317
  });
315
318
  } catch (e) {
316
319
  } finally {
@@ -319,7 +322,7 @@ var require_resolveCommand = (0, import_chunk_2ESYSVXG.__commonJS)({
319
322
  }
320
323
  }
321
324
  if (resolved) {
322
- resolved = path3.resolve(hasCustomCwd ? parsed.options.cwd : "", resolved);
325
+ resolved = path4.resolve(hasCustomCwd ? parsed.options.cwd : "", resolved);
323
326
  }
324
327
  return resolved;
325
328
  }
@@ -367,8 +370,8 @@ var require_shebang_command = (0, import_chunk_2ESYSVXG.__commonJS)({
367
370
  if (!match) {
368
371
  return null;
369
372
  }
370
- const [path3, argument] = match[0].replace(/#! ?/, "").split(" ");
371
- const binary = path3.split("/").pop();
373
+ const [path4, argument] = match[0].replace(/#! ?/, "").split(" ");
374
+ const binary = path4.split("/").pop();
372
375
  if (binary === "env") {
373
376
  return argument;
374
377
  }
@@ -399,7 +402,7 @@ var require_readShebang = (0, import_chunk_2ESYSVXG.__commonJS)({
399
402
  var require_parse = (0, import_chunk_2ESYSVXG.__commonJS)({
400
403
  "../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/parse.js"(exports, module2) {
401
404
  "use strict";
402
- var path3 = (0, import_chunk_2ESYSVXG.__require)("path");
405
+ var path4 = (0, import_chunk_2ESYSVXG.__require)("path");
403
406
  var resolveCommand = require_resolveCommand();
404
407
  var escape = require_escape();
405
408
  var readShebang = require_readShebang();
@@ -424,7 +427,7 @@ var require_parse = (0, import_chunk_2ESYSVXG.__commonJS)({
424
427
  const needsShell = !isExecutableRegExp.test(commandFile);
425
428
  if (parsed.options.forceShell || needsShell) {
426
429
  const needsDoubleEscapeMetaChars = isCmdShimRegExp.test(commandFile);
427
- parsed.command = path3.normalize(parsed.command);
430
+ parsed.command = path4.normalize(parsed.command);
428
431
  parsed.command = escape.command(parsed.command);
429
432
  parsed.args = parsed.args.map((arg) => escape.argument(arg, needsDoubleEscapeMetaChars));
430
433
  const shellCommand = [parsed.command].concat(parsed.args).join(" ");
@@ -597,7 +600,7 @@ var npmRunPath = ({
597
600
  addExecPath = true
598
601
  } = {}) => {
599
602
  const cwdString = cwd instanceof URL ? (0, import_node_url.fileURLToPath)(cwd) : cwd;
600
- const cwdPath = import_node_path2.default.resolve(cwdString);
603
+ const cwdPath = import_node_path3.default.resolve(cwdString);
601
604
  const result = [];
602
605
  if (preferLocal) {
603
606
  applyPreferLocal(result, cwdPath);
@@ -605,19 +608,19 @@ var npmRunPath = ({
605
608
  if (addExecPath) {
606
609
  applyExecPath(result, execPath, cwdPath);
607
610
  }
608
- return [...result, pathOption].join(import_node_path2.default.delimiter);
611
+ return [...result, pathOption].join(import_node_path3.default.delimiter);
609
612
  };
610
613
  var applyPreferLocal = (result, cwdPath) => {
611
614
  let previous;
612
615
  while (previous !== cwdPath) {
613
- result.push(import_node_path2.default.join(cwdPath, "node_modules/.bin"));
616
+ result.push(import_node_path3.default.join(cwdPath, "node_modules/.bin"));
614
617
  previous = cwdPath;
615
- cwdPath = import_node_path2.default.resolve(cwdPath, "..");
618
+ cwdPath = import_node_path3.default.resolve(cwdPath, "..");
616
619
  }
617
620
  };
618
621
  var applyExecPath = (result, execPath, cwdPath) => {
619
622
  const execPathString = execPath instanceof URL ? (0, import_node_url.fileURLToPath)(execPath) : execPath;
620
- result.push(import_node_path2.default.resolve(cwdPath, execPathString, ".."));
623
+ result.push(import_node_path3.default.resolve(cwdPath, execPathString, ".."));
621
624
  };
622
625
  var npmRunPathEnv = ({ env = import_node_process2.default.env, ...options } = {}) => {
623
626
  env = { ...env };
@@ -1662,7 +1665,7 @@ var handleArguments = (file, args, options = {}) => {
1662
1665
  };
1663
1666
  options.env = getEnv(options);
1664
1667
  options.stdio = normalizeStdio(options);
1665
- if (import_node_process.default.platform === "win32" && import_node_path.default.basename(file, ".exe") === "cmd") {
1668
+ if (import_node_process.default.platform === "win32" && import_node_path2.default.basename(file, ".exe") === "cmd") {
1666
1669
  args.unshift("/q");
1667
1670
  }
1668
1671
  return { file, args, options, parsed };
@@ -1838,6 +1841,31 @@ function execaCommand(command, options) {
1838
1841
  return execa(file, args, options);
1839
1842
  }
1840
1843
  var debug = (0, import_debug.default)("prisma:migrate:seed");
1844
+ async function getSeedCommandFromPackageJson(cwd) {
1845
+ const prismaConfig = await (0, import_config.loadConfigFromPackageJson)(cwd);
1846
+ debug({ prismaConfig });
1847
+ if (!prismaConfig?.config?.seed) {
1848
+ return null;
1849
+ }
1850
+ const seedCommandFromPkgJson = prismaConfig.config.seed;
1851
+ if (typeof seedCommandFromPkgJson !== "string") {
1852
+ throw new Error(
1853
+ `Provided seed command \`${seedCommandFromPkgJson}\` from \`${import_node_path.default.relative(
1854
+ cwd,
1855
+ prismaConfig.loadedFromFile
1856
+ )}\` must be of type string`
1857
+ );
1858
+ }
1859
+ if (!seedCommandFromPkgJson) {
1860
+ throw new Error(
1861
+ `Provided seed command \`${seedCommandFromPkgJson}\` from \`${import_node_path.default.relative(
1862
+ cwd,
1863
+ prismaConfig.loadedFromFile
1864
+ )}\` cannot be empty`
1865
+ );
1866
+ }
1867
+ return prismaConfig.config.seed;
1868
+ }
1841
1869
  async function executeSeedCommand({
1842
1870
  commandFromConfig,
1843
1871
  extraArgs
@@ -26,14 +26,14 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var chunk_Q66L2LFA_exports = {};
30
- __export(chunk_Q66L2LFA_exports, {
29
+ var chunk_R4IWP35Z_exports = {};
30
+ __export(chunk_R4IWP35Z_exports, {
31
31
  MigrateStatus: () => MigrateStatus
32
32
  });
33
- module.exports = __toCommonJS(chunk_Q66L2LFA_exports);
33
+ module.exports = __toCommonJS(chunk_R4IWP35Z_exports);
34
34
  var import_chunk_2FXU5NZQ = require("./chunk-2FXU5NZQ.js");
35
35
  var import_chunk_74LUB4XX = require("./chunk-74LUB4XX.js");
36
- var import_chunk_MOFG2YPJ = require("./chunk-MOFG2YPJ.js");
36
+ var import_chunk_D6LYHB65 = require("./chunk-D6LYHB65.js");
37
37
  var import_chunk_SKRR5WT4 = require("./chunk-SKRR5WT4.js");
38
38
  var import_debug = __toESM(require("@prisma/debug"));
39
39
  var import_internals = require("@prisma/internals");
@@ -81,7 +81,7 @@ Check the status of your database migrations
81
81
  if (args["--help"]) {
82
82
  return this.help();
83
83
  }
84
- (0, import_internals.loadEnvFile)({ schemaPath: args["--schema"], printMessage: true, config });
84
+ await (0, import_internals.loadEnvFile)({ schemaPath: args["--schema"], printMessage: true, config });
85
85
  const schemaContext = await (0, import_internals.loadSchemaContext)({
86
86
  schemaPathFromArg: args["--schema"],
87
87
  schemaPathFromConfig: config.schema,
@@ -95,7 +95,7 @@ Check the status of your database migrations
95
95
  externalTables: config.tables?.external ?? [],
96
96
  externalEnums: config.enums?.external ?? []
97
97
  };
98
- const migrate = await import_chunk_MOFG2YPJ.Migrate.setup({
98
+ const migrate = await import_chunk_D6LYHB65.Migrate.setup({
99
99
  schemaEngineConfig: config,
100
100
  migrationsDirPath,
101
101
  schemaContext,
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var chunk_RR6BKMNO_exports = {};
20
+ __export(chunk_RR6BKMNO_exports, {
21
+ replaceOrAddDatasource: () => replaceOrAddDatasource
22
+ });
23
+ module.exports = __toCommonJS(chunk_RR6BKMNO_exports);
24
+ var import_internals = require("@prisma/internals");
25
+ function replaceOrAddDatasource(newDatasource, files) {
26
+ let replaced = false;
27
+ const result = files.map(([path, content]) => {
28
+ const replaceResult = replaceDatasourceSingle(newDatasource, content);
29
+ if (replaceResult.replaced) {
30
+ replaced = true;
31
+ }
32
+ return [path, replaceResult.content];
33
+ });
34
+ if (!replaced) {
35
+ appendToFirstFile(newDatasource, result);
36
+ }
37
+ return result;
38
+ }
39
+ function appendToFirstFile(newDatasource, files) {
40
+ const firstFile = files[0];
41
+ (0, import_internals.assertAlways)(firstFile, "There always should be at least on file in the schema");
42
+ firstFile[1] = `${newDatasource}
43
+ ${firstFile[1]}`;
44
+ }
45
+ function replaceDatasourceSingle(newDatasource, content) {
46
+ const lines = content.split(/\r\n|\r|\n/g);
47
+ const existingDatasource = findDatasource(lines);
48
+ if (!existingDatasource) {
49
+ return { replaced: false, content };
50
+ }
51
+ lines.splice(existingDatasource.startLine, existingDatasource.endLine - existingDatasource.startLine + 1);
52
+ const noDatasource = lines.join("\n").trim();
53
+ return { replaced: true, content: `${newDatasource}
54
+
55
+ ${noDatasource}` };
56
+ }
57
+ function findDatasource(lines) {
58
+ if (lines.length <= 2) {
59
+ return void 0;
60
+ }
61
+ const startLine = lines.findIndex((line) => {
62
+ const lineTrimmed = line.trim();
63
+ return lineTrimmed.startsWith("datasource") && lineTrimmed.endsWith("{");
64
+ });
65
+ if (startLine === -1) {
66
+ return void 0;
67
+ }
68
+ let endLine = -1;
69
+ for (let index = startLine; index < lines.length; index++) {
70
+ const lineTrimmed = lines[index].trim();
71
+ if (lineTrimmed.endsWith("}") && !lineTrimmed.startsWith("//")) {
72
+ endLine = index;
73
+ break;
74
+ }
75
+ }
76
+ if (endLine === -1) {
77
+ return void 0;
78
+ }
79
+ return { startLine, endLine };
80
+ }
@@ -26,16 +26,16 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var chunk_CQLPPAWH_exports = {};
30
- __export(chunk_CQLPPAWH_exports, {
29
+ var chunk_TW22Y3AA_exports = {};
30
+ __export(chunk_TW22Y3AA_exports, {
31
31
  DbPush: () => DbPush
32
32
  });
33
- module.exports = __toCommonJS(chunk_CQLPPAWH_exports);
33
+ module.exports = __toCommonJS(chunk_TW22Y3AA_exports);
34
34
  var import_chunk_FBDQVK4W = require("./chunk-FBDQVK4W.js");
35
35
  var import_chunk_3WC4XD74 = require("./chunk-3WC4XD74.js");
36
36
  var import_chunk_2FXU5NZQ = require("./chunk-2FXU5NZQ.js");
37
37
  var import_chunk_74LUB4XX = require("./chunk-74LUB4XX.js");
38
- var import_chunk_MOFG2YPJ = require("./chunk-MOFG2YPJ.js");
38
+ var import_chunk_D6LYHB65 = require("./chunk-D6LYHB65.js");
39
39
  var import_chunk_SKRR5WT4 = require("./chunk-SKRR5WT4.js");
40
40
  var import_internals = require("@prisma/internals");
41
41
  var import_prompts = __toESM(require("prompts"));
@@ -91,7 +91,7 @@ ${(0, import_chunk_SKRR5WT4.bold)("Examples")}
91
91
  if (args["--help"]) {
92
92
  return this.help();
93
93
  }
94
- (0, import_internals.loadEnvFile)({ schemaPath: args["--schema"], printMessage: true, config });
94
+ await (0, import_internals.loadEnvFile)({ schemaPath: args["--schema"], printMessage: true, config });
95
95
  const schemaContext = await (0, import_internals.loadSchemaContext)({
96
96
  schemaPathFromArg: args["--schema"],
97
97
  schemaPathFromConfig: config.schema,
@@ -106,7 +106,7 @@ ${(0, import_chunk_SKRR5WT4.bold)("Examples")}
106
106
  externalTables: config.tables?.external ?? [],
107
107
  externalEnums: config.enums?.external ?? []
108
108
  };
109
- const migrate = await import_chunk_MOFG2YPJ.Migrate.setup({
109
+ const migrate = await import_chunk_D6LYHB65.Migrate.setup({
110
110
  schemaEngineConfig: config,
111
111
  migrationsDirPath,
112
112
  schemaContext,
@@ -233,7 +233,7 @@ ${rocketEmoji}${provider === "mongodb" ? migrationSuccessMongoMessage : migratio
233
233
  );
234
234
  }
235
235
  if (!process.env.PRISMA_MIGRATE_SKIP_GENERATE && !args["--skip-generate"]) {
236
- await migrate.tryToRunGenerate();
236
+ await migrate.tryToRunGenerate(datasourceInfo);
237
237
  }
238
238
  return ``;
239
239
  }
@@ -26,11 +26,11 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var chunk_43R3GFIU_exports = {};
30
- __export(chunk_43R3GFIU_exports, {
29
+ var chunk_Z27SI4AV_exports = {};
30
+ __export(chunk_Z27SI4AV_exports, {
31
31
  DbDrop: () => DbDrop
32
32
  });
33
- module.exports = __toCommonJS(chunk_43R3GFIU_exports);
33
+ module.exports = __toCommonJS(chunk_Z27SI4AV_exports);
34
34
  var import_chunk_IHDN3L3R = require("./chunk-IHDN3L3R.js");
35
35
  var import_chunk_FBDQVK4W = require("./chunk-FBDQVK4W.js");
36
36
  var import_chunk_3WC4XD74 = require("./chunk-3WC4XD74.js");
@@ -94,7 +94,7 @@ ${(0, import_chunk_SKRR5WT4.bold)("Examples")}
94
94
  if (!args["--preview-feature"]) {
95
95
  throw new import_chunk_IHDN3L3R.PreviewFlagError();
96
96
  }
97
- (0, import_internals.loadEnvFile)({ schemaPath: args["--schema"], printMessage: true, config });
97
+ await (0, import_internals.loadEnvFile)({ schemaPath: args["--schema"], printMessage: true, config });
98
98
  const schemaContext = await (0, import_internals.loadSchemaContext)({
99
99
  schemaPathFromArg: args["--schema"],
100
100
  schemaPathFromConfig: config.schema,