prisma 6.14.0-dev.15 → 6.14.0-dev.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/build/index.js +59 -59
  2. package/build/query_compiler_bg.cockroachdb.wasm +0 -0
  3. package/build/query_compiler_bg.mysql.wasm +0 -0
  4. package/build/query_compiler_bg.postgresql.wasm +0 -0
  5. package/build/query_compiler_bg.sqlite.wasm +0 -0
  6. package/build/query_compiler_bg.sqlserver.wasm +0 -0
  7. package/build/query_engine_bg.cockroachdb.wasm +0 -0
  8. package/build/query_engine_bg.mysql.wasm +0 -0
  9. package/build/query_engine_bg.postgresql.wasm +0 -0
  10. package/build/query_engine_bg.sqlite.wasm +0 -0
  11. package/build/query_engine_bg.sqlserver.wasm +0 -0
  12. package/build/schema_engine_bg.wasm +0 -0
  13. package/package.json +14 -14
  14. package/prisma-client/generator-build/index.js +11 -11
  15. package/prisma-client/package.json +4 -4
  16. package/prisma-client/runtime/binary.js +2 -2
  17. package/prisma-client/runtime/binary.js.map +3 -3
  18. package/prisma-client/runtime/binary.mjs +2 -2
  19. package/prisma-client/runtime/binary.mjs.map +3 -3
  20. package/prisma-client/runtime/client.js +3 -3
  21. package/prisma-client/runtime/client.js.map +3 -3
  22. package/prisma-client/runtime/client.mjs +3 -3
  23. package/prisma-client/runtime/client.mjs.map +3 -3
  24. package/prisma-client/runtime/edge-esm.js +3 -3
  25. package/prisma-client/runtime/edge-esm.js.map +4 -4
  26. package/prisma-client/runtime/edge.js +3 -3
  27. package/prisma-client/runtime/edge.js.map +4 -4
  28. package/prisma-client/runtime/library.js +2 -2
  29. package/prisma-client/runtime/library.js.map +3 -3
  30. package/prisma-client/runtime/library.mjs +2 -2
  31. package/prisma-client/runtime/library.mjs.map +3 -3
  32. package/prisma-client/runtime/react-native.js +2 -2
  33. package/prisma-client/runtime/react-native.js.map +4 -4
  34. package/prisma-client/scripts/default-index.js +3 -3
@@ -1,4 +1,4 @@
1
- "use strict";var Fu=Object.create;var zr=Object.defineProperty;var Lu=Object.getOwnPropertyDescriptor;var $u=Object.getOwnPropertyNames;var Vu=Object.getPrototypeOf,qu=Object.prototype.hasOwnProperty;var Ko=(e,t)=>()=>(e&&(t=e(e=0)),t);var G=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ut=(e,t)=>{for(var r in t)zr(e,r,{get:t[r],enumerable:!0})},zo=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of $u(t))!qu.call(e,i)&&i!==r&&zr(e,i,{get:()=>t[i],enumerable:!(n=Lu(t,i))||n.enumerable});return e};var j=(e,t,r)=>(r=e!=null?Fu(Vu(e)):{},zo(t||!e||!e.__esModule?zr(r,"default",{value:e,enumerable:!0}):r,e)),Uu=e=>zo(zr({},"__esModule",{value:!0}),e);var us=G((Rh,cp)=>{cp.exports={name:"@prisma/internals",version:"6.14.0-dev.15",description:"This package is intended for Prisma's internal use",main:"dist/index.js",types:"dist/index.d.ts",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/internals"},homepage:"https://www.prisma.io",author:"Tim Suchanek <suchanek@prisma.io>",bugs:"https://github.com/prisma/prisma/issues",license:"Apache-2.0",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",test:"dotenv -e ../../.db.env -- jest --silent",prepublishOnly:"pnpm run build"},files:["README.md","dist","!**/libquery_engine*","!dist/get-generators/engines/*","scripts"],devDependencies:{"@babel/helper-validator-identifier":"7.25.9","@opentelemetry/api":"1.9.0","@swc/core":"1.11.5","@swc/jest":"0.2.37","@types/babel__helper-validator-identifier":"7.15.2","@types/jest":"29.5.14","@types/node":"18.19.76","@types/resolve":"1.20.6",archiver:"6.0.2","checkpoint-client":"1.1.33","cli-truncate":"4.0.0",dotenv:"16.5.0",esbuild:"0.25.5","escape-string-regexp":"5.0.0",execa:"5.1.1","fast-glob":"3.3.3","find-up":"7.0.0","fp-ts":"2.16.9","fs-extra":"11.3.0","fs-jetpack":"5.1.0","global-dirs":"4.0.0",globby:"11.1.0","identifier-regex":"1.0.0","indent-string":"4.0.0","is-windows":"1.0.2","is-wsl":"3.1.0",jest:"29.7.0","jest-junit":"16.0.0",kleur:"4.1.5","mock-stdin":"1.0.0","new-github-issue-url":"0.2.1","node-fetch":"3.3.2","npm-packlist":"5.1.3",open:"7.4.2","p-map":"4.0.0","read-package-up":"11.0.0",resolve:"1.22.10","string-width":"7.2.0","strip-ansi":"6.0.1","strip-indent":"4.0.0","temp-dir":"2.0.0",tempy:"1.0.1","terminal-link":"4.0.0",tmp:"0.2.3","ts-node":"10.9.2","ts-pattern":"5.6.2","ts-toolbelt":"9.6.0",typescript:"5.4.5",yarn:"1.22.22"},dependencies:{"@prisma/config":"workspace:*","@prisma/debug":"workspace:*","@prisma/dmmf":"workspace:*","@prisma/driver-adapter-utils":"workspace:*","@prisma/engines":"workspace:*","@prisma/fetch-engine":"workspace:*","@prisma/generator":"workspace:*","@prisma/generator-helper":"workspace:*","@prisma/get-platform":"workspace:*","@prisma/prisma-schema-wasm":"6.14.0-4.1c4c6a033ef7e7815b76142f9502e03b0d83e1a1","@prisma/schema-engine-wasm":"6.14.0-4.1c4c6a033ef7e7815b76142f9502e03b0d83e1a1","@prisma/schema-files-loader":"workspace:*",arg:"5.0.2",prompts:"2.4.2"},peerDependencies:{typescript:">=5.1.0"},peerDependenciesMeta:{typescript:{optional:!0}},sideEffects:!1}});var wi=G(($h,mp)=>{mp.exports={name:"@prisma/engines-version",version:"6.14.0-4.1c4c6a033ef7e7815b76142f9502e03b0d83e1a1",main:"index.js",types:"index.d.ts",license:"Apache-2.0",author:"Tim Suchanek <suchanek@prisma.io>",prisma:{enginesVersion:"1c4c6a033ef7e7815b76142f9502e03b0d83e1a1"},repository:{type:"git",url:"https://github.com/prisma/engines-wrapper.git",directory:"packages/engines-version"},devDependencies:{"@types/node":"18.19.76",typescript:"4.9.5"},files:["index.js","index.d.ts"],scripts:{build:"tsc -d"}}});var ps=G(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.enginesVersion=void 0;Zr.enginesVersion=wi().prisma.enginesVersion});var ms=G((qh,ds)=>{"use strict";ds.exports=e=>{let t=e.match(/^[ \t]*(?=\S)/gm);return t?t.reduce((r,n)=>Math.min(r,n.length),1/0):0}});var ys=G((Bh,hs)=>{"use strict";hs.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var xs=G((Hh,Es)=>{"use strict";Es.exports=({onlyFirst:e=!1}={})=>{let t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(t,e?void 0:"g")}});var Pi=G((Gh,bs)=>{"use strict";var wp=xs();bs.exports=e=>typeof e=="string"?e.replace(wp(),""):e});var Ps=G((Kh,Ep)=>{Ep.exports={name:"dotenv",version:"16.5.0",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var Ss=G((zh,ke)=>{"use strict";var Ti=require("node:fs"),Ai=require("node:path"),xp=require("node:os"),bp=require("node:crypto"),Pp=Ps(),Ts=Pp.version,vp=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function Tp(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,`
1
+ "use strict";var Fu=Object.create;var zr=Object.defineProperty;var Lu=Object.getOwnPropertyDescriptor;var $u=Object.getOwnPropertyNames;var Vu=Object.getPrototypeOf,qu=Object.prototype.hasOwnProperty;var Ko=(e,t)=>()=>(e&&(t=e(e=0)),t);var G=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ut=(e,t)=>{for(var r in t)zr(e,r,{get:t[r],enumerable:!0})},zo=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of $u(t))!qu.call(e,i)&&i!==r&&zr(e,i,{get:()=>t[i],enumerable:!(n=Lu(t,i))||n.enumerable});return e};var j=(e,t,r)=>(r=e!=null?Fu(Vu(e)):{},zo(t||!e||!e.__esModule?zr(r,"default",{value:e,enumerable:!0}):r,e)),Uu=e=>zo(zr({},"__esModule",{value:!0}),e);var us=G((Rh,cp)=>{cp.exports={name:"@prisma/internals",version:"6.14.0-dev.17",description:"This package is intended for Prisma's internal use",main:"dist/index.js",types:"dist/index.d.ts",repository:{type:"git",url:"https://github.com/prisma/prisma.git",directory:"packages/internals"},homepage:"https://www.prisma.io",author:"Tim Suchanek <suchanek@prisma.io>",bugs:"https://github.com/prisma/prisma/issues",license:"Apache-2.0",scripts:{dev:"DEV=true tsx helpers/build.ts",build:"tsx helpers/build.ts",test:"dotenv -e ../../.db.env -- jest --silent",prepublishOnly:"pnpm run build"},files:["README.md","dist","!**/libquery_engine*","!dist/get-generators/engines/*","scripts"],devDependencies:{"@babel/helper-validator-identifier":"7.25.9","@opentelemetry/api":"1.9.0","@swc/core":"1.11.5","@swc/jest":"0.2.37","@types/babel__helper-validator-identifier":"7.15.2","@types/jest":"29.5.14","@types/node":"18.19.76","@types/resolve":"1.20.6",archiver:"6.0.2","checkpoint-client":"1.1.33","cli-truncate":"4.0.0",dotenv:"16.5.0",empathic:"2.0.0",esbuild:"0.25.5","escape-string-regexp":"5.0.0",execa:"5.1.1","fast-glob":"3.3.3","find-up":"7.0.0","fp-ts":"2.16.9","fs-extra":"11.3.0","fs-jetpack":"5.1.0","global-dirs":"4.0.0",globby:"11.1.0","identifier-regex":"1.0.0","indent-string":"4.0.0","is-windows":"1.0.2","is-wsl":"3.1.0",jest:"29.7.0","jest-junit":"16.0.0",kleur:"4.1.5","mock-stdin":"1.0.0","new-github-issue-url":"0.2.1","node-fetch":"3.3.2","npm-packlist":"5.1.3",open:"7.4.2","p-map":"4.0.0",resolve:"1.22.10","string-width":"7.2.0","strip-ansi":"6.0.1","strip-indent":"4.0.0","temp-dir":"2.0.0",tempy:"1.0.1","terminal-link":"4.0.0",tmp:"0.2.3","ts-node":"10.9.2","ts-pattern":"5.6.2","ts-toolbelt":"9.6.0",typescript:"5.4.5",yarn:"1.22.22"},dependencies:{"@prisma/config":"workspace:*","@prisma/debug":"workspace:*","@prisma/dmmf":"workspace:*","@prisma/driver-adapter-utils":"workspace:*","@prisma/engines":"workspace:*","@prisma/fetch-engine":"workspace:*","@prisma/generator":"workspace:*","@prisma/generator-helper":"workspace:*","@prisma/get-platform":"workspace:*","@prisma/prisma-schema-wasm":"6.14.0-5.b1ce3aa3adca46cf24c957a397e49935368b30ea","@prisma/schema-engine-wasm":"6.14.0-5.b1ce3aa3adca46cf24c957a397e49935368b30ea","@prisma/schema-files-loader":"workspace:*",arg:"5.0.2",prompts:"2.4.2"},peerDependencies:{typescript:">=5.1.0"},peerDependenciesMeta:{typescript:{optional:!0}},sideEffects:!1}});var wi=G(($h,mp)=>{mp.exports={name:"@prisma/engines-version",version:"6.14.0-5.b1ce3aa3adca46cf24c957a397e49935368b30ea",main:"index.js",types:"index.d.ts",license:"Apache-2.0",author:"Tim Suchanek <suchanek@prisma.io>",prisma:{enginesVersion:"b1ce3aa3adca46cf24c957a397e49935368b30ea"},repository:{type:"git",url:"https://github.com/prisma/engines-wrapper.git",directory:"packages/engines-version"},devDependencies:{"@types/node":"18.19.76",typescript:"4.9.5"},files:["index.js","index.d.ts"],scripts:{build:"tsc -d"}}});var ps=G(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.enginesVersion=void 0;Zr.enginesVersion=wi().prisma.enginesVersion});var ms=G((qh,ds)=>{"use strict";ds.exports=e=>{let t=e.match(/^[ \t]*(?=\S)/gm);return t?t.reduce((r,n)=>Math.min(r,n.length),1/0):0}});var ys=G((Bh,hs)=>{"use strict";hs.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},typeof e!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if(typeof t!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if(typeof r.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(t===0)return e;let n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}});var xs=G((Hh,Es)=>{"use strict";Es.exports=({onlyFirst:e=!1}={})=>{let t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(t,e?void 0:"g")}});var Pi=G((Gh,bs)=>{"use strict";var wp=xs();bs.exports=e=>typeof e=="string"?e.replace(wp(),""):e});var Ps=G((Kh,Ep)=>{Ep.exports={name:"dotenv",version:"16.5.0",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var Ss=G((zh,ke)=>{"use strict";var Ti=require("node:fs"),Ai=require("node:path"),xp=require("node:os"),bp=require("node:crypto"),Pp=Ps(),Ts=Pp.version,vp=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function Tp(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,`
2
2
  `);let n;for(;(n=vp.exec(r))!=null;){let i=n[1],o=n[2]||"";o=o.trim();let s=o[0];o=o.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),s==='"'&&(o=o.replace(/\\n/g,`
3
3
  `),o=o.replace(/\\r/g,"\r")),t[i]=o}return t}function Ap(e){let t=Cs(e),r=Q.configDotenv({path:t});if(!r.parsed){let s=new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);throw s.code="MISSING_DATA",s}let n=As(e).split(","),i=n.length,o;for(let s=0;s<i;s++)try{let a=n[s].trim(),l=Sp(r,a);o=Q.decrypt(l.ciphertext,l.key);break}catch(a){if(s+1>=i)throw a}return Q.parse(o)}function Cp(e){console.log(`[dotenv@${Ts}][WARN] ${e}`)}function Xt(e){console.log(`[dotenv@${Ts}][DEBUG] ${e}`)}function As(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function Sp(e,t){let r;try{r=new URL(t)}catch(a){if(a.code==="ERR_INVALID_URL"){let l=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw l.code="INVALID_DOTENV_KEY",l}throw a}let n=r.password;if(!n){let a=new Error("INVALID_DOTENV_KEY: Missing key part");throw a.code="INVALID_DOTENV_KEY",a}let i=r.searchParams.get("environment");if(!i){let a=new Error("INVALID_DOTENV_KEY: Missing environment part");throw a.code="INVALID_DOTENV_KEY",a}let o=`DOTENV_VAULT_${i.toUpperCase()}`,s=e.parsed[o];if(!s){let a=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${o} in your .env.vault file.`);throw a.code="NOT_FOUND_DOTENV_ENVIRONMENT",a}return{ciphertext:s,key:n}}function Cs(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)Ti.existsSync(r)&&(t=r.endsWith(".vault")?r:`${r}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=Ai.resolve(process.cwd(),".env.vault");return Ti.existsSync(t)?t:null}function vs(e){return e[0]==="~"?Ai.join(xp.homedir(),e.slice(1)):e}function Rp(e){!!(e&&e.debug)&&Xt("Loading env from encrypted .env.vault");let r=Q._parseVault(e),n=process.env;return e&&e.processEnv!=null&&(n=e.processEnv),Q.populate(n,r,e),{parsed:r}}function Ip(e){let t=Ai.resolve(process.cwd(),".env"),r="utf8",n=!!(e&&e.debug);e&&e.encoding?r=e.encoding:n&&Xt("No encoding is specified. UTF-8 is used by default");let i=[t];if(e&&e.path)if(!Array.isArray(e.path))i=[vs(e.path)];else{i=[];for(let l of e.path)i.push(vs(l))}let o,s={};for(let l of i)try{let c=Q.parse(Ti.readFileSync(l,{encoding:r}));Q.populate(s,c,e)}catch(c){n&&Xt(`Failed to load ${l} ${c.message}`),o=c}let a=process.env;return e&&e.processEnv!=null&&(a=e.processEnv),Q.populate(a,s,e),o?{parsed:s,error:o}:{parsed:s}}function kp(e){if(As(e).length===0)return Q.configDotenv(e);let t=Cs(e);return t?Q._configVault(e):(Cp(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),Q.configDotenv(e))}function Op(e,t){let r=Buffer.from(t.slice(-64),"hex"),n=Buffer.from(e,"base64"),i=n.subarray(0,12),o=n.subarray(-16);n=n.subarray(12,-16);try{let s=bp.createDecipheriv("aes-256-gcm",r,i);return s.setAuthTag(o),`${s.update(n)}${s.final()}`}catch(s){let a=s instanceof RangeError,l=s.message==="Invalid key length",c=s.message==="Unsupported state or unable to authenticate data";if(a||l){let u=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw u.code="INVALID_DOTENV_KEY",u}else if(c){let u=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw u.code="DECRYPTION_FAILED",u}else throw s}}function Dp(e,t,r={}){let n=!!(r&&r.debug),i=!!(r&&r.override);if(typeof t!="object"){let o=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw o.code="OBJECT_REQUIRED",o}for(let o of Object.keys(t))Object.prototype.hasOwnProperty.call(e,o)?(i===!0&&(e[o]=t[o]),n&&Xt(i===!0?`"${o}" is already defined and WAS overwritten`:`"${o}" is already defined and was NOT overwritten`)):e[o]=t[o]}var Q={configDotenv:Ip,_configVault:Rp,_parseVault:Ap,config:kp,decrypt:Op,parse:Tp,populate:Dp};ke.exports.configDotenv=Q.configDotenv;ke.exports._configVault=Q._configVault;ke.exports._parseVault=Q._parseVault;ke.exports.config=Q.config;ke.exports.decrypt=Q.decrypt;ke.exports.parse=Q.parse;ke.exports.populate=Q.populate;ke.exports=Q});var Os=G((ry,rn)=>{"use strict";rn.exports=(e={})=>{let t;if(e.repoUrl)t=e.repoUrl;else if(e.user&&e.repo)t=`https://github.com/${e.user}/${e.repo}`;else throw new Error("You need to specify either the `repoUrl` option or both the `user` and `repo` options");let r=new URL(`${t}/issues/new`),n=["body","title","labels","template","milestone","assignee","projects"];for(let i of n){let o=e[i];if(o!==void 0){if(i==="labels"||i==="projects"){if(!Array.isArray(o))throw new TypeError(`The \`${i}\` option should be an array`);o=o.join(",")}r.searchParams.set(i,o)}}return r.toString()};rn.exports.default=rn.exports});var Fi=G((Ow,ta)=>{"use strict";ta.exports=function(){function e(t,r,n,i,o){return t<r||n<r?t>n?n+1:t+1:i===o?r:r+1}return function(t,r){if(t===r)return 0;if(t.length>r.length){var n=t;t=r,r=n}for(var i=t.length,o=r.length;i>0&&t.charCodeAt(i-1)===r.charCodeAt(o-1);)i--,o--;for(var s=0;s<i&&t.charCodeAt(s)===r.charCodeAt(s);)s++;if(i-=s,o-=s,i===0||o<3)return o;var a=0,l,c,u,p,d,m,h,g,I,A,C,w,k=[];for(l=0;l<i;l++)k.push(l+1),k.push(t.charCodeAt(s+l));for(var fe=k.length-1;a<o-3;)for(I=r.charCodeAt(s+(c=a)),A=r.charCodeAt(s+(u=a+1)),C=r.charCodeAt(s+(p=a+2)),w=r.charCodeAt(s+(d=a+3)),m=a+=4,l=0;l<fe;l+=2)h=k[l],g=k[l+1],c=e(h,c,u,I,g),u=e(c,u,p,A,g),p=e(u,p,d,C,g),m=e(p,d,m,w,g),k[l]=m,d=p,p=u,u=c,c=h;for(;a<o;)for(I=r.charCodeAt(s+(c=a)),m=++a,l=0;l<fe;l+=2)h=k[l],k[l]=m=e(h,c,m,I,k[l+1]),c=h;return m}}()});var sa=Ko(()=>{"use strict"});var aa=Ko(()=>{"use strict"});var ao=G(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});et.anumber=so;et.abytes=Rl;et.ahash=Sf;et.aexists=Rf;et.aoutput=If;function so(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function Cf(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Rl(e,...t){if(!Cf(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error("Uint8Array expected of length "+t+", got length="+e.length)}function Sf(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");so(e.outputLen),so(e.blockLen)}function Rf(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function If(e,t){Rl(e);let r=t.outputLen;if(e.length<r)throw new Error("digestInto() expects output buffer of length at least "+r)}});var zl=G(P=>{"use strict";Object.defineProperty(P,"__esModule",{value:!0});P.add5L=P.add5H=P.add4H=P.add4L=P.add3H=P.add3L=P.rotlBL=P.rotlBH=P.rotlSL=P.rotlSH=P.rotr32L=P.rotr32H=P.rotrBL=P.rotrBH=P.rotrSL=P.rotrSH=P.shrSL=P.shrSH=P.toBig=void 0;P.fromBig=co;P.split=Il;P.add=Bl;var Vn=BigInt(2**32-1),lo=BigInt(32);function co(e,t=!1){return t?{h:Number(e&Vn),l:Number(e>>lo&Vn)}:{h:Number(e>>lo&Vn)|0,l:Number(e&Vn)|0}}function Il(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let i=0;i<e.length;i++){let{h:o,l:s}=co(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var kl=(e,t)=>BigInt(e>>>0)<<lo|BigInt(t>>>0);P.toBig=kl;var Ol=(e,t,r)=>e>>>r;P.shrSH=Ol;var Dl=(e,t,r)=>e<<32-r|t>>>r;P.shrSL=Dl;var Nl=(e,t,r)=>e>>>r|t<<32-r;P.rotrSH=Nl;var _l=(e,t,r)=>e<<32-r|t>>>r;P.rotrSL=_l;var Ml=(e,t,r)=>e<<64-r|t>>>r-32;P.rotrBH=Ml;var Fl=(e,t,r)=>e>>>r-32|t<<64-r;P.rotrBL=Fl;var Ll=(e,t)=>t;P.rotr32H=Ll;var $l=(e,t)=>e;P.rotr32L=$l;var Vl=(e,t,r)=>e<<r|t>>>32-r;P.rotlSH=Vl;var ql=(e,t,r)=>t<<r|e>>>32-r;P.rotlSL=ql;var Ul=(e,t,r)=>t<<r-32|e>>>64-r;P.rotlBH=Ul;var jl=(e,t,r)=>e<<r-32|t>>>64-r;P.rotlBL=jl;function Bl(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var Ql=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0);P.add3L=Ql;var Hl=(e,t,r,n)=>t+r+n+(e/2**32|0)|0;P.add3H=Hl;var Gl=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0);P.add4L=Gl;var Wl=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0;P.add4H=Wl;var Jl=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0);P.add5L=Jl;var Kl=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;P.add5H=Kl;var kf={fromBig:co,split:Il,toBig:kl,shrSH:Ol,shrSL:Dl,rotrSH:Nl,rotrSL:_l,rotrBH:Ml,rotrBL:Fl,rotr32H:Ll,rotr32L:$l,rotlSH:Vl,rotlSL:ql,rotlBH:Ul,rotlBL:jl,add:Bl,add3L:Ql,add3H:Hl,add4L:Gl,add4H:Wl,add5H:Kl,add5L:Jl};P.default=kf});var Yl=G(qn=>{"use strict";Object.defineProperty(qn,"__esModule",{value:!0});qn.crypto=void 0;var Qe=require("node:crypto");qn.crypto=Qe&&typeof Qe=="object"&&"webcrypto"in Qe?Qe.webcrypto:Qe&&typeof Qe=="object"&&"randomBytes"in Qe?Qe:void 0});var ec=G(R=>{"use strict";Object.defineProperty(R,"__esModule",{value:!0});R.Hash=R.nextTick=R.byteSwapIfBE=R.isLE=void 0;R.isBytes=Of;R.u8=Df;R.u32=Nf;R.createView=_f;R.rotr=Mf;R.rotl=Ff;R.byteSwap=mo;R.byteSwap32=Lf;R.bytesToHex=Vf;R.hexToBytes=qf;R.asyncLoop=jf;R.utf8ToBytes=Xl;R.toBytes=Un;R.concatBytes=Bf;R.checkOpts=Qf;R.wrapConstructor=Hf;R.wrapConstructorWithOpts=Gf;R.wrapXOFConstructorWithOpts=Wf;R.randomBytes=Jf;var Ot=Yl(),po=ao();function Of(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Df(e){return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}function Nf(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function _f(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Mf(e,t){return e<<32-t|e>>>t}function Ff(e,t){return e<<t|e>>>32-t>>>0}R.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function mo(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}R.byteSwapIfBE=R.isLE?e=>e:e=>mo(e);function Lf(e){for(let t=0;t<e.length;t++)e[t]=mo(e[t])}var $f=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Vf(e){(0,po.abytes)(e);let t="";for(let r=0;r<e.length;r++)t+=$f[e[r]];return t}var Ne={_0:48,_9:57,A:65,F:70,a:97,f:102};function Zl(e){if(e>=Ne._0&&e<=Ne._9)return e-Ne._0;if(e>=Ne.A&&e<=Ne.F)return e-(Ne.A-10);if(e>=Ne.a&&e<=Ne.f)return e-(Ne.a-10)}function qf(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);let t=e.length,r=t/2;if(t%2)throw new Error("hex string expected, got unpadded hex of length "+t);let n=new Uint8Array(r);for(let i=0,o=0;i<r;i++,o+=2){let s=Zl(e.charCodeAt(o)),a=Zl(e.charCodeAt(o+1));if(s===void 0||a===void 0){let l=e[o]+e[o+1];throw new Error('hex string expected, got non-hex character "'+l+'" at index '+o)}n[i]=s*16+a}return n}var Uf=async()=>{};R.nextTick=Uf;async function jf(e,t,r){let n=Date.now();for(let i=0;i<e;i++){r(i);let o=Date.now()-n;o>=0&&o<t||(await(0,R.nextTick)(),n+=o)}}function Xl(e){if(typeof e!="string")throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array(new TextEncoder().encode(e))}function Un(e){return typeof e=="string"&&(e=Xl(e)),(0,po.abytes)(e),e}function Bf(...e){let t=0;for(let n=0;n<e.length;n++){let i=e[n];(0,po.abytes)(i),t+=i.length}let r=new Uint8Array(t);for(let n=0,i=0;n<e.length;n++){let o=e[n];r.set(o,i),i+=o.length}return r}var uo=class{clone(){return this._cloneInto()}};R.Hash=uo;function Qf(e,t){if(t!==void 0&&{}.toString.call(t)!=="[object Object]")throw new Error("Options should be object or undefined");return Object.assign(e,t)}function Hf(e){let t=n=>e().update(Un(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function Gf(e){let t=(n,i)=>e(i).update(Un(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}function Wf(e){let t=(n,i)=>e(i).update(Un(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}function Jf(e=32){if(Ot.crypto&&typeof Ot.crypto.getRandomValues=="function")return Ot.crypto.getRandomValues(new Uint8Array(e));if(Ot.crypto&&typeof Ot.crypto.randomBytes=="function")return Ot.crypto.randomBytes(e);throw new Error("crypto.getRandomValues must be defined")}});var lc=G($=>{"use strict";Object.defineProperty($,"__esModule",{value:!0});$.shake256=$.shake128=$.keccak_512=$.keccak_384=$.keccak_256=$.keccak_224=$.sha3_512=$.sha3_384=$.sha3_256=$.sha3_224=$.Keccak=void 0;$.keccakP=sc;var Dt=ao(),vr=zl(),_e=ec(),nc=[],ic=[],oc=[],Kf=BigInt(0),Pr=BigInt(1),zf=BigInt(2),Yf=BigInt(7),Zf=BigInt(256),Xf=BigInt(113);for(let e=0,t=Pr,r=1,n=0;e<24;e++){[r,n]=[n,(2*r+3*n)%5],nc.push(2*(5*n+r)),ic.push((e+1)*(e+2)/2%64);let i=Kf;for(let o=0;o<7;o++)t=(t<<Pr^(t>>Yf)*Xf)%Zf,t&zf&&(i^=Pr<<(Pr<<BigInt(o))-Pr);oc.push(i)}var[eg,tg]=(0,vr.split)(oc,!0),tc=(e,t,r)=>r>32?(0,vr.rotlBH)(e,t,r):(0,vr.rotlSH)(e,t,r),rc=(e,t,r)=>r>32?(0,vr.rotlBL)(e,t,r):(0,vr.rotlSL)(e,t,r);function sc(e,t=24){let r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let s=0;s<10;s++)r[s]=e[s]^e[s+10]^e[s+20]^e[s+30]^e[s+40];for(let s=0;s<10;s+=2){let a=(s+8)%10,l=(s+2)%10,c=r[l],u=r[l+1],p=tc(c,u,1)^r[a],d=rc(c,u,1)^r[a+1];for(let m=0;m<50;m+=10)e[s+m]^=p,e[s+m+1]^=d}let i=e[2],o=e[3];for(let s=0;s<24;s++){let a=ic[s],l=tc(i,o,a),c=rc(i,o,a),u=nc[s];i=e[u],o=e[u+1],e[u]=l,e[u+1]=c}for(let s=0;s<50;s+=10){for(let a=0;a<10;a++)r[a]=e[s+a];for(let a=0;a<10;a++)e[s+a]^=~r[(a+2)%10]&r[(a+4)%10]}e[0]^=eg[n],e[1]^=tg[n]}r.fill(0)}var Tr=class e extends _e.Hash{constructor(t,r,n,i=!1,o=24){if(super(),this.blockLen=t,this.suffix=r,this.outputLen=n,this.enableXOF=i,this.rounds=o,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,(0,Dt.anumber)(n),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=(0,_e.u32)(this.state)}keccak(){_e.isLE||(0,_e.byteSwap32)(this.state32),sc(this.state32,this.rounds),_e.isLE||(0,_e.byteSwap32)(this.state32),this.posOut=0,this.pos=0}update(t){(0,Dt.aexists)(this);let{blockLen:r,state:n}=this;t=(0,_e.toBytes)(t);let i=t.length;for(let o=0;o<i;){let s=Math.min(r-this.pos,i-o);for(let a=0;a<s;a++)n[this.pos++]^=t[o++];this.pos===r&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:t,suffix:r,pos:n,blockLen:i}=this;t[n]^=r,(r&128)!==0&&n===i-1&&this.keccak(),t[i-1]^=128,this.keccak()}writeInto(t){(0,Dt.aexists)(this,!1),(0,Dt.abytes)(t),this.finish();let r=this.state,{blockLen:n}=this;for(let i=0,o=t.length;i<o;){this.posOut>=n&&this.keccak();let s=Math.min(n-this.posOut,o-i);t.set(r.subarray(this.posOut,this.posOut+s),i),this.posOut+=s,i+=s}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return(0,Dt.anumber)(t),this.xofInto(new Uint8Array(t))}digestInto(t){if((0,Dt.aoutput)(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){let{blockLen:r,suffix:n,outputLen:i,rounds:o,enableXOF:s}=this;return t||(t=new e(r,n,i,s,o)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=o,t.suffix=n,t.outputLen=i,t.enableXOF=s,t.destroyed=this.destroyed,t}};$.Keccak=Tr;var He=(e,t,r)=>(0,_e.wrapConstructor)(()=>new Tr(t,e,r));$.sha3_224=He(6,144,224/8);$.sha3_256=He(6,136,256/8);$.sha3_384=He(6,104,384/8);$.sha3_512=He(6,72,512/8);$.keccak_224=He(1,144,224/8);$.keccak_256=He(1,136,256/8);$.keccak_384=He(1,104,384/8);$.keccak_512=He(1,72,512/8);var ac=(e,t,r)=>(0,_e.wrapXOFConstructorWithOpts)((n={})=>new Tr(t,e,n.dkLen===void 0?r:n.dkLen,!0));$.shake128=ac(31,168,128/8);$.shake256=ac(31,136,256/8)});var hc=G((OP,Ge)=>{"use strict";var{sha3_512:rg}=lc(),uc=24,Ar=32,fo=(e=4,t=Math.random)=>{let r="";for(;r.length<e;)r=r+Math.floor(t()*36).toString(36);return r};function pc(e){let t=8n,r=0n;for(let n of e.values()){let i=BigInt(n);r=(r<<t)+i}return r}var dc=(e="")=>pc(rg(e)).toString(36).slice(1),cc=Array.from({length:26},(e,t)=>String.fromCharCode(t+97)),ng=e=>cc[Math.floor(e()*cc.length)],mc=({globalObj:e=typeof global<"u"?global:typeof window<"u"?window:{},random:t=Math.random}={})=>{let r=Object.keys(e).toString(),n=r.length?r+fo(Ar,t):fo(Ar,t);return dc(n).substring(0,Ar)},fc=e=>()=>e++,ig=476782367,gc=({random:e=Math.random,counter:t=fc(Math.floor(e()*ig)),length:r=uc,fingerprint:n=mc({random:e})}={})=>function(){let o=ng(e),s=Date.now().toString(36),a=t().toString(36),l=fo(r,e),c=`${s+l+a+n}`;return`${o+dc(c).substring(1,r)}`},og=gc(),sg=(e,{minLength:t=2,maxLength:r=Ar}={})=>{let n=e.length,i=/^[0-9a-z]+$/;try{if(typeof e=="string"&&n>=t&&n<=r&&i.test(e))return!0}finally{}return!1};Ge.exports.getConstants=()=>({defaultLength:uc,bigLength:Ar});Ge.exports.init=gc;Ge.exports.createId=og;Ge.exports.bufToBigInt=pc;Ge.exports.createCounter=fc;Ge.exports.createFingerprint=mc;Ge.exports.isCuid=sg});var yc=G((DP,Cr)=>{"use strict";var{createId:ag,init:lg,getConstants:cg,isCuid:ug}=hc();Cr.exports.createId=ag;Cr.exports.init=lg;Cr.exports.getConstants=cg;Cr.exports.isCuid=ug});var hh={};ut(hh,{DMMF:()=>ir,Debug:()=>V,Decimal:()=>K,Extensions:()=>di,MetricsClient:()=>St,PrismaClientInitializationError:()=>O,PrismaClientKnownRequestError:()=>U,PrismaClientRustPanicError:()=>ne,PrismaClientUnknownRequestError:()=>X,PrismaClientValidationError:()=>ee,Public:()=>mi,Sql:()=>le,createParam:()=>va,defineDmmfProperty:()=>Ia,deserializeJsonResponse:()=>qe,deserializeRawResult:()=>li,dmmfToRuntimeDataModel:()=>Ks,empty:()=>Da,getPrismaClient:()=>Nu,getRuntime:()=>cl,join:()=>Oa,makeStrictEnum:()=>_u,makeTypedQueryFactory:()=>ka,objectEnumValues:()=>Pn,raw:()=>Hi,serializeJsonQuery:()=>In,skip:()=>Rn,sqltag:()=>Gi,warnEnvConflicts:()=>Mu,warnOnce:()=>tr});module.exports=Uu(hh);var di={};ut(di,{defineExtension:()=>Yo,getExtensionContext:()=>Zo});function Yo(e){return typeof e=="function"?e:t=>t.$extends(e)}function Zo(e){return e}var mi={};ut(mi,{validator:()=>Xo});function Xo(...e){return t=>t}var Yr={};ut(Yr,{$:()=>is,bgBlack:()=>Yu,bgBlue:()=>tp,bgCyan:()=>np,bgGreen:()=>Xu,bgMagenta:()=>rp,bgRed:()=>Zu,bgWhite:()=>ip,bgYellow:()=>ep,black:()=>Wu,blue:()=>ze,bold:()=>re,cyan:()=>Ie,dim:()=>Je,gray:()=>Wt,green:()=>Gt,grey:()=>zu,hidden:()=>Hu,inverse:()=>Qu,italic:()=>Bu,magenta:()=>Ju,red:()=>Re,reset:()=>ju,strikethrough:()=>Gu,underline:()=>se,white:()=>Ku,yellow:()=>Ke});var fi,es,ts,rs,ns=!0;typeof process<"u"&&({FORCE_COLOR:fi,NODE_DISABLE_COLORS:es,NO_COLOR:ts,TERM:rs}=process.env||{},ns=process.stdout&&process.stdout.isTTY);var is={enabled:!es&&ts==null&&rs!=="dumb"&&(fi!=null&&fi!=="0"||ns)};function M(e,t){let r=new RegExp(`\\x1b\\[${t}m`,"g"),n=`\x1B[${e}m`,i=`\x1B[${t}m`;return function(o){return!is.enabled||o==null?o:n+(~(""+o).indexOf(i)?o.replace(r,i+n):o)+i}}var ju=M(0,0),re=M(1,22),Je=M(2,22),Bu=M(3,23),se=M(4,24),Qu=M(7,27),Hu=M(8,28),Gu=M(9,29),Wu=M(30,39),Re=M(31,39),Gt=M(32,39),Ke=M(33,39),ze=M(34,39),Ju=M(35,39),Ie=M(36,39),Ku=M(37,39),Wt=M(90,39),zu=M(90,39),Yu=M(40,49),Zu=M(41,49),Xu=M(42,49),ep=M(43,49),tp=M(44,49),rp=M(45,49),np=M(46,49),ip=M(47,49);var op=100,os=["green","yellow","blue","magenta","cyan","red"],Jt=[],ss=Date.now(),sp=0,gi=typeof process<"u"?process.env:{};globalThis.DEBUG??=gi.DEBUG??"";globalThis.DEBUG_COLORS??=gi.DEBUG_COLORS?gi.DEBUG_COLORS==="true":!0;var Kt={enable(e){typeof e=="string"&&(globalThis.DEBUG=e)},disable(){let e=globalThis.DEBUG;return globalThis.DEBUG="",e},enabled(e){let t=globalThis.DEBUG.split(",").map(i=>i.replace(/[.+?^${}()|[\]\\]/g,"\\$&")),r=t.some(i=>i===""||i[0]==="-"?!1:e.match(RegExp(i.split("*").join(".*")+"$"))),n=t.some(i=>i===""||i[0]!=="-"?!1:e.match(RegExp(i.slice(1).split("*").join(".*")+"$")));return r&&!n},log:(...e)=>{let[t,r,...n]=e;(console.warn??console.log)(`${t} ${r}`,...n)},formatters:{}};function ap(e){let t={color:os[sp++%os.length],enabled:Kt.enabled(e),namespace:e,log:Kt.log,extend:()=>{}},r=(...n)=>{let{enabled:i,namespace:o,color:s,log:a}=t;if(n.length!==0&&Jt.push([o,...n]),Jt.length>op&&Jt.shift(),Kt.enabled(o)||i){let l=n.map(u=>typeof u=="string"?u:lp(u)),c=`+${Date.now()-ss}ms`;ss=Date.now(),globalThis.DEBUG_COLORS?a(Yr[s](re(o)),...l,Yr[s](c)):a(o,...l,c)}};return new Proxy(r,{get:(n,i)=>t[i],set:(n,i,o)=>t[i]=o})}var V=new Proxy(ap,{get:(e,t)=>Kt[t],set:(e,t,r)=>Kt[t]=r});function lp(e,t=2){let r=new Set;return JSON.stringify(e,(n,i)=>{if(typeof i=="object"&&i!==null){if(r.has(i))return"[Circular *]";r.add(i)}else if(typeof i=="bigint")return i.toString();return i},t)}function as(e=7500){let t=Jt.map(([r,...n])=>`${r} ${n.map(i=>typeof i=="string"?i:JSON.stringify(i)).join(" ")}`).join(`
4
4
  `);return t.length<e?t:t.slice(-e)}function ls(){Jt.length=0}var cs=V;var up=us(),hi=up.version;function pt(e){let t=pp();return t||(e?.config.engineType==="library"?"library":e?.config.engineType==="binary"?"binary":e?.config.engineType==="client"?"client":dp(e))}function pp(){let e=process.env.PRISMA_CLIENT_ENGINE_TYPE;return e==="library"?"library":e==="binary"?"binary":e==="client"?"client":void 0}function dp(e){return e?.previewFeatures.includes("queryCompiler")?"client":"library"}function yi(e){return e.name==="DriverAdapterError"&&typeof e.cause=="object"}var T={Int32:0,Int64:1,Float:2,Double:3,Numeric:4,Boolean:5,Character:6,Text:7,Date:8,Time:9,DateTime:10,Json:11,Enum:12,Bytes:13,Set:14,Uuid:15,Int32Array:64,Int64Array:65,FloatArray:66,DoubleArray:67,NumericArray:68,BooleanArray:69,CharacterArray:70,TextArray:71,DateArray:72,TimeArray:73,DateTimeArray:74,JsonArray:75,EnumArray:76,BytesArray:77,UuidArray:78,UnknownNumber:128};var fs=j(ms(),1);function Ei(e){let t=(0,fs.default)(e);if(t===0)return e;let r=new RegExp(`^[ \\t]{${t}}`,"gm");return e.replace(r,"")}var gs="prisma+postgres",Xr=`${gs}:`;function en(e){return e?.toString().startsWith(`${Xr}//`)??!1}function xi(e){if(!en(e))return!1;let{host:t}=new URL(e);return t.includes("localhost")||t.includes("127.0.0.1")||t.includes("[::1]")}var Yt={};ut(Yt,{error:()=>hp,info:()=>gp,log:()=>fp,query:()=>yp,should:()=>ws,tags:()=>zt,warn:()=>bi});var zt={error:Re("prisma:error"),warn:Ke("prisma:warn"),info:Ie("prisma:info"),query:ze("prisma:query")},ws={warn:()=>!process.env.PRISMA_DISABLE_WARNINGS};function fp(...e){console.log(...e)}function bi(e,...t){ws.warn()&&console.warn(`${zt.warn} ${e}`,...t)}function gp(e,...t){console.info(`${zt.info} ${e}`,...t)}function hp(e,...t){console.error(`${zt.error} ${e}`,...t)}function yp(e,...t){console.log(`${zt.query} ${e}`,...t)}function ge(e,t){throw new Error(t)}var Zt=j(require("node:path"));function vi(e){return Zt.default.sep===Zt.default.posix.sep?e:e.split(Zt.default.sep).join(Zt.default.posix.sep)}var Si=j(Ss()),tn=j(require("node:fs"));var dt=j(require("node:path"));function Rs(e){let t=e.ignoreProcessEnv?{}:process.env,r=n=>n.match(/(.?\${(?:[a-zA-Z0-9_]+)?})/g)?.reduce(function(o,s){let a=/(.?)\${([a-zA-Z0-9_]+)?}/g.exec(s);if(!a)return o;let l=a[1],c,u;if(l==="\\")u=a[0],c=u.replace("\\$","$");else{let p=a[2];u=a[0].substring(l.length),c=Object.hasOwnProperty.call(t,p)?t[p]:e.parsed[p]||"",c=r(c)}return o.replace(u,c)},n)??n;for(let n in e.parsed){let i=Object.hasOwnProperty.call(t,n)?t[n]:e.parsed[n];e.parsed[n]=r(i)}for(let n in e.parsed)t[n]=e.parsed[n];return e}var Ci=cs("prisma:tryLoadEnv");function er({rootEnvPath:e,schemaEnvPath:t},r={conflictCheck:"none"}){let n=Is(e);r.conflictCheck!=="none"&&Np(n,t,r.conflictCheck);let i=null;return ks(n?.path,t)||(i=Is(t)),!n&&!i&&Ci("No Environment variables loaded"),i?.dotenvResult.error?console.error(Re(re("Schema Env Error: "))+i.dotenvResult.error):{message:[n?.message,i?.message].filter(Boolean).join(`
@@ -68,8 +68,8 @@ ${se(p)}
68
68
  If you want the Prisma team to look into it, please open the link above \u{1F64F}
69
69
  To increase the chance of success, please post your schema and a snippet of
70
70
  how you used Prisma Client in the issue.
71
- `}function F(e,t){throw new Error(t)}function eo(e,t){return e===t||e!==null&&t!==null&&typeof e=="object"&&typeof t=="object"&&Object.keys(e).length===Object.keys(t).length&&Object.keys(e).every(r=>eo(e[r],t[r]))}function Er(e,t){let r=Object.keys(e),n=Object.keys(t);return(r.length<n.length?r:n).every(o=>{if(typeof e[o]==typeof t[o]&&typeof e[o]!="object")return e[o]===t[o];if(K.isDecimal(e[o])||K.isDecimal(t[o])){let s=gl(e[o]),a=gl(t[o]);return s&&a&&s.equals(a)}else if(e[o]instanceof Uint8Array||t[o]instanceof Uint8Array){let s=hl(e[o]),a=hl(t[o]);return s&&a&&s.equals(a)}else{if(e[o]instanceof Date||t[o]instanceof Date)return yl(e[o])?.getTime()===yl(t[o])?.getTime();if(typeof e[o]=="bigint"||typeof t[o]=="bigint")return wl(e[o])===wl(t[o]);if(typeof e[o]=="number"||typeof t[o]=="number")return El(e[o])===El(t[o])}return eo(e[o],t[o])})}function gl(e){return K.isDecimal(e)?e:typeof e=="number"||typeof e=="string"?new K(e):void 0}function hl(e){return Buffer.isBuffer(e)?e:e instanceof Uint8Array?Buffer.from(e.buffer,e.byteOffset,e.byteLength):typeof e=="string"?Buffer.from(e,"base64"):void 0}function yl(e){return e instanceof Date?e:typeof e=="string"||typeof e=="number"?new Date(e):void 0}function wl(e){return typeof e=="bigint"?e:typeof e=="number"||typeof e=="string"?BigInt(e):void 0}function El(e){return typeof e=="number"?e:typeof e=="string"?Number(e):void 0}function xr(e){return JSON.stringify(e,(t,r)=>typeof r=="bigint"?r.toString():r instanceof Uint8Array?Buffer.from(r).toString("base64"):r)}var q=class extends Error{name="DataMapperError"};function Pl(e,t,r){switch(t.type){case"AffectedRows":if(typeof e!="number")throw new q(`Expected an affected rows count, got: ${typeof e} (${e})`);return{count:e};case"Object":return to(e,t.fields,r);case"Value":return ro(e,"<result>",t.resultType,r);default:F(t,`Invalid data mapping type: '${t.type}'`)}}function to(e,t,r){if(e===null)return null;if(Array.isArray(e))return e.map(i=>xl(i,t,r));if(typeof e=="object")return xl(e,t,r);if(typeof e=="string"){let n;try{n=JSON.parse(e)}catch(i){throw new q("Expected an array or object, got a string that is not valid JSON",{cause:i})}return to(n,t,r)}throw new q(`Expected an array or an object, got: ${typeof e}`)}function xl(e,t,r){if(typeof e!="object")throw new q(`Expected an object, but got '${typeof e}'`);let n={};for(let[i,o]of Object.entries(t))switch(o.type){case"AffectedRows":throw new q(`Unexpected 'AffectedRows' node in data mapping for field '${i}'`);case"Object":{if(o.serializedName!==null&&!Object.hasOwn(e,o.serializedName))throw new q(`Missing data field (Object): '${i}'; node: ${JSON.stringify(o)}; data: ${JSON.stringify(e)}`);let s=o.serializedName!==null?e[o.serializedName]:e;n[i]=to(s,o.fields,r);break}case"Value":{let s=o.dbName;if(Object.hasOwn(e,s))n[i]=ro(e[s],s,o.resultType,r);else throw new q(`Missing data field (Value): '${s}'; node: ${JSON.stringify(o)}; data: ${JSON.stringify(e)}`)}break;default:F(o,`DataMapper: Invalid data mapping node type: '${o.type}'`)}return n}function ro(e,t,r,n){if(e===null)return r.type==="Array"?[]:null;switch(r.type){case"Any":return e;case"String":{if(typeof e!="string")throw new q(`Expected a string in column '${t}', got ${typeof e}: ${e}`);return e}case"Int":switch(typeof e){case"number":return Math.trunc(e);case"string":{let i=Math.trunc(Number(e));if(Number.isNaN(i)||!Number.isFinite(i))throw new q(`Expected an integer in column '${t}', got string: ${e}`);if(!Number.isSafeInteger(i))throw new q(`Integer value in column '${t}' is too large to represent as a JavaScript number without loss of precision, got: ${e}. Consider using BigInt type.`);return i}default:throw new q(`Expected an integer in column '${t}', got ${typeof e}: ${e}`)}case"BigInt":{if(typeof e!="number"&&typeof e!="string")throw new q(`Expected a bigint in column '${t}', got ${typeof e}: ${e}`);return{$type:"BigInt",value:e}}case"Float":{if(typeof e=="number")return e;if(typeof e=="string"){let i=Number(e);if(Number.isNaN(i)&&!/^[-+]?nan$/.test(e.toLowerCase()))throw new q(`Expected a float in column '${t}', got string: ${e}`);return i}throw new q(`Expected a float in column '${t}', got ${typeof e}: ${e}`)}case"Boolean":{if(typeof e=="boolean")return e;if(typeof e=="number")return e===1;if(typeof e=="string"){if(e==="true"||e==="TRUE"||e==="1")return!0;if(e==="false"||e==="FALSE"||e==="0")return!1;throw new q(`Expected a boolean in column '${t}', got ${typeof e}: ${e}`)}if(e instanceof Uint8Array){for(let i of e)if(i!==0)return!0;return!1}throw new q(`Expected a boolean in column '${t}', got ${typeof e}: ${e}`)}case"Decimal":if(typeof e!="number"&&typeof e!="string"&&!K.isDecimal(e))throw new q(`Expected a decimal in column '${t}', got ${typeof e}: ${e}`);return{$type:"Decimal",value:e};case"Date":{if(typeof e=="string")return{$type:"DateTime",value:bl(e)};if(typeof e=="number"||e instanceof Date)return{$type:"DateTime",value:e};throw new q(`Expected a date in column '${t}', got ${typeof e}: ${e}`)}case"Time":{if(typeof e=="string")return{$type:"DateTime",value:`1970-01-01T${bl(e)}`};throw new q(`Expected a time in column '${t}', got ${typeof e}: ${e}`)}case"Array":return e.map((o,s)=>ro(o,`${t}[${s}]`,r.inner,n));case"Object":return{$type:"Json",value:typeof e=="string"?e:xr(e)};case"Bytes":{if(typeof e=="string"&&e.startsWith("\\x"))return{$type:"Bytes",value:Buffer.from(e.slice(2),"hex").toString("base64")};if(Array.isArray(e))return{$type:"Bytes",value:Buffer.from(e).toString("base64")};if(e instanceof Uint8Array)return{$type:"Bytes",value:Buffer.from(e).toString("base64")};throw new q(`Expected a byte array in column '${t}', got ${typeof e}: ${e}`)}case"Enum":{let i=n[r.inner];if(i===void 0)throw new q(`Unknown enum '${r.inner}'`);let o=i[`${e}`];if(o===void 0)throw new q(`Unknown enum value '${e}' for enum '${r.inner}'`);return o}default:F(r,`DataMapper: Unknown result type: ${r.type}`)}}var yf=/Z$|(?<!\d{4}-\d{2})[+-]\d{2}(:?\d{2})?$/;function bl(e){let t=yf.exec(e);return t===null?`${e}Z`:t[0]!=="Z"&&t[1]===void 0?`${e}:00`:e}var br;(function(e){e[e.INTERNAL=0]="INTERNAL",e[e.SERVER=1]="SERVER",e[e.CLIENT=2]="CLIENT",e[e.PRODUCER=3]="PRODUCER",e[e.CONSUMER=4]="CONSUMER"})(br||(br={}));function wf(e){switch(e){case"postgresql":case"postgres":case"prisma+postgres":return"postgresql";case"sqlserver":return"mssql";case"mysql":case"sqlite":case"cockroachdb":case"mongodb":return e;default:F(e,`Unknown provider: ${e}`)}}async function Ln({query:e,tracingHelper:t,provider:r,onQuery:n,execute:i}){return await t.runInChildSpan({name:"db_query",kind:br.CLIENT,attributes:{"db.query.text":e.sql,"db.system.name":wf(r)}},async()=>{let o=new Date,s=performance.now(),a=await i(),l=performance.now();return n?.({timestamp:o,duration:l-s,query:e.sql,params:e.args}),a})}var me=class extends Error{name="UserFacingError";code;meta;constructor(t,r,n){super(t),this.code=r,this.meta=n??{}}toQueryResponseErrorObject(){return{error:this.message,user_facing_error:{is_panic:!1,message:this.message,meta:this.meta,error_code:this.code}}}};function vl(e){if(!yi(e))throw e;let t=Ef(e),r=xf(e);throw!t||!r?e:new me(r,t,{driverAdapterError:e})}function Ef(e){switch(e.cause.kind){case"AuthenticationFailed":return"P1000";case"DatabaseNotReachable":return"P1001";case"DatabaseDoesNotExist":return"P1003";case"SocketTimeout":return"P1008";case"DatabaseAlreadyExists":return"P1009";case"DatabaseAccessDenied":return"P1010";case"TlsConnectionError":return"P1011";case"ConnectionClosed":return"P1017";case"TransactionAlreadyClosed":return"P1018";case"LengthMismatch":return"P2000";case"UniqueConstraintViolation":return"P2002";case"ForeignKeyConstraintViolation":return"P2003";case"UnsupportedNativeDataType":return"P2010";case"NullConstraintViolation":return"P2011";case"ValueOutOfRange":return"P2020";case"TableDoesNotExist":return"P2021";case"ColumnNotFound":return"P2022";case"InvalidIsolationLevel":case"InconsistentColumnData":return"P2023";case"MissingFullTextSearchIndex":return"P2030";case"TransactionWriteConflict":return"P2034";case"GenericJs":return"P2036";case"TooManyConnections":return"P2037";case"postgres":case"sqlite":case"mysql":case"mssql":return;default:F(e.cause,`Unknown error: ${e.cause}`)}}function xf(e){switch(e.cause.kind){case"AuthenticationFailed":return`Authentication failed against the database server, the provided database credentials for \`${e.cause.user??"(not available)"}\` are not valid`;case"DatabaseNotReachable":{let t=e.cause.host&&e.cause.port?`${e.cause.host}:${e.cause.port}`:e.cause.host;return`Can't reach database server${t?` at ${t}`:""}`}case"DatabaseDoesNotExist":return`Database \`${e.cause.db??"(not available)"}\` does not exist on the database server`;case"SocketTimeout":return"Operation has timed out";case"DatabaseAlreadyExists":return`Database \`${e.cause.db??"(not available)"}\` already exists on the database server`;case"DatabaseAccessDenied":return`User was denied access on the database \`${e.cause.db??"(not available)"}\``;case"TlsConnectionError":return`Error opening a TLS connection: ${e.cause.reason}`;case"ConnectionClosed":return"Server has closed the connection.";case"TransactionAlreadyClosed":return e.cause.cause;case"LengthMismatch":return`The provided value for the column is too long for the column's type. Column: ${e.cause.column??"(not available)"}`;case"UniqueConstraintViolation":return`Unique constraint failed on the ${no(e.cause.constraint)}`;case"ForeignKeyConstraintViolation":return`Foreign key constraint violated on the ${no(e.cause.constraint)}`;case"UnsupportedNativeDataType":return`Failed to deserialize column of type '${e.cause.type}'. If you're using $queryRaw and this column is explicitly marked as \`Unsupported\` in your Prisma schema, try casting this column to any supported Prisma type such as \`String\`.`;case"NullConstraintViolation":return`Null constraint violation on the ${no(e.cause.constraint)}`;case"ValueOutOfRange":return`Value out of range for the type: ${e.cause.cause}`;case"TableDoesNotExist":return`The table \`${e.cause.table??"(not available)"}\` does not exist in the current database.`;case"ColumnNotFound":return`The column \`${e.cause.column??"(not available)"}\` does not exist in the current database.`;case"InvalidIsolationLevel":return`Invalid isolation level \`${e.cause.level}\``;case"InconsistentColumnData":return`Inconsistent column data: ${e.cause.cause}`;case"MissingFullTextSearchIndex":return"Cannot find a fulltext index to use for the native search, try adding a @@fulltext([Fields...]) to your schema";case"TransactionWriteConflict":return"Transaction failed due to a write conflict or a deadlock. Please retry your transaction";case"GenericJs":return`Error in external connector (id ${e.cause.id})`;case"TooManyConnections":return`Too many database connections opened: ${e.cause.cause}`;case"sqlite":case"postgres":case"mysql":case"mssql":return;default:F(e.cause,`Unknown error: ${e.cause}`)}}function no(e){return e&&"fields"in e?`fields: (${e.fields.map(t=>`\`${t}\``).join(", ")})`:e&&"index"in e?`constraint: \`${e.index}\``:e&&"foreignKey"in e?"foreign key":"(not available)"}function Xe(e,t){var r="000000000"+e;return r.substr(r.length-t)}var Tl=j(require("node:os"),1);function bf(){try{return Tl.default.hostname()}catch{return process.env._CLUSTER_NETWORK_NAME_||process.env.COMPUTERNAME||"hostname"}}var Al=2,Pf=Xe(process.pid.toString(36),Al),Cl=bf(),vf=Cl.length,Tf=Xe(Cl.split("").reduce(function(e,t){return+e+t.charCodeAt(0)},+vf+36).toString(36),Al);function io(){return Pf+Tf}function $n(e){return typeof e=="string"&&/^c[a-z0-9]{20,32}$/.test(e)}function oo(e){let n=Math.pow(36,4),i=0;function o(){return Xe((Math.random()*n<<0).toString(36),4)}function s(){return i=i<n?i:0,i++,i-1}function a(){var l="c",c=new Date().getTime().toString(36),u=Xe(s().toString(36),4),p=e(),d=o()+o();return l+c+u+p+d}return a.fingerprint=e,a.isCuid=$n,a}var Af=oo(io);var Sl=Af;var Cc=j(yc());var go=require("node:crypto");var wc="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var pg=128,tt,Nt;function dg(e){!tt||tt.length<e?(tt=Buffer.allocUnsafe(e*pg),go.webcrypto.getRandomValues(tt),Nt=0):Nt+e>tt.length&&(go.webcrypto.getRandomValues(tt),Nt=0),Nt+=e}function ho(e=21){dg(e|=0);let t="";for(let r=Nt-e;r<Nt;r++)t+=wc[tt[r]&63];return t}var Sr=j(require("node:crypto"),1);var xc="0123456789ABCDEFGHJKMNPQRSTVWXYZ",Rr=32;var mg=16,bc=10,Ec=0xffffffffffff;var rt;(function(e){e.Base32IncorrectEncoding="B32_ENC_INVALID",e.DecodeTimeInvalidCharacter="DEC_TIME_CHAR",e.DecodeTimeValueMalformed="DEC_TIME_MALFORMED",e.EncodeTimeNegative="ENC_TIME_NEG",e.EncodeTimeSizeExceeded="ENC_TIME_SIZE_EXCEED",e.EncodeTimeValueMalformed="ENC_TIME_MALFORMED",e.PRNGDetectFailure="PRNG_DETECT",e.ULIDInvalid="ULID_INVALID",e.Unexpected="UNEXPECTED",e.UUIDInvalid="UUID_INVALID"})(rt||(rt={}));var nt=class extends Error{constructor(t,r){super(`${r} (${t})`),this.name="ULIDError",this.code=t}};function fg(e){let t=Math.floor(e()*Rr);return t===Rr&&(t=Rr-1),xc.charAt(t)}function gg(e){let t=hg(),r=t&&(t.crypto||t.msCrypto)||(typeof Sr.default<"u"?Sr.default:null);if(typeof r?.getRandomValues=="function")return()=>{let n=new Uint8Array(1);return r.getRandomValues(n),n[0]/255};if(typeof r?.randomBytes=="function")return()=>r.randomBytes(1).readUInt8()/255;if(Sr.default?.randomBytes)return()=>Sr.default.randomBytes(1).readUInt8()/255;throw new nt(rt.PRNGDetectFailure,"Failed to find a reliable PRNG")}function hg(){return Eg()?self:typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:null}function yg(e,t){let r="";for(;e>0;e--)r=fg(t)+r;return r}function wg(e,t=bc){if(isNaN(e))throw new nt(rt.EncodeTimeValueMalformed,`Time must be a number: ${e}`);if(e>Ec)throw new nt(rt.EncodeTimeSizeExceeded,`Cannot encode a time larger than ${Ec}: ${e}`);if(e<0)throw new nt(rt.EncodeTimeNegative,`Time must be positive: ${e}`);if(Number.isInteger(e)===!1)throw new nt(rt.EncodeTimeValueMalformed,`Time must be an integer: ${e}`);let r,n="";for(let i=t;i>0;i--)r=e%Rr,n=xc.charAt(r)+n,e=(e-r)/Rr;return n}function Eg(){return typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope}function Pc(e,t){let r=t||gg(),n=!e||isNaN(e)?Date.now():e;return wg(n,bc)+yg(mg,r)}var z=[];for(let e=0;e<256;++e)z.push((e+256).toString(16).slice(1));function jn(e,t=0){return(z[e[t+0]]+z[e[t+1]]+z[e[t+2]]+z[e[t+3]]+"-"+z[e[t+4]]+z[e[t+5]]+"-"+z[e[t+6]]+z[e[t+7]]+"-"+z[e[t+8]]+z[e[t+9]]+"-"+z[e[t+10]]+z[e[t+11]]+z[e[t+12]]+z[e[t+13]]+z[e[t+14]]+z[e[t+15]]).toLowerCase()}var vc=require("node:crypto"),Qn=new Uint8Array(256),Bn=Qn.length;function _t(){return Bn>Qn.length-16&&((0,vc.randomFillSync)(Qn),Bn=0),Qn.slice(Bn,Bn+=16)}var Tc=require("node:crypto"),yo={randomUUID:Tc.randomUUID};function xg(e,t,r){if(yo.randomUUID&&!t&&!e)return yo.randomUUID();e=e||{};let n=e.random??e.rng?.()??_t();if(n.length<16)throw new Error("Random bytes length must be >= 16");if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,t){if(r=r||0,r<0||r+16>t.length)throw new RangeError(`UUID byte range ${r}:${r+15} is out of buffer bounds`);for(let i=0;i<16;++i)t[r+i]=n[i];return t}return jn(n)}var wo=xg;var Eo={};function bg(e,t,r){let n;if(e)n=Ac(e.random??e.rng?.()??_t(),e.msecs,e.seq,t,r);else{let i=Date.now(),o=_t();Pg(Eo,i,o),n=Ac(o,Eo.msecs,Eo.seq,t,r)}return t??jn(n)}function Pg(e,t,r){return e.msecs??=-1/0,e.seq??=0,t>e.msecs?(e.seq=r[6]<<23|r[7]<<16|r[8]<<8|r[9],e.msecs=t):(e.seq=e.seq+1|0,e.seq===0&&e.msecs++),e}function Ac(e,t,r,n,i=0){if(e.length<16)throw new Error("Random bytes length must be >= 16");if(!n)n=new Uint8Array(16),i=0;else if(i<0||i+16>n.length)throw new RangeError(`UUID byte range ${i}:${i+15} is out of buffer bounds`);return t??=Date.now(),r??=e[6]*127<<24|e[7]<<16|e[8]<<8|e[9],n[i++]=t/1099511627776&255,n[i++]=t/4294967296&255,n[i++]=t/16777216&255,n[i++]=t/65536&255,n[i++]=t/256&255,n[i++]=t&255,n[i++]=112|r>>>28&15,n[i++]=r>>>20&255,n[i++]=128|r>>>14&63,n[i++]=r>>>6&255,n[i++]=r<<2&255|e[10]&3,n[i++]=e[11],n[i++]=e[12],n[i++]=e[13],n[i++]=e[14],n[i++]=e[15],n}var xo=bg;var Hn=class{#e={};constructor(){this.register("uuid",new vo),this.register("cuid",new To),this.register("ulid",new Ao),this.register("nanoid",new Co),this.register("product",new So)}snapshot(t){return Object.create(this.#e,{now:{value:t==="mysql"?new Po:new bo}})}register(t,r){this.#e[t]=r}},bo=class{#e=new Date;generate(){return this.#e.toISOString()}},Po=class{#e=new Date;generate(){return this.#e.toISOString().replace("T"," ").replace("Z","")}},vo=class{generate(t){if(t===4)return wo();if(t===7)return xo();throw new Error("Invalid UUID generator arguments")}},To=class{generate(t){if(t===1)return Sl();if(t===2)return(0,Cc.createId)();throw new Error("Invalid CUID generator arguments")}},Ao=class{generate(){return Pc()}},Co=class{generate(t){if(typeof t=="number")return ho(t);if(t===void 0)return ho();throw new Error("Invalid Nanoid generator arguments")}},So=class{generate(t,r){if(t===void 0||r===void 0)throw new Error("Invalid Product generator arguments");return Array.isArray(t)&&Array.isArray(r)?t.flatMap(n=>r.map(i=>[n,i])):Array.isArray(t)?t.map(n=>[n,r]):Array.isArray(r)?r.map(n=>[t,n]):[[t,r]]}};function Ro(e){return typeof e=="object"&&e!==null&&e.prisma__type==="param"}function Io(e){return typeof e=="object"&&e!==null&&e.prisma__type==="generatorCall"}function Sc(e){return typeof e=="object"&&e!==null&&e.prisma__type==="bytes"}function Rc(e){return typeof e=="object"&&e!==null&&e.prisma__type==="bigint"}function Do(e,t,r,n){let i=e.type,o=Ic(e.params,t,r);switch(i){case"rawSql":return[kc(e.sql,Ic(e.params,t,r))];case"templateSql":return(e.chunkable?Sg(e.fragments,o,n):[o]).map(a=>{if(n!==void 0&&a.length>n)throw new me("The query parameter limit supported by your database is exceeded.","P2029");return vg(e.fragments,e.placeholderFormat,a)});default:F(i,"Invalid query type")}}function Ic(e,t,r){return e.map(n=>Ee(n,t,r))}function Ee(e,t,r){let n=e;for(;Cg(n);)if(Ro(n)){let i=t[n.prisma__value.name];if(i===void 0)throw new Error(`Missing value for query variable ${n.prisma__value.name}`);n=i}else if(Io(n)){let{name:i,args:o}=n.prisma__value,s=r[i];if(!s)throw new Error(`Encountered an unknown generator '${i}'`);n=s.generate(...o.map(a=>Ee(a,t,r)))}else F(n,`Unexpected unevaluated value type: ${n}`);return Array.isArray(n)?n=n.map(i=>Ee(i,t,r)):Sc(n)?n=Buffer.from(n.prisma__value,"base64"):Rc(n)&&(n=BigInt(n.prisma__value)),n}function vg(e,t,r){let n="",i={placeholderNumber:1},o=[];for(let s of Oo(e,r))o.push(...Oc(s)),n+=Tg(s,t,i);return kc(n,o)}function Tg(e,t,r){let n=e.type;switch(n){case"parameter":return ko(t,r.placeholderNumber++);case"stringChunk":return e.chunk;case"parameterTuple":return`(${e.value.length==0?"NULL":e.value.map(()=>ko(t,r.placeholderNumber++)).join(",")})`;case"parameterTupleList":return e.value.map(i=>{let o=i.map(()=>ko(t,r.placeholderNumber++)).join(e.itemSeparator);return`${e.itemPrefix}${o}${e.itemSuffix}`}).join(e.groupSeparator);default:F(n,"Invalid fragment type")}}function ko(e,t){return e.hasNumbering?`${e.prefix}${t}`:e.prefix}function kc(e,t){let r=t.map(n=>Ag(n));return{sql:e,args:t,argTypes:r}}function Ag(e){return typeof e=="string"?"Text":typeof e=="number"?"Numeric":typeof e=="boolean"?"Boolean":Array.isArray(e)?"Array":Buffer.isBuffer(e)?"Bytes":"Unknown"}function Cg(e){return Ro(e)||Io(e)}function*Oo(e,t){let r=0;for(let n of e)switch(n.type){case"parameter":{if(r>=t.length)throw new Error(`Malformed query template. Fragments attempt to read over ${t.length} parameters.`);yield{...n,value:t[r++]};break}case"stringChunk":{yield n;break}case"parameterTuple":{if(r>=t.length)throw new Error(`Malformed query template. Fragments attempt to read over ${t.length} parameters.`);let i=t[r++];yield{...n,value:Array.isArray(i)?i:[i]};break}case"parameterTupleList":{if(r>=t.length)throw new Error(`Malformed query template. Fragments attempt to read over ${t.length} parameters.`);let i=t[r++];if(!Array.isArray(i))throw new Error("Malformed query template. Tuple list expected.");if(i.length===0)throw new Error("Malformed query template. Tuple list cannot be empty.");for(let o of i)if(!Array.isArray(o))throw new Error("Malformed query template. Tuple expected.");yield{...n,value:i};break}}}function*Oc(e){switch(e.type){case"parameter":yield e.value;break;case"stringChunk":break;case"parameterTuple":yield*e.value;break;case"parameterTupleList":for(let t of e.value)yield*t;break}}function Sg(e,t,r){let n=0,i=0;for(let s of Oo(e,t)){let a=0;for(let l of Oc(s))a++;i=Math.max(i,a),n+=a}let o=[[]];for(let s of Oo(e,t))switch(s.type){case"parameter":{for(let a of o)a.push(s.value);break}case"stringChunk":break;case"parameterTuple":{let a=s.value.length,l=[];if(r&&o.length===1&&a===i&&n>r&&n-a<r){let c=r-(n-a);l=Rg(s.value,c)}else l=[s.value];o=o.flatMap(c=>l.map(u=>[...c,u]));break}case"parameterTupleList":{let a=s.value.reduce((p,d)=>p+d.length,0),l=[],c=[],u=0;for(let p of s.value)r&&o.length===1&&a===i&&c.length>0&&n-a+u+p.length>r&&(l.push(c),c=[],u=0),c.push(p),u+=p.length;c.length>0&&l.push(c),o=o.flatMap(p=>l.map(d=>[...p,d]));break}}return o}function Rg(e,t){let r=[];for(let n=0;n<e.length;n+=t)r.push(e.slice(n,n+t));return r}function Nc(e){let t=e.columnTypes.map(r=>{switch(r){case T.Bytes:return n=>Array.isArray(n)?new Uint8Array(n):n;default:return n=>n}});return e.rows.map(r=>r.map((n,i)=>t[i](n)).reduce((n,i,o)=>{let s=e.columnNames[o].split("."),a=n;for(let l=0;l<s.length;l++){let c=s[l];l===s.length-1?a[c]=i:(a[c]===void 0&&(a[c]={}),a=a[c])}return n},{}))}function _c(e){let r=e.columnTypes.map(n=>Dc(n)).map(n=>{switch(n){case"bytes":return i=>Array.isArray(i)?new Uint8Array(i):i;case"int":return i=>i===null?null:typeof i=="number"?i:parseInt(`${i}`,10);case"bigint":return i=>i===null?null:typeof i=="bigint"?i:BigInt(`${i}`);case"json":return i=>typeof i=="string"?JSON.parse(i):i;case"bool":return i=>typeof i=="string"?i==="true"||i==="1":typeof i=="number"?i===1:i;default:return i=>i}});return{columns:e.columnNames,types:e.columnTypes.map(n=>Dc(n)),rows:e.rows.map(n=>n.map((i,o)=>r[o](i)))}}function Dc(e){switch(e){case T.Int32:return"int";case T.Int64:return"bigint";case T.Float:return"float";case T.Double:return"double";case T.Text:return"string";case T.Enum:return"enum";case T.Bytes:return"bytes";case T.Boolean:return"bool";case T.Character:return"char";case T.Numeric:return"decimal";case T.Json:return"json";case T.Uuid:return"uuid";case T.DateTime:return"datetime";case T.Date:return"date";case T.Time:return"time";case T.Int32Array:return"int-array";case T.Int64Array:return"bigint-array";case T.FloatArray:return"float-array";case T.DoubleArray:return"double-array";case T.TextArray:return"string-array";case T.EnumArray:return"string-array";case T.BytesArray:return"bytes-array";case T.BooleanArray:return"bool-array";case T.CharacterArray:return"char-array";case T.NumericArray:return"decimal-array";case T.JsonArray:return"json-array";case T.UuidArray:return"uuid-array";case T.DateTimeArray:return"datetime-array";case T.DateArray:return"date-array";case T.TimeArray:return"time-array";case T.UnknownNumber:return"unknown";case T.Set:return"string";default:F(e,`Unexpected column type: ${e}`)}}function Mc(e,t,r){if(!t.every(n=>No(e,n))){let n=Ig(e,r),i=kg(r);throw new me(n,i,r.context)}}function No(e,t){switch(t.type){case"rowCountEq":return Array.isArray(e)?e.length===t.args:e===null?t.args===0:t.args===1;case"rowCountNeq":return Array.isArray(e)?e.length!==t.args:e===null?t.args!==0:t.args!==1;case"affectedRowCountEq":return e===t.args;case"never":return!1;default:F(t,`Unknown rule type: ${t.type}`)}}function Ig(e,t){switch(t.error_identifier){case"RELATION_VIOLATION":return`The change you are trying to make would violate the required relation '${t.context.relation}' between the \`${t.context.modelA}\` and \`${t.context.modelB}\` models.`;case"MISSING_RECORD":return`An operation failed because it depends on one or more records that were required but not found. No record was found for ${t.context.operation}.`;case"MISSING_RELATED_RECORD":{let r=t.context.neededFor?` (needed to ${t.context.neededFor})`:"";return`An operation failed because it depends on one or more records that were required but not found. No '${t.context.model}' record${r} was found for ${t.context.operation} on ${t.context.relationType} relation '${t.context.relation}'.`}case"INCOMPLETE_CONNECT_INPUT":return`An operation failed because it depends on one or more records that were required but not found. Expected ${t.context.expectedRows} records to be connected, found only ${Array.isArray(e)?e.length:e}.`;case"INCOMPLETE_CONNECT_OUTPUT":return`The required connected records were not found. Expected ${t.context.expectedRows} records to be connected after connect operation on ${t.context.relationType} relation '${t.context.relation}', found ${Array.isArray(e)?e.length:e}.`;case"RECORDS_NOT_CONNECTED":return`The records for relation \`${t.context.relation}\` between the \`${t.context.parent}\` and \`${t.context.child}\` models are not connected.`;default:F(t,`Unknown error identifier: ${t}`)}}function kg(e){switch(e.error_identifier){case"RELATION_VIOLATION":return"P2014";case"RECORDS_NOT_CONNECTED":return"P2017";case"INCOMPLETE_CONNECT_OUTPUT":return"P2018";case"MISSING_RECORD":case"MISSING_RELATED_RECORD":case"INCOMPLETE_CONNECT_INPUT":return"P2025";default:F(e,`Unknown error identifier: ${e}`)}}var kr=class e{#e;#t;#r;#n=new Hn;#o;#i;#c;#s;#l;constructor({transactionManager:t,placeholderValues:r,onQuery:n,tracingHelper:i,serializer:o,rawSerializer:s,provider:a,connectionInfo:l}){this.#e=t,this.#t=r,this.#r=n,this.#o=i,this.#i=o,this.#c=s??o,this.#s=a,this.#l=l}static forSql(t){return new e({transactionManager:t.transactionManager,placeholderValues:t.placeholderValues,onQuery:t.onQuery,tracingHelper:t.tracingHelper,serializer:Nc,rawSerializer:_c,provider:t.provider,connectionInfo:t.connectionInfo})}async run(t,r){let{value:n}=await this.interpretNode(t,r,this.#t,this.#n.snapshot(r.provider)).catch(i=>vl(i));return n}async interpretNode(t,r,n,i){switch(t.type){case"value":return{value:Ee(t.args,n,i)};case"seq":{let o;for(let s of t.args)o=await this.interpretNode(s,r,n,i);return o??{value:void 0}}case"get":return{value:n[t.args.name]};case"let":{let o=Object.create(n);for(let s of t.args.bindings){let{value:a}=await this.interpretNode(s.expr,r,o,i);o[s.name]=a}return this.interpretNode(t.args.expr,r,o,i)}case"getFirstNonEmpty":{for(let o of t.args.names){let s=n[o];if(!Fc(s))return{value:s}}return{value:[]}}case"concat":{let o=await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i).then(a=>a.value)));return{value:o.length>0?o.reduce((s,a)=>s.concat(Ir(a)),[]):[]}}case"sum":{let o=await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i).then(a=>a.value)));return{value:o.length>0?o.reduce((s,a)=>Ce(s)+Ce(a)):0}}case"execute":{let o=Do(t.args,n,i,this.#a()),s=0;for(let a of o)s+=await this.#u(a,r,()=>r.executeRaw(a));return{value:s}}case"query":{let o=Do(t.args,n,i,this.#a()),s;for(let a of o){let l=await this.#u(a,r,()=>r.queryRaw(a));s===void 0?s=l:(s.rows.push(...l.rows),s.lastInsertId=l.lastInsertId)}return{value:t.args.type==="rawSql"?this.#c(s):this.#i(s),lastInsertId:s?.lastInsertId}}case"reverse":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args,r,n,i);return{value:Array.isArray(o)?o.reverse():o,lastInsertId:s}}case"unique":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args,r,n,i);if(!Array.isArray(o))return{value:o,lastInsertId:s};if(o.length>1)throw new Error(`Expected zero or one element, got ${o.length}`);return{value:o[0]??null,lastInsertId:s}}case"required":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args,r,n,i);if(Fc(o))throw new Error("Required value is empty");return{value:o,lastInsertId:s}}case"mapField":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.records,r,n,i);return{value:$c(o,t.args.field),lastInsertId:s}}case"join":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.parent,r,n,i);if(o===null)return{value:null,lastInsertId:s};let a=await Promise.all(t.args.children.map(async l=>({joinExpr:l,childRecords:(await this.interpretNode(l.child,r,n,i)).value})));return{value:Og(o,a),lastInsertId:s}}case"transaction":{if(!this.#e.enabled)return this.interpretNode(t.args,r,n,i);let o=this.#e.manager,s=await o.startTransaction(),a=o.getTransaction(s,"query");try{let l=await this.interpretNode(t.args,a,n,i);return await o.commitTransaction(s.id),l}catch(l){throw await o.rollbackTransaction(s.id),l}}case"dataMap":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i);return{value:Pl(o,t.args.structure,t.args.enums),lastInsertId:s}}case"validate":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i);return Mc(o,t.args.rules,t.args),{value:o,lastInsertId:s}}case"if":{let{value:o}=await this.interpretNode(t.args.value,r,n,i);return No(o,t.args.rule)?await this.interpretNode(t.args.then,r,n,i):await this.interpretNode(t.args.else,r,n,i)}case"unit":return{value:void 0};case"diff":{let{value:o}=await this.interpretNode(t.args.from,r,n,i),{value:s}=await this.interpretNode(t.args.to,r,n,i),a=new Set(Ir(s));return{value:Ir(o).filter(l=>!a.has(l))}}case"distinctBy":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i),a=new Set,l=[];for(let c of Ir(o)){let u=Gn(c,t.args.fields);a.has(u)||(a.add(u),l.push(c))}return{value:l,lastInsertId:s}}case"paginate":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i),a=Ir(o),l=t.args.pagination.linkingFields;if(l!==null){let c=new Map;for(let p of a){let d=Gn(p,l);c.has(d)||c.set(d,[]),c.get(d).push(p)}let u=Array.from(c.entries());return u.sort(([p],[d])=>p<d?-1:p>d?1:0),{value:u.flatMap(([,p])=>Lc(p,t.args.pagination)),lastInsertId:s}}return{value:Lc(a,t.args.pagination),lastInsertId:s}}case"initializeRecord":{let{lastInsertId:o}=await this.interpretNode(t.args.expr,r,n,i),s={};for(let[a,l]of Object.entries(t.args.fields))s[a]=Dg(l,o,n,i);return{value:s,lastInsertId:o}}case"mapRecord":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i),a=o===null?{}:_o(o);for(let[l,c]of Object.entries(t.args.fields))a[l]=Ng(c,a[l],n,i);return{value:a,lastInsertId:s}}default:F(t,`Unexpected node type: ${t.type}`)}}#a(){return this.#l?.maxBindValues!==void 0?this.#l.maxBindValues:this.#p()}#p(){if(this.#s!==void 0)switch(this.#s){case"cockroachdb":case"postgres":case"postgresql":case"prisma+postgres":return 32766;case"mysql":return 65535;case"sqlite":return 999;case"sqlserver":return 2098;case"mongodb":return;default:F(this.#s,`Unexpected provider: ${this.#s}`)}}#u(t,r,n){return Ln({query:t,execute:n,provider:this.#s??r.provider,tracingHelper:this.#o,onQuery:this.#r})}};function Fc(e){return Array.isArray(e)?e.length===0:e==null}function Ir(e){return Array.isArray(e)?e:[e]}function Ce(e){if(typeof e=="number")return e;if(typeof e=="string")return Number(e);throw new Error(`Expected number, got ${typeof e}`)}function _o(e){if(typeof e=="object"&&e!==null)return e;throw new Error(`Expected object, got ${typeof e}`)}function $c(e,t){return Array.isArray(e)?e.map(r=>$c(r,t)):typeof e=="object"&&e!==null?e[t]??null:e}function Og(e,t){for(let{joinExpr:r,childRecords:n}of t){let i=r.on.map(([a])=>a),o=r.on.map(([,a])=>a),s={};for(let a of Array.isArray(e)?e:[e]){let l=_o(a),c=Gn(l,i);s[c]||(s[c]=[]),s[c].push(l),r.isRelationUnique?l[r.parentField]=null:l[r.parentField]=[]}for(let a of Array.isArray(n)?n:[n]){if(a===null)continue;let l=Gn(_o(a),o);for(let c of s[l]??[])r.isRelationUnique?c[r.parentField]=a:c[r.parentField].push(a)}}return e}function Lc(e,{cursor:t,skip:r,take:n}){let i=t!==null?e.findIndex(a=>Er(a,t)):0;if(i===-1)return[];let o=i+(r??0),s=n!==null?o+n:e.length;return e.slice(o,s)}function Gn(e,t){return JSON.stringify(t.map(r=>e[r]))}function Dg(e,t,r,n){switch(e.type){case"value":return Ee(e.value,r,n);case"lastInsertId":return t;default:F(e,`Unexpected field initializer type: ${e.type}`)}}function Ng(e,t,r,n){switch(e.type){case"set":return Ee(e.value,r,n);case"add":return Ce(t)+Ce(Ee(e.value,r,n));case"subtract":return Ce(t)-Ce(Ee(e.value,r,n));case"multiply":return Ce(t)*Ce(Ee(e.value,r,n));case"divide":{let i=Ce(t),o=Ce(Ee(e.value,r,n));return o===0?null:i/o}default:F(e,`Unexpected field operation type: ${e.type}`)}}async function _g(){return globalThis.crypto??await import("node:crypto")}async function Vc(){return(await _g()).randomUUID()}var de=class extends me{name="TransactionManagerError";constructor(t,r){super("Transaction API error: "+t,"P2028",r)}},Or=class extends de{constructor(){super("Transaction not found. Transaction ID is invalid, refers to an old closed transaction Prisma doesn't have information about anymore, or was obtained before disconnecting.")}},Wn=class extends de{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a committed transaction.`)}},Jn=class extends de{constructor(t){super(`Transaction is being closed: A ${t} cannot be executed on a closing transaction.`)}},Kn=class extends de{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a transaction that was rolled back.`)}},zn=class extends de{constructor(){super("Unable to start a transaction in the given time.")}},Yn=class extends de{constructor(t,{timeout:r,timeTaken:n}){super(`A ${t} cannot be executed on an expired transaction. The timeout for this transaction was ${r} ms, however ${n} ms passed since the start of the transaction. Consider increasing the interactive transaction timeout or doing less work in the transaction`,{operation:t,timeout:r,timeTaken:n})}},Mt=class extends de{constructor(t){super(`Internal Consistency Error: ${t}`)}},Zn=class extends de{constructor(t){super(`Invalid isolation level: ${t}`,{isolationLevel:t})}};var Mg=100,Dr=V("prisma:client:transactionManager"),Fg=()=>({sql:"COMMIT",args:[],argTypes:[]}),Lg=()=>({sql:"ROLLBACK",args:[],argTypes:[]}),$g=()=>({sql:'-- Implicit "COMMIT" query via underlying driver',args:[],argTypes:[]}),Vg=()=>({sql:'-- Implicit "ROLLBACK" query via underlying driver',args:[],argTypes:[]}),Nr=class{transactions=new Map;closedTransactions=[];driverAdapter;transactionOptions;tracingHelper;#e;#t;constructor({driverAdapter:t,transactionOptions:r,tracingHelper:n,onQuery:i,provider:o}){this.driverAdapter=t,this.transactionOptions=r,this.tracingHelper=n,this.#e=i,this.#t=o}async startTransaction(t){return await this.tracingHelper.runInChildSpan("start_transaction",()=>this.#r(t))}async#r(t){let r=t!==void 0?this.validateOptions(t):this.transactionOptions,n={id:await Vc(),status:"waiting",timer:void 0,timeout:r.timeout,startedAt:Date.now(),transaction:void 0};this.transactions.set(n.id,n);let i=!1,o=setTimeout(()=>i=!0,r.maxWait);switch(n.transaction=await this.driverAdapter.startTransaction(r.isolationLevel),clearTimeout(o),n.status){case"waiting":if(i)throw await this.closeTransaction(n,"timed_out"),new zn;return n.status="running",n.timer=this.startTransactionTimeout(n.id,r.timeout),{id:n.id};case"closing":case"timed_out":case"running":case"committed":case"rolled_back":throw new Mt(`Transaction in invalid state ${n.status} although it just finished startup.`);default:F(n.status,"Unknown transaction status.")}}async commitTransaction(t){return await this.tracingHelper.runInChildSpan("commit_transaction",async()=>{let r=this.getActiveTransaction(t,"commit");await this.closeTransaction(r,"committed")})}async rollbackTransaction(t){return await this.tracingHelper.runInChildSpan("rollback_transaction",async()=>{let r=this.getActiveTransaction(t,"rollback");await this.closeTransaction(r,"rolled_back")})}getTransaction(t,r){let n=this.getActiveTransaction(t.id,r);if(!n.transaction)throw new Or;return n.transaction}getActiveTransaction(t,r){let n=this.transactions.get(t);if(!n){let i=this.closedTransactions.find(o=>o.id===t);if(i)switch(Dr("Transaction already closed.",{transactionId:t,status:i.status}),i.status){case"closing":case"waiting":case"running":throw new Mt("Active transaction found in closed transactions list.");case"committed":throw new Wn(r);case"rolled_back":throw new Kn(r);case"timed_out":throw new Yn(r,{timeout:i.timeout,timeTaken:Date.now()-i.startedAt})}else throw Dr("Transaction not found.",t),new Or}if(n.status==="closing")throw new Jn(r);if(["committed","rolled_back","timed_out"].includes(n.status))throw new Mt("Closed transaction found in active transactions map.");return n}async cancelAllTransactions(){await Promise.allSettled([...this.transactions.values()].map(t=>this.closeTransaction(t,"rolled_back")))}startTransactionTimeout(t,r){let n=Date.now();return setTimeout(async()=>{Dr("Transaction timed out.",{transactionId:t,timeoutStartedAt:n,timeout:r});let i=this.transactions.get(t);i&&["running","waiting"].includes(i.status)?await this.closeTransaction(i,"timed_out"):Dr("Transaction already committed or rolled back when timeout happened.",t)},r)}async closeTransaction(t,r){Dr("Closing transaction.",{transactionId:t.id,status:r}),t.status="closing";try{if(t.transaction&&r==="committed")if(t.transaction.options.usePhantomQuery)await this.#n($g(),t.transaction,()=>t.transaction.commit());else{let n=Fg();await this.#n(n,t.transaction,()=>t.transaction.executeRaw(n)),await t.transaction.commit()}else if(t.transaction)if(t.transaction.options.usePhantomQuery)await this.#n(Vg(),t.transaction,()=>t.transaction.rollback());else{let n=Lg();await this.#n(n,t.transaction,()=>t.transaction.executeRaw(n)),await t.transaction.rollback()}}finally{t.status=r,clearTimeout(t.timer),t.timer=void 0,this.transactions.delete(t.id),this.closedTransactions.push(t),this.closedTransactions.length>Mg&&this.closedTransactions.shift()}}validateOptions(t){if(!t.timeout)throw new de("timeout is required");if(!t.maxWait)throw new de("maxWait is required");if(t.isolationLevel==="SNAPSHOT")throw new Zn(t.isolationLevel);return{...t,timeout:t.timeout,maxWait:t.maxWait}}#n(t,r,n){return Ln({query:t,execute:n,provider:this.#t??r.provider,tracingHelper:this.tracingHelper,onQuery:this.#e})}};var Xn="6.14.0-dev.15";var ei=class e{#e;#t;#r;#n;constructor(t,r,n){this.#e=t,this.#t=r,this.#r=n,this.#n=r.getConnectionInfo?.()}static async connect(t){let r,n;try{r=await t.driverAdapterFactory.connect(),n=new Nr({driverAdapter:r,transactionOptions:t.transactionOptions,tracingHelper:t.tracingHelper,onQuery:t.onQuery,provider:t.provider})}catch(i){throw await r?.dispose(),i}return new e(t,r,n)}getConnectionInfo(){let t=this.#n??{supportsRelationJoins:!1};return Promise.resolve({provider:this.#t.provider,connectionInfo:t})}async execute({plan:t,placeholderValues:r,transaction:n,batchIndex:i}){let o=n?this.#r.getTransaction(n,i!==void 0?"batch query":"query"):this.#t;return await kr.forSql({transactionManager:n?{enabled:!1}:{enabled:!0,manager:this.#r},placeholderValues:r,onQuery:this.#e.onQuery,tracingHelper:this.#e.tracingHelper,provider:this.#e.provider,connectionInfo:this.#n}).run(t,o)}async startTransaction(t){return{...await this.#r.startTransaction(t),payload:void 0}}async commitTransaction(t){await this.#r.commitTransaction(t.id)}async rollbackTransaction(t){await this.#r.rollbackTransaction(t.id)}async disconnect(){try{await this.#r.cancelAllTransactions()}finally{await this.#t.dispose()}}};var ti=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function qc(e,t,r){let n=r||{},i=n.encode||encodeURIComponent;if(typeof i!="function")throw new TypeError("option encode is invalid");if(!ti.test(e))throw new TypeError("argument name is invalid");let o=i(t);if(o&&!ti.test(o))throw new TypeError("argument val is invalid");let s=e+"="+o;if(n.maxAge!==void 0&&n.maxAge!==null){let a=n.maxAge-0;if(Number.isNaN(a)||!Number.isFinite(a))throw new TypeError("option maxAge is invalid");s+="; Max-Age="+Math.floor(a)}if(n.domain){if(!ti.test(n.domain))throw new TypeError("option domain is invalid");s+="; Domain="+n.domain}if(n.path){if(!ti.test(n.path))throw new TypeError("option path is invalid");s+="; Path="+n.path}if(n.expires){if(!Ug(n.expires)||Number.isNaN(n.expires.valueOf()))throw new TypeError("option expires is invalid");s+="; Expires="+n.expires.toUTCString()}if(n.httpOnly&&(s+="; HttpOnly"),n.secure&&(s+="; Secure"),n.priority)switch(typeof n.priority=="string"?n.priority.toLowerCase():n.priority){case"low":{s+="; Priority=Low";break}case"medium":{s+="; Priority=Medium";break}case"high":{s+="; Priority=High";break}default:throw new TypeError("option priority is invalid")}if(n.sameSite)switch(typeof n.sameSite=="string"?n.sameSite.toLowerCase():n.sameSite){case!0:{s+="; SameSite=Strict";break}case"lax":{s+="; SameSite=Lax";break}case"strict":{s+="; SameSite=Strict";break}case"none":{s+="; SameSite=None";break}default:throw new TypeError("option sameSite is invalid")}return n.partitioned&&(s+="; Partitioned"),s}function Ug(e){return Object.prototype.toString.call(e)==="[object Date]"||e instanceof Date}function Uc(e,t){let r=(e||"").split(";").filter(l=>typeof l=="string"&&!!l.trim()),n=r.shift()||"",i=jg(n),o=i.name,s=i.value;try{s=t?.decode===!1?s:(t?.decode||decodeURIComponent)(s)}catch{}let a={name:o,value:s};for(let l of r){let c=l.split("="),u=(c.shift()||"").trimStart().toLowerCase(),p=c.join("=");switch(u){case"expires":{a.expires=new Date(p);break}case"max-age":{a.maxAge=Number.parseInt(p,10);break}case"secure":{a.secure=!0;break}case"httponly":{a.httpOnly=!0;break}case"samesite":{a.sameSite=p;break}default:a[u]=p}}return a}function jg(e){let t="",r="",n=e.split("=");return n.length>1?(t=n.shift(),r=n.join("=")):r=e,{name:t,value:r}}function Ft({inlineDatasources:e,overrideDatasources:t,env:r,clientVersion:n}){let i,o=Object.keys(e)[0],s=e[o]?.url,a=t[o]?.url;if(o===void 0?i=void 0:a?i=a:s?.value?i=s.value:s?.fromEnvVar&&(i=r[s.fromEnvVar]),s?.fromEnvVar!==void 0&&i===void 0)throw new O(`error: Environment variable not found: ${s.fromEnvVar}.`,n);if(i===void 0)throw new O("error: Missing URL environment variable, value, or override.",n);return i}var ri=class extends Error{clientVersion;cause;constructor(t,r){super(t),this.clientVersion=r.clientVersion,this.cause=r.cause}get[Symbol.toStringTag](){return this.name}};var ce=class extends ri{isRetryable;constructor(t,r){super(t,r),this.isRetryable=r.isRetryable??!0}};function S(e,t){return{...e,isRetryable:t}}var it=class extends ce{name="InvalidDatasourceError";code="P6001";constructor(t,r){super(t,S(r,!1))}};b(it,"InvalidDatasourceError");function ni(e){let t={clientVersion:e.clientVersion},r=Object.keys(e.inlineDatasources)[0],n=Ft({inlineDatasources:e.inlineDatasources,overrideDatasources:e.overrideDatasources,clientVersion:e.clientVersion,env:{...e.env,...typeof process<"u"?process.env:{}}}),i;try{i=new URL(n)}catch{throw new it(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\``,t)}let{protocol:o,searchParams:s}=i;if(o!=="prisma:"&&o!==Xr)throw new it(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``,t);let a=s.get("api_key");if(a===null||a.length<1)throw new it(`Error validating datasource \`${r}\`: the URL must contain a valid API key`,t);let l=xi(i)?"http:":"https:",c=new URL(i.href.replace(o,l));return{apiKey:a,url:c}}var jc=j(ps()),Lt=class{apiKey;tracingHelper;logLevel;logQueries;engineHash;constructor({apiKey:t,tracingHelper:r,logLevel:n,logQueries:i,engineHash:o}){this.apiKey=t,this.tracingHelper=r,this.logLevel=n,this.logQueries=i,this.engineHash=o}build({traceparent:t,transactionId:r}={}){let n={Accept:"application/json",Authorization:`Bearer ${this.apiKey}`,"Content-Type":"application/json","Prisma-Engine-Hash":this.engineHash,"Prisma-Engine-Version":jc.enginesVersion};this.tracingHelper.isEnabled()&&(n.traceparent=t??this.tracingHelper.getTraceParent()),r&&(n["X-Transaction-Id"]=r);let i=this.#e();return i.length>0&&(n["X-Capture-Telemetry"]=i.join(", ")),n}#e(){let t=[];return this.tracingHelper.isEnabled()&&t.push("tracing"),this.logLevel&&t.push(this.logLevel),this.logQueries&&t.push("query"),t}};function Bg(e){return e[0]*1e3+e[1]/1e6}function $t(e){return new Date(Bg(e))}var Bc=V("prisma:client:clientEngine:remoteExecutor"),ii=class{#e;#t;#r;#n;#o;constructor(t){this.#e=t.clientVersion,this.#n=t.logEmitter,this.#o=t.tracingHelper;let{url:r,apiKey:n}=ni({clientVersion:t.clientVersion,env:t.env,inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources});this.#r=new Mo(r),this.#t=new Lt({apiKey:n,engineHash:t.clientVersion,logLevel:t.logLevel,logQueries:t.logQueries,tracingHelper:t.tracingHelper})}async getConnectionInfo(){return await this.#i({path:"/connection-info",method:"GET"})}async execute({plan:t,placeholderValues:r,batchIndex:n,model:i,operation:o,transaction:s,customFetch:a}){return(await this.#i({path:s?`/transaction/${s.id}/query`:"/query",method:"POST",body:{model:i,operation:o,plan:t,params:r},batchRequestIdx:n,fetch:a})).data}async startTransaction(t){return{...await this.#i({path:"/transaction/start",method:"POST",body:t}),payload:void 0}}async commitTransaction(t){await this.#i({path:`/transaction/${t.id}/commit`,method:"POST"})}async rollbackTransaction(t){await this.#i({path:`/transaction/${t.id}/rollback`,method:"POST"})}disconnect(){return Promise.resolve()}async#i({path:t,method:r,body:n,fetch:i=globalThis.fetch,batchRequestIdx:o}){let s=await this.#r.request({method:r,path:t,headers:this.#t.build(),body:n,fetch:i});s.ok||await this.#c(s,o);let a=await s.json();return typeof a.extensions=="object"&&a.extensions!==null&&this.#s(a.extensions),a}async#c(t,r){let n=t.headers.get("Prisma-Error-Code"),i=await t.text(),o,s=i;try{o=JSON.parse(i)}catch{o={}}typeof o.code=="string"&&(n=o.code),typeof o.error=="string"?s=o.error:typeof o.message=="string"?s=o.message:typeof o.InvalidRequestError=="object"&&o.InvalidRequestError!==null&&typeof o.InvalidRequestError.reason=="string"&&(s=o.InvalidRequestError.reason),s=s||`HTTP ${t.status}: ${t.statusText}`;let a=typeof o.meta=="object"&&o.meta!==null?o.meta:o;throw new U(s,{clientVersion:this.#e,code:n??"P6000",batchRequestIdx:r,meta:a})}#s(t){if(t.logs)for(let r of t.logs)this.#l(r);t.traces&&this.#o.dispatchEngineSpans(t.traces)}#l(t){switch(t.level){case"debug":case"trace":Bc(t);break;case"error":case"warn":case"info":{this.#n.emit(t.level,{timestamp:$t(t.timestamp),message:t.attributes.message??"",target:t.target});break}case"query":{this.#n.emit("query",{query:t.attributes.query??"",timestamp:$t(t.timestamp),duration:t.attributes.duration_ms??0,params:t.attributes.params??"",target:t.target});break}default:throw new Error(`Unexpected log level: ${t.level}`)}}},Mo=class{#e;#t;#r;constructor(t){this.#e=t,this.#t=new Map}async request({method:t,path:r,headers:n,body:i,fetch:o}){let s=new URL(r,this.#e),a=this.#n(s);a&&(n.Cookie=a),this.#r&&(n["Accelerate-Query-Engine-Jwt"]=this.#r);let l=await o(s,{method:t,body:i!==void 0?JSON.stringify(i):void 0,headers:n});return Bc(t,s,l.status,l.statusText),this.#r=l.headers.get("Accelerate-Query-Engine-Jwt")??void 0,this.#o(s,l),l}#n(t){let r=[],n=new Date;for(let[i,o]of this.#t){if(o.expires&&o.expires<n){this.#t.delete(i);continue}let s=o.domain??t.hostname,a=o.path??"/";t.hostname.endsWith(s)&&t.pathname.startsWith(a)&&r.push(qc(o.name,o.value))}return r.length>0?r.join("; "):void 0}#o(t,r){let n=r.headers.getSetCookie?.()||[];if(n.length===0){let i=r.headers.get("Set-Cookie");i&&n.push(i)}for(let i of n){let o=Uc(i),s=o.domain??t.hostname,a=o.path??"/",l=`${s}:${a}:${o.name}`;this.#t.set(l,{name:o.name,value:o.value,domain:s,path:a,expires:o.expires})}}};var Fo,Qc={async loadQueryCompiler(e){let{clientVersion:t,compilerWasm:r}=e;if(r===void 0)throw new O("WASM query compiler was unexpectedly `undefined`",t);return Fo===void 0&&(Fo=(async()=>{let n=await r.getRuntime(),i=await r.getQueryCompilerWasmModule();if(i==null)throw new O("The loaded wasm module was unexpectedly `undefined` or `null` once loaded",t);let o={"./query_compiler_bg.js":n},s=new WebAssembly.Instance(i,o),a=s.exports.__wbindgen_start;return n.__wbg_set_wasm(s.exports),a(),n.QueryCompiler})()),await Fo}};var Hc="P2038",_r=V("prisma:client:clientEngine"),Wc=globalThis;Wc.PRISMA_WASM_PANIC_REGISTRY={set_message(e){throw new ne(e,Xn)}};var Vt=class{name="ClientEngine";#e;#t={type:"disconnected"};#r;#n;config;datamodel;logEmitter;logQueries;logLevel;tracingHelper;#o;constructor(t,r,n){if(!t.previewFeatures?.includes("driverAdapters")&&!r)throw new O("EngineType `client` requires the driverAdapters preview feature to be enabled.",t.clientVersion,Hc);if(r)this.#n={remote:!0};else if(t.adapter)this.#n={remote:!1,driverAdapterFactory:t.adapter},_r("Using driver adapter: %O",t.adapter);else throw new O("Missing configured driver adapter. Engine type `client` requires an active driver adapter. Please check your PrismaClient initialization code.",t.clientVersion,Hc);this.#r=n??Qc,this.config=t,this.logQueries=t.logQueries??!1,this.logLevel=t.logLevel??"error",this.logEmitter=t.logEmitter,this.datamodel=t.inlineSchema,this.tracingHelper=t.tracingHelper,t.enableDebugLogs&&(this.logLevel="debug"),this.logQueries&&(this.#o=i=>{this.logEmitter.emit("query",{...i,params:xr(i.params),target:"ClientEngine"})})}applyPendingMigrations(){throw new Error("Cannot call applyPendingMigrations on engine type client.")}async#i(){switch(this.#t.type){case"disconnected":{let t=this.tracingHelper.runInChildSpan("connect",async()=>{let r,n;try{r=await this.#c(),n=await this.#s(r)}catch(o){throw this.#t={type:"disconnected"},n?.free(),await r?.disconnect(),o}let i={executor:r,queryCompiler:n};return this.#t={type:"connected",engine:i},i});return this.#t={type:"connecting",promise:t},await t}case"connecting":return await this.#t.promise;case"connected":return this.#t.engine;case"disconnecting":return await this.#t.promise,await this.#i()}}async#c(){return this.#n.remote?new ii({clientVersion:this.config.clientVersion,env:this.config.env,inlineDatasources:this.config.inlineDatasources,logEmitter:this.logEmitter,logLevel:this.logLevel,logQueries:this.logQueries,overrideDatasources:this.config.overrideDatasources,tracingHelper:this.tracingHelper}):await ei.connect({driverAdapterFactory:this.#n.driverAdapterFactory,tracingHelper:this.tracingHelper,transactionOptions:{...this.config.transactionOptions,isolationLevel:this.#d(this.config.transactionOptions.isolationLevel)},onQuery:this.#o,provider:this.config.activeProvider})}async#s(t){let r=this.#e;r===void 0&&(r=await this.#r.loadQueryCompiler(this.config),this.#e=r);let{provider:n,connectionInfo:i}=await t.getConnectionInfo();try{return this.#u(()=>new r({datamodel:this.datamodel,provider:n,connectionInfo:i}),void 0,!1)}catch(o){throw this.#l(o)}}#l(t){if(t instanceof ne)return t;try{let r=JSON.parse(t.message);return new O(r.message,this.config.clientVersion,r.error_code)}catch{return t}}#a(t,r){if(t instanceof O)return t;if(t.code==="GenericFailure"&&t.message?.startsWith("PANIC:"))return new ne(Gc(this,t.message,r),this.config.clientVersion);if(t instanceof me)return new U(t.message,{code:t.code,meta:t.meta,clientVersion:this.config.clientVersion});try{let n=JSON.parse(t);return new X(`${n.message}
72
- ${n.backtrace}`,{clientVersion:this.config.clientVersion})}catch{return t}}#p(t){return t instanceof ne?t:typeof t.message=="string"&&typeof t.code=="string"?new U(t.message,{code:t.code,meta:t.meta,clientVersion:this.config.clientVersion}):t}#u(t,r,n=!0){let i=Wc.PRISMA_WASM_PANIC_REGISTRY.set_message,o;global.PRISMA_WASM_PANIC_REGISTRY.set_message=s=>{o=s};try{return t()}finally{if(global.PRISMA_WASM_PANIC_REGISTRY.set_message=i,o)throw this.#e=void 0,n&&this.stop().catch(s=>_r("failed to disconnect:",s)),new ne(Gc(this,o,r),this.config.clientVersion)}}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the client engine, it is only relevant and implemented for the binary engine. Please add your event listener to the `process` object directly instead.')}async start(){await this.#i()}async stop(){switch(this.#t.type){case"disconnected":return;case"connecting":return await this.#t.promise,await this.stop();case"connected":{let t=this.#t.engine,r=this.tracingHelper.runInChildSpan("disconnect",async()=>{try{await t.executor.disconnect(),t.queryCompiler.free()}finally{this.#t={type:"disconnected"}}});return this.#t={type:"disconnecting",promise:r},await r}case"disconnecting":return await this.#t.promise}}version(){return"unknown"}async transaction(t,r,n){let i,{executor:o}=await this.#i();try{if(t==="start"){let s=n;i=await o.startTransaction({...s,isolationLevel:this.#d(s.isolationLevel)})}else if(t==="commit"){let s=n;await o.commitTransaction(s)}else if(t==="rollback"){let s=n;await o.rollbackTransaction(s)}else ge(t,"Invalid transaction action.")}catch(s){throw this.#a(s)}return i?{id:i.id,payload:void 0}:void 0}async request(t,{interactiveTransaction:r,customDataProxyFetch:n}){_r("sending request");let i=JSON.stringify(t),{executor:o,queryCompiler:s}=await this.#i().catch(l=>{throw this.#a(l,i)}),a;try{a=this.#u(()=>s.compile(i),i)}catch(l){throw this.#p(l)}try{_r("query plan created",a);let l={},c=await o.execute({plan:a,model:t.modelName,operation:t.action,placeholderValues:l,transaction:r,batchIndex:void 0,customFetch:n?.(globalThis.fetch)});return _r("query plan executed"),{data:{[t.action]:c}}}catch(l){throw this.#a(l,i)}}async requestBatch(t,{transaction:r,customDataProxyFetch:n}){if(t.length===0)return[];let i=t[0].action,o=JSON.stringify(It(t,r)),{executor:s,queryCompiler:a}=await this.#i().catch(c=>{throw this.#a(c,o)}),l;try{l=a.compileBatch(o)}catch(c){throw this.#p(c)}try{let c;r?.kind==="itx"&&(c=r.options);let u={};switch(l.type){case"multi":{if(r?.kind!=="itx"){let m=r?.options.isolationLevel?{...this.config.transactionOptions,isolationLevel:r.options.isolationLevel}:this.config.transactionOptions;c=await this.transaction("start",{},m)}let p=[],d=!1;for(let[m,h]of l.plans.entries())try{let g=await s.execute({plan:h,placeholderValues:u,model:t[m].modelName,operation:t[m].action,batchIndex:m,transaction:c,customFetch:n?.(globalThis.fetch)});p.push({data:{[t[m].action]:g}})}catch(g){p.push(g),d=!0;break}return c!==void 0&&r?.kind!=="itx"&&(d?await this.transaction("rollback",{},c):await this.transaction("commit",{},c)),p}case"compacted":{if(!t.every(m=>m.action===i))throw new Error("All queries in a batch must have the same action");let p=await s.execute({plan:l.plan,placeholderValues:u,model:t[0].modelName,operation:i,batchIndex:void 0,transaction:c,customFetch:n?.(globalThis.fetch)});return this.#m(p,l,i)}}}catch(c){throw this.#a(c,o)}}metrics(t){throw new Error("Method not implemented.")}#m(t,r,n){let i=t.map(s=>r.keys.reduce((a,l)=>(a[l]=qe(s[l]),a),{})),o=new Set(r.nestedSelection);return r.arguments.map(s=>{let a=i.findIndex(l=>Er(l,s));if(a===-1)return r.expectNonEmpty?new U("An operation failed because it depends on one or more records that were required but not found",{code:"P2025",clientVersion:this.config.clientVersion}):{data:{[n]:null}};{let l=Object.entries(t[a]).filter(([c])=>o.has(c));return{data:{[n]:Object.fromEntries(l)}}}})}#d(t){switch(t){case void 0:return;case"ReadUncommitted":return"READ UNCOMMITTED";case"ReadCommitted":return"READ COMMITTED";case"RepeatableRead":return"REPEATABLE READ";case"Serializable":return"SERIALIZABLE";case"Snapshot":return"SNAPSHOT";default:throw new U(`Inconsistent column data: Conversion failed: Invalid isolation level \`${t}\``,{code:"P2023",clientVersion:this.config.clientVersion,meta:{providedIsolationLevel:t}})}}};function Gc(e,t,r){return fl({binaryTarget:void 0,title:t,version:e.config.clientVersion,engineVersion:"unknown",database:e.config.activeProvider,query:r})}var qt=class extends ce{name="ForcedRetryError";code="P5001";constructor(t){super("This request must be retried",S(t,!0))}};b(qt,"ForcedRetryError");var ot=class extends ce{name="NotImplementedYetError";code="P5004";constructor(t,r){super(t,S(r,!1))}};b(ot,"NotImplementedYetError");var L=class extends ce{response;constructor(t,r){super(t,r),this.response=r.response;let n=this.response.headers.get("prisma-request-id");if(n){let i=`(The request id was: ${n})`;this.message=this.message+" "+i}}};var st=class extends L{name="SchemaMissingError";code="P5005";constructor(t){super("Schema needs to be uploaded",S(t,!0))}};b(st,"SchemaMissingError");var Lo="This request could not be understood by the server",Mr=class extends L{name="BadRequestError";code="P5000";constructor(t,r,n){super(r||Lo,S(t,!1)),n&&(this.code=n)}};b(Mr,"BadRequestError");var Fr=class extends L{name="HealthcheckTimeoutError";code="P5013";logs;constructor(t,r){super("Engine not started: healthcheck timeout",S(t,!0)),this.logs=r}};b(Fr,"HealthcheckTimeoutError");var Lr=class extends L{name="EngineStartupError";code="P5014";logs;constructor(t,r,n){super(r,S(t,!0)),this.logs=n}};b(Lr,"EngineStartupError");var $r=class extends L{name="EngineVersionNotSupportedError";code="P5012";constructor(t){super("Engine version is not supported",S(t,!1))}};b($r,"EngineVersionNotSupportedError");var $o="Request timed out",Vr=class extends L{name="GatewayTimeoutError";code="P5009";constructor(t,r=$o){super(r,S(t,!1))}};b(Vr,"GatewayTimeoutError");var Qg="Interactive transaction error",qr=class extends L{name="InteractiveTransactionError";code="P5015";constructor(t,r=Qg){super(r,S(t,!1))}};b(qr,"InteractiveTransactionError");var Hg="Request parameters are invalid",Ur=class extends L{name="InvalidRequestError";code="P5011";constructor(t,r=Hg){super(r,S(t,!1))}};b(Ur,"InvalidRequestError");var Vo="Requested resource does not exist",jr=class extends L{name="NotFoundError";code="P5003";constructor(t,r=Vo){super(r,S(t,!1))}};b(jr,"NotFoundError");var qo="Unknown server error",Ut=class extends L{name="ServerError";code="P5006";logs;constructor(t,r,n){super(r||qo,S(t,!0)),this.logs=n}};b(Ut,"ServerError");var Uo="Unauthorized, check your connection string",Br=class extends L{name="UnauthorizedError";code="P5007";constructor(t,r=Uo){super(r,S(t,!1))}};b(Br,"UnauthorizedError");var jo="Usage exceeded, retry again later",Qr=class extends L{name="UsageExceededError";code="P5008";constructor(t,r=jo){super(r,S(t,!0))}};b(Qr,"UsageExceededError");async function Gg(e){let t;try{t=await e.text()}catch{return{type:"EmptyError"}}try{let r=JSON.parse(t);if(typeof r=="string")switch(r){case"InternalDataProxyError":return{type:"DataProxyError",body:r};default:return{type:"UnknownTextError",body:r}}if(typeof r=="object"&&r!==null){if("is_panic"in r&&"message"in r&&"error_code"in r)return{type:"QueryEngineError",body:r};if("EngineNotStarted"in r||"InteractiveTransactionMisrouted"in r||"InvalidRequestError"in r){let n=Object.values(r)[0].reason;return typeof n=="string"&&!["SchemaMissing","EngineVersionNotSupported"].includes(n)?{type:"UnknownJsonError",body:r}:{type:"DataProxyError",body:r}}}return{type:"UnknownJsonError",body:r}}catch{return t===""?{type:"EmptyError"}:{type:"UnknownTextError",body:t}}}async function Hr(e,t){if(e.ok)return;let r={clientVersion:t,response:e},n=await Gg(e);if(n.type==="QueryEngineError")throw new U(n.body.message,{code:n.body.error_code,clientVersion:t});if(n.type==="DataProxyError"){if(n.body==="InternalDataProxyError")throw new Ut(r,"Internal Data Proxy error");if("EngineNotStarted"in n.body){if(n.body.EngineNotStarted.reason==="SchemaMissing")return new st(r);if(n.body.EngineNotStarted.reason==="EngineVersionNotSupported")throw new $r(r);if("EngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,logs:o}=n.body.EngineNotStarted.reason.EngineStartupError;throw new Lr(r,i,o)}if("KnownEngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,error_code:o}=n.body.EngineNotStarted.reason.KnownEngineStartupError;throw new O(i,t,o)}if("HealthcheckTimeout"in n.body.EngineNotStarted.reason){let{logs:i}=n.body.EngineNotStarted.reason.HealthcheckTimeout;throw new Fr(r,i)}}if("InteractiveTransactionMisrouted"in n.body){let i={IDParseError:"Could not parse interactive transaction ID",NoQueryEngineFoundError:"Could not find Query Engine for the specified host and transaction ID",TransactionStartError:"Could not start interactive transaction"};throw new qr(r,i[n.body.InteractiveTransactionMisrouted.reason])}if("InvalidRequestError"in n.body)throw new Ur(r,n.body.InvalidRequestError.reason)}if(e.status===401||e.status===403)throw new Br(r,jt(Uo,n));if(e.status===404)return new jr(r,jt(Vo,n));if(e.status===429)throw new Qr(r,jt(jo,n));if(e.status===504)throw new Vr(r,jt($o,n));if(e.status>=500)throw new Ut(r,jt(qo,n));if(e.status>=400)throw new Mr(r,jt(Lo,n))}function jt(e,t){return t.type==="EmptyError"?e:`${e}: ${JSON.stringify(t)}`}function Jc(e){let t=Math.pow(2,e)*50,r=Math.ceil(Math.random()*t)-Math.ceil(t/2),n=t+r;return new Promise(i=>setTimeout(()=>i(n),n))}var Me="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Kc(e){let t=new TextEncoder().encode(e),r="",n=t.byteLength,i=n%3,o=n-i,s,a,l,c,u;for(let p=0;p<o;p=p+3)u=t[p]<<16|t[p+1]<<8|t[p+2],s=(u&16515072)>>18,a=(u&258048)>>12,l=(u&4032)>>6,c=u&63,r+=Me[s]+Me[a]+Me[l]+Me[c];return i==1?(u=t[o],s=(u&252)>>2,a=(u&3)<<4,r+=Me[s]+Me[a]+"=="):i==2&&(u=t[o]<<8|t[o+1],s=(u&64512)>>10,a=(u&1008)>>4,l=(u&15)<<2,r+=Me[s]+Me[a]+Me[l]+"="),r}function zc(e){if(!!e.generator?.previewFeatures.some(r=>r.toLowerCase().includes("metrics")))throw new O("The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate",e.clientVersion)}var Yc={"@prisma/debug":"workspace:*","@prisma/engines-version":"6.14.0-4.1c4c6a033ef7e7815b76142f9502e03b0d83e1a1","@prisma/fetch-engine":"workspace:*","@prisma/get-platform":"workspace:*"};var Gr=class extends ce{name="RequestError";code="P5010";constructor(t,r){super(`Cannot fetch data from service:
71
+ `}function F(e,t){throw new Error(t)}function eo(e,t){return e===t||e!==null&&t!==null&&typeof e=="object"&&typeof t=="object"&&Object.keys(e).length===Object.keys(t).length&&Object.keys(e).every(r=>eo(e[r],t[r]))}function Er(e,t){let r=Object.keys(e),n=Object.keys(t);return(r.length<n.length?r:n).every(o=>{if(typeof e[o]==typeof t[o]&&typeof e[o]!="object")return e[o]===t[o];if(K.isDecimal(e[o])||K.isDecimal(t[o])){let s=gl(e[o]),a=gl(t[o]);return s&&a&&s.equals(a)}else if(e[o]instanceof Uint8Array||t[o]instanceof Uint8Array){let s=hl(e[o]),a=hl(t[o]);return s&&a&&s.equals(a)}else{if(e[o]instanceof Date||t[o]instanceof Date)return yl(e[o])?.getTime()===yl(t[o])?.getTime();if(typeof e[o]=="bigint"||typeof t[o]=="bigint")return wl(e[o])===wl(t[o]);if(typeof e[o]=="number"||typeof t[o]=="number")return El(e[o])===El(t[o])}return eo(e[o],t[o])})}function gl(e){return K.isDecimal(e)?e:typeof e=="number"||typeof e=="string"?new K(e):void 0}function hl(e){return Buffer.isBuffer(e)?e:e instanceof Uint8Array?Buffer.from(e.buffer,e.byteOffset,e.byteLength):typeof e=="string"?Buffer.from(e,"base64"):void 0}function yl(e){return e instanceof Date?e:typeof e=="string"||typeof e=="number"?new Date(e):void 0}function wl(e){return typeof e=="bigint"?e:typeof e=="number"||typeof e=="string"?BigInt(e):void 0}function El(e){return typeof e=="number"?e:typeof e=="string"?Number(e):void 0}function xr(e){return JSON.stringify(e,(t,r)=>typeof r=="bigint"?r.toString():r instanceof Uint8Array?Buffer.from(r).toString("base64"):r)}var q=class extends Error{name="DataMapperError"};function Pl(e,t,r){switch(t.type){case"AffectedRows":if(typeof e!="number")throw new q(`Expected an affected rows count, got: ${typeof e} (${e})`);return{count:e};case"Object":return to(e,t.fields,r);case"Value":return ro(e,"<result>",t.resultType,r);default:F(t,`Invalid data mapping type: '${t.type}'`)}}function to(e,t,r){if(e===null)return null;if(Array.isArray(e))return e.map(i=>xl(i,t,r));if(typeof e=="object")return xl(e,t,r);if(typeof e=="string"){let n;try{n=JSON.parse(e)}catch(i){throw new q("Expected an array or object, got a string that is not valid JSON",{cause:i})}return to(n,t,r)}throw new q(`Expected an array or an object, got: ${typeof e}`)}function xl(e,t,r){if(typeof e!="object")throw new q(`Expected an object, but got '${typeof e}'`);let n={};for(let[i,o]of Object.entries(t))switch(o.type){case"AffectedRows":throw new q(`Unexpected 'AffectedRows' node in data mapping for field '${i}'`);case"Object":{if(o.serializedName!==null&&!Object.hasOwn(e,o.serializedName))throw new q(`Missing data field (Object): '${i}'; node: ${JSON.stringify(o)}; data: ${JSON.stringify(e)}`);let s=o.serializedName!==null?e[o.serializedName]:e;n[i]=to(s,o.fields,r);break}case"Value":{let s=o.dbName;if(Object.hasOwn(e,s))n[i]=ro(e[s],s,o.resultType,r);else throw new q(`Missing data field (Value): '${s}'; node: ${JSON.stringify(o)}; data: ${JSON.stringify(e)}`)}break;default:F(o,`DataMapper: Invalid data mapping node type: '${o.type}'`)}return n}function ro(e,t,r,n){if(e===null)return r.type==="Array"?[]:null;switch(r.type){case"Any":return e;case"String":{if(typeof e!="string")throw new q(`Expected a string in column '${t}', got ${typeof e}: ${e}`);return e}case"Int":switch(typeof e){case"number":return Math.trunc(e);case"string":{let i=Math.trunc(Number(e));if(Number.isNaN(i)||!Number.isFinite(i))throw new q(`Expected an integer in column '${t}', got string: ${e}`);if(!Number.isSafeInteger(i))throw new q(`Integer value in column '${t}' is too large to represent as a JavaScript number without loss of precision, got: ${e}. Consider using BigInt type.`);return i}default:throw new q(`Expected an integer in column '${t}', got ${typeof e}: ${e}`)}case"BigInt":{if(typeof e!="number"&&typeof e!="string")throw new q(`Expected a bigint in column '${t}', got ${typeof e}: ${e}`);return{$type:"BigInt",value:e}}case"Float":{if(typeof e=="number")return e;if(typeof e=="string"){let i=Number(e);if(Number.isNaN(i)&&!/^[-+]?nan$/.test(e.toLowerCase()))throw new q(`Expected a float in column '${t}', got string: ${e}`);return i}throw new q(`Expected a float in column '${t}', got ${typeof e}: ${e}`)}case"Boolean":{if(typeof e=="boolean")return e;if(typeof e=="number")return e===1;if(typeof e=="string"){if(e==="true"||e==="TRUE"||e==="1")return!0;if(e==="false"||e==="FALSE"||e==="0")return!1;throw new q(`Expected a boolean in column '${t}', got ${typeof e}: ${e}`)}if(e instanceof Uint8Array){for(let i of e)if(i!==0)return!0;return!1}throw new q(`Expected a boolean in column '${t}', got ${typeof e}: ${e}`)}case"Decimal":if(typeof e!="number"&&typeof e!="string"&&!K.isDecimal(e))throw new q(`Expected a decimal in column '${t}', got ${typeof e}: ${e}`);return{$type:"Decimal",value:e};case"Date":{if(typeof e=="string")return{$type:"DateTime",value:bl(e)};if(typeof e=="number"||e instanceof Date)return{$type:"DateTime",value:e};throw new q(`Expected a date in column '${t}', got ${typeof e}: ${e}`)}case"Time":{if(typeof e=="string")return{$type:"DateTime",value:`1970-01-01T${bl(e)}`};throw new q(`Expected a time in column '${t}', got ${typeof e}: ${e}`)}case"Array":return e.map((o,s)=>ro(o,`${t}[${s}]`,r.inner,n));case"Object":return{$type:"Json",value:typeof e=="string"?e:xr(e)};case"Bytes":{if(typeof e=="string"&&e.startsWith("\\x"))return{$type:"Bytes",value:Buffer.from(e.slice(2),"hex").toString("base64")};if(Array.isArray(e))return{$type:"Bytes",value:Buffer.from(e).toString("base64")};if(e instanceof Uint8Array)return{$type:"Bytes",value:Buffer.from(e).toString("base64")};throw new q(`Expected a byte array in column '${t}', got ${typeof e}: ${e}`)}case"Enum":{let i=n[r.inner];if(i===void 0)throw new q(`Unknown enum '${r.inner}'`);let o=i[`${e}`];if(o===void 0)throw new q(`Unknown enum value '${e}' for enum '${r.inner}'`);return o}default:F(r,`DataMapper: Unknown result type: ${r.type}`)}}var yf=/Z$|(?<!\d{4}-\d{2})[+-]\d{2}(:?\d{2})?$/;function bl(e){let t=yf.exec(e);return t===null?`${e}Z`:t[0]!=="Z"&&t[1]===void 0?`${e}:00`:e}var br;(function(e){e[e.INTERNAL=0]="INTERNAL",e[e.SERVER=1]="SERVER",e[e.CLIENT=2]="CLIENT",e[e.PRODUCER=3]="PRODUCER",e[e.CONSUMER=4]="CONSUMER"})(br||(br={}));function wf(e){switch(e){case"postgresql":case"postgres":case"prisma+postgres":return"postgresql";case"sqlserver":return"mssql";case"mysql":case"sqlite":case"cockroachdb":case"mongodb":return e;default:F(e,`Unknown provider: ${e}`)}}async function Ln({query:e,tracingHelper:t,provider:r,onQuery:n,execute:i}){return await t.runInChildSpan({name:"db_query",kind:br.CLIENT,attributes:{"db.query.text":e.sql,"db.system.name":wf(r)}},async()=>{let o=new Date,s=performance.now(),a=await i(),l=performance.now();return n?.({timestamp:o,duration:l-s,query:e.sql,params:e.args}),a})}var me=class extends Error{name="UserFacingError";code;meta;constructor(t,r,n){super(t),this.code=r,this.meta=n??{}}toQueryResponseErrorObject(){return{error:this.message,user_facing_error:{is_panic:!1,message:this.message,meta:this.meta,error_code:this.code}}}};function vl(e){if(!yi(e))throw e;let t=Ef(e),r=xf(e);throw!t||!r?e:new me(r,t,{driverAdapterError:e})}function Ef(e){switch(e.cause.kind){case"AuthenticationFailed":return"P1000";case"DatabaseNotReachable":return"P1001";case"DatabaseDoesNotExist":return"P1003";case"SocketTimeout":return"P1008";case"DatabaseAlreadyExists":return"P1009";case"DatabaseAccessDenied":return"P1010";case"TlsConnectionError":return"P1011";case"ConnectionClosed":return"P1017";case"TransactionAlreadyClosed":return"P1018";case"LengthMismatch":return"P2000";case"UniqueConstraintViolation":return"P2002";case"ForeignKeyConstraintViolation":return"P2003";case"UnsupportedNativeDataType":return"P2010";case"NullConstraintViolation":return"P2011";case"ValueOutOfRange":return"P2020";case"TableDoesNotExist":return"P2021";case"ColumnNotFound":return"P2022";case"InvalidIsolationLevel":case"InconsistentColumnData":return"P2023";case"MissingFullTextSearchIndex":return"P2030";case"TransactionWriteConflict":return"P2034";case"GenericJs":return"P2036";case"TooManyConnections":return"P2037";case"postgres":case"sqlite":case"mysql":case"mssql":return;default:F(e.cause,`Unknown error: ${e.cause}`)}}function xf(e){switch(e.cause.kind){case"AuthenticationFailed":return`Authentication failed against the database server, the provided database credentials for \`${e.cause.user??"(not available)"}\` are not valid`;case"DatabaseNotReachable":{let t=e.cause.host&&e.cause.port?`${e.cause.host}:${e.cause.port}`:e.cause.host;return`Can't reach database server${t?` at ${t}`:""}`}case"DatabaseDoesNotExist":return`Database \`${e.cause.db??"(not available)"}\` does not exist on the database server`;case"SocketTimeout":return"Operation has timed out";case"DatabaseAlreadyExists":return`Database \`${e.cause.db??"(not available)"}\` already exists on the database server`;case"DatabaseAccessDenied":return`User was denied access on the database \`${e.cause.db??"(not available)"}\``;case"TlsConnectionError":return`Error opening a TLS connection: ${e.cause.reason}`;case"ConnectionClosed":return"Server has closed the connection.";case"TransactionAlreadyClosed":return e.cause.cause;case"LengthMismatch":return`The provided value for the column is too long for the column's type. Column: ${e.cause.column??"(not available)"}`;case"UniqueConstraintViolation":return`Unique constraint failed on the ${no(e.cause.constraint)}`;case"ForeignKeyConstraintViolation":return`Foreign key constraint violated on the ${no(e.cause.constraint)}`;case"UnsupportedNativeDataType":return`Failed to deserialize column of type '${e.cause.type}'. If you're using $queryRaw and this column is explicitly marked as \`Unsupported\` in your Prisma schema, try casting this column to any supported Prisma type such as \`String\`.`;case"NullConstraintViolation":return`Null constraint violation on the ${no(e.cause.constraint)}`;case"ValueOutOfRange":return`Value out of range for the type: ${e.cause.cause}`;case"TableDoesNotExist":return`The table \`${e.cause.table??"(not available)"}\` does not exist in the current database.`;case"ColumnNotFound":return`The column \`${e.cause.column??"(not available)"}\` does not exist in the current database.`;case"InvalidIsolationLevel":return`Invalid isolation level \`${e.cause.level}\``;case"InconsistentColumnData":return`Inconsistent column data: ${e.cause.cause}`;case"MissingFullTextSearchIndex":return"Cannot find a fulltext index to use for the native search, try adding a @@fulltext([Fields...]) to your schema";case"TransactionWriteConflict":return"Transaction failed due to a write conflict or a deadlock. Please retry your transaction";case"GenericJs":return`Error in external connector (id ${e.cause.id})`;case"TooManyConnections":return`Too many database connections opened: ${e.cause.cause}`;case"sqlite":case"postgres":case"mysql":case"mssql":return;default:F(e.cause,`Unknown error: ${e.cause}`)}}function no(e){return e&&"fields"in e?`fields: (${e.fields.map(t=>`\`${t}\``).join(", ")})`:e&&"index"in e?`constraint: \`${e.index}\``:e&&"foreignKey"in e?"foreign key":"(not available)"}function Xe(e,t){var r="000000000"+e;return r.substr(r.length-t)}var Tl=j(require("node:os"),1);function bf(){try{return Tl.default.hostname()}catch{return process.env._CLUSTER_NETWORK_NAME_||process.env.COMPUTERNAME||"hostname"}}var Al=2,Pf=Xe(process.pid.toString(36),Al),Cl=bf(),vf=Cl.length,Tf=Xe(Cl.split("").reduce(function(e,t){return+e+t.charCodeAt(0)},+vf+36).toString(36),Al);function io(){return Pf+Tf}function $n(e){return typeof e=="string"&&/^c[a-z0-9]{20,32}$/.test(e)}function oo(e){let n=Math.pow(36,4),i=0;function o(){return Xe((Math.random()*n<<0).toString(36),4)}function s(){return i=i<n?i:0,i++,i-1}function a(){var l="c",c=new Date().getTime().toString(36),u=Xe(s().toString(36),4),p=e(),d=o()+o();return l+c+u+p+d}return a.fingerprint=e,a.isCuid=$n,a}var Af=oo(io);var Sl=Af;var Cc=j(yc());var go=require("node:crypto");var wc="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var pg=128,tt,Nt;function dg(e){!tt||tt.length<e?(tt=Buffer.allocUnsafe(e*pg),go.webcrypto.getRandomValues(tt),Nt=0):Nt+e>tt.length&&(go.webcrypto.getRandomValues(tt),Nt=0),Nt+=e}function ho(e=21){dg(e|=0);let t="";for(let r=Nt-e;r<Nt;r++)t+=wc[tt[r]&63];return t}var Sr=j(require("node:crypto"),1);var xc="0123456789ABCDEFGHJKMNPQRSTVWXYZ",Rr=32;var mg=16,bc=10,Ec=0xffffffffffff;var rt;(function(e){e.Base32IncorrectEncoding="B32_ENC_INVALID",e.DecodeTimeInvalidCharacter="DEC_TIME_CHAR",e.DecodeTimeValueMalformed="DEC_TIME_MALFORMED",e.EncodeTimeNegative="ENC_TIME_NEG",e.EncodeTimeSizeExceeded="ENC_TIME_SIZE_EXCEED",e.EncodeTimeValueMalformed="ENC_TIME_MALFORMED",e.PRNGDetectFailure="PRNG_DETECT",e.ULIDInvalid="ULID_INVALID",e.Unexpected="UNEXPECTED",e.UUIDInvalid="UUID_INVALID"})(rt||(rt={}));var nt=class extends Error{constructor(t,r){super(`${r} (${t})`),this.name="ULIDError",this.code=t}};function fg(e){let t=Math.floor(e()*Rr);return t===Rr&&(t=Rr-1),xc.charAt(t)}function gg(e){let t=hg(),r=t&&(t.crypto||t.msCrypto)||(typeof Sr.default<"u"?Sr.default:null);if(typeof r?.getRandomValues=="function")return()=>{let n=new Uint8Array(1);return r.getRandomValues(n),n[0]/255};if(typeof r?.randomBytes=="function")return()=>r.randomBytes(1).readUInt8()/255;if(Sr.default?.randomBytes)return()=>Sr.default.randomBytes(1).readUInt8()/255;throw new nt(rt.PRNGDetectFailure,"Failed to find a reliable PRNG")}function hg(){return Eg()?self:typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:null}function yg(e,t){let r="";for(;e>0;e--)r=fg(t)+r;return r}function wg(e,t=bc){if(isNaN(e))throw new nt(rt.EncodeTimeValueMalformed,`Time must be a number: ${e}`);if(e>Ec)throw new nt(rt.EncodeTimeSizeExceeded,`Cannot encode a time larger than ${Ec}: ${e}`);if(e<0)throw new nt(rt.EncodeTimeNegative,`Time must be positive: ${e}`);if(Number.isInteger(e)===!1)throw new nt(rt.EncodeTimeValueMalformed,`Time must be an integer: ${e}`);let r,n="";for(let i=t;i>0;i--)r=e%Rr,n=xc.charAt(r)+n,e=(e-r)/Rr;return n}function Eg(){return typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope}function Pc(e,t){let r=t||gg(),n=!e||isNaN(e)?Date.now():e;return wg(n,bc)+yg(mg,r)}var z=[];for(let e=0;e<256;++e)z.push((e+256).toString(16).slice(1));function jn(e,t=0){return(z[e[t+0]]+z[e[t+1]]+z[e[t+2]]+z[e[t+3]]+"-"+z[e[t+4]]+z[e[t+5]]+"-"+z[e[t+6]]+z[e[t+7]]+"-"+z[e[t+8]]+z[e[t+9]]+"-"+z[e[t+10]]+z[e[t+11]]+z[e[t+12]]+z[e[t+13]]+z[e[t+14]]+z[e[t+15]]).toLowerCase()}var vc=require("node:crypto"),Qn=new Uint8Array(256),Bn=Qn.length;function _t(){return Bn>Qn.length-16&&((0,vc.randomFillSync)(Qn),Bn=0),Qn.slice(Bn,Bn+=16)}var Tc=require("node:crypto"),yo={randomUUID:Tc.randomUUID};function xg(e,t,r){if(yo.randomUUID&&!t&&!e)return yo.randomUUID();e=e||{};let n=e.random??e.rng?.()??_t();if(n.length<16)throw new Error("Random bytes length must be >= 16");if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,t){if(r=r||0,r<0||r+16>t.length)throw new RangeError(`UUID byte range ${r}:${r+15} is out of buffer bounds`);for(let i=0;i<16;++i)t[r+i]=n[i];return t}return jn(n)}var wo=xg;var Eo={};function bg(e,t,r){let n;if(e)n=Ac(e.random??e.rng?.()??_t(),e.msecs,e.seq,t,r);else{let i=Date.now(),o=_t();Pg(Eo,i,o),n=Ac(o,Eo.msecs,Eo.seq,t,r)}return t??jn(n)}function Pg(e,t,r){return e.msecs??=-1/0,e.seq??=0,t>e.msecs?(e.seq=r[6]<<23|r[7]<<16|r[8]<<8|r[9],e.msecs=t):(e.seq=e.seq+1|0,e.seq===0&&e.msecs++),e}function Ac(e,t,r,n,i=0){if(e.length<16)throw new Error("Random bytes length must be >= 16");if(!n)n=new Uint8Array(16),i=0;else if(i<0||i+16>n.length)throw new RangeError(`UUID byte range ${i}:${i+15} is out of buffer bounds`);return t??=Date.now(),r??=e[6]*127<<24|e[7]<<16|e[8]<<8|e[9],n[i++]=t/1099511627776&255,n[i++]=t/4294967296&255,n[i++]=t/16777216&255,n[i++]=t/65536&255,n[i++]=t/256&255,n[i++]=t&255,n[i++]=112|r>>>28&15,n[i++]=r>>>20&255,n[i++]=128|r>>>14&63,n[i++]=r>>>6&255,n[i++]=r<<2&255|e[10]&3,n[i++]=e[11],n[i++]=e[12],n[i++]=e[13],n[i++]=e[14],n[i++]=e[15],n}var xo=bg;var Hn=class{#e={};constructor(){this.register("uuid",new vo),this.register("cuid",new To),this.register("ulid",new Ao),this.register("nanoid",new Co),this.register("product",new So)}snapshot(t){return Object.create(this.#e,{now:{value:t==="mysql"?new Po:new bo}})}register(t,r){this.#e[t]=r}},bo=class{#e=new Date;generate(){return this.#e.toISOString()}},Po=class{#e=new Date;generate(){return this.#e.toISOString().replace("T"," ").replace("Z","")}},vo=class{generate(t){if(t===4)return wo();if(t===7)return xo();throw new Error("Invalid UUID generator arguments")}},To=class{generate(t){if(t===1)return Sl();if(t===2)return(0,Cc.createId)();throw new Error("Invalid CUID generator arguments")}},Ao=class{generate(){return Pc()}},Co=class{generate(t){if(typeof t=="number")return ho(t);if(t===void 0)return ho();throw new Error("Invalid Nanoid generator arguments")}},So=class{generate(t,r){if(t===void 0||r===void 0)throw new Error("Invalid Product generator arguments");return Array.isArray(t)&&Array.isArray(r)?t.flatMap(n=>r.map(i=>[n,i])):Array.isArray(t)?t.map(n=>[n,r]):Array.isArray(r)?r.map(n=>[t,n]):[[t,r]]}};function Ro(e){return typeof e=="object"&&e!==null&&e.prisma__type==="param"}function Io(e){return typeof e=="object"&&e!==null&&e.prisma__type==="generatorCall"}function Sc(e){return typeof e=="object"&&e!==null&&e.prisma__type==="bytes"}function Rc(e){return typeof e=="object"&&e!==null&&e.prisma__type==="bigint"}function Do(e,t,r,n){let i=e.type,o=Ic(e.params,t,r);switch(i){case"rawSql":return[kc(e.sql,Ic(e.params,t,r))];case"templateSql":return(e.chunkable?Sg(e.fragments,o,n):[o]).map(a=>{if(n!==void 0&&a.length>n)throw new me("The query parameter limit supported by your database is exceeded.","P2029");return vg(e.fragments,e.placeholderFormat,a)});default:F(i,"Invalid query type")}}function Ic(e,t,r){return e.map(n=>Ee(n,t,r))}function Ee(e,t,r){let n=e;for(;Cg(n);)if(Ro(n)){let i=t[n.prisma__value.name];if(i===void 0)throw new Error(`Missing value for query variable ${n.prisma__value.name}`);n=i}else if(Io(n)){let{name:i,args:o}=n.prisma__value,s=r[i];if(!s)throw new Error(`Encountered an unknown generator '${i}'`);n=s.generate(...o.map(a=>Ee(a,t,r)))}else F(n,`Unexpected unevaluated value type: ${n}`);return Array.isArray(n)?n=n.map(i=>Ee(i,t,r)):Sc(n)?n=Buffer.from(n.prisma__value,"base64"):Rc(n)&&(n=BigInt(n.prisma__value)),n}function vg(e,t,r){let n="",i={placeholderNumber:1},o=[];for(let s of Oo(e,r))o.push(...Oc(s)),n+=Tg(s,t,i);return kc(n,o)}function Tg(e,t,r){let n=e.type;switch(n){case"parameter":return ko(t,r.placeholderNumber++);case"stringChunk":return e.chunk;case"parameterTuple":return`(${e.value.length==0?"NULL":e.value.map(()=>ko(t,r.placeholderNumber++)).join(",")})`;case"parameterTupleList":return e.value.map(i=>{let o=i.map(()=>ko(t,r.placeholderNumber++)).join(e.itemSeparator);return`${e.itemPrefix}${o}${e.itemSuffix}`}).join(e.groupSeparator);default:F(n,"Invalid fragment type")}}function ko(e,t){return e.hasNumbering?`${e.prefix}${t}`:e.prefix}function kc(e,t){let r=t.map(n=>Ag(n));return{sql:e,args:t,argTypes:r}}function Ag(e){return typeof e=="string"?"Text":typeof e=="number"?"Numeric":typeof e=="boolean"?"Boolean":Array.isArray(e)?"Array":Buffer.isBuffer(e)?"Bytes":"Unknown"}function Cg(e){return Ro(e)||Io(e)}function*Oo(e,t){let r=0;for(let n of e)switch(n.type){case"parameter":{if(r>=t.length)throw new Error(`Malformed query template. Fragments attempt to read over ${t.length} parameters.`);yield{...n,value:t[r++]};break}case"stringChunk":{yield n;break}case"parameterTuple":{if(r>=t.length)throw new Error(`Malformed query template. Fragments attempt to read over ${t.length} parameters.`);let i=t[r++];yield{...n,value:Array.isArray(i)?i:[i]};break}case"parameterTupleList":{if(r>=t.length)throw new Error(`Malformed query template. Fragments attempt to read over ${t.length} parameters.`);let i=t[r++];if(!Array.isArray(i))throw new Error("Malformed query template. Tuple list expected.");if(i.length===0)throw new Error("Malformed query template. Tuple list cannot be empty.");for(let o of i)if(!Array.isArray(o))throw new Error("Malformed query template. Tuple expected.");yield{...n,value:i};break}}}function*Oc(e){switch(e.type){case"parameter":yield e.value;break;case"stringChunk":break;case"parameterTuple":yield*e.value;break;case"parameterTupleList":for(let t of e.value)yield*t;break}}function Sg(e,t,r){let n=0,i=0;for(let s of Oo(e,t)){let a=0;for(let l of Oc(s))a++;i=Math.max(i,a),n+=a}let o=[[]];for(let s of Oo(e,t))switch(s.type){case"parameter":{for(let a of o)a.push(s.value);break}case"stringChunk":break;case"parameterTuple":{let a=s.value.length,l=[];if(r&&o.length===1&&a===i&&n>r&&n-a<r){let c=r-(n-a);l=Rg(s.value,c)}else l=[s.value];o=o.flatMap(c=>l.map(u=>[...c,u]));break}case"parameterTupleList":{let a=s.value.reduce((p,d)=>p+d.length,0),l=[],c=[],u=0;for(let p of s.value)r&&o.length===1&&a===i&&c.length>0&&n-a+u+p.length>r&&(l.push(c),c=[],u=0),c.push(p),u+=p.length;c.length>0&&l.push(c),o=o.flatMap(p=>l.map(d=>[...p,d]));break}}return o}function Rg(e,t){let r=[];for(let n=0;n<e.length;n+=t)r.push(e.slice(n,n+t));return r}function Nc(e){let t=e.columnTypes.map(r=>{switch(r){case T.Bytes:return n=>Array.isArray(n)?new Uint8Array(n):n;default:return n=>n}});return e.rows.map(r=>r.map((n,i)=>t[i](n)).reduce((n,i,o)=>{let s=e.columnNames[o].split("."),a=n;for(let l=0;l<s.length;l++){let c=s[l];l===s.length-1?a[c]=i:(a[c]===void 0&&(a[c]={}),a=a[c])}return n},{}))}function _c(e){let r=e.columnTypes.map(n=>Dc(n)).map(n=>{switch(n){case"bytes":return i=>Array.isArray(i)?new Uint8Array(i):i;case"int":return i=>i===null?null:typeof i=="number"?i:parseInt(`${i}`,10);case"bigint":return i=>i===null?null:typeof i=="bigint"?i:BigInt(`${i}`);case"json":return i=>typeof i=="string"?JSON.parse(i):i;case"bool":return i=>typeof i=="string"?i==="true"||i==="1":typeof i=="number"?i===1:i;default:return i=>i}});return{columns:e.columnNames,types:e.columnTypes.map(n=>Dc(n)),rows:e.rows.map(n=>n.map((i,o)=>r[o](i)))}}function Dc(e){switch(e){case T.Int32:return"int";case T.Int64:return"bigint";case T.Float:return"float";case T.Double:return"double";case T.Text:return"string";case T.Enum:return"enum";case T.Bytes:return"bytes";case T.Boolean:return"bool";case T.Character:return"char";case T.Numeric:return"decimal";case T.Json:return"json";case T.Uuid:return"uuid";case T.DateTime:return"datetime";case T.Date:return"date";case T.Time:return"time";case T.Int32Array:return"int-array";case T.Int64Array:return"bigint-array";case T.FloatArray:return"float-array";case T.DoubleArray:return"double-array";case T.TextArray:return"string-array";case T.EnumArray:return"string-array";case T.BytesArray:return"bytes-array";case T.BooleanArray:return"bool-array";case T.CharacterArray:return"char-array";case T.NumericArray:return"decimal-array";case T.JsonArray:return"json-array";case T.UuidArray:return"uuid-array";case T.DateTimeArray:return"datetime-array";case T.DateArray:return"date-array";case T.TimeArray:return"time-array";case T.UnknownNumber:return"unknown";case T.Set:return"string";default:F(e,`Unexpected column type: ${e}`)}}function Mc(e,t,r){if(!t.every(n=>No(e,n))){let n=Ig(e,r),i=kg(r);throw new me(n,i,r.context)}}function No(e,t){switch(t.type){case"rowCountEq":return Array.isArray(e)?e.length===t.args:e===null?t.args===0:t.args===1;case"rowCountNeq":return Array.isArray(e)?e.length!==t.args:e===null?t.args!==0:t.args!==1;case"affectedRowCountEq":return e===t.args;case"never":return!1;default:F(t,`Unknown rule type: ${t.type}`)}}function Ig(e,t){switch(t.error_identifier){case"RELATION_VIOLATION":return`The change you are trying to make would violate the required relation '${t.context.relation}' between the \`${t.context.modelA}\` and \`${t.context.modelB}\` models.`;case"MISSING_RECORD":return`An operation failed because it depends on one or more records that were required but not found. No record was found for ${t.context.operation}.`;case"MISSING_RELATED_RECORD":{let r=t.context.neededFor?` (needed to ${t.context.neededFor})`:"";return`An operation failed because it depends on one or more records that were required but not found. No '${t.context.model}' record${r} was found for ${t.context.operation} on ${t.context.relationType} relation '${t.context.relation}'.`}case"INCOMPLETE_CONNECT_INPUT":return`An operation failed because it depends on one or more records that were required but not found. Expected ${t.context.expectedRows} records to be connected, found only ${Array.isArray(e)?e.length:e}.`;case"INCOMPLETE_CONNECT_OUTPUT":return`The required connected records were not found. Expected ${t.context.expectedRows} records to be connected after connect operation on ${t.context.relationType} relation '${t.context.relation}', found ${Array.isArray(e)?e.length:e}.`;case"RECORDS_NOT_CONNECTED":return`The records for relation \`${t.context.relation}\` between the \`${t.context.parent}\` and \`${t.context.child}\` models are not connected.`;default:F(t,`Unknown error identifier: ${t}`)}}function kg(e){switch(e.error_identifier){case"RELATION_VIOLATION":return"P2014";case"RECORDS_NOT_CONNECTED":return"P2017";case"INCOMPLETE_CONNECT_OUTPUT":return"P2018";case"MISSING_RECORD":case"MISSING_RELATED_RECORD":case"INCOMPLETE_CONNECT_INPUT":return"P2025";default:F(e,`Unknown error identifier: ${e}`)}}var kr=class e{#e;#t;#r;#n=new Hn;#o;#i;#c;#s;#l;constructor({transactionManager:t,placeholderValues:r,onQuery:n,tracingHelper:i,serializer:o,rawSerializer:s,provider:a,connectionInfo:l}){this.#e=t,this.#t=r,this.#r=n,this.#o=i,this.#i=o,this.#c=s??o,this.#s=a,this.#l=l}static forSql(t){return new e({transactionManager:t.transactionManager,placeholderValues:t.placeholderValues,onQuery:t.onQuery,tracingHelper:t.tracingHelper,serializer:Nc,rawSerializer:_c,provider:t.provider,connectionInfo:t.connectionInfo})}async run(t,r){let{value:n}=await this.interpretNode(t,r,this.#t,this.#n.snapshot(r.provider)).catch(i=>vl(i));return n}async interpretNode(t,r,n,i){switch(t.type){case"value":return{value:Ee(t.args,n,i)};case"seq":{let o;for(let s of t.args)o=await this.interpretNode(s,r,n,i);return o??{value:void 0}}case"get":return{value:n[t.args.name]};case"let":{let o=Object.create(n);for(let s of t.args.bindings){let{value:a}=await this.interpretNode(s.expr,r,o,i);o[s.name]=a}return this.interpretNode(t.args.expr,r,o,i)}case"getFirstNonEmpty":{for(let o of t.args.names){let s=n[o];if(!Fc(s))return{value:s}}return{value:[]}}case"concat":{let o=await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i).then(a=>a.value)));return{value:o.length>0?o.reduce((s,a)=>s.concat(Ir(a)),[]):[]}}case"sum":{let o=await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i).then(a=>a.value)));return{value:o.length>0?o.reduce((s,a)=>Ce(s)+Ce(a)):0}}case"execute":{let o=Do(t.args,n,i,this.#a()),s=0;for(let a of o)s+=await this.#u(a,r,()=>r.executeRaw(a));return{value:s}}case"query":{let o=Do(t.args,n,i,this.#a()),s;for(let a of o){let l=await this.#u(a,r,()=>r.queryRaw(a));s===void 0?s=l:(s.rows.push(...l.rows),s.lastInsertId=l.lastInsertId)}return{value:t.args.type==="rawSql"?this.#c(s):this.#i(s),lastInsertId:s?.lastInsertId}}case"reverse":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args,r,n,i);return{value:Array.isArray(o)?o.reverse():o,lastInsertId:s}}case"unique":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args,r,n,i);if(!Array.isArray(o))return{value:o,lastInsertId:s};if(o.length>1)throw new Error(`Expected zero or one element, got ${o.length}`);return{value:o[0]??null,lastInsertId:s}}case"required":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args,r,n,i);if(Fc(o))throw new Error("Required value is empty");return{value:o,lastInsertId:s}}case"mapField":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.records,r,n,i);return{value:$c(o,t.args.field),lastInsertId:s}}case"join":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.parent,r,n,i);if(o===null)return{value:null,lastInsertId:s};let a=await Promise.all(t.args.children.map(async l=>({joinExpr:l,childRecords:(await this.interpretNode(l.child,r,n,i)).value})));return{value:Og(o,a),lastInsertId:s}}case"transaction":{if(!this.#e.enabled)return this.interpretNode(t.args,r,n,i);let o=this.#e.manager,s=await o.startTransaction(),a=o.getTransaction(s,"query");try{let l=await this.interpretNode(t.args,a,n,i);return await o.commitTransaction(s.id),l}catch(l){throw await o.rollbackTransaction(s.id),l}}case"dataMap":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i);return{value:Pl(o,t.args.structure,t.args.enums),lastInsertId:s}}case"validate":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i);return Mc(o,t.args.rules,t.args),{value:o,lastInsertId:s}}case"if":{let{value:o}=await this.interpretNode(t.args.value,r,n,i);return No(o,t.args.rule)?await this.interpretNode(t.args.then,r,n,i):await this.interpretNode(t.args.else,r,n,i)}case"unit":return{value:void 0};case"diff":{let{value:o}=await this.interpretNode(t.args.from,r,n,i),{value:s}=await this.interpretNode(t.args.to,r,n,i),a=new Set(Ir(s));return{value:Ir(o).filter(l=>!a.has(l))}}case"distinctBy":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i),a=new Set,l=[];for(let c of Ir(o)){let u=Gn(c,t.args.fields);a.has(u)||(a.add(u),l.push(c))}return{value:l,lastInsertId:s}}case"paginate":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i),a=Ir(o),l=t.args.pagination.linkingFields;if(l!==null){let c=new Map;for(let p of a){let d=Gn(p,l);c.has(d)||c.set(d,[]),c.get(d).push(p)}let u=Array.from(c.entries());return u.sort(([p],[d])=>p<d?-1:p>d?1:0),{value:u.flatMap(([,p])=>Lc(p,t.args.pagination)),lastInsertId:s}}return{value:Lc(a,t.args.pagination),lastInsertId:s}}case"initializeRecord":{let{lastInsertId:o}=await this.interpretNode(t.args.expr,r,n,i),s={};for(let[a,l]of Object.entries(t.args.fields))s[a]=Dg(l,o,n,i);return{value:s,lastInsertId:o}}case"mapRecord":{let{value:o,lastInsertId:s}=await this.interpretNode(t.args.expr,r,n,i),a=o===null?{}:_o(o);for(let[l,c]of Object.entries(t.args.fields))a[l]=Ng(c,a[l],n,i);return{value:a,lastInsertId:s}}default:F(t,`Unexpected node type: ${t.type}`)}}#a(){return this.#l?.maxBindValues!==void 0?this.#l.maxBindValues:this.#p()}#p(){if(this.#s!==void 0)switch(this.#s){case"cockroachdb":case"postgres":case"postgresql":case"prisma+postgres":return 32766;case"mysql":return 65535;case"sqlite":return 999;case"sqlserver":return 2098;case"mongodb":return;default:F(this.#s,`Unexpected provider: ${this.#s}`)}}#u(t,r,n){return Ln({query:t,execute:n,provider:this.#s??r.provider,tracingHelper:this.#o,onQuery:this.#r})}};function Fc(e){return Array.isArray(e)?e.length===0:e==null}function Ir(e){return Array.isArray(e)?e:[e]}function Ce(e){if(typeof e=="number")return e;if(typeof e=="string")return Number(e);throw new Error(`Expected number, got ${typeof e}`)}function _o(e){if(typeof e=="object"&&e!==null)return e;throw new Error(`Expected object, got ${typeof e}`)}function $c(e,t){return Array.isArray(e)?e.map(r=>$c(r,t)):typeof e=="object"&&e!==null?e[t]??null:e}function Og(e,t){for(let{joinExpr:r,childRecords:n}of t){let i=r.on.map(([a])=>a),o=r.on.map(([,a])=>a),s={};for(let a of Array.isArray(e)?e:[e]){let l=_o(a),c=Gn(l,i);s[c]||(s[c]=[]),s[c].push(l),r.isRelationUnique?l[r.parentField]=null:l[r.parentField]=[]}for(let a of Array.isArray(n)?n:[n]){if(a===null)continue;let l=Gn(_o(a),o);for(let c of s[l]??[])r.isRelationUnique?c[r.parentField]=a:c[r.parentField].push(a)}}return e}function Lc(e,{cursor:t,skip:r,take:n}){let i=t!==null?e.findIndex(a=>Er(a,t)):0;if(i===-1)return[];let o=i+(r??0),s=n!==null?o+n:e.length;return e.slice(o,s)}function Gn(e,t){return JSON.stringify(t.map(r=>e[r]))}function Dg(e,t,r,n){switch(e.type){case"value":return Ee(e.value,r,n);case"lastInsertId":return t;default:F(e,`Unexpected field initializer type: ${e.type}`)}}function Ng(e,t,r,n){switch(e.type){case"set":return Ee(e.value,r,n);case"add":return Ce(t)+Ce(Ee(e.value,r,n));case"subtract":return Ce(t)-Ce(Ee(e.value,r,n));case"multiply":return Ce(t)*Ce(Ee(e.value,r,n));case"divide":{let i=Ce(t),o=Ce(Ee(e.value,r,n));return o===0?null:i/o}default:F(e,`Unexpected field operation type: ${e.type}`)}}async function _g(){return globalThis.crypto??await import("node:crypto")}async function Vc(){return(await _g()).randomUUID()}var de=class extends me{name="TransactionManagerError";constructor(t,r){super("Transaction API error: "+t,"P2028",r)}},Or=class extends de{constructor(){super("Transaction not found. Transaction ID is invalid, refers to an old closed transaction Prisma doesn't have information about anymore, or was obtained before disconnecting.")}},Wn=class extends de{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a committed transaction.`)}},Jn=class extends de{constructor(t){super(`Transaction is being closed: A ${t} cannot be executed on a closing transaction.`)}},Kn=class extends de{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a transaction that was rolled back.`)}},zn=class extends de{constructor(){super("Unable to start a transaction in the given time.")}},Yn=class extends de{constructor(t,{timeout:r,timeTaken:n}){super(`A ${t} cannot be executed on an expired transaction. The timeout for this transaction was ${r} ms, however ${n} ms passed since the start of the transaction. Consider increasing the interactive transaction timeout or doing less work in the transaction`,{operation:t,timeout:r,timeTaken:n})}},Mt=class extends de{constructor(t){super(`Internal Consistency Error: ${t}`)}},Zn=class extends de{constructor(t){super(`Invalid isolation level: ${t}`,{isolationLevel:t})}};var Mg=100,Dr=V("prisma:client:transactionManager"),Fg=()=>({sql:"COMMIT",args:[],argTypes:[]}),Lg=()=>({sql:"ROLLBACK",args:[],argTypes:[]}),$g=()=>({sql:'-- Implicit "COMMIT" query via underlying driver',args:[],argTypes:[]}),Vg=()=>({sql:'-- Implicit "ROLLBACK" query via underlying driver',args:[],argTypes:[]}),Nr=class{transactions=new Map;closedTransactions=[];driverAdapter;transactionOptions;tracingHelper;#e;#t;constructor({driverAdapter:t,transactionOptions:r,tracingHelper:n,onQuery:i,provider:o}){this.driverAdapter=t,this.transactionOptions=r,this.tracingHelper=n,this.#e=i,this.#t=o}async startTransaction(t){return await this.tracingHelper.runInChildSpan("start_transaction",()=>this.#r(t))}async#r(t){let r=t!==void 0?this.validateOptions(t):this.transactionOptions,n={id:await Vc(),status:"waiting",timer:void 0,timeout:r.timeout,startedAt:Date.now(),transaction:void 0};this.transactions.set(n.id,n);let i=!1,o=setTimeout(()=>i=!0,r.maxWait);switch(n.transaction=await this.driverAdapter.startTransaction(r.isolationLevel),clearTimeout(o),n.status){case"waiting":if(i)throw await this.closeTransaction(n,"timed_out"),new zn;return n.status="running",n.timer=this.startTransactionTimeout(n.id,r.timeout),{id:n.id};case"closing":case"timed_out":case"running":case"committed":case"rolled_back":throw new Mt(`Transaction in invalid state ${n.status} although it just finished startup.`);default:F(n.status,"Unknown transaction status.")}}async commitTransaction(t){return await this.tracingHelper.runInChildSpan("commit_transaction",async()=>{let r=this.getActiveTransaction(t,"commit");await this.closeTransaction(r,"committed")})}async rollbackTransaction(t){return await this.tracingHelper.runInChildSpan("rollback_transaction",async()=>{let r=this.getActiveTransaction(t,"rollback");await this.closeTransaction(r,"rolled_back")})}getTransaction(t,r){let n=this.getActiveTransaction(t.id,r);if(!n.transaction)throw new Or;return n.transaction}getActiveTransaction(t,r){let n=this.transactions.get(t);if(!n){let i=this.closedTransactions.find(o=>o.id===t);if(i)switch(Dr("Transaction already closed.",{transactionId:t,status:i.status}),i.status){case"closing":case"waiting":case"running":throw new Mt("Active transaction found in closed transactions list.");case"committed":throw new Wn(r);case"rolled_back":throw new Kn(r);case"timed_out":throw new Yn(r,{timeout:i.timeout,timeTaken:Date.now()-i.startedAt})}else throw Dr("Transaction not found.",t),new Or}if(n.status==="closing")throw new Jn(r);if(["committed","rolled_back","timed_out"].includes(n.status))throw new Mt("Closed transaction found in active transactions map.");return n}async cancelAllTransactions(){await Promise.allSettled([...this.transactions.values()].map(t=>this.closeTransaction(t,"rolled_back")))}startTransactionTimeout(t,r){let n=Date.now();return setTimeout(async()=>{Dr("Transaction timed out.",{transactionId:t,timeoutStartedAt:n,timeout:r});let i=this.transactions.get(t);i&&["running","waiting"].includes(i.status)?await this.closeTransaction(i,"timed_out"):Dr("Transaction already committed or rolled back when timeout happened.",t)},r)}async closeTransaction(t,r){Dr("Closing transaction.",{transactionId:t.id,status:r}),t.status="closing";try{if(t.transaction&&r==="committed")if(t.transaction.options.usePhantomQuery)await this.#n($g(),t.transaction,()=>t.transaction.commit());else{let n=Fg();await this.#n(n,t.transaction,()=>t.transaction.executeRaw(n)),await t.transaction.commit()}else if(t.transaction)if(t.transaction.options.usePhantomQuery)await this.#n(Vg(),t.transaction,()=>t.transaction.rollback());else{let n=Lg();await this.#n(n,t.transaction,()=>t.transaction.executeRaw(n)),await t.transaction.rollback()}}finally{t.status=r,clearTimeout(t.timer),t.timer=void 0,this.transactions.delete(t.id),this.closedTransactions.push(t),this.closedTransactions.length>Mg&&this.closedTransactions.shift()}}validateOptions(t){if(!t.timeout)throw new de("timeout is required");if(!t.maxWait)throw new de("maxWait is required");if(t.isolationLevel==="SNAPSHOT")throw new Zn(t.isolationLevel);return{...t,timeout:t.timeout,maxWait:t.maxWait}}#n(t,r,n){return Ln({query:t,execute:n,provider:this.#t??r.provider,tracingHelper:this.tracingHelper,onQuery:this.#e})}};var Xn="6.14.0-dev.17";var ei=class e{#e;#t;#r;#n;constructor(t,r,n){this.#e=t,this.#t=r,this.#r=n,this.#n=r.getConnectionInfo?.()}static async connect(t){let r,n;try{r=await t.driverAdapterFactory.connect(),n=new Nr({driverAdapter:r,transactionOptions:t.transactionOptions,tracingHelper:t.tracingHelper,onQuery:t.onQuery,provider:t.provider})}catch(i){throw await r?.dispose(),i}return new e(t,r,n)}getConnectionInfo(){let t=this.#n??{supportsRelationJoins:!1};return Promise.resolve({provider:this.#t.provider,connectionInfo:t})}async execute({plan:t,placeholderValues:r,transaction:n,batchIndex:i}){let o=n?this.#r.getTransaction(n,i!==void 0?"batch query":"query"):this.#t;return await kr.forSql({transactionManager:n?{enabled:!1}:{enabled:!0,manager:this.#r},placeholderValues:r,onQuery:this.#e.onQuery,tracingHelper:this.#e.tracingHelper,provider:this.#e.provider,connectionInfo:this.#n}).run(t,o)}async startTransaction(t){return{...await this.#r.startTransaction(t),payload:void 0}}async commitTransaction(t){await this.#r.commitTransaction(t.id)}async rollbackTransaction(t){await this.#r.rollbackTransaction(t.id)}async disconnect(){try{await this.#r.cancelAllTransactions()}finally{await this.#t.dispose()}}};var ti=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function qc(e,t,r){let n=r||{},i=n.encode||encodeURIComponent;if(typeof i!="function")throw new TypeError("option encode is invalid");if(!ti.test(e))throw new TypeError("argument name is invalid");let o=i(t);if(o&&!ti.test(o))throw new TypeError("argument val is invalid");let s=e+"="+o;if(n.maxAge!==void 0&&n.maxAge!==null){let a=n.maxAge-0;if(Number.isNaN(a)||!Number.isFinite(a))throw new TypeError("option maxAge is invalid");s+="; Max-Age="+Math.floor(a)}if(n.domain){if(!ti.test(n.domain))throw new TypeError("option domain is invalid");s+="; Domain="+n.domain}if(n.path){if(!ti.test(n.path))throw new TypeError("option path is invalid");s+="; Path="+n.path}if(n.expires){if(!Ug(n.expires)||Number.isNaN(n.expires.valueOf()))throw new TypeError("option expires is invalid");s+="; Expires="+n.expires.toUTCString()}if(n.httpOnly&&(s+="; HttpOnly"),n.secure&&(s+="; Secure"),n.priority)switch(typeof n.priority=="string"?n.priority.toLowerCase():n.priority){case"low":{s+="; Priority=Low";break}case"medium":{s+="; Priority=Medium";break}case"high":{s+="; Priority=High";break}default:throw new TypeError("option priority is invalid")}if(n.sameSite)switch(typeof n.sameSite=="string"?n.sameSite.toLowerCase():n.sameSite){case!0:{s+="; SameSite=Strict";break}case"lax":{s+="; SameSite=Lax";break}case"strict":{s+="; SameSite=Strict";break}case"none":{s+="; SameSite=None";break}default:throw new TypeError("option sameSite is invalid")}return n.partitioned&&(s+="; Partitioned"),s}function Ug(e){return Object.prototype.toString.call(e)==="[object Date]"||e instanceof Date}function Uc(e,t){let r=(e||"").split(";").filter(l=>typeof l=="string"&&!!l.trim()),n=r.shift()||"",i=jg(n),o=i.name,s=i.value;try{s=t?.decode===!1?s:(t?.decode||decodeURIComponent)(s)}catch{}let a={name:o,value:s};for(let l of r){let c=l.split("="),u=(c.shift()||"").trimStart().toLowerCase(),p=c.join("=");switch(u){case"expires":{a.expires=new Date(p);break}case"max-age":{a.maxAge=Number.parseInt(p,10);break}case"secure":{a.secure=!0;break}case"httponly":{a.httpOnly=!0;break}case"samesite":{a.sameSite=p;break}default:a[u]=p}}return a}function jg(e){let t="",r="",n=e.split("=");return n.length>1?(t=n.shift(),r=n.join("=")):r=e,{name:t,value:r}}function Ft({inlineDatasources:e,overrideDatasources:t,env:r,clientVersion:n}){let i,o=Object.keys(e)[0],s=e[o]?.url,a=t[o]?.url;if(o===void 0?i=void 0:a?i=a:s?.value?i=s.value:s?.fromEnvVar&&(i=r[s.fromEnvVar]),s?.fromEnvVar!==void 0&&i===void 0)throw new O(`error: Environment variable not found: ${s.fromEnvVar}.`,n);if(i===void 0)throw new O("error: Missing URL environment variable, value, or override.",n);return i}var ri=class extends Error{clientVersion;cause;constructor(t,r){super(t),this.clientVersion=r.clientVersion,this.cause=r.cause}get[Symbol.toStringTag](){return this.name}};var ce=class extends ri{isRetryable;constructor(t,r){super(t,r),this.isRetryable=r.isRetryable??!0}};function S(e,t){return{...e,isRetryable:t}}var it=class extends ce{name="InvalidDatasourceError";code="P6001";constructor(t,r){super(t,S(r,!1))}};b(it,"InvalidDatasourceError");function ni(e){let t={clientVersion:e.clientVersion},r=Object.keys(e.inlineDatasources)[0],n=Ft({inlineDatasources:e.inlineDatasources,overrideDatasources:e.overrideDatasources,clientVersion:e.clientVersion,env:{...e.env,...typeof process<"u"?process.env:{}}}),i;try{i=new URL(n)}catch{throw new it(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\``,t)}let{protocol:o,searchParams:s}=i;if(o!=="prisma:"&&o!==Xr)throw new it(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\` or \`prisma+postgres://\``,t);let a=s.get("api_key");if(a===null||a.length<1)throw new it(`Error validating datasource \`${r}\`: the URL must contain a valid API key`,t);let l=xi(i)?"http:":"https:",c=new URL(i.href.replace(o,l));return{apiKey:a,url:c}}var jc=j(ps()),Lt=class{apiKey;tracingHelper;logLevel;logQueries;engineHash;constructor({apiKey:t,tracingHelper:r,logLevel:n,logQueries:i,engineHash:o}){this.apiKey=t,this.tracingHelper=r,this.logLevel=n,this.logQueries=i,this.engineHash=o}build({traceparent:t,transactionId:r}={}){let n={Accept:"application/json",Authorization:`Bearer ${this.apiKey}`,"Content-Type":"application/json","Prisma-Engine-Hash":this.engineHash,"Prisma-Engine-Version":jc.enginesVersion};this.tracingHelper.isEnabled()&&(n.traceparent=t??this.tracingHelper.getTraceParent()),r&&(n["X-Transaction-Id"]=r);let i=this.#e();return i.length>0&&(n["X-Capture-Telemetry"]=i.join(", ")),n}#e(){let t=[];return this.tracingHelper.isEnabled()&&t.push("tracing"),this.logLevel&&t.push(this.logLevel),this.logQueries&&t.push("query"),t}};function Bg(e){return e[0]*1e3+e[1]/1e6}function $t(e){return new Date(Bg(e))}var Bc=V("prisma:client:clientEngine:remoteExecutor"),ii=class{#e;#t;#r;#n;#o;constructor(t){this.#e=t.clientVersion,this.#n=t.logEmitter,this.#o=t.tracingHelper;let{url:r,apiKey:n}=ni({clientVersion:t.clientVersion,env:t.env,inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources});this.#r=new Mo(r),this.#t=new Lt({apiKey:n,engineHash:t.clientVersion,logLevel:t.logLevel,logQueries:t.logQueries,tracingHelper:t.tracingHelper})}async getConnectionInfo(){return await this.#i({path:"/connection-info",method:"GET"})}async execute({plan:t,placeholderValues:r,batchIndex:n,model:i,operation:o,transaction:s,customFetch:a}){return(await this.#i({path:s?`/transaction/${s.id}/query`:"/query",method:"POST",body:{model:i,operation:o,plan:t,params:r},batchRequestIdx:n,fetch:a})).data}async startTransaction(t){return{...await this.#i({path:"/transaction/start",method:"POST",body:t}),payload:void 0}}async commitTransaction(t){await this.#i({path:`/transaction/${t.id}/commit`,method:"POST"})}async rollbackTransaction(t){await this.#i({path:`/transaction/${t.id}/rollback`,method:"POST"})}disconnect(){return Promise.resolve()}async#i({path:t,method:r,body:n,fetch:i=globalThis.fetch,batchRequestIdx:o}){let s=await this.#r.request({method:r,path:t,headers:this.#t.build(),body:n,fetch:i});s.ok||await this.#c(s,o);let a=await s.json();return typeof a.extensions=="object"&&a.extensions!==null&&this.#s(a.extensions),a}async#c(t,r){let n=t.headers.get("Prisma-Error-Code"),i=await t.text(),o,s=i;try{o=JSON.parse(i)}catch{o={}}typeof o.code=="string"&&(n=o.code),typeof o.error=="string"?s=o.error:typeof o.message=="string"?s=o.message:typeof o.InvalidRequestError=="object"&&o.InvalidRequestError!==null&&typeof o.InvalidRequestError.reason=="string"&&(s=o.InvalidRequestError.reason),s=s||`HTTP ${t.status}: ${t.statusText}`;let a=typeof o.meta=="object"&&o.meta!==null?o.meta:o;throw new U(s,{clientVersion:this.#e,code:n??"P6000",batchRequestIdx:r,meta:a})}#s(t){if(t.logs)for(let r of t.logs)this.#l(r);t.traces&&this.#o.dispatchEngineSpans(t.traces)}#l(t){switch(t.level){case"debug":case"trace":Bc(t);break;case"error":case"warn":case"info":{this.#n.emit(t.level,{timestamp:$t(t.timestamp),message:t.attributes.message??"",target:t.target});break}case"query":{this.#n.emit("query",{query:t.attributes.query??"",timestamp:$t(t.timestamp),duration:t.attributes.duration_ms??0,params:t.attributes.params??"",target:t.target});break}default:throw new Error(`Unexpected log level: ${t.level}`)}}},Mo=class{#e;#t;#r;constructor(t){this.#e=t,this.#t=new Map}async request({method:t,path:r,headers:n,body:i,fetch:o}){let s=new URL(r,this.#e),a=this.#n(s);a&&(n.Cookie=a),this.#r&&(n["Accelerate-Query-Engine-Jwt"]=this.#r);let l=await o(s,{method:t,body:i!==void 0?JSON.stringify(i):void 0,headers:n});return Bc(t,s,l.status,l.statusText),this.#r=l.headers.get("Accelerate-Query-Engine-Jwt")??void 0,this.#o(s,l),l}#n(t){let r=[],n=new Date;for(let[i,o]of this.#t){if(o.expires&&o.expires<n){this.#t.delete(i);continue}let s=o.domain??t.hostname,a=o.path??"/";t.hostname.endsWith(s)&&t.pathname.startsWith(a)&&r.push(qc(o.name,o.value))}return r.length>0?r.join("; "):void 0}#o(t,r){let n=r.headers.getSetCookie?.()||[];if(n.length===0){let i=r.headers.get("Set-Cookie");i&&n.push(i)}for(let i of n){let o=Uc(i),s=o.domain??t.hostname,a=o.path??"/",l=`${s}:${a}:${o.name}`;this.#t.set(l,{name:o.name,value:o.value,domain:s,path:a,expires:o.expires})}}};var Fo,Qc={async loadQueryCompiler(e){let{clientVersion:t,compilerWasm:r}=e;if(r===void 0)throw new O("WASM query compiler was unexpectedly `undefined`",t);return Fo===void 0&&(Fo=(async()=>{let n=await r.getRuntime(),i=await r.getQueryCompilerWasmModule();if(i==null)throw new O("The loaded wasm module was unexpectedly `undefined` or `null` once loaded",t);let o={"./query_compiler_bg.js":n},s=new WebAssembly.Instance(i,o),a=s.exports.__wbindgen_start;return n.__wbg_set_wasm(s.exports),a(),n.QueryCompiler})()),await Fo}};var Hc="P2038",_r=V("prisma:client:clientEngine"),Wc=globalThis;Wc.PRISMA_WASM_PANIC_REGISTRY={set_message(e){throw new ne(e,Xn)}};var Vt=class{name="ClientEngine";#e;#t={type:"disconnected"};#r;#n;config;datamodel;logEmitter;logQueries;logLevel;tracingHelper;#o;constructor(t,r,n){if(!t.previewFeatures?.includes("driverAdapters")&&!r)throw new O("EngineType `client` requires the driverAdapters preview feature to be enabled.",t.clientVersion,Hc);if(r)this.#n={remote:!0};else if(t.adapter)this.#n={remote:!1,driverAdapterFactory:t.adapter},_r("Using driver adapter: %O",t.adapter);else throw new O("Missing configured driver adapter. Engine type `client` requires an active driver adapter. Please check your PrismaClient initialization code.",t.clientVersion,Hc);this.#r=n??Qc,this.config=t,this.logQueries=t.logQueries??!1,this.logLevel=t.logLevel??"error",this.logEmitter=t.logEmitter,this.datamodel=t.inlineSchema,this.tracingHelper=t.tracingHelper,t.enableDebugLogs&&(this.logLevel="debug"),this.logQueries&&(this.#o=i=>{this.logEmitter.emit("query",{...i,params:xr(i.params),target:"ClientEngine"})})}applyPendingMigrations(){throw new Error("Cannot call applyPendingMigrations on engine type client.")}async#i(){switch(this.#t.type){case"disconnected":{let t=this.tracingHelper.runInChildSpan("connect",async()=>{let r,n;try{r=await this.#c(),n=await this.#s(r)}catch(o){throw this.#t={type:"disconnected"},n?.free(),await r?.disconnect(),o}let i={executor:r,queryCompiler:n};return this.#t={type:"connected",engine:i},i});return this.#t={type:"connecting",promise:t},await t}case"connecting":return await this.#t.promise;case"connected":return this.#t.engine;case"disconnecting":return await this.#t.promise,await this.#i()}}async#c(){return this.#n.remote?new ii({clientVersion:this.config.clientVersion,env:this.config.env,inlineDatasources:this.config.inlineDatasources,logEmitter:this.logEmitter,logLevel:this.logLevel,logQueries:this.logQueries,overrideDatasources:this.config.overrideDatasources,tracingHelper:this.tracingHelper}):await ei.connect({driverAdapterFactory:this.#n.driverAdapterFactory,tracingHelper:this.tracingHelper,transactionOptions:{...this.config.transactionOptions,isolationLevel:this.#d(this.config.transactionOptions.isolationLevel)},onQuery:this.#o,provider:this.config.activeProvider})}async#s(t){let r=this.#e;r===void 0&&(r=await this.#r.loadQueryCompiler(this.config),this.#e=r);let{provider:n,connectionInfo:i}=await t.getConnectionInfo();try{return this.#u(()=>new r({datamodel:this.datamodel,provider:n,connectionInfo:i}),void 0,!1)}catch(o){throw this.#l(o)}}#l(t){if(t instanceof ne)return t;try{let r=JSON.parse(t.message);return new O(r.message,this.config.clientVersion,r.error_code)}catch{return t}}#a(t,r){if(t instanceof O)return t;if(t.code==="GenericFailure"&&t.message?.startsWith("PANIC:"))return new ne(Gc(this,t.message,r),this.config.clientVersion);if(t instanceof me)return new U(t.message,{code:t.code,meta:t.meta,clientVersion:this.config.clientVersion});try{let n=JSON.parse(t);return new X(`${n.message}
72
+ ${n.backtrace}`,{clientVersion:this.config.clientVersion})}catch{return t}}#p(t){return t instanceof ne?t:typeof t.message=="string"&&typeof t.code=="string"?new U(t.message,{code:t.code,meta:t.meta,clientVersion:this.config.clientVersion}):t}#u(t,r,n=!0){let i=Wc.PRISMA_WASM_PANIC_REGISTRY.set_message,o;global.PRISMA_WASM_PANIC_REGISTRY.set_message=s=>{o=s};try{return t()}finally{if(global.PRISMA_WASM_PANIC_REGISTRY.set_message=i,o)throw this.#e=void 0,n&&this.stop().catch(s=>_r("failed to disconnect:",s)),new ne(Gc(this,o,r),this.config.clientVersion)}}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the client engine, it is only relevant and implemented for the binary engine. Please add your event listener to the `process` object directly instead.')}async start(){await this.#i()}async stop(){switch(this.#t.type){case"disconnected":return;case"connecting":return await this.#t.promise,await this.stop();case"connected":{let t=this.#t.engine,r=this.tracingHelper.runInChildSpan("disconnect",async()=>{try{await t.executor.disconnect(),t.queryCompiler.free()}finally{this.#t={type:"disconnected"}}});return this.#t={type:"disconnecting",promise:r},await r}case"disconnecting":return await this.#t.promise}}version(){return"unknown"}async transaction(t,r,n){let i,{executor:o}=await this.#i();try{if(t==="start"){let s=n;i=await o.startTransaction({...s,isolationLevel:this.#d(s.isolationLevel)})}else if(t==="commit"){let s=n;await o.commitTransaction(s)}else if(t==="rollback"){let s=n;await o.rollbackTransaction(s)}else ge(t,"Invalid transaction action.")}catch(s){throw this.#a(s)}return i?{id:i.id,payload:void 0}:void 0}async request(t,{interactiveTransaction:r,customDataProxyFetch:n}){_r("sending request");let i=JSON.stringify(t),{executor:o,queryCompiler:s}=await this.#i().catch(l=>{throw this.#a(l,i)}),a;try{a=this.#u(()=>s.compile(i),i)}catch(l){throw this.#p(l)}try{_r("query plan created",a);let l={},c=await o.execute({plan:a,model:t.modelName,operation:t.action,placeholderValues:l,transaction:r,batchIndex:void 0,customFetch:n?.(globalThis.fetch)});return _r("query plan executed"),{data:{[t.action]:c}}}catch(l){throw this.#a(l,i)}}async requestBatch(t,{transaction:r,customDataProxyFetch:n}){if(t.length===0)return[];let i=t[0].action,o=JSON.stringify(It(t,r)),{executor:s,queryCompiler:a}=await this.#i().catch(c=>{throw this.#a(c,o)}),l;try{l=a.compileBatch(o)}catch(c){throw this.#p(c)}try{let c;r?.kind==="itx"&&(c=r.options);let u={};switch(l.type){case"multi":{if(r?.kind!=="itx"){let m=r?.options.isolationLevel?{...this.config.transactionOptions,isolationLevel:r.options.isolationLevel}:this.config.transactionOptions;c=await this.transaction("start",{},m)}let p=[],d=!1;for(let[m,h]of l.plans.entries())try{let g=await s.execute({plan:h,placeholderValues:u,model:t[m].modelName,operation:t[m].action,batchIndex:m,transaction:c,customFetch:n?.(globalThis.fetch)});p.push({data:{[t[m].action]:g}})}catch(g){p.push(g),d=!0;break}return c!==void 0&&r?.kind!=="itx"&&(d?await this.transaction("rollback",{},c):await this.transaction("commit",{},c)),p}case"compacted":{if(!t.every(m=>m.action===i))throw new Error("All queries in a batch must have the same action");let p=await s.execute({plan:l.plan,placeholderValues:u,model:t[0].modelName,operation:i,batchIndex:void 0,transaction:c,customFetch:n?.(globalThis.fetch)});return this.#m(p,l,i)}}}catch(c){throw this.#a(c,o)}}metrics(t){throw new Error("Method not implemented.")}#m(t,r,n){let i=t.map(s=>r.keys.reduce((a,l)=>(a[l]=qe(s[l]),a),{})),o=new Set(r.nestedSelection);return r.arguments.map(s=>{let a=i.findIndex(l=>Er(l,s));if(a===-1)return r.expectNonEmpty?new U("An operation failed because it depends on one or more records that were required but not found",{code:"P2025",clientVersion:this.config.clientVersion}):{data:{[n]:null}};{let l=Object.entries(t[a]).filter(([c])=>o.has(c));return{data:{[n]:Object.fromEntries(l)}}}})}#d(t){switch(t){case void 0:return;case"ReadUncommitted":return"READ UNCOMMITTED";case"ReadCommitted":return"READ COMMITTED";case"RepeatableRead":return"REPEATABLE READ";case"Serializable":return"SERIALIZABLE";case"Snapshot":return"SNAPSHOT";default:throw new U(`Inconsistent column data: Conversion failed: Invalid isolation level \`${t}\``,{code:"P2023",clientVersion:this.config.clientVersion,meta:{providedIsolationLevel:t}})}}};function Gc(e,t,r){return fl({binaryTarget:void 0,title:t,version:e.config.clientVersion,engineVersion:"unknown",database:e.config.activeProvider,query:r})}var qt=class extends ce{name="ForcedRetryError";code="P5001";constructor(t){super("This request must be retried",S(t,!0))}};b(qt,"ForcedRetryError");var ot=class extends ce{name="NotImplementedYetError";code="P5004";constructor(t,r){super(t,S(r,!1))}};b(ot,"NotImplementedYetError");var L=class extends ce{response;constructor(t,r){super(t,r),this.response=r.response;let n=this.response.headers.get("prisma-request-id");if(n){let i=`(The request id was: ${n})`;this.message=this.message+" "+i}}};var st=class extends L{name="SchemaMissingError";code="P5005";constructor(t){super("Schema needs to be uploaded",S(t,!0))}};b(st,"SchemaMissingError");var Lo="This request could not be understood by the server",Mr=class extends L{name="BadRequestError";code="P5000";constructor(t,r,n){super(r||Lo,S(t,!1)),n&&(this.code=n)}};b(Mr,"BadRequestError");var Fr=class extends L{name="HealthcheckTimeoutError";code="P5013";logs;constructor(t,r){super("Engine not started: healthcheck timeout",S(t,!0)),this.logs=r}};b(Fr,"HealthcheckTimeoutError");var Lr=class extends L{name="EngineStartupError";code="P5014";logs;constructor(t,r,n){super(r,S(t,!0)),this.logs=n}};b(Lr,"EngineStartupError");var $r=class extends L{name="EngineVersionNotSupportedError";code="P5012";constructor(t){super("Engine version is not supported",S(t,!1))}};b($r,"EngineVersionNotSupportedError");var $o="Request timed out",Vr=class extends L{name="GatewayTimeoutError";code="P5009";constructor(t,r=$o){super(r,S(t,!1))}};b(Vr,"GatewayTimeoutError");var Qg="Interactive transaction error",qr=class extends L{name="InteractiveTransactionError";code="P5015";constructor(t,r=Qg){super(r,S(t,!1))}};b(qr,"InteractiveTransactionError");var Hg="Request parameters are invalid",Ur=class extends L{name="InvalidRequestError";code="P5011";constructor(t,r=Hg){super(r,S(t,!1))}};b(Ur,"InvalidRequestError");var Vo="Requested resource does not exist",jr=class extends L{name="NotFoundError";code="P5003";constructor(t,r=Vo){super(r,S(t,!1))}};b(jr,"NotFoundError");var qo="Unknown server error",Ut=class extends L{name="ServerError";code="P5006";logs;constructor(t,r,n){super(r||qo,S(t,!0)),this.logs=n}};b(Ut,"ServerError");var Uo="Unauthorized, check your connection string",Br=class extends L{name="UnauthorizedError";code="P5007";constructor(t,r=Uo){super(r,S(t,!1))}};b(Br,"UnauthorizedError");var jo="Usage exceeded, retry again later",Qr=class extends L{name="UsageExceededError";code="P5008";constructor(t,r=jo){super(r,S(t,!0))}};b(Qr,"UsageExceededError");async function Gg(e){let t;try{t=await e.text()}catch{return{type:"EmptyError"}}try{let r=JSON.parse(t);if(typeof r=="string")switch(r){case"InternalDataProxyError":return{type:"DataProxyError",body:r};default:return{type:"UnknownTextError",body:r}}if(typeof r=="object"&&r!==null){if("is_panic"in r&&"message"in r&&"error_code"in r)return{type:"QueryEngineError",body:r};if("EngineNotStarted"in r||"InteractiveTransactionMisrouted"in r||"InvalidRequestError"in r){let n=Object.values(r)[0].reason;return typeof n=="string"&&!["SchemaMissing","EngineVersionNotSupported"].includes(n)?{type:"UnknownJsonError",body:r}:{type:"DataProxyError",body:r}}}return{type:"UnknownJsonError",body:r}}catch{return t===""?{type:"EmptyError"}:{type:"UnknownTextError",body:t}}}async function Hr(e,t){if(e.ok)return;let r={clientVersion:t,response:e},n=await Gg(e);if(n.type==="QueryEngineError")throw new U(n.body.message,{code:n.body.error_code,clientVersion:t});if(n.type==="DataProxyError"){if(n.body==="InternalDataProxyError")throw new Ut(r,"Internal Data Proxy error");if("EngineNotStarted"in n.body){if(n.body.EngineNotStarted.reason==="SchemaMissing")return new st(r);if(n.body.EngineNotStarted.reason==="EngineVersionNotSupported")throw new $r(r);if("EngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,logs:o}=n.body.EngineNotStarted.reason.EngineStartupError;throw new Lr(r,i,o)}if("KnownEngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,error_code:o}=n.body.EngineNotStarted.reason.KnownEngineStartupError;throw new O(i,t,o)}if("HealthcheckTimeout"in n.body.EngineNotStarted.reason){let{logs:i}=n.body.EngineNotStarted.reason.HealthcheckTimeout;throw new Fr(r,i)}}if("InteractiveTransactionMisrouted"in n.body){let i={IDParseError:"Could not parse interactive transaction ID",NoQueryEngineFoundError:"Could not find Query Engine for the specified host and transaction ID",TransactionStartError:"Could not start interactive transaction"};throw new qr(r,i[n.body.InteractiveTransactionMisrouted.reason])}if("InvalidRequestError"in n.body)throw new Ur(r,n.body.InvalidRequestError.reason)}if(e.status===401||e.status===403)throw new Br(r,jt(Uo,n));if(e.status===404)return new jr(r,jt(Vo,n));if(e.status===429)throw new Qr(r,jt(jo,n));if(e.status===504)throw new Vr(r,jt($o,n));if(e.status>=500)throw new Ut(r,jt(qo,n));if(e.status>=400)throw new Mr(r,jt(Lo,n))}function jt(e,t){return t.type==="EmptyError"?e:`${e}: ${JSON.stringify(t)}`}function Jc(e){let t=Math.pow(2,e)*50,r=Math.ceil(Math.random()*t)-Math.ceil(t/2),n=t+r;return new Promise(i=>setTimeout(()=>i(n),n))}var Me="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Kc(e){let t=new TextEncoder().encode(e),r="",n=t.byteLength,i=n%3,o=n-i,s,a,l,c,u;for(let p=0;p<o;p=p+3)u=t[p]<<16|t[p+1]<<8|t[p+2],s=(u&16515072)>>18,a=(u&258048)>>12,l=(u&4032)>>6,c=u&63,r+=Me[s]+Me[a]+Me[l]+Me[c];return i==1?(u=t[o],s=(u&252)>>2,a=(u&3)<<4,r+=Me[s]+Me[a]+"=="):i==2&&(u=t[o]<<8|t[o+1],s=(u&64512)>>10,a=(u&1008)>>4,l=(u&15)<<2,r+=Me[s]+Me[a]+Me[l]+"="),r}function zc(e){if(!!e.generator?.previewFeatures.some(r=>r.toLowerCase().includes("metrics")))throw new O("The `metrics` preview feature is not yet available with Accelerate.\nPlease remove `metrics` from the `previewFeatures` in your schema.\n\nMore information about Accelerate: https://pris.ly/d/accelerate",e.clientVersion)}var Yc={"@prisma/debug":"workspace:*","@prisma/engines-version":"6.14.0-5.b1ce3aa3adca46cf24c957a397e49935368b30ea","@prisma/fetch-engine":"workspace:*","@prisma/get-platform":"workspace:*"};var Gr=class extends ce{name="RequestError";code="P5010";constructor(t,r){super(`Cannot fetch data from service:
73
73
  ${t}`,S(r,!0))}};b(Gr,"RequestError");async function at(e,t,r=n=>n){let{clientVersion:n,...i}=t,o=r(fetch);try{return await o(e,i)}catch(s){let a=s.message??"Unknown error";throw new Gr(a,{clientVersion:n,cause:s})}}var Jg=/^[1-9][0-9]*\.[0-9]+\.[0-9]+$/,Zc=V("prisma:client:dataproxyEngine");async function Kg(e,t){let r=Yc["@prisma/engines-version"],n=t.clientVersion??"unknown";if(process.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION)return process.env.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION||globalThis.PRISMA_CLIENT_DATA_PROXY_CLIENT_VERSION;if(e.includes("accelerate")&&n!=="0.0.0"&&n!=="in-memory")return n;let[i,o]=n?.split("-")??[];if(o===void 0&&Jg.test(i))return i;if(o!==void 0||n==="0.0.0"||n==="in-memory"){let[s]=r.split("-")??[],[a,l,c]=s.split("."),u=zg(`<=${a}.${l}.${c}`),p=await at(u,{clientVersion:n});if(!p.ok)throw new Error(`Failed to fetch stable Prisma version, unpkg.com status ${p.status} ${p.statusText}, response body: ${await p.text()||"<empty body>"}`);let d=await p.text();Zc("length of body fetched from unpkg.com",d.length);let m;try{m=JSON.parse(d)}catch(h){throw console.error("JSON.parse error: body fetched from unpkg.com: ",d),h}return m.version}throw new ot("Only `major.minor.patch` versions are supported by Accelerate.",{clientVersion:n})}async function Xc(e,t){let r=await Kg(e,t);return Zc("version",r),r}function zg(e){return encodeURI(`https://unpkg.com/prisma@${e}/package.json`)}var eu=3,Wr=V("prisma:client:dataproxyEngine"),Jr=class{name="DataProxyEngine";inlineSchema;inlineSchemaHash;inlineDatasources;config;logEmitter;env;clientVersion;engineHash;tracingHelper;remoteClientVersion;host;headerBuilder;startPromise;protocol;constructor(t){zc(t),this.config=t,this.env=t.env,this.inlineSchema=Kc(t.inlineSchema),this.inlineDatasources=t.inlineDatasources,this.inlineSchemaHash=t.inlineSchemaHash,this.clientVersion=t.clientVersion,this.engineHash=t.engineVersion,this.logEmitter=t.logEmitter,this.tracingHelper=t.tracingHelper}apiKey(){return this.headerBuilder.apiKey}version(){return this.engineHash}async start(){this.startPromise!==void 0&&await this.startPromise,this.startPromise=(async()=>{let{apiKey:t,url:r}=this.getURLAndAPIKey();this.host=r.host,this.protocol=r.protocol,this.headerBuilder=new Lt({apiKey:t,tracingHelper:this.tracingHelper,logLevel:this.config.logLevel??"error",logQueries:this.config.logQueries,engineHash:this.engineHash}),this.remoteClientVersion=await Xc(this.host,this.config),Wr("host",this.host),Wr("protocol",this.protocol)})(),await this.startPromise}async stop(){}propagateResponseExtensions(t){t?.logs?.length&&t.logs.forEach(r=>{switch(r.level){case"debug":case"trace":Wr(r);break;case"error":case"warn":case"info":{this.logEmitter.emit(r.level,{timestamp:$t(r.timestamp),message:r.attributes.message??"",target:r.target});break}case"query":{this.logEmitter.emit("query",{query:r.attributes.query??"",timestamp:$t(r.timestamp),duration:r.attributes.duration_ms??0,params:r.attributes.params??"",target:r.target});break}default:r.level}}),t?.traces?.length&&this.tracingHelper.dispatchEngineSpans(t.traces)}onBeforeExit(){throw new Error('"beforeExit" hook is not applicable to the remote query engine')}async url(t){return await this.start(),`${this.protocol}//${this.host}/${this.remoteClientVersion}/${this.inlineSchemaHash}/${t}`}async uploadSchema(){let t={name:"schemaUpload",internal:!0};return this.tracingHelper.runInChildSpan(t,async()=>{let r=await at(await this.url("schema"),{method:"PUT",headers:this.headerBuilder.build(),body:this.inlineSchema,clientVersion:this.clientVersion});r.ok||Wr("schema response status",r.status);let n=await Hr(r,this.clientVersion);if(n)throw this.logEmitter.emit("warn",{message:`Error while uploading schema: ${n.message}`,timestamp:new Date,target:""}),n;this.logEmitter.emit("info",{message:`Schema (re)uploaded (hash: ${this.inlineSchemaHash})`,timestamp:new Date,target:""})})}request(t,{traceparent:r,interactiveTransaction:n,customDataProxyFetch:i}){return this.requestInternal({body:t,traceparent:r,interactiveTransaction:n,customDataProxyFetch:i})}async requestBatch(t,{traceparent:r,transaction:n,customDataProxyFetch:i}){let o=n?.kind==="itx"?n.options:void 0,s=It(t,n);return(await this.requestInternal({body:s,customDataProxyFetch:i,interactiveTransaction:o,traceparent:r})).map(l=>(l.extensions&&this.propagateResponseExtensions(l.extensions),"errors"in l?this.convertProtocolErrorsToClientError(l.errors):l))}requestInternal({body:t,traceparent:r,customDataProxyFetch:n,interactiveTransaction:i}){return this.withRetry({actionGerund:"querying",callback:async({logHttpCall:o})=>{let s=i?`${i.payload.endpoint}/graphql`:await this.url("graphql");o(s);let a=await at(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r,transactionId:i?.id}),body:JSON.stringify(t),clientVersion:this.clientVersion},n);a.ok||Wr("graphql response status",a.status),await this.handleError(await Hr(a,this.clientVersion));let l=await a.json();if(l.extensions&&this.propagateResponseExtensions(l.extensions),"errors"in l)throw this.convertProtocolErrorsToClientError(l.errors);return"batchResult"in l?l.batchResult:l}})}async transaction(t,r,n){let i={start:"starting",commit:"committing",rollback:"rolling back"};return this.withRetry({actionGerund:`${i[t]} transaction`,callback:async({logHttpCall:o})=>{if(t==="start"){let s=JSON.stringify({max_wait:n.maxWait,timeout:n.timeout,isolation_level:n.isolationLevel}),a=await this.url("transaction/start");o(a);let l=await at(a,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),body:s,clientVersion:this.clientVersion});await this.handleError(await Hr(l,this.clientVersion));let c=await l.json(),{extensions:u}=c;u&&this.propagateResponseExtensions(u);let p=c.id,d=c["data-proxy"].endpoint;return{id:p,payload:{endpoint:d}}}else{let s=`${n.payload.endpoint}/${t}`;o(s);let a=await at(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),clientVersion:this.clientVersion});await this.handleError(await Hr(a,this.clientVersion));let l=await a.json(),{extensions:c}=l;c&&this.propagateResponseExtensions(c);return}}})}getURLAndAPIKey(){return ni({clientVersion:this.clientVersion,env:this.env,inlineDatasources:this.inlineDatasources,overrideDatasources:this.config.overrideDatasources})}metrics(){throw new ot("Metrics are not yet supported for Accelerate",{clientVersion:this.clientVersion})}async withRetry(t){for(let r=0;;r++){let n=i=>{this.logEmitter.emit("info",{message:`Calling ${i} (n=${r})`,timestamp:new Date,target:""})};try{return await t.callback({logHttpCall:n})}catch(i){if(!(i instanceof ce)||!i.isRetryable)throw i;if(r>=eu)throw i instanceof qt?i.cause:i;this.logEmitter.emit("warn",{message:`Attempt ${r+1}/${eu} failed for ${t.actionGerund}: ${i.message??"(unknown)"}`,timestamp:new Date,target:""});let o=await Jc(r);this.logEmitter.emit("warn",{message:`Retrying after ${o}ms`,timestamp:new Date,target:""})}}}async handleError(t){if(t instanceof st)throw await this.uploadSchema(),new qt({clientVersion:this.clientVersion,cause:t});if(t)throw t}convertProtocolErrorsToClientError(t){return t.length===1?_n(t[0],this.config.clientVersion,this.config.activeProvider):new X(JSON.stringify(t),{clientVersion:this.config.clientVersion})}applyPendingMigrations(){throw new Error("Method not implemented.")}};function tu({url:e,adapter:t,copyEngine:r,targetBuildType:n}){let i=[],o=[],s=g=>{i.push({_tag:"warning",value:g})},a=g=>{let I=g.join(`
74
74
  `);o.push({_tag:"error",value:I})},l=!!e?.startsWith("prisma://"),c=en(e),u=!!t,p=l||c;!u&&r&&p&&s(["recommend--no-engine","In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)"]);let d=p||!r;u&&(d||n==="edge")&&(n==="edge"?a(["Prisma Client was configured to use the `adapter` option but it was imported via its `/edge` endpoint.","Please either remove the `/edge` endpoint or remove the `adapter` from the Prisma Client constructor."]):r?l&&a(["Prisma Client was configured to use the `adapter` option but the URL was a `prisma://` URL.","Please either use the `prisma://` URL or remove the `adapter` from the Prisma Client constructor."]):a(["Prisma Client was configured to use the `adapter` option but `prisma generate` was run with `--no-engine`.","Please run `prisma generate` without `--no-engine` to be able to use Prisma Client with the adapter."]));let m={accelerate:d,ppg:c,driverAdapters:u};function h(g){return g.length>0}return h(o)?{ok:!1,diagnostics:{warnings:i,errors:o},isUsing:m}:{ok:!0,diagnostics:{warnings:i},isUsing:m}}function ru({copyEngine:e=!0},t){let r;try{r=Ft({inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources,env:{...t.env,...process.env},clientVersion:t.clientVersion})}catch{}let{ok:n,isUsing:i,diagnostics:o}=tu({url:r,adapter:t.adapter,copyEngine:e,targetBuildType:"client"});for(let p of o.warnings)tr(...p.value);if(!n){let p=o.errors[0];throw new ee(p.value,{clientVersion:t.clientVersion})}let s=pt(t.generator),a=s==="library",l=s==="binary",c=s==="client",u=(i.accelerate||i.ppg)&&!i.driverAdapters;return c?new Vt(t,u):i.accelerate?new Jr(t):(i.driverAdapters,i.accelerate,new Vt(t,u))}function oi({generator:e}){return e?.previewFeatures??[]}var nu=e=>({command:e});var iu=e=>e.strings.reduce((t,r,n)=>`${t}@P${n}${r}`);function Bt(e){try{return ou(e,"fast")}catch{return ou(e,"slow")}}function ou(e,t){return JSON.stringify(e.map(r=>au(r,t)))}function au(e,t){if(Array.isArray(e))return e.map(r=>au(r,t));if(typeof e=="bigint")return{prisma__type:"bigint",prisma__value:e.toString()};if(ht(e))return{prisma__type:"date",prisma__value:e.toJSON()};if(K.isDecimal(e))return{prisma__type:"decimal",prisma__value:e.toJSON()};if(Buffer.isBuffer(e))return{prisma__type:"bytes",prisma__value:e.toString("base64")};if(Yg(e))return{prisma__type:"bytes",prisma__value:Buffer.from(e).toString("base64")};if(ArrayBuffer.isView(e)){let{buffer:r,byteOffset:n,byteLength:i}=e;return{prisma__type:"bytes",prisma__value:Buffer.from(r,n,i).toString("base64")}}return typeof e=="object"&&t==="slow"?lu(e):e}function Yg(e){return e instanceof ArrayBuffer||e instanceof SharedArrayBuffer?!0:typeof e=="object"&&e!==null?e[Symbol.toStringTag]==="ArrayBuffer"||e[Symbol.toStringTag]==="SharedArrayBuffer":!1}function lu(e){if(typeof e!="object"||e===null)return e;if(typeof e.toJSON=="function")return e.toJSON();if(Array.isArray(e))return e.map(su);let t={};for(let r of Object.keys(e))t[r]=su(e[r]);return t}function su(e){return typeof e=="bigint"?e.toString():lu(e)}var Zg=/^(\s*alter\s)/i,cu=V("prisma:client");function Bo(e,t,r,n){if(!(e!=="postgresql"&&e!=="cockroachdb")&&r.length>0&&Zg.exec(t))throw new Error(`Running ALTER using ${n} is not supported
75
75
  Using the example below you can still execute your query with Prisma, but please note that it is vulnerable to SQL injection attacks and requires you to take care of input sanitization.