prisma 6.9.0-dev.37 → 6.9.0-dev.38

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.
@@ -5,7 +5,7 @@ import * as __banner_node_url from "node:url";
5
5
  const __filename = __banner_node_url.fileURLToPath(import.meta.url);
6
6
  const __dirname = __banner_node_path.dirname(__filename);
7
7
  const require = __banner_node_module.createRequire(import.meta.url);
8
- var rc=Object.create;var Zn=Object.defineProperty;var nc=Object.getOwnPropertyDescriptor;var ic=Object.getOwnPropertyNames;var oc=Object.getPrototypeOf,sc=Object.prototype.hasOwnProperty;var Vt=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var Mo=(e,t)=>()=>(e&&(t=e(e=0)),t);var G=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),qt=(e,t)=>{for(var r in t)Zn(e,r,{get:t[r],enumerable:!0})},ac=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of ic(t))!sc.call(e,i)&&i!==r&&Zn(e,i,{get:()=>t[i],enumerable:!(n=nc(t,i))||n.enumerable});return e};var ye=(e,t,r)=>(r=e!=null?rc(oc(e)):{},ac(t||!e||!e.__esModule?Zn(r,"default",{value:e,enumerable:!0}):r,e));var Yo=G((rh,Ic)=>{Ic.exports={name:"@prisma/internals",version:"6.9.0-dev.37",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.1","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.8.0-45.7455851ecb807762218289133a725fa353af734c","@prisma/schema-engine-wasm":"6.8.0-45.7455851ecb807762218289133a725fa353af734c","@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 Xo=G((oh,Zo)=>{"use strict";Zo.exports=e=>{let t=e.match(/^[ \t]*(?=\S)/gm);return t?t.reduce((r,n)=>Math.min(r,n.length),1/0):0}});var ns=G((lh,rs)=>{"use strict";rs.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 ss=G((ch,os)=>{"use strict";os.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 oi=G((ph,as)=>{"use strict";var Lc=ss();as.exports=e=>typeof e=="string"?e.replace(Lc(),""):e});var ls=G((gh,$c)=>{$c.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 ms=G((hh,Re)=>{"use strict";var ai=Vt("node:fs"),li=Vt("node:path"),Vc=Vt("node:os"),qc=Vt("node:crypto"),Uc=ls(),cs=Uc.version,jc=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function Bc(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,`
8
+ var rc=Object.create;var Zn=Object.defineProperty;var nc=Object.getOwnPropertyDescriptor;var ic=Object.getOwnPropertyNames;var oc=Object.getPrototypeOf,sc=Object.prototype.hasOwnProperty;var Vt=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var Mo=(e,t)=>()=>(e&&(t=e(e=0)),t);var G=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),qt=(e,t)=>{for(var r in t)Zn(e,r,{get:t[r],enumerable:!0})},ac=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of ic(t))!sc.call(e,i)&&i!==r&&Zn(e,i,{get:()=>t[i],enumerable:!(n=nc(t,i))||n.enumerable});return e};var ye=(e,t,r)=>(r=e!=null?rc(oc(e)):{},ac(t||!e||!e.__esModule?Zn(r,"default",{value:e,enumerable:!0}):r,e));var Yo=G((rh,Ic)=>{Ic.exports={name:"@prisma/internals",version:"6.9.0-dev.38",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.1","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.8.0-45.7455851ecb807762218289133a725fa353af734c","@prisma/schema-engine-wasm":"6.8.0-45.7455851ecb807762218289133a725fa353af734c","@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 Xo=G((oh,Zo)=>{"use strict";Zo.exports=e=>{let t=e.match(/^[ \t]*(?=\S)/gm);return t?t.reduce((r,n)=>Math.min(r,n.length),1/0):0}});var ns=G((lh,rs)=>{"use strict";rs.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 ss=G((ch,os)=>{"use strict";os.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 oi=G((ph,as)=>{"use strict";var Lc=ss();as.exports=e=>typeof e=="string"?e.replace(Lc(),""):e});var ls=G((gh,$c)=>{$c.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 ms=G((hh,Re)=>{"use strict";var ai=Vt("node:fs"),li=Vt("node:path"),Vc=Vt("node:os"),qc=Vt("node:crypto"),Uc=ls(),cs=Uc.version,jc=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function Bc(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,`
9
9
  `);let n;for(;(n=jc.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,`
10
10
  `),o=o.replace(/\\r/g,"\r")),t[i]=o}return t}function Qc(e){let t=ds(e),r=j.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=ps(e).split(","),i=n.length,o;for(let s=0;s<i;s++)try{let a=n[s].trim(),l=Gc(r,a);o=j.decrypt(l.ciphertext,l.key);break}catch(a){if(s+1>=i)throw a}return j.parse(o)}function Hc(e){console.log(`[dotenv@${cs}][WARN] ${e}`)}function Wt(e){console.log(`[dotenv@${cs}][DEBUG] ${e}`)}function ps(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 Gc(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 ds(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)ai.existsSync(r)&&(t=r.endsWith(".vault")?r:`${r}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=li.resolve(process.cwd(),".env.vault");return ai.existsSync(t)?t:null}function us(e){return e[0]==="~"?li.join(Vc.homedir(),e.slice(1)):e}function Wc(e){!!(e&&e.debug)&&Wt("Loading env from encrypted .env.vault");let r=j._parseVault(e),n=process.env;return e&&e.processEnv!=null&&(n=e.processEnv),j.populate(n,r,e),{parsed:r}}function Jc(e){let t=li.resolve(process.cwd(),".env"),r="utf8",n=!!(e&&e.debug);e&&e.encoding?r=e.encoding:n&&Wt("No encoding is specified. UTF-8 is used by default");let i=[t];if(e&&e.path)if(!Array.isArray(e.path))i=[us(e.path)];else{i=[];for(let l of e.path)i.push(us(l))}let o,s={};for(let l of i)try{let u=j.parse(ai.readFileSync(l,{encoding:r}));j.populate(s,u,e)}catch(u){n&&Wt(`Failed to load ${l} ${u.message}`),o=u}let a=process.env;return e&&e.processEnv!=null&&(a=e.processEnv),j.populate(a,s,e),o?{parsed:s,error:o}:{parsed:s}}function Kc(e){if(ps(e).length===0)return j.configDotenv(e);let t=ds(e);return t?j._configVault(e):(Hc(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),j.configDotenv(e))}function zc(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=qc.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",u=s.message==="Unsupported state or unable to authenticate data";if(a||l){let c=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw c.code="INVALID_DOTENV_KEY",c}else if(u){let c=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw c.code="DECRYPTION_FAILED",c}else throw s}}function Yc(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&&Wt(i===!0?`"${o}" is already defined and WAS overwritten`:`"${o}" is already defined and was NOT overwritten`)):e[o]=t[o]}var j={configDotenv:Jc,_configVault:Wc,_parseVault:Qc,config:Kc,decrypt:zc,parse:Bc,populate:Yc};Re.exports.configDotenv=j.configDotenv;Re.exports._configVault=j._configVault;Re.exports._parseVault=j._parseVault;Re.exports.config=j.config;Re.exports.decrypt=j.decrypt;Re.exports.parse=j.parse;Re.exports.populate=j.populate;Re.exports=j});var ys=G((Th,Gr)=>{"use strict";Gr.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()};Gr.exports.default=Gr.exports});var bi=G((ew,Vs)=>{"use strict";Vs.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,u,c,p,d,m,g,h,I,T,C,w,k=[];for(l=0;l<i;l++)k.push(l+1),k.push(t.charCodeAt(s+l));for(var de=k.length-1;a<o-3;)for(I=r.charCodeAt(s+(u=a)),T=r.charCodeAt(s+(c=a+1)),C=r.charCodeAt(s+(p=a+2)),w=r.charCodeAt(s+(d=a+3)),m=a+=4,l=0;l<de;l+=2)g=k[l],h=k[l+1],u=e(g,u,c,I,h),c=e(u,c,p,T,h),p=e(c,p,d,C,h),m=e(p,d,m,w,h),k[l]=m,d=p,p=c,c=u,u=g;for(;a<o;)for(I=r.charCodeAt(s+(u=a)),m=++a,l=0;l<de;l+=2)g=k[l],k[l]=m=e(g,u,m,I,k[l+1]),u=g;return m}}()});var Qs=Mo(()=>{"use strict"});var Hs=Mo(()=>{"use strict"});var da=G((Ib,zd)=>{zd.exports={name:"@prisma/engines-version",version:"6.8.0-43.2060c79ba17c6bb9f5823312b6f6b7f4a845738e",main:"index.js",types:"index.d.ts",license:"Apache-2.0",author:"Tim Suchanek <suchanek@prisma.io>",prisma:{enginesVersion:"2060c79ba17c6bb9f5823312b6f6b7f4a845738e"},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 Ji=G(Ze=>{"use strict";Object.defineProperty(Ze,"__esModule",{value:!0});Ze.anumber=Wi;Ze.abytes=nl;Ze.ahash=ef;Ze.aexists=tf;Ze.aoutput=rf;function Wi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function Xm(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function nl(e,...t){if(!Xm(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 ef(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Wi(e.outputLen),Wi(e.blockLen)}function tf(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 rf(e,t){nl(e);let r=t.outputLen;if(e.length<r)throw new Error("digestInto() expects output buffer of length at least "+r)}});var Al=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=zi;P.split=il;P.add=wl;var Rn=BigInt(2**32-1),Ki=BigInt(32);function zi(e,t=!1){return t?{h:Number(e&Rn),l:Number(e>>Ki&Rn)}:{h:Number(e>>Ki&Rn)|0,l:Number(e&Rn)|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}=zi(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var ol=(e,t)=>BigInt(e>>>0)<<Ki|BigInt(t>>>0);P.toBig=ol;var sl=(e,t,r)=>e>>>r;P.shrSH=sl;var al=(e,t,r)=>e<<32-r|t>>>r;P.shrSL=al;var ll=(e,t,r)=>e>>>r|t<<32-r;P.rotrSH=ll;var ul=(e,t,r)=>e<<32-r|t>>>r;P.rotrSL=ul;var cl=(e,t,r)=>e<<64-r|t>>>r-32;P.rotrBH=cl;var pl=(e,t,r)=>e>>>r-32|t<<64-r;P.rotrBL=pl;var dl=(e,t)=>t;P.rotr32H=dl;var ml=(e,t)=>e;P.rotr32L=ml;var fl=(e,t,r)=>e<<r|t>>>32-r;P.rotlSH=fl;var gl=(e,t,r)=>t<<r|e>>>32-r;P.rotlSL=gl;var hl=(e,t,r)=>t<<r-32|e>>>64-r;P.rotlBH=hl;var yl=(e,t,r)=>e<<r-32|t>>>64-r;P.rotlBL=yl;function wl(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var El=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0);P.add3L=El;var bl=(e,t,r,n)=>t+r+n+(e/2**32|0)|0;P.add3H=bl;var xl=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0);P.add4L=xl;var Pl=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0;P.add4H=Pl;var vl=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0);P.add5L=vl;var Tl=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;P.add5H=Tl;var nf={fromBig:zi,split:il,toBig:ol,shrSH:sl,shrSL:al,rotrSH:ll,rotrSL:ul,rotrBH:cl,rotrBL:pl,rotr32H:dl,rotr32L:ml,rotlSH:fl,rotlSL:gl,rotlBH:hl,rotlBL:yl,add:wl,add3L:El,add3H:bl,add4L:xl,add4H:Pl,add5H:Tl,add5L:vl};P.default=nf});var Cl=G(In=>{"use strict";Object.defineProperty(In,"__esModule",{value:!0});In.crypto=void 0;var Ue=Vt("node:crypto");In.crypto=Ue&&typeof Ue=="object"&&"webcrypto"in Ue?Ue.webcrypto:Ue&&typeof Ue=="object"&&"randomBytes"in Ue?Ue:void 0});var Il=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=sf;R.u32=af;R.createView=lf;R.rotr=uf;R.rotl=cf;R.byteSwap=Xi;R.byteSwap32=pf;R.bytesToHex=mf;R.hexToBytes=ff;R.asyncLoop=hf;R.utf8ToBytes=Rl;R.toBytes=kn;R.concatBytes=yf;R.checkOpts=wf;R.wrapConstructor=Ef;R.wrapConstructorWithOpts=bf;R.wrapXOFConstructorWithOpts=xf;R.randomBytes=Pf;var At=Cl(),Zi=Ji();function of(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function sf(e){return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}function af(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function lf(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function uf(e,t){return e<<32-t|e>>>t}function cf(e,t){return e<<t|e>>>32-t>>>0}R.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function Xi(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}R.byteSwapIfBE=R.isLE?e=>e:e=>Xi(e);function pf(e){for(let t=0;t<e.length;t++)e[t]=Xi(e[t])}var df=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function mf(e){(0,Zi.abytes)(e);let t="";for(let r=0;r<e.length;r++)t+=df[e[r]];return t}var Oe={_0:48,_9:57,A:65,F:70,a:97,f:102};function Sl(e){if(e>=Oe._0&&e<=Oe._9)return e-Oe._0;if(e>=Oe.A&&e<=Oe.F)return e-(Oe.A-10);if(e>=Oe.a&&e<=Oe.f)return e-(Oe.a-10)}function ff(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=Sl(e.charCodeAt(o)),a=Sl(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 gf=async()=>{};R.nextTick=gf;async function hf(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 Rl(e){if(typeof e!="string")throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array(new TextEncoder().encode(e))}function kn(e){return typeof e=="string"&&(e=Rl(e)),(0,Zi.abytes)(e),e}function yf(...e){let t=0;for(let n=0;n<e.length;n++){let i=e[n];(0,Zi.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 Yi=class{clone(){return this._cloneInto()}};R.Hash=Yi;function wf(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 Ef(e){let t=n=>e().update(kn(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function bf(e){let t=(n,i)=>e(i).update(kn(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}function xf(e){let t=(n,i)=>e(i).update(kn(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}function Pf(e=32){if(At.crypto&&typeof At.crypto.getRandomValues=="function")return At.crypto.getRandomValues(new Uint8Array(e));if(At.crypto&&typeof At.crypto.randomBytes=="function")return At.crypto.randomBytes(e);throw new Error("crypto.getRandomValues must be defined")}});var Ll=G(L=>{"use strict";Object.defineProperty(L,"__esModule",{value:!0});L.shake256=L.shake128=L.keccak_512=L.keccak_384=L.keccak_256=L.keccak_224=L.sha3_512=L.sha3_384=L.sha3_256=L.sha3_224=L.Keccak=void 0;L.keccakP=Ml;var Ct=Ji(),wr=Al(),De=Il(),Dl=[],_l=[],Nl=[],vf=BigInt(0),yr=BigInt(1),Tf=BigInt(2),Af=BigInt(7),Cf=BigInt(256),Sf=BigInt(113);for(let e=0,t=yr,r=1,n=0;e<24;e++){[r,n]=[n,(2*r+3*n)%5],Dl.push(2*(5*n+r)),_l.push((e+1)*(e+2)/2%64);let i=vf;for(let o=0;o<7;o++)t=(t<<yr^(t>>Af)*Sf)%Cf,t&Tf&&(i^=yr<<(yr<<BigInt(o))-yr);Nl.push(i)}var[Rf,If]=(0,wr.split)(Nl,!0),kl=(e,t,r)=>r>32?(0,wr.rotlBH)(e,t,r):(0,wr.rotlSH)(e,t,r),Ol=(e,t,r)=>r>32?(0,wr.rotlBL)(e,t,r):(0,wr.rotlSL)(e,t,r);function Ml(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,u=r[l],c=r[l+1],p=kl(u,c,1)^r[a],d=Ol(u,c,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=_l[s],l=kl(i,o,a),u=Ol(i,o,a),c=Dl[s];i=e[c],o=e[c+1],e[c]=l,e[c+1]=u}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]^=Rf[n],e[1]^=If[n]}r.fill(0)}var Er=class e extends De.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,Ct.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,De.u32)(this.state)}keccak(){De.isLE||(0,De.byteSwap32)(this.state32),Ml(this.state32,this.rounds),De.isLE||(0,De.byteSwap32)(this.state32),this.posOut=0,this.pos=0}update(t){(0,Ct.aexists)(this);let{blockLen:r,state:n}=this;t=(0,De.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,Ct.aexists)(this,!1),(0,Ct.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,Ct.anumber)(t),this.xofInto(new Uint8Array(t))}digestInto(t){if((0,Ct.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}};L.Keccak=Er;var je=(e,t,r)=>(0,De.wrapConstructor)(()=>new Er(t,e,r));L.sha3_224=je(6,144,224/8);L.sha3_256=je(6,136,256/8);L.sha3_384=je(6,104,384/8);L.sha3_512=je(6,72,512/8);L.keccak_224=je(1,144,224/8);L.keccak_256=je(1,136,256/8);L.keccak_384=je(1,104,384/8);L.keccak_512=je(1,72,512/8);var Fl=(e,t,r)=>(0,De.wrapXOFConstructorWithOpts)((n={})=>new Er(t,e,n.dkLen===void 0?r:n.dkLen,!0));L.shake128=Fl(31,168,128/8);L.shake256=Fl(31,136,256/8)});var Hl=G((aP,Be)=>{"use strict";var{sha3_512:kf}=Ll(),Vl=24,br=32,eo=(e=4,t=Math.random)=>{let r="";for(;r.length<e;)r=r+Math.floor(t()*36).toString(36);return r};function ql(e){let t=8n,r=0n;for(let n of e.values()){let i=BigInt(n);r=(r<<t)+i}return r}var Ul=(e="")=>ql(kf(e)).toString(36).slice(1),$l=Array.from({length:26},(e,t)=>String.fromCharCode(t+97)),Of=e=>$l[Math.floor(e()*$l.length)],jl=({globalObj:e=typeof global<"u"?global:typeof window<"u"?window:{},random:t=Math.random}={})=>{let r=Object.keys(e).toString(),n=r.length?r+eo(br,t):eo(br,t);return Ul(n).substring(0,br)},Bl=e=>()=>e++,Df=476782367,Ql=({random:e=Math.random,counter:t=Bl(Math.floor(e()*Df)),length:r=Vl,fingerprint:n=jl({random:e})}={})=>function(){let o=Of(e),s=Date.now().toString(36),a=t().toString(36),l=eo(r,e),u=`${s+l+a+n}`;return`${o+Ul(u).substring(1,r)}`},_f=Ql(),Nf=(e,{minLength:t=2,maxLength:r=br}={})=>{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};Be.exports.getConstants=()=>({defaultLength:Vl,bigLength:br});Be.exports.init=Ql;Be.exports.createId=_f;Be.exports.bufToBigInt=ql;Be.exports.createCounter=Bl;Be.exports.createFingerprint=jl;Be.exports.isCuid=Nf});var Gl=G((lP,xr)=>{"use strict";var{createId:Mf,init:Ff,getConstants:Lf,isCuid:$f}=Hl();xr.exports.createId=Mf;xr.exports.init=Ff;xr.exports.getConstants=Lf;xr.exports.isCuid=$f});var $o={};qt($o,{defineExtension:()=>Fo,getExtensionContext:()=>Lo});function Fo(e){return typeof e=="function"?e:t=>t.$extends(e)}function Lo(e){return e}var qo={};qt(qo,{validator:()=>Vo});function Vo(...e){return t=>t}var jr={};qt(jr,{$:()=>Ho,bgBlack:()=>yc,bgBlue:()=>xc,bgCyan:()=>vc,bgGreen:()=>Ec,bgMagenta:()=>Pc,bgRed:()=>wc,bgWhite:()=>Tc,bgYellow:()=>bc,black:()=>mc,blue:()=>We,bold:()=>X,cyan:()=>Se,dim:()=>He,gray:()=>jt,green:()=>Ut,grey:()=>hc,hidden:()=>pc,inverse:()=>cc,italic:()=>uc,magenta:()=>fc,red:()=>Ce,reset:()=>lc,strikethrough:()=>dc,underline:()=>ie,white:()=>gc,yellow:()=>Ge});var Xn,Uo,jo,Bo,Qo=!0;typeof process<"u"&&({FORCE_COLOR:Xn,NODE_DISABLE_COLORS:Uo,NO_COLOR:jo,TERM:Bo}=process.env||{},Qo=process.stdout&&process.stdout.isTTY);var Ho={enabled:!Uo&&jo==null&&Bo!=="dumb"&&(Xn!=null&&Xn!=="0"||Qo)};function M(e,t){let r=new RegExp(`\\x1b\\[${t}m`,"g"),n=`\x1B[${e}m`,i=`\x1B[${t}m`;return function(o){return!Ho.enabled||o==null?o:n+(~(""+o).indexOf(i)?o.replace(r,i+n):o)+i}}var lc=M(0,0),X=M(1,22),He=M(2,22),uc=M(3,23),ie=M(4,24),cc=M(7,27),pc=M(8,28),dc=M(9,29),mc=M(30,39),Ce=M(31,39),Ut=M(32,39),Ge=M(33,39),We=M(34,39),fc=M(35,39),Se=M(36,39),gc=M(37,39),jt=M(90,39),hc=M(90,39),yc=M(40,49),wc=M(41,49),Ec=M(42,49),bc=M(43,49),xc=M(44,49),Pc=M(45,49),vc=M(46,49),Tc=M(47,49);var Ac=100,Go=["green","yellow","blue","magenta","cyan","red"],Bt=[],Wo=Date.now(),Cc=0,ei=typeof process<"u"?process.env:{};globalThis.DEBUG??=ei.DEBUG??"";globalThis.DEBUG_COLORS??=ei.DEBUG_COLORS?ei.DEBUG_COLORS==="true":!0;var Qt={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 Sc(e){let t={color:Go[Cc++%Go.length],enabled:Qt.enabled(e),namespace:e,log:Qt.log,extend:()=>{}},r=(...n)=>{let{enabled:i,namespace:o,color:s,log:a}=t;if(n.length!==0&&Bt.push([o,...n]),Bt.length>Ac&&Bt.shift(),Qt.enabled(o)||i){let l=n.map(c=>typeof c=="string"?c:Rc(c)),u=`+${Date.now()-Wo}ms`;Wo=Date.now(),globalThis.DEBUG_COLORS?a(jr[s](X(o)),...l,jr[s](u)):a(o,...l,u)}};return new Proxy(r,{get:(n,i)=>t[i],set:(n,i,o)=>t[i]=o})}var q=new Proxy(Sc,{get:(e,t)=>Qt[t],set:(e,t,r)=>Qt[t]=r});function Rc(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 Jo(e=7500){let t=Bt.map(([r,...n])=>`${r} ${n.map(i=>typeof i=="string"?i:JSON.stringify(i)).join(" ")}`).join(`
11
11
  `);return t.length<e?t:t.slice(-e)}function Ko(){Bt.length=0}var zo=q;var kc=Yo(),ti=kc.version;function lt(e){let t=Oc();return t||(e?.config.engineType==="library"?"library":e?.config.engineType==="binary"?"binary":e?.config.engineType==="client"?"client":Dc(e))}function Oc(){let e=process.env.PRISMA_CLIENT_ENGINE_TYPE;return e==="library"?"library":e==="binary"?"binary":e==="client"?"client":void 0}function Dc(e){return e?.previewFeatures.includes("queryCompiler")?"client":"library"}var es=ye(Xo(),1);function ri(e){let t=(0,es.default)(e);if(t===0)return e;let r=new RegExp(`^[ \\t]{${t}}`,"gm");return e.replace(r,"")}var ts="prisma+postgres",Br=`${ts}:`;function Qr(e){return e?.toString().startsWith(`${Br}//`)??!1}function ni(e){if(!Qr(e))return!1;let{host:t}=new URL(e);return t.includes("localhost")||t.includes("127.0.0.1")}var Gt={};qt(Gt,{error:()=>Mc,info:()=>Nc,log:()=>_c,query:()=>Fc,should:()=>is,tags:()=>Ht,warn:()=>ii});var Ht={error:Ce("prisma:error"),warn:Ge("prisma:warn"),info:Se("prisma:info"),query:We("prisma:query")},is={warn:()=>!process.env.PRISMA_DISABLE_WARNINGS};function _c(...e){console.log(...e)}function ii(e,...t){is.warn()&&console.warn(`${Ht.warn} ${e}`,...t)}function Nc(e,...t){console.info(`${Ht.info} ${e}`,...t)}function Mc(e,...t){console.error(`${Ht.error} ${e}`,...t)}function Fc(e,...t){console.log(`${Ht.query} ${e}`,...t)}function me(e,t){throw new Error(t)}import Hr from"node:path";function si(e){return Hr.sep===Hr.posix.sep?e:e.split(Hr.sep).join(Hr.posix.sep)}var pi=ye(ms());import ui from"node:fs";import Jt from"node:path";function fs(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],u,c;if(l==="\\")c=a[0],u=c.replace("\\$","$");else{let p=a[2];c=a[0].substring(l.length),u=Object.hasOwnProperty.call(t,p)?t[p]:e.parsed[p]||"",u=r(u)}return o.replace(c,u)},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=zo("prisma:tryLoadEnv");function Kt({rootEnvPath:e,schemaEnvPath:t},r={conflictCheck:"none"}){let n=gs(e);r.conflictCheck!=="none"&&Zc(n,t,r.conflictCheck);let i=null;return hs(n?.path,t)||(i=gs(t)),!n&&!i&&ci("No Environment variables loaded"),i?.dotenvResult.error?console.error(Ce(X("Schema Env Error: "))+i.dotenvResult.error):{message:[n?.message,i?.message].filter(Boolean).join(`
@@ -75,7 +75,7 @@ ${ie(p)}
75
75
  If you want the Prisma team to look into it, please open the link above \u{1F64F}
76
76
  To increase the chance of success, please post your schema and a snippet of
77
77
  how you used Prisma Client in the issue.
78
- `}function $(e,t){throw new Error(t)}function qi(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=>qi(e[r],t[r]))}function fr(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]){if(typeof e[o]=="number"||typeof t[o]=="number")return`${e[o]}`==`${t[o]}`;if(typeof e[o]=="bigint"||typeof t[o]=="bigint")return BigInt(`${e[o]}`.replace(/n$/,""))===BigInt(`${t[o]}`.replace(/n$/,""));if(e[o]instanceof Date||t[o]instanceof Date)return new Date(`${e[o]}`).getTime()===new Date(`${t[o]}`).getTime();if(Z.isDecimal(e[o])||Z.isDecimal(t[o]))return new Z(`${e[o]}`).equals(new Z(`${t[o]}`))}return qi(e[o],t[o])})}function gr(e){return JSON.stringify(e,(t,r)=>typeof r=="bigint"?r.toString():r instanceof Uint8Array?Buffer.from(r).toString("base64"):r)}var V=class extends Error{name="DataMapperError"};function Za(e,t){switch(t.type){case"AffectedRows":if(typeof e!="number")throw new V(`Expected an affected rows count, got: ${typeof e} (${e})`);return{count:e};case"Object":return Ui(e,t.fields);case"Value":return ji(e,"<result>",t.resultType);default:$(t,`Invalid data mapping type: '${t.type}'`)}}function Ui(e,t){if(e===null)return null;if(Array.isArray(e))return e.map(n=>za(n,t));if(typeof e=="object")return za(e,t);if(typeof e=="string"){let r;try{r=JSON.parse(e)}catch(n){throw new V("Expected an array or object, got a string that is not valid JSON",{cause:n})}return Ui(r,t)}throw new V(`Expected an array or an object, got: ${typeof e}`)}function za(e,t){if(typeof e!="object")throw new V(`Expected an object, but got '${typeof e}'`);let r={};for(let[n,i]of Object.entries(t))switch(i.type){case"AffectedRows":throw new V(`Unexpected 'AffectedRows' node in data mapping for field '${n}'`);case"Object":{if(!i.flattened&&!Object.hasOwn(e,n))throw new V(`Missing data field (Object): '${n}'; node: ${JSON.stringify(i)}; data: ${JSON.stringify(e)}`);let o=i.flattened?e:e[n];r[n]=Ui(o,i.fields);break}case"Value":{let o=i.dbName;if(Object.hasOwn(e,o))r[n]=ji(e[o],o,i.resultType);else throw new V(`Missing data field (Value): '${o}'; node: ${JSON.stringify(i)}; data: ${JSON.stringify(e)}`)}break;default:$(i,`DataMapper: Invalid data mapping node type: '${i.type}'`)}return r}function ji(e,t,r){if(e===null)return r.type==="Array"?[]:null;switch(r.type){case"Any":return e;case"String":{if(typeof e!="string")throw new V(`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 n=Math.trunc(Number(e));if(Number.isNaN(n)||!Number.isFinite(n))throw new V(`Expected an integer in column '${t}', got string: ${e}`);if(!Number.isSafeInteger(n))throw new V(`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 n}default:throw new V(`Expected an integer in column '${t}', got ${typeof e}: ${e}`)}case"BigInt":{if(typeof e!="number"&&typeof e!="string")throw new V(`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 n=Number(e);if(Number.isNaN(n)&&!/^[-+]?nan$/.test(e.toLowerCase()))throw new V(`Expected a float in column '${t}', got string: ${e}`);return n}throw new V(`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 V(`Expected a boolean in column '${t}', got ${typeof e}: ${e}`)}throw new V(`Expected a boolean in column '${t}', got ${typeof e}: ${e}`)}case"Decimal":if(typeof e!="number"&&typeof e!="string"&&!Z.isDecimal(e))throw new V(`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:Ya(e)};if(typeof e=="number"||e instanceof Date)return{$type:"DateTime",value:e};throw new V(`Expected a date in column '${t}', got ${typeof e}: ${e}`)}case"Time":{if(typeof e=="string")return{$type:"DateTime",value:`1970-01-01T${Ya(e)}`};throw new V(`Expected a time in column '${t}', got ${typeof e}: ${e}`)}case"Array":return e.map((i,o)=>ji(i,`${t}[${o}]`,r.inner));case"Object":return{$type:"Json",value:typeof e=="string"?e:gr(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")};throw new V(`Expected a byte array in column '${t}', got ${typeof e}: ${e}`)}default:$(r,`DataMapper: Unknown result type: ${r.type}`)}}var Bm=/Z$|(?<!\d{4}-\d{2})[+-]\d{2}(:?\d{2})?$/;function Ya(e){let t=Bm.exec(e);return t===null?`${e}Z`:t[0]!=="Z"&&t[1]===void 0?`${e}:00`:e}var hr;(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"})(hr||(hr={}));function Qm(e){switch(e){case"postgres":return"postgresql";case"mysql":return"mysql";case"sqlite":return"sqlite";default:$(e,`Unknown provider: ${e}`)}}async function Cn({query:e,queryable:t,tracingHelper:r,onQuery:n,execute:i}){return await r.runInChildSpan({name:"db_query",kind:hr.CLIENT,attributes:{"db.query.text":e.sql,"db.system.name":Qm(t.provider)}},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})}function Bi(e){return e.name==="DriverAdapterError"&&typeof e.cause=="object"}var A={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 Te=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 Xa(e){if(!Bi(e))throw e;let t=Hm(e),r=Gm(e);throw!t||!r?e:new Te(r,t,{driverAdapterError:e})}function Hm(e){switch(e.cause.kind){case"AuthenticationFailed":return"P1000";case"DatabaseDoesNotExist":return"P1003";case"SocketTimeout":return"P1008";case"DatabaseAlreadyExists":return"P1009";case"DatabaseAccessDenied":return"P1010";case"LengthMismatch":return"P2000";case"UniqueConstraintViolation":return"P2002";case"ForeignKeyConstraintViolation":return"P2003";case"UnsupportedNativeDataType":return"P2010";case"NullConstraintViolation":return"P2011";case"TableDoesNotExist":return"P2021";case"ColumnNotFound":return"P2022";case"InvalidIsolationLevel":return"P2023";case"TransactionWriteConflict":return"P2034";case"GenericJs":return"P2036";case"TooManyConnections":return"P2037";case"postgres":case"sqlite":case"mysql":return;default:$(e.cause,`Unknown error: ${e.cause}`)}}function Gm(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"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"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 ${Qi({fields:e.cause.fields})}`;case"ForeignKeyConstraintViolation":return`Foreign key constraint violated on the ${Qi(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 ${Qi({fields:e.cause.fields})}`;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"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":return;default:$(e.cause,`Unknown error: ${e.cause}`)}}function Qi(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 Ye(e,t){var r="000000000"+e;return r.substr(r.length-t)}import Wm from"node:os";function Jm(){try{return Wm.hostname()}catch{return process.env._CLUSTER_NETWORK_NAME_||process.env.COMPUTERNAME||"hostname"}}var el=2,Km=Ye(process.pid.toString(36),el),tl=Jm(),zm=tl.length,Ym=Ye(tl.split("").reduce(function(e,t){return+e+t.charCodeAt(0)},+zm+36).toString(36),el);function Hi(){return Km+Ym}function Sn(e){return typeof e=="string"&&/^c[a-z0-9]{20,32}$/.test(e)}function Gi(e){let n=Math.pow(36,4),i=0;function o(){return Ye((Math.random()*n<<0).toString(36),4)}function s(){return i=i<n?i:0,i++,i-1}function a(){var l="c",u=new Date().getTime().toString(36),c=Ye(s().toString(36),4),p=e(),d=o()+o();return l+u+c+p+d}return a.fingerprint=e,a.isCuid=Sn,a}var Zm=Gi(Hi);var rl=Zm;var eu=ye(Gl());import{webcrypto as Jl}from"node:crypto";var Wl="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var Vf=128,Xe,St;function qf(e){!Xe||Xe.length<e?(Xe=Buffer.allocUnsafe(e*Vf),Jl.getRandomValues(Xe),St=0):St+e>Xe.length&&(Jl.getRandomValues(Xe),St=0),St+=e}function to(e=21){qf(e|=0);let t="";for(let r=St-e;r<St;r++)t+=Wl[Xe[r]&63];return t}import On from"node:crypto";var zl="0123456789ABCDEFGHJKMNPQRSTVWXYZ",Pr=32;var Uf=16,Yl=10,Kl=0xffffffffffff;var et;(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"})(et||(et={}));var tt=class extends Error{constructor(t,r){super(`${r} (${t})`),this.name="ULIDError",this.code=t}};function jf(e){let t=Math.floor(e()*Pr);return t===Pr&&(t=Pr-1),zl.charAt(t)}function Bf(e){let t=Qf(),r=t&&(t.crypto||t.msCrypto)||(typeof On<"u"?On: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(On?.randomBytes)return()=>On.randomBytes(1).readUInt8()/255;throw new tt(et.PRNGDetectFailure,"Failed to find a reliable PRNG")}function Qf(){return Wf()?self:typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:null}function Hf(e,t){let r="";for(;e>0;e--)r=jf(t)+r;return r}function Gf(e,t=Yl){if(isNaN(e))throw new tt(et.EncodeTimeValueMalformed,`Time must be a number: ${e}`);if(e>Kl)throw new tt(et.EncodeTimeSizeExceeded,`Cannot encode a time larger than ${Kl}: ${e}`);if(e<0)throw new tt(et.EncodeTimeNegative,`Time must be positive: ${e}`);if(Number.isInteger(e)===!1)throw new tt(et.EncodeTimeValueMalformed,`Time must be an integer: ${e}`);let r,n="";for(let i=t;i>0;i--)r=e%Pr,n=zl.charAt(r)+n,e=(e-r)/Pr;return n}function Wf(){return typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope}function Zl(e,t){let r=t||Bf(),n=!e||isNaN(e)?Date.now():e;return Gf(n,Yl)+Hf(Uf,r)}var J=[];for(let e=0;e<256;++e)J.push((e+256).toString(16).slice(1));function Dn(e,t=0){return(J[e[t+0]]+J[e[t+1]]+J[e[t+2]]+J[e[t+3]]+"-"+J[e[t+4]]+J[e[t+5]]+"-"+J[e[t+6]]+J[e[t+7]]+"-"+J[e[t+8]]+J[e[t+9]]+"-"+J[e[t+10]]+J[e[t+11]]+J[e[t+12]]+J[e[t+13]]+J[e[t+14]]+J[e[t+15]]).toLowerCase()}import{randomFillSync as Jf}from"node:crypto";var Nn=new Uint8Array(256),_n=Nn.length;function Rt(){return _n>Nn.length-16&&(Jf(Nn),_n=0),Nn.slice(_n,_n+=16)}import{randomUUID as Kf}from"node:crypto";var ro={randomUUID:Kf};function zf(e,t,r){if(ro.randomUUID&&!t&&!e)return ro.randomUUID();e=e||{};let n=e.random??e.rng?.()??Rt();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 Dn(n)}var no=zf;var io={};function Yf(e,t,r){let n;if(e)n=Xl(e.random??e.rng?.()??Rt(),e.msecs,e.seq,t,r);else{let i=Date.now(),o=Rt();Zf(io,i,o),n=Xl(o,io.msecs,io.seq,t,r)}return t??Dn(n)}function Zf(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 Xl(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 oo=Yf;var Mn=class{#e={};constructor(){this.register("now",new Fn),this.register("uuid",new so),this.register("cuid",new ao),this.register("ulid",new lo),this.register("nanoid",new uo),this.register("product",new co)}snapshot(){return Object.create(this.#e,{now:{value:new Fn}})}register(t,r){this.#e[t]=r}},Fn=class{#e=new Date;generate(){return this.#e.toISOString()}},so=class{generate(t){if(t===4)return no();if(t===7)return oo();throw new Error("Invalid UUID generator arguments")}},ao=class{generate(t){if(t===1)return rl();if(t===2)return(0,eu.createId)();throw new Error("Invalid CUID generator arguments")}},lo=class{generate(){return Zl()}},uo=class{generate(t){if(typeof t=="number")return to(t);if(t===void 0)return to();throw new Error("Invalid Nanoid generator arguments")}},co=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 po(e){return typeof e=="object"&&e!==null&&e.prisma__type==="param"}function mo(e){return typeof e=="object"&&e!==null&&e.prisma__type==="generatorCall"}function tu(e){return typeof e=="object"&&e!==null&&e.prisma__type==="bytes"}function ru(e){return typeof e=="object"&&e!==null&&e.prisma__type==="bigint"}function ho(e,t,r){let n=e.type;switch(n){case"rawSql":return iu(e.sql,nu(e.params,t,r));case"templateSql":return Xf(e.fragments,e.placeholderFormat,nu(e.params,t,r));default:$(n,"Invalid query type")}}function nu(e,t,r){return e.map(n=>go(n,t,r))}function go(e,t,r){let n=e;for(;tg(n);)if(po(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(mo(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=>go(a,t,r)))}else $(n,`Unexpected unevaluated value type: ${n}`);return Array.isArray(n)?n=n.map(i=>go(i,t,r)):tu(n)?n=Buffer.from(n.prisma__value,"base64"):ru(n)&&(n=BigInt(n.prisma__value)),n}function Xf(e,t,r){let n=0,i=1,o=[],s=e.map(a=>{let l=a.type;switch(l){case"parameter":if(n>=r.length)throw new Error(`Malformed query template. Fragments attempt to read over ${r.length} parameters.`);return o.push(r[n++]),fo(t,i++);case"stringChunk":return a.value;case"parameterTuple":{if(n>=r.length)throw new Error(`Malformed query template. Fragments attempt to read over ${r.length} parameters.`);let u=r[n++],c=Array.isArray(u)?u:[u];return`(${c.length==0?"NULL":c.map(d=>(o.push(d),fo(t,i++))).join(",")})`}case"parameterTupleList":{if(n>=r.length)throw new Error(`Malformed query template. Fragments attempt to read over ${r.length} parameters.`);let u=r[n++];if(!Array.isArray(u))throw new Error("Malformed query template. Tuple list expected.");if(u.length===0)throw new Error("Malformed query template. Tuple list cannot be empty.");return u.map(p=>{if(!Array.isArray(p))throw new Error("Malformed query template. Tuple expected.");return`(${p.map(m=>(o.push(m),fo(t,i++))).join(",")})`}).join(",")}default:$(l,"Invalid fragment type")}}).join("");return iu(s,o)}function fo(e,t){return e.hasNumbering?`${e.prefix}${t}`:e.prefix}function iu(e,t){let r=t.map(n=>eg(n));return{sql:e,args:t,argTypes:r}}function eg(e){return typeof e=="string"?"Text":typeof e=="number"?"Numeric":typeof e=="boolean"?"Boolean":Array.isArray(e)?"Array":Buffer.isBuffer(e)?"Bytes":"Unknown"}function tg(e){return po(e)||mo(e)}function su(e){return e.rows.map(t=>t.reduce((r,n,i)=>{let o=e.columnNames[i].split("."),s=r;for(let a=0;a<o.length;a++){let l=o[a];a===o.length-1?s[l]=n:(s[l]===void 0&&(s[l]={}),s=s[l])}return r},{}))}function au(e){let r=e.columnTypes.map(n=>ou(n)).map(n=>{switch(n){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=>ou(n)),rows:e.rows.map(n=>n.map((i,o)=>r[o](i)))}}function ou(e){switch(e){case A.Int32:return"int";case A.Int64:return"bigint";case A.Float:return"float";case A.Double:return"double";case A.Text:return"string";case A.Enum:return"enum";case A.Bytes:return"bytes";case A.Boolean:return"bool";case A.Character:return"char";case A.Numeric:return"decimal";case A.Json:return"json";case A.Uuid:return"uuid";case A.DateTime:return"datetime";case A.Date:return"date";case A.Time:return"time";case A.Int32Array:return"int-array";case A.Int64Array:return"bigint-array";case A.FloatArray:return"float-array";case A.DoubleArray:return"double-array";case A.TextArray:return"string-array";case A.EnumArray:return"string-array";case A.BytesArray:return"bytes-array";case A.BooleanArray:return"bool-array";case A.CharacterArray:return"char-array";case A.NumericArray:return"decimal-array";case A.JsonArray:return"json-array";case A.UuidArray:return"uuid-array";case A.DateTimeArray:return"datetime-array";case A.DateArray:return"date-array";case A.TimeArray:return"time-array";case A.UnknownNumber:return"unknown";case A.Set:return"string";default:$(e,`Unexpected column type: ${e}`)}}function lu(e,t,r){if(!t.every(n=>yo(e,n))){let n=rg(e,r),i=ng(r);throw new Te(n,i,r.context)}}function yo(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:$(t,`Unknown rule type: ${t.type}`)}}function rg(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:$(t,`Unknown error identifier: ${t}`)}}function ng(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:$(e,`Unknown error identifier: ${e}`)}}var It=class e{#e;#r;#t;#o=new Mn;#n;#s;#i;constructor({transactionManager:t,placeholderValues:r,onQuery:n,tracingHelper:i,serializer:o,rawSerializer:s}){this.#e=t,this.#r=r,this.#t=n,this.#n=i,this.#s=o,this.#i=s??o}static forSql(t){return new e({transactionManager:t.transactionManager,placeholderValues:t.placeholderValues,onQuery:t.onQuery,tracingHelper:t.tracingHelper,serializer:su,rawSerializer:au})}async run(t,r){return this.interpretNode(t,r,this.#r,this.#o.snapshot()).catch(n=>Xa(n))}async interpretNode(t,r,n,i){switch(t.type){case"seq":{let o;for(let s of t.args)o=await this.interpretNode(s,r,n,i);return o}case"get":return n[t.args.name];case"let":{let o=Object.create(n);for(let s of t.args.bindings)o[s.name]=await this.interpretNode(s.expr,r,o,i);return this.interpretNode(t.args.expr,r,o,i)}case"getFirstNonEmpty":{for(let o of t.args.names){let s=n[o];if(!uu(s))return s}return[]}case"concat":{let o=await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i)));return o.length>0?o.reduce((s,a)=>s.concat(vr(a)),[]):[]}case"sum":{let o=await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i)));return o.length>0?o.reduce((s,a)=>cu(s)+cu(a)):0}case"execute":{let o=ho(t.args,n,i);return this.#a(o,r,async()=>await r.executeRaw(o))}case"query":{let o=ho(t.args,n,i);return this.#a(o,r,async()=>t.args.type==="rawSql"?this.#i(await r.queryRaw(o)):this.#s(await r.queryRaw(o)))}case"reverse":{let o=await this.interpretNode(t.args,r,n,i);return Array.isArray(o)?o.reverse():o}case"unique":{let o=await this.interpretNode(t.args,r,n,i);if(!Array.isArray(o))return o;if(o.length>1)throw new Error(`Expected zero or one element, got ${o.length}`);return o[0]??null}case"required":{let o=await this.interpretNode(t.args,r,n,i);if(uu(o))throw new Error("Required value is empty");return o}case"mapField":{let o=await this.interpretNode(t.args.records,r,n,i);return gu(o,t.args.field)}case"join":{let o=await this.interpretNode(t.args.parent,r,n,i);if(o===null)return null;let s=await Promise.all(t.args.children.map(async a=>({joinExpr:a,childRecords:await this.interpretNode(a.child,r,n,i)})));if(Array.isArray(o)){for(let a of o)pu(Ln(a),s);return o}return pu(Ln(o),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 o=await this.interpretNode(t.args.expr,r,n,i);return Za(o,t.args.structure)}case"validate":{let o=await this.interpretNode(t.args.expr,r,n,i);return lu(o,t.args.rules,t.args),o}case"if":{let o=await this.interpretNode(t.args.value,r,n,i);return yo(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;case"diff":{let o=await this.interpretNode(t.args.from,r,n,i),s=await this.interpretNode(t.args.to,r,n,i),a=new Set(vr(s));return vr(o).filter(l=>!a.has(l))}case"distinctBy":{let o=await this.interpretNode(t.args.expr,r,n,i),s=new Set,a=[];for(let l of vr(o)){let u=fu(l,t.args.fields);s.has(u)||(s.add(u),a.push(l))}return a}case"paginate":{let o=await this.interpretNode(t.args.expr,r,n,i),s=vr(o),a=t.args.pagination.linkingFields;if(a!==null){let l=new Map;for(let c of s){let p=fu(c,a);l.has(p)||l.set(p,[]),l.get(p).push(c)}let u=Array.from(l.entries());return u.sort(([c],[p])=>c<p?-1:c>p?1:0),u.flatMap(([,c])=>mu(c,t.args.pagination))}return mu(s,t.args.pagination)}default:$(t,`Unexpected node type: ${t.type}`)}}#a(t,r,n){return Cn({query:t,queryable:r,execute:n,tracingHelper:this.#n,onQuery:this.#t})}};function uu(e){return Array.isArray(e)?e.length===0:e==null}function vr(e){return Array.isArray(e)?e:[e]}function cu(e){if(typeof e=="number")return e;if(typeof e=="string")return Number(e);throw new Error(`Expected number, got ${typeof e}`)}function Ln(e){if(typeof e=="object"&&e!==null)return e;throw new Error(`Expected object, got ${typeof e}`)}function gu(e,t){return Array.isArray(e)?e.map(r=>gu(r,t)):typeof e=="object"&&e!==null?e[t]??null:e}function pu(e,t){for(let{joinExpr:r,childRecords:n}of t)e[r.parentField]=ig(n,e,r);return e}function ig(e,t,r){if(Array.isArray(e)){let n=e.filter(i=>du(Ln(i),t,r));return r.isRelationUnique?n.length>0?n[0]:null:n}else{if(e===null)return null;{let n=Ln(e);return du(n,t,r)?n:null}}}function du(e,t,r){for(let[n,i]of r.on)if(t[n]!==e[i])return!1;return!0}function mu(e,{cursor:t,skip:r,take:n}){let i=t!==null?e.findIndex(a=>fr(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 fu(e,t){return JSON.stringify(t.map(r=>e[r]))}async function og(){return globalThis.crypto??await import("node:crypto")}async function hu(){return(await og()).randomUUID()}var pe=class extends Te{name="TransactionManagerError";constructor(t,r){super("Transaction API error: "+t,"P2028",r)}},Tr=class extends pe{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.")}},$n=class extends pe{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a committed transaction.`)}},Vn=class extends pe{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a transaction that was rolled back.`)}},qn=class extends pe{constructor(){super("Unable to start a transaction in the given time.")}},Un=class extends pe{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})}},kt=class extends pe{constructor(t){super(`Internal Consistency Error: ${t}`)}},jn=class extends pe{constructor(t){super(`Invalid isolation level: ${t}`,{isolationLevel:t})}};var sg=100,Ar=q("prisma:client:transactionManager"),ag=()=>({sql:"COMMIT",args:[],argTypes:[]}),lg=()=>({sql:"ROLLBACK",args:[],argTypes:[]}),ug=()=>({sql:'-- Implicit "COMMIT" query via underlying driver',args:[],argTypes:[]}),cg=()=>({sql:'-- Implicit "ROLLBACK" query via underlying driver',args:[],argTypes:[]}),Cr=class{transactions=new Map;closedTransactions=[];driverAdapter;transactionOptions;tracingHelper;#e;constructor({driverAdapter:t,transactionOptions:r,tracingHelper:n,onQuery:i}){this.driverAdapter=t,this.transactionOptions=r,this.tracingHelper=n,this.#e=i}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 hu(),status:"waiting",timer:void 0,timeout:r.timeout,startedAt:Date.now(),transaction:void 0};this.transactions.set(n.id,n),n.timer=this.startTransactionTimeout(n.id,r.maxWait);let i=await this.driverAdapter.startTransaction(r.isolationLevel);switch(n.status){case"waiting":return n.transaction=i,clearTimeout(n.timer),n.timer=void 0,n.status="running",n.timer=this.startTransactionTimeout(n.id,r.timeout),{id:n.id};case"timed_out":throw new qn;case"running":case"committed":case"rolled_back":throw new kt(`Transaction in invalid state ${n.status} although it just finished startup.`);default:$(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 Tr;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(Ar("Transaction already closed.",{transactionId:t,status:i.status}),i.status){case"waiting":case"running":throw new kt("Active transaction found in closed transactions list.");case"committed":throw new $n(r);case"rolled_back":throw new Vn(r);case"timed_out":throw new Un(r,{timeout:i.timeout,timeTaken:Date.now()-i.startedAt})}else throw Ar("Transaction not found.",t),new Tr}if(["committed","rolled_back","timed_out"].includes(n.status))throw new kt("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()=>{Ar("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"):Ar("Transaction already committed or rolled back when timeout happened.",t)},r)}async closeTransaction(t,r){if(Ar("Closing transaction.",{transactionId:t.id,status:r}),t.status=r,t.transaction&&r==="committed")if(t.transaction.options.usePhantomQuery)await this.#t(ug(),t.transaction,()=>t.transaction.commit());else{await t.transaction.commit();let n=ag();await this.#t(n,t.transaction,()=>t.transaction.executeRaw(n))}else if(t.transaction)if(t.transaction.options.usePhantomQuery)await this.#t(cg(),t.transaction,()=>t.transaction.rollback());else{await t.transaction.rollback();let n=lg();await this.#t(n,t.transaction,()=>t.transaction.executeRaw(n))}clearTimeout(t.timer),t.timer=void 0,this.transactions.delete(t.id),this.closedTransactions.push(t),this.closedTransactions.length>sg&&this.closedTransactions.shift()}validateOptions(t){if(!t.timeout)throw new pe("timeout is required");if(!t.maxWait)throw new pe("maxWait is required");if(t.isolationLevel==="SNAPSHOT")throw new jn(t.isolationLevel);return{...t,timeout:t.timeout,maxWait:t.maxWait}}#t(t,r,n){return Cn({query:t,queryable:r,execute:n,tracingHelper:this.tracingHelper,onQuery:this.#e})}};var Bn="6.9.0-dev.37";var wo,yu={async loadQueryCompiler(e){let{clientVersion:t,adapter:r,compilerWasm:n}=e;if(r===void 0)throw new O(`The \`adapter\` option for \`PrismaClient\` is required in this context (${$i().prettyName})`,t);if(n===void 0)throw new O("WASM query compiler was unexpectedly `undefined`",t);return wo===void 0&&(wo=(async()=>{let i=await n.getRuntime(),o=await n.getQueryCompilerWasmModule();if(o==null)throw new O("The loaded wasm module was unexpectedly `undefined` or `null` once loaded",t);let s={"./query_compiler_bg.js":i},a=new WebAssembly.Instance(o,s),l=a.exports.__wbindgen_start;return i.__wbg_set_wasm(a.exports),l(),i.QueryCompiler})()),await wo}};var wu="P2038",Qn=q("prisma:client:clientEngine"),bu=globalThis;bu.PRISMA_WASM_PANIC_REGISTRY={set_message(e){throw new oe(e,Bn)}};var Ot=class{name="ClientEngine";queryCompiler;instantiateQueryCompilerPromise;QueryCompilerConstructor;queryCompilerLoader;adapterPromise;transactionManagerPromise;config;provider;datamodel;logEmitter;logQueries;logLevel;lastStartedQuery;tracingHelper;#e;constructor(t,r){if(!t.previewFeatures?.includes("driverAdapters"))throw new O("EngineType `client` requires the driverAdapters preview feature to be enabled.",t.clientVersion,wu);if(t.adapter)this.adapterPromise=t.adapter.connect(),this.provider=t.adapter.provider,Qn("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,wu);this.queryCompilerLoader=r??yu,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.#e=n=>{this.logEmitter.emit("query",{...n,params:gr(n.params),target:"ClientEngine"})}),this.transactionManagerPromise=this.adapterPromise.then(n=>new Cr({driverAdapter:n,transactionOptions:{...this.config.transactionOptions,isolationLevel:this.#i(this.config.transactionOptions.isolationLevel)},tracingHelper:this.tracingHelper,onQuery:this.#e})),this.instantiateQueryCompilerPromise=this.instantiateQueryCompiler()}applyPendingMigrations(){throw new Error("Cannot call applyPendingMigrations on engine type client.")}async instantiateQueryCompiler(){if(this.queryCompiler)return;this.QueryCompilerConstructor||(this.QueryCompilerConstructor=await this.queryCompilerLoader.loadQueryCompiler(this.config));let r=(await this.adapterPromise)?.getConnectionInfo?.()??{};try{this.#n(()=>{this.queryCompiler=new this.QueryCompilerConstructor({datamodel:this.datamodel,provider:this.provider,connectionInfo:r})})}catch(n){throw this.#r(n)}}#r(t){if(t instanceof oe)return t;try{let r=JSON.parse(t.message);return new O(r.message,this.config.clientVersion,r.error_code)}catch{return t}}#t(t){if(t instanceof O)return t;if(t.code==="GenericFailure"&&t.message?.startsWith("PANIC:"))return new oe(Eu(this,t.message),this.config.clientVersion);if(t instanceof Te)return new Q(t.message,{code:t.code,meta:t.meta,clientVersion:this.config.clientVersion});try{let r=JSON.parse(t);return new ee(`${r.message}
78
+ `}function $(e,t){throw new Error(t)}function qi(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=>qi(e[r],t[r]))}function fr(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]){if(typeof e[o]=="number"||typeof t[o]=="number")return`${e[o]}`==`${t[o]}`;if(typeof e[o]=="bigint"||typeof t[o]=="bigint")return BigInt(`${e[o]}`.replace(/n$/,""))===BigInt(`${t[o]}`.replace(/n$/,""));if(e[o]instanceof Date||t[o]instanceof Date)return new Date(`${e[o]}`).getTime()===new Date(`${t[o]}`).getTime();if(Z.isDecimal(e[o])||Z.isDecimal(t[o]))return new Z(`${e[o]}`).equals(new Z(`${t[o]}`))}return qi(e[o],t[o])})}function gr(e){return JSON.stringify(e,(t,r)=>typeof r=="bigint"?r.toString():r instanceof Uint8Array?Buffer.from(r).toString("base64"):r)}var V=class extends Error{name="DataMapperError"};function Za(e,t){switch(t.type){case"AffectedRows":if(typeof e!="number")throw new V(`Expected an affected rows count, got: ${typeof e} (${e})`);return{count:e};case"Object":return Ui(e,t.fields);case"Value":return ji(e,"<result>",t.resultType);default:$(t,`Invalid data mapping type: '${t.type}'`)}}function Ui(e,t){if(e===null)return null;if(Array.isArray(e))return e.map(n=>za(n,t));if(typeof e=="object")return za(e,t);if(typeof e=="string"){let r;try{r=JSON.parse(e)}catch(n){throw new V("Expected an array or object, got a string that is not valid JSON",{cause:n})}return Ui(r,t)}throw new V(`Expected an array or an object, got: ${typeof e}`)}function za(e,t){if(typeof e!="object")throw new V(`Expected an object, but got '${typeof e}'`);let r={};for(let[n,i]of Object.entries(t))switch(i.type){case"AffectedRows":throw new V(`Unexpected 'AffectedRows' node in data mapping for field '${n}'`);case"Object":{if(!i.flattened&&!Object.hasOwn(e,n))throw new V(`Missing data field (Object): '${n}'; node: ${JSON.stringify(i)}; data: ${JSON.stringify(e)}`);let o=i.flattened?e:e[n];r[n]=Ui(o,i.fields);break}case"Value":{let o=i.dbName;if(Object.hasOwn(e,o))r[n]=ji(e[o],o,i.resultType);else throw new V(`Missing data field (Value): '${o}'; node: ${JSON.stringify(i)}; data: ${JSON.stringify(e)}`)}break;default:$(i,`DataMapper: Invalid data mapping node type: '${i.type}'`)}return r}function ji(e,t,r){if(e===null)return r.type==="Array"?[]:null;switch(r.type){case"Any":return e;case"String":{if(typeof e!="string")throw new V(`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 n=Math.trunc(Number(e));if(Number.isNaN(n)||!Number.isFinite(n))throw new V(`Expected an integer in column '${t}', got string: ${e}`);if(!Number.isSafeInteger(n))throw new V(`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 n}default:throw new V(`Expected an integer in column '${t}', got ${typeof e}: ${e}`)}case"BigInt":{if(typeof e!="number"&&typeof e!="string")throw new V(`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 n=Number(e);if(Number.isNaN(n)&&!/^[-+]?nan$/.test(e.toLowerCase()))throw new V(`Expected a float in column '${t}', got string: ${e}`);return n}throw new V(`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 V(`Expected a boolean in column '${t}', got ${typeof e}: ${e}`)}throw new V(`Expected a boolean in column '${t}', got ${typeof e}: ${e}`)}case"Decimal":if(typeof e!="number"&&typeof e!="string"&&!Z.isDecimal(e))throw new V(`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:Ya(e)};if(typeof e=="number"||e instanceof Date)return{$type:"DateTime",value:e};throw new V(`Expected a date in column '${t}', got ${typeof e}: ${e}`)}case"Time":{if(typeof e=="string")return{$type:"DateTime",value:`1970-01-01T${Ya(e)}`};throw new V(`Expected a time in column '${t}', got ${typeof e}: ${e}`)}case"Array":return e.map((i,o)=>ji(i,`${t}[${o}]`,r.inner));case"Object":return{$type:"Json",value:typeof e=="string"?e:gr(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")};throw new V(`Expected a byte array in column '${t}', got ${typeof e}: ${e}`)}default:$(r,`DataMapper: Unknown result type: ${r.type}`)}}var Bm=/Z$|(?<!\d{4}-\d{2})[+-]\d{2}(:?\d{2})?$/;function Ya(e){let t=Bm.exec(e);return t===null?`${e}Z`:t[0]!=="Z"&&t[1]===void 0?`${e}:00`:e}var hr;(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"})(hr||(hr={}));function Qm(e){switch(e){case"postgres":return"postgresql";case"mysql":return"mysql";case"sqlite":return"sqlite";default:$(e,`Unknown provider: ${e}`)}}async function Cn({query:e,queryable:t,tracingHelper:r,onQuery:n,execute:i}){return await r.runInChildSpan({name:"db_query",kind:hr.CLIENT,attributes:{"db.query.text":e.sql,"db.system.name":Qm(t.provider)}},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})}function Bi(e){return e.name==="DriverAdapterError"&&typeof e.cause=="object"}var A={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 Te=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 Xa(e){if(!Bi(e))throw e;let t=Hm(e),r=Gm(e);throw!t||!r?e:new Te(r,t,{driverAdapterError:e})}function Hm(e){switch(e.cause.kind){case"AuthenticationFailed":return"P1000";case"DatabaseDoesNotExist":return"P1003";case"SocketTimeout":return"P1008";case"DatabaseAlreadyExists":return"P1009";case"DatabaseAccessDenied":return"P1010";case"LengthMismatch":return"P2000";case"UniqueConstraintViolation":return"P2002";case"ForeignKeyConstraintViolation":return"P2003";case"UnsupportedNativeDataType":return"P2010";case"NullConstraintViolation":return"P2011";case"TableDoesNotExist":return"P2021";case"ColumnNotFound":return"P2022";case"InvalidIsolationLevel":return"P2023";case"TransactionWriteConflict":return"P2034";case"GenericJs":return"P2036";case"TooManyConnections":return"P2037";case"postgres":case"sqlite":case"mysql":return;default:$(e.cause,`Unknown error: ${e.cause}`)}}function Gm(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"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"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 ${Qi({fields:e.cause.fields})}`;case"ForeignKeyConstraintViolation":return`Foreign key constraint violated on the ${Qi(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 ${Qi({fields:e.cause.fields})}`;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"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":return;default:$(e.cause,`Unknown error: ${e.cause}`)}}function Qi(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 Ye(e,t){var r="000000000"+e;return r.substr(r.length-t)}import Wm from"node:os";function Jm(){try{return Wm.hostname()}catch{return process.env._CLUSTER_NETWORK_NAME_||process.env.COMPUTERNAME||"hostname"}}var el=2,Km=Ye(process.pid.toString(36),el),tl=Jm(),zm=tl.length,Ym=Ye(tl.split("").reduce(function(e,t){return+e+t.charCodeAt(0)},+zm+36).toString(36),el);function Hi(){return Km+Ym}function Sn(e){return typeof e=="string"&&/^c[a-z0-9]{20,32}$/.test(e)}function Gi(e){let n=Math.pow(36,4),i=0;function o(){return Ye((Math.random()*n<<0).toString(36),4)}function s(){return i=i<n?i:0,i++,i-1}function a(){var l="c",u=new Date().getTime().toString(36),c=Ye(s().toString(36),4),p=e(),d=o()+o();return l+u+c+p+d}return a.fingerprint=e,a.isCuid=Sn,a}var Zm=Gi(Hi);var rl=Zm;var eu=ye(Gl());import{webcrypto as Jl}from"node:crypto";var Wl="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var Vf=128,Xe,St;function qf(e){!Xe||Xe.length<e?(Xe=Buffer.allocUnsafe(e*Vf),Jl.getRandomValues(Xe),St=0):St+e>Xe.length&&(Jl.getRandomValues(Xe),St=0),St+=e}function to(e=21){qf(e|=0);let t="";for(let r=St-e;r<St;r++)t+=Wl[Xe[r]&63];return t}import On from"node:crypto";var zl="0123456789ABCDEFGHJKMNPQRSTVWXYZ",Pr=32;var Uf=16,Yl=10,Kl=0xffffffffffff;var et;(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"})(et||(et={}));var tt=class extends Error{constructor(t,r){super(`${r} (${t})`),this.name="ULIDError",this.code=t}};function jf(e){let t=Math.floor(e()*Pr);return t===Pr&&(t=Pr-1),zl.charAt(t)}function Bf(e){let t=Qf(),r=t&&(t.crypto||t.msCrypto)||(typeof On<"u"?On: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(On?.randomBytes)return()=>On.randomBytes(1).readUInt8()/255;throw new tt(et.PRNGDetectFailure,"Failed to find a reliable PRNG")}function Qf(){return Wf()?self:typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:null}function Hf(e,t){let r="";for(;e>0;e--)r=jf(t)+r;return r}function Gf(e,t=Yl){if(isNaN(e))throw new tt(et.EncodeTimeValueMalformed,`Time must be a number: ${e}`);if(e>Kl)throw new tt(et.EncodeTimeSizeExceeded,`Cannot encode a time larger than ${Kl}: ${e}`);if(e<0)throw new tt(et.EncodeTimeNegative,`Time must be positive: ${e}`);if(Number.isInteger(e)===!1)throw new tt(et.EncodeTimeValueMalformed,`Time must be an integer: ${e}`);let r,n="";for(let i=t;i>0;i--)r=e%Pr,n=zl.charAt(r)+n,e=(e-r)/Pr;return n}function Wf(){return typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope}function Zl(e,t){let r=t||Bf(),n=!e||isNaN(e)?Date.now():e;return Gf(n,Yl)+Hf(Uf,r)}var J=[];for(let e=0;e<256;++e)J.push((e+256).toString(16).slice(1));function Dn(e,t=0){return(J[e[t+0]]+J[e[t+1]]+J[e[t+2]]+J[e[t+3]]+"-"+J[e[t+4]]+J[e[t+5]]+"-"+J[e[t+6]]+J[e[t+7]]+"-"+J[e[t+8]]+J[e[t+9]]+"-"+J[e[t+10]]+J[e[t+11]]+J[e[t+12]]+J[e[t+13]]+J[e[t+14]]+J[e[t+15]]).toLowerCase()}import{randomFillSync as Jf}from"node:crypto";var Nn=new Uint8Array(256),_n=Nn.length;function Rt(){return _n>Nn.length-16&&(Jf(Nn),_n=0),Nn.slice(_n,_n+=16)}import{randomUUID as Kf}from"node:crypto";var ro={randomUUID:Kf};function zf(e,t,r){if(ro.randomUUID&&!t&&!e)return ro.randomUUID();e=e||{};let n=e.random??e.rng?.()??Rt();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 Dn(n)}var no=zf;var io={};function Yf(e,t,r){let n;if(e)n=Xl(e.random??e.rng?.()??Rt(),e.msecs,e.seq,t,r);else{let i=Date.now(),o=Rt();Zf(io,i,o),n=Xl(o,io.msecs,io.seq,t,r)}return t??Dn(n)}function Zf(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 Xl(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 oo=Yf;var Mn=class{#e={};constructor(){this.register("now",new Fn),this.register("uuid",new so),this.register("cuid",new ao),this.register("ulid",new lo),this.register("nanoid",new uo),this.register("product",new co)}snapshot(){return Object.create(this.#e,{now:{value:new Fn}})}register(t,r){this.#e[t]=r}},Fn=class{#e=new Date;generate(){return this.#e.toISOString()}},so=class{generate(t){if(t===4)return no();if(t===7)return oo();throw new Error("Invalid UUID generator arguments")}},ao=class{generate(t){if(t===1)return rl();if(t===2)return(0,eu.createId)();throw new Error("Invalid CUID generator arguments")}},lo=class{generate(){return Zl()}},uo=class{generate(t){if(typeof t=="number")return to(t);if(t===void 0)return to();throw new Error("Invalid Nanoid generator arguments")}},co=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 po(e){return typeof e=="object"&&e!==null&&e.prisma__type==="param"}function mo(e){return typeof e=="object"&&e!==null&&e.prisma__type==="generatorCall"}function tu(e){return typeof e=="object"&&e!==null&&e.prisma__type==="bytes"}function ru(e){return typeof e=="object"&&e!==null&&e.prisma__type==="bigint"}function ho(e,t,r){let n=e.type;switch(n){case"rawSql":return iu(e.sql,nu(e.params,t,r));case"templateSql":return Xf(e.fragments,e.placeholderFormat,nu(e.params,t,r));default:$(n,"Invalid query type")}}function nu(e,t,r){return e.map(n=>go(n,t,r))}function go(e,t,r){let n=e;for(;tg(n);)if(po(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(mo(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=>go(a,t,r)))}else $(n,`Unexpected unevaluated value type: ${n}`);return Array.isArray(n)?n=n.map(i=>go(i,t,r)):tu(n)?n=Buffer.from(n.prisma__value,"base64"):ru(n)&&(n=BigInt(n.prisma__value)),n}function Xf(e,t,r){let n=0,i=1,o=[],s=e.map(a=>{let l=a.type;switch(l){case"parameter":if(n>=r.length)throw new Error(`Malformed query template. Fragments attempt to read over ${r.length} parameters.`);return o.push(r[n++]),fo(t,i++);case"stringChunk":return a.value;case"parameterTuple":{if(n>=r.length)throw new Error(`Malformed query template. Fragments attempt to read over ${r.length} parameters.`);let u=r[n++],c=Array.isArray(u)?u:[u];return`(${c.length==0?"NULL":c.map(d=>(o.push(d),fo(t,i++))).join(",")})`}case"parameterTupleList":{if(n>=r.length)throw new Error(`Malformed query template. Fragments attempt to read over ${r.length} parameters.`);let u=r[n++];if(!Array.isArray(u))throw new Error("Malformed query template. Tuple list expected.");if(u.length===0)throw new Error("Malformed query template. Tuple list cannot be empty.");return u.map(p=>{if(!Array.isArray(p))throw new Error("Malformed query template. Tuple expected.");return`(${p.map(m=>(o.push(m),fo(t,i++))).join(",")})`}).join(",")}default:$(l,"Invalid fragment type")}}).join("");return iu(s,o)}function fo(e,t){return e.hasNumbering?`${e.prefix}${t}`:e.prefix}function iu(e,t){let r=t.map(n=>eg(n));return{sql:e,args:t,argTypes:r}}function eg(e){return typeof e=="string"?"Text":typeof e=="number"?"Numeric":typeof e=="boolean"?"Boolean":Array.isArray(e)?"Array":Buffer.isBuffer(e)?"Bytes":"Unknown"}function tg(e){return po(e)||mo(e)}function su(e){return e.rows.map(t=>t.reduce((r,n,i)=>{let o=e.columnNames[i].split("."),s=r;for(let a=0;a<o.length;a++){let l=o[a];a===o.length-1?s[l]=n:(s[l]===void 0&&(s[l]={}),s=s[l])}return r},{}))}function au(e){let r=e.columnTypes.map(n=>ou(n)).map(n=>{switch(n){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=>ou(n)),rows:e.rows.map(n=>n.map((i,o)=>r[o](i)))}}function ou(e){switch(e){case A.Int32:return"int";case A.Int64:return"bigint";case A.Float:return"float";case A.Double:return"double";case A.Text:return"string";case A.Enum:return"enum";case A.Bytes:return"bytes";case A.Boolean:return"bool";case A.Character:return"char";case A.Numeric:return"decimal";case A.Json:return"json";case A.Uuid:return"uuid";case A.DateTime:return"datetime";case A.Date:return"date";case A.Time:return"time";case A.Int32Array:return"int-array";case A.Int64Array:return"bigint-array";case A.FloatArray:return"float-array";case A.DoubleArray:return"double-array";case A.TextArray:return"string-array";case A.EnumArray:return"string-array";case A.BytesArray:return"bytes-array";case A.BooleanArray:return"bool-array";case A.CharacterArray:return"char-array";case A.NumericArray:return"decimal-array";case A.JsonArray:return"json-array";case A.UuidArray:return"uuid-array";case A.DateTimeArray:return"datetime-array";case A.DateArray:return"date-array";case A.TimeArray:return"time-array";case A.UnknownNumber:return"unknown";case A.Set:return"string";default:$(e,`Unexpected column type: ${e}`)}}function lu(e,t,r){if(!t.every(n=>yo(e,n))){let n=rg(e,r),i=ng(r);throw new Te(n,i,r.context)}}function yo(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:$(t,`Unknown rule type: ${t.type}`)}}function rg(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:$(t,`Unknown error identifier: ${t}`)}}function ng(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:$(e,`Unknown error identifier: ${e}`)}}var It=class e{#e;#r;#t;#o=new Mn;#n;#s;#i;constructor({transactionManager:t,placeholderValues:r,onQuery:n,tracingHelper:i,serializer:o,rawSerializer:s}){this.#e=t,this.#r=r,this.#t=n,this.#n=i,this.#s=o,this.#i=s??o}static forSql(t){return new e({transactionManager:t.transactionManager,placeholderValues:t.placeholderValues,onQuery:t.onQuery,tracingHelper:t.tracingHelper,serializer:su,rawSerializer:au})}async run(t,r){return this.interpretNode(t,r,this.#r,this.#o.snapshot()).catch(n=>Xa(n))}async interpretNode(t,r,n,i){switch(t.type){case"seq":{let o;for(let s of t.args)o=await this.interpretNode(s,r,n,i);return o}case"get":return n[t.args.name];case"let":{let o=Object.create(n);for(let s of t.args.bindings)o[s.name]=await this.interpretNode(s.expr,r,o,i);return this.interpretNode(t.args.expr,r,o,i)}case"getFirstNonEmpty":{for(let o of t.args.names){let s=n[o];if(!uu(s))return s}return[]}case"concat":{let o=await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i)));return o.length>0?o.reduce((s,a)=>s.concat(vr(a)),[]):[]}case"sum":{let o=await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i)));return o.length>0?o.reduce((s,a)=>cu(s)+cu(a)):0}case"execute":{let o=ho(t.args,n,i);return this.#a(o,r,async()=>await r.executeRaw(o))}case"query":{let o=ho(t.args,n,i);return this.#a(o,r,async()=>t.args.type==="rawSql"?this.#i(await r.queryRaw(o)):this.#s(await r.queryRaw(o)))}case"reverse":{let o=await this.interpretNode(t.args,r,n,i);return Array.isArray(o)?o.reverse():o}case"unique":{let o=await this.interpretNode(t.args,r,n,i);if(!Array.isArray(o))return o;if(o.length>1)throw new Error(`Expected zero or one element, got ${o.length}`);return o[0]??null}case"required":{let o=await this.interpretNode(t.args,r,n,i);if(uu(o))throw new Error("Required value is empty");return o}case"mapField":{let o=await this.interpretNode(t.args.records,r,n,i);return gu(o,t.args.field)}case"join":{let o=await this.interpretNode(t.args.parent,r,n,i);if(o===null)return null;let s=await Promise.all(t.args.children.map(async a=>({joinExpr:a,childRecords:await this.interpretNode(a.child,r,n,i)})));if(Array.isArray(o)){for(let a of o)pu(Ln(a),s);return o}return pu(Ln(o),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 o=await this.interpretNode(t.args.expr,r,n,i);return Za(o,t.args.structure)}case"validate":{let o=await this.interpretNode(t.args.expr,r,n,i);return lu(o,t.args.rules,t.args),o}case"if":{let o=await this.interpretNode(t.args.value,r,n,i);return yo(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;case"diff":{let o=await this.interpretNode(t.args.from,r,n,i),s=await this.interpretNode(t.args.to,r,n,i),a=new Set(vr(s));return vr(o).filter(l=>!a.has(l))}case"distinctBy":{let o=await this.interpretNode(t.args.expr,r,n,i),s=new Set,a=[];for(let l of vr(o)){let u=fu(l,t.args.fields);s.has(u)||(s.add(u),a.push(l))}return a}case"paginate":{let o=await this.interpretNode(t.args.expr,r,n,i),s=vr(o),a=t.args.pagination.linkingFields;if(a!==null){let l=new Map;for(let c of s){let p=fu(c,a);l.has(p)||l.set(p,[]),l.get(p).push(c)}let u=Array.from(l.entries());return u.sort(([c],[p])=>c<p?-1:c>p?1:0),u.flatMap(([,c])=>mu(c,t.args.pagination))}return mu(s,t.args.pagination)}default:$(t,`Unexpected node type: ${t.type}`)}}#a(t,r,n){return Cn({query:t,queryable:r,execute:n,tracingHelper:this.#n,onQuery:this.#t})}};function uu(e){return Array.isArray(e)?e.length===0:e==null}function vr(e){return Array.isArray(e)?e:[e]}function cu(e){if(typeof e=="number")return e;if(typeof e=="string")return Number(e);throw new Error(`Expected number, got ${typeof e}`)}function Ln(e){if(typeof e=="object"&&e!==null)return e;throw new Error(`Expected object, got ${typeof e}`)}function gu(e,t){return Array.isArray(e)?e.map(r=>gu(r,t)):typeof e=="object"&&e!==null?e[t]??null:e}function pu(e,t){for(let{joinExpr:r,childRecords:n}of t)e[r.parentField]=ig(n,e,r);return e}function ig(e,t,r){if(Array.isArray(e)){let n=e.filter(i=>du(Ln(i),t,r));return r.isRelationUnique?n.length>0?n[0]:null:n}else{if(e===null)return null;{let n=Ln(e);return du(n,t,r)?n:null}}}function du(e,t,r){for(let[n,i]of r.on)if(t[n]!==e[i])return!1;return!0}function mu(e,{cursor:t,skip:r,take:n}){let i=t!==null?e.findIndex(a=>fr(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 fu(e,t){return JSON.stringify(t.map(r=>e[r]))}async function og(){return globalThis.crypto??await import("node:crypto")}async function hu(){return(await og()).randomUUID()}var pe=class extends Te{name="TransactionManagerError";constructor(t,r){super("Transaction API error: "+t,"P2028",r)}},Tr=class extends pe{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.")}},$n=class extends pe{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a committed transaction.`)}},Vn=class extends pe{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a transaction that was rolled back.`)}},qn=class extends pe{constructor(){super("Unable to start a transaction in the given time.")}},Un=class extends pe{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})}},kt=class extends pe{constructor(t){super(`Internal Consistency Error: ${t}`)}},jn=class extends pe{constructor(t){super(`Invalid isolation level: ${t}`,{isolationLevel:t})}};var sg=100,Ar=q("prisma:client:transactionManager"),ag=()=>({sql:"COMMIT",args:[],argTypes:[]}),lg=()=>({sql:"ROLLBACK",args:[],argTypes:[]}),ug=()=>({sql:'-- Implicit "COMMIT" query via underlying driver',args:[],argTypes:[]}),cg=()=>({sql:'-- Implicit "ROLLBACK" query via underlying driver',args:[],argTypes:[]}),Cr=class{transactions=new Map;closedTransactions=[];driverAdapter;transactionOptions;tracingHelper;#e;constructor({driverAdapter:t,transactionOptions:r,tracingHelper:n,onQuery:i}){this.driverAdapter=t,this.transactionOptions=r,this.tracingHelper=n,this.#e=i}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 hu(),status:"waiting",timer:void 0,timeout:r.timeout,startedAt:Date.now(),transaction:void 0};this.transactions.set(n.id,n),n.timer=this.startTransactionTimeout(n.id,r.maxWait);let i=await this.driverAdapter.startTransaction(r.isolationLevel);switch(n.status){case"waiting":return n.transaction=i,clearTimeout(n.timer),n.timer=void 0,n.status="running",n.timer=this.startTransactionTimeout(n.id,r.timeout),{id:n.id};case"timed_out":throw new qn;case"running":case"committed":case"rolled_back":throw new kt(`Transaction in invalid state ${n.status} although it just finished startup.`);default:$(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 Tr;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(Ar("Transaction already closed.",{transactionId:t,status:i.status}),i.status){case"waiting":case"running":throw new kt("Active transaction found in closed transactions list.");case"committed":throw new $n(r);case"rolled_back":throw new Vn(r);case"timed_out":throw new Un(r,{timeout:i.timeout,timeTaken:Date.now()-i.startedAt})}else throw Ar("Transaction not found.",t),new Tr}if(["committed","rolled_back","timed_out"].includes(n.status))throw new kt("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()=>{Ar("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"):Ar("Transaction already committed or rolled back when timeout happened.",t)},r)}async closeTransaction(t,r){if(Ar("Closing transaction.",{transactionId:t.id,status:r}),t.status=r,t.transaction&&r==="committed")if(t.transaction.options.usePhantomQuery)await this.#t(ug(),t.transaction,()=>t.transaction.commit());else{await t.transaction.commit();let n=ag();await this.#t(n,t.transaction,()=>t.transaction.executeRaw(n))}else if(t.transaction)if(t.transaction.options.usePhantomQuery)await this.#t(cg(),t.transaction,()=>t.transaction.rollback());else{await t.transaction.rollback();let n=lg();await this.#t(n,t.transaction,()=>t.transaction.executeRaw(n))}clearTimeout(t.timer),t.timer=void 0,this.transactions.delete(t.id),this.closedTransactions.push(t),this.closedTransactions.length>sg&&this.closedTransactions.shift()}validateOptions(t){if(!t.timeout)throw new pe("timeout is required");if(!t.maxWait)throw new pe("maxWait is required");if(t.isolationLevel==="SNAPSHOT")throw new jn(t.isolationLevel);return{...t,timeout:t.timeout,maxWait:t.maxWait}}#t(t,r,n){return Cn({query:t,queryable:r,execute:n,tracingHelper:this.tracingHelper,onQuery:this.#e})}};var Bn="6.9.0-dev.38";var wo,yu={async loadQueryCompiler(e){let{clientVersion:t,adapter:r,compilerWasm:n}=e;if(r===void 0)throw new O(`The \`adapter\` option for \`PrismaClient\` is required in this context (${$i().prettyName})`,t);if(n===void 0)throw new O("WASM query compiler was unexpectedly `undefined`",t);return wo===void 0&&(wo=(async()=>{let i=await n.getRuntime(),o=await n.getQueryCompilerWasmModule();if(o==null)throw new O("The loaded wasm module was unexpectedly `undefined` or `null` once loaded",t);let s={"./query_compiler_bg.js":i},a=new WebAssembly.Instance(o,s),l=a.exports.__wbindgen_start;return i.__wbg_set_wasm(a.exports),l(),i.QueryCompiler})()),await wo}};var wu="P2038",Qn=q("prisma:client:clientEngine"),bu=globalThis;bu.PRISMA_WASM_PANIC_REGISTRY={set_message(e){throw new oe(e,Bn)}};var Ot=class{name="ClientEngine";queryCompiler;instantiateQueryCompilerPromise;QueryCompilerConstructor;queryCompilerLoader;adapterPromise;transactionManagerPromise;config;provider;datamodel;logEmitter;logQueries;logLevel;lastStartedQuery;tracingHelper;#e;constructor(t,r){if(!t.previewFeatures?.includes("driverAdapters"))throw new O("EngineType `client` requires the driverAdapters preview feature to be enabled.",t.clientVersion,wu);if(t.adapter)this.adapterPromise=t.adapter.connect(),this.provider=t.adapter.provider,Qn("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,wu);this.queryCompilerLoader=r??yu,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.#e=n=>{this.logEmitter.emit("query",{...n,params:gr(n.params),target:"ClientEngine"})}),this.transactionManagerPromise=this.adapterPromise.then(n=>new Cr({driverAdapter:n,transactionOptions:{...this.config.transactionOptions,isolationLevel:this.#i(this.config.transactionOptions.isolationLevel)},tracingHelper:this.tracingHelper,onQuery:this.#e})),this.instantiateQueryCompilerPromise=this.instantiateQueryCompiler()}applyPendingMigrations(){throw new Error("Cannot call applyPendingMigrations on engine type client.")}async instantiateQueryCompiler(){if(this.queryCompiler)return;this.QueryCompilerConstructor||(this.QueryCompilerConstructor=await this.queryCompilerLoader.loadQueryCompiler(this.config));let r=(await this.adapterPromise)?.getConnectionInfo?.()??{};try{this.#n(()=>{this.queryCompiler=new this.QueryCompilerConstructor({datamodel:this.datamodel,provider:this.provider,connectionInfo:r})})}catch(n){throw this.#r(n)}}#r(t){if(t instanceof oe)return t;try{let r=JSON.parse(t.message);return new O(r.message,this.config.clientVersion,r.error_code)}catch{return t}}#t(t){if(t instanceof O)return t;if(t.code==="GenericFailure"&&t.message?.startsWith("PANIC:"))return new oe(Eu(this,t.message),this.config.clientVersion);if(t instanceof Te)return new Q(t.message,{code:t.code,meta:t.meta,clientVersion:this.config.clientVersion});try{let r=JSON.parse(t);return new ee(`${r.message}
79
79
  ${r.backtrace}`,{clientVersion:this.config.clientVersion})}catch{return t}}#o(t){return t instanceof oe?t:typeof t.message=="string"&&typeof t.code=="string"?new Q(t.message,{code:t.code,meta:t.meta,clientVersion:this.config.clientVersion}):t}#n(t){let r=bu.PRISMA_WASM_PANIC_REGISTRY.set_message,n;global.PRISMA_WASM_PANIC_REGISTRY.set_message=i=>{n=i};try{return t()}finally{if(global.PRISMA_WASM_PANIC_REGISTRY.set_message=r,n)throw new oe(Eu(this,n),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.tracingHelper.runInChildSpan("connect",()=>this.ensureStarted())}async stop(){await this.tracingHelper.runInChildSpan("disconnect",async()=>{await this.instantiateQueryCompilerPromise,await(await this.transactionManagerPromise)?.cancelAllTransactions(),await(await this.adapterPromise).dispose()})}async ensureStarted(){let t=await this.adapterPromise,r=await this.transactionManagerPromise;return await this.instantiateQueryCompilerPromise,[t,r]}version(){return"unknown"}async transaction(t,r,n){let i,o=await this.transactionManagerPromise;try{if(t==="start"){let s=n;i=await o.startTransaction({...s,isolationLevel:this.#i(s.isolationLevel)})}else if(t==="commit"){let s=n;await o.commitTransaction(s.id)}else if(t==="rollback"){let s=n;await o.rollbackTransaction(s.id)}else me(t,"Invalid transaction action.")}catch(s){throw this.#t(s)}return i?{id:i.id,payload:void 0}:void 0}async request(t,{traceparent:r,interactiveTransaction:n}){Qn("sending request");let i=JSON.stringify(t);this.lastStartedQuery=i;let[o,s]=await this.ensureStarted().catch(l=>{throw this.#t(l)}),a;try{a=this.#n(()=>this.queryCompiler.compile(i))}catch(l){throw this.#o(l)}try{let l=JSON.parse(a);Qn("query plan created",a);let u=n?s.getTransaction(n,"query"):o,c=n?{enabled:!1}:{enabled:!0,manager:s},p={},m=await It.forSql({transactionManager:c,placeholderValues:p,onQuery:this.#e,tracingHelper:this.tracingHelper}).run(l,u);return Qn("query plan executed"),{data:{[t.action]:m}}}catch(l){throw this.#t(l)}}async requestBatch(t,{transaction:r,traceparent:n}){if(t.length===0)return[];let i=t[0].action,o=JSON.stringify(vt(t,r));this.lastStartedQuery=o;let[,s]=await this.ensureStarted().catch(l=>{throw this.#t(l)}),a;try{a=this.queryCompiler.compileBatch(o)}catch(l){throw this.#o(l)}try{let l;if(r?.kind==="itx")l=r.options;else{let m=r?.options.isolationLevel?{...this.config.transactionOptions,isolationLevel:r.options.isolationLevel}:this.config.transactionOptions;l=await this.transaction("start",{},m)}let u={},c=It.forSql({transactionManager:{enabled:!1},placeholderValues:u,onQuery:this.#e,tracingHelper:this.tracingHelper}),p=s.getTransaction(l,"batch query"),d=[];switch(a.type){case"multi":{d=await Promise.all(a.plans.map((m,g)=>c.run(m,p).then(h=>({data:{[t[g].action]:h}}),h=>h)));break}case"compacted":{if(!t.every(g=>g.action===i))throw new Error("All queries in a batch must have the same action");let m=await c.run(a.plan,p);d=this.#s(m,a,i);break}}return r?.kind!=="itx"&&await this.transaction("commit",{},l),d}catch(l){throw this.#t(l)}}metrics(t){throw new Error("Method not implemented.")}#s(t,r,n){let i=t.map(s=>r.keys.reduce((a,l)=>(a[l]=Ke(s[l]),a),{})),o=new Set(r.nestedSelection);return r.arguments.map(s=>{let a=i.findIndex(l=>fr(l,s));if(a===-1)return r.expectNonEmpty?new Q("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(([u])=>o.has(u));return{data:{[n]:Object.fromEntries(l)}}}})}#i(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 Q(`Inconsistent column data: Conversion failed: Invalid isolation level \`${t}\``,{code:"P2023",clientVersion:this.config.clientVersion,meta:{providedIsolationLevel:t}})}}};function Eu(e,t){return Ka({binaryTarget:void 0,title:t,version:e.config.clientVersion,engineVersion:"unknown",database:e.config.activeProvider,query:e.lastStartedQuery})}function Dt({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 Hn=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 ae=class extends Hn{isRetryable;constructor(t,r){super(t,r),this.isRetryable=r.isRetryable??!0}};function S(e,t){return{...e,isRetryable:t}}var _t=class extends ae{name="ForcedRetryError";code="P5001";constructor(t){super("This request must be retried",S(t,!0))}};x(_t,"ForcedRetryError");var rt=class extends ae{name="InvalidDatasourceError";code="P6001";constructor(t,r){super(t,S(r,!1))}};x(rt,"InvalidDatasourceError");var nt=class extends ae{name="NotImplementedYetError";code="P5004";constructor(t,r){super(t,S(r,!1))}};x(nt,"NotImplementedYetError");var F=class extends ae{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 it=class extends F{name="SchemaMissingError";code="P5005";constructor(t){super("Schema needs to be uploaded",S(t,!0))}};x(it,"SchemaMissingError");var Eo="This request could not be understood by the server",Sr=class extends F{name="BadRequestError";code="P5000";constructor(t,r,n){super(r||Eo,S(t,!1)),n&&(this.code=n)}};x(Sr,"BadRequestError");var Rr=class extends F{name="HealthcheckTimeoutError";code="P5013";logs;constructor(t,r){super("Engine not started: healthcheck timeout",S(t,!0)),this.logs=r}};x(Rr,"HealthcheckTimeoutError");var Ir=class extends F{name="EngineStartupError";code="P5014";logs;constructor(t,r,n){super(r,S(t,!0)),this.logs=n}};x(Ir,"EngineStartupError");var kr=class extends F{name="EngineVersionNotSupportedError";code="P5012";constructor(t){super("Engine version is not supported",S(t,!1))}};x(kr,"EngineVersionNotSupportedError");var bo="Request timed out",Or=class extends F{name="GatewayTimeoutError";code="P5009";constructor(t,r=bo){super(r,S(t,!1))}};x(Or,"GatewayTimeoutError");var dg="Interactive transaction error",Dr=class extends F{name="InteractiveTransactionError";code="P5015";constructor(t,r=dg){super(r,S(t,!1))}};x(Dr,"InteractiveTransactionError");var mg="Request parameters are invalid",_r=class extends F{name="InvalidRequestError";code="P5011";constructor(t,r=mg){super(r,S(t,!1))}};x(_r,"InvalidRequestError");var xo="Requested resource does not exist",Nr=class extends F{name="NotFoundError";code="P5003";constructor(t,r=xo){super(r,S(t,!1))}};x(Nr,"NotFoundError");var Po="Unknown server error",Nt=class extends F{name="ServerError";code="P5006";logs;constructor(t,r,n){super(r||Po,S(t,!0)),this.logs=n}};x(Nt,"ServerError");var vo="Unauthorized, check your connection string",Mr=class extends F{name="UnauthorizedError";code="P5007";constructor(t,r=vo){super(r,S(t,!1))}};x(Mr,"UnauthorizedError");var To="Usage exceeded, retry again later",Fr=class extends F{name="UsageExceededError";code="P5008";constructor(t,r=To){super(r,S(t,!0))}};x(Fr,"UsageExceededError");async function fg(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 Lr(e,t){if(e.ok)return;let r={clientVersion:t,response:e},n=await fg(e);if(n.type==="QueryEngineError")throw new Q(n.body.message,{code:n.body.error_code,clientVersion:t});if(n.type==="DataProxyError"){if(n.body==="InternalDataProxyError")throw new Nt(r,"Internal Data Proxy error");if("EngineNotStarted"in n.body){if(n.body.EngineNotStarted.reason==="SchemaMissing")return new it(r);if(n.body.EngineNotStarted.reason==="EngineVersionNotSupported")throw new kr(r);if("EngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,logs:o}=n.body.EngineNotStarted.reason.EngineStartupError;throw new Ir(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 Rr(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 Dr(r,i[n.body.InteractiveTransactionMisrouted.reason])}if("InvalidRequestError"in n.body)throw new _r(r,n.body.InvalidRequestError.reason)}if(e.status===401||e.status===403)throw new Mr(r,Mt(vo,n));if(e.status===404)return new Nr(r,Mt(xo,n));if(e.status===429)throw new Fr(r,Mt(To,n));if(e.status===504)throw new Or(r,Mt(bo,n));if(e.status>=500)throw new Nt(r,Mt(Po,n));if(e.status>=400)throw new Sr(r,Mt(Eo,n))}function Mt(e,t){return t.type==="EmptyError"?e:`${e}: ${JSON.stringify(t)}`}function xu(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 _e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Pu(e){let t=new TextEncoder().encode(e),r="",n=t.byteLength,i=n%3,o=n-i,s,a,l,u,c;for(let p=0;p<o;p=p+3)c=t[p]<<16|t[p+1]<<8|t[p+2],s=(c&16515072)>>18,a=(c&258048)>>12,l=(c&4032)>>6,u=c&63,r+=_e[s]+_e[a]+_e[l]+_e[u];return i==1?(c=t[o],s=(c&252)>>2,a=(c&3)<<4,r+=_e[s]+_e[a]+"=="):i==2&&(c=t[o]<<8|t[o+1],s=(c&64512)>>10,a=(c&1008)>>4,l=(c&15)<<2,r+=_e[s]+_e[a]+_e[l]+"="),r}function vu(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)}function gg(e){return e[0]*1e3+e[1]/1e6}function Ao(e){return new Date(gg(e))}var Tu={"@prisma/debug":"workspace:*","@prisma/engines-version":"6.8.0-43.2060c79ba17c6bb9f5823312b6f6b7f4a845738e","@prisma/fetch-engine":"workspace:*","@prisma/get-platform":"workspace:*"};var $r=class extends ae{name="RequestError";code="P5010";constructor(t,r){super(`Cannot fetch data from service:
80
80
  ${t}`,S(r,!0))}};x($r,"RequestError");async function ot(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 $r(a,{clientVersion:n,cause:s})}}var yg=/^[1-9][0-9]*\.[0-9]+\.[0-9]+$/,Au=q("prisma:client:dataproxyEngine");async function wg(e,t){let r=Tu["@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&&yg.test(i))return i;if(o!==void 0||n==="0.0.0"||n==="in-memory"){let[s]=r.split("-")??[],[a,l,u]=s.split("."),c=Eg(`<=${a}.${l}.${u}`),p=await ot(c,{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();Au("length of body fetched from unpkg.com",d.length);let m;try{m=JSON.parse(d)}catch(g){throw console.error("JSON.parse error: body fetched from unpkg.com: ",d),g}return m.version}throw new nt("Only `major.minor.patch` versions are supported by Accelerate.",{clientVersion:n})}async function Cu(e,t){let r=await wg(e,t);return Au("version",r),r}function Eg(e){return encodeURI(`https://unpkg.com/prisma@${e}/package.json`)}var Su=3,Vr=q("prisma:client:dataproxyEngine"),Co=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,interactiveTransaction:r}={}){let n={Authorization:`Bearer ${this.apiKey}`,"Prisma-Engine-Hash":this.engineHash};this.tracingHelper.isEnabled()&&(n.traceparent=t??this.tracingHelper.getTraceParent()),r&&(n["X-transaction-id"]=r.id);let i=this.buildCaptureSettings();return i.length>0&&(n["X-capture-telemetry"]=i.join(", ")),n}buildCaptureSettings(){let t=[];return this.tracingHelper.isEnabled()&&t.push("tracing"),this.logLevel&&t.push(this.logLevel),this.logQueries&&t.push("query"),t}},qr=class{name="DataProxyEngine";inlineSchema;inlineSchemaHash;inlineDatasources;config;logEmitter;env;clientVersion;engineHash;tracingHelper;remoteClientVersion;host;headerBuilder;startPromise;protocol;constructor(t){vu(t),this.config=t,this.env={...t.env,...typeof process<"u"?process.env:{}},this.inlineSchema=Pu(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.headerBuilder=new Co({apiKey:t,tracingHelper:this.tracingHelper,logLevel:this.config.logLevel,logQueries:this.config.logQueries,engineHash:this.engineHash}),this.protocol=ni(r)?"http":"https",this.remoteClientVersion=await Cu(this.host,this.config),Vr("host",this.host),Vr("protocol",this.protocol)})(),await this.startPromise}async stop(){}propagateResponseExtensions(t){t?.logs?.length&&t.logs.forEach(r=>{switch(r.level){case"debug":case"trace":Vr(r);break;case"error":case"warn":case"info":{this.logEmitter.emit(r.level,{timestamp:Ao(r.timestamp),message:r.attributes.message??"",target:r.target});break}case"query":{this.logEmitter.emit("query",{query:r.attributes.query??"",timestamp:Ao(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 ot(await this.url("schema"),{method:"PUT",headers:this.headerBuilder.build(),body:this.inlineSchema,clientVersion:this.clientVersion});r.ok||Vr("schema response status",r.status);let n=await Lr(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=vt(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 ot(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r,interactiveTransaction:i}),body:JSON.stringify(t),clientVersion:this.clientVersion},n);a.ok||Vr("graphql response status",a.status),await this.handleError(await Lr(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 ot(a,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),body:s,clientVersion:this.clientVersion});await this.handleError(await Lr(l,this.clientVersion));let u=await l.json(),{extensions:c}=u;c&&this.propagateResponseExtensions(c);let p=u.id,d=u["data-proxy"].endpoint;return{id:p,payload:{endpoint:d}}}else{let s=`${n.payload.endpoint}/${t}`;o(s);let a=await ot(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),clientVersion:this.clientVersion});await this.handleError(await Lr(a,this.clientVersion));let l=await a.json(),{extensions:u}=l;u&&this.propagateResponseExtensions(u);return}}})}getURLAndAPIKey(){let t={clientVersion:this.clientVersion},r=Object.keys(this.inlineDatasources)[0],n=Dt({inlineDatasources:this.inlineDatasources,overrideDatasources:this.config.overrideDatasources,clientVersion:this.clientVersion,env:this.env}),i;try{i=new URL(n)}catch{throw new rt(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\``,t)}let{protocol:o,searchParams:s}=i;if(o!=="prisma:"&&o!==Br)throw new rt(`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 rt(`Error validating datasource \`${r}\`: the URL must contain a valid API key`,t);return{apiKey:a,url:i}}metrics(){throw new nt("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 ae)||!i.isRetryable)throw i;if(r>=Su)throw i instanceof _t?i.cause:i;this.logEmitter.emit("warn",{message:`Attempt ${r+1}/${Su} failed for ${t.actionGerund}: ${i.message??"(unknown)"}`,timestamp:new Date,target:""});let o=await xu(r);this.logEmitter.emit("warn",{message:`Retrying after ${o}ms`,timestamp:new Date,target:""})}}}async handleError(t){if(t instanceof it)throw await this.uploadSchema(),new _t({clientVersion:this.clientVersion,cause:t});if(t)throw t}convertProtocolErrorsToClientError(t){return t.length===1?vn(t[0],this.config.clientVersion,this.config.activeProvider):new ee(JSON.stringify(t),{clientVersion:this.config.clientVersion})}applyPendingMigrations(){throw new Error("Method not implemented.")}};function Ru({copyEngine:e=!0},t){let r;try{r=Dt({inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources,env:{...t.env,...process.env},clientVersion:t.clientVersion})}catch{}let n=!!(r?.startsWith("prisma://")||Qr(r));e&&n&&Wr("recommend--no-engine","In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)");let i=lt(t.generator),o=n||!e,s=!!t.adapter,a=i==="library",l=i==="binary",u=i==="client";if(o&&s||s&&!1){let c;throw e?r?.startsWith("prisma://")?c=["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."]:c=["Prisma Client was configured to use both the `adapter` and Accelerate, please chose one."]:c=["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."],new te(c.join(`
81
81
  `),{clientVersion:t.clientVersion})}return o?new qr(t):u?new Ot(t):new Ot(t)}function Gn({generator:e}){return e?.previewFeatures??[]}var Iu=e=>({command:e});var ku=e=>e.strings.reduce((t,r,n)=>`${t}@P${n}${r}`);function Ft(e){try{return Ou(e,"fast")}catch{return Ou(e,"slow")}}function Ou(e,t){return JSON.stringify(e.map(r=>_u(r,t)))}function _u(e,t){if(Array.isArray(e))return e.map(r=>_u(r,t));if(typeof e=="bigint")return{prisma__type:"bigint",prisma__value:e.toString()};if(dt(e))return{prisma__type:"date",prisma__value:e.toJSON()};if(Z.isDecimal(e))return{prisma__type:"decimal",prisma__value:e.toJSON()};if(Buffer.isBuffer(e))return{prisma__type:"bytes",prisma__value:e.toString("base64")};if(bg(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"?Nu(e):e}function bg(e){return e instanceof ArrayBuffer||e instanceof SharedArrayBuffer?!0:typeof e=="object"&&e!==null?e[Symbol.toStringTag]==="ArrayBuffer"||e[Symbol.toStringTag]==="SharedArrayBuffer":!1}function Nu(e){if(typeof e!="object"||e===null)return e;if(typeof e.toJSON=="function")return e.toJSON();if(Array.isArray(e))return e.map(Du);let t={};for(let r of Object.keys(e))t[r]=Du(e[r]);return t}function Du(e){return typeof e=="bigint"?e.toString():Nu(e)}var xg=/^(\s*alter\s)/i,Mu=q("prisma:client");function So(e,t,r,n){if(!(e!=="postgresql"&&e!=="cockroachdb")&&r.length>0&&xg.exec(t))throw new Error(`Running ALTER using ${n} is not supported