@nilsr0711/drydock 0.1.7 → 0.1.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.
Files changed (147) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-path-routes-manifest.json +1 -1
  3. package/.next/standalone/.next/build-manifest.json +2 -2
  4. package/.next/standalone/.next/prerender-manifest.json +3 -3
  5. package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  6. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  7. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  8. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/.next/standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  10. package/.next/standalone/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  11. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  12. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  13. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  14. package/.next/standalone/.next/server/app/_not-found/page.js +2 -2
  15. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  16. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  17. package/.next/standalone/.next/server/app/adrs/page.js +2 -2
  18. package/.next/standalone/.next/server/app/adrs/page.js.nft.json +1 -1
  19. package/.next/standalone/.next/server/app/adrs/page_client-reference-manifest.js +1 -1
  20. package/.next/standalone/.next/server/app/analytics/page.js +1 -1
  21. package/.next/standalone/.next/server/app/analytics/page.js.nft.json +1 -1
  22. package/.next/standalone/.next/server/app/analytics/page_client-reference-manifest.js +1 -1
  23. package/.next/standalone/.next/server/app/api/control/shutdown/route.js.nft.json +1 -1
  24. package/.next/standalone/.next/server/app/api/cost/export/route.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/api/health/route.js +1 -1
  26. package/.next/standalone/.next/server/app/api/health/route.js.nft.json +1 -1
  27. package/.next/standalone/.next/server/app/api/sse/dashboard/route.js +1 -1
  28. package/.next/standalone/.next/server/app/api/sse/dashboard/route.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/api/sse/jobs/[id]/route.js.nft.json +1 -1
  30. package/.next/standalone/.next/server/app/api/webhooks/[repoId]/route.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/costs/page.js +1 -1
  32. package/.next/standalone/.next/server/app/costs/page.js.nft.json +1 -1
  33. package/.next/standalone/.next/server/app/costs/page_client-reference-manifest.js +1 -1
  34. package/.next/standalone/.next/server/app/jobs/[id]/page.js +3 -3
  35. package/.next/standalone/.next/server/app/jobs/[id]/page.js.nft.json +1 -1
  36. package/.next/standalone/.next/server/app/jobs/[id]/page_client-reference-manifest.js +1 -1
  37. package/.next/standalone/.next/server/app/jobs/page.js +2 -2
  38. package/.next/standalone/.next/server/app/jobs/page.js.nft.json +1 -1
  39. package/.next/standalone/.next/server/app/jobs/page_client-reference-manifest.js +1 -1
  40. package/.next/standalone/.next/server/app/needs-human/page.js +2 -2
  41. package/.next/standalone/.next/server/app/needs-human/page.js.nft.json +1 -1
  42. package/.next/standalone/.next/server/app/needs-human/page_client-reference-manifest.js +1 -1
  43. package/.next/standalone/.next/server/app/page.js +2 -2
  44. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  45. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  46. package/.next/standalone/.next/server/app/prompts/page.js +2 -2
  47. package/.next/standalone/.next/server/app/prompts/page.js.nft.json +1 -1
  48. package/.next/standalone/.next/server/app/prompts/page_client-reference-manifest.js +1 -1
  49. package/.next/standalone/.next/server/app/repos/[id]/page.js +2 -2
  50. package/.next/standalone/.next/server/app/repos/[id]/page.js.nft.json +1 -1
  51. package/.next/standalone/.next/server/app/repos/[id]/page_client-reference-manifest.js +1 -1
  52. package/.next/standalone/.next/server/app/settings/page.js +2 -2
  53. package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
  54. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  55. package/.next/standalone/.next/server/app-paths-manifest.json +1 -1
  56. package/.next/standalone/.next/server/chunks/304.js +1 -1
  57. package/.next/standalone/.next/server/chunks/387.js +34 -0
  58. package/.next/standalone/.next/server/chunks/40.js +1 -1
  59. package/.next/standalone/.next/server/chunks/403.js +1 -0
  60. package/.next/standalone/.next/server/chunks/521.js +1 -1
  61. package/.next/standalone/.next/server/chunks/578.js +1 -1
  62. package/.next/standalone/.next/server/chunks/614.js +2 -2
  63. package/.next/standalone/.next/server/chunks/685.js +1 -0
  64. package/.next/standalone/.next/server/chunks/786.js +1 -1
  65. package/.next/standalone/.next/server/chunks/83.js +1 -1
  66. package/.next/standalone/.next/server/chunks/908.js +1 -1
  67. package/.next/standalone/.next/server/chunks/99.js +14 -11
  68. package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
  69. package/.next/standalone/.next/server/pages/500.html +1 -1
  70. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  71. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  72. package/.next/standalone/.next/static/chunks/1298-0d60333e56ac8b2c.js +1 -0
  73. package/.next/standalone/.next/static/chunks/3433-ece700d2e393c23b.js +1 -0
  74. package/.next/standalone/.next/static/chunks/3894-4f48e3cc5be58e10.js +1 -0
  75. package/.next/standalone/.next/static/chunks/5080-16cb43874ff5c536.js +1 -0
  76. package/.next/standalone/.next/static/chunks/{1642-a1ea35450c1b5c95.js → 8264-c27834f1552f983a.js} +1 -1
  77. package/.next/{static/chunks/4624-5e23973d35b58ca5.js → standalone/.next/static/chunks/8745-8b3833b3d2afa30c.js} +1 -1
  78. package/.next/standalone/.next/static/chunks/app/adrs/page-0c221fc18d1e89af.js +1 -0
  79. package/.next/standalone/.next/static/chunks/app/costs/{page-24d086bf67620e30.js → page-5d66d93815eea63a.js} +1 -1
  80. package/.next/standalone/.next/static/chunks/app/jobs/[id]/page-6ef8bc39b5181817.js +1 -0
  81. package/.next/standalone/.next/static/chunks/app/jobs/page-98215ec1497b829e.js +1 -0
  82. package/.next/standalone/.next/static/chunks/app/layout-402d4ab34259b89b.js +1 -0
  83. package/.next/standalone/.next/static/chunks/app/needs-human/page-b69ac22856c0a0b1.js +1 -0
  84. package/.next/standalone/.next/static/chunks/app/page-ccefa99d40734a8c.js +1 -0
  85. package/.next/standalone/.next/static/chunks/app/prompts/page-bcd1063eb5d64aa5.js +1 -0
  86. package/.next/standalone/.next/static/chunks/app/repos/[id]/page-2bd4b35a0b28042e.js +1 -0
  87. package/.next/standalone/.next/static/chunks/app/settings/page-13a04ecac139b74c.js +1 -0
  88. package/.next/standalone/.next/static/css/{bdce0893cf6b9cb9.css → 600a5b5311ad42be.css} +1 -1
  89. package/.next/standalone/drizzle/0034_human_instruction.sql +1 -0
  90. package/.next/standalone/drizzle/0035_agent_release.sql +4 -0
  91. package/.next/standalone/mcp-server.cjs +42934 -0
  92. package/.next/standalone/package.json +5 -3
  93. package/.next/static/chunks/1298-0d60333e56ac8b2c.js +1 -0
  94. package/.next/static/chunks/3433-ece700d2e393c23b.js +1 -0
  95. package/.next/static/chunks/3894-4f48e3cc5be58e10.js +1 -0
  96. package/.next/static/chunks/5080-16cb43874ff5c536.js +1 -0
  97. package/.next/static/chunks/{1642-a1ea35450c1b5c95.js → 8264-c27834f1552f983a.js} +1 -1
  98. package/.next/{standalone/.next/static/chunks/4624-5e23973d35b58ca5.js → static/chunks/8745-8b3833b3d2afa30c.js} +1 -1
  99. package/.next/static/chunks/app/adrs/page-0c221fc18d1e89af.js +1 -0
  100. package/.next/static/chunks/app/costs/{page-24d086bf67620e30.js → page-5d66d93815eea63a.js} +1 -1
  101. package/.next/static/chunks/app/jobs/[id]/page-6ef8bc39b5181817.js +1 -0
  102. package/.next/static/chunks/app/jobs/page-98215ec1497b829e.js +1 -0
  103. package/.next/static/chunks/app/layout-402d4ab34259b89b.js +1 -0
  104. package/.next/static/chunks/app/needs-human/page-b69ac22856c0a0b1.js +1 -0
  105. package/.next/static/chunks/app/page-ccefa99d40734a8c.js +1 -0
  106. package/.next/static/chunks/app/prompts/page-bcd1063eb5d64aa5.js +1 -0
  107. package/.next/static/chunks/app/repos/[id]/page-2bd4b35a0b28042e.js +1 -0
  108. package/.next/static/chunks/app/settings/page-13a04ecac139b74c.js +1 -0
  109. package/.next/static/css/{bdce0893cf6b9cb9.css → 600a5b5311ad42be.css} +1 -1
  110. package/README.md +60 -21
  111. package/bin/drydock.mjs +77 -2
  112. package/drizzle/0034_human_instruction.sql +1 -0
  113. package/drizzle/0035_agent_release.sql +4 -0
  114. package/package.json +5 -3
  115. package/.next/standalone/.next/server/chunks/382.js +0 -31
  116. package/.next/standalone/.next/server/chunks/468.js +0 -1
  117. package/.next/standalone/.next/server/chunks/822.js +0 -1
  118. package/.next/standalone/.next/static/chunks/1298-7ac9c00c70b27598.js +0 -1
  119. package/.next/standalone/.next/static/chunks/3433-719d6f55f39342d8.js +0 -1
  120. package/.next/standalone/.next/static/chunks/3894-c7b01dcfcf83d89b.js +0 -1
  121. package/.next/standalone/.next/static/chunks/7690-6dcfd9ae4cbf4e7d.js +0 -1
  122. package/.next/standalone/.next/static/chunks/app/adrs/page-1dfee698ea4c111f.js +0 -1
  123. package/.next/standalone/.next/static/chunks/app/jobs/[id]/page-8a9e4ed64c3303fe.js +0 -1
  124. package/.next/standalone/.next/static/chunks/app/jobs/page-4180ccc9acd3ddba.js +0 -1
  125. package/.next/standalone/.next/static/chunks/app/layout-189fa697d72d1fdf.js +0 -1
  126. package/.next/standalone/.next/static/chunks/app/needs-human/page-e458ffa78c06a6fa.js +0 -1
  127. package/.next/standalone/.next/static/chunks/app/page-add53cbf6d87a3f5.js +0 -1
  128. package/.next/standalone/.next/static/chunks/app/prompts/page-ff6cc30777232933.js +0 -1
  129. package/.next/standalone/.next/static/chunks/app/repos/[id]/page-cd11007841a5d73f.js +0 -1
  130. package/.next/standalone/.next/static/chunks/app/settings/page-280668b9c92e9b48.js +0 -1
  131. package/.next/static/chunks/1298-7ac9c00c70b27598.js +0 -1
  132. package/.next/static/chunks/3433-719d6f55f39342d8.js +0 -1
  133. package/.next/static/chunks/3894-c7b01dcfcf83d89b.js +0 -1
  134. package/.next/static/chunks/7690-6dcfd9ae4cbf4e7d.js +0 -1
  135. package/.next/static/chunks/app/adrs/page-1dfee698ea4c111f.js +0 -1
  136. package/.next/static/chunks/app/jobs/[id]/page-8a9e4ed64c3303fe.js +0 -1
  137. package/.next/static/chunks/app/jobs/page-4180ccc9acd3ddba.js +0 -1
  138. package/.next/static/chunks/app/layout-189fa697d72d1fdf.js +0 -1
  139. package/.next/static/chunks/app/needs-human/page-e458ffa78c06a6fa.js +0 -1
  140. package/.next/static/chunks/app/page-add53cbf6d87a3f5.js +0 -1
  141. package/.next/static/chunks/app/prompts/page-ff6cc30777232933.js +0 -1
  142. package/.next/static/chunks/app/repos/[id]/page-cd11007841a5d73f.js +0 -1
  143. package/.next/static/chunks/app/settings/page-280668b9c92e9b48.js +0 -1
  144. /package/.next/standalone/.next/static/{-sJQutzNDvUvcdmf3YlJA → qSEvPCWIslg9lcxt6XQhl}/_buildManifest.js +0 -0
  145. /package/.next/standalone/.next/static/{-sJQutzNDvUvcdmf3YlJA → qSEvPCWIslg9lcxt6XQhl}/_ssgManifest.js +0 -0
  146. /package/.next/static/{-sJQutzNDvUvcdmf3YlJA → qSEvPCWIslg9lcxt6XQhl}/_buildManifest.js +0 -0
  147. /package/.next/static/{-sJQutzNDvUvcdmf3YlJA → qSEvPCWIslg9lcxt6XQhl}/_ssgManifest.js +0 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nilsr0711/drydock",
3
- "version": "0.1.7",
3
+ "version": "0.1.8",
4
4
  "type": "module",
5
5
  "description": "Local-first tool that autonomously turns GitHub issues into pull requests via the Claude CLI, startable from the terminal with `npx @nilsr0711/drydock`.",
6
6
  "keywords": [
@@ -39,7 +39,7 @@
39
39
  ],
40
40
  "scripts": {
41
41
  "dev": "node scripts/dev.mjs",
42
- "build": "next build --webpack && node scripts/package-standalone.mjs",
42
+ "build": "next build --webpack && node scripts/package-standalone.mjs && node scripts/package-mcp.mjs",
43
43
  "start": "next start -H 127.0.0.1 -p 3737",
44
44
  "lint": "biome ci .",
45
45
  "format": "biome check --write .",
@@ -48,12 +48,13 @@
48
48
  "test:watch": "vitest",
49
49
  "test:daemon": "vitest run tests/control-shutdown.test.ts tests/cli-daemon.test.ts tests/daemon-lifecycle.integration.test.ts",
50
50
  "smoke": "node scripts/smoke-standalone.mjs",
51
+ "smoke:mcp": "node scripts/smoke-mcp.mjs",
51
52
  "db:generate": "drizzle-kit generate",
52
53
  "db:migrate": "tsx src/lib/db/migrate.ts",
53
54
  "backup": "tsx scripts/backup.ts",
54
55
  "db:prune": "tsx scripts/prune.ts",
55
56
  "mcp": "tsx scripts/drydock.ts mcp",
56
- "prepublishOnly": "pnpm test && pnpm build && pnpm smoke"
57
+ "prepublishOnly": "pnpm test && pnpm build && pnpm smoke && pnpm smoke:mcp"
57
58
  },
58
59
  "bin": {
59
60
  "drydock": "bin/drydock.mjs"
@@ -86,6 +87,7 @@
86
87
  "@types/react": "^19.2.15",
87
88
  "@types/react-dom": "^19.2.3",
88
89
  "drizzle-kit": "^0.31.10",
90
+ "esbuild": "^0.25.0",
89
91
  "jsdom": "^29.1.1",
90
92
  "tailwindcss": "^4.0.0",
91
93
  "tsx": "^4.19.2",
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1298],{598:(e,t,r)=>{r.d(t,{y:()=>o});var n=r(515),i=r(8108),s=r(5832);function o({size:e=16,className:t}){return(0,n.jsx)(i.A,{width:e,height:e,className:(0,s.cn)("dd-spin",t),"aria-hidden":!0})}},1059:(e,t,r)=>{r.d(t,{d:()=>s});var n=r(515),i=r(5832);function s({checked:e,onChange:t,disabled:r,id:o,"aria-label":a}){return(0,n.jsx)("button",{type:"button",role:"switch",id:o,"aria-checked":e,"aria-label":a,disabled:r,onClick:()=>!r&&t?.(!e),className:(0,i.cn)("relative inline-flex h-[22px] w-[38px] shrink-0 items-center rounded-full transition-colors focus-ring",e?"bg-primary":"bg-input",r&&"pointer-events-none opacity-50"),children:(0,n.jsx)("span",{className:(0,i.cn)("inline-block h-4 w-4 transform rounded-full bg-white shadow-sm transition-transform",e?"translate-x-[18px]":"translate-x-[3px]")})})}},1837:(e,t,r)=>{r.d(t,{L6:()=>n,UB:()=>i,VJ:()=>o,tT:()=>s});let n=[{id:"claude-opus-4-8",label:"Claude Opus 4.8",agent:"claude"},{id:"claude-fable-5",label:"Claude Fable 5",agent:"claude"},{id:"claude-opus-4-7",label:"Claude Opus 4.7",agent:"claude"},{id:"claude-sonnet-4-6",label:"Claude Sonnet 4.6",agent:"claude"},{id:"claude-sonnet-4-5",label:"Claude Sonnet 4.5",agent:"claude"},{id:"claude-haiku-4-5",label:"Claude Haiku 4.5",agent:"claude"},{id:"gpt-5-codex",label:"GPT-5 Codex",agent:"codex"},{id:"gpt-5",label:"GPT-5",agent:"codex"},{id:"gpt-5-mini",label:"GPT-5 Mini",agent:"codex"}],i="claude-opus-4-8";function s(e){return n.filter(t=>t.agent===e)}function o(e){return"openrouter"===e?"":s(e)[0]?.id??i}},2655:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(1330).A)("container",[["path",{d:"M22 7.7c0-.6-.4-1.2-.8-1.5l-6.3-3.9a1.72 1.72 0 0 0-1.7 0l-10.3 6c-.5.2-.9.8-.9 1.4v6.6c0 .5.4 1.2.8 1.5l6.3 3.9a1.72 1.72 0 0 0 1.7 0l10.3-6c.5-.3.9-1 .9-1.5Z",key:"1t2lqe"}],["path",{d:"M10 21.9V14L2.1 9.1",key:"o7czzq"}],["path",{d:"m10 14 11.9-6.9",key:"zm5e20"}],["path",{d:"M14 19.8v-8.1",key:"159ecu"}],["path",{d:"M18 17.5V9.4",key:"11uown"}]])},3798:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(1330).A)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]])},4148:(e,t,r)=>{r.d(t,{S:()=>o});var n=r(515),i=r(4266),s=r(5832);function o({checked:e,onChange:t,disabled:r,id:a,className:u,"aria-label":l}){return(0,n.jsx)("button",{type:"button",role:"checkbox",id:a,"aria-checked":e,"aria-label":l,disabled:r,onClick:()=>!r&&t?.(!e),className:(0,s.cn)("flex h-[18px] w-[18px] shrink-0 items-center justify-center rounded-[5px] border transition-colors focus-ring",e?"border-primary bg-primary text-primary-foreground":"border-input bg-background hover:border-muted-foreground",r&&"pointer-events-none opacity-50",u),children:e&&(0,n.jsx)(i.A,{className:"h-[13px] w-[13px]",strokeWidth:3})})}},4266:(e,t,r)=>{r.d(t,{A:()=>n});let n=(0,r(1330).A)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]])},4783:(e,t,r)=>{r.d(t,{F:()=>p,W:()=>h});var n=r(515),i=r(6512),s=r(8131),o=r(4877),a=r(5662),u=r(5529),l=r(9214),d=r(5832);let c={info:{cls:"border-primary/30 bg-primary/5 text-foreground",icon:i.A,ic:"text-primary"},success:{cls:"border-success-border bg-success-muted text-foreground",icon:s.A,ic:"text-success"},warning:{cls:"border-warning-border bg-warning-muted text-foreground",icon:o.A,ic:"text-warning"},destructive:{cls:"border-destructive/30 bg-destructive/5 text-foreground",icon:a.A,ic:"text-destructive"}};function p({tone:e="info",title:t,children:r,action:i,icon:s,className:o}){let a=c[e],u=s??a.icon;return(0,n.jsxs)("div",{className:(0,d.cn)("flex gap-3 rounded-xl border p-4",a.cls,o),role:"alert",children:[(0,n.jsx)(u,{className:(0,d.cn)("mt-0.5 h-[18px] w-[18px] shrink-0",a.ic)}),(0,n.jsxs)("div",{className:"min-w-0 flex-1",children:[t&&(0,n.jsx)("p",{className:"text-sm font-semibold",children:t}),r&&(0,n.jsx)("div",{className:"mt-0.5 text-pretty text-sm text-muted-foreground",children:r})]}),i&&(0,n.jsx)("div",{className:"shrink-0",children:i})]})}function h({title:e="Something went wrong",description:t,action:r,className:i}){return(0,n.jsx)(u.Zp,{className:(0,d.cn)("border-destructive/30",i),children:(0,n.jsx)(l.p,{icon:a.A,tone:"destructive",title:e,description:t,action:r})})}},7217:(e,t,r)=>{r.d(t,{D:()=>o});var n=r(515),i=r(5832);function s({htmlFor:e,className:t,children:r}){return(0,n.jsx)("label",{htmlFor:e,className:(0,i.cn)("text-sm font-medium text-foreground",t),children:r})}function o({label:e,hint:t,htmlFor:r,children:a,className:u}){return(0,n.jsxs)("div",{className:(0,i.cn)("flex flex-col gap-1.5",u),children:[e&&(0,n.jsx)(s,{htmlFor:r,children:e}),a,t&&(0,n.jsx)("p",{className:"text-xs leading-relaxed text-muted-foreground",children:t})]})}},7241:(e,t,r)=>{r.d(t,{a:()=>$});var n=r(515),i=r(8067);let s={"claude-fable-5":{inputPerMTok:10,outputPerMTok:50,cacheWritePerMTok:12.5,cacheReadPerMTok:1},"claude-opus-4-8":{inputPerMTok:5,outputPerMTok:25,cacheWritePerMTok:6.25,cacheReadPerMTok:.5},"claude-opus-4-7":{inputPerMTok:5,outputPerMTok:25,cacheWritePerMTok:6.25,cacheReadPerMTok:.5},"claude-sonnet-4-6":{inputPerMTok:3,outputPerMTok:15,cacheWritePerMTok:3.75,cacheReadPerMTok:.3},"claude-sonnet-4-5":{inputPerMTok:3,outputPerMTok:15,cacheWritePerMTok:3.75,cacheReadPerMTok:.3},"claude-haiku-4-5":{inputPerMTok:1,outputPerMTok:5,cacheWritePerMTok:1.25,cacheReadPerMTok:.1}},o=Object.values(s).reduce((e,t)=>t.outputPerMTok>e.outputPerMTok?t:e,{inputPerMTok:0,outputPerMTok:0,cacheWritePerMTok:0,cacheReadPerMTok:0});var a=r(4502);let u=a.Ik({input_tokens:a.ai().optional(),output_tokens:a.ai().optional(),cache_creation_input_tokens:a.ai().optional(),cache_read_input_tokens:a.ai().optional()}).passthrough(),l=a.Ik({type:a.eu("system"),subtype:a.Yj().optional(),session_id:a.Yj().optional(),model:a.Yj().optional()}),d=a.Ik({type:a.eu("assistant"),message:a.Ik({role:a.eu("assistant"),content:a.YO(a.g1(a.Yj(),a.L5())),usage:u.optional()})}),c=a.Ik({type:a.eu("user"),message:a.Ik({role:a.eu("user"),content:a.YO(a.g1(a.Yj(),a.L5()))})}),p=a.Ik({status:a.Yj().optional(),resetsAt:a.ai().optional(),rateLimitType:a.Yj().optional()}).passthrough(),h=a.Ik({type:a.eu("rate_limit_event"),rate_limit_info:p.optional(),session_id:a.Yj().optional()}),m=a.Ik({type:a.eu("result"),subtype:a.Yj().optional(),session_id:a.Yj().optional(),is_error:a.zM().optional(),result:a.Yj().optional(),total_cost_usd:a.ai().optional(),usage:u.optional()}),k=a.gM("type",[l,d,c,h,m]);function f(e){return e instanceof Error?e.message:String(e)}function g(e){let t=[];for(let r of e)"text"===r.type&&"string"==typeof r.text?t.push({kind:"text",text:r.text}):"tool_use"===r.type?t.push({kind:"tool_use",name:String(r.name??"unknown"),id:String(r.id??""),input:r.input}):"tool_result"===r.type&&t.push({kind:"tool_result",toolUseId:String(r.tool_use_id??""),isError:!!r.is_error});return t}class b{push(e){this.buffer+=e;let t=[],r=this.buffer.indexOf("\n");for(;-1!==r;){let e=this.buffer.slice(0,r);this.buffer=this.buffer.slice(r+1);let n=this.consume(e);n&&t.push(n),r=this.buffer.indexOf("\n")}return t}flush(){let e=this.buffer;this.buffer="";let t=this.consume(e);return t?[t]:[]}consume(e){let t;try{t=function(e){var t;let r,n=e.trim();if(!n)return null;let i=JSON.parse(n);return r={type:(t=k.parse(i)).type,chunks:[],inputTokens:0,outputTokens:0,cacheCreationInputTokens:0,cacheReadInputTokens:0,isError:!1,raw:t},"system"===t.type?(r.sessionId=t.session_id,r.model=t.model):"assistant"===t.type?(r.chunks=g(t.message.content),r.inputTokens=t.message.usage?.input_tokens??0,r.outputTokens=t.message.usage?.output_tokens??0,r.cacheCreationInputTokens=t.message.usage?.cache_creation_input_tokens??0,r.cacheReadInputTokens=t.message.usage?.cache_read_input_tokens??0):"user"===t.type?r.chunks=g(t.message.content):"rate_limit_event"===t.type?(r.sessionId=t.session_id,r.rateLimitInfo=t.rate_limit_info):(r.sessionId=t.session_id,r.resultText=t.result,r.costUsd=t.total_cost_usd,r.inputTokens=t.usage?.input_tokens??0,r.outputTokens=t.usage?.output_tokens??0,r.cacheCreationInputTokens=t.usage?.cache_creation_input_tokens??0,r.cacheReadInputTokens=t.usage?.cache_read_input_tokens??0,r.isError=t.is_error??!1),r}(e)}catch(t){return this.onParseError?.({line:e.trim(),message:f(t)}),null}return t?(t.sessionId&&(this.sessionId=t.sessionId),t.model&&(this.model=t.model),t.rateLimitInfo&&(this.rateLimit=t.rateLimitInfo),"result"===t.type?(t.inputTokens>0&&(this.totalInputTokens=t.inputTokens),t.outputTokens>0&&(this.totalOutputTokens=t.outputTokens),t.cacheCreationInputTokens>0&&(this.totalCacheCreationInputTokens=t.cacheCreationInputTokens),t.cacheReadInputTokens>0&&(this.totalCacheReadInputTokens=t.cacheReadInputTokens),void 0!==t.costUsd&&(this.costUsd=t.costUsd),void 0!==t.resultText&&(this.resultText=t.resultText),this.resultIsError=t.isError):(this.totalInputTokens+=t.inputTokens,this.totalOutputTokens+=t.outputTokens,this.totalCacheCreationInputTokens+=t.cacheCreationInputTokens,this.totalCacheReadInputTokens+=t.cacheReadInputTokens),t):null}constructor(){this.buffer="",this.totalInputTokens=0,this.totalOutputTokens=0,this.totalCacheCreationInputTokens=0,this.totalCacheReadInputTokens=0,this.costUsd=0,this.resultIsError=!1}}let x="[REDACTED]",_=[/\bgh[pousr]_[A-Za-z0-9]{36,}\b/g,/\bgithub_pat_[A-Za-z0-9_]{50,}\b/g,/\bglpat-[A-Za-z0-9_-]{20,}\b/g,/(Bearer )[A-Za-z0-9._~+/-]+=*/g,/(https?:\/\/)[^\s/@:"\\]+:[^\s/@"\\]+(?=@)/g,/(PRIVATE-TOKEN:\s*)[^\s"\\]+/gi,/(Basic )[A-Za-z0-9+/]+=*/g,/\b(?:AKIA|ASIA|AGPA|AIDA|ANPA|AROA)[0-9A-Z]{16}\b/g,/\bsk-ant-[A-Za-z0-9_-]{20,}\b/g,/\bsk-(?:proj-)?[A-Za-z0-9_-]{20,}\b/g,/\d{8,10}:[A-Za-z0-9_-]{35}\b/g];function T(e){let t=e;for(let e of _)t=t.replace(e,(e,t)=>"string"==typeof t?`${t}${x}`:x);return t}let y=[{kind:"auth",pattern:/invalid api key/i},{kind:"auth",pattern:/please run \/login/i},{kind:"auth",pattern:/authentication_error/i},{kind:"auth",pattern:/api error:?\s*401\b/i},{kind:"auth",pattern:/oauth token (?:has )?(?:expired|been revoked)/i},{kind:"billing",pattern:/credit balance is too low/i},{kind:"billing",pattern:/billing_error/i},{kind:"usage_limit",pattern:/usage limit reached/i},{kind:"usage_limit",pattern:/\b(?:\d+-hour|session|weekly) limit reached/i},{kind:"usage_limit",pattern:/limit will reset at/i},{kind:"rate_limit",pattern:/rate.?limit_error/i},{kind:"rate_limit",pattern:/api error:?\s*429\b/i},{kind:"rate_limit",pattern:/too many requests/i},{kind:"rate_limit",pattern:/\brate.?limit(?:ed)?\b.{0,60}\b(?:exceeded|reached|hit)\b/i},{kind:"rate_limit",pattern:/\b(?:exceeded|reached|hit)\b.{0,60}\brate.?limit/i},{kind:"overloaded",pattern:/overloaded_error/i},{kind:"overloaded",pattern:/api error:?\s*529\b/i}],v=/limit reached\|(\d{9,12})\b/i,M=/retry[- ]?after[:\s]+(\d+)\s*(?:s|sec|second)/i;function I(e){return e>0?["--max-turns",String(e)]:[]}let j=[{kind:"auth",pattern:/unexpected status 401\b/i},{kind:"auth",pattern:/\b401 unauthorized\b/i},{kind:"auth",pattern:/access token could not be refreshed/i},{kind:"auth",pattern:/please log out and sign in again/i},{kind:"auth",pattern:/\bnot logged in\b/i},{kind:"auth",pattern:/(?:chatgpt|api key) login is required/i},{kind:"auth",pattern:/missing environment variable.{0,5}OPENAI_API_KEY/i},{kind:"auth",pattern:/re-?run `?codex login`?/i},{kind:"billing",pattern:/quota exceeded\. check your plan and billing/i},{kind:"billing",pattern:/insufficient_quota/i},{kind:"billing",pattern:/exceeded your current quota/i},{kind:"billing",pattern:/\bout of credits\b/i},{kind:"billing",pattern:/\bspend cap\b/i},{kind:"billing",pattern:/to use codex with your chatgpt plan/i},{kind:"usage_limit",pattern:/you.?ve hit your usage limit/i},{kind:"usage_limit",pattern:/usage_limit_reached/i},{kind:"rate_limit",pattern:/rate.?limit_exceeded/i},{kind:"rate_limit",pattern:/rate limit reached for/i},{kind:"rate_limit",pattern:/last status:?\s*429\b/i},{kind:"rate_limit",pattern:/unexpected status 429\b/i},{kind:"rate_limit",pattern:/too many requests/i},{kind:"overloaded",pattern:/selected model is at capacity/i},{kind:"overloaded",pattern:/currently experiencing high demand/i},{kind:"overloaded",pattern:/server_is_overloaded/i},{kind:"overloaded",pattern:/last status:?\s*5\d\d\b/i},{kind:"overloaded",pattern:/unexpected status 5\d\d\b/i}],P=/try again in ([\d.]+)\s*s(?:ec(?:ond)?s?)?\b/i,w="gpt-5-codex",A={"gpt-5-codex":{inputPerMTok:1.25,outputPerMTok:10,cacheWritePerMTok:0,cacheReadPerMTok:0},"gpt-5":{inputPerMTok:1.25,outputPerMTok:10,cacheWritePerMTok:0,cacheReadPerMTok:0},"gpt-5-mini":{inputPerMTok:.25,outputPerMTok:2,cacheWritePerMTok:0,cacheReadPerMTok:0}},C=Object.values(A).reduce((e,t)=>t.outputPerMTok>e.outputPerMTok?t:e,{inputPerMTok:0,outputPerMTok:0,cacheWritePerMTok:0,cacheReadPerMTok:0}),N=a.Ik({input_tokens:a.ai().optional(),cached_input_tokens:a.ai().optional(),output_tokens:a.ai().optional(),reasoning_output_tokens:a.ai().optional()}).passthrough(),R=a.Ik({used_percent:a.ai().optional(),window_minutes:a.ai().optional(),resets_in_seconds:a.ai().optional()}).passthrough(),S=a.Ik({primary:R.nullish(),secondary:R.nullish()}).passthrough(),E=a.Ik({id:a.Yj().optional(),item_type:a.Yj().optional(),text:a.Yj().optional(),command:a.Yj().optional(),exit_code:a.ai().optional(),server:a.Yj().optional(),tool:a.Yj().optional()}).passthrough(),O=a.Ik({type:a.Yj(),thread_id:a.Yj().optional(),usage:N.optional(),rate_limits:S.nullish(),item:E.optional(),error:a.Ik({message:a.Yj().optional()}).passthrough().optional(),message:a.Yj().optional()}).passthrough();function Y(e){if(e&&"number"==typeof e.used_percent)return{usedPercent:e.used_percent,windowMinutes:e.window_minutes,resetsInSeconds:e.resets_in_seconds}}class L{push(e){this.buffer+=e;let t=[],r=this.buffer.indexOf("\n");for(;-1!==r;){let e=this.buffer.slice(0,r);this.buffer=this.buffer.slice(r+1);let n=this.consume(e);n&&t.push(n),r=this.buffer.indexOf("\n")}return t}flush(){let e=this.buffer;this.buffer="";let t=this.consume(e);return t?[t]:[]}consume(e){let t;try{t=function(e){let t=e.trim();if(!t)return null;let r=JSON.parse(t);return O.parse(r)}(e)}catch(t){return this.onParseError?.({line:e.trim(),message:f(t)}),null}if(!t)return null;let r=function(e){let t=S.nullish().safeParse(e.rate_limits);if(!t.success||!t.data)return;let r=Y(t.data.primary),n=Y(t.data.secondary);if(r||n)return{primary:r,secondary:n}}(t);if(r&&(this.rateLimits=r),"turn.failed"===t.type||"error"===t.type){this.resultIsError=!0;let e=t.error?.message??t.message;e&&(this.resultText=e)}else"turn.completed"===t.type&&(this.resultIsError=!1,this.resultText=void 0);let n=function(e){let t={type:"assistant",chunks:[],inputTokens:0,outputTokens:0,cacheCreationInputTokens:0,cacheReadInputTokens:0,isError:!1,raw:e};if("thread.started"===e.type)return{...t,type:"system",sessionId:e.thread_id};if("item.completed"===e.type&&e.item)return{...t,type:"assistant",chunks:function(e){let t=e.id??"";switch(e.item_type){case"assistant_message":case"reasoning":return e.text?[{kind:"text",text:e.text}]:[];case"command_execution":return[{kind:"tool_use",name:"command",id:t,input:{command:e.command,exit_code:e.exit_code}}];case"file_change":return[{kind:"tool_use",name:"edit",id:t,input:e}];case"mcp_tool_call":return[{kind:"tool_use",name:`${e.server??"mcp"}/${e.tool??"tool"}`,id:t,input:e}];default:return[]}}(e.item)};if("turn.completed"===e.type){let r=e.usage;return{...t,type:"result",inputTokens:r?.input_tokens??0,outputTokens:(r?.output_tokens??0)+(r?.reasoning_output_tokens??0)}}return"turn.failed"===e.type||"error"===e.type?{...t,type:"result",isError:!0}:null}(t);return n?(n.sessionId&&(this.sessionId=n.sessionId),this.totalInputTokens+=n.inputTokens,this.totalOutputTokens+=n.outputTokens,n):null}constructor(){this.buffer="",this.totalInputTokens=0,this.totalOutputTokens=0,this.totalCacheCreationInputTokens=0,this.totalCacheReadInputTokens=0,this.costUsd=0}}let W=/openrouter http (\d{3})/i,z=/retry[- ]?after[:\s]+(\d+)\s*(?:s\b|sec|second)/i,U="openrouter is an HTTP provider; it has no CLI surface (dispatch on provider.kind)",Z={claude:{id:"claude",label:"Claude Code",defaultCommand:"claude",supportsResume:!0,resumeModel:"claude-haiku-4-5",resumeMaxTurns:15,defaultModel:"claude-opus-4-8",buildStartArgs:({prompt:e,model:t,maxTurns:r,bypassPermissions:n})=>["-p",e,...I(r),...n?["--dangerously-skip-permissions"]:["--permission-mode","acceptEdits"],"--model",t,"--output-format","stream-json","--verbose"],buildResumeArgs:({prompt:e,sessionId:t,model:r,maxTurns:n,bypassPermissions:i})=>["-p",e,"--resume",t,...I(n),...i?["--dangerously-skip-permissions"]:[],"--model",r,"--output-format","stream-json","--verbose"],buildOneShotArgs:({prompt:e,model:t})=>["-p",e,"--model",t],buildStreamOneShotArgs:({prompt:e,model:t})=>["-p",e,"--model",t,"--output-format","stream-json","--verbose"],createParser:()=>new b,classifyFailure:function(e){var t;if(0===e.exitCode&&!e.resultIsError)return;let r=[e.resultText,e.stderr].filter(Boolean).join("\n");if(!r.trim())return;let n=y.find(e=>e.pattern.test(r));if(!n)return;let i={agent:"claude",kind:n.kind,rawSnippet:(t=n.pattern,T((r.split("\n").find(e=>t.test(e))??r).trim()).slice(0,300))};if("usage_limit"===n.kind){let e=r.match(v)?.[1];e&&(i.resetAt=Number(e))}if("rate_limit"===n.kind||"overloaded"===n.kind){let e=r.match(M)?.[1];e&&(i.retryAfterMs=1e3*Number(e))}return i},estimateCost:function(e,t,r,n=0,i=0){let a=function(e){if(!e)return o;let t=s[e];return t||(console.warn(`[drydock] Unknown model id "${e}" — using max-priced fallback to avoid under-counting cost`),o)}(e);return t/1e6*a.inputPerMTok+r/1e6*a.outputPerMTok+n/1e6*a.cacheWritePerMTok+i/1e6*a.cacheReadPerMTok}},codex:{id:"codex",label:"Codex CLI",defaultCommand:"codex",supportsResume:!0,resumeModel:w,resumeMaxTurns:15,defaultModel:w,buildStartArgs:({prompt:e,model:t})=>["exec","--json","--sandbox","workspace-write","--model",t,e],buildResumeArgs:({prompt:e,sessionId:t,model:r})=>["exec","resume",t,"--json","--sandbox","workspace-write","--model",r,e],buildOneShotArgs:({prompt:e,model:t})=>["exec","--model",t,e],buildStreamOneShotArgs:()=>null,createParser:()=>new L,classifyFailure:function(e){var t;if(0===e.exitCode&&!e.resultIsError)return;let r=[e.resultText,e.stderr].filter(Boolean).join("\n");if(!r.trim())return;let n=j.find(e=>e.pattern.test(r));if(!n)return;let i={agent:"codex",kind:n.kind,rawSnippet:(t=n.pattern,T((r.split("\n").find(e=>t.test(e))??r).trim()).slice(0,300))};if("rate_limit"===n.kind||"overloaded"===n.kind){let e=r.match(P)?.[1],t=e?Math.ceil(1e3*Number(e)):NaN;Number.isFinite(t)&&t>=0&&(i.retryAfterMs=t)}return i},captureUsage:e=>e instanceof L?e.rateLimits:void 0,estimateCost:function(e,t,r){let n=function(e){if(!e)return C;let t=A[e];return t||(console.warn(`[drydock] Unknown codex model id "${e}" — using max-priced fallback to avoid under-counting cost`),C)}(e);return t/1e6*n.inputPerMTok+r/1e6*n.outputPerMTok}},openrouter:{id:"openrouter",kind:"http",label:"OpenRouter",defaultCommand:"",supportsResume:!1,resumeModel:"",resumeMaxTurns:20,defaultModel:"",buildStartArgs(){throw Error(U)},buildResumeArgs:()=>null,buildOneShotArgs(){throw Error(U)},buildStreamOneShotArgs:()=>null,createParser(){throw Error(U)},classifyFailure:function(e){var t;if(0===e.exitCode&&!e.resultIsError)return;let r=[e.resultText,e.stderr].filter(Boolean).join("\n"),n=r.match(W)?.[1];if(!n)return;let i=(t=Number(n),401===t||403===t?"auth":402===t?"billing":429===t?/\b(?:free|daily|quota)\b/i.test(r)?"usage_limit":"rate_limit":408===t||t>=500&&t<600?"overloaded":void 0);if(!i)return;let s={agent:"openrouter",kind:i,rawSnippet:T((r.split("\n").find(e=>W.test(e))??r).trim()).slice(0,300)},o=r.match(z)?.[1];return o&&("rate_limit"===i||"overloaded"===i)&&(s.retryAfterMs=1e3*Number(o)),s},estimateCost:()=>0}},q=["claude","codex","openrouter"].map(e=>Z[e]),F=["claude","codex"];function $({value:e,onChange:t,id:r,className:s,agents:o=F}){let a=q.filter(e=>o.includes(e.id));return(0,n.jsx)(i.l,{id:r,value:e,onChange:e=>t(e.target.value),className:s,children:a.map(e=>(0,n.jsx)("option",{value:e.id,children:e.label},e.id))})}},7405:(e,t,r)=>{r.d(t,{p:()=>o});var n=r(515),i=r(1171),s=r(5832);let o=i.forwardRef(({className:e,...t},r)=>(0,n.jsx)("input",{ref:r,className:(0,s.cn)("h-9 w-full rounded-lg border border-input bg-background px-3 text-sm text-foreground","placeholder:text-muted-foreground transition focus-ring","disabled:cursor-not-allowed disabled:opacity-50",e),...t}));o.displayName="Input"},8067:(e,t,r)=>{r.d(t,{l:()=>a});var n=r(515),i=r(3798),s=r(1171),o=r(5832);let a=s.forwardRef(({className:e,children:t,...r},s)=>(0,n.jsxs)("div",{className:"relative",children:[(0,n.jsx)("select",{ref:s,className:(0,o.cn)("h-9 w-full appearance-none cursor-pointer rounded-lg border border-input bg-background pl-3 pr-9 text-sm text-foreground","transition focus-ring","disabled:cursor-not-allowed disabled:opacity-50",e),...r,children:t}),(0,n.jsx)(i.A,{className:"pointer-events-none absolute right-2.5 top-1/2 h-[15px] w-[15px] -translate-y-1/2 text-muted-foreground"})]}));a.displayName="Select"},9214:(e,t,r)=>{r.d(t,{p:()=>o});var n=r(515),i=r(5832);let s={neutral:"bg-secondary text-muted-foreground",primary:"bg-primary/10 text-primary",success:"bg-success-muted text-success",warning:"bg-warning-muted text-warning",destructive:"bg-destructive/10 text-destructive"};function o({icon:e,tone:t="neutral",title:r,description:a,action:u,secondary:l,className:d,compact:c}){return(0,n.jsxs)("div",{className:(0,i.cn)("flex flex-col items-center justify-center text-center",c?"py-10":"py-16",d),children:[e&&(0,n.jsx)("div",{className:(0,i.cn)("flex items-center justify-center rounded-2xl",c?"h-12 w-12":"h-16 w-16",s[t]),children:(0,n.jsx)(e,{className:c?"h-[22px] w-[22px]":"h-7 w-7"})}),(0,n.jsx)("h3",{className:"mt-4 text-base font-semibold",children:r}),a&&(0,n.jsx)("p",{className:"mt-1 max-w-sm text-pretty text-sm text-muted-foreground",children:a}),(u||l)&&(0,n.jsxs)("div",{className:"mt-5 flex items-center gap-2",children:[u,l]})]})}},9754:(e,t,r)=>{r.d(t,{o:()=>o});var n=r(515),i=r(8067),s=r(1837);function o({value:e,onChange:t,agent:r,openrouterModels:a=[],id:u,className:l}){if("openrouter"===r)return(0,n.jsxs)(i.l,{id:u,value:e,onChange:e=>t(e.target.value),className:l,children:[0===a.length&&(0,n.jsx)("option",{value:"",disabled:!0,children:"No synced models — refresh the catalog in Settings"}),a.length>0&&""!==e&&!a.some(t=>t.id===e)&&(0,n.jsxs)("option",{value:e,disabled:!0,children:[e," (no longer in catalog)"]}),a.map(e=>(0,n.jsx)("option",{value:e.id,children:e.isFree?`${e.label} (free)`:e.label},e.id))]});let d=r?(0,s.tT)(r):s.L6;return(0,n.jsx)(i.l,{id:u,value:e,onChange:e=>t(e.target.value),className:l,children:d.map(e=>(0,n.jsx)("option",{value:e.id,children:e.label},e.id))})}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3433],{395:(e,t,r)=>{r.d(t,{$:()=>o});var n=r(515),a=r(1171),s=r(5832);let i={default:"bg-primary text-primary-foreground shadow-sm hover-elevate active-elevate-2",secondary:"bg-secondary text-secondary-foreground hover-elevate active-elevate-2",outline:"border border-border bg-transparent shadow-sm hover-elevate active-elevate-2",destructive:"bg-destructive text-destructive-foreground shadow-sm hover-elevate active-elevate-2",ghost:"border border-transparent hover-elevate active-elevate-2",success:"bg-success text-white shadow-sm hover-elevate active-elevate-2"},l={default:"h-9 px-4 py-2 rounded-lg text-sm",sm:"h-8 px-3 rounded-md text-xs",lg:"h-10 px-6 rounded-lg text-sm",icon:"h-9 w-9 rounded-lg","icon-sm":"h-8 w-8 rounded-md"},o=a.forwardRef(({className:e,variant:t="default",size:r="default",type:a="button",...o},d)=>(0,n.jsx)("button",{ref:d,type:a,className:(0,s.cn)("inline-flex items-center justify-center gap-2 whitespace-nowrap font-medium transition-colors focus-ring","disabled:pointer-events-none disabled:opacity-50","[&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",i[t],l[r],e),...o}));o.displayName="Button"},5529:(e,t,r)=>{r.d(t,{Wu:()=>d,ZB:()=>o,Zp:()=>i,aR:()=>l});var n=r(515),a=r(5832);let s={none:"",sm:"p-4",default:"p-5",lg:"p-6"};function i({className:e,pad:t,hover:r,...l}){return(0,n.jsx)("div",{className:(0,a.cn)("rounded-xl border border-card-border bg-card text-card-foreground shadow-sm",r&&"hover-elevate transition-shadow hover:shadow-md",t&&s[t],e),...l})}function l({className:e,...t}){return(0,n.jsx)("div",{className:(0,a.cn)("flex flex-col gap-1.5 p-5",e),...t})}function o({className:e,...t}){return(0,n.jsx)("h3",{className:(0,a.cn)("text-base font-semibold leading-none tracking-tight",e),...t})}function d({className:e,...t}){return(0,n.jsx)("div",{className:(0,a.cn)("p-5 pt-0",e),...t})}},5832:(e,t,r)=>{function n(...e){return e.filter(Boolean).join(" ")}function a(e){if(!e)return"no activity";let t=Math.floor(Date.now()/1e3)-e;return t<60?"just now":t<3600?`${Math.floor(t/60)}m ago`:t<86400?`${Math.floor(t/3600)}h ago`:t<604800?`${Math.floor(t/86400)}d ago`:new Date(1e3*e).toLocaleDateString()}function s(e){if(e>=3600){let t=Math.floor(e/3600),r=Math.round(e%3600/60);return r>0?`${t}h ${r}m`:`${t}h`}return e>=60?`${Math.floor(e/60)}m ${e%60}s`:`${e}s`}function i(e,t=2){return`$${e.toFixed(t)}`}r.d(t,{KW:()=>a,UK:()=>i,a3:()=>s,cn:()=>n})},6644:(e,t,r)=>{r.d(t,{E:()=>o});var n=r(515),a=r(5832);let s={neutral:"border-border bg-secondary text-secondary-foreground",primary:"border-primary/40 bg-primary/10 text-primary",success:"border-success-border bg-success-muted text-success-foreground",warning:"border-warning-border bg-warning-muted text-warning-foreground",destructive:"border-destructive/40 bg-destructive/10 text-destructive"},i={queued:"neutral",working:"primary",ci_running:"warning",ci_failed:"destructive",retrying:"warning",waiting_limit:"warning",merged:"success",released:"success",needs_human:"destructive",aborted:"neutral",interrupted:"warning",open:"neutral",triaged:"primary",releasing:"primary"},l=new Set(["working","ci_running","retrying","releasing"]);function o({className:e,status:t,tone:r,children:d,...c}){let u=r??(t?i[t]??"neutral":"neutral"),m=void 0!==t&&l.has(t);return(0,n.jsxs)("span",{className:(0,a.cn)("inline-flex items-center gap-1.5 whitespace-nowrap rounded-md border px-2 py-0.5 text-[11px] font-semibold leading-4",s[u],e),...c,children:[m&&(0,n.jsxs)("span",{className:"relative flex h-1.5 w-1.5",children:[(0,n.jsx)("span",{className:"absolute inline-flex h-full w-full animate-ping rounded-full bg-current opacity-60"}),(0,n.jsx)("span",{className:"relative inline-flex h-1.5 w-1.5 rounded-full bg-current"})]}),d??t?.replace(/_/g," ")]})}},6845:(e,t,r)=>{r.d(t,{p:()=>s});var n=r(1171);let a=()=>()=>{};function s(){return(0,n.useSyncExternalStore)(a,()=>!0,()=>!1)}},7901:(e,t,r)=>{r.d(t,{l:()=>c});var n=r(515),a=r(5378),s=r(1171);function i(e){return Array.from(e.querySelectorAll('a[href]:not([tabindex="-1"]), button:not([disabled]):not([tabindex="-1"]), input:not([disabled]):not([tabindex="-1"]), select:not([disabled]):not([tabindex="-1"]), textarea:not([disabled]):not([tabindex="-1"]), [tabindex]:not([tabindex="-1"])'))}var l=r(5832);let o={neutral:"bg-secondary text-muted-foreground",primary:"bg-primary/10 text-primary",success:"bg-success-muted text-success",warning:"bg-warning-muted text-warning",destructive:"bg-destructive/10 text-destructive"},d={sm:"max-w-sm",md:"max-w-md",lg:"max-w-lg",xl:"max-w-2xl"};function c({open:e,onClose:t,onOpenChange:r,labelledById:u,title:m,description:f,icon:x,tone:v="primary",footer:p,size:h="xl",className:g,children:b}){let w=(0,s.useRef)(null),y=(0,s.useRef)(null),[j,N]=(0,s.useState)(e),[k,C]=(0,s.useState)(!1),$=(0,s.useId)(),D=()=>{r?r(!1):t?.()},E=(0,s.useRef)(D);if(E.current=D,(0,s.useEffect)(()=>{let t;return e?(N(!0),t=setTimeout(()=>C(!0),10)):(C(!1),t=setTimeout(()=>N(!1),180)),()=>clearTimeout(t)},[e]),(0,s.useEffect)(()=>{if(!e||!j)return;y.current=document.activeElement;let t=w.current;function r(e){if("Escape"===e.key){e.preventDefault(),E.current();return}let t=w.current;if("Tab"===e.key&&t){var r,n;let a,s,l;e.preventDefault();let o=i(t);if(0===o.length)return;(r=document.activeElement,n=e.shiftKey,a=o.indexOf(r),s=o[o.length-1],l=o[0],-1===a?n?s:l:o[((n?a-1:a+1)+o.length)%o.length]).focus()}}return t&&(i(t)[0]??t).focus(),document.addEventListener("keydown",r),()=>{document.removeEventListener("keydown",r),y.current instanceof HTMLElement&&y.current.focus(),y.current=null}},[e,j]),!j)return null;let _=null!=m?$:void 0,M=u??_,A=null!=m||null!=f||null!=x;return(0,n.jsxs)("div",{className:"fixed inset-0 z-50 flex items-start justify-center overflow-y-auto p-4 sm:p-8",children:[(0,n.jsx)("div",{className:(0,l.cn)("fixed inset-0 bg-black/50 backdrop-blur-sm transition-opacity duration-200",k?"opacity-100":"opacity-0"),onMouseDown:D}),(0,n.jsx)("div",{ref:w,role:"dialog","aria-modal":"true","aria-labelledby":M,tabIndex:-1,className:(0,l.cn)("relative mt-8 w-full rounded-xl border border-card-border bg-card text-card-foreground shadow-2xl outline-none","transition-all duration-200",k?"scale-100 opacity-100 translate-y-0":"scale-[0.97] opacity-0 translate-y-2",d[h],g),onMouseDown:e=>e.stopPropagation(),children:A?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"flex items-start gap-3 p-5",children:[x&&(0,n.jsx)("span",{className:(0,l.cn)("flex h-9 w-9 shrink-0 items-center justify-center rounded-lg",o[v]),children:(0,n.jsx)(x,{className:"h-[18px] w-[18px]"})}),(0,n.jsxs)("div",{className:"min-w-0 flex-1",children:[null!=m&&(0,n.jsx)("h2",{id:_,className:"text-base font-semibold tracking-tight",children:m}),null!=f&&(0,n.jsx)("p",{className:"mt-1 text-sm text-muted-foreground text-pretty",children:f})]}),(0,n.jsx)("button",{type:"button","aria-label":"Close",onClick:D,className:"-mr-1 -mt-1 shrink-0 rounded-md p-1 text-muted-foreground hover-elevate",children:(0,n.jsx)(a.A,{className:"h-4 w-4"})})]}),null!=b&&(0,n.jsx)("div",{className:"px-5 pb-2",children:b}),null!=p&&(0,n.jsx)("div",{className:"flex justify-end gap-2 p-5 pt-3",children:p})]}):(0,n.jsxs)("div",{className:"p-5",children:[b,null!=p&&(0,n.jsx)("div",{className:"mt-4 flex justify-end gap-2",children:p})]})})]})}},8479:(e,t,r)=>{r.d(t,{t:()=>m,d:()=>f});var n=r(515),a=r(8131),s=r(6003),i=r(6512),l=r(5378),o=r(1171);function d(e){return"error"===e?"assertive":"polite"}var c=r(5832);let u=(0,o.createContext)(null);function m({children:e}){let[t,r]=(0,o.useState)([]),a=(0,o.useCallback)(e=>{r(t=>t.filter(t=>t.id!==e))},[]),s=(0,o.useCallback)(e=>{let t=Date.now()+Math.random(),n={id:t,title:e.title,description:e.description,variant:e.variant??"info",href:e.href};r(e=>[...e,n]),setTimeout(()=>a(t),5e3)},[a]),i=(0,o.useMemo)(()=>({toast:s,success:(e,t)=>s({title:e,description:t,variant:"success"}),error:(e,t)=>s({title:e,description:t,variant:"error"}),info:(e,t)=>s({title:e,description:t,variant:"info"})}),[s]);return(0,n.jsxs)(u.Provider,{value:i,children:[e,(0,n.jsx)(h,{toasts:t,onDismiss:a})]})}function f(){let e=(0,o.useContext)(u);if(!e)throw Error("useToast must be used within a ToastProvider");return e}let x={success:a.A,error:s.A,info:i.A},v={success:{icon:"text-success",bar:"bg-success"},error:{icon:"text-destructive",bar:"bg-destructive"},info:{icon:"text-primary",bar:"bg-primary"}};function p({toast:e,onDismiss:t}){let r=x[e.variant],a=v[e.variant];return(0,n.jsxs)("div",{className:"dd-toast dd-toast-in pointer-events-auto relative flex items-start gap-3 overflow-hidden rounded-xl border border-card-border bg-card p-3.5 shadow-lg",children:[(0,n.jsx)(r,{className:(0,c.cn)("mt-0.5 h-[18px] w-[18px] shrink-0",a.icon)}),(0,n.jsxs)("div",{className:"min-w-0 flex-1",children:[e.href?(0,n.jsx)("a",{href:e.href,className:"text-sm font-medium underline-offset-2 hover:underline",children:e.title}):(0,n.jsx)("p",{className:"text-sm font-medium",children:e.title}),e.description&&(0,n.jsx)("p",{className:"mt-0.5 text-xs text-muted-foreground",children:e.description})]}),(0,n.jsx)("button",{type:"button","aria-label":"Dismiss notification",onClick:()=>t(e.id),className:"shrink-0 rounded-md p-0.5 text-muted-foreground hover-elevate",children:(0,n.jsx)(l.A,{className:"h-3.5 w-3.5"})}),(0,n.jsx)("span",{className:(0,c.cn)("dd-toast-progress absolute bottom-0 left-0 h-0.5 w-full",a.bar),style:{animationDuration:"5000ms"}})]})}function h({toasts:e,onDismiss:t}){let r=e.filter(e=>"assertive"===d(e.variant)),a=e.filter(e=>"polite"===d(e.variant));return(0,n.jsxs)("div",{className:"pointer-events-none fixed bottom-4 right-4 z-[60] flex w-full max-w-sm flex-col gap-2",children:[(0,n.jsx)("div",{role:"alert","aria-live":"assertive","aria-atomic":"false",className:"flex flex-col gap-2",children:r.map(e=>(0,n.jsx)(p,{toast:e,onDismiss:t},e.id))}),(0,n.jsx)("div",{"aria-live":"polite","aria-atomic":"false",className:"flex flex-col gap-2",children:a.map(e=>(0,n.jsx)(p,{toast:e,onDismiss:t},e.id))})]})}},9694:(e,t,r)=>{r.d(t,{T:()=>o});var n=r(515),a=r(4877),s=r(6512),i=r(395),l=r(7901);function o({open:e,onOpenChange:t,onConfirm:r,title:d,description:c,confirmLabel:u="Confirm",cancelLabel:m="Cancel",variant:f="default",pending:x=!1,icon:v}){let p="destructive"===f,h=v??(p?a.A:s.A);return(0,n.jsx)(l.l,{open:e,onOpenChange:t,title:d,description:c,icon:h,tone:p?"destructive":"primary",size:"sm",footer:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(i.$,{variant:"outline",size:"sm",disabled:x,onClick:()=>t(!1),children:m}),(0,n.jsx)(i.$,{variant:p?"destructive":"default",size:"sm",disabled:x,onClick:()=>{r(),t(!1)},children:u})]})})}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3894],{9:(e,t,s)=>{s.d(t,{T:()=>a});var r=s(515),n=s(1171),o=s(5832);let a=n.forwardRef(({className:e,...t},s)=>(0,r.jsx)("textarea",{ref:s,className:(0,o.cn)("min-h-[80px] w-full rounded-lg border border-input bg-background px-3 py-2 text-sm text-foreground leading-relaxed","placeholder:text-muted-foreground transition focus-ring","disabled:cursor-not-allowed disabled:opacity-50",e),...t}));a.displayName="Textarea"},715:(e,t,s)=>{s.d(t,{LogViewer:()=>O});var r=s(515),n=s(6512),o=s(1753),a=s(5803),l=s(2863),i=s(8131),d=s(159),c=s(5662),u=s(6819),p=s(1365),x=s(6670),m=s(3611),f=s(1171),h=s(2497),g=s(6644),y=s(598),b=s(8479),j=s(6845),N=s(5832);let v=["status","text","tool_use","tool_result","result","claude_exit","error"],w=["system","assistant","user","status","result","claude_exit","error"],k=new Set(["assistant","user","system"]);function S(e,t,s,r){if(!k.has(t))return[{id:e,type:t,payload:s,ts:r}];let n=s&&"object"==typeof s&&Array.isArray(s.chunks)?s.chunks:[],o=[];for(let t of n){let s=function(e,t,s){switch(t.kind){case"text":return{id:e,type:"text",payload:{text:t.text??""},ts:s};case"tool_use":return{id:e,type:"tool_use",payload:{name:t.name,input:t.input},ts:s};case"tool_result":return{id:e,type:"tool_result",payload:{ok:!t.isError},ts:s};default:return null}}(e,t,r);s&&o.push(s)}return o}let _={status:{icon:n.A,color:"text-muted-foreground",chip:"bg-secondary text-muted-foreground",label:"status"},text:{icon:o.A,color:"text-primary",chip:"bg-primary/10 text-primary",label:"assistant"},tool_use:{icon:a.A,color:"text-primary",chip:"bg-primary/10 text-primary",label:"tool"},tool_result:{icon:l.A,color:"text-success",chip:"bg-success-muted text-success",label:"result"},result:{icon:i.A,color:"text-success",chip:"bg-success-muted text-success",label:"done"},claude_exit:{icon:d.A,color:"text-muted-foreground",chip:"bg-secondary text-muted-foreground",label:"exit"},error:{icon:c.A,color:"text-destructive",chip:"bg-destructive/10 text-destructive",label:"error"}},A={icon:n.A,color:"text-muted-foreground",chip:"bg-secondary text-muted-foreground",label:"event"};function C(e){return new Date(1e3*e).toTimeString().slice(0,8)}function E(e,t){if(e&&"object"==typeof e&&t in e){let s=e[t];return null==s?void 0:String(s)}}let T=new Set(["merged","released","needs_human","aborted","interrupted"]);function $(e,t){if("result"===e||"claude_exit"===e)return!0;if("status"!==e)return!1;let s=E(t,"to");return void 0!==s&&T.has(s)}function J({type:e,payload:t}){if("text"===e)return(0,r.jsx)("p",{className:"leading-relaxed text-foreground/90",children:"string"==typeof t?t:E(t,"text")??JSON.stringify(t)});if("status"===e){let e=E(t,"from"),s=E(t,"to"),n=E(t,"reason");return e||s?(0,r.jsxs)("span",{className:"text-muted-foreground",children:[e??"?"," ",(0,r.jsx)("span",{className:"text-muted-foreground/60",children:"→"})," ",(0,r.jsx)("span",{className:"text-foreground",children:s??"?"}),n&&(0,r.jsxs)(r.Fragment,{children:[" \xb7 ",n]})]}):(0,r.jsx)("span",{className:"text-muted-foreground",children:E(t,"message")??n??("string"==typeof t?t:JSON.stringify(t))})}if("error"===e)return(0,r.jsx)("span",{className:"text-destructive",children:E(t,"message")??("string"==typeof t?t:JSON.stringify(t))});if("claude_exit"===e){let e=E(t,"exitCode")??E(t,"code"),s=E(t,"reason");return(0,r.jsxs)("span",{className:"text-muted-foreground",children:["exited code ",(0,r.jsx)("span",{className:"text-foreground",children:e??"?"}),s&&(0,r.jsxs)(r.Fragment,{children:[" \xb7 ",s]})]})}if("tool_use"===e){let e=E(t,"name")??"tool",s=(t&&"object"==typeof t?t.input:void 0)??{},n=s.file_path??s.command??s.pattern??s.summary??Object.values(s)[0]??"";return(0,r.jsxs)("span",{children:[(0,r.jsx)("span",{className:"font-semibold text-primary",children:e}),(0,r.jsx)("span",{className:"text-muted-foreground",children:"("}),(0,r.jsx)("span",{className:"text-foreground/80",children:String(n)}),(0,r.jsx)("span",{className:"text-muted-foreground",children:")"}),!!s.summary&&!!s.file_path&&(0,r.jsxs)("span",{className:"text-muted-foreground",children:[" — ",String(s.summary)]})]})}if("tool_result"===e){let e=t&&"object"==typeof t&&t.ok,s=E(t,"summary")??"",n=e?i.A:c.A;return(0,r.jsxs)("span",{className:(0,N.cn)("inline-flex items-center gap-1.5",e?"text-success":"text-destructive"),children:[(0,r.jsx)(n,{className:"h-3 w-3 shrink-0"}),(0,r.jsx)("span",{className:"text-foreground/80",children:s})]})}if("result"===e){let e=t??{},s="number"==typeof e.costUsd?e.costUsd:void 0,n="number"==typeof e.durationSec?e.durationSec:void 0,o="number"==typeof e.turns?e.turns:void 0,a="number"==typeof e.inputTokens?e.inputTokens:void 0,l="number"==typeof e.outputTokens?e.outputTokens:void 0,i="rounded bg-secondary px-1.5 py-0.5 text-[11px] tnum";return(0,r.jsxs)("span",{className:"inline-flex flex-wrap items-center gap-2 align-middle",children:[(0,r.jsx)(g.E,{tone:"success",children:"done"}),null!=s&&(0,r.jsxs)("span",{className:i,children:["$",s.toFixed(2)]}),null!=n&&(0,r.jsxs)("span",{className:i,children:[Math.floor(n/60),"m ",n%60,"s"]}),null!=o&&(0,r.jsxs)("span",{className:i,children:[o," turns"]}),null!=a&&null!=l&&(0,r.jsxs)("span",{className:i,children:[(a/1e3).toFixed(0),"k in \xb7 ",(l/1e3).toFixed(1),"k out"]})]})}return(0,r.jsx)("span",{className:"text-muted-foreground",children:"string"==typeof t?t:JSON.stringify(t)})}function M({line:e,showClock:t}){let s=_[e.type]??A,n=s.icon,o=t&&e.ts?C(e.ts):"";return(0,r.jsxs)("div",{className:(0,N.cn)("dd-log-in flex gap-2.5 rounded-md px-2.5 py-1.5 hover:bg-secondary/40","error"===e.type&&"bg-destructive/[0.06]"),children:[(0,r.jsx)("span",{className:"shrink-0 select-none pt-0.5 text-[11px] tnum text-muted-foreground/60",children:o}),(0,r.jsx)(n,{className:(0,N.cn)("mt-0.5 h-[13px] w-[13px] shrink-0",s.color)}),(0,r.jsx)("span",{className:(0,N.cn)("w-[68px] shrink-0 pt-0.5 text-[10px] font-semibold uppercase tracking-wide",s.color),children:s.label}),(0,r.jsx)("div",{className:"min-w-0 flex-1 whitespace-pre-wrap break-words pt-0.5",children:(0,r.jsx)(J,{type:e.type,payload:e.payload})})]})}function O({jobId:e,initial:t=[],active:s=!0}){let[n,o]=(0,f.useState)(()=>t.flatMap(e=>S(e.id,e.type,e.payload,e.ts))),[a,l]=(0,f.useState)(()=>!s||t.some(e=>$(e.type,e.payload))),[i,d]=(0,f.useState)(!0),[c,k]=(0,f.useState)(()=>new Set),[E,T]=(0,f.useState)(!1),J=(0,f.useRef)(new Set(t.map(e=>e.id))),F=(0,f.useRef)(null),I=(0,j.p)(),{success:L,error:z}=(0,b.d)();(0,f.useEffect)(()=>{if(!s||a)return;let t=new EventSource(`/api/sse/jobs/${e}`),r=e=>t=>{if(!(t instanceof MessageEvent))return;let s=t.lastEventId?Number(t.lastEventId):Date.now();if(J.current.has(s))return;J.current.add(s);let r=t.data;try{r=JSON.parse(t.data)}catch{}let n=S(s,e,r,Math.floor(Date.now()/1e3));n.length>0&&o(e=>[...e,...n]),$(e,r)&&l(!0)};for(let e of w)t.addEventListener(e,r(e));return()=>t.close()},[e,s,a]);let D=(0,f.useMemo)(()=>n.filter(e=>!c.has(e.type)),[n,c]),R=(0,f.useMemo)(()=>[...D].reverse(),[D]),H=!a,U=c.size;return(0,f.useEffect)(()=>{i&&0!==D.length&&F.current?.scrollToIndex({index:0,behavior:"smooth"})},[i,D.length]),(0,r.jsxs)("div",{className:"overflow-hidden rounded-xl border border-card-border bg-card shadow-sm",children:[(0,r.jsxs)("div",{className:"flex items-center gap-2 border-b border-card-border bg-secondary/40 px-3 py-2",children:[(0,r.jsxs)("span",{className:"flex items-center gap-2 text-sm font-semibold",children:[(0,r.jsx)(u.A,{className:"h-[15px] w-[15px] text-muted-foreground"})," Log stream"]}),H?(0,r.jsx)(g.E,{status:"working",children:"live"}):(0,r.jsxs)(g.E,{tone:"neutral",children:["complete \xb7 ",n.length," events"]}),(0,r.jsxs)("div",{className:"ml-auto flex items-center gap-1",children:[(0,r.jsxs)("button",{type:"button",onClick:()=>T(e=>!e),className:(0,N.cn)("inline-flex items-center gap-1.5 rounded-md px-2 py-1 text-xs font-medium hover-elevate focus-ring",U>0&&"text-primary"),children:[(0,r.jsx)(p.A,{className:"h-3.5 w-3.5"})," Filter",U>0&&(0,r.jsxs)("span",{className:"tnum",children:["\xb7 ",v.length-U]})]}),(0,r.jsxs)("button",{type:"button",onClick:()=>d(e=>!e),className:(0,N.cn)("inline-flex items-center gap-1.5 rounded-md px-2 py-1 text-xs font-medium hover-elevate focus-ring",i?"text-primary":"text-muted-foreground"),"aria-pressed":i,children:[(0,r.jsx)(x.A,{className:"h-3.5 w-3.5"})," Autoscroll"]}),(0,r.jsxs)("button",{type:"button",onClick:function(){let e=n.map(e=>{let t=e.ts?`[${C(e.ts)}] `:"",s="string"==typeof e.payload?e.payload:JSON.stringify(e.payload);return`${t}${e.type} ${s}`}).join("\n"),t=navigator.clipboard;t?t.writeText(e).then(()=>L("Log copied",`${n.length} events`)).catch(()=>z("Copy failed","Could not write to the clipboard.")):z("Copy failed","The clipboard is unavailable in this context.")},className:"inline-flex items-center gap-1.5 rounded-md px-2 py-1 text-xs font-medium text-muted-foreground hover-elevate focus-ring",children:[(0,r.jsx)(m.A,{className:"h-3.5 w-3.5"})," Copy"]})]})]}),E&&(0,r.jsx)("div",{className:"dd-fade-up flex flex-wrap items-center gap-1.5 border-b border-card-border bg-secondary/20 px-3 py-2",children:v.map(e=>{let t=!c.has(e),s=_[e]??A,n=s.icon;return(0,r.jsxs)("button",{type:"button",onClick:()=>{k(t=>{let s=new Set(t);return s.has(e)?s.delete(e):s.add(e),s})},className:(0,N.cn)("inline-flex items-center gap-1.5 rounded-md border px-2 py-1 text-[11px] font-medium transition-colors focus-ring",t?`${s.chip} border-transparent`:"border-border text-muted-foreground/60 line-through"),children:[(0,r.jsx)(n,{className:"h-[11px] w-[11px]"})," ",s.label]},e)})}),(0,r.jsx)("div",{role:"log","aria-live":"polite","aria-label":"Job log stream",className:"h-[460px] bg-background/40 px-1 py-1 font-mono text-xs",children:(0,r.jsx)(h.aY,{ref:F,data:R,initialTopMostItemIndex:0,itemContent:(e,t)=>(0,r.jsx)(M,{line:t,showClock:I}),components:{Header:()=>H?(0,r.jsxs)("div",{className:"flex items-center gap-2.5 px-2.5 py-1.5 text-muted-foreground",children:[(0,r.jsx)("span",{className:"w-[42px]"}),(0,r.jsx)(y.y,{size:13}),(0,r.jsx)("span",{className:"text-[11px]",children:"streaming…"})]}):null}})})]})}},5172:(e,t,s)=>{s.d(t,{V:()=>i,m:()=>l});var r=s(515),n=s(4393),o=s(5832);let a={top:"bottom-full left-1/2 -translate-x-1/2 mb-2",bottom:"top-full left-1/2 -translate-x-1/2 mt-2",right:"left-full top-1/2 -translate-y-1/2 ml-2",left:"right-full top-1/2 -translate-y-1/2 mr-2"};function l({content:e,children:t,side:s="top",className:n}){return(0,r.jsxs)("span",{className:"group/tt relative inline-flex",children:[t,(0,r.jsx)("span",{role:"tooltip",className:(0,o.cn)("pointer-events-none absolute z-50 w-max max-w-[260px] rounded-lg border border-border bg-popover px-2.5 py-1.5 text-xs leading-relaxed text-popover-foreground shadow-lg","translate-y-0.5 opacity-0 transition-all duration-150 group-focus-within/tt:opacity-100 group-hover/tt:translate-y-0 group-hover/tt:opacity-100",a[s],n),children:e})]})}function i({content:e,side:t="top"}){return(0,r.jsx)(l,{content:e,side:t,children:(0,r.jsx)("button",{type:"button",className:"inline-flex h-4 w-4 items-center justify-center rounded-full text-muted-foreground/70 transition-colors hover:text-foreground focus-ring","aria-label":"Help",children:(0,r.jsx)(n.A,{className:"h-3.5 w-3.5"})})})}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5080],{2414:(e,t,n)=>{n.d(t,{A:()=>s});let s=(0,n(1330).A)("dollar-sign",[["line",{x1:"12",x2:"12",y1:"2",y2:"22",key:"7eqyqh"}],["path",{d:"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6",key:"1b0p4s"}]])},3823:(e,t,n)=>{n.d(t,{A:()=>s});let s=(0,n(1330).A)("gauge",[["path",{d:"m12 14 4-4",key:"9kzdfg"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0",key:"19p75a"}]])},4913:(e,t,n)=>{n.d(t,{C:()=>m,B:()=>h});var s=n(515),r=n(3823),l=n(1171),a=n(4502);a.Ik({status:a.k5(["ok","warning","blocked"]),windowType:a.Yj(),resetsAt:a.ai().nullable(),capturedAt:a.ai()});var i=n(6845),d=n(6644),u=n(5529);let o={neutral:"bg-secondary text-muted-foreground",success:"bg-success/10 text-success",warning:"bg-warning/10 text-warning",destructive:"bg-destructive/10 text-destructive"};function c(e){return e&&"unknown"!==e?"five_hour"===e?"5h window":"weekly"===e?"weekly window":e.replace(/_/g," "):null}function x(e){let[,t]=(0,l.useReducer)(e=>e+1,0);(0,l.useEffect)(()=>{if(!e)return;let n=setInterval(t,1e3);return()=>clearInterval(n)},[e])}function f(e){return function(e,t){if(null===e||e<=t)return null;let n=e-t;if(n<60)return`${n}s`;if(n<3600)return`${Math.floor(n/60)}m`;if(n<86400){let e=Math.floor(n/3600),t=Math.floor(n%3600/60);return t>0?`${e}h ${t}m`:`${e}h`}let s=Math.floor(n/86400),r=Math.floor(n%86400/3600);return r>0?`${s}d ${r}h`:`${s}d`}(e.resetsAt,Math.floor(Date.now()/1e3))}function h({view:e}){let t,n=(0,i.p)()?f(e):null;x(null!==n),t="blocked"===e.state?n?`Claude limited \xb7 ${n}`:"Claude limited":"warning"===e.state?n?`Claude \xb7 ${n}`:"Claude limit near":"ok"===e.state?"Claude OK":"Claude usage —";let l="unknown"===e.state?"Claude subscription usage: no recent reading yet":`Claude ${c(e.windowType)??"subscription"} — ${e.label}${n?` \xb7 resets in ${n}`:""}`;return(0,s.jsxs)(d.E,{tone:e.tone,title:l,className:"shrink-0",children:[(0,s.jsx)(r.A,{className:"h-3 w-3","aria-hidden":!0}),t]})}function m({view:e}){let t,n=(0,i.p)()?f(e):null;x(null!==n);let l=c(e.windowType);return t="unknown"===e.state?"No recent reading yet.":e.blocked?n?`Parked — resets in ${n}`:"Parked until the window resets":n?`Resets in ${n}`:l?`${l} active`:"Within limits",(0,s.jsxs)(u.Zp,{pad:"lg",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{className:`flex h-8 w-8 items-center justify-center rounded-lg ${o[e.tone]}`,children:(0,s.jsx)(r.A,{className:"h-4 w-4","aria-hidden":!0})}),(0,s.jsx)("span",{className:"text-sm font-medium text-foreground",children:"Claude usage"})]}),(0,s.jsx)(d.E,{tone:e.tone,children:e.label})]}),(0,s.jsxs)("div",{className:"mt-3 flex items-baseline justify-between",children:[(0,s.jsx)("span",{className:"text-sm text-muted-foreground",children:t}),l&&"unknown"!==e.state&&(0,s.jsx)("span",{className:"text-xs text-muted-foreground/70",children:l})]})]})}},9583:(e,t,n)=>{n.d(t,{L:()=>b,_:()=>w});var s=n(515),r=n(3823),l=n(1171),a=n(4502);let i=a.Ik({usedPercent:a.ai(),resetsAt:a.ai().optional(),windowMinutes:a.ai().optional()});function d(e,t){if(null===e||e<=t)return null;let n=e-t;if(n<60)return`${n}s`;if(n<3600)return`${Math.floor(n/60)}m`;if(n<86400){let e=Math.floor(n/3600),t=Math.floor(n%3600/60);return t>0?`${e}h ${t}m`:`${e}h`}let s=Math.floor(n/86400),r=Math.floor(n%86400/3600);return r>0?`${s}d ${r}h`:`${s}d`}a.Ik({capturedAt:a.ai(),primary:i.optional(),secondary:i.optional()});var u=n(6845),o=n(6644),c=n(5529);let x={neutral:"bg-secondary text-muted-foreground",success:"bg-success/10 text-success",warning:"bg-warning/10 text-warning",destructive:"bg-destructive/10 text-destructive"},f={neutral:"bg-muted-foreground/40",success:"bg-success",warning:"bg-warning",destructive:"bg-destructive"};function h(e){let[,t]=(0,l.useReducer)(e=>e+1,0);(0,l.useEffect)(()=>{if(!e)return;let n=setInterval(t,1e3);return()=>clearInterval(n)},[e])}function m(e){return Math.round(Math.min(Math.max(e,0),100))}function w({view:e}){let t,n=(0,u.p)()?d(e.resetsAt,Math.floor(Date.now()/1e3)):null;h(null!==n),t="blocked"===e.state?n?`Codex limited \xb7 ${n}`:"Codex limited":null!==e.usedPercent?`Codex ${m(e.usedPercent)}%`:"Codex usage —";let l="unknown"===e.state?"Codex OAuth usage: no recent reading yet":`Codex OAuth — ${e.label}${null!==e.usedPercent?` (${m(e.usedPercent)}% used)`:""}${n?` \xb7 resets in ${n}`:""}`;return(0,s.jsxs)(o.E,{tone:e.tone,title:l,className:"shrink-0",children:[(0,s.jsx)(r.A,{className:"h-3 w-3","aria-hidden":!0}),t]})}function g({label:e,window:t,tone:n,now:r}){let l=d(t.resetsAt??null,r);return(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsxs)("div",{className:"flex items-baseline justify-between text-xs",children:[(0,s.jsx)("span",{className:"font-medium text-foreground",children:function(e,t){if(void 0===e)return t;if(e>=10020)return"weekly window";if(e>=60){let t=Math.round(e/60);return`${t}h window`}return`${e}m window`}(t.windowMinutes,e)}),(0,s.jsxs)("span",{className:"tnum text-muted-foreground",children:[m(t.usedPercent),"%"]})]}),(0,s.jsx)("div",{className:"h-1.5 w-full overflow-hidden rounded-full bg-secondary",children:(0,s.jsx)("div",{className:`h-full rounded-full ${f[n]}`,style:{width:`${m(t.usedPercent)}%`}})}),l&&(0,s.jsxs)("span",{className:"text-[11px] text-muted-foreground/80",children:["resets in ",l]})]})}function p(e){return e>=90?"destructive":e>=75?"warning":"success"}function b({view:e}){let t=(0,u.p)(),n=Math.floor(Date.now()/1e3),l=t&&e.blocked?d(e.resetsAt,n):null;return h((e.primary?.resetsAt??e.resetsAt)!==null&&t),(0,s.jsxs)(c.Zp,{pad:"lg",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{className:`flex h-8 w-8 items-center justify-center rounded-lg ${x[e.tone]}`,children:(0,s.jsx)(r.A,{className:"h-4 w-4","aria-hidden":!0})}),(0,s.jsx)("span",{className:"text-sm font-medium text-foreground",children:"Codex usage"})]}),(0,s.jsx)(o.E,{tone:e.tone,children:e.label})]}),"unknown"===e.state?(0,s.jsx)("p",{className:"mt-3 text-sm text-muted-foreground",children:"No quota reading yet. Codex reports its OAuth usage as it runs."}):(0,s.jsxs)("div",{className:"mt-3 flex flex-col gap-3",children:[e.blocked&&(0,s.jsxs)("div",{className:"rounded-lg border border-destructive/40 bg-destructive/10 px-3 py-2 text-xs text-destructive",children:["Quota exhausted — work is parked",l?`, resets in ${l}`:"","."]}),e.primary&&(0,s.jsx)(g,{label:"5h window",window:e.primary,tone:p(e.primary.usedPercent),now:n}),e.secondary&&(0,s.jsx)(g,{label:"weekly window",window:e.secondary,tone:p(e.secondary.usedPercent),now:n}),!e.primary&&!e.secondary&&(0,s.jsx)("p",{className:"text-sm text-muted-foreground",children:"No window details reported."})]})]})}}}]);
@@ -1,4 +1,4 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1642],{4502:(e,t,n)=>{var r,i;function o(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,"_zod",{value:{def:r,constr:a,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=a.prototype,o=Object.keys(i);for(let e=0;e<o.length;e++){let t=o[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class o extends i{}function a(e){var t;let i=n?.Parent?new o:this;for(let n of(r(i,e),(t=i._zod).deferred??(t.deferred=[]),i._zod.deferred))n();return i}return Object.defineProperty(o,"name",{value:e}),Object.defineProperty(a,"init",{value:r}),Object.defineProperty(a,Symbol.hasInstance,{value:t=>!!n?.Parent&&t instanceof n.Parent||t?._zod?.traits?.has(e)}),Object.defineProperty(a,"name",{value:e}),a}n.d(t,{EB:()=>nf,YO:()=>nL,zM:()=>nC,gM:()=>nq,k5:()=>nQ,eu:()=>n1,ai:()=>nN,Ik:()=>nW,g1:()=>nY,Yj:()=>np,L5:()=>nF}),Symbol("zod_brand");class a extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class s extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}}(r=globalThis).__zod_globalConfig??(r.__zod_globalConfig={});let u=globalThis.__zod_globalConfig;function l(e){return e&&Object.assign(u,e),u}let c=/^[cC][0-9a-z]{6,}$/,d=/^[0-9a-z]+$/,p=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,f=/^[0-9a-vA-V]{20}$/,h=/^[A-Za-z0-9]{27}$/,m=/^[a-zA-Z0-9_-]{21}$/,y=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,v=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,_=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,g=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,z=/^(?:(?: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])$/,b=/^(([0-9a-fA-F]{1,4}:){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}|:))$/,k=/^((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])\/([0-9]|[1-2][0-9]|3[0-2])$/,w=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,$=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,S=/^[A-Za-z0-9_-]*$/,O=/^https?$/,Z=/^\+[1-9]\d{6,14}$/,x="(?:(?:\\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])))",E=RegExp(`^${x}$`);function T(e){let t="(?:[01]\\d|2[0-3]):[0-5]\\d";return"number"==typeof e.precision?-1===e.precision?`${t}`:0===e.precision?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}let P=/^-?\d+$/,j=/^-?\d+(?:\.\d+)?$/,A=/^(?:true|false)$/i,N=/^[^A-Z]*$/,I=/^[^a-z]*$/;function R(e){let t=Object.values(e).filter(e=>"number"==typeof e);return Object.entries(e).filter(([e,n])=>-1===t.indexOf(+e)).map(([e,t])=>t)}function J(e,t){return"bigint"==typeof t?t.toString():t}function C(e){return{get value(){{let t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function M(e){let t=+!!e.startsWith("^"),n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}let F=Symbol("evaluating");function U(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==F)return void 0===r&&(r=F,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function D(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function L(...e){let t={};for(let n of e)Object.assign(t,Object.getOwnPropertyDescriptors(n));return Object.defineProperties({},t)}function V(e){return JSON.stringify(e)}let W="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function B(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}let K=C(()=>{if(u.jitless||"u">typeof navigator&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return Function(""),!0}catch(e){return!1}});function q(e){if(!1===B(e))return!1;let t=e.constructor;if(void 0===t||"function"!=typeof t)return!0;let n=t.prototype;return!1!==B(n)&&!1!==Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")}function G(e){return q(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}let X=new Set(["string","number","symbol"]);function Y(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function H(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function Q(e){if(!e)return{};if("string"==typeof e)return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");e.error=e.message}return(delete e.message,"string"==typeof e.error)?{...e,error:()=>e.error}:e}let ee={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-0x80000000,0x7fffffff],uint32:[0,0xffffffff],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function et(e,t=0){if(!0===e.aborted)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function en(e,t){return t.map(t=>(t.path??(t.path=[]),t.path.unshift(e),t))}function er(e){return"string"==typeof e?e:e?.message}function ei(e,t,n){let r=e.message?e.message:er(e.inst?._zod.def?.error?.(e))??er(t?.error?.(e))??er(n.customError?.(e))??er(n.localeError?.(e))??"Invalid input",{inst:i,continue:o,input:a,...s}=e;return s.path??(s.path=[]),s.message=r,t?.reportInput&&(s.input=a),s}function eo(e){return Array.isArray(e)?"array":"string"==typeof e?"string":"unknown"}function ea(...e){let[t,n,r]=e;return"string"==typeof t?{message:t,code:"custom",input:n,inst:r}:{...t}}let es=o("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),eu={number:"number",bigint:"bigint",object:"date"},el=o("$ZodCheckLessThan",(e,t)=>{es.init(e,t);let n=eu[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:"too_big",maximum:"object"==typeof t.value?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),ec=o("$ZodCheckGreaterThan",(e,t)=>{es.init(e,t);let n=eu[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:"too_small",minimum:"object"==typeof t.value?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),ed=o("$ZodCheckMultipleOf",(e,t)=>{es.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{let r,i,o;if(typeof n.value!=typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");("bigint"==typeof n.value?n.value%t.value===BigInt(0):0==(i=Math.round(r=n.value/t.value),o=Number.EPSILON*Math.max(Math.abs(r),1),Math.abs(r-i)<o?0:r-i))||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),ep=o("$ZodCheckNumberFormat",(e,t)=>{es.init(e,t),t.format=t.format||"float64";let n=t.format?.includes("int"),r=n?"int":"number",[i,o]=ee[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=o,n&&(r.pattern=P)}),e._zod.check=a=>{let s=a.value;if(n){if(!Number.isInteger(s))return void a.issues.push({expected:r,format:t.format,code:"invalid_type",continue:!1,input:s,inst:e});if(!Number.isSafeInteger(s))return void(s>0?a.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort}):a.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort}))}s<i&&a.issues.push({origin:"number",input:s,code:"too_small",minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>o&&a.issues.push({origin:"number",input:s,code:"too_big",maximum:o,inclusive:!0,inst:e,continue:!t.abort})}}),ef=o("$ZodCheckMaxLength",(e,t)=>{var n;es.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return null!=t&&void 0!==t.length}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=eo(r);n.issues.push({origin:i,code:"too_big",maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),eh=o("$ZodCheckMinLength",(e,t)=>{var n;es.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return null!=t&&void 0!==t.length}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=eo(r);n.issues.push({origin:i,code:"too_small",minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),em=o("$ZodCheckLengthEquals",(e,t)=>{var n;es.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return null!=t&&void 0!==t.length}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let o=eo(r),a=i>t.length;n.issues.push({origin:o,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),ey=o("$ZodCheckStringFormat",(e,t)=>{var n,r;es.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??(n.patterns=new Set),n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),ev=o("$ZodCheckRegex",(e,t)=>{ey.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),e_=o("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=N),ey.init(e,t)}),eg=o("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=I),ey.init(e,t)}),ez=o("$ZodCheckIncludes",(e,t)=>{es.init(e,t);let n=Y(t.includes),r=new RegExp("number"==typeof t.position?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),eb=o("$ZodCheckStartsWith",(e,t)=>{es.init(e,t);let n=RegExp(`^${Y(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),ek=o("$ZodCheckEndsWith",(e,t)=>{es.init(e,t);let n=RegExp(`.*${Y(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),ew=o("$ZodCheckOverwrite",(e,t)=>{es.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}});class e${constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if("function"==typeof e){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let t=e.split("\n").filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length));for(let e of t.map(e=>e.slice(n)).map(e=>" ".repeat(2*this.indent)+e))this.content.push(e)}compile(){return Function(...this?.args,[...(this?.content??[""]).map(e=>` ${e}`)].join("\n"))}}let eS=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,J,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},eO=o("$ZodError",eS),eZ=o("$ZodError",eS,{Parent:Error}),ex=e=>(t,n,r,i)=>{let o=r?{...r,async:!1}:{async:!1},s=t._zod.run({value:n,issues:[]},o);if(s instanceof Promise)throw new a;if(s.issues.length){let t=new(i?.Err??e)(s.issues.map(e=>ei(e,o,l())));throw W(t,i?.callee),t}return s.value},eE=e=>async(t,n,r,i)=>{let o=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},o);if(a instanceof Promise&&(a=await a),a.issues.length){let t=new(i?.Err??e)(a.issues.map(e=>ei(e,o,l())));throw W(t,i?.callee),t}return a.value},eT=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},i);if(o instanceof Promise)throw new a;return o.issues.length?{success:!1,error:new(e??eO)(o.issues.map(e=>ei(e,i,l())))}:{success:!0,data:o.value}},eP=eT(eZ),ej=e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},i);return o instanceof Promise&&(o=await o),o.issues.length?{success:!1,error:new e(o.issues.map(e=>ei(e,i,l())))}:{success:!0,data:o.value}},eA=ej(eZ),eN={major:4,minor:4,patch:3},eI=o("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=eN;let r=[...e._zod.def.checks??[]];for(let t of(e._zod.traits.has("$ZodCheck")&&r.unshift(e),r))for(let n of t._zod.onattach)n(e);if(0===r.length)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r,i=et(e);for(let o of t){if(o._zod.def.when){if(function(e,t=0){if(!0===e.aborted)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}(e)||!o._zod.def.when(e))continue}else if(i)continue;let t=e.issues.length,s=o._zod.check(e);if(s instanceof Promise&&n?.async===!1)throw new a;if(r||s instanceof Promise)r=(r??Promise.resolve()).then(async()=>{await s,e.issues.length!==t&&(i||(i=et(e,t)))});else{if(e.issues.length===t)continue;i||(i=et(e,t))}}return r?r.then(()=>e):e},n=(n,i,o)=>{if(et(n))return n.aborted=!0,n;let s=t(i,r,o);if(s instanceof Promise){if(!1===o.async)throw new a;return s.then(t=>e._zod.parse(t,o))}return e._zod.parse(s,o)};e._zod.run=(i,o)=>{if(o.skipChecks)return e._zod.parse(i,o);if("backward"===o.direction){let t=e._zod.parse({value:i.value,issues:[]},{...o,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,o)):n(t,i,o)}let s=e._zod.parse(i,o);if(s instanceof Promise){if(!1===o.async)throw new a;return s.then(e=>t(e,r,o))}return t(s,r,o)}}U(e,"~standard",()=>({validate:t=>{try{let n=eP(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch(n){return eA(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:"zod",version:1}))}),eR=o("$ZodString",(e,t)=>{var n;let r;eI.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??(r=(n=e._zod.bag)?`[\\s\\S]{${n?.minimum??0},${n?.maximum??""}}`:"[\\s\\S]*",RegExp(`^${r}$`)),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch(e){}return"string"==typeof n.value||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),eJ=o("$ZodStringFormat",(e,t)=>{ey.init(e,t),eR.init(e,t)}),eC=o("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=v),eJ.init(e,t)}),eM=o("$ZodUUID",(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(void 0===e)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=_(e))}else t.pattern??(t.pattern=_());eJ.init(e,t)}),eF=o("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=g),eJ.init(e,t)}),eU=o("$ZodURL",(e,t)=>{eJ.init(e,t),e._zod.check=n=>{try{let r=n.value.trim();if(!t.normalize&&t.protocol?.source===O.source&&!/^https?:\/\//i.test(r))return void n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:e,continue:!t.abort});let i=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=i.href:n.value=r;return}catch(r){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),eD=o("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),eJ.init(e,t)}),eL=o("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=m),eJ.init(e,t)}),eV=o("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=c),eJ.init(e,t)}),eW=o("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=d),eJ.init(e,t)}),eB=o("$ZodULID",(e,t)=>{t.pattern??(t.pattern=p),eJ.init(e,t)}),eK=o("$ZodXID",(e,t)=>{t.pattern??(t.pattern=f),eJ.init(e,t)}),eq=o("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=h),eJ.init(e,t)}),eG=o("$ZodISODateTime",(e,t)=>{let n,r,i;t.pattern??(n=T({precision:t.precision}),r=["Z"],t.local&&r.push(""),t.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)"),i=`${n}(?:${r.join("|")})`,t.pattern=RegExp(`^${x}T(?:${i})$`)),eJ.init(e,t)}),eX=o("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=E),eJ.init(e,t)}),eY=o("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=RegExp(`^${T(t)}$`)),eJ.init(e,t)}),eH=o("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=y),eJ.init(e,t)}),eQ=o("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=z),eJ.init(e,t),e._zod.bag.format="ipv4"}),e0=o("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=b),eJ.init(e,t),e._zod.bag.format="ipv6",e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),e1=o("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=k),eJ.init(e,t)}),e2=o("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=w),eJ.init(e,t),e._zod.check=n=>{let r=n.value.split("/");try{if(2!==r.length)throw Error();let[e,t]=r;if(!t)throw Error();let n=Number(t);if(`${n}`!==t||n<0||n>128)throw Error();new URL(`http://[${e}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function e4(e){if(""===e)return!0;if(/\s/.test(e)||e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}let e9=o("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=$),eJ.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=n=>{e4(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}}),e6=o("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=S),eJ.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=n=>{!function(e){if(!S.test(e))return!1;let t=e.replace(/[-_]/g,e=>"-"===e?"+":"/");return e4(t.padEnd(4*Math.ceil(t.length/4),"="))}(n.value)&&n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),e3=o("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Z),eJ.init(e,t)}),e8=o("$ZodJWT",(e,t)=>{eJ.init(e,t),e._zod.check=n=>{!function(e,t=null){try{let n=e.split(".");if(3!==n.length)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));if("typ"in i&&i?.typ!=="JWT"||!i.alg||t&&(!("alg"in i)||i.alg!==t))return!1;return!0}catch{return!1}}(n.value,t.alg)&&n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),e5=o("$ZodNumber",(e,t)=>{eI.init(e,t),e._zod.pattern=e._zod.bag.pattern??j,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch(e){}let i=n.value;if("number"==typeof i&&!Number.isNaN(i)&&Number.isFinite(i))return n;let o="number"==typeof i?Number.isNaN(i)?"NaN":Number.isFinite(i)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:i,inst:e,...o?{received:o}:{}}),n}}),e7=o("$ZodNumberFormat",(e,t)=>{ep.init(e,t),e5.init(e,t)}),te=o("$ZodBoolean",(e,t)=>{eI.init(e,t),e._zod.pattern=A,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch(e){}let i=n.value;return"boolean"==typeof i||n.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:e}),n}}),tt=o("$ZodUnknown",(e,t)=>{eI.init(e,t),e._zod.parse=e=>e}),tn=o("$ZodNever",(e,t)=>{eI.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:"never",code:"invalid_type",input:t.value,inst:e}),t)});function tr(e,t,n){e.issues.length&&t.issues.push(...en(n,e.issues)),t.value[n]=e.value}let ti=o("$ZodArray",(e,t)=>{eI.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:"array",code:"invalid_type",input:i,inst:e}),n;n.value=Array(i.length);let o=[];for(let e=0;e<i.length;e++){let a=i[e],s=t.element._zod.run({value:a,issues:[]},r);s instanceof Promise?o.push(s.then(t=>tr(t,n,e))):tr(s,n,e)}return o.length?Promise.all(o).then(()=>n):n}});function to(e,t,n,r,i,o){let a=n in r;if(e.issues.length){if(i&&o&&!a)return;t.issues.push(...en(n,e.issues))}if(!a&&!i){e.issues.length||t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[n]});return}void 0===e.value?a&&(t.value[n]=void 0):t.value[n]=e.value}function ta(e){var t;let n=Object.keys(e.shape);for(let t of n)if(!e.shape?.[t]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${t}": expected a Zod schema`);let r=Object.keys(t=e.shape).filter(e=>"optional"===t[e]._zod.optin&&"optional"===t[e]._zod.optout);return{...e,keys:n,keySet:new Set(n),numKeys:n.length,optionalKeys:new Set(r)}}function ts(e,t,n,r,i,o){let a=[],s=i.keySet,u=i.catchall._zod,l=u.def.type,c="optional"===u.optin,d="optional"===u.optout;for(let i in t){if("__proto__"===i||s.has(i))continue;if("never"===l){a.push(i);continue}let o=u.run({value:t[i],issues:[]},r);o instanceof Promise?e.push(o.then(e=>to(e,n,i,t,c,d))):to(o,n,i,t,c,d)}return(a.length&&n.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:o}),e.length)?Promise.all(e).then(()=>n):n}let tu=o("$ZodObject",(e,t)=>{let n;eI.init(e,t);let r=Object.getOwnPropertyDescriptor(t,"shape");if(!r?.get){let e=t.shape;Object.defineProperty(t,"shape",{get:()=>{let n={...e};return Object.defineProperty(t,"shape",{value:n}),n}})}let i=C(()=>ta(t));U(e._zod,"propValues",()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values)for(let e of(n[t]??(n[t]=new Set),r.values))n[t].add(e)}return n});let o=t.catchall;e._zod.parse=(t,r)=>{n??(n=i.value);let a=t.value;if(!B(a))return t.issues.push({expected:"object",code:"invalid_type",input:a,inst:e}),t;t.value={};let s=[],u=n.shape;for(let e of n.keys){let n=u[e],i="optional"===n._zod.optin,o="optional"===n._zod.optout,l=n._zod.run({value:a[e],issues:[]},r);l instanceof Promise?s.push(l.then(n=>to(n,t,e,a,i,o))):to(l,t,e,a,i,o)}return o?ts(s,a,t,r,i.value,e):s.length?Promise.all(s).then(()=>t):t}}),tl=o("$ZodObjectJIT",(e,t)=>{let n,r;tu.init(e,t);let i=e._zod.parse,o=C(()=>ta(t)),a=!u.jitless,s=a&&K.value,l=t.catchall;e._zod.parse=(u,c)=>{r??(r=o.value);let d=u.value;return B(d)?a&&s&&c?.async===!1&&!0!==c.jitless?(n||(n=(e=>{let t=new e$(["shape","payload","ctx"]),n=o.value,r=e=>{let t=V(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write("const input = payload.value;");let i=Object.create(null),a=0;for(let e of n.keys)i[e]=`key_${a++}`;for(let o of(t.write("const newResult = {};"),n.keys)){let n=i[o],a=V(o),s=e[o],u=s?._zod?.optin==="optional",l=s?._zod?.optout==="optional";t.write(`const ${n} = ${r(o)};`),u&&l?t.write(`
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8264],{2235:(e,t,n)=>{var r=n(2067);n.o(r,"usePathname")&&n.d(t,{usePathname:function(){return r.usePathname}}),n.o(r,"useRouter")&&n.d(t,{useRouter:function(){return r.useRouter}}),n.o(r,"useSearchParams")&&n.d(t,{useSearchParams:function(){return r.useSearchParams}})},4502:(e,t,n)=>{var r,i;function o(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,"_zod",{value:{def:r,constr:a,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=a.prototype,o=Object.keys(i);for(let e=0;e<o.length;e++){let t=o[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class o extends i{}function a(e){var t;let i=n?.Parent?new o:this;for(let n of(r(i,e),(t=i._zod).deferred??(t.deferred=[]),i._zod.deferred))n();return i}return Object.defineProperty(o,"name",{value:e}),Object.defineProperty(a,"init",{value:r}),Object.defineProperty(a,Symbol.hasInstance,{value:t=>!!n?.Parent&&t instanceof n.Parent||t?._zod?.traits?.has(e)}),Object.defineProperty(a,"name",{value:e}),a}n.d(t,{EB:()=>nf,YO:()=>nL,zM:()=>nC,gM:()=>nq,k5:()=>nQ,eu:()=>n1,ai:()=>nN,Ik:()=>nW,g1:()=>nY,Yj:()=>np,L5:()=>nF}),Symbol("zod_brand");class a extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class s extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}}(r=globalThis).__zod_globalConfig??(r.__zod_globalConfig={});let u=globalThis.__zod_globalConfig;function l(e){return e&&Object.assign(u,e),u}let c=/^[cC][0-9a-z]{6,}$/,d=/^[0-9a-z]+$/,p=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,f=/^[0-9a-vA-V]{20}$/,h=/^[A-Za-z0-9]{27}$/,m=/^[a-zA-Z0-9_-]{21}$/,y=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,v=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,_=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,g=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,z=/^(?:(?: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])$/,b=/^(([0-9a-fA-F]{1,4}:){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}|:))$/,k=/^((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])\/([0-9]|[1-2][0-9]|3[0-2])$/,w=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,$=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,S=/^[A-Za-z0-9_-]*$/,O=/^https?$/,Z=/^\+[1-9]\d{6,14}$/,x="(?:(?:\\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])))",E=RegExp(`^${x}$`);function T(e){let t="(?:[01]\\d|2[0-3]):[0-5]\\d";return"number"==typeof e.precision?-1===e.precision?`${t}`:0===e.precision?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}let P=/^-?\d+$/,j=/^-?\d+(?:\.\d+)?$/,A=/^(?:true|false)$/i,N=/^[^A-Z]*$/,I=/^[^a-z]*$/;function R(e){let t=Object.values(e).filter(e=>"number"==typeof e);return Object.entries(e).filter(([e,n])=>-1===t.indexOf(+e)).map(([e,t])=>t)}function J(e,t){return"bigint"==typeof t?t.toString():t}function C(e){return{get value(){{let t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function M(e){let t=+!!e.startsWith("^"),n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}let F=Symbol("evaluating");function U(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==F)return void 0===r&&(r=F,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function D(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function L(...e){let t={};for(let n of e)Object.assign(t,Object.getOwnPropertyDescriptors(n));return Object.defineProperties({},t)}function V(e){return JSON.stringify(e)}let W="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function B(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}let K=C(()=>{if(u.jitless||"u">typeof navigator&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return Function(""),!0}catch(e){return!1}});function q(e){if(!1===B(e))return!1;let t=e.constructor;if(void 0===t||"function"!=typeof t)return!0;let n=t.prototype;return!1!==B(n)&&!1!==Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")}function G(e){return q(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}let X=new Set(["string","number","symbol"]);function Y(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function H(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function Q(e){if(!e)return{};if("string"==typeof e)return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");e.error=e.message}return(delete e.message,"string"==typeof e.error)?{...e,error:()=>e.error}:e}let ee={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-0x80000000,0x7fffffff],uint32:[0,0xffffffff],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function et(e,t=0){if(!0===e.aborted)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function en(e,t){return t.map(t=>(t.path??(t.path=[]),t.path.unshift(e),t))}function er(e){return"string"==typeof e?e:e?.message}function ei(e,t,n){let r=e.message?e.message:er(e.inst?._zod.def?.error?.(e))??er(t?.error?.(e))??er(n.customError?.(e))??er(n.localeError?.(e))??"Invalid input",{inst:i,continue:o,input:a,...s}=e;return s.path??(s.path=[]),s.message=r,t?.reportInput&&(s.input=a),s}function eo(e){return Array.isArray(e)?"array":"string"==typeof e?"string":"unknown"}function ea(...e){let[t,n,r]=e;return"string"==typeof t?{message:t,code:"custom",input:n,inst:r}:{...t}}let es=o("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),eu={number:"number",bigint:"bigint",object:"date"},el=o("$ZodCheckLessThan",(e,t)=>{es.init(e,t);let n=eu[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:"too_big",maximum:"object"==typeof t.value?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),ec=o("$ZodCheckGreaterThan",(e,t)=>{es.init(e,t);let n=eu[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:"too_small",minimum:"object"==typeof t.value?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),ed=o("$ZodCheckMultipleOf",(e,t)=>{es.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{let r,i,o;if(typeof n.value!=typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");("bigint"==typeof n.value?n.value%t.value===BigInt(0):0==(i=Math.round(r=n.value/t.value),o=Number.EPSILON*Math.max(Math.abs(r),1),Math.abs(r-i)<o?0:r-i))||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),ep=o("$ZodCheckNumberFormat",(e,t)=>{es.init(e,t),t.format=t.format||"float64";let n=t.format?.includes("int"),r=n?"int":"number",[i,o]=ee[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=o,n&&(r.pattern=P)}),e._zod.check=a=>{let s=a.value;if(n){if(!Number.isInteger(s))return void a.issues.push({expected:r,format:t.format,code:"invalid_type",continue:!1,input:s,inst:e});if(!Number.isSafeInteger(s))return void(s>0?a.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort}):a.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!t.abort}))}s<i&&a.issues.push({origin:"number",input:s,code:"too_small",minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>o&&a.issues.push({origin:"number",input:s,code:"too_big",maximum:o,inclusive:!0,inst:e,continue:!t.abort})}}),ef=o("$ZodCheckMaxLength",(e,t)=>{var n;es.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return null!=t&&void 0!==t.length}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=eo(r);n.issues.push({origin:i,code:"too_big",maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),eh=o("$ZodCheckMinLength",(e,t)=>{var n;es.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return null!=t&&void 0!==t.length}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=eo(r);n.issues.push({origin:i,code:"too_small",minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),em=o("$ZodCheckLengthEquals",(e,t)=>{var n;es.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return null!=t&&void 0!==t.length}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let o=eo(r),a=i>t.length;n.issues.push({origin:o,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),ey=o("$ZodCheckStringFormat",(e,t)=>{var n,r;es.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??(n.patterns=new Set),n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),ev=o("$ZodCheckRegex",(e,t)=>{ey.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),e_=o("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=N),ey.init(e,t)}),eg=o("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=I),ey.init(e,t)}),ez=o("$ZodCheckIncludes",(e,t)=>{es.init(e,t);let n=Y(t.includes),r=new RegExp("number"==typeof t.position?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),eb=o("$ZodCheckStartsWith",(e,t)=>{es.init(e,t);let n=RegExp(`^${Y(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),ek=o("$ZodCheckEndsWith",(e,t)=>{es.init(e,t);let n=RegExp(`.*${Y(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),ew=o("$ZodCheckOverwrite",(e,t)=>{es.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}});class e${constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if("function"==typeof e){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let t=e.split("\n").filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length));for(let e of t.map(e=>e.slice(n)).map(e=>" ".repeat(2*this.indent)+e))this.content.push(e)}compile(){return Function(...this?.args,[...(this?.content??[""]).map(e=>` ${e}`)].join("\n"))}}let eS=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,J,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},eO=o("$ZodError",eS),eZ=o("$ZodError",eS,{Parent:Error}),ex=e=>(t,n,r,i)=>{let o=r?{...r,async:!1}:{async:!1},s=t._zod.run({value:n,issues:[]},o);if(s instanceof Promise)throw new a;if(s.issues.length){let t=new(i?.Err??e)(s.issues.map(e=>ei(e,o,l())));throw W(t,i?.callee),t}return s.value},eE=e=>async(t,n,r,i)=>{let o=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},o);if(a instanceof Promise&&(a=await a),a.issues.length){let t=new(i?.Err??e)(a.issues.map(e=>ei(e,o,l())));throw W(t,i?.callee),t}return a.value},eT=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},i);if(o instanceof Promise)throw new a;return o.issues.length?{success:!1,error:new(e??eO)(o.issues.map(e=>ei(e,i,l())))}:{success:!0,data:o.value}},eP=eT(eZ),ej=e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},i);return o instanceof Promise&&(o=await o),o.issues.length?{success:!1,error:new e(o.issues.map(e=>ei(e,i,l())))}:{success:!0,data:o.value}},eA=ej(eZ),eN={major:4,minor:4,patch:3},eI=o("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=eN;let r=[...e._zod.def.checks??[]];for(let t of(e._zod.traits.has("$ZodCheck")&&r.unshift(e),r))for(let n of t._zod.onattach)n(e);if(0===r.length)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r,i=et(e);for(let o of t){if(o._zod.def.when){if(function(e,t=0){if(!0===e.aborted)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}(e)||!o._zod.def.when(e))continue}else if(i)continue;let t=e.issues.length,s=o._zod.check(e);if(s instanceof Promise&&n?.async===!1)throw new a;if(r||s instanceof Promise)r=(r??Promise.resolve()).then(async()=>{await s,e.issues.length!==t&&(i||(i=et(e,t)))});else{if(e.issues.length===t)continue;i||(i=et(e,t))}}return r?r.then(()=>e):e},n=(n,i,o)=>{if(et(n))return n.aborted=!0,n;let s=t(i,r,o);if(s instanceof Promise){if(!1===o.async)throw new a;return s.then(t=>e._zod.parse(t,o))}return e._zod.parse(s,o)};e._zod.run=(i,o)=>{if(o.skipChecks)return e._zod.parse(i,o);if("backward"===o.direction){let t=e._zod.parse({value:i.value,issues:[]},{...o,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,o)):n(t,i,o)}let s=e._zod.parse(i,o);if(s instanceof Promise){if(!1===o.async)throw new a;return s.then(e=>t(e,r,o))}return t(s,r,o)}}U(e,"~standard",()=>({validate:t=>{try{let n=eP(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch(n){return eA(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:"zod",version:1}))}),eR=o("$ZodString",(e,t)=>{var n;let r;eI.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??(r=(n=e._zod.bag)?`[\\s\\S]{${n?.minimum??0},${n?.maximum??""}}`:"[\\s\\S]*",RegExp(`^${r}$`)),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch(e){}return"string"==typeof n.value||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),eJ=o("$ZodStringFormat",(e,t)=>{ey.init(e,t),eR.init(e,t)}),eC=o("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=v),eJ.init(e,t)}),eM=o("$ZodUUID",(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(void 0===e)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=_(e))}else t.pattern??(t.pattern=_());eJ.init(e,t)}),eF=o("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=g),eJ.init(e,t)}),eU=o("$ZodURL",(e,t)=>{eJ.init(e,t),e._zod.check=n=>{try{let r=n.value.trim();if(!t.normalize&&t.protocol?.source===O.source&&!/^https?:\/\//i.test(r))return void n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:e,continue:!t.abort});let i=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=i.href:n.value=r;return}catch(r){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),eD=o("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),eJ.init(e,t)}),eL=o("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=m),eJ.init(e,t)}),eV=o("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=c),eJ.init(e,t)}),eW=o("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=d),eJ.init(e,t)}),eB=o("$ZodULID",(e,t)=>{t.pattern??(t.pattern=p),eJ.init(e,t)}),eK=o("$ZodXID",(e,t)=>{t.pattern??(t.pattern=f),eJ.init(e,t)}),eq=o("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=h),eJ.init(e,t)}),eG=o("$ZodISODateTime",(e,t)=>{let n,r,i;t.pattern??(n=T({precision:t.precision}),r=["Z"],t.local&&r.push(""),t.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)"),i=`${n}(?:${r.join("|")})`,t.pattern=RegExp(`^${x}T(?:${i})$`)),eJ.init(e,t)}),eX=o("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=E),eJ.init(e,t)}),eY=o("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=RegExp(`^${T(t)}$`)),eJ.init(e,t)}),eH=o("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=y),eJ.init(e,t)}),eQ=o("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=z),eJ.init(e,t),e._zod.bag.format="ipv4"}),e0=o("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=b),eJ.init(e,t),e._zod.bag.format="ipv6",e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),e1=o("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=k),eJ.init(e,t)}),e2=o("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=w),eJ.init(e,t),e._zod.check=n=>{let r=n.value.split("/");try{if(2!==r.length)throw Error();let[e,t]=r;if(!t)throw Error();let n=Number(t);if(`${n}`!==t||n<0||n>128)throw Error();new URL(`http://[${e}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function e4(e){if(""===e)return!0;if(/\s/.test(e)||e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}let e9=o("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=$),eJ.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=n=>{e4(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}}),e6=o("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=S),eJ.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=n=>{!function(e){if(!S.test(e))return!1;let t=e.replace(/[-_]/g,e=>"-"===e?"+":"/");return e4(t.padEnd(4*Math.ceil(t.length/4),"="))}(n.value)&&n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),e3=o("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Z),eJ.init(e,t)}),e8=o("$ZodJWT",(e,t)=>{eJ.init(e,t),e._zod.check=n=>{!function(e,t=null){try{let n=e.split(".");if(3!==n.length)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));if("typ"in i&&i?.typ!=="JWT"||!i.alg||t&&(!("alg"in i)||i.alg!==t))return!1;return!0}catch{return!1}}(n.value,t.alg)&&n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),e5=o("$ZodNumber",(e,t)=>{eI.init(e,t),e._zod.pattern=e._zod.bag.pattern??j,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch(e){}let i=n.value;if("number"==typeof i&&!Number.isNaN(i)&&Number.isFinite(i))return n;let o="number"==typeof i?Number.isNaN(i)?"NaN":Number.isFinite(i)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:i,inst:e,...o?{received:o}:{}}),n}}),e7=o("$ZodNumberFormat",(e,t)=>{ep.init(e,t),e5.init(e,t)}),te=o("$ZodBoolean",(e,t)=>{eI.init(e,t),e._zod.pattern=A,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch(e){}let i=n.value;return"boolean"==typeof i||n.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:e}),n}}),tt=o("$ZodUnknown",(e,t)=>{eI.init(e,t),e._zod.parse=e=>e}),tn=o("$ZodNever",(e,t)=>{eI.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:"never",code:"invalid_type",input:t.value,inst:e}),t)});function tr(e,t,n){e.issues.length&&t.issues.push(...en(n,e.issues)),t.value[n]=e.value}let ti=o("$ZodArray",(e,t)=>{eI.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:"array",code:"invalid_type",input:i,inst:e}),n;n.value=Array(i.length);let o=[];for(let e=0;e<i.length;e++){let a=i[e],s=t.element._zod.run({value:a,issues:[]},r);s instanceof Promise?o.push(s.then(t=>tr(t,n,e))):tr(s,n,e)}return o.length?Promise.all(o).then(()=>n):n}});function to(e,t,n,r,i,o){let a=n in r;if(e.issues.length){if(i&&o&&!a)return;t.issues.push(...en(n,e.issues))}if(!a&&!i){e.issues.length||t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[n]});return}void 0===e.value?a&&(t.value[n]=void 0):t.value[n]=e.value}function ta(e){var t;let n=Object.keys(e.shape);for(let t of n)if(!e.shape?.[t]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${t}": expected a Zod schema`);let r=Object.keys(t=e.shape).filter(e=>"optional"===t[e]._zod.optin&&"optional"===t[e]._zod.optout);return{...e,keys:n,keySet:new Set(n),numKeys:n.length,optionalKeys:new Set(r)}}function ts(e,t,n,r,i,o){let a=[],s=i.keySet,u=i.catchall._zod,l=u.def.type,c="optional"===u.optin,d="optional"===u.optout;for(let i in t){if("__proto__"===i||s.has(i))continue;if("never"===l){a.push(i);continue}let o=u.run({value:t[i],issues:[]},r);o instanceof Promise?e.push(o.then(e=>to(e,n,i,t,c,d))):to(o,n,i,t,c,d)}return(a.length&&n.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:o}),e.length)?Promise.all(e).then(()=>n):n}let tu=o("$ZodObject",(e,t)=>{let n;eI.init(e,t);let r=Object.getOwnPropertyDescriptor(t,"shape");if(!r?.get){let e=t.shape;Object.defineProperty(t,"shape",{get:()=>{let n={...e};return Object.defineProperty(t,"shape",{value:n}),n}})}let i=C(()=>ta(t));U(e._zod,"propValues",()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values)for(let e of(n[t]??(n[t]=new Set),r.values))n[t].add(e)}return n});let o=t.catchall;e._zod.parse=(t,r)=>{n??(n=i.value);let a=t.value;if(!B(a))return t.issues.push({expected:"object",code:"invalid_type",input:a,inst:e}),t;t.value={};let s=[],u=n.shape;for(let e of n.keys){let n=u[e],i="optional"===n._zod.optin,o="optional"===n._zod.optout,l=n._zod.run({value:a[e],issues:[]},r);l instanceof Promise?s.push(l.then(n=>to(n,t,e,a,i,o))):to(l,t,e,a,i,o)}return o?ts(s,a,t,r,i.value,e):s.length?Promise.all(s).then(()=>t):t}}),tl=o("$ZodObjectJIT",(e,t)=>{let n,r;tu.init(e,t);let i=e._zod.parse,o=C(()=>ta(t)),a=!u.jitless,s=a&&K.value,l=t.catchall;e._zod.parse=(u,c)=>{r??(r=o.value);let d=u.value;return B(d)?a&&s&&c?.async===!1&&!0!==c.jitless?(n||(n=(e=>{let t=new e$(["shape","payload","ctx"]),n=o.value,r=e=>{let t=V(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write("const input = payload.value;");let i=Object.create(null),a=0;for(let e of n.keys)i[e]=`key_${a++}`;for(let o of(t.write("const newResult = {};"),n.keys)){let n=i[o],a=V(o),s=e[o],u=s?._zod?.optin==="optional",l=s?._zod?.optout==="optional";t.write(`const ${n} = ${r(o)};`),u&&l?t.write(`
2
2
  if (${n}.issues.length) {
3
3
  if (${a} in input) {
4
4
  payload.issues = payload.issues.concat(${n}.issues.map(iss => ({