Add files using upload-large-folder tool
Browse filesThis view is limited to 50 files because it contains too many changes. See raw diff
- backend/node_modules/.prisma/client/client.d.ts +1 -0
- backend/node_modules/.prisma/client/client.js +5 -0
- backend/node_modules/.prisma/client/default.d.ts +1 -0
- backend/node_modules/.prisma/client/default.js +5 -0
- backend/node_modules/.prisma/client/edge.d.ts +1 -0
- backend/node_modules/.prisma/client/edge.js +259 -0
- backend/node_modules/.prisma/client/index-browser.js +246 -0
- backend/node_modules/.prisma/client/index.d.ts +0 -0
- backend/node_modules/.prisma/client/index.js +280 -0
- backend/node_modules/.prisma/client/package.json +183 -0
- backend/node_modules/.prisma/client/query_engine_bg.js +2 -0
- backend/node_modules/.prisma/client/schema.prisma +122 -0
- backend/node_modules/.prisma/client/wasm-edge-light-loader.mjs +5 -0
- backend/node_modules/.prisma/client/wasm-worker-loader.mjs +5 -0
- backend/node_modules/.prisma/client/wasm.d.ts +1 -0
- backend/node_modules/.prisma/client/wasm.js +266 -0
- backend/node_modules/@prisma/config/dist/index.d.ts +650 -0
- backend/node_modules/@prisma/config/dist/index.js +1000 -0
- backend/node_modules/@prisma/engines/dist/index.d.ts +26 -0
- backend/node_modules/@prisma/engines/dist/index.js +112 -0
- backend/node_modules/@prisma/engines/dist/scripts/localinstall.d.ts +1 -0
- backend/node_modules/@prisma/engines/dist/scripts/localinstall.js +2048 -0
- backend/node_modules/@prisma/engines/dist/scripts/postinstall.d.ts +1 -0
- backend/node_modules/@prisma/engines/dist/scripts/postinstall.js +122 -0
- backend/node_modules/@prisma/engines/scripts/postinstall.js +28 -0
- backend/node_modules/@prisma/fetch-engine/dist/chmodPlusX.js +25 -0
- backend/node_modules/@prisma/fetch-engine/dist/chunk-MWVY55RY.js +161 -0
- backend/node_modules/@prisma/fetch-engine/dist/chunk-RXM4EBGR.js +0 -0
- backend/node_modules/@prisma/fetch-engine/dist/downloadZip.js +30 -0
- backend/node_modules/@prisma/fetch-engine/dist/getHash.d.ts +1 -0
- backend/node_modules/@prisma/fetch-engine/dist/index.d.ts +5 -0
- backend/node_modules/@prisma/fetch-engine/dist/utils.js +29 -0
- backend/node_modules/effect/BigInt/package.json +6 -0
- backend/node_modules/effect/Clock/package.json +6 -0
- backend/node_modules/effect/ConfigProvider/package.json +6 -0
- backend/node_modules/effect/ConfigProviderPathPatch/package.json +6 -0
- backend/node_modules/effect/Console/package.json +6 -0
- backend/node_modules/effect/Context/package.json +6 -0
- backend/node_modules/effect/Cron/package.json +6 -0
- backend/node_modules/effect/Data/package.json +6 -0
- backend/node_modules/effect/Duration/package.json +6 -0
- backend/node_modules/effect/Effectable/package.json +6 -0
- backend/node_modules/effect/Either/package.json +6 -0
- backend/node_modules/effect/Equal/package.json +6 -0
- backend/node_modules/effect/ExecutionStrategy/package.json +6 -0
- backend/node_modules/effect/Exit/package.json +6 -0
- backend/node_modules/effect/Fiber/package.json +6 -0
- backend/node_modules/effect/FiberHandle/package.json +6 -0
- backend/node_modules/effect/FiberId/package.json +6 -0
- backend/node_modules/effect/FiberMap/package.json +6 -0
backend/node_modules/.prisma/client/client.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
export * from "./index"
|
backend/node_modules/.prisma/client/client.js
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
/* !!! This is code generated by Prisma. Do not edit directly. !!!
|
| 3 |
+
/* eslint-disable */
|
| 4 |
+
// biome-ignore-all lint: generated file
|
| 5 |
+
module.exports = { ...require('.') }
|
backend/node_modules/.prisma/client/default.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
export * from "./index"
|
backend/node_modules/.prisma/client/default.js
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
/* !!! This is code generated by Prisma. Do not edit directly. !!!
|
| 3 |
+
/* eslint-disable */
|
| 4 |
+
// biome-ignore-all lint: generated file
|
| 5 |
+
module.exports = { ...require('#main-entry-point') }
|
backend/node_modules/.prisma/client/edge.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
export * from "./default"
|
backend/node_modules/.prisma/client/edge.js
ADDED
|
@@ -0,0 +1,259 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
/* !!! This is code generated by Prisma. Do not edit directly. !!!
|
| 3 |
+
/* eslint-disable */
|
| 4 |
+
// biome-ignore-all lint: generated file
|
| 5 |
+
|
| 6 |
+
Object.defineProperty(exports, "__esModule", { value: true });
|
| 7 |
+
|
| 8 |
+
const {
|
| 9 |
+
PrismaClientKnownRequestError,
|
| 10 |
+
PrismaClientUnknownRequestError,
|
| 11 |
+
PrismaClientRustPanicError,
|
| 12 |
+
PrismaClientInitializationError,
|
| 13 |
+
PrismaClientValidationError,
|
| 14 |
+
getPrismaClient,
|
| 15 |
+
sqltag,
|
| 16 |
+
empty,
|
| 17 |
+
join,
|
| 18 |
+
raw,
|
| 19 |
+
skip,
|
| 20 |
+
Decimal,
|
| 21 |
+
Debug,
|
| 22 |
+
objectEnumValues,
|
| 23 |
+
makeStrictEnum,
|
| 24 |
+
Extensions,
|
| 25 |
+
warnOnce,
|
| 26 |
+
defineDmmfProperty,
|
| 27 |
+
Public,
|
| 28 |
+
getRuntime,
|
| 29 |
+
createParam,
|
| 30 |
+
} = require('@prisma/client/runtime/edge.js')
|
| 31 |
+
|
| 32 |
+
|
| 33 |
+
const Prisma = {}
|
| 34 |
+
|
| 35 |
+
exports.Prisma = Prisma
|
| 36 |
+
exports.$Enums = {}
|
| 37 |
+
|
| 38 |
+
/**
|
| 39 |
+
* Prisma Client JS version: 6.19.3
|
| 40 |
+
* Query Engine version: c2990dca591cba766e3b7ef5d9e8a84796e47ab7
|
| 41 |
+
*/
|
| 42 |
+
Prisma.prismaVersion = {
|
| 43 |
+
client: "6.19.3",
|
| 44 |
+
engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7"
|
| 45 |
+
}
|
| 46 |
+
|
| 47 |
+
Prisma.PrismaClientKnownRequestError = PrismaClientKnownRequestError;
|
| 48 |
+
Prisma.PrismaClientUnknownRequestError = PrismaClientUnknownRequestError
|
| 49 |
+
Prisma.PrismaClientRustPanicError = PrismaClientRustPanicError
|
| 50 |
+
Prisma.PrismaClientInitializationError = PrismaClientInitializationError
|
| 51 |
+
Prisma.PrismaClientValidationError = PrismaClientValidationError
|
| 52 |
+
Prisma.Decimal = Decimal
|
| 53 |
+
|
| 54 |
+
/**
|
| 55 |
+
* Re-export of sql-template-tag
|
| 56 |
+
*/
|
| 57 |
+
Prisma.sql = sqltag
|
| 58 |
+
Prisma.empty = empty
|
| 59 |
+
Prisma.join = join
|
| 60 |
+
Prisma.raw = raw
|
| 61 |
+
Prisma.validator = Public.validator
|
| 62 |
+
|
| 63 |
+
/**
|
| 64 |
+
* Extensions
|
| 65 |
+
*/
|
| 66 |
+
Prisma.getExtensionContext = Extensions.getExtensionContext
|
| 67 |
+
Prisma.defineExtension = Extensions.defineExtension
|
| 68 |
+
|
| 69 |
+
/**
|
| 70 |
+
* Shorthand utilities for JSON filtering
|
| 71 |
+
*/
|
| 72 |
+
Prisma.DbNull = objectEnumValues.instances.DbNull
|
| 73 |
+
Prisma.JsonNull = objectEnumValues.instances.JsonNull
|
| 74 |
+
Prisma.AnyNull = objectEnumValues.instances.AnyNull
|
| 75 |
+
|
| 76 |
+
Prisma.NullTypes = {
|
| 77 |
+
DbNull: objectEnumValues.classes.DbNull,
|
| 78 |
+
JsonNull: objectEnumValues.classes.JsonNull,
|
| 79 |
+
AnyNull: objectEnumValues.classes.AnyNull
|
| 80 |
+
}
|
| 81 |
+
|
| 82 |
+
|
| 83 |
+
|
| 84 |
+
|
| 85 |
+
|
| 86 |
+
/**
|
| 87 |
+
* Enums
|
| 88 |
+
*/
|
| 89 |
+
exports.Prisma.TransactionIsolationLevel = makeStrictEnum({
|
| 90 |
+
Serializable: 'Serializable'
|
| 91 |
+
});
|
| 92 |
+
|
| 93 |
+
exports.Prisma.UserScalarFieldEnum = {
|
| 94 |
+
id: 'id',
|
| 95 |
+
email: 'email',
|
| 96 |
+
passwordHash: 'passwordHash',
|
| 97 |
+
isActive: 'isActive',
|
| 98 |
+
telegramChatId: 'telegramChatId',
|
| 99 |
+
createdAt: 'createdAt',
|
| 100 |
+
updatedAt: 'updatedAt'
|
| 101 |
+
};
|
| 102 |
+
|
| 103 |
+
exports.Prisma.MarketScalarFieldEnum = {
|
| 104 |
+
id: 'id',
|
| 105 |
+
question: 'question',
|
| 106 |
+
category: 'category',
|
| 107 |
+
countryCode: 'countryCode',
|
| 108 |
+
yesPrice: 'yesPrice',
|
| 109 |
+
noPrice: 'noPrice',
|
| 110 |
+
volumeEur: 'volumeEur',
|
| 111 |
+
liquidityEur: 'liquidityEur',
|
| 112 |
+
spread: 'spread',
|
| 113 |
+
bestBid: 'bestBid',
|
| 114 |
+
bestAsk: 'bestAsk',
|
| 115 |
+
clobTokenId: 'clobTokenId',
|
| 116 |
+
analyzable: 'analyzable',
|
| 117 |
+
status: 'status',
|
| 118 |
+
closesAt: 'closesAt',
|
| 119 |
+
lastSynced: 'lastSynced'
|
| 120 |
+
};
|
| 121 |
+
|
| 122 |
+
exports.Prisma.AISignalScalarFieldEnum = {
|
| 123 |
+
id: 'id',
|
| 124 |
+
marketId: 'marketId',
|
| 125 |
+
signal: 'signal',
|
| 126 |
+
confidence: 'confidence',
|
| 127 |
+
summary: 'summary',
|
| 128 |
+
keyRisk: 'keyRisk',
|
| 129 |
+
newsCount: 'newsCount',
|
| 130 |
+
modelVersion: 'modelVersion',
|
| 131 |
+
impliedProb: 'impliedProb',
|
| 132 |
+
fairProb: 'fairProb',
|
| 133 |
+
edgePoints: 'edgePoints',
|
| 134 |
+
generatedAt: 'generatedAt'
|
| 135 |
+
};
|
| 136 |
+
|
| 137 |
+
exports.Prisma.PositionScalarFieldEnum = {
|
| 138 |
+
id: 'id',
|
| 139 |
+
userId: 'userId',
|
| 140 |
+
marketId: 'marketId',
|
| 141 |
+
outcome: 'outcome',
|
| 142 |
+
amountEur: 'amountEur',
|
| 143 |
+
entryPrice: 'entryPrice',
|
| 144 |
+
currentPrice: 'currentPrice',
|
| 145 |
+
pnl: 'pnl',
|
| 146 |
+
kellyFraction: 'kellyFraction',
|
| 147 |
+
status: 'status',
|
| 148 |
+
openedAt: 'openedAt',
|
| 149 |
+
closedAt: 'closedAt'
|
| 150 |
+
};
|
| 151 |
+
|
| 152 |
+
exports.Prisma.WatchlistScalarFieldEnum = {
|
| 153 |
+
id: 'id',
|
| 154 |
+
userId: 'userId',
|
| 155 |
+
marketId: 'marketId',
|
| 156 |
+
alertThreshold: 'alertThreshold',
|
| 157 |
+
createdAt: 'createdAt'
|
| 158 |
+
};
|
| 159 |
+
|
| 160 |
+
exports.Prisma.AlertScalarFieldEnum = {
|
| 161 |
+
id: 'id',
|
| 162 |
+
userId: 'userId',
|
| 163 |
+
marketId: 'marketId',
|
| 164 |
+
type: 'type',
|
| 165 |
+
message: 'message',
|
| 166 |
+
sentAt: 'sentAt'
|
| 167 |
+
};
|
| 168 |
+
|
| 169 |
+
exports.Prisma.SortOrder = {
|
| 170 |
+
asc: 'asc',
|
| 171 |
+
desc: 'desc'
|
| 172 |
+
};
|
| 173 |
+
|
| 174 |
+
exports.Prisma.NullsOrder = {
|
| 175 |
+
first: 'first',
|
| 176 |
+
last: 'last'
|
| 177 |
+
};
|
| 178 |
+
|
| 179 |
+
|
| 180 |
+
exports.Prisma.ModelName = {
|
| 181 |
+
User: 'User',
|
| 182 |
+
Market: 'Market',
|
| 183 |
+
AISignal: 'AISignal',
|
| 184 |
+
Position: 'Position',
|
| 185 |
+
Watchlist: 'Watchlist',
|
| 186 |
+
Alert: 'Alert'
|
| 187 |
+
};
|
| 188 |
+
/**
|
| 189 |
+
* Create the Client
|
| 190 |
+
*/
|
| 191 |
+
const config = {
|
| 192 |
+
"generator": {
|
| 193 |
+
"name": "client",
|
| 194 |
+
"provider": {
|
| 195 |
+
"fromEnvVar": null,
|
| 196 |
+
"value": "prisma-client-js"
|
| 197 |
+
},
|
| 198 |
+
"output": {
|
| 199 |
+
"value": "/Users/josesalazar/proyecto-hackaton/backend/node_modules/@prisma/client",
|
| 200 |
+
"fromEnvVar": null
|
| 201 |
+
},
|
| 202 |
+
"config": {
|
| 203 |
+
"engineType": "library"
|
| 204 |
+
},
|
| 205 |
+
"binaryTargets": [
|
| 206 |
+
{
|
| 207 |
+
"fromEnvVar": null,
|
| 208 |
+
"value": "darwin-arm64",
|
| 209 |
+
"native": true
|
| 210 |
+
}
|
| 211 |
+
],
|
| 212 |
+
"previewFeatures": [],
|
| 213 |
+
"sourceFilePath": "/Users/josesalazar/proyecto-hackaton/backend/prisma/schema.prisma"
|
| 214 |
+
},
|
| 215 |
+
"relativeEnvPaths": {
|
| 216 |
+
"rootEnvPath": null,
|
| 217 |
+
"schemaEnvPath": "../../../.env"
|
| 218 |
+
},
|
| 219 |
+
"relativePath": "../../../prisma",
|
| 220 |
+
"clientVersion": "6.19.3",
|
| 221 |
+
"engineVersion": "c2990dca591cba766e3b7ef5d9e8a84796e47ab7",
|
| 222 |
+
"datasourceNames": [
|
| 223 |
+
"db"
|
| 224 |
+
],
|
| 225 |
+
"activeProvider": "sqlite",
|
| 226 |
+
"postinstall": false,
|
| 227 |
+
"inlineDatasources": {
|
| 228 |
+
"db": {
|
| 229 |
+
"url": {
|
| 230 |
+
"fromEnvVar": "DATABASE_URL",
|
| 231 |
+
"value": null
|
| 232 |
+
}
|
| 233 |
+
}
|
| 234 |
+
},
|
| 235 |
+
"inlineSchema": "/**\n * Schema de Prisma ORM para base de datos SQLite.\n * Define 6 modelos: User, Market, AISignal, Position, Watchlist, Alert.\n * Relaciones:\n * - Market 1:N AISignal, Position, Watchlist, Alert\n * - User 1:N Position, Watchlist, Alert\n * No modificar sin consenso del equipo. Generar migraciones con:\n * npx prisma migrate dev\n * npx prisma generate\n */\n\ngenerator client {\n provider = \"prisma-client-js\"\n}\n\ndatasource db {\n provider = \"sqlite\"\n url = env(\"DATABASE_URL\")\n}\n\nmodel User {\n id Int @id @default(autoincrement())\n email String @unique\n passwordHash String\n isActive Boolean @default(true)\n telegramChatId String? // Configurado manualmente para demo\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n positions Position[]\n watchlist Watchlist[]\n alerts Alert[]\n}\n\nmodel Market {\n id String @id // ID nativo de Polymarket\n question String // Texto de la pregunta del mercado\n category String? // politics | crypto | economics | sports\n countryCode String? // ISO2 — usado por Leaflet para burbujas\n yesPrice Float? // Precio YES: 0.0 a 1.0\n noPrice Float? // Precio NO: 0.0 a 1.0\n volumeEur Float? // Volumen en Eur\n liquidityEur Float? // Liquidez en Eur\n spread Float? // Bid/ask spread (0-1, ej 0.02 = 2c)\n bestBid Float? // Mejor oferta de compra\n bestAsk Float? // Mejor oferta de venta\n clobTokenId String? // YES outcome CLOB token ID (para prices-history)\n analyzable Boolean @default(true) // Si la IA tiene edge plausible aqui\n status String @default(\"active\") // active | closed | resolved\n closesAt DateTime? // Fecha de cierre del mercado\n lastSynced DateTime @default(now()) // Ultima sincronizacion de precios\n\n signals AISignal[]\n positions Position[]\n watchlist Watchlist[]\n alerts Alert[]\n}\n\nmodel AISignal {\n id Int @id @default(autoincrement())\n marketId String\n market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)\n signal String // bullish | bearish | neutral\n confidence Float // 0.0 a 1.0\n summary String? // 2 frases generadas por Qwen3\n keyRisk String? // 1 frase de riesgo principal\n newsCount Int @default(0) // Titulares relevantes usados\n modelVersion String @default(\"Qwen3-8B\") // Modelo LLM que genero la senal\n impliedProb Float? // Probabilidad implicita YES al generar (0-1)\n fairProb Float? // Probabilidad \"justa\" segun IA (0-1)\n edgePoints Float? // (fairProb - impliedProb) * 100, signo conserva direccion\n generatedAt DateTime @default(now())\n\n @@index([marketId, generatedAt])\n}\n\nmodel Position {\n id Int @id @default(autoincrement())\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n marketId String\n market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)\n outcome String // YES | NO\n amountEur Float // Capital virtual apostado\n entryPrice Float // Precio al abrir la posicion\n currentPrice Float? // Precio actual (actualizado por scheduler)\n pnl Float @default(0) // Profit and Loss calculado\n kellyFraction Float? // Fraccion de Kelly al abrir\n status String @default(\"open\") // open | closed\n openedAt DateTime @default(now())\n closedAt DateTime?\n\n @@index([userId, status])\n @@index([marketId])\n}\n\nmodel Watchlist {\n id Int @id @default(autoincrement())\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n marketId String\n market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)\n alertThreshold Float? // Umbral de precio para alerta Telegram\n createdAt DateTime @default(now())\n\n @@unique([userId, marketId])\n @@index([userId])\n}\n\nmodel Alert {\n id Int @id @default(autoincrement())\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n marketId String\n market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)\n type String // price_threshold | signal_change\n message String // Texto enviado por Telegram\n sentAt DateTime @default(now())\n\n @@index([userId, sentAt])\n @@index([marketId])\n}\n",
|
| 236 |
+
"inlineSchemaHash": "317e51352744228f8aa2577b7d08529ce57f6e47ee90dbf1318c8edc1a7164fb",
|
| 237 |
+
"copyEngine": true
|
| 238 |
+
}
|
| 239 |
+
config.dirname = '/'
|
| 240 |
+
|
| 241 |
+
config.runtimeDataModel = JSON.parse("{\"models\":{\"User\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"passwordHash\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"isActive\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":true,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"telegramChatId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":true},{\"name\":\"positions\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Position\",\"nativeType\":null,\"relationName\":\"PositionToUser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"watchlist\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Watchlist\",\"nativeType\":null,\"relationName\":\"UserToWatchlist\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"alerts\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Alert\",\"nativeType\":null,\"relationName\":\"AlertToUser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Market\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"question\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"category\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"countryCode\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"yesPrice\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"noPrice\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"volumeEur\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"liquidityEur\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"spread\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"bestBid\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"bestAsk\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"clobTokenId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"analyzable\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":true,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"status\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":\"active\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"closesAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"lastSynced\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"signals\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"AISignal\",\"nativeType\":null,\"relationName\":\"AISignalToMarket\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"positions\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Position\",\"nativeType\":null,\"relationName\":\"MarketToPosition\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"watchlist\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Watchlist\",\"nativeType\":null,\"relationName\":\"MarketToWatchlist\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"alerts\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Alert\",\"nativeType\":null,\"relationName\":\"AlertToMarket\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"AISignal\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"marketId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"market\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Market\",\"nativeType\":null,\"relationName\":\"AISignalToMarket\",\"relationFromFields\":[\"marketId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"signal\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"confidence\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"summary\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"keyRisk\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"newsCount\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":0,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modelVersion\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":\"Qwen3-8B\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"impliedProb\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"fairProb\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"edgePoints\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"generatedAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Position\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"PositionToUser\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"marketId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"market\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Market\",\"nativeType\":null,\"relationName\":\"MarketToPosition\",\"relationFromFields\":[\"marketId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"outcome\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"amountEur\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"entryPrice\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"currentPrice\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"pnl\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Float\",\"nativeType\":null,\"default\":0,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"kellyFraction\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"status\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":\"open\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"openedAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"closedAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Watchlist\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"UserToWatchlist\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"marketId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"market\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Market\",\"nativeType\":null,\"relationName\":\"MarketToWatchlist\",\"relationFromFields\":[\"marketId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"alertThreshold\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[[\"userId\",\"marketId\"]],\"uniqueIndexes\":[{\"name\":null,\"fields\":[\"userId\",\"marketId\"]}],\"isGenerated\":false},\"Alert\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"AlertToUser\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"marketId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"market\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Market\",\"nativeType\":null,\"relationName\":\"AlertToMarket\",\"relationFromFields\":[\"marketId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"type\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"message\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sentAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false}},\"enums\":{},\"types\":{}}")
|
| 242 |
+
defineDmmfProperty(exports.Prisma, config.runtimeDataModel)
|
| 243 |
+
config.engineWasm = undefined
|
| 244 |
+
config.compilerWasm = undefined
|
| 245 |
+
|
| 246 |
+
config.injectableEdgeEnv = () => ({
|
| 247 |
+
parsed: {
|
| 248 |
+
DATABASE_URL: typeof globalThis !== 'undefined' && globalThis['DATABASE_URL'] || typeof process !== 'undefined' && process.env && process.env.DATABASE_URL || undefined
|
| 249 |
+
}
|
| 250 |
+
})
|
| 251 |
+
|
| 252 |
+
if (typeof globalThis !== 'undefined' && globalThis['DEBUG'] || typeof process !== 'undefined' && process.env && process.env.DEBUG || undefined) {
|
| 253 |
+
Debug.enable(typeof globalThis !== 'undefined' && globalThis['DEBUG'] || typeof process !== 'undefined' && process.env && process.env.DEBUG || undefined)
|
| 254 |
+
}
|
| 255 |
+
|
| 256 |
+
const PrismaClient = getPrismaClient(config)
|
| 257 |
+
exports.PrismaClient = PrismaClient
|
| 258 |
+
Object.assign(exports, Prisma)
|
| 259 |
+
|
backend/node_modules/.prisma/client/index-browser.js
ADDED
|
@@ -0,0 +1,246 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
/* !!! This is code generated by Prisma. Do not edit directly. !!!
|
| 3 |
+
/* eslint-disable */
|
| 4 |
+
// biome-ignore-all lint: generated file
|
| 5 |
+
|
| 6 |
+
Object.defineProperty(exports, "__esModule", { value: true });
|
| 7 |
+
|
| 8 |
+
const {
|
| 9 |
+
Decimal,
|
| 10 |
+
objectEnumValues,
|
| 11 |
+
makeStrictEnum,
|
| 12 |
+
Public,
|
| 13 |
+
getRuntime,
|
| 14 |
+
skip
|
| 15 |
+
} = require('@prisma/client/runtime/index-browser.js')
|
| 16 |
+
|
| 17 |
+
|
| 18 |
+
const Prisma = {}
|
| 19 |
+
|
| 20 |
+
exports.Prisma = Prisma
|
| 21 |
+
exports.$Enums = {}
|
| 22 |
+
|
| 23 |
+
/**
|
| 24 |
+
* Prisma Client JS version: 6.19.3
|
| 25 |
+
* Query Engine version: c2990dca591cba766e3b7ef5d9e8a84796e47ab7
|
| 26 |
+
*/
|
| 27 |
+
Prisma.prismaVersion = {
|
| 28 |
+
client: "6.19.3",
|
| 29 |
+
engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7"
|
| 30 |
+
}
|
| 31 |
+
|
| 32 |
+
Prisma.PrismaClientKnownRequestError = () => {
|
| 33 |
+
const runtimeName = getRuntime().prettyName;
|
| 34 |
+
throw new Error(`PrismaClientKnownRequestError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
| 35 |
+
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
| 36 |
+
)};
|
| 37 |
+
Prisma.PrismaClientUnknownRequestError = () => {
|
| 38 |
+
const runtimeName = getRuntime().prettyName;
|
| 39 |
+
throw new Error(`PrismaClientUnknownRequestError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
| 40 |
+
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
| 41 |
+
)}
|
| 42 |
+
Prisma.PrismaClientRustPanicError = () => {
|
| 43 |
+
const runtimeName = getRuntime().prettyName;
|
| 44 |
+
throw new Error(`PrismaClientRustPanicError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
| 45 |
+
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
| 46 |
+
)}
|
| 47 |
+
Prisma.PrismaClientInitializationError = () => {
|
| 48 |
+
const runtimeName = getRuntime().prettyName;
|
| 49 |
+
throw new Error(`PrismaClientInitializationError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
| 50 |
+
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
| 51 |
+
)}
|
| 52 |
+
Prisma.PrismaClientValidationError = () => {
|
| 53 |
+
const runtimeName = getRuntime().prettyName;
|
| 54 |
+
throw new Error(`PrismaClientValidationError is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
| 55 |
+
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
| 56 |
+
)}
|
| 57 |
+
Prisma.Decimal = Decimal
|
| 58 |
+
|
| 59 |
+
/**
|
| 60 |
+
* Re-export of sql-template-tag
|
| 61 |
+
*/
|
| 62 |
+
Prisma.sql = () => {
|
| 63 |
+
const runtimeName = getRuntime().prettyName;
|
| 64 |
+
throw new Error(`sqltag is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
| 65 |
+
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
| 66 |
+
)}
|
| 67 |
+
Prisma.empty = () => {
|
| 68 |
+
const runtimeName = getRuntime().prettyName;
|
| 69 |
+
throw new Error(`empty is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
| 70 |
+
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
| 71 |
+
)}
|
| 72 |
+
Prisma.join = () => {
|
| 73 |
+
const runtimeName = getRuntime().prettyName;
|
| 74 |
+
throw new Error(`join is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
| 75 |
+
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
| 76 |
+
)}
|
| 77 |
+
Prisma.raw = () => {
|
| 78 |
+
const runtimeName = getRuntime().prettyName;
|
| 79 |
+
throw new Error(`raw is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
| 80 |
+
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
| 81 |
+
)}
|
| 82 |
+
Prisma.validator = Public.validator
|
| 83 |
+
|
| 84 |
+
/**
|
| 85 |
+
* Extensions
|
| 86 |
+
*/
|
| 87 |
+
Prisma.getExtensionContext = () => {
|
| 88 |
+
const runtimeName = getRuntime().prettyName;
|
| 89 |
+
throw new Error(`Extensions.getExtensionContext is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
| 90 |
+
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
| 91 |
+
)}
|
| 92 |
+
Prisma.defineExtension = () => {
|
| 93 |
+
const runtimeName = getRuntime().prettyName;
|
| 94 |
+
throw new Error(`Extensions.defineExtension is unable to run in this browser environment, or has been bundled for the browser (running in ${runtimeName}).
|
| 95 |
+
In case this error is unexpected for you, please report it in https://pris.ly/prisma-prisma-bug-report`,
|
| 96 |
+
)}
|
| 97 |
+
|
| 98 |
+
/**
|
| 99 |
+
* Shorthand utilities for JSON filtering
|
| 100 |
+
*/
|
| 101 |
+
Prisma.DbNull = objectEnumValues.instances.DbNull
|
| 102 |
+
Prisma.JsonNull = objectEnumValues.instances.JsonNull
|
| 103 |
+
Prisma.AnyNull = objectEnumValues.instances.AnyNull
|
| 104 |
+
|
| 105 |
+
Prisma.NullTypes = {
|
| 106 |
+
DbNull: objectEnumValues.classes.DbNull,
|
| 107 |
+
JsonNull: objectEnumValues.classes.JsonNull,
|
| 108 |
+
AnyNull: objectEnumValues.classes.AnyNull
|
| 109 |
+
}
|
| 110 |
+
|
| 111 |
+
|
| 112 |
+
|
| 113 |
+
/**
|
| 114 |
+
* Enums
|
| 115 |
+
*/
|
| 116 |
+
|
| 117 |
+
exports.Prisma.TransactionIsolationLevel = makeStrictEnum({
|
| 118 |
+
Serializable: 'Serializable'
|
| 119 |
+
});
|
| 120 |
+
|
| 121 |
+
exports.Prisma.UserScalarFieldEnum = {
|
| 122 |
+
id: 'id',
|
| 123 |
+
email: 'email',
|
| 124 |
+
passwordHash: 'passwordHash',
|
| 125 |
+
isActive: 'isActive',
|
| 126 |
+
telegramChatId: 'telegramChatId',
|
| 127 |
+
createdAt: 'createdAt',
|
| 128 |
+
updatedAt: 'updatedAt'
|
| 129 |
+
};
|
| 130 |
+
|
| 131 |
+
exports.Prisma.MarketScalarFieldEnum = {
|
| 132 |
+
id: 'id',
|
| 133 |
+
question: 'question',
|
| 134 |
+
category: 'category',
|
| 135 |
+
countryCode: 'countryCode',
|
| 136 |
+
yesPrice: 'yesPrice',
|
| 137 |
+
noPrice: 'noPrice',
|
| 138 |
+
volumeEur: 'volumeEur',
|
| 139 |
+
liquidityEur: 'liquidityEur',
|
| 140 |
+
spread: 'spread',
|
| 141 |
+
bestBid: 'bestBid',
|
| 142 |
+
bestAsk: 'bestAsk',
|
| 143 |
+
clobTokenId: 'clobTokenId',
|
| 144 |
+
analyzable: 'analyzable',
|
| 145 |
+
status: 'status',
|
| 146 |
+
closesAt: 'closesAt',
|
| 147 |
+
lastSynced: 'lastSynced'
|
| 148 |
+
};
|
| 149 |
+
|
| 150 |
+
exports.Prisma.AISignalScalarFieldEnum = {
|
| 151 |
+
id: 'id',
|
| 152 |
+
marketId: 'marketId',
|
| 153 |
+
signal: 'signal',
|
| 154 |
+
confidence: 'confidence',
|
| 155 |
+
summary: 'summary',
|
| 156 |
+
keyRisk: 'keyRisk',
|
| 157 |
+
newsCount: 'newsCount',
|
| 158 |
+
modelVersion: 'modelVersion',
|
| 159 |
+
impliedProb: 'impliedProb',
|
| 160 |
+
fairProb: 'fairProb',
|
| 161 |
+
edgePoints: 'edgePoints',
|
| 162 |
+
generatedAt: 'generatedAt'
|
| 163 |
+
};
|
| 164 |
+
|
| 165 |
+
exports.Prisma.PositionScalarFieldEnum = {
|
| 166 |
+
id: 'id',
|
| 167 |
+
userId: 'userId',
|
| 168 |
+
marketId: 'marketId',
|
| 169 |
+
outcome: 'outcome',
|
| 170 |
+
amountEur: 'amountEur',
|
| 171 |
+
entryPrice: 'entryPrice',
|
| 172 |
+
currentPrice: 'currentPrice',
|
| 173 |
+
pnl: 'pnl',
|
| 174 |
+
kellyFraction: 'kellyFraction',
|
| 175 |
+
status: 'status',
|
| 176 |
+
openedAt: 'openedAt',
|
| 177 |
+
closedAt: 'closedAt'
|
| 178 |
+
};
|
| 179 |
+
|
| 180 |
+
exports.Prisma.WatchlistScalarFieldEnum = {
|
| 181 |
+
id: 'id',
|
| 182 |
+
userId: 'userId',
|
| 183 |
+
marketId: 'marketId',
|
| 184 |
+
alertThreshold: 'alertThreshold',
|
| 185 |
+
createdAt: 'createdAt'
|
| 186 |
+
};
|
| 187 |
+
|
| 188 |
+
exports.Prisma.AlertScalarFieldEnum = {
|
| 189 |
+
id: 'id',
|
| 190 |
+
userId: 'userId',
|
| 191 |
+
marketId: 'marketId',
|
| 192 |
+
type: 'type',
|
| 193 |
+
message: 'message',
|
| 194 |
+
sentAt: 'sentAt'
|
| 195 |
+
};
|
| 196 |
+
|
| 197 |
+
exports.Prisma.SortOrder = {
|
| 198 |
+
asc: 'asc',
|
| 199 |
+
desc: 'desc'
|
| 200 |
+
};
|
| 201 |
+
|
| 202 |
+
exports.Prisma.NullsOrder = {
|
| 203 |
+
first: 'first',
|
| 204 |
+
last: 'last'
|
| 205 |
+
};
|
| 206 |
+
|
| 207 |
+
|
| 208 |
+
exports.Prisma.ModelName = {
|
| 209 |
+
User: 'User',
|
| 210 |
+
Market: 'Market',
|
| 211 |
+
AISignal: 'AISignal',
|
| 212 |
+
Position: 'Position',
|
| 213 |
+
Watchlist: 'Watchlist',
|
| 214 |
+
Alert: 'Alert'
|
| 215 |
+
};
|
| 216 |
+
|
| 217 |
+
/**
|
| 218 |
+
* This is a stub Prisma Client that will error at runtime if called.
|
| 219 |
+
*/
|
| 220 |
+
class PrismaClient {
|
| 221 |
+
constructor() {
|
| 222 |
+
return new Proxy(this, {
|
| 223 |
+
get(target, prop) {
|
| 224 |
+
let message
|
| 225 |
+
const runtime = getRuntime()
|
| 226 |
+
if (runtime.isEdge) {
|
| 227 |
+
message = `PrismaClient is not configured to run in ${runtime.prettyName}. In order to run Prisma Client on edge runtime, either:
|
| 228 |
+
- Use Prisma Accelerate: https://pris.ly/d/accelerate
|
| 229 |
+
- Use Driver Adapters: https://pris.ly/d/driver-adapters
|
| 230 |
+
`;
|
| 231 |
+
} else {
|
| 232 |
+
message = 'PrismaClient is unable to run in this browser environment, or has been bundled for the browser (running in `' + runtime.prettyName + '`).'
|
| 233 |
+
}
|
| 234 |
+
|
| 235 |
+
message += `
|
| 236 |
+
If this is unexpected, please open an issue: https://pris.ly/prisma-prisma-bug-report`
|
| 237 |
+
|
| 238 |
+
throw new Error(message)
|
| 239 |
+
}
|
| 240 |
+
})
|
| 241 |
+
}
|
| 242 |
+
}
|
| 243 |
+
|
| 244 |
+
exports.PrismaClient = PrismaClient
|
| 245 |
+
|
| 246 |
+
Object.assign(exports, Prisma)
|
backend/node_modules/.prisma/client/index.d.ts
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
backend/node_modules/.prisma/client/index.js
ADDED
|
@@ -0,0 +1,280 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
/* !!! This is code generated by Prisma. Do not edit directly. !!!
|
| 3 |
+
/* eslint-disable */
|
| 4 |
+
// biome-ignore-all lint: generated file
|
| 5 |
+
|
| 6 |
+
Object.defineProperty(exports, "__esModule", { value: true });
|
| 7 |
+
|
| 8 |
+
const {
|
| 9 |
+
PrismaClientKnownRequestError,
|
| 10 |
+
PrismaClientUnknownRequestError,
|
| 11 |
+
PrismaClientRustPanicError,
|
| 12 |
+
PrismaClientInitializationError,
|
| 13 |
+
PrismaClientValidationError,
|
| 14 |
+
getPrismaClient,
|
| 15 |
+
sqltag,
|
| 16 |
+
empty,
|
| 17 |
+
join,
|
| 18 |
+
raw,
|
| 19 |
+
skip,
|
| 20 |
+
Decimal,
|
| 21 |
+
Debug,
|
| 22 |
+
objectEnumValues,
|
| 23 |
+
makeStrictEnum,
|
| 24 |
+
Extensions,
|
| 25 |
+
warnOnce,
|
| 26 |
+
defineDmmfProperty,
|
| 27 |
+
Public,
|
| 28 |
+
getRuntime,
|
| 29 |
+
createParam,
|
| 30 |
+
} = require('@prisma/client/runtime/library.js')
|
| 31 |
+
|
| 32 |
+
|
| 33 |
+
const Prisma = {}
|
| 34 |
+
|
| 35 |
+
exports.Prisma = Prisma
|
| 36 |
+
exports.$Enums = {}
|
| 37 |
+
|
| 38 |
+
/**
|
| 39 |
+
* Prisma Client JS version: 6.19.3
|
| 40 |
+
* Query Engine version: c2990dca591cba766e3b7ef5d9e8a84796e47ab7
|
| 41 |
+
*/
|
| 42 |
+
Prisma.prismaVersion = {
|
| 43 |
+
client: "6.19.3",
|
| 44 |
+
engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7"
|
| 45 |
+
}
|
| 46 |
+
|
| 47 |
+
Prisma.PrismaClientKnownRequestError = PrismaClientKnownRequestError;
|
| 48 |
+
Prisma.PrismaClientUnknownRequestError = PrismaClientUnknownRequestError
|
| 49 |
+
Prisma.PrismaClientRustPanicError = PrismaClientRustPanicError
|
| 50 |
+
Prisma.PrismaClientInitializationError = PrismaClientInitializationError
|
| 51 |
+
Prisma.PrismaClientValidationError = PrismaClientValidationError
|
| 52 |
+
Prisma.Decimal = Decimal
|
| 53 |
+
|
| 54 |
+
/**
|
| 55 |
+
* Re-export of sql-template-tag
|
| 56 |
+
*/
|
| 57 |
+
Prisma.sql = sqltag
|
| 58 |
+
Prisma.empty = empty
|
| 59 |
+
Prisma.join = join
|
| 60 |
+
Prisma.raw = raw
|
| 61 |
+
Prisma.validator = Public.validator
|
| 62 |
+
|
| 63 |
+
/**
|
| 64 |
+
* Extensions
|
| 65 |
+
*/
|
| 66 |
+
Prisma.getExtensionContext = Extensions.getExtensionContext
|
| 67 |
+
Prisma.defineExtension = Extensions.defineExtension
|
| 68 |
+
|
| 69 |
+
/**
|
| 70 |
+
* Shorthand utilities for JSON filtering
|
| 71 |
+
*/
|
| 72 |
+
Prisma.DbNull = objectEnumValues.instances.DbNull
|
| 73 |
+
Prisma.JsonNull = objectEnumValues.instances.JsonNull
|
| 74 |
+
Prisma.AnyNull = objectEnumValues.instances.AnyNull
|
| 75 |
+
|
| 76 |
+
Prisma.NullTypes = {
|
| 77 |
+
DbNull: objectEnumValues.classes.DbNull,
|
| 78 |
+
JsonNull: objectEnumValues.classes.JsonNull,
|
| 79 |
+
AnyNull: objectEnumValues.classes.AnyNull
|
| 80 |
+
}
|
| 81 |
+
|
| 82 |
+
|
| 83 |
+
|
| 84 |
+
|
| 85 |
+
const path = require('path')
|
| 86 |
+
|
| 87 |
+
/**
|
| 88 |
+
* Enums
|
| 89 |
+
*/
|
| 90 |
+
exports.Prisma.TransactionIsolationLevel = makeStrictEnum({
|
| 91 |
+
Serializable: 'Serializable'
|
| 92 |
+
});
|
| 93 |
+
|
| 94 |
+
exports.Prisma.UserScalarFieldEnum = {
|
| 95 |
+
id: 'id',
|
| 96 |
+
email: 'email',
|
| 97 |
+
passwordHash: 'passwordHash',
|
| 98 |
+
isActive: 'isActive',
|
| 99 |
+
telegramChatId: 'telegramChatId',
|
| 100 |
+
createdAt: 'createdAt',
|
| 101 |
+
updatedAt: 'updatedAt'
|
| 102 |
+
};
|
| 103 |
+
|
| 104 |
+
exports.Prisma.MarketScalarFieldEnum = {
|
| 105 |
+
id: 'id',
|
| 106 |
+
question: 'question',
|
| 107 |
+
category: 'category',
|
| 108 |
+
countryCode: 'countryCode',
|
| 109 |
+
yesPrice: 'yesPrice',
|
| 110 |
+
noPrice: 'noPrice',
|
| 111 |
+
volumeEur: 'volumeEur',
|
| 112 |
+
liquidityEur: 'liquidityEur',
|
| 113 |
+
spread: 'spread',
|
| 114 |
+
bestBid: 'bestBid',
|
| 115 |
+
bestAsk: 'bestAsk',
|
| 116 |
+
clobTokenId: 'clobTokenId',
|
| 117 |
+
analyzable: 'analyzable',
|
| 118 |
+
status: 'status',
|
| 119 |
+
closesAt: 'closesAt',
|
| 120 |
+
lastSynced: 'lastSynced'
|
| 121 |
+
};
|
| 122 |
+
|
| 123 |
+
exports.Prisma.AISignalScalarFieldEnum = {
|
| 124 |
+
id: 'id',
|
| 125 |
+
marketId: 'marketId',
|
| 126 |
+
signal: 'signal',
|
| 127 |
+
confidence: 'confidence',
|
| 128 |
+
summary: 'summary',
|
| 129 |
+
keyRisk: 'keyRisk',
|
| 130 |
+
newsCount: 'newsCount',
|
| 131 |
+
modelVersion: 'modelVersion',
|
| 132 |
+
impliedProb: 'impliedProb',
|
| 133 |
+
fairProb: 'fairProb',
|
| 134 |
+
edgePoints: 'edgePoints',
|
| 135 |
+
generatedAt: 'generatedAt'
|
| 136 |
+
};
|
| 137 |
+
|
| 138 |
+
exports.Prisma.PositionScalarFieldEnum = {
|
| 139 |
+
id: 'id',
|
| 140 |
+
userId: 'userId',
|
| 141 |
+
marketId: 'marketId',
|
| 142 |
+
outcome: 'outcome',
|
| 143 |
+
amountEur: 'amountEur',
|
| 144 |
+
entryPrice: 'entryPrice',
|
| 145 |
+
currentPrice: 'currentPrice',
|
| 146 |
+
pnl: 'pnl',
|
| 147 |
+
kellyFraction: 'kellyFraction',
|
| 148 |
+
status: 'status',
|
| 149 |
+
openedAt: 'openedAt',
|
| 150 |
+
closedAt: 'closedAt'
|
| 151 |
+
};
|
| 152 |
+
|
| 153 |
+
exports.Prisma.WatchlistScalarFieldEnum = {
|
| 154 |
+
id: 'id',
|
| 155 |
+
userId: 'userId',
|
| 156 |
+
marketId: 'marketId',
|
| 157 |
+
alertThreshold: 'alertThreshold',
|
| 158 |
+
createdAt: 'createdAt'
|
| 159 |
+
};
|
| 160 |
+
|
| 161 |
+
exports.Prisma.AlertScalarFieldEnum = {
|
| 162 |
+
id: 'id',
|
| 163 |
+
userId: 'userId',
|
| 164 |
+
marketId: 'marketId',
|
| 165 |
+
type: 'type',
|
| 166 |
+
message: 'message',
|
| 167 |
+
sentAt: 'sentAt'
|
| 168 |
+
};
|
| 169 |
+
|
| 170 |
+
exports.Prisma.SortOrder = {
|
| 171 |
+
asc: 'asc',
|
| 172 |
+
desc: 'desc'
|
| 173 |
+
};
|
| 174 |
+
|
| 175 |
+
exports.Prisma.NullsOrder = {
|
| 176 |
+
first: 'first',
|
| 177 |
+
last: 'last'
|
| 178 |
+
};
|
| 179 |
+
|
| 180 |
+
|
| 181 |
+
exports.Prisma.ModelName = {
|
| 182 |
+
User: 'User',
|
| 183 |
+
Market: 'Market',
|
| 184 |
+
AISignal: 'AISignal',
|
| 185 |
+
Position: 'Position',
|
| 186 |
+
Watchlist: 'Watchlist',
|
| 187 |
+
Alert: 'Alert'
|
| 188 |
+
};
|
| 189 |
+
/**
|
| 190 |
+
* Create the Client
|
| 191 |
+
*/
|
| 192 |
+
const config = {
|
| 193 |
+
"generator": {
|
| 194 |
+
"name": "client",
|
| 195 |
+
"provider": {
|
| 196 |
+
"fromEnvVar": null,
|
| 197 |
+
"value": "prisma-client-js"
|
| 198 |
+
},
|
| 199 |
+
"output": {
|
| 200 |
+
"value": "/Users/josesalazar/proyecto-hackaton/backend/node_modules/@prisma/client",
|
| 201 |
+
"fromEnvVar": null
|
| 202 |
+
},
|
| 203 |
+
"config": {
|
| 204 |
+
"engineType": "library"
|
| 205 |
+
},
|
| 206 |
+
"binaryTargets": [
|
| 207 |
+
{
|
| 208 |
+
"fromEnvVar": null,
|
| 209 |
+
"value": "darwin-arm64",
|
| 210 |
+
"native": true
|
| 211 |
+
}
|
| 212 |
+
],
|
| 213 |
+
"previewFeatures": [],
|
| 214 |
+
"sourceFilePath": "/Users/josesalazar/proyecto-hackaton/backend/prisma/schema.prisma"
|
| 215 |
+
},
|
| 216 |
+
"relativeEnvPaths": {
|
| 217 |
+
"rootEnvPath": null,
|
| 218 |
+
"schemaEnvPath": "../../../.env"
|
| 219 |
+
},
|
| 220 |
+
"relativePath": "../../../prisma",
|
| 221 |
+
"clientVersion": "6.19.3",
|
| 222 |
+
"engineVersion": "c2990dca591cba766e3b7ef5d9e8a84796e47ab7",
|
| 223 |
+
"datasourceNames": [
|
| 224 |
+
"db"
|
| 225 |
+
],
|
| 226 |
+
"activeProvider": "sqlite",
|
| 227 |
+
"postinstall": false,
|
| 228 |
+
"inlineDatasources": {
|
| 229 |
+
"db": {
|
| 230 |
+
"url": {
|
| 231 |
+
"fromEnvVar": "DATABASE_URL",
|
| 232 |
+
"value": null
|
| 233 |
+
}
|
| 234 |
+
}
|
| 235 |
+
},
|
| 236 |
+
"inlineSchema": "/**\n * Schema de Prisma ORM para base de datos SQLite.\n * Define 6 modelos: User, Market, AISignal, Position, Watchlist, Alert.\n * Relaciones:\n * - Market 1:N AISignal, Position, Watchlist, Alert\n * - User 1:N Position, Watchlist, Alert\n * No modificar sin consenso del equipo. Generar migraciones con:\n * npx prisma migrate dev\n * npx prisma generate\n */\n\ngenerator client {\n provider = \"prisma-client-js\"\n}\n\ndatasource db {\n provider = \"sqlite\"\n url = env(\"DATABASE_URL\")\n}\n\nmodel User {\n id Int @id @default(autoincrement())\n email String @unique\n passwordHash String\n isActive Boolean @default(true)\n telegramChatId String? // Configurado manualmente para demo\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n positions Position[]\n watchlist Watchlist[]\n alerts Alert[]\n}\n\nmodel Market {\n id String @id // ID nativo de Polymarket\n question String // Texto de la pregunta del mercado\n category String? // politics | crypto | economics | sports\n countryCode String? // ISO2 — usado por Leaflet para burbujas\n yesPrice Float? // Precio YES: 0.0 a 1.0\n noPrice Float? // Precio NO: 0.0 a 1.0\n volumeEur Float? // Volumen en Eur\n liquidityEur Float? // Liquidez en Eur\n spread Float? // Bid/ask spread (0-1, ej 0.02 = 2c)\n bestBid Float? // Mejor oferta de compra\n bestAsk Float? // Mejor oferta de venta\n clobTokenId String? // YES outcome CLOB token ID (para prices-history)\n analyzable Boolean @default(true) // Si la IA tiene edge plausible aqui\n status String @default(\"active\") // active | closed | resolved\n closesAt DateTime? // Fecha de cierre del mercado\n lastSynced DateTime @default(now()) // Ultima sincronizacion de precios\n\n signals AISignal[]\n positions Position[]\n watchlist Watchlist[]\n alerts Alert[]\n}\n\nmodel AISignal {\n id Int @id @default(autoincrement())\n marketId String\n market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)\n signal String // bullish | bearish | neutral\n confidence Float // 0.0 a 1.0\n summary String? // 2 frases generadas por Qwen3\n keyRisk String? // 1 frase de riesgo principal\n newsCount Int @default(0) // Titulares relevantes usados\n modelVersion String @default(\"Qwen3-8B\") // Modelo LLM que genero la senal\n impliedProb Float? // Probabilidad implicita YES al generar (0-1)\n fairProb Float? // Probabilidad \"justa\" segun IA (0-1)\n edgePoints Float? // (fairProb - impliedProb) * 100, signo conserva direccion\n generatedAt DateTime @default(now())\n\n @@index([marketId, generatedAt])\n}\n\nmodel Position {\n id Int @id @default(autoincrement())\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n marketId String\n market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)\n outcome String // YES | NO\n amountEur Float // Capital virtual apostado\n entryPrice Float // Precio al abrir la posicion\n currentPrice Float? // Precio actual (actualizado por scheduler)\n pnl Float @default(0) // Profit and Loss calculado\n kellyFraction Float? // Fraccion de Kelly al abrir\n status String @default(\"open\") // open | closed\n openedAt DateTime @default(now())\n closedAt DateTime?\n\n @@index([userId, status])\n @@index([marketId])\n}\n\nmodel Watchlist {\n id Int @id @default(autoincrement())\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n marketId String\n market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)\n alertThreshold Float? // Umbral de precio para alerta Telegram\n createdAt DateTime @default(now())\n\n @@unique([userId, marketId])\n @@index([userId])\n}\n\nmodel Alert {\n id Int @id @default(autoincrement())\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n marketId String\n market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)\n type String // price_threshold | signal_change\n message String // Texto enviado por Telegram\n sentAt DateTime @default(now())\n\n @@index([userId, sentAt])\n @@index([marketId])\n}\n",
|
| 237 |
+
"inlineSchemaHash": "317e51352744228f8aa2577b7d08529ce57f6e47ee90dbf1318c8edc1a7164fb",
|
| 238 |
+
"copyEngine": true
|
| 239 |
+
}
|
| 240 |
+
|
| 241 |
+
const fs = require('fs')
|
| 242 |
+
|
| 243 |
+
config.dirname = __dirname
|
| 244 |
+
if (!fs.existsSync(path.join(__dirname, 'schema.prisma'))) {
|
| 245 |
+
const alternativePaths = [
|
| 246 |
+
"node_modules/.prisma/client",
|
| 247 |
+
".prisma/client",
|
| 248 |
+
]
|
| 249 |
+
|
| 250 |
+
const alternativePath = alternativePaths.find((altPath) => {
|
| 251 |
+
return fs.existsSync(path.join(process.cwd(), altPath, 'schema.prisma'))
|
| 252 |
+
}) ?? alternativePaths[0]
|
| 253 |
+
|
| 254 |
+
config.dirname = path.join(process.cwd(), alternativePath)
|
| 255 |
+
config.isBundled = true
|
| 256 |
+
}
|
| 257 |
+
|
| 258 |
+
config.runtimeDataModel = JSON.parse("{\"models\":{\"User\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"email\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":true,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"passwordHash\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"isActive\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":true,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"telegramChatId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":true},{\"name\":\"positions\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Position\",\"nativeType\":null,\"relationName\":\"PositionToUser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"watchlist\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Watchlist\",\"nativeType\":null,\"relationName\":\"UserToWatchlist\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"alerts\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Alert\",\"nativeType\":null,\"relationName\":\"AlertToUser\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Market\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"question\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"category\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"countryCode\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"yesPrice\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"noPrice\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"volumeEur\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"liquidityEur\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"spread\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"bestBid\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"bestAsk\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"clobTokenId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"analyzable\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Boolean\",\"nativeType\":null,\"default\":true,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"status\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":\"active\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"closesAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"lastSynced\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"signals\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"AISignal\",\"nativeType\":null,\"relationName\":\"AISignalToMarket\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"positions\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Position\",\"nativeType\":null,\"relationName\":\"MarketToPosition\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"watchlist\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Watchlist\",\"nativeType\":null,\"relationName\":\"MarketToWatchlist\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"alerts\",\"kind\":\"object\",\"isList\":true,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Alert\",\"nativeType\":null,\"relationName\":\"AlertToMarket\",\"relationFromFields\":[],\"relationToFields\":[],\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"AISignal\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"marketId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"market\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Market\",\"nativeType\":null,\"relationName\":\"AISignalToMarket\",\"relationFromFields\":[\"marketId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"signal\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"confidence\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"summary\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"keyRisk\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"newsCount\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":0,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"modelVersion\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":\"Qwen3-8B\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"impliedProb\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"fairProb\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"edgePoints\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"generatedAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Position\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"PositionToUser\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"marketId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"market\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Market\",\"nativeType\":null,\"relationName\":\"MarketToPosition\",\"relationFromFields\":[\"marketId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"outcome\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"amountEur\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"entryPrice\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"currentPrice\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"pnl\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Float\",\"nativeType\":null,\"default\":0,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"kellyFraction\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"status\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"String\",\"nativeType\":null,\"default\":\"open\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"openedAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"closedAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"DateTime\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false},\"Watchlist\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"UserToWatchlist\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"marketId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"market\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Market\",\"nativeType\":null,\"relationName\":\"MarketToWatchlist\",\"relationFromFields\":[\"marketId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"alertThreshold\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":false,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Float\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[[\"userId\",\"marketId\"]],\"uniqueIndexes\":[{\"name\":null,\"fields\":[\"userId\",\"marketId\"]}],\"isGenerated\":false},\"Alert\":{\"dbName\":null,\"schema\":null,\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":true,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"Int\",\"nativeType\":null,\"default\":{\"name\":\"autoincrement\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"userId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"Int\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"user\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"User\",\"nativeType\":null,\"relationName\":\"AlertToUser\",\"relationFromFields\":[\"userId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"marketId\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":true,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"market\",\"kind\":\"object\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"Market\",\"nativeType\":null,\"relationName\":\"AlertToMarket\",\"relationFromFields\":[\"marketId\"],\"relationToFields\":[\"id\"],\"relationOnDelete\":\"Cascade\",\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"type\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"message\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":false,\"type\":\"String\",\"nativeType\":null,\"isGenerated\":false,\"isUpdatedAt\":false},{\"name\":\"sentAt\",\"kind\":\"scalar\",\"isList\":false,\"isRequired\":true,\"isUnique\":false,\"isId\":false,\"isReadOnly\":false,\"hasDefaultValue\":true,\"type\":\"DateTime\",\"nativeType\":null,\"default\":{\"name\":\"now\",\"args\":[]},\"isGenerated\":false,\"isUpdatedAt\":false}],\"primaryKey\":null,\"uniqueFields\":[],\"uniqueIndexes\":[],\"isGenerated\":false}},\"enums\":{},\"types\":{}}")
|
| 259 |
+
defineDmmfProperty(exports.Prisma, config.runtimeDataModel)
|
| 260 |
+
config.engineWasm = undefined
|
| 261 |
+
config.compilerWasm = undefined
|
| 262 |
+
|
| 263 |
+
|
| 264 |
+
const { warnEnvConflicts } = require('@prisma/client/runtime/library.js')
|
| 265 |
+
|
| 266 |
+
warnEnvConflicts({
|
| 267 |
+
rootEnvPath: config.relativeEnvPaths.rootEnvPath && path.resolve(config.dirname, config.relativeEnvPaths.rootEnvPath),
|
| 268 |
+
schemaEnvPath: config.relativeEnvPaths.schemaEnvPath && path.resolve(config.dirname, config.relativeEnvPaths.schemaEnvPath)
|
| 269 |
+
})
|
| 270 |
+
|
| 271 |
+
const PrismaClient = getPrismaClient(config)
|
| 272 |
+
exports.PrismaClient = PrismaClient
|
| 273 |
+
Object.assign(exports, Prisma)
|
| 274 |
+
|
| 275 |
+
// file annotations for bundling tools to include these files
|
| 276 |
+
path.join(__dirname, "libquery_engine-darwin-arm64.dylib.node");
|
| 277 |
+
path.join(process.cwd(), "node_modules/.prisma/client/libquery_engine-darwin-arm64.dylib.node")
|
| 278 |
+
// file annotations for bundling tools to include these files
|
| 279 |
+
path.join(__dirname, "schema.prisma");
|
| 280 |
+
path.join(process.cwd(), "node_modules/.prisma/client/schema.prisma")
|
backend/node_modules/.prisma/client/package.json
ADDED
|
@@ -0,0 +1,183 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"name": "prisma-client-0634aaa4a404cb6a55c8296bd6bae6d8210c064fb5efe184937dbdfcfb1dac35",
|
| 3 |
+
"main": "index.js",
|
| 4 |
+
"types": "index.d.ts",
|
| 5 |
+
"browser": "default.js",
|
| 6 |
+
"exports": {
|
| 7 |
+
"./client": {
|
| 8 |
+
"require": {
|
| 9 |
+
"node": "./index.js",
|
| 10 |
+
"edge-light": "./wasm.js",
|
| 11 |
+
"workerd": "./wasm.js",
|
| 12 |
+
"worker": "./wasm.js",
|
| 13 |
+
"browser": "./index-browser.js",
|
| 14 |
+
"default": "./index.js"
|
| 15 |
+
},
|
| 16 |
+
"import": {
|
| 17 |
+
"node": "./index.js",
|
| 18 |
+
"edge-light": "./wasm.js",
|
| 19 |
+
"workerd": "./wasm.js",
|
| 20 |
+
"worker": "./wasm.js",
|
| 21 |
+
"browser": "./index-browser.js",
|
| 22 |
+
"default": "./index.js"
|
| 23 |
+
},
|
| 24 |
+
"default": "./index.js"
|
| 25 |
+
},
|
| 26 |
+
"./package.json": "./package.json",
|
| 27 |
+
".": {
|
| 28 |
+
"require": {
|
| 29 |
+
"node": "./index.js",
|
| 30 |
+
"edge-light": "./wasm.js",
|
| 31 |
+
"workerd": "./wasm.js",
|
| 32 |
+
"worker": "./wasm.js",
|
| 33 |
+
"browser": "./index-browser.js",
|
| 34 |
+
"default": "./index.js"
|
| 35 |
+
},
|
| 36 |
+
"import": {
|
| 37 |
+
"node": "./index.js",
|
| 38 |
+
"edge-light": "./wasm.js",
|
| 39 |
+
"workerd": "./wasm.js",
|
| 40 |
+
"worker": "./wasm.js",
|
| 41 |
+
"browser": "./index-browser.js",
|
| 42 |
+
"default": "./index.js"
|
| 43 |
+
},
|
| 44 |
+
"default": "./index.js"
|
| 45 |
+
},
|
| 46 |
+
"./edge": {
|
| 47 |
+
"types": "./edge.d.ts",
|
| 48 |
+
"require": "./edge.js",
|
| 49 |
+
"import": "./edge.js",
|
| 50 |
+
"default": "./edge.js"
|
| 51 |
+
},
|
| 52 |
+
"./react-native": {
|
| 53 |
+
"types": "./react-native.d.ts",
|
| 54 |
+
"require": "./react-native.js",
|
| 55 |
+
"import": "./react-native.js",
|
| 56 |
+
"default": "./react-native.js"
|
| 57 |
+
},
|
| 58 |
+
"./extension": {
|
| 59 |
+
"types": "./extension.d.ts",
|
| 60 |
+
"require": "./extension.js",
|
| 61 |
+
"import": "./extension.js",
|
| 62 |
+
"default": "./extension.js"
|
| 63 |
+
},
|
| 64 |
+
"./index-browser": {
|
| 65 |
+
"types": "./index.d.ts",
|
| 66 |
+
"require": "./index-browser.js",
|
| 67 |
+
"import": "./index-browser.js",
|
| 68 |
+
"default": "./index-browser.js"
|
| 69 |
+
},
|
| 70 |
+
"./index": {
|
| 71 |
+
"types": "./index.d.ts",
|
| 72 |
+
"require": "./index.js",
|
| 73 |
+
"import": "./index.js",
|
| 74 |
+
"default": "./index.js"
|
| 75 |
+
},
|
| 76 |
+
"./wasm": {
|
| 77 |
+
"types": "./wasm.d.ts",
|
| 78 |
+
"require": "./wasm.js",
|
| 79 |
+
"import": "./wasm.mjs",
|
| 80 |
+
"default": "./wasm.mjs"
|
| 81 |
+
},
|
| 82 |
+
"./runtime/client": {
|
| 83 |
+
"types": "./runtime/client.d.ts",
|
| 84 |
+
"node": {
|
| 85 |
+
"require": "./runtime/client.js",
|
| 86 |
+
"default": "./runtime/client.js"
|
| 87 |
+
},
|
| 88 |
+
"require": "./runtime/client.js",
|
| 89 |
+
"import": "./runtime/client.mjs",
|
| 90 |
+
"default": "./runtime/client.mjs"
|
| 91 |
+
},
|
| 92 |
+
"./runtime/library": {
|
| 93 |
+
"types": "./runtime/library.d.ts",
|
| 94 |
+
"require": "./runtime/library.js",
|
| 95 |
+
"import": "./runtime/library.mjs",
|
| 96 |
+
"default": "./runtime/library.mjs"
|
| 97 |
+
},
|
| 98 |
+
"./runtime/binary": {
|
| 99 |
+
"types": "./runtime/binary.d.ts",
|
| 100 |
+
"require": "./runtime/binary.js",
|
| 101 |
+
"import": "./runtime/binary.mjs",
|
| 102 |
+
"default": "./runtime/binary.mjs"
|
| 103 |
+
},
|
| 104 |
+
"./runtime/wasm-engine-edge": {
|
| 105 |
+
"types": "./runtime/wasm-engine-edge.d.ts",
|
| 106 |
+
"require": "./runtime/wasm-engine-edge.js",
|
| 107 |
+
"import": "./runtime/wasm-engine-edge.mjs",
|
| 108 |
+
"default": "./runtime/wasm-engine-edge.mjs"
|
| 109 |
+
},
|
| 110 |
+
"./runtime/wasm-compiler-edge": {
|
| 111 |
+
"types": "./runtime/wasm-compiler-edge.d.ts",
|
| 112 |
+
"require": "./runtime/wasm-compiler-edge.js",
|
| 113 |
+
"import": "./runtime/wasm-compiler-edge.mjs",
|
| 114 |
+
"default": "./runtime/wasm-compiler-edge.mjs"
|
| 115 |
+
},
|
| 116 |
+
"./runtime/edge": {
|
| 117 |
+
"types": "./runtime/edge.d.ts",
|
| 118 |
+
"require": "./runtime/edge.js",
|
| 119 |
+
"import": "./runtime/edge-esm.js",
|
| 120 |
+
"default": "./runtime/edge-esm.js"
|
| 121 |
+
},
|
| 122 |
+
"./runtime/react-native": {
|
| 123 |
+
"types": "./runtime/react-native.d.ts",
|
| 124 |
+
"require": "./runtime/react-native.js",
|
| 125 |
+
"import": "./runtime/react-native.js",
|
| 126 |
+
"default": "./runtime/react-native.js"
|
| 127 |
+
},
|
| 128 |
+
"./runtime/index-browser": {
|
| 129 |
+
"types": "./runtime/index-browser.d.ts",
|
| 130 |
+
"require": "./runtime/index-browser.js",
|
| 131 |
+
"import": "./runtime/index-browser.mjs",
|
| 132 |
+
"default": "./runtime/index-browser.mjs"
|
| 133 |
+
},
|
| 134 |
+
"./generator-build": {
|
| 135 |
+
"require": "./generator-build/index.js",
|
| 136 |
+
"import": "./generator-build/index.js",
|
| 137 |
+
"default": "./generator-build/index.js"
|
| 138 |
+
},
|
| 139 |
+
"./sql": {
|
| 140 |
+
"require": {
|
| 141 |
+
"types": "./sql.d.ts",
|
| 142 |
+
"node": "./sql.js",
|
| 143 |
+
"default": "./sql.js"
|
| 144 |
+
},
|
| 145 |
+
"import": {
|
| 146 |
+
"types": "./sql.d.ts",
|
| 147 |
+
"node": "./sql.mjs",
|
| 148 |
+
"default": "./sql.mjs"
|
| 149 |
+
},
|
| 150 |
+
"default": "./sql.js"
|
| 151 |
+
},
|
| 152 |
+
"./*": "./*"
|
| 153 |
+
},
|
| 154 |
+
"version": "6.19.3",
|
| 155 |
+
"sideEffects": false,
|
| 156 |
+
"imports": {
|
| 157 |
+
"#wasm-engine-loader": {
|
| 158 |
+
"edge-light": "./wasm-edge-light-loader.mjs",
|
| 159 |
+
"workerd": "./wasm-worker-loader.mjs",
|
| 160 |
+
"worker": "./wasm-worker-loader.mjs",
|
| 161 |
+
"default": "./wasm-worker-loader.mjs"
|
| 162 |
+
},
|
| 163 |
+
"#main-entry-point": {
|
| 164 |
+
"require": {
|
| 165 |
+
"node": "./index.js",
|
| 166 |
+
"edge-light": "./wasm.js",
|
| 167 |
+
"workerd": "./wasm.js",
|
| 168 |
+
"worker": "./wasm.js",
|
| 169 |
+
"browser": "./index-browser.js",
|
| 170 |
+
"default": "./index.js"
|
| 171 |
+
},
|
| 172 |
+
"import": {
|
| 173 |
+
"node": "./index.js",
|
| 174 |
+
"edge-light": "./wasm.js",
|
| 175 |
+
"workerd": "./wasm.js",
|
| 176 |
+
"worker": "./wasm.js",
|
| 177 |
+
"browser": "./index-browser.js",
|
| 178 |
+
"default": "./index.js"
|
| 179 |
+
},
|
| 180 |
+
"default": "./index.js"
|
| 181 |
+
}
|
| 182 |
+
}
|
| 183 |
+
}
|
backend/node_modules/.prisma/client/query_engine_bg.js
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"use strict";var F=Object.defineProperty;var B=Object.getOwnPropertyDescriptor;var R=Object.getOwnPropertyNames;var U=Object.prototype.hasOwnProperty;var L=(e,t)=>{for(var n in t)F(e,n,{get:t[n],enumerable:!0})},N=(e,t,n,_)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of R(t))!U.call(e,o)&&o!==n&&F(e,o,{get:()=>t[o],enumerable:!(_=B(t,o))||_.enumerable});return e};var C=e=>N(F({},"__esModule",{value:!0}),e);var qt={};L(qt,{QueryEngine:()=>E,__wbg_Error_e83987f665cf5504:()=>J,__wbg_Number_bb48ca12f395cd08:()=>X,__wbg_String_8f0eb39a4a4c2f66:()=>Y,__wbg___wbindgen_bigint_get_as_i64_f3ebc5a755000afd:()=>K,__wbg___wbindgen_boolean_get_6d5a1ee65bab5f68:()=>Z,__wbg___wbindgen_debug_string_df47ffb5e35e6763:()=>ee,__wbg___wbindgen_in_bb933bd9e1b3bc0f:()=>te,__wbg___wbindgen_is_bigint_cb320707dcd35f0b:()=>ne,__wbg___wbindgen_is_function_ee8a6c5833c90377:()=>re,__wbg___wbindgen_is_object_c818261d21f283a4:()=>_e,__wbg___wbindgen_is_string_fbb76cb2940daafd:()=>oe,__wbg___wbindgen_is_undefined_2d472862bd29a478:()=>ce,__wbg___wbindgen_jsval_eq_6b13ab83478b1c50:()=>ie,__wbg___wbindgen_jsval_loose_eq_b664b38a2f582147:()=>se,__wbg___wbindgen_number_get_a20bf9b85341449d:()=>ue,__wbg___wbindgen_string_get_e4f06c90489ad01b:()=>be,__wbg___wbindgen_throw_b855445ff6a94295:()=>fe,__wbg__wbg_cb_unref_2454a539ea5790d9:()=>ae,__wbg_call_525440f72fbfc0ea:()=>ge,__wbg_call_e762c39fa8ea36bf:()=>le,__wbg_crypto_805be4ce92f1e370:()=>de,__wbg_done_2042aa2670fb1db1:()=>we,__wbg_entries_e171b586f8f6bdbf:()=>pe,__wbg_getRandomValues_f6a868620c8bab49:()=>xe,__wbg_getTime_14776bfb48a1bff9:()=>ye,__wbg_get_7bed016f185add81:()=>me,__wbg_get_ece95cf6585650d9:()=>he,__wbg_get_efcb449f58ec27c2:()=>Te,__wbg_get_with_ref_key_1dc361bd10053bfe:()=>Ae,__wbg_has_787fafc980c3ccdb:()=>Se,__wbg_instanceof_ArrayBuffer_70beb1189ca63b38:()=>Fe,__wbg_instanceof_Map_8579b5e2ab5437c7:()=>Ie,__wbg_instanceof_Promise_001fdd42afa1b7ef:()=>qe,__wbg_instanceof_Uint8Array_20c8e73002f7af98:()=>ke,__wbg_isArray_96e0af9891d0945d:()=>Ee,__wbg_isSafeInteger_d216eda7911dde36:()=>Oe,__wbg_iterator_e5822695327a3c39:()=>Me,__wbg_keys_b4d27b02ad14f4be:()=>ve,__wbg_length_69bca3cb64fc8748:()=>De,__wbg_length_cdd215e10d9dd507:()=>je,__wbg_msCrypto_2ac4d17c4748234a:()=>Be,__wbg_new_0_f9740686d739025c:()=>Re,__wbg_new_1acc0b6eea89d040:()=>Ue,__wbg_new_3c3d849046688a66:()=>Le,__wbg_new_5a79be3ab53b8aa5:()=>Ne,__wbg_new_68651c719dcda04e:()=>Ce,__wbg_new_e17d9f43105b08be:()=>$e,__wbg_new_from_slice_92f4d78ca282a2d2:()=>Ve,__wbg_new_no_args_ee98eee5275000a4:()=>We,__wbg_new_with_length_01aa0dc35aa13543:()=>ze,__wbg_next_020810e0ae8ebcb0:()=>Pe,__wbg_next_2c826fe5dfec6b6a:()=>Ge,__wbg_node_ecc8306b9857f33d:()=>Qe,__wbg_now_793306c526e2e3b6:()=>He,__wbg_now_7fd00a794a07d388:()=>Je,__wbg_now_b3f7572f6ef3d3a9:()=>Xe,__wbg_process_5cff2739921be718:()=>Ye,__wbg_prototypesetcall_2a6620b6922694b2:()=>Ke,__wbg_push_df81a39d04db858c:()=>Ze,__wbg_queueMicrotask_5a8a9131f3f0b37b:()=>et,__wbg_queueMicrotask_6d79674585219521:()=>tt,__wbg_randomFillSync_d3c85af7e31cf1f8:()=>nt,__wbg_require_0c566c6f2eef6c79:()=>rt,__wbg_resolve_caf97c30b83f7053:()=>_t,__wbg_setTimeout_5d6a1d4fc51ea450:()=>ot,__wbg_set_3f1d0b984ed272ed:()=>ct,__wbg_set_907fb406c34a251d:()=>it,__wbg_set_c213c871859d6500:()=>st,__wbg_set_c2abbebe8b9ebee1:()=>ut,__wbg_set_wasm:()=>$,__wbg_static_accessor_GLOBAL_89e1d9ac6a1b250e:()=>bt,__wbg_static_accessor_GLOBAL_THIS_8b530f326a9e48ac:()=>ft,__wbg_static_accessor_SELF_6fdf4b64710cc91b:()=>at,__wbg_static_accessor_WINDOW_b45bfc5a37f6cfa2:()=>gt,__wbg_subarray_480600f3d6a9f26c:()=>lt,__wbg_then_4f46f6544e6b4a28:()=>dt,__wbg_then_70d05cf780a18d77:()=>wt,__wbg_valueOf_9eee4828c11458ca:()=>pt,__wbg_value_692627309814bb8c:()=>xt,__wbg_versions_a8e5a362e1f16442:()=>yt,__wbindgen_cast_126e48f66237b479:()=>mt,__wbindgen_cast_2241b6af4c4b2941:()=>ht,__wbindgen_cast_4625c577ab2ec9ee:()=>Tt,__wbindgen_cast_9ae0607507abb057:()=>At,__wbindgen_cast_cb9088102bce6b30:()=>St,__wbindgen_cast_d6cd19b81560fd6e:()=>Ft,__wbindgen_init_externref_table:()=>It,debug_panic:()=>P,getBuildTimeInfo:()=>G});module.exports=C(qt);var h=()=>{};h.prototype=h;let r;function $(e){r=e}let T=null;function p(){return(T===null||T.byteLength===0)&&(T=new Uint8Array(r.memory.buffer)),T}let A=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});A.decode();const V=2146435072;let I=0;function W(e,t){return I+=t,I>=V&&(A=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}),A.decode(),I=t),A.decode(p().subarray(e,e+t))}function S(e,t){return e=e>>>0,W(e,t)}let u=0;const x=new TextEncoder;"encodeInto"in x||(x.encodeInto=function(e,t){const n=x.encode(e);return t.set(n),{read:e.length,written:n.length}});function b(e,t,n){if(n===void 0){const s=x.encode(e),f=t(s.length,1)>>>0;return p().subarray(f,f+s.length).set(s),u=s.length,f}let _=e.length,o=t(_,1)>>>0;const i=p();let c=0;for(;c<_;c++){const s=e.charCodeAt(c);if(s>127)break;i[o+c]=s}if(c!==_){c!==0&&(e=e.slice(c)),o=n(o,_,_=c+e.length*3,1)>>>0;const s=p().subarray(o+c,o+_),f=x.encodeInto(e,s);c+=f.written,o=n(o,_,c,1)>>>0}return u=c,o}let w=null;function l(){return(w===null||w.buffer.detached===!0||w.buffer.detached===void 0&&w.buffer!==r.memory.buffer)&&(w=new DataView(r.memory.buffer)),w}function a(e){return e==null}function q(e){const t=typeof e;if(t=="number"||t=="boolean"||e==null)return`${e}`;if(t=="string")return`"${e}"`;if(t=="symbol"){const o=e.description;return o==null?"Symbol":`Symbol(${o})`}if(t=="function"){const o=e.name;return typeof o=="string"&&o.length>0?`Function(${o})`:"Function"}if(Array.isArray(e)){const o=e.length;let i="[";o>0&&(i+=q(e[0]));for(let c=1;c<o;c++)i+=", "+q(e[c]);return i+="]",i}const n=/\[object ([^\]]+)\]/.exec(toString.call(e));let _;if(n&&n.length>1)_=n[1];else return toString.call(e);if(_=="Object")try{return"Object("+JSON.stringify(e)+")"}catch{return"Object"}return e instanceof Error?`${e.name}: ${e.message}
|
| 2 |
+
${e.stack}`:_}function y(e){const t=r.__externref_table_alloc();return r.__wbindgen_externrefs.set(t,e),t}function g(e,t){try{return e.apply(this,t)}catch(n){const _=y(n);r.__wbindgen_exn_store(_)}}function k(e,t){return e=e>>>0,p().subarray(e/1,e/1+t)}const O=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>e.dtor(e.a,e.b));function z(e,t,n,_){const o={a:e,b:t,cnt:1,dtor:n},i=(...c)=>{o.cnt++;const s=o.a;o.a=0;try{return _(s,o.b,...c)}finally{o.a=s,i._wbg_cb_unref()}};return i._wbg_cb_unref=()=>{--o.cnt===0&&(o.dtor(o.a,o.b),o.a=0,O.unregister(o))},O.register(i,o,o),i}function M(e){const t=r.__wbindgen_externrefs.get(e);return r.__externref_table_dealloc(e),t}function P(e){var t=a(e)?0:b(e,r.__wbindgen_malloc,r.__wbindgen_realloc),n=u;const _=r.debug_panic(t,n);if(_[1])throw M(_[0])}function G(){return r.getBuildTimeInfo()}function Q(e,t,n){r.wasm_bindgen__convert__closures_____invoke__ha235f3ea55a06a09(e,t,n)}function H(e,t,n,_){r.wasm_bindgen__convert__closures_____invoke__h1a2f20be69ab8911(e,t,n,_)}const v=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>r.__wbg_queryengine_free(e>>>0,1));class E{__destroy_into_raw(){const t=this.__wbg_ptr;return this.__wbg_ptr=0,v.unregister(this),t}free(){const t=this.__destroy_into_raw();r.__wbg_queryengine_free(t,0)}disconnect(t,n){const _=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),o=u,i=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),c=u;return r.queryengine_disconnect(this.__wbg_ptr,_,o,i,c)}startTransaction(t,n,_){const o=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),i=u,c=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),s=u,f=b(_,r.__wbindgen_malloc,r.__wbindgen_realloc),d=u;return r.queryengine_startTransaction(this.__wbg_ptr,o,i,c,s,f,d)}commitTransaction(t,n,_){const o=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),i=u,c=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),s=u,f=b(_,r.__wbindgen_malloc,r.__wbindgen_realloc),d=u;return r.queryengine_commitTransaction(this.__wbg_ptr,o,i,c,s,f,d)}rollbackTransaction(t,n,_){const o=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),i=u,c=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),s=u,f=b(_,r.__wbindgen_malloc,r.__wbindgen_realloc),d=u;return r.queryengine_rollbackTransaction(this.__wbg_ptr,o,i,c,s,f,d)}constructor(t,n,_){const o=r.queryengine_new(t,n,_);if(o[2])throw M(o[1]);return this.__wbg_ptr=o[0]>>>0,v.register(this,this.__wbg_ptr,this),this}query(t,n,_,o){const i=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),c=u,s=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),f=u;var d=a(_)?0:b(_,r.__wbindgen_malloc,r.__wbindgen_realloc),m=u;const D=b(o,r.__wbindgen_malloc,r.__wbindgen_realloc),j=u;return r.queryengine_query(this.__wbg_ptr,i,c,s,f,d,m,D,j)}trace(t){const n=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),_=u;return r.queryengine_trace(this.__wbg_ptr,n,_)}connect(t,n){const _=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),o=u,i=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),c=u;return r.queryengine_connect(this.__wbg_ptr,_,o,i,c)}metrics(t){const n=b(t,r.__wbindgen_malloc,r.__wbindgen_realloc),_=u;return r.queryengine_metrics(this.__wbg_ptr,n,_)}}Symbol.dispose&&(E.prototype[Symbol.dispose]=E.prototype.free);function J(e,t){return Error(S(e,t))}function X(e){return Number(e)}function Y(e,t){const n=String(t),_=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),o=u;l().setInt32(e+4*1,o,!0),l().setInt32(e+4*0,_,!0)}function K(e,t){const n=t,_=typeof n=="bigint"?n:void 0;l().setBigInt64(e+8*1,a(_)?BigInt(0):_,!0),l().setInt32(e+4*0,!a(_),!0)}function Z(e){const t=e,n=typeof t=="boolean"?t:void 0;return a(n)?16777215:n?1:0}function ee(e,t){const n=q(t),_=b(n,r.__wbindgen_malloc,r.__wbindgen_realloc),o=u;l().setInt32(e+4*1,o,!0),l().setInt32(e+4*0,_,!0)}function te(e,t){return e in t}function ne(e){return typeof e=="bigint"}function re(e){return typeof e=="function"}function _e(e){const t=e;return typeof t=="object"&&t!==null}function oe(e){return typeof e=="string"}function ce(e){return e===void 0}function ie(e,t){return e===t}function se(e,t){return e==t}function ue(e,t){const n=t,_=typeof n=="number"?n:void 0;l().setFloat64(e+8*1,a(_)?0:_,!0),l().setInt32(e+4*0,!a(_),!0)}function be(e,t){const n=t,_=typeof n=="string"?n:void 0;var o=a(_)?0:b(_,r.__wbindgen_malloc,r.__wbindgen_realloc),i=u;l().setInt32(e+4*1,i,!0),l().setInt32(e+4*0,o,!0)}function fe(e,t){throw new Error(S(e,t))}function ae(e){e._wbg_cb_unref()}function ge(){return g(function(e,t,n){return e.call(t,n)},arguments)}function le(){return g(function(e,t){return e.call(t)},arguments)}function de(e){return e.crypto}function we(e){return e.done}function pe(e){return Object.entries(e)}function xe(){return g(function(e,t){e.getRandomValues(t)},arguments)}function ye(e){return e.getTime()}function me(e,t){return e[t>>>0]}function he(){return g(function(e,t){return e[t]},arguments)}function Te(){return g(function(e,t){return Reflect.get(e,t)},arguments)}function Ae(e,t){return e[t]}function Se(){return g(function(e,t){return Reflect.has(e,t)},arguments)}function Fe(e){let t;try{t=e instanceof ArrayBuffer}catch{t=!1}return t}function Ie(e){let t;try{t=e instanceof Map}catch{t=!1}return t}function qe(e){let t;try{t=e instanceof Promise}catch{t=!1}return t}function ke(e){let t;try{t=e instanceof Uint8Array}catch{t=!1}return t}function Ee(e){return Array.isArray(e)}function Oe(e){return Number.isSafeInteger(e)}function Me(){return Symbol.iterator}function ve(e){return Object.keys(e)}function De(e){return e.length}function je(e){return e.length}function Be(e){return e.msCrypto}function Re(){return new Date}function Ue(){return new Object}function Le(e,t){try{var n={a:e,b:t},_=(i,c)=>{const s=n.a;n.a=0;try{return H(s,n.b,i,c)}finally{n.a=s}};return new Promise(_)}finally{n.a=n.b=0}}function Ne(e){return new Uint8Array(e)}function Ce(){return new Map}function $e(){return new Array}function Ve(e,t){return new Uint8Array(k(e,t))}function We(e,t){return new h(S(e,t))}function ze(e){return new Uint8Array(e>>>0)}function Pe(){return g(function(e){return e.next()},arguments)}function Ge(e){return e.next}function Qe(e){return e.node}function He(){return Date.now()}function Je(e){return e.now()}function Xe(){return g(function(){return Date.now()},arguments)}function Ye(e){return e.process}function Ke(e,t,n){Uint8Array.prototype.set.call(k(e,t),n)}function Ze(e,t){return e.push(t)}function et(e){return e.queueMicrotask}function tt(e){queueMicrotask(e)}function nt(){return g(function(e,t){e.randomFillSync(t)},arguments)}function rt(){return g(function(){return module.require},arguments)}function _t(e){return Promise.resolve(e)}function ot(e,t){return setTimeout(e,t>>>0)}function ct(e,t,n){e[t]=n}function it(e,t,n){return e.set(t,n)}function st(e,t,n){e[t>>>0]=n}function ut(){return g(function(e,t,n){return Reflect.set(e,t,n)},arguments)}function bt(){const e=typeof global>"u"?null:global;return a(e)?0:y(e)}function ft(){const e=typeof globalThis>"u"?null:globalThis;return a(e)?0:y(e)}function at(){const e=typeof self>"u"?null:self;return a(e)?0:y(e)}function gt(){const e=typeof window>"u"?null:window;return a(e)?0:y(e)}function lt(e,t,n){return e.subarray(t>>>0,n>>>0)}function dt(e,t){return e.then(t)}function wt(e,t,n){return e.then(t,n)}function pt(e){return e.valueOf()}function xt(e){return e.value}function yt(e){return e.versions}function mt(e,t){return z(e,t,r.wasm_bindgen__closure__destroy__hf9ae564cf31e91c2,Q)}function ht(e,t){return S(e,t)}function Tt(e){return BigInt.asUintN(64,e)}function At(e){return e}function St(e,t){return k(e,t)}function Ft(e){return e}function It(){const e=r.__wbindgen_externrefs,t=e.grow(4);e.set(0,void 0),e.set(t+0,void 0),e.set(t+1,null),e.set(t+2,!0),e.set(t+3,!1)}0&&(module.exports={QueryEngine,__wbg_Error_e83987f665cf5504,__wbg_Number_bb48ca12f395cd08,__wbg_String_8f0eb39a4a4c2f66,__wbg___wbindgen_bigint_get_as_i64_f3ebc5a755000afd,__wbg___wbindgen_boolean_get_6d5a1ee65bab5f68,__wbg___wbindgen_debug_string_df47ffb5e35e6763,__wbg___wbindgen_in_bb933bd9e1b3bc0f,__wbg___wbindgen_is_bigint_cb320707dcd35f0b,__wbg___wbindgen_is_function_ee8a6c5833c90377,__wbg___wbindgen_is_object_c818261d21f283a4,__wbg___wbindgen_is_string_fbb76cb2940daafd,__wbg___wbindgen_is_undefined_2d472862bd29a478,__wbg___wbindgen_jsval_eq_6b13ab83478b1c50,__wbg___wbindgen_jsval_loose_eq_b664b38a2f582147,__wbg___wbindgen_number_get_a20bf9b85341449d,__wbg___wbindgen_string_get_e4f06c90489ad01b,__wbg___wbindgen_throw_b855445ff6a94295,__wbg__wbg_cb_unref_2454a539ea5790d9,__wbg_call_525440f72fbfc0ea,__wbg_call_e762c39fa8ea36bf,__wbg_crypto_805be4ce92f1e370,__wbg_done_2042aa2670fb1db1,__wbg_entries_e171b586f8f6bdbf,__wbg_getRandomValues_f6a868620c8bab49,__wbg_getTime_14776bfb48a1bff9,__wbg_get_7bed016f185add81,__wbg_get_ece95cf6585650d9,__wbg_get_efcb449f58ec27c2,__wbg_get_with_ref_key_1dc361bd10053bfe,__wbg_has_787fafc980c3ccdb,__wbg_instanceof_ArrayBuffer_70beb1189ca63b38,__wbg_instanceof_Map_8579b5e2ab5437c7,__wbg_instanceof_Promise_001fdd42afa1b7ef,__wbg_instanceof_Uint8Array_20c8e73002f7af98,__wbg_isArray_96e0af9891d0945d,__wbg_isSafeInteger_d216eda7911dde36,__wbg_iterator_e5822695327a3c39,__wbg_keys_b4d27b02ad14f4be,__wbg_length_69bca3cb64fc8748,__wbg_length_cdd215e10d9dd507,__wbg_msCrypto_2ac4d17c4748234a,__wbg_new_0_f9740686d739025c,__wbg_new_1acc0b6eea89d040,__wbg_new_3c3d849046688a66,__wbg_new_5a79be3ab53b8aa5,__wbg_new_68651c719dcda04e,__wbg_new_e17d9f43105b08be,__wbg_new_from_slice_92f4d78ca282a2d2,__wbg_new_no_args_ee98eee5275000a4,__wbg_new_with_length_01aa0dc35aa13543,__wbg_next_020810e0ae8ebcb0,__wbg_next_2c826fe5dfec6b6a,__wbg_node_ecc8306b9857f33d,__wbg_now_793306c526e2e3b6,__wbg_now_7fd00a794a07d388,__wbg_now_b3f7572f6ef3d3a9,__wbg_process_5cff2739921be718,__wbg_prototypesetcall_2a6620b6922694b2,__wbg_push_df81a39d04db858c,__wbg_queueMicrotask_5a8a9131f3f0b37b,__wbg_queueMicrotask_6d79674585219521,__wbg_randomFillSync_d3c85af7e31cf1f8,__wbg_require_0c566c6f2eef6c79,__wbg_resolve_caf97c30b83f7053,__wbg_setTimeout_5d6a1d4fc51ea450,__wbg_set_3f1d0b984ed272ed,__wbg_set_907fb406c34a251d,__wbg_set_c213c871859d6500,__wbg_set_c2abbebe8b9ebee1,__wbg_set_wasm,__wbg_static_accessor_GLOBAL_89e1d9ac6a1b250e,__wbg_static_accessor_GLOBAL_THIS_8b530f326a9e48ac,__wbg_static_accessor_SELF_6fdf4b64710cc91b,__wbg_static_accessor_WINDOW_b45bfc5a37f6cfa2,__wbg_subarray_480600f3d6a9f26c,__wbg_then_4f46f6544e6b4a28,__wbg_then_70d05cf780a18d77,__wbg_valueOf_9eee4828c11458ca,__wbg_value_692627309814bb8c,__wbg_versions_a8e5a362e1f16442,__wbindgen_cast_126e48f66237b479,__wbindgen_cast_2241b6af4c4b2941,__wbindgen_cast_4625c577ab2ec9ee,__wbindgen_cast_9ae0607507abb057,__wbindgen_cast_cb9088102bce6b30,__wbindgen_cast_d6cd19b81560fd6e,__wbindgen_init_externref_table,debug_panic,getBuildTimeInfo});
|
backend/node_modules/.prisma/client/schema.prisma
ADDED
|
@@ -0,0 +1,122 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/**
|
| 2 |
+
* Schema de Prisma ORM para base de datos SQLite.
|
| 3 |
+
* Define 6 modelos: User, Market, AISignal, Position, Watchlist, Alert.
|
| 4 |
+
* Relaciones:
|
| 5 |
+
* - Market 1:N AISignal, Position, Watchlist, Alert
|
| 6 |
+
* - User 1:N Position, Watchlist, Alert
|
| 7 |
+
* No modificar sin consenso del equipo. Generar migraciones con:
|
| 8 |
+
* npx prisma migrate dev
|
| 9 |
+
* npx prisma generate
|
| 10 |
+
*/
|
| 11 |
+
|
| 12 |
+
generator client {
|
| 13 |
+
provider = "prisma-client-js"
|
| 14 |
+
}
|
| 15 |
+
|
| 16 |
+
datasource db {
|
| 17 |
+
provider = "sqlite"
|
| 18 |
+
url = env("DATABASE_URL")
|
| 19 |
+
}
|
| 20 |
+
|
| 21 |
+
model User {
|
| 22 |
+
id Int @id @default(autoincrement())
|
| 23 |
+
email String @unique
|
| 24 |
+
passwordHash String
|
| 25 |
+
isActive Boolean @default(true)
|
| 26 |
+
telegramChatId String? // Configurado manualmente para demo
|
| 27 |
+
createdAt DateTime @default(now())
|
| 28 |
+
updatedAt DateTime @updatedAt
|
| 29 |
+
|
| 30 |
+
positions Position[]
|
| 31 |
+
watchlist Watchlist[]
|
| 32 |
+
alerts Alert[]
|
| 33 |
+
}
|
| 34 |
+
|
| 35 |
+
model Market {
|
| 36 |
+
id String @id // ID nativo de Polymarket
|
| 37 |
+
question String // Texto de la pregunta del mercado
|
| 38 |
+
category String? // politics | crypto | economics | sports
|
| 39 |
+
countryCode String? // ISO2 — usado por Leaflet para burbujas
|
| 40 |
+
yesPrice Float? // Precio YES: 0.0 a 1.0
|
| 41 |
+
noPrice Float? // Precio NO: 0.0 a 1.0
|
| 42 |
+
volumeEur Float? // Volumen en Eur
|
| 43 |
+
liquidityEur Float? // Liquidez en Eur
|
| 44 |
+
spread Float? // Bid/ask spread (0-1, ej 0.02 = 2c)
|
| 45 |
+
bestBid Float? // Mejor oferta de compra
|
| 46 |
+
bestAsk Float? // Mejor oferta de venta
|
| 47 |
+
clobTokenId String? // YES outcome CLOB token ID (para prices-history)
|
| 48 |
+
analyzable Boolean @default(true) // Si la IA tiene edge plausible aqui
|
| 49 |
+
status String @default("active") // active | closed | resolved
|
| 50 |
+
closesAt DateTime? // Fecha de cierre del mercado
|
| 51 |
+
lastSynced DateTime @default(now()) // Ultima sincronizacion de precios
|
| 52 |
+
|
| 53 |
+
signals AISignal[]
|
| 54 |
+
positions Position[]
|
| 55 |
+
watchlist Watchlist[]
|
| 56 |
+
alerts Alert[]
|
| 57 |
+
}
|
| 58 |
+
|
| 59 |
+
model AISignal {
|
| 60 |
+
id Int @id @default(autoincrement())
|
| 61 |
+
marketId String
|
| 62 |
+
market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)
|
| 63 |
+
signal String // bullish | bearish | neutral
|
| 64 |
+
confidence Float // 0.0 a 1.0
|
| 65 |
+
summary String? // 2 frases generadas por Qwen3
|
| 66 |
+
keyRisk String? // 1 frase de riesgo principal
|
| 67 |
+
newsCount Int @default(0) // Titulares relevantes usados
|
| 68 |
+
modelVersion String @default("Qwen3-8B") // Modelo LLM que genero la senal
|
| 69 |
+
impliedProb Float? // Probabilidad implicita YES al generar (0-1)
|
| 70 |
+
fairProb Float? // Probabilidad "justa" segun IA (0-1)
|
| 71 |
+
edgePoints Float? // (fairProb - impliedProb) * 100, signo conserva direccion
|
| 72 |
+
generatedAt DateTime @default(now())
|
| 73 |
+
|
| 74 |
+
@@index([marketId, generatedAt])
|
| 75 |
+
}
|
| 76 |
+
|
| 77 |
+
model Position {
|
| 78 |
+
id Int @id @default(autoincrement())
|
| 79 |
+
userId Int
|
| 80 |
+
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
| 81 |
+
marketId String
|
| 82 |
+
market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)
|
| 83 |
+
outcome String // YES | NO
|
| 84 |
+
amountEur Float // Capital virtual apostado
|
| 85 |
+
entryPrice Float // Precio al abrir la posicion
|
| 86 |
+
currentPrice Float? // Precio actual (actualizado por scheduler)
|
| 87 |
+
pnl Float @default(0) // Profit and Loss calculado
|
| 88 |
+
kellyFraction Float? // Fraccion de Kelly al abrir
|
| 89 |
+
status String @default("open") // open | closed
|
| 90 |
+
openedAt DateTime @default(now())
|
| 91 |
+
closedAt DateTime?
|
| 92 |
+
|
| 93 |
+
@@index([userId, status])
|
| 94 |
+
@@index([marketId])
|
| 95 |
+
}
|
| 96 |
+
|
| 97 |
+
model Watchlist {
|
| 98 |
+
id Int @id @default(autoincrement())
|
| 99 |
+
userId Int
|
| 100 |
+
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
| 101 |
+
marketId String
|
| 102 |
+
market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)
|
| 103 |
+
alertThreshold Float? // Umbral de precio para alerta Telegram
|
| 104 |
+
createdAt DateTime @default(now())
|
| 105 |
+
|
| 106 |
+
@@unique([userId, marketId])
|
| 107 |
+
@@index([userId])
|
| 108 |
+
}
|
| 109 |
+
|
| 110 |
+
model Alert {
|
| 111 |
+
id Int @id @default(autoincrement())
|
| 112 |
+
userId Int
|
| 113 |
+
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
| 114 |
+
marketId String
|
| 115 |
+
market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)
|
| 116 |
+
type String // price_threshold | signal_change
|
| 117 |
+
message String // Texto enviado por Telegram
|
| 118 |
+
sentAt DateTime @default(now())
|
| 119 |
+
|
| 120 |
+
@@index([userId, sentAt])
|
| 121 |
+
@@index([marketId])
|
| 122 |
+
}
|
backend/node_modules/.prisma/client/wasm-edge-light-loader.mjs
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
/* !!! This is code generated by Prisma. Do not edit directly. !!!
|
| 3 |
+
/* eslint-disable */
|
| 4 |
+
// biome-ignore-all lint: generated file
|
| 5 |
+
export default import('./query_engine_bg.wasm?module')
|
backend/node_modules/.prisma/client/wasm-worker-loader.mjs
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
/* !!! This is code generated by Prisma. Do not edit directly. !!!
|
| 3 |
+
/* eslint-disable */
|
| 4 |
+
// biome-ignore-all lint: generated file
|
| 5 |
+
export default import('./query_engine_bg.wasm')
|
backend/node_modules/.prisma/client/wasm.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
export * from "./default"
|
backend/node_modules/.prisma/client/wasm.js
ADDED
|
@@ -0,0 +1,266 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
/* !!! This is code generated by Prisma. Do not edit directly. !!!
|
| 3 |
+
/* eslint-disable */
|
| 4 |
+
// biome-ignore-all lint: generated file
|
| 5 |
+
|
| 6 |
+
Object.defineProperty(exports, "__esModule", { value: true });
|
| 7 |
+
|
| 8 |
+
const {
|
| 9 |
+
PrismaClientKnownRequestError,
|
| 10 |
+
PrismaClientUnknownRequestError,
|
| 11 |
+
PrismaClientRustPanicError,
|
| 12 |
+
PrismaClientInitializationError,
|
| 13 |
+
PrismaClientValidationError,
|
| 14 |
+
getPrismaClient,
|
| 15 |
+
sqltag,
|
| 16 |
+
empty,
|
| 17 |
+
join,
|
| 18 |
+
raw,
|
| 19 |
+
skip,
|
| 20 |
+
Decimal,
|
| 21 |
+
Debug,
|
| 22 |
+
objectEnumValues,
|
| 23 |
+
makeStrictEnum,
|
| 24 |
+
Extensions,
|
| 25 |
+
warnOnce,
|
| 26 |
+
defineDmmfProperty,
|
| 27 |
+
Public,
|
| 28 |
+
getRuntime,
|
| 29 |
+
createParam,
|
| 30 |
+
} = require('@prisma/client/runtime/wasm-engine-edge.js')
|
| 31 |
+
|
| 32 |
+
|
| 33 |
+
const Prisma = {}
|
| 34 |
+
|
| 35 |
+
exports.Prisma = Prisma
|
| 36 |
+
exports.$Enums = {}
|
| 37 |
+
|
| 38 |
+
/**
|
| 39 |
+
* Prisma Client JS version: 6.19.3
|
| 40 |
+
* Query Engine version: c2990dca591cba766e3b7ef5d9e8a84796e47ab7
|
| 41 |
+
*/
|
| 42 |
+
Prisma.prismaVersion = {
|
| 43 |
+
client: "6.19.3",
|
| 44 |
+
engine: "c2990dca591cba766e3b7ef5d9e8a84796e47ab7"
|
| 45 |
+
}
|
| 46 |
+
|
| 47 |
+
Prisma.PrismaClientKnownRequestError = PrismaClientKnownRequestError;
|
| 48 |
+
Prisma.PrismaClientUnknownRequestError = PrismaClientUnknownRequestError
|
| 49 |
+
Prisma.PrismaClientRustPanicError = PrismaClientRustPanicError
|
| 50 |
+
Prisma.PrismaClientInitializationError = PrismaClientInitializationError
|
| 51 |
+
Prisma.PrismaClientValidationError = PrismaClientValidationError
|
| 52 |
+
Prisma.Decimal = Decimal
|
| 53 |
+
|
| 54 |
+
/**
|
| 55 |
+
* Re-export of sql-template-tag
|
| 56 |
+
*/
|
| 57 |
+
Prisma.sql = sqltag
|
| 58 |
+
Prisma.empty = empty
|
| 59 |
+
Prisma.join = join
|
| 60 |
+
Prisma.raw = raw
|
| 61 |
+
Prisma.validator = Public.validator
|
| 62 |
+
|
| 63 |
+
/**
|
| 64 |
+
* Extensions
|
| 65 |
+
*/
|
| 66 |
+
Prisma.getExtensionContext = Extensions.getExtensionContext
|
| 67 |
+
Prisma.defineExtension = Extensions.defineExtension
|
| 68 |
+
|
| 69 |
+
/**
|
| 70 |
+
* Shorthand utilities for JSON filtering
|
| 71 |
+
*/
|
| 72 |
+
Prisma.DbNull = objectEnumValues.instances.DbNull
|
| 73 |
+
Prisma.JsonNull = objectEnumValues.instances.JsonNull
|
| 74 |
+
Prisma.AnyNull = objectEnumValues.instances.AnyNull
|
| 75 |
+
|
| 76 |
+
Prisma.NullTypes = {
|
| 77 |
+
DbNull: objectEnumValues.classes.DbNull,
|
| 78 |
+
JsonNull: objectEnumValues.classes.JsonNull,
|
| 79 |
+
AnyNull: objectEnumValues.classes.AnyNull
|
| 80 |
+
}
|
| 81 |
+
|
| 82 |
+
|
| 83 |
+
|
| 84 |
+
|
| 85 |
+
|
| 86 |
+
/**
|
| 87 |
+
* Enums
|
| 88 |
+
*/
|
| 89 |
+
exports.Prisma.TransactionIsolationLevel = makeStrictEnum({
|
| 90 |
+
Serializable: 'Serializable'
|
| 91 |
+
});
|
| 92 |
+
|
| 93 |
+
exports.Prisma.UserScalarFieldEnum = {
|
| 94 |
+
id: 'id',
|
| 95 |
+
email: 'email',
|
| 96 |
+
passwordHash: 'passwordHash',
|
| 97 |
+
isActive: 'isActive',
|
| 98 |
+
telegramChatId: 'telegramChatId',
|
| 99 |
+
createdAt: 'createdAt',
|
| 100 |
+
updatedAt: 'updatedAt'
|
| 101 |
+
};
|
| 102 |
+
|
| 103 |
+
exports.Prisma.MarketScalarFieldEnum = {
|
| 104 |
+
id: 'id',
|
| 105 |
+
question: 'question',
|
| 106 |
+
category: 'category',
|
| 107 |
+
countryCode: 'countryCode',
|
| 108 |
+
yesPrice: 'yesPrice',
|
| 109 |
+
noPrice: 'noPrice',
|
| 110 |
+
volumeEur: 'volumeEur',
|
| 111 |
+
liquidityEur: 'liquidityEur',
|
| 112 |
+
spread: 'spread',
|
| 113 |
+
bestBid: 'bestBid',
|
| 114 |
+
bestAsk: 'bestAsk',
|
| 115 |
+
clobTokenId: 'clobTokenId',
|
| 116 |
+
analyzable: 'analyzable',
|
| 117 |
+
status: 'status',
|
| 118 |
+
closesAt: 'closesAt',
|
| 119 |
+
lastSynced: 'lastSynced'
|
| 120 |
+
};
|
| 121 |
+
|
| 122 |
+
exports.Prisma.AISignalScalarFieldEnum = {
|
| 123 |
+
id: 'id',
|
| 124 |
+
marketId: 'marketId',
|
| 125 |
+
signal: 'signal',
|
| 126 |
+
confidence: 'confidence',
|
| 127 |
+
summary: 'summary',
|
| 128 |
+
keyRisk: 'keyRisk',
|
| 129 |
+
newsCount: 'newsCount',
|
| 130 |
+
modelVersion: 'modelVersion',
|
| 131 |
+
impliedProb: 'impliedProb',
|
| 132 |
+
fairProb: 'fairProb',
|
| 133 |
+
edgePoints: 'edgePoints',
|
| 134 |
+
generatedAt: 'generatedAt'
|
| 135 |
+
};
|
| 136 |
+
|
| 137 |
+
exports.Prisma.PositionScalarFieldEnum = {
|
| 138 |
+
id: 'id',
|
| 139 |
+
userId: 'userId',
|
| 140 |
+
marketId: 'marketId',
|
| 141 |
+
outcome: 'outcome',
|
| 142 |
+
amountEur: 'amountEur',
|
| 143 |
+
entryPrice: 'entryPrice',
|
| 144 |
+
currentPrice: 'currentPrice',
|
| 145 |
+
pnl: 'pnl',
|
| 146 |
+
kellyFraction: 'kellyFraction',
|
| 147 |
+
status: 'status',
|
| 148 |
+
openedAt: 'openedAt',
|
| 149 |
+
closedAt: 'closedAt'
|
| 150 |
+
};
|
| 151 |
+
|
| 152 |
+
exports.Prisma.WatchlistScalarFieldEnum = {
|
| 153 |
+
id: 'id',
|
| 154 |
+
userId: 'userId',
|
| 155 |
+
marketId: 'marketId',
|
| 156 |
+
alertThreshold: 'alertThreshold',
|
| 157 |
+
createdAt: 'createdAt'
|
| 158 |
+
};
|
| 159 |
+
|
| 160 |
+
exports.Prisma.AlertScalarFieldEnum = {
|
| 161 |
+
id: 'id',
|
| 162 |
+
userId: 'userId',
|
| 163 |
+
marketId: 'marketId',
|
| 164 |
+
type: 'type',
|
| 165 |
+
message: 'message',
|
| 166 |
+
sentAt: 'sentAt'
|
| 167 |
+
};
|
| 168 |
+
|
| 169 |
+
exports.Prisma.SortOrder = {
|
| 170 |
+
asc: 'asc',
|
| 171 |
+
desc: 'desc'
|
| 172 |
+
};
|
| 173 |
+
|
| 174 |
+
exports.Prisma.NullsOrder = {
|
| 175 |
+
first: 'first',
|
| 176 |
+
last: 'last'
|
| 177 |
+
};
|
| 178 |
+
|
| 179 |
+
|
| 180 |
+
exports.Prisma.ModelName = {
|
| 181 |
+
User: 'User',
|
| 182 |
+
Market: 'Market',
|
| 183 |
+
AISignal: 'AISignal',
|
| 184 |
+
Position: 'Position',
|
| 185 |
+
Watchlist: 'Watchlist',
|
| 186 |
+
Alert: 'Alert'
|
| 187 |
+
};
|
| 188 |
+
/**
|
| 189 |
+
* Create the Client
|
| 190 |
+
*/
|
| 191 |
+
const config = {
|
| 192 |
+
"generator": {
|
| 193 |
+
"name": "client",
|
| 194 |
+
"provider": {
|
| 195 |
+
"fromEnvVar": null,
|
| 196 |
+
"value": "prisma-client-js"
|
| 197 |
+
},
|
| 198 |
+
"output": {
|
| 199 |
+
"value": "/Users/josesalazar/proyecto-hackaton/backend/node_modules/@prisma/client",
|
| 200 |
+
"fromEnvVar": null
|
| 201 |
+
},
|
| 202 |
+
"config": {
|
| 203 |
+
"engineType": "library"
|
| 204 |
+
},
|
| 205 |
+
"binaryTargets": [
|
| 206 |
+
{
|
| 207 |
+
"fromEnvVar": null,
|
| 208 |
+
"value": "darwin-arm64",
|
| 209 |
+
"native": true
|
| 210 |
+
}
|
| 211 |
+
],
|
| 212 |
+
"previewFeatures": [],
|
| 213 |
+
"sourceFilePath": "/Users/josesalazar/proyecto-hackaton/backend/prisma/schema.prisma"
|
| 214 |
+
},
|
| 215 |
+
"relativeEnvPaths": {
|
| 216 |
+
"rootEnvPath": null,
|
| 217 |
+
"schemaEnvPath": "../../../.env"
|
| 218 |
+
},
|
| 219 |
+
"relativePath": "../../../prisma",
|
| 220 |
+
"clientVersion": "6.19.3",
|
| 221 |
+
"engineVersion": "c2990dca591cba766e3b7ef5d9e8a84796e47ab7",
|
| 222 |
+
"datasourceNames": [
|
| 223 |
+
"db"
|
| 224 |
+
],
|
| 225 |
+
"activeProvider": "sqlite",
|
| 226 |
+
"postinstall": false,
|
| 227 |
+
"inlineDatasources": {
|
| 228 |
+
"db": {
|
| 229 |
+
"url": {
|
| 230 |
+
"fromEnvVar": "DATABASE_URL",
|
| 231 |
+
"value": null
|
| 232 |
+
}
|
| 233 |
+
}
|
| 234 |
+
},
|
| 235 |
+
"inlineSchema": "/**\n * Schema de Prisma ORM para base de datos SQLite.\n * Define 6 modelos: User, Market, AISignal, Position, Watchlist, Alert.\n * Relaciones:\n * - Market 1:N AISignal, Position, Watchlist, Alert\n * - User 1:N Position, Watchlist, Alert\n * No modificar sin consenso del equipo. Generar migraciones con:\n * npx prisma migrate dev\n * npx prisma generate\n */\n\ngenerator client {\n provider = \"prisma-client-js\"\n}\n\ndatasource db {\n provider = \"sqlite\"\n url = env(\"DATABASE_URL\")\n}\n\nmodel User {\n id Int @id @default(autoincrement())\n email String @unique\n passwordHash String\n isActive Boolean @default(true)\n telegramChatId String? // Configurado manualmente para demo\n createdAt DateTime @default(now())\n updatedAt DateTime @updatedAt\n\n positions Position[]\n watchlist Watchlist[]\n alerts Alert[]\n}\n\nmodel Market {\n id String @id // ID nativo de Polymarket\n question String // Texto de la pregunta del mercado\n category String? // politics | crypto | economics | sports\n countryCode String? // ISO2 — usado por Leaflet para burbujas\n yesPrice Float? // Precio YES: 0.0 a 1.0\n noPrice Float? // Precio NO: 0.0 a 1.0\n volumeEur Float? // Volumen en Eur\n liquidityEur Float? // Liquidez en Eur\n spread Float? // Bid/ask spread (0-1, ej 0.02 = 2c)\n bestBid Float? // Mejor oferta de compra\n bestAsk Float? // Mejor oferta de venta\n clobTokenId String? // YES outcome CLOB token ID (para prices-history)\n analyzable Boolean @default(true) // Si la IA tiene edge plausible aqui\n status String @default(\"active\") // active | closed | resolved\n closesAt DateTime? // Fecha de cierre del mercado\n lastSynced DateTime @default(now()) // Ultima sincronizacion de precios\n\n signals AISignal[]\n positions Position[]\n watchlist Watchlist[]\n alerts Alert[]\n}\n\nmodel AISignal {\n id Int @id @default(autoincrement())\n marketId String\n market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)\n signal String // bullish | bearish | neutral\n confidence Float // 0.0 a 1.0\n summary String? // 2 frases generadas por Qwen3\n keyRisk String? // 1 frase de riesgo principal\n newsCount Int @default(0) // Titulares relevantes usados\n modelVersion String @default(\"Qwen3-8B\") // Modelo LLM que genero la senal\n impliedProb Float? // Probabilidad implicita YES al generar (0-1)\n fairProb Float? // Probabilidad \"justa\" segun IA (0-1)\n edgePoints Float? // (fairProb - impliedProb) * 100, signo conserva direccion\n generatedAt DateTime @default(now())\n\n @@index([marketId, generatedAt])\n}\n\nmodel Position {\n id Int @id @default(autoincrement())\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n marketId String\n market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)\n outcome String // YES | NO\n amountEur Float // Capital virtual apostado\n entryPrice Float // Precio al abrir la posicion\n currentPrice Float? // Precio actual (actualizado por scheduler)\n pnl Float @default(0) // Profit and Loss calculado\n kellyFraction Float? // Fraccion de Kelly al abrir\n status String @default(\"open\") // open | closed\n openedAt DateTime @default(now())\n closedAt DateTime?\n\n @@index([userId, status])\n @@index([marketId])\n}\n\nmodel Watchlist {\n id Int @id @default(autoincrement())\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n marketId String\n market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)\n alertThreshold Float? // Umbral de precio para alerta Telegram\n createdAt DateTime @default(now())\n\n @@unique([userId, marketId])\n @@index([userId])\n}\n\nmodel Alert {\n id Int @id @default(autoincrement())\n userId Int\n user User @relation(fields: [userId], references: [id], onDelete: Cascade)\n marketId String\n market Market @relation(fields: [marketId], references: [id], onDelete: Cascade)\n type String // price_threshold | signal_change\n message String // Texto enviado por Telegram\n sentAt DateTime @default(now())\n\n @@index([userId, sentAt])\n @@index([marketId])\n}\n",
|
| 236 |
+
"inlineSchemaHash": "317e51352744228f8aa2577b7d08529ce57f6e47ee90dbf1318c8edc1a7164fb",
|
| 237 |
+
"copyEngine": true
|
| 238 |
+
}
|
| 239 |
+
config.dirname = '/'
|
| 240 |
+
|
| 241 |
+
config.runtimeDataModel = JSON.parse("{\"models\":{\"User\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"email\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"passwordHash\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"isActive\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"telegramChatId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"positions\",\"kind\":\"object\",\"type\":\"Position\",\"relationName\":\"PositionToUser\"},{\"name\":\"watchlist\",\"kind\":\"object\",\"type\":\"Watchlist\",\"relationName\":\"UserToWatchlist\"},{\"name\":\"alerts\",\"kind\":\"object\",\"type\":\"Alert\",\"relationName\":\"AlertToUser\"}],\"dbName\":null},\"Market\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"question\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"category\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"countryCode\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"yesPrice\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"noPrice\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"volumeEur\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"liquidityEur\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"spread\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"bestBid\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"bestAsk\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"clobTokenId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"analyzable\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"status\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"closesAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"lastSynced\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"signals\",\"kind\":\"object\",\"type\":\"AISignal\",\"relationName\":\"AISignalToMarket\"},{\"name\":\"positions\",\"kind\":\"object\",\"type\":\"Position\",\"relationName\":\"MarketToPosition\"},{\"name\":\"watchlist\",\"kind\":\"object\",\"type\":\"Watchlist\",\"relationName\":\"MarketToWatchlist\"},{\"name\":\"alerts\",\"kind\":\"object\",\"type\":\"Alert\",\"relationName\":\"AlertToMarket\"}],\"dbName\":null},\"AISignal\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"marketId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"market\",\"kind\":\"object\",\"type\":\"Market\",\"relationName\":\"AISignalToMarket\"},{\"name\":\"signal\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"confidence\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"summary\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"keyRisk\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"newsCount\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"modelVersion\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"impliedProb\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"fairProb\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"edgePoints\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"generatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Position\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"PositionToUser\"},{\"name\":\"marketId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"market\",\"kind\":\"object\",\"type\":\"Market\",\"relationName\":\"MarketToPosition\"},{\"name\":\"outcome\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"amountEur\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"entryPrice\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"currentPrice\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"pnl\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"kellyFraction\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"status\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"openedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"closedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Watchlist\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"UserToWatchlist\"},{\"name\":\"marketId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"market\",\"kind\":\"object\",\"type\":\"Market\",\"relationName\":\"MarketToWatchlist\"},{\"name\":\"alertThreshold\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Alert\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"userId\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"user\",\"kind\":\"object\",\"type\":\"User\",\"relationName\":\"AlertToUser\"},{\"name\":\"marketId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"market\",\"kind\":\"object\",\"type\":\"Market\",\"relationName\":\"AlertToMarket\"},{\"name\":\"type\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"message\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sentAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null}},\"enums\":{},\"types\":{}}")
|
| 242 |
+
defineDmmfProperty(exports.Prisma, config.runtimeDataModel)
|
| 243 |
+
config.engineWasm = {
|
| 244 |
+
getRuntime: async () => require('./query_engine_bg.js'),
|
| 245 |
+
getQueryEngineWasmModule: async () => {
|
| 246 |
+
const loader = (await import('#wasm-engine-loader')).default
|
| 247 |
+
const engine = (await loader).default
|
| 248 |
+
return engine
|
| 249 |
+
}
|
| 250 |
+
}
|
| 251 |
+
config.compilerWasm = undefined
|
| 252 |
+
|
| 253 |
+
config.injectableEdgeEnv = () => ({
|
| 254 |
+
parsed: {
|
| 255 |
+
DATABASE_URL: typeof globalThis !== 'undefined' && globalThis['DATABASE_URL'] || typeof process !== 'undefined' && process.env && process.env.DATABASE_URL || undefined
|
| 256 |
+
}
|
| 257 |
+
})
|
| 258 |
+
|
| 259 |
+
if (typeof globalThis !== 'undefined' && globalThis['DEBUG'] || typeof process !== 'undefined' && process.env && process.env.DEBUG || undefined) {
|
| 260 |
+
Debug.enable(typeof globalThis !== 'undefined' && globalThis['DEBUG'] || typeof process !== 'undefined' && process.env && process.env.DEBUG || undefined)
|
| 261 |
+
}
|
| 262 |
+
|
| 263 |
+
const PrismaClient = getPrismaClient(config)
|
| 264 |
+
exports.PrismaClient = PrismaClient
|
| 265 |
+
Object.assign(exports, Prisma)
|
| 266 |
+
|
backend/node_modules/@prisma/config/dist/index.d.ts
ADDED
|
@@ -0,0 +1,650 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import { Schema } from 'effect';
|
| 2 |
+
|
| 3 |
+
/**
|
| 4 |
+
* An interface that exposes some basic information about the
|
| 5 |
+
* adapter like its name and provider type.
|
| 6 |
+
*/
|
| 7 |
+
declare interface AdapterInfo {
|
| 8 |
+
readonly provider: Provider;
|
| 9 |
+
readonly adapterName: (typeof officialPrismaAdapters)[number] | (string & {});
|
| 10 |
+
}
|
| 11 |
+
|
| 12 |
+
declare type ArgScalarType = 'string' | 'int' | 'bigint' | 'float' | 'decimal' | 'boolean' | 'enum' | 'uuid' | 'json' | 'datetime' | 'bytes' | 'unknown';
|
| 13 |
+
|
| 14 |
+
declare type ArgType = {
|
| 15 |
+
scalarType: ArgScalarType;
|
| 16 |
+
dbType?: string;
|
| 17 |
+
arity: Arity;
|
| 18 |
+
};
|
| 19 |
+
|
| 20 |
+
declare type Arity = 'scalar' | 'list';
|
| 21 |
+
|
| 22 |
+
declare type ColumnType = (typeof ColumnTypeEnum)[keyof typeof ColumnTypeEnum];
|
| 23 |
+
|
| 24 |
+
declare const ColumnTypeEnum: {
|
| 25 |
+
readonly Int32: 0;
|
| 26 |
+
readonly Int64: 1;
|
| 27 |
+
readonly Float: 2;
|
| 28 |
+
readonly Double: 3;
|
| 29 |
+
readonly Numeric: 4;
|
| 30 |
+
readonly Boolean: 5;
|
| 31 |
+
readonly Character: 6;
|
| 32 |
+
readonly Text: 7;
|
| 33 |
+
readonly Date: 8;
|
| 34 |
+
readonly Time: 9;
|
| 35 |
+
readonly DateTime: 10;
|
| 36 |
+
readonly Json: 11;
|
| 37 |
+
readonly Enum: 12;
|
| 38 |
+
readonly Bytes: 13;
|
| 39 |
+
readonly Set: 14;
|
| 40 |
+
readonly Uuid: 15;
|
| 41 |
+
readonly Int32Array: 64;
|
| 42 |
+
readonly Int64Array: 65;
|
| 43 |
+
readonly FloatArray: 66;
|
| 44 |
+
readonly DoubleArray: 67;
|
| 45 |
+
readonly NumericArray: 68;
|
| 46 |
+
readonly BooleanArray: 69;
|
| 47 |
+
readonly CharacterArray: 70;
|
| 48 |
+
readonly TextArray: 71;
|
| 49 |
+
readonly DateArray: 72;
|
| 50 |
+
readonly TimeArray: 73;
|
| 51 |
+
readonly DateTimeArray: 74;
|
| 52 |
+
readonly JsonArray: 75;
|
| 53 |
+
readonly EnumArray: 76;
|
| 54 |
+
readonly BytesArray: 77;
|
| 55 |
+
readonly UuidArray: 78;
|
| 56 |
+
readonly UnknownNumber: 128;
|
| 57 |
+
};
|
| 58 |
+
|
| 59 |
+
export declare type ConfigDiagnostic = {
|
| 60 |
+
_tag: 'log';
|
| 61 |
+
value: (formatters: InjectFormatters) => () => void;
|
| 62 |
+
} | {
|
| 63 |
+
_tag: 'warn';
|
| 64 |
+
value: (formatters: InjectFormatters) => () => void;
|
| 65 |
+
};
|
| 66 |
+
|
| 67 |
+
export declare type ConfigFromFile = {
|
| 68 |
+
resolvedPath: string;
|
| 69 |
+
config: PrismaConfigInternal;
|
| 70 |
+
error?: never;
|
| 71 |
+
diagnostics: ConfigDiagnostic[];
|
| 72 |
+
} | {
|
| 73 |
+
resolvedPath: string;
|
| 74 |
+
config?: never;
|
| 75 |
+
error: LoadConfigFromFileError;
|
| 76 |
+
diagnostics: ConfigDiagnostic[];
|
| 77 |
+
} | {
|
| 78 |
+
resolvedPath: null;
|
| 79 |
+
config: PrismaConfigInternal;
|
| 80 |
+
error?: never;
|
| 81 |
+
diagnostics: ConfigDiagnostic[];
|
| 82 |
+
};
|
| 83 |
+
|
| 84 |
+
declare type ConnectionInfo = {
|
| 85 |
+
schemaName?: string;
|
| 86 |
+
maxBindValues?: number;
|
| 87 |
+
supportsRelationJoins: boolean;
|
| 88 |
+
};
|
| 89 |
+
|
| 90 |
+
/**
|
| 91 |
+
* This default config can be used as basis for unit and integration tests.
|
| 92 |
+
*/
|
| 93 |
+
export declare function defaultTestConfig(): PrismaConfigInternal;
|
| 94 |
+
|
| 95 |
+
/**
|
| 96 |
+
* Define the configuration for the Prisma Development Kit.
|
| 97 |
+
*/
|
| 98 |
+
export declare function defineConfig(configInput: PrismaConfig): PrismaConfigInternal;
|
| 99 |
+
|
| 100 |
+
/**
|
| 101 |
+
* A generic driver adapter factory that allows the user to instantiate a
|
| 102 |
+
* driver adapter. The query and result types are specific to the adapter.
|
| 103 |
+
*/
|
| 104 |
+
declare interface DriverAdapterFactory<Query, Result> extends AdapterInfo {
|
| 105 |
+
/**
|
| 106 |
+
* Instantiate a driver adapter.
|
| 107 |
+
*/
|
| 108 |
+
connect(): Promise<Queryable<Query, Result>>;
|
| 109 |
+
}
|
| 110 |
+
|
| 111 |
+
declare type EnumsConfigShape = {
|
| 112 |
+
/**
|
| 113 |
+
* List of enums that are externally managed.
|
| 114 |
+
* Prisma will not modify the structure of these enums and not generate migrations for those enums.
|
| 115 |
+
* These enums will still be represented in schema.prisma file and be available in the client API.
|
| 116 |
+
*/
|
| 117 |
+
external?: string[];
|
| 118 |
+
};
|
| 119 |
+
|
| 120 |
+
export declare function env<Env extends Record<string, string | undefined>>(name: keyof Env & string): string;
|
| 121 |
+
|
| 122 |
+
declare type Error_2 = MappedError & {
|
| 123 |
+
originalCode?: string;
|
| 124 |
+
originalMessage?: string;
|
| 125 |
+
};
|
| 126 |
+
|
| 127 |
+
declare type ErrorCapturingFunction<T> = T extends (...args: infer A) => Promise<infer R> ? (...args: A) => Promise<Result<ErrorCapturingInterface<R>>> : T extends (...args: infer A) => infer R ? (...args: A) => Result<ErrorCapturingInterface<R>> : T;
|
| 128 |
+
|
| 129 |
+
declare type ErrorCapturingInterface<T> = {
|
| 130 |
+
[K in keyof T]: ErrorCapturingFunction<T[K]>;
|
| 131 |
+
};
|
| 132 |
+
|
| 133 |
+
declare interface ErrorCapturingSqlMigrationAwareDriverAdapterFactory extends ErrorCapturingInterface<SqlMigrationAwareDriverAdapterFactory> {
|
| 134 |
+
readonly errorRegistry: ErrorRegistry;
|
| 135 |
+
}
|
| 136 |
+
|
| 137 |
+
declare type ErrorRecord = {
|
| 138 |
+
error: unknown;
|
| 139 |
+
};
|
| 140 |
+
|
| 141 |
+
declare interface ErrorRegistry {
|
| 142 |
+
consumeError(id: number): ErrorRecord | undefined;
|
| 143 |
+
}
|
| 144 |
+
|
| 145 |
+
declare type ExperimentalConfig = {
|
| 146 |
+
/**
|
| 147 |
+
* Enable experimental adapter support.
|
| 148 |
+
*/
|
| 149 |
+
adapter?: boolean;
|
| 150 |
+
/**
|
| 151 |
+
* Enable experimental Prisma Studio features.
|
| 152 |
+
*/
|
| 153 |
+
studio?: boolean;
|
| 154 |
+
/**
|
| 155 |
+
* Enable experimental external tables support.
|
| 156 |
+
*/
|
| 157 |
+
externalTables?: boolean;
|
| 158 |
+
/**
|
| 159 |
+
* Enable experimental extensions support. This is required to use the `extensions` config option.
|
| 160 |
+
*/
|
| 161 |
+
extensions?: boolean;
|
| 162 |
+
};
|
| 163 |
+
|
| 164 |
+
export declare type InjectFormatters = {
|
| 165 |
+
dim: (data: string) => string;
|
| 166 |
+
log: (data: string) => void;
|
| 167 |
+
warn: (data: string) => void;
|
| 168 |
+
link: (data: string) => string;
|
| 169 |
+
};
|
| 170 |
+
|
| 171 |
+
declare type IsolationLevel = 'READ UNCOMMITTED' | 'READ COMMITTED' | 'REPEATABLE READ' | 'SNAPSHOT' | 'SERIALIZABLE';
|
| 172 |
+
|
| 173 |
+
/**
|
| 174 |
+
* Load a Prisma config file from the given directory.
|
| 175 |
+
* This function may fail, but it will never throw.
|
| 176 |
+
* The possible error is returned in the result object, so the caller can handle it as needed.
|
| 177 |
+
*/
|
| 178 |
+
export declare function loadConfigFromFile({ configFile, configRoot, }: LoadConfigFromFileInput): Promise<ConfigFromFile>;
|
| 179 |
+
|
| 180 |
+
export declare type LoadConfigFromFileError = {
|
| 181 |
+
/**
|
| 182 |
+
* The config file was not found at the specified path.
|
| 183 |
+
*/
|
| 184 |
+
_tag: 'ConfigFileNotFound';
|
| 185 |
+
} | {
|
| 186 |
+
_tag: 'ConfigLoadError';
|
| 187 |
+
error: Error;
|
| 188 |
+
} | {
|
| 189 |
+
_tag: 'ConfigFileSyntaxError';
|
| 190 |
+
error: Error;
|
| 191 |
+
} | {
|
| 192 |
+
_tag: 'UnknownError';
|
| 193 |
+
error: Error;
|
| 194 |
+
};
|
| 195 |
+
|
| 196 |
+
declare type LoadConfigFromFileInput = {
|
| 197 |
+
/**
|
| 198 |
+
* The path to the config file to load. If not provided, we will attempt to find a config file in the `configRoot` directory.
|
| 199 |
+
*/
|
| 200 |
+
configFile?: string;
|
| 201 |
+
/**
|
| 202 |
+
* The directory to search for the config file in. Defaults to the current working directory.
|
| 203 |
+
*/
|
| 204 |
+
configRoot?: string;
|
| 205 |
+
};
|
| 206 |
+
|
| 207 |
+
/**
|
| 208 |
+
* User's Prisma configuration should live in `prisma.config.ts` instead of `package.json#prisma`.
|
| 209 |
+
* See: https://pris.ly/prisma-config.
|
| 210 |
+
*
|
| 211 |
+
* This function returns `null` if no `package.json` is found, or if the `prisma` property is not defined therein.
|
| 212 |
+
*
|
| 213 |
+
* TODO: remove in Prisma 7.
|
| 214 |
+
* @deprecated
|
| 215 |
+
*/
|
| 216 |
+
export declare function loadConfigFromPackageJson(cwd?: string): Promise<{
|
| 217 |
+
config: PrismaConfigPackageJson;
|
| 218 |
+
loadedFromFile: string;
|
| 219 |
+
} | null>;
|
| 220 |
+
|
| 221 |
+
declare type MappedError = {
|
| 222 |
+
kind: 'GenericJs';
|
| 223 |
+
id: number;
|
| 224 |
+
} | {
|
| 225 |
+
kind: 'UnsupportedNativeDataType';
|
| 226 |
+
type: string;
|
| 227 |
+
} | {
|
| 228 |
+
kind: 'InvalidIsolationLevel';
|
| 229 |
+
level: string;
|
| 230 |
+
} | {
|
| 231 |
+
kind: 'LengthMismatch';
|
| 232 |
+
column?: string;
|
| 233 |
+
} | {
|
| 234 |
+
kind: 'UniqueConstraintViolation';
|
| 235 |
+
constraint?: {
|
| 236 |
+
fields: string[];
|
| 237 |
+
} | {
|
| 238 |
+
index: string;
|
| 239 |
+
} | {
|
| 240 |
+
foreignKey: {};
|
| 241 |
+
};
|
| 242 |
+
} | {
|
| 243 |
+
kind: 'NullConstraintViolation';
|
| 244 |
+
constraint?: {
|
| 245 |
+
fields: string[];
|
| 246 |
+
} | {
|
| 247 |
+
index: string;
|
| 248 |
+
} | {
|
| 249 |
+
foreignKey: {};
|
| 250 |
+
};
|
| 251 |
+
} | {
|
| 252 |
+
kind: 'ForeignKeyConstraintViolation';
|
| 253 |
+
constraint?: {
|
| 254 |
+
fields: string[];
|
| 255 |
+
} | {
|
| 256 |
+
index: string;
|
| 257 |
+
} | {
|
| 258 |
+
foreignKey: {};
|
| 259 |
+
};
|
| 260 |
+
} | {
|
| 261 |
+
kind: 'DatabaseNotReachable';
|
| 262 |
+
host?: string;
|
| 263 |
+
port?: number;
|
| 264 |
+
} | {
|
| 265 |
+
kind: 'DatabaseDoesNotExist';
|
| 266 |
+
db?: string;
|
| 267 |
+
} | {
|
| 268 |
+
kind: 'DatabaseAlreadyExists';
|
| 269 |
+
db?: string;
|
| 270 |
+
} | {
|
| 271 |
+
kind: 'DatabaseAccessDenied';
|
| 272 |
+
db?: string;
|
| 273 |
+
} | {
|
| 274 |
+
kind: 'ConnectionClosed';
|
| 275 |
+
} | {
|
| 276 |
+
kind: 'TlsConnectionError';
|
| 277 |
+
reason: string;
|
| 278 |
+
} | {
|
| 279 |
+
kind: 'AuthenticationFailed';
|
| 280 |
+
user?: string;
|
| 281 |
+
} | {
|
| 282 |
+
kind: 'TransactionWriteConflict';
|
| 283 |
+
} | {
|
| 284 |
+
kind: 'TableDoesNotExist';
|
| 285 |
+
table?: string;
|
| 286 |
+
} | {
|
| 287 |
+
kind: 'ColumnNotFound';
|
| 288 |
+
column?: string;
|
| 289 |
+
} | {
|
| 290 |
+
kind: 'TooManyConnections';
|
| 291 |
+
cause: string;
|
| 292 |
+
} | {
|
| 293 |
+
kind: 'ValueOutOfRange';
|
| 294 |
+
cause: string;
|
| 295 |
+
} | {
|
| 296 |
+
kind: 'MissingFullTextSearchIndex';
|
| 297 |
+
} | {
|
| 298 |
+
kind: 'SocketTimeout';
|
| 299 |
+
} | {
|
| 300 |
+
kind: 'InconsistentColumnData';
|
| 301 |
+
cause: string;
|
| 302 |
+
} | {
|
| 303 |
+
kind: 'TransactionAlreadyClosed';
|
| 304 |
+
cause: string;
|
| 305 |
+
} | {
|
| 306 |
+
kind: 'postgres';
|
| 307 |
+
code: string;
|
| 308 |
+
severity: string;
|
| 309 |
+
message: string;
|
| 310 |
+
detail: string | undefined;
|
| 311 |
+
column: string | undefined;
|
| 312 |
+
hint: string | undefined;
|
| 313 |
+
} | {
|
| 314 |
+
kind: 'mysql';
|
| 315 |
+
code: number;
|
| 316 |
+
message: string;
|
| 317 |
+
state: string;
|
| 318 |
+
} | {
|
| 319 |
+
kind: 'sqlite';
|
| 320 |
+
/**
|
| 321 |
+
* Sqlite extended error code: https://www.sqlite.org/rescode.html
|
| 322 |
+
*/
|
| 323 |
+
extendedCode: number;
|
| 324 |
+
message: string;
|
| 325 |
+
} | {
|
| 326 |
+
kind: 'mssql';
|
| 327 |
+
code: number;
|
| 328 |
+
message: string;
|
| 329 |
+
};
|
| 330 |
+
|
| 331 |
+
declare type MigrationsConfigShape = {
|
| 332 |
+
/**
|
| 333 |
+
* The path to the directory where Prisma should store migration files, and look for them.
|
| 334 |
+
*/
|
| 335 |
+
path?: string;
|
| 336 |
+
/**
|
| 337 |
+
* Provide a SQL script that will be used to setup external tables and enums during migration diffing.
|
| 338 |
+
* Also see `tables.external` and `enums.external`.
|
| 339 |
+
*/
|
| 340 |
+
initShadowDb?: string;
|
| 341 |
+
/**
|
| 342 |
+
* The command to run to seed the database after schema migrations are applied.
|
| 343 |
+
*/
|
| 344 |
+
seed?: string;
|
| 345 |
+
};
|
| 346 |
+
|
| 347 |
+
declare const officialPrismaAdapters: readonly ["@prisma/adapter-planetscale", "@prisma/adapter-neon", "@prisma/adapter-libsql", "@prisma/adapter-better-sqlite3", "@prisma/adapter-d1", "@prisma/adapter-pg", "@prisma/adapter-mssql", "@prisma/adapter-mariadb"];
|
| 348 |
+
|
| 349 |
+
declare const PRISMA_CONFIG_INTERNAL_BRAND: unique symbol;
|
| 350 |
+
|
| 351 |
+
/**
|
| 352 |
+
* The configuration for the Prisma Development Kit, before it is passed to the `defineConfig` function.
|
| 353 |
+
* Thanks to the branding, this type is opaque and cannot be constructed directly.
|
| 354 |
+
*/
|
| 355 |
+
export declare type PrismaConfig = PrismaConfigUnconditional & SchemaEngineConfig;
|
| 356 |
+
|
| 357 |
+
export declare class PrismaConfigEnvError extends Error {
|
| 358 |
+
constructor(name: string);
|
| 359 |
+
}
|
| 360 |
+
|
| 361 |
+
/**
|
| 362 |
+
* The configuration for the Prisma Development Kit, after it has been parsed and processed
|
| 363 |
+
* by the `defineConfig` function.
|
| 364 |
+
* Thanks to the branding, this type is opaque and cannot be constructed directly.
|
| 365 |
+
*/
|
| 366 |
+
export declare type PrismaConfigInternal = _PrismaConfigInternal & {
|
| 367 |
+
__brand: typeof PRISMA_CONFIG_INTERNAL_BRAND;
|
| 368 |
+
};
|
| 369 |
+
|
| 370 |
+
declare type _PrismaConfigInternal = Omit<PrismaConfig, 'engine' | 'datasource' | 'adapter'> & {
|
| 371 |
+
loadedFromFile: string | null;
|
| 372 |
+
/**
|
| 373 |
+
* The deprecated Prisma configuration from `package.json#prisma`.
|
| 374 |
+
* This is set to `null` if no `package.json#prisma` config was found.
|
| 375 |
+
* The configuration read from the Prisma config file (e.g., `prisma.config.ts`) takes precedence over
|
| 376 |
+
* this `package.json#prisma` config.
|
| 377 |
+
* @deprecated
|
| 378 |
+
*/
|
| 379 |
+
deprecatedPackageJson: {
|
| 380 |
+
/**
|
| 381 |
+
* The Prisma configuration from `package.json#prisma`.
|
| 382 |
+
* @deprecated
|
| 383 |
+
*/
|
| 384 |
+
config: PrismaConfigPackageJson;
|
| 385 |
+
/**
|
| 386 |
+
* The path from where the `package.json` config was loaded.
|
| 387 |
+
* @deprecated
|
| 388 |
+
*/
|
| 389 |
+
loadedFromFile: string;
|
| 390 |
+
} | null;
|
| 391 |
+
} & ({
|
| 392 |
+
engine: 'classic';
|
| 393 |
+
datasource: {
|
| 394 |
+
url: string;
|
| 395 |
+
shadowDatabaseUrl?: string;
|
| 396 |
+
};
|
| 397 |
+
} | {
|
| 398 |
+
engine: 'js';
|
| 399 |
+
adapter: () => Promise<ErrorCapturingSqlMigrationAwareDriverAdapterFactory>;
|
| 400 |
+
} | {
|
| 401 |
+
engine?: never;
|
| 402 |
+
});
|
| 403 |
+
|
| 404 |
+
/**
|
| 405 |
+
* Example:
|
| 406 |
+
* ```json
|
| 407 |
+
* {
|
| 408 |
+
* "schema": "./prisma/schema.prisma",
|
| 409 |
+
* "seed": "tsx ./prisma/seed.ts"
|
| 410 |
+
* }
|
| 411 |
+
* ```
|
| 412 |
+
*/
|
| 413 |
+
declare type PrismaConfigPackageJson = {
|
| 414 |
+
schema?: string;
|
| 415 |
+
seed?: string;
|
| 416 |
+
};
|
| 417 |
+
|
| 418 |
+
declare type PrismaConfigUnconditional = {
|
| 419 |
+
/**
|
| 420 |
+
* Experimental feature gates. Each experimental feature must be explicitly enabled.
|
| 421 |
+
*/
|
| 422 |
+
experimental?: Simplify<ExperimentalConfig>;
|
| 423 |
+
/**
|
| 424 |
+
* The path to the schema file, or path to a folder that shall be recursively searched for *.prisma files.
|
| 425 |
+
*/
|
| 426 |
+
schema?: string;
|
| 427 |
+
/**
|
| 428 |
+
* The configuration for Prisma Studio.
|
| 429 |
+
*/
|
| 430 |
+
studio?: Simplify<PrismaStudioConfigShape>;
|
| 431 |
+
/**
|
| 432 |
+
* Configuration for Prisma migrations.
|
| 433 |
+
*/
|
| 434 |
+
migrations?: Simplify<MigrationsConfigShape>;
|
| 435 |
+
/**
|
| 436 |
+
* Configuration for the database table entities.
|
| 437 |
+
*/
|
| 438 |
+
tables?: Simplify<TablesConfigShape>;
|
| 439 |
+
/**
|
| 440 |
+
* Configuration for the database enum entities.
|
| 441 |
+
*/
|
| 442 |
+
enums?: Simplify<EnumsConfigShape>;
|
| 443 |
+
/**
|
| 444 |
+
* Configuration for the database view entities.
|
| 445 |
+
*/
|
| 446 |
+
views?: Simplify<ViewsConfigShape>;
|
| 447 |
+
/**
|
| 448 |
+
* Configuration for the `typedSql` preview feature.
|
| 449 |
+
*/
|
| 450 |
+
typedSql?: Simplify<TypedSqlConfigShape>;
|
| 451 |
+
};
|
| 452 |
+
|
| 453 |
+
declare type PrismaStudioConfigShape = {
|
| 454 |
+
adapter: () => Promise<SqlMigrationAwareDriverAdapterFactory>;
|
| 455 |
+
};
|
| 456 |
+
|
| 457 |
+
declare type Provider = 'mysql' | 'postgres' | 'sqlite' | 'sqlserver';
|
| 458 |
+
|
| 459 |
+
declare interface Queryable<Query, Result> extends AdapterInfo {
|
| 460 |
+
/**
|
| 461 |
+
* Execute a query and return its result.
|
| 462 |
+
*/
|
| 463 |
+
queryRaw(params: Query): Promise<Result>;
|
| 464 |
+
/**
|
| 465 |
+
* Execute a query and return the number of affected rows.
|
| 466 |
+
*/
|
| 467 |
+
executeRaw(params: Query): Promise<number>;
|
| 468 |
+
}
|
| 469 |
+
|
| 470 |
+
declare type Result<T> = {
|
| 471 |
+
map<U>(fn: (value: T) => U): Result<U>;
|
| 472 |
+
flatMap<U>(fn: (value: T) => Result<U>): Result<U>;
|
| 473 |
+
} & ({
|
| 474 |
+
readonly ok: true;
|
| 475 |
+
readonly value: T;
|
| 476 |
+
} | {
|
| 477 |
+
readonly ok: false;
|
| 478 |
+
readonly error: Error_2;
|
| 479 |
+
});
|
| 480 |
+
|
| 481 |
+
declare type SchemaEngineConfig = SchemaEngineConfigJs | SchemaEngineConfigClassic | SchemaEngineConfigAbsent;
|
| 482 |
+
|
| 483 |
+
declare type SchemaEngineConfigAbsent = {
|
| 484 |
+
engine?: never;
|
| 485 |
+
};
|
| 486 |
+
|
| 487 |
+
declare type SchemaEngineConfigClassic = {
|
| 488 |
+
/**
|
| 489 |
+
* Uses the "old classic" Schema Engine binary
|
| 490 |
+
*/
|
| 491 |
+
engine: 'classic';
|
| 492 |
+
/**
|
| 493 |
+
* The database connection configuration, which overwrites the `datasource` block's `url`-like attributes in the Prisma schema file.
|
| 494 |
+
*/
|
| 495 |
+
datasource: SchemaEngineConfigClassicDatasource;
|
| 496 |
+
};
|
| 497 |
+
|
| 498 |
+
export declare type SchemaEngineConfigClassicDatasource = {
|
| 499 |
+
url: string;
|
| 500 |
+
directUrl?: string;
|
| 501 |
+
shadowDatabaseUrl?: string;
|
| 502 |
+
};
|
| 503 |
+
|
| 504 |
+
export declare type SchemaEngineConfigInternal = SchemaEngineConfigJsInternal | SchemaEngineConfigClassic | SchemaEngineConfigAbsent;
|
| 505 |
+
|
| 506 |
+
declare type SchemaEngineConfigJs = {
|
| 507 |
+
/**
|
| 508 |
+
* Uses the new, unstable JavaScript based Schema Engine.
|
| 509 |
+
*/
|
| 510 |
+
engine: 'js';
|
| 511 |
+
/**
|
| 512 |
+
* The function that instantiates the driver adapter to use for the JavaScript based Schema Engine.
|
| 513 |
+
*/
|
| 514 |
+
adapter: () => Promise<SqlMigrationAwareDriverAdapterFactory>;
|
| 515 |
+
};
|
| 516 |
+
|
| 517 |
+
declare type SchemaEngineConfigJsInternal = {
|
| 518 |
+
/**
|
| 519 |
+
* Uses the new, unstable JavaScript based Schema Engine.
|
| 520 |
+
*/
|
| 521 |
+
engine: 'js';
|
| 522 |
+
/**
|
| 523 |
+
* The function that instantiates the driver adapter to use for the JavaScript based Schema Engine.
|
| 524 |
+
*/
|
| 525 |
+
adapter: () => Promise<ErrorCapturingSqlMigrationAwareDriverAdapterFactory>;
|
| 526 |
+
};
|
| 527 |
+
|
| 528 |
+
declare const SchemaEngineConfigJsInternal: Schema.Struct<{
|
| 529 |
+
engine: Schema.Literal<["js"]>;
|
| 530 |
+
adapter: Schema.declare<() => Promise<ErrorCapturingSqlMigrationAwareDriverAdapterFactory>, () => Promise<ErrorCapturingSqlMigrationAwareDriverAdapterFactory>, readonly [], never>;
|
| 531 |
+
}>;
|
| 532 |
+
|
| 533 |
+
/**
|
| 534 |
+
* Simplifies the type signature of a type.
|
| 535 |
+
* Re-exported from `effect/Types`.
|
| 536 |
+
*
|
| 537 |
+
* @example
|
| 538 |
+
* ```ts
|
| 539 |
+
* type Res = Simplify<{ a: number } & { b: number }> // { a: number; b: number; }
|
| 540 |
+
* ```
|
| 541 |
+
*/
|
| 542 |
+
declare type Simplify<A> = {
|
| 543 |
+
[K in keyof A]: A[K];
|
| 544 |
+
} extends infer B ? B : never;
|
| 545 |
+
|
| 546 |
+
declare interface SqlDriverAdapter extends SqlQueryable {
|
| 547 |
+
/**
|
| 548 |
+
* Execute multiple SQL statements separated by semicolon.
|
| 549 |
+
*/
|
| 550 |
+
executeScript(script: string): Promise<void>;
|
| 551 |
+
/**
|
| 552 |
+
* Start new transaction.
|
| 553 |
+
*/
|
| 554 |
+
startTransaction(isolationLevel?: IsolationLevel): Promise<Transaction>;
|
| 555 |
+
/**
|
| 556 |
+
* Optional method that returns extra connection info
|
| 557 |
+
*/
|
| 558 |
+
getConnectionInfo?(): ConnectionInfo;
|
| 559 |
+
/**
|
| 560 |
+
* Dispose of the connection and release any resources.
|
| 561 |
+
*/
|
| 562 |
+
dispose(): Promise<void>;
|
| 563 |
+
}
|
| 564 |
+
|
| 565 |
+
declare interface SqlDriverAdapterFactory extends DriverAdapterFactory<SqlQuery, SqlResultSet> {
|
| 566 |
+
connect(): Promise<SqlDriverAdapter>;
|
| 567 |
+
}
|
| 568 |
+
|
| 569 |
+
/**
|
| 570 |
+
* An SQL migration adapter that is aware of the notion of a shadow database
|
| 571 |
+
* and can create a connection to it.
|
| 572 |
+
*/
|
| 573 |
+
declare interface SqlMigrationAwareDriverAdapterFactory extends SqlDriverAdapterFactory {
|
| 574 |
+
connectToShadowDb(): Promise<SqlDriverAdapter>;
|
| 575 |
+
}
|
| 576 |
+
|
| 577 |
+
declare type SqlQuery = {
|
| 578 |
+
sql: string;
|
| 579 |
+
args: Array<unknown>;
|
| 580 |
+
argTypes: Array<ArgType>;
|
| 581 |
+
};
|
| 582 |
+
|
| 583 |
+
declare interface SqlQueryable extends Queryable<SqlQuery, SqlResultSet> {
|
| 584 |
+
}
|
| 585 |
+
|
| 586 |
+
declare interface SqlResultSet {
|
| 587 |
+
/**
|
| 588 |
+
* List of column types appearing in a database query, in the same order as `columnNames`.
|
| 589 |
+
* They are used within the Query Engine to convert values from JS to Quaint values.
|
| 590 |
+
*/
|
| 591 |
+
columnTypes: Array<ColumnType>;
|
| 592 |
+
/**
|
| 593 |
+
* List of column names appearing in a database query, in the same order as `columnTypes`.
|
| 594 |
+
*/
|
| 595 |
+
columnNames: Array<string>;
|
| 596 |
+
/**
|
| 597 |
+
* List of rows retrieved from a database query.
|
| 598 |
+
* Each row is a list of values, whose length matches `columnNames` and `columnTypes`.
|
| 599 |
+
*/
|
| 600 |
+
rows: Array<Array<unknown>>;
|
| 601 |
+
/**
|
| 602 |
+
* The last ID of an `INSERT` statement, if any.
|
| 603 |
+
* This is required for `AUTO_INCREMENT` columns in databases based on MySQL and SQLite.
|
| 604 |
+
*/
|
| 605 |
+
lastInsertId?: string;
|
| 606 |
+
}
|
| 607 |
+
|
| 608 |
+
declare type TablesConfigShape = {
|
| 609 |
+
/**
|
| 610 |
+
* List of tables that are externally managed.
|
| 611 |
+
* Prisma will not modify the structure of these tables and not generate migrations for those tables.
|
| 612 |
+
* These tables will still be represented in schema.prisma file and be available in the client API.
|
| 613 |
+
*/
|
| 614 |
+
external?: string[];
|
| 615 |
+
};
|
| 616 |
+
|
| 617 |
+
declare interface Transaction extends AdapterInfo, SqlQueryable {
|
| 618 |
+
/**
|
| 619 |
+
* Transaction options.
|
| 620 |
+
*/
|
| 621 |
+
readonly options: TransactionOptions;
|
| 622 |
+
/**
|
| 623 |
+
* Commit the transaction.
|
| 624 |
+
*/
|
| 625 |
+
commit(): Promise<void>;
|
| 626 |
+
/**
|
| 627 |
+
* Roll back the transaction.
|
| 628 |
+
*/
|
| 629 |
+
rollback(): Promise<void>;
|
| 630 |
+
}
|
| 631 |
+
|
| 632 |
+
declare type TransactionOptions = {
|
| 633 |
+
usePhantomQuery: boolean;
|
| 634 |
+
};
|
| 635 |
+
|
| 636 |
+
declare type TypedSqlConfigShape = {
|
| 637 |
+
/**
|
| 638 |
+
* The path to the directory where Prisma should look for the `typedSql` queries, where *.sql files will be loaded.
|
| 639 |
+
*/
|
| 640 |
+
path?: string;
|
| 641 |
+
};
|
| 642 |
+
|
| 643 |
+
declare type ViewsConfigShape = {
|
| 644 |
+
/**
|
| 645 |
+
* The path to the directory where Prisma should look for the view definitions, where *.sql files will be loaded.
|
| 646 |
+
*/
|
| 647 |
+
path?: string;
|
| 648 |
+
};
|
| 649 |
+
|
| 650 |
+
export { }
|
backend/node_modules/@prisma/config/dist/index.js
ADDED
|
@@ -0,0 +1,1000 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"use strict";
|
| 2 |
+
var __create = Object.create;
|
| 3 |
+
var __defProp = Object.defineProperty;
|
| 4 |
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
| 5 |
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
| 6 |
+
var __getProtoOf = Object.getPrototypeOf;
|
| 7 |
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
| 8 |
+
var __export = (target, all) => {
|
| 9 |
+
for (var name in all)
|
| 10 |
+
__defProp(target, name, { get: all[name], enumerable: true });
|
| 11 |
+
};
|
| 12 |
+
var __copyProps = (to, from, except, desc) => {
|
| 13 |
+
if (from && typeof from === "object" || typeof from === "function") {
|
| 14 |
+
for (let key of __getOwnPropNames(from))
|
| 15 |
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
| 16 |
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
| 17 |
+
}
|
| 18 |
+
return to;
|
| 19 |
+
};
|
| 20 |
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
| 21 |
+
// If the importer is in node compatibility mode or this is not an ESM
|
| 22 |
+
// file that has been converted to a CommonJS file using a Babel-
|
| 23 |
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
| 24 |
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
| 25 |
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
| 26 |
+
mod
|
| 27 |
+
));
|
| 28 |
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
| 29 |
+
|
| 30 |
+
// src/index.ts
|
| 31 |
+
var index_exports = {};
|
| 32 |
+
__export(index_exports, {
|
| 33 |
+
PrismaConfigEnvError: () => PrismaConfigEnvError,
|
| 34 |
+
defaultTestConfig: () => defaultTestConfig,
|
| 35 |
+
defineConfig: () => defineConfig,
|
| 36 |
+
env: () => env,
|
| 37 |
+
loadConfigFromFile: () => loadConfigFromFile,
|
| 38 |
+
loadConfigFromPackageJson: () => loadConfigFromPackageJson
|
| 39 |
+
});
|
| 40 |
+
module.exports = __toCommonJS(index_exports);
|
| 41 |
+
|
| 42 |
+
// ../debug/dist/index.mjs
|
| 43 |
+
var __defProp2 = Object.defineProperty;
|
| 44 |
+
var __export2 = (target, all) => {
|
| 45 |
+
for (var name in all)
|
| 46 |
+
__defProp2(target, name, { get: all[name], enumerable: true });
|
| 47 |
+
};
|
| 48 |
+
var colors_exports = {};
|
| 49 |
+
__export2(colors_exports, {
|
| 50 |
+
$: () => $,
|
| 51 |
+
bgBlack: () => bgBlack,
|
| 52 |
+
bgBlue: () => bgBlue,
|
| 53 |
+
bgCyan: () => bgCyan,
|
| 54 |
+
bgGreen: () => bgGreen,
|
| 55 |
+
bgMagenta: () => bgMagenta,
|
| 56 |
+
bgRed: () => bgRed,
|
| 57 |
+
bgWhite: () => bgWhite,
|
| 58 |
+
bgYellow: () => bgYellow,
|
| 59 |
+
black: () => black,
|
| 60 |
+
blue: () => blue,
|
| 61 |
+
bold: () => bold,
|
| 62 |
+
cyan: () => cyan,
|
| 63 |
+
dim: () => dim,
|
| 64 |
+
gray: () => gray,
|
| 65 |
+
green: () => green,
|
| 66 |
+
grey: () => grey,
|
| 67 |
+
hidden: () => hidden,
|
| 68 |
+
inverse: () => inverse,
|
| 69 |
+
italic: () => italic,
|
| 70 |
+
magenta: () => magenta,
|
| 71 |
+
red: () => red,
|
| 72 |
+
reset: () => reset,
|
| 73 |
+
strikethrough: () => strikethrough,
|
| 74 |
+
underline: () => underline,
|
| 75 |
+
white: () => white,
|
| 76 |
+
yellow: () => yellow
|
| 77 |
+
});
|
| 78 |
+
var FORCE_COLOR;
|
| 79 |
+
var NODE_DISABLE_COLORS;
|
| 80 |
+
var NO_COLOR;
|
| 81 |
+
var TERM;
|
| 82 |
+
var isTTY = true;
|
| 83 |
+
if (typeof process !== "undefined") {
|
| 84 |
+
({ FORCE_COLOR, NODE_DISABLE_COLORS, NO_COLOR, TERM } = process.env || {});
|
| 85 |
+
isTTY = process.stdout && process.stdout.isTTY;
|
| 86 |
+
}
|
| 87 |
+
var $ = {
|
| 88 |
+
enabled: !NODE_DISABLE_COLORS && NO_COLOR == null && TERM !== "dumb" && (FORCE_COLOR != null && FORCE_COLOR !== "0" || isTTY)
|
| 89 |
+
};
|
| 90 |
+
function init(x, y) {
|
| 91 |
+
let rgx = new RegExp(`\\x1b\\[${y}m`, "g");
|
| 92 |
+
let open = `\x1B[${x}m`, close = `\x1B[${y}m`;
|
| 93 |
+
return function(txt) {
|
| 94 |
+
if (!$.enabled || txt == null) return txt;
|
| 95 |
+
return open + (!!~("" + txt).indexOf(close) ? txt.replace(rgx, close + open) : txt) + close;
|
| 96 |
+
};
|
| 97 |
+
}
|
| 98 |
+
var reset = init(0, 0);
|
| 99 |
+
var bold = init(1, 22);
|
| 100 |
+
var dim = init(2, 22);
|
| 101 |
+
var italic = init(3, 23);
|
| 102 |
+
var underline = init(4, 24);
|
| 103 |
+
var inverse = init(7, 27);
|
| 104 |
+
var hidden = init(8, 28);
|
| 105 |
+
var strikethrough = init(9, 29);
|
| 106 |
+
var black = init(30, 39);
|
| 107 |
+
var red = init(31, 39);
|
| 108 |
+
var green = init(32, 39);
|
| 109 |
+
var yellow = init(33, 39);
|
| 110 |
+
var blue = init(34, 39);
|
| 111 |
+
var magenta = init(35, 39);
|
| 112 |
+
var cyan = init(36, 39);
|
| 113 |
+
var white = init(37, 39);
|
| 114 |
+
var gray = init(90, 39);
|
| 115 |
+
var grey = init(90, 39);
|
| 116 |
+
var bgBlack = init(40, 49);
|
| 117 |
+
var bgRed = init(41, 49);
|
| 118 |
+
var bgGreen = init(42, 49);
|
| 119 |
+
var bgYellow = init(43, 49);
|
| 120 |
+
var bgBlue = init(44, 49);
|
| 121 |
+
var bgMagenta = init(45, 49);
|
| 122 |
+
var bgCyan = init(46, 49);
|
| 123 |
+
var bgWhite = init(47, 49);
|
| 124 |
+
var MAX_ARGS_HISTORY = 100;
|
| 125 |
+
var COLORS = ["green", "yellow", "blue", "magenta", "cyan", "red"];
|
| 126 |
+
var argsHistory = [];
|
| 127 |
+
var lastTimestamp = Date.now();
|
| 128 |
+
var lastColor = 0;
|
| 129 |
+
var processEnv = typeof process !== "undefined" ? process.env : {};
|
| 130 |
+
globalThis.DEBUG ??= processEnv.DEBUG ?? "";
|
| 131 |
+
globalThis.DEBUG_COLORS ??= processEnv.DEBUG_COLORS ? processEnv.DEBUG_COLORS === "true" : true;
|
| 132 |
+
var topProps = {
|
| 133 |
+
enable(namespace) {
|
| 134 |
+
if (typeof namespace === "string") {
|
| 135 |
+
globalThis.DEBUG = namespace;
|
| 136 |
+
}
|
| 137 |
+
},
|
| 138 |
+
disable() {
|
| 139 |
+
const prev = globalThis.DEBUG;
|
| 140 |
+
globalThis.DEBUG = "";
|
| 141 |
+
return prev;
|
| 142 |
+
},
|
| 143 |
+
// this is the core logic to check if logging should happen or not
|
| 144 |
+
enabled(namespace) {
|
| 145 |
+
const listenedNamespaces = globalThis.DEBUG.split(",").map((s) => {
|
| 146 |
+
return s.replace(/[.+?^${}()|[\]\\]/g, "\\$&");
|
| 147 |
+
});
|
| 148 |
+
const isListened = listenedNamespaces.some((listenedNamespace) => {
|
| 149 |
+
if (listenedNamespace === "" || listenedNamespace[0] === "-") return false;
|
| 150 |
+
return namespace.match(RegExp(listenedNamespace.split("*").join(".*") + "$"));
|
| 151 |
+
});
|
| 152 |
+
const isExcluded = listenedNamespaces.some((listenedNamespace) => {
|
| 153 |
+
if (listenedNamespace === "" || listenedNamespace[0] !== "-") return false;
|
| 154 |
+
return namespace.match(RegExp(listenedNamespace.slice(1).split("*").join(".*") + "$"));
|
| 155 |
+
});
|
| 156 |
+
return isListened && !isExcluded;
|
| 157 |
+
},
|
| 158 |
+
log: (...args) => {
|
| 159 |
+
const [namespace, format, ...rest] = args;
|
| 160 |
+
const logWithFormatting = console.warn ?? console.log;
|
| 161 |
+
logWithFormatting(`${namespace} ${format}`, ...rest);
|
| 162 |
+
},
|
| 163 |
+
formatters: {}
|
| 164 |
+
// not implemented
|
| 165 |
+
};
|
| 166 |
+
function debugCreate(namespace) {
|
| 167 |
+
const instanceProps = {
|
| 168 |
+
color: COLORS[lastColor++ % COLORS.length],
|
| 169 |
+
enabled: topProps.enabled(namespace),
|
| 170 |
+
namespace,
|
| 171 |
+
log: topProps.log,
|
| 172 |
+
extend: () => {
|
| 173 |
+
}
|
| 174 |
+
// not implemented
|
| 175 |
+
};
|
| 176 |
+
const debugCall = (...args) => {
|
| 177 |
+
const { enabled, namespace: namespace2, color, log } = instanceProps;
|
| 178 |
+
if (args.length !== 0) {
|
| 179 |
+
argsHistory.push([namespace2, ...args]);
|
| 180 |
+
}
|
| 181 |
+
if (argsHistory.length > MAX_ARGS_HISTORY) {
|
| 182 |
+
argsHistory.shift();
|
| 183 |
+
}
|
| 184 |
+
if (topProps.enabled(namespace2) || enabled) {
|
| 185 |
+
const stringArgs = args.map((arg) => {
|
| 186 |
+
if (typeof arg === "string") {
|
| 187 |
+
return arg;
|
| 188 |
+
}
|
| 189 |
+
return safeStringify(arg);
|
| 190 |
+
});
|
| 191 |
+
const ms = `+${Date.now() - lastTimestamp}ms`;
|
| 192 |
+
lastTimestamp = Date.now();
|
| 193 |
+
if (globalThis.DEBUG_COLORS) {
|
| 194 |
+
log(colors_exports[color](bold(namespace2)), ...stringArgs, colors_exports[color](ms));
|
| 195 |
+
} else {
|
| 196 |
+
log(namespace2, ...stringArgs, ms);
|
| 197 |
+
}
|
| 198 |
+
}
|
| 199 |
+
};
|
| 200 |
+
return new Proxy(debugCall, {
|
| 201 |
+
get: (_, prop) => instanceProps[prop],
|
| 202 |
+
set: (_, prop, value) => instanceProps[prop] = value
|
| 203 |
+
});
|
| 204 |
+
}
|
| 205 |
+
var Debug = new Proxy(debugCreate, {
|
| 206 |
+
get: (_, prop) => topProps[prop],
|
| 207 |
+
set: (_, prop, value) => topProps[prop] = value
|
| 208 |
+
});
|
| 209 |
+
function safeStringify(value, indent = 2) {
|
| 210 |
+
const cache = /* @__PURE__ */ new Set();
|
| 211 |
+
return JSON.stringify(
|
| 212 |
+
value,
|
| 213 |
+
(key, value2) => {
|
| 214 |
+
if (typeof value2 === "object" && value2 !== null) {
|
| 215 |
+
if (cache.has(value2)) {
|
| 216 |
+
return `[Circular *]`;
|
| 217 |
+
}
|
| 218 |
+
cache.add(value2);
|
| 219 |
+
} else if (typeof value2 === "bigint") {
|
| 220 |
+
return value2.toString();
|
| 221 |
+
}
|
| 222 |
+
return value2;
|
| 223 |
+
},
|
| 224 |
+
indent
|
| 225 |
+
);
|
| 226 |
+
}
|
| 227 |
+
|
| 228 |
+
// ../driver-adapter-utils/dist/index.mjs
|
| 229 |
+
function isDriverAdapterError(error) {
|
| 230 |
+
return error["name"] === "DriverAdapterError" && typeof error["cause"] === "object";
|
| 231 |
+
}
|
| 232 |
+
function ok(value) {
|
| 233 |
+
return {
|
| 234 |
+
ok: true,
|
| 235 |
+
value,
|
| 236 |
+
map(fn) {
|
| 237 |
+
return ok(fn(value));
|
| 238 |
+
},
|
| 239 |
+
flatMap(fn) {
|
| 240 |
+
return fn(value);
|
| 241 |
+
}
|
| 242 |
+
};
|
| 243 |
+
}
|
| 244 |
+
function err(error) {
|
| 245 |
+
return {
|
| 246 |
+
ok: false,
|
| 247 |
+
error,
|
| 248 |
+
map() {
|
| 249 |
+
return err(error);
|
| 250 |
+
},
|
| 251 |
+
flatMap() {
|
| 252 |
+
return err(error);
|
| 253 |
+
}
|
| 254 |
+
};
|
| 255 |
+
}
|
| 256 |
+
var debug = Debug("driver-adapter-utils");
|
| 257 |
+
var ErrorRegistryInternal = class {
|
| 258 |
+
registeredErrors = [];
|
| 259 |
+
consumeError(id) {
|
| 260 |
+
return this.registeredErrors[id];
|
| 261 |
+
}
|
| 262 |
+
registerNewError(error) {
|
| 263 |
+
let i = 0;
|
| 264 |
+
while (this.registeredErrors[i] !== void 0) {
|
| 265 |
+
i++;
|
| 266 |
+
}
|
| 267 |
+
this.registeredErrors[i] = { error };
|
| 268 |
+
return i;
|
| 269 |
+
}
|
| 270 |
+
};
|
| 271 |
+
function copySymbolsFromSource(source, target) {
|
| 272 |
+
const symbols = Object.getOwnPropertySymbols(source);
|
| 273 |
+
const symbolObject = Object.fromEntries(symbols.map((symbol) => [symbol, true]));
|
| 274 |
+
Object.assign(target, symbolObject);
|
| 275 |
+
}
|
| 276 |
+
var bindMigrationAwareSqlAdapterFactory = (adapterFactory) => {
|
| 277 |
+
const errorRegistry = new ErrorRegistryInternal();
|
| 278 |
+
const boundFactory = {
|
| 279 |
+
adapterName: adapterFactory.adapterName,
|
| 280 |
+
provider: adapterFactory.provider,
|
| 281 |
+
errorRegistry,
|
| 282 |
+
connect: async (...args) => {
|
| 283 |
+
const ctx = await wrapAsync(errorRegistry, adapterFactory.connect.bind(adapterFactory))(...args);
|
| 284 |
+
return ctx.map((ctx2) => bindAdapter(ctx2, errorRegistry));
|
| 285 |
+
},
|
| 286 |
+
connectToShadowDb: async (...args) => {
|
| 287 |
+
const ctx = await wrapAsync(errorRegistry, adapterFactory.connectToShadowDb.bind(adapterFactory))(...args);
|
| 288 |
+
return ctx.map((ctx2) => bindAdapter(ctx2, errorRegistry));
|
| 289 |
+
}
|
| 290 |
+
};
|
| 291 |
+
copySymbolsFromSource(adapterFactory, boundFactory);
|
| 292 |
+
return boundFactory;
|
| 293 |
+
};
|
| 294 |
+
var bindAdapter = (adapter, errorRegistry = new ErrorRegistryInternal()) => {
|
| 295 |
+
const boundAdapter = {
|
| 296 |
+
adapterName: adapter.adapterName,
|
| 297 |
+
errorRegistry,
|
| 298 |
+
queryRaw: wrapAsync(errorRegistry, adapter.queryRaw.bind(adapter)),
|
| 299 |
+
executeRaw: wrapAsync(errorRegistry, adapter.executeRaw.bind(adapter)),
|
| 300 |
+
executeScript: wrapAsync(errorRegistry, adapter.executeScript.bind(adapter)),
|
| 301 |
+
dispose: wrapAsync(errorRegistry, adapter.dispose.bind(adapter)),
|
| 302 |
+
provider: adapter.provider,
|
| 303 |
+
startTransaction: async (...args) => {
|
| 304 |
+
const ctx = await wrapAsync(errorRegistry, adapter.startTransaction.bind(adapter))(...args);
|
| 305 |
+
return ctx.map((ctx2) => bindTransaction(errorRegistry, ctx2));
|
| 306 |
+
}
|
| 307 |
+
};
|
| 308 |
+
if (adapter.getConnectionInfo) {
|
| 309 |
+
boundAdapter.getConnectionInfo = wrapSync(errorRegistry, adapter.getConnectionInfo.bind(adapter));
|
| 310 |
+
}
|
| 311 |
+
return boundAdapter;
|
| 312 |
+
};
|
| 313 |
+
var bindTransaction = (errorRegistry, transaction) => {
|
| 314 |
+
return {
|
| 315 |
+
adapterName: transaction.adapterName,
|
| 316 |
+
provider: transaction.provider,
|
| 317 |
+
options: transaction.options,
|
| 318 |
+
queryRaw: wrapAsync(errorRegistry, transaction.queryRaw.bind(transaction)),
|
| 319 |
+
executeRaw: wrapAsync(errorRegistry, transaction.executeRaw.bind(transaction)),
|
| 320 |
+
commit: wrapAsync(errorRegistry, transaction.commit.bind(transaction)),
|
| 321 |
+
rollback: wrapAsync(errorRegistry, transaction.rollback.bind(transaction))
|
| 322 |
+
};
|
| 323 |
+
};
|
| 324 |
+
function wrapAsync(registry, fn) {
|
| 325 |
+
return async (...args) => {
|
| 326 |
+
try {
|
| 327 |
+
return ok(await fn(...args));
|
| 328 |
+
} catch (error) {
|
| 329 |
+
debug("[error@wrapAsync]", error);
|
| 330 |
+
if (isDriverAdapterError(error)) {
|
| 331 |
+
return err(error.cause);
|
| 332 |
+
}
|
| 333 |
+
const id = registry.registerNewError(error);
|
| 334 |
+
return err({ kind: "GenericJs", id });
|
| 335 |
+
}
|
| 336 |
+
};
|
| 337 |
+
}
|
| 338 |
+
function wrapSync(registry, fn) {
|
| 339 |
+
return (...args) => {
|
| 340 |
+
try {
|
| 341 |
+
return ok(fn(...args));
|
| 342 |
+
} catch (error) {
|
| 343 |
+
debug("[error@wrapSync]", error);
|
| 344 |
+
if (isDriverAdapterError(error)) {
|
| 345 |
+
return err(error.cause);
|
| 346 |
+
}
|
| 347 |
+
const id = registry.registerNewError(error);
|
| 348 |
+
return err({ kind: "GenericJs", id });
|
| 349 |
+
}
|
| 350 |
+
};
|
| 351 |
+
}
|
| 352 |
+
var mockAdapterErrors = {
|
| 353 |
+
queryRaw: new Error("Not implemented: queryRaw"),
|
| 354 |
+
executeRaw: new Error("Not implemented: executeRaw"),
|
| 355 |
+
startTransaction: new Error("Not implemented: startTransaction"),
|
| 356 |
+
executeScript: new Error("Not implemented: executeScript"),
|
| 357 |
+
dispose: new Error("Not implemented: dispose")
|
| 358 |
+
};
|
| 359 |
+
|
| 360 |
+
// src/PrismaConfig.ts
|
| 361 |
+
var import_effect3 = require("effect");
|
| 362 |
+
var import_Function = require("effect/Function");
|
| 363 |
+
|
| 364 |
+
// src/defineConfig.ts
|
| 365 |
+
var import_effect = require("effect");
|
| 366 |
+
|
| 367 |
+
// src/defaultConfig.ts
|
| 368 |
+
function defaultConfig() {
|
| 369 |
+
return makePrismaConfigInternal({
|
| 370 |
+
loadedFromFile: null,
|
| 371 |
+
deprecatedPackageJson: null
|
| 372 |
+
});
|
| 373 |
+
}
|
| 374 |
+
|
| 375 |
+
// src/defineConfig.ts
|
| 376 |
+
function validateExperimentalFeatures(config) {
|
| 377 |
+
const experimental = config.experimental || {};
|
| 378 |
+
if (config.engine === "js" && !experimental.adapter) {
|
| 379 |
+
return import_effect.Either.left(
|
| 380 |
+
new Error('The `engine === "js"` configuration requires `experimental.adapter` to be set to `true`.')
|
| 381 |
+
);
|
| 382 |
+
}
|
| 383 |
+
if (config.studio && !experimental.studio) {
|
| 384 |
+
return import_effect.Either.left(new Error("The `studio` configuration requires `experimental.studio` to be set to `true`."));
|
| 385 |
+
}
|
| 386 |
+
if (config.tables?.external && !experimental.externalTables) {
|
| 387 |
+
return import_effect.Either.left(
|
| 388 |
+
new Error("The `tables.external` configuration requires `experimental.externalTables` to be set to `true`.")
|
| 389 |
+
);
|
| 390 |
+
}
|
| 391 |
+
if (config.migrations?.initShadowDb && !experimental.externalTables) {
|
| 392 |
+
return import_effect.Either.left(
|
| 393 |
+
new Error(
|
| 394 |
+
"The `migrations.initShadowDb` configuration requires `experimental.externalTables` to be set to `true`."
|
| 395 |
+
)
|
| 396 |
+
);
|
| 397 |
+
}
|
| 398 |
+
if (config["extensions"] !== void 0 && !experimental.extensions) {
|
| 399 |
+
return import_effect.Either.left(
|
| 400 |
+
new Error("The `extensions` configuration requires `experimental.extensions` to be set to `true`.")
|
| 401 |
+
);
|
| 402 |
+
}
|
| 403 |
+
return import_effect.Either.right(config);
|
| 404 |
+
}
|
| 405 |
+
var debug2 = Debug("prisma:config:defineConfig");
|
| 406 |
+
function defineConfig(configInput) {
|
| 407 |
+
const validationResult = validateExperimentalFeatures(configInput);
|
| 408 |
+
if (validationResult._tag === "Left") {
|
| 409 |
+
throw validationResult.left;
|
| 410 |
+
}
|
| 411 |
+
const config = defaultConfig();
|
| 412 |
+
debug2("[default]: %o", config);
|
| 413 |
+
defineExperimentalConfig(config, configInput);
|
| 414 |
+
defineSchemaConfig(config, configInput);
|
| 415 |
+
defineEngineConfig(config, configInput);
|
| 416 |
+
defineStudioConfig(config, configInput);
|
| 417 |
+
defineMigrationsConfig(config, configInput);
|
| 418 |
+
defineTablesConfig(config, configInput);
|
| 419 |
+
defineEnumsConfig(config, configInput);
|
| 420 |
+
defineTypedSqlConfig(config, configInput);
|
| 421 |
+
defineViewsConfig(config, configInput);
|
| 422 |
+
defineExtensionsConfig(config, configInput);
|
| 423 |
+
return config;
|
| 424 |
+
}
|
| 425 |
+
function defineExperimentalConfig(config, configInput) {
|
| 426 |
+
if (!configInput.experimental) {
|
| 427 |
+
return;
|
| 428 |
+
}
|
| 429 |
+
config.experimental = configInput.experimental;
|
| 430 |
+
debug2("[config.experimental]: %o", config.experimental);
|
| 431 |
+
}
|
| 432 |
+
function defineSchemaConfig(config, configInput) {
|
| 433 |
+
if (!configInput.schema) {
|
| 434 |
+
return;
|
| 435 |
+
}
|
| 436 |
+
config.schema = configInput.schema;
|
| 437 |
+
debug2("[config.schema]: %o", config.schema);
|
| 438 |
+
}
|
| 439 |
+
function defineMigrationsConfig(config, configInput) {
|
| 440 |
+
if (!configInput.migrations) {
|
| 441 |
+
return;
|
| 442 |
+
}
|
| 443 |
+
config.migrations = configInput.migrations;
|
| 444 |
+
debug2("[config.migrations]: %o", config.migrations);
|
| 445 |
+
}
|
| 446 |
+
function defineTypedSqlConfig(config, configInput) {
|
| 447 |
+
if (!configInput.typedSql) {
|
| 448 |
+
return;
|
| 449 |
+
}
|
| 450 |
+
config.typedSql = configInput.typedSql;
|
| 451 |
+
debug2("[config.typedSql]: %o", config.typedSql);
|
| 452 |
+
}
|
| 453 |
+
function defineViewsConfig(config, configInput) {
|
| 454 |
+
if (!configInput.views) {
|
| 455 |
+
return;
|
| 456 |
+
}
|
| 457 |
+
config.views = configInput.views;
|
| 458 |
+
debug2("[config.views]: %o", config.views);
|
| 459 |
+
}
|
| 460 |
+
function defineTablesConfig(config, configInput) {
|
| 461 |
+
if (!configInput.tables) {
|
| 462 |
+
return;
|
| 463 |
+
}
|
| 464 |
+
config.tables = configInput.tables;
|
| 465 |
+
debug2("[config.tables]: %o", config.tables);
|
| 466 |
+
}
|
| 467 |
+
function defineEnumsConfig(config, configInput) {
|
| 468 |
+
if (!configInput.enums) {
|
| 469 |
+
return;
|
| 470 |
+
}
|
| 471 |
+
config.enums = configInput.enums;
|
| 472 |
+
debug2("[config.enums]: %o", config.enums);
|
| 473 |
+
}
|
| 474 |
+
function defineStudioConfig(config, configInput) {
|
| 475 |
+
if (!configInput.studio?.adapter) {
|
| 476 |
+
return;
|
| 477 |
+
}
|
| 478 |
+
const { adapter: getAdapterFactory } = configInput.studio;
|
| 479 |
+
config.studio = {
|
| 480 |
+
adapter: async () => {
|
| 481 |
+
const adapterFactory = await getAdapterFactory();
|
| 482 |
+
debug2("[config.studio.adapter]: %o", adapterFactory.adapterName);
|
| 483 |
+
return adapterFactory;
|
| 484 |
+
}
|
| 485 |
+
};
|
| 486 |
+
debug2("[config.studio]: %o", config.studio);
|
| 487 |
+
}
|
| 488 |
+
function defineEngineConfig(config, configInput) {
|
| 489 |
+
if (configInput.engine === void 0) {
|
| 490 |
+
return;
|
| 491 |
+
} else if (configInput.engine === "js") {
|
| 492 |
+
const { engine, adapter: getAdapterFactory } = configInput;
|
| 493 |
+
const adapter = async () => {
|
| 494 |
+
const adapterFactory = await getAdapterFactory();
|
| 495 |
+
debug2("[config.adapter]: %o", adapterFactory.adapterName);
|
| 496 |
+
return bindMigrationAwareSqlAdapterFactory(adapterFactory);
|
| 497 |
+
};
|
| 498 |
+
Object.assign(config, { engine, adapter });
|
| 499 |
+
debug2("[config.engine]: %o", engine);
|
| 500 |
+
debug2("[config.adapter]: %o", adapter);
|
| 501 |
+
} else if (configInput.engine === "classic") {
|
| 502 |
+
const { engine, datasource } = configInput;
|
| 503 |
+
Object.assign(config, { engine, datasource });
|
| 504 |
+
debug2("[config.engine]: %o", engine);
|
| 505 |
+
debug2("[config.datasource]: %o", datasource);
|
| 506 |
+
}
|
| 507 |
+
}
|
| 508 |
+
function defineExtensionsConfig(config, configInput) {
|
| 509 |
+
if (!configInput["extensions"]) {
|
| 510 |
+
return;
|
| 511 |
+
}
|
| 512 |
+
config["extensions"] = configInput["extensions"];
|
| 513 |
+
debug2("[config.extensions]: %o", config["extensions"]);
|
| 514 |
+
}
|
| 515 |
+
|
| 516 |
+
// src/loadConfigFromPackageJson.ts
|
| 517 |
+
var import_promises = require("node:fs/promises");
|
| 518 |
+
var import_node_process = __toESM(require("node:process"));
|
| 519 |
+
var import_effect2 = require("effect");
|
| 520 |
+
var import_package = require("empathic/package");
|
| 521 |
+
var PrismaConfigPackageJsonShape = import_effect2.Schema.Struct({
|
| 522 |
+
schema: import_effect2.Schema.optional(import_effect2.Schema.String),
|
| 523 |
+
seed: import_effect2.Schema.optional(import_effect2.Schema.NonEmptyString)
|
| 524 |
+
});
|
| 525 |
+
async function loadConfigFromPackageJson(cwd = import_node_process.default.cwd()) {
|
| 526 |
+
const pkgPath = (0, import_package.up)({ cwd });
|
| 527 |
+
if (pkgPath === void 0) {
|
| 528 |
+
return null;
|
| 529 |
+
}
|
| 530 |
+
const pkgJson = await (0, import_promises.readFile)(pkgPath, { encoding: "utf-8" }).then((p) => JSON.parse(p));
|
| 531 |
+
const deprecatedConfig = pkgJson["prisma"];
|
| 532 |
+
if (deprecatedConfig === void 0) {
|
| 533 |
+
return null;
|
| 534 |
+
}
|
| 535 |
+
if (Object.keys(deprecatedConfig).length === 1 && deprecatedConfig["prismaCommit"] !== void 0) {
|
| 536 |
+
return null;
|
| 537 |
+
}
|
| 538 |
+
return {
|
| 539 |
+
config: deprecatedConfig,
|
| 540 |
+
loadedFromFile: pkgPath
|
| 541 |
+
};
|
| 542 |
+
}
|
| 543 |
+
|
| 544 |
+
// src/PrismaConfig.ts
|
| 545 |
+
var debug3 = Debug("prisma:config:PrismaConfig");
|
| 546 |
+
var SqlMigrationAwareDriverAdapterFactoryShape = import_effect3.Schema.declare(
|
| 547 |
+
(input) => {
|
| 548 |
+
return typeof input === "function";
|
| 549 |
+
},
|
| 550 |
+
{
|
| 551 |
+
identifier: "SqlMigrationAwareDriverAdapterFactory",
|
| 552 |
+
encode: import_effect3.identity,
|
| 553 |
+
decode: import_effect3.identity
|
| 554 |
+
}
|
| 555 |
+
);
|
| 556 |
+
var ErrorCapturingSqlMigrationAwareDriverAdapterFactoryShape = import_effect3.Schema.declare(
|
| 557 |
+
(input) => {
|
| 558 |
+
return typeof input === "function";
|
| 559 |
+
},
|
| 560 |
+
{
|
| 561 |
+
identifier: "ErrorCapturingSqlMigrationAwareDriverAdapterFactory",
|
| 562 |
+
encode: import_effect3.identity,
|
| 563 |
+
decode: import_effect3.identity
|
| 564 |
+
}
|
| 565 |
+
);
|
| 566 |
+
var SchemaEngineConfigClassicShape = import_effect3.Schema.Struct({
|
| 567 |
+
engine: import_effect3.Schema.Literal("classic"),
|
| 568 |
+
datasource: import_effect3.Schema.Struct({
|
| 569 |
+
url: import_effect3.Schema.String,
|
| 570 |
+
directUrl: import_effect3.Schema.optional(import_effect3.Schema.String),
|
| 571 |
+
shadowDatabaseUrl: import_effect3.Schema.optional(import_effect3.Schema.String)
|
| 572 |
+
})
|
| 573 |
+
});
|
| 574 |
+
var SchemaEngineConfigJsShape = import_effect3.Schema.Struct({
|
| 575 |
+
engine: import_effect3.Schema.Literal("js"),
|
| 576 |
+
adapter: SqlMigrationAwareDriverAdapterFactoryShape
|
| 577 |
+
});
|
| 578 |
+
var SchemaEngineConfigAbsentShape = import_effect3.Schema.Struct({
|
| 579 |
+
engine: import_effect3.Schema.optional(import_effect3.Schema.Never)
|
| 580 |
+
});
|
| 581 |
+
var SchemaEngineConfigShape = import_effect3.Schema.Union(
|
| 582 |
+
SchemaEngineConfigClassicShape,
|
| 583 |
+
SchemaEngineConfigJsShape,
|
| 584 |
+
SchemaEngineConfigAbsentShape
|
| 585 |
+
);
|
| 586 |
+
var SchemaEngineConfigJsInternal = import_effect3.Schema.Struct({
|
| 587 |
+
engine: import_effect3.Schema.Literal("js"),
|
| 588 |
+
adapter: ErrorCapturingSqlMigrationAwareDriverAdapterFactoryShape
|
| 589 |
+
});
|
| 590 |
+
var SchemaEngineConfigInternal = import_effect3.Schema.Union(
|
| 591 |
+
SchemaEngineConfigClassicShape,
|
| 592 |
+
SchemaEngineConfigJsInternal,
|
| 593 |
+
SchemaEngineConfigAbsentShape
|
| 594 |
+
);
|
| 595 |
+
var ExperimentalConfigShape = import_effect3.Schema.Struct({
|
| 596 |
+
adapter: import_effect3.Schema.optional(import_effect3.Schema.Boolean),
|
| 597 |
+
studio: import_effect3.Schema.optional(import_effect3.Schema.Boolean),
|
| 598 |
+
externalTables: import_effect3.Schema.optional(import_effect3.Schema.Boolean),
|
| 599 |
+
extensions: import_effect3.Schema.optional(import_effect3.Schema.Boolean)
|
| 600 |
+
});
|
| 601 |
+
if (false) {
|
| 602 |
+
__testExperimentalConfigShapeValueA;
|
| 603 |
+
__testExperimentalConfigShapeValueB;
|
| 604 |
+
}
|
| 605 |
+
var MigrationsConfigShape = import_effect3.Schema.Struct({
|
| 606 |
+
path: import_effect3.Schema.optional(import_effect3.Schema.String),
|
| 607 |
+
initShadowDb: import_effect3.Schema.optional(import_effect3.Schema.String),
|
| 608 |
+
seed: import_effect3.Schema.optional(import_effect3.Schema.NonEmptyString)
|
| 609 |
+
});
|
| 610 |
+
if (false) {
|
| 611 |
+
__testMigrationsConfigShapeValueA;
|
| 612 |
+
__testMigrationsConfigShapeValueB;
|
| 613 |
+
}
|
| 614 |
+
var TablesConfigShape = import_effect3.Schema.Struct({
|
| 615 |
+
external: import_effect3.Schema.optional(import_effect3.Schema.mutable(import_effect3.Schema.Array(import_effect3.Schema.String)))
|
| 616 |
+
});
|
| 617 |
+
if (false) {
|
| 618 |
+
__testTablesConfigShapeValueA;
|
| 619 |
+
__testTablesConfigShapeValueB;
|
| 620 |
+
}
|
| 621 |
+
var EnumsConfigShape = import_effect3.Schema.Struct({
|
| 622 |
+
external: import_effect3.Schema.optional(import_effect3.Schema.mutable(import_effect3.Schema.Array(import_effect3.Schema.String)))
|
| 623 |
+
});
|
| 624 |
+
if (false) {
|
| 625 |
+
__testEnumsConfigShapeValueA;
|
| 626 |
+
__testEnumsConfigShapeValueB;
|
| 627 |
+
}
|
| 628 |
+
var ViewsConfigShape = import_effect3.Schema.Struct({
|
| 629 |
+
path: import_effect3.Schema.optional(import_effect3.Schema.String)
|
| 630 |
+
});
|
| 631 |
+
if (false) {
|
| 632 |
+
__testViewsConfigShapeValueA;
|
| 633 |
+
__testViewsConfigShapeValueB;
|
| 634 |
+
}
|
| 635 |
+
var TypedSqlConfigShape = import_effect3.Schema.Struct({
|
| 636 |
+
path: import_effect3.Schema.optional(import_effect3.Schema.String)
|
| 637 |
+
});
|
| 638 |
+
if (false) {
|
| 639 |
+
__testTypedSqlConfigShapeValueA;
|
| 640 |
+
__testTypedSqlConfigShapeValueB;
|
| 641 |
+
}
|
| 642 |
+
var PrismaStudioConfigShape = import_effect3.Schema.Struct({
|
| 643 |
+
/**
|
| 644 |
+
* Instantiates the Prisma driver adapter to use for Prisma Studio.
|
| 645 |
+
*/
|
| 646 |
+
adapter: SqlMigrationAwareDriverAdapterFactoryShape
|
| 647 |
+
});
|
| 648 |
+
if (false) {
|
| 649 |
+
__testPrismaStudioConfigShapeValueA;
|
| 650 |
+
__testPrismaStudioConfigShapeValueB;
|
| 651 |
+
}
|
| 652 |
+
if (false) {
|
| 653 |
+
__testPrismaConfig;
|
| 654 |
+
__testPrismaConfigInternal;
|
| 655 |
+
}
|
| 656 |
+
var PrismaConfigUnconditionalShape = import_effect3.Schema.Struct({
|
| 657 |
+
experimental: import_effect3.Schema.optional(ExperimentalConfigShape),
|
| 658 |
+
schema: import_effect3.Schema.optional(import_effect3.Schema.String),
|
| 659 |
+
studio: import_effect3.Schema.optional(PrismaStudioConfigShape),
|
| 660 |
+
migrations: import_effect3.Schema.optional(MigrationsConfigShape),
|
| 661 |
+
tables: import_effect3.Schema.optional(TablesConfigShape),
|
| 662 |
+
enums: import_effect3.Schema.optional(EnumsConfigShape),
|
| 663 |
+
views: import_effect3.Schema.optional(ViewsConfigShape),
|
| 664 |
+
typedSql: import_effect3.Schema.optional(TypedSqlConfigShape),
|
| 665 |
+
extensions: import_effect3.Schema.optional(import_effect3.Schema.Any)
|
| 666 |
+
});
|
| 667 |
+
var PrismaConfigShape = import_effect3.Schema.extend(SchemaEngineConfigShape, PrismaConfigUnconditionalShape);
|
| 668 |
+
if (false) {
|
| 669 |
+
__testPrismaConfigValueA;
|
| 670 |
+
__testPrismaConfigValueB;
|
| 671 |
+
}
|
| 672 |
+
function validateExperimentalFeatures2(config) {
|
| 673 |
+
const experimental = config.experimental || {};
|
| 674 |
+
if (config.engine === "js" && !experimental.adapter) {
|
| 675 |
+
return import_effect3.Either.left(
|
| 676 |
+
new Error("The `engine === 'js'` configuration requires `experimental.adapter` to be set to `true`.")
|
| 677 |
+
);
|
| 678 |
+
}
|
| 679 |
+
if (config.studio && !experimental.studio) {
|
| 680 |
+
return import_effect3.Either.left(new Error("The `studio` configuration requires `experimental.studio` to be set to `true`."));
|
| 681 |
+
}
|
| 682 |
+
if (config.tables?.external && !experimental.externalTables) {
|
| 683 |
+
return import_effect3.Either.left(
|
| 684 |
+
new Error("The `tables.external` configuration requires `experimental.externalTables` to be set to `true`.")
|
| 685 |
+
);
|
| 686 |
+
}
|
| 687 |
+
if (config.enums?.external && !experimental.externalTables) {
|
| 688 |
+
return import_effect3.Either.left(
|
| 689 |
+
new Error("The `enums.external` configuration requires `experimental.externalTables` to be set to `true`.")
|
| 690 |
+
);
|
| 691 |
+
}
|
| 692 |
+
if (config.migrations?.initShadowDb && !experimental.externalTables) {
|
| 693 |
+
return import_effect3.Either.left(
|
| 694 |
+
new Error(
|
| 695 |
+
"The `migrations.initShadowDb` configuration requires `experimental.externalTables` to be set to `true`."
|
| 696 |
+
)
|
| 697 |
+
);
|
| 698 |
+
}
|
| 699 |
+
if (config["extensions"] && !experimental.extensions) {
|
| 700 |
+
return import_effect3.Either.left(
|
| 701 |
+
new Error("The `extensions` configuration requires `experimental.extensions` to be set to `true`.")
|
| 702 |
+
);
|
| 703 |
+
}
|
| 704 |
+
return import_effect3.Either.right(config);
|
| 705 |
+
}
|
| 706 |
+
function parsePrismaConfigShape(input) {
|
| 707 |
+
return (0, import_Function.pipe)(
|
| 708 |
+
import_effect3.Schema.decodeUnknownEither(PrismaConfigShape, {})(input, {
|
| 709 |
+
onExcessProperty: "error"
|
| 710 |
+
}),
|
| 711 |
+
import_effect3.Either.flatMap(validateExperimentalFeatures2)
|
| 712 |
+
);
|
| 713 |
+
}
|
| 714 |
+
var PRISMA_CONFIG_INTERNAL_BRAND = Symbol.for("PrismaConfigInternal");
|
| 715 |
+
var PrismaConfigInternalShape = import_effect3.Schema.extend(
|
| 716 |
+
PrismaConfigUnconditionalShape,
|
| 717 |
+
import_effect3.Schema.extend(
|
| 718 |
+
SchemaEngineConfigInternal,
|
| 719 |
+
import_effect3.Schema.Struct({
|
| 720 |
+
loadedFromFile: import_effect3.Schema.NullOr(import_effect3.Schema.String),
|
| 721 |
+
deprecatedPackageJson: import_effect3.Schema.NullOr(
|
| 722 |
+
import_effect3.Schema.Struct({
|
| 723 |
+
config: PrismaConfigPackageJsonShape,
|
| 724 |
+
loadedFromFile: import_effect3.Schema.String
|
| 725 |
+
})
|
| 726 |
+
)
|
| 727 |
+
})
|
| 728 |
+
)
|
| 729 |
+
);
|
| 730 |
+
function brandPrismaConfigInternal(config) {
|
| 731 |
+
Object.defineProperty(config, "__brand", {
|
| 732 |
+
value: PRISMA_CONFIG_INTERNAL_BRAND,
|
| 733 |
+
writable: true,
|
| 734 |
+
configurable: true,
|
| 735 |
+
enumerable: false
|
| 736 |
+
});
|
| 737 |
+
return config;
|
| 738 |
+
}
|
| 739 |
+
function parsePrismaConfigInternalShape(input) {
|
| 740 |
+
debug3("Parsing PrismaConfigInternal: %o", input);
|
| 741 |
+
if (typeof input === "object" && input !== null && input["__brand"] === PRISMA_CONFIG_INTERNAL_BRAND) {
|
| 742 |
+
debug3("Short-circuit: input is already a PrismaConfigInternal object");
|
| 743 |
+
return import_effect3.Either.right(input);
|
| 744 |
+
}
|
| 745 |
+
return (0, import_Function.pipe)(
|
| 746 |
+
import_effect3.Schema.decodeUnknownEither(PrismaConfigInternalShape, {})(input, {
|
| 747 |
+
onExcessProperty: "error"
|
| 748 |
+
}),
|
| 749 |
+
// Brand the output type to make `PrismaConfigInternal` opaque, without exposing the `Effect/Brand` type
|
| 750 |
+
// to the public API.
|
| 751 |
+
// This is done to work around the following issues:
|
| 752 |
+
// - https://github.com/microsoft/rushstack/issues/1308
|
| 753 |
+
// - https://github.com/microsoft/rushstack/issues/4034
|
| 754 |
+
// - https://github.com/microsoft/TypeScript/issues/58914
|
| 755 |
+
import_effect3.Either.map(brandPrismaConfigInternal)
|
| 756 |
+
);
|
| 757 |
+
}
|
| 758 |
+
function makePrismaConfigInternal(makeArgs) {
|
| 759 |
+
return brandPrismaConfigInternal(makeArgs);
|
| 760 |
+
}
|
| 761 |
+
function parseDefaultExport(defaultExport) {
|
| 762 |
+
const parseResultEither = (0, import_Function.pipe)(
|
| 763 |
+
// If the given config conforms to the `PrismaConfig` shape, feed it to `defineConfig`.
|
| 764 |
+
parsePrismaConfigShape(defaultExport),
|
| 765 |
+
import_effect3.Either.map((config) => {
|
| 766 |
+
debug3("Parsed `PrismaConfig` shape: %o", config);
|
| 767 |
+
return defineConfig(config);
|
| 768 |
+
}),
|
| 769 |
+
// Otherwise, try to parse it as a `PrismaConfigInternal` shape.
|
| 770 |
+
import_effect3.Either.orElse(() => parsePrismaConfigInternalShape(defaultExport))
|
| 771 |
+
);
|
| 772 |
+
if (import_effect3.Either.isLeft(parseResultEither)) {
|
| 773 |
+
throw parseResultEither.left;
|
| 774 |
+
}
|
| 775 |
+
return parseResultEither.right;
|
| 776 |
+
}
|
| 777 |
+
|
| 778 |
+
// src/defaultTestConfig.ts
|
| 779 |
+
function defaultTestConfig() {
|
| 780 |
+
return makePrismaConfigInternal({
|
| 781 |
+
loadedFromFile: null,
|
| 782 |
+
deprecatedPackageJson: null
|
| 783 |
+
});
|
| 784 |
+
}
|
| 785 |
+
|
| 786 |
+
// src/env.ts
|
| 787 |
+
var PrismaConfigEnvError = class extends Error {
|
| 788 |
+
constructor(name) {
|
| 789 |
+
super(`Missing required environment variable: ${name}`);
|
| 790 |
+
this.name = "PrismaConfigEnvError";
|
| 791 |
+
}
|
| 792 |
+
};
|
| 793 |
+
function env(name) {
|
| 794 |
+
const value = process.env[name];
|
| 795 |
+
if (!value) {
|
| 796 |
+
throw new PrismaConfigEnvError(name);
|
| 797 |
+
}
|
| 798 |
+
return value;
|
| 799 |
+
}
|
| 800 |
+
|
| 801 |
+
// src/loadConfigFromFile.ts
|
| 802 |
+
var import_node_path = __toESM(require("node:path"));
|
| 803 |
+
var import_node_process2 = __toESM(require("node:process"));
|
| 804 |
+
var debug4 = Debug("prisma:config:loadConfigFromFile");
|
| 805 |
+
var SUPPORTED_EXTENSIONS = [".js", ".ts", ".mjs", ".cjs", ".mts", ".cts"];
|
| 806 |
+
async function loadConfigFromFile({
|
| 807 |
+
configFile,
|
| 808 |
+
configRoot = import_node_process2.default.cwd()
|
| 809 |
+
}) {
|
| 810 |
+
const start = performance.now();
|
| 811 |
+
const getTime = () => `${(performance.now() - start).toFixed(2)}ms`;
|
| 812 |
+
const diagnostics = [];
|
| 813 |
+
const deprecatedPrismaConfigFromJson = await loadConfigFromPackageJson(configRoot);
|
| 814 |
+
if (deprecatedPrismaConfigFromJson) {
|
| 815 |
+
diagnostics.push({
|
| 816 |
+
_tag: "warn",
|
| 817 |
+
value: ({ warn, link }) => () => warn(
|
| 818 |
+
`The configuration property \`package.json#prisma\` is deprecated and will be removed in Prisma 7. Please migrate to a Prisma config file (e.g., \`prisma.config.ts\`).
|
| 819 |
+
For more information, see: ${link("https://pris.ly/prisma-config")}
|
| 820 |
+
`
|
| 821 |
+
)
|
| 822 |
+
});
|
| 823 |
+
}
|
| 824 |
+
try {
|
| 825 |
+
const { configModule, resolvedPath, error } = await loadConfigTsOrJs(configRoot, configFile);
|
| 826 |
+
if (error) {
|
| 827 |
+
return {
|
| 828 |
+
resolvedPath,
|
| 829 |
+
error,
|
| 830 |
+
diagnostics
|
| 831 |
+
};
|
| 832 |
+
}
|
| 833 |
+
debug4(`Config file loaded in %s`, getTime());
|
| 834 |
+
if (resolvedPath === null) {
|
| 835 |
+
debug4(`No config file found in the current working directory %s`, configRoot);
|
| 836 |
+
return { resolvedPath: null, config: defaultConfig(), diagnostics };
|
| 837 |
+
}
|
| 838 |
+
let parsedConfig;
|
| 839 |
+
try {
|
| 840 |
+
parsedConfig = parseDefaultExport(configModule);
|
| 841 |
+
} catch (e) {
|
| 842 |
+
const error2 = e;
|
| 843 |
+
return {
|
| 844 |
+
resolvedPath,
|
| 845 |
+
error: {
|
| 846 |
+
_tag: "ConfigFileSyntaxError",
|
| 847 |
+
error: error2
|
| 848 |
+
},
|
| 849 |
+
diagnostics
|
| 850 |
+
};
|
| 851 |
+
}
|
| 852 |
+
diagnostics.push({
|
| 853 |
+
_tag: "log",
|
| 854 |
+
value: ({ log, dim: dim2 }) => () => log(dim2(`Loaded Prisma config from ${import_node_path.default.relative(configRoot, resolvedPath)}.
|
| 855 |
+
`))
|
| 856 |
+
});
|
| 857 |
+
const prismaConfig = transformPathsInConfigToAbsolute(parsedConfig, resolvedPath);
|
| 858 |
+
if (deprecatedPrismaConfigFromJson) {
|
| 859 |
+
diagnostics.push({
|
| 860 |
+
_tag: "warn",
|
| 861 |
+
value: ({ warn, link }) => () => warn(`The Prisma config file in ${import_node_path.default.relative(
|
| 862 |
+
configRoot,
|
| 863 |
+
resolvedPath
|
| 864 |
+
)} overrides the deprecated \`package.json#prisma\` property in ${import_node_path.default.relative(
|
| 865 |
+
configRoot,
|
| 866 |
+
deprecatedPrismaConfigFromJson.loadedFromFile
|
| 867 |
+
)}.
|
| 868 |
+
For more information, see: ${link("https://pris.ly/prisma-config")}
|
| 869 |
+
`)
|
| 870 |
+
});
|
| 871 |
+
}
|
| 872 |
+
return {
|
| 873 |
+
config: {
|
| 874 |
+
...prismaConfig,
|
| 875 |
+
loadedFromFile: resolvedPath
|
| 876 |
+
},
|
| 877 |
+
resolvedPath,
|
| 878 |
+
diagnostics
|
| 879 |
+
};
|
| 880 |
+
} catch (e) {
|
| 881 |
+
const error = e;
|
| 882 |
+
return {
|
| 883 |
+
resolvedPath: configRoot,
|
| 884 |
+
error: {
|
| 885 |
+
_tag: "UnknownError",
|
| 886 |
+
error
|
| 887 |
+
},
|
| 888 |
+
diagnostics
|
| 889 |
+
};
|
| 890 |
+
}
|
| 891 |
+
}
|
| 892 |
+
async function loadConfigTsOrJs(configRoot, configFile) {
|
| 893 |
+
const { loadConfig: loadConfigWithC12 } = await import("c12");
|
| 894 |
+
const { deepmerge } = await import("deepmerge-ts");
|
| 895 |
+
try {
|
| 896 |
+
const {
|
| 897 |
+
config,
|
| 898 |
+
configFile: _resolvedPath,
|
| 899 |
+
meta
|
| 900 |
+
} = await loadConfigWithC12({
|
| 901 |
+
cwd: configRoot,
|
| 902 |
+
// configuration base name
|
| 903 |
+
name: "prisma",
|
| 904 |
+
// the config file to load (without file extensions), defaulting to `${cwd}.${name}`
|
| 905 |
+
configFile,
|
| 906 |
+
// do not load .env files
|
| 907 |
+
dotenv: false,
|
| 908 |
+
// do not load RC config
|
| 909 |
+
rcFile: false,
|
| 910 |
+
// do not extend remote config files
|
| 911 |
+
giget: false,
|
| 912 |
+
// do not extend the default config
|
| 913 |
+
extend: false,
|
| 914 |
+
// do not load from nearest package.json
|
| 915 |
+
packageJson: false,
|
| 916 |
+
// @ts-expect-error: this is a type-error in `c12` itself
|
| 917 |
+
merger: deepmerge,
|
| 918 |
+
jitiOptions: {
|
| 919 |
+
interopDefault: true,
|
| 920 |
+
moduleCache: false,
|
| 921 |
+
extensions: SUPPORTED_EXTENSIONS
|
| 922 |
+
}
|
| 923 |
+
});
|
| 924 |
+
const resolvedPath = _resolvedPath ? import_node_path.default.normalize(_resolvedPath) : void 0;
|
| 925 |
+
const doesConfigFileExist = resolvedPath !== void 0 && meta !== void 0;
|
| 926 |
+
if (configFile && !doesConfigFileExist) {
|
| 927 |
+
debug4(`The given config file was not found at %s`, resolvedPath);
|
| 928 |
+
return {
|
| 929 |
+
require: null,
|
| 930 |
+
resolvedPath: import_node_path.default.join(configRoot, configFile),
|
| 931 |
+
error: { _tag: "ConfigFileNotFound" }
|
| 932 |
+
};
|
| 933 |
+
}
|
| 934 |
+
if (doesConfigFileExist) {
|
| 935 |
+
const extension = import_node_path.default.extname(import_node_path.default.basename(resolvedPath));
|
| 936 |
+
if (!SUPPORTED_EXTENSIONS.includes(extension)) {
|
| 937 |
+
return {
|
| 938 |
+
configModule: config,
|
| 939 |
+
resolvedPath,
|
| 940 |
+
error: {
|
| 941 |
+
_tag: "ConfigLoadError",
|
| 942 |
+
error: new Error(`Unsupported Prisma config file extension: ${extension}`)
|
| 943 |
+
}
|
| 944 |
+
};
|
| 945 |
+
}
|
| 946 |
+
}
|
| 947 |
+
return {
|
| 948 |
+
configModule: config,
|
| 949 |
+
resolvedPath: doesConfigFileExist ? resolvedPath : null,
|
| 950 |
+
error: null
|
| 951 |
+
};
|
| 952 |
+
} catch (e) {
|
| 953 |
+
const error = e;
|
| 954 |
+
debug4("jiti import failed: %s", error.message);
|
| 955 |
+
const configFileMatch = error.message.match(/prisma\.config\.(\w+)/);
|
| 956 |
+
const extension = configFileMatch?.[1];
|
| 957 |
+
const filenameWithExtension = import_node_path.default.join(configRoot, extension ? `prisma.config.${extension}` : "");
|
| 958 |
+
debug4("faulty config file: %s", filenameWithExtension);
|
| 959 |
+
return {
|
| 960 |
+
error: {
|
| 961 |
+
_tag: "ConfigLoadError",
|
| 962 |
+
error
|
| 963 |
+
},
|
| 964 |
+
resolvedPath: filenameWithExtension
|
| 965 |
+
};
|
| 966 |
+
}
|
| 967 |
+
}
|
| 968 |
+
function transformPathsInConfigToAbsolute(prismaConfig, resolvedPath) {
|
| 969 |
+
function resolvePath(value) {
|
| 970 |
+
if (!value) {
|
| 971 |
+
return void 0;
|
| 972 |
+
}
|
| 973 |
+
return import_node_path.default.resolve(import_node_path.default.dirname(resolvedPath), value);
|
| 974 |
+
}
|
| 975 |
+
return {
|
| 976 |
+
...prismaConfig,
|
| 977 |
+
schema: resolvePath(prismaConfig.schema),
|
| 978 |
+
migrations: {
|
| 979 |
+
...prismaConfig.migrations,
|
| 980 |
+
path: resolvePath(prismaConfig.migrations?.path)
|
| 981 |
+
},
|
| 982 |
+
typedSql: {
|
| 983 |
+
...prismaConfig.typedSql,
|
| 984 |
+
path: resolvePath(prismaConfig.typedSql?.path)
|
| 985 |
+
},
|
| 986 |
+
views: {
|
| 987 |
+
...prismaConfig.views,
|
| 988 |
+
path: resolvePath(prismaConfig.views?.path)
|
| 989 |
+
}
|
| 990 |
+
};
|
| 991 |
+
}
|
| 992 |
+
// Annotate the CommonJS export names for ESM import in node:
|
| 993 |
+
0 && (module.exports = {
|
| 994 |
+
PrismaConfigEnvError,
|
| 995 |
+
defaultTestConfig,
|
| 996 |
+
defineConfig,
|
| 997 |
+
env,
|
| 998 |
+
loadConfigFromFile,
|
| 999 |
+
loadConfigFromPackageJson
|
| 1000 |
+
});
|
backend/node_modules/@prisma/engines/dist/index.d.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import type { BinaryPaths } from '@prisma/fetch-engine';
|
| 2 |
+
import { BinaryType as BinaryType_2 } from '@prisma/fetch-engine';
|
| 3 |
+
import type { DownloadOptions } from '@prisma/fetch-engine';
|
| 4 |
+
import { enginesVersion } from '@prisma/engines-version';
|
| 5 |
+
|
| 6 |
+
export declare const DEFAULT_CLI_QUERY_ENGINE_BINARY_TYPE = BinaryType.QueryEngineLibrary;
|
| 7 |
+
|
| 8 |
+
export { enginesVersion }
|
| 9 |
+
|
| 10 |
+
export declare function ensureNeededBinariesExist({ clientEngineType, download, hasMigrateAdapterInConfig, }: EnsureSomeBinariesExistInput): Promise<void>;
|
| 11 |
+
|
| 12 |
+
declare type EnsureSomeBinariesExistInput = {
|
| 13 |
+
clientEngineType: 'library' | 'binary' | 'client';
|
| 14 |
+
hasMigrateAdapterInConfig: boolean;
|
| 15 |
+
download: (options: DownloadOptions) => Promise<BinaryPaths>;
|
| 16 |
+
};
|
| 17 |
+
|
| 18 |
+
/**
|
| 19 |
+
* Checks if the env override `PRISMA_CLI_QUERY_ENGINE_TYPE` is set to `library` or `binary`
|
| 20 |
+
* Otherwise returns the default
|
| 21 |
+
*/
|
| 22 |
+
export declare function getCliQueryEngineBinaryType(clientEngineType?: string | undefined): BinaryType_2;
|
| 23 |
+
|
| 24 |
+
export declare function getEnginesPath(): string;
|
| 25 |
+
|
| 26 |
+
export { }
|
backend/node_modules/@prisma/engines/dist/index.js
ADDED
|
@@ -0,0 +1,112 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"use strict";
|
| 2 |
+
var __create = Object.create;
|
| 3 |
+
var __defProp = Object.defineProperty;
|
| 4 |
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
| 5 |
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
| 6 |
+
var __getProtoOf = Object.getPrototypeOf;
|
| 7 |
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
| 8 |
+
var __export = (target, all) => {
|
| 9 |
+
for (var name in all)
|
| 10 |
+
__defProp(target, name, { get: all[name], enumerable: true });
|
| 11 |
+
};
|
| 12 |
+
var __copyProps = (to, from, except, desc) => {
|
| 13 |
+
if (from && typeof from === "object" || typeof from === "function") {
|
| 14 |
+
for (let key of __getOwnPropNames(from))
|
| 15 |
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
| 16 |
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
| 17 |
+
}
|
| 18 |
+
return to;
|
| 19 |
+
};
|
| 20 |
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
| 21 |
+
// If the importer is in node compatibility mode or this is not an ESM
|
| 22 |
+
// file that has been converted to a CommonJS file using a Babel-
|
| 23 |
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
| 24 |
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
| 25 |
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
| 26 |
+
mod
|
| 27 |
+
));
|
| 28 |
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
| 29 |
+
|
| 30 |
+
// src/index.ts
|
| 31 |
+
var index_exports = {};
|
| 32 |
+
__export(index_exports, {
|
| 33 |
+
DEFAULT_CLI_QUERY_ENGINE_BINARY_TYPE: () => DEFAULT_CLI_QUERY_ENGINE_BINARY_TYPE,
|
| 34 |
+
enginesVersion: () => import_engines_version2.enginesVersion,
|
| 35 |
+
ensureNeededBinariesExist: () => ensureNeededBinariesExist,
|
| 36 |
+
getCliQueryEngineBinaryType: () => getCliQueryEngineBinaryType,
|
| 37 |
+
getEnginesPath: () => getEnginesPath
|
| 38 |
+
});
|
| 39 |
+
module.exports = __toCommonJS(index_exports);
|
| 40 |
+
var import_debug = require("@prisma/debug");
|
| 41 |
+
var import_engines_version = require("@prisma/engines-version");
|
| 42 |
+
var import_fetch_engine = require("@prisma/fetch-engine");
|
| 43 |
+
var import_path = __toESM(require("path"));
|
| 44 |
+
var import_engines_version2 = require("@prisma/engines-version");
|
| 45 |
+
var debug = (0, import_debug.Debug)("prisma:engines");
|
| 46 |
+
function getEnginesPath() {
|
| 47 |
+
return import_path.default.join(__dirname, "../");
|
| 48 |
+
}
|
| 49 |
+
var DEFAULT_CLI_QUERY_ENGINE_BINARY_TYPE = import_fetch_engine.BinaryType.QueryEngineLibrary;
|
| 50 |
+
function getCliQueryEngineBinaryType(clientEngineType = process.env.PRISMA_CLI_QUERY_ENGINE_TYPE) {
|
| 51 |
+
if (clientEngineType === "binary") {
|
| 52 |
+
return import_fetch_engine.BinaryType.QueryEngineBinary;
|
| 53 |
+
}
|
| 54 |
+
return DEFAULT_CLI_QUERY_ENGINE_BINARY_TYPE;
|
| 55 |
+
}
|
| 56 |
+
async function ensureNeededBinariesExist({
|
| 57 |
+
clientEngineType,
|
| 58 |
+
download,
|
| 59 |
+
hasMigrateAdapterInConfig
|
| 60 |
+
}) {
|
| 61 |
+
const binaryDir = import_path.default.join(__dirname, "../");
|
| 62 |
+
const binaries = {};
|
| 63 |
+
if (!hasMigrateAdapterInConfig) {
|
| 64 |
+
binaries[import_fetch_engine.BinaryType.SchemaEngineBinary] = binaryDir;
|
| 65 |
+
}
|
| 66 |
+
const usesQueryCompiler = clientEngineType === "client";
|
| 67 |
+
if (!usesQueryCompiler) {
|
| 68 |
+
const cliQueryEngineBinaryType = getCliQueryEngineBinaryType(clientEngineType);
|
| 69 |
+
binaries[cliQueryEngineBinaryType] = binaryDir;
|
| 70 |
+
}
|
| 71 |
+
debug(`binaries to download ${Object.keys(binaries).join(", ")}`);
|
| 72 |
+
const binaryTargets = process.env.PRISMA_CLI_BINARY_TARGETS ? process.env.PRISMA_CLI_BINARY_TARGETS.split(",") : void 0;
|
| 73 |
+
await download({
|
| 74 |
+
binaries,
|
| 75 |
+
showProgress: true,
|
| 76 |
+
version: import_engines_version.enginesVersion,
|
| 77 |
+
failSilent: false,
|
| 78 |
+
binaryTargets
|
| 79 |
+
});
|
| 80 |
+
}
|
| 81 |
+
import_path.default.join(__dirname, "../query-engine-darwin");
|
| 82 |
+
import_path.default.join(__dirname, "../query-engine-darwin-arm64");
|
| 83 |
+
import_path.default.join(__dirname, "../query-engine-debian-openssl-1.0.x");
|
| 84 |
+
import_path.default.join(__dirname, "../query-engine-debian-openssl-1.1.x");
|
| 85 |
+
import_path.default.join(__dirname, "../query-engine-debian-openssl-3.0.x");
|
| 86 |
+
import_path.default.join(__dirname, "../query-engine-linux-static-x64");
|
| 87 |
+
import_path.default.join(__dirname, "../query-engine-linux-static-arm64");
|
| 88 |
+
import_path.default.join(__dirname, "../query-engine-rhel-openssl-1.0.x");
|
| 89 |
+
import_path.default.join(__dirname, "../query-engine-rhel-openssl-1.1.x");
|
| 90 |
+
import_path.default.join(__dirname, "../query-engine-rhel-openssl-3.0.x");
|
| 91 |
+
import_path.default.join(__dirname, "../libquery_engine-darwin.dylib.node");
|
| 92 |
+
import_path.default.join(__dirname, "../libquery_engine-darwin-arm64.dylib.node");
|
| 93 |
+
import_path.default.join(__dirname, "../libquery_engine-debian-openssl-1.0.x.so.node");
|
| 94 |
+
import_path.default.join(__dirname, "../libquery_engine-debian-openssl-1.1.x.so.node");
|
| 95 |
+
import_path.default.join(__dirname, "../libquery_engine-debian-openssl-3.0.x.so.node");
|
| 96 |
+
import_path.default.join(__dirname, "../libquery_engine-linux-arm64-openssl-1.0.x.so.node");
|
| 97 |
+
import_path.default.join(__dirname, "../libquery_engine-linux-arm64-openssl-1.1.x.so.node");
|
| 98 |
+
import_path.default.join(__dirname, "../libquery_engine-linux-arm64-openssl-3.0.x.so.node");
|
| 99 |
+
import_path.default.join(__dirname, "../libquery_engine-linux-musl.so.node");
|
| 100 |
+
import_path.default.join(__dirname, "../libquery_engine-linux-musl-openssl-3.0.x.so.node");
|
| 101 |
+
import_path.default.join(__dirname, "../libquery_engine-rhel-openssl-1.0.x.so.node");
|
| 102 |
+
import_path.default.join(__dirname, "../libquery_engine-rhel-openssl-1.1.x.so.node");
|
| 103 |
+
import_path.default.join(__dirname, "../libquery_engine-rhel-openssl-3.0.x.so.node");
|
| 104 |
+
import_path.default.join(__dirname, "../query_engine-windows.dll.node");
|
| 105 |
+
// Annotate the CommonJS export names for ESM import in node:
|
| 106 |
+
0 && (module.exports = {
|
| 107 |
+
DEFAULT_CLI_QUERY_ENGINE_BINARY_TYPE,
|
| 108 |
+
enginesVersion,
|
| 109 |
+
ensureNeededBinariesExist,
|
| 110 |
+
getCliQueryEngineBinaryType,
|
| 111 |
+
getEnginesPath
|
| 112 |
+
});
|
backend/node_modules/@prisma/engines/dist/scripts/localinstall.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
export {};
|
backend/node_modules/@prisma/engines/dist/scripts/localinstall.js
ADDED
|
@@ -0,0 +1,2048 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"use strict";
|
| 2 |
+
var __create = Object.create;
|
| 3 |
+
var __defProp = Object.defineProperty;
|
| 4 |
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
| 5 |
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
| 6 |
+
var __getProtoOf = Object.getPrototypeOf;
|
| 7 |
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
| 8 |
+
var __commonJS = (cb, mod) => function __require() {
|
| 9 |
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
| 10 |
+
};
|
| 11 |
+
var __copyProps = (to, from, except, desc) => {
|
| 12 |
+
if (from && typeof from === "object" || typeof from === "function") {
|
| 13 |
+
for (let key of __getOwnPropNames(from))
|
| 14 |
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
| 15 |
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
| 16 |
+
}
|
| 17 |
+
return to;
|
| 18 |
+
};
|
| 19 |
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
| 20 |
+
// If the importer is in node compatibility mode or this is not an ESM
|
| 21 |
+
// file that has been converted to a CommonJS file using a Babel-
|
| 22 |
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
| 23 |
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
| 24 |
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
| 25 |
+
mod
|
| 26 |
+
));
|
| 27 |
+
|
| 28 |
+
// ../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/windows.js
|
| 29 |
+
var require_windows = __commonJS({
|
| 30 |
+
"../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/windows.js"(exports2, module2) {
|
| 31 |
+
"use strict";
|
| 32 |
+
module2.exports = isexe;
|
| 33 |
+
isexe.sync = sync;
|
| 34 |
+
var fs2 = require("fs");
|
| 35 |
+
function checkPathExt(path2, options) {
|
| 36 |
+
var pathext = options.pathExt !== void 0 ? options.pathExt : process.env.PATHEXT;
|
| 37 |
+
if (!pathext) {
|
| 38 |
+
return true;
|
| 39 |
+
}
|
| 40 |
+
pathext = pathext.split(";");
|
| 41 |
+
if (pathext.indexOf("") !== -1) {
|
| 42 |
+
return true;
|
| 43 |
+
}
|
| 44 |
+
for (var i = 0; i < pathext.length; i++) {
|
| 45 |
+
var p = pathext[i].toLowerCase();
|
| 46 |
+
if (p && path2.substr(-p.length).toLowerCase() === p) {
|
| 47 |
+
return true;
|
| 48 |
+
}
|
| 49 |
+
}
|
| 50 |
+
return false;
|
| 51 |
+
}
|
| 52 |
+
function checkStat(stat, path2, options) {
|
| 53 |
+
if (!stat.isSymbolicLink() && !stat.isFile()) {
|
| 54 |
+
return false;
|
| 55 |
+
}
|
| 56 |
+
return checkPathExt(path2, options);
|
| 57 |
+
}
|
| 58 |
+
function isexe(path2, options, cb) {
|
| 59 |
+
fs2.stat(path2, function(er, stat) {
|
| 60 |
+
cb(er, er ? false : checkStat(stat, path2, options));
|
| 61 |
+
});
|
| 62 |
+
}
|
| 63 |
+
function sync(path2, options) {
|
| 64 |
+
return checkStat(fs2.statSync(path2), path2, options);
|
| 65 |
+
}
|
| 66 |
+
}
|
| 67 |
+
});
|
| 68 |
+
|
| 69 |
+
// ../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/mode.js
|
| 70 |
+
var require_mode = __commonJS({
|
| 71 |
+
"../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/mode.js"(exports2, module2) {
|
| 72 |
+
"use strict";
|
| 73 |
+
module2.exports = isexe;
|
| 74 |
+
isexe.sync = sync;
|
| 75 |
+
var fs2 = require("fs");
|
| 76 |
+
function isexe(path2, options, cb) {
|
| 77 |
+
fs2.stat(path2, function(er, stat) {
|
| 78 |
+
cb(er, er ? false : checkStat(stat, options));
|
| 79 |
+
});
|
| 80 |
+
}
|
| 81 |
+
function sync(path2, options) {
|
| 82 |
+
return checkStat(fs2.statSync(path2), options);
|
| 83 |
+
}
|
| 84 |
+
function checkStat(stat, options) {
|
| 85 |
+
return stat.isFile() && checkMode(stat, options);
|
| 86 |
+
}
|
| 87 |
+
function checkMode(stat, options) {
|
| 88 |
+
var mod = stat.mode;
|
| 89 |
+
var uid = stat.uid;
|
| 90 |
+
var gid = stat.gid;
|
| 91 |
+
var myUid = options.uid !== void 0 ? options.uid : process.getuid && process.getuid();
|
| 92 |
+
var myGid = options.gid !== void 0 ? options.gid : process.getgid && process.getgid();
|
| 93 |
+
var u = parseInt("100", 8);
|
| 94 |
+
var g = parseInt("010", 8);
|
| 95 |
+
var o = parseInt("001", 8);
|
| 96 |
+
var ug = u | g;
|
| 97 |
+
var ret = mod & o || mod & g && gid === myGid || mod & u && uid === myUid || mod & ug && myUid === 0;
|
| 98 |
+
return ret;
|
| 99 |
+
}
|
| 100 |
+
}
|
| 101 |
+
});
|
| 102 |
+
|
| 103 |
+
// ../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/index.js
|
| 104 |
+
var require_isexe = __commonJS({
|
| 105 |
+
"../../node_modules/.pnpm/isexe@2.0.0/node_modules/isexe/index.js"(exports2, module2) {
|
| 106 |
+
"use strict";
|
| 107 |
+
var fs2 = require("fs");
|
| 108 |
+
var core;
|
| 109 |
+
if (process.platform === "win32" || global.TESTING_WINDOWS) {
|
| 110 |
+
core = require_windows();
|
| 111 |
+
} else {
|
| 112 |
+
core = require_mode();
|
| 113 |
+
}
|
| 114 |
+
module2.exports = isexe;
|
| 115 |
+
isexe.sync = sync;
|
| 116 |
+
function isexe(path2, options, cb) {
|
| 117 |
+
if (typeof options === "function") {
|
| 118 |
+
cb = options;
|
| 119 |
+
options = {};
|
| 120 |
+
}
|
| 121 |
+
if (!cb) {
|
| 122 |
+
if (typeof Promise !== "function") {
|
| 123 |
+
throw new TypeError("callback not provided");
|
| 124 |
+
}
|
| 125 |
+
return new Promise(function(resolve, reject) {
|
| 126 |
+
isexe(path2, options || {}, function(er, is) {
|
| 127 |
+
if (er) {
|
| 128 |
+
reject(er);
|
| 129 |
+
} else {
|
| 130 |
+
resolve(is);
|
| 131 |
+
}
|
| 132 |
+
});
|
| 133 |
+
});
|
| 134 |
+
}
|
| 135 |
+
core(path2, options || {}, function(er, is) {
|
| 136 |
+
if (er) {
|
| 137 |
+
if (er.code === "EACCES" || options && options.ignoreErrors) {
|
| 138 |
+
er = null;
|
| 139 |
+
is = false;
|
| 140 |
+
}
|
| 141 |
+
}
|
| 142 |
+
cb(er, is);
|
| 143 |
+
});
|
| 144 |
+
}
|
| 145 |
+
function sync(path2, options) {
|
| 146 |
+
try {
|
| 147 |
+
return core.sync(path2, options || {});
|
| 148 |
+
} catch (er) {
|
| 149 |
+
if (options && options.ignoreErrors || er.code === "EACCES") {
|
| 150 |
+
return false;
|
| 151 |
+
} else {
|
| 152 |
+
throw er;
|
| 153 |
+
}
|
| 154 |
+
}
|
| 155 |
+
}
|
| 156 |
+
}
|
| 157 |
+
});
|
| 158 |
+
|
| 159 |
+
// ../../node_modules/.pnpm/which@2.0.2/node_modules/which/which.js
|
| 160 |
+
var require_which = __commonJS({
|
| 161 |
+
"../../node_modules/.pnpm/which@2.0.2/node_modules/which/which.js"(exports2, module2) {
|
| 162 |
+
"use strict";
|
| 163 |
+
var isWindows = process.platform === "win32" || process.env.OSTYPE === "cygwin" || process.env.OSTYPE === "msys";
|
| 164 |
+
var path2 = require("path");
|
| 165 |
+
var COLON = isWindows ? ";" : ":";
|
| 166 |
+
var isexe = require_isexe();
|
| 167 |
+
var getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: "ENOENT" });
|
| 168 |
+
var getPathInfo = (cmd, opt) => {
|
| 169 |
+
const colon = opt.colon || COLON;
|
| 170 |
+
const pathEnv = cmd.match(/\//) || isWindows && cmd.match(/\\/) ? [""] : [
|
| 171 |
+
// windows always checks the cwd first
|
| 172 |
+
...isWindows ? [process.cwd()] : [],
|
| 173 |
+
...(opt.path || process.env.PATH || /* istanbul ignore next: very unusual */
|
| 174 |
+
"").split(colon)
|
| 175 |
+
];
|
| 176 |
+
const pathExtExe = isWindows ? opt.pathExt || process.env.PATHEXT || ".EXE;.CMD;.BAT;.COM" : "";
|
| 177 |
+
const pathExt = isWindows ? pathExtExe.split(colon) : [""];
|
| 178 |
+
if (isWindows) {
|
| 179 |
+
if (cmd.indexOf(".") !== -1 && pathExt[0] !== "")
|
| 180 |
+
pathExt.unshift("");
|
| 181 |
+
}
|
| 182 |
+
return {
|
| 183 |
+
pathEnv,
|
| 184 |
+
pathExt,
|
| 185 |
+
pathExtExe
|
| 186 |
+
};
|
| 187 |
+
};
|
| 188 |
+
var which = (cmd, opt, cb) => {
|
| 189 |
+
if (typeof opt === "function") {
|
| 190 |
+
cb = opt;
|
| 191 |
+
opt = {};
|
| 192 |
+
}
|
| 193 |
+
if (!opt)
|
| 194 |
+
opt = {};
|
| 195 |
+
const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt);
|
| 196 |
+
const found = [];
|
| 197 |
+
const step = (i) => new Promise((resolve, reject) => {
|
| 198 |
+
if (i === pathEnv.length)
|
| 199 |
+
return opt.all && found.length ? resolve(found) : reject(getNotFoundError(cmd));
|
| 200 |
+
const ppRaw = pathEnv[i];
|
| 201 |
+
const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
|
| 202 |
+
const pCmd = path2.join(pathPart, cmd);
|
| 203 |
+
const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd;
|
| 204 |
+
resolve(subStep(p, i, 0));
|
| 205 |
+
});
|
| 206 |
+
const subStep = (p, i, ii) => new Promise((resolve, reject) => {
|
| 207 |
+
if (ii === pathExt.length)
|
| 208 |
+
return resolve(step(i + 1));
|
| 209 |
+
const ext = pathExt[ii];
|
| 210 |
+
isexe(p + ext, { pathExt: pathExtExe }, (er, is) => {
|
| 211 |
+
if (!er && is) {
|
| 212 |
+
if (opt.all)
|
| 213 |
+
found.push(p + ext);
|
| 214 |
+
else
|
| 215 |
+
return resolve(p + ext);
|
| 216 |
+
}
|
| 217 |
+
return resolve(subStep(p, i, ii + 1));
|
| 218 |
+
});
|
| 219 |
+
});
|
| 220 |
+
return cb ? step(0).then((res) => cb(null, res), cb) : step(0);
|
| 221 |
+
};
|
| 222 |
+
var whichSync = (cmd, opt) => {
|
| 223 |
+
opt = opt || {};
|
| 224 |
+
const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt);
|
| 225 |
+
const found = [];
|
| 226 |
+
for (let i = 0; i < pathEnv.length; i++) {
|
| 227 |
+
const ppRaw = pathEnv[i];
|
| 228 |
+
const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
|
| 229 |
+
const pCmd = path2.join(pathPart, cmd);
|
| 230 |
+
const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd;
|
| 231 |
+
for (let j = 0; j < pathExt.length; j++) {
|
| 232 |
+
const cur = p + pathExt[j];
|
| 233 |
+
try {
|
| 234 |
+
const is = isexe.sync(cur, { pathExt: pathExtExe });
|
| 235 |
+
if (is) {
|
| 236 |
+
if (opt.all)
|
| 237 |
+
found.push(cur);
|
| 238 |
+
else
|
| 239 |
+
return cur;
|
| 240 |
+
}
|
| 241 |
+
} catch (ex) {
|
| 242 |
+
}
|
| 243 |
+
}
|
| 244 |
+
}
|
| 245 |
+
if (opt.all && found.length)
|
| 246 |
+
return found;
|
| 247 |
+
if (opt.nothrow)
|
| 248 |
+
return null;
|
| 249 |
+
throw getNotFoundError(cmd);
|
| 250 |
+
};
|
| 251 |
+
module2.exports = which;
|
| 252 |
+
which.sync = whichSync;
|
| 253 |
+
}
|
| 254 |
+
});
|
| 255 |
+
|
| 256 |
+
// ../../node_modules/.pnpm/path-key@3.1.1/node_modules/path-key/index.js
|
| 257 |
+
var require_path_key = __commonJS({
|
| 258 |
+
"../../node_modules/.pnpm/path-key@3.1.1/node_modules/path-key/index.js"(exports2, module2) {
|
| 259 |
+
"use strict";
|
| 260 |
+
var pathKey = (options = {}) => {
|
| 261 |
+
const environment = options.env || process.env;
|
| 262 |
+
const platform = options.platform || process.platform;
|
| 263 |
+
if (platform !== "win32") {
|
| 264 |
+
return "PATH";
|
| 265 |
+
}
|
| 266 |
+
return Object.keys(environment).reverse().find((key) => key.toUpperCase() === "PATH") || "Path";
|
| 267 |
+
};
|
| 268 |
+
module2.exports = pathKey;
|
| 269 |
+
module2.exports.default = pathKey;
|
| 270 |
+
}
|
| 271 |
+
});
|
| 272 |
+
|
| 273 |
+
// ../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/resolveCommand.js
|
| 274 |
+
var require_resolveCommand = __commonJS({
|
| 275 |
+
"../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/resolveCommand.js"(exports2, module2) {
|
| 276 |
+
"use strict";
|
| 277 |
+
var path2 = require("path");
|
| 278 |
+
var which = require_which();
|
| 279 |
+
var getPathKey = require_path_key();
|
| 280 |
+
function resolveCommandAttempt(parsed, withoutPathExt) {
|
| 281 |
+
const env = parsed.options.env || process.env;
|
| 282 |
+
const cwd = process.cwd();
|
| 283 |
+
const hasCustomCwd = parsed.options.cwd != null;
|
| 284 |
+
const shouldSwitchCwd = hasCustomCwd && process.chdir !== void 0 && !process.chdir.disabled;
|
| 285 |
+
if (shouldSwitchCwd) {
|
| 286 |
+
try {
|
| 287 |
+
process.chdir(parsed.options.cwd);
|
| 288 |
+
} catch (err) {
|
| 289 |
+
}
|
| 290 |
+
}
|
| 291 |
+
let resolved;
|
| 292 |
+
try {
|
| 293 |
+
resolved = which.sync(parsed.command, {
|
| 294 |
+
path: env[getPathKey({ env })],
|
| 295 |
+
pathExt: withoutPathExt ? path2.delimiter : void 0
|
| 296 |
+
});
|
| 297 |
+
} catch (e) {
|
| 298 |
+
} finally {
|
| 299 |
+
if (shouldSwitchCwd) {
|
| 300 |
+
process.chdir(cwd);
|
| 301 |
+
}
|
| 302 |
+
}
|
| 303 |
+
if (resolved) {
|
| 304 |
+
resolved = path2.resolve(hasCustomCwd ? parsed.options.cwd : "", resolved);
|
| 305 |
+
}
|
| 306 |
+
return resolved;
|
| 307 |
+
}
|
| 308 |
+
function resolveCommand(parsed) {
|
| 309 |
+
return resolveCommandAttempt(parsed) || resolveCommandAttempt(parsed, true);
|
| 310 |
+
}
|
| 311 |
+
module2.exports = resolveCommand;
|
| 312 |
+
}
|
| 313 |
+
});
|
| 314 |
+
|
| 315 |
+
// ../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/escape.js
|
| 316 |
+
var require_escape = __commonJS({
|
| 317 |
+
"../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/escape.js"(exports2, module2) {
|
| 318 |
+
"use strict";
|
| 319 |
+
var metaCharsRegExp = /([()\][%!^"`<>&|;, *?])/g;
|
| 320 |
+
function escapeCommand(arg) {
|
| 321 |
+
arg = arg.replace(metaCharsRegExp, "^$1");
|
| 322 |
+
return arg;
|
| 323 |
+
}
|
| 324 |
+
function escapeArgument(arg, doubleEscapeMetaChars) {
|
| 325 |
+
arg = `${arg}`;
|
| 326 |
+
arg = arg.replace(/(?=(\\+?)?)\1"/g, '$1$1\\"');
|
| 327 |
+
arg = arg.replace(/(?=(\\+?)?)\1$/, "$1$1");
|
| 328 |
+
arg = `"${arg}"`;
|
| 329 |
+
arg = arg.replace(metaCharsRegExp, "^$1");
|
| 330 |
+
if (doubleEscapeMetaChars) {
|
| 331 |
+
arg = arg.replace(metaCharsRegExp, "^$1");
|
| 332 |
+
}
|
| 333 |
+
return arg;
|
| 334 |
+
}
|
| 335 |
+
module2.exports.command = escapeCommand;
|
| 336 |
+
module2.exports.argument = escapeArgument;
|
| 337 |
+
}
|
| 338 |
+
});
|
| 339 |
+
|
| 340 |
+
// ../../node_modules/.pnpm/shebang-regex@3.0.0/node_modules/shebang-regex/index.js
|
| 341 |
+
var require_shebang_regex = __commonJS({
|
| 342 |
+
"../../node_modules/.pnpm/shebang-regex@3.0.0/node_modules/shebang-regex/index.js"(exports2, module2) {
|
| 343 |
+
"use strict";
|
| 344 |
+
module2.exports = /^#!(.*)/;
|
| 345 |
+
}
|
| 346 |
+
});
|
| 347 |
+
|
| 348 |
+
// ../../node_modules/.pnpm/shebang-command@2.0.0/node_modules/shebang-command/index.js
|
| 349 |
+
var require_shebang_command = __commonJS({
|
| 350 |
+
"../../node_modules/.pnpm/shebang-command@2.0.0/node_modules/shebang-command/index.js"(exports2, module2) {
|
| 351 |
+
"use strict";
|
| 352 |
+
var shebangRegex = require_shebang_regex();
|
| 353 |
+
module2.exports = (string = "") => {
|
| 354 |
+
const match = string.match(shebangRegex);
|
| 355 |
+
if (!match) {
|
| 356 |
+
return null;
|
| 357 |
+
}
|
| 358 |
+
const [path2, argument] = match[0].replace(/#! ?/, "").split(" ");
|
| 359 |
+
const binary = path2.split("/").pop();
|
| 360 |
+
if (binary === "env") {
|
| 361 |
+
return argument;
|
| 362 |
+
}
|
| 363 |
+
return argument ? `${binary} ${argument}` : binary;
|
| 364 |
+
};
|
| 365 |
+
}
|
| 366 |
+
});
|
| 367 |
+
|
| 368 |
+
// ../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/readShebang.js
|
| 369 |
+
var require_readShebang = __commonJS({
|
| 370 |
+
"../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/util/readShebang.js"(exports2, module2) {
|
| 371 |
+
"use strict";
|
| 372 |
+
var fs2 = require("fs");
|
| 373 |
+
var shebangCommand = require_shebang_command();
|
| 374 |
+
function readShebang(command) {
|
| 375 |
+
const size = 150;
|
| 376 |
+
const buffer = Buffer.alloc(size);
|
| 377 |
+
let fd;
|
| 378 |
+
try {
|
| 379 |
+
fd = fs2.openSync(command, "r");
|
| 380 |
+
fs2.readSync(fd, buffer, 0, size, 0);
|
| 381 |
+
fs2.closeSync(fd);
|
| 382 |
+
} catch (e) {
|
| 383 |
+
}
|
| 384 |
+
return shebangCommand(buffer.toString());
|
| 385 |
+
}
|
| 386 |
+
module2.exports = readShebang;
|
| 387 |
+
}
|
| 388 |
+
});
|
| 389 |
+
|
| 390 |
+
// ../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/parse.js
|
| 391 |
+
var require_parse = __commonJS({
|
| 392 |
+
"../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/parse.js"(exports2, module2) {
|
| 393 |
+
"use strict";
|
| 394 |
+
var path2 = require("path");
|
| 395 |
+
var resolveCommand = require_resolveCommand();
|
| 396 |
+
var escape = require_escape();
|
| 397 |
+
var readShebang = require_readShebang();
|
| 398 |
+
var isWin = process.platform === "win32";
|
| 399 |
+
var isExecutableRegExp = /\.(?:com|exe)$/i;
|
| 400 |
+
var isCmdShimRegExp = /node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;
|
| 401 |
+
function detectShebang(parsed) {
|
| 402 |
+
parsed.file = resolveCommand(parsed);
|
| 403 |
+
const shebang = parsed.file && readShebang(parsed.file);
|
| 404 |
+
if (shebang) {
|
| 405 |
+
parsed.args.unshift(parsed.file);
|
| 406 |
+
parsed.command = shebang;
|
| 407 |
+
return resolveCommand(parsed);
|
| 408 |
+
}
|
| 409 |
+
return parsed.file;
|
| 410 |
+
}
|
| 411 |
+
function parseNonShell(parsed) {
|
| 412 |
+
if (!isWin) {
|
| 413 |
+
return parsed;
|
| 414 |
+
}
|
| 415 |
+
const commandFile = detectShebang(parsed);
|
| 416 |
+
const needsShell = !isExecutableRegExp.test(commandFile);
|
| 417 |
+
if (parsed.options.forceShell || needsShell) {
|
| 418 |
+
const needsDoubleEscapeMetaChars = isCmdShimRegExp.test(commandFile);
|
| 419 |
+
parsed.command = path2.normalize(parsed.command);
|
| 420 |
+
parsed.command = escape.command(parsed.command);
|
| 421 |
+
parsed.args = parsed.args.map((arg) => escape.argument(arg, needsDoubleEscapeMetaChars));
|
| 422 |
+
const shellCommand = [parsed.command].concat(parsed.args).join(" ");
|
| 423 |
+
parsed.args = ["/d", "/s", "/c", `"${shellCommand}"`];
|
| 424 |
+
parsed.command = process.env.comspec || "cmd.exe";
|
| 425 |
+
parsed.options.windowsVerbatimArguments = true;
|
| 426 |
+
}
|
| 427 |
+
return parsed;
|
| 428 |
+
}
|
| 429 |
+
function parse(command, args, options) {
|
| 430 |
+
if (args && !Array.isArray(args)) {
|
| 431 |
+
options = args;
|
| 432 |
+
args = null;
|
| 433 |
+
}
|
| 434 |
+
args = args ? args.slice(0) : [];
|
| 435 |
+
options = Object.assign({}, options);
|
| 436 |
+
const parsed = {
|
| 437 |
+
command,
|
| 438 |
+
args,
|
| 439 |
+
options,
|
| 440 |
+
file: void 0,
|
| 441 |
+
original: {
|
| 442 |
+
command,
|
| 443 |
+
args
|
| 444 |
+
}
|
| 445 |
+
};
|
| 446 |
+
return options.shell ? parsed : parseNonShell(parsed);
|
| 447 |
+
}
|
| 448 |
+
module2.exports = parse;
|
| 449 |
+
}
|
| 450 |
+
});
|
| 451 |
+
|
| 452 |
+
// ../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/enoent.js
|
| 453 |
+
var require_enoent = __commonJS({
|
| 454 |
+
"../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/lib/enoent.js"(exports2, module2) {
|
| 455 |
+
"use strict";
|
| 456 |
+
var isWin = process.platform === "win32";
|
| 457 |
+
function notFoundError(original, syscall) {
|
| 458 |
+
return Object.assign(new Error(`${syscall} ${original.command} ENOENT`), {
|
| 459 |
+
code: "ENOENT",
|
| 460 |
+
errno: "ENOENT",
|
| 461 |
+
syscall: `${syscall} ${original.command}`,
|
| 462 |
+
path: original.command,
|
| 463 |
+
spawnargs: original.args
|
| 464 |
+
});
|
| 465 |
+
}
|
| 466 |
+
function hookChildProcess(cp, parsed) {
|
| 467 |
+
if (!isWin) {
|
| 468 |
+
return;
|
| 469 |
+
}
|
| 470 |
+
const originalEmit = cp.emit;
|
| 471 |
+
cp.emit = function(name, arg1) {
|
| 472 |
+
if (name === "exit") {
|
| 473 |
+
const err = verifyENOENT(arg1, parsed);
|
| 474 |
+
if (err) {
|
| 475 |
+
return originalEmit.call(cp, "error", err);
|
| 476 |
+
}
|
| 477 |
+
}
|
| 478 |
+
return originalEmit.apply(cp, arguments);
|
| 479 |
+
};
|
| 480 |
+
}
|
| 481 |
+
function verifyENOENT(status, parsed) {
|
| 482 |
+
if (isWin && status === 1 && !parsed.file) {
|
| 483 |
+
return notFoundError(parsed.original, "spawn");
|
| 484 |
+
}
|
| 485 |
+
return null;
|
| 486 |
+
}
|
| 487 |
+
function verifyENOENTSync(status, parsed) {
|
| 488 |
+
if (isWin && status === 1 && !parsed.file) {
|
| 489 |
+
return notFoundError(parsed.original, "spawnSync");
|
| 490 |
+
}
|
| 491 |
+
return null;
|
| 492 |
+
}
|
| 493 |
+
module2.exports = {
|
| 494 |
+
hookChildProcess,
|
| 495 |
+
verifyENOENT,
|
| 496 |
+
verifyENOENTSync,
|
| 497 |
+
notFoundError
|
| 498 |
+
};
|
| 499 |
+
}
|
| 500 |
+
});
|
| 501 |
+
|
| 502 |
+
// ../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/index.js
|
| 503 |
+
var require_cross_spawn = __commonJS({
|
| 504 |
+
"../../node_modules/.pnpm/cross-spawn@7.0.6/node_modules/cross-spawn/index.js"(exports2, module2) {
|
| 505 |
+
"use strict";
|
| 506 |
+
var cp = require("child_process");
|
| 507 |
+
var parse = require_parse();
|
| 508 |
+
var enoent = require_enoent();
|
| 509 |
+
function spawn(command, args, options) {
|
| 510 |
+
const parsed = parse(command, args, options);
|
| 511 |
+
const spawned = cp.spawn(parsed.command, parsed.args, parsed.options);
|
| 512 |
+
enoent.hookChildProcess(spawned, parsed);
|
| 513 |
+
return spawned;
|
| 514 |
+
}
|
| 515 |
+
function spawnSync(command, args, options) {
|
| 516 |
+
const parsed = parse(command, args, options);
|
| 517 |
+
const result = cp.spawnSync(parsed.command, parsed.args, parsed.options);
|
| 518 |
+
result.error = result.error || enoent.verifyENOENTSync(result.status, parsed);
|
| 519 |
+
return result;
|
| 520 |
+
}
|
| 521 |
+
module2.exports = spawn;
|
| 522 |
+
module2.exports.spawn = spawn;
|
| 523 |
+
module2.exports.sync = spawnSync;
|
| 524 |
+
module2.exports._parse = parse;
|
| 525 |
+
module2.exports._enoent = enoent;
|
| 526 |
+
}
|
| 527 |
+
});
|
| 528 |
+
|
| 529 |
+
// ../../node_modules/.pnpm/strip-final-newline@2.0.0/node_modules/strip-final-newline/index.js
|
| 530 |
+
var require_strip_final_newline = __commonJS({
|
| 531 |
+
"../../node_modules/.pnpm/strip-final-newline@2.0.0/node_modules/strip-final-newline/index.js"(exports2, module2) {
|
| 532 |
+
"use strict";
|
| 533 |
+
module2.exports = (input) => {
|
| 534 |
+
const LF = typeof input === "string" ? "\n" : "\n".charCodeAt();
|
| 535 |
+
const CR = typeof input === "string" ? "\r" : "\r".charCodeAt();
|
| 536 |
+
if (input[input.length - 1] === LF) {
|
| 537 |
+
input = input.slice(0, input.length - 1);
|
| 538 |
+
}
|
| 539 |
+
if (input[input.length - 1] === CR) {
|
| 540 |
+
input = input.slice(0, input.length - 1);
|
| 541 |
+
}
|
| 542 |
+
return input;
|
| 543 |
+
};
|
| 544 |
+
}
|
| 545 |
+
});
|
| 546 |
+
|
| 547 |
+
// ../../node_modules/.pnpm/npm-run-path@4.0.1/node_modules/npm-run-path/index.js
|
| 548 |
+
var require_npm_run_path = __commonJS({
|
| 549 |
+
"../../node_modules/.pnpm/npm-run-path@4.0.1/node_modules/npm-run-path/index.js"(exports2, module2) {
|
| 550 |
+
"use strict";
|
| 551 |
+
var path2 = require("path");
|
| 552 |
+
var pathKey = require_path_key();
|
| 553 |
+
var npmRunPath = (options) => {
|
| 554 |
+
options = {
|
| 555 |
+
cwd: process.cwd(),
|
| 556 |
+
path: process.env[pathKey()],
|
| 557 |
+
execPath: process.execPath,
|
| 558 |
+
...options
|
| 559 |
+
};
|
| 560 |
+
let previous;
|
| 561 |
+
let cwdPath = path2.resolve(options.cwd);
|
| 562 |
+
const result = [];
|
| 563 |
+
while (previous !== cwdPath) {
|
| 564 |
+
result.push(path2.join(cwdPath, "node_modules/.bin"));
|
| 565 |
+
previous = cwdPath;
|
| 566 |
+
cwdPath = path2.resolve(cwdPath, "..");
|
| 567 |
+
}
|
| 568 |
+
const execPathDir = path2.resolve(options.cwd, options.execPath, "..");
|
| 569 |
+
result.push(execPathDir);
|
| 570 |
+
return result.concat(options.path).join(path2.delimiter);
|
| 571 |
+
};
|
| 572 |
+
module2.exports = npmRunPath;
|
| 573 |
+
module2.exports.default = npmRunPath;
|
| 574 |
+
module2.exports.env = (options) => {
|
| 575 |
+
options = {
|
| 576 |
+
env: process.env,
|
| 577 |
+
...options
|
| 578 |
+
};
|
| 579 |
+
const env = { ...options.env };
|
| 580 |
+
const path3 = pathKey({ env });
|
| 581 |
+
options.path = env[path3];
|
| 582 |
+
env[path3] = module2.exports(options);
|
| 583 |
+
return env;
|
| 584 |
+
};
|
| 585 |
+
}
|
| 586 |
+
});
|
| 587 |
+
|
| 588 |
+
// ../../node_modules/.pnpm/mimic-fn@2.1.0/node_modules/mimic-fn/index.js
|
| 589 |
+
var require_mimic_fn = __commonJS({
|
| 590 |
+
"../../node_modules/.pnpm/mimic-fn@2.1.0/node_modules/mimic-fn/index.js"(exports2, module2) {
|
| 591 |
+
"use strict";
|
| 592 |
+
var mimicFn = (to, from) => {
|
| 593 |
+
for (const prop of Reflect.ownKeys(from)) {
|
| 594 |
+
Object.defineProperty(to, prop, Object.getOwnPropertyDescriptor(from, prop));
|
| 595 |
+
}
|
| 596 |
+
return to;
|
| 597 |
+
};
|
| 598 |
+
module2.exports = mimicFn;
|
| 599 |
+
module2.exports.default = mimicFn;
|
| 600 |
+
}
|
| 601 |
+
});
|
| 602 |
+
|
| 603 |
+
// ../../node_modules/.pnpm/onetime@5.1.2/node_modules/onetime/index.js
|
| 604 |
+
var require_onetime = __commonJS({
|
| 605 |
+
"../../node_modules/.pnpm/onetime@5.1.2/node_modules/onetime/index.js"(exports2, module2) {
|
| 606 |
+
"use strict";
|
| 607 |
+
var mimicFn = require_mimic_fn();
|
| 608 |
+
var calledFunctions = /* @__PURE__ */ new WeakMap();
|
| 609 |
+
var onetime = (function_, options = {}) => {
|
| 610 |
+
if (typeof function_ !== "function") {
|
| 611 |
+
throw new TypeError("Expected a function");
|
| 612 |
+
}
|
| 613 |
+
let returnValue;
|
| 614 |
+
let callCount = 0;
|
| 615 |
+
const functionName = function_.displayName || function_.name || "<anonymous>";
|
| 616 |
+
const onetime2 = function(...arguments_) {
|
| 617 |
+
calledFunctions.set(onetime2, ++callCount);
|
| 618 |
+
if (callCount === 1) {
|
| 619 |
+
returnValue = function_.apply(this, arguments_);
|
| 620 |
+
function_ = null;
|
| 621 |
+
} else if (options.throw === true) {
|
| 622 |
+
throw new Error(`Function \`${functionName}\` can only be called once`);
|
| 623 |
+
}
|
| 624 |
+
return returnValue;
|
| 625 |
+
};
|
| 626 |
+
mimicFn(onetime2, function_);
|
| 627 |
+
calledFunctions.set(onetime2, callCount);
|
| 628 |
+
return onetime2;
|
| 629 |
+
};
|
| 630 |
+
module2.exports = onetime;
|
| 631 |
+
module2.exports.default = onetime;
|
| 632 |
+
module2.exports.callCount = (function_) => {
|
| 633 |
+
if (!calledFunctions.has(function_)) {
|
| 634 |
+
throw new Error(`The given function \`${function_.name}\` is not wrapped by the \`onetime\` package`);
|
| 635 |
+
}
|
| 636 |
+
return calledFunctions.get(function_);
|
| 637 |
+
};
|
| 638 |
+
}
|
| 639 |
+
});
|
| 640 |
+
|
| 641 |
+
// ../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/core.js
|
| 642 |
+
var require_core = __commonJS({
|
| 643 |
+
"../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/core.js"(exports2) {
|
| 644 |
+
"use strict";
|
| 645 |
+
Object.defineProperty(exports2, "__esModule", { value: true });
|
| 646 |
+
exports2.SIGNALS = void 0;
|
| 647 |
+
var SIGNALS = [
|
| 648 |
+
{
|
| 649 |
+
name: "SIGHUP",
|
| 650 |
+
number: 1,
|
| 651 |
+
action: "terminate",
|
| 652 |
+
description: "Terminal closed",
|
| 653 |
+
standard: "posix"
|
| 654 |
+
},
|
| 655 |
+
{
|
| 656 |
+
name: "SIGINT",
|
| 657 |
+
number: 2,
|
| 658 |
+
action: "terminate",
|
| 659 |
+
description: "User interruption with CTRL-C",
|
| 660 |
+
standard: "ansi"
|
| 661 |
+
},
|
| 662 |
+
{
|
| 663 |
+
name: "SIGQUIT",
|
| 664 |
+
number: 3,
|
| 665 |
+
action: "core",
|
| 666 |
+
description: "User interruption with CTRL-\\",
|
| 667 |
+
standard: "posix"
|
| 668 |
+
},
|
| 669 |
+
{
|
| 670 |
+
name: "SIGILL",
|
| 671 |
+
number: 4,
|
| 672 |
+
action: "core",
|
| 673 |
+
description: "Invalid machine instruction",
|
| 674 |
+
standard: "ansi"
|
| 675 |
+
},
|
| 676 |
+
{
|
| 677 |
+
name: "SIGTRAP",
|
| 678 |
+
number: 5,
|
| 679 |
+
action: "core",
|
| 680 |
+
description: "Debugger breakpoint",
|
| 681 |
+
standard: "posix"
|
| 682 |
+
},
|
| 683 |
+
{
|
| 684 |
+
name: "SIGABRT",
|
| 685 |
+
number: 6,
|
| 686 |
+
action: "core",
|
| 687 |
+
description: "Aborted",
|
| 688 |
+
standard: "ansi"
|
| 689 |
+
},
|
| 690 |
+
{
|
| 691 |
+
name: "SIGIOT",
|
| 692 |
+
number: 6,
|
| 693 |
+
action: "core",
|
| 694 |
+
description: "Aborted",
|
| 695 |
+
standard: "bsd"
|
| 696 |
+
},
|
| 697 |
+
{
|
| 698 |
+
name: "SIGBUS",
|
| 699 |
+
number: 7,
|
| 700 |
+
action: "core",
|
| 701 |
+
description: "Bus error due to misaligned, non-existing address or paging error",
|
| 702 |
+
standard: "bsd"
|
| 703 |
+
},
|
| 704 |
+
{
|
| 705 |
+
name: "SIGEMT",
|
| 706 |
+
number: 7,
|
| 707 |
+
action: "terminate",
|
| 708 |
+
description: "Command should be emulated but is not implemented",
|
| 709 |
+
standard: "other"
|
| 710 |
+
},
|
| 711 |
+
{
|
| 712 |
+
name: "SIGFPE",
|
| 713 |
+
number: 8,
|
| 714 |
+
action: "core",
|
| 715 |
+
description: "Floating point arithmetic error",
|
| 716 |
+
standard: "ansi"
|
| 717 |
+
},
|
| 718 |
+
{
|
| 719 |
+
name: "SIGKILL",
|
| 720 |
+
number: 9,
|
| 721 |
+
action: "terminate",
|
| 722 |
+
description: "Forced termination",
|
| 723 |
+
standard: "posix",
|
| 724 |
+
forced: true
|
| 725 |
+
},
|
| 726 |
+
{
|
| 727 |
+
name: "SIGUSR1",
|
| 728 |
+
number: 10,
|
| 729 |
+
action: "terminate",
|
| 730 |
+
description: "Application-specific signal",
|
| 731 |
+
standard: "posix"
|
| 732 |
+
},
|
| 733 |
+
{
|
| 734 |
+
name: "SIGSEGV",
|
| 735 |
+
number: 11,
|
| 736 |
+
action: "core",
|
| 737 |
+
description: "Segmentation fault",
|
| 738 |
+
standard: "ansi"
|
| 739 |
+
},
|
| 740 |
+
{
|
| 741 |
+
name: "SIGUSR2",
|
| 742 |
+
number: 12,
|
| 743 |
+
action: "terminate",
|
| 744 |
+
description: "Application-specific signal",
|
| 745 |
+
standard: "posix"
|
| 746 |
+
},
|
| 747 |
+
{
|
| 748 |
+
name: "SIGPIPE",
|
| 749 |
+
number: 13,
|
| 750 |
+
action: "terminate",
|
| 751 |
+
description: "Broken pipe or socket",
|
| 752 |
+
standard: "posix"
|
| 753 |
+
},
|
| 754 |
+
{
|
| 755 |
+
name: "SIGALRM",
|
| 756 |
+
number: 14,
|
| 757 |
+
action: "terminate",
|
| 758 |
+
description: "Timeout or timer",
|
| 759 |
+
standard: "posix"
|
| 760 |
+
},
|
| 761 |
+
{
|
| 762 |
+
name: "SIGTERM",
|
| 763 |
+
number: 15,
|
| 764 |
+
action: "terminate",
|
| 765 |
+
description: "Termination",
|
| 766 |
+
standard: "ansi"
|
| 767 |
+
},
|
| 768 |
+
{
|
| 769 |
+
name: "SIGSTKFLT",
|
| 770 |
+
number: 16,
|
| 771 |
+
action: "terminate",
|
| 772 |
+
description: "Stack is empty or overflowed",
|
| 773 |
+
standard: "other"
|
| 774 |
+
},
|
| 775 |
+
{
|
| 776 |
+
name: "SIGCHLD",
|
| 777 |
+
number: 17,
|
| 778 |
+
action: "ignore",
|
| 779 |
+
description: "Child process terminated, paused or unpaused",
|
| 780 |
+
standard: "posix"
|
| 781 |
+
},
|
| 782 |
+
{
|
| 783 |
+
name: "SIGCLD",
|
| 784 |
+
number: 17,
|
| 785 |
+
action: "ignore",
|
| 786 |
+
description: "Child process terminated, paused or unpaused",
|
| 787 |
+
standard: "other"
|
| 788 |
+
},
|
| 789 |
+
{
|
| 790 |
+
name: "SIGCONT",
|
| 791 |
+
number: 18,
|
| 792 |
+
action: "unpause",
|
| 793 |
+
description: "Unpaused",
|
| 794 |
+
standard: "posix",
|
| 795 |
+
forced: true
|
| 796 |
+
},
|
| 797 |
+
{
|
| 798 |
+
name: "SIGSTOP",
|
| 799 |
+
number: 19,
|
| 800 |
+
action: "pause",
|
| 801 |
+
description: "Paused",
|
| 802 |
+
standard: "posix",
|
| 803 |
+
forced: true
|
| 804 |
+
},
|
| 805 |
+
{
|
| 806 |
+
name: "SIGTSTP",
|
| 807 |
+
number: 20,
|
| 808 |
+
action: "pause",
|
| 809 |
+
description: 'Paused using CTRL-Z or "suspend"',
|
| 810 |
+
standard: "posix"
|
| 811 |
+
},
|
| 812 |
+
{
|
| 813 |
+
name: "SIGTTIN",
|
| 814 |
+
number: 21,
|
| 815 |
+
action: "pause",
|
| 816 |
+
description: "Background process cannot read terminal input",
|
| 817 |
+
standard: "posix"
|
| 818 |
+
},
|
| 819 |
+
{
|
| 820 |
+
name: "SIGBREAK",
|
| 821 |
+
number: 21,
|
| 822 |
+
action: "terminate",
|
| 823 |
+
description: "User interruption with CTRL-BREAK",
|
| 824 |
+
standard: "other"
|
| 825 |
+
},
|
| 826 |
+
{
|
| 827 |
+
name: "SIGTTOU",
|
| 828 |
+
number: 22,
|
| 829 |
+
action: "pause",
|
| 830 |
+
description: "Background process cannot write to terminal output",
|
| 831 |
+
standard: "posix"
|
| 832 |
+
},
|
| 833 |
+
{
|
| 834 |
+
name: "SIGURG",
|
| 835 |
+
number: 23,
|
| 836 |
+
action: "ignore",
|
| 837 |
+
description: "Socket received out-of-band data",
|
| 838 |
+
standard: "bsd"
|
| 839 |
+
},
|
| 840 |
+
{
|
| 841 |
+
name: "SIGXCPU",
|
| 842 |
+
number: 24,
|
| 843 |
+
action: "core",
|
| 844 |
+
description: "Process timed out",
|
| 845 |
+
standard: "bsd"
|
| 846 |
+
},
|
| 847 |
+
{
|
| 848 |
+
name: "SIGXFSZ",
|
| 849 |
+
number: 25,
|
| 850 |
+
action: "core",
|
| 851 |
+
description: "File too big",
|
| 852 |
+
standard: "bsd"
|
| 853 |
+
},
|
| 854 |
+
{
|
| 855 |
+
name: "SIGVTALRM",
|
| 856 |
+
number: 26,
|
| 857 |
+
action: "terminate",
|
| 858 |
+
description: "Timeout or timer",
|
| 859 |
+
standard: "bsd"
|
| 860 |
+
},
|
| 861 |
+
{
|
| 862 |
+
name: "SIGPROF",
|
| 863 |
+
number: 27,
|
| 864 |
+
action: "terminate",
|
| 865 |
+
description: "Timeout or timer",
|
| 866 |
+
standard: "bsd"
|
| 867 |
+
},
|
| 868 |
+
{
|
| 869 |
+
name: "SIGWINCH",
|
| 870 |
+
number: 28,
|
| 871 |
+
action: "ignore",
|
| 872 |
+
description: "Terminal window size changed",
|
| 873 |
+
standard: "bsd"
|
| 874 |
+
},
|
| 875 |
+
{
|
| 876 |
+
name: "SIGIO",
|
| 877 |
+
number: 29,
|
| 878 |
+
action: "terminate",
|
| 879 |
+
description: "I/O is available",
|
| 880 |
+
standard: "other"
|
| 881 |
+
},
|
| 882 |
+
{
|
| 883 |
+
name: "SIGPOLL",
|
| 884 |
+
number: 29,
|
| 885 |
+
action: "terminate",
|
| 886 |
+
description: "Watched event",
|
| 887 |
+
standard: "other"
|
| 888 |
+
},
|
| 889 |
+
{
|
| 890 |
+
name: "SIGINFO",
|
| 891 |
+
number: 29,
|
| 892 |
+
action: "ignore",
|
| 893 |
+
description: "Request for process information",
|
| 894 |
+
standard: "other"
|
| 895 |
+
},
|
| 896 |
+
{
|
| 897 |
+
name: "SIGPWR",
|
| 898 |
+
number: 30,
|
| 899 |
+
action: "terminate",
|
| 900 |
+
description: "Device running out of power",
|
| 901 |
+
standard: "systemv"
|
| 902 |
+
},
|
| 903 |
+
{
|
| 904 |
+
name: "SIGSYS",
|
| 905 |
+
number: 31,
|
| 906 |
+
action: "core",
|
| 907 |
+
description: "Invalid system call",
|
| 908 |
+
standard: "other"
|
| 909 |
+
},
|
| 910 |
+
{
|
| 911 |
+
name: "SIGUNUSED",
|
| 912 |
+
number: 31,
|
| 913 |
+
action: "terminate",
|
| 914 |
+
description: "Invalid system call",
|
| 915 |
+
standard: "other"
|
| 916 |
+
}
|
| 917 |
+
];
|
| 918 |
+
exports2.SIGNALS = SIGNALS;
|
| 919 |
+
}
|
| 920 |
+
});
|
| 921 |
+
|
| 922 |
+
// ../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/realtime.js
|
| 923 |
+
var require_realtime = __commonJS({
|
| 924 |
+
"../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/realtime.js"(exports2) {
|
| 925 |
+
"use strict";
|
| 926 |
+
Object.defineProperty(exports2, "__esModule", { value: true });
|
| 927 |
+
exports2.SIGRTMAX = exports2.getRealtimeSignals = void 0;
|
| 928 |
+
var getRealtimeSignals = function() {
|
| 929 |
+
const length = SIGRTMAX - SIGRTMIN + 1;
|
| 930 |
+
return Array.from({ length }, getRealtimeSignal);
|
| 931 |
+
};
|
| 932 |
+
exports2.getRealtimeSignals = getRealtimeSignals;
|
| 933 |
+
var getRealtimeSignal = function(value, index) {
|
| 934 |
+
return {
|
| 935 |
+
name: `SIGRT${index + 1}`,
|
| 936 |
+
number: SIGRTMIN + index,
|
| 937 |
+
action: "terminate",
|
| 938 |
+
description: "Application-specific signal (realtime)",
|
| 939 |
+
standard: "posix"
|
| 940 |
+
};
|
| 941 |
+
};
|
| 942 |
+
var SIGRTMIN = 34;
|
| 943 |
+
var SIGRTMAX = 64;
|
| 944 |
+
exports2.SIGRTMAX = SIGRTMAX;
|
| 945 |
+
}
|
| 946 |
+
});
|
| 947 |
+
|
| 948 |
+
// ../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/signals.js
|
| 949 |
+
var require_signals = __commonJS({
|
| 950 |
+
"../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/signals.js"(exports2) {
|
| 951 |
+
"use strict";
|
| 952 |
+
Object.defineProperty(exports2, "__esModule", { value: true });
|
| 953 |
+
exports2.getSignals = void 0;
|
| 954 |
+
var _os = require("os");
|
| 955 |
+
var _core = require_core();
|
| 956 |
+
var _realtime = require_realtime();
|
| 957 |
+
var getSignals = function() {
|
| 958 |
+
const realtimeSignals = (0, _realtime.getRealtimeSignals)();
|
| 959 |
+
const signals = [..._core.SIGNALS, ...realtimeSignals].map(normalizeSignal);
|
| 960 |
+
return signals;
|
| 961 |
+
};
|
| 962 |
+
exports2.getSignals = getSignals;
|
| 963 |
+
var normalizeSignal = function({
|
| 964 |
+
name,
|
| 965 |
+
number: defaultNumber,
|
| 966 |
+
description,
|
| 967 |
+
action,
|
| 968 |
+
forced = false,
|
| 969 |
+
standard
|
| 970 |
+
}) {
|
| 971 |
+
const {
|
| 972 |
+
signals: { [name]: constantSignal }
|
| 973 |
+
} = _os.constants;
|
| 974 |
+
const supported = constantSignal !== void 0;
|
| 975 |
+
const number = supported ? constantSignal : defaultNumber;
|
| 976 |
+
return { name, number, description, supported, action, forced, standard };
|
| 977 |
+
};
|
| 978 |
+
}
|
| 979 |
+
});
|
| 980 |
+
|
| 981 |
+
// ../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/main.js
|
| 982 |
+
var require_main = __commonJS({
|
| 983 |
+
"../../node_modules/.pnpm/human-signals@2.1.0/node_modules/human-signals/build/src/main.js"(exports2) {
|
| 984 |
+
"use strict";
|
| 985 |
+
Object.defineProperty(exports2, "__esModule", { value: true });
|
| 986 |
+
exports2.signalsByNumber = exports2.signalsByName = void 0;
|
| 987 |
+
var _os = require("os");
|
| 988 |
+
var _signals = require_signals();
|
| 989 |
+
var _realtime = require_realtime();
|
| 990 |
+
var getSignalsByName = function() {
|
| 991 |
+
const signals = (0, _signals.getSignals)();
|
| 992 |
+
return signals.reduce(getSignalByName, {});
|
| 993 |
+
};
|
| 994 |
+
var getSignalByName = function(signalByNameMemo, { name, number, description, supported, action, forced, standard }) {
|
| 995 |
+
return {
|
| 996 |
+
...signalByNameMemo,
|
| 997 |
+
[name]: { name, number, description, supported, action, forced, standard }
|
| 998 |
+
};
|
| 999 |
+
};
|
| 1000 |
+
var signalsByName = getSignalsByName();
|
| 1001 |
+
exports2.signalsByName = signalsByName;
|
| 1002 |
+
var getSignalsByNumber = function() {
|
| 1003 |
+
const signals = (0, _signals.getSignals)();
|
| 1004 |
+
const length = _realtime.SIGRTMAX + 1;
|
| 1005 |
+
const signalsA = Array.from({ length }, (value, number) => getSignalByNumber(number, signals));
|
| 1006 |
+
return Object.assign({}, ...signalsA);
|
| 1007 |
+
};
|
| 1008 |
+
var getSignalByNumber = function(number, signals) {
|
| 1009 |
+
const signal = findSignalByNumber(number, signals);
|
| 1010 |
+
if (signal === void 0) {
|
| 1011 |
+
return {};
|
| 1012 |
+
}
|
| 1013 |
+
const { name, description, supported, action, forced, standard } = signal;
|
| 1014 |
+
return {
|
| 1015 |
+
[number]: {
|
| 1016 |
+
name,
|
| 1017 |
+
number,
|
| 1018 |
+
description,
|
| 1019 |
+
supported,
|
| 1020 |
+
action,
|
| 1021 |
+
forced,
|
| 1022 |
+
standard
|
| 1023 |
+
}
|
| 1024 |
+
};
|
| 1025 |
+
};
|
| 1026 |
+
var findSignalByNumber = function(number, signals) {
|
| 1027 |
+
const signal = signals.find(({ name }) => _os.constants.signals[name] === number);
|
| 1028 |
+
if (signal !== void 0) {
|
| 1029 |
+
return signal;
|
| 1030 |
+
}
|
| 1031 |
+
return signals.find((signalA) => signalA.number === number);
|
| 1032 |
+
};
|
| 1033 |
+
var signalsByNumber = getSignalsByNumber();
|
| 1034 |
+
exports2.signalsByNumber = signalsByNumber;
|
| 1035 |
+
}
|
| 1036 |
+
});
|
| 1037 |
+
|
| 1038 |
+
// ../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/error.js
|
| 1039 |
+
var require_error = __commonJS({
|
| 1040 |
+
"../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/error.js"(exports2, module2) {
|
| 1041 |
+
"use strict";
|
| 1042 |
+
var { signalsByName } = require_main();
|
| 1043 |
+
var getErrorPrefix = ({ timedOut, timeout, errorCode, signal, signalDescription, exitCode, isCanceled }) => {
|
| 1044 |
+
if (timedOut) {
|
| 1045 |
+
return `timed out after ${timeout} milliseconds`;
|
| 1046 |
+
}
|
| 1047 |
+
if (isCanceled) {
|
| 1048 |
+
return "was canceled";
|
| 1049 |
+
}
|
| 1050 |
+
if (errorCode !== void 0) {
|
| 1051 |
+
return `failed with ${errorCode}`;
|
| 1052 |
+
}
|
| 1053 |
+
if (signal !== void 0) {
|
| 1054 |
+
return `was killed with ${signal} (${signalDescription})`;
|
| 1055 |
+
}
|
| 1056 |
+
if (exitCode !== void 0) {
|
| 1057 |
+
return `failed with exit code ${exitCode}`;
|
| 1058 |
+
}
|
| 1059 |
+
return "failed";
|
| 1060 |
+
};
|
| 1061 |
+
var makeError = ({
|
| 1062 |
+
stdout,
|
| 1063 |
+
stderr,
|
| 1064 |
+
all,
|
| 1065 |
+
error,
|
| 1066 |
+
signal,
|
| 1067 |
+
exitCode,
|
| 1068 |
+
command,
|
| 1069 |
+
escapedCommand,
|
| 1070 |
+
timedOut,
|
| 1071 |
+
isCanceled,
|
| 1072 |
+
killed,
|
| 1073 |
+
parsed: { options: { timeout } }
|
| 1074 |
+
}) => {
|
| 1075 |
+
exitCode = exitCode === null ? void 0 : exitCode;
|
| 1076 |
+
signal = signal === null ? void 0 : signal;
|
| 1077 |
+
const signalDescription = signal === void 0 ? void 0 : signalsByName[signal].description;
|
| 1078 |
+
const errorCode = error && error.code;
|
| 1079 |
+
const prefix = getErrorPrefix({ timedOut, timeout, errorCode, signal, signalDescription, exitCode, isCanceled });
|
| 1080 |
+
const execaMessage = `Command ${prefix}: ${command}`;
|
| 1081 |
+
const isError = Object.prototype.toString.call(error) === "[object Error]";
|
| 1082 |
+
const shortMessage = isError ? `${execaMessage}
|
| 1083 |
+
${error.message}` : execaMessage;
|
| 1084 |
+
const message = [shortMessage, stderr, stdout].filter(Boolean).join("\n");
|
| 1085 |
+
if (isError) {
|
| 1086 |
+
error.originalMessage = error.message;
|
| 1087 |
+
error.message = message;
|
| 1088 |
+
} else {
|
| 1089 |
+
error = new Error(message);
|
| 1090 |
+
}
|
| 1091 |
+
error.shortMessage = shortMessage;
|
| 1092 |
+
error.command = command;
|
| 1093 |
+
error.escapedCommand = escapedCommand;
|
| 1094 |
+
error.exitCode = exitCode;
|
| 1095 |
+
error.signal = signal;
|
| 1096 |
+
error.signalDescription = signalDescription;
|
| 1097 |
+
error.stdout = stdout;
|
| 1098 |
+
error.stderr = stderr;
|
| 1099 |
+
if (all !== void 0) {
|
| 1100 |
+
error.all = all;
|
| 1101 |
+
}
|
| 1102 |
+
if ("bufferedData" in error) {
|
| 1103 |
+
delete error.bufferedData;
|
| 1104 |
+
}
|
| 1105 |
+
error.failed = true;
|
| 1106 |
+
error.timedOut = Boolean(timedOut);
|
| 1107 |
+
error.isCanceled = isCanceled;
|
| 1108 |
+
error.killed = killed && !timedOut;
|
| 1109 |
+
return error;
|
| 1110 |
+
};
|
| 1111 |
+
module2.exports = makeError;
|
| 1112 |
+
}
|
| 1113 |
+
});
|
| 1114 |
+
|
| 1115 |
+
// ../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stdio.js
|
| 1116 |
+
var require_stdio = __commonJS({
|
| 1117 |
+
"../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stdio.js"(exports2, module2) {
|
| 1118 |
+
"use strict";
|
| 1119 |
+
var aliases = ["stdin", "stdout", "stderr"];
|
| 1120 |
+
var hasAlias = (options) => aliases.some((alias) => options[alias] !== void 0);
|
| 1121 |
+
var normalizeStdio = (options) => {
|
| 1122 |
+
if (!options) {
|
| 1123 |
+
return;
|
| 1124 |
+
}
|
| 1125 |
+
const { stdio } = options;
|
| 1126 |
+
if (stdio === void 0) {
|
| 1127 |
+
return aliases.map((alias) => options[alias]);
|
| 1128 |
+
}
|
| 1129 |
+
if (hasAlias(options)) {
|
| 1130 |
+
throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${aliases.map((alias) => `\`${alias}\``).join(", ")}`);
|
| 1131 |
+
}
|
| 1132 |
+
if (typeof stdio === "string") {
|
| 1133 |
+
return stdio;
|
| 1134 |
+
}
|
| 1135 |
+
if (!Array.isArray(stdio)) {
|
| 1136 |
+
throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof stdio}\``);
|
| 1137 |
+
}
|
| 1138 |
+
const length = Math.max(stdio.length, aliases.length);
|
| 1139 |
+
return Array.from({ length }, (value, index) => stdio[index]);
|
| 1140 |
+
};
|
| 1141 |
+
module2.exports = normalizeStdio;
|
| 1142 |
+
module2.exports.node = (options) => {
|
| 1143 |
+
const stdio = normalizeStdio(options);
|
| 1144 |
+
if (stdio === "ipc") {
|
| 1145 |
+
return "ipc";
|
| 1146 |
+
}
|
| 1147 |
+
if (stdio === void 0 || typeof stdio === "string") {
|
| 1148 |
+
return [stdio, stdio, stdio, "ipc"];
|
| 1149 |
+
}
|
| 1150 |
+
if (stdio.includes("ipc")) {
|
| 1151 |
+
return stdio;
|
| 1152 |
+
}
|
| 1153 |
+
return [...stdio, "ipc"];
|
| 1154 |
+
};
|
| 1155 |
+
}
|
| 1156 |
+
});
|
| 1157 |
+
|
| 1158 |
+
// ../../node_modules/.pnpm/signal-exit@3.0.7/node_modules/signal-exit/signals.js
|
| 1159 |
+
var require_signals2 = __commonJS({
|
| 1160 |
+
"../../node_modules/.pnpm/signal-exit@3.0.7/node_modules/signal-exit/signals.js"(exports2, module2) {
|
| 1161 |
+
"use strict";
|
| 1162 |
+
module2.exports = [
|
| 1163 |
+
"SIGABRT",
|
| 1164 |
+
"SIGALRM",
|
| 1165 |
+
"SIGHUP",
|
| 1166 |
+
"SIGINT",
|
| 1167 |
+
"SIGTERM"
|
| 1168 |
+
];
|
| 1169 |
+
if (process.platform !== "win32") {
|
| 1170 |
+
module2.exports.push(
|
| 1171 |
+
"SIGVTALRM",
|
| 1172 |
+
"SIGXCPU",
|
| 1173 |
+
"SIGXFSZ",
|
| 1174 |
+
"SIGUSR2",
|
| 1175 |
+
"SIGTRAP",
|
| 1176 |
+
"SIGSYS",
|
| 1177 |
+
"SIGQUIT",
|
| 1178 |
+
"SIGIOT"
|
| 1179 |
+
// should detect profiler and enable/disable accordingly.
|
| 1180 |
+
// see #21
|
| 1181 |
+
// 'SIGPROF'
|
| 1182 |
+
);
|
| 1183 |
+
}
|
| 1184 |
+
if (process.platform === "linux") {
|
| 1185 |
+
module2.exports.push(
|
| 1186 |
+
"SIGIO",
|
| 1187 |
+
"SIGPOLL",
|
| 1188 |
+
"SIGPWR",
|
| 1189 |
+
"SIGSTKFLT",
|
| 1190 |
+
"SIGUNUSED"
|
| 1191 |
+
);
|
| 1192 |
+
}
|
| 1193 |
+
}
|
| 1194 |
+
});
|
| 1195 |
+
|
| 1196 |
+
// ../../node_modules/.pnpm/signal-exit@3.0.7/node_modules/signal-exit/index.js
|
| 1197 |
+
var require_signal_exit = __commonJS({
|
| 1198 |
+
"../../node_modules/.pnpm/signal-exit@3.0.7/node_modules/signal-exit/index.js"(exports2, module2) {
|
| 1199 |
+
"use strict";
|
| 1200 |
+
var process2 = global.process;
|
| 1201 |
+
var processOk = function(process3) {
|
| 1202 |
+
return process3 && typeof process3 === "object" && typeof process3.removeListener === "function" && typeof process3.emit === "function" && typeof process3.reallyExit === "function" && typeof process3.listeners === "function" && typeof process3.kill === "function" && typeof process3.pid === "number" && typeof process3.on === "function";
|
| 1203 |
+
};
|
| 1204 |
+
if (!processOk(process2)) {
|
| 1205 |
+
module2.exports = function() {
|
| 1206 |
+
return function() {
|
| 1207 |
+
};
|
| 1208 |
+
};
|
| 1209 |
+
} else {
|
| 1210 |
+
assert = require("assert");
|
| 1211 |
+
signals = require_signals2();
|
| 1212 |
+
isWin = /^win/i.test(process2.platform);
|
| 1213 |
+
EE = require("events");
|
| 1214 |
+
if (typeof EE !== "function") {
|
| 1215 |
+
EE = EE.EventEmitter;
|
| 1216 |
+
}
|
| 1217 |
+
if (process2.__signal_exit_emitter__) {
|
| 1218 |
+
emitter = process2.__signal_exit_emitter__;
|
| 1219 |
+
} else {
|
| 1220 |
+
emitter = process2.__signal_exit_emitter__ = new EE();
|
| 1221 |
+
emitter.count = 0;
|
| 1222 |
+
emitter.emitted = {};
|
| 1223 |
+
}
|
| 1224 |
+
if (!emitter.infinite) {
|
| 1225 |
+
emitter.setMaxListeners(Infinity);
|
| 1226 |
+
emitter.infinite = true;
|
| 1227 |
+
}
|
| 1228 |
+
module2.exports = function(cb, opts) {
|
| 1229 |
+
if (!processOk(global.process)) {
|
| 1230 |
+
return function() {
|
| 1231 |
+
};
|
| 1232 |
+
}
|
| 1233 |
+
assert.equal(typeof cb, "function", "a callback must be provided for exit handler");
|
| 1234 |
+
if (loaded === false) {
|
| 1235 |
+
load();
|
| 1236 |
+
}
|
| 1237 |
+
var ev = "exit";
|
| 1238 |
+
if (opts && opts.alwaysLast) {
|
| 1239 |
+
ev = "afterexit";
|
| 1240 |
+
}
|
| 1241 |
+
var remove = function() {
|
| 1242 |
+
emitter.removeListener(ev, cb);
|
| 1243 |
+
if (emitter.listeners("exit").length === 0 && emitter.listeners("afterexit").length === 0) {
|
| 1244 |
+
unload();
|
| 1245 |
+
}
|
| 1246 |
+
};
|
| 1247 |
+
emitter.on(ev, cb);
|
| 1248 |
+
return remove;
|
| 1249 |
+
};
|
| 1250 |
+
unload = function unload2() {
|
| 1251 |
+
if (!loaded || !processOk(global.process)) {
|
| 1252 |
+
return;
|
| 1253 |
+
}
|
| 1254 |
+
loaded = false;
|
| 1255 |
+
signals.forEach(function(sig) {
|
| 1256 |
+
try {
|
| 1257 |
+
process2.removeListener(sig, sigListeners[sig]);
|
| 1258 |
+
} catch (er) {
|
| 1259 |
+
}
|
| 1260 |
+
});
|
| 1261 |
+
process2.emit = originalProcessEmit;
|
| 1262 |
+
process2.reallyExit = originalProcessReallyExit;
|
| 1263 |
+
emitter.count -= 1;
|
| 1264 |
+
};
|
| 1265 |
+
module2.exports.unload = unload;
|
| 1266 |
+
emit = function emit2(event, code, signal) {
|
| 1267 |
+
if (emitter.emitted[event]) {
|
| 1268 |
+
return;
|
| 1269 |
+
}
|
| 1270 |
+
emitter.emitted[event] = true;
|
| 1271 |
+
emitter.emit(event, code, signal);
|
| 1272 |
+
};
|
| 1273 |
+
sigListeners = {};
|
| 1274 |
+
signals.forEach(function(sig) {
|
| 1275 |
+
sigListeners[sig] = function listener() {
|
| 1276 |
+
if (!processOk(global.process)) {
|
| 1277 |
+
return;
|
| 1278 |
+
}
|
| 1279 |
+
var listeners = process2.listeners(sig);
|
| 1280 |
+
if (listeners.length === emitter.count) {
|
| 1281 |
+
unload();
|
| 1282 |
+
emit("exit", null, sig);
|
| 1283 |
+
emit("afterexit", null, sig);
|
| 1284 |
+
if (isWin && sig === "SIGHUP") {
|
| 1285 |
+
sig = "SIGINT";
|
| 1286 |
+
}
|
| 1287 |
+
process2.kill(process2.pid, sig);
|
| 1288 |
+
}
|
| 1289 |
+
};
|
| 1290 |
+
});
|
| 1291 |
+
module2.exports.signals = function() {
|
| 1292 |
+
return signals;
|
| 1293 |
+
};
|
| 1294 |
+
loaded = false;
|
| 1295 |
+
load = function load2() {
|
| 1296 |
+
if (loaded || !processOk(global.process)) {
|
| 1297 |
+
return;
|
| 1298 |
+
}
|
| 1299 |
+
loaded = true;
|
| 1300 |
+
emitter.count += 1;
|
| 1301 |
+
signals = signals.filter(function(sig) {
|
| 1302 |
+
try {
|
| 1303 |
+
process2.on(sig, sigListeners[sig]);
|
| 1304 |
+
return true;
|
| 1305 |
+
} catch (er) {
|
| 1306 |
+
return false;
|
| 1307 |
+
}
|
| 1308 |
+
});
|
| 1309 |
+
process2.emit = processEmit;
|
| 1310 |
+
process2.reallyExit = processReallyExit;
|
| 1311 |
+
};
|
| 1312 |
+
module2.exports.load = load;
|
| 1313 |
+
originalProcessReallyExit = process2.reallyExit;
|
| 1314 |
+
processReallyExit = function processReallyExit2(code) {
|
| 1315 |
+
if (!processOk(global.process)) {
|
| 1316 |
+
return;
|
| 1317 |
+
}
|
| 1318 |
+
process2.exitCode = code || /* istanbul ignore next */
|
| 1319 |
+
0;
|
| 1320 |
+
emit("exit", process2.exitCode, null);
|
| 1321 |
+
emit("afterexit", process2.exitCode, null);
|
| 1322 |
+
originalProcessReallyExit.call(process2, process2.exitCode);
|
| 1323 |
+
};
|
| 1324 |
+
originalProcessEmit = process2.emit;
|
| 1325 |
+
processEmit = function processEmit2(ev, arg) {
|
| 1326 |
+
if (ev === "exit" && processOk(global.process)) {
|
| 1327 |
+
if (arg !== void 0) {
|
| 1328 |
+
process2.exitCode = arg;
|
| 1329 |
+
}
|
| 1330 |
+
var ret = originalProcessEmit.apply(this, arguments);
|
| 1331 |
+
emit("exit", process2.exitCode, null);
|
| 1332 |
+
emit("afterexit", process2.exitCode, null);
|
| 1333 |
+
return ret;
|
| 1334 |
+
} else {
|
| 1335 |
+
return originalProcessEmit.apply(this, arguments);
|
| 1336 |
+
}
|
| 1337 |
+
};
|
| 1338 |
+
}
|
| 1339 |
+
var assert;
|
| 1340 |
+
var signals;
|
| 1341 |
+
var isWin;
|
| 1342 |
+
var EE;
|
| 1343 |
+
var emitter;
|
| 1344 |
+
var unload;
|
| 1345 |
+
var emit;
|
| 1346 |
+
var sigListeners;
|
| 1347 |
+
var loaded;
|
| 1348 |
+
var load;
|
| 1349 |
+
var originalProcessReallyExit;
|
| 1350 |
+
var processReallyExit;
|
| 1351 |
+
var originalProcessEmit;
|
| 1352 |
+
var processEmit;
|
| 1353 |
+
}
|
| 1354 |
+
});
|
| 1355 |
+
|
| 1356 |
+
// ../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/kill.js
|
| 1357 |
+
var require_kill = __commonJS({
|
| 1358 |
+
"../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/kill.js"(exports2, module2) {
|
| 1359 |
+
"use strict";
|
| 1360 |
+
var os = require("os");
|
| 1361 |
+
var onExit = require_signal_exit();
|
| 1362 |
+
var DEFAULT_FORCE_KILL_TIMEOUT = 1e3 * 5;
|
| 1363 |
+
var spawnedKill = (kill, signal = "SIGTERM", options = {}) => {
|
| 1364 |
+
const killResult = kill(signal);
|
| 1365 |
+
setKillTimeout(kill, signal, options, killResult);
|
| 1366 |
+
return killResult;
|
| 1367 |
+
};
|
| 1368 |
+
var setKillTimeout = (kill, signal, options, killResult) => {
|
| 1369 |
+
if (!shouldForceKill(signal, options, killResult)) {
|
| 1370 |
+
return;
|
| 1371 |
+
}
|
| 1372 |
+
const timeout = getForceKillAfterTimeout(options);
|
| 1373 |
+
const t = setTimeout(() => {
|
| 1374 |
+
kill("SIGKILL");
|
| 1375 |
+
}, timeout);
|
| 1376 |
+
if (t.unref) {
|
| 1377 |
+
t.unref();
|
| 1378 |
+
}
|
| 1379 |
+
};
|
| 1380 |
+
var shouldForceKill = (signal, { forceKillAfterTimeout }, killResult) => {
|
| 1381 |
+
return isSigterm(signal) && forceKillAfterTimeout !== false && killResult;
|
| 1382 |
+
};
|
| 1383 |
+
var isSigterm = (signal) => {
|
| 1384 |
+
return signal === os.constants.signals.SIGTERM || typeof signal === "string" && signal.toUpperCase() === "SIGTERM";
|
| 1385 |
+
};
|
| 1386 |
+
var getForceKillAfterTimeout = ({ forceKillAfterTimeout = true }) => {
|
| 1387 |
+
if (forceKillAfterTimeout === true) {
|
| 1388 |
+
return DEFAULT_FORCE_KILL_TIMEOUT;
|
| 1389 |
+
}
|
| 1390 |
+
if (!Number.isFinite(forceKillAfterTimeout) || forceKillAfterTimeout < 0) {
|
| 1391 |
+
throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${forceKillAfterTimeout}\` (${typeof forceKillAfterTimeout})`);
|
| 1392 |
+
}
|
| 1393 |
+
return forceKillAfterTimeout;
|
| 1394 |
+
};
|
| 1395 |
+
var spawnedCancel = (spawned, context) => {
|
| 1396 |
+
const killResult = spawned.kill();
|
| 1397 |
+
if (killResult) {
|
| 1398 |
+
context.isCanceled = true;
|
| 1399 |
+
}
|
| 1400 |
+
};
|
| 1401 |
+
var timeoutKill = (spawned, signal, reject) => {
|
| 1402 |
+
spawned.kill(signal);
|
| 1403 |
+
reject(Object.assign(new Error("Timed out"), { timedOut: true, signal }));
|
| 1404 |
+
};
|
| 1405 |
+
var setupTimeout = (spawned, { timeout, killSignal = "SIGTERM" }, spawnedPromise) => {
|
| 1406 |
+
if (timeout === 0 || timeout === void 0) {
|
| 1407 |
+
return spawnedPromise;
|
| 1408 |
+
}
|
| 1409 |
+
let timeoutId;
|
| 1410 |
+
const timeoutPromise = new Promise((resolve, reject) => {
|
| 1411 |
+
timeoutId = setTimeout(() => {
|
| 1412 |
+
timeoutKill(spawned, killSignal, reject);
|
| 1413 |
+
}, timeout);
|
| 1414 |
+
});
|
| 1415 |
+
const safeSpawnedPromise = spawnedPromise.finally(() => {
|
| 1416 |
+
clearTimeout(timeoutId);
|
| 1417 |
+
});
|
| 1418 |
+
return Promise.race([timeoutPromise, safeSpawnedPromise]);
|
| 1419 |
+
};
|
| 1420 |
+
var validateTimeout = ({ timeout }) => {
|
| 1421 |
+
if (timeout !== void 0 && (!Number.isFinite(timeout) || timeout < 0)) {
|
| 1422 |
+
throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${timeout}\` (${typeof timeout})`);
|
| 1423 |
+
}
|
| 1424 |
+
};
|
| 1425 |
+
var setExitHandler = async (spawned, { cleanup, detached }, timedPromise) => {
|
| 1426 |
+
if (!cleanup || detached) {
|
| 1427 |
+
return timedPromise;
|
| 1428 |
+
}
|
| 1429 |
+
const removeExitHandler = onExit(() => {
|
| 1430 |
+
spawned.kill();
|
| 1431 |
+
});
|
| 1432 |
+
return timedPromise.finally(() => {
|
| 1433 |
+
removeExitHandler();
|
| 1434 |
+
});
|
| 1435 |
+
};
|
| 1436 |
+
module2.exports = {
|
| 1437 |
+
spawnedKill,
|
| 1438 |
+
spawnedCancel,
|
| 1439 |
+
setupTimeout,
|
| 1440 |
+
validateTimeout,
|
| 1441 |
+
setExitHandler
|
| 1442 |
+
};
|
| 1443 |
+
}
|
| 1444 |
+
});
|
| 1445 |
+
|
| 1446 |
+
// ../../node_modules/.pnpm/is-stream@2.0.1/node_modules/is-stream/index.js
|
| 1447 |
+
var require_is_stream = __commonJS({
|
| 1448 |
+
"../../node_modules/.pnpm/is-stream@2.0.1/node_modules/is-stream/index.js"(exports2, module2) {
|
| 1449 |
+
"use strict";
|
| 1450 |
+
var isStream = (stream) => stream !== null && typeof stream === "object" && typeof stream.pipe === "function";
|
| 1451 |
+
isStream.writable = (stream) => isStream(stream) && stream.writable !== false && typeof stream._write === "function" && typeof stream._writableState === "object";
|
| 1452 |
+
isStream.readable = (stream) => isStream(stream) && stream.readable !== false && typeof stream._read === "function" && typeof stream._readableState === "object";
|
| 1453 |
+
isStream.duplex = (stream) => isStream.writable(stream) && isStream.readable(stream);
|
| 1454 |
+
isStream.transform = (stream) => isStream.duplex(stream) && typeof stream._transform === "function";
|
| 1455 |
+
module2.exports = isStream;
|
| 1456 |
+
}
|
| 1457 |
+
});
|
| 1458 |
+
|
| 1459 |
+
// ../../node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/buffer-stream.js
|
| 1460 |
+
var require_buffer_stream = __commonJS({
|
| 1461 |
+
"../../node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/buffer-stream.js"(exports2, module2) {
|
| 1462 |
+
"use strict";
|
| 1463 |
+
var { PassThrough: PassThroughStream } = require("stream");
|
| 1464 |
+
module2.exports = (options) => {
|
| 1465 |
+
options = { ...options };
|
| 1466 |
+
const { array } = options;
|
| 1467 |
+
let { encoding } = options;
|
| 1468 |
+
const isBuffer = encoding === "buffer";
|
| 1469 |
+
let objectMode = false;
|
| 1470 |
+
if (array) {
|
| 1471 |
+
objectMode = !(encoding || isBuffer);
|
| 1472 |
+
} else {
|
| 1473 |
+
encoding = encoding || "utf8";
|
| 1474 |
+
}
|
| 1475 |
+
if (isBuffer) {
|
| 1476 |
+
encoding = null;
|
| 1477 |
+
}
|
| 1478 |
+
const stream = new PassThroughStream({ objectMode });
|
| 1479 |
+
if (encoding) {
|
| 1480 |
+
stream.setEncoding(encoding);
|
| 1481 |
+
}
|
| 1482 |
+
let length = 0;
|
| 1483 |
+
const chunks = [];
|
| 1484 |
+
stream.on("data", (chunk) => {
|
| 1485 |
+
chunks.push(chunk);
|
| 1486 |
+
if (objectMode) {
|
| 1487 |
+
length = chunks.length;
|
| 1488 |
+
} else {
|
| 1489 |
+
length += chunk.length;
|
| 1490 |
+
}
|
| 1491 |
+
});
|
| 1492 |
+
stream.getBufferedValue = () => {
|
| 1493 |
+
if (array) {
|
| 1494 |
+
return chunks;
|
| 1495 |
+
}
|
| 1496 |
+
return isBuffer ? Buffer.concat(chunks, length) : chunks.join("");
|
| 1497 |
+
};
|
| 1498 |
+
stream.getBufferedLength = () => length;
|
| 1499 |
+
return stream;
|
| 1500 |
+
};
|
| 1501 |
+
}
|
| 1502 |
+
});
|
| 1503 |
+
|
| 1504 |
+
// ../../node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/index.js
|
| 1505 |
+
var require_get_stream = __commonJS({
|
| 1506 |
+
"../../node_modules/.pnpm/get-stream@6.0.1/node_modules/get-stream/index.js"(exports2, module2) {
|
| 1507 |
+
"use strict";
|
| 1508 |
+
var { constants: BufferConstants } = require("buffer");
|
| 1509 |
+
var stream = require("stream");
|
| 1510 |
+
var { promisify } = require("util");
|
| 1511 |
+
var bufferStream = require_buffer_stream();
|
| 1512 |
+
var streamPipelinePromisified = promisify(stream.pipeline);
|
| 1513 |
+
var MaxBufferError = class extends Error {
|
| 1514 |
+
constructor() {
|
| 1515 |
+
super("maxBuffer exceeded");
|
| 1516 |
+
this.name = "MaxBufferError";
|
| 1517 |
+
}
|
| 1518 |
+
};
|
| 1519 |
+
async function getStream(inputStream, options) {
|
| 1520 |
+
if (!inputStream) {
|
| 1521 |
+
throw new Error("Expected a stream");
|
| 1522 |
+
}
|
| 1523 |
+
options = {
|
| 1524 |
+
maxBuffer: Infinity,
|
| 1525 |
+
...options
|
| 1526 |
+
};
|
| 1527 |
+
const { maxBuffer } = options;
|
| 1528 |
+
const stream2 = bufferStream(options);
|
| 1529 |
+
await new Promise((resolve, reject) => {
|
| 1530 |
+
const rejectPromise = (error) => {
|
| 1531 |
+
if (error && stream2.getBufferedLength() <= BufferConstants.MAX_LENGTH) {
|
| 1532 |
+
error.bufferedData = stream2.getBufferedValue();
|
| 1533 |
+
}
|
| 1534 |
+
reject(error);
|
| 1535 |
+
};
|
| 1536 |
+
(async () => {
|
| 1537 |
+
try {
|
| 1538 |
+
await streamPipelinePromisified(inputStream, stream2);
|
| 1539 |
+
resolve();
|
| 1540 |
+
} catch (error) {
|
| 1541 |
+
rejectPromise(error);
|
| 1542 |
+
}
|
| 1543 |
+
})();
|
| 1544 |
+
stream2.on("data", () => {
|
| 1545 |
+
if (stream2.getBufferedLength() > maxBuffer) {
|
| 1546 |
+
rejectPromise(new MaxBufferError());
|
| 1547 |
+
}
|
| 1548 |
+
});
|
| 1549 |
+
});
|
| 1550 |
+
return stream2.getBufferedValue();
|
| 1551 |
+
}
|
| 1552 |
+
module2.exports = getStream;
|
| 1553 |
+
module2.exports.buffer = (stream2, options) => getStream(stream2, { ...options, encoding: "buffer" });
|
| 1554 |
+
module2.exports.array = (stream2, options) => getStream(stream2, { ...options, array: true });
|
| 1555 |
+
module2.exports.MaxBufferError = MaxBufferError;
|
| 1556 |
+
}
|
| 1557 |
+
});
|
| 1558 |
+
|
| 1559 |
+
// ../../node_modules/.pnpm/merge-stream@2.0.0/node_modules/merge-stream/index.js
|
| 1560 |
+
var require_merge_stream = __commonJS({
|
| 1561 |
+
"../../node_modules/.pnpm/merge-stream@2.0.0/node_modules/merge-stream/index.js"(exports2, module2) {
|
| 1562 |
+
"use strict";
|
| 1563 |
+
var { PassThrough } = require("stream");
|
| 1564 |
+
module2.exports = function() {
|
| 1565 |
+
var sources = [];
|
| 1566 |
+
var output = new PassThrough({ objectMode: true });
|
| 1567 |
+
output.setMaxListeners(0);
|
| 1568 |
+
output.add = add;
|
| 1569 |
+
output.isEmpty = isEmpty;
|
| 1570 |
+
output.on("unpipe", remove);
|
| 1571 |
+
Array.prototype.slice.call(arguments).forEach(add);
|
| 1572 |
+
return output;
|
| 1573 |
+
function add(source) {
|
| 1574 |
+
if (Array.isArray(source)) {
|
| 1575 |
+
source.forEach(add);
|
| 1576 |
+
return this;
|
| 1577 |
+
}
|
| 1578 |
+
sources.push(source);
|
| 1579 |
+
source.once("end", remove.bind(null, source));
|
| 1580 |
+
source.once("error", output.emit.bind(output, "error"));
|
| 1581 |
+
source.pipe(output, { end: false });
|
| 1582 |
+
return this;
|
| 1583 |
+
}
|
| 1584 |
+
function isEmpty() {
|
| 1585 |
+
return sources.length == 0;
|
| 1586 |
+
}
|
| 1587 |
+
function remove(source) {
|
| 1588 |
+
sources = sources.filter(function(it) {
|
| 1589 |
+
return it !== source;
|
| 1590 |
+
});
|
| 1591 |
+
if (!sources.length && output.readable) {
|
| 1592 |
+
output.end();
|
| 1593 |
+
}
|
| 1594 |
+
}
|
| 1595 |
+
};
|
| 1596 |
+
}
|
| 1597 |
+
});
|
| 1598 |
+
|
| 1599 |
+
// ../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stream.js
|
| 1600 |
+
var require_stream = __commonJS({
|
| 1601 |
+
"../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/stream.js"(exports2, module2) {
|
| 1602 |
+
"use strict";
|
| 1603 |
+
var isStream = require_is_stream();
|
| 1604 |
+
var getStream = require_get_stream();
|
| 1605 |
+
var mergeStream = require_merge_stream();
|
| 1606 |
+
var handleInput = (spawned, input) => {
|
| 1607 |
+
if (input === void 0 || spawned.stdin === void 0) {
|
| 1608 |
+
return;
|
| 1609 |
+
}
|
| 1610 |
+
if (isStream(input)) {
|
| 1611 |
+
input.pipe(spawned.stdin);
|
| 1612 |
+
} else {
|
| 1613 |
+
spawned.stdin.end(input);
|
| 1614 |
+
}
|
| 1615 |
+
};
|
| 1616 |
+
var makeAllStream = (spawned, { all }) => {
|
| 1617 |
+
if (!all || !spawned.stdout && !spawned.stderr) {
|
| 1618 |
+
return;
|
| 1619 |
+
}
|
| 1620 |
+
const mixed = mergeStream();
|
| 1621 |
+
if (spawned.stdout) {
|
| 1622 |
+
mixed.add(spawned.stdout);
|
| 1623 |
+
}
|
| 1624 |
+
if (spawned.stderr) {
|
| 1625 |
+
mixed.add(spawned.stderr);
|
| 1626 |
+
}
|
| 1627 |
+
return mixed;
|
| 1628 |
+
};
|
| 1629 |
+
var getBufferedData = async (stream, streamPromise) => {
|
| 1630 |
+
if (!stream) {
|
| 1631 |
+
return;
|
| 1632 |
+
}
|
| 1633 |
+
stream.destroy();
|
| 1634 |
+
try {
|
| 1635 |
+
return await streamPromise;
|
| 1636 |
+
} catch (error) {
|
| 1637 |
+
return error.bufferedData;
|
| 1638 |
+
}
|
| 1639 |
+
};
|
| 1640 |
+
var getStreamPromise = (stream, { encoding, buffer, maxBuffer }) => {
|
| 1641 |
+
if (!stream || !buffer) {
|
| 1642 |
+
return;
|
| 1643 |
+
}
|
| 1644 |
+
if (encoding) {
|
| 1645 |
+
return getStream(stream, { encoding, maxBuffer });
|
| 1646 |
+
}
|
| 1647 |
+
return getStream.buffer(stream, { maxBuffer });
|
| 1648 |
+
};
|
| 1649 |
+
var getSpawnedResult = async ({ stdout, stderr, all }, { encoding, buffer, maxBuffer }, processDone) => {
|
| 1650 |
+
const stdoutPromise = getStreamPromise(stdout, { encoding, buffer, maxBuffer });
|
| 1651 |
+
const stderrPromise = getStreamPromise(stderr, { encoding, buffer, maxBuffer });
|
| 1652 |
+
const allPromise = getStreamPromise(all, { encoding, buffer, maxBuffer: maxBuffer * 2 });
|
| 1653 |
+
try {
|
| 1654 |
+
return await Promise.all([processDone, stdoutPromise, stderrPromise, allPromise]);
|
| 1655 |
+
} catch (error) {
|
| 1656 |
+
return Promise.all([
|
| 1657 |
+
{ error, signal: error.signal, timedOut: error.timedOut },
|
| 1658 |
+
getBufferedData(stdout, stdoutPromise),
|
| 1659 |
+
getBufferedData(stderr, stderrPromise),
|
| 1660 |
+
getBufferedData(all, allPromise)
|
| 1661 |
+
]);
|
| 1662 |
+
}
|
| 1663 |
+
};
|
| 1664 |
+
var validateInputSync = ({ input }) => {
|
| 1665 |
+
if (isStream(input)) {
|
| 1666 |
+
throw new TypeError("The `input` option cannot be a stream in sync mode");
|
| 1667 |
+
}
|
| 1668 |
+
};
|
| 1669 |
+
module2.exports = {
|
| 1670 |
+
handleInput,
|
| 1671 |
+
makeAllStream,
|
| 1672 |
+
getSpawnedResult,
|
| 1673 |
+
validateInputSync
|
| 1674 |
+
};
|
| 1675 |
+
}
|
| 1676 |
+
});
|
| 1677 |
+
|
| 1678 |
+
// ../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/promise.js
|
| 1679 |
+
var require_promise = __commonJS({
|
| 1680 |
+
"../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/promise.js"(exports2, module2) {
|
| 1681 |
+
"use strict";
|
| 1682 |
+
var nativePromisePrototype = (async () => {
|
| 1683 |
+
})().constructor.prototype;
|
| 1684 |
+
var descriptors = ["then", "catch", "finally"].map((property) => [
|
| 1685 |
+
property,
|
| 1686 |
+
Reflect.getOwnPropertyDescriptor(nativePromisePrototype, property)
|
| 1687 |
+
]);
|
| 1688 |
+
var mergePromise = (spawned, promise) => {
|
| 1689 |
+
for (const [property, descriptor] of descriptors) {
|
| 1690 |
+
const value = typeof promise === "function" ? (...args) => Reflect.apply(descriptor.value, promise(), args) : descriptor.value.bind(promise);
|
| 1691 |
+
Reflect.defineProperty(spawned, property, { ...descriptor, value });
|
| 1692 |
+
}
|
| 1693 |
+
return spawned;
|
| 1694 |
+
};
|
| 1695 |
+
var getSpawnedPromise = (spawned) => {
|
| 1696 |
+
return new Promise((resolve, reject) => {
|
| 1697 |
+
spawned.on("exit", (exitCode, signal) => {
|
| 1698 |
+
resolve({ exitCode, signal });
|
| 1699 |
+
});
|
| 1700 |
+
spawned.on("error", (error) => {
|
| 1701 |
+
reject(error);
|
| 1702 |
+
});
|
| 1703 |
+
if (spawned.stdin) {
|
| 1704 |
+
spawned.stdin.on("error", (error) => {
|
| 1705 |
+
reject(error);
|
| 1706 |
+
});
|
| 1707 |
+
}
|
| 1708 |
+
});
|
| 1709 |
+
};
|
| 1710 |
+
module2.exports = {
|
| 1711 |
+
mergePromise,
|
| 1712 |
+
getSpawnedPromise
|
| 1713 |
+
};
|
| 1714 |
+
}
|
| 1715 |
+
});
|
| 1716 |
+
|
| 1717 |
+
// ../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/command.js
|
| 1718 |
+
var require_command = __commonJS({
|
| 1719 |
+
"../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/lib/command.js"(exports2, module2) {
|
| 1720 |
+
"use strict";
|
| 1721 |
+
var normalizeArgs = (file, args = []) => {
|
| 1722 |
+
if (!Array.isArray(args)) {
|
| 1723 |
+
return [file];
|
| 1724 |
+
}
|
| 1725 |
+
return [file, ...args];
|
| 1726 |
+
};
|
| 1727 |
+
var NO_ESCAPE_REGEXP = /^[\w.-]+$/;
|
| 1728 |
+
var DOUBLE_QUOTES_REGEXP = /"/g;
|
| 1729 |
+
var escapeArg = (arg) => {
|
| 1730 |
+
if (typeof arg !== "string" || NO_ESCAPE_REGEXP.test(arg)) {
|
| 1731 |
+
return arg;
|
| 1732 |
+
}
|
| 1733 |
+
return `"${arg.replace(DOUBLE_QUOTES_REGEXP, '\\"')}"`;
|
| 1734 |
+
};
|
| 1735 |
+
var joinCommand = (file, args) => {
|
| 1736 |
+
return normalizeArgs(file, args).join(" ");
|
| 1737 |
+
};
|
| 1738 |
+
var getEscapedCommand = (file, args) => {
|
| 1739 |
+
return normalizeArgs(file, args).map((arg) => escapeArg(arg)).join(" ");
|
| 1740 |
+
};
|
| 1741 |
+
var SPACES_REGEXP = / +/g;
|
| 1742 |
+
var parseCommand = (command) => {
|
| 1743 |
+
const tokens = [];
|
| 1744 |
+
for (const token of command.trim().split(SPACES_REGEXP)) {
|
| 1745 |
+
const previousToken = tokens[tokens.length - 1];
|
| 1746 |
+
if (previousToken && previousToken.endsWith("\\")) {
|
| 1747 |
+
tokens[tokens.length - 1] = `${previousToken.slice(0, -1)} ${token}`;
|
| 1748 |
+
} else {
|
| 1749 |
+
tokens.push(token);
|
| 1750 |
+
}
|
| 1751 |
+
}
|
| 1752 |
+
return tokens;
|
| 1753 |
+
};
|
| 1754 |
+
module2.exports = {
|
| 1755 |
+
joinCommand,
|
| 1756 |
+
getEscapedCommand,
|
| 1757 |
+
parseCommand
|
| 1758 |
+
};
|
| 1759 |
+
}
|
| 1760 |
+
});
|
| 1761 |
+
|
| 1762 |
+
// ../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/index.js
|
| 1763 |
+
var require_execa = __commonJS({
|
| 1764 |
+
"../../node_modules/.pnpm/execa@5.1.1/node_modules/execa/index.js"(exports2, module2) {
|
| 1765 |
+
"use strict";
|
| 1766 |
+
var path2 = require("path");
|
| 1767 |
+
var childProcess = require("child_process");
|
| 1768 |
+
var crossSpawn = require_cross_spawn();
|
| 1769 |
+
var stripFinalNewline = require_strip_final_newline();
|
| 1770 |
+
var npmRunPath = require_npm_run_path();
|
| 1771 |
+
var onetime = require_onetime();
|
| 1772 |
+
var makeError = require_error();
|
| 1773 |
+
var normalizeStdio = require_stdio();
|
| 1774 |
+
var { spawnedKill, spawnedCancel, setupTimeout, validateTimeout, setExitHandler } = require_kill();
|
| 1775 |
+
var { handleInput, getSpawnedResult, makeAllStream, validateInputSync } = require_stream();
|
| 1776 |
+
var { mergePromise, getSpawnedPromise } = require_promise();
|
| 1777 |
+
var { joinCommand, parseCommand, getEscapedCommand } = require_command();
|
| 1778 |
+
var DEFAULT_MAX_BUFFER = 1e3 * 1e3 * 100;
|
| 1779 |
+
var getEnv = ({ env: envOption, extendEnv, preferLocal, localDir, execPath }) => {
|
| 1780 |
+
const env = extendEnv ? { ...process.env, ...envOption } : envOption;
|
| 1781 |
+
if (preferLocal) {
|
| 1782 |
+
return npmRunPath.env({ env, cwd: localDir, execPath });
|
| 1783 |
+
}
|
| 1784 |
+
return env;
|
| 1785 |
+
};
|
| 1786 |
+
var handleArguments = (file, args, options = {}) => {
|
| 1787 |
+
const parsed = crossSpawn._parse(file, args, options);
|
| 1788 |
+
file = parsed.command;
|
| 1789 |
+
args = parsed.args;
|
| 1790 |
+
options = parsed.options;
|
| 1791 |
+
options = {
|
| 1792 |
+
maxBuffer: DEFAULT_MAX_BUFFER,
|
| 1793 |
+
buffer: true,
|
| 1794 |
+
stripFinalNewline: true,
|
| 1795 |
+
extendEnv: true,
|
| 1796 |
+
preferLocal: false,
|
| 1797 |
+
localDir: options.cwd || process.cwd(),
|
| 1798 |
+
execPath: process.execPath,
|
| 1799 |
+
encoding: "utf8",
|
| 1800 |
+
reject: true,
|
| 1801 |
+
cleanup: true,
|
| 1802 |
+
all: false,
|
| 1803 |
+
windowsHide: true,
|
| 1804 |
+
...options
|
| 1805 |
+
};
|
| 1806 |
+
options.env = getEnv(options);
|
| 1807 |
+
options.stdio = normalizeStdio(options);
|
| 1808 |
+
if (process.platform === "win32" && path2.basename(file, ".exe") === "cmd") {
|
| 1809 |
+
args.unshift("/q");
|
| 1810 |
+
}
|
| 1811 |
+
return { file, args, options, parsed };
|
| 1812 |
+
};
|
| 1813 |
+
var handleOutput = (options, value, error) => {
|
| 1814 |
+
if (typeof value !== "string" && !Buffer.isBuffer(value)) {
|
| 1815 |
+
return error === void 0 ? void 0 : "";
|
| 1816 |
+
}
|
| 1817 |
+
if (options.stripFinalNewline) {
|
| 1818 |
+
return stripFinalNewline(value);
|
| 1819 |
+
}
|
| 1820 |
+
return value;
|
| 1821 |
+
};
|
| 1822 |
+
var execa2 = (file, args, options) => {
|
| 1823 |
+
const parsed = handleArguments(file, args, options);
|
| 1824 |
+
const command = joinCommand(file, args);
|
| 1825 |
+
const escapedCommand = getEscapedCommand(file, args);
|
| 1826 |
+
validateTimeout(parsed.options);
|
| 1827 |
+
let spawned;
|
| 1828 |
+
try {
|
| 1829 |
+
spawned = childProcess.spawn(parsed.file, parsed.args, parsed.options);
|
| 1830 |
+
} catch (error) {
|
| 1831 |
+
const dummySpawned = new childProcess.ChildProcess();
|
| 1832 |
+
const errorPromise = Promise.reject(makeError({
|
| 1833 |
+
error,
|
| 1834 |
+
stdout: "",
|
| 1835 |
+
stderr: "",
|
| 1836 |
+
all: "",
|
| 1837 |
+
command,
|
| 1838 |
+
escapedCommand,
|
| 1839 |
+
parsed,
|
| 1840 |
+
timedOut: false,
|
| 1841 |
+
isCanceled: false,
|
| 1842 |
+
killed: false
|
| 1843 |
+
}));
|
| 1844 |
+
return mergePromise(dummySpawned, errorPromise);
|
| 1845 |
+
}
|
| 1846 |
+
const spawnedPromise = getSpawnedPromise(spawned);
|
| 1847 |
+
const timedPromise = setupTimeout(spawned, parsed.options, spawnedPromise);
|
| 1848 |
+
const processDone = setExitHandler(spawned, parsed.options, timedPromise);
|
| 1849 |
+
const context = { isCanceled: false };
|
| 1850 |
+
spawned.kill = spawnedKill.bind(null, spawned.kill.bind(spawned));
|
| 1851 |
+
spawned.cancel = spawnedCancel.bind(null, spawned, context);
|
| 1852 |
+
const handlePromise = async () => {
|
| 1853 |
+
const [{ error, exitCode, signal, timedOut }, stdoutResult, stderrResult, allResult] = await getSpawnedResult(spawned, parsed.options, processDone);
|
| 1854 |
+
const stdout = handleOutput(parsed.options, stdoutResult);
|
| 1855 |
+
const stderr = handleOutput(parsed.options, stderrResult);
|
| 1856 |
+
const all = handleOutput(parsed.options, allResult);
|
| 1857 |
+
if (error || exitCode !== 0 || signal !== null) {
|
| 1858 |
+
const returnedError = makeError({
|
| 1859 |
+
error,
|
| 1860 |
+
exitCode,
|
| 1861 |
+
signal,
|
| 1862 |
+
stdout,
|
| 1863 |
+
stderr,
|
| 1864 |
+
all,
|
| 1865 |
+
command,
|
| 1866 |
+
escapedCommand,
|
| 1867 |
+
parsed,
|
| 1868 |
+
timedOut,
|
| 1869 |
+
isCanceled: context.isCanceled,
|
| 1870 |
+
killed: spawned.killed
|
| 1871 |
+
});
|
| 1872 |
+
if (!parsed.options.reject) {
|
| 1873 |
+
return returnedError;
|
| 1874 |
+
}
|
| 1875 |
+
throw returnedError;
|
| 1876 |
+
}
|
| 1877 |
+
return {
|
| 1878 |
+
command,
|
| 1879 |
+
escapedCommand,
|
| 1880 |
+
exitCode: 0,
|
| 1881 |
+
stdout,
|
| 1882 |
+
stderr,
|
| 1883 |
+
all,
|
| 1884 |
+
failed: false,
|
| 1885 |
+
timedOut: false,
|
| 1886 |
+
isCanceled: false,
|
| 1887 |
+
killed: false
|
| 1888 |
+
};
|
| 1889 |
+
};
|
| 1890 |
+
const handlePromiseOnce = onetime(handlePromise);
|
| 1891 |
+
handleInput(spawned, parsed.options.input);
|
| 1892 |
+
spawned.all = makeAllStream(spawned, parsed.options);
|
| 1893 |
+
return mergePromise(spawned, handlePromiseOnce);
|
| 1894 |
+
};
|
| 1895 |
+
module2.exports = execa2;
|
| 1896 |
+
module2.exports.sync = (file, args, options) => {
|
| 1897 |
+
const parsed = handleArguments(file, args, options);
|
| 1898 |
+
const command = joinCommand(file, args);
|
| 1899 |
+
const escapedCommand = getEscapedCommand(file, args);
|
| 1900 |
+
validateInputSync(parsed.options);
|
| 1901 |
+
let result;
|
| 1902 |
+
try {
|
| 1903 |
+
result = childProcess.spawnSync(parsed.file, parsed.args, parsed.options);
|
| 1904 |
+
} catch (error) {
|
| 1905 |
+
throw makeError({
|
| 1906 |
+
error,
|
| 1907 |
+
stdout: "",
|
| 1908 |
+
stderr: "",
|
| 1909 |
+
all: "",
|
| 1910 |
+
command,
|
| 1911 |
+
escapedCommand,
|
| 1912 |
+
parsed,
|
| 1913 |
+
timedOut: false,
|
| 1914 |
+
isCanceled: false,
|
| 1915 |
+
killed: false
|
| 1916 |
+
});
|
| 1917 |
+
}
|
| 1918 |
+
const stdout = handleOutput(parsed.options, result.stdout, result.error);
|
| 1919 |
+
const stderr = handleOutput(parsed.options, result.stderr, result.error);
|
| 1920 |
+
if (result.error || result.status !== 0 || result.signal !== null) {
|
| 1921 |
+
const error = makeError({
|
| 1922 |
+
stdout,
|
| 1923 |
+
stderr,
|
| 1924 |
+
error: result.error,
|
| 1925 |
+
signal: result.signal,
|
| 1926 |
+
exitCode: result.status,
|
| 1927 |
+
command,
|
| 1928 |
+
escapedCommand,
|
| 1929 |
+
parsed,
|
| 1930 |
+
timedOut: result.error && result.error.code === "ETIMEDOUT",
|
| 1931 |
+
isCanceled: false,
|
| 1932 |
+
killed: result.signal !== null
|
| 1933 |
+
});
|
| 1934 |
+
if (!parsed.options.reject) {
|
| 1935 |
+
return error;
|
| 1936 |
+
}
|
| 1937 |
+
throw error;
|
| 1938 |
+
}
|
| 1939 |
+
return {
|
| 1940 |
+
command,
|
| 1941 |
+
escapedCommand,
|
| 1942 |
+
exitCode: 0,
|
| 1943 |
+
stdout,
|
| 1944 |
+
stderr,
|
| 1945 |
+
failed: false,
|
| 1946 |
+
timedOut: false,
|
| 1947 |
+
isCanceled: false,
|
| 1948 |
+
killed: false
|
| 1949 |
+
};
|
| 1950 |
+
};
|
| 1951 |
+
module2.exports.command = (command, options) => {
|
| 1952 |
+
const [file, ...args] = parseCommand(command);
|
| 1953 |
+
return execa2(file, args, options);
|
| 1954 |
+
};
|
| 1955 |
+
module2.exports.commandSync = (command, options) => {
|
| 1956 |
+
const [file, ...args] = parseCommand(command);
|
| 1957 |
+
return execa2.sync(file, args, options);
|
| 1958 |
+
};
|
| 1959 |
+
module2.exports.node = (scriptPath, args, options = {}) => {
|
| 1960 |
+
if (args && !Array.isArray(args) && typeof args === "object") {
|
| 1961 |
+
options = args;
|
| 1962 |
+
args = [];
|
| 1963 |
+
}
|
| 1964 |
+
const stdio = normalizeStdio.node(options);
|
| 1965 |
+
const defaultExecArgv = process.execArgv.filter((arg) => !arg.startsWith("--inspect"));
|
| 1966 |
+
const {
|
| 1967 |
+
nodePath = process.execPath,
|
| 1968 |
+
nodeOptions = defaultExecArgv
|
| 1969 |
+
} = options;
|
| 1970 |
+
return execa2(
|
| 1971 |
+
nodePath,
|
| 1972 |
+
[
|
| 1973 |
+
...nodeOptions,
|
| 1974 |
+
scriptPath,
|
| 1975 |
+
...Array.isArray(args) ? args : []
|
| 1976 |
+
],
|
| 1977 |
+
{
|
| 1978 |
+
...options,
|
| 1979 |
+
stdin: void 0,
|
| 1980 |
+
stdout: void 0,
|
| 1981 |
+
stderr: void 0,
|
| 1982 |
+
stdio,
|
| 1983 |
+
shell: false
|
| 1984 |
+
}
|
| 1985 |
+
);
|
| 1986 |
+
};
|
| 1987 |
+
}
|
| 1988 |
+
});
|
| 1989 |
+
|
| 1990 |
+
// src/scripts/localinstall.ts
|
| 1991 |
+
var import_fetch_engine = require("@prisma/fetch-engine");
|
| 1992 |
+
var import_package = require("@prisma/fetch-engine/package.json");
|
| 1993 |
+
var import_get_platform = require("@prisma/get-platform");
|
| 1994 |
+
var import_execa = __toESM(require_execa());
|
| 1995 |
+
var import_fs = __toESM(require("fs"));
|
| 1996 |
+
var import_path = __toESM(require("path"));
|
| 1997 |
+
var baseDir = import_path.default.join(__dirname, "..", "..");
|
| 1998 |
+
async function main() {
|
| 1999 |
+
const binaryTarget = await (0, import_get_platform.getBinaryTargetForCurrentPlatform)();
|
| 2000 |
+
const cacheDir = await (0, import_fetch_engine.getCacheDir)("master", "_local_", binaryTarget);
|
| 2001 |
+
const branch = import_package.enginesOverride?.["branch"];
|
| 2002 |
+
let folder = import_package.enginesOverride?.["folder"];
|
| 2003 |
+
const engineCachePaths = {
|
| 2004 |
+
[import_fetch_engine.BinaryType.QueryEngineBinary]: import_path.default.join(cacheDir, import_fetch_engine.BinaryType.QueryEngineBinary),
|
| 2005 |
+
[import_fetch_engine.BinaryType.QueryEngineLibrary]: import_path.default.join(cacheDir, import_fetch_engine.BinaryType.QueryEngineLibrary),
|
| 2006 |
+
[import_fetch_engine.BinaryType.SchemaEngineBinary]: import_path.default.join(cacheDir, import_fetch_engine.BinaryType.SchemaEngineBinary)
|
| 2007 |
+
};
|
| 2008 |
+
if (branch !== void 0) {
|
| 2009 |
+
const enginesRepoUri = "git@github.com:prisma/prisma-engines.git";
|
| 2010 |
+
const enginesRepoDir = import_path.default.join(baseDir, "dist", "prisma-engines");
|
| 2011 |
+
const currentBranch = await (0, import_execa.default)("git", ["branch", "--show-current"], {
|
| 2012 |
+
cwd: enginesRepoDir
|
| 2013 |
+
}).catch(() => ({ failed: true, stdout: "" }));
|
| 2014 |
+
if (currentBranch.failed === true || currentBranch.stdout !== branch) {
|
| 2015 |
+
await import_fs.default.promises.rm(enginesRepoDir, { recursive: true, force: true });
|
| 2016 |
+
await (0, import_execa.default)("git", ["clone", enginesRepoUri, "--depth", "1", "--branch", branch], {
|
| 2017 |
+
cwd: import_path.default.join(baseDir, "dist"),
|
| 2018 |
+
stdio: "inherit"
|
| 2019 |
+
});
|
| 2020 |
+
}
|
| 2021 |
+
await (0, import_execa.default)("git", ["pull", "origin", branch], {
|
| 2022 |
+
cwd: enginesRepoDir,
|
| 2023 |
+
stdio: "inherit"
|
| 2024 |
+
});
|
| 2025 |
+
await (0, import_execa.default)("cargo", ["build", "--release"], {
|
| 2026 |
+
cwd: enginesRepoDir,
|
| 2027 |
+
stdio: "inherit"
|
| 2028 |
+
});
|
| 2029 |
+
folder = import_path.default.join(enginesRepoDir, "target", "release");
|
| 2030 |
+
}
|
| 2031 |
+
if (folder !== void 0) {
|
| 2032 |
+
folder = import_path.default.isAbsolute(folder) ? folder : import_path.default.join(baseDir, folder);
|
| 2033 |
+
const libExt = binaryTarget.includes("windows") ? ".dll" : binaryTarget.includes("darwin") ? ".dylib" : ".so";
|
| 2034 |
+
const binExt = binaryTarget.includes("windows") ? ".exe" : "";
|
| 2035 |
+
const engineOutputPaths = {
|
| 2036 |
+
[import_fetch_engine.BinaryType.QueryEngineLibrary]: import_path.default.join(folder, "libquery_engine".concat(libExt)),
|
| 2037 |
+
[import_fetch_engine.BinaryType.QueryEngineBinary]: import_path.default.join(folder, import_fetch_engine.BinaryType.QueryEngineBinary.concat(binExt)),
|
| 2038 |
+
[import_fetch_engine.BinaryType.SchemaEngineBinary]: import_path.default.join(folder, import_fetch_engine.BinaryType.SchemaEngineBinary.concat(binExt))
|
| 2039 |
+
};
|
| 2040 |
+
for (const [binaryType, outputPath] of Object.entries(engineOutputPaths)) {
|
| 2041 |
+
await import_fs.default.promises.copyFile(outputPath, engineCachePaths[binaryType]);
|
| 2042 |
+
}
|
| 2043 |
+
}
|
| 2044 |
+
}
|
| 2045 |
+
main().catch((e) => {
|
| 2046 |
+
console.log(e.message);
|
| 2047 |
+
process.exit(1);
|
| 2048 |
+
});
|
backend/node_modules/@prisma/engines/dist/scripts/postinstall.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
export {};
|
backend/node_modules/@prisma/engines/dist/scripts/postinstall.js
ADDED
|
@@ -0,0 +1,122 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"use strict";
|
| 2 |
+
var __create = Object.create;
|
| 3 |
+
var __defProp = Object.defineProperty;
|
| 4 |
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
| 5 |
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
| 6 |
+
var __getProtoOf = Object.getPrototypeOf;
|
| 7 |
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
| 8 |
+
var __copyProps = (to, from, except, desc) => {
|
| 9 |
+
if (from && typeof from === "object" || typeof from === "function") {
|
| 10 |
+
for (let key of __getOwnPropNames(from))
|
| 11 |
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
| 12 |
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
| 13 |
+
}
|
| 14 |
+
return to;
|
| 15 |
+
};
|
| 16 |
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
| 17 |
+
// If the importer is in node compatibility mode or this is not an ESM
|
| 18 |
+
// file that has been converted to a CommonJS file using a Babel-
|
| 19 |
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
| 20 |
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
| 21 |
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
| 22 |
+
mod
|
| 23 |
+
));
|
| 24 |
+
|
| 25 |
+
// src/scripts/postinstall.ts
|
| 26 |
+
var import_debug2 = __toESM(require("@prisma/debug"));
|
| 27 |
+
var import_engines_version3 = require("@prisma/engines-version");
|
| 28 |
+
var import_fetch_engine2 = require("@prisma/fetch-engine");
|
| 29 |
+
var import_fs = __toESM(require("fs"));
|
| 30 |
+
var import_path2 = __toESM(require("path"));
|
| 31 |
+
|
| 32 |
+
// src/index.ts
|
| 33 |
+
var import_debug = require("@prisma/debug");
|
| 34 |
+
var import_engines_version = require("@prisma/engines-version");
|
| 35 |
+
var import_fetch_engine = require("@prisma/fetch-engine");
|
| 36 |
+
var import_path = __toESM(require("path"));
|
| 37 |
+
var import_engines_version2 = require("@prisma/engines-version");
|
| 38 |
+
var debug = (0, import_debug.Debug)("prisma:engines");
|
| 39 |
+
var DEFAULT_CLI_QUERY_ENGINE_BINARY_TYPE = import_fetch_engine.BinaryType.QueryEngineLibrary;
|
| 40 |
+
function getCliQueryEngineBinaryType(clientEngineType = process.env.PRISMA_CLI_QUERY_ENGINE_TYPE) {
|
| 41 |
+
if (clientEngineType === "binary") {
|
| 42 |
+
return import_fetch_engine.BinaryType.QueryEngineBinary;
|
| 43 |
+
}
|
| 44 |
+
return DEFAULT_CLI_QUERY_ENGINE_BINARY_TYPE;
|
| 45 |
+
}
|
| 46 |
+
import_path.default.join(__dirname, "../query-engine-darwin");
|
| 47 |
+
import_path.default.join(__dirname, "../query-engine-darwin-arm64");
|
| 48 |
+
import_path.default.join(__dirname, "../query-engine-debian-openssl-1.0.x");
|
| 49 |
+
import_path.default.join(__dirname, "../query-engine-debian-openssl-1.1.x");
|
| 50 |
+
import_path.default.join(__dirname, "../query-engine-debian-openssl-3.0.x");
|
| 51 |
+
import_path.default.join(__dirname, "../query-engine-linux-static-x64");
|
| 52 |
+
import_path.default.join(__dirname, "../query-engine-linux-static-arm64");
|
| 53 |
+
import_path.default.join(__dirname, "../query-engine-rhel-openssl-1.0.x");
|
| 54 |
+
import_path.default.join(__dirname, "../query-engine-rhel-openssl-1.1.x");
|
| 55 |
+
import_path.default.join(__dirname, "../query-engine-rhel-openssl-3.0.x");
|
| 56 |
+
import_path.default.join(__dirname, "../libquery_engine-darwin.dylib.node");
|
| 57 |
+
import_path.default.join(__dirname, "../libquery_engine-darwin-arm64.dylib.node");
|
| 58 |
+
import_path.default.join(__dirname, "../libquery_engine-debian-openssl-1.0.x.so.node");
|
| 59 |
+
import_path.default.join(__dirname, "../libquery_engine-debian-openssl-1.1.x.so.node");
|
| 60 |
+
import_path.default.join(__dirname, "../libquery_engine-debian-openssl-3.0.x.so.node");
|
| 61 |
+
import_path.default.join(__dirname, "../libquery_engine-linux-arm64-openssl-1.0.x.so.node");
|
| 62 |
+
import_path.default.join(__dirname, "../libquery_engine-linux-arm64-openssl-1.1.x.so.node");
|
| 63 |
+
import_path.default.join(__dirname, "../libquery_engine-linux-arm64-openssl-3.0.x.so.node");
|
| 64 |
+
import_path.default.join(__dirname, "../libquery_engine-linux-musl.so.node");
|
| 65 |
+
import_path.default.join(__dirname, "../libquery_engine-linux-musl-openssl-3.0.x.so.node");
|
| 66 |
+
import_path.default.join(__dirname, "../libquery_engine-rhel-openssl-1.0.x.so.node");
|
| 67 |
+
import_path.default.join(__dirname, "../libquery_engine-rhel-openssl-1.1.x.so.node");
|
| 68 |
+
import_path.default.join(__dirname, "../libquery_engine-rhel-openssl-3.0.x.so.node");
|
| 69 |
+
import_path.default.join(__dirname, "../query_engine-windows.dll.node");
|
| 70 |
+
|
| 71 |
+
// src/scripts/postinstall.ts
|
| 72 |
+
var debug2 = (0, import_debug2.default)("prisma:download");
|
| 73 |
+
var baseDir = import_path2.default.join(__dirname, "../../");
|
| 74 |
+
var lockFile = import_path2.default.join(baseDir, "download-lock");
|
| 75 |
+
var createdLockFile = false;
|
| 76 |
+
async function main() {
|
| 77 |
+
if (import_fs.default.existsSync(lockFile) && parseInt(import_fs.default.readFileSync(lockFile, "utf-8"), 10) > Date.now() - 2e4) {
|
| 78 |
+
debug2(`Lock file already exists, so we're skipping the download of the prisma binaries`);
|
| 79 |
+
} else {
|
| 80 |
+
createLockFile();
|
| 81 |
+
let binaryTargets;
|
| 82 |
+
if (process.env.PRISMA_CLI_BINARY_TARGETS) {
|
| 83 |
+
binaryTargets = process.env.PRISMA_CLI_BINARY_TARGETS.split(",");
|
| 84 |
+
}
|
| 85 |
+
const cliQueryEngineBinaryType = getCliQueryEngineBinaryType();
|
| 86 |
+
const binaries = {
|
| 87 |
+
[cliQueryEngineBinaryType]: baseDir,
|
| 88 |
+
[import_fetch_engine2.BinaryType.SchemaEngineBinary]: baseDir
|
| 89 |
+
};
|
| 90 |
+
await (0, import_fetch_engine2.download)({
|
| 91 |
+
binaries,
|
| 92 |
+
version: import_engines_version3.enginesVersion,
|
| 93 |
+
showProgress: true,
|
| 94 |
+
failSilent: true,
|
| 95 |
+
binaryTargets
|
| 96 |
+
}).catch((e) => debug2(e));
|
| 97 |
+
cleanupLockFile();
|
| 98 |
+
}
|
| 99 |
+
}
|
| 100 |
+
function createLockFile() {
|
| 101 |
+
createdLockFile = true;
|
| 102 |
+
import_fs.default.writeFileSync(lockFile, Date.now().toString());
|
| 103 |
+
}
|
| 104 |
+
function cleanupLockFile() {
|
| 105 |
+
if (createdLockFile) {
|
| 106 |
+
try {
|
| 107 |
+
if (import_fs.default.existsSync(lockFile)) {
|
| 108 |
+
import_fs.default.unlinkSync(lockFile);
|
| 109 |
+
}
|
| 110 |
+
} catch (e) {
|
| 111 |
+
debug2(e);
|
| 112 |
+
}
|
| 113 |
+
}
|
| 114 |
+
}
|
| 115 |
+
main().catch((e) => debug2(e));
|
| 116 |
+
process.on("beforeExit", () => {
|
| 117 |
+
cleanupLockFile();
|
| 118 |
+
});
|
| 119 |
+
process.once("SIGINT", () => {
|
| 120 |
+
cleanupLockFile();
|
| 121 |
+
process.exit();
|
| 122 |
+
});
|
backend/node_modules/@prisma/engines/scripts/postinstall.js
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
const path = require('path')
|
| 2 |
+
|
| 3 |
+
const postInstallScriptPath = path.join(__dirname, '..', 'dist', 'scripts', 'postinstall.js')
|
| 4 |
+
const localInstallScriptPath = path.join(__dirname, '..', 'dist', 'scripts', 'localinstall.js')
|
| 5 |
+
|
| 6 |
+
try {
|
| 7 |
+
// that's when we develop in the monorepo, `dist` does not exist yet
|
| 8 |
+
// so we compile postinstall script and trigger it immediately after
|
| 9 |
+
if (require('../package.json').version === '0.0.0') {
|
| 10 |
+
const execa = require('execa')
|
| 11 |
+
const buildScriptPath = path.join(__dirname, '..', 'helpers', 'build.ts')
|
| 12 |
+
|
| 13 |
+
execa.sync('pnpm', ['tsx', buildScriptPath], {
|
| 14 |
+
// for the sake of simplicity, we IGNORE_EXTERNALS in our own setup
|
| 15 |
+
// ie. when the monorepo installs, the postinstall is self-contained
|
| 16 |
+
env: { DEV: true, IGNORE_EXTERNALS: true },
|
| 17 |
+
stdio: 'inherit',
|
| 18 |
+
})
|
| 19 |
+
|
| 20 |
+
// if enabled, it will install engine overrides into the cache dir
|
| 21 |
+
execa.sync('node', [localInstallScriptPath], {
|
| 22 |
+
stdio: 'inherit',
|
| 23 |
+
})
|
| 24 |
+
}
|
| 25 |
+
} catch {}
|
| 26 |
+
|
| 27 |
+
// that's the normal path, when users get this package ready/installed
|
| 28 |
+
require(postInstallScriptPath)
|
backend/node_modules/@prisma/fetch-engine/dist/chmodPlusX.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"use strict";
|
| 2 |
+
var __defProp = Object.defineProperty;
|
| 3 |
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
| 4 |
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
| 5 |
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
| 6 |
+
var __export = (target, all) => {
|
| 7 |
+
for (var name in all)
|
| 8 |
+
__defProp(target, name, { get: all[name], enumerable: true });
|
| 9 |
+
};
|
| 10 |
+
var __copyProps = (to, from, except, desc) => {
|
| 11 |
+
if (from && typeof from === "object" || typeof from === "function") {
|
| 12 |
+
for (let key of __getOwnPropNames(from))
|
| 13 |
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
| 14 |
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
| 15 |
+
}
|
| 16 |
+
return to;
|
| 17 |
+
};
|
| 18 |
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
| 19 |
+
var chmodPlusX_exports = {};
|
| 20 |
+
__export(chmodPlusX_exports, {
|
| 21 |
+
chmodPlusX: () => import_chunk_7JLQJWOR.chmodPlusX
|
| 22 |
+
});
|
| 23 |
+
module.exports = __toCommonJS(chmodPlusX_exports);
|
| 24 |
+
var import_chunk_7JLQJWOR = require("./chunk-7JLQJWOR.js");
|
| 25 |
+
var import_chunk_QGM4M3NI = require("./chunk-QGM4M3NI.js");
|
backend/node_modules/@prisma/fetch-engine/dist/chunk-MWVY55RY.js
ADDED
|
@@ -0,0 +1,161 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"use strict";
|
| 2 |
+
var __defProp = Object.defineProperty;
|
| 3 |
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
| 4 |
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
| 5 |
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
| 6 |
+
var __export = (target, all) => {
|
| 7 |
+
for (var name in all)
|
| 8 |
+
__defProp(target, name, { get: all[name], enumerable: true });
|
| 9 |
+
};
|
| 10 |
+
var __copyProps = (to, from, except, desc) => {
|
| 11 |
+
if (from && typeof from === "object" || typeof from === "function") {
|
| 12 |
+
for (let key of __getOwnPropNames(from))
|
| 13 |
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
| 14 |
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
| 15 |
+
}
|
| 16 |
+
return to;
|
| 17 |
+
};
|
| 18 |
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
| 19 |
+
var chunk_MWVY55RY_exports = {};
|
| 20 |
+
__export(chunk_MWVY55RY_exports, {
|
| 21 |
+
getBar: () => getBar
|
| 22 |
+
});
|
| 23 |
+
module.exports = __toCommonJS(chunk_MWVY55RY_exports);
|
| 24 |
+
var import_chunk_QGM4M3NI = require("./chunk-QGM4M3NI.js");
|
| 25 |
+
var require_node_progress = (0, import_chunk_QGM4M3NI.__commonJS)({
|
| 26 |
+
"../../node_modules/.pnpm/progress@2.0.3/node_modules/progress/lib/node-progress.js"(exports, module2) {
|
| 27 |
+
"use strict";
|
| 28 |
+
exports = module2.exports = ProgressBar;
|
| 29 |
+
function ProgressBar(fmt, options) {
|
| 30 |
+
this.stream = options.stream || process.stderr;
|
| 31 |
+
if (typeof options == "number") {
|
| 32 |
+
var total = options;
|
| 33 |
+
options = {};
|
| 34 |
+
options.total = total;
|
| 35 |
+
} else {
|
| 36 |
+
options = options || {};
|
| 37 |
+
if ("string" != typeof fmt) throw new Error("format required");
|
| 38 |
+
if ("number" != typeof options.total) throw new Error("total required");
|
| 39 |
+
}
|
| 40 |
+
this.fmt = fmt;
|
| 41 |
+
this.curr = options.curr || 0;
|
| 42 |
+
this.total = options.total;
|
| 43 |
+
this.width = options.width || this.total;
|
| 44 |
+
this.clear = options.clear;
|
| 45 |
+
this.chars = {
|
| 46 |
+
complete: options.complete || "=",
|
| 47 |
+
incomplete: options.incomplete || "-",
|
| 48 |
+
head: options.head || (options.complete || "=")
|
| 49 |
+
};
|
| 50 |
+
this.renderThrottle = options.renderThrottle !== 0 ? options.renderThrottle || 16 : 0;
|
| 51 |
+
this.lastRender = -Infinity;
|
| 52 |
+
this.callback = options.callback || function() {
|
| 53 |
+
};
|
| 54 |
+
this.tokens = {};
|
| 55 |
+
this.lastDraw = "";
|
| 56 |
+
}
|
| 57 |
+
ProgressBar.prototype.tick = function(len, tokens) {
|
| 58 |
+
if (len !== 0)
|
| 59 |
+
len = len || 1;
|
| 60 |
+
if ("object" == typeof len) tokens = len, len = 1;
|
| 61 |
+
if (tokens) this.tokens = tokens;
|
| 62 |
+
if (0 == this.curr) this.start = /* @__PURE__ */ new Date();
|
| 63 |
+
this.curr += len;
|
| 64 |
+
this.render();
|
| 65 |
+
if (this.curr >= this.total) {
|
| 66 |
+
this.render(void 0, true);
|
| 67 |
+
this.complete = true;
|
| 68 |
+
this.terminate();
|
| 69 |
+
this.callback(this);
|
| 70 |
+
return;
|
| 71 |
+
}
|
| 72 |
+
};
|
| 73 |
+
ProgressBar.prototype.render = function(tokens, force) {
|
| 74 |
+
force = force !== void 0 ? force : false;
|
| 75 |
+
if (tokens) this.tokens = tokens;
|
| 76 |
+
if (!this.stream.isTTY) return;
|
| 77 |
+
var now = Date.now();
|
| 78 |
+
var delta = now - this.lastRender;
|
| 79 |
+
if (!force && delta < this.renderThrottle) {
|
| 80 |
+
return;
|
| 81 |
+
} else {
|
| 82 |
+
this.lastRender = now;
|
| 83 |
+
}
|
| 84 |
+
var ratio = this.curr / this.total;
|
| 85 |
+
ratio = Math.min(Math.max(ratio, 0), 1);
|
| 86 |
+
var percent = Math.floor(ratio * 100);
|
| 87 |
+
var incomplete, complete, completeLength;
|
| 88 |
+
var elapsed = /* @__PURE__ */ new Date() - this.start;
|
| 89 |
+
var eta = percent == 100 ? 0 : elapsed * (this.total / this.curr - 1);
|
| 90 |
+
var rate = this.curr / (elapsed / 1e3);
|
| 91 |
+
var str = this.fmt.replace(":current", this.curr).replace(":total", this.total).replace(":elapsed", isNaN(elapsed) ? "0.0" : (elapsed / 1e3).toFixed(1)).replace(":eta", isNaN(eta) || !isFinite(eta) ? "0.0" : (eta / 1e3).toFixed(1)).replace(":percent", percent.toFixed(0) + "%").replace(":rate", Math.round(rate));
|
| 92 |
+
var availableSpace = Math.max(0, this.stream.columns - str.replace(":bar", "").length);
|
| 93 |
+
if (availableSpace && process.platform === "win32") {
|
| 94 |
+
availableSpace = availableSpace - 1;
|
| 95 |
+
}
|
| 96 |
+
var width = Math.min(this.width, availableSpace);
|
| 97 |
+
completeLength = Math.round(width * ratio);
|
| 98 |
+
complete = Array(Math.max(0, completeLength + 1)).join(this.chars.complete);
|
| 99 |
+
incomplete = Array(Math.max(0, width - completeLength + 1)).join(this.chars.incomplete);
|
| 100 |
+
if (completeLength > 0)
|
| 101 |
+
complete = complete.slice(0, -1) + this.chars.head;
|
| 102 |
+
str = str.replace(":bar", complete + incomplete);
|
| 103 |
+
if (this.tokens) for (var key in this.tokens) str = str.replace(":" + key, this.tokens[key]);
|
| 104 |
+
if (this.lastDraw !== str) {
|
| 105 |
+
this.stream.cursorTo(0);
|
| 106 |
+
this.stream.write(str);
|
| 107 |
+
this.stream.clearLine(1);
|
| 108 |
+
this.lastDraw = str;
|
| 109 |
+
}
|
| 110 |
+
};
|
| 111 |
+
ProgressBar.prototype.update = function(ratio, tokens) {
|
| 112 |
+
var goal = Math.floor(ratio * this.total);
|
| 113 |
+
var delta = goal - this.curr;
|
| 114 |
+
this.tick(delta, tokens);
|
| 115 |
+
};
|
| 116 |
+
ProgressBar.prototype.interrupt = function(message) {
|
| 117 |
+
this.stream.clearLine();
|
| 118 |
+
this.stream.cursorTo(0);
|
| 119 |
+
this.stream.write(message);
|
| 120 |
+
this.stream.write("\n");
|
| 121 |
+
this.stream.write(this.lastDraw);
|
| 122 |
+
};
|
| 123 |
+
ProgressBar.prototype.terminate = function() {
|
| 124 |
+
if (this.clear) {
|
| 125 |
+
if (this.stream.clearLine) {
|
| 126 |
+
this.stream.clearLine();
|
| 127 |
+
this.stream.cursorTo(0);
|
| 128 |
+
}
|
| 129 |
+
} else {
|
| 130 |
+
this.stream.write("\n");
|
| 131 |
+
}
|
| 132 |
+
};
|
| 133 |
+
}
|
| 134 |
+
});
|
| 135 |
+
var require_progress = (0, import_chunk_QGM4M3NI.__commonJS)({
|
| 136 |
+
"../../node_modules/.pnpm/progress@2.0.3/node_modules/progress/index.js"(exports, module2) {
|
| 137 |
+
"use strict";
|
| 138 |
+
module2.exports = require_node_progress();
|
| 139 |
+
}
|
| 140 |
+
});
|
| 141 |
+
var import_progress = (0, import_chunk_QGM4M3NI.__toESM)(require_progress());
|
| 142 |
+
function getBar(text) {
|
| 143 |
+
return new import_progress.default(`> ${text} [:bar] :percent`, {
|
| 144 |
+
stream: process.stdout,
|
| 145 |
+
width: 20,
|
| 146 |
+
complete: "=",
|
| 147 |
+
incomplete: " ",
|
| 148 |
+
total: 100,
|
| 149 |
+
head: "",
|
| 150 |
+
clear: true
|
| 151 |
+
});
|
| 152 |
+
}
|
| 153 |
+
/*! Bundled license information:
|
| 154 |
+
|
| 155 |
+
progress/lib/node-progress.js:
|
| 156 |
+
(*!
|
| 157 |
+
* node-progress
|
| 158 |
+
* Copyright(c) 2011 TJ Holowaychuk <tj@vision-media.ca>
|
| 159 |
+
* MIT Licensed
|
| 160 |
+
*)
|
| 161 |
+
*/
|
backend/node_modules/@prisma/fetch-engine/dist/chunk-RXM4EBGR.js
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
backend/node_modules/@prisma/fetch-engine/dist/downloadZip.js
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"use strict";
|
| 2 |
+
var __defProp = Object.defineProperty;
|
| 3 |
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
| 4 |
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
| 5 |
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
| 6 |
+
var __export = (target, all) => {
|
| 7 |
+
for (var name in all)
|
| 8 |
+
__defProp(target, name, { get: all[name], enumerable: true });
|
| 9 |
+
};
|
| 10 |
+
var __copyProps = (to, from, except, desc) => {
|
| 11 |
+
if (from && typeof from === "object" || typeof from === "function") {
|
| 12 |
+
for (let key of __getOwnPropNames(from))
|
| 13 |
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
| 14 |
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
| 15 |
+
}
|
| 16 |
+
return to;
|
| 17 |
+
};
|
| 18 |
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
| 19 |
+
var downloadZip_exports = {};
|
| 20 |
+
__export(downloadZip_exports, {
|
| 21 |
+
downloadZip: () => import_chunk_CY52DY2B.downloadZip
|
| 22 |
+
});
|
| 23 |
+
module.exports = __toCommonJS(downloadZip_exports);
|
| 24 |
+
var import_chunk_CY52DY2B = require("./chunk-CY52DY2B.js");
|
| 25 |
+
var import_chunk_RXM4EBGR = require("./chunk-RXM4EBGR.js");
|
| 26 |
+
var import_chunk_FSAAZH62 = require("./chunk-FSAAZH62.js");
|
| 27 |
+
var import_chunk_LONQL55G = require("./chunk-LONQL55G.js");
|
| 28 |
+
var import_chunk_X37PZICB = require("./chunk-X37PZICB.js");
|
| 29 |
+
var import_chunk_VAPNG6TS = require("./chunk-VAPNG6TS.js");
|
| 30 |
+
var import_chunk_QGM4M3NI = require("./chunk-QGM4M3NI.js");
|
backend/node_modules/@prisma/fetch-engine/dist/getHash.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
export declare function getHash(filePath: string): Promise<string>;
|
backend/node_modules/@prisma/fetch-engine/dist/index.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
export * from './BinaryType';
|
| 2 |
+
export * from './download';
|
| 3 |
+
export * from './env';
|
| 4 |
+
export { getProxyAgent } from './getProxyAgent';
|
| 5 |
+
export { getCacheDir, overwriteFile } from './utils';
|
backend/node_modules/@prisma/fetch-engine/dist/utils.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"use strict";
|
| 2 |
+
var __defProp = Object.defineProperty;
|
| 3 |
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
| 4 |
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
| 5 |
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
| 6 |
+
var __export = (target, all) => {
|
| 7 |
+
for (var name in all)
|
| 8 |
+
__defProp(target, name, { get: all[name], enumerable: true });
|
| 9 |
+
};
|
| 10 |
+
var __copyProps = (to, from, except, desc) => {
|
| 11 |
+
if (from && typeof from === "object" || typeof from === "function") {
|
| 12 |
+
for (let key of __getOwnPropNames(from))
|
| 13 |
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
| 14 |
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
| 15 |
+
}
|
| 16 |
+
return to;
|
| 17 |
+
};
|
| 18 |
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
| 19 |
+
var utils_exports = {};
|
| 20 |
+
__export(utils_exports, {
|
| 21 |
+
getCacheDir: () => import_chunk_LONQL55G.getCacheDir,
|
| 22 |
+
getDownloadUrl: () => import_chunk_LONQL55G.getDownloadUrl,
|
| 23 |
+
getRootCacheDir: () => import_chunk_LONQL55G.getRootCacheDir,
|
| 24 |
+
overwriteFile: () => import_chunk_LONQL55G.overwriteFile
|
| 25 |
+
});
|
| 26 |
+
module.exports = __toCommonJS(utils_exports);
|
| 27 |
+
var import_chunk_LONQL55G = require("./chunk-LONQL55G.js");
|
| 28 |
+
var import_chunk_X37PZICB = require("./chunk-X37PZICB.js");
|
| 29 |
+
var import_chunk_QGM4M3NI = require("./chunk-QGM4M3NI.js");
|
backend/node_modules/effect/BigInt/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/BigInt.js",
|
| 4 |
+
"module": "../dist/esm/BigInt.js",
|
| 5 |
+
"types": "../dist/dts/BigInt.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/Clock/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/Clock.js",
|
| 4 |
+
"module": "../dist/esm/Clock.js",
|
| 5 |
+
"types": "../dist/dts/Clock.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/ConfigProvider/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/ConfigProvider.js",
|
| 4 |
+
"module": "../dist/esm/ConfigProvider.js",
|
| 5 |
+
"types": "../dist/dts/ConfigProvider.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/ConfigProviderPathPatch/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/ConfigProviderPathPatch.js",
|
| 4 |
+
"module": "../dist/esm/ConfigProviderPathPatch.js",
|
| 5 |
+
"types": "../dist/dts/ConfigProviderPathPatch.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/Console/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/Console.js",
|
| 4 |
+
"module": "../dist/esm/Console.js",
|
| 5 |
+
"types": "../dist/dts/Console.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/Context/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/Context.js",
|
| 4 |
+
"module": "../dist/esm/Context.js",
|
| 5 |
+
"types": "../dist/dts/Context.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/Cron/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/Cron.js",
|
| 4 |
+
"module": "../dist/esm/Cron.js",
|
| 5 |
+
"types": "../dist/dts/Cron.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/Data/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/Data.js",
|
| 4 |
+
"module": "../dist/esm/Data.js",
|
| 5 |
+
"types": "../dist/dts/Data.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/Duration/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/Duration.js",
|
| 4 |
+
"module": "../dist/esm/Duration.js",
|
| 5 |
+
"types": "../dist/dts/Duration.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/Effectable/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/Effectable.js",
|
| 4 |
+
"module": "../dist/esm/Effectable.js",
|
| 5 |
+
"types": "../dist/dts/Effectable.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/Either/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/Either.js",
|
| 4 |
+
"module": "../dist/esm/Either.js",
|
| 5 |
+
"types": "../dist/dts/Either.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/Equal/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/Equal.js",
|
| 4 |
+
"module": "../dist/esm/Equal.js",
|
| 5 |
+
"types": "../dist/dts/Equal.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/ExecutionStrategy/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/ExecutionStrategy.js",
|
| 4 |
+
"module": "../dist/esm/ExecutionStrategy.js",
|
| 5 |
+
"types": "../dist/dts/ExecutionStrategy.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/Exit/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/Exit.js",
|
| 4 |
+
"module": "../dist/esm/Exit.js",
|
| 5 |
+
"types": "../dist/dts/Exit.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/Fiber/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/Fiber.js",
|
| 4 |
+
"module": "../dist/esm/Fiber.js",
|
| 5 |
+
"types": "../dist/dts/Fiber.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/FiberHandle/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/FiberHandle.js",
|
| 4 |
+
"module": "../dist/esm/FiberHandle.js",
|
| 5 |
+
"types": "../dist/dts/FiberHandle.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/FiberId/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/FiberId.js",
|
| 4 |
+
"module": "../dist/esm/FiberId.js",
|
| 5 |
+
"types": "../dist/dts/FiberId.d.ts"
|
| 6 |
+
}
|
backend/node_modules/effect/FiberMap/package.json
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"sideEffects": [],
|
| 3 |
+
"main": "../dist/cjs/FiberMap.js",
|
| 4 |
+
"module": "../dist/esm/FiberMap.js",
|
| 5 |
+
"types": "../dist/dts/FiberMap.d.ts"
|
| 6 |
+
}
|