1 | "use strict";
|
2 | var __importDefault = (this && this.__importDefault) || function (mod) {
|
3 | return (mod && mod.__esModule) ? mod : { "default": mod };
|
4 | };
|
5 | Object.defineProperty(exports, "__esModule", { value: true });
|
6 | const log_1 = require("./log");
|
7 | const chalk_1 = __importDefault(require("chalk"));
|
8 | class PrismaQueryEngineError extends Error {
|
9 | constructor(message, code) {
|
10 | super(message);
|
11 | this.code = code;
|
12 | }
|
13 | }
|
14 | exports.PrismaQueryEngineError = PrismaQueryEngineError;
|
15 | function getMessage(log) {
|
16 | if (typeof log === 'string') {
|
17 | return log;
|
18 | }
|
19 | else if (log_1.isRustError(log)) {
|
20 | return log.message;
|
21 | }
|
22 | else if (log.fields && log.fields.message) {
|
23 | return log.fields.message;
|
24 | }
|
25 | else {
|
26 | return JSON.stringify(log);
|
27 | }
|
28 | }
|
29 | exports.getMessage = getMessage;
|
30 | class PrismaClientKnownRequestError extends Error {
|
31 | constructor(message, code, meta) {
|
32 | super(message);
|
33 | this.code = code;
|
34 | this.meta = meta;
|
35 | }
|
36 | }
|
37 | exports.PrismaClientKnownRequestError = PrismaClientKnownRequestError;
|
38 | class PrismaClientUnknownRequestError extends Error {
|
39 | constructor(message) {
|
40 | super(message);
|
41 | }
|
42 | }
|
43 | exports.PrismaClientUnknownRequestError = PrismaClientUnknownRequestError;
|
44 | class PrismaClientRustPanicError extends Error {
|
45 | constructor(message) {
|
46 | super(message);
|
47 | }
|
48 | }
|
49 | exports.PrismaClientRustPanicError = PrismaClientRustPanicError;
|
50 | class PrismaClientInitializationError extends Error {
|
51 | constructor(message) {
|
52 | super(message);
|
53 | }
|
54 | }
|
55 | exports.PrismaClientInitializationError = PrismaClientInitializationError;
|
56 | function mapKeys(obj, mapper) {
|
57 | return Object.entries(obj).reduce((acc, [key, value]) => {
|
58 | acc[mapper(key)] = value;
|
59 | return acc;
|
60 | }, {});
|
61 | }
|
62 | function serializeError(log) {
|
63 | let { target, level, ...rest } = log;
|
64 | const message = log.message || (log.fields && log.fields.message);
|
65 | if (target === 'datamodel') {
|
66 | return chalk_1.default.red.bold('Schema ') + message;
|
67 | }
|
68 | if (target === 'exit') {
|
69 | return chalk_1.default.red.bold('Engine exited ' + JSON.stringify(log));
|
70 | }
|
71 | return chalk_1.default.red(log.message + ' ' + serializeObject(rest));
|
72 | }
|
73 | function serializePanic(log) {
|
74 | const fields = log.fields;
|
75 | return `${chalk_1.default.red.bold('Reason: ')}${chalk_1.default.red(`${fields.reason} in ${chalk_1.default.underline(`${fields.file}:${fields.line}:${fields.column}`)}`)}
|
76 |
|
77 | Please create an issue in the ${chalk_1.default.bold('prisma-client-js')} repo with
|
78 | your \`schema.prisma\` and the Prisma Client method you tried to use 🙏:
|
79 | ${chalk_1.default.underline('https://github.com/prisma/prisma-client-js/issues/new')}\n`;
|
80 | }
|
81 | function serializeObject(obj) {
|
82 | return Object.entries(obj)
|
83 | .map(([key, value]) => `${key}=${JSON.stringify(value)}`)
|
84 | .join(' ');
|
85 | }
|
86 |
|
\ | No newline at end of file |