prisma 6.9.0-dev.4 → 6.9.0-dev.5

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 Gu=Object.create;var Gn=Object.defineProperty;var Wu=Object.getOwnPropertyDescriptor;var Ju=Object.getOwnPropertyNames;var Ku=Object.getPrototypeOf,zu=Object.prototype.hasOwnProperty;var Mt=(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 Ro=(e,t)=>()=>(e&&(t=e(e=0)),t);var B=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Ft=(e,t)=>{for(var r in t)Gn(e,r,{get:t[r],enumerable:!0})},Yu=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Ju(t))!zu.call(e,i)&&i!==r&&Gn(e,i,{get:()=>t[i],enumerable:!(n=Wu(t,i))||n.enumerable});return e};var ge=(e,t,r)=>(r=e!=null?Gu(Ku(e)):{},Yu(t||!e||!e.__esModule?Gn(r,"default",{value:e,enumerable:!0}):r,e));var Qo=B((Bg,Ec)=>{Ec.exports={name:"@prisma/internals",version:"6.9.0-dev.4",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-43.2060c79ba17c6bb9f5823312b6f6b7f4a845738e","@prisma/schema-engine-wasm":"6.8.0-43.2060c79ba17c6bb9f5823312b6f6b7f4a845738e","@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 Go=B((Gg,Ho)=>{"use strict";Ho.exports=e=>{let t=e.match(/^[ \t]*(?=\S)/gm);return t?t.reduce((r,n)=>Math.min(r,n.length),1/0):0}});var zo=B((Kg,Ko)=>{"use strict";Ko.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 Xo=B((Yg,Zo)=>{"use strict";Zo.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 Xn=B((Zg,es)=>{"use strict";var Sc=Xo();es.exports=e=>typeof e=="string"?e.replace(Sc(),""):e});var ts=B((rh,Rc)=>{Rc.exports={name:"dotenv",version:"16.5.0",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var ss=B((nh,Ce)=>{"use strict";var ti=Mt("node:fs"),ri=Mt("node:path"),kc=Mt("node:os"),Ic=Mt("node:crypto"),Oc=ts(),ns=Oc.version,Dc=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function _c(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,`
8
+ var Gu=Object.create;var Gn=Object.defineProperty;var Wu=Object.getOwnPropertyDescriptor;var Ju=Object.getOwnPropertyNames;var Ku=Object.getPrototypeOf,zu=Object.prototype.hasOwnProperty;var Mt=(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 Ro=(e,t)=>()=>(e&&(t=e(e=0)),t);var B=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Ft=(e,t)=>{for(var r in t)Gn(e,r,{get:t[r],enumerable:!0})},Yu=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Ju(t))!zu.call(e,i)&&i!==r&&Gn(e,i,{get:()=>t[i],enumerable:!(n=Wu(t,i))||n.enumerable});return e};var ge=(e,t,r)=>(r=e!=null?Gu(Ku(e)):{},Yu(t||!e||!e.__esModule?Gn(r,"default",{value:e,enumerable:!0}):r,e));var Qo=B((Bg,Ec)=>{Ec.exports={name:"@prisma/internals",version:"6.9.0-dev.5",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-43.2060c79ba17c6bb9f5823312b6f6b7f4a845738e","@prisma/schema-engine-wasm":"6.8.0-43.2060c79ba17c6bb9f5823312b6f6b7f4a845738e","@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 Go=B((Gg,Ho)=>{"use strict";Ho.exports=e=>{let t=e.match(/^[ \t]*(?=\S)/gm);return t?t.reduce((r,n)=>Math.min(r,n.length),1/0):0}});var zo=B((Kg,Ko)=>{"use strict";Ko.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 Xo=B((Yg,Zo)=>{"use strict";Zo.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 Xn=B((Zg,es)=>{"use strict";var Sc=Xo();es.exports=e=>typeof e=="string"?e.replace(Sc(),""):e});var ts=B((rh,Rc)=>{Rc.exports={name:"dotenv",version:"16.5.0",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var ss=B((nh,Ce)=>{"use strict";var ti=Mt("node:fs"),ri=Mt("node:path"),kc=Mt("node:os"),Ic=Mt("node:crypto"),Oc=ts(),ns=Oc.version,Dc=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function _c(e){let t={},r=e.toString();r=r.replace(/\r\n?/mg,`
9
9
  `);let n;for(;(n=Dc.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 Nc(e){let t=os(e),r=q.configDotenv({path:t});if(!r.parsed){let s=new Error(`MISSING_DATA: Cannot parse ${t} for an unknown reason`);throw s.code="MISSING_DATA",s}let n=is(e).split(","),i=n.length,o;for(let s=0;s<i;s++)try{let a=n[s].trim(),l=Fc(r,a);o=q.decrypt(l.ciphertext,l.key);break}catch(a){if(s+1>=i)throw a}return q.parse(o)}function Mc(e){console.log(`[dotenv@${ns}][WARN] ${e}`)}function Bt(e){console.log(`[dotenv@${ns}][DEBUG] ${e}`)}function is(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 Fc(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 os(e){let t=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let r of e.path)ti.existsSync(r)&&(t=r.endsWith(".vault")?r:`${r}.vault`);else t=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else t=ri.resolve(process.cwd(),".env.vault");return ti.existsSync(t)?t:null}function rs(e){return e[0]==="~"?ri.join(kc.homedir(),e.slice(1)):e}function Lc(e){!!(e&&e.debug)&&Bt("Loading env from encrypted .env.vault");let r=q._parseVault(e),n=process.env;return e&&e.processEnv!=null&&(n=e.processEnv),q.populate(n,r,e),{parsed:r}}function $c(e){let t=ri.resolve(process.cwd(),".env"),r="utf8",n=!!(e&&e.debug);e&&e.encoding?r=e.encoding:n&&Bt("No encoding is specified. UTF-8 is used by default");let i=[t];if(e&&e.path)if(!Array.isArray(e.path))i=[rs(e.path)];else{i=[];for(let l of e.path)i.push(rs(l))}let o,s={};for(let l of i)try{let u=q.parse(ti.readFileSync(l,{encoding:r}));q.populate(s,u,e)}catch(u){n&&Bt(`Failed to load ${l} ${u.message}`),o=u}let a=process.env;return e&&e.processEnv!=null&&(a=e.processEnv),q.populate(a,s,e),o?{parsed:s,error:o}:{parsed:s}}function Vc(e){if(is(e).length===0)return q.configDotenv(e);let t=os(e);return t?q._configVault(e):(Mc(`You set DOTENV_KEY but you are missing a .env.vault file at ${t}. Did you forget to build it?`),q.configDotenv(e))}function qc(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=Ic.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 jc(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&&Bt(i===!0?`"${o}" is already defined and WAS overwritten`:`"${o}" is already defined and was NOT overwritten`)):e[o]=t[o]}var q={configDotenv:$c,_configVault:Lc,_parseVault:Nc,config:Vc,decrypt:qc,parse:_c,populate:jc};Ce.exports.configDotenv=q.configDotenv;Ce.exports._configVault=q._configVault;Ce.exports._parseVault=q._parseVault;Ce.exports.config=q.config;Ce.exports.decrypt=q.decrypt;Ce.exports.parse=q.parse;Ce.exports.populate=q.populate;Ce.exports=q});var cs=B((ph,jr)=>{"use strict";jr.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()};jr.exports.default=jr.exports});var fi=B((jy,Ds)=>{"use strict";Ds.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,R,T,C,w,k=[];for(l=0;l<i;l++)k.push(l+1),k.push(t.charCodeAt(s+l));for(var ce=k.length-1;a<o-3;)for(R=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<ce;l+=2)g=k[l],h=k[l+1],u=e(g,u,c,R,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(R=r.charCodeAt(s+(u=a)),m=++a,l=0;l<ce;l+=2)g=k[l],k[l]=m=e(g,u,m,R,k[l+1]),u=g;return m}}()});var Ls=Ro(()=>{"use strict"});var $s=Ro(()=>{"use strict"});var oa=B((hb,qd)=>{qd.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 qi=B(Je=>{"use strict";Object.defineProperty(Je,"__esModule",{value:!0});Je.anumber=Vi;Je.abytes=Ya;Je.ahash=Um;Je.aexists=Bm;Je.aoutput=Qm;function Vi(e){if(!Number.isSafeInteger(e)||e<0)throw new Error("positive integer expected, got "+e)}function jm(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Ya(e,...t){if(!jm(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 Um(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Vi(e.outputLen),Vi(e.blockLen)}function Bm(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 Qm(e,t){Ya(e);let r=t.outputLen;if(e.length<r)throw new Error("digestInto() expects output buffer of length at least "+r)}});var El=B(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=Ui;P.split=Za;P.add=dl;var Pn=BigInt(2**32-1),ji=BigInt(32);function Ui(e,t=!1){return t?{h:Number(e&Pn),l:Number(e>>ji&Pn)}:{h:Number(e>>ji&Pn)|0,l:Number(e&Pn)|0}}function Za(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}=Ui(e[i],t);[r[i],n[i]]=[o,s]}return[r,n]}var Xa=(e,t)=>BigInt(e>>>0)<<ji|BigInt(t>>>0);P.toBig=Xa;var el=(e,t,r)=>e>>>r;P.shrSH=el;var tl=(e,t,r)=>e<<32-r|t>>>r;P.shrSL=tl;var rl=(e,t,r)=>e>>>r|t<<32-r;P.rotrSH=rl;var nl=(e,t,r)=>e<<32-r|t>>>r;P.rotrSL=nl;var il=(e,t,r)=>e<<64-r|t>>>r-32;P.rotrBH=il;var ol=(e,t,r)=>e>>>r-32|t<<64-r;P.rotrBL=ol;var sl=(e,t)=>t;P.rotr32H=sl;var al=(e,t)=>e;P.rotr32L=al;var ll=(e,t,r)=>e<<r|t>>>32-r;P.rotlSH=ll;var ul=(e,t,r)=>t<<r|e>>>32-r;P.rotlSL=ul;var cl=(e,t,r)=>t<<r-32|e>>>64-r;P.rotlBH=cl;var pl=(e,t,r)=>e<<r-32|t>>>64-r;P.rotlBL=pl;function dl(e,t,r,n){let i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:i|0}}var ml=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0);P.add3L=ml;var fl=(e,t,r,n)=>t+r+n+(e/2**32|0)|0;P.add3H=fl;var gl=(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0);P.add4L=gl;var hl=(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0;P.add4H=hl;var yl=(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0);P.add5L=yl;var wl=(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0;P.add5H=wl;var Hm={fromBig:Ui,split:Za,toBig:Xa,shrSH:el,shrSL:tl,rotrSH:rl,rotrSL:nl,rotrBH:il,rotrBL:ol,rotr32H:sl,rotr32L:al,rotlSH:ll,rotlSL:ul,rotlBH:cl,rotlBL:pl,add:dl,add3L:ml,add3H:fl,add4L:gl,add4H:hl,add5H:wl,add5L:yl};P.default=Hm});var bl=B(vn=>{"use strict";Object.defineProperty(vn,"__esModule",{value:!0});vn.crypto=void 0;var $e=Mt("node:crypto");vn.crypto=$e&&typeof $e=="object"&&"webcrypto"in $e?$e.webcrypto:$e&&typeof $e=="object"&&"randomBytes"in $e?$e:void 0});var vl=B(S=>{"use strict";Object.defineProperty(S,"__esModule",{value:!0});S.Hash=S.nextTick=S.byteSwapIfBE=S.isLE=void 0;S.isBytes=Gm;S.u8=Wm;S.u32=Jm;S.createView=Km;S.rotr=zm;S.rotl=Ym;S.byteSwap=Hi;S.byteSwap32=Zm;S.bytesToHex=ef;S.hexToBytes=tf;S.asyncLoop=nf;S.utf8ToBytes=Pl;S.toBytes=Tn;S.concatBytes=of;S.checkOpts=sf;S.wrapConstructor=af;S.wrapConstructorWithOpts=lf;S.wrapXOFConstructorWithOpts=uf;S.randomBytes=cf;var xt=bl(),Qi=qi();function Gm(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name==="Uint8Array"}function Wm(e){return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}function Jm(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function Km(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function zm(e,t){return e<<32-t|e>>>t}function Ym(e,t){return e<<t|e>>>32-t>>>0}S.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function Hi(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}S.byteSwapIfBE=S.isLE?e=>e:e=>Hi(e);function Zm(e){for(let t=0;t<e.length;t++)e[t]=Hi(e[t])}var Xm=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function ef(e){(0,Qi.abytes)(e);let t="";for(let r=0;r<e.length;r++)t+=Xm[e[r]];return t}var Re={_0:48,_9:57,A:65,F:70,a:97,f:102};function xl(e){if(e>=Re._0&&e<=Re._9)return e-Re._0;if(e>=Re.A&&e<=Re.F)return e-(Re.A-10);if(e>=Re.a&&e<=Re.f)return e-(Re.a-10)}function tf(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=xl(e.charCodeAt(o)),a=xl(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 rf=async()=>{};S.nextTick=rf;async function nf(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,S.nextTick)(),n+=o)}}function Pl(e){if(typeof e!="string")throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array(new TextEncoder().encode(e))}function Tn(e){return typeof e=="string"&&(e=Pl(e)),(0,Qi.abytes)(e),e}function of(...e){let t=0;for(let n=0;n<e.length;n++){let i=e[n];(0,Qi.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 Bi=class{clone(){return this._cloneInto()}};S.Hash=Bi;function sf(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 af(e){let t=n=>e().update(Tn(n)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function lf(e){let t=(n,i)=>e(i).update(Tn(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}function uf(e){let t=(n,i)=>e(i).update(Tn(n)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=n=>e(n),t}function cf(e=32){if(xt.crypto&&typeof xt.crypto.getRandomValues=="function")return xt.crypto.getRandomValues(new Uint8Array(e));if(xt.crypto&&typeof xt.crypto.randomBytes=="function")return xt.crypto.randomBytes(e);throw new Error("crypto.getRandomValues must be defined")}});var Ol=B(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.shake256=F.shake128=F.keccak_512=F.keccak_384=F.keccak_256=F.keccak_224=F.sha3_512=F.sha3_384=F.sha3_256=F.sha3_224=F.Keccak=void 0;F.keccakP=kl;var Pt=qi(),fr=El(),ke=vl(),Al=[],Sl=[],Rl=[],pf=BigInt(0),mr=BigInt(1),df=BigInt(2),mf=BigInt(7),ff=BigInt(256),gf=BigInt(113);for(let e=0,t=mr,r=1,n=0;e<24;e++){[r,n]=[n,(2*r+3*n)%5],Al.push(2*(5*n+r)),Sl.push((e+1)*(e+2)/2%64);let i=pf;for(let o=0;o<7;o++)t=(t<<mr^(t>>mf)*gf)%ff,t&df&&(i^=mr<<(mr<<BigInt(o))-mr);Rl.push(i)}var[hf,yf]=(0,fr.split)(Rl,!0),Tl=(e,t,r)=>r>32?(0,fr.rotlBH)(e,t,r):(0,fr.rotlSH)(e,t,r),Cl=(e,t,r)=>r>32?(0,fr.rotlBL)(e,t,r):(0,fr.rotlSL)(e,t,r);function kl(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=Tl(u,c,1)^r[a],d=Cl(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=Sl[s],l=Tl(i,o,a),u=Cl(i,o,a),c=Al[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]^=hf[n],e[1]^=yf[n]}r.fill(0)}var gr=class e extends ke.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,Pt.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,ke.u32)(this.state)}keccak(){ke.isLE||(0,ke.byteSwap32)(this.state32),kl(this.state32,this.rounds),ke.isLE||(0,ke.byteSwap32)(this.state32),this.posOut=0,this.pos=0}update(t){(0,Pt.aexists)(this);let{blockLen:r,state:n}=this;t=(0,ke.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,Pt.aexists)(this,!1),(0,Pt.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,Pt.anumber)(t),this.xofInto(new Uint8Array(t))}digestInto(t){if((0,Pt.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}};F.Keccak=gr;var Ve=(e,t,r)=>(0,ke.wrapConstructor)(()=>new gr(t,e,r));F.sha3_224=Ve(6,144,224/8);F.sha3_256=Ve(6,136,256/8);F.sha3_384=Ve(6,104,384/8);F.sha3_512=Ve(6,72,512/8);F.keccak_224=Ve(1,144,224/8);F.keccak_256=Ve(1,136,256/8);F.keccak_384=Ve(1,104,384/8);F.keccak_512=Ve(1,72,512/8);var Il=(e,t,r)=>(0,ke.wrapXOFConstructorWithOpts)((n={})=>new gr(t,e,n.dkLen===void 0?r:n.dkLen,!0));F.shake128=Il(31,168,128/8);F.shake256=Il(31,136,256/8)});var Vl=B((Q0,qe)=>{"use strict";var{sha3_512:wf}=Ol(),_l=24,hr=32,Gi=(e=4,t=Math.random)=>{let r="";for(;r.length<e;)r=r+Math.floor(t()*36).toString(36);return r};function Nl(e){let t=8n,r=0n;for(let n of e.values()){let i=BigInt(n);r=(r<<t)+i}return r}var Ml=(e="")=>Nl(wf(e)).toString(36).slice(1),Dl=Array.from({length:26},(e,t)=>String.fromCharCode(t+97)),Ef=e=>Dl[Math.floor(e()*Dl.length)],Fl=({globalObj:e=typeof global<"u"?global:typeof window<"u"?window:{},random:t=Math.random}={})=>{let r=Object.keys(e).toString(),n=r.length?r+Gi(hr,t):Gi(hr,t);return Ml(n).substring(0,hr)},Ll=e=>()=>e++,bf=476782367,$l=({random:e=Math.random,counter:t=Ll(Math.floor(e()*bf)),length:r=_l,fingerprint:n=Fl({random:e})}={})=>function(){let o=Ef(e),s=Date.now().toString(36),a=t().toString(36),l=Gi(r,e),u=`${s+l+a+n}`;return`${o+Ml(u).substring(1,r)}`},xf=$l(),Pf=(e,{minLength:t=2,maxLength:r=hr}={})=>{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};qe.exports.getConstants=()=>({defaultLength:_l,bigLength:hr});qe.exports.init=$l;qe.exports.createId=xf;qe.exports.bufToBigInt=Nl;qe.exports.createCounter=Ll;qe.exports.createFingerprint=Fl;qe.exports.isCuid=Pf});var ql=B((H0,yr)=>{"use strict";var{createId:vf,init:Tf,getConstants:Cf,isCuid:Af}=Vl();yr.exports.createId=vf;yr.exports.init=Tf;yr.exports.getConstants=Cf;yr.exports.isCuid=Af});var Oo={};Ft(Oo,{defineExtension:()=>ko,getExtensionContext:()=>Io});function ko(e){return typeof e=="function"?e:t=>t.$extends(e)}function Io(e){return e}var _o={};Ft(_o,{validator:()=>Do});function Do(...e){return t=>t}var Lr={};Ft(Lr,{$:()=>$o,bgBlack:()=>ac,bgBlue:()=>pc,bgCyan:()=>mc,bgGreen:()=>uc,bgMagenta:()=>dc,bgRed:()=>lc,bgWhite:()=>fc,bgYellow:()=>cc,black:()=>nc,blue:()=>Qe,bold:()=>z,cyan:()=>Te,dim:()=>Ue,gray:()=>$t,green:()=>Lt,grey:()=>sc,hidden:()=>tc,inverse:()=>ec,italic:()=>Xu,magenta:()=>ic,red:()=>ve,reset:()=>Zu,strikethrough:()=>rc,underline:()=>re,white:()=>oc,yellow:()=>Be});var Wn,No,Mo,Fo,Lo=!0;typeof process<"u"&&({FORCE_COLOR:Wn,NODE_DISABLE_COLORS:No,NO_COLOR:Mo,TERM:Fo}=process.env||{},Lo=process.stdout&&process.stdout.isTTY);var $o={enabled:!No&&Mo==null&&Fo!=="dumb"&&(Wn!=null&&Wn!=="0"||Lo)};function N(e,t){let r=new RegExp(`\\x1b\\[${t}m`,"g"),n=`\x1B[${e}m`,i=`\x1B[${t}m`;return function(o){return!$o.enabled||o==null?o:n+(~(""+o).indexOf(i)?o.replace(r,i+n):o)+i}}var Zu=N(0,0),z=N(1,22),Ue=N(2,22),Xu=N(3,23),re=N(4,24),ec=N(7,27),tc=N(8,28),rc=N(9,29),nc=N(30,39),ve=N(31,39),Lt=N(32,39),Be=N(33,39),Qe=N(34,39),ic=N(35,39),Te=N(36,39),oc=N(37,39),$t=N(90,39),sc=N(90,39),ac=N(40,49),lc=N(41,49),uc=N(42,49),cc=N(43,49),pc=N(44,49),dc=N(45,49),mc=N(46,49),fc=N(47,49);var gc=100,Vo=["green","yellow","blue","magenta","cyan","red"],Vt=[],qo=Date.now(),hc=0,Jn=typeof process<"u"?process.env:{};globalThis.DEBUG??=Jn.DEBUG??"";globalThis.DEBUG_COLORS??=Jn.DEBUG_COLORS?Jn.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 yc(e){let t={color:Vo[hc++%Vo.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&&Vt.push([o,...n]),Vt.length>gc&&Vt.shift(),qt.enabled(o)||i){let l=n.map(c=>typeof c=="string"?c:wc(c)),u=`+${Date.now()-qo}ms`;qo=Date.now(),globalThis.DEBUG_COLORS?a(Lr[s](z(o)),...l,Lr[s](u)):a(o,...l,u)}};return new Proxy(r,{get:(n,i)=>t[i],set:(n,i,o)=>t[i]=o})}var L=new Proxy(yc,{get:(e,t)=>qt[t],set:(e,t,r)=>qt[t]=r});function wc(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=Vt.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 Uo(){Vt.length=0}var Bo=L;var bc=Qo(),Kn=bc.version;function it(e){let t=xc();return t||(e?.config.engineType==="library"?"library":e?.config.engineType==="binary"?"binary":e?.config.engineType==="client"?"client":Pc(e))}function xc(){let e=process.env.PRISMA_CLIENT_ENGINE_TYPE;return e==="library"?"library":e==="binary"?"binary":e==="client"?"client":void 0}function Pc(e){return e?.previewFeatures.includes("queryCompiler")?"client":"library"}var Wo=ge(Go(),1);function zn(e){let t=(0,Wo.default)(e);if(t===0)return e;let r=new RegExp(`^[ \\t]{${t}}`,"gm");return e.replace(r,"")}var Jo="prisma+postgres",$r=`${Jo}:`;function Vr(e){return e?.toString().startsWith(`${$r}//`)??!1}function Yn(e){if(!Vr(e))return!1;let{host:t}=new URL(e);return t.includes("localhost")||t.includes("127.0.0.1")}var Ut={};Ft(Ut,{error:()=>Cc,info:()=>Tc,log:()=>vc,query:()=>Ac,should:()=>Yo,tags:()=>jt,warn:()=>Zn});var jt={error:ve("prisma:error"),warn:Be("prisma:warn"),info:Te("prisma:info"),query:Qe("prisma:query")},Yo={warn:()=>!process.env.PRISMA_DISABLE_WARNINGS};function vc(...e){console.log(...e)}function Zn(e,...t){Yo.warn()&&console.warn(`${jt.warn} ${e}`,...t)}function Tc(e,...t){console.info(`${jt.info} ${e}`,...t)}function Cc(e,...t){console.error(`${jt.error} ${e}`,...t)}function Ac(e,...t){console.log(`${jt.query} ${e}`,...t)}function pe(e,t){throw new Error(t)}import qr from"node:path";function ei(e){return qr.sep===qr.posix.sep?e:e.split(qr.sep).join(qr.posix.sep)}var oi=ge(ss());import ni from"node:fs";import Qt from"node:path";function as(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 ii=Bo("prisma:tryLoadEnv");function Ht({rootEnvPath:e,schemaEnvPath:t},r={conflictCheck:"none"}){let n=ls(e);r.conflictCheck!=="none"&&Uc(n,t,r.conflictCheck);let i=null;return us(n?.path,t)||(i=ls(t)),!n&&!i&&ii("No Environment variables loaded"),i?.dotenvResult.error?console.error(ve(z("Schema Env Error: "))+i.dotenvResult.error):{message:[n?.message,i?.message].filter(Boolean).join(`
@@ -75,7 +75,7 @@ ${re(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
- `}var pr;(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"})(pr||(pr={}));function $(e,t){throw new Error(t)}function Ba(e){switch(e){case"postgres":return"postgresql";case"mysql":return"mysql";case"sqlite":return"sqlite";default:$(e,`Unknown provider: ${e}`)}}function Ni(e){return e.name==="DriverAdapterError"&&typeof e.cause=="object"}var dr=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 Qa(e){if(!Ni(e))throw e;let t=_m(e),r=Nm(e);throw!t||!r?e:new dr(r,t,e)}function _m(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 Nm(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 ${Mi({fields:e.cause.fields})}`;case"ForeignKeyConstraintViolation":return`Foreign key constraint violated on the ${Mi(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 ${Mi({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 Mi(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 Ga(e,t){switch(t.type){case"Object":return Wa(e,t.fields);case"Value":return Fi(e,t.resultType);default:$(t,`Invalid data mapping type: '${t.type}'`)}}function Wa(e,t){if(e===null)return null;if(Array.isArray(e))return e.map(n=>Ha(n,t));if(typeof e=="object")return Ha(e,t);throw new Error(`DataMapper: Expected an array or an object, got: ${typeof e}`)}function Ha(e,t){if(typeof e!="object")throw new Error(`DataMapper: Expected an object, but got '${typeof e}'`);let r={};for(let[n,i]of Object.entries(t))switch(i.type){case"Object":{if(!i.flattened&&!Object.hasOwn(e,n))throw new Error(`DataMapper: Missing data field (Object): '${n}'; node: ${JSON.stringify(i)}; data: ${JSON.stringify(e)}`);let o=i.flattened?e:e[n];r[n]=Wa(o,i.fields);break}case"Value":{let o=i.dbName;if(Object.hasOwn(e,o))r[n]=Fi(e[o],i.resultType);else throw new Error(`DataMapper: 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 Fi(e,t){if(e===null)return null;switch(t.type){case"Any":return e;case"String":return typeof e=="string"?e:`${e}`;case"Int":return typeof e=="number"?e:parseInt(`${e}`,10);case"BigInt":return typeof e=="bigint"?e:BigInt(`${e}`);case"Float":return typeof e=="number"?e:parseFloat(`${e}`);case"Boolean":return typeof e=="boolean"?e:e!=="0";case"Decimal":return typeof e=="number"?new ae(e):new ae(`${e}`);case"Date":return e instanceof Date?e:new Date(`${e}`);case"Array":return e.map(n=>Fi(n,t.inner));case"Object":return typeof e=="string"?e:JSON.stringify(e);case"Bytes":{if(!Array.isArray(e))throw new Error(`DataMapper: Bytes data is invalid, got: ${typeof e}`);return new Uint8Array(e)}default:$(t,`DataMapper: Unknown result type: ${t.type}`)}}function We(e,t){var r="000000000"+e;return r.substr(r.length-t)}import Mm from"node:os";function Fm(){try{return Mm.hostname()}catch{return process.env._CLUSTER_NETWORK_NAME_||process.env.COMPUTERNAME||"hostname"}}var Ja=2,Lm=We(process.pid.toString(36),Ja),Ka=Fm(),$m=Ka.length,Vm=We(Ka.split("").reduce(function(e,t){return+e+t.charCodeAt(0)},+$m+36).toString(36),Ja);function Li(){return Lm+Vm}function xn(e){return typeof e=="string"&&/^c[a-z0-9]{20,32}$/.test(e)}function $i(e){let n=Math.pow(36,4),i=0;function o(){return We((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=We(s().toString(36),4),p=e(),d=o()+o();return l+u+c+p+d}return a.fingerprint=e,a.isCuid=xn,a}var qm=$i(Li);var za=qm;var Jl=ge(ql());import{webcrypto as Ul}from"node:crypto";var jl="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var Sf=128,Ke,vt;function Rf(e){!Ke||Ke.length<e?(Ke=Buffer.allocUnsafe(e*Sf),Ul.getRandomValues(Ke),vt=0):vt+e>Ke.length&&(Ul.getRandomValues(Ke),vt=0),vt+=e}function Wi(e=21){Rf(e|=0);let t="";for(let r=vt-e;r<vt;r++)t+=jl[Ke[r]&63];return t}import Cn from"node:crypto";var Ql="0123456789ABCDEFGHJKMNPQRSTVWXYZ",wr=32;var kf=16,Hl=10,Bl=0xffffffffffff;var ze;(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"})(ze||(ze={}));var Ye=class extends Error{constructor(t,r){super(`${r} (${t})`),this.name="ULIDError",this.code=t}};function If(e){let t=Math.floor(e()*wr);return t===wr&&(t=wr-1),Ql.charAt(t)}function Of(e){let t=Df(),r=t&&(t.crypto||t.msCrypto)||(typeof Cn<"u"?Cn: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(Cn?.randomBytes)return()=>Cn.randomBytes(1).readUInt8()/255;throw new Ye(ze.PRNGDetectFailure,"Failed to find a reliable PRNG")}function Df(){return Mf()?self:typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:null}function _f(e,t){let r="";for(;e>0;e--)r=If(t)+r;return r}function Nf(e,t=Hl){if(isNaN(e))throw new Ye(ze.EncodeTimeValueMalformed,`Time must be a number: ${e}`);if(e>Bl)throw new Ye(ze.EncodeTimeSizeExceeded,`Cannot encode a time larger than ${Bl}: ${e}`);if(e<0)throw new Ye(ze.EncodeTimeNegative,`Time must be positive: ${e}`);if(Number.isInteger(e)===!1)throw new Ye(ze.EncodeTimeValueMalformed,`Time must be an integer: ${e}`);let r,n="";for(let i=t;i>0;i--)r=e%wr,n=Ql.charAt(r)+n,e=(e-r)/wr;return n}function Mf(){return typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope}function Gl(e,t){let r=t||Of(),n=!e||isNaN(e)?Date.now():e;return Nf(n,Hl)+_f(kf,r)}var G=[];for(let e=0;e<256;++e)G.push((e+256).toString(16).slice(1));function An(e,t=0){return(G[e[t+0]]+G[e[t+1]]+G[e[t+2]]+G[e[t+3]]+"-"+G[e[t+4]]+G[e[t+5]]+"-"+G[e[t+6]]+G[e[t+7]]+"-"+G[e[t+8]]+G[e[t+9]]+"-"+G[e[t+10]]+G[e[t+11]]+G[e[t+12]]+G[e[t+13]]+G[e[t+14]]+G[e[t+15]]).toLowerCase()}import{randomFillSync as Ff}from"node:crypto";var Rn=new Uint8Array(256),Sn=Rn.length;function Tt(){return Sn>Rn.length-16&&(Ff(Rn),Sn=0),Rn.slice(Sn,Sn+=16)}import{randomUUID as Lf}from"node:crypto";var Ji={randomUUID:Lf};function $f(e,t,r){if(Ji.randomUUID&&!t&&!e)return Ji.randomUUID();e=e||{};let n=e.random??e.rng?.()??Tt();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 An(n)}var Ki=$f;var zi={};function Vf(e,t,r){let n;if(e)n=Wl(e.random??e.rng?.()??Tt(),e.msecs,e.seq,t,r);else{let i=Date.now(),o=Tt();qf(zi,i,o),n=Wl(o,zi.msecs,zi.seq,t,r)}return t??An(n)}function qf(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 Wl(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 Yi=Vf;var kn=class{#e={};constructor(){this.register("now",new In),this.register("uuid",new Zi),this.register("cuid",new Xi),this.register("ulid",new eo),this.register("nanoid",new to),this.register("product",new ro)}snapshot(){return Object.create(this.#e,{now:{value:new In}})}register(t,r){this.#e[t]=r}},In=class{#e=new Date;generate(){return this.#e.toISOString()}},Zi=class{generate(t){if(t===4)return Ki();if(t===7)return Yi();throw new Error("Invalid UUID generator arguments")}},Xi=class{generate(t){if(t===1)return za();if(t===2)return(0,Jl.createId)();throw new Error("Invalid CUID generator arguments")}},eo=class{generate(){return Gl()}},to=class{generate(t){if(typeof t=="number")return Wi(t);if(t===void 0)return Wi();throw new Error("Invalid Nanoid generator arguments")}},ro=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 no(e){return typeof e=="object"&&e!==null&&e.prisma__type==="param"}function io(e){return typeof e=="object"&&e!==null&&e.prisma__type==="generatorCall"}function Kl(e){return typeof e=="object"&&e!==null&&e.prisma__type==="bytes"}function ao(e,t,r){let n=e.type;switch(n){case"rawSql":return Yl(e.sql,zl(e.params,t,r));case"templateSql":return jf(e.fragments,e.placeholderFormat,zl(e.params,t,r));default:$(n,"Invalid query type")}}function zl(e,t,r){return e.map(n=>so(n,t,r))}function so(e,t,r){let n=e;for(;Bf(n);)if(no(n)){let i=t[n.prisma__value.name];if(i===void 0)throw new Error(`Missing value for query variable ${n.prisma__value.name}`);n=i}else if(io(n)){let{name:i,args:o}=n.prisma__value,s=r[i];if(!s)throw new Error(`Encountered an unknown generator '${i}'`);n=s.generate(...o.map(a=>so(a,t,r)))}else $(n,`Unexpected unevaluated value type: ${n}`);return Array.isArray(n)&&(n=n.map(i=>so(i,t,r))),Kl(n)&&(n=Buffer.from(n.prisma__value,"base64")),n}function jf(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++]),oo(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),oo(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),oo(t,i++))).join(",")})`}).join(",")}default:$(l,"Invalid fragment type")}}).join("");return Yl(s,o)}function oo(e,t){return e.hasNumbering?`${e.prefix}${t}`:e.prefix}function Yl(e,t){let r=t.map(n=>Uf(n));return{sql:e,args:t,argTypes:r}}function Uf(e){return typeof e=="string"?"Text":typeof e=="number"?"Numeric":typeof e=="boolean"?"Boolean":Array.isArray(e)?"Array":Buffer.isBuffer(e)?"Bytes":"Unknown"}function Bf(e){return no(e)||io(e)}function Zl(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 Xl(e,t,r){if(!t.every(n=>lo(e,n))){let n=Qf(e,r),i=Hf(r);throw new dr(n,i,r.context)}}function lo(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"never":return!1;default:$(t,`Unknown rule type: ${t.type}`)}}function Qf(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:0}.`;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 Hf(e){switch(e.error_identifier){case"RELATION_VIOLATION":return"P2014";case"RECORDS_NOT_CONNECTED":return"P2017";case"MISSING_RECORD":case"MISSING_RELATED_RECORD":case"INCOMPLETE_CONNECT_INPUT":return"P2025";default:$(e,`Unknown error identifier: ${e}`)}}var Ct=class e{#e;#n;#t;#i=new kn;#r;#o;constructor({transactionManager:t,placeholderValues:r,onQuery:n,tracingHelper:i,serializer:o}){this.#e=t,this.#n=r,this.#t=n,this.#r=i,this.#o=o}static forSql(t){return new e({transactionManager:t.transactionManager,placeholderValues:t.placeholderValues,onQuery:t.onQuery,tracingHelper:t.tracingHelper,serializer:Zl})}async run(t,r){return this.interpretNode(t,r,this.#n,this.#i.snapshot()).catch(n=>Qa(n))}async interpretNode(t,r,n,i){switch(t.type){case"seq":{let o=await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i)));return o[o.length-1]}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(!eu(s))return s}return[]}case"concat":return(await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i)))).reduce((s,a)=>s.concat(uo(a)),[]);case"sum":return(await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i)))).reduce((s,a)=>tu(s)+tu(a));case"execute":{let o=ao(t.args,n,i);return this.#s(o,r,async()=>await r.executeRaw(o))}case"query":{let o=ao(t.args,n,i);return this.#s(o,r,async()=>this.#o(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(eu(o))throw new Error("Required value is empty");return o}case"mapField":{let o=await this.interpretNode(t.args.records,r,n,i);return iu(o,t.args.field)}case"join":{let o=await this.interpretNode(t.args.parent,r,n,i),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)ru(On(a),s);return o}return ru(On(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 Ga(o,t.args.structure)}case"validate":{let o=await this.interpretNode(t.args.expr,r,n,i);return Xl(o,t.args.rules,t.args),o}case"if":{let o=await this.interpretNode(t.args.value,r,n,i);return lo(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(uo(s));return uo(o).filter(l=>!a.has(l))}default:$(t,`Unexpected node type: ${t.type}`)}}#s(t,r,n){return this.#r.runInChildSpan({name:"db_query",kind:pr.CLIENT,attributes:{"db.query.text":t.sql,"db.system.name":Ba(r.provider)}},async()=>{let i=new Date,o=performance.now(),s=await n(),a=performance.now();return this.#t?.({timestamp:i,duration:a-o,query:t.sql,params:t.args}),s})}};function eu(e){return Array.isArray(e)?e.length===0:e==null}function uo(e){return Array.isArray(e)?e:[e]}function tu(e){if(typeof e=="number")return e;if(typeof e=="string")return Number(e);throw new Error(`Expected number, got ${typeof e}`)}function On(e){if(typeof e=="object"&&e!==null)return e;throw new Error(`Expected object, got ${typeof e}`)}function iu(e,t){return Array.isArray(e)?e.map(r=>iu(r,t)):typeof e=="object"&&e!==null?e[t]??null:e}function ru(e,t){for(let{joinExpr:r,childRecords:n}of t)e[r.parentField]=Gf(n,e,r);return e}function Gf(e,t,r){if(Array.isArray(e))return e.filter(n=>nu(On(n),t,r));if(e===null)return null;{let n=On(e);return nu(n,t,r)?n:null}}function nu(e,t,r){for(let[n,i]of r.on)if(t[n]!==e[i])return!1;return!0}async function Wf(){return globalThis.crypto??await import("node:crypto")}async function ou(){return(await Wf()).randomUUID()}var ee=class extends Error{constructor(r,n){super("Transaction API error: "+r);this.meta=n}code="P2028"},Er=class extends ee{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.")}},Dn=class extends ee{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a committed transaction`)}},_n=class extends ee{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a transaction that was rolled back`)}},Nn=class extends ee{constructor(){super("Unable to start a transaction in the given time.")}},Mn=class extends ee{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})}},At=class extends ee{constructor(t){super(`Internal Consistency Error: ${t}`)}},Fn=class extends ee{constructor(t){super(`Invalid isolation level: ${t}`,{isolationLevel:t})}};var Jf=100,br=L("prisma:client:transactionManager"),Kf=()=>({sql:"COMMIT",args:[],argTypes:[]}),zf=()=>({sql:"ROLLBACK",args:[],argTypes:[]}),xr=class{transactions=new Map;closedTransactions=[];driverAdapter;transactionOptions;tracingHelper;constructor({driverAdapter:t,transactionOptions:r,tracingHelper:n}){this.driverAdapter=t,this.transactionOptions=r,this.tracingHelper=n}async startTransaction(t){return await this.tracingHelper.runInChildSpan("start_transaction",()=>this.#e(t))}async#e(t){let r=t!==void 0?this.validateOptions(t):this.transactionOptions,n={id:await ou(),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 Nn;case"running":case"committed":case"rolled_back":throw new At(`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 Er;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(br("Transaction already closed.",{transactionId:t,status:i.status}),i.status){case"waiting":case"running":throw new At("Active transaction found in closed transactions list.");case"committed":throw new Dn(r);case"rolled_back":throw new _n(r);case"timed_out":throw new Mn(r,{timeout:i.timeout,timeTaken:Date.now()-i.startedAt})}else throw br("Transaction not found.",t),new Er}if(["committed","rolled_back","timed_out"].includes(n.status))throw new At("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()=>{br("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"):br("Transaction already committed or rolled back when timeout happened.",t)},r)}async closeTransaction(t,r){br("Closing transaction.",{transactionId:t.id,status:r}),t.status=r,t.transaction&&r==="committed"?(await t.transaction.commit(),t.transaction.options.usePhantomQuery||await t.transaction.executeRaw(Kf())):t.transaction&&(await t.transaction.rollback(),t.transaction.options.usePhantomQuery||await t.transaction.executeRaw(zf())),clearTimeout(t.timer),t.timer=void 0,this.transactions.delete(t.id),this.closedTransactions.push(t),this.closedTransactions.length>Jf&&this.closedTransactions.shift()}validateOptions(t){if(!t.timeout)throw new ee("timeout is required");if(!t.maxWait)throw new ee("maxWait is required");if(t.isolationLevel==="SNAPSHOT")throw new Fn(t.isolationLevel);return{...t,timeout:t.timeout,maxWait:t.maxWait}}};var Ln="6.9.0-dev.4";var co,su={async loadQueryCompiler(e){let{clientVersion:t,adapter:r,compilerWasm:n}=e;if(r===void 0)throw new I(`The \`adapter\` option for \`PrismaClient\` is required in this context (${Di().prettyName})`,t);if(n===void 0)throw new I("WASM query compiler was unexpectedly `undefined`",t);return co===void 0&&(co=(async()=>{let i=await n.getRuntime(),o=await n.getQueryCompilerWasmModule();if(o==null)throw new I("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 co}};var au="P2038",$n=L("prisma:client:clientEngine"),uu=globalThis;uu.PRISMA_WASM_PANIC_REGISTRY={set_message(e){throw new ne(e,Ln)}};var St=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 I("EngineType `client` requires the driverAdapters preview feature to be enabled.",t.clientVersion,au);if(t.adapter)this.adapterPromise=t.adapter.connect(),this.provider=t.adapter.provider,$n("Using driver adapter: %O",t.adapter);else throw new I("Missing configured driver adapter. Engine type `client` requires an active driver adapter. Please check your PrismaClient initialization code.",t.clientVersion,au);this.queryCompilerLoader=r??su,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:JSON.stringify(n.params),target:"ClientEngine"})}),this.transactionManagerPromise=this.adapterPromise.then(n=>new xr({driverAdapter:n,transactionOptions:this.config.transactionOptions,tracingHelper:this.tracingHelper})),this.instantiateQueryCompilerPromise=this.instantiateQueryCompiler()}applyPendingMigrations(){throw new Error("Cannot call applyPendingMigrations on engine type client.")}async instantiateQueryCompiler(){if(!this.queryCompiler){this.QueryCompilerConstructor||(this.QueryCompilerConstructor=await this.queryCompilerLoader.loadQueryCompiler(this.config));try{this.#r(()=>{this.queryCompiler=new this.QueryCompilerConstructor({datamodel:this.datamodel,provider:this.provider,connectionInfo:{}})})}catch(t){throw this.#n(t)}}}#n(t){if(t instanceof ne)return t;try{let r=JSON.parse(t.message);return new I(r.message,this.config.clientVersion,r.error_code)}catch{return t}}#t(t){if(t instanceof I)return t;if(t.code==="GenericFailure"&&t.message?.startsWith("PANIC:"))return new ne(lu(this,t.message),this.config.clientVersion);if(t instanceof ee)return new Q(t.message,{code:t.code,meta:t.meta,clientVersion:this.config.clientVersion});try{let r=JSON.parse(t);return new Y(`${r.message}
78
+ `}var pr;(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"})(pr||(pr={}));function $(e,t){throw new Error(t)}function Ba(e){switch(e){case"postgres":return"postgresql";case"mysql":return"mysql";case"sqlite":return"sqlite";default:$(e,`Unknown provider: ${e}`)}}function Ni(e){return e.name==="DriverAdapterError"&&typeof e.cause=="object"}var dr=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 Qa(e){if(!Ni(e))throw e;let t=_m(e),r=Nm(e);throw!t||!r?e:new dr(r,t,e)}function _m(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 Nm(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 ${Mi({fields:e.cause.fields})}`;case"ForeignKeyConstraintViolation":return`Foreign key constraint violated on the ${Mi(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 ${Mi({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 Mi(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 Ga(e,t){switch(t.type){case"Object":return Wa(e,t.fields);case"Value":return Fi(e,t.resultType);default:$(t,`Invalid data mapping type: '${t.type}'`)}}function Wa(e,t){if(e===null)return null;if(Array.isArray(e))return e.map(n=>Ha(n,t));if(typeof e=="object")return Ha(e,t);throw new Error(`DataMapper: Expected an array or an object, got: ${typeof e}`)}function Ha(e,t){if(typeof e!="object")throw new Error(`DataMapper: Expected an object, but got '${typeof e}'`);let r={};for(let[n,i]of Object.entries(t))switch(i.type){case"Object":{if(!i.flattened&&!Object.hasOwn(e,n))throw new Error(`DataMapper: Missing data field (Object): '${n}'; node: ${JSON.stringify(i)}; data: ${JSON.stringify(e)}`);let o=i.flattened?e:e[n];r[n]=Wa(o,i.fields);break}case"Value":{let o=i.dbName;if(Object.hasOwn(e,o))r[n]=Fi(e[o],i.resultType);else throw new Error(`DataMapper: 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 Fi(e,t){if(e===null)return null;switch(t.type){case"Any":return e;case"String":return typeof e=="string"?e:`${e}`;case"Int":return typeof e=="number"?e:parseInt(`${e}`,10);case"BigInt":return typeof e=="bigint"?e:BigInt(`${e}`);case"Float":return typeof e=="number"?e:parseFloat(`${e}`);case"Boolean":return typeof e=="boolean"?e:e!=="0";case"Decimal":return typeof e=="number"?new ae(e):new ae(`${e}`);case"Date":return e instanceof Date?e:new Date(`${e}`);case"Array":return e.map(n=>Fi(n,t.inner));case"Object":return typeof e=="string"?e:JSON.stringify(e);case"Bytes":{if(!Array.isArray(e))throw new Error(`DataMapper: Bytes data is invalid, got: ${typeof e}`);return new Uint8Array(e)}default:$(t,`DataMapper: Unknown result type: ${t.type}`)}}function We(e,t){var r="000000000"+e;return r.substr(r.length-t)}import Mm from"node:os";function Fm(){try{return Mm.hostname()}catch{return process.env._CLUSTER_NETWORK_NAME_||process.env.COMPUTERNAME||"hostname"}}var Ja=2,Lm=We(process.pid.toString(36),Ja),Ka=Fm(),$m=Ka.length,Vm=We(Ka.split("").reduce(function(e,t){return+e+t.charCodeAt(0)},+$m+36).toString(36),Ja);function Li(){return Lm+Vm}function xn(e){return typeof e=="string"&&/^c[a-z0-9]{20,32}$/.test(e)}function $i(e){let n=Math.pow(36,4),i=0;function o(){return We((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=We(s().toString(36),4),p=e(),d=o()+o();return l+u+c+p+d}return a.fingerprint=e,a.isCuid=xn,a}var qm=$i(Li);var za=qm;var Jl=ge(ql());import{webcrypto as Ul}from"node:crypto";var jl="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var Sf=128,Ke,vt;function Rf(e){!Ke||Ke.length<e?(Ke=Buffer.allocUnsafe(e*Sf),Ul.getRandomValues(Ke),vt=0):vt+e>Ke.length&&(Ul.getRandomValues(Ke),vt=0),vt+=e}function Wi(e=21){Rf(e|=0);let t="";for(let r=vt-e;r<vt;r++)t+=jl[Ke[r]&63];return t}import Cn from"node:crypto";var Ql="0123456789ABCDEFGHJKMNPQRSTVWXYZ",wr=32;var kf=16,Hl=10,Bl=0xffffffffffff;var ze;(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"})(ze||(ze={}));var Ye=class extends Error{constructor(t,r){super(`${r} (${t})`),this.name="ULIDError",this.code=t}};function If(e){let t=Math.floor(e()*wr);return t===wr&&(t=wr-1),Ql.charAt(t)}function Of(e){let t=Df(),r=t&&(t.crypto||t.msCrypto)||(typeof Cn<"u"?Cn: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(Cn?.randomBytes)return()=>Cn.randomBytes(1).readUInt8()/255;throw new Ye(ze.PRNGDetectFailure,"Failed to find a reliable PRNG")}function Df(){return Mf()?self:typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:null}function _f(e,t){let r="";for(;e>0;e--)r=If(t)+r;return r}function Nf(e,t=Hl){if(isNaN(e))throw new Ye(ze.EncodeTimeValueMalformed,`Time must be a number: ${e}`);if(e>Bl)throw new Ye(ze.EncodeTimeSizeExceeded,`Cannot encode a time larger than ${Bl}: ${e}`);if(e<0)throw new Ye(ze.EncodeTimeNegative,`Time must be positive: ${e}`);if(Number.isInteger(e)===!1)throw new Ye(ze.EncodeTimeValueMalformed,`Time must be an integer: ${e}`);let r,n="";for(let i=t;i>0;i--)r=e%wr,n=Ql.charAt(r)+n,e=(e-r)/wr;return n}function Mf(){return typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope}function Gl(e,t){let r=t||Of(),n=!e||isNaN(e)?Date.now():e;return Nf(n,Hl)+_f(kf,r)}var G=[];for(let e=0;e<256;++e)G.push((e+256).toString(16).slice(1));function An(e,t=0){return(G[e[t+0]]+G[e[t+1]]+G[e[t+2]]+G[e[t+3]]+"-"+G[e[t+4]]+G[e[t+5]]+"-"+G[e[t+6]]+G[e[t+7]]+"-"+G[e[t+8]]+G[e[t+9]]+"-"+G[e[t+10]]+G[e[t+11]]+G[e[t+12]]+G[e[t+13]]+G[e[t+14]]+G[e[t+15]]).toLowerCase()}import{randomFillSync as Ff}from"node:crypto";var Rn=new Uint8Array(256),Sn=Rn.length;function Tt(){return Sn>Rn.length-16&&(Ff(Rn),Sn=0),Rn.slice(Sn,Sn+=16)}import{randomUUID as Lf}from"node:crypto";var Ji={randomUUID:Lf};function $f(e,t,r){if(Ji.randomUUID&&!t&&!e)return Ji.randomUUID();e=e||{};let n=e.random??e.rng?.()??Tt();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 An(n)}var Ki=$f;var zi={};function Vf(e,t,r){let n;if(e)n=Wl(e.random??e.rng?.()??Tt(),e.msecs,e.seq,t,r);else{let i=Date.now(),o=Tt();qf(zi,i,o),n=Wl(o,zi.msecs,zi.seq,t,r)}return t??An(n)}function qf(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 Wl(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 Yi=Vf;var kn=class{#e={};constructor(){this.register("now",new In),this.register("uuid",new Zi),this.register("cuid",new Xi),this.register("ulid",new eo),this.register("nanoid",new to),this.register("product",new ro)}snapshot(){return Object.create(this.#e,{now:{value:new In}})}register(t,r){this.#e[t]=r}},In=class{#e=new Date;generate(){return this.#e.toISOString()}},Zi=class{generate(t){if(t===4)return Ki();if(t===7)return Yi();throw new Error("Invalid UUID generator arguments")}},Xi=class{generate(t){if(t===1)return za();if(t===2)return(0,Jl.createId)();throw new Error("Invalid CUID generator arguments")}},eo=class{generate(){return Gl()}},to=class{generate(t){if(typeof t=="number")return Wi(t);if(t===void 0)return Wi();throw new Error("Invalid Nanoid generator arguments")}},ro=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 no(e){return typeof e=="object"&&e!==null&&e.prisma__type==="param"}function io(e){return typeof e=="object"&&e!==null&&e.prisma__type==="generatorCall"}function Kl(e){return typeof e=="object"&&e!==null&&e.prisma__type==="bytes"}function ao(e,t,r){let n=e.type;switch(n){case"rawSql":return Yl(e.sql,zl(e.params,t,r));case"templateSql":return jf(e.fragments,e.placeholderFormat,zl(e.params,t,r));default:$(n,"Invalid query type")}}function zl(e,t,r){return e.map(n=>so(n,t,r))}function so(e,t,r){let n=e;for(;Bf(n);)if(no(n)){let i=t[n.prisma__value.name];if(i===void 0)throw new Error(`Missing value for query variable ${n.prisma__value.name}`);n=i}else if(io(n)){let{name:i,args:o}=n.prisma__value,s=r[i];if(!s)throw new Error(`Encountered an unknown generator '${i}'`);n=s.generate(...o.map(a=>so(a,t,r)))}else $(n,`Unexpected unevaluated value type: ${n}`);return Array.isArray(n)&&(n=n.map(i=>so(i,t,r))),Kl(n)&&(n=Buffer.from(n.prisma__value,"base64")),n}function jf(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++]),oo(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),oo(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),oo(t,i++))).join(",")})`}).join(",")}default:$(l,"Invalid fragment type")}}).join("");return Yl(s,o)}function oo(e,t){return e.hasNumbering?`${e.prefix}${t}`:e.prefix}function Yl(e,t){let r=t.map(n=>Uf(n));return{sql:e,args:t,argTypes:r}}function Uf(e){return typeof e=="string"?"Text":typeof e=="number"?"Numeric":typeof e=="boolean"?"Boolean":Array.isArray(e)?"Array":Buffer.isBuffer(e)?"Bytes":"Unknown"}function Bf(e){return no(e)||io(e)}function Zl(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 Xl(e,t,r){if(!t.every(n=>lo(e,n))){let n=Qf(e,r),i=Hf(r);throw new dr(n,i,r.context)}}function lo(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"never":return!1;default:$(t,`Unknown rule type: ${t.type}`)}}function Qf(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:0}.`;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 Hf(e){switch(e.error_identifier){case"RELATION_VIOLATION":return"P2014";case"RECORDS_NOT_CONNECTED":return"P2017";case"MISSING_RECORD":case"MISSING_RELATED_RECORD":case"INCOMPLETE_CONNECT_INPUT":return"P2025";default:$(e,`Unknown error identifier: ${e}`)}}var Ct=class e{#e;#n;#t;#i=new kn;#r;#o;constructor({transactionManager:t,placeholderValues:r,onQuery:n,tracingHelper:i,serializer:o}){this.#e=t,this.#n=r,this.#t=n,this.#r=i,this.#o=o}static forSql(t){return new e({transactionManager:t.transactionManager,placeholderValues:t.placeholderValues,onQuery:t.onQuery,tracingHelper:t.tracingHelper,serializer:Zl})}async run(t,r){return this.interpretNode(t,r,this.#n,this.#i.snapshot()).catch(n=>Qa(n))}async interpretNode(t,r,n,i){switch(t.type){case"seq":{let o=await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i)));return o[o.length-1]}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(!eu(s))return s}return[]}case"concat":return(await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i)))).reduce((s,a)=>s.concat(uo(a)),[]);case"sum":return(await Promise.all(t.args.map(s=>this.interpretNode(s,r,n,i)))).reduce((s,a)=>tu(s)+tu(a));case"execute":{let o=ao(t.args,n,i);return this.#s(o,r,async()=>await r.executeRaw(o))}case"query":{let o=ao(t.args,n,i);return this.#s(o,r,async()=>this.#o(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(eu(o))throw new Error("Required value is empty");return o}case"mapField":{let o=await this.interpretNode(t.args.records,r,n,i);return iu(o,t.args.field)}case"join":{let o=await this.interpretNode(t.args.parent,r,n,i),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)ru(On(a),s);return o}return ru(On(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 Ga(o,t.args.structure)}case"validate":{let o=await this.interpretNode(t.args.expr,r,n,i);return Xl(o,t.args.rules,t.args),o}case"if":{let o=await this.interpretNode(t.args.value,r,n,i);return lo(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(uo(s));return uo(o).filter(l=>!a.has(l))}default:$(t,`Unexpected node type: ${t.type}`)}}#s(t,r,n){return this.#r.runInChildSpan({name:"db_query",kind:pr.CLIENT,attributes:{"db.query.text":t.sql,"db.system.name":Ba(r.provider)}},async()=>{let i=new Date,o=performance.now(),s=await n(),a=performance.now();return this.#t?.({timestamp:i,duration:a-o,query:t.sql,params:t.args}),s})}};function eu(e){return Array.isArray(e)?e.length===0:e==null}function uo(e){return Array.isArray(e)?e:[e]}function tu(e){if(typeof e=="number")return e;if(typeof e=="string")return Number(e);throw new Error(`Expected number, got ${typeof e}`)}function On(e){if(typeof e=="object"&&e!==null)return e;throw new Error(`Expected object, got ${typeof e}`)}function iu(e,t){return Array.isArray(e)?e.map(r=>iu(r,t)):typeof e=="object"&&e!==null?e[t]??null:e}function ru(e,t){for(let{joinExpr:r,childRecords:n}of t)e[r.parentField]=Gf(n,e,r);return e}function Gf(e,t,r){if(Array.isArray(e))return e.filter(n=>nu(On(n),t,r));if(e===null)return null;{let n=On(e);return nu(n,t,r)?n:null}}function nu(e,t,r){for(let[n,i]of r.on)if(t[n]!==e[i])return!1;return!0}async function Wf(){return globalThis.crypto??await import("node:crypto")}async function ou(){return(await Wf()).randomUUID()}var ee=class extends Error{constructor(r,n){super("Transaction API error: "+r);this.meta=n}code="P2028"},Er=class extends ee{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.")}},Dn=class extends ee{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a committed transaction`)}},_n=class extends ee{constructor(t){super(`Transaction already closed: A ${t} cannot be executed on a transaction that was rolled back`)}},Nn=class extends ee{constructor(){super("Unable to start a transaction in the given time.")}},Mn=class extends ee{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})}},At=class extends ee{constructor(t){super(`Internal Consistency Error: ${t}`)}},Fn=class extends ee{constructor(t){super(`Invalid isolation level: ${t}`,{isolationLevel:t})}};var Jf=100,br=L("prisma:client:transactionManager"),Kf=()=>({sql:"COMMIT",args:[],argTypes:[]}),zf=()=>({sql:"ROLLBACK",args:[],argTypes:[]}),xr=class{transactions=new Map;closedTransactions=[];driverAdapter;transactionOptions;tracingHelper;constructor({driverAdapter:t,transactionOptions:r,tracingHelper:n}){this.driverAdapter=t,this.transactionOptions=r,this.tracingHelper=n}async startTransaction(t){return await this.tracingHelper.runInChildSpan("start_transaction",()=>this.#e(t))}async#e(t){let r=t!==void 0?this.validateOptions(t):this.transactionOptions,n={id:await ou(),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 Nn;case"running":case"committed":case"rolled_back":throw new At(`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 Er;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(br("Transaction already closed.",{transactionId:t,status:i.status}),i.status){case"waiting":case"running":throw new At("Active transaction found in closed transactions list.");case"committed":throw new Dn(r);case"rolled_back":throw new _n(r);case"timed_out":throw new Mn(r,{timeout:i.timeout,timeTaken:Date.now()-i.startedAt})}else throw br("Transaction not found.",t),new Er}if(["committed","rolled_back","timed_out"].includes(n.status))throw new At("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()=>{br("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"):br("Transaction already committed or rolled back when timeout happened.",t)},r)}async closeTransaction(t,r){br("Closing transaction.",{transactionId:t.id,status:r}),t.status=r,t.transaction&&r==="committed"?(await t.transaction.commit(),t.transaction.options.usePhantomQuery||await t.transaction.executeRaw(Kf())):t.transaction&&(await t.transaction.rollback(),t.transaction.options.usePhantomQuery||await t.transaction.executeRaw(zf())),clearTimeout(t.timer),t.timer=void 0,this.transactions.delete(t.id),this.closedTransactions.push(t),this.closedTransactions.length>Jf&&this.closedTransactions.shift()}validateOptions(t){if(!t.timeout)throw new ee("timeout is required");if(!t.maxWait)throw new ee("maxWait is required");if(t.isolationLevel==="SNAPSHOT")throw new Fn(t.isolationLevel);return{...t,timeout:t.timeout,maxWait:t.maxWait}}};var Ln="6.9.0-dev.5";var co,su={async loadQueryCompiler(e){let{clientVersion:t,adapter:r,compilerWasm:n}=e;if(r===void 0)throw new I(`The \`adapter\` option for \`PrismaClient\` is required in this context (${Di().prettyName})`,t);if(n===void 0)throw new I("WASM query compiler was unexpectedly `undefined`",t);return co===void 0&&(co=(async()=>{let i=await n.getRuntime(),o=await n.getQueryCompilerWasmModule();if(o==null)throw new I("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 co}};var au="P2038",$n=L("prisma:client:clientEngine"),uu=globalThis;uu.PRISMA_WASM_PANIC_REGISTRY={set_message(e){throw new ne(e,Ln)}};var St=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 I("EngineType `client` requires the driverAdapters preview feature to be enabled.",t.clientVersion,au);if(t.adapter)this.adapterPromise=t.adapter.connect(),this.provider=t.adapter.provider,$n("Using driver adapter: %O",t.adapter);else throw new I("Missing configured driver adapter. Engine type `client` requires an active driver adapter. Please check your PrismaClient initialization code.",t.clientVersion,au);this.queryCompilerLoader=r??su,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:JSON.stringify(n.params),target:"ClientEngine"})}),this.transactionManagerPromise=this.adapterPromise.then(n=>new xr({driverAdapter:n,transactionOptions:this.config.transactionOptions,tracingHelper:this.tracingHelper})),this.instantiateQueryCompilerPromise=this.instantiateQueryCompiler()}applyPendingMigrations(){throw new Error("Cannot call applyPendingMigrations on engine type client.")}async instantiateQueryCompiler(){if(!this.queryCompiler){this.QueryCompilerConstructor||(this.QueryCompilerConstructor=await this.queryCompilerLoader.loadQueryCompiler(this.config));try{this.#r(()=>{this.queryCompiler=new this.QueryCompilerConstructor({datamodel:this.datamodel,provider:this.provider,connectionInfo:{}})})}catch(t){throw this.#n(t)}}}#n(t){if(t instanceof ne)return t;try{let r=JSON.parse(t.message);return new I(r.message,this.config.clientVersion,r.error_code)}catch{return t}}#t(t){if(t instanceof I)return t;if(t.code==="GenericFailure"&&t.message?.startsWith("PANIC:"))return new ne(lu(this,t.message),this.config.clientVersion);if(t instanceof ee)return new Q(t.message,{code:t.code,meta:t.meta,clientVersion:this.config.clientVersion});try{let r=JSON.parse(t);return new Y(`${r.message}
79
79
  ${r.backtrace}`,{clientVersion:this.config.clientVersion})}catch{return t}}#i(t){return t instanceof ne?t:typeof t.message=="string"&&typeof t.code=="string"?new Q(t.message,{code:t.code,meta:t.meta,clientVersion:this.config.clientVersion}):t}#r(t){let r=uu.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 ne(lu(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)}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 pe(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}){$n("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.#r(()=>this.queryCompiler.compile(i))}catch(l){throw this.#i(l)}try{let l=JSON.parse(a);$n("query plan created",a);let u=n?s.getTransaction(n,"query"):o,c=n?{enabled:!1}:{enabled:!0,manager:s},p={},m=await Ct.forSql({transactionManager:c,placeholderValues:p,onQuery:this.#e,tracingHelper:this.tracingHelper}).run(l,u);return $n("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(Et(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.#i(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=Ct.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(async(m,g)=>{let h=await c.run(m,p);return{data:{[t[g].action]: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.#o(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.")}#o(t,r,n){let i=t.map(s=>r.keys.reduce((a,l)=>(a[l]=s[l],a),{})),o=new Set(r.nestedSelection);return r.arguments.map(s=>{let a=i.findIndex(l=>Zf(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)}}}})}};function lu(e,t){return Ua({binaryTarget:void 0,title:t,version:e.config.clientVersion,engineVersion:"unknown",database:e.config.activeProvider,query:e.lastStartedQuery})}function Zf(e,t){let r=Object.keys(e),n=Object.keys(t);return(r.length<n.length?r:n).every(o=>cu(e[o],t[o]))}function cu(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=>cu(e[r],t[r]))}function Rt({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 I(`error: Environment variable not found: ${s.fromEnvVar}.`,n);if(i===void 0)throw new I("error: Missing URL environment variable, value, or override.",n);return i}var Vn=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 oe=class extends Vn{isRetryable;constructor(t,r){super(t,r),this.isRetryable=r.isRetryable??!0}};function A(e,t){return{...e,isRetryable:t}}var kt=class extends oe{name="ForcedRetryError";code="P5001";constructor(t){super("This request must be retried",A(t,!0))}};x(kt,"ForcedRetryError");var Ze=class extends oe{name="InvalidDatasourceError";code="P6001";constructor(t,r){super(t,A(r,!1))}};x(Ze,"InvalidDatasourceError");var Xe=class extends oe{name="NotImplementedYetError";code="P5004";constructor(t,r){super(t,A(r,!1))}};x(Xe,"NotImplementedYetError");var M=class extends oe{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 et=class extends M{name="SchemaMissingError";code="P5005";constructor(t){super("Schema needs to be uploaded",A(t,!0))}};x(et,"SchemaMissingError");var po="This request could not be understood by the server",Pr=class extends M{name="BadRequestError";code="P5000";constructor(t,r,n){super(r||po,A(t,!1)),n&&(this.code=n)}};x(Pr,"BadRequestError");var vr=class extends M{name="HealthcheckTimeoutError";code="P5013";logs;constructor(t,r){super("Engine not started: healthcheck timeout",A(t,!0)),this.logs=r}};x(vr,"HealthcheckTimeoutError");var Tr=class extends M{name="EngineStartupError";code="P5014";logs;constructor(t,r,n){super(r,A(t,!0)),this.logs=n}};x(Tr,"EngineStartupError");var Cr=class extends M{name="EngineVersionNotSupportedError";code="P5012";constructor(t){super("Engine version is not supported",A(t,!1))}};x(Cr,"EngineVersionNotSupportedError");var mo="Request timed out",Ar=class extends M{name="GatewayTimeoutError";code="P5009";constructor(t,r=mo){super(r,A(t,!1))}};x(Ar,"GatewayTimeoutError");var Xf="Interactive transaction error",Sr=class extends M{name="InteractiveTransactionError";code="P5015";constructor(t,r=Xf){super(r,A(t,!1))}};x(Sr,"InteractiveTransactionError");var eg="Request parameters are invalid",Rr=class extends M{name="InvalidRequestError";code="P5011";constructor(t,r=eg){super(r,A(t,!1))}};x(Rr,"InvalidRequestError");var fo="Requested resource does not exist",kr=class extends M{name="NotFoundError";code="P5003";constructor(t,r=fo){super(r,A(t,!1))}};x(kr,"NotFoundError");var go="Unknown server error",It=class extends M{name="ServerError";code="P5006";logs;constructor(t,r,n){super(r||go,A(t,!0)),this.logs=n}};x(It,"ServerError");var ho="Unauthorized, check your connection string",Ir=class extends M{name="UnauthorizedError";code="P5007";constructor(t,r=ho){super(r,A(t,!1))}};x(Ir,"UnauthorizedError");var yo="Usage exceeded, retry again later",Or=class extends M{name="UsageExceededError";code="P5008";constructor(t,r=yo){super(r,A(t,!0))}};x(Or,"UsageExceededError");async function tg(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 Dr(e,t){if(e.ok)return;let r={clientVersion:t,response:e},n=await tg(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 It(r,"Internal Data Proxy error");if("EngineNotStarted"in n.body){if(n.body.EngineNotStarted.reason==="SchemaMissing")return new et(r);if(n.body.EngineNotStarted.reason==="EngineVersionNotSupported")throw new Cr(r);if("EngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,logs:o}=n.body.EngineNotStarted.reason.EngineStartupError;throw new Tr(r,i,o)}if("KnownEngineStartupError"in n.body.EngineNotStarted.reason){let{msg:i,error_code:o}=n.body.EngineNotStarted.reason.KnownEngineStartupError;throw new I(i,t,o)}if("HealthcheckTimeout"in n.body.EngineNotStarted.reason){let{logs:i}=n.body.EngineNotStarted.reason.HealthcheckTimeout;throw new vr(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 Sr(r,i[n.body.InteractiveTransactionMisrouted.reason])}if("InvalidRequestError"in n.body)throw new Rr(r,n.body.InvalidRequestError.reason)}if(e.status===401||e.status===403)throw new Ir(r,Ot(ho,n));if(e.status===404)return new kr(r,Ot(fo,n));if(e.status===429)throw new Or(r,Ot(yo,n));if(e.status===504)throw new Ar(r,Ot(mo,n));if(e.status>=500)throw new It(r,Ot(go,n));if(e.status>=400)throw new Pr(r,Ot(po,n))}function Ot(e,t){return t.type==="EmptyError"?e:`${e}: ${JSON.stringify(t)}`}function pu(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 Ie="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function du(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+=Ie[s]+Ie[a]+Ie[l]+Ie[u];return i==1?(c=t[o],s=(c&252)>>2,a=(c&3)<<4,r+=Ie[s]+Ie[a]+"=="):i==2&&(c=t[o]<<8|t[o+1],s=(c&64512)>>10,a=(c&1008)>>4,l=(c&15)<<2,r+=Ie[s]+Ie[a]+Ie[l]+"="),r}function mu(e){if(!!e.generator?.previewFeatures.some(r=>r.toLowerCase().includes("metrics")))throw new I("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 rg(e){return e[0]*1e3+e[1]/1e6}function wo(e){return new Date(rg(e))}var fu={"@prisma/debug":"workspace:*","@prisma/engines-version":"6.8.0-43.2060c79ba17c6bb9f5823312b6f6b7f4a845738e","@prisma/fetch-engine":"workspace:*","@prisma/get-platform":"workspace:*"};var _r=class extends oe{name="RequestError";code="P5010";constructor(t,r){super(`Cannot fetch data from service:
80
80
  ${t}`,A(r,!0))}};x(_r,"RequestError");async function tt(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 ig=/^[1-9][0-9]*\.[0-9]+\.[0-9]+$/,gu=L("prisma:client:dataproxyEngine");async function og(e,t){let r=fu["@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&&ig.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=sg(`<=${a}.${l}.${u}`),p=await tt(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();gu("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 Xe("Only `major.minor.patch` versions are supported by Accelerate.",{clientVersion:n})}async function hu(e,t){let r=await og(e,t);return gu("version",r),r}function sg(e){return encodeURI(`https://unpkg.com/prisma@${e}/package.json`)}var yu=3,Nr=L("prisma:client:dataproxyEngine"),Eo=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}},Mr=class{name="DataProxyEngine";inlineSchema;inlineSchemaHash;inlineDatasources;config;logEmitter;env;clientVersion;engineHash;tracingHelper;remoteClientVersion;host;headerBuilder;startPromise;protocol;constructor(t){mu(t),this.config=t,this.env={...t.env,...typeof process<"u"?process.env:{}},this.inlineSchema=du(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 Eo({apiKey:t,tracingHelper:this.tracingHelper,logLevel:this.config.logLevel,logQueries:this.config.logQueries,engineHash:this.engineHash}),this.protocol=Yn(r)?"http":"https",this.remoteClientVersion=await hu(this.host,this.config),Nr("host",this.host),Nr("protocol",this.protocol)})(),await this.startPromise}async stop(){}propagateResponseExtensions(t){t?.logs?.length&&t.logs.forEach(r=>{switch(r.level){case"debug":case"trace":Nr(r);break;case"error":case"warn":case"info":{this.logEmitter.emit(r.level,{timestamp:wo(r.timestamp),message:r.attributes.message??"",target:r.target});break}case"query":{this.logEmitter.emit("query",{query:r.attributes.query??"",timestamp:wo(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 tt(await this.url("schema"),{method:"PUT",headers:this.headerBuilder.build(),body:this.inlineSchema,clientVersion:this.clientVersion});r.ok||Nr("schema response status",r.status);let n=await Dr(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=Et(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 tt(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r,interactiveTransaction:i}),body:JSON.stringify(t),clientVersion:this.clientVersion},n);a.ok||Nr("graphql response status",a.status),await this.handleError(await Dr(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 tt(a,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),body:s,clientVersion:this.clientVersion});await this.handleError(await Dr(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 tt(s,{method:"POST",headers:this.headerBuilder.build({traceparent:r.traceparent}),clientVersion:this.clientVersion});await this.handleError(await Dr(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=Rt({inlineDatasources:this.inlineDatasources,overrideDatasources:this.config.overrideDatasources,clientVersion:this.clientVersion,env:this.env}),i;try{i=new URL(n)}catch{throw new Ze(`Error validating datasource \`${r}\`: the URL must start with the protocol \`prisma://\``,t)}let{protocol:o,searchParams:s}=i;if(o!=="prisma:"&&o!==$r)throw new Ze(`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 Ze(`Error validating datasource \`${r}\`: the URL must contain a valid API key`,t);return{apiKey:a,url:i}}metrics(){throw new Xe("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 oe)||!i.isRetryable)throw i;if(r>=yu)throw i instanceof kt?i.cause:i;this.logEmitter.emit("warn",{message:`Attempt ${r+1}/${yu} failed for ${t.actionGerund}: ${i.message??"(unknown)"}`,timestamp:new Date,target:""});let o=await pu(r);this.logEmitter.emit("warn",{message:`Retrying after ${o}ms`,timestamp:new Date,target:""})}}}async handleError(t){if(t instanceof et)throw await this.uploadSchema(),new kt({clientVersion:this.clientVersion,cause:t});if(t)throw t}convertProtocolErrorsToClientError(t){return t.length===1?wn(t[0],this.config.clientVersion,this.config.activeProvider):new Y(JSON.stringify(t),{clientVersion:this.config.clientVersion})}applyPendingMigrations(){throw new Error("Method not implemented.")}};function wu({copyEngine:e=!0},t){let r;try{r=Rt({inlineDatasources:t.inlineDatasources,overrideDatasources:t.overrideDatasources,env:{...t.env,...process.env},clientVersion:t.clientVersion})}catch{}let n=!!(r?.startsWith("prisma://")||Vr(r));e&&n&&Ur("recommend--no-engine","In production, we recommend using `prisma generate --no-engine` (See: `prisma generate --help`)");let i=it(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 Z(c.join(`
81
81
  `),{clientVersion:t.clientVersion})}return o?new Mr(t):u?new St(t):new St(t)}function qn({generator:e}){return e?.previewFeatures??[]}var Eu=e=>({command:e});var bu=e=>e.strings.reduce((t,r,n)=>`${t}@P${n}${r}`);function Dt(e){try{return xu(e,"fast")}catch{return xu(e,"slow")}}function xu(e,t){return JSON.stringify(e.map(r=>vu(r,t)))}function vu(e,t){if(Array.isArray(e))return e.map(r=>vu(r,t));if(typeof e=="bigint")return{prisma__type:"bigint",prisma__value:e.toString()};if(lt(e))return{prisma__type:"date",prisma__value:e.toJSON()};if(ae.isDecimal(e))return{prisma__type:"decimal",prisma__value:e.toJSON()};if(Buffer.isBuffer(e))return{prisma__type:"bytes",prisma__value:e.toString("base64")};if(ag(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"?Tu(e):e}function ag(e){return e instanceof ArrayBuffer||e instanceof SharedArrayBuffer?!0:typeof e=="object"&&e!==null?e[Symbol.toStringTag]==="ArrayBuffer"||e[Symbol.toStringTag]==="SharedArrayBuffer":!1}function Tu(e){if(typeof e!="object"||e===null)return e;if(typeof e.toJSON=="function")return e.toJSON();if(Array.isArray(e))return e.map(Pu);let t={};for(let r of Object.keys(e))t[r]=Pu(e[r]);return t}function Pu(e){return typeof e=="bigint"?e.toString():Tu(e)}var lg=/^(\s*alter\s)/i,Cu=L("prisma:client");function bo(e,t,r,n){if(!(e!=="postgresql"&&e!=="cockroachdb")&&r.length>0&&lg.exec(t))throw new Error(`Running ALTER using ${n} is not supported