@prisma/client-generator-ts 7.2.0-integration-engines-7-2-0-3-aqrln-zpupkzknszlw-04d61c41ec1a025cabe14093fa3121a5f45040ab.1 → 7.3.0-integration-fix-6-19-0-cloudflare-accelerate-engine.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.
- package/dist/TSClient/Args.d.ts +5 -5
- package/dist/TSClient/Datasources.d.ts +6 -0
- package/dist/TSClient/GenerateContext.d.ts +2 -5
- package/dist/TSClient/NullTypes.d.ts +1 -1
- package/dist/TSClient/PrismaClient.d.ts +1 -0
- package/dist/TSClient/TSClient.d.ts +1 -1
- package/dist/TSClient/file-generators/BrowserFile.d.ts +1 -1
- package/dist/extractSqliteSources.d.ts +6 -0
- package/dist/extractSqliteSources.test.d.ts +1 -0
- package/dist/generateClient.d.ts +7 -1
- package/dist/index.d.mts +7 -1
- package/dist/index.d.ts +7 -1
- package/dist/index.js +518 -287
- package/dist/index.mjs +503 -266
- package/dist/resolveDatasources.d.ts +1 -0
- package/dist/resolveDatasources.test.d.ts +1 -0
- package/dist/runtime-targets.d.ts +3 -3
- package/dist/serializeDatasources.d.ts +4 -0
- package/dist/serializeDatasources.test.d.ts +1 -0
- package/dist/utils/buildDebugInitialization.d.ts +1 -1
- package/dist/utils/buildInjectableEdgeEnv.d.ts +20 -0
- package/dist/utils/buildInlineDatasources.d.ts +3 -0
- package/dist/utils/buildNFTAnnotations.d.ts +11 -0
- package/dist/utils/buildNFTAnnotations.test.d.ts +1 -0
- package/dist/utils/runtimeImport.d.ts +8 -1
- package/dist/utils/wasm.d.ts +2 -1
- package/package.json +11 -10
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(
|
|
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(
|
|
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(
|
|
188
|
+
fs4.lchmod = function(path6, mode, callback) {
|
|
189
189
|
fs4.open(
|
|
190
|
-
|
|
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(
|
|
207
|
-
var fd = fs4.openSync(
|
|
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(
|
|
229
|
-
fs4.open(
|
|
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(
|
|
242
|
-
var fd = fs4.openSync(
|
|
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(
|
|
362
|
-
if (!(this instanceof ReadStream)) return new ReadStream(
|
|
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 =
|
|
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(
|
|
411
|
-
if (!(this instanceof WriteStream)) return new WriteStream(
|
|
410
|
+
function WriteStream(path6, options) {
|
|
411
|
+
if (!(this instanceof WriteStream)) return new WriteStream(path6, options);
|
|
412
412
|
Stream.call(this);
|
|
413
|
-
this.path =
|
|
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
|
|
497
|
+
var debug3 = noop;
|
|
498
498
|
if (util.debuglog)
|
|
499
|
-
|
|
499
|
+
debug3 = util.debuglog("gfs4");
|
|
500
500
|
else if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || ""))
|
|
501
|
-
|
|
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
|
-
|
|
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(
|
|
557
|
+
function readFile(path6, options, cb) {
|
|
558
558
|
if (typeof options === "function")
|
|
559
559
|
cb = options, options = null;
|
|
560
|
-
return go$readFile(
|
|
561
|
-
function go$readFile(
|
|
562
|
-
return fs$readFile(
|
|
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, [
|
|
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(
|
|
574
|
+
function writeFile(path6, data, options, cb) {
|
|
575
575
|
if (typeof options === "function")
|
|
576
576
|
cb = options, options = null;
|
|
577
|
-
return go$writeFile(
|
|
578
|
-
function go$writeFile(
|
|
579
|
-
return fs$writeFile(
|
|
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, [
|
|
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(
|
|
592
|
+
function appendFile(path6, data, options, cb) {
|
|
593
593
|
if (typeof options === "function")
|
|
594
594
|
cb = options, options = null;
|
|
595
|
-
return go$appendFile(
|
|
596
|
-
function go$appendFile(
|
|
597
|
-
return fs$appendFile(
|
|
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, [
|
|
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(
|
|
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(
|
|
634
|
-
return fs$readdir(
|
|
635
|
-
|
|
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(
|
|
641
|
-
return fs$readdir(
|
|
642
|
-
|
|
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(
|
|
649
|
-
function fs$readdirCallback(
|
|
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
|
-
[
|
|
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(
|
|
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(
|
|
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(
|
|
764
|
-
return new fs4.ReadStream(
|
|
763
|
+
function createReadStream(path6, options) {
|
|
764
|
+
return new fs4.ReadStream(path6, options);
|
|
765
765
|
}
|
|
766
|
-
function createWriteStream(
|
|
767
|
-
return new fs4.WriteStream(
|
|
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(
|
|
771
|
+
function open(path6, flags, mode, cb) {
|
|
772
772
|
if (typeof mode === "function")
|
|
773
773
|
cb = mode, mode = null;
|
|
774
|
-
return go$open(
|
|
775
|
-
function go$open(
|
|
776
|
-
return fs$open(
|
|
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, [
|
|
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
|
-
|
|
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
|
-
|
|
816
|
+
debug3("RETRY", fn.name, args);
|
|
817
817
|
fn.apply(null, args);
|
|
818
818
|
} else if (Date.now() - startTime >= 6e4) {
|
|
819
|
-
|
|
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
|
-
|
|
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
|
|
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(
|
|
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(
|
|
1029
|
-
return fs3.access(
|
|
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(
|
|
1045
|
-
const fd = await fs3.open(
|
|
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(
|
|
1061
|
-
const fd = fs3.openSync(
|
|
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
|
|
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 =
|
|
1106
|
-
const destBaseName =
|
|
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 =
|
|
1129
|
-
const destBaseName =
|
|
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 =
|
|
1149
|
-
const destParent =
|
|
1150
|
-
if (destParent === srcParent || destParent ===
|
|
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 =
|
|
1165
|
-
const destParent =
|
|
1166
|
-
if (destParent === srcParent || destParent ===
|
|
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 =
|
|
1184
|
-
const destArr =
|
|
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
|
|
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 =
|
|
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 =
|
|
1286
|
-
const destItem =
|
|
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 =
|
|
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 =
|
|
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
|
|
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 =
|
|
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 =
|
|
1429
|
-
const destItem =
|
|
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 =
|
|
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 =
|
|
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(
|
|
1488
|
-
fs3.rm(
|
|
1487
|
+
function remove(path6, callback) {
|
|
1488
|
+
fs3.rm(path6, { recursive: true, force: true }, callback);
|
|
1489
1489
|
}
|
|
1490
|
-
function removeSync(
|
|
1491
|
-
fs3.rmSync(
|
|
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
|
|
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(
|
|
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 =
|
|
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
|
|
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 =
|
|
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 =
|
|
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
|
|
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 =
|
|
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 =
|
|
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
|
|
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 (
|
|
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 =
|
|
1677
|
-
const relativeToDst =
|
|
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:
|
|
1693
|
+
toDst: path6.relative(dstdir, srcpath)
|
|
1694
1694
|
};
|
|
1695
1695
|
}
|
|
1696
1696
|
function symlinkPathsSync(srcpath, dstpath) {
|
|
1697
|
-
if (
|
|
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 =
|
|
1706
|
-
const relativeToDst =
|
|
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:
|
|
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
|
|
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 =
|
|
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 =
|
|
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);
|
|
@@ -1958,18 +1958,18 @@ var require_output_file = __commonJS({
|
|
|
1958
1958
|
"use strict";
|
|
1959
1959
|
var u = require_universalify().fromPromise;
|
|
1960
1960
|
var fs3 = require_fs();
|
|
1961
|
-
var
|
|
1961
|
+
var path6 = __require("path");
|
|
1962
1962
|
var mkdir = require_mkdirs();
|
|
1963
1963
|
var pathExists = require_path_exists().pathExists;
|
|
1964
1964
|
async function outputFile(file4, data, encoding = "utf-8") {
|
|
1965
|
-
const dir =
|
|
1965
|
+
const dir = path6.dirname(file4);
|
|
1966
1966
|
if (!await pathExists(dir)) {
|
|
1967
1967
|
await mkdir.mkdirs(dir);
|
|
1968
1968
|
}
|
|
1969
1969
|
return fs3.writeFile(file4, data, encoding);
|
|
1970
1970
|
}
|
|
1971
1971
|
function outputFileSync(file4, ...args) {
|
|
1972
|
-
const dir =
|
|
1972
|
+
const dir = path6.dirname(file4);
|
|
1973
1973
|
if (!fs3.existsSync(dir)) {
|
|
1974
1974
|
mkdir.mkdirsSync(dir);
|
|
1975
1975
|
}
|
|
@@ -2033,7 +2033,7 @@ var require_move = __commonJS({
|
|
|
2033
2033
|
"../../node_modules/.pnpm/fs-extra@11.3.0/node_modules/fs-extra/lib/move/move.js"(exports, module) {
|
|
2034
2034
|
"use strict";
|
|
2035
2035
|
var fs3 = require_fs();
|
|
2036
|
-
var
|
|
2036
|
+
var path6 = __require("path");
|
|
2037
2037
|
var { copy } = require_copy2();
|
|
2038
2038
|
var { remove } = require_remove();
|
|
2039
2039
|
var { mkdirp } = require_mkdirs();
|
|
@@ -2043,8 +2043,8 @@ var require_move = __commonJS({
|
|
|
2043
2043
|
const overwrite = opts.overwrite || opts.clobber || false;
|
|
2044
2044
|
const { srcStat, isChangingCase = false } = await stat.checkPaths(src, dest, "move", opts);
|
|
2045
2045
|
await stat.checkParentPaths(src, srcStat, dest, "move");
|
|
2046
|
-
const destParent =
|
|
2047
|
-
const parsedParentPath =
|
|
2046
|
+
const destParent = path6.dirname(dest);
|
|
2047
|
+
const parsedParentPath = path6.parse(destParent);
|
|
2048
2048
|
if (parsedParentPath.root !== destParent) {
|
|
2049
2049
|
await mkdirp(destParent);
|
|
2050
2050
|
}
|
|
@@ -2085,7 +2085,7 @@ var require_move_sync = __commonJS({
|
|
|
2085
2085
|
"../../node_modules/.pnpm/fs-extra@11.3.0/node_modules/fs-extra/lib/move/move-sync.js"(exports, module) {
|
|
2086
2086
|
"use strict";
|
|
2087
2087
|
var fs3 = require_graceful_fs();
|
|
2088
|
-
var
|
|
2088
|
+
var path6 = __require("path");
|
|
2089
2089
|
var copySync = require_copy2().copySync;
|
|
2090
2090
|
var removeSync = require_remove().removeSync;
|
|
2091
2091
|
var mkdirpSync = require_mkdirs().mkdirpSync;
|
|
@@ -2095,12 +2095,12 @@ var require_move_sync = __commonJS({
|
|
|
2095
2095
|
const overwrite = opts.overwrite || opts.clobber || false;
|
|
2096
2096
|
const { srcStat, isChangingCase = false } = stat.checkPathsSync(src, dest, "move", opts);
|
|
2097
2097
|
stat.checkParentPathsSync(src, srcStat, dest, "move");
|
|
2098
|
-
if (!isParentRoot(dest)) mkdirpSync(
|
|
2098
|
+
if (!isParentRoot(dest)) mkdirpSync(path6.dirname(dest));
|
|
2099
2099
|
return doRename(src, dest, overwrite, isChangingCase);
|
|
2100
2100
|
}
|
|
2101
2101
|
function isParentRoot(dest) {
|
|
2102
|
-
const parent =
|
|
2103
|
-
const parsedPath =
|
|
2102
|
+
const parent = path6.dirname(dest);
|
|
2103
|
+
const parsedPath = path6.parse(parent);
|
|
2104
2104
|
return parsedPath.root === parent;
|
|
2105
2105
|
}
|
|
2106
2106
|
function doRename(src, dest, overwrite, isChangingCase) {
|
|
@@ -2214,8 +2214,15 @@ function getMappings(mappings, datamodel) {
|
|
|
2214
2214
|
// src/generateClient.ts
|
|
2215
2215
|
var import_fs_extra = __toESM(require_lib());
|
|
2216
2216
|
import fs2 from "node:fs/promises";
|
|
2217
|
-
import
|
|
2218
|
-
import {
|
|
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";
|
|
2219
2226
|
import { glob } from "fast-glob";
|
|
2220
2227
|
|
|
2221
2228
|
// ../../node_modules/.pnpm/kleur@4.1.5/node_modules/kleur/colors.mjs
|
|
@@ -2374,7 +2381,7 @@ var Enum = class {
|
|
|
2374
2381
|
toTS() {
|
|
2375
2382
|
const { type } = this;
|
|
2376
2383
|
const enumVariants = `{
|
|
2377
|
-
${indent(type.
|
|
2384
|
+
${indent(type.values.map((v) => `${v}: ${this.getValue(v)}`).join(",\n"), TAB_SIZE)}
|
|
2378
2385
|
} as const`;
|
|
2379
2386
|
const enumBody = this.isStrictEnum() ? `runtime.makeStrictEnum(${enumVariants})` : enumVariants;
|
|
2380
2387
|
return `export const ${type.name} = ${enumBody}
|
|
@@ -2887,6 +2894,9 @@ var GenericArgsInfo = class {
|
|
|
2887
2894
|
}
|
|
2888
2895
|
};
|
|
2889
2896
|
|
|
2897
|
+
// src/TSClient/file-generators/BrowserFile.ts
|
|
2898
|
+
import { getClientEngineType } from "@prisma/internals";
|
|
2899
|
+
|
|
2890
2900
|
// src/TSClient/ModelExports.ts
|
|
2891
2901
|
import * as ts3 from "@prisma/ts-builders";
|
|
2892
2902
|
function modelExports(context) {
|
|
@@ -2912,7 +2922,9 @@ var jsDocHeader = `/*
|
|
|
2912
2922
|
* \u{1F7E2} You can import this file directly.
|
|
2913
2923
|
*/
|
|
2914
2924
|
`;
|
|
2915
|
-
function createBrowserFile(context,
|
|
2925
|
+
function createBrowserFile(context, options) {
|
|
2926
|
+
const clientEngineType = getClientEngineType(options.generator);
|
|
2927
|
+
options.generator.config.engineType = clientEngineType;
|
|
2916
2928
|
return `${jsDocHeader}
|
|
2917
2929
|
import * as Prisma from '${context.importFileName("./internal/prismaNamespaceBrowser")}'
|
|
2918
2930
|
export { Prisma }
|
|
@@ -2923,14 +2935,50 @@ ${modelExports(context).join("\n")}
|
|
|
2923
2935
|
}
|
|
2924
2936
|
|
|
2925
2937
|
// src/TSClient/file-generators/ClassFile.ts
|
|
2938
|
+
import crypto from "node:crypto";
|
|
2939
|
+
import path2 from "node:path";
|
|
2940
|
+
import { getClientEngineType as getClientEngineType2, pathToPosix } from "@prisma/internals";
|
|
2926
2941
|
import * as ts6 from "@prisma/ts-builders";
|
|
2942
|
+
import ciInfo from "ci-info";
|
|
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
|
+
}
|
|
2927
2975
|
|
|
2928
2976
|
// src/utils/buildDebugInitialization.ts
|
|
2929
2977
|
function buildDebugInitialization(edge) {
|
|
2930
2978
|
if (!edge) {
|
|
2931
2979
|
return "";
|
|
2932
2980
|
}
|
|
2933
|
-
const debugVar =
|
|
2981
|
+
const debugVar = getRuntimeEdgeEnvVar("DEBUG");
|
|
2934
2982
|
return `if (${debugVar}) {
|
|
2935
2983
|
runtime.Debug.enable(${debugVar})
|
|
2936
2984
|
}
|
|
@@ -3407,7 +3455,7 @@ function escapeJson(str) {
|
|
|
3407
3455
|
function buildRuntimeDataModel(datamodel, runtimeName) {
|
|
3408
3456
|
const runtimeDataModel = dmmfToRuntimeDataModel(datamodel);
|
|
3409
3457
|
let prunedDataModel;
|
|
3410
|
-
if (runtimeName === "wasm-compiler-edge" || runtimeName === "client") {
|
|
3458
|
+
if (runtimeName === "wasm-engine-edge" || runtimeName === "wasm-compiler-edge" || runtimeName === "client") {
|
|
3411
3459
|
prunedDataModel = pruneRuntimeDataModel(runtimeDataModel);
|
|
3412
3460
|
} else {
|
|
3413
3461
|
prunedDataModel = runtimeDataModel;
|
|
@@ -3417,28 +3465,50 @@ function buildRuntimeDataModel(datamodel, runtimeName) {
|
|
|
3417
3465
|
config.runtimeDataModel = JSON.parse(${JSON.stringify(datamodelString)})`;
|
|
3418
3466
|
}
|
|
3419
3467
|
|
|
3468
|
+
// src/utils/buildInlineDatasources.ts
|
|
3469
|
+
function buildInlineDatasources(datasources) {
|
|
3470
|
+
return datasources.reduce((acc, ds) => {
|
|
3471
|
+
return acc[ds.name] = buildInlineDatasource(ds), acc;
|
|
3472
|
+
}, {});
|
|
3473
|
+
}
|
|
3474
|
+
function buildInlineDatasource(ds) {
|
|
3475
|
+
if (ds.url.fromEnvVar) {
|
|
3476
|
+
return { url: { fromEnvVar: ds.url.fromEnvVar, value: null } };
|
|
3477
|
+
} else {
|
|
3478
|
+
return { url: { fromEnvVar: null, value: ds.url.value } };
|
|
3479
|
+
}
|
|
3480
|
+
}
|
|
3481
|
+
|
|
3420
3482
|
// src/utils/wasm.ts
|
|
3421
3483
|
import fs from "node:fs";
|
|
3422
3484
|
import path from "node:path";
|
|
3485
|
+
import { capitalize as capitalize6 } from "@prisma/client-common";
|
|
3423
3486
|
import { Debug } from "@prisma/debug";
|
|
3424
3487
|
import { match } from "ts-pattern";
|
|
3425
3488
|
var debug = Debug("prisma:client-generator-ts:wasm");
|
|
3426
|
-
function usesEdgeWasmRuntime(runtimeName) {
|
|
3427
|
-
return runtimeName === "wasm-compiler-edge";
|
|
3489
|
+
function usesEdgeWasmRuntime(component, runtimeName) {
|
|
3490
|
+
return runtimeName === "wasm-engine-edge" && component === "engine" || runtimeName === "wasm-compiler-edge" && component === "compiler";
|
|
3428
3491
|
}
|
|
3429
|
-
function buildGetWasmModule({
|
|
3492
|
+
function buildGetWasmModule({
|
|
3493
|
+
component,
|
|
3494
|
+
runtimeName,
|
|
3495
|
+
runtimeBase,
|
|
3496
|
+
activeProvider,
|
|
3497
|
+
moduleFormat
|
|
3498
|
+
}) {
|
|
3499
|
+
const capitalizedComponent = capitalize6(component);
|
|
3430
3500
|
const extension = match(moduleFormat).with("esm", () => "mjs").with("cjs", () => "js").exhaustive();
|
|
3431
|
-
const buildNonEdgeLoader = runtimeName === "client";
|
|
3432
|
-
const buildEdgeLoader =
|
|
3501
|
+
const buildNonEdgeLoader = match(runtimeName).with("library", () => component === "engine" && !!process.env.PRISMA_CLIENT_FORCE_WASM).with("client", () => component === "compiler").otherwise(() => false);
|
|
3502
|
+
const buildEdgeLoader = usesEdgeWasmRuntime(component, runtimeName);
|
|
3433
3503
|
let wasmPathBase;
|
|
3434
3504
|
let wasmBindingsPath;
|
|
3435
3505
|
let wasmModulePath;
|
|
3436
3506
|
if (buildEdgeLoader) {
|
|
3437
|
-
wasmPathBase = `./
|
|
3507
|
+
wasmPathBase = `./query_${component}_bg`;
|
|
3438
3508
|
wasmBindingsPath = `${wasmPathBase}.js`;
|
|
3439
3509
|
wasmModulePath = `${wasmPathBase}.wasm`;
|
|
3440
3510
|
} else {
|
|
3441
|
-
wasmPathBase = `${runtimeBase}/
|
|
3511
|
+
wasmPathBase = `${runtimeBase}/query_${component}_bg.${activeProvider}`;
|
|
3442
3512
|
wasmBindingsPath = `${wasmPathBase}.mjs`;
|
|
3443
3513
|
wasmModulePath = `${wasmPathBase}.wasm`;
|
|
3444
3514
|
}
|
|
@@ -3452,26 +3522,26 @@ async function decodeBase64AsWasm(wasmBase64: string): Promise<WebAssembly.Modul
|
|
|
3452
3522
|
return new WebAssembly.Module(wasmArray)
|
|
3453
3523
|
}
|
|
3454
3524
|
|
|
3455
|
-
config
|
|
3525
|
+
config.${component}Wasm = {
|
|
3456
3526
|
getRuntime: async () => await import(${JSON.stringify(wasmBindingsPath)}),
|
|
3457
3527
|
|
|
3458
|
-
|
|
3528
|
+
getQuery${capitalizedComponent}WasmModule: async () => {
|
|
3459
3529
|
const { wasm } = await import(${JSON.stringify(wasmModulePath)})
|
|
3460
3530
|
return await decodeBase64AsWasm(wasm)
|
|
3461
3531
|
}
|
|
3462
3532
|
}`;
|
|
3463
3533
|
}
|
|
3464
3534
|
if (buildEdgeLoader) {
|
|
3465
|
-
return `config
|
|
3535
|
+
return `config.${component}Wasm = {
|
|
3466
3536
|
getRuntime: async () => await import(${JSON.stringify(wasmBindingsPath)}),
|
|
3467
3537
|
|
|
3468
|
-
|
|
3538
|
+
getQuery${capitalizedComponent}WasmModule: async () => {
|
|
3469
3539
|
const { default: module } = await import(${JSON.stringify(`${wasmModulePath}?module`)})
|
|
3470
3540
|
return module
|
|
3471
3541
|
}
|
|
3472
3542
|
}`;
|
|
3473
3543
|
}
|
|
3474
|
-
return `config
|
|
3544
|
+
return `config.${component}Wasm = undefined`;
|
|
3475
3545
|
}
|
|
3476
3546
|
function readSourceFile(sourceFile) {
|
|
3477
3547
|
const bundledLocation = path.join(__dirname, sourceFile);
|
|
@@ -3489,28 +3559,33 @@ function readSourceFile(sourceFile) {
|
|
|
3489
3559
|
function buildWasmFileMap({ activeProvider, runtimeName }) {
|
|
3490
3560
|
const fileMap = {};
|
|
3491
3561
|
debug("buildWasmFileMap with", { runtimeName });
|
|
3492
|
-
|
|
3493
|
-
|
|
3494
|
-
|
|
3495
|
-
|
|
3496
|
-
|
|
3497
|
-
|
|
3498
|
-
|
|
3499
|
-
|
|
3500
|
-
|
|
3501
|
-
|
|
3502
|
-
|
|
3562
|
+
for (const component of ["engine", "compiler"]) {
|
|
3563
|
+
if (!usesEdgeWasmRuntime(component, runtimeName)) {
|
|
3564
|
+
debug("Skipping component", component, "for runtime", runtimeName);
|
|
3565
|
+
continue;
|
|
3566
|
+
}
|
|
3567
|
+
const fileNameBase = `query_${component}_bg.${activeProvider}`;
|
|
3568
|
+
const files = {
|
|
3569
|
+
[`query_${component}_bg.wasm`]: `${fileNameBase}.wasm`,
|
|
3570
|
+
[`query_${component}_bg.js`]: `${fileNameBase}.mjs`
|
|
3571
|
+
};
|
|
3572
|
+
for (const [targetFile, sourceFile] of Object.entries(files)) {
|
|
3573
|
+
fileMap[targetFile] = readSourceFile(sourceFile);
|
|
3574
|
+
}
|
|
3503
3575
|
}
|
|
3504
3576
|
return fileMap;
|
|
3505
3577
|
}
|
|
3506
3578
|
|
|
3507
3579
|
// src/TSClient/PrismaClient.ts
|
|
3508
|
-
import { capitalize as
|
|
3580
|
+
import { capitalize as capitalize7, uncapitalize as uncapitalize4 } from "@prisma/client-common";
|
|
3509
3581
|
import * as ts5 from "@prisma/ts-builders";
|
|
3510
3582
|
import indent3 from "indent-string";
|
|
3511
3583
|
|
|
3512
3584
|
// src/utils/runtimeImport.ts
|
|
3513
3585
|
import * as ts4 from "@prisma/ts-builders";
|
|
3586
|
+
function runtimeImport(name) {
|
|
3587
|
+
return name;
|
|
3588
|
+
}
|
|
3514
3589
|
function runtimeImportedType(name) {
|
|
3515
3590
|
return ts4.namedType(`runtime.${name}`);
|
|
3516
3591
|
}
|
|
@@ -3584,7 +3659,7 @@ function queryRawDefinition(context) {
|
|
|
3584
3659
|
* const result = await prisma.$queryRaw\`SELECT * FROM User WHERE id = \${1} OR email = \${'user@email.com'};\`
|
|
3585
3660
|
* \`\`\`
|
|
3586
3661
|
*
|
|
3587
|
-
* Read more in our [docs](https://
|
|
3662
|
+
* Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access).
|
|
3588
3663
|
*/
|
|
3589
3664
|
$queryRaw<T = unknown>(query: TemplateStringsArray | Prisma.Sql, ...values: any[]): Prisma.PrismaPromise<T>;
|
|
3590
3665
|
|
|
@@ -3596,7 +3671,7 @@ function queryRawDefinition(context) {
|
|
|
3596
3671
|
* const result = await prisma.$queryRawUnsafe('SELECT * FROM User WHERE id = $1 OR email = $2;', 1, 'user@email.com')
|
|
3597
3672
|
* \`\`\`
|
|
3598
3673
|
*
|
|
3599
|
-
* Read more in our [docs](https://
|
|
3674
|
+
* Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access).
|
|
3600
3675
|
*/
|
|
3601
3676
|
$queryRawUnsafe<T = unknown>(query: string, ...values: any[]): Prisma.PrismaPromise<T>;`;
|
|
3602
3677
|
}
|
|
@@ -3612,7 +3687,7 @@ function executeRawDefinition(context) {
|
|
|
3612
3687
|
* const result = await prisma.$executeRaw\`UPDATE User SET cool = \${true} WHERE email = \${'user@email.com'};\`
|
|
3613
3688
|
* \`\`\`
|
|
3614
3689
|
*
|
|
3615
|
-
* Read more in our [docs](https://
|
|
3690
|
+
* Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access).
|
|
3616
3691
|
*/
|
|
3617
3692
|
$executeRaw<T = unknown>(query: TemplateStringsArray | Prisma.Sql, ...values: any[]): Prisma.PrismaPromise<number>;
|
|
3618
3693
|
|
|
@@ -3624,7 +3699,7 @@ function executeRawDefinition(context) {
|
|
|
3624
3699
|
* const result = await prisma.$executeRawUnsafe('UPDATE User SET cool = $1 WHERE email = $2 ;', true, 'user@email.com')
|
|
3625
3700
|
* \`\`\`
|
|
3626
3701
|
*
|
|
3627
|
-
* Read more in our [docs](https://
|
|
3702
|
+
* Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access).
|
|
3628
3703
|
*/
|
|
3629
3704
|
$executeRawUnsafe<T = unknown>(query: string, ...values: any[]): Prisma.PrismaPromise<number>;`;
|
|
3630
3705
|
}
|
|
@@ -3654,6 +3729,24 @@ function queryRawTypedDefinition(context) {
|
|
|
3654
3729
|
).setReturnType(prismaPromise(ts5.array(param.toArgument())));
|
|
3655
3730
|
return ts5.stringify(method3, { indentLevel: 1, newLine: "leading" });
|
|
3656
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
|
+
}
|
|
3657
3750
|
function runCommandRawDefinition(context) {
|
|
3658
3751
|
if (!context.dmmf.mappings.otherOperations.write.includes("runCommandRaw")) {
|
|
3659
3752
|
return "";
|
|
@@ -3669,10 +3762,17 @@ function runCommandRawDefinition(context) {
|
|
|
3669
3762
|
})
|
|
3670
3763
|
\`\`\`
|
|
3671
3764
|
|
|
3672
|
-
Read more in our [docs](https://
|
|
3765
|
+
Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/raw-database-access).
|
|
3673
3766
|
`);
|
|
3674
3767
|
return ts5.stringify(method3, { indentLevel: 1, newLine: "leading" });
|
|
3675
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
|
+
}
|
|
3676
3776
|
function getPrismaClientClassDocComment({ dmmf }) {
|
|
3677
3777
|
let example;
|
|
3678
3778
|
if (dmmf.mappings.modelOperations.length) {
|
|
@@ -3690,11 +3790,11 @@ function getPrismaClientClassDocComment({ dmmf }) {
|
|
|
3690
3790
|
@example
|
|
3691
3791
|
\`\`\`
|
|
3692
3792
|
const prisma = new PrismaClient()
|
|
3693
|
-
// Fetch zero or more ${
|
|
3793
|
+
// Fetch zero or more ${capitalize7(example.plural)}
|
|
3694
3794
|
const ${uncapitalize4(example.plural)} = await prisma.${uncapitalize4(example.model)}.findMany()
|
|
3695
3795
|
\`\`\`
|
|
3696
3796
|
|
|
3697
|
-
Read more in our [docs](https://
|
|
3797
|
+
Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client).
|
|
3698
3798
|
`;
|
|
3699
3799
|
}
|
|
3700
3800
|
var PrismaClientClass = class {
|
|
@@ -3717,18 +3817,18 @@ export interface PrismaClientConstructor {
|
|
|
3717
3817
|
LogOpts extends LogOptions<Options> = LogOptions<Options>,
|
|
3718
3818
|
OmitOpts extends Prisma.PrismaClientOptions['omit'] = Options extends { omit: infer U } ? U : Prisma.PrismaClientOptions['omit'],
|
|
3719
3819
|
ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs
|
|
3720
|
-
>(options
|
|
3820
|
+
>(options?: Prisma.Subset<Options, Prisma.PrismaClientOptions> ): PrismaClient<LogOpts, OmitOpts, ExtArgs>
|
|
3721
3821
|
}
|
|
3722
3822
|
|
|
3723
3823
|
${this.jsDoc}
|
|
3724
3824
|
export interface PrismaClient<
|
|
3725
3825
|
in LogOpts extends Prisma.LogLevel = never,
|
|
3726
|
-
in out OmitOpts extends Prisma.PrismaClientOptions['omit'] =
|
|
3826
|
+
in out OmitOpts extends Prisma.PrismaClientOptions['omit'] = Prisma.PrismaClientOptions['omit'],
|
|
3727
3827
|
in out ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs
|
|
3728
3828
|
> {
|
|
3729
3829
|
[K: symbol]: { types: Prisma.TypeMap<ExtArgs>['other'] }
|
|
3730
3830
|
|
|
3731
|
-
$
|
|
3831
|
+
${eventRegistrationMethodDeclaration(this.runtimeName)}
|
|
3732
3832
|
|
|
3733
3833
|
/**
|
|
3734
3834
|
* Connect with the database
|
|
@@ -3747,6 +3847,8 @@ ${[
|
|
|
3747
3847
|
batchingTransactionDefinition(this.context),
|
|
3748
3848
|
interactiveTransactionDefinition(this.context),
|
|
3749
3849
|
runCommandRawDefinition(this.context),
|
|
3850
|
+
metricDefinition(this.context),
|
|
3851
|
+
this.applyPendingMigrationsDefinition(),
|
|
3750
3852
|
extendsPropertyDefinition()
|
|
3751
3853
|
].filter((d) => d !== null).join("\n").trim()}
|
|
3752
3854
|
|
|
@@ -3761,7 +3863,7 @@ ${[
|
|
|
3761
3863
|
* \`prisma.${methodName}\`: Exposes CRUD operations for the **${m.model}** model.
|
|
3762
3864
|
* Example usage:
|
|
3763
3865
|
* \`\`\`ts
|
|
3764
|
-
* // Fetch zero or more ${
|
|
3866
|
+
* // Fetch zero or more ${capitalize7(m.plural)}
|
|
3765
3867
|
* const ${uncapitalize4(m.plural)} = await prisma.${methodName}.findMany()
|
|
3766
3868
|
* \`\`\`
|
|
3767
3869
|
*/
|
|
@@ -3771,6 +3873,15 @@ get ${methodName}(): Prisma.${m.model}Delegate<${generics.join(", ")}>;`;
|
|
|
3771
3873
|
)}
|
|
3772
3874
|
}`;
|
|
3773
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
|
+
}
|
|
3774
3885
|
};
|
|
3775
3886
|
|
|
3776
3887
|
// src/TSClient/file-generators/ClassFile.ts
|
|
@@ -3796,7 +3907,8 @@ ${clientConfig(context, options)}
|
|
|
3796
3907
|
|
|
3797
3908
|
${prismaClientClass.toTS()}
|
|
3798
3909
|
|
|
3799
|
-
export function getPrismaClientClass(): PrismaClientConstructor {
|
|
3910
|
+
export function getPrismaClientClass(dirname: string): PrismaClientConstructor {
|
|
3911
|
+
config.dirname = dirname
|
|
3800
3912
|
return runtime.getPrismaClient(config) as unknown as PrismaClientConstructor
|
|
3801
3913
|
}
|
|
3802
3914
|
`;
|
|
@@ -3805,39 +3917,105 @@ function clientConfig(context, options) {
|
|
|
3805
3917
|
const {
|
|
3806
3918
|
edge,
|
|
3807
3919
|
generator,
|
|
3920
|
+
outputDir,
|
|
3808
3921
|
datamodel: inlineSchema,
|
|
3809
3922
|
runtimeBase,
|
|
3810
3923
|
runtimeName,
|
|
3924
|
+
datasources,
|
|
3925
|
+
copyEngine = true,
|
|
3811
3926
|
target,
|
|
3812
3927
|
activeProvider,
|
|
3813
3928
|
moduleFormat
|
|
3814
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");
|
|
3933
|
+
const datasourceFilePath = datasources[0].sourceFilePath;
|
|
3815
3934
|
const config = {
|
|
3816
|
-
|
|
3935
|
+
generator,
|
|
3936
|
+
relativePath: pathToPosix(path2.relative(outputDir, path2.dirname(datasourceFilePath))),
|
|
3817
3937
|
clientVersion: options.clientVersion,
|
|
3818
3938
|
engineVersion: options.engineVersion,
|
|
3939
|
+
datasourceNames: datasources.map((d) => d.name),
|
|
3819
3940
|
activeProvider: options.activeProvider,
|
|
3941
|
+
postinstall: options.postinstall,
|
|
3942
|
+
ciName: ciInfo.name ?? void 0,
|
|
3943
|
+
inlineDatasources: buildInlineDatasources(datasources),
|
|
3820
3944
|
inlineSchema,
|
|
3821
|
-
|
|
3945
|
+
inlineSchemaHash,
|
|
3946
|
+
copyEngine,
|
|
3947
|
+
runtimeDataModel: { models: {}, enums: {}, types: {} },
|
|
3948
|
+
dirname: ""
|
|
3822
3949
|
};
|
|
3823
3950
|
return `
|
|
3824
3951
|
const config: runtime.GetPrismaClientConfig = ${JSON.stringify(config, null, 2)}
|
|
3825
3952
|
${buildRuntimeDataModel(context.dmmf.datamodel, runtimeName)}
|
|
3826
|
-
${buildGetWasmModule({ runtimeBase, runtimeName, target, activeProvider, moduleFormat })}
|
|
3953
|
+
${buildGetWasmModule({ component: "engine", runtimeBase, runtimeName, target, activeProvider, moduleFormat })}
|
|
3954
|
+
${buildGetWasmModule({ component: "compiler", runtimeBase, runtimeName, target, activeProvider, moduleFormat })}
|
|
3955
|
+
${buildInjectableEdgeEnv(edge, datasources)}
|
|
3827
3956
|
${buildDebugInitialization(edge)}
|
|
3828
3957
|
`;
|
|
3829
3958
|
}
|
|
3830
3959
|
|
|
3831
3960
|
// src/TSClient/file-generators/ClientFile.ts
|
|
3961
|
+
import path4 from "node:path";
|
|
3962
|
+
import { ClientEngineType as ClientEngineType2, getClientEngineType as getClientEngineType3 } from "@prisma/internals";
|
|
3832
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
|
|
3833
4009
|
var jsDocHeader3 = `/*
|
|
3834
4010
|
* This file should be your main import to use Prisma. Through it you get access to all the models, enums, and input types.
|
|
3835
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.
|
|
3836
|
-
*
|
|
4012
|
+
*
|
|
3837
4013
|
* \u{1F7E2} You can import this file directly.
|
|
3838
4014
|
*/
|
|
3839
4015
|
`;
|
|
3840
4016
|
function createClientFile(context, options) {
|
|
4017
|
+
const clientEngineType = getClientEngineType3(options.generator);
|
|
4018
|
+
options.generator.config.engineType = clientEngineType;
|
|
3841
4019
|
const imports = [
|
|
3842
4020
|
ts7.moduleImport(context.runtimeImport).asNamespace("runtime"),
|
|
3843
4021
|
ts7.moduleImport(context.importFileName("./enums")).asNamespace("$Enums"),
|
|
@@ -3847,7 +4025,9 @@ function createClientFile(context, options) {
|
|
|
3847
4025
|
const exports = [
|
|
3848
4026
|
ts7.moduleExportFrom(context.importFileName("./enums")).asNamespace("$Enums"),
|
|
3849
4027
|
ts7.moduleExportFrom(context.importFileName("./enums")),
|
|
3850
|
-
ts7.moduleExport(
|
|
4028
|
+
ts7.moduleExport(
|
|
4029
|
+
ts7.constDeclaration("PrismaClient").setValue(ts7.functionCall("$Class.getPrismaClientClass", [ts7.namedValue("__dirname")]))
|
|
4030
|
+
).setDocComment(getPrismaClientClassDocComment(context)),
|
|
3851
4031
|
ts7.moduleExport(
|
|
3852
4032
|
ts7.typeDeclaration(
|
|
3853
4033
|
"PrismaClient",
|
|
@@ -3861,6 +4041,8 @@ function createClientFile(context, options) {
|
|
|
3861
4041
|
)
|
|
3862
4042
|
)
|
|
3863
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);
|
|
3864
4046
|
return `${jsDocHeader3}
|
|
3865
4047
|
${buildPreamble(options.edge, options.moduleFormat)}
|
|
3866
4048
|
${imports.join("\n")}
|
|
@@ -3868,6 +4050,8 @@ ${imports.join("\n")}
|
|
|
3868
4050
|
${exports.join("\n")}
|
|
3869
4051
|
export { Prisma }
|
|
3870
4052
|
|
|
4053
|
+
${buildNFTAnnotations(options.edge || !options.copyEngine, clientEngineType, binaryTargets, relativeOutdir)}
|
|
4054
|
+
|
|
3871
4055
|
${modelExports(context).join("\n")}
|
|
3872
4056
|
`;
|
|
3873
4057
|
}
|
|
@@ -3939,7 +4123,7 @@ export {}
|
|
|
3939
4123
|
import * as ts15 from "@prisma/ts-builders";
|
|
3940
4124
|
|
|
3941
4125
|
// src/TSClient/Model.ts
|
|
3942
|
-
import { capitalize as
|
|
4126
|
+
import { capitalize as capitalize9 } from "@prisma/client-common";
|
|
3943
4127
|
import * as DMMF2 from "@prisma/dmmf";
|
|
3944
4128
|
import * as ts14 from "@prisma/ts-builders";
|
|
3945
4129
|
import indent5 from "indent-string";
|
|
@@ -4025,7 +4209,7 @@ var ArgsTypeBuilder = class {
|
|
|
4025
4209
|
};
|
|
4026
4210
|
|
|
4027
4211
|
// src/TSClient/Count.ts
|
|
4028
|
-
import { capitalize as
|
|
4212
|
+
import { capitalize as capitalize8 } from "@prisma/client-common";
|
|
4029
4213
|
import * as ts11 from "@prisma/ts-builders";
|
|
4030
4214
|
import indent4 from "indent-string";
|
|
4031
4215
|
|
|
@@ -4144,7 +4328,7 @@ ${this.argsTypes.map((typeExport) => ts11.stringify(typeExport)).join("\n\n")}
|
|
|
4144
4328
|
}
|
|
4145
4329
|
};
|
|
4146
4330
|
function getCountArgsType(typeName, fieldName) {
|
|
4147
|
-
return `${typeName}Count${
|
|
4331
|
+
return `${typeName}Count${capitalize8(fieldName)}Args`;
|
|
4148
4332
|
}
|
|
4149
4333
|
|
|
4150
4334
|
// src/TSClient/ModelFieldRefs.ts
|
|
@@ -4808,7 +4992,7 @@ function getNonAggregateMethodDependencyValidations(modelMapping, actionName, co
|
|
|
4808
4992
|
objectType11.add(ts14.property(reqArg, ts14.objectType()));
|
|
4809
4993
|
}
|
|
4810
4994
|
validators.push(
|
|
4811
|
-
ts14.genericParameter(`${
|
|
4995
|
+
ts14.genericParameter(`${capitalize9(args.name)}DependenciesValidator`).extends(
|
|
4812
4996
|
ts14.conditionalType().check(ts14.stringLiteral(args.name)).extends(ts14.namedType("Prisma.Keys<T>")).then(objectType11).else(ts14.objectType())
|
|
4813
4997
|
)
|
|
4814
4998
|
);
|
|
@@ -4968,36 +5152,33 @@ function createModelsFile(context, modelsNames) {
|
|
|
4968
5152
|
}
|
|
4969
5153
|
|
|
4970
5154
|
// src/TSClient/file-generators/PrismaNamespaceBrowserFile.ts
|
|
4971
|
-
import { datamodelSchemaEnumToSchemaEnum } from "@prisma/dmmf";
|
|
4972
5155
|
import * as ts16 from "@prisma/ts-builders";
|
|
4973
5156
|
|
|
4974
5157
|
// src/TSClient/NullTypes.ts
|
|
4975
5158
|
var nullTypes = `
|
|
4976
5159
|
export const NullTypes = {
|
|
4977
|
-
DbNull: runtime.
|
|
4978
|
-
JsonNull: runtime.
|
|
4979
|
-
AnyNull: runtime.
|
|
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),
|
|
4980
5163
|
}
|
|
4981
5164
|
/**
|
|
4982
5165
|
* Helper for filtering JSON entries that have \`null\` on the database (empty on the db)
|
|
4983
5166
|
*
|
|
4984
5167
|
* @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
|
|
4985
5168
|
*/
|
|
4986
|
-
export const DbNull = runtime.DbNull
|
|
4987
|
-
|
|
5169
|
+
export const DbNull = runtime.objectEnumValues.instances.DbNull
|
|
4988
5170
|
/**
|
|
4989
5171
|
* Helper for filtering JSON entries that have JSON \`null\` values (not empty on the db)
|
|
4990
5172
|
*
|
|
4991
5173
|
* @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
|
|
4992
5174
|
*/
|
|
4993
|
-
export const JsonNull = runtime.JsonNull
|
|
4994
|
-
|
|
5175
|
+
export const JsonNull = runtime.objectEnumValues.instances.JsonNull
|
|
4995
5176
|
/**
|
|
4996
5177
|
* Helper for filtering JSON entries that are \`Prisma.DbNull\` or \`Prisma.JsonNull\`
|
|
4997
5178
|
*
|
|
4998
5179
|
* @see https://www.prisma.io/docs/concepts/components/prisma-client/working-with-fields/working-with-json-fields#filtering-on-a-json-field
|
|
4999
5180
|
*/
|
|
5000
|
-
export const AnyNull = runtime.AnyNull
|
|
5181
|
+
export const AnyNull = runtime.objectEnumValues.instances.AnyNull
|
|
5001
5182
|
`;
|
|
5002
5183
|
|
|
5003
5184
|
// src/TSClient/file-generators/PrismaNamespaceBrowserFile.ts
|
|
@@ -5014,9 +5195,7 @@ var jsDocHeader7 = `/*
|
|
|
5014
5195
|
*/
|
|
5015
5196
|
`;
|
|
5016
5197
|
function createPrismaNamespaceBrowserFile(context) {
|
|
5017
|
-
const prismaEnums = context.dmmf.schema.enumTypes.prisma?.map(
|
|
5018
|
-
(datamodelEnum) => new Enum(datamodelSchemaEnumToSchemaEnum(datamodelEnum), false).toTS()
|
|
5019
|
-
);
|
|
5198
|
+
const prismaEnums = context.dmmf.schema.enumTypes.prisma?.map((type) => new Enum(type, true).toTS());
|
|
5020
5199
|
return `${jsDocHeader7}
|
|
5021
5200
|
${ts16.stringify(ts16.moduleImport(`${context.runtimeBase}/index-browser`).asNamespace("runtime"))}
|
|
5022
5201
|
|
|
@@ -5030,10 +5209,7 @@ ${nullTypes}
|
|
|
5030
5209
|
${new Enum(
|
|
5031
5210
|
{
|
|
5032
5211
|
name: "ModelName",
|
|
5033
|
-
|
|
5034
|
-
key: m.model,
|
|
5035
|
-
value: m.model
|
|
5036
|
-
}))
|
|
5212
|
+
values: context.dmmf.mappings.modelOperations.map((m) => m.model)
|
|
5037
5213
|
},
|
|
5038
5214
|
true
|
|
5039
5215
|
).toTS()}
|
|
@@ -5046,7 +5222,6 @@ ${prismaEnums?.join("\n\n")}
|
|
|
5046
5222
|
}
|
|
5047
5223
|
|
|
5048
5224
|
// src/TSClient/file-generators/PrismaNamespaceFile.ts
|
|
5049
|
-
import { datamodelSchemaEnumToSchemaEnum as datamodelSchemaEnumToSchemaEnum2 } from "@prisma/dmmf";
|
|
5050
5225
|
import * as ts19 from "@prisma/ts-builders";
|
|
5051
5226
|
|
|
5052
5227
|
// src/TSClient/common.ts
|
|
@@ -5094,6 +5269,14 @@ export type Decimal = runtime.Decimal
|
|
|
5094
5269
|
|
|
5095
5270
|
export type DecimalJsLike = runtime.DecimalJsLike
|
|
5096
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
|
+
|
|
5097
5280
|
/**
|
|
5098
5281
|
* Extensions
|
|
5099
5282
|
*/
|
|
@@ -5400,6 +5583,25 @@ export const skip = runtime.skip
|
|
|
5400
5583
|
return "";
|
|
5401
5584
|
}
|
|
5402
5585
|
|
|
5586
|
+
// src/TSClient/Datasources.ts
|
|
5587
|
+
import indent6 from "indent-string";
|
|
5588
|
+
var Datasources = class {
|
|
5589
|
+
constructor(internalDatasources) {
|
|
5590
|
+
this.internalDatasources = internalDatasources;
|
|
5591
|
+
}
|
|
5592
|
+
toTS() {
|
|
5593
|
+
const sources = this.internalDatasources;
|
|
5594
|
+
return `
|
|
5595
|
+
export type Datasource = {
|
|
5596
|
+
url?: string
|
|
5597
|
+
}
|
|
5598
|
+
export type Datasources = {
|
|
5599
|
+
${indent6(sources.map((s) => `${s.name}?: Datasource`).join("\n"), 2)}
|
|
5600
|
+
}
|
|
5601
|
+
`;
|
|
5602
|
+
}
|
|
5603
|
+
};
|
|
5604
|
+
|
|
5403
5605
|
// src/TSClient/FieldRefInput.ts
|
|
5404
5606
|
var FieldRefInput = class {
|
|
5405
5607
|
constructor(type) {
|
|
@@ -5559,9 +5761,7 @@ function createPrismaNamespaceFile(context, options) {
|
|
|
5559
5761
|
ts19.moduleImport(context.importFileName(`../models`)).asNamespace("Prisma").typeOnly(),
|
|
5560
5762
|
ts19.moduleImport(context.importFileName(`./class`)).named(ts19.namedImport("PrismaClient").typeOnly())
|
|
5561
5763
|
].map((i) => ts19.stringify(i));
|
|
5562
|
-
const prismaEnums = context.dmmf.schema.enumTypes.prisma?.map(
|
|
5563
|
-
(type) => new Enum(datamodelSchemaEnumToSchemaEnum2(type), true).toTS()
|
|
5564
|
-
);
|
|
5764
|
+
const prismaEnums = context.dmmf.schema.enumTypes.prisma?.map((type) => new Enum(type, true).toTS());
|
|
5565
5765
|
const fieldRefs = context.dmmf.schema.fieldRefTypes.prisma?.map((type) => new FieldRefInput(type).toTS()) ?? [];
|
|
5566
5766
|
return `${jsDocHeader8}
|
|
5567
5767
|
${imports.join("\n")}
|
|
@@ -5572,10 +5772,7 @@ ${commonCodeTS(options)}
|
|
|
5572
5772
|
${new Enum(
|
|
5573
5773
|
{
|
|
5574
5774
|
name: "ModelName",
|
|
5575
|
-
|
|
5576
|
-
key: m.model,
|
|
5577
|
-
value: m.model
|
|
5578
|
-
}))
|
|
5775
|
+
values: context.dmmf.mappings.modelOperations.map((m) => m.model)
|
|
5579
5776
|
},
|
|
5580
5777
|
true
|
|
5581
5778
|
).toTS()}
|
|
@@ -5602,10 +5799,11 @@ export type BatchPayload = {
|
|
|
5602
5799
|
count: number
|
|
5603
5800
|
}
|
|
5604
5801
|
|
|
5802
|
+
${new Datasources(options.datasources).toTS()}
|
|
5605
5803
|
${clientExtensionsDefinitions()}
|
|
5606
5804
|
export type DefaultPrismaClient = PrismaClient
|
|
5607
5805
|
export type ErrorFormat = 'pretty' | 'colorless' | 'minimal'
|
|
5608
|
-
${ts19.stringify(ts19.moduleExport(buildClientOptions(context)))}
|
|
5806
|
+
${ts19.stringify(ts19.moduleExport(buildClientOptions(context, options)))}
|
|
5609
5807
|
${ts19.stringify(globalOmitConfig(context.dmmf))}
|
|
5610
5808
|
|
|
5611
5809
|
/* Types for Logging */
|
|
@@ -5681,19 +5879,12 @@ function clientExtensionsDefinitions() {
|
|
|
5681
5879
|
);
|
|
5682
5880
|
return ts19.stringify(define);
|
|
5683
5881
|
}
|
|
5684
|
-
function buildClientOptions(context) {
|
|
5685
|
-
const
|
|
5686
|
-
ts19.property("
|
|
5687
|
-
).add(
|
|
5688
|
-
|
|
5689
|
-
|
|
5690
|
-
ts19.docComment(
|
|
5691
|
-
"Prisma Accelerate URL allowing the client to connect through Accelerate instead of a direct database."
|
|
5692
|
-
)
|
|
5693
|
-
)
|
|
5694
|
-
).add(ts19.property("adapter", ts19.neverType).optional());
|
|
5695
|
-
const mutuallyExclusiveOptions = ts19.unionType([adapterOption, accelerateUrlOption]);
|
|
5696
|
-
const otherOptions = ts19.objectType().add(
|
|
5882
|
+
function buildClientOptions(context, options) {
|
|
5883
|
+
const clientOptions = ts19.interfaceDeclaration("PrismaClientOptions").add(
|
|
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"))
|
|
5887
|
+
).add(
|
|
5697
5888
|
ts19.property("errorFormat", ts19.namedType("ErrorFormat")).optional().setDocComment(ts19.docComment('@default "colorless"'))
|
|
5698
5889
|
).add(
|
|
5699
5890
|
ts19.property("log", ts19.array(ts19.unionType([ts19.namedType("LogLevel"), ts19.namedType("LogDefinition")]))).optional().setDocComment(ts19.docComment`
|
|
@@ -5718,21 +5909,28 @@ function buildClientOptions(context) {
|
|
|
5718
5909
|
{ emit: 'stdout', level: 'error' }
|
|
5719
5910
|
]
|
|
5720
5911
|
\`\`\`
|
|
5721
|
-
Read more in our [docs](https://
|
|
5912
|
+
Read more in our [docs](https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/logging#the-log-option).
|
|
5722
5913
|
`)
|
|
5723
5914
|
);
|
|
5724
5915
|
const transactionOptions = ts19.objectType().add(ts19.property("maxWait", ts19.numberType).optional()).add(ts19.property("timeout", ts19.numberType).optional());
|
|
5725
5916
|
if (context.dmmf.hasEnumInNamespace("TransactionIsolationLevel", "prisma")) {
|
|
5726
5917
|
transactionOptions.add(ts19.property("isolationLevel", ts19.namedType("TransactionIsolationLevel")).optional());
|
|
5727
5918
|
}
|
|
5728
|
-
|
|
5919
|
+
clientOptions.add(
|
|
5729
5920
|
ts19.property("transactionOptions", transactionOptions).optional().setDocComment(ts19.docComment`
|
|
5730
5921
|
The default values for transactionOptions
|
|
5731
5922
|
maxWait ?= 2000
|
|
5732
5923
|
timeout ?= 5000
|
|
5733
5924
|
`)
|
|
5734
5925
|
);
|
|
5735
|
-
|
|
5926
|
+
if (["library", "client", "wasm-compiler-edge", "wasm-engine-edge"].includes(options.runtimeName)) {
|
|
5927
|
+
clientOptions.add(
|
|
5928
|
+
ts19.property("adapter", ts19.unionType([ts19.namedType("runtime.SqlDriverAdapterFactory"), ts19.namedType("null")])).optional().setDocComment(
|
|
5929
|
+
ts19.docComment("Instance of a Driver Adapter, e.g., like one provided by `@prisma/adapter-planetscale`")
|
|
5930
|
+
)
|
|
5931
|
+
);
|
|
5932
|
+
}
|
|
5933
|
+
clientOptions.add(
|
|
5736
5934
|
ts19.property("omit", ts19.namedType("GlobalOmitConfig")).optional().setDocComment(ts19.docComment`
|
|
5737
5935
|
Global configuration for omitting model fields by default.
|
|
5738
5936
|
|
|
@@ -5748,27 +5946,7 @@ function buildClientOptions(context) {
|
|
|
5748
5946
|
\`\`\`
|
|
5749
5947
|
`)
|
|
5750
5948
|
);
|
|
5751
|
-
|
|
5752
|
-
otherOptions.add(
|
|
5753
|
-
ts19.property("comments", ts19.array(ts19.namedType("runtime.SqlCommenterPlugin"))).optional().setDocComment(ts19.docComment`
|
|
5754
|
-
SQL commenter plugins that add metadata to SQL queries as comments.
|
|
5755
|
-
Comments follow the sqlcommenter format: https://google.github.io/sqlcommenter/
|
|
5756
|
-
|
|
5757
|
-
@example
|
|
5758
|
-
\`\`\`
|
|
5759
|
-
const prisma = new PrismaClient({
|
|
5760
|
-
adapter,
|
|
5761
|
-
comments: [
|
|
5762
|
-
traceContext(),
|
|
5763
|
-
queryInsights(),
|
|
5764
|
-
],
|
|
5765
|
-
})
|
|
5766
|
-
\`\`\`
|
|
5767
|
-
`)
|
|
5768
|
-
);
|
|
5769
|
-
}
|
|
5770
|
-
const prismaClientOptions = ts19.intersectionType([mutuallyExclusiveOptions, otherOptions]);
|
|
5771
|
-
return ts19.typeDeclaration("PrismaClientOptions", prismaClientOptions);
|
|
5949
|
+
return clientOptions;
|
|
5772
5950
|
}
|
|
5773
5951
|
|
|
5774
5952
|
// src/TSClient/GenerateContext.ts
|
|
@@ -5780,32 +5958,26 @@ var GenerateContext = class {
|
|
|
5780
5958
|
outputFileName;
|
|
5781
5959
|
importFileName;
|
|
5782
5960
|
generator;
|
|
5783
|
-
provider;
|
|
5784
5961
|
constructor({
|
|
5785
5962
|
dmmf,
|
|
5786
5963
|
genericArgsInfo,
|
|
5787
5964
|
runtimeBase,
|
|
5788
|
-
runtimeImport,
|
|
5965
|
+
runtimeImport: runtimeImport2,
|
|
5789
5966
|
outputFileName,
|
|
5790
5967
|
importFileName,
|
|
5791
|
-
generator
|
|
5792
|
-
provider
|
|
5968
|
+
generator
|
|
5793
5969
|
}) {
|
|
5794
5970
|
this.dmmf = dmmf;
|
|
5795
5971
|
this.genericArgsInfo = genericArgsInfo;
|
|
5796
5972
|
this.runtimeBase = runtimeBase;
|
|
5797
|
-
this.runtimeImport =
|
|
5973
|
+
this.runtimeImport = runtimeImport2;
|
|
5798
5974
|
this.outputFileName = outputFileName;
|
|
5799
5975
|
this.importFileName = importFileName;
|
|
5800
5976
|
this.generator = generator;
|
|
5801
|
-
this.provider = provider;
|
|
5802
5977
|
}
|
|
5803
5978
|
isPreviewFeatureOn(previewFeature) {
|
|
5804
5979
|
return this.generator?.previewFeatures?.includes(previewFeature) ?? false;
|
|
5805
5980
|
}
|
|
5806
|
-
isSqlProvider() {
|
|
5807
|
-
return this.provider !== "mongodb";
|
|
5808
|
-
}
|
|
5809
5981
|
};
|
|
5810
5982
|
|
|
5811
5983
|
// src/TSClient/TSClient.ts
|
|
@@ -5825,8 +5997,7 @@ var TSClient = class {
|
|
|
5825
5997
|
runtimeImport: `${this.options.runtimeBase}/${this.options.runtimeName}`,
|
|
5826
5998
|
outputFileName: generatedFileNameMapper(this.options.generatedFileExtension),
|
|
5827
5999
|
importFileName: importFileNameMapper(this.options.importFileExtension),
|
|
5828
|
-
generator: this.options.generator
|
|
5829
|
-
provider: this.options.activeProvider
|
|
6000
|
+
generator: this.options.generator
|
|
5830
6001
|
});
|
|
5831
6002
|
const modelNames = Object.values(context.dmmf.typeAndModelMap).filter((model) => context.dmmf.outputTypeMap.model[model.name]).map((model) => model.name);
|
|
5832
6003
|
const modelsFileMap = modelNames.reduce((acc, modelName) => {
|
|
@@ -6119,6 +6290,9 @@ function buildClient({
|
|
|
6119
6290
|
engineVersion,
|
|
6120
6291
|
clientVersion,
|
|
6121
6292
|
activeProvider,
|
|
6293
|
+
postinstall,
|
|
6294
|
+
copyEngine,
|
|
6295
|
+
envPaths,
|
|
6122
6296
|
typedSql,
|
|
6123
6297
|
target,
|
|
6124
6298
|
generatedFileExtension,
|
|
@@ -6126,11 +6300,13 @@ function buildClient({
|
|
|
6126
6300
|
moduleFormat,
|
|
6127
6301
|
tsNoCheckPreamble: tsNoCheckPreamble2
|
|
6128
6302
|
}) {
|
|
6129
|
-
const
|
|
6303
|
+
const clientEngineType = getClientEngineType4(generator);
|
|
6304
|
+
const runtimeName = getRuntimeNameForTarget(target, clientEngineType);
|
|
6130
6305
|
const outputName = generatedFileNameMapper(generatedFileExtension);
|
|
6131
6306
|
const importName = importFileNameMapper(importFileExtension);
|
|
6132
6307
|
const clientOptions = {
|
|
6133
6308
|
dmmf: getPrismaClientDMMF(dmmf),
|
|
6309
|
+
envPaths: envPaths ?? { rootEnvPath: null, schemaEnvPath: void 0 },
|
|
6134
6310
|
datasources,
|
|
6135
6311
|
generator,
|
|
6136
6312
|
binaryPaths,
|
|
@@ -6140,8 +6316,10 @@ function buildClient({
|
|
|
6140
6316
|
clientVersion,
|
|
6141
6317
|
engineVersion,
|
|
6142
6318
|
activeProvider,
|
|
6319
|
+
postinstall,
|
|
6320
|
+
copyEngine,
|
|
6143
6321
|
datamodel,
|
|
6144
|
-
edge: ["wasm-compiler-edge"].includes(runtimeName),
|
|
6322
|
+
edge: ["edge", "wasm-engine-edge", "wasm-compiler-edge", "react-native"].includes(runtimeName),
|
|
6145
6323
|
runtimeName,
|
|
6146
6324
|
target,
|
|
6147
6325
|
generatedFileExtension,
|
|
@@ -6149,6 +6327,9 @@ function buildClient({
|
|
|
6149
6327
|
moduleFormat,
|
|
6150
6328
|
tsNoCheckPreamble: tsNoCheckPreamble2
|
|
6151
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
|
+
}
|
|
6152
6333
|
const client = new TSClient(clientOptions);
|
|
6153
6334
|
let fileMap = client.generateClientFiles();
|
|
6154
6335
|
if (typedSql && typedSql.length > 0) {
|
|
@@ -6202,6 +6383,9 @@ async function generateClient(options) {
|
|
|
6202
6383
|
clientVersion,
|
|
6203
6384
|
engineVersion,
|
|
6204
6385
|
activeProvider,
|
|
6386
|
+
postinstall,
|
|
6387
|
+
envPaths,
|
|
6388
|
+
copyEngine = true,
|
|
6205
6389
|
typedSql,
|
|
6206
6390
|
target,
|
|
6207
6391
|
generatedFileExtension,
|
|
@@ -6209,6 +6393,7 @@ async function generateClient(options) {
|
|
|
6209
6393
|
moduleFormat,
|
|
6210
6394
|
tsNoCheckPreamble: tsNoCheckPreamble2
|
|
6211
6395
|
} = options;
|
|
6396
|
+
const clientEngineType = getClientEngineType4(generator);
|
|
6212
6397
|
const { runtimeBase, outputDir } = await getGenerationDirs(options);
|
|
6213
6398
|
const { prismaClientDmmf, fileMap } = buildClient({
|
|
6214
6399
|
datamodel,
|
|
@@ -6222,6 +6407,9 @@ async function generateClient(options) {
|
|
|
6222
6407
|
clientVersion,
|
|
6223
6408
|
engineVersion,
|
|
6224
6409
|
activeProvider,
|
|
6410
|
+
postinstall,
|
|
6411
|
+
copyEngine,
|
|
6412
|
+
envPaths,
|
|
6225
6413
|
typedSql,
|
|
6226
6414
|
target,
|
|
6227
6415
|
generatedFileExtension,
|
|
@@ -6245,11 +6433,27 @@ To learn more about how to rename models, check out https://pris.ly/d/naming-mod
|
|
|
6245
6433
|
await deleteOutputDir(outputDir);
|
|
6246
6434
|
await (0, import_fs_extra.ensureDir)(outputDir);
|
|
6247
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
|
+
}
|
|
6248
6452
|
}
|
|
6249
6453
|
function writeFileMap(outputDir, fileMap) {
|
|
6250
6454
|
return Promise.all(
|
|
6251
6455
|
Object.entries(fileMap).map(async ([fileName, content]) => {
|
|
6252
|
-
const absolutePath =
|
|
6456
|
+
const absolutePath = path5.join(outputDir, fileName);
|
|
6253
6457
|
await fs2.rm(absolutePath, { recursive: true, force: true });
|
|
6254
6458
|
if (typeof content === "string" || Buffer.isBuffer(content)) {
|
|
6255
6459
|
await fs2.writeFile(absolutePath, content);
|
|
@@ -6338,28 +6542,42 @@ function validateDmmfAgainstDenylists(prismaClientDmmf) {
|
|
|
6338
6542
|
return errorArray.length > 0 ? errorArray : null;
|
|
6339
6543
|
}
|
|
6340
6544
|
async function getGenerationDirs({ runtimeBase, outputDir }) {
|
|
6341
|
-
const normalizedOutputDir =
|
|
6342
|
-
const normalizedRuntimeBase =
|
|
6343
|
-
const userPackageRoot = await packageUp({ cwd:
|
|
6344
|
-
const userProjectRoot = userPackageRoot ?
|
|
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();
|
|
6345
6549
|
return {
|
|
6346
6550
|
runtimeBase: normalizedRuntimeBase,
|
|
6347
6551
|
outputDir: normalizedOutputDir,
|
|
6348
6552
|
projectRoot: userProjectRoot
|
|
6349
6553
|
};
|
|
6350
6554
|
}
|
|
6351
|
-
function getRuntimeNameForTarget(target) {
|
|
6555
|
+
function getRuntimeNameForTarget(target, engineType) {
|
|
6352
6556
|
switch (target) {
|
|
6353
6557
|
case "nodejs":
|
|
6354
6558
|
case "deno":
|
|
6355
|
-
return
|
|
6559
|
+
return getNodeRuntimeName(engineType);
|
|
6356
6560
|
case "workerd":
|
|
6357
6561
|
case "vercel-edge":
|
|
6358
|
-
return "wasm-compiler-edge";
|
|
6562
|
+
return engineType === ClientEngineType3.Client ? "wasm-compiler-edge" : "wasm-engine-edge";
|
|
6563
|
+
case "react-native":
|
|
6564
|
+
return "react-native";
|
|
6359
6565
|
default:
|
|
6360
6566
|
assertNever3(target, "Unknown runtime target");
|
|
6361
6567
|
}
|
|
6362
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
|
+
}
|
|
6363
6581
|
async function deleteOutputDir(outputDir) {
|
|
6364
6582
|
try {
|
|
6365
6583
|
const files = await fs2.readdir(outputDir);
|
|
@@ -6394,12 +6612,14 @@ async function deleteOutputDir(outputDir) {
|
|
|
6394
6612
|
}
|
|
6395
6613
|
|
|
6396
6614
|
// src/generator.ts
|
|
6615
|
+
import { Debug as Debug2 } from "@prisma/debug";
|
|
6397
6616
|
import { enginesVersion } from "@prisma/engines-version";
|
|
6398
|
-
import { parseEnvValue } from "@prisma/internals";
|
|
6617
|
+
import { ClientEngineType as ClientEngineType4, getClientEngineType as getClientEngineType5, parseEnvValue } from "@prisma/internals";
|
|
6399
6618
|
import { getTsconfig } from "get-tsconfig";
|
|
6619
|
+
import { match as match2 } from "ts-pattern";
|
|
6400
6620
|
|
|
6401
6621
|
// package.json
|
|
6402
|
-
var version = "7.
|
|
6622
|
+
var version = "7.3.0-integration-fix-6-19-0-cloudflare-accelerate-engine.1";
|
|
6403
6623
|
|
|
6404
6624
|
// src/module-format.ts
|
|
6405
6625
|
function parseModuleFormat(format) {
|
|
@@ -6442,7 +6662,16 @@ function fromTsConfigModule(module) {
|
|
|
6442
6662
|
}
|
|
6443
6663
|
|
|
6444
6664
|
// src/runtime-targets.ts
|
|
6445
|
-
var supportedPublicRuntimes = [
|
|
6665
|
+
var supportedPublicRuntimes = [
|
|
6666
|
+
"nodejs",
|
|
6667
|
+
"deno",
|
|
6668
|
+
"bun",
|
|
6669
|
+
"workerd",
|
|
6670
|
+
"cloudflare",
|
|
6671
|
+
"vercel-edge",
|
|
6672
|
+
"edge-light",
|
|
6673
|
+
"react-native"
|
|
6674
|
+
];
|
|
6446
6675
|
function parseRuntimeTarget(target) {
|
|
6447
6676
|
switch (target.toLowerCase()) {
|
|
6448
6677
|
case "workerd":
|
|
@@ -6456,6 +6685,8 @@ function parseRuntimeTarget(target) {
|
|
|
6456
6685
|
return "nodejs";
|
|
6457
6686
|
case "deno":
|
|
6458
6687
|
return "deno";
|
|
6688
|
+
case "react-native":
|
|
6689
|
+
return "react-native";
|
|
6459
6690
|
default:
|
|
6460
6691
|
throw new Error(
|
|
6461
6692
|
`Unknown target runtime: "${target}". The available options are: ${supportedPublicRuntimes.map((runtime) => `"${runtime}"`).join(", ")}`
|
|
@@ -6470,6 +6701,7 @@ function parseRuntimeTargetFromUnknown(target) {
|
|
|
6470
6701
|
}
|
|
6471
6702
|
|
|
6472
6703
|
// src/generator.ts
|
|
6704
|
+
var debug2 = Debug2("prisma:client:generator");
|
|
6473
6705
|
var missingOutputErrorMessage = `An output path is required for the \`prisma-client\` generator. Please provide an output path in your schema file:
|
|
6474
6706
|
|
|
6475
6707
|
${dim(`generator client {
|
|
@@ -6488,11 +6720,13 @@ function getOutputPath(config) {
|
|
|
6488
6720
|
var PrismaClientTsGenerator = class {
|
|
6489
6721
|
name = "prisma-client-ts";
|
|
6490
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);
|
|
6491
6725
|
return Promise.resolve({
|
|
6492
6726
|
defaultOutput: getOutputPath(config),
|
|
6493
6727
|
prettyName: "Prisma Client",
|
|
6494
6728
|
version,
|
|
6495
|
-
requiresEngines
|
|
6729
|
+
requiresEngines,
|
|
6496
6730
|
requiresEngineVersion: enginesVersion
|
|
6497
6731
|
});
|
|
6498
6732
|
}
|
|
@@ -6517,6 +6751,7 @@ var PrismaClientTsGenerator = class {
|
|
|
6517
6751
|
schemaPath: options.schemaPath,
|
|
6518
6752
|
binaryPaths: options.binaryPaths,
|
|
6519
6753
|
datasources: options.datasources,
|
|
6754
|
+
envPaths: options.envPaths,
|
|
6520
6755
|
outputDir,
|
|
6521
6756
|
runtimeBase: "@prisma/client/runtime",
|
|
6522
6757
|
dmmf: options.dmmf,
|
|
@@ -6524,6 +6759,8 @@ var PrismaClientTsGenerator = class {
|
|
|
6524
6759
|
engineVersion: options.version,
|
|
6525
6760
|
clientVersion: version,
|
|
6526
6761
|
activeProvider: options.datasources[0]?.activeProvider,
|
|
6762
|
+
postinstall: options.postinstall,
|
|
6763
|
+
copyEngine: !options.noEngine,
|
|
6527
6764
|
typedSql: options.typedSql,
|
|
6528
6765
|
target,
|
|
6529
6766
|
generatedFileExtension,
|