@prisma/client-generator-ts 6.19.0-integration-next.21 → 6.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -111,14 +111,14 @@ var require_polyfills = __commonJS({
111
111
  fs3.fstatSync = statFixSync(fs3.fstatSync);
112
112
  fs3.lstatSync = statFixSync(fs3.lstatSync);
113
113
  if (fs3.chmod && !fs3.lchmod) {
114
- fs3.lchmod = function(path4, mode, cb) {
114
+ fs3.lchmod = function(path6, mode, cb) {
115
115
  if (cb) process.nextTick(cb);
116
116
  };
117
117
  fs3.lchmodSync = function() {
118
118
  };
119
119
  }
120
120
  if (fs3.chown && !fs3.lchown) {
121
- fs3.lchown = function(path4, uid, gid, cb) {
121
+ fs3.lchown = function(path6, uid, gid, cb) {
122
122
  if (cb) process.nextTick(cb);
123
123
  };
124
124
  fs3.lchownSync = function() {
@@ -185,9 +185,9 @@ var require_polyfills = __commonJS({
185
185
  };
186
186
  }(fs3.readSync);
187
187
  function patchLchmod(fs4) {
188
- fs4.lchmod = function(path4, mode, callback) {
188
+ fs4.lchmod = function(path6, mode, callback) {
189
189
  fs4.open(
190
- path4,
190
+ path6,
191
191
  constants.O_WRONLY | constants.O_SYMLINK,
192
192
  mode,
193
193
  function(err, fd) {
@@ -203,8 +203,8 @@ var require_polyfills = __commonJS({
203
203
  }
204
204
  );
205
205
  };
206
- fs4.lchmodSync = function(path4, mode) {
207
- var fd = fs4.openSync(path4, constants.O_WRONLY | constants.O_SYMLINK, mode);
206
+ fs4.lchmodSync = function(path6, mode) {
207
+ var fd = fs4.openSync(path6, constants.O_WRONLY | constants.O_SYMLINK, mode);
208
208
  var threw = true;
209
209
  var ret;
210
210
  try {
@@ -225,8 +225,8 @@ var require_polyfills = __commonJS({
225
225
  }
226
226
  function patchLutimes(fs4) {
227
227
  if (constants.hasOwnProperty("O_SYMLINK") && fs4.futimes) {
228
- fs4.lutimes = function(path4, at, mt, cb) {
229
- fs4.open(path4, constants.O_SYMLINK, function(er, fd) {
228
+ fs4.lutimes = function(path6, at, mt, cb) {
229
+ fs4.open(path6, constants.O_SYMLINK, function(er, fd) {
230
230
  if (er) {
231
231
  if (cb) cb(er);
232
232
  return;
@@ -238,8 +238,8 @@ var require_polyfills = __commonJS({
238
238
  });
239
239
  });
240
240
  };
241
- fs4.lutimesSync = function(path4, at, mt) {
242
- var fd = fs4.openSync(path4, constants.O_SYMLINK);
241
+ fs4.lutimesSync = function(path6, at, mt) {
242
+ var fd = fs4.openSync(path6, constants.O_SYMLINK);
243
243
  var ret;
244
244
  var threw = true;
245
245
  try {
@@ -358,11 +358,11 @@ var require_legacy_streams = __commonJS({
358
358
  ReadStream,
359
359
  WriteStream
360
360
  };
361
- function ReadStream(path4, options) {
362
- if (!(this instanceof ReadStream)) return new ReadStream(path4, options);
361
+ function ReadStream(path6, options) {
362
+ if (!(this instanceof ReadStream)) return new ReadStream(path6, options);
363
363
  Stream.call(this);
364
364
  var self = this;
365
- this.path = path4;
365
+ this.path = path6;
366
366
  this.fd = null;
367
367
  this.readable = true;
368
368
  this.paused = false;
@@ -407,10 +407,10 @@ var require_legacy_streams = __commonJS({
407
407
  self._read();
408
408
  });
409
409
  }
410
- function WriteStream(path4, options) {
411
- if (!(this instanceof WriteStream)) return new WriteStream(path4, options);
410
+ function WriteStream(path6, options) {
411
+ if (!(this instanceof WriteStream)) return new WriteStream(path6, options);
412
412
  Stream.call(this);
413
- this.path = path4;
413
+ this.path = path6;
414
414
  this.fd = null;
415
415
  this.writable = true;
416
416
  this.flags = "w";
@@ -494,11 +494,11 @@ var require_graceful_fs = __commonJS({
494
494
  }
495
495
  });
496
496
  }
497
- var debug2 = noop;
497
+ var debug3 = noop;
498
498
  if (util.debuglog)
499
- debug2 = util.debuglog("gfs4");
499
+ debug3 = util.debuglog("gfs4");
500
500
  else if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || ""))
501
- debug2 = function() {
501
+ debug3 = function() {
502
502
  var m = util.format.apply(util, arguments);
503
503
  m = "GFS4: " + m.split(/\n/).join("\nGFS4: ");
504
504
  console.error(m);
@@ -533,7 +533,7 @@ var require_graceful_fs = __commonJS({
533
533
  }(fs3.closeSync);
534
534
  if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) {
535
535
  process.on("exit", function() {
536
- debug2(fs3[gracefulQueue]);
536
+ debug3(fs3[gracefulQueue]);
537
537
  __require("assert").equal(fs3[gracefulQueue].length, 0);
538
538
  });
539
539
  }
@@ -554,14 +554,14 @@ var require_graceful_fs = __commonJS({
554
554
  fs4.createWriteStream = createWriteStream;
555
555
  var fs$readFile = fs4.readFile;
556
556
  fs4.readFile = readFile;
557
- function readFile(path4, options, cb) {
557
+ function readFile(path6, options, cb) {
558
558
  if (typeof options === "function")
559
559
  cb = options, options = null;
560
- return go$readFile(path4, options, cb);
561
- function go$readFile(path5, options2, cb2, startTime) {
562
- return fs$readFile(path5, options2, function(err) {
560
+ return go$readFile(path6, options, cb);
561
+ function go$readFile(path7, options2, cb2, startTime) {
562
+ return fs$readFile(path7, options2, function(err) {
563
563
  if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
564
- enqueue([go$readFile, [path5, options2, cb2], err, startTime || Date.now(), Date.now()]);
564
+ enqueue([go$readFile, [path7, options2, cb2], err, startTime || Date.now(), Date.now()]);
565
565
  else {
566
566
  if (typeof cb2 === "function")
567
567
  cb2.apply(this, arguments);
@@ -571,14 +571,14 @@ var require_graceful_fs = __commonJS({
571
571
  }
572
572
  var fs$writeFile = fs4.writeFile;
573
573
  fs4.writeFile = writeFile;
574
- function writeFile(path4, data, options, cb) {
574
+ function writeFile(path6, data, options, cb) {
575
575
  if (typeof options === "function")
576
576
  cb = options, options = null;
577
- return go$writeFile(path4, data, options, cb);
578
- function go$writeFile(path5, data2, options2, cb2, startTime) {
579
- return fs$writeFile(path5, data2, options2, function(err) {
577
+ return go$writeFile(path6, data, options, cb);
578
+ function go$writeFile(path7, data2, options2, cb2, startTime) {
579
+ return fs$writeFile(path7, data2, options2, function(err) {
580
580
  if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
581
- enqueue([go$writeFile, [path5, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
581
+ enqueue([go$writeFile, [path7, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
582
582
  else {
583
583
  if (typeof cb2 === "function")
584
584
  cb2.apply(this, arguments);
@@ -589,14 +589,14 @@ var require_graceful_fs = __commonJS({
589
589
  var fs$appendFile = fs4.appendFile;
590
590
  if (fs$appendFile)
591
591
  fs4.appendFile = appendFile;
592
- function appendFile(path4, data, options, cb) {
592
+ function appendFile(path6, data, options, cb) {
593
593
  if (typeof options === "function")
594
594
  cb = options, options = null;
595
- return go$appendFile(path4, data, options, cb);
596
- function go$appendFile(path5, data2, options2, cb2, startTime) {
597
- return fs$appendFile(path5, data2, options2, function(err) {
595
+ return go$appendFile(path6, data, options, cb);
596
+ function go$appendFile(path7, data2, options2, cb2, startTime) {
597
+ return fs$appendFile(path7, data2, options2, function(err) {
598
598
  if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
599
- enqueue([go$appendFile, [path5, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
599
+ enqueue([go$appendFile, [path7, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
600
600
  else {
601
601
  if (typeof cb2 === "function")
602
602
  cb2.apply(this, arguments);
@@ -627,31 +627,31 @@ var require_graceful_fs = __commonJS({
627
627
  var fs$readdir = fs4.readdir;
628
628
  fs4.readdir = readdir;
629
629
  var noReaddirOptionVersions = /^v[0-5]\./;
630
- function readdir(path4, options, cb) {
630
+ function readdir(path6, options, cb) {
631
631
  if (typeof options === "function")
632
632
  cb = options, options = null;
633
- var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path5, options2, cb2, startTime) {
634
- return fs$readdir(path5, fs$readdirCallback(
635
- path5,
633
+ var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path7, options2, cb2, startTime) {
634
+ return fs$readdir(path7, fs$readdirCallback(
635
+ path7,
636
636
  options2,
637
637
  cb2,
638
638
  startTime
639
639
  ));
640
- } : function go$readdir2(path5, options2, cb2, startTime) {
641
- return fs$readdir(path5, options2, fs$readdirCallback(
642
- path5,
640
+ } : function go$readdir2(path7, options2, cb2, startTime) {
641
+ return fs$readdir(path7, options2, fs$readdirCallback(
642
+ path7,
643
643
  options2,
644
644
  cb2,
645
645
  startTime
646
646
  ));
647
647
  };
648
- return go$readdir(path4, options, cb);
649
- function fs$readdirCallback(path5, options2, cb2, startTime) {
648
+ return go$readdir(path6, options, cb);
649
+ function fs$readdirCallback(path7, options2, cb2, startTime) {
650
650
  return function(err, files) {
651
651
  if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
652
652
  enqueue([
653
653
  go$readdir,
654
- [path5, options2, cb2],
654
+ [path7, options2, cb2],
655
655
  err,
656
656
  startTime || Date.now(),
657
657
  Date.now()
@@ -722,7 +722,7 @@ var require_graceful_fs = __commonJS({
722
722
  enumerable: true,
723
723
  configurable: true
724
724
  });
725
- function ReadStream(path4, options) {
725
+ function ReadStream(path6, options) {
726
726
  if (this instanceof ReadStream)
727
727
  return fs$ReadStream.apply(this, arguments), this;
728
728
  else
@@ -742,7 +742,7 @@ var require_graceful_fs = __commonJS({
742
742
  }
743
743
  });
744
744
  }
745
- function WriteStream(path4, options) {
745
+ function WriteStream(path6, options) {
746
746
  if (this instanceof WriteStream)
747
747
  return fs$WriteStream.apply(this, arguments), this;
748
748
  else
@@ -760,22 +760,22 @@ var require_graceful_fs = __commonJS({
760
760
  }
761
761
  });
762
762
  }
763
- function createReadStream(path4, options) {
764
- return new fs4.ReadStream(path4, options);
763
+ function createReadStream(path6, options) {
764
+ return new fs4.ReadStream(path6, options);
765
765
  }
766
- function createWriteStream(path4, options) {
767
- return new fs4.WriteStream(path4, options);
766
+ function createWriteStream(path6, options) {
767
+ return new fs4.WriteStream(path6, options);
768
768
  }
769
769
  var fs$open = fs4.open;
770
770
  fs4.open = open;
771
- function open(path4, flags, mode, cb) {
771
+ function open(path6, flags, mode, cb) {
772
772
  if (typeof mode === "function")
773
773
  cb = mode, mode = null;
774
- return go$open(path4, flags, mode, cb);
775
- function go$open(path5, flags2, mode2, cb2, startTime) {
776
- return fs$open(path5, flags2, mode2, function(err, fd) {
774
+ return go$open(path6, flags, mode, cb);
775
+ function go$open(path7, flags2, mode2, cb2, startTime) {
776
+ return fs$open(path7, flags2, mode2, function(err, fd) {
777
777
  if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
778
- enqueue([go$open, [path5, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]);
778
+ enqueue([go$open, [path7, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]);
779
779
  else {
780
780
  if (typeof cb2 === "function")
781
781
  cb2.apply(this, arguments);
@@ -786,7 +786,7 @@ var require_graceful_fs = __commonJS({
786
786
  return fs4;
787
787
  }
788
788
  function enqueue(elem) {
789
- debug2("ENQUEUE", elem[0].name, elem[1]);
789
+ debug3("ENQUEUE", elem[0].name, elem[1]);
790
790
  fs3[gracefulQueue].push(elem);
791
791
  retry();
792
792
  }
@@ -813,10 +813,10 @@ var require_graceful_fs = __commonJS({
813
813
  var startTime = elem[3];
814
814
  var lastTime = elem[4];
815
815
  if (startTime === void 0) {
816
- debug2("RETRY", fn.name, args);
816
+ debug3("RETRY", fn.name, args);
817
817
  fn.apply(null, args);
818
818
  } else if (Date.now() - startTime >= 6e4) {
819
- debug2("TIMEOUT", fn.name, args);
819
+ debug3("TIMEOUT", fn.name, args);
820
820
  var cb = args.pop();
821
821
  if (typeof cb === "function")
822
822
  cb.call(null, err);
@@ -825,7 +825,7 @@ var require_graceful_fs = __commonJS({
825
825
  var sinceStart = Math.max(lastTime - startTime, 1);
826
826
  var desiredDelay = Math.min(sinceStart * 1.2, 100);
827
827
  if (sinceAttempt >= desiredDelay) {
828
- debug2("RETRY", fn.name, args);
828
+ debug3("RETRY", fn.name, args);
829
829
  fn.apply(null, args.concat([startTime]));
830
830
  } else {
831
831
  fs3[gracefulQueue].push(elem);
@@ -958,10 +958,10 @@ var require_fs = __commonJS({
958
958
  var require_utils = __commonJS({
959
959
  "../../node_modules/.pnpm/fs-extra@11.3.0/node_modules/fs-extra/lib/mkdirs/utils.js"(exports, module) {
960
960
  "use strict";
961
- var path4 = __require("path");
961
+ var path6 = __require("path");
962
962
  module.exports.checkPath = function checkPath(pth) {
963
963
  if (process.platform === "win32") {
964
- const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path4.parse(pth).root, ""));
964
+ const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path6.parse(pth).root, ""));
965
965
  if (pathHasInvalidWinCharacters) {
966
966
  const error = new Error(`Path contains invalid characters: ${pth}`);
967
967
  error.code = "EINVAL";
@@ -1025,8 +1025,8 @@ var require_path_exists = __commonJS({
1025
1025
  "use strict";
1026
1026
  var u = require_universalify().fromPromise;
1027
1027
  var fs3 = require_fs();
1028
- function pathExists(path4) {
1029
- return fs3.access(path4).then(() => true).catch(() => false);
1028
+ function pathExists(path6) {
1029
+ return fs3.access(path6).then(() => true).catch(() => false);
1030
1030
  }
1031
1031
  module.exports = {
1032
1032
  pathExists: u(pathExists),
@@ -1041,8 +1041,8 @@ var require_utimes = __commonJS({
1041
1041
  "use strict";
1042
1042
  var fs3 = require_fs();
1043
1043
  var u = require_universalify().fromPromise;
1044
- async function utimesMillis(path4, atime, mtime) {
1045
- const fd = await fs3.open(path4, "r+");
1044
+ async function utimesMillis(path6, atime, mtime) {
1045
+ const fd = await fs3.open(path6, "r+");
1046
1046
  let closeErr = null;
1047
1047
  try {
1048
1048
  await fs3.futimes(fd, atime, mtime);
@@ -1057,8 +1057,8 @@ var require_utimes = __commonJS({
1057
1057
  throw closeErr;
1058
1058
  }
1059
1059
  }
1060
- function utimesMillisSync(path4, atime, mtime) {
1061
- const fd = fs3.openSync(path4, "r+");
1060
+ function utimesMillisSync(path6, atime, mtime) {
1061
+ const fd = fs3.openSync(path6, "r+");
1062
1062
  fs3.futimesSync(fd, atime, mtime);
1063
1063
  return fs3.closeSync(fd);
1064
1064
  }
@@ -1074,7 +1074,7 @@ var require_stat = __commonJS({
1074
1074
  "../../node_modules/.pnpm/fs-extra@11.3.0/node_modules/fs-extra/lib/util/stat.js"(exports, module) {
1075
1075
  "use strict";
1076
1076
  var fs3 = require_fs();
1077
- var path4 = __require("path");
1077
+ var path6 = __require("path");
1078
1078
  var u = require_universalify().fromPromise;
1079
1079
  function getStats(src, dest, opts) {
1080
1080
  const statFunc = opts.dereference ? (file4) => fs3.stat(file4, { bigint: true }) : (file4) => fs3.lstat(file4, { bigint: true });
@@ -1102,8 +1102,8 @@ var require_stat = __commonJS({
1102
1102
  const { srcStat, destStat } = await getStats(src, dest, opts);
1103
1103
  if (destStat) {
1104
1104
  if (areIdentical(srcStat, destStat)) {
1105
- const srcBaseName = path4.basename(src);
1106
- const destBaseName = path4.basename(dest);
1105
+ const srcBaseName = path6.basename(src);
1106
+ const destBaseName = path6.basename(dest);
1107
1107
  if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
1108
1108
  return { srcStat, destStat, isChangingCase: true };
1109
1109
  }
@@ -1125,8 +1125,8 @@ var require_stat = __commonJS({
1125
1125
  const { srcStat, destStat } = getStatsSync(src, dest, opts);
1126
1126
  if (destStat) {
1127
1127
  if (areIdentical(srcStat, destStat)) {
1128
- const srcBaseName = path4.basename(src);
1129
- const destBaseName = path4.basename(dest);
1128
+ const srcBaseName = path6.basename(src);
1129
+ const destBaseName = path6.basename(dest);
1130
1130
  if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
1131
1131
  return { srcStat, destStat, isChangingCase: true };
1132
1132
  }
@@ -1145,9 +1145,9 @@ var require_stat = __commonJS({
1145
1145
  return { srcStat, destStat };
1146
1146
  }
1147
1147
  async function checkParentPaths(src, srcStat, dest, funcName) {
1148
- const srcParent = path4.resolve(path4.dirname(src));
1149
- const destParent = path4.resolve(path4.dirname(dest));
1150
- if (destParent === srcParent || destParent === path4.parse(destParent).root) return;
1148
+ const srcParent = path6.resolve(path6.dirname(src));
1149
+ const destParent = path6.resolve(path6.dirname(dest));
1150
+ if (destParent === srcParent || destParent === path6.parse(destParent).root) return;
1151
1151
  let destStat;
1152
1152
  try {
1153
1153
  destStat = await fs3.stat(destParent, { bigint: true });
@@ -1161,9 +1161,9 @@ var require_stat = __commonJS({
1161
1161
  return checkParentPaths(src, srcStat, destParent, funcName);
1162
1162
  }
1163
1163
  function checkParentPathsSync(src, srcStat, dest, funcName) {
1164
- const srcParent = path4.resolve(path4.dirname(src));
1165
- const destParent = path4.resolve(path4.dirname(dest));
1166
- if (destParent === srcParent || destParent === path4.parse(destParent).root) return;
1164
+ const srcParent = path6.resolve(path6.dirname(src));
1165
+ const destParent = path6.resolve(path6.dirname(dest));
1166
+ if (destParent === srcParent || destParent === path6.parse(destParent).root) return;
1167
1167
  let destStat;
1168
1168
  try {
1169
1169
  destStat = fs3.statSync(destParent, { bigint: true });
@@ -1180,8 +1180,8 @@ var require_stat = __commonJS({
1180
1180
  return destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev;
1181
1181
  }
1182
1182
  function isSrcSubdir(src, dest) {
1183
- const srcArr = path4.resolve(src).split(path4.sep).filter((i) => i);
1184
- const destArr = path4.resolve(dest).split(path4.sep).filter((i) => i);
1183
+ const srcArr = path6.resolve(src).split(path6.sep).filter((i) => i);
1184
+ const destArr = path6.resolve(dest).split(path6.sep).filter((i) => i);
1185
1185
  return srcArr.every((cur, i) => destArr[i] === cur);
1186
1186
  }
1187
1187
  function errMsg(src, dest, funcName) {
@@ -1206,7 +1206,7 @@ var require_copy = __commonJS({
1206
1206
  "../../node_modules/.pnpm/fs-extra@11.3.0/node_modules/fs-extra/lib/copy/copy.js"(exports, module) {
1207
1207
  "use strict";
1208
1208
  var fs3 = require_fs();
1209
- var path4 = __require("path");
1209
+ var path6 = __require("path");
1210
1210
  var { mkdirs } = require_mkdirs();
1211
1211
  var { pathExists } = require_path_exists();
1212
1212
  var { utimesMillis } = require_utimes();
@@ -1228,7 +1228,7 @@ var require_copy = __commonJS({
1228
1228
  await stat.checkParentPaths(src, srcStat, dest, "copy");
1229
1229
  const include = await runFilter(src, dest, opts);
1230
1230
  if (!include) return;
1231
- const destParent = path4.dirname(dest);
1231
+ const destParent = path6.dirname(dest);
1232
1232
  const dirExists = await pathExists(destParent);
1233
1233
  if (!dirExists) {
1234
1234
  await mkdirs(destParent);
@@ -1282,8 +1282,8 @@ var require_copy = __commonJS({
1282
1282
  }
1283
1283
  const promises = [];
1284
1284
  for await (const item of await fs3.opendir(src)) {
1285
- const srcItem = path4.join(src, item.name);
1286
- const destItem = path4.join(dest, item.name);
1285
+ const srcItem = path6.join(src, item.name);
1286
+ const destItem = path6.join(dest, item.name);
1287
1287
  promises.push(
1288
1288
  runFilter(srcItem, destItem, opts).then((include) => {
1289
1289
  if (include) {
@@ -1302,7 +1302,7 @@ var require_copy = __commonJS({
1302
1302
  async function onLink(destStat, src, dest, opts) {
1303
1303
  let resolvedSrc = await fs3.readlink(src);
1304
1304
  if (opts.dereference) {
1305
- resolvedSrc = path4.resolve(process.cwd(), resolvedSrc);
1305
+ resolvedSrc = path6.resolve(process.cwd(), resolvedSrc);
1306
1306
  }
1307
1307
  if (!destStat) {
1308
1308
  return fs3.symlink(resolvedSrc, dest);
@@ -1315,7 +1315,7 @@ var require_copy = __commonJS({
1315
1315
  throw e;
1316
1316
  }
1317
1317
  if (opts.dereference) {
1318
- resolvedDest = path4.resolve(process.cwd(), resolvedDest);
1318
+ resolvedDest = path6.resolve(process.cwd(), resolvedDest);
1319
1319
  }
1320
1320
  if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) {
1321
1321
  throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
@@ -1335,7 +1335,7 @@ var require_copy_sync = __commonJS({
1335
1335
  "../../node_modules/.pnpm/fs-extra@11.3.0/node_modules/fs-extra/lib/copy/copy-sync.js"(exports, module) {
1336
1336
  "use strict";
1337
1337
  var fs3 = require_graceful_fs();
1338
- var path4 = __require("path");
1338
+ var path6 = __require("path");
1339
1339
  var mkdirsSync = require_mkdirs().mkdirsSync;
1340
1340
  var utimesMillisSync = require_utimes().utimesMillisSync;
1341
1341
  var stat = require_stat();
@@ -1356,7 +1356,7 @@ var require_copy_sync = __commonJS({
1356
1356
  const { srcStat, destStat } = stat.checkPathsSync(src, dest, "copy", opts);
1357
1357
  stat.checkParentPathsSync(src, srcStat, dest, "copy");
1358
1358
  if (opts.filter && !opts.filter(src, dest)) return;
1359
- const destParent = path4.dirname(dest);
1359
+ const destParent = path6.dirname(dest);
1360
1360
  if (!fs3.existsSync(destParent)) mkdirsSync(destParent);
1361
1361
  return getStats(destStat, src, dest, opts);
1362
1362
  }
@@ -1425,8 +1425,8 @@ var require_copy_sync = __commonJS({
1425
1425
  }
1426
1426
  }
1427
1427
  function copyDirItem(item, src, dest, opts) {
1428
- const srcItem = path4.join(src, item);
1429
- const destItem = path4.join(dest, item);
1428
+ const srcItem = path6.join(src, item);
1429
+ const destItem = path6.join(dest, item);
1430
1430
  if (opts.filter && !opts.filter(srcItem, destItem)) return;
1431
1431
  const { destStat } = stat.checkPathsSync(srcItem, destItem, "copy", opts);
1432
1432
  return getStats(destStat, srcItem, destItem, opts);
@@ -1434,7 +1434,7 @@ var require_copy_sync = __commonJS({
1434
1434
  function onLink(destStat, src, dest, opts) {
1435
1435
  let resolvedSrc = fs3.readlinkSync(src);
1436
1436
  if (opts.dereference) {
1437
- resolvedSrc = path4.resolve(process.cwd(), resolvedSrc);
1437
+ resolvedSrc = path6.resolve(process.cwd(), resolvedSrc);
1438
1438
  }
1439
1439
  if (!destStat) {
1440
1440
  return fs3.symlinkSync(resolvedSrc, dest);
@@ -1447,7 +1447,7 @@ var require_copy_sync = __commonJS({
1447
1447
  throw err;
1448
1448
  }
1449
1449
  if (opts.dereference) {
1450
- resolvedDest = path4.resolve(process.cwd(), resolvedDest);
1450
+ resolvedDest = path6.resolve(process.cwd(), resolvedDest);
1451
1451
  }
1452
1452
  if (stat.isSrcSubdir(resolvedSrc, resolvedDest)) {
1453
1453
  throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
@@ -1484,11 +1484,11 @@ var require_remove = __commonJS({
1484
1484
  "use strict";
1485
1485
  var fs3 = require_graceful_fs();
1486
1486
  var u = require_universalify().fromCallback;
1487
- function remove(path4, callback) {
1488
- fs3.rm(path4, { recursive: true, force: true }, callback);
1487
+ function remove(path6, callback) {
1488
+ fs3.rm(path6, { recursive: true, force: true }, callback);
1489
1489
  }
1490
- function removeSync(path4) {
1491
- fs3.rmSync(path4, { recursive: true, force: true });
1490
+ function removeSync(path6) {
1491
+ fs3.rmSync(path6, { recursive: true, force: true });
1492
1492
  }
1493
1493
  module.exports = {
1494
1494
  remove: u(remove),
@@ -1503,7 +1503,7 @@ var require_empty = __commonJS({
1503
1503
  "use strict";
1504
1504
  var u = require_universalify().fromPromise;
1505
1505
  var fs3 = require_fs();
1506
- var path4 = __require("path");
1506
+ var path6 = __require("path");
1507
1507
  var mkdir = require_mkdirs();
1508
1508
  var remove = require_remove();
1509
1509
  var emptyDir = u(async function emptyDir2(dir) {
@@ -1513,7 +1513,7 @@ var require_empty = __commonJS({
1513
1513
  } catch {
1514
1514
  return mkdir.mkdirs(dir);
1515
1515
  }
1516
- return Promise.all(items.map((item) => remove.remove(path4.join(dir, item))));
1516
+ return Promise.all(items.map((item) => remove.remove(path6.join(dir, item))));
1517
1517
  });
1518
1518
  function emptyDirSync(dir) {
1519
1519
  let items;
@@ -1523,7 +1523,7 @@ var require_empty = __commonJS({
1523
1523
  return mkdir.mkdirsSync(dir);
1524
1524
  }
1525
1525
  items.forEach((item) => {
1526
- item = path4.join(dir, item);
1526
+ item = path6.join(dir, item);
1527
1527
  remove.removeSync(item);
1528
1528
  });
1529
1529
  }
@@ -1541,7 +1541,7 @@ var require_file = __commonJS({
1541
1541
  "../../node_modules/.pnpm/fs-extra@11.3.0/node_modules/fs-extra/lib/ensure/file.js"(exports, module) {
1542
1542
  "use strict";
1543
1543
  var u = require_universalify().fromPromise;
1544
- var path4 = __require("path");
1544
+ var path6 = __require("path");
1545
1545
  var fs3 = require_fs();
1546
1546
  var mkdir = require_mkdirs();
1547
1547
  async function createFile(file4) {
@@ -1551,7 +1551,7 @@ var require_file = __commonJS({
1551
1551
  } catch {
1552
1552
  }
1553
1553
  if (stats && stats.isFile()) return;
1554
- const dir = path4.dirname(file4);
1554
+ const dir = path6.dirname(file4);
1555
1555
  let dirStats = null;
1556
1556
  try {
1557
1557
  dirStats = await fs3.stat(dir);
@@ -1577,7 +1577,7 @@ var require_file = __commonJS({
1577
1577
  } catch {
1578
1578
  }
1579
1579
  if (stats && stats.isFile()) return;
1580
- const dir = path4.dirname(file4);
1580
+ const dir = path6.dirname(file4);
1581
1581
  try {
1582
1582
  if (!fs3.statSync(dir).isDirectory()) {
1583
1583
  fs3.readdirSync(dir);
@@ -1600,7 +1600,7 @@ var require_link = __commonJS({
1600
1600
  "../../node_modules/.pnpm/fs-extra@11.3.0/node_modules/fs-extra/lib/ensure/link.js"(exports, module) {
1601
1601
  "use strict";
1602
1602
  var u = require_universalify().fromPromise;
1603
- var path4 = __require("path");
1603
+ var path6 = __require("path");
1604
1604
  var fs3 = require_fs();
1605
1605
  var mkdir = require_mkdirs();
1606
1606
  var { pathExists } = require_path_exists();
@@ -1619,7 +1619,7 @@ var require_link = __commonJS({
1619
1619
  throw err;
1620
1620
  }
1621
1621
  if (dstStat && areIdentical(srcStat, dstStat)) return;
1622
- const dir = path4.dirname(dstpath);
1622
+ const dir = path6.dirname(dstpath);
1623
1623
  const dirExists = await pathExists(dir);
1624
1624
  if (!dirExists) {
1625
1625
  await mkdir.mkdirs(dir);
@@ -1639,7 +1639,7 @@ var require_link = __commonJS({
1639
1639
  err.message = err.message.replace("lstat", "ensureLink");
1640
1640
  throw err;
1641
1641
  }
1642
- const dir = path4.dirname(dstpath);
1642
+ const dir = path6.dirname(dstpath);
1643
1643
  const dirExists = fs3.existsSync(dir);
1644
1644
  if (dirExists) return fs3.linkSync(srcpath, dstpath);
1645
1645
  mkdir.mkdirsSync(dir);
@@ -1656,12 +1656,12 @@ var require_link = __commonJS({
1656
1656
  var require_symlink_paths = __commonJS({
1657
1657
  "../../node_modules/.pnpm/fs-extra@11.3.0/node_modules/fs-extra/lib/ensure/symlink-paths.js"(exports, module) {
1658
1658
  "use strict";
1659
- var path4 = __require("path");
1659
+ var path6 = __require("path");
1660
1660
  var fs3 = require_fs();
1661
1661
  var { pathExists } = require_path_exists();
1662
1662
  var u = require_universalify().fromPromise;
1663
1663
  async function symlinkPaths(srcpath, dstpath) {
1664
- if (path4.isAbsolute(srcpath)) {
1664
+ if (path6.isAbsolute(srcpath)) {
1665
1665
  try {
1666
1666
  await fs3.lstat(srcpath);
1667
1667
  } catch (err) {
@@ -1673,8 +1673,8 @@ var require_symlink_paths = __commonJS({
1673
1673
  toDst: srcpath
1674
1674
  };
1675
1675
  }
1676
- const dstdir = path4.dirname(dstpath);
1677
- const relativeToDst = path4.join(dstdir, srcpath);
1676
+ const dstdir = path6.dirname(dstpath);
1677
+ const relativeToDst = path6.join(dstdir, srcpath);
1678
1678
  const exists = await pathExists(relativeToDst);
1679
1679
  if (exists) {
1680
1680
  return {
@@ -1690,11 +1690,11 @@ var require_symlink_paths = __commonJS({
1690
1690
  }
1691
1691
  return {
1692
1692
  toCwd: srcpath,
1693
- toDst: path4.relative(dstdir, srcpath)
1693
+ toDst: path6.relative(dstdir, srcpath)
1694
1694
  };
1695
1695
  }
1696
1696
  function symlinkPathsSync(srcpath, dstpath) {
1697
- if (path4.isAbsolute(srcpath)) {
1697
+ if (path6.isAbsolute(srcpath)) {
1698
1698
  const exists2 = fs3.existsSync(srcpath);
1699
1699
  if (!exists2) throw new Error("absolute srcpath does not exist");
1700
1700
  return {
@@ -1702,8 +1702,8 @@ var require_symlink_paths = __commonJS({
1702
1702
  toDst: srcpath
1703
1703
  };
1704
1704
  }
1705
- const dstdir = path4.dirname(dstpath);
1706
- const relativeToDst = path4.join(dstdir, srcpath);
1705
+ const dstdir = path6.dirname(dstpath);
1706
+ const relativeToDst = path6.join(dstdir, srcpath);
1707
1707
  const exists = fs3.existsSync(relativeToDst);
1708
1708
  if (exists) {
1709
1709
  return {
@@ -1715,7 +1715,7 @@ var require_symlink_paths = __commonJS({
1715
1715
  if (!srcExists) throw new Error("relative srcpath does not exist");
1716
1716
  return {
1717
1717
  toCwd: srcpath,
1718
- toDst: path4.relative(dstdir, srcpath)
1718
+ toDst: path6.relative(dstdir, srcpath)
1719
1719
  };
1720
1720
  }
1721
1721
  module.exports = {
@@ -1763,7 +1763,7 @@ var require_symlink = __commonJS({
1763
1763
  "../../node_modules/.pnpm/fs-extra@11.3.0/node_modules/fs-extra/lib/ensure/symlink.js"(exports, module) {
1764
1764
  "use strict";
1765
1765
  var u = require_universalify().fromPromise;
1766
- var path4 = __require("path");
1766
+ var path6 = __require("path");
1767
1767
  var fs3 = require_fs();
1768
1768
  var { mkdirs, mkdirsSync } = require_mkdirs();
1769
1769
  var { symlinkPaths, symlinkPathsSync } = require_symlink_paths();
@@ -1786,7 +1786,7 @@ var require_symlink = __commonJS({
1786
1786
  const relative = await symlinkPaths(srcpath, dstpath);
1787
1787
  srcpath = relative.toDst;
1788
1788
  const toType = await symlinkType(relative.toCwd, type);
1789
- const dir = path4.dirname(dstpath);
1789
+ const dir = path6.dirname(dstpath);
1790
1790
  if (!await pathExists(dir)) {
1791
1791
  await mkdirs(dir);
1792
1792
  }
@@ -1806,7 +1806,7 @@ var require_symlink = __commonJS({
1806
1806
  const relative = symlinkPathsSync(srcpath, dstpath);
1807
1807
  srcpath = relative.toDst;
1808
1808
  type = symlinkTypeSync(relative.toCwd, type);
1809
- const dir = path4.dirname(dstpath);
1809
+ const dir = path6.dirname(dstpath);
1810
1810
  const exists = fs3.existsSync(dir);
1811
1811
  if (exists) return fs3.symlinkSync(srcpath, dstpath, type);
1812
1812
  mkdirsSync(dir);
@@ -1846,9 +1846,9 @@ var require_ensure = __commonJS({
1846
1846
  }
1847
1847
  });
1848
1848
 
1849
- // ../../node_modules/.pnpm/jsonfile@6.2.0/node_modules/jsonfile/utils.js
1849
+ // ../../node_modules/.pnpm/jsonfile@6.1.0/node_modules/jsonfile/utils.js
1850
1850
  var require_utils2 = __commonJS({
1851
- "../../node_modules/.pnpm/jsonfile@6.2.0/node_modules/jsonfile/utils.js"(exports, module) {
1851
+ "../../node_modules/.pnpm/jsonfile@6.1.0/node_modules/jsonfile/utils.js"(exports, module) {
1852
1852
  "use strict";
1853
1853
  function stringify16(obj, { EOL = "\n", finalEOL = true, replacer = null, spaces } = {}) {
1854
1854
  const EOF = finalEOL ? EOL : "";
@@ -1863,9 +1863,9 @@ var require_utils2 = __commonJS({
1863
1863
  }
1864
1864
  });
1865
1865
 
1866
- // ../../node_modules/.pnpm/jsonfile@6.2.0/node_modules/jsonfile/index.js
1866
+ // ../../node_modules/.pnpm/jsonfile@6.1.0/node_modules/jsonfile/index.js
1867
1867
  var require_jsonfile = __commonJS({
1868
- "../../node_modules/.pnpm/jsonfile@6.2.0/node_modules/jsonfile/index.js"(exports, module) {
1868
+ "../../node_modules/.pnpm/jsonfile@6.1.0/node_modules/jsonfile/index.js"(exports, module) {
1869
1869
  "use strict";
1870
1870
  var _fs;
1871
1871
  try {
@@ -1927,12 +1927,13 @@ var require_jsonfile = __commonJS({
1927
1927
  const str = stringify16(obj, options);
1928
1928
  return fs3.writeFileSync(file4, str, options);
1929
1929
  }
1930
- module.exports = {
1930
+ var jsonfile = {
1931
1931
  readFile,
1932
1932
  readFileSync,
1933
1933
  writeFile,
1934
1934
  writeFileSync
1935
1935
  };
1936
+ module.exports = jsonfile;
1936
1937
  }
1937
1938
  });
1938
1939
 
@@ -1957,18 +1958,18 @@ var require_output_file = __commonJS({
1957
1958
  "use strict";
1958
1959
  var u = require_universalify().fromPromise;
1959
1960
  var fs3 = require_fs();
1960
- var path4 = __require("path");
1961
+ var path6 = __require("path");
1961
1962
  var mkdir = require_mkdirs();
1962
1963
  var pathExists = require_path_exists().pathExists;
1963
1964
  async function outputFile(file4, data, encoding = "utf-8") {
1964
- const dir = path4.dirname(file4);
1965
+ const dir = path6.dirname(file4);
1965
1966
  if (!await pathExists(dir)) {
1966
1967
  await mkdir.mkdirs(dir);
1967
1968
  }
1968
1969
  return fs3.writeFile(file4, data, encoding);
1969
1970
  }
1970
1971
  function outputFileSync(file4, ...args) {
1971
- const dir = path4.dirname(file4);
1972
+ const dir = path6.dirname(file4);
1972
1973
  if (!fs3.existsSync(dir)) {
1973
1974
  mkdir.mkdirsSync(dir);
1974
1975
  }
@@ -2032,7 +2033,7 @@ var require_move = __commonJS({
2032
2033
  "../../node_modules/.pnpm/fs-extra@11.3.0/node_modules/fs-extra/lib/move/move.js"(exports, module) {
2033
2034
  "use strict";
2034
2035
  var fs3 = require_fs();
2035
- var path4 = __require("path");
2036
+ var path6 = __require("path");
2036
2037
  var { copy } = require_copy2();
2037
2038
  var { remove } = require_remove();
2038
2039
  var { mkdirp } = require_mkdirs();
@@ -2042,8 +2043,8 @@ var require_move = __commonJS({
2042
2043
  const overwrite = opts.overwrite || opts.clobber || false;
2043
2044
  const { srcStat, isChangingCase = false } = await stat.checkPaths(src, dest, "move", opts);
2044
2045
  await stat.checkParentPaths(src, srcStat, dest, "move");
2045
- const destParent = path4.dirname(dest);
2046
- const parsedParentPath = path4.parse(destParent);
2046
+ const destParent = path6.dirname(dest);
2047
+ const parsedParentPath = path6.parse(destParent);
2047
2048
  if (parsedParentPath.root !== destParent) {
2048
2049
  await mkdirp(destParent);
2049
2050
  }
@@ -2084,7 +2085,7 @@ var require_move_sync = __commonJS({
2084
2085
  "../../node_modules/.pnpm/fs-extra@11.3.0/node_modules/fs-extra/lib/move/move-sync.js"(exports, module) {
2085
2086
  "use strict";
2086
2087
  var fs3 = require_graceful_fs();
2087
- var path4 = __require("path");
2088
+ var path6 = __require("path");
2088
2089
  var copySync = require_copy2().copySync;
2089
2090
  var removeSync = require_remove().removeSync;
2090
2091
  var mkdirpSync = require_mkdirs().mkdirpSync;
@@ -2094,12 +2095,12 @@ var require_move_sync = __commonJS({
2094
2095
  const overwrite = opts.overwrite || opts.clobber || false;
2095
2096
  const { srcStat, isChangingCase = false } = stat.checkPathsSync(src, dest, "move", opts);
2096
2097
  stat.checkParentPathsSync(src, srcStat, dest, "move");
2097
- if (!isParentRoot(dest)) mkdirpSync(path4.dirname(dest));
2098
+ if (!isParentRoot(dest)) mkdirpSync(path6.dirname(dest));
2098
2099
  return doRename(src, dest, overwrite, isChangingCase);
2099
2100
  }
2100
2101
  function isParentRoot(dest) {
2101
- const parent = path4.dirname(dest);
2102
- const parsedPath = path4.parse(parent);
2102
+ const parent = path6.dirname(dest);
2103
+ const parsedPath = path6.parse(parent);
2103
2104
  return parsedPath.root === parent;
2104
2105
  }
2105
2106
  function doRename(src, dest, overwrite, isChangingCase) {
@@ -2213,8 +2214,15 @@ function getMappings(mappings, datamodel) {
2213
2214
  // src/generateClient.ts
2214
2215
  var import_fs_extra = __toESM(require_lib());
2215
2216
  import fs2 from "node:fs/promises";
2216
- import path3 from "node:path";
2217
- import { assertNever as assertNever3, pathToPosix as pathToPosix2, setClassName } from "@prisma/internals";
2217
+ import path5 from "node:path";
2218
+ import { overwriteFile } from "@prisma/fetch-engine";
2219
+ import {
2220
+ assertNever as assertNever3,
2221
+ ClientEngineType as ClientEngineType3,
2222
+ getClientEngineType as getClientEngineType4,
2223
+ pathToPosix as pathToPosix3,
2224
+ setClassName
2225
+ } from "@prisma/internals";
2218
2226
  import { glob } from "fast-glob";
2219
2227
 
2220
2228
  // ../../node_modules/.pnpm/kleur@4.1.5/node_modules/kleur/colors.mjs
@@ -2373,7 +2381,7 @@ var Enum = class {
2373
2381
  toTS() {
2374
2382
  const { type } = this;
2375
2383
  const enumVariants = `{
2376
- ${indent(type.data.map((v) => `${v.key}: ${this.getValue(v.value)}`).join(",\n"), TAB_SIZE)}
2384
+ ${indent(type.values.map((v) => `${v}: ${this.getValue(v)}`).join(",\n"), TAB_SIZE)}
2377
2385
  } as const`;
2378
2386
  const enumBody = this.isStrictEnum() ? `runtime.makeStrictEnum(${enumVariants})` : enumVariants;
2379
2387
  return `export const ${type.name} = ${enumBody}
@@ -2886,6 +2894,9 @@ var GenericArgsInfo = class {
2886
2894
  }
2887
2895
  };
2888
2896
 
2897
+ // src/TSClient/file-generators/BrowserFile.ts
2898
+ import { getClientEngineType } from "@prisma/internals";
2899
+
2889
2900
  // src/TSClient/ModelExports.ts
2890
2901
  import * as ts3 from "@prisma/ts-builders";
2891
2902
  function modelExports(context) {
@@ -2911,7 +2922,9 @@ var jsDocHeader = `/*
2911
2922
  * \u{1F7E2} You can import this file directly.
2912
2923
  */
2913
2924
  `;
2914
- function createBrowserFile(context, _options) {
2925
+ function createBrowserFile(context, options) {
2926
+ const clientEngineType = getClientEngineType(options.generator);
2927
+ options.generator.config.engineType = clientEngineType;
2915
2928
  return `${jsDocHeader}
2916
2929
  import * as Prisma from '${context.importFileName("./internal/prismaNamespaceBrowser")}'
2917
2930
  export { Prisma }
@@ -2922,17 +2935,50 @@ ${modelExports(context).join("\n")}
2922
2935
  }
2923
2936
 
2924
2937
  // src/TSClient/file-generators/ClassFile.ts
2938
+ import crypto from "node:crypto";
2925
2939
  import path2 from "node:path";
2926
- import { pathToPosix } from "@prisma/internals";
2940
+ import { getClientEngineType as getClientEngineType2, pathToPosix } from "@prisma/internals";
2927
2941
  import * as ts6 from "@prisma/ts-builders";
2928
2942
  import ciInfo from "ci-info";
2929
2943
 
2944
+ // src/utils/buildInjectableEdgeEnv.ts
2945
+ function buildInjectableEdgeEnv(edge, datasources) {
2946
+ if (edge === true) {
2947
+ return declareInjectableEdgeEnv(datasources);
2948
+ }
2949
+ return ``;
2950
+ }
2951
+ function declareInjectableEdgeEnv(datasources) {
2952
+ const injectableEdgeEnv = { parsed: {} };
2953
+ const envVarNames = getSelectedEnvVarNames(datasources);
2954
+ for (const envVarName of envVarNames) {
2955
+ injectableEdgeEnv.parsed[envVarName] = getRuntimeEdgeEnvVar(envVarName);
2956
+ }
2957
+ const injectableEdgeEnvJson = JSON.stringify(injectableEdgeEnv, null, 2);
2958
+ const injectableEdgeEnvCode = injectableEdgeEnvJson.replace(/"/g, "");
2959
+ return `
2960
+ config.injectableEdgeEnv = () => (${injectableEdgeEnvCode})`;
2961
+ }
2962
+ function getSelectedEnvVarNames(datasources) {
2963
+ return datasources.reduce((acc, datasource) => {
2964
+ if (datasource.url.fromEnvVar) {
2965
+ return [...acc, datasource.url.fromEnvVar];
2966
+ }
2967
+ return acc;
2968
+ }, []);
2969
+ }
2970
+ function getRuntimeEdgeEnvVar(envVarName) {
2971
+ const cfwEnv = `typeof globalThis !== 'undefined' && globalThis['${envVarName}']`;
2972
+ const nodeOrVercelEnv = `typeof process !== 'undefined' && process.env && process.env.${envVarName}`;
2973
+ return `${cfwEnv} || ${nodeOrVercelEnv} || undefined`;
2974
+ }
2975
+
2930
2976
  // src/utils/buildDebugInitialization.ts
2931
2977
  function buildDebugInitialization(edge) {
2932
2978
  if (!edge) {
2933
2979
  return "";
2934
2980
  }
2935
- const debugVar = `typeof globalThis !== 'undefined' && globalThis['DEBUG'] || (typeof process !== 'undefined' && process.env && process.env.DEBUG) || undefined`;
2981
+ const debugVar = getRuntimeEdgeEnvVar("DEBUG");
2936
2982
  return `if (${debugVar}) {
2937
2983
  runtime.Debug.enable(${debugVar})
2938
2984
  }
@@ -3409,7 +3455,7 @@ function escapeJson(str) {
3409
3455
  function buildRuntimeDataModel(datamodel, runtimeName) {
3410
3456
  const runtimeDataModel = dmmfToRuntimeDataModel(datamodel);
3411
3457
  let prunedDataModel;
3412
- if (runtimeName === "wasm-compiler-edge" || runtimeName === "client") {
3458
+ if (runtimeName === "wasm-engine-edge" || runtimeName === "wasm-compiler-edge" || runtimeName === "client") {
3413
3459
  prunedDataModel = pruneRuntimeDataModel(runtimeDataModel);
3414
3460
  } else {
3415
3461
  prunedDataModel = runtimeDataModel;
@@ -3441,7 +3487,7 @@ import { Debug } from "@prisma/debug";
3441
3487
  import { match } from "ts-pattern";
3442
3488
  var debug = Debug("prisma:client-generator-ts:wasm");
3443
3489
  function usesEdgeWasmRuntime(component, runtimeName) {
3444
- return runtimeName === "wasm-compiler-edge" && component === "compiler";
3490
+ return runtimeName === "wasm-engine-edge" && component === "engine" || runtimeName === "wasm-compiler-edge" && component === "compiler";
3445
3491
  }
3446
3492
  function buildGetWasmModule({
3447
3493
  component,
@@ -3537,6 +3583,9 @@ import indent3 from "indent-string";
3537
3583
 
3538
3584
  // src/utils/runtimeImport.ts
3539
3585
  import * as ts4 from "@prisma/ts-builders";
3586
+ function runtimeImport(name) {
3587
+ return name;
3588
+ }
3540
3589
  function runtimeImportedType(name) {
3541
3590
  return ts4.namedType(`runtime.${name}`);
3542
3591
  }
@@ -3680,6 +3729,24 @@ function queryRawTypedDefinition(context) {
3680
3729
  ).setReturnType(prismaPromise(ts5.array(param.toArgument())));
3681
3730
  return ts5.stringify(method3, { indentLevel: 1, newLine: "leading" });
3682
3731
  }
3732
+ function metricDefinition(context) {
3733
+ if (!context.isPreviewFeatureOn("metrics")) {
3734
+ return "";
3735
+ }
3736
+ const property13 = ts5.property("$metrics", ts5.namedType(`runtime.${runtimeImport("MetricsClient")}`)).setDocComment(
3737
+ ts5.docComment`
3738
+ Gives access to the client metrics in json or prometheus format.
3739
+
3740
+ @example
3741
+ \`\`\`
3742
+ const metrics = await prisma.$metrics.json()
3743
+ // or
3744
+ const metrics = await prisma.$metrics.prometheus()
3745
+ \`\`\`
3746
+ `
3747
+ ).readonly();
3748
+ return ts5.stringify(property13, { indentLevel: 1, newLine: "leading" });
3749
+ }
3683
3750
  function runCommandRawDefinition(context) {
3684
3751
  if (!context.dmmf.mappings.otherOperations.write.includes("runCommandRaw")) {
3685
3752
  return "";
@@ -3699,6 +3766,13 @@ function runCommandRawDefinition(context) {
3699
3766
  `);
3700
3767
  return ts5.stringify(method3, { indentLevel: 1, newLine: "leading" });
3701
3768
  }
3769
+ function eventRegistrationMethodDeclaration(runtimeName) {
3770
+ if (runtimeName === "binary") {
3771
+ return `$on<V extends (LogOpts | 'beforeExit')>(eventType: V, callback: (event: V extends 'query' ? Prisma.QueryEvent : V extends 'beforeExit' ? () => runtime.Types.Utils.JsPromise<void> : Prisma.LogEvent) => void): PrismaClient;`;
3772
+ } else {
3773
+ return `$on<V extends LogOpts>(eventType: V, callback: (event: V extends 'query' ? Prisma.QueryEvent : Prisma.LogEvent) => void): PrismaClient;`;
3774
+ }
3775
+ }
3702
3776
  function getPrismaClientClassDocComment({ dmmf }) {
3703
3777
  let example;
3704
3778
  if (dmmf.mappings.modelOperations.length) {
@@ -3749,12 +3823,12 @@ export interface PrismaClientConstructor {
3749
3823
  ${this.jsDoc}
3750
3824
  export interface PrismaClient<
3751
3825
  in LogOpts extends Prisma.LogLevel = never,
3752
- in out OmitOpts extends Prisma.PrismaClientOptions['omit'] = undefined,
3826
+ in out OmitOpts extends Prisma.PrismaClientOptions['omit'] = Prisma.PrismaClientOptions['omit'],
3753
3827
  in out ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs
3754
3828
  > {
3755
3829
  [K: symbol]: { types: Prisma.TypeMap<ExtArgs>['other'] }
3756
3830
 
3757
- $on<V extends LogOpts>(eventType: V, callback: (event: V extends 'query' ? Prisma.QueryEvent : Prisma.LogEvent) => void): PrismaClient;
3831
+ ${eventRegistrationMethodDeclaration(this.runtimeName)}
3758
3832
 
3759
3833
  /**
3760
3834
  * Connect with the database
@@ -3773,6 +3847,8 @@ ${[
3773
3847
  batchingTransactionDefinition(this.context),
3774
3848
  interactiveTransactionDefinition(this.context),
3775
3849
  runCommandRawDefinition(this.context),
3850
+ metricDefinition(this.context),
3851
+ this.applyPendingMigrationsDefinition(),
3776
3852
  extendsPropertyDefinition()
3777
3853
  ].filter((d) => d !== null).join("\n").trim()}
3778
3854
 
@@ -3797,6 +3873,15 @@ get ${methodName}(): Prisma.${m.model}Delegate<${generics.join(", ")}>;`;
3797
3873
  )}
3798
3874
  }`;
3799
3875
  }
3876
+ applyPendingMigrationsDefinition() {
3877
+ if (this.runtimeName !== "react-native") {
3878
+ return null;
3879
+ }
3880
+ const method3 = ts5.method("$applyPendingMigrations").setReturnType(promise(ts5.voidType)).setDocComment(
3881
+ ts5.docComment`Tries to apply pending migrations one by one. If a migration fails to apply, the function will stop and throw an error. You are responsible for informing the user and possibly blocking the app as we cannot guarantee the state of the database.`
3882
+ );
3883
+ return ts5.stringify(method3, { indentLevel: 1, newLine: "leading" });
3884
+ }
3800
3885
  };
3801
3886
 
3802
3887
  // src/TSClient/file-generators/ClassFile.ts
@@ -3837,10 +3922,14 @@ function clientConfig(context, options) {
3837
3922
  runtimeBase,
3838
3923
  runtimeName,
3839
3924
  datasources,
3925
+ copyEngine = true,
3840
3926
  target,
3841
3927
  activeProvider,
3842
3928
  moduleFormat
3843
3929
  } = options;
3930
+ const clientEngineType = getClientEngineType2(generator);
3931
+ generator.config.engineType = clientEngineType;
3932
+ const inlineSchemaHash = crypto.createHash("sha256").update(Buffer.from(inlineSchema, "utf8").toString("base64")).digest("hex");
3844
3933
  const datasourceFilePath = datasources[0].sourceFilePath;
3845
3934
  const config = {
3846
3935
  generator,
@@ -3853,6 +3942,8 @@ function clientConfig(context, options) {
3853
3942
  ciName: ciInfo.name ?? void 0,
3854
3943
  inlineDatasources: buildInlineDatasources(datasources),
3855
3944
  inlineSchema,
3945
+ inlineSchemaHash,
3946
+ copyEngine,
3856
3947
  runtimeDataModel: { models: {}, enums: {}, types: {} },
3857
3948
  dirname: ""
3858
3949
  };
@@ -3861,12 +3952,60 @@ const config: runtime.GetPrismaClientConfig = ${JSON.stringify(config, null, 2)}
3861
3952
  ${buildRuntimeDataModel(context.dmmf.datamodel, runtimeName)}
3862
3953
  ${buildGetWasmModule({ component: "engine", runtimeBase, runtimeName, target, activeProvider, moduleFormat })}
3863
3954
  ${buildGetWasmModule({ component: "compiler", runtimeBase, runtimeName, target, activeProvider, moduleFormat })}
3955
+ ${buildInjectableEdgeEnv(edge, datasources)}
3864
3956
  ${buildDebugInitialization(edge)}
3865
3957
  `;
3866
3958
  }
3867
3959
 
3868
3960
  // src/TSClient/file-generators/ClientFile.ts
3961
+ import path4 from "node:path";
3962
+ import { ClientEngineType as ClientEngineType2, getClientEngineType as getClientEngineType3 } from "@prisma/internals";
3869
3963
  import * as ts7 from "@prisma/ts-builders";
3964
+
3965
+ // src/utils/buildNFTAnnotations.ts
3966
+ import { getNodeAPIName } from "@prisma/get-platform";
3967
+ import { ClientEngineType, parseAWSNodejsRuntimeEnvVarVersion, pathToPosix as pathToPosix2 } from "@prisma/internals";
3968
+ import path3 from "path";
3969
+ function buildNFTAnnotations(noEngine, engineType, binaryTargets, relativeOutdir) {
3970
+ if (noEngine === true) return "";
3971
+ if (binaryTargets === void 0) {
3972
+ return "";
3973
+ }
3974
+ if (process.env.NETLIFY) {
3975
+ const isNodeMajor20OrUp = parseInt(process.versions.node.split(".")[0]) >= 20;
3976
+ const awsRuntimeVersion = parseAWSNodejsRuntimeEnvVarVersion();
3977
+ const isRuntimeEnvVar20OrUp = awsRuntimeVersion && awsRuntimeVersion >= 20;
3978
+ const isRuntimeEnvVar18OrDown = awsRuntimeVersion && awsRuntimeVersion <= 18;
3979
+ if ((isNodeMajor20OrUp || isRuntimeEnvVar20OrUp) && !isRuntimeEnvVar18OrDown) {
3980
+ binaryTargets = ["rhel-openssl-3.0.x"];
3981
+ } else {
3982
+ binaryTargets = ["rhel-openssl-1.0.x"];
3983
+ }
3984
+ }
3985
+ const engineAnnotations = binaryTargets.map((binaryTarget) => {
3986
+ const engineFilename = getQueryEngineFilename(engineType, binaryTarget);
3987
+ return engineFilename ? buildNFTAnnotation(engineFilename, relativeOutdir) : "";
3988
+ }).join("\n");
3989
+ return `${engineAnnotations}`;
3990
+ }
3991
+ function getQueryEngineFilename(engineType, binaryTarget) {
3992
+ if (engineType === ClientEngineType.Library) {
3993
+ return getNodeAPIName(binaryTarget, "fs");
3994
+ }
3995
+ if (engineType === ClientEngineType.Binary) {
3996
+ return `query-engine-${binaryTarget}`;
3997
+ }
3998
+ return void 0;
3999
+ }
4000
+ function buildNFTAnnotation(fileName, relativeOutdir) {
4001
+ const relativeFilePath = path3.join(relativeOutdir, fileName);
4002
+ return `
4003
+ // file annotations for bundling tools to include these files
4004
+ path.join(__dirname, ${JSON.stringify(pathToPosix2(fileName))})
4005
+ path.join(process.cwd(), ${JSON.stringify(pathToPosix2(relativeFilePath))})`;
4006
+ }
4007
+
4008
+ // src/TSClient/file-generators/ClientFile.ts
3870
4009
  var jsDocHeader3 = `/*
3871
4010
  * This file should be your main import to use Prisma. Through it you get access to all the models, enums, and input types.
3872
4011
  * If you're looking for something you can import in the client-side of your application, please refer to the \`browser.ts\` file instead.
@@ -3875,6 +4014,8 @@ var jsDocHeader3 = `/*
3875
4014
  */
3876
4015
  `;
3877
4016
  function createClientFile(context, options) {
4017
+ const clientEngineType = getClientEngineType3(options.generator);
4018
+ options.generator.config.engineType = clientEngineType;
3878
4019
  const imports = [
3879
4020
  ts7.moduleImport(context.runtimeImport).asNamespace("runtime"),
3880
4021
  ts7.moduleImport(context.importFileName("./enums")).asNamespace("$Enums"),
@@ -3900,6 +4041,8 @@ function createClientFile(context, options) {
3900
4041
  )
3901
4042
  )
3902
4043
  ].map((e) => ts7.stringify(e));
4044
+ const binaryTargets = clientEngineType === ClientEngineType2.Library ? Object.keys(options.binaryPaths.libqueryEngine ?? {}) : Object.keys(options.binaryPaths.queryEngine ?? {});
4045
+ const relativeOutdir = path4.relative(process.cwd(), options.outputDir);
3903
4046
  return `${jsDocHeader3}
3904
4047
  ${buildPreamble(options.edge, options.moduleFormat)}
3905
4048
  ${imports.join("\n")}
@@ -3907,6 +4050,8 @@ ${imports.join("\n")}
3907
4050
  ${exports.join("\n")}
3908
4051
  export { Prisma }
3909
4052
 
4053
+ ${buildNFTAnnotations(options.edge || !options.copyEngine, clientEngineType, binaryTargets, relativeOutdir)}
4054
+
3910
4055
  ${modelExports(context).join("\n")}
3911
4056
  `;
3912
4057
  }
@@ -5007,36 +5152,33 @@ function createModelsFile(context, modelsNames) {
5007
5152
  }
5008
5153
 
5009
5154
  // src/TSClient/file-generators/PrismaNamespaceBrowserFile.ts
5010
- import { datamodelSchemaEnumToSchemaEnum } from "@prisma/dmmf";
5011
5155
  import * as ts16 from "@prisma/ts-builders";
5012
5156
 
5013
5157
  // src/TSClient/NullTypes.ts
5014
5158
  var nullTypes = `
5015
5159
  export const NullTypes = {
5016
- DbNull: runtime.NullTypes.DbNull as (new (secret: never) => typeof runtime.DbNull),
5017
- JsonNull: runtime.NullTypes.JsonNull as (new (secret: never) => typeof runtime.JsonNull),
5018
- AnyNull: runtime.NullTypes.AnyNull as (new (secret: never) => typeof runtime.AnyNull),
5160
+ DbNull: runtime.objectEnumValues.classes.DbNull as (new (secret: never) => typeof runtime.objectEnumValues.instances.DbNull),
5161
+ JsonNull: runtime.objectEnumValues.classes.JsonNull as (new (secret: never) => typeof runtime.objectEnumValues.instances.JsonNull),
5162
+ AnyNull: runtime.objectEnumValues.classes.AnyNull as (new (secret: never) => typeof runtime.objectEnumValues.instances.AnyNull),
5019
5163
  }
5020
5164
  /**
5021
5165
  * Helper for filtering JSON entries that have \`null\` on the database (empty on the db)
5022
5166
  *
5023
5167
  * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
5024
5168
  */
5025
- export const DbNull = runtime.DbNull
5026
-
5169
+ export const DbNull = runtime.objectEnumValues.instances.DbNull
5027
5170
  /**
5028
5171
  * Helper for filtering JSON entries that have JSON \`null\` values (not empty on the db)
5029
5172
  *
5030
5173
  * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
5031
5174
  */
5032
- export const JsonNull = runtime.JsonNull
5033
-
5175
+ export const JsonNull = runtime.objectEnumValues.instances.JsonNull
5034
5176
  /**
5035
5177
  * Helper for filtering JSON entries that are \`Prisma.DbNull\` or \`Prisma.JsonNull\`
5036
5178
  *
5037
5179
  * @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
5038
5180
  */
5039
- export const AnyNull = runtime.AnyNull
5181
+ export const AnyNull = runtime.objectEnumValues.instances.AnyNull
5040
5182
  `;
5041
5183
 
5042
5184
  // src/TSClient/file-generators/PrismaNamespaceBrowserFile.ts
@@ -5053,9 +5195,7 @@ var jsDocHeader7 = `/*
5053
5195
  */
5054
5196
  `;
5055
5197
  function createPrismaNamespaceBrowserFile(context) {
5056
- const prismaEnums = context.dmmf.schema.enumTypes.prisma?.map(
5057
- (datamodelEnum) => new Enum(datamodelSchemaEnumToSchemaEnum(datamodelEnum), false).toTS()
5058
- );
5198
+ const prismaEnums = context.dmmf.schema.enumTypes.prisma?.map((type) => new Enum(type, true).toTS());
5059
5199
  return `${jsDocHeader7}
5060
5200
  ${ts16.stringify(ts16.moduleImport(`${context.runtimeBase}/index-browser`).asNamespace("runtime"))}
5061
5201
 
@@ -5069,10 +5209,7 @@ ${nullTypes}
5069
5209
  ${new Enum(
5070
5210
  {
5071
5211
  name: "ModelName",
5072
- data: context.dmmf.mappings.modelOperations.map((m) => ({
5073
- key: m.model,
5074
- value: m.model
5075
- }))
5212
+ values: context.dmmf.mappings.modelOperations.map((m) => m.model)
5076
5213
  },
5077
5214
  true
5078
5215
  ).toTS()}
@@ -5085,7 +5222,6 @@ ${prismaEnums?.join("\n\n")}
5085
5222
  }
5086
5223
 
5087
5224
  // src/TSClient/file-generators/PrismaNamespaceFile.ts
5088
- import { datamodelSchemaEnumToSchemaEnum as datamodelSchemaEnumToSchemaEnum2 } from "@prisma/dmmf";
5089
5225
  import * as ts19 from "@prisma/ts-builders";
5090
5226
 
5091
5227
  // src/TSClient/common.ts
@@ -5133,6 +5269,14 @@ export type Decimal = runtime.Decimal
5133
5269
 
5134
5270
  export type DecimalJsLike = runtime.DecimalJsLike
5135
5271
 
5272
+ /**
5273
+ * Metrics
5274
+ */
5275
+ export type Metrics = runtime.Metrics
5276
+ export type Metric<T> = runtime.Metric<T>
5277
+ export type MetricHistogram = runtime.MetricHistogram
5278
+ export type MetricHistogramBucket = runtime.MetricHistogramBucket
5279
+
5136
5280
  /**
5137
5281
  * Extensions
5138
5282
  */
@@ -5617,9 +5761,7 @@ function createPrismaNamespaceFile(context, options) {
5617
5761
  ts19.moduleImport(context.importFileName(`../models`)).asNamespace("Prisma").typeOnly(),
5618
5762
  ts19.moduleImport(context.importFileName(`./class`)).named(ts19.namedImport("PrismaClient").typeOnly())
5619
5763
  ].map((i) => ts19.stringify(i));
5620
- const prismaEnums = context.dmmf.schema.enumTypes.prisma?.map(
5621
- (type) => new Enum(datamodelSchemaEnumToSchemaEnum2(type), true).toTS()
5622
- );
5764
+ const prismaEnums = context.dmmf.schema.enumTypes.prisma?.map((type) => new Enum(type, true).toTS());
5623
5765
  const fieldRefs = context.dmmf.schema.fieldRefTypes.prisma?.map((type) => new FieldRefInput(type).toTS()) ?? [];
5624
5766
  return `${jsDocHeader8}
5625
5767
  ${imports.join("\n")}
@@ -5630,10 +5772,7 @@ ${commonCodeTS(options)}
5630
5772
  ${new Enum(
5631
5773
  {
5632
5774
  name: "ModelName",
5633
- data: context.dmmf.mappings.modelOperations.map((m) => ({
5634
- key: m.model,
5635
- value: m.model
5636
- }))
5775
+ values: context.dmmf.mappings.modelOperations.map((m) => m.model)
5637
5776
  },
5638
5777
  true
5639
5778
  ).toTS()}
@@ -5743,6 +5882,8 @@ function clientExtensionsDefinitions() {
5743
5882
  function buildClientOptions(context, options) {
5744
5883
  const clientOptions = ts19.interfaceDeclaration("PrismaClientOptions").add(
5745
5884
  ts19.property("datasources", ts19.namedType("Datasources")).optional().setDocComment(ts19.docComment("Overwrites the datasource url from your schema.prisma file"))
5885
+ ).add(
5886
+ ts19.property("datasourceUrl", ts19.stringType).optional().setDocComment(ts19.docComment("Overwrites the datasource url from your schema.prisma file"))
5746
5887
  ).add(
5747
5888
  ts19.property("errorFormat", ts19.namedType("ErrorFormat")).optional().setDocComment(ts19.docComment('@default "colorless"'))
5748
5889
  ).add(
@@ -5782,20 +5923,13 @@ function buildClientOptions(context, options) {
5782
5923
  timeout ?= 5000
5783
5924
  `)
5784
5925
  );
5785
- if (["library", "client", "wasm-compiler-edge"].includes(options.runtimeName)) {
5926
+ if (["library", "client", "wasm-compiler-edge", "wasm-engine-edge"].includes(options.runtimeName)) {
5786
5927
  clientOptions.add(
5787
- ts19.property("adapter", ts19.namedType("runtime.SqlDriverAdapterFactory")).optional().setDocComment(
5928
+ ts19.property("adapter", ts19.unionType([ts19.namedType("runtime.SqlDriverAdapterFactory"), ts19.namedType("null")])).optional().setDocComment(
5788
5929
  ts19.docComment("Instance of a Driver Adapter, e.g., like one provided by `@prisma/adapter-planetscale`")
5789
5930
  )
5790
5931
  );
5791
5932
  }
5792
- clientOptions.add(
5793
- ts19.property("accelerateUrl", ts19.stringType).optional().setDocComment(
5794
- ts19.docComment(
5795
- "Prisma Accelerate URL allowing the client to connect through Accelerate instead of a direct database."
5796
- )
5797
- )
5798
- );
5799
5933
  clientOptions.add(
5800
5934
  ts19.property("omit", ts19.namedType("GlobalOmitConfig")).optional().setDocComment(ts19.docComment`
5801
5935
  Global configuration for omitting model fields by default.
@@ -5828,7 +5962,7 @@ var GenerateContext = class {
5828
5962
  dmmf,
5829
5963
  genericArgsInfo,
5830
5964
  runtimeBase,
5831
- runtimeImport,
5965
+ runtimeImport: runtimeImport2,
5832
5966
  outputFileName,
5833
5967
  importFileName,
5834
5968
  generator
@@ -5836,7 +5970,7 @@ var GenerateContext = class {
5836
5970
  this.dmmf = dmmf;
5837
5971
  this.genericArgsInfo = genericArgsInfo;
5838
5972
  this.runtimeBase = runtimeBase;
5839
- this.runtimeImport = runtimeImport;
5973
+ this.runtimeImport = runtimeImport2;
5840
5974
  this.outputFileName = outputFileName;
5841
5975
  this.importFileName = importFileName;
5842
5976
  this.generator = generator;
@@ -6157,6 +6291,8 @@ function buildClient({
6157
6291
  clientVersion,
6158
6292
  activeProvider,
6159
6293
  postinstall,
6294
+ copyEngine,
6295
+ envPaths,
6160
6296
  typedSql,
6161
6297
  target,
6162
6298
  generatedFileExtension,
@@ -6164,11 +6300,13 @@ function buildClient({
6164
6300
  moduleFormat,
6165
6301
  tsNoCheckPreamble: tsNoCheckPreamble2
6166
6302
  }) {
6167
- const runtimeName = getRuntimeNameForTarget(target);
6303
+ const clientEngineType = getClientEngineType4(generator);
6304
+ const runtimeName = getRuntimeNameForTarget(target, clientEngineType);
6168
6305
  const outputName = generatedFileNameMapper(generatedFileExtension);
6169
6306
  const importName = importFileNameMapper(importFileExtension);
6170
6307
  const clientOptions = {
6171
6308
  dmmf: getPrismaClientDMMF(dmmf),
6309
+ envPaths: envPaths ?? { rootEnvPath: null, schemaEnvPath: void 0 },
6172
6310
  datasources,
6173
6311
  generator,
6174
6312
  binaryPaths,
@@ -6179,8 +6317,9 @@ function buildClient({
6179
6317
  engineVersion,
6180
6318
  activeProvider,
6181
6319
  postinstall,
6320
+ copyEngine,
6182
6321
  datamodel,
6183
- edge: ["wasm-compiler-edge"].includes(runtimeName),
6322
+ edge: ["edge", "wasm-engine-edge", "wasm-compiler-edge", "react-native"].includes(runtimeName),
6184
6323
  runtimeName,
6185
6324
  target,
6186
6325
  generatedFileExtension,
@@ -6188,6 +6327,9 @@ function buildClient({
6188
6327
  moduleFormat,
6189
6328
  tsNoCheckPreamble: tsNoCheckPreamble2
6190
6329
  };
6330
+ if (runtimeName === "react-native" && !generator.previewFeatures.includes("reactNative")) {
6331
+ throw new Error(`Using the "react-native" runtime requires the "reactNative" preview feature to be enabled.`);
6332
+ }
6191
6333
  const client = new TSClient(clientOptions);
6192
6334
  let fileMap = client.generateClientFiles();
6193
6335
  if (typedSql && typedSql.length > 0) {
@@ -6242,6 +6384,8 @@ async function generateClient(options) {
6242
6384
  engineVersion,
6243
6385
  activeProvider,
6244
6386
  postinstall,
6387
+ envPaths,
6388
+ copyEngine = true,
6245
6389
  typedSql,
6246
6390
  target,
6247
6391
  generatedFileExtension,
@@ -6249,6 +6393,7 @@ async function generateClient(options) {
6249
6393
  moduleFormat,
6250
6394
  tsNoCheckPreamble: tsNoCheckPreamble2
6251
6395
  } = options;
6396
+ const clientEngineType = getClientEngineType4(generator);
6252
6397
  const { runtimeBase, outputDir } = await getGenerationDirs(options);
6253
6398
  const { prismaClientDmmf, fileMap } = buildClient({
6254
6399
  datamodel,
@@ -6263,6 +6408,8 @@ async function generateClient(options) {
6263
6408
  engineVersion,
6264
6409
  activeProvider,
6265
6410
  postinstall,
6411
+ copyEngine,
6412
+ envPaths,
6266
6413
  typedSql,
6267
6414
  target,
6268
6415
  generatedFileExtension,
@@ -6286,11 +6433,27 @@ To learn more about how to rename models, check out https://pris.ly/d/naming-mod
6286
6433
  await deleteOutputDir(outputDir);
6287
6434
  await (0, import_fs_extra.ensureDir)(outputDir);
6288
6435
  await writeFileMap(outputDir, fileMap);
6436
+ const enginePath = clientEngineType === ClientEngineType3.Library ? binaryPaths.libqueryEngine : binaryPaths.queryEngine;
6437
+ if (copyEngine && enginePath) {
6438
+ if (process.env.NETLIFY) {
6439
+ await (0, import_fs_extra.ensureDir)("/tmp/prisma-engines");
6440
+ }
6441
+ for (const [binaryTarget, filePath] of Object.entries(enginePath)) {
6442
+ const fileName = path5.basename(filePath);
6443
+ let target2;
6444
+ if (process.env.NETLIFY && !["rhel-openssl-1.0.x", "rhel-openssl-3.0.x"].includes(binaryTarget)) {
6445
+ target2 = path5.join("/tmp/prisma-engines", fileName);
6446
+ } else {
6447
+ target2 = path5.join(outputDir, fileName);
6448
+ }
6449
+ await overwriteFile(filePath, target2);
6450
+ }
6451
+ }
6289
6452
  }
6290
6453
  function writeFileMap(outputDir, fileMap) {
6291
6454
  return Promise.all(
6292
6455
  Object.entries(fileMap).map(async ([fileName, content]) => {
6293
- const absolutePath = path3.join(outputDir, fileName);
6456
+ const absolutePath = path5.join(outputDir, fileName);
6294
6457
  await fs2.rm(absolutePath, { recursive: true, force: true });
6295
6458
  if (typeof content === "string" || Buffer.isBuffer(content)) {
6296
6459
  await fs2.writeFile(absolutePath, content);
@@ -6379,28 +6542,42 @@ function validateDmmfAgainstDenylists(prismaClientDmmf) {
6379
6542
  return errorArray.length > 0 ? errorArray : null;
6380
6543
  }
6381
6544
  async function getGenerationDirs({ runtimeBase, outputDir }) {
6382
- const normalizedOutputDir = path3.normalize(outputDir);
6383
- const normalizedRuntimeBase = pathToPosix2(runtimeBase);
6384
- const userPackageRoot = await packageUp({ cwd: path3.dirname(normalizedOutputDir) });
6385
- const userProjectRoot = userPackageRoot ? path3.dirname(userPackageRoot) : process.cwd();
6545
+ const normalizedOutputDir = path5.normalize(outputDir);
6546
+ const normalizedRuntimeBase = pathToPosix3(runtimeBase);
6547
+ const userPackageRoot = await packageUp({ cwd: path5.dirname(normalizedOutputDir) });
6548
+ const userProjectRoot = userPackageRoot ? path5.dirname(userPackageRoot) : process.cwd();
6386
6549
  return {
6387
6550
  runtimeBase: normalizedRuntimeBase,
6388
6551
  outputDir: normalizedOutputDir,
6389
6552
  projectRoot: userProjectRoot
6390
6553
  };
6391
6554
  }
6392
- function getRuntimeNameForTarget(target) {
6555
+ function getRuntimeNameForTarget(target, engineType) {
6393
6556
  switch (target) {
6394
6557
  case "nodejs":
6395
6558
  case "deno":
6396
- return "client";
6559
+ return getNodeRuntimeName(engineType);
6397
6560
  case "workerd":
6398
6561
  case "vercel-edge":
6399
- return "wasm-compiler-edge";
6562
+ return engineType === ClientEngineType3.Client ? "wasm-compiler-edge" : "wasm-engine-edge";
6563
+ case "react-native":
6564
+ return "react-native";
6400
6565
  default:
6401
6566
  assertNever3(target, "Unknown runtime target");
6402
6567
  }
6403
6568
  }
6569
+ function getNodeRuntimeName(engineType) {
6570
+ if (engineType === ClientEngineType3.Binary) {
6571
+ return "binary";
6572
+ }
6573
+ if (engineType === ClientEngineType3.Library) {
6574
+ return "library";
6575
+ }
6576
+ if (engineType === ClientEngineType3.Client) {
6577
+ return "client";
6578
+ }
6579
+ assertNever3(engineType, "Unknown engine type");
6580
+ }
6404
6581
  async function deleteOutputDir(outputDir) {
6405
6582
  try {
6406
6583
  const files = await fs2.readdir(outputDir);
@@ -6435,12 +6612,14 @@ async function deleteOutputDir(outputDir) {
6435
6612
  }
6436
6613
 
6437
6614
  // src/generator.ts
6615
+ import { Debug as Debug2 } from "@prisma/debug";
6438
6616
  import { enginesVersion } from "@prisma/engines-version";
6439
- import { parseEnvValue } from "@prisma/internals";
6617
+ import { ClientEngineType as ClientEngineType4, getClientEngineType as getClientEngineType5, parseEnvValue } from "@prisma/internals";
6440
6618
  import { getTsconfig } from "get-tsconfig";
6619
+ import { match as match2 } from "ts-pattern";
6441
6620
 
6442
6621
  // package.json
6443
- var version = "6.19.0-integration-next.21";
6622
+ var version = "6.19.0";
6444
6623
 
6445
6624
  // src/module-format.ts
6446
6625
  function parseModuleFormat(format) {
@@ -6483,7 +6662,16 @@ function fromTsConfigModule(module) {
6483
6662
  }
6484
6663
 
6485
6664
  // src/runtime-targets.ts
6486
- var supportedPublicRuntimes = ["nodejs", "deno", "bun", "workerd", "cloudflare", "vercel-edge", "edge-light"];
6665
+ var supportedPublicRuntimes = [
6666
+ "nodejs",
6667
+ "deno",
6668
+ "bun",
6669
+ "workerd",
6670
+ "cloudflare",
6671
+ "vercel-edge",
6672
+ "edge-light",
6673
+ "react-native"
6674
+ ];
6487
6675
  function parseRuntimeTarget(target) {
6488
6676
  switch (target.toLowerCase()) {
6489
6677
  case "workerd":
@@ -6497,6 +6685,8 @@ function parseRuntimeTarget(target) {
6497
6685
  return "nodejs";
6498
6686
  case "deno":
6499
6687
  return "deno";
6688
+ case "react-native":
6689
+ return "react-native";
6500
6690
  default:
6501
6691
  throw new Error(
6502
6692
  `Unknown target runtime: "${target}". The available options are: ${supportedPublicRuntimes.map((runtime) => `"${runtime}"`).join(", ")}`
@@ -6511,6 +6701,7 @@ function parseRuntimeTargetFromUnknown(target) {
6511
6701
  }
6512
6702
 
6513
6703
  // src/generator.ts
6704
+ var debug2 = Debug2("prisma:client:generator");
6514
6705
  var missingOutputErrorMessage = `An output path is required for the \`prisma-client\` generator. Please provide an output path in your schema file:
6515
6706
 
6516
6707
  ${dim(`generator client {
@@ -6529,11 +6720,13 @@ function getOutputPath(config) {
6529
6720
  var PrismaClientTsGenerator = class {
6530
6721
  name = "prisma-client-ts";
6531
6722
  getManifest(config) {
6723
+ const requiresEngines = match2(getClientEngineType5(config)).with(ClientEngineType4.Library, () => ["libqueryEngine"]).with(ClientEngineType4.Binary, () => ["queryEngine"]).with(ClientEngineType4.Client, () => []).exhaustive();
6724
+ debug2("requiresEngines", requiresEngines);
6532
6725
  return Promise.resolve({
6533
6726
  defaultOutput: getOutputPath(config),
6534
6727
  prettyName: "Prisma Client",
6535
6728
  version,
6536
- requiresEngines: [],
6729
+ requiresEngines,
6537
6730
  requiresEngineVersion: enginesVersion
6538
6731
  });
6539
6732
  }
@@ -6558,6 +6751,7 @@ var PrismaClientTsGenerator = class {
6558
6751
  schemaPath: options.schemaPath,
6559
6752
  binaryPaths: options.binaryPaths,
6560
6753
  datasources: options.datasources,
6754
+ envPaths: options.envPaths,
6561
6755
  outputDir,
6562
6756
  runtimeBase: "@prisma/client/runtime",
6563
6757
  dmmf: options.dmmf,
@@ -6566,6 +6760,7 @@ var PrismaClientTsGenerator = class {
6566
6760
  clientVersion: version,
6567
6761
  activeProvider: options.datasources[0]?.activeProvider,
6568
6762
  postinstall: options.postinstall,
6763
+ copyEngine: !options.noEngine,
6569
6764
  typedSql: options.typedSql,
6570
6765
  target,
6571
6766
  generatedFileExtension,