@agent-receipts/dashboard 0.2.6 → 0.2.8
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.
- package/package.json +1 -1
- package/standalone/apps/web/.env.production +2 -0
- package/standalone/apps/web/.next/BUILD_ID +1 -1
- package/standalone/apps/web/.next/app-build-manifest.json +47 -47
- package/standalone/apps/web/.next/app-path-routes-manifest.json +11 -11
- package/standalone/apps/web/.next/build-manifest.json +2 -2
- package/standalone/apps/web/.next/prerender-manifest.json +24 -24
- package/standalone/apps/web/.next/required-server-files.json +3 -1
- package/standalone/apps/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/_not-found.html +2 -2
- package/standalone/apps/web/.next/server/app/_not-found.rsc +3 -3
- package/standalone/apps/web/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/agents/page_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/agents.html +2 -2
- package/standalone/apps/web/.next/server/app/agents.rsc +3 -3
- package/standalone/apps/web/.next/server/app/api/agents/route.js +1 -1
- package/standalone/apps/web/.next/server/app/api/agents/route.js.nft.json +1 -1
- package/standalone/apps/web/.next/server/app/api/agents/route_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/api/chains/[id]/route.js +1 -1
- package/standalone/apps/web/.next/server/app/api/chains/[id]/route.js.nft.json +1 -1
- package/standalone/apps/web/.next/server/app/api/chains/[id]/route_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/api/cleanup/route.js +1 -1
- package/standalone/apps/web/.next/server/app/api/cleanup/route.js.nft.json +1 -1
- package/standalone/apps/web/.next/server/app/api/cleanup/route_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/api/config/route.js +1 -1
- package/standalone/apps/web/.next/server/app/api/config/route.js.nft.json +1 -1
- package/standalone/apps/web/.next/server/app/api/config/route_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/api/invoices/route.js +1 -1
- package/standalone/apps/web/.next/server/app/api/invoices/route.js.nft.json +1 -1
- package/standalone/apps/web/.next/server/app/api/invoices/route_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/api/judgments/route.js +1 -1
- package/standalone/apps/web/.next/server/app/api/judgments/route.js.nft.json +1 -1
- package/standalone/apps/web/.next/server/app/api/judgments/route_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/api/receipts/[id]/route.js +1 -1
- package/standalone/apps/web/.next/server/app/api/receipts/[id]/route.js.nft.json +1 -1
- package/standalone/apps/web/.next/server/app/api/receipts/[id]/route_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/api/receipts/route.js +1 -1
- package/standalone/apps/web/.next/server/app/api/receipts/route.js.nft.json +1 -1
- package/standalone/apps/web/.next/server/app/api/receipts/route_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/api/search/route.js +1 -1
- package/standalone/apps/web/.next/server/app/api/search/route.js.nft.json +1 -1
- package/standalone/apps/web/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/api/stats/route.js +1 -1
- package/standalone/apps/web/.next/server/app/api/stats/route.js.nft.json +1 -1
- package/standalone/apps/web/.next/server/app/api/stats/route_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/api/verify/route.js +1 -1
- package/standalone/apps/web/.next/server/app/api/verify/route.js.nft.json +1 -1
- package/standalone/apps/web/.next/server/app/api/verify/route_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/chains/[id]/page_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/chains/page_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/chains.html +2 -2
- package/standalone/apps/web/.next/server/app/chains.rsc +4 -4
- package/standalone/apps/web/.next/server/app/constraints/page_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/constraints.html +2 -2
- package/standalone/apps/web/.next/server/app/constraints.rsc +4 -4
- package/standalone/apps/web/.next/server/app/index.html +2 -2
- package/standalone/apps/web/.next/server/app/index.rsc +3 -3
- package/standalone/apps/web/.next/server/app/invoices/page_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/invoices.html +2 -2
- package/standalone/apps/web/.next/server/app/invoices.rsc +3 -3
- package/standalone/apps/web/.next/server/app/judgments/page_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/judgments.html +2 -2
- package/standalone/apps/web/.next/server/app/judgments.rsc +4 -4
- package/standalone/apps/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/receipts/[id]/page_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/receipts/page.js +1 -1
- package/standalone/apps/web/.next/server/app/receipts/page_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/receipts.html +2 -2
- package/standalone/apps/web/.next/server/app/receipts.rsc +4 -4
- package/standalone/apps/web/.next/server/app/settings/page.js +1 -1
- package/standalone/apps/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/settings.html +2 -2
- package/standalone/apps/web/.next/server/app/settings.rsc +4 -4
- package/standalone/apps/web/.next/server/app/verify/page_client-reference-manifest.js +1 -1
- package/standalone/apps/web/.next/server/app/verify.html +2 -2
- package/standalone/apps/web/.next/server/app/verify.rsc +3 -3
- package/standalone/apps/web/.next/server/app-paths-manifest.json +11 -11
- package/standalone/apps/web/.next/server/chunks/236.js +1 -0
- package/standalone/apps/web/.next/server/chunks/578.js +1 -0
- package/standalone/apps/web/.next/server/chunks/798.js +1 -0
- package/standalone/apps/web/.next/server/chunks/803.js +189 -0
- package/standalone/apps/web/.next/server/chunks/870.js +2 -2
- package/standalone/apps/web/.next/server/chunks/872.js +1 -0
- package/standalone/apps/web/.next/server/chunks/99.js +1 -0
- package/standalone/apps/web/.next/server/pages/404.html +2 -2
- package/standalone/apps/web/.next/server/pages/500.html +1 -1
- package/standalone/apps/web/.next/server/pages/_error.js +2 -2
- package/standalone/apps/web/.next/server/server-reference-manifest.json +1 -1
- package/standalone/apps/web/.next/static/chunks/app/agents/[id]/{page-6072c54c4f907f32.js → page-c0e1718cad311434.js} +1 -1
- package/standalone/apps/web/.next/static/chunks/app/chains/{page-69ef1e730d961039.js → page-d0b634ca7d0aa92d.js} +1 -1
- package/standalone/apps/web/.next/static/chunks/app/constraints/{page-05d35b57f9c424db.js → page-6baf6f176d4a9e3d.js} +1 -1
- package/standalone/apps/web/.next/static/chunks/app/judgments/{page-9715df3ce30f24c0.js → page-22c741e87fc41908.js} +1 -1
- package/standalone/apps/web/.next/static/chunks/app/layout-53a87fc182f46ce0.js +1 -0
- package/standalone/apps/web/.next/static/chunks/app/receipts/{page-a788cdbaf3879d37.js → page-ef79c1140a9c42e6.js} +1 -1
- package/standalone/apps/web/.next/static/chunks/app/settings/{page-154ca65062c2628d.js → page-8f1d3f326821cc04.js} +1 -1
- package/standalone/apps/web/.next/static/css/{acaddf5367ce801c.css → c89a04ca9481014a.css} +1 -1
- package/standalone/apps/web/server.js +1 -1
- package/standalone/apps/web/src/lib/demo-store.ts +121 -0
- package/standalone/apps/web/src/lib/sdk-server.ts +46 -0
- package/standalone/packages/crypto/package.json +1 -1
- package/standalone/packages/mcp-server/dist/index.js +1738 -0
- package/standalone/packages/mcp-server/package.json +4 -2
- package/standalone/apps/web/.next/server/chunks/350.js +0 -134
- package/standalone/apps/web/.next/server/chunks/998.js +0 -1
- package/standalone/apps/web/.next/static/chunks/app/layout-66d4997939026d7c.js +0 -1
- /package/standalone/apps/web/.next/static/{XRffp10LMCCMingivp622 → QFwgmBDt10h_GclOFqIUT}/_buildManifest.js +0 -0
- /package/standalone/apps/web/.next/static/{XRffp10LMCCMingivp622 → QFwgmBDt10h_GclOFqIUT}/_ssgManifest.js +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agent-receipts/mcp-server",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.8",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Local-first MCP server for Agent Receipts — storage, engine, and protocol",
|
|
6
6
|
"license": "MIT",
|
|
@@ -52,13 +52,15 @@
|
|
|
52
52
|
"typecheck": "tsc --noEmit"
|
|
53
53
|
},
|
|
54
54
|
"dependencies": {
|
|
55
|
-
"@agent-receipts/schema": "workspace:*",
|
|
56
55
|
"@agent-receipts/crypto": "workspace:*",
|
|
56
|
+
"@agent-receipts/schema": "workspace:*",
|
|
57
57
|
"@modelcontextprotocol/sdk": "^1.12.0",
|
|
58
|
+
"better-sqlite3": "^12.8.0",
|
|
58
59
|
"nanoid": "^5.1.2",
|
|
59
60
|
"zod": "^3.23.0"
|
|
60
61
|
},
|
|
61
62
|
"devDependencies": {
|
|
63
|
+
"@types/better-sqlite3": "^7.6.13",
|
|
62
64
|
"@types/node": "^20.0.0",
|
|
63
65
|
"tsup": "^8.2.0",
|
|
64
66
|
"typescript": "^5.4.0",
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
exports.id=350,exports.ids=[350],exports.modules={6170:(a,b,c)=>{"use strict";c.d(b,{TZ:()=>h,W_:()=>f,XF:()=>g,sP:()=>i});var d=c(23993),e=c(38884);function f(a){return{receipt_id:a.receipt_id,chain_id:a.chain_id,receipt_type:a.receipt_type,agent_id:a.agent_id,org_id:a.org_id,action:a.action,input_hash:a.input_hash,output_hash:a.output_hash,status:a.status,timestamp:a.timestamp,completed_at:a.completed_at,environment:a.environment}}function g(a,b,c){try{var e;if(!b.startsWith("ed25519:"))return!1;let f=function(a){let b=Object.keys(a).sort();return JSON.stringify(a,b)}(a),g=new TextEncoder().encode(f),h=(e=b.slice(8),new Uint8Array(Buffer.from(e,"base64"))),i=d.jn.hexToBytes(c);return(0,d.MX)(h,g,i)}catch{return!1}}function h(){let a=d.Wp.randomPrivateKey(),b=(0,d.lG)(a);return{privateKey:d.jn.bytesToHex(a),publicKey:d.jn.bytesToHex(b)}}function i(a){let b=d.jn.hexToBytes(a),c=(0,d.lG)(b);return d.jn.bytesToHex(c)}d.jn.sha512Sync=(...a)=>(0,e.Zf)(d.jn.concatBytes(...a))},50578:(a,b,c)=>{"use strict";c.d(b,{WU:()=>k,ok:()=>h,Dh:()=>j,KA:()=>i});var d=c(96803);let e=null,f=null,g=null;function h(){return process.env.AGENT_RECEIPTS_DATA_DIR??d.mf.getDefaultDataDir()}async function i(){return e||(e=new d.Ap(h()),await e.init()),e}async function j(){return f||(f=new d.t5(h()),await f.init()),f}async function k(){return g||(g=new d.mf(h()),await g.init()),g}},53139:()=>{},90091:()=>{},96803:(a,b,c)=>{"use strict";c.d(b,{mf:()=>u,t5:()=>s,Ap:()=>r,vk:()=>y,sV:()=>B,pf:()=>x,O8:()=>A,Jq:()=>w});var d=c(79748),e=c(33873),f=c(55511),g=c(6170),h=c(21820),i=c(68798),j=i.k5(["pending","completed","failed","timeout"]),k=i.k5(["action","verification","judgment","arbitration"]),l=i.k5(["production","staging","test"]),m=i.k5(["UNAUTHORIZED","KEY_REVOKED","FORBIDDEN","RECEIPT_NOT_FOUND","CHAIN_NOT_FOUND","AGENT_NOT_FOUND","RECEIPT_NOT_PENDING","RECEIPT_IMMUTABLE","RATE_LIMIT_EXCEEDED","VALIDATION_ERROR","INTERNAL_ERROR"]);i.Ik({receipt_id:i.Yj(),chain_id:i.Yj(),receipt_type:k,agent_id:i.Yj(),org_id:i.Yj(),action:i.Yj(),input_hash:i.Yj(),output_hash:i.Yj().nullable(),status:j,timestamp:i.Yj().datetime(),completed_at:i.Yj().datetime().nullable(),environment:l}),i.Ik({receipt_id:i.Yj(),parent_receipt_id:i.Yj().nullable(),chain_id:i.Yj(),receipt_type:k,agent_id:i.Yj(),org_id:i.Yj(),action:i.Yj(),input_hash:i.Yj(),output_hash:i.Yj().nullable(),output_summary:i.Yj().nullable(),model:i.Yj().nullable(),tokens_in:i.ai().int().nonnegative().nullable(),tokens_out:i.ai().int().nonnegative().nullable(),cost_usd:i.ai().nonnegative().nullable(),latency_ms:i.ai().int().nonnegative().nullable(),tool_calls:i.YO(i.Yj()).nullable(),timestamp:i.Yj().datetime(),completed_at:i.Yj().datetime().nullable(),status:j,error:i.g1(i.L5()).nullable(),environment:l,tags:i.YO(i.Yj()).nullable(),constraints:i.g1(i.L5()).nullable(),constraint_result:i.g1(i.L5()).nullable(),signature:i.Yj(),verify_url:i.Yj().url(),callback_verified:i.zM().nullable(),confidence:i.ai().min(0).max(1).nullable(),metadata:i.g1(i.L5())});var n=i.Ik({type:i.Yj().min(1),value:i.L5(),message:i.Yj().optional()}),o=i.Ik({type:i.Yj(),passed:i.zM(),expected:i.L5(),actual:i.L5(),message:i.Yj().optional()});i.Ik({passed:i.zM(),results:i.YO(o),evaluated_at:i.Yj().datetime()}),i.YO(n);var p=i.Ik({name:i.Yj().min(1),description:i.Yj().min(1),weight:i.ai().min(0).max(1),passing_threshold:i.ai().min(0).max(1).optional(),examples:i.Ik({good:i.YO(i.Yj()).optional(),bad:i.YO(i.Yj()).optional()}).optional()});i.Ik({version:i.Yj().default("1.0"),criteria:i.YO(p).min(1),passing_threshold:i.ai().min(0).max(1).default(.7),require_all:i.zM().default(!1)});var q=i.Ik({criterion:i.Yj(),score:i.ai().min(0).max(1),passed:i.zM(),reasoning:i.Yj()});i.Ik({verdict:i.k5(["pass","fail","partial"]),score:i.ai().min(0).max(1),criteria_results:i.YO(q),overall_reasoning:i.Yj(),rubric_version:i.Yj()}),i.Ik({agent_id:i.Yj().min(1),action:i.Yj().min(1),input_hash:i.Yj().min(1),receipt_type:k.default("action"),status:j.default("pending"),environment:l.default("production"),parent_receipt_id:i.Yj().nullable().optional(),output_hash:i.Yj().nullable().optional(),output_summary:i.Yj().nullable().optional(),model:i.Yj().nullable().optional(),tokens_in:i.ai().int().nonnegative().nullable().optional(),tokens_out:i.ai().int().nonnegative().nullable().optional(),cost_usd:i.ai().nonnegative().nullable().optional(),latency_ms:i.ai().int().nonnegative().nullable().optional(),tool_calls:i.YO(i.Yj()).nullable().optional(),tags:i.YO(i.Yj()).nullable().optional(),confidence:i.ai().min(0).max(1).nullable().optional(),callback_verified:i.zM().nullable().optional(),metadata:i.g1(i.L5()).optional()}),i.Ik({status:i.k5(["completed","failed","timeout"]),output_hash:i.Yj().nullable().optional(),output_summary:i.Yj().nullable().optional(),model:i.Yj().nullable().optional(),tokens_in:i.ai().int().nonnegative().nullable().optional(),tokens_out:i.ai().int().nonnegative().nullable().optional(),cost_usd:i.ai().nonnegative().nullable().optional(),latency_ms:i.ai().int().nonnegative().nullable().optional(),tool_calls:i.YO(i.Yj()).nullable().optional(),confidence:i.ai().min(0).max(1).nullable().optional(),callback_verified:i.zM().nullable().optional(),error:i.g1(i.L5()).nullable().optional()}),i.Ik({verified:i.zM(),receipt:i.Ik({receipt_id:i.Yj(),chain_id:i.Yj(),receipt_type:k,agent_id:i.Yj(),action:i.Yj(),status:j,input_hash:i.Yj(),output_hash:i.Yj().nullable(),signature:i.Yj(),timestamp:i.Yj().datetime(),completed_at:i.Yj().datetime().nullable(),environment:l,latency_ms:i.ai().int().nonnegative().nullable()}),signature_valid:i.zM(),chain_length:i.ai().int().nonnegative(),public_key_url:i.Yj().url()}),i.Ik({page:i.au.number().int().positive().default(1),limit:i.au.number().int().positive().max(100).default(50),agent_id:i.Yj().optional(),action:i.Yj().optional(),status:j.optional(),environment:l.optional(),receipt_type:k.optional(),chain_id:i.Yj().optional(),tag:i.Yj().optional(),from:i.Yj().datetime().optional(),to:i.Yj().datetime().optional(),sort:i.Yj().regex(/^(created_at|completed_at|latency_ms|cost_usd):(asc|desc)$/).default("created_at:desc")}),i.Ik({page:i.ai().int().positive(),limit:i.ai().int().positive(),total:i.ai().int().nonnegative(),total_pages:i.ai().int().nonnegative(),has_next:i.zM(),has_prev:i.zM()}),i.Ik({error:i.Ik({code:m,message:i.Yj(),status:i.ai().int()})});var r=class{constructor(a){this.receiptsDir=(0,e.join)(a,"receipts")}async init(){await (0,d.mkdir)(this.receiptsDir,{recursive:!0})}async save(a){await this.init();let b=(0,e.join)(this.receiptsDir,`${a.receipt_id}.json`),c=(0,e.join)(this.receiptsDir,`.tmp_${(0,f.randomBytes)(8).toString("hex")}.json`),g=JSON.stringify(a,null,2);await (0,d.writeFile)(c,g,"utf-8"),await (0,d.rename)(c,b)}async get(a){try{let b=(0,e.join)(this.receiptsDir,`${a}.json`),c=await (0,d.readFile)(b,"utf-8");return JSON.parse(c)}catch{return null}}async exists(a){return null!==await this.get(a)}async list(a,b=1,c=50,f="timestamp:desc"){await this.init();let g=(await (0,d.readdir)(this.receiptsDir)).filter(a=>a.endsWith(".json")&&!a.startsWith(".")),h=[];for(let a of g)try{let b=await (0,d.readFile)((0,e.join)(this.receiptsDir,a),"utf-8");h.push(JSON.parse(b))}catch{}a&&(h=h.filter(b=>(!a.agent_id||b.agent_id===a.agent_id)&&(!a.action||b.action===a.action)&&(!a.status||b.status===a.status)&&(!a.environment||b.environment===a.environment)&&(!a.receipt_type||b.receipt_type===a.receipt_type)&&(!a.chain_id||b.chain_id===a.chain_id)&&(!a.parent_receipt_id||b.parent_receipt_id===a.parent_receipt_id)&&(!a.tag||!!b.tags&&!!b.tags.includes(a.tag))&&(!a.from||!(b.timestamp<a.from))&&(!a.to||!(b.timestamp>a.to))&&!0));let[i,j]=f.split(":");h.sort((a,b)=>{let c=a["created_at"===i?"timestamp":i],d=b["created_at"===i?"timestamp":i];if(null==c)return 1;if(null==d)return -1;let e=String(c).localeCompare(String(d));return"desc"===j?-e:e});let k=h.length,l=Math.max(1,Math.ceil(k/c)),m=(b-1)*c;return{data:h.slice(m,m+c),pagination:{page:b,limit:c,total:k,total_pages:l,has_next:b<l,has_prev:b>1}}}async getChain(a){return(await this.list({chain_id:a},1,1e3,"timestamp:asc")).data}async count(a){return(await this.list(a,1,1)).pagination.total}async delete(a){try{let b=(0,e.join)(this.receiptsDir,`${a}.json`);return await (0,d.unlink)(b),!0}catch{return!1}}async cleanup(){let a=new Date().toISOString(),b=await this.list(void 0,1,1e5),c=0;for(let d of b.data){let b=d.metadata?.expires_at;b&&b<a&&(await this.delete(d.receipt_id),c++)}return{deleted:c,total:b.data.length}}},s=class{constructor(a){this.privateKey=null,this.publicKey=null,this.keysDir=(0,e.join)(a,"keys")}async init(){await (0,d.mkdir)(this.keysDir,{recursive:!0}),await this.loadKeys()}async loadKeys(){let a=process.env.RECEIPT_SIGNING_PRIVATE_KEY;if(a){this.privateKey=a,this.publicKey=(0,g.sP)(a);return}let b=(0,e.join)(this.keysDir,"private.key");try{this.privateKey=(await (0,d.readFile)(b,"utf-8")).trim(),this.publicKey=(0,g.sP)(this.privateKey);return}catch{}let c=(0,g.TZ)();this.privateKey=c.privateKey,this.publicKey=c.publicKey,await (0,d.writeFile)(b,this.privateKey,{encoding:"utf-8",mode:384}),await (0,d.chmod)(b,384);let f=(0,e.join)(this.keysDir,"public.key");await (0,d.writeFile)(f,this.publicKey,"utf-8")}getPrivateKey(){if(!this.privateKey)throw Error("KeyManager not initialized — call init() first");return this.privateKey}getPublicKey(){if(!this.publicKey)throw Error("KeyManager not initialized — call init() first");return this.publicKey}},t={agentId:"local-agent",orgId:"local-org",environment:"production"},u=class{constructor(a){this.config={...t},this.configPath=(0,e.join)(a,"config.json")}async init(){await (0,d.mkdir)((0,e.dirname)(this.configPath),{recursive:!0}),await this.load()}async load(){try{let a=await (0,d.readFile)(this.configPath,"utf-8"),b=JSON.parse(a);this.config={...t,...b}}catch{}let a=process.env.AGENT_RECEIPTS_AGENT_ID;a&&(this.config.agentId=a);let b=process.env.AGENT_RECEIPTS_ORG_ID;b&&(this.config.orgId=b);let c=process.env.AGENT_RECEIPTS_ENVIRONMENT;("production"===c||"staging"===c||"test"===c)&&(this.config.environment=c)}async save(){await (0,d.mkdir)((0,e.dirname)(this.configPath),{recursive:!0}),await (0,d.writeFile)(this.configPath,JSON.stringify(this.config,null,2),"utf-8")}getConfig(){return{...this.config}}async update(a){this.config={...this.config,...a},await this.save()}static getDefaultDataDir(){return process.env.AGENT_RECEIPTS_DATA_DIR??(0,e.join)((0,h.homedir)(),".agent-receipts")}};function v(a){let b=a.constraint_result;return{receipt_id:a.receipt_id,action:a.action,agent_id:a.agent_id,timestamp:a.timestamp,description:a.output_summary??`${a.action} by ${a.agent_id}`,cost_usd:a.cost_usd,latency_ms:a.latency_ms,model:a.model,tokens_in:a.tokens_in,tokens_out:a.tokens_out,constraints_passed:b&&"boolean"==typeof b.passed?b.passed:null,receipt:a}}async function w(a,b,c){let d=(await a.list({from:c.from,to:c.to,status:"completed"},1,1e5,"timestamp:asc")).data;if(c.agent_ids&&c.agent_ids.length>0){let a=new Set(c.agent_ids);d=d.filter(b=>a.has(b.agent_id))}if(c.actions&&c.actions.length>0){let a=new Set(c.actions);d=d.filter(b=>a.has(b.action))}c.constraints_passed_only&&(d=d.filter(a=>{let b=a.constraint_result;return!b||!1!==b.passed}));let e=d.map(v),f=function(a,b){if("none"===b){let b=a.reduce((a,b)=>a+(b.cost_usd??0),0);return[{label:"All Items",items:a,subtotal_usd:b,count:a.length}]}let c=new Map;for(let d of a){let a;a="action"===b?d.action:"agent"===b?d.agent_id:d.timestamp.slice(0,10);let e=c.get(a)??[];e.push(d),c.set(a,e)}let d=[];for(let[a,b]of c){let c=b.reduce((a,b)=>a+(b.cost_usd??0),0);d.push({label:a,items:b,subtotal_usd:c,count:b.length})}return d.sort((a,b)=>a.label.localeCompare(b.label))}(e,c.group_by??"none"),g=function(a){let b=0,c=0,d=0,e=0,f=0,g=0,h=0;for(let i of a)b+=i.cost_usd??0,c+=i.tokens_in??0,d+=i.tokens_out??0,e+=i.latency_ms??0,null!==i.constraints_passed&&(f++,i.constraints_passed?g++:h++);return{total_receipts:a.length,total_cost_usd:b,avg_cost_usd:a.length>0?b/a.length:0,total_tokens_in:c,total_tokens_out:d,total_latency_ms:e,avg_latency_ms:a.length>0?e/a.length:0,constraints_evaluated:f,constraints_passed:g,constraints_failed:h}}(e),h=b.getPublicKey();return{invoice_number:function(){let a=new Date,b=a.getFullYear(),c=String(a.getMonth()+1).padStart(2,"0"),d=String(a.getDate()).padStart(2,"0"),e="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",f="";for(let a=0;a<4;a++)f+=e[Math.floor(Math.random()*e.length)];return`AR-${b}${c}${d}-${f}`}(),generated_at:new Date().toISOString(),period:{from:c.from,to:c.to},client:c.client,provider:c.provider,groups:f,summary:g,public_key:h,notes:c.notes,payment_terms:c.payment_terms}}function x(a,b=!1){return b?JSON.stringify(a,null,2):JSON.stringify({...a,groups:a.groups.map(a=>({...a,items:a.items.map(({receipt:a,...b})=>b)}))},null,2)}function y(a){let b=[];for(let c of(b.push("receipt_id,action,agent_id,timestamp,description,cost_usd,latency_ms,model,tokens_in,tokens_out,constraints_passed,group"),a.groups))for(let a of c.items)b.push([z(a.receipt_id),z(a.action),z(a.agent_id),z(a.timestamp),z(a.description),a.cost_usd??"",a.latency_ms??"",z(a.model??""),a.tokens_in??"",a.tokens_out??"",a.constraints_passed??"",z(c.label)].join(","));return b.push(""),b.push(`# Invoice: ${a.invoice_number}`),b.push(`# Period: ${a.period.from} to ${a.period.to}`),b.push(`# Total Receipts: ${a.summary.total_receipts}`),b.push(`# Total Cost: $${a.summary.total_cost_usd.toFixed(4)}`),b.join("\n")}function z(a){return a.includes(",")||a.includes('"')||a.includes("\n")?`"${a.replace(/"/g,'""')}"`:a}function A(a){let b=[];for(let c of(b.push(`# Invoice ${a.invoice_number}`),b.push(""),b.push(`**Generated:** ${a.generated_at}`),b.push(`**Period:** ${a.period.from} to ${a.period.to}`),b.push(""),a.provider&&(b.push("## Provider"),b.push(`**${a.provider.name}**`),a.provider.email&&b.push(`Email: ${a.provider.email}`),a.provider.address&&b.push(`Address: ${a.provider.address}`),b.push("")),a.client&&(b.push("## Bill To"),b.push(`**${a.client.name}**`),a.client.email&&b.push(`Email: ${a.client.email}`),a.client.address&&b.push(`Address: ${a.client.address}`),b.push("")),b.push("---"),b.push(""),a.groups)){for(let a of(b.push(`### ${c.label}`),b.push(""),b.push("| Receipt ID | Action | Agent | Description | Cost |"),b.push("|------------|--------|-------|-------------|------|"),c.items)){let c=null!==a.cost_usd?`$${a.cost_usd.toFixed(4)}`:"-",d=a.description.length>50?a.description.slice(0,47)+"...":a.description;b.push(`| \`${a.receipt_id}\` | ${a.action} | ${a.agent_id} | ${d} | ${c} |`)}b.push(""),b.push(`**Subtotal:** $${c.subtotal_usd.toFixed(4)} (${c.count} items)`),b.push("")}return b.push("---"),b.push(""),b.push("## Summary"),b.push(""),b.push("| Metric | Value |"),b.push("|--------|-------|"),b.push(`| Total Receipts | ${a.summary.total_receipts} |`),b.push(`| Total Cost | $${a.summary.total_cost_usd.toFixed(4)} |`),b.push(`| Avg Cost | $${a.summary.avg_cost_usd.toFixed(4)} |`),b.push(`| Total Tokens (in) | ${a.summary.total_tokens_in} |`),b.push(`| Total Tokens (out) | ${a.summary.total_tokens_out} |`),b.push(`| Avg Latency | ${Math.round(a.summary.avg_latency_ms)}ms |`),a.summary.constraints_evaluated>0&&b.push(`| Constraints Passed | ${a.summary.constraints_passed}/${a.summary.constraints_evaluated} |`),b.push(""),a.notes&&(b.push("## Notes"),b.push(""),b.push(a.notes),b.push("")),a.payment_terms&&(b.push("## Payment Terms"),b.push(""),b.push(a.payment_terms),b.push("")),b.push("---"),b.push(""),b.push("## Verification"),b.push(""),b.push("Every line item is a cryptographically signed receipt that can be independently verified."),b.push(""),b.push(`**Public Key:** \`${a.public_key}\``),b.push(""),b.join("\n")}function B(a){let b=a.provider?`
|
|
2
|
-
<div class="party">
|
|
3
|
-
<h3>From</h3>
|
|
4
|
-
<p class="party-name">${C(a.provider.name)}</p>
|
|
5
|
-
${a.provider.email?`<p>${C(a.provider.email)}</p>`:""}
|
|
6
|
-
${a.provider.address?`<p>${C(a.provider.address)}</p>`:""}
|
|
7
|
-
</div>`:"",c=a.client?`
|
|
8
|
-
<div class="party">
|
|
9
|
-
<h3>Bill To</h3>
|
|
10
|
-
<p class="party-name">${C(a.client.name)}</p>
|
|
11
|
-
${a.client.email?`<p>${C(a.client.email)}</p>`:""}
|
|
12
|
-
${a.client.address?`<p>${C(a.client.address)}</p>`:""}
|
|
13
|
-
</div>`:"",d=a.groups.map(a=>`
|
|
14
|
-
<div class="group">
|
|
15
|
-
<h3>${C(a.label)}</h3>
|
|
16
|
-
<table>
|
|
17
|
-
<thead>
|
|
18
|
-
<tr>
|
|
19
|
-
<th>Receipt ID</th>
|
|
20
|
-
<th>Action</th>
|
|
21
|
-
<th>Agent</th>
|
|
22
|
-
<th>Description</th>
|
|
23
|
-
<th>Timestamp</th>
|
|
24
|
-
<th class="num">Cost</th>
|
|
25
|
-
</tr>
|
|
26
|
-
</thead>
|
|
27
|
-
<tbody>
|
|
28
|
-
${a.items.map(a=>(function(a){let b=null!==a.cost_usd?`$${a.cost_usd.toFixed(4)}`:"-",c=a.description.length>60?a.description.slice(0,57)+"...":a.description,d=D(a.timestamp);return` <tr>
|
|
29
|
-
<td class="receipt-id">${C(a.receipt_id)}</td>
|
|
30
|
-
<td>${C(a.action)}</td>
|
|
31
|
-
<td>${C(a.agent_id)}</td>
|
|
32
|
-
<td>${C(c)}</td>
|
|
33
|
-
<td>${C(d)}</td>
|
|
34
|
-
<td class="num">${b}</td>
|
|
35
|
-
</tr>`})(a)).join("\n")}
|
|
36
|
-
</tbody>
|
|
37
|
-
<tfoot>
|
|
38
|
-
<tr>
|
|
39
|
-
<td colspan="5" class="subtotal-label">Subtotal (${a.count} items)</td>
|
|
40
|
-
<td class="num subtotal-value">$${a.subtotal_usd.toFixed(4)}</td>
|
|
41
|
-
</tr>
|
|
42
|
-
</tfoot>
|
|
43
|
-
</table>
|
|
44
|
-
</div>`).join("\n"),e=a.summary.constraints_evaluated>0?`<tr><td>Constraints Passed</td><td>${a.summary.constraints_passed}/${a.summary.constraints_evaluated}</td></tr>`:"",f=a.notes?`<div class="section"><h3>Notes</h3><p>${C(a.notes)}</p></div>`:"",g=a.payment_terms?`<div class="section"><h3>Payment Terms</h3><p>${C(a.payment_terms)}</p></div>`:"";return`<!DOCTYPE html>
|
|
45
|
-
<html lang="en">
|
|
46
|
-
<head>
|
|
47
|
-
<meta charset="UTF-8">
|
|
48
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
49
|
-
<title>Invoice ${C(a.invoice_number)}</title>
|
|
50
|
-
<style>
|
|
51
|
-
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
52
|
-
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; color: #1a1a1a; line-height: 1.5; padding: 40px; max-width: 1000px; margin: 0 auto; }
|
|
53
|
-
.header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 32px; padding-bottom: 24px; border-bottom: 2px solid #e5e7eb; }
|
|
54
|
-
.header h1 { font-size: 28px; font-weight: 700; color: #111; }
|
|
55
|
-
.header .invoice-number { font-size: 14px; color: #6b7280; margin-top: 4px; }
|
|
56
|
-
.header .meta { text-align: right; font-size: 13px; color: #6b7280; }
|
|
57
|
-
.parties { display: flex; gap: 48px; margin-bottom: 32px; }
|
|
58
|
-
.party h3 { font-size: 11px; text-transform: uppercase; letter-spacing: 0.05em; color: #9ca3af; margin-bottom: 4px; }
|
|
59
|
-
.party-name { font-weight: 600; font-size: 15px; }
|
|
60
|
-
.party p { font-size: 13px; color: #4b5563; }
|
|
61
|
-
.group { margin-bottom: 24px; }
|
|
62
|
-
.group h3 { font-size: 15px; font-weight: 600; margin-bottom: 8px; color: #374151; }
|
|
63
|
-
table { width: 100%; border-collapse: collapse; font-size: 12px; }
|
|
64
|
-
th { text-align: left; padding: 8px 10px; background: #f9fafb; border-bottom: 1px solid #e5e7eb; font-weight: 600; color: #374151; font-size: 11px; text-transform: uppercase; letter-spacing: 0.03em; }
|
|
65
|
-
td { padding: 7px 10px; border-bottom: 1px solid #f3f4f6; color: #4b5563; }
|
|
66
|
-
.num { text-align: right; font-variant-numeric: tabular-nums; }
|
|
67
|
-
.receipt-id { font-family: ui-monospace, monospace; font-size: 11px; color: #6b7280; }
|
|
68
|
-
.subtotal-label { text-align: right; font-weight: 600; color: #374151; }
|
|
69
|
-
.subtotal-value { font-weight: 600; color: #111; }
|
|
70
|
-
.summary { margin-top: 32px; padding-top: 24px; border-top: 2px solid #e5e7eb; }
|
|
71
|
-
.summary h3 { font-size: 15px; font-weight: 600; margin-bottom: 12px; }
|
|
72
|
-
.summary table { max-width: 360px; }
|
|
73
|
-
.summary td { padding: 5px 10px; }
|
|
74
|
-
.summary td:first-child { font-weight: 500; color: #374151; }
|
|
75
|
-
.summary td:last-child { text-align: right; font-variant-numeric: tabular-nums; }
|
|
76
|
-
.total-row td { font-size: 16px; font-weight: 700; color: #111; border-top: 2px solid #e5e7eb; padding-top: 10px; }
|
|
77
|
-
.section { margin-top: 24px; }
|
|
78
|
-
.section h3 { font-size: 13px; font-weight: 600; margin-bottom: 6px; color: #374151; }
|
|
79
|
-
.section p { font-size: 13px; color: #4b5563; }
|
|
80
|
-
.verification { margin-top: 32px; padding: 16px; background: #f0fdf4; border: 1px solid #bbf7d0; border-radius: 8px; }
|
|
81
|
-
.verification h3 { font-size: 13px; font-weight: 600; color: #166534; margin-bottom: 6px; }
|
|
82
|
-
.verification p { font-size: 12px; color: #15803d; }
|
|
83
|
-
.verification code { font-family: ui-monospace, monospace; font-size: 11px; background: #dcfce7; padding: 2px 6px; border-radius: 3px; word-break: break-all; }
|
|
84
|
-
.footer { margin-top: 40px; padding-top: 16px; border-top: 1px solid #e5e7eb; text-align: center; font-size: 11px; color: #9ca3af; }
|
|
85
|
-
@media print {
|
|
86
|
-
body { padding: 20px; }
|
|
87
|
-
.verification { break-inside: avoid; }
|
|
88
|
-
table { page-break-inside: auto; }
|
|
89
|
-
tr { page-break-inside: avoid; }
|
|
90
|
-
}
|
|
91
|
-
</style>
|
|
92
|
-
</head>
|
|
93
|
-
<body>
|
|
94
|
-
<div class="header">
|
|
95
|
-
<div>
|
|
96
|
-
<h1>Invoice</h1>
|
|
97
|
-
<div class="invoice-number">${C(a.invoice_number)}</div>
|
|
98
|
-
</div>
|
|
99
|
-
<div class="meta">
|
|
100
|
-
<div>Generated: ${C(D(a.generated_at))}</div>
|
|
101
|
-
<div>Period: ${C(D(a.period.from))} — ${C(D(a.period.to))}</div>
|
|
102
|
-
</div>
|
|
103
|
-
</div>
|
|
104
|
-
|
|
105
|
-
${b||c?`<div class="parties">${b}${c}</div>`:""}
|
|
106
|
-
|
|
107
|
-
${d}
|
|
108
|
-
|
|
109
|
-
<div class="summary">
|
|
110
|
-
<h3>Summary</h3>
|
|
111
|
-
<table>
|
|
112
|
-
<tr class="total-row"><td>Total Cost</td><td>$${a.summary.total_cost_usd.toFixed(4)}</td></tr>
|
|
113
|
-
<tr><td>Total Receipts</td><td>${a.summary.total_receipts}</td></tr>
|
|
114
|
-
<tr><td>Avg Cost per Receipt</td><td>$${a.summary.avg_cost_usd.toFixed(4)}</td></tr>
|
|
115
|
-
<tr><td>Total Tokens (in/out)</td><td>${a.summary.total_tokens_in} / ${a.summary.total_tokens_out}</td></tr>
|
|
116
|
-
<tr><td>Avg Latency</td><td>${Math.round(a.summary.avg_latency_ms)}ms</td></tr>
|
|
117
|
-
${e}
|
|
118
|
-
</table>
|
|
119
|
-
</div>
|
|
120
|
-
|
|
121
|
-
${f}
|
|
122
|
-
${g}
|
|
123
|
-
|
|
124
|
-
<div class="verification">
|
|
125
|
-
<h3>Verification</h3>
|
|
126
|
-
<p>Every line item is a cryptographically signed receipt that can be independently verified.</p>
|
|
127
|
-
<p style="margin-top: 6px;">Public Key: <code>${C(a.public_key)}</code></p>
|
|
128
|
-
</div>
|
|
129
|
-
|
|
130
|
-
<div class="footer">
|
|
131
|
-
Generated by Agent Receipts — ${C(a.invoice_number)}
|
|
132
|
-
</div>
|
|
133
|
-
</body>
|
|
134
|
-
</html>`}function C(a){return a.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""")}function D(a){try{return new Date(a).toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric"})}catch{return a}}}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
exports.id=998,exports.ids=[998],exports.modules={1242:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),function(a,b){Object.keys(a).forEach(function(c){"default"===c||Object.prototype.hasOwnProperty.call(b,c)||Object.defineProperty(b,c,{enumerable:!0,get:function(){return a[c]}})})}(c(6996),b)},1757:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"NextResponse",{enumerable:!0,get:function(){return l}});let d=c(10419),e=c(65865),f=c(99991),g=c(89908),h=c(10419),i=Symbol("internal response"),j=new Set([301,302,303,307,308]);function k(a,b){var c;if(null==a||null==(c=a.request)?void 0:c.headers){if(!(a.request.headers instanceof Headers))throw Object.defineProperty(Error("request.headers must be an instance of Headers"),"__NEXT_ERROR_CODE",{value:"E119",enumerable:!1,configurable:!0});let c=[];for(let[d,e]of a.request.headers)b.set("x-middleware-request-"+d,e),c.push(d);b.set("x-middleware-override-headers",c.join(","))}}class l extends Response{constructor(a,b={}){super(a,b);let c=this.headers,j=new Proxy(new h.ResponseCookies(c),{get(a,e,f){switch(e){case"delete":case"set":return(...f)=>{let g=Reflect.apply(a[e],a,f),i=new Headers(c);return g instanceof h.ResponseCookies&&c.set("x-middleware-set-cookie",g.getAll().map(a=>(0,d.stringifyCookie)(a)).join(",")),k(b,i),g};default:return g.ReflectAdapter.get(a,e,f)}}});this[i]={cookies:j,url:b.url?new e.NextURL(b.url,{headers:(0,f.toNodeOutgoingHttpHeaders)(c),nextConfig:b.nextConfig}):void 0}}[Symbol.for("edge-runtime.inspect.custom")](){return{cookies:this.cookies,url:this.url,body:this.body,bodyUsed:this.bodyUsed,headers:Object.fromEntries(this.headers),ok:this.ok,redirected:this.redirected,status:this.status,statusText:this.statusText,type:this.type}}get cookies(){return this[i].cookies}static json(a,b){let c=Response.json(a,b);return new l(c.body,c)}static redirect(a,b){let c="number"==typeof b?b:(null==b?void 0:b.status)??307;if(!j.has(c))throw Object.defineProperty(RangeError('Failed to execute "redirect" on "response": Invalid status code'),"__NEXT_ERROR_CODE",{value:"E529",enumerable:!1,configurable:!0});let d="object"==typeof b?b:{},e=new Headers(null==d?void 0:d.headers);return e.set("Location",(0,f.validateURL)(a)),new l(null,{...d,headers:e,status:c})}static rewrite(a,b){let c=new Headers(null==b?void 0:b.headers);return c.set("x-middleware-rewrite",(0,f.validateURL)(a)),k(b,c),new l(null,{...b,headers:c})}static next(a){let b=new Headers(null==a?void 0:a.headers);return b.set("x-middleware-next","1"),k(a,b),new l(null,{...a,headers:b})}}},2974:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"URLPattern",{enumerable:!0,get:function(){return c}});let c="undefined"==typeof URLPattern?void 0:URLPattern},6996:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"after",{enumerable:!0,get:function(){return e}});let d=c(29294);function e(a){let b=d.workAsyncStorage.getStore();if(!b)throw Object.defineProperty(Error("`after` was called outside a request scope. Read more: https://nextjs.org/docs/messages/next-dynamic-api-wrong-context"),"__NEXT_ERROR_CODE",{value:"E468",enumerable:!1,configurable:!0});let{afterContext:c}=b;return c.after(a)}},9145:(a,b,c)=>{"use strict";var d=c(76142);c.o(d,"NextResponse")&&c.d(b,{NextResponse:function(){return d.NextResponse}})},10541:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{isBot:function(){return e},userAgent:function(){return g},userAgentFromString:function(){return f}});let d=function(a){return a&&a.__esModule?a:{default:a}}(c(26044));function e(a){return/Googlebot|Mediapartners-Google|AdsBot-Google|googleweblight|Storebot-Google|Google-PageRenderer|Google-InspectionTool|Bingbot|BingPreview|Slurp|DuckDuckBot|baiduspider|yandex|sogou|LinkedInBot|bitlybot|tumblr|vkShare|quora link preview|facebookexternalhit|facebookcatalog|Twitterbot|applebot|redditbot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|ia_archiver/i.test(a)}function f(a){return{...(0,d.default)(a),isBot:void 0!==a&&e(a)}}function g({headers:a}){return f(a.get("user-agent")||void 0)}},23993:(a,b,c)=>{"use strict";let d;c.d(b,{MX:()=>R,Wp:()=>T,jn:()=>S,lG:()=>P});let{p:e,n:f,Gx:g,Gy:h,a:i,d:j}={p:0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffedn,n:0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3edn,h:8n,a:0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecn,d:0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3n,Gx:0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51an,Gy:0x6666666666666666666666666666666666666666666666666666666666666658n},k=32,l=(a="")=>{throw Error(a)},m=(a,b)=>!(a=>a instanceof Uint8Array||ArrayBuffer.isView(a)&&"Uint8Array"===a.constructor.name)(a)||"number"==typeof b&&b>0&&a.length!==b?l("Uint8Array expected"):a,n=a=>new Uint8Array(a),o=a=>Uint8Array.from(a),p=(a,b)=>a.toString(16).padStart(b,"0"),q=a=>Array.from(m(a)).map(a=>p(a,2)).join(""),r={_0:48,_9:57,A:65,F:70,a:97,f:102},s=a=>a>=r._0&&a<=r._9?a-r._0:a>=r.A&&a<=r.F?a-(r.A-10):a>=r.a&&a<=r.f?a-(r.a-10):void 0,t=a=>{let b="hex invalid";if("string"!=typeof a)return l(b);let c=a.length,d=c/2;if(c%2)return l(b);let e=n(d);for(let c=0,f=0;c<d;c++,f+=2){let d=s(a.charCodeAt(f)),g=s(a.charCodeAt(f+1));if(void 0===d||void 0===g)return l(b);e[c]=16*d+g}return e},u=(a,b)=>m("string"==typeof a?t(a):o(m(a)),b),v=()=>globalThis?.crypto,w=(...a)=>{let b=n(a.reduce((a,b)=>a+m(b).length,0)),c=0;return a.forEach(a=>{b.set(a,c),c+=a.length}),b},x=(a=k)=>v().getRandomValues(n(a)),y=BigInt,z=(a,b,c,d="bad number: out of range")=>"bigint"==typeof a&&b<=a&&a<c?a:l(d),A=(a,b=e)=>{let c=a%b;return c>=0n?c:b+c},B=(a,b)=>{(0n===a||b<=0n)&&l("no inverse n="+a+" mod="+b);let c=A(a,b),d=b,e=0n,f=1n,g=1n,h=0n;for(;0n!==c;){let a=d/c,b=d%c,i=e-g*a,j=f-h*a;d=c,c=b,e=g,f=h,g=i,h=j}return 1n===d?A(e,b):l("no inverse")},C=a=>a instanceof E?a:l("Point expected"),D=2n**256n;class E{static BASE;static ZERO;ex;ey;ez;et;constructor(a,b,c,d){this.ex=z(a,0n,D),this.ey=z(b,0n,D),this.ez=z(c,1n,D),this.et=z(d,0n,D),Object.freeze(this)}static fromAffine(a){return new E(a.x,a.y,1n,A(a.x*a.y))}static fromBytes(a,b=!1){let c=o(m(a,k)),d=a[31];c[31]=-129&d;let f=I(c);z(f,0n,b?D:e);let g=A(f*f),{isValid:h,value:i}=K(A(g-1n),A(j*g+1n));h||l("bad point: y not sqrt");let n=(1n&i)===1n,p=(128&d)!=0;return!b&&0n===i&&p&&l("bad point: x==0, isLastByteOdd"),p!==n&&(i=A(-i)),new E(i,f,1n,A(i*f))}assertValidity(){if(this.is0())throw Error("bad point: ZERO");let{ex:a,ey:b,ez:c,et:d}=this,e=A(a*a),f=A(b*b),g=A(c*c),h=A(g*g),k=A(e*i);if(A(g*A(k+f))!==A(h+A(j*A(e*f))))throw Error("bad point: equation left != right (1)");if(A(a*b)!==A(c*d))throw Error("bad point: equation left != right (2)");return this}equals(a){let{ex:b,ey:c,ez:d}=this,{ex:e,ey:f,ez:g}=C(a),h=A(b*g),i=A(e*d),j=A(c*g),k=A(f*d);return h===i&&j===k}is0(){return this.equals(G)}negate(){return new E(A(-this.ex),this.ey,this.ez,A(-this.et))}double(){let{ex:a,ey:b,ez:c}=this,d=A(a*a),e=A(b*b),f=A(2n*A(c*c)),g=A(i*d),h=a+b,j=A(A(h*h)-d-e),k=g+e,l=k-f,m=g-e,n=A(j*l),o=A(k*m),p=A(j*m);return new E(n,o,A(l*k),p)}add(a){let{ex:b,ey:c,ez:d,et:e}=this,{ex:f,ey:g,ez:h,et:k}=C(a),l=A(b*f),m=A(c*g),n=A(e*j*k),o=A(d*h),p=A((b+c)*(f+g)-l-m),q=A(o-n),r=A(o+n),s=A(m-i*l),t=A(p*q),u=A(r*s),v=A(p*s);return new E(t,u,A(q*r),v)}multiply(a,b=!0){if(!b&&(0n===a||this.is0()))return G;if(z(a,1n,f),1n===a)return this;if(this.equals(F))return W(a).p;let c=G,d=F;for(let e=this;a>0n;e=e.double(),a>>=1n)1n&a?c=c.add(e):b&&(d=d.add(e));return c}toAffine(){let{ex:a,ey:b,ez:c}=this;if(this.equals(G))return{x:0n,y:1n};let d=B(c,e);return 1n!==A(c*d)&&l("invalid inverse"),{x:A(a*d),y:A(b*d)}}toBytes(){let{x:a,y:b}=this.assertValidity().toAffine(),c=H(b);return c[31]|=1n&a?128:0,c}toHex(){return q(this.toBytes())}clearCofactor(){return this.multiply(y(8n),!1)}isSmallOrder(){return this.clearCofactor().is0()}isTorsionFree(){let a=this.multiply(f/2n,!1).double();return f%2n&&(a=a.add(this)),a.is0()}static fromHex(a,b){return E.fromBytes(u(a),b)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}toRawBytes(){return this.toBytes()}}let F=new E(g,h,1n,A(g*h)),G=new E(0n,1n,1n,0n);E.BASE=F,E.ZERO=G;let H=a=>t(p(z(a,0n,D),64)).reverse(),I=a=>y("0x"+q(o(m(a)).reverse())),J=(a,b)=>{let c=a;for(;b-- >0n;)c*=c,c%=e;return c},K=(a,b)=>{let c=A(b*b*b),d=(a=>{let b=a*a%e*a%e,c=J(b,2n)*b%e,d=J(c,1n)*a%e,f=J(d,5n)*d%e,g=J(f,10n)*f%e,h=J(g,20n)*g%e,i=J(h,40n)*h%e,j=J(i,80n)*i%e,k=J(j,80n)*i%e,l=J(k,10n)*f%e;return{pow_p_5_8:J(l,2n)*a%e,b2:b}})(a*A(c*c*b)).pow_p_5_8,f=A(a*c*d),g=A(b*f*f),h=f,i=A(0x2b8324804fc1df0b2b4d00993dfbd7a72f431806ad2fe478c4ee1b274a0ea0b0n*f),j=g===a,k=g===A(-a),l=g===A(-(0x2b8324804fc1df0b2b4d00993dfbd7a72f431806ad2fe478c4ee1b274a0ea0b0n*a));return j&&(f=h),(k||l)&&(f=i),(1n&A(f))===1n&&(f=A(-f)),{isValid:j||k,value:f}},L=a=>A(I(a),f),M=(...a)=>(a=>{let b=S[a];return"function"!=typeof b&&l("hashes."+a+" not set"),b})("sha512Sync")(...a),N=a=>{let b=a.slice(0,k);b[0]&=248,b[31]&=127,b[31]|=64;let c=a.slice(k,64),d=L(b),e=F.multiply(d),f=e.toBytes();return{head:b,prefix:c,scalar:d,point:e,pointBytes:f}},O=a=>N(M(u(a,k))),P=a=>O(a).pointBytes,Q={zip215:!0},R=(a,b,c,d=Q)=>(a=>a.finish(M(a.hashable)))(((a,b,c,d=Q)=>{let e,f,g,h;a=u(a,64),b=u(b),c=u(c,k);let{zip215:i}=d,j=Uint8Array.of();try{e=E.fromHex(c,i),f=E.fromHex(a.slice(0,k),i),g=I(a.slice(k,64)),h=F.multiply(g,!1),j=w(f.toBytes(),e.toBytes(),b)}catch(a){}return{hashable:j,finish:a=>{if(null==h||!i&&e.isSmallOrder())return!1;let b=L(a);return f.add(e.multiply(b,!1)).add(h.negate()).clearCofactor().is0()}}})(a,b,c,d)),S={sha512Async:async(...a)=>{let b=v()?.subtle??l("crypto.subtle must be defined"),c=w(...a);return n(await b.digest("SHA-512",c.buffer))},sha512Sync:void 0,bytesToHex:q,hexToBytes:t,concatBytes:w,mod:A,invert:B,randomBytes:x},T={getExtendedPublicKeyAsync:a=>((...a)=>S.sha512Async(...a))(u(a,k)).then(N),getExtendedPublicKey:O,randomPrivateKey:()=>x(k),precompute:(a=8,b=F)=>(b.multiply(3n),b)},U=Math.ceil(32)+1,V=(a,b)=>{let c=b.negate();return a?c:b},W=a=>{let b=d||(d=(()=>{let a=[],b=F,c=b;for(let d=0;d<U;d++){c=b,a.push(c);for(let d=1;d<128;d++)c=c.add(b),a.push(c);b=c.double()}return a})()),c=G,e=F,f=y(255),g=y(8);for(let d=0;d<U;d++){let h=Number(a&f);a>>=g,h>128&&(h-=256,a+=1n);let i=128*d,j=i+Math.abs(h)-1,k=d%2!=0,l=h<0;0===h?e=e.add(V(k,b[i])):c=c.add(V(l,b[j]))}return{p:c,f:e}}},26044:(a,b,c)=>{var d;(()=>{var e={226:function(e,f){!function(g,h){"use strict";var i="function",j="undefined",k="object",l="string",m="major",n="model",o="name",p="type",q="vendor",r="version",s="architecture",t="console",u="mobile",v="tablet",w="smarttv",x="wearable",y="embedded",z="Amazon",A="Apple",B="ASUS",C="BlackBerry",D="Browser",E="Chrome",F="Firefox",G="Google",H="Huawei",I="Microsoft",J="Motorola",K="Opera",L="Samsung",M="Sharp",N="Sony",O="Xiaomi",P="Zebra",Q="Facebook",R="Chromium OS",S="Mac OS",T=function(a,b){var c={};for(var d in a)b[d]&&b[d].length%2==0?c[d]=b[d].concat(a[d]):c[d]=a[d];return c},U=function(a){for(var b={},c=0;c<a.length;c++)b[a[c].toUpperCase()]=a[c];return b},V=function(a,b){return typeof a===l&&-1!==W(b).indexOf(W(a))},W=function(a){return a.toLowerCase()},X=function(a,b){if(typeof a===l)return a=a.replace(/^\s\s*/,""),typeof b===j?a:a.substring(0,350)},Y=function(a,b){for(var c,d,e,f,g,j,l=0;l<b.length&&!g;){var m=b[l],n=b[l+1];for(c=d=0;c<m.length&&!g&&m[c];)if(g=m[c++].exec(a))for(e=0;e<n.length;e++)j=g[++d],typeof(f=n[e])===k&&f.length>0?2===f.length?typeof f[1]==i?this[f[0]]=f[1].call(this,j):this[f[0]]=f[1]:3===f.length?typeof f[1]!==i||f[1].exec&&f[1].test?this[f[0]]=j?j.replace(f[1],f[2]):void 0:this[f[0]]=j?f[1].call(this,j,f[2]):void 0:4===f.length&&(this[f[0]]=j?f[3].call(this,j.replace(f[1],f[2])):h):this[f]=j||h;l+=2}},Z=function(a,b){for(var c in b)if(typeof b[c]===k&&b[c].length>0){for(var d=0;d<b[c].length;d++)if(V(b[c][d],a))return"?"===c?h:c}else if(V(b[c],a))return"?"===c?h:c;return a},$={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},_={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[r,[o,"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[r,[o,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[o,r],[/opios[\/ ]+([\w\.]+)/i],[r,[o,K+" Mini"]],[/\bopr\/([\w\.]+)/i],[r,[o,K]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\/ ]?([\w\.]*)/i,/(ba?idubrowser)[\/ ]?([\w\.]+)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\/([-\w\.]+)/i,/(heytap|ovi)browser\/([\d\.]+)/i,/(weibo)__([\d\.]+)/i],[o,r],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[r,[o,"UC"+D]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i],[r,[o,"WeChat(Win) Desktop"]],[/micromessenger\/([\w\.]+)/i],[r,[o,"WeChat"]],[/konqueror\/([\w\.]+)/i],[r,[o,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[r,[o,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[r,[o,"Yandex"]],[/(avast|avg)\/([\w\.]+)/i],[[o,/(.+)/,"$1 Secure "+D],r],[/\bfocus\/([\w\.]+)/i],[r,[o,F+" Focus"]],[/\bopt\/([\w\.]+)/i],[r,[o,K+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[r,[o,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[r,[o,"Dolphin"]],[/coast\/([\w\.]+)/i],[r,[o,K+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[r,[o,"MIUI "+D]],[/fxios\/([-\w\.]+)/i],[r,[o,F]],[/\bqihu|(qi?ho?o?|360)browser/i],[[o,"360 "+D]],[/(oculus|samsung|sailfish|huawei)browser\/([\w\.]+)/i],[[o,/(.+)/,"$1 "+D],r],[/(comodo_dragon)\/([\w\.]+)/i],[[o,/_/g," "],r],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i],[o,r],[/(metasr)[\/ ]?([\w\.]+)/i,/(lbbrowser)/i,/\[(linkedin)app\]/i],[o],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[o,Q],r],[/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(chromium|instagram)[\/ ]([-\w\.]+)/i],[o,r],[/\bgsa\/([\w\.]+) .*safari\//i],[r,[o,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[r,[o,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[r,[o,E+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[o,E+" WebView"],r],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[r,[o,"Android "+D]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[o,r],[/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],[r,[o,"Mobile Safari"]],[/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],[r,o],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[o,[r,Z,{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}]],[/(webkit|khtml)\/([\w\.]+)/i],[o,r],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[o,"Netscape"],r],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[r,[o,F+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i,/panasonic;(viera)/i],[o,r],[/(cobalt)\/([\w\.]+)/i],[o,[r,/master.|lts./,""]]],cpu:[[/(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i],[[s,"amd64"]],[/(ia32(?=;))/i],[[s,W]],[/((?:i[346]|x)86)[;\)]/i],[[s,"ia32"]],[/\b(aarch64|arm(v?8e?l?|_?64))\b/i],[[s,"arm64"]],[/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i],[[s,"armhf"]],[/windows (ce|mobile); ppc;/i],[[s,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i],[[s,/ower/,"",W]],[/(sun4\w)[;\)]/i],[[s,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i],[[s,W]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[n,[q,L],[p,v]],[/\b((?:s[cgp]h|gt|sm)-\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]([-\w]+)/i,/sec-(sgh\w+)/i],[n,[q,L],[p,u]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[n,[q,A],[p,u]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[n,[q,A],[p,v]],[/(macintosh);/i],[n,[q,A]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[n,[q,M],[p,u]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[n,[q,H],[p,v]],[/(?:huawei|honor)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[n,[q,H],[p,u]],[/\b(poco[\w ]+)(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i],[[n,/_/g," "],[q,O],[p,u]],[/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[n,/_/g," "],[q,O],[p,v]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[n,[q,"OPPO"],[p,u]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[n,[q,"Vivo"],[p,u]],[/\b(rmx[12]\d{3})(?: bui|;|\))/i],[n,[q,"Realme"],[p,u]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[n,[q,J],[p,u]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[n,[q,J],[p,v]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[n,[q,"LG"],[p,v]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[n,[q,"LG"],[p,u]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[n,[q,"Lenovo"],[p,v]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[n,/_/g," "],[q,"Nokia"],[p,u]],[/(pixel c)\b/i],[n,[q,G],[p,v]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[n,[q,G],[p,u]],[/droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[n,[q,N],[p,u]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[n,"Xperia Tablet"],[q,N],[p,v]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[n,[q,"OnePlus"],[p,u]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[n,[q,z],[p,v]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[n,/(.+)/g,"Fire Phone $1"],[q,z],[p,u]],[/(playbook);[-\w\),; ]+(rim)/i],[n,q,[p,v]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[n,[q,C],[p,u]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[n,[q,B],[p,v]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[n,[q,B],[p,u]],[/(nexus 9)/i],[n,[q,"HTC"],[p,v]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[q,[n,/_/g," "],[p,u]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[n,[q,"Acer"],[p,v]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[n,[q,"Meizu"],[p,u]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\w]*)/i,/(hp) ([\w ]+\w)/i,/(asus)-?(\w+)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w]+)/i,/(jolla)/i,/(oppo) ?([\w ]+) bui/i],[q,n,[p,u]],[/(kobo)\s(ereader|touch)/i,/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i,/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[q,n,[p,v]],[/(surface duo)/i],[n,[q,I],[p,v]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[n,[q,"Fairphone"],[p,u]],[/(u304aa)/i],[n,[q,"AT&T"],[p,u]],[/\bsie-(\w*)/i],[n,[q,"Siemens"],[p,u]],[/\b(rct\w+) b/i],[n,[q,"RCA"],[p,v]],[/\b(venue[\d ]{2,7}) b/i],[n,[q,"Dell"],[p,v]],[/\b(q(?:mv|ta)\w+) b/i],[n,[q,"Verizon"],[p,v]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[n,[q,"Barnes & Noble"],[p,v]],[/\b(tm\d{3}\w+) b/i],[n,[q,"NuVision"],[p,v]],[/\b(k88) b/i],[n,[q,"ZTE"],[p,v]],[/\b(nx\d{3}j) b/i],[n,[q,"ZTE"],[p,u]],[/\b(gen\d{3}) b.+49h/i],[n,[q,"Swiss"],[p,u]],[/\b(zur\d{3}) b/i],[n,[q,"Swiss"],[p,v]],[/\b((zeki)?tb.*\b) b/i],[n,[q,"Zeki"],[p,v]],[/\b([yr]\d{2}) b/i,/\b(dragon[- ]+touch |dt)(\w{5}) b/i],[[q,"Dragon Touch"],n,[p,v]],[/\b(ns-?\w{0,9}) b/i],[n,[q,"Insignia"],[p,v]],[/\b((nxa|next)-?\w{0,9}) b/i],[n,[q,"NextBook"],[p,v]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[q,"Voice"],n,[p,u]],[/\b(lvtel\-)?(v1[12]) b/i],[[q,"LvTel"],n,[p,u]],[/\b(ph-1) /i],[n,[q,"Essential"],[p,u]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[n,[q,"Envizen"],[p,v]],[/\b(trio[-\w\. ]+) b/i],[n,[q,"MachSpeed"],[p,v]],[/\btu_(1491) b/i],[n,[q,"Rotor"],[p,v]],[/(shield[\w ]+) b/i],[n,[q,"Nvidia"],[p,v]],[/(sprint) (\w+)/i],[q,n,[p,u]],[/(kin\.[onetw]{3})/i],[[n,/\./g," "],[q,I],[p,u]],[/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[n,[q,P],[p,v]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[n,[q,P],[p,u]],[/smart-tv.+(samsung)/i],[q,[p,w]],[/hbbtv.+maple;(\d+)/i],[[n,/^/,"SmartTV"],[q,L],[p,w]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[q,"LG"],[p,w]],[/(apple) ?tv/i],[q,[n,A+" TV"],[p,w]],[/crkey/i],[[n,E+"cast"],[q,G],[p,w]],[/droid.+aft(\w)( bui|\))/i],[n,[q,z],[p,w]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[n,[q,M],[p,w]],[/(bravia[\w ]+)( bui|\))/i],[n,[q,N],[p,w]],[/(mitv-\w{5}) bui/i],[n,[q,O],[p,w]],[/Hbbtv.*(technisat) (.*);/i],[q,n,[p,w]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[q,X],[n,X],[p,w]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[p,w]],[/(ouya)/i,/(nintendo) ([wids3utch]+)/i],[q,n,[p,t]],[/droid.+; (shield) bui/i],[n,[q,"Nvidia"],[p,t]],[/(playstation [345portablevi]+)/i],[n,[q,N],[p,t]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[n,[q,I],[p,t]],[/((pebble))app/i],[q,n,[p,x]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[n,[q,A],[p,x]],[/droid.+; (glass) \d/i],[n,[q,G],[p,x]],[/droid.+; (wt63?0{2,3})\)/i],[n,[q,P],[p,x]],[/(quest( 2| pro)?)/i],[n,[q,Q],[p,x]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[q,[p,y]],[/(aeobc)\b/i],[n,[q,z],[p,y]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+? mobile safari/i],[n,[p,u]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[n,[p,v]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[p,v]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[p,u]],[/(android[-\w\. ]{0,9});.+buil/i],[n,[q,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[r,[o,"EdgeHTML"]],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[r,[o,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[o,r],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[r,o]],os:[[/microsoft (windows) (vista|xp)/i],[o,r],[/(windows) nt 6\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i,/(windows)[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i],[o,[r,Z,$]],[/(win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[o,"Windows"],[r,Z,$]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/ios;fbsv\/([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[r,/_/g,"."],[o,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[o,S],[r,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[r,o],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,/(blackberry)\w*\/([\w\.]*)/i,/(tizen|kaios)[\/ ]([\w\.]+)/i,/\((series40);/i],[o,r],[/\(bb(10);/i],[r,[o,C]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[r,[o,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[r,[o,F+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[r,[o,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[r,[o,"watchOS"]],[/crkey\/([\d\.]+)/i],[r,[o,E+"cast"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[o,R],r],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) ([wids345portablevuch]+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux) ?([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[o,r],[/(sunos) ?([\w\.\d]*)/i],[[o,"Solaris"],r],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[o,r]]},aa=function(a,b){if(typeof a===k&&(b=a,a=h),!(this instanceof aa))return new aa(a,b).getResult();var c=typeof g!==j&&g.navigator?g.navigator:h,d=a||(c&&c.userAgent?c.userAgent:""),e=c&&c.userAgentData?c.userAgentData:h,f=b?T(_,b):_,t=c&&c.userAgent==d;return this.getBrowser=function(){var a,b={};return b[o]=h,b[r]=h,Y.call(b,d,f.browser),b[m]=typeof(a=b[r])===l?a.replace(/[^\d\.]/g,"").split(".")[0]:h,t&&c&&c.brave&&typeof c.brave.isBrave==i&&(b[o]="Brave"),b},this.getCPU=function(){var a={};return a[s]=h,Y.call(a,d,f.cpu),a},this.getDevice=function(){var a={};return a[q]=h,a[n]=h,a[p]=h,Y.call(a,d,f.device),t&&!a[p]&&e&&e.mobile&&(a[p]=u),t&&"Macintosh"==a[n]&&c&&typeof c.standalone!==j&&c.maxTouchPoints&&c.maxTouchPoints>2&&(a[n]="iPad",a[p]=v),a},this.getEngine=function(){var a={};return a[o]=h,a[r]=h,Y.call(a,d,f.engine),a},this.getOS=function(){var a={};return a[o]=h,a[r]=h,Y.call(a,d,f.os),t&&!a[o]&&e&&"Unknown"!=e.platform&&(a[o]=e.platform.replace(/chrome os/i,R).replace(/macos/i,S)),a},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return d},this.setUA=function(a){return d=typeof a===l&&a.length>350?X(a,350):a,this},this.setUA(d),this};aa.VERSION="1.0.35",aa.BROWSER=U([o,r,m]),aa.CPU=U([s]),aa.DEVICE=U([n,q,p,t,u,w,v,x,y]),aa.ENGINE=aa.OS=U([o,r]),typeof f!==j?(e.exports&&(f=e.exports=aa),f.UAParser=aa):c.amdO?void 0===(d=(function(){return aa}).call(b,c,b,a))||(a.exports=d):typeof g!==j&&(g.UAParser=aa);var ab=typeof g!==j&&(g.jQuery||g.Zepto);if(ab&&!ab.ua){var ac=new aa;ab.ua=ac.getResult(),ab.ua.get=function(){return ac.getUA()},ab.ua.set=function(a){ac.setUA(a);var b=ac.getResult();for(var c in b)ab.ua[c]=b[c]}}}("object"==typeof window?window:this)}},f={};function g(a){var b=f[a];if(void 0!==b)return b.exports;var c=f[a]={exports:{}},d=!0;try{e[a].call(c.exports,c,c.exports,g),d=!1}finally{d&&delete f[a]}return c.exports}g.ab=__dirname+"/",a.exports=g(226)})()},35776:(a,b,c)=>{"use strict";a.exports=c(44870)},38884:(a,b,c)=>{"use strict";function d(a,...b){if(!(a instanceof Uint8Array||ArrayBuffer.isView(a)&&"Uint8Array"===a.constructor.name))throw Error("Uint8Array expected");if(b.length>0&&!b.includes(a.length))throw Error("Uint8Array expected of length "+b+", got length="+a.length)}function e(a,b=!0){if(a.destroyed)throw Error("Hash instance has been destroyed");if(b&&a.finished)throw Error("Hash#digest() has already been called")}function f(...a){for(let b=0;b<a.length;b++)a[b].fill(0)}function g(a){return new DataView(a.buffer,a.byteOffset,a.byteLength)}function h(a){return"string"==typeof a&&(a=function(a){if("string"!=typeof a)throw Error("string expected");return new Uint8Array(new TextEncoder().encode(a))}(a)),d(a),a}c.d(b,{Zf:()=>G});class i{}class j extends i{constructor(a,b,c,d){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=a,this.outputLen=b,this.padOffset=c,this.isLE=d,this.buffer=new Uint8Array(a),this.view=g(this.buffer)}update(a){e(this),d(a=h(a));let{view:b,buffer:c,blockLen:f}=this,i=a.length;for(let d=0;d<i;){let e=Math.min(f-this.pos,i-d);if(e===f){let b=g(a);for(;f<=i-d;d+=f)this.process(b,d);continue}c.set(a.subarray(d,d+e),this.pos),this.pos+=e,d+=e,this.pos===f&&(this.process(b,0),this.pos=0)}return this.length+=a.length,this.roundClean(),this}digestInto(a){e(this);d(a);let b=this.outputLen;if(a.length<b)throw Error("digestInto() expects output buffer of length at least "+b);this.finished=!0;let{buffer:c,view:h,blockLen:i,isLE:j}=this,{pos:k}=this;c[k++]=128,f(this.buffer.subarray(k)),this.padOffset>i-k&&(this.process(h,0),k=0);for(let a=k;a<i;a++)c[a]=0;!function(a,b,c,d){if("function"==typeof a.setBigUint64)return a.setBigUint64(b,c,d);let e=BigInt(32),f=BigInt(0xffffffff),g=Number(c>>e&f),h=Number(c&f),i=4*!!d,j=4*!d;a.setUint32(b+i,g,d),a.setUint32(b+j,h,d)}(h,i-8,BigInt(8*this.length),j),this.process(h,0);let l=g(a),m=this.outputLen;if(m%4)throw Error("_sha2: outputLen should be aligned to 32bit");let n=m/4,o=this.get();if(n>o.length)throw Error("_sha2: outputLen bigger than state");for(let a=0;a<n;a++)l.setUint32(4*a,o[a],j)}digest(){let{buffer:a,outputLen:b}=this;this.digestInto(a);let c=a.slice(0,b);return this.destroy(),c}_cloneInto(a){a||(a=new this.constructor),a.set(...this.get());let{blockLen:b,buffer:c,length:d,finished:e,destroyed:f,pos:g}=this;return a.destroyed=f,a.finished=e,a.length=d,a.pos=g,d%b&&a.buffer.set(c),a}clone(){return this._cloneInto()}}let k=Uint32Array.from([0x6a09e667,0xf3bcc908,0xbb67ae85,0x84caa73b,0x3c6ef372,0xfe94f82b,0xa54ff53a,0x5f1d36f1,0x510e527f,0xade682d1,0x9b05688c,0x2b3e6c1f,0x1f83d9ab,0xfb41bd6b,0x5be0cd19,0x137e2179]),l=BigInt(0x100000000-1),m=BigInt(32),n=(a,b,c)=>a>>>c,o=(a,b,c)=>a<<32-c|b>>>c,p=(a,b,c)=>a>>>c|b<<32-c,q=(a,b,c)=>a<<32-c|b>>>c,r=(a,b,c)=>a<<64-c|b>>>c-32,s=(a,b,c)=>a>>>c-32|b<<64-c;function t(a,b,c,d){let e=(b>>>0)+(d>>>0);return{h:a+c+(e/0x100000000|0)|0,l:0|e}}let u=(a,b,c)=>(a>>>0)+(b>>>0)+(c>>>0),v=(a,b,c,d)=>b+c+d+(a/0x100000000|0)|0,w=(a,b,c,d)=>(a>>>0)+(b>>>0)+(c>>>0)+(d>>>0),x=(a,b,c,d,e)=>b+c+d+e+(a/0x100000000|0)|0,y=(a,b,c,d,e)=>(a>>>0)+(b>>>0)+(c>>>0)+(d>>>0)+(e>>>0),z=(a,b,c,d,e,f)=>b+c+d+e+f+(a/0x100000000|0)|0,A=function(a,b=!1){let c=a.length,d=new Uint32Array(c),e=new Uint32Array(c);for(let f=0;f<c;f++){let{h:c,l:g}=function(a,b=!1){return b?{h:Number(a&l),l:Number(a>>m&l)}:{h:0|Number(a>>m&l),l:0|Number(a&l)}}(a[f],b);[d[f],e[f]]=[c,g]}return[d,e]}(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(a=>BigInt(a))),B=A[0],C=A[1],D=new Uint32Array(80),E=new Uint32Array(80);class F extends j{constructor(a=64){super(128,a,16,!1),this.Ah=0|k[0],this.Al=0|k[1],this.Bh=0|k[2],this.Bl=0|k[3],this.Ch=0|k[4],this.Cl=0|k[5],this.Dh=0|k[6],this.Dl=0|k[7],this.Eh=0|k[8],this.El=0|k[9],this.Fh=0|k[10],this.Fl=0|k[11],this.Gh=0|k[12],this.Gl=0|k[13],this.Hh=0|k[14],this.Hl=0|k[15]}get(){let{Ah:a,Al:b,Bh:c,Bl:d,Ch:e,Cl:f,Dh:g,Dl:h,Eh:i,El:j,Fh:k,Fl:l,Gh:m,Gl:n,Hh:o,Hl:p}=this;return[a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p]}set(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){this.Ah=0|a,this.Al=0|b,this.Bh=0|c,this.Bl=0|d,this.Ch=0|e,this.Cl=0|f,this.Dh=0|g,this.Dl=0|h,this.Eh=0|i,this.El=0|j,this.Fh=0|k,this.Fl=0|l,this.Gh=0|m,this.Gl=0|n,this.Hh=0|o,this.Hl=0|p}process(a,b){for(let c=0;c<16;c++,b+=4)D[c]=a.getUint32(b),E[c]=a.getUint32(b+=4);for(let a=16;a<80;a++){let b=0|D[a-15],c=0|E[a-15],d=p(b,c,1)^p(b,c,8)^n(b,c,7),e=q(b,c,1)^q(b,c,8)^o(b,c,7),f=0|D[a-2],g=0|E[a-2],h=p(f,g,19)^r(f,g,61)^n(f,g,6),i=w(e,q(f,g,19)^s(f,g,61)^o(f,g,6),E[a-7],E[a-16]),j=x(i,d,h,D[a-7],D[a-16]);D[a]=0|j,E[a]=0|i}let{Ah:c,Al:d,Bh:e,Bl:f,Ch:g,Cl:h,Dh:i,Dl:j,Eh:k,El:l,Fh:m,Fl:A,Gh:F,Gl:G,Hh:H,Hl:I}=this;for(let a=0;a<80;a++){let b=p(k,l,14)^p(k,l,18)^r(k,l,41),n=q(k,l,14)^q(k,l,18)^s(k,l,41),o=k&m^~k&F,w=y(I,n,l&A^~l&G,C[a],E[a]),x=z(w,H,b,o,B[a],D[a]),J=0|w,K=p(c,d,28)^r(c,d,34)^r(c,d,39),L=q(c,d,28)^s(c,d,34)^s(c,d,39),M=c&e^c&g^e&g,N=d&f^d&h^f&h;H=0|F,I=0|G,F=0|m,G=0|A,m=0|k,A=0|l,({h:k,l:l}=t(0|i,0|j,0|x,0|J)),i=0|g,j=0|h,g=0|e,h=0|f,e=0|c,f=0|d;let O=u(J,L,N);c=v(O,x,K,M),d=0|O}({h:c,l:d}=t(0|this.Ah,0|this.Al,0|c,0|d)),({h:e,l:f}=t(0|this.Bh,0|this.Bl,0|e,0|f)),({h:g,l:h}=t(0|this.Ch,0|this.Cl,0|g,0|h)),({h:i,l:j}=t(0|this.Dh,0|this.Dl,0|i,0|j)),({h:k,l:l}=t(0|this.Eh,0|this.El,0|k,0|l)),({h:m,l:A}=t(0|this.Fh,0|this.Fl,0|m,0|A)),({h:F,l:G}=t(0|this.Gh,0|this.Gl,0|F,0|G)),({h:H,l:I}=t(0|this.Hh,0|this.Hl,0|H,0|I)),this.set(c,d,e,f,g,h,i,j,k,l,m,A,F,G,H,I)}roundClean(){f(D,E)}destroy(){f(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}let G=function(a){let b=b=>a().update(h(b)).digest(),c=a();return b.outputLen=c.outputLen,b.blockLen=c.blockLen,b.create=()=>a(),b}(()=>new F)},42805:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(6157),e=c(40120),f=c(99991);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},66173:(a,b)=>{"use strict";function c(){throw Object.defineProperty(Error('ImageResponse moved from "next/server" to "next/og" since Next.js 14, please import from "next/og" instead'),"__NEXT_ERROR_CODE",{value:"E183",enumerable:!1,configurable:!0})}Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"ImageResponse",{enumerable:!0,get:function(){return c}})},68798:(a,b,c)=>{"use strict";var d,e,f,g;let h;c.d(b,{YO:()=>aD,zM:()=>aB,au:()=>aH,k5:()=>aG,ai:()=>aA,Ik:()=>aE,g1:()=>aF,Yj:()=>az,L5:()=>aC}),function(a){a.assertEqual=a=>{},a.assertIs=function(a){},a.assertNever=function(a){throw Error()},a.arrayToEnum=a=>{let b={};for(let c of a)b[c]=c;return b},a.getValidEnumValues=b=>{let c=a.objectKeys(b).filter(a=>"number"!=typeof b[b[a]]),d={};for(let a of c)d[a]=b[a];return a.objectValues(d)},a.objectValues=b=>a.objectKeys(b).map(function(a){return b[a]}),a.objectKeys="function"==typeof Object.keys?a=>Object.keys(a):a=>{let b=[];for(let c in a)Object.prototype.hasOwnProperty.call(a,c)&&b.push(c);return b},a.find=(a,b)=>{for(let c of a)if(b(c))return c},a.isInteger="function"==typeof Number.isInteger?a=>Number.isInteger(a):a=>"number"==typeof a&&Number.isFinite(a)&&Math.floor(a)===a,a.joinValues=function(a,b=" | "){return a.map(a=>"string"==typeof a?`'${a}'`:a).join(b)},a.jsonStringifyReplacer=(a,b)=>"bigint"==typeof b?b.toString():b}(d||(d={})),(e||(e={})).mergeShapes=(a,b)=>({...a,...b});let i=d.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),j=a=>{switch(typeof a){case"undefined":return i.undefined;case"string":return i.string;case"number":return Number.isNaN(a)?i.nan:i.number;case"boolean":return i.boolean;case"function":return i.function;case"bigint":return i.bigint;case"symbol":return i.symbol;case"object":if(Array.isArray(a))return i.array;if(null===a)return i.null;if(a.then&&"function"==typeof a.then&&a.catch&&"function"==typeof a.catch)return i.promise;if("undefined"!=typeof Map&&a instanceof Map)return i.map;if("undefined"!=typeof Set&&a instanceof Set)return i.set;if("undefined"!=typeof Date&&a instanceof Date)return i.date;return i.object;default:return i.unknown}},k=d.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class l extends Error{get errors(){return this.issues}constructor(a){super(),this.issues=[],this.addIssue=a=>{this.issues=[...this.issues,a]},this.addIssues=(a=[])=>{this.issues=[...this.issues,...a]};let b=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,b):this.__proto__=b,this.name="ZodError",this.issues=a}format(a){let b=a||function(a){return a.message},c={_errors:[]},d=a=>{for(let e of a.issues)if("invalid_union"===e.code)e.unionErrors.map(d);else if("invalid_return_type"===e.code)d(e.returnTypeError);else if("invalid_arguments"===e.code)d(e.argumentsError);else if(0===e.path.length)c._errors.push(b(e));else{let a=c,d=0;for(;d<e.path.length;){let c=e.path[d];d===e.path.length-1?(a[c]=a[c]||{_errors:[]},a[c]._errors.push(b(e))):a[c]=a[c]||{_errors:[]},a=a[c],d++}}};return d(this),c}static assert(a){if(!(a instanceof l))throw Error(`Not a ZodError: ${a}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,d.jsonStringifyReplacer,2)}get isEmpty(){return 0===this.issues.length}flatten(a=a=>a.message){let b={},c=[];for(let d of this.issues)if(d.path.length>0){let c=d.path[0];b[c]=b[c]||[],b[c].push(a(d))}else c.push(a(d));return{formErrors:c,fieldErrors:b}}get formErrors(){return this.flatten()}}l.create=a=>new l(a);let m=(a,b)=>{let c;switch(a.code){case k.invalid_type:c=a.received===i.undefined?"Required":`Expected ${a.expected}, received ${a.received}`;break;case k.invalid_literal:c=`Invalid literal value, expected ${JSON.stringify(a.expected,d.jsonStringifyReplacer)}`;break;case k.unrecognized_keys:c=`Unrecognized key(s) in object: ${d.joinValues(a.keys,", ")}`;break;case k.invalid_union:c="Invalid input";break;case k.invalid_union_discriminator:c=`Invalid discriminator value. Expected ${d.joinValues(a.options)}`;break;case k.invalid_enum_value:c=`Invalid enum value. Expected ${d.joinValues(a.options)}, received '${a.received}'`;break;case k.invalid_arguments:c="Invalid function arguments";break;case k.invalid_return_type:c="Invalid function return type";break;case k.invalid_date:c="Invalid date";break;case k.invalid_string:"object"==typeof a.validation?"includes"in a.validation?(c=`Invalid input: must include "${a.validation.includes}"`,"number"==typeof a.validation.position&&(c=`${c} at one or more positions greater than or equal to ${a.validation.position}`)):"startsWith"in a.validation?c=`Invalid input: must start with "${a.validation.startsWith}"`:"endsWith"in a.validation?c=`Invalid input: must end with "${a.validation.endsWith}"`:d.assertNever(a.validation):c="regex"!==a.validation?`Invalid ${a.validation}`:"Invalid";break;case k.too_small:c="array"===a.type?`Array must contain ${a.exact?"exactly":a.inclusive?"at least":"more than"} ${a.minimum} element(s)`:"string"===a.type?`String must contain ${a.exact?"exactly":a.inclusive?"at least":"over"} ${a.minimum} character(s)`:"number"===a.type||"bigint"===a.type?`Number must be ${a.exact?"exactly equal to ":a.inclusive?"greater than or equal to ":"greater than "}${a.minimum}`:"date"===a.type?`Date must be ${a.exact?"exactly equal to ":a.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(a.minimum))}`:"Invalid input";break;case k.too_big:c="array"===a.type?`Array must contain ${a.exact?"exactly":a.inclusive?"at most":"less than"} ${a.maximum} element(s)`:"string"===a.type?`String must contain ${a.exact?"exactly":a.inclusive?"at most":"under"} ${a.maximum} character(s)`:"number"===a.type?`Number must be ${a.exact?"exactly":a.inclusive?"less than or equal to":"less than"} ${a.maximum}`:"bigint"===a.type?`BigInt must be ${a.exact?"exactly":a.inclusive?"less than or equal to":"less than"} ${a.maximum}`:"date"===a.type?`Date must be ${a.exact?"exactly":a.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(a.maximum))}`:"Invalid input";break;case k.custom:c="Invalid input";break;case k.invalid_intersection_types:c="Intersection results could not be merged";break;case k.not_multiple_of:c=`Number must be a multiple of ${a.multipleOf}`;break;case k.not_finite:c="Number must be finite";break;default:c=b.defaultError,d.assertNever(a)}return{message:c}};!function(a){a.errToObj=a=>"string"==typeof a?{message:a}:a||{},a.toString=a=>"string"==typeof a?a:a?.message}(f||(f={}));let n=a=>{let{data:b,path:c,errorMaps:d,issueData:e}=a,f=[...c,...e.path||[]],g={...e,path:f};if(void 0!==e.message)return{...e,path:f,message:e.message};let h="";for(let a of d.filter(a=>!!a).slice().reverse())h=a(g,{data:b,defaultError:h}).message;return{...e,path:f,message:h}};function o(a,b){let c=n({issueData:b,data:a.data,path:a.path,errorMaps:[a.common.contextualErrorMap,a.schemaErrorMap,m,void 0].filter(a=>!!a)});a.common.issues.push(c)}class p{constructor(){this.value="valid"}dirty(){"valid"===this.value&&(this.value="dirty")}abort(){"aborted"!==this.value&&(this.value="aborted")}static mergeArray(a,b){let c=[];for(let d of b){if("aborted"===d.status)return q;"dirty"===d.status&&a.dirty(),c.push(d.value)}return{status:a.value,value:c}}static async mergeObjectAsync(a,b){let c=[];for(let a of b){let b=await a.key,d=await a.value;c.push({key:b,value:d})}return p.mergeObjectSync(a,c)}static mergeObjectSync(a,b){let c={};for(let d of b){let{key:b,value:e}=d;if("aborted"===b.status||"aborted"===e.status)return q;"dirty"===b.status&&a.dirty(),"dirty"===e.status&&a.dirty(),"__proto__"!==b.value&&(void 0!==e.value||d.alwaysSet)&&(c[b.value]=e.value)}return{status:a.value,value:c}}}let q=Object.freeze({status:"aborted"}),r=a=>({status:"dirty",value:a}),s=a=>({status:"valid",value:a}),t=a=>"undefined"!=typeof Promise&&a instanceof Promise;class u{constructor(a,b,c,d){this._cachedPath=[],this.parent=a,this.data=b,this._path=c,this._key=d}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}let v=(a,b)=>{if("valid"===b.status)return{success:!0,data:b.value};if(!a.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let b=new l(a.common.issues);return this._error=b,this._error}}};function w(a){if(!a)return{};let{errorMap:b,invalid_type_error:c,required_error:d,description:e}=a;if(b&&(c||d))throw Error('Can\'t use "invalid_type_error" or "required_error" in conjunction with custom error map.');return b?{errorMap:b,description:e}:{errorMap:(b,e)=>{let{message:f}=a;return"invalid_enum_value"===b.code?{message:f??e.defaultError}:void 0===e.data?{message:f??d??e.defaultError}:"invalid_type"!==b.code?{message:e.defaultError}:{message:f??c??e.defaultError}},description:e}}class x{get description(){return this._def.description}_getType(a){return j(a.data)}_getOrReturnCtx(a,b){return b||{common:a.parent.common,data:a.data,parsedType:j(a.data),schemaErrorMap:this._def.errorMap,path:a.path,parent:a.parent}}_processInputParams(a){return{status:new p,ctx:{common:a.parent.common,data:a.data,parsedType:j(a.data),schemaErrorMap:this._def.errorMap,path:a.path,parent:a.parent}}}_parseSync(a){let b=this._parse(a);if(t(b))throw Error("Synchronous parse encountered promise.");return b}_parseAsync(a){return Promise.resolve(this._parse(a))}parse(a,b){let c=this.safeParse(a,b);if(c.success)return c.data;throw c.error}safeParse(a,b){let c={common:{issues:[],async:b?.async??!1,contextualErrorMap:b?.errorMap},path:b?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:a,parsedType:j(a)},d=this._parseSync({data:a,path:c.path,parent:c});return v(c,d)}"~validate"(a){let b={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:a,parsedType:j(a)};if(!this["~standard"].async)try{let c=this._parseSync({data:a,path:[],parent:b});return"valid"===c.status?{value:c.value}:{issues:b.common.issues}}catch(a){a?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),b.common={issues:[],async:!0}}return this._parseAsync({data:a,path:[],parent:b}).then(a=>"valid"===a.status?{value:a.value}:{issues:b.common.issues})}async parseAsync(a,b){let c=await this.safeParseAsync(a,b);if(c.success)return c.data;throw c.error}async safeParseAsync(a,b){let c={common:{issues:[],contextualErrorMap:b?.errorMap,async:!0},path:b?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:a,parsedType:j(a)},d=this._parse({data:a,path:c.path,parent:c});return v(c,await (t(d)?d:Promise.resolve(d)))}refine(a,b){return this._refinement((c,d)=>{let e=a(c),f=()=>d.addIssue({code:k.custom,..."string"==typeof b||void 0===b?{message:b}:"function"==typeof b?b(c):b});return"undefined"!=typeof Promise&&e instanceof Promise?e.then(a=>!!a||(f(),!1)):!!e||(f(),!1)})}refinement(a,b){return this._refinement((c,d)=>!!a(c)||(d.addIssue("function"==typeof b?b(c,d):b),!1))}_refinement(a){return new aq({schema:this,typeName:g.ZodEffects,effect:{type:"refinement",refinement:a}})}superRefine(a){return this._refinement(a)}constructor(a){this.spa=this.safeParseAsync,this._def=a,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:a=>this["~validate"](a)}}optional(){return ar.create(this,this._def)}nullable(){return as.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return _.create(this)}promise(){return ap.create(this,this._def)}or(a){return ab.create([this,a],this._def)}and(a){return ae.create(this,a,this._def)}transform(a){return new aq({...w(this._def),schema:this,typeName:g.ZodEffects,effect:{type:"transform",transform:a}})}default(a){return new at({...w(this._def),innerType:this,defaultValue:"function"==typeof a?a:()=>a,typeName:g.ZodDefault})}brand(){return new aw({typeName:g.ZodBranded,type:this,...w(this._def)})}catch(a){return new au({...w(this._def),innerType:this,catchValue:"function"==typeof a?a:()=>a,typeName:g.ZodCatch})}describe(a){return new this.constructor({...this._def,description:a})}pipe(a){return ax.create(this,a)}readonly(){return ay.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}let y=/^c[^\s-]{8,}$/i,z=/^[0-9a-z]+$/,A=/^[0-9A-HJKMNP-TV-Z]{26}$/i,B=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,C=/^[a-z0-9_-]{21}$/i,D=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,E=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,F=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,G=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,H=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,I=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,J=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,K=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,L=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,M="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",N=RegExp(`^${M}$`);function O(a){let b="[0-5]\\d";a.precision?b=`${b}\\.\\d{${a.precision}}`:null==a.precision&&(b=`${b}(\\.\\d+)?`);let c=a.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${b})${c}`}class P extends x{_parse(a){var b,c,e,f;let g;if(this._def.coerce&&(a.data=String(a.data)),this._getType(a)!==i.string){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.string,received:b.parsedType}),q}let j=new p;for(let i of this._def.checks)if("min"===i.kind)a.data.length<i.value&&(o(g=this._getOrReturnCtx(a,g),{code:k.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),j.dirty());else if("max"===i.kind)a.data.length>i.value&&(o(g=this._getOrReturnCtx(a,g),{code:k.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),j.dirty());else if("length"===i.kind){let b=a.data.length>i.value,c=a.data.length<i.value;(b||c)&&(g=this._getOrReturnCtx(a,g),b?o(g,{code:k.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):c&&o(g,{code:k.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),j.dirty())}else if("email"===i.kind)F.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"email",code:k.invalid_string,message:i.message}),j.dirty());else if("emoji"===i.kind)h||(h=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),h.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"emoji",code:k.invalid_string,message:i.message}),j.dirty());else if("uuid"===i.kind)B.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"uuid",code:k.invalid_string,message:i.message}),j.dirty());else if("nanoid"===i.kind)C.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"nanoid",code:k.invalid_string,message:i.message}),j.dirty());else if("cuid"===i.kind)y.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"cuid",code:k.invalid_string,message:i.message}),j.dirty());else if("cuid2"===i.kind)z.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"cuid2",code:k.invalid_string,message:i.message}),j.dirty());else if("ulid"===i.kind)A.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"ulid",code:k.invalid_string,message:i.message}),j.dirty());else if("url"===i.kind)try{new URL(a.data)}catch{o(g=this._getOrReturnCtx(a,g),{validation:"url",code:k.invalid_string,message:i.message}),j.dirty()}else"regex"===i.kind?(i.regex.lastIndex=0,i.regex.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"regex",code:k.invalid_string,message:i.message}),j.dirty())):"trim"===i.kind?a.data=a.data.trim():"includes"===i.kind?a.data.includes(i.value,i.position)||(o(g=this._getOrReturnCtx(a,g),{code:k.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),j.dirty()):"toLowerCase"===i.kind?a.data=a.data.toLowerCase():"toUpperCase"===i.kind?a.data=a.data.toUpperCase():"startsWith"===i.kind?a.data.startsWith(i.value)||(o(g=this._getOrReturnCtx(a,g),{code:k.invalid_string,validation:{startsWith:i.value},message:i.message}),j.dirty()):"endsWith"===i.kind?a.data.endsWith(i.value)||(o(g=this._getOrReturnCtx(a,g),{code:k.invalid_string,validation:{endsWith:i.value},message:i.message}),j.dirty()):"datetime"===i.kind?(function(a){let b=`${M}T${O(a)}`,c=[];return c.push(a.local?"Z?":"Z"),a.offset&&c.push("([+-]\\d{2}:?\\d{2})"),b=`${b}(${c.join("|")})`,RegExp(`^${b}$`)})(i).test(a.data)||(o(g=this._getOrReturnCtx(a,g),{code:k.invalid_string,validation:"datetime",message:i.message}),j.dirty()):"date"===i.kind?N.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{code:k.invalid_string,validation:"date",message:i.message}),j.dirty()):"time"===i.kind?RegExp(`^${O(i)}$`).test(a.data)||(o(g=this._getOrReturnCtx(a,g),{code:k.invalid_string,validation:"time",message:i.message}),j.dirty()):"duration"===i.kind?E.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"duration",code:k.invalid_string,message:i.message}),j.dirty()):"ip"===i.kind?(b=a.data,!(("v4"===(c=i.version)||!c)&&G.test(b)||("v6"===c||!c)&&I.test(b))&&1&&(o(g=this._getOrReturnCtx(a,g),{validation:"ip",code:k.invalid_string,message:i.message}),j.dirty())):"jwt"===i.kind?!function(a,b){if(!D.test(a))return!1;try{let[c]=a.split(".");if(!c)return!1;let d=c.replace(/-/g,"+").replace(/_/g,"/").padEnd(c.length+(4-c.length%4)%4,"="),e=JSON.parse(atob(d));if("object"!=typeof e||null===e||"typ"in e&&e?.typ!=="JWT"||!e.alg||b&&e.alg!==b)return!1;return!0}catch{return!1}}(a.data,i.alg)&&(o(g=this._getOrReturnCtx(a,g),{validation:"jwt",code:k.invalid_string,message:i.message}),j.dirty()):"cidr"===i.kind?(e=a.data,!(("v4"===(f=i.version)||!f)&&H.test(e)||("v6"===f||!f)&&J.test(e))&&1&&(o(g=this._getOrReturnCtx(a,g),{validation:"cidr",code:k.invalid_string,message:i.message}),j.dirty())):"base64"===i.kind?K.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"base64",code:k.invalid_string,message:i.message}),j.dirty()):"base64url"===i.kind?L.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"base64url",code:k.invalid_string,message:i.message}),j.dirty()):d.assertNever(i);return{status:j.value,value:a.data}}_regex(a,b,c){return this.refinement(b=>a.test(b),{validation:b,code:k.invalid_string,...f.errToObj(c)})}_addCheck(a){return new P({...this._def,checks:[...this._def.checks,a]})}email(a){return this._addCheck({kind:"email",...f.errToObj(a)})}url(a){return this._addCheck({kind:"url",...f.errToObj(a)})}emoji(a){return this._addCheck({kind:"emoji",...f.errToObj(a)})}uuid(a){return this._addCheck({kind:"uuid",...f.errToObj(a)})}nanoid(a){return this._addCheck({kind:"nanoid",...f.errToObj(a)})}cuid(a){return this._addCheck({kind:"cuid",...f.errToObj(a)})}cuid2(a){return this._addCheck({kind:"cuid2",...f.errToObj(a)})}ulid(a){return this._addCheck({kind:"ulid",...f.errToObj(a)})}base64(a){return this._addCheck({kind:"base64",...f.errToObj(a)})}base64url(a){return this._addCheck({kind:"base64url",...f.errToObj(a)})}jwt(a){return this._addCheck({kind:"jwt",...f.errToObj(a)})}ip(a){return this._addCheck({kind:"ip",...f.errToObj(a)})}cidr(a){return this._addCheck({kind:"cidr",...f.errToObj(a)})}datetime(a){return"string"==typeof a?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:a}):this._addCheck({kind:"datetime",precision:void 0===a?.precision?null:a?.precision,offset:a?.offset??!1,local:a?.local??!1,...f.errToObj(a?.message)})}date(a){return this._addCheck({kind:"date",message:a})}time(a){return"string"==typeof a?this._addCheck({kind:"time",precision:null,message:a}):this._addCheck({kind:"time",precision:void 0===a?.precision?null:a?.precision,...f.errToObj(a?.message)})}duration(a){return this._addCheck({kind:"duration",...f.errToObj(a)})}regex(a,b){return this._addCheck({kind:"regex",regex:a,...f.errToObj(b)})}includes(a,b){return this._addCheck({kind:"includes",value:a,position:b?.position,...f.errToObj(b?.message)})}startsWith(a,b){return this._addCheck({kind:"startsWith",value:a,...f.errToObj(b)})}endsWith(a,b){return this._addCheck({kind:"endsWith",value:a,...f.errToObj(b)})}min(a,b){return this._addCheck({kind:"min",value:a,...f.errToObj(b)})}max(a,b){return this._addCheck({kind:"max",value:a,...f.errToObj(b)})}length(a,b){return this._addCheck({kind:"length",value:a,...f.errToObj(b)})}nonempty(a){return this.min(1,f.errToObj(a))}trim(){return new P({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new P({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new P({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(a=>"datetime"===a.kind)}get isDate(){return!!this._def.checks.find(a=>"date"===a.kind)}get isTime(){return!!this._def.checks.find(a=>"time"===a.kind)}get isDuration(){return!!this._def.checks.find(a=>"duration"===a.kind)}get isEmail(){return!!this._def.checks.find(a=>"email"===a.kind)}get isURL(){return!!this._def.checks.find(a=>"url"===a.kind)}get isEmoji(){return!!this._def.checks.find(a=>"emoji"===a.kind)}get isUUID(){return!!this._def.checks.find(a=>"uuid"===a.kind)}get isNANOID(){return!!this._def.checks.find(a=>"nanoid"===a.kind)}get isCUID(){return!!this._def.checks.find(a=>"cuid"===a.kind)}get isCUID2(){return!!this._def.checks.find(a=>"cuid2"===a.kind)}get isULID(){return!!this._def.checks.find(a=>"ulid"===a.kind)}get isIP(){return!!this._def.checks.find(a=>"ip"===a.kind)}get isCIDR(){return!!this._def.checks.find(a=>"cidr"===a.kind)}get isBase64(){return!!this._def.checks.find(a=>"base64"===a.kind)}get isBase64url(){return!!this._def.checks.find(a=>"base64url"===a.kind)}get minLength(){let a=null;for(let b of this._def.checks)"min"===b.kind&&(null===a||b.value>a)&&(a=b.value);return a}get maxLength(){let a=null;for(let b of this._def.checks)"max"===b.kind&&(null===a||b.value<a)&&(a=b.value);return a}}P.create=a=>new P({checks:[],typeName:g.ZodString,coerce:a?.coerce??!1,...w(a)});class Q extends x{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(a){let b;if(this._def.coerce&&(a.data=Number(a.data)),this._getType(a)!==i.number){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.number,received:b.parsedType}),q}let c=new p;for(let e of this._def.checks)"int"===e.kind?d.isInteger(a.data)||(o(b=this._getOrReturnCtx(a,b),{code:k.invalid_type,expected:"integer",received:"float",message:e.message}),c.dirty()):"min"===e.kind?(e.inclusive?a.data<e.value:a.data<=e.value)&&(o(b=this._getOrReturnCtx(a,b),{code:k.too_small,minimum:e.value,type:"number",inclusive:e.inclusive,exact:!1,message:e.message}),c.dirty()):"max"===e.kind?(e.inclusive?a.data>e.value:a.data>=e.value)&&(o(b=this._getOrReturnCtx(a,b),{code:k.too_big,maximum:e.value,type:"number",inclusive:e.inclusive,exact:!1,message:e.message}),c.dirty()):"multipleOf"===e.kind?0!==function(a,b){let c=(a.toString().split(".")[1]||"").length,d=(b.toString().split(".")[1]||"").length,e=c>d?c:d;return Number.parseInt(a.toFixed(e).replace(".",""))%Number.parseInt(b.toFixed(e).replace(".",""))/10**e}(a.data,e.value)&&(o(b=this._getOrReturnCtx(a,b),{code:k.not_multiple_of,multipleOf:e.value,message:e.message}),c.dirty()):"finite"===e.kind?Number.isFinite(a.data)||(o(b=this._getOrReturnCtx(a,b),{code:k.not_finite,message:e.message}),c.dirty()):d.assertNever(e);return{status:c.value,value:a.data}}gte(a,b){return this.setLimit("min",a,!0,f.toString(b))}gt(a,b){return this.setLimit("min",a,!1,f.toString(b))}lte(a,b){return this.setLimit("max",a,!0,f.toString(b))}lt(a,b){return this.setLimit("max",a,!1,f.toString(b))}setLimit(a,b,c,d){return new Q({...this._def,checks:[...this._def.checks,{kind:a,value:b,inclusive:c,message:f.toString(d)}]})}_addCheck(a){return new Q({...this._def,checks:[...this._def.checks,a]})}int(a){return this._addCheck({kind:"int",message:f.toString(a)})}positive(a){return this._addCheck({kind:"min",value:0,inclusive:!1,message:f.toString(a)})}negative(a){return this._addCheck({kind:"max",value:0,inclusive:!1,message:f.toString(a)})}nonpositive(a){return this._addCheck({kind:"max",value:0,inclusive:!0,message:f.toString(a)})}nonnegative(a){return this._addCheck({kind:"min",value:0,inclusive:!0,message:f.toString(a)})}multipleOf(a,b){return this._addCheck({kind:"multipleOf",value:a,message:f.toString(b)})}finite(a){return this._addCheck({kind:"finite",message:f.toString(a)})}safe(a){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:f.toString(a)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:f.toString(a)})}get minValue(){let a=null;for(let b of this._def.checks)"min"===b.kind&&(null===a||b.value>a)&&(a=b.value);return a}get maxValue(){let a=null;for(let b of this._def.checks)"max"===b.kind&&(null===a||b.value<a)&&(a=b.value);return a}get isInt(){return!!this._def.checks.find(a=>"int"===a.kind||"multipleOf"===a.kind&&d.isInteger(a.value))}get isFinite(){let a=null,b=null;for(let c of this._def.checks)if("finite"===c.kind||"int"===c.kind||"multipleOf"===c.kind)return!0;else"min"===c.kind?(null===b||c.value>b)&&(b=c.value):"max"===c.kind&&(null===a||c.value<a)&&(a=c.value);return Number.isFinite(b)&&Number.isFinite(a)}}Q.create=a=>new Q({checks:[],typeName:g.ZodNumber,coerce:a?.coerce||!1,...w(a)});class R extends x{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(a){let b;if(this._def.coerce)try{a.data=BigInt(a.data)}catch{return this._getInvalidInput(a)}if(this._getType(a)!==i.bigint)return this._getInvalidInput(a);let c=new p;for(let e of this._def.checks)"min"===e.kind?(e.inclusive?a.data<e.value:a.data<=e.value)&&(o(b=this._getOrReturnCtx(a,b),{code:k.too_small,type:"bigint",minimum:e.value,inclusive:e.inclusive,message:e.message}),c.dirty()):"max"===e.kind?(e.inclusive?a.data>e.value:a.data>=e.value)&&(o(b=this._getOrReturnCtx(a,b),{code:k.too_big,type:"bigint",maximum:e.value,inclusive:e.inclusive,message:e.message}),c.dirty()):"multipleOf"===e.kind?a.data%e.value!==BigInt(0)&&(o(b=this._getOrReturnCtx(a,b),{code:k.not_multiple_of,multipleOf:e.value,message:e.message}),c.dirty()):d.assertNever(e);return{status:c.value,value:a.data}}_getInvalidInput(a){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.bigint,received:b.parsedType}),q}gte(a,b){return this.setLimit("min",a,!0,f.toString(b))}gt(a,b){return this.setLimit("min",a,!1,f.toString(b))}lte(a,b){return this.setLimit("max",a,!0,f.toString(b))}lt(a,b){return this.setLimit("max",a,!1,f.toString(b))}setLimit(a,b,c,d){return new R({...this._def,checks:[...this._def.checks,{kind:a,value:b,inclusive:c,message:f.toString(d)}]})}_addCheck(a){return new R({...this._def,checks:[...this._def.checks,a]})}positive(a){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:f.toString(a)})}negative(a){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:f.toString(a)})}nonpositive(a){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:f.toString(a)})}nonnegative(a){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:f.toString(a)})}multipleOf(a,b){return this._addCheck({kind:"multipleOf",value:a,message:f.toString(b)})}get minValue(){let a=null;for(let b of this._def.checks)"min"===b.kind&&(null===a||b.value>a)&&(a=b.value);return a}get maxValue(){let a=null;for(let b of this._def.checks)"max"===b.kind&&(null===a||b.value<a)&&(a=b.value);return a}}R.create=a=>new R({checks:[],typeName:g.ZodBigInt,coerce:a?.coerce??!1,...w(a)});class S extends x{_parse(a){if(this._def.coerce&&(a.data=!!a.data),this._getType(a)!==i.boolean){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.boolean,received:b.parsedType}),q}return s(a.data)}}S.create=a=>new S({typeName:g.ZodBoolean,coerce:a?.coerce||!1,...w(a)});class T extends x{_parse(a){let b;if(this._def.coerce&&(a.data=new Date(a.data)),this._getType(a)!==i.date){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.date,received:b.parsedType}),q}if(Number.isNaN(a.data.getTime()))return o(this._getOrReturnCtx(a),{code:k.invalid_date}),q;let c=new p;for(let e of this._def.checks)"min"===e.kind?a.data.getTime()<e.value&&(o(b=this._getOrReturnCtx(a,b),{code:k.too_small,message:e.message,inclusive:!0,exact:!1,minimum:e.value,type:"date"}),c.dirty()):"max"===e.kind?a.data.getTime()>e.value&&(o(b=this._getOrReturnCtx(a,b),{code:k.too_big,message:e.message,inclusive:!0,exact:!1,maximum:e.value,type:"date"}),c.dirty()):d.assertNever(e);return{status:c.value,value:new Date(a.data.getTime())}}_addCheck(a){return new T({...this._def,checks:[...this._def.checks,a]})}min(a,b){return this._addCheck({kind:"min",value:a.getTime(),message:f.toString(b)})}max(a,b){return this._addCheck({kind:"max",value:a.getTime(),message:f.toString(b)})}get minDate(){let a=null;for(let b of this._def.checks)"min"===b.kind&&(null===a||b.value>a)&&(a=b.value);return null!=a?new Date(a):null}get maxDate(){let a=null;for(let b of this._def.checks)"max"===b.kind&&(null===a||b.value<a)&&(a=b.value);return null!=a?new Date(a):null}}T.create=a=>new T({checks:[],coerce:a?.coerce||!1,typeName:g.ZodDate,...w(a)});class U extends x{_parse(a){if(this._getType(a)!==i.symbol){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.symbol,received:b.parsedType}),q}return s(a.data)}}U.create=a=>new U({typeName:g.ZodSymbol,...w(a)});class V extends x{_parse(a){if(this._getType(a)!==i.undefined){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.undefined,received:b.parsedType}),q}return s(a.data)}}V.create=a=>new V({typeName:g.ZodUndefined,...w(a)});class W extends x{_parse(a){if(this._getType(a)!==i.null){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.null,received:b.parsedType}),q}return s(a.data)}}W.create=a=>new W({typeName:g.ZodNull,...w(a)});class X extends x{constructor(){super(...arguments),this._any=!0}_parse(a){return s(a.data)}}X.create=a=>new X({typeName:g.ZodAny,...w(a)});class Y extends x{constructor(){super(...arguments),this._unknown=!0}_parse(a){return s(a.data)}}Y.create=a=>new Y({typeName:g.ZodUnknown,...w(a)});class Z extends x{_parse(a){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.never,received:b.parsedType}),q}}Z.create=a=>new Z({typeName:g.ZodNever,...w(a)});class $ extends x{_parse(a){if(this._getType(a)!==i.undefined){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.void,received:b.parsedType}),q}return s(a.data)}}$.create=a=>new $({typeName:g.ZodVoid,...w(a)});class _ extends x{_parse(a){let{ctx:b,status:c}=this._processInputParams(a),d=this._def;if(b.parsedType!==i.array)return o(b,{code:k.invalid_type,expected:i.array,received:b.parsedType}),q;if(null!==d.exactLength){let a=b.data.length>d.exactLength.value,e=b.data.length<d.exactLength.value;(a||e)&&(o(b,{code:a?k.too_big:k.too_small,minimum:e?d.exactLength.value:void 0,maximum:a?d.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:d.exactLength.message}),c.dirty())}if(null!==d.minLength&&b.data.length<d.minLength.value&&(o(b,{code:k.too_small,minimum:d.minLength.value,type:"array",inclusive:!0,exact:!1,message:d.minLength.message}),c.dirty()),null!==d.maxLength&&b.data.length>d.maxLength.value&&(o(b,{code:k.too_big,maximum:d.maxLength.value,type:"array",inclusive:!0,exact:!1,message:d.maxLength.message}),c.dirty()),b.common.async)return Promise.all([...b.data].map((a,c)=>d.type._parseAsync(new u(b,a,b.path,c)))).then(a=>p.mergeArray(c,a));let e=[...b.data].map((a,c)=>d.type._parseSync(new u(b,a,b.path,c)));return p.mergeArray(c,e)}get element(){return this._def.type}min(a,b){return new _({...this._def,minLength:{value:a,message:f.toString(b)}})}max(a,b){return new _({...this._def,maxLength:{value:a,message:f.toString(b)}})}length(a,b){return new _({...this._def,exactLength:{value:a,message:f.toString(b)}})}nonempty(a){return this.min(1,a)}}_.create=(a,b)=>new _({type:a,minLength:null,maxLength:null,exactLength:null,typeName:g.ZodArray,...w(b)});class aa extends x{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(null!==this._cached)return this._cached;let a=this._def.shape(),b=d.objectKeys(a);return this._cached={shape:a,keys:b},this._cached}_parse(a){if(this._getType(a)!==i.object){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.object,received:b.parsedType}),q}let{status:b,ctx:c}=this._processInputParams(a),{shape:d,keys:e}=this._getCached(),f=[];if(!(this._def.catchall instanceof Z&&"strip"===this._def.unknownKeys))for(let a in c.data)e.includes(a)||f.push(a);let g=[];for(let a of e){let b=d[a],e=c.data[a];g.push({key:{status:"valid",value:a},value:b._parse(new u(c,e,c.path,a)),alwaysSet:a in c.data})}if(this._def.catchall instanceof Z){let a=this._def.unknownKeys;if("passthrough"===a)for(let a of f)g.push({key:{status:"valid",value:a},value:{status:"valid",value:c.data[a]}});else if("strict"===a)f.length>0&&(o(c,{code:k.unrecognized_keys,keys:f}),b.dirty());else if("strip"===a);else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let a=this._def.catchall;for(let b of f){let d=c.data[b];g.push({key:{status:"valid",value:b},value:a._parse(new u(c,d,c.path,b)),alwaysSet:b in c.data})}}return c.common.async?Promise.resolve().then(async()=>{let a=[];for(let b of g){let c=await b.key,d=await b.value;a.push({key:c,value:d,alwaysSet:b.alwaysSet})}return a}).then(a=>p.mergeObjectSync(b,a)):p.mergeObjectSync(b,g)}get shape(){return this._def.shape()}strict(a){return f.errToObj,new aa({...this._def,unknownKeys:"strict",...void 0!==a?{errorMap:(b,c)=>{let d=this._def.errorMap?.(b,c).message??c.defaultError;return"unrecognized_keys"===b.code?{message:f.errToObj(a).message??d}:{message:d}}}:{}})}strip(){return new aa({...this._def,unknownKeys:"strip"})}passthrough(){return new aa({...this._def,unknownKeys:"passthrough"})}extend(a){return new aa({...this._def,shape:()=>({...this._def.shape(),...a})})}merge(a){return new aa({unknownKeys:a._def.unknownKeys,catchall:a._def.catchall,shape:()=>({...this._def.shape(),...a._def.shape()}),typeName:g.ZodObject})}setKey(a,b){return this.augment({[a]:b})}catchall(a){return new aa({...this._def,catchall:a})}pick(a){let b={};for(let c of d.objectKeys(a))a[c]&&this.shape[c]&&(b[c]=this.shape[c]);return new aa({...this._def,shape:()=>b})}omit(a){let b={};for(let c of d.objectKeys(this.shape))a[c]||(b[c]=this.shape[c]);return new aa({...this._def,shape:()=>b})}deepPartial(){return function a(b){if(b instanceof aa){let c={};for(let d in b.shape){let e=b.shape[d];c[d]=ar.create(a(e))}return new aa({...b._def,shape:()=>c})}if(b instanceof _)return new _({...b._def,type:a(b.element)});if(b instanceof ar)return ar.create(a(b.unwrap()));if(b instanceof as)return as.create(a(b.unwrap()));if(b instanceof af)return af.create(b.items.map(b=>a(b)));else return b}(this)}partial(a){let b={};for(let c of d.objectKeys(this.shape)){let d=this.shape[c];a&&!a[c]?b[c]=d:b[c]=d.optional()}return new aa({...this._def,shape:()=>b})}required(a){let b={};for(let c of d.objectKeys(this.shape))if(a&&!a[c])b[c]=this.shape[c];else{let a=this.shape[c];for(;a instanceof ar;)a=a._def.innerType;b[c]=a}return new aa({...this._def,shape:()=>b})}keyof(){return am(d.objectKeys(this.shape))}}aa.create=(a,b)=>new aa({shape:()=>a,unknownKeys:"strip",catchall:Z.create(),typeName:g.ZodObject,...w(b)}),aa.strictCreate=(a,b)=>new aa({shape:()=>a,unknownKeys:"strict",catchall:Z.create(),typeName:g.ZodObject,...w(b)}),aa.lazycreate=(a,b)=>new aa({shape:a,unknownKeys:"strip",catchall:Z.create(),typeName:g.ZodObject,...w(b)});class ab extends x{_parse(a){let{ctx:b}=this._processInputParams(a),c=this._def.options;if(b.common.async)return Promise.all(c.map(async a=>{let c={...b,common:{...b.common,issues:[]},parent:null};return{result:await a._parseAsync({data:b.data,path:b.path,parent:c}),ctx:c}})).then(function(a){for(let b of a)if("valid"===b.result.status)return b.result;for(let c of a)if("dirty"===c.result.status)return b.common.issues.push(...c.ctx.common.issues),c.result;let c=a.map(a=>new l(a.ctx.common.issues));return o(b,{code:k.invalid_union,unionErrors:c}),q});{let a,d=[];for(let e of c){let c={...b,common:{...b.common,issues:[]},parent:null},f=e._parseSync({data:b.data,path:b.path,parent:c});if("valid"===f.status)return f;"dirty"!==f.status||a||(a={result:f,ctx:c}),c.common.issues.length&&d.push(c.common.issues)}if(a)return b.common.issues.push(...a.ctx.common.issues),a.result;let e=d.map(a=>new l(a));return o(b,{code:k.invalid_union,unionErrors:e}),q}}get options(){return this._def.options}}ab.create=(a,b)=>new ab({options:a,typeName:g.ZodUnion,...w(b)});let ac=a=>{if(a instanceof ak)return ac(a.schema);if(a instanceof aq)return ac(a.innerType());if(a instanceof al)return[a.value];if(a instanceof an)return a.options;if(a instanceof ao)return d.objectValues(a.enum);else if(a instanceof at)return ac(a._def.innerType);else if(a instanceof V)return[void 0];else if(a instanceof W)return[null];else if(a instanceof ar)return[void 0,...ac(a.unwrap())];else if(a instanceof as)return[null,...ac(a.unwrap())];else if(a instanceof aw)return ac(a.unwrap());else if(a instanceof ay)return ac(a.unwrap());else if(a instanceof au)return ac(a._def.innerType);else return[]};class ad extends x{_parse(a){let{ctx:b}=this._processInputParams(a);if(b.parsedType!==i.object)return o(b,{code:k.invalid_type,expected:i.object,received:b.parsedType}),q;let c=this.discriminator,d=b.data[c],e=this.optionsMap.get(d);return e?b.common.async?e._parseAsync({data:b.data,path:b.path,parent:b}):e._parseSync({data:b.data,path:b.path,parent:b}):(o(b,{code:k.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[c]}),q)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(a,b,c){let d=new Map;for(let c of b){let b=ac(c.shape[a]);if(!b.length)throw Error(`A discriminator value for key \`${a}\` could not be extracted from all schema options`);for(let e of b){if(d.has(e))throw Error(`Discriminator property ${String(a)} has duplicate value ${String(e)}`);d.set(e,c)}}return new ad({typeName:g.ZodDiscriminatedUnion,discriminator:a,options:b,optionsMap:d,...w(c)})}}class ae extends x{_parse(a){let{status:b,ctx:c}=this._processInputParams(a),e=(a,e)=>{if("aborted"===a.status||"aborted"===e.status)return q;let f=function a(b,c){let e=j(b),f=j(c);if(b===c)return{valid:!0,data:b};if(e===i.object&&f===i.object){let e=d.objectKeys(c),f=d.objectKeys(b).filter(a=>-1!==e.indexOf(a)),g={...b,...c};for(let d of f){let e=a(b[d],c[d]);if(!e.valid)return{valid:!1};g[d]=e.data}return{valid:!0,data:g}}if(e===i.array&&f===i.array){if(b.length!==c.length)return{valid:!1};let d=[];for(let e=0;e<b.length;e++){let f=a(b[e],c[e]);if(!f.valid)return{valid:!1};d.push(f.data)}return{valid:!0,data:d}}if(e===i.date&&f===i.date&&+b==+c)return{valid:!0,data:b};return{valid:!1}}(a.value,e.value);return f.valid?(("dirty"===a.status||"dirty"===e.status)&&b.dirty(),{status:b.value,value:f.data}):(o(c,{code:k.invalid_intersection_types}),q)};return c.common.async?Promise.all([this._def.left._parseAsync({data:c.data,path:c.path,parent:c}),this._def.right._parseAsync({data:c.data,path:c.path,parent:c})]).then(([a,b])=>e(a,b)):e(this._def.left._parseSync({data:c.data,path:c.path,parent:c}),this._def.right._parseSync({data:c.data,path:c.path,parent:c}))}}ae.create=(a,b,c)=>new ae({left:a,right:b,typeName:g.ZodIntersection,...w(c)});class af extends x{_parse(a){let{status:b,ctx:c}=this._processInputParams(a);if(c.parsedType!==i.array)return o(c,{code:k.invalid_type,expected:i.array,received:c.parsedType}),q;if(c.data.length<this._def.items.length)return o(c,{code:k.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),q;!this._def.rest&&c.data.length>this._def.items.length&&(o(c,{code:k.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),b.dirty());let d=[...c.data].map((a,b)=>{let d=this._def.items[b]||this._def.rest;return d?d._parse(new u(c,a,c.path,b)):null}).filter(a=>!!a);return c.common.async?Promise.all(d).then(a=>p.mergeArray(b,a)):p.mergeArray(b,d)}get items(){return this._def.items}rest(a){return new af({...this._def,rest:a})}}af.create=(a,b)=>{if(!Array.isArray(a))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new af({items:a,typeName:g.ZodTuple,rest:null,...w(b)})};class ag extends x{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(a){let{status:b,ctx:c}=this._processInputParams(a);if(c.parsedType!==i.object)return o(c,{code:k.invalid_type,expected:i.object,received:c.parsedType}),q;let d=[],e=this._def.keyType,f=this._def.valueType;for(let a in c.data)d.push({key:e._parse(new u(c,a,c.path,a)),value:f._parse(new u(c,c.data[a],c.path,a)),alwaysSet:a in c.data});return c.common.async?p.mergeObjectAsync(b,d):p.mergeObjectSync(b,d)}get element(){return this._def.valueType}static create(a,b,c){return new ag(b instanceof x?{keyType:a,valueType:b,typeName:g.ZodRecord,...w(c)}:{keyType:P.create(),valueType:a,typeName:g.ZodRecord,...w(b)})}}class ah extends x{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(a){let{status:b,ctx:c}=this._processInputParams(a);if(c.parsedType!==i.map)return o(c,{code:k.invalid_type,expected:i.map,received:c.parsedType}),q;let d=this._def.keyType,e=this._def.valueType,f=[...c.data.entries()].map(([a,b],f)=>({key:d._parse(new u(c,a,c.path,[f,"key"])),value:e._parse(new u(c,b,c.path,[f,"value"]))}));if(c.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of f){let d=await c.key,e=await c.value;if("aborted"===d.status||"aborted"===e.status)return q;("dirty"===d.status||"dirty"===e.status)&&b.dirty(),a.set(d.value,e.value)}return{status:b.value,value:a}})}{let a=new Map;for(let c of f){let d=c.key,e=c.value;if("aborted"===d.status||"aborted"===e.status)return q;("dirty"===d.status||"dirty"===e.status)&&b.dirty(),a.set(d.value,e.value)}return{status:b.value,value:a}}}}ah.create=(a,b,c)=>new ah({valueType:b,keyType:a,typeName:g.ZodMap,...w(c)});class ai extends x{_parse(a){let{status:b,ctx:c}=this._processInputParams(a);if(c.parsedType!==i.set)return o(c,{code:k.invalid_type,expected:i.set,received:c.parsedType}),q;let d=this._def;null!==d.minSize&&c.data.size<d.minSize.value&&(o(c,{code:k.too_small,minimum:d.minSize.value,type:"set",inclusive:!0,exact:!1,message:d.minSize.message}),b.dirty()),null!==d.maxSize&&c.data.size>d.maxSize.value&&(o(c,{code:k.too_big,maximum:d.maxSize.value,type:"set",inclusive:!0,exact:!1,message:d.maxSize.message}),b.dirty());let e=this._def.valueType;function f(a){let c=new Set;for(let d of a){if("aborted"===d.status)return q;"dirty"===d.status&&b.dirty(),c.add(d.value)}return{status:b.value,value:c}}let g=[...c.data.values()].map((a,b)=>e._parse(new u(c,a,c.path,b)));return c.common.async?Promise.all(g).then(a=>f(a)):f(g)}min(a,b){return new ai({...this._def,minSize:{value:a,message:f.toString(b)}})}max(a,b){return new ai({...this._def,maxSize:{value:a,message:f.toString(b)}})}size(a,b){return this.min(a,b).max(a,b)}nonempty(a){return this.min(1,a)}}ai.create=(a,b)=>new ai({valueType:a,minSize:null,maxSize:null,typeName:g.ZodSet,...w(b)});class aj extends x{constructor(){super(...arguments),this.validate=this.implement}_parse(a){let{ctx:b}=this._processInputParams(a);if(b.parsedType!==i.function)return o(b,{code:k.invalid_type,expected:i.function,received:b.parsedType}),q;function c(a,c){return n({data:a,path:b.path,errorMaps:[b.common.contextualErrorMap,b.schemaErrorMap,m,m].filter(a=>!!a),issueData:{code:k.invalid_arguments,argumentsError:c}})}function d(a,c){return n({data:a,path:b.path,errorMaps:[b.common.contextualErrorMap,b.schemaErrorMap,m,m].filter(a=>!!a),issueData:{code:k.invalid_return_type,returnTypeError:c}})}let e={errorMap:b.common.contextualErrorMap},f=b.data;if(this._def.returns instanceof ap){let a=this;return s(async function(...b){let g=new l([]),h=await a._def.args.parseAsync(b,e).catch(a=>{throw g.addIssue(c(b,a)),g}),i=await Reflect.apply(f,this,h);return await a._def.returns._def.type.parseAsync(i,e).catch(a=>{throw g.addIssue(d(i,a)),g})})}{let a=this;return s(function(...b){let g=a._def.args.safeParse(b,e);if(!g.success)throw new l([c(b,g.error)]);let h=Reflect.apply(f,this,g.data),i=a._def.returns.safeParse(h,e);if(!i.success)throw new l([d(h,i.error)]);return i.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...a){return new aj({...this._def,args:af.create(a).rest(Y.create())})}returns(a){return new aj({...this._def,returns:a})}implement(a){return this.parse(a)}strictImplement(a){return this.parse(a)}static create(a,b,c){return new aj({args:a||af.create([]).rest(Y.create()),returns:b||Y.create(),typeName:g.ZodFunction,...w(c)})}}class ak extends x{get schema(){return this._def.getter()}_parse(a){let{ctx:b}=this._processInputParams(a);return this._def.getter()._parse({data:b.data,path:b.path,parent:b})}}ak.create=(a,b)=>new ak({getter:a,typeName:g.ZodLazy,...w(b)});class al extends x{_parse(a){if(a.data!==this._def.value){let b=this._getOrReturnCtx(a);return o(b,{received:b.data,code:k.invalid_literal,expected:this._def.value}),q}return{status:"valid",value:a.data}}get value(){return this._def.value}}function am(a,b){return new an({values:a,typeName:g.ZodEnum,...w(b)})}al.create=(a,b)=>new al({value:a,typeName:g.ZodLiteral,...w(b)});class an extends x{_parse(a){if("string"!=typeof a.data){let b=this._getOrReturnCtx(a),c=this._def.values;return o(b,{expected:d.joinValues(c),received:b.parsedType,code:k.invalid_type}),q}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(a.data)){let b=this._getOrReturnCtx(a),c=this._def.values;return o(b,{received:b.data,code:k.invalid_enum_value,options:c}),q}return s(a.data)}get options(){return this._def.values}get enum(){let a={};for(let b of this._def.values)a[b]=b;return a}get Values(){let a={};for(let b of this._def.values)a[b]=b;return a}get Enum(){let a={};for(let b of this._def.values)a[b]=b;return a}extract(a,b=this._def){return an.create(a,{...this._def,...b})}exclude(a,b=this._def){return an.create(this.options.filter(b=>!a.includes(b)),{...this._def,...b})}}an.create=am;class ao extends x{_parse(a){let b=d.getValidEnumValues(this._def.values),c=this._getOrReturnCtx(a);if(c.parsedType!==i.string&&c.parsedType!==i.number){let a=d.objectValues(b);return o(c,{expected:d.joinValues(a),received:c.parsedType,code:k.invalid_type}),q}if(this._cache||(this._cache=new Set(d.getValidEnumValues(this._def.values))),!this._cache.has(a.data)){let a=d.objectValues(b);return o(c,{received:c.data,code:k.invalid_enum_value,options:a}),q}return s(a.data)}get enum(){return this._def.values}}ao.create=(a,b)=>new ao({values:a,typeName:g.ZodNativeEnum,...w(b)});class ap extends x{unwrap(){return this._def.type}_parse(a){let{ctx:b}=this._processInputParams(a);return b.parsedType!==i.promise&&!1===b.common.async?(o(b,{code:k.invalid_type,expected:i.promise,received:b.parsedType}),q):s((b.parsedType===i.promise?b.data:Promise.resolve(b.data)).then(a=>this._def.type.parseAsync(a,{path:b.path,errorMap:b.common.contextualErrorMap})))}}ap.create=(a,b)=>new ap({type:a,typeName:g.ZodPromise,...w(b)});class aq extends x{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===g.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(a){let{status:b,ctx:c}=this._processInputParams(a),e=this._def.effect||null,f={addIssue:a=>{o(c,a),a.fatal?b.abort():b.dirty()},get path(){return c.path}};if(f.addIssue=f.addIssue.bind(f),"preprocess"===e.type){let a=e.transform(c.data,f);if(c.common.async)return Promise.resolve(a).then(async a=>{if("aborted"===b.value)return q;let d=await this._def.schema._parseAsync({data:a,path:c.path,parent:c});return"aborted"===d.status?q:"dirty"===d.status||"dirty"===b.value?r(d.value):d});{if("aborted"===b.value)return q;let d=this._def.schema._parseSync({data:a,path:c.path,parent:c});return"aborted"===d.status?q:"dirty"===d.status||"dirty"===b.value?r(d.value):d}}if("refinement"===e.type){let a=a=>{let b=e.refinement(a,f);if(c.common.async)return Promise.resolve(b);if(b instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(!1!==c.common.async)return this._def.schema._parseAsync({data:c.data,path:c.path,parent:c}).then(c=>"aborted"===c.status?q:("dirty"===c.status&&b.dirty(),a(c.value).then(()=>({status:b.value,value:c.value}))));{let d=this._def.schema._parseSync({data:c.data,path:c.path,parent:c});return"aborted"===d.status?q:("dirty"===d.status&&b.dirty(),a(d.value),{status:b.value,value:d.value})}}if("transform"===e.type)if(!1!==c.common.async)return this._def.schema._parseAsync({data:c.data,path:c.path,parent:c}).then(a=>"valid"!==a.status?q:Promise.resolve(e.transform(a.value,f)).then(a=>({status:b.value,value:a})));else{let a=this._def.schema._parseSync({data:c.data,path:c.path,parent:c});if("valid"!==a.status)return q;let d=e.transform(a.value,f);if(d instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:b.value,value:d}}d.assertNever(e)}}aq.create=(a,b,c)=>new aq({schema:a,typeName:g.ZodEffects,effect:b,...w(c)}),aq.createWithPreprocess=(a,b,c)=>new aq({schema:b,effect:{type:"preprocess",transform:a},typeName:g.ZodEffects,...w(c)});class ar extends x{_parse(a){return this._getType(a)===i.undefined?s(void 0):this._def.innerType._parse(a)}unwrap(){return this._def.innerType}}ar.create=(a,b)=>new ar({innerType:a,typeName:g.ZodOptional,...w(b)});class as extends x{_parse(a){return this._getType(a)===i.null?s(null):this._def.innerType._parse(a)}unwrap(){return this._def.innerType}}as.create=(a,b)=>new as({innerType:a,typeName:g.ZodNullable,...w(b)});class at extends x{_parse(a){let{ctx:b}=this._processInputParams(a),c=b.data;return b.parsedType===i.undefined&&(c=this._def.defaultValue()),this._def.innerType._parse({data:c,path:b.path,parent:b})}removeDefault(){return this._def.innerType}}at.create=(a,b)=>new at({innerType:a,typeName:g.ZodDefault,defaultValue:"function"==typeof b.default?b.default:()=>b.default,...w(b)});class au extends x{_parse(a){let{ctx:b}=this._processInputParams(a),c={...b,common:{...b.common,issues:[]}},d=this._def.innerType._parse({data:c.data,path:c.path,parent:{...c}});return t(d)?d.then(a=>({status:"valid",value:"valid"===a.status?a.value:this._def.catchValue({get error(){return new l(c.common.issues)},input:c.data})})):{status:"valid",value:"valid"===d.status?d.value:this._def.catchValue({get error(){return new l(c.common.issues)},input:c.data})}}removeCatch(){return this._def.innerType}}au.create=(a,b)=>new au({innerType:a,typeName:g.ZodCatch,catchValue:"function"==typeof b.catch?b.catch:()=>b.catch,...w(b)});class av extends x{_parse(a){if(this._getType(a)!==i.nan){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.nan,received:b.parsedType}),q}return{status:"valid",value:a.data}}}av.create=a=>new av({typeName:g.ZodNaN,...w(a)}),Symbol("zod_brand");class aw extends x{_parse(a){let{ctx:b}=this._processInputParams(a),c=b.data;return this._def.type._parse({data:c,path:b.path,parent:b})}unwrap(){return this._def.type}}class ax extends x{_parse(a){let{status:b,ctx:c}=this._processInputParams(a);if(c.common.async)return(async()=>{let a=await this._def.in._parseAsync({data:c.data,path:c.path,parent:c});return"aborted"===a.status?q:"dirty"===a.status?(b.dirty(),r(a.value)):this._def.out._parseAsync({data:a.value,path:c.path,parent:c})})();{let a=this._def.in._parseSync({data:c.data,path:c.path,parent:c});return"aborted"===a.status?q:"dirty"===a.status?(b.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:c.path,parent:c})}}static create(a,b){return new ax({in:a,out:b,typeName:g.ZodPipeline})}}class ay extends x{_parse(a){let b=this._def.innerType._parse(a),c=a=>("valid"===a.status&&(a.value=Object.freeze(a.value)),a);return t(b)?b.then(a=>c(a)):c(b)}unwrap(){return this._def.innerType}}ay.create=(a,b)=>new ay({innerType:a,typeName:g.ZodReadonly,...w(b)}),aa.lazycreate,function(a){a.ZodString="ZodString",a.ZodNumber="ZodNumber",a.ZodNaN="ZodNaN",a.ZodBigInt="ZodBigInt",a.ZodBoolean="ZodBoolean",a.ZodDate="ZodDate",a.ZodSymbol="ZodSymbol",a.ZodUndefined="ZodUndefined",a.ZodNull="ZodNull",a.ZodAny="ZodAny",a.ZodUnknown="ZodUnknown",a.ZodNever="ZodNever",a.ZodVoid="ZodVoid",a.ZodArray="ZodArray",a.ZodObject="ZodObject",a.ZodUnion="ZodUnion",a.ZodDiscriminatedUnion="ZodDiscriminatedUnion",a.ZodIntersection="ZodIntersection",a.ZodTuple="ZodTuple",a.ZodRecord="ZodRecord",a.ZodMap="ZodMap",a.ZodSet="ZodSet",a.ZodFunction="ZodFunction",a.ZodLazy="ZodLazy",a.ZodLiteral="ZodLiteral",a.ZodEnum="ZodEnum",a.ZodEffects="ZodEffects",a.ZodNativeEnum="ZodNativeEnum",a.ZodOptional="ZodOptional",a.ZodNullable="ZodNullable",a.ZodDefault="ZodDefault",a.ZodCatch="ZodCatch",a.ZodPromise="ZodPromise",a.ZodBranded="ZodBranded",a.ZodPipeline="ZodPipeline",a.ZodReadonly="ZodReadonly"}(g||(g={}));let az=P.create,aA=Q.create;av.create,R.create;let aB=S.create;T.create,U.create,V.create,W.create,X.create;let aC=Y.create;Z.create,$.create;let aD=_.create,aE=aa.create;aa.strictCreate,ab.create,ad.create,ae.create,af.create;let aF=ag.create;ah.create,ai.create,aj.create,ak.create,al.create;let aG=an.create;ao.create,ap.create,aq.create,ar.create,as.create,aq.createWithPreprocess,ax.create;let aH={string:a=>P.create({...a,coerce:!0}),number:a=>Q.create({...a,coerce:!0}),boolean:a=>S.create({...a,coerce:!0}),bigint:a=>R.create({...a,coerce:!0}),date:a=>T.create({...a,coerce:!0})}},73497:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"connection",{enumerable:!0,get:function(){return j}});let d=c(29294),e=c(63033),f=c(64370),g=c(61722),h=c(24023),i=c(65548);function j(){let a=d.workAsyncStorage.getStore(),b=e.workUnitAsyncStorage.getStore();if(a){if(b&&"after"===b.phase&&!(0,i.isRequestAPICallableInsideAfter)())throw Object.defineProperty(Error(`Route ${a.route} used "connection" inside "after(...)". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual Request, but "after(...)" executes after the request, so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/canary/app/api-reference/functions/after`),"__NEXT_ERROR_CODE",{value:"E186",enumerable:!1,configurable:!0});if(a.forceStatic)return Promise.resolve(void 0);if(a.dynamicShouldError)throw Object.defineProperty(new g.StaticGenBailoutError(`Route ${a.route} with \`dynamic = "error"\` couldn't be rendered statically because it used \`connection\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E562",enumerable:!1,configurable:!0});if(b)switch(b.type){case"cache":{let b=Object.defineProperty(Error(`Route ${a.route} used "connection" inside "use cache". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual request, but caches must be able to be produced before a request, so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`),"__NEXT_ERROR_CODE",{value:"E752",enumerable:!1,configurable:!0});throw Error.captureStackTrace(b,j),a.invalidDynamicUsageError??=b,b}case"private-cache":{let b=Object.defineProperty(Error(`Route ${a.route} used "connection" inside "use cache: private". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual navigation request, but caches must be able to be produced before a navigation request, so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/messages/next-request-in-use-cache`),"__NEXT_ERROR_CODE",{value:"E753",enumerable:!1,configurable:!0});throw Error.captureStackTrace(b,j),a.invalidDynamicUsageError??=b,b}case"unstable-cache":throw Object.defineProperty(Error(`Route ${a.route} used "connection" inside a function cached with "unstable_cache(...)". The \`connection()\` function is used to indicate the subsequent code must only run when there is an actual Request, but caches must be able to be produced before a Request so this function is not allowed in this scope. See more info here: https://nextjs.org/docs/app/api-reference/functions/unstable_cache`),"__NEXT_ERROR_CODE",{value:"E1",enumerable:!1,configurable:!0});case"prerender":case"prerender-client":case"prerender-runtime":return(0,h.makeHangingPromise)(b.renderSignal,a.route,"`connection()`");case"prerender-ppr":return(0,f.postponeWithTracking)(a.route,"connection",b.dynamicTracking);case"prerender-legacy":return(0,f.throwToInterruptStaticGeneration)("connection",a,b);case"request":return(0,f.trackDynamicDataInDynamicRender)(b),Promise.resolve(void 0)}}(0,e.throwForMissingRequestStore)("connection")}},76142:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{ImageResponse:function(){return d.ImageResponse},NextRequest:function(){return e.NextRequest},NextResponse:function(){return f.NextResponse},URLPattern:function(){return h.URLPattern},after:function(){return i.after},connection:function(){return j.connection},unstable_rootParams:function(){return k.unstable_rootParams},userAgent:function(){return g.userAgent},userAgentFromString:function(){return g.userAgentFromString}});let d=c(66173),e=c(67169),f=c(1757),g=c(10541),h=c(2974),i=c(1242),j=c(73497),k=c(80500)},80500:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),!function(a,b){for(var c in b)Object.defineProperty(a,c,{enumerable:!0,get:b[c]})}(b,{getRootParam:function(){return n},unstable_rootParams:function(){return m}});let d=c(59330),e=c(64370),f=c(29294),g=c(63033),h=c(24023),i=c(24778),j=c(19121),k=c(75854),l=new WeakMap;async function m(){(0,k.warnOnce)("`unstable_rootParams()` is deprecated and will be removed in an upcoming major release. Import specific root params from `next/root-params` instead.");let a=f.workAsyncStorage.getStore();if(!a)throw Object.defineProperty(new d.InvariantError("Missing workStore in unstable_rootParams"),"__NEXT_ERROR_CODE",{value:"E615",enumerable:!1,configurable:!0});let b=g.workUnitAsyncStorage.getStore();if(!b)throw Object.defineProperty(Error(`Route ${a.route} used \`unstable_rootParams()\` in Pages Router. This API is only available within App Router.`),"__NEXT_ERROR_CODE",{value:"E641",enumerable:!1,configurable:!0});switch(b.type){case"cache":case"unstable-cache":throw Object.defineProperty(Error(`Route ${a.route} used \`unstable_rootParams()\` inside \`"use cache"\` or \`unstable_cache\`. Support for this API inside cache scopes is planned for a future version of Next.js.`),"__NEXT_ERROR_CODE",{value:"E642",enumerable:!1,configurable:!0});case"prerender":case"prerender-client":case"prerender-ppr":case"prerender-legacy":return function(a,b,c){switch(c.type){case"prerender-client":{let a="`unstable_rootParams`";throw Object.defineProperty(new d.InvariantError(`${a} must not be used within a client component. Next.js should be preventing ${a} from being included in client components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E693",enumerable:!1,configurable:!0})}case"prerender":{let d=c.fallbackRouteParams;if(d){for(let e in a)if(d.has(e)){let d=l.get(a);if(d)return d;let e=(0,h.makeHangingPromise)(c.renderSignal,b.route,"`unstable_rootParams`");return l.set(a,e),e}}break}case"prerender-ppr":{let d=c.fallbackRouteParams;if(d){for(let f in a)if(d.has(f))return function(a,b,c,d){let f=l.get(a);if(f)return f;let g={...a},h=Promise.resolve(g);return l.set(a,h),Object.keys(a).forEach(f=>{i.wellKnownProperties.has(f)||(b.has(f)?Object.defineProperty(g,f,{get(){let a=(0,i.describeStringPropertyAccess)("unstable_rootParams",f);"prerender-ppr"===d.type?(0,e.postponeWithTracking)(c.route,a,d.dynamicTracking):(0,e.throwToInterruptStaticGeneration)(a,c,d)},enumerable:!0}):h[f]=a[f])}),h}(a,d,b,c)}}}return Promise.resolve(a)}(b.rootParams,a,b);case"private-cache":case"prerender-runtime":case"request":return Promise.resolve(b.rootParams);default:return b}}function n(a){let b=`\`import('next/root-params').${a}()\``,c=f.workAsyncStorage.getStore();if(!c)throw Object.defineProperty(new d.InvariantError(`Missing workStore in ${b}`),"__NEXT_ERROR_CODE",{value:"E764",enumerable:!1,configurable:!0});let e=g.workUnitAsyncStorage.getStore();if(!e)throw Object.defineProperty(Error(`Route ${c.route} used ${b} outside of a Server Component. This is not allowed.`),"__NEXT_ERROR_CODE",{value:"E774",enumerable:!1,configurable:!0});let i=j.actionAsyncStorage.getStore();if(i){if(i.isAppRoute)throw Object.defineProperty(Error(`Route ${c.route} used ${b} inside a Route Handler. Support for this API in Route Handlers is planned for a future version of Next.js.`),"__NEXT_ERROR_CODE",{value:"E765",enumerable:!1,configurable:!0});if(i.isAction&&"action"===e.phase)throw Object.defineProperty(Error(`${b} was used inside a Server Action. This is not supported. Functions from 'next/root-params' can only be called in the context of a route.`),"__NEXT_ERROR_CODE",{value:"E766",enumerable:!1,configurable:!0})}switch(e.type){case"unstable-cache":case"cache":throw Object.defineProperty(Error(`Route ${c.route} used ${b} inside \`"use cache"\` or \`unstable_cache\`. Support for this API inside cache scopes is planned for a future version of Next.js.`),"__NEXT_ERROR_CODE",{value:"E760",enumerable:!1,configurable:!0});case"prerender":case"prerender-client":case"prerender-ppr":case"prerender-legacy":var k=a,l=c,m=e,n=b;if("prerender-client"===m.type)throw Object.defineProperty(new d.InvariantError(`${n} must not be used within a client component. Next.js should be preventing ${n} from being included in client components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E693",enumerable:!1,configurable:!0});let p=m.rootParams;switch(m.type){case"prerender":if(m.fallbackRouteParams&&m.fallbackRouteParams.has(k))return(0,h.makeHangingPromise)(m.renderSignal,l.route,n);break;case"prerender-ppr":if(m.fallbackRouteParams&&m.fallbackRouteParams.has(k))return o(k,l,m,n)}return Promise.resolve(p[k])}return Promise.resolve(e.rootParams[a])}async function o(a,b,c,d){let f=(0,i.describeStringPropertyAccess)(d,a);switch(c.type){case"prerender-ppr":return(0,e.postponeWithTracking)(b.route,f,c.dynamicTracking);case"prerender-legacy":return(0,e.throwToInterruptStaticGeneration)(f,b,c)}}}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[177],{734:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(11063).A)("Receipt",[["path",{d:"M4 2v20l2-1 2 1 2-1 2 1 2-1 2 1 2-1 2 1V2l-2 1-2-1-2 1-2-1-2 1-2-1-2 1Z",key:"q3az6g"}],["path",{d:"M16 8h-6a2 2 0 1 0 0 4h4a2 2 0 1 1 0 4H8",key:"1h4pet"}],["path",{d:"M12 17.5v-11",key:"1jc1ny"}]])},4736:(e,t,a)=>{"use strict";var r=a(11504);a.o(r,"usePathname")&&a.d(t,{usePathname:function(){return r.usePathname}}),a.o(r,"useRouter")&&a.d(t,{useRouter:function(){return r.useRouter}}),a.o(r,"useSearchParams")&&a.d(t,{useSearchParams:function(){return r.useSearchParams}})},10379:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(11063).A)("Bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]])},23176:(e,t,a)=>{"use strict";async function r(e,t){let a=await fetch(e,t);if(!a.ok){let e=await a.text().catch(()=>"Unknown error");throw Error("API error ".concat(a.status,": ").concat(e))}return a.json()}function n(e){let t=new URLSearchParams;for(let[a,r]of Object.entries(e))void 0!==r&&""!==r&&t.set(a,String(r));let a=t.toString();return a?"?".concat(a):""}async function s(){return r("/api/stats")}async function c(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return r("/api/receipts".concat(n(e)))}async function l(e){return r("/api/receipts/".concat(e))}async function i(e){return r("/api/chains/".concat(e))}async function o(){return r("/api/agents")}async function d(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return r("/api/judgments".concat(n(e)))}async function h(e,t){return r("/api/verify",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({receipt:e,public_key:t})})}async function u(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return r("/api/cleanup",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({dry_run:e})})}async function x(){return r("/api/config")}async function m(e){return r("/api/config",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function p(e){return r("/api/search".concat(n({q:e})))}async function f(e){return r("/api/invoices",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}a.d(t,{$Q:()=>p,Dz:()=>x,Go:()=>n,Jq:()=>f,Kt:()=>u,Lx:()=>l,MJ:()=>d,YK:()=>s,_R:()=>m,o3:()=>h,oN:()=>i,pQ:()=>o,qb:()=>c})},28826:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(11063).A)("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]])},30417:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(11063).A)("ChevronLeft",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]])},37326:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(11063).A)("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]])},39864:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(11063).A)("FileText",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]])},40432:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(11063).A)("Scale",[["path",{d:"m16 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z",key:"7g6ntu"}],["path",{d:"m2 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z",key:"ijws7r"}],["path",{d:"M7 21h10",key:"1b0cd5"}],["path",{d:"M12 3v18",key:"108xh3"}],["path",{d:"M3 7h2c2 0 5-1 7-2 2 1 5 2 7 2h2",key:"3gwbw2"}]])},47054:(e,t,a)=>{"use strict";a.d(t,{LayoutShell:()=>R});var r=a(88111),n=a(55935),s=a.n(n),c=a(4736),l=a(55271),i=a(11063);let o=(0,i.A)("LayoutDashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]]);var d=a(734),h=a(51449),u=a(10379),x=a(83067),m=a(40432),p=a(39864),f=a(81174);let y=(0,i.A)("Settings",[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);var g=a(57979),b=a(28826),v=a(30417),k=a(96741);let j=[{href:"/",label:"Overview",icon:o},{href:"/receipts",label:"Receipts",icon:d.A},{href:"/chains",label:"Chains",icon:h.A},{href:"/agents",label:"Agents",icon:u.A},{href:"/constraints",label:"Constraints",icon:x.A},{href:"/judgments",label:"Judgments",icon:m.A},{href:"/invoices",label:"Invoices",icon:p.A},{href:"/verify",label:"Verify",icon:f.A},{href:"/settings",label:"Settings",icon:y}];function w(){let e=(0,c.usePathname)(),[t,a]=(0,l.useState)(!1);return(0,r.jsxs)("aside",{className:(0,k.cn)("hidden md:flex flex-col bg-bg-primary border-r border-border h-screen sticky top-0 transition-all duration-200",t?"w-16":"w-56"),children:[(0,r.jsxs)("div",{className:(0,k.cn)("flex items-center h-14 border-b border-border px-4",t&&"justify-center px-2"),children:[!t&&(0,r.jsxs)(s(),{href:"/",className:"flex items-center gap-2 min-w-0",children:[(0,r.jsx)(g.A,{className:"w-5 h-5 text-primary shrink-0"}),(0,r.jsx)("span",{className:"font-semibold text-sm text-text-primary truncate",children:"Agent Receipts"})]}),t&&(0,r.jsx)(s(),{href:"/",children:(0,r.jsx)(g.A,{className:"w-5 h-5 text-primary"})})]}),(0,r.jsx)("nav",{className:"flex-1 py-2 overflow-y-auto",children:j.map(a=>{let n="/"===a.href?"/"===e:e.startsWith(a.href),c=a.icon;return(0,r.jsxs)(s(),{href:a.href,className:(0,k.cn)("flex items-center gap-3 px-4 py-2 mx-2 rounded-md text-sm transition-colors",t&&"justify-center px-2",n?"bg-primary-subtle text-primary font-medium":"text-text-secondary hover:bg-bg-tertiary hover:text-text-primary"),title:t?a.label:void 0,children:[(0,r.jsx)(c,{className:"w-4 h-4 shrink-0"}),!t&&(0,r.jsx)("span",{children:a.label})]},a.href)})}),(0,r.jsx)("button",{onClick:()=>a(e=>!e),className:"flex items-center justify-center h-10 border-t border-border text-text-muted hover:text-text-secondary transition-colors",children:t?(0,r.jsx)(b.A,{className:"w-4 h-4"}):(0,r.jsx)(v.A,{className:"w-4 h-4"})})]})}let A=(0,i.A)("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]);var N=a(37326);let S=(0,i.A)("Sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]),M=(0,i.A)("Moon",[["path",{d:"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z",key:"a7tn18"}]]);var C=a(89654),_=a(68498),z=a(23176),P=a(62455);function q(e){let{onClose:t}=e,a=(0,c.useRouter)(),n=(0,l.useRef)(null),[s,i]=(0,l.useState)(""),[o,x]=(0,l.useState)(null),[m,p]=(0,l.useState)(!1),[f,y]=(0,l.useState)(0);(0,l.useEffect)(()=>{var e;null==(e=n.current)||e.focus()},[]),(0,l.useEffect)(()=>{if(!s.trim())return void x(null);let e=setTimeout(async()=>{p(!0);try{let e=await (0,z.$Q)(s);x(e),y(0)}catch(e){x(null)}finally{p(!1)}},300);return()=>clearTimeout(e)},[s]);let g=(0,l.useCallback)(()=>{if(!o)return[];let e=[];for(let t of o.receipts)e.push({type:"receipt",label:(0,P.Ct)(t.receipt_id),sublabel:"".concat(t.action," — ").concat(t.agent_id),href:"/receipts/".concat(t.receipt_id)});for(let t of o.agents)e.push({type:"agent",label:t,sublabel:"Agent",href:"/agents/".concat(t)});for(let t of o.chains)e.push({type:"chain",label:(0,P.Ct)(t),sublabel:"Chain",href:"/chains/".concat(t)});return e},[o])(),b=(0,l.useCallback)(e=>{"Escape"===e.key?t():"ArrowDown"===e.key?(e.preventDefault(),y(e=>Math.min(e+1,g.length-1))):"ArrowUp"===e.key?(e.preventDefault(),y(e=>Math.max(e-1,0))):"Enter"===e.key&&g[f]&&(a.push(g[f].href),t())},[g,f,a,t]);return(0,r.jsxs)("div",{className:"fixed inset-0 z-50 flex items-start justify-center pt-[20vh]",onClick:t,children:[(0,r.jsx)("div",{className:"fixed inset-0 bg-black/50"}),(0,r.jsxs)("div",{className:"relative w-full max-w-lg bg-bg-elevated border border-border rounded-xl shadow-2xl overflow-hidden",onClick:e=>e.stopPropagation(),children:[(0,r.jsxs)("div",{className:"flex items-center gap-3 px-4 py-3 border-b border-border",children:[(0,r.jsx)(A,{className:"w-5 h-5 text-text-muted shrink-0"}),(0,r.jsx)("input",{ref:n,type:"text",value:s,onChange:e=>i(e.target.value),onKeyDown:b,placeholder:"Search receipts, agents, chains...",className:"flex-1 bg-transparent text-sm text-text-primary placeholder:text-text-muted outline-none"}),(0,r.jsx)("button",{onClick:t,className:"p-1 text-text-muted hover:text-text-secondary",children:(0,r.jsx)(_.A,{className:"w-4 h-4"})})]}),m&&(0,r.jsx)("div",{className:"px-4 py-8 text-center text-sm text-text-muted",children:"Searching..."}),!m&&g.length>0&&(0,r.jsx)("div",{className:"max-h-80 overflow-y-auto py-2",children:g.map((e,n)=>{var s;let c="receipt"===(s=e.type)?d.A:"agent"===s?u.A:h.A;return(0,r.jsxs)("button",{className:(0,k.cn)("flex items-center gap-3 w-full px-4 py-2.5 text-left text-sm transition-colors",n===f?"bg-primary-subtle text-primary":"text-text-secondary hover:bg-bg-secondary"),onClick:()=>{a.push(e.href),t()},onMouseEnter:()=>y(n),children:[(0,r.jsx)(c,{className:"w-4 h-4 shrink-0"}),(0,r.jsxs)("div",{className:"min-w-0",children:[(0,r.jsx)("div",{className:"font-mono text-xs truncate",children:e.label}),(0,r.jsx)("div",{className:"text-xs text-text-muted truncate",children:e.sublabel})]})]},"".concat(e.type,"-").concat(e.label))})}),!m&&s.trim()&&0===g.length&&(0,r.jsx)("div",{className:"px-4 py-8 text-center text-sm text-text-muted",children:"No results found"}),!s.trim()&&(0,r.jsx)("div",{className:"px-4 py-8 text-center text-sm text-text-muted",children:"Type to search by receipt ID, agent, action, or chain"})]})]})}function E(){let[e,t]=(0,l.useState)(!1),[a,n]=(0,l.useState)(!1),{enabled:s,toggle:c}=(0,C.c)();(0,l.useEffect)(()=>{t(document.documentElement.classList.contains("dark"))},[]);let i=(0,l.useCallback)(()=>{let a=!e;t(a),document.documentElement.classList.toggle("dark",a);try{localStorage.setItem("theme",a?"dark":"light")}catch(e){}},[e]);return(0,l.useEffect)(()=>{function e(e){(e.metaKey||e.ctrlKey)&&"k"===e.key&&(e.preventDefault(),n(!0))}return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[]),(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("header",{className:"h-14 border-b border-border bg-bg-primary flex items-center justify-between px-4 md:px-6 sticky top-0 z-30",children:[(0,r.jsxs)("button",{onClick:()=>n(!0),className:"flex items-center gap-2 px-3 py-1.5 rounded-md border border-border bg-bg-secondary text-text-muted text-sm hover:border-text-muted transition-colors max-w-md w-full md:w-80",children:[(0,r.jsx)(A,{className:"w-4 h-4 shrink-0"}),(0,r.jsx)("span",{className:"truncate",children:"Search receipts, agents, chains..."}),(0,r.jsxs)("kbd",{className:"hidden md:inline-flex ml-auto text-xs border border-border rounded px-1.5 py-0.5 bg-bg-primary text-text-muted",children:["⌘","K"]})]}),(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("button",{onClick:c,className:(0,k.cn)("p-2 rounded-md transition-colors",s?"text-success hover:bg-success-subtle":"text-text-muted hover:bg-bg-tertiary"),title:s?"Auto-refresh on":"Auto-refresh off",children:(0,r.jsx)(N.A,{className:(0,k.cn)("w-4 h-4",s&&"animate-spin"),style:s?{animationDuration:"3s"}:void 0})}),(0,r.jsx)("button",{onClick:i,className:"p-2 rounded-md text-text-muted hover:bg-bg-tertiary transition-colors",title:e?"Switch to light mode":"Switch to dark mode",children:e?(0,r.jsx)(S,{className:"w-4 h-4"}):(0,r.jsx)(M,{className:"w-4 h-4"})})]})]}),a&&(0,r.jsx)(q,{onClose:()=>n(!1)})]})}let L=[{href:"/",label:"Overview",icon:o},{href:"/receipts",label:"Receipts",icon:d.A},{href:"/agents",label:"Agents",icon:u.A},{href:"/verify",label:"Verify",icon:f.A},{href:"/settings",label:"Settings",icon:y}];function T(){let e=(0,c.usePathname)();return(0,r.jsx)("nav",{className:"md:hidden fixed bottom-0 left-0 right-0 z-40 bg-bg-primary border-t border-border",children:(0,r.jsx)("div",{className:"flex items-center justify-around h-14",children:L.map(t=>{let a="/"===t.href?"/"===e:e.startsWith(t.href),n=t.icon;return(0,r.jsxs)(s(),{href:t.href,className:(0,k.cn)("flex flex-col items-center gap-0.5 px-3 py-1 text-xs transition-colors",a?"text-primary":"text-text-muted"),children:[(0,r.jsx)(n,{className:"w-5 h-5"}),(0,r.jsx)("span",{children:t.label})]},t.href)})})})}function R(e){let{children:t}=e;return(0,r.jsxs)("div",{className:"flex min-h-screen",children:[(0,r.jsx)(w,{}),(0,r.jsxs)("div",{className:"flex-1 flex flex-col min-w-0",children:[(0,r.jsx)(E,{}),(0,r.jsx)("main",{className:"flex-1 p-4 md:p-6 pb-20 md:pb-6",children:t})]}),(0,r.jsx)(T,{})]})}},49469:()=>{},51449:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(11063).A)("Link2",[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]])},57979:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(11063).A)("Database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]])},62455:(e,t,a)=>{"use strict";function r(e){let t="string"==typeof e?new Date(e):e,a=new Date().getTime()-t.getTime();if(a<0)return"just now";let r=Math.floor(a/1e3);if(r<60)return"".concat(r,"s ago");let n=Math.floor(r/60);if(n<60)return"".concat(n," min ago");let s=Math.floor(n/60);if(s<24)return"".concat(s," hr ago");let c=Math.floor(s/24);if(c<30)return"".concat(c,"d ago");let l=Math.floor(c/30);return"".concat(l,"mo ago")}function n(e){return null==e?"—":e<1e3?"".concat(e,"ms"):"".concat((e/1e3).toFixed(1),"s")}function s(e){return null==e?"—":0===e?"$0.00":e<.01?"$".concat(e.toFixed(4)):"$".concat(e.toFixed(2))}function c(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:12;return e.length<=t?e:"".concat(e.slice(0,t),"...")}function l(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:16;return e.length<=t?e:"".concat(e.slice(0,t),"...")}function i(e){return e.toLocaleString("en-US")}function o(e){return"".concat((100*e).toFixed(1),"%")}function d(e){return("string"==typeof e?new Date(e):e).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"2-digit",minute:"2-digit",second:"2-digit"})}a.d(t,{Ct:()=>c,Yq:()=>d,ZV:()=>i,a3:()=>n,fF:()=>r,l9:()=>o,lV:()=>l,vv:()=>s})},68498:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(11063).A)("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]])},81174:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(11063).A)("ShieldCheck",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]])},83067:(e,t,a)=>{"use strict";a.d(t,{A:()=>r});let r=(0,a(11063).A)("SquareCheckBig",[["path",{d:"M21 10.5V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.5",key:"1uzm8b"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]])},84109:(e,t,a)=>{"use strict";a.d(t,{Ez:()=>r,ZT:()=>s,av:()=>c,cZ:()=>n});let r={completed:{bg:"bg-success-subtle",text:"text-success",dot:"bg-success"},failed:{bg:"bg-danger-subtle",text:"text-danger",dot:"bg-danger"},pending:{bg:"bg-warning-subtle",text:"text-warning",dot:"bg-warning"},timeout:{bg:"bg-danger-subtle",text:"text-danger",dot:"bg-danger"}},n={max_latency_ms:"Max Latency",max_cost_usd:"Max Cost",min_confidence:"Min Confidence",required_fields:"Required Fields",status_must_be:"Status Must Be",output_schema:"Output Schema"},s={pass:{bg:"bg-success-subtle",text:"text-success"},fail:{bg:"bg-danger-subtle",text:"text-danger"},partial:{bg:"bg-warning-subtle",text:"text-warning"}},c=1e4},86810:(e,t,a)=>{Promise.resolve().then(a.t.bind(a,49469,23)),Promise.resolve().then(a.bind(a,47054))},89654:(e,t,a)=>{"use strict";a.d(t,{c:()=>l});var r=a(55271),n=a(84109);let s="agent-receipts-auto-refresh",c="agent-receipts-refresh-interval";function l(){let[e,t]=(0,r.useState)(!0),[a,l]=(0,r.useState)(n.av);return(0,r.useEffect)(()=>{let e=function(){try{var e;let t="false"!==localStorage.getItem(s),a=parseInt(null!=(e=localStorage.getItem(c))?e:"",10);return{enabled:t,interval:isNaN(a)?n.av:a}}catch(e){return{enabled:!0,interval:n.av}}}();t(e.enabled),l(e.interval)},[]),{enabled:e,interval:a,toggle:(0,r.useCallback)(()=>{t(e=>{let t=!e;try{localStorage.setItem(s,String(t))}catch(e){}return t})},[]),setInterval:(0,r.useCallback)(e=>{l(e);try{localStorage.setItem(c,String(e))}catch(e){}},[]),refreshInterval:e?a:0}}},96741:(e,t,a)=>{"use strict";a.d(t,{cn:()=>s});var r=a(55242),n=a(13065);function s(){for(var e=arguments.length,t=Array(e),a=0;a<e;a++)t[a]=arguments[a];return(0,n.QP)((0,r.$)(t))}}},e=>{e.O(0,[506,702,935,814,743,358],()=>e(e.s=86810)),_N_E=e.O()}]);
|
|
File without changes
|
|
File without changes
|