@minimalcorp/tsunagi 0.1.37 → 0.1.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/apps/web/.next/BUILD_ID +1 -1
- package/.next/standalone/apps/web/.next/build-manifest.json +5 -5
- package/.next/standalone/apps/web/.next/prerender-manifest.json +3 -3
- package/.next/standalone/apps/web/.next/server/app/_global-error/page/build-manifest.json +2 -2
- package/.next/standalone/apps/web/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found/page/build-manifest.json +2 -2
- package/.next/standalone/apps/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/index.html +1 -1
- package/.next/standalone/apps/web/.next/server/app/index.rsc +3 -3
- package/.next/standalone/apps/web/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/.next/standalone/apps/web/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/page/build-manifest.json +2 -2
- package/.next/standalone/apps/web/.next/server/app/page.js.nft.json +1 -1
- package/.next/standalone/apps/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/apps/web/.next/server/app/settings/page/build-manifest.json +2 -2
- package/.next/standalone/apps/web/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/standalone/apps/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/apps/web/.next/server/app/settings.html +1 -1
- package/.next/standalone/apps/web/.next/server/app/settings.rsc +3 -3
- package/.next/standalone/apps/web/.next/server/app/settings.segments/_full.segment.rsc +3 -3
- package/.next/standalone/apps/web/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/settings.segments/_index.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/apps/web/.next/server/app/settings.segments/settings.segment.rsc +1 -1
- package/.next/standalone/apps/web/.next/server/app/tasks/[id]/page/build-manifest.json +2 -2
- package/.next/standalone/apps/web/.next/server/app/tasks/[id]/page.js.nft.json +1 -1
- package/.next/standalone/apps/web/.next/server/app/tasks/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/[root-of-the-server]__0nhzci6._.js +4 -8
- package/.next/standalone/apps/web/.next/server/chunks/ssr/[root-of-the-server]__0vi01rl._.js +4 -8
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{[root-of-the-server]__04g~n~m._.js → [root-of-the-server]__0zf09ry._.js} +2 -2
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_04l3mh~._.js +10 -0
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0bt-4.4._.js +3 -0
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0e3431w._.js +10 -0
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0g.cd6a._.js +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0lirkqp._.js +10 -0
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0soxqr.._.js +3 -0
- package/.next/standalone/apps/web/.next/server/chunks/ssr/apps_web_src_app_settings_page_tsx_0i6itlb._.js +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/apps_web_src_app_tasks_[id]_page_tsx_0jshsm2._.js +4 -5
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0h0imx2._.js → node_modules_0_4__2k._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0pbr55t._.js → node_modules_0bqsyfk._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_06vr-0a._.js → node_modules_0bzw~9d._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0k7u4.c._.js → node_modules_0fsewd2._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0c6z_cw._.js → node_modules_0l~40og._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0jo-w3s._.js → node_modules_0pk6e0.._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0zkg-x0._.js → node_modules_0smdx~2._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/{node_modules_0fcqekz._.js → node_modules_0uej915._.js} +1 -1
- package/.next/standalone/apps/web/.next/server/middleware-build-manifest.js +5 -5
- package/.next/standalone/apps/web/.next/server/pages/404.html +1 -1
- package/.next/standalone/apps/web/.next/server/pages/500.html +1 -1
- package/.next/standalone/apps/web/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/apps/web/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/apps/web/.next/static/chunks/{094hkpbli0k9s.js → 02.u6zk77a338.js} +10 -11
- package/.next/standalone/apps/web/.next/static/chunks/05n6~h_wwg.jj.js +5 -0
- package/.next/standalone/apps/web/.next/static/chunks/0_ygv4z~5c_9z.js +5 -0
- package/.next/standalone/apps/web/.next/static/chunks/0g5hoj5w-z.~6.js +1 -0
- package/.next/standalone/apps/web/.next/static/chunks/0nhcl~svhi_26.js +7 -0
- package/.next/standalone/apps/web/.next/static/chunks/0p4dfdgz~3qt3.js +5 -0
- package/.next/standalone/apps/web/.next/static/chunks/0p9~lk406udl5.css +4 -0
- package/.next/standalone/apps/web/.next/static/chunks/0q-u7bl7oa42n.js +1 -0
- package/.next/standalone/apps/web/.next/static/chunks/0q_j4~6_etj_q.js +7 -0
- package/.next/standalone/apps/web/.next/static/chunks/0zjymvayyxt-d.js +5 -0
- package/.next/standalone/apps/web/.next/static/chunks/{0lp.2eizum8y~.js → 11rs2-0jl1rzr.js} +1 -1
- package/.next/standalone/apps/web/.next/static/chunks/{15~pc9ql1ab38.js → 158q94mo2-6sx.js} +7 -7
- package/.next/standalone/apps/web/.next/static/chunks/167xa3jy_0g.u.js +1 -0
- package/.next/standalone/apps/web/.next/static/chunks/{turbopack-0079niub0zo4u.js → turbopack-07pr2uza0.4cp.js} +1 -1
- package/dist/server/basic-auth.js +9 -1
- package/dist/server/generated/prisma/internal/class.js +1 -1
- package/dist/server/index.js +20 -0
- package/dist/server/lib/claude-command.d.ts +6 -0
- package/dist/server/lib/claude-command.js +85 -0
- package/dist/server/lib/claude-config-guard.d.ts +12 -0
- package/dist/server/lib/claude-config-guard.js +49 -0
- package/dist/server/lib/lmstudio.d.ts +24 -0
- package/dist/server/lib/lmstudio.js +198 -0
- package/dist/server/lib/local-llm-env.d.ts +28 -0
- package/dist/server/lib/local-llm-env.js +91 -0
- package/dist/server/lib/local-llm.d.ts +56 -0
- package/dist/server/lib/local-llm.js +366 -0
- package/dist/server/lib/ollama-settings.d.ts +16 -10
- package/dist/server/lib/ollama-settings.js +104 -91
- package/dist/server/lib/repositories/task.js +3 -0
- package/dist/server/lib/searxng.d.ts +26 -0
- package/dist/server/lib/searxng.js +308 -0
- package/dist/server/lib/services/task-service.js +1 -3
- package/dist/server/routes/local-llm.d.ts +2 -0
- package/dist/server/routes/local-llm.js +192 -0
- package/dist/server/routes/mcp-web.d.ts +2 -0
- package/dist/server/routes/mcp-web.js +107 -0
- package/dist/server/routes/onboarding.js +4 -4
- package/dist/server/routes/settings.js +100 -26
- package/dist/server/routes/tasks.js +5 -1
- package/dist/server/routes/terminal.js +77 -28
- package/npm-shrinkwrap.json +5 -5
- package/package.json +1 -1
- package/prisma/schema.prisma +1 -1
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_016-lxb._.js +0 -3
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0hh~0f6._.js +0 -3
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0r0xwce._.js +0 -6
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_0sbp1da._.js +0 -6
- package/.next/standalone/apps/web/.next/server/chunks/ssr/_12c1w~~._.js +0 -6
- package/.next/standalone/apps/web/.next/static/chunks/0229rjr88pv9k.js +0 -1
- package/.next/standalone/apps/web/.next/static/chunks/04l9g6rg7~-d5.js +0 -1
- package/.next/standalone/apps/web/.next/static/chunks/0citvl2medd0s.js +0 -11
- package/.next/standalone/apps/web/.next/static/chunks/0e8u7rqrqfiiy.js +0 -1
- package/.next/standalone/apps/web/.next/static/chunks/0pg---_6a_4ls.css +0 -4
- package/.next/standalone/apps/web/.next/static/chunks/0uv~zl3--e3wo.js +0 -11
- package/.next/standalone/apps/web/.next/static/chunks/11rpr3..poyv8.js +0 -5
- package/.next/standalone/apps/web/.next/static/chunks/1200zkjn5n2w7.js +0 -1
- /package/.next/standalone/apps/web/.next/static/{otC3BXpS9D6HI8k0EQ2ZH → C1cjF-gU-snY_atxJbn1v}/_buildManifest.js +0 -0
- /package/.next/standalone/apps/web/.next/static/{otC3BXpS9D6HI8k0EQ2ZH → C1cjF-gU-snY_atxJbn1v}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/apps/web/.next/static/{otC3BXpS9D6HI8k0EQ2ZH → C1cjF-gU-snY_atxJbn1v}/_ssgManifest.js +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
module.exports=[81814,a=>{"use strict";let b,c,d,e,f,g,h,i,j,k,l,m;var n,o,p,q=a.i(87924),r=a.i(72131),s=a.i(50944),u=a.i(210),v=a.i(60137);let w=(0,v.default)("code-xml",[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]]),x=(0,v.default)("ellipsis",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]]);var y=a.i(99464);let z=(0,v.default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);var A=a.i(81560),B=a.i(91399),C=a.i(92712),D=a.i(67060),E=a.i(21034),F=a.i(78512),G=a.i(88381),H=a.i(33508),I=a.i(96221);let J=(0,v.default)("circle-pause",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"10",x2:"10",y1:"15",y2:"9",key:"c1nkhi"}],["line",{x1:"14",x2:"14",y1:"15",y2:"9",key:"h65svq"}]]);var K=a.i(92e3);let L=(0,v.default)("wifi-off",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}],["path",{d:"M5 12.859a10 10 0 0 1 5.17-2.69",key:"1dl1wf"}],["path",{d:"M19 12.859a10 10 0 0 0-2.007-1.523",key:"4k23kn"}],["path",{d:"M2 8.82a15 15 0 0 1 4.177-2.643",key:"1grhjp"}],["path",{d:"M22 8.82a15 15 0 0 0-11.288-3.764",key:"z3jwby"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);var M=a.i(67453),N=a.i(62722),O=a.i(63588),P=a.i(90002),Q=a.i(39524),R=a.i(56026),S=a.i(1464);function T({entry:a}){if(!a||"idle"===a.terminal)return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,q.jsx)(J,{className:"w-3 h-3"}),(0,q.jsx)("span",{children:"idle"})]});if("connecting"===a.terminal)return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,q.jsx)(I.Loader2,{className:"w-3 h-3 animate-spin"}),(0,q.jsx)("span",{children:"connecting"})]});if("error"===a.terminal)return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-destructive",children:[(0,q.jsx)(K.AlertCircle,{className:"w-3 h-3"}),(0,q.jsx)("span",{children:"error"})]});if("exited"===a.terminal||"paused"===a.terminal)return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,q.jsx)(L,{className:"w-3 h-3"}),(0,q.jsx)("span",{children:a.terminal})]});switch(a.claude){case"running":return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-primary",children:[(0,q.jsx)(I.Loader2,{className:"w-3 h-3 animate-spin"}),(0,q.jsx)("span",{children:"running"})]});case"waiting":return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-warning",children:[(0,q.jsx)(O.MessageSquare,{className:"w-3 h-3"}),(0,q.jsx)("span",{children:"waiting"})]});case"success":return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-success",children:[(0,q.jsx)(M.CheckCircle2,{className:"w-3 h-3"}),(0,q.jsx)("span",{children:"success"})]});case"failure":case"error":return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-destructive",children:[(0,q.jsx)(N.XCircle,{className:"w-3 h-3"}),(0,q.jsx)("span",{children:"failure"===a.claude?"failure":"error"})]});default:return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,q.jsx)(J,{className:"w-3 h-3"}),(0,q.jsx)("span",{children:"idle"})]})}}function U({tabs:a,activeTabId:b,onTabChange:c,onTabCreateTerminal:d,onTabCreateClaude:e,
|
|
1
|
+
module.exports=[81814,a=>{"use strict";let b,c,d,e,f,g,h,i,j,k,l,m;var n,o,p,q=a.i(87924),r=a.i(72131),s=a.i(50944),u=a.i(210),v=a.i(60137);let w=(0,v.default)("code-xml",[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]]),x=(0,v.default)("ellipsis",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]]);var y=a.i(99464);let z=(0,v.default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);var A=a.i(81560),B=a.i(91399),C=a.i(92712),D=a.i(67060),E=a.i(21034),F=a.i(78512),G=a.i(88381),H=a.i(33508),I=a.i(96221);let J=(0,v.default)("circle-pause",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"10",x2:"10",y1:"15",y2:"9",key:"c1nkhi"}],["line",{x1:"14",x2:"14",y1:"15",y2:"9",key:"h65svq"}]]);var K=a.i(92e3);let L=(0,v.default)("wifi-off",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}],["path",{d:"M5 12.859a10 10 0 0 1 5.17-2.69",key:"1dl1wf"}],["path",{d:"M19 12.859a10 10 0 0 0-2.007-1.523",key:"4k23kn"}],["path",{d:"M2 8.82a15 15 0 0 1 4.177-2.643",key:"1grhjp"}],["path",{d:"M22 8.82a15 15 0 0 0-11.288-3.764",key:"z3jwby"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);var M=a.i(67453),N=a.i(62722),O=a.i(63588),P=a.i(90002),Q=a.i(39524),R=a.i(56026),S=a.i(1464);function T({entry:a}){if(!a||"idle"===a.terminal)return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,q.jsx)(J,{className:"w-3 h-3"}),(0,q.jsx)("span",{children:"idle"})]});if("connecting"===a.terminal)return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,q.jsx)(I.Loader2,{className:"w-3 h-3 animate-spin"}),(0,q.jsx)("span",{children:"connecting"})]});if("error"===a.terminal)return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-destructive",children:[(0,q.jsx)(K.AlertCircle,{className:"w-3 h-3"}),(0,q.jsx)("span",{children:"error"})]});if("exited"===a.terminal||"paused"===a.terminal)return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,q.jsx)(L,{className:"w-3 h-3"}),(0,q.jsx)("span",{children:a.terminal})]});switch(a.claude){case"running":return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-primary",children:[(0,q.jsx)(I.Loader2,{className:"w-3 h-3 animate-spin"}),(0,q.jsx)("span",{children:"running"})]});case"waiting":return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-warning",children:[(0,q.jsx)(O.MessageSquare,{className:"w-3 h-3"}),(0,q.jsx)("span",{children:"waiting"})]});case"success":return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-success",children:[(0,q.jsx)(M.CheckCircle2,{className:"w-3 h-3"}),(0,q.jsx)("span",{children:"success"})]});case"failure":case"error":return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-destructive",children:[(0,q.jsx)(N.XCircle,{className:"w-3 h-3"}),(0,q.jsx)("span",{children:"failure"===a.claude?"failure":"error"})]});default:return(0,q.jsxs)("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,q.jsx)(J,{className:"w-3 h-3"}),(0,q.jsx)("span",{children:"idle"})]})}}function U({tabs:a,activeTabId:b,onTabChange:c,onTabCreateTerminal:d,onTabCreateClaude:e,localLlmOption:f,onTabCreateLocalLlm:g,onTabDelete:h,tabStatusMap:i,onVoiceInputTranscribed:j}){let k=(0,r.useRef)([]),[l,m]=(0,r.useState)({left:0,width:0}),[n,o]=(0,r.useState)(null);(0,r.useEffect)(()=>{let c=a.findIndex(a=>a.tab_id===b);if(-1!==c&&k.current[c]){let a=k.current[c];a&&m({left:a.offsetLeft,width:a.offsetWidth})}},[b,a]);let p=new Map,s=0;for(let b of a)"terminal"===b.mode&&(s+=1,p.set(b.tab_id,s));return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(P.ConfirmDialog,{open:null!==n,onOpenChange:a=>{a.open||o(null)},title:"Delete Tab",message:n?.isRunning?"This tab is running. Are you sure you want to delete it?":"Delete this tab?",confirmLabel:"Delete",cancelLabel:"Cancel",onConfirm:()=>{n&&h(n.tabId)},variant:"danger"}),(0,q.jsxs)("div",{className:"relative flex items-center gap-2 overflow-x-auto border-b border-border pb-1",children:[a.map((a,d)=>{let e=b===a.tab_id,g=i?.get(a.tab_id),h=(g?.claude==="running"||g?.claude==="waiting")&&g?.terminal==="connected";return(0,q.jsxs)("div",{ref:a=>{k.current[d]=a},onClick:()=>c(a.tab_id),className:`
|
|
2
2
|
flex items-center gap-2 px-4 pt-1 pb-2 h-10 flex-shrink-0 transition-colors cursor-pointer
|
|
3
|
-
${e?"text-primary":
|
|
4
|
-
`,children:[(0,q.jsx)("div",{className:"font-medium flex items-center gap-2",children:"terminal"===a.mode?(0,q.jsxs)("span",{className:"text-xs",children:["terminal ",p.get(a.tab_id)]}):(0,q.jsxs)(q.Fragment,{children:["ollama"===a.mode&&(0,q.jsx)("span",{title:"Claude Code (Ollama)",children:(0,q.jsx)(S.OllamaIcon,{className:"w-3 h-3"})}),(0,q.jsx)(T,{entry:f})]})}),(0,q.jsx)(Q.Button,{variant:"ghost",size:"icon-xs",onClick:b=>{b.stopPropagation(),o({tabId:a.tab_id,isRunning:g})},children:(0,q.jsx)(H.X,{className:"w-4 h-4"})})]},a.tab_id)}),(0,q.jsxs)("div",{className:"flex items-center gap-2 flex-shrink-0 ml-auto",children:[j&&(0,q.jsx)(R.VoiceInputButton,{onTranscribed:j}),(0,q.jsx)("div",{className:"w-px self-stretch bg-theme"}),d&&(0,q.jsx)(Q.Button,{size:"icon",onClick:d,title:"Open terminal",children:(0,q.jsx)(z,{className:"w-4 h-4"})}),(0,q.jsx)(Q.Button,{size:"icon",onClick:e,title:"Claude Code (Anthropic)",children:(0,q.jsx)(S.ClaudeIcon,{className:"w-4 h-4"})}),f&&(0,q.jsx)("span",{title:g?`Claude Code (Ollama: ${g})`:"Ollama のモデルが未設定です(Settings で設定)",children:(0,q.jsx)(Q.Button,{size:"icon",onClick:f,disabled:!g,children:(0,q.jsx)(S.OllamaIcon,{className:"w-4 h-4"})})})]}),(0,q.jsx)("div",{className:"absolute bottom-0 h-0.5 bg-primary transition-[left,width]",style:{left:`${l.left}px`,width:`${l.width}px`}})]})]})}var V=Object.defineProperty,W=Object.getOwnPropertyDescriptor,X=(a,b,c,d)=>{for(var e,f=d>1?void 0:d?W(b,c):b,g=a.length-1;g>=0;g--)(e=a[g])&&(f=(d?e(b,c,f):e(f))||f);return d&&f&&V(b,c,f),f},Y=(a,b)=>(c,d)=>b(c,d,a),Z="Terminal input",$="Too much output to announce, navigate to rows manually to read";function _(a,b,c,d){var e;e=a=a.replace(/\r?\n/g,"\r"),a=c.decPrivateModes.bracketedPasteMode&&!0!==d.rawOptions.ignoreBracketedPasteMode?"\x1b[200~"+e+"\x1b[201~":e,c.triggerDataEvent(a,!0),b.value=""}function aa(a,b,c){let d=c.getBoundingClientRect(),e=a.clientX-d.left-10,f=a.clientY-d.top-10;b.style.width="20px",b.style.height="20px",b.style.left=`${e}px`,b.style.top=`${f}px`,b.style.zIndex="1000",b.focus()}function ab(a,b,c,d,e){aa(a,b,c),e&&d.rightClickSelect(a),b.value=d.selectionText,b.select()}function ac(a){return a>65535?String.fromCharCode(((a-=65536)>>10)+55296)+String.fromCharCode(a%1024+56320):String.fromCharCode(a)}function ad(a,b=0,c=a.length){let d="";for(let e=b;e<c;++e){let b=a[e];b>65535?(b-=65536,d+=String.fromCharCode((b>>10)+55296)+String.fromCharCode(b%1024+56320)):d+=String.fromCharCode(b)}return d}var ae=class{constructor(){this._interim=0}clear(){this._interim=0}decode(a,b){let c=a.length;if(!c)return 0;let d=0,e=0;if(this._interim){let c=a.charCodeAt(e++);56320<=c&&c<=57343?b[d++]=(this._interim-55296)*1024+c-56320+65536:(b[d++]=this._interim,b[d++]=c),this._interim=0}for(let f=e;f<c;++f){let e=a.charCodeAt(f);if(55296<=e&&e<=56319){if(++f>=c)return this._interim=e,d;let g=a.charCodeAt(f);56320<=g&&g<=57343?b[d++]=(e-55296)*1024+g-56320+65536:(b[d++]=e,b[d++]=g);continue}65279!==e&&(b[d++]=e)}return d}},af=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(a,b){let c=a.length;if(!c)return 0;let d=0,e,f,g,h,i=0,j=0;if(this.interim[0]){let e=!1,f=this.interim[0];f&=(224&f)==192?31:(240&f)==224?15:7;let g=0,h;for(;(h=63&this.interim[++g])&&g<4;)f<<=6,f|=h;let i=(224&this.interim[0])==192?2:(240&this.interim[0])==224?3:4,k=i-g;for(;j<k;){if(j>=c)return 0;if((192&(h=a[j++]))!=128){j--,e=!0;break}this.interim[g++]=h,f<<=6,f|=63&h}e||(2===i?f<128?j--:b[d++]=f:3===i?f<2048||f>=55296&&f<=57343||65279===f||(b[d++]=f):f<65536||f>1114111||(b[d++]=f)),this.interim.fill(0)}let k=c-4,l=j;for(;l<c;){for(;l<k&&!(128&(e=a[l]))&&!(128&(f=a[l+1]))&&!(128&(g=a[l+2]))&&!(128&(h=a[l+3]));)b[d++]=e,b[d++]=f,b[d++]=g,b[d++]=h,l+=4;if((e=a[l++])<128)b[d++]=e;else if((224&e)==192){if(l>=c)return this.interim[0]=e,d;if((192&(f=a[l++]))!=128||(i=(31&e)<<6|63&f)<128){l--;continue}b[d++]=i}else if((240&e)==224){if(l>=c)return this.interim[0]=e,d;if((192&(f=a[l++]))!=128){l--;continue}if(l>=c)return this.interim[0]=e,this.interim[1]=f,d;if((192&(g=a[l++]))!=128){l--;continue}if((i=(15&e)<<12|(63&f)<<6|63&g)<2048||i>=55296&&i<=57343||65279===i)continue;b[d++]=i}else if((248&e)==240){if(l>=c)return this.interim[0]=e,d;if((192&(f=a[l++]))!=128){l--;continue}if(l>=c)return this.interim[0]=e,this.interim[1]=f,d;if((192&(g=a[l++]))!=128){l--;continue}if(l>=c)return this.interim[0]=e,this.interim[1]=f,this.interim[2]=g,d;if((192&(h=a[l++]))!=128){l--;continue}if((i=(7&e)<<18|(63&f)<<12|(63&g)<<6|63&h)<65536||i>1114111)continue;b[d++]=i}}return d}},ag=class a{constructor(){this.fg=0,this.bg=0,this.extended=new ah}static toColorRGB(a){return[a>>>16&255,a>>>8&255,255&a]}static fromColorRGB(a){return(255&a[0])<<16|(255&a[1])<<8|255&a[2]}clone(){let b=new a;return b.fg=this.fg,b.bg=this.bg,b.extended=this.extended.clone(),b}isInverse(){return 0x4000000&this.fg}isBold(){return 0x8000000&this.fg}isUnderline(){return this.hasExtendedAttrs()&&0!==this.extended.underlineStyle?1:0x10000000&this.fg}isBlink(){return 0x20000000&this.fg}isInvisible(){return 0x40000000&this.fg}isItalic(){return 0x4000000&this.bg}isDim(){return 0x8000000&this.bg}isStrikethrough(){return 0x80000000&this.fg}isProtected(){return 0x20000000&this.bg}isOverline(){return 0x40000000&this.bg}getFgColorMode(){return 0x3000000&this.fg}getBgColorMode(){return 0x3000000&this.bg}isFgRGB(){return(0x3000000&this.fg)==0x3000000}isBgRGB(){return(0x3000000&this.bg)==0x3000000}isFgPalette(){return(0x3000000&this.fg)==0x1000000||(0x3000000&this.fg)==0x2000000}isBgPalette(){return(0x3000000&this.bg)==0x1000000||(0x3000000&this.bg)==0x2000000}isFgDefault(){return(0x3000000&this.fg)==0}isBgDefault(){return(0x3000000&this.bg)==0}isAttributeDefault(){return 0===this.fg&&0===this.bg}getFgColor(){switch(0x3000000&this.fg){case 0x1000000:case 0x2000000:return 255&this.fg;case 0x3000000:return 0xffffff&this.fg;default:return -1}}getBgColor(){switch(0x3000000&this.bg){case 0x1000000:case 0x2000000:return 255&this.bg;case 0x3000000:return 0xffffff&this.bg;default:return -1}}hasExtendedAttrs(){return 0x10000000&this.bg}updateExtended(){this.extended.isEmpty()?this.bg&=-0x10000001:this.bg|=0x10000000}getUnderlineColor(){if(0x10000000&this.bg&&~this.extended.underlineColor)switch(0x3000000&this.extended.underlineColor){case 0x1000000:case 0x2000000:return 255&this.extended.underlineColor;case 0x3000000:return 0xffffff&this.extended.underlineColor}return this.getFgColor()}getUnderlineColorMode(){return 0x10000000&this.bg&&~this.extended.underlineColor?0x3000000&this.extended.underlineColor:this.getFgColorMode()}isUnderlineColorRGB(){return 0x10000000&this.bg&&~this.extended.underlineColor?(0x3000000&this.extended.underlineColor)==0x3000000:this.isFgRGB()}isUnderlineColorPalette(){return 0x10000000&this.bg&&~this.extended.underlineColor?(0x3000000&this.extended.underlineColor)==0x1000000||(0x3000000&this.extended.underlineColor)==0x2000000:this.isFgPalette()}isUnderlineColorDefault(){return 0x10000000&this.bg&&~this.extended.underlineColor?(0x3000000&this.extended.underlineColor)==0:this.isFgDefault()}getUnderlineStyle(){return 0x10000000&this.fg?0x10000000&this.bg?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},ah=class a{constructor(a=0,b=0){this._ext=0,this._urlId=0,this._ext=a,this._urlId=b}get ext(){return this._urlId?-0x1c000001&this._ext|this.underlineStyle<<26:this._ext}set ext(a){this._ext=a}get underlineStyle(){return this._urlId?5:(0x1c000000&this._ext)>>26}set underlineStyle(a){this._ext&=-0x1c000001,this._ext|=a<<26&0x1c000000}get underlineColor(){return 0x3ffffff&this._ext}set underlineColor(a){this._ext&=-0x4000000,this._ext|=0x3ffffff&a}get urlId(){return this._urlId}set urlId(a){this._urlId=a}get underlineVariantOffset(){let a=(0xe0000000&this._ext)>>29;return a<0?0xfffffff8^a:a}set underlineVariantOffset(a){this._ext&=0x1fffffff,this._ext|=a<<29&0xe0000000}clone(){return new a(this._ext,this._urlId)}isEmpty(){return 0===this.underlineStyle&&0===this._urlId}},ai=class a extends ag{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new ah,this.combinedData=""}static fromCharData(b){let c=new a;return c.setFromCharData(b),c}isCombined(){return 2097152&this.content}getWidth(){return this.content>>22}getChars(){return 2097152&this.content?this.combinedData:2097151&this.content?ac(2097151&this.content):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content}setFromCharData(a){this.fg=a[0],this.bg=0;let b=!1;if(a[1].length>2)b=!0;else if(2===a[1].length){let c=a[1].charCodeAt(0);if(55296<=c&&c<=56319){let d=a[1].charCodeAt(1);56320<=d&&d<=57343?this.content=(c-55296)*1024+d-56320+65536|a[2]<<22:b=!0}else b=!0}else this.content=a[1].charCodeAt(0)|a[2]<<22;b&&(this.combinedData=a[1],this.content=2097152|a[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},aj="di$target",ak="di$dependencies",al=new Map;function am(a){if(al.has(a))return al.get(a);let b=function(a,c,d){var e,f,g;if(3!=arguments.length)throw Error("@IServiceName-decorator can only be used to decorate a parameter");e=b,f=a,g=d,f[aj]===f?f[ak].push({id:e,index:g}):(f[ak]=[{id:e,index:g}],f[aj]=f)};return b._id=a,al.set(a,b),b}var an=am("BufferService"),ao=am("CoreMouseService"),ap=am("CoreService"),aq=am("CharsetService"),ar=am("InstantiationService"),as=am("LogService"),at=am("OptionsService"),au=am("OscLinkService"),av=am("UnicodeService"),aw=am("DecorationService"),ax=class{constructor(a,b,c){this._bufferService=a,this._optionsService=b,this._oscLinkService=c}provideLinks(a,b){let c=this._bufferService.buffer.lines.get(a-1);if(!c)return void b(void 0);let d=[],e=this._optionsService.rawOptions.linkHandler,f=new ai,g=c.getTrimmedLength(),h=-1,i=-1,j=!1;for(let b=0;b<g;b++)if(!(-1===i&&!c.hasContent(b))){if(c.loadCell(b,f),f.hasExtendedAttrs()&&f.extended.urlId)if(-1===i){i=b,h=f.extended.urlId;continue}else j=f.extended.urlId!==h;else -1!==i&&(j=!0);if(j||-1!==i&&b===g-1){let c=this._oscLinkService.getLinkData(h)?.uri;if(c){let f={start:{x:i+1,y:a},end:{x:b+ +(!j&&b===g-1),y:a}},h=!1;if(!e?.allowNonHttpProtocols)try{let a=new URL(c);["http:","https:"].includes(a.protocol)||(h=!0)}catch{h=!0}h||d.push({text:c,range:f,activate:(a,b)=>e?e.activate(a,b,f):function(a){if(confirm(`Do you want to navigate to ${a}?
|
|
3
|
+
${e?"text-primary":h?"text-primary-light":"text-muted-foreground hover:text-foreground"}
|
|
4
|
+
`,children:[(0,q.jsx)("div",{className:"font-medium flex items-center gap-2",children:"terminal"===a.mode?(0,q.jsxs)("span",{className:"text-xs",children:["terminal ",p.get(a.tab_id)]}):(0,q.jsxs)(q.Fragment,{children:[("local"===a.mode||"ollama"===a.mode||"lmstudio"===a.mode)&&(0,q.jsx)("span",{title:"Claude Code (ローカルLLM)",children:(0,q.jsx)(S.LocalLlmTabIcon,{provider:f?.provider??null,className:"w-3 h-3"})}),(0,q.jsx)(T,{entry:g})]})}),(0,q.jsx)(Q.Button,{variant:"ghost",size:"icon-xs",onClick:b=>{b.stopPropagation(),o({tabId:a.tab_id,isRunning:h})},children:(0,q.jsx)(H.X,{className:"w-4 h-4"})})]},a.tab_id)}),(0,q.jsxs)("div",{className:"flex items-center gap-2 flex-shrink-0 ml-auto",children:[j&&(0,q.jsx)(R.VoiceInputButton,{onTranscribed:j}),(0,q.jsx)("div",{className:"w-px self-stretch bg-theme"}),d&&(0,q.jsx)(Q.Button,{size:"icon",onClick:d,title:"Open terminal",children:(0,q.jsx)(z,{className:"w-4 h-4"})}),(0,q.jsx)(Q.Button,{size:"icon",onClick:e,title:"Claude Code (Anthropic)",children:(0,q.jsx)(S.ClaudeIcon,{className:"w-4 h-4"})}),f&&(0,q.jsx)("span",{title:f.model?`Claude Code (ローカルLLM: ${f.model})`:"ローカルLLMのモデルが未設定です(Settings で設定)",children:(0,q.jsx)(Q.Button,{size:"icon",onClick:g,disabled:!f.model,children:(0,q.jsx)(S.LocalLlmTabIcon,{provider:f.provider,className:"w-4 h-4"})})})]}),(0,q.jsx)("div",{className:"absolute bottom-0 h-0.5 bg-primary transition-[left,width]",style:{left:`${l.left}px`,width:`${l.width}px`}})]})]})}var V=Object.defineProperty,W=Object.getOwnPropertyDescriptor,X=(a,b,c,d)=>{for(var e,f=d>1?void 0:d?W(b,c):b,g=a.length-1;g>=0;g--)(e=a[g])&&(f=(d?e(b,c,f):e(f))||f);return d&&f&&V(b,c,f),f},Y=(a,b)=>(c,d)=>b(c,d,a),Z="Terminal input",$="Too much output to announce, navigate to rows manually to read";function _(a,b,c,d){var e;e=a=a.replace(/\r?\n/g,"\r"),a=c.decPrivateModes.bracketedPasteMode&&!0!==d.rawOptions.ignoreBracketedPasteMode?"\x1b[200~"+e+"\x1b[201~":e,c.triggerDataEvent(a,!0),b.value=""}function aa(a,b,c){let d=c.getBoundingClientRect(),e=a.clientX-d.left-10,f=a.clientY-d.top-10;b.style.width="20px",b.style.height="20px",b.style.left=`${e}px`,b.style.top=`${f}px`,b.style.zIndex="1000",b.focus()}function ab(a,b,c,d,e){aa(a,b,c),e&&d.rightClickSelect(a),b.value=d.selectionText,b.select()}function ac(a){return a>65535?String.fromCharCode(((a-=65536)>>10)+55296)+String.fromCharCode(a%1024+56320):String.fromCharCode(a)}function ad(a,b=0,c=a.length){let d="";for(let e=b;e<c;++e){let b=a[e];b>65535?(b-=65536,d+=String.fromCharCode((b>>10)+55296)+String.fromCharCode(b%1024+56320)):d+=String.fromCharCode(b)}return d}var ae=class{constructor(){this._interim=0}clear(){this._interim=0}decode(a,b){let c=a.length;if(!c)return 0;let d=0,e=0;if(this._interim){let c=a.charCodeAt(e++);56320<=c&&c<=57343?b[d++]=(this._interim-55296)*1024+c-56320+65536:(b[d++]=this._interim,b[d++]=c),this._interim=0}for(let f=e;f<c;++f){let e=a.charCodeAt(f);if(55296<=e&&e<=56319){if(++f>=c)return this._interim=e,d;let g=a.charCodeAt(f);56320<=g&&g<=57343?b[d++]=(e-55296)*1024+g-56320+65536:(b[d++]=e,b[d++]=g);continue}65279!==e&&(b[d++]=e)}return d}},af=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(a,b){let c=a.length;if(!c)return 0;let d=0,e,f,g,h,i=0,j=0;if(this.interim[0]){let e=!1,f=this.interim[0];f&=(224&f)==192?31:(240&f)==224?15:7;let g=0,h;for(;(h=63&this.interim[++g])&&g<4;)f<<=6,f|=h;let i=(224&this.interim[0])==192?2:(240&this.interim[0])==224?3:4,k=i-g;for(;j<k;){if(j>=c)return 0;if((192&(h=a[j++]))!=128){j--,e=!0;break}this.interim[g++]=h,f<<=6,f|=63&h}e||(2===i?f<128?j--:b[d++]=f:3===i?f<2048||f>=55296&&f<=57343||65279===f||(b[d++]=f):f<65536||f>1114111||(b[d++]=f)),this.interim.fill(0)}let k=c-4,l=j;for(;l<c;){for(;l<k&&!(128&(e=a[l]))&&!(128&(f=a[l+1]))&&!(128&(g=a[l+2]))&&!(128&(h=a[l+3]));)b[d++]=e,b[d++]=f,b[d++]=g,b[d++]=h,l+=4;if((e=a[l++])<128)b[d++]=e;else if((224&e)==192){if(l>=c)return this.interim[0]=e,d;if((192&(f=a[l++]))!=128||(i=(31&e)<<6|63&f)<128){l--;continue}b[d++]=i}else if((240&e)==224){if(l>=c)return this.interim[0]=e,d;if((192&(f=a[l++]))!=128){l--;continue}if(l>=c)return this.interim[0]=e,this.interim[1]=f,d;if((192&(g=a[l++]))!=128){l--;continue}if((i=(15&e)<<12|(63&f)<<6|63&g)<2048||i>=55296&&i<=57343||65279===i)continue;b[d++]=i}else if((248&e)==240){if(l>=c)return this.interim[0]=e,d;if((192&(f=a[l++]))!=128){l--;continue}if(l>=c)return this.interim[0]=e,this.interim[1]=f,d;if((192&(g=a[l++]))!=128){l--;continue}if(l>=c)return this.interim[0]=e,this.interim[1]=f,this.interim[2]=g,d;if((192&(h=a[l++]))!=128){l--;continue}if((i=(7&e)<<18|(63&f)<<12|(63&g)<<6|63&h)<65536||i>1114111)continue;b[d++]=i}}return d}},ag=class a{constructor(){this.fg=0,this.bg=0,this.extended=new ah}static toColorRGB(a){return[a>>>16&255,a>>>8&255,255&a]}static fromColorRGB(a){return(255&a[0])<<16|(255&a[1])<<8|255&a[2]}clone(){let b=new a;return b.fg=this.fg,b.bg=this.bg,b.extended=this.extended.clone(),b}isInverse(){return 0x4000000&this.fg}isBold(){return 0x8000000&this.fg}isUnderline(){return this.hasExtendedAttrs()&&0!==this.extended.underlineStyle?1:0x10000000&this.fg}isBlink(){return 0x20000000&this.fg}isInvisible(){return 0x40000000&this.fg}isItalic(){return 0x4000000&this.bg}isDim(){return 0x8000000&this.bg}isStrikethrough(){return 0x80000000&this.fg}isProtected(){return 0x20000000&this.bg}isOverline(){return 0x40000000&this.bg}getFgColorMode(){return 0x3000000&this.fg}getBgColorMode(){return 0x3000000&this.bg}isFgRGB(){return(0x3000000&this.fg)==0x3000000}isBgRGB(){return(0x3000000&this.bg)==0x3000000}isFgPalette(){return(0x3000000&this.fg)==0x1000000||(0x3000000&this.fg)==0x2000000}isBgPalette(){return(0x3000000&this.bg)==0x1000000||(0x3000000&this.bg)==0x2000000}isFgDefault(){return(0x3000000&this.fg)==0}isBgDefault(){return(0x3000000&this.bg)==0}isAttributeDefault(){return 0===this.fg&&0===this.bg}getFgColor(){switch(0x3000000&this.fg){case 0x1000000:case 0x2000000:return 255&this.fg;case 0x3000000:return 0xffffff&this.fg;default:return -1}}getBgColor(){switch(0x3000000&this.bg){case 0x1000000:case 0x2000000:return 255&this.bg;case 0x3000000:return 0xffffff&this.bg;default:return -1}}hasExtendedAttrs(){return 0x10000000&this.bg}updateExtended(){this.extended.isEmpty()?this.bg&=-0x10000001:this.bg|=0x10000000}getUnderlineColor(){if(0x10000000&this.bg&&~this.extended.underlineColor)switch(0x3000000&this.extended.underlineColor){case 0x1000000:case 0x2000000:return 255&this.extended.underlineColor;case 0x3000000:return 0xffffff&this.extended.underlineColor}return this.getFgColor()}getUnderlineColorMode(){return 0x10000000&this.bg&&~this.extended.underlineColor?0x3000000&this.extended.underlineColor:this.getFgColorMode()}isUnderlineColorRGB(){return 0x10000000&this.bg&&~this.extended.underlineColor?(0x3000000&this.extended.underlineColor)==0x3000000:this.isFgRGB()}isUnderlineColorPalette(){return 0x10000000&this.bg&&~this.extended.underlineColor?(0x3000000&this.extended.underlineColor)==0x1000000||(0x3000000&this.extended.underlineColor)==0x2000000:this.isFgPalette()}isUnderlineColorDefault(){return 0x10000000&this.bg&&~this.extended.underlineColor?(0x3000000&this.extended.underlineColor)==0:this.isFgDefault()}getUnderlineStyle(){return 0x10000000&this.fg?0x10000000&this.bg?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},ah=class a{constructor(a=0,b=0){this._ext=0,this._urlId=0,this._ext=a,this._urlId=b}get ext(){return this._urlId?-0x1c000001&this._ext|this.underlineStyle<<26:this._ext}set ext(a){this._ext=a}get underlineStyle(){return this._urlId?5:(0x1c000000&this._ext)>>26}set underlineStyle(a){this._ext&=-0x1c000001,this._ext|=a<<26&0x1c000000}get underlineColor(){return 0x3ffffff&this._ext}set underlineColor(a){this._ext&=-0x4000000,this._ext|=0x3ffffff&a}get urlId(){return this._urlId}set urlId(a){this._urlId=a}get underlineVariantOffset(){let a=(0xe0000000&this._ext)>>29;return a<0?0xfffffff8^a:a}set underlineVariantOffset(a){this._ext&=0x1fffffff,this._ext|=a<<29&0xe0000000}clone(){return new a(this._ext,this._urlId)}isEmpty(){return 0===this.underlineStyle&&0===this._urlId}},ai=class a extends ag{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new ah,this.combinedData=""}static fromCharData(b){let c=new a;return c.setFromCharData(b),c}isCombined(){return 2097152&this.content}getWidth(){return this.content>>22}getChars(){return 2097152&this.content?this.combinedData:2097151&this.content?ac(2097151&this.content):""}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content}setFromCharData(a){this.fg=a[0],this.bg=0;let b=!1;if(a[1].length>2)b=!0;else if(2===a[1].length){let c=a[1].charCodeAt(0);if(55296<=c&&c<=56319){let d=a[1].charCodeAt(1);56320<=d&&d<=57343?this.content=(c-55296)*1024+d-56320+65536|a[2]<<22:b=!0}else b=!0}else this.content=a[1].charCodeAt(0)|a[2]<<22;b&&(this.combinedData=a[1],this.content=2097152|a[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},aj="di$target",ak="di$dependencies",al=new Map;function am(a){if(al.has(a))return al.get(a);let b=function(a,c,d){var e,f,g;if(3!=arguments.length)throw Error("@IServiceName-decorator can only be used to decorate a parameter");e=b,f=a,g=d,f[aj]===f?f[ak].push({id:e,index:g}):(f[ak]=[{id:e,index:g}],f[aj]=f)};return b._id=a,al.set(a,b),b}var an=am("BufferService"),ao=am("CoreMouseService"),ap=am("CoreService"),aq=am("CharsetService"),ar=am("InstantiationService"),as=am("LogService"),at=am("OptionsService"),au=am("OscLinkService"),av=am("UnicodeService"),aw=am("DecorationService"),ax=class{constructor(a,b,c){this._bufferService=a,this._optionsService=b,this._oscLinkService=c}provideLinks(a,b){let c=this._bufferService.buffer.lines.get(a-1);if(!c)return void b(void 0);let d=[],e=this._optionsService.rawOptions.linkHandler,f=new ai,g=c.getTrimmedLength(),h=-1,i=-1,j=!1;for(let b=0;b<g;b++)if(!(-1===i&&!c.hasContent(b))){if(c.loadCell(b,f),f.hasExtendedAttrs()&&f.extended.urlId)if(-1===i){i=b,h=f.extended.urlId;continue}else j=f.extended.urlId!==h;else -1!==i&&(j=!0);if(j||-1!==i&&b===g-1){let c=this._oscLinkService.getLinkData(h)?.uri;if(c){let f={start:{x:i+1,y:a},end:{x:b+ +(!j&&b===g-1),y:a}},h=!1;if(!e?.allowNonHttpProtocols)try{let a=new URL(c);["http:","https:"].includes(a.protocol)||(h=!0)}catch{h=!0}h||d.push({text:c,range:f,activate:(a,b)=>e?e.activate(a,b,f):function(a){if(confirm(`Do you want to navigate to ${a}?
|
|
5
5
|
|
|
6
6
|
WARNING: This link could potentially be dangerous`)){let b=window.open();if(b){try{b.opener=null}catch{}b.location.href=a}else console.warn("Opening link blocked as opener could not be cleared")}}(b),hover:(a,b)=>e?.hover?.(a,b,f),leave:(a,b)=>e?.leave?.(a,b,f)})}j=!1,f.hasExtendedAttrs()&&f.extended.urlId?(i=b,h=f.extended.urlId):(i=-1,h=-1)}}b(d)}};ax=X([Y(0,an),Y(1,at),Y(2,au)],ax);var ay=am("CharSizeService"),az=am("CoreBrowserService"),aA=am("MouseService"),aB=am("RenderService"),aC=am("SelectionService"),aD=am("CharacterJoinerService"),aE=am("ThemeService"),aF=am("LinkProviderService"),aG=new class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(a){setTimeout(()=>{throw a.stack?aK.isErrorNoTelemetry(a)?new aK(a.message+`
|
|
7
7
|
|
|
@@ -18,8 +18,7 @@ WARNING: This link could potentially be dangerous`)){let b=window.open();if(b){t
|
|
|
18
18
|
`)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(a){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._refresh())),dN&&a&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)}_refresh(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})}_isClickInSelection(a){let b=this._getMouseBufferCoords(a),c=this._model.finalSelectionStart,d=this._model.finalSelectionEnd;return!!c&&!!d&&!!b&&this._areCoordsInSelection(b,c,d)}isCellInSelection(a,b){let c=this._model.finalSelectionStart,d=this._model.finalSelectionEnd;return!!c&&!!d&&this._areCoordsInSelection([a,b],c,d)}_areCoordsInSelection(a,b,c){return a[1]>b[1]&&a[1]<c[1]||b[1]===c[1]&&a[1]===b[1]&&a[0]>=b[0]&&a[0]<c[0]||b[1]<c[1]&&a[1]===c[1]&&a[0]<c[0]||b[1]<c[1]&&a[1]===b[1]&&a[0]>=b[0]}_selectWordAtCursor(a,b){let c=this._linkifier.currentLink?.link?.range;if(c)return this._model.selectionStart=[c.start.x-1,c.start.y-1],this._model.selectionStartLength=d0(c,this._bufferService.cols),this._model.selectionEnd=void 0,!0;let d=this._getMouseBufferCoords(a);return!!d&&(this._selectWordAt(d,b),this._model.selectionEnd=void 0,!0)}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(a,b){this._model.clearSelection(),a=Math.max(a,0),b=Math.min(b,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,a],this._model.selectionEnd=[this._bufferService.cols,b],this.refresh(),this._onSelectionChange.fire()}_handleTrim(a){this._model.handleTrim(a)&&this.refresh()}_getMouseBufferCoords(a){let b=this._mouseService.getCoords(a,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(b)return b[0]--,b[1]--,b[1]+=this._bufferService.buffer.ydisp,b}_getMouseEventScrollAmount(a){let b=dw(this._coreBrowserService.window,a,this._screenElement)[1],c=this._renderService.dimensions.css.canvas.height;return b>=0&&b<=c?0:(b>c&&(b-=c),(b=Math.min(Math.max(b,-50),50)/50)/Math.abs(b)+Math.round(14*b))}shouldForceSelection(a){return dJ?a.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:a.shiftKey}handleMouseDown(a){if(this._mouseDownTimeStamp=a.timeStamp,!(2===a.button&&this.hasSelection)&&0===a.button){if(!this._enabled){if(!this.shouldForceSelection(a))return;a.stopPropagation()}a.preventDefault(),this._dragScrollAmount=0,this._enabled&&a.shiftKey?this._handleIncrementalClick(a):1===a.detail?this._handleSingleClick(a):2===a.detail?this._handleDoubleClick(a):3===a.detail&&this._handleTripleClick(a),this._addMouseDownListeners(),this.refresh(!0)}}_addMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=this._coreBrowserService.window.setInterval(()=>this._dragScroll(),50)}_removeMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),this._coreBrowserService.window.clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0}_handleIncrementalClick(a){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(a))}_handleSingleClick(a){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=3*!!this.shouldColumnSelect(a),this._model.selectionStart=this._getMouseBufferCoords(a),!this._model.selectionStart)return;this._model.selectionEnd=void 0;let b=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);b&&b.length!==this._model.selectionStart[0]&&0===b.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}_handleDoubleClick(a){this._selectWordAtCursor(a,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(a){let b=this._getMouseBufferCoords(a);b&&(this._activeSelectionMode=2,this._selectLineAt(b[1]))}shouldColumnSelect(a){return a.altKey&&!(dJ&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(a){if(a.stopImmediatePropagation(),!this._model.selectionStart)return;let b=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(a),!this._model.selectionEnd)return void this.refresh(!0);2===this._activeSelectionMode?this._model.selectionEnd[1]<this._model.selectionStart[1]?this._model.selectionEnd[0]=0:this._model.selectionEnd[0]=this._bufferService.cols:1===this._activeSelectionMode&&this._selectToWordAt(this._model.selectionEnd),this._dragScrollAmount=this._getMouseEventScrollAmount(a),3!==this._activeSelectionMode&&(this._dragScrollAmount>0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));let c=this._bufferService.buffer;if(this._model.selectionEnd[1]<c.lines.length){let a=c.lines.get(this._model.selectionEnd[1]);a&&0===a.hasWidth(this._model.selectionEnd[0])&&this._model.selectionEnd[0]<this._bufferService.cols&&this._model.selectionEnd[0]++}b&&b[0]===this._model.selectionEnd[0]&&b[1]===this._model.selectionEnd[1]||this.refresh(!0)}_dragScroll(){if(!(!this._model.selectionEnd||!this._model.selectionStart)&&this._dragScrollAmount){this._onRequestScrollLines.fire({amount:this._dragScrollAmount,suppressScrollEvent:!1});let a=this._bufferService.buffer;this._dragScrollAmount>0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(a.ydisp+this._bufferService.rows,a.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=a.ydisp),this.refresh()}}_handleMouseUp(a){let b=a.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&b<500&&a.altKey&&this._optionsService.rawOptions.altClickMovesCursor){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){let b=this._mouseService.getCoords(a,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(b&&void 0!==b[0]&&void 0!==b[1]){let a=function(a,b,c,d){var e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,u;let v,w=c.buffer.x,x=c.buffer.y;if(!c.buffer.hasScrollback){let u,v,y;return e=w,(0===dW(f=x,b,g=c,h=d).length?"":d$(dY(e,f,e,f-dX(f,g),!1,g).length,dZ("D",h)))+dW(x,b,c,d)+(i=w,j=x,k=a,u=dW(j,l=b,m=c,n=d).length>0?l-dX(l,m):j,y=(o=i,p=j,v=dW(q=k,r=l,s=m,n).length>0?r-dX(r,s):p,o<q&&v<=r||o>=q&&v<r?"C":"D"),d$(dY(i,u,k,l,"C"===y,m).length,dZ(y,n)))}if(x===b)return v=w>a?"D":"C",d$(Math.abs(w-a),dZ(v,d));v=x>b?"D":"C";let y=Math.abs(x-b);return d$((u=x>b?a:w,c.cols-u+(y-1)*c.cols+1+((x>b?w:a)-1)),dZ(v,d))}(b[0]-1,b[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(a,!0)}}}else this._fireEventIfSelectionChanged()}_fireEventIfSelectionChanged(){let a=this._model.finalSelectionStart,b=this._model.finalSelectionEnd,c=!!a&&!!b&&(a[0]!==b[0]||a[1]!==b[1]);if(!c){this._oldHasSelection&&this._fireOnSelectionChange(a,b,c);return}!a||!b||this._oldSelectionStart&&this._oldSelectionEnd&&a[0]===this._oldSelectionStart[0]&&a[1]===this._oldSelectionStart[1]&&b[0]===this._oldSelectionEnd[0]&&b[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(a,b,c)}_fireOnSelectionChange(a,b,c){this._oldSelectionStart=a,this._oldSelectionEnd=b,this._oldHasSelection=c,this._onSelectionChange.fire()}_handleBufferActivate(a){this.clearSelection(),this._trimListener.dispose(),this._trimListener=a.activeBuffer.lines.onTrim(a=>this._handleTrim(a))}_convertViewportColToCharacterIndex(a,b){let c=b;for(let d=0;b>=d;d++){let e=a.loadCell(d,this._workCell).getChars().length;0===this._workCell.getWidth()?c--:e>1&&b!==d&&(c+=e-1)}return c}setSelection(a,b,c){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[a,b],this._model.selectionStartLength=c,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(a){this._isClickInSelection(a)||(this._selectWordAtCursor(a,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(a,b,c=!0,d=!0){if(a[0]>=this._bufferService.cols)return;let e=this._bufferService.buffer,f=e.lines.get(a[1]);if(!f)return;let g=e.translateBufferLineToString(a[1],!1),h=this._convertViewportColToCharacterIndex(f,a[0]),i=h,j=a[0]-h,k=0,l=0,m=0,n=0;if(" "===g.charAt(h)){for(;h>0&&" "===g.charAt(h-1);)h--;for(;i<g.length&&" "===g.charAt(i+1);)i++}else{let b=a[0],c=a[0];0===f.getWidth(b)&&(k++,b--),2===f.getWidth(c)&&(l++,c++);let d=f.getString(c).length;for(d>1&&(n+=d-1,i+=d-1);b>0&&h>0&&!this._isCharWordSeparator(f.loadCell(b-1,this._workCell));){f.loadCell(b-1,this._workCell);let a=this._workCell.getChars().length;0===this._workCell.getWidth()?(k++,b--):a>1&&(m+=a-1,h-=a-1),h--,b--}for(;c<f.length&&i+1<g.length&&!this._isCharWordSeparator(f.loadCell(c+1,this._workCell));){f.loadCell(c+1,this._workCell);let a=this._workCell.getChars().length;2===this._workCell.getWidth()?(l++,c++):a>1&&(n+=a-1,i+=a-1),i++,c++}}i++;let o=h+j-k+m,p=Math.min(this._bufferService.cols,i-h+k+l-m-n);if(!(!b&&""===g.slice(h,i).trim())){if(c&&0===o&&32!==f.getCodePoint(0)){let b=e.lines.get(a[1]-1);if(b&&f.isWrapped&&32!==b.getCodePoint(this._bufferService.cols-1)){let b=this._getWordAt([this._bufferService.cols-1,a[1]-1],!1,!0,!1);if(b){let a=this._bufferService.cols-b.start;o-=a,p+=a}}}if(d&&o+p===this._bufferService.cols&&32!==f.getCodePoint(this._bufferService.cols-1)){let b=e.lines.get(a[1]+1);if(b?.isWrapped&&32!==b.getCodePoint(0)){let b=this._getWordAt([0,a[1]+1],!1,!1,!0);b&&(p+=b.length)}}return{start:o,length:p}}}_selectWordAt(a,b){let c=this._getWordAt(a,b);if(c){for(;c.start<0;)c.start+=this._bufferService.cols,a[1]--;this._model.selectionStart=[c.start,a[1]],this._model.selectionStartLength=c.length}}_selectToWordAt(a){let b=this._getWordAt(a,!0);if(b){let c=a[1];for(;b.start<0;)b.start+=this._bufferService.cols,c--;if(!this._model.areSelectionValuesReversed())for(;b.start+b.length>this._bufferService.cols;)b.length-=this._bufferService.cols,c++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?b.start:b.start+b.length,c]}}_isCharWordSeparator(a){return 0!==a.getWidth()&&this._optionsService.rawOptions.wordSeparator.indexOf(a.getChars())>=0}_selectLineAt(a){let b=this._bufferService.buffer.getWrappedRangeForLine(a),c={start:{x:0,y:b.first},end:{x:this._bufferService.cols-1,y:b.last}};this._model.selectionStart=[0,b.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=d0(c,this._bufferService.cols)}};d2=X([Y(3,an),Y(4,ap),Y(5,aA),Y(6,at),Y(7,aB),Y(8,az)],d2);var d3=class{constructor(){this._data={}}set(a,b,c){this._data[a]||(this._data[a]={}),this._data[a][b]=c}get(a,b){return this._data[a]?this._data[a][b]:void 0}clear(){this._data={}}},d4=class{constructor(){this._color=new d3,this._css=new d3}setCss(a,b,c){this._css.set(a,b,c)}getCss(a,b){return this._css.get(a,b)}setColor(a,b,c){this._color.set(a,b,c)}getColor(a,b){return this._color.get(a,b)}clear(){this._color.clear(),this._css.clear()}},d5=Object.freeze((()=>{let a=[eF.toColor("#2e3436"),eF.toColor("#cc0000"),eF.toColor("#4e9a06"),eF.toColor("#c4a000"),eF.toColor("#3465a4"),eF.toColor("#75507b"),eF.toColor("#06989a"),eF.toColor("#d3d7cf"),eF.toColor("#555753"),eF.toColor("#ef2929"),eF.toColor("#8ae234"),eF.toColor("#fce94f"),eF.toColor("#729fcf"),eF.toColor("#ad7fa8"),eF.toColor("#34e2e2"),eF.toColor("#eeeeec")],b=[0,95,135,175,215,255];for(let c=0;c<216;c++){let d=b[c/36%6|0],e=b[c/6%6|0],f=b[c%6];a.push({css:cW.toCss(d,e,f),rgba:cW.toRgba(d,e,f)})}for(let b=0;b<24;b++){let c=8+10*b;a.push({css:cW.toCss(c,c,c),rgba:cW.toRgba(c,c,c)})}return a})()),d6=eF.toColor("#ffffff"),d7=eF.toColor("#000000"),d8=eF.toColor("#ffffff"),d9={css:"rgba(255, 255, 255, 0.3)",rgba:0xffffff4d},ea=class extends aU{constructor(a){super(),this._optionsService=a,this._contrastCache=new d4,this._halfContrastCache=new d4,this._onChangeColors=this._register(new bb),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:d6,background:d7,cursor:d8,cursorAccent:d7,selectionForeground:void 0,selectionBackgroundTransparent:d9,selectionBackgroundOpaque:eE.blend(d7,d9),selectionInactiveBackgroundTransparent:d9,selectionInactiveBackgroundOpaque:eE.blend(d7,d9),scrollbarSliderBackground:eE.opacity(d6,.2),scrollbarSliderHoverBackground:eE.opacity(d6,.4),scrollbarSliderActiveBackground:eE.opacity(d6,.5),overviewRulerBorder:d6,ansi:d5.slice(),contrastCache:this._contrastCache,halfContrastCache:this._halfContrastCache},this._updateRestoreColors(),this._setTheme(this._optionsService.rawOptions.theme),this._register(this._optionsService.onSpecificOptionChange("minimumContrastRatio",()=>this._contrastCache.clear())),this._register(this._optionsService.onSpecificOptionChange("theme",()=>this._setTheme(this._optionsService.rawOptions.theme)))}get colors(){return this._colors}_setTheme(a={}){let b=this._colors;if(b.foreground=eb(a.foreground,d6),b.background=eb(a.background,d7),b.cursor=eE.blend(b.background,eb(a.cursor,d8)),b.cursorAccent=eE.blend(b.background,eb(a.cursorAccent,d7)),b.selectionBackgroundTransparent=eb(a.selectionBackground,d9),b.selectionBackgroundOpaque=eE.blend(b.background,b.selectionBackgroundTransparent),b.selectionInactiveBackgroundTransparent=eb(a.selectionInactiveBackground,b.selectionBackgroundTransparent),b.selectionInactiveBackgroundOpaque=eE.blend(b.background,b.selectionInactiveBackgroundTransparent),b.selectionForeground=a.selectionForeground?eb(a.selectionForeground,c_):void 0,b.selectionForeground===c_&&(b.selectionForeground=void 0),eE.isOpaque(b.selectionBackgroundTransparent)&&(b.selectionBackgroundTransparent=eE.opacity(b.selectionBackgroundTransparent,.3)),eE.isOpaque(b.selectionInactiveBackgroundTransparent)&&(b.selectionInactiveBackgroundTransparent=eE.opacity(b.selectionInactiveBackgroundTransparent,.3)),b.scrollbarSliderBackground=eb(a.scrollbarSliderBackground,eE.opacity(b.foreground,.2)),b.scrollbarSliderHoverBackground=eb(a.scrollbarSliderHoverBackground,eE.opacity(b.foreground,.4)),b.scrollbarSliderActiveBackground=eb(a.scrollbarSliderActiveBackground,eE.opacity(b.foreground,.5)),b.overviewRulerBorder=eb(a.overviewRulerBorder,d6),b.ansi=d5.slice(),b.ansi[0]=eb(a.black,d5[0]),b.ansi[1]=eb(a.red,d5[1]),b.ansi[2]=eb(a.green,d5[2]),b.ansi[3]=eb(a.yellow,d5[3]),b.ansi[4]=eb(a.blue,d5[4]),b.ansi[5]=eb(a.magenta,d5[5]),b.ansi[6]=eb(a.cyan,d5[6]),b.ansi[7]=eb(a.white,d5[7]),b.ansi[8]=eb(a.brightBlack,d5[8]),b.ansi[9]=eb(a.brightRed,d5[9]),b.ansi[10]=eb(a.brightGreen,d5[10]),b.ansi[11]=eb(a.brightYellow,d5[11]),b.ansi[12]=eb(a.brightBlue,d5[12]),b.ansi[13]=eb(a.brightMagenta,d5[13]),b.ansi[14]=eb(a.brightCyan,d5[14]),b.ansi[15]=eb(a.brightWhite,d5[15]),a.extendedAnsi){let c=Math.min(b.ansi.length-16,a.extendedAnsi.length);for(let d=0;d<c;d++)b.ansi[d+16]=eb(a.extendedAnsi[d],d5[d+16])}this._contrastCache.clear(),this._halfContrastCache.clear(),this._updateRestoreColors(),this._onChangeColors.fire(this.colors)}restoreColor(a){this._restoreColor(a),this._onChangeColors.fire(this.colors)}_restoreColor(a){if(void 0===a){for(let a=0;a<this._restoreColors.ansi.length;++a)this._colors.ansi[a]=this._restoreColors.ansi[a];return}switch(a){case 256:this._colors.foreground=this._restoreColors.foreground;break;case 257:this._colors.background=this._restoreColors.background;break;case 258:this._colors.cursor=this._restoreColors.cursor;break;default:this._colors.ansi[a]=this._restoreColors.ansi[a]}}modifyColors(a){a(this._colors),this._onChangeColors.fire(this.colors)}_updateRestoreColors(){this._restoreColors={foreground:this._colors.foreground,background:this._colors.background,cursor:this._colors.cursor,ansi:this._colors.ansi.slice()}}};function eb(a,b){if(void 0!==a)try{return eF.toColor(a)}catch{}return b}ea=X([Y(0,at)],ea);var ec=class{constructor(...a){for(let[b,c]of(this._entries=new Map,a))this.set(b,c)}set(a,b){let c=this._entries.get(a);return this._entries.set(a,b),c}forEach(a){for(let[b,c]of this._entries.entries())a(b,c)}has(a){return this._entries.has(a)}get(a){return this._entries.get(a)}},ed=class{constructor(){this._services=new ec,this._services.set(ar,this)}setService(a,b){this._services.set(a,b)}getService(a){return this._services.get(a)}createInstance(a,...b){let c=(a[ak]||[]).sort((a,b)=>a.index-b.index),d=[];for(let b of c){let c=this._services.get(b.id);if(!c)throw Error(`[createInstance] ${a.name} depends on UNKNOWN service ${b.id._id}.`);d.push(c)}let e=c.length>0?c[0].index:b.length;if(b.length!==e)throw Error(`[createInstance] First service dependency of ${a.name} at position ${e+1} conflicts with ${b.length} static arguments`);return new a(...b,...d)}},ee={trace:0,debug:1,info:2,warn:3,error:4,off:5},ef=class extends aU{constructor(a){super(),this._optionsService=a,this._logLevel=5,this._updateLogLevel(),this._register(this._optionsService.onSpecificOptionChange("logLevel",()=>this._updateLogLevel()))}get logLevel(){return this._logLevel}_updateLogLevel(){this._logLevel=ee[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(a){for(let b=0;b<a.length;b++)"function"==typeof a[b]&&(a[b]=a[b]())}_log(a,b,c){this._evalLazyOptionalParams(c),a.call(console,(this._optionsService.options.logger?"":"xterm.js: ")+b,...c)}trace(a,...b){this._logLevel<=0&&this._log(this._optionsService.options.logger?.trace.bind(this._optionsService.options.logger)??console.log,a,b)}debug(a,...b){this._logLevel<=1&&this._log(this._optionsService.options.logger?.debug.bind(this._optionsService.options.logger)??console.log,a,b)}info(a,...b){this._logLevel<=2&&this._log(this._optionsService.options.logger?.info.bind(this._optionsService.options.logger)??console.info,a,b)}warn(a,...b){this._logLevel<=3&&this._log(this._optionsService.options.logger?.warn.bind(this._optionsService.options.logger)??console.warn,a,b)}error(a,...b){this._logLevel<=4&&this._log(this._optionsService.options.logger?.error.bind(this._optionsService.options.logger)??console.error,a,b)}};ef=X([Y(0,at)],ef);var eg=class extends aU{constructor(a){super(),this._maxLength=a,this.onDeleteEmitter=this._register(new bb),this.onDelete=this.onDeleteEmitter.event,this.onInsertEmitter=this._register(new bb),this.onInsert=this.onInsertEmitter.event,this.onTrimEmitter=this._register(new bb),this.onTrim=this.onTrimEmitter.event,this._array=Array(this._maxLength),this._startIndex=0,this._length=0}get maxLength(){return this._maxLength}set maxLength(a){if(this._maxLength===a)return;let b=Array(a);for(let c=0;c<Math.min(a,this.length);c++)b[c]=this._array[this._getCyclicIndex(c)];this._array=b,this._maxLength=a,this._startIndex=0}get length(){return this._length}set length(a){if(a>this._length)for(let b=this._length;b<a;b++)this._array[b]=void 0;this._length=a}get(a){return this._array[this._getCyclicIndex(a)]}set(a,b){this._array[this._getCyclicIndex(a)]=b}push(a){this._array[this._getCyclicIndex(this._length)]=a,this._length===this._maxLength?(this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1)):this._length++}recycle(){if(this._length!==this._maxLength)throw Error("Can only recycle when the buffer is full");return this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1),this._array[this._getCyclicIndex(this._length-1)]}get isFull(){return this._length===this._maxLength}pop(){return this._array[this._getCyclicIndex(this._length---1)]}splice(a,b,...c){if(b){for(let c=a;c<this._length-b;c++)this._array[this._getCyclicIndex(c)]=this._array[this._getCyclicIndex(c+b)];this._length-=b,this.onDeleteEmitter.fire({index:a,amount:b})}for(let b=this._length-1;b>=a;b--)this._array[this._getCyclicIndex(b+c.length)]=this._array[this._getCyclicIndex(b)];for(let b=0;b<c.length;b++)this._array[this._getCyclicIndex(a+b)]=c[b];if(c.length&&this.onInsertEmitter.fire({index:a,amount:c.length}),this._length+c.length>this._maxLength){let a=this._length+c.length-this._maxLength;this._startIndex+=a,this._length=this._maxLength,this.onTrimEmitter.fire(a)}else this._length+=c.length}trimStart(a){a>this._length&&(a=this._length),this._startIndex+=a,this._length-=a,this.onTrimEmitter.fire(a)}shiftElements(a,b,c){if(!(b<=0)){if(a<0||a>=this._length)throw Error("start argument out of range");if(a+c<0)throw Error("Cannot shift elements in list beyond index 0");if(c>0){for(let d=b-1;d>=0;d--)this.set(a+d+c,this.get(a+d));let d=a+b+c-this._length;if(d>0)for(this._length+=d;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let d=0;d<b;d++)this.set(a+d+c,this.get(a+d))}}_getCyclicIndex(a){return(this._startIndex+a)%this._maxLength}},eh=Object.freeze(new ag),ei=0,ej=class a{constructor(a,b,c=!1){this.isWrapped=c,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*a);let d=b||ai.fromCharData([0,"",1,0]);for(let b=0;b<a;++b)this.setCell(b,d);this.length=a}get(a){let b=this._data[3*a+0],c=2097151&b;return[this._data[3*a+1],2097152&b?this._combined[a]:c?ac(c):"",b>>22,2097152&b?this._combined[a].charCodeAt(this._combined[a].length-1):c]}set(a,b){this._data[3*a+1]=b[0],b[1].length>1?(this._combined[a]=b[1],this._data[3*a+0]=2097152|a|b[2]<<22):this._data[3*a+0]=b[1].charCodeAt(0)|b[2]<<22}getWidth(a){return this._data[3*a+0]>>22}hasWidth(a){return 0xc00000&this._data[3*a+0]}getFg(a){return this._data[3*a+1]}getBg(a){return this._data[3*a+2]}hasContent(a){return 4194303&this._data[3*a+0]}getCodePoint(a){let b=this._data[3*a+0];return 2097152&b?this._combined[a].charCodeAt(this._combined[a].length-1):2097151&b}isCombined(a){return 2097152&this._data[3*a+0]}getString(a){let b=this._data[3*a+0];return 2097152&b?this._combined[a]:2097151&b?ac(2097151&b):""}isProtected(a){return 0x20000000&this._data[3*a+2]}loadCell(a,b){return ei=3*a,b.content=this._data[ei+0],b.fg=this._data[ei+1],b.bg=this._data[ei+2],2097152&b.content&&(b.combinedData=this._combined[a]),0x10000000&b.bg&&(b.extended=this._extendedAttrs[a]),b}setCell(a,b){2097152&b.content&&(this._combined[a]=b.combinedData),0x10000000&b.bg&&(this._extendedAttrs[a]=b.extended),this._data[3*a+0]=b.content,this._data[3*a+1]=b.fg,this._data[3*a+2]=b.bg}setCellFromCodepoint(a,b,c,d){0x10000000&d.bg&&(this._extendedAttrs[a]=d.extended),this._data[3*a+0]=b|c<<22,this._data[3*a+1]=d.fg,this._data[3*a+2]=d.bg}addCodepointToCell(a,b,c){let d=this._data[3*a+0];2097152&d?this._combined[a]+=ac(b):2097151&d?(this._combined[a]=ac(2097151&d)+ac(b),d&=-2097152,d|=2097152):d=4194304|b,c&&(d&=-0xc00001,d|=c<<22),this._data[3*a+0]=d}insertCells(a,b,c){if((a%=this.length)&&2===this.getWidth(a-1)&&this.setCellFromCodepoint(a-1,0,1,c),b<this.length-a){let d=new ai;for(let c=this.length-a-b-1;c>=0;--c)this.setCell(a+b+c,this.loadCell(a+c,d));for(let d=0;d<b;++d)this.setCell(a+d,c)}else for(let b=a;b<this.length;++b)this.setCell(b,c);2===this.getWidth(this.length-1)&&this.setCellFromCodepoint(this.length-1,0,1,c)}deleteCells(a,b,c){if(a%=this.length,b<this.length-a){let d=new ai;for(let c=0;c<this.length-a-b;++c)this.setCell(a+c,this.loadCell(a+b+c,d));for(let a=this.length-b;a<this.length;++a)this.setCell(a,c)}else for(let b=a;b<this.length;++b)this.setCell(b,c);a&&2===this.getWidth(a-1)&&this.setCellFromCodepoint(a-1,0,1,c),0!==this.getWidth(a)||this.hasContent(a)||this.setCellFromCodepoint(a,0,1,c)}replaceCells(a,b,c,d=!1){if(d){for(a&&2===this.getWidth(a-1)&&!this.isProtected(a-1)&&this.setCellFromCodepoint(a-1,0,1,c),b<this.length&&2===this.getWidth(b-1)&&!this.isProtected(b)&&this.setCellFromCodepoint(b,0,1,c);a<b&&a<this.length;)this.isProtected(a)||this.setCell(a,c),a++;return}for(a&&2===this.getWidth(a-1)&&this.setCellFromCodepoint(a-1,0,1,c),b<this.length&&2===this.getWidth(b-1)&&this.setCellFromCodepoint(b,0,1,c);a<b&&a<this.length;)this.setCell(a++,c)}resize(a,b){if(a===this.length)return 4*this._data.length*2<this._data.buffer.byteLength;let c=3*a;if(a>this.length){if(this._data.buffer.byteLength>=4*c)this._data=new Uint32Array(this._data.buffer,0,c);else{let a=new Uint32Array(c);a.set(this._data),this._data=a}for(let c=this.length;c<a;++c)this.setCell(c,b)}else{this._data=this._data.subarray(0,c);let b=Object.keys(this._combined);for(let c=0;c<b.length;c++){let d=parseInt(b[c],10);d>=a&&delete this._combined[d]}let d=Object.keys(this._extendedAttrs);for(let b=0;b<d.length;b++){let c=parseInt(d[b],10);c>=a&&delete this._extendedAttrs[c]}}return this.length=a,4*c*2<this._data.buffer.byteLength}cleanupMemory(){if(4*this._data.length*2<this._data.buffer.byteLength){let a=new Uint32Array(this._data.length);return a.set(this._data),this._data=a,1}return 0}fill(a,b=!1){if(b){for(let b=0;b<this.length;++b)this.isProtected(b)||this.setCell(b,a);return}this._combined={},this._extendedAttrs={};for(let b=0;b<this.length;++b)this.setCell(b,a)}copyFrom(a){for(let b in this.length!==a.length?this._data=new Uint32Array(a._data):this._data.set(a._data),this.length=a.length,this._combined={},a._combined)this._combined[b]=a._combined[b];for(let b in this._extendedAttrs={},a._extendedAttrs)this._extendedAttrs[b]=a._extendedAttrs[b];this.isWrapped=a.isWrapped}clone(){let b=new a(0);for(let a in b._data=new Uint32Array(this._data),b.length=this.length,this._combined)b._combined[a]=this._combined[a];for(let a in this._extendedAttrs)b._extendedAttrs[a]=this._extendedAttrs[a];return b.isWrapped=this.isWrapped,b}getTrimmedLength(){for(let a=this.length-1;a>=0;--a)if(4194303&this._data[3*a+0])return a+(this._data[3*a+0]>>22);return 0}getNoBgTrimmedLength(){for(let a=this.length-1;a>=0;--a)if(4194303&this._data[3*a+0]||0x3000000&this._data[3*a+2])return a+(this._data[3*a+0]>>22);return 0}copyCellsFrom(a,b,c,d,e){let f=a._data;if(e)for(let e=d-1;e>=0;e--){for(let a=0;a<3;a++)this._data[(c+e)*3+a]=f[(b+e)*3+a];0x10000000&f[(b+e)*3+2]&&(this._extendedAttrs[c+e]=a._extendedAttrs[b+e])}else for(let e=0;e<d;e++){for(let a=0;a<3;a++)this._data[(c+e)*3+a]=f[(b+e)*3+a];0x10000000&f[(b+e)*3+2]&&(this._extendedAttrs[c+e]=a._extendedAttrs[b+e])}let g=Object.keys(a._combined);for(let d=0;d<g.length;d++){let e=parseInt(g[d],10);e>=b&&(this._combined[e-b+c]=a._combined[e])}}translateToString(a,b,c,d){b=b??0,c=c??this.length,a&&(c=Math.min(c,this.getTrimmedLength())),d&&(d.length=0);let e="";for(;b<c;){let a=this._data[3*b+0],c=2097151&a,f=2097152&a?this._combined[b]:c?ac(c):" ";if(e+=f,d)for(let a=0;a<f.length;++a)d.push(b);b+=a>>22||1}return d&&d.push(b),e}};function ek(a,b,c){if(b===a.length-1)return a[b].getTrimmedLength();let d=!a[b].hasContent(c-1)&&1===a[b].getWidth(c-1),e=2===a[b+1].getWidth(0);return d&&e?c-1:c}var el=class a{constructor(b){this.line=b,this.isDisposed=!1,this._disposables=[],this._id=a._nextId++,this._onDispose=this.register(new bb),this.onDispose=this._onDispose.event}get id(){return this._id}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),aQ(this._disposables),this._disposables.length=0)}register(a){return this._disposables.push(a),a}};el._nextId=1;var em={},en=em.B;em[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"},em.A={"#":"£"},em.B=void 0,em[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"},em.C=em[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},em.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"},em.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"},em.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"},em.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"},em.E=em[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"},em.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"},em.H=em[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},em["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"};var eo=class{constructor(a,b,c){this._hasScrollback=a,this._optionsService=b,this._bufferService=c,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=eh.clone(),this.savedCharset=en,this.markers=[],this._nullCell=ai.fromCharData([0,"",1,0]),this._whitespaceCell=ai.fromCharData([0," ",1,32]),this._isClearing=!1,this._memoryCleanupQueue=new dS,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new eg(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(a){return a?(this._nullCell.fg=a.fg,this._nullCell.bg=a.bg,this._nullCell.extended=a.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new ah),this._nullCell}getWhitespaceCell(a){return a?(this._whitespaceCell.fg=a.fg,this._whitespaceCell.bg=a.bg,this._whitespaceCell.extended=a.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new ah),this._whitespaceCell}getBlankLine(a,b){return new ej(this._bufferService.cols,this.getNullCell(a),b)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){let a=this.ybase+this.y-this.ydisp;return a>=0&&a<this._rows}_getCorrectBufferLength(a){if(!this._hasScrollback)return a;let b=a+this._optionsService.rawOptions.scrollback;return b>0xffffffff?0xffffffff:b}fillViewportRows(a){if(0===this.lines.length){void 0===a&&(a=eh);let b=this._rows;for(;b--;)this.lines.push(this.getBlankLine(a))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new eg(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(a,b){let c=this.getNullCell(eh),d=0,e=this._getCorrectBufferLength(b);if(e>this.lines.maxLength&&(this.lines.maxLength=e),this.lines.length>0){if(this._cols<a)for(let b=0;b<this.lines.length;b++)d+=+this.lines.get(b).resize(a,c);let f=0;if(this._rows<b)for(let d=this._rows;d<b;d++)this.lines.length<b+this.ybase&&(this._optionsService.rawOptions.windowsMode||void 0!==this._optionsService.rawOptions.windowsPty.backend||void 0!==this._optionsService.rawOptions.windowsPty.buildNumber?this.lines.push(new ej(a,c)):this.ybase>0&&this.lines.length<=this.ybase+this.y+f+1?(this.ybase--,f++,this.ydisp>0&&this.ydisp--):this.lines.push(new ej(a,c)));else for(let a=this._rows;a>b;a--)this.lines.length>b+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(e<this.lines.maxLength){let a=this.lines.length-e;a>0&&(this.lines.trimStart(a),this.ybase=Math.max(this.ybase-a,0),this.ydisp=Math.max(this.ydisp-a,0),this.savedY=Math.max(this.savedY-a,0)),this.lines.maxLength=e}this.x=Math.min(this.x,a-1),this.y=Math.min(this.y,b-1),f&&(this.y+=f),this.savedX=Math.min(this.savedX,a-1),this.scrollTop=0}if(this.scrollBottom=b-1,this._isReflowEnabled&&(this._reflow(a,b),this._cols>a))for(let b=0;b<this.lines.length;b++)d+=+this.lines.get(b).resize(a,c);this._cols=a,this._rows=b,this._memoryCleanupQueue.clear(),d>.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue(()=>this._batchedMemoryCleanup()))}_batchedMemoryCleanup(){let a=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,a=!1);let b=0;for(;this._memoryCleanupPosition<this.lines.length;)if((b+=this.lines.get(this._memoryCleanupPosition++).cleanupMemory())>100)return!0;return a}get _isReflowEnabled(){let a=this._optionsService.rawOptions.windowsPty;return a&&a.buildNumber?this._hasScrollback&&"conpty"===a.backend&&a.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(a,b){this._cols!==a&&(a>this._cols?this._reflowLarger(a,b):this._reflowSmaller(a,b))}_reflowLarger(a,b){let c=this._optionsService.rawOptions.reflowCursorLine,d=function(a,b,c,d,e,f){let g=[];for(let h=0;h<a.length-1;h++){let i=h,j=a.get(++i);if(!j.isWrapped)continue;let k=[a.get(h)];for(;i<a.length&&j.isWrapped;)k.push(j),j=a.get(++i);if(!f&&d>=h&&d<i){h+=k.length-1;continue}let l=0,m=ek(k,0,b),n=1,o=0;for(;n<k.length;){let a=ek(k,n,b),d=Math.min(a-o,c-m);k[l].copyCellsFrom(k[n],o,m,d,!1),(m+=d)===c&&(l++,m=0),(o+=d)===a&&(n++,o=0),0===m&&0!==l&&2===k[l-1].getWidth(c-1)&&(k[l].copyCellsFrom(k[l-1],c-1,m++,1,!1),k[l-1].setCell(c-1,e))}k[l].replaceCells(m,c,e);let p=0;for(let a=k.length-1;a>0&&(a>l||0===k[a].getTrimmedLength());a--)p++;p>0&&(g.push(h+k.length-p),g.push(p)),h+=k.length-1}return g}(this.lines,this._cols,a,this.ybase+this.y,this.getNullCell(eh),c);if(d.length>0){let c=function(a,b){let c=[],d=0,e=b[0],f=0;for(let g=0;g<a.length;g++)if(e===g){let c=b[++d];a.onDeleteEmitter.fire({index:g-f,amount:c}),g+=c-1,f+=c,e=b[++d]}else c.push(g);return{layout:c,countRemoved:f}}(this.lines,d);(function(a,b){let c=[];for(let d=0;d<b.length;d++)c.push(a.get(b[d]));for(let b=0;b<c.length;b++)a.set(b,c[b]);a.length=b.length})(this.lines,c.layout),this._reflowLargerAdjustViewport(a,b,c.countRemoved)}}_reflowLargerAdjustViewport(a,b,c){let d=this.getNullCell(eh),e=c;for(;e-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length<b&&this.lines.push(new ej(a,d))):(this.ydisp===this.ybase&&this.ydisp--,this.ybase--);this.savedY=Math.max(this.savedY-c,0)}_reflowSmaller(a,b){let c=this._optionsService.rawOptions.reflowCursorLine,d=this.getNullCell(eh),e=[],f=0;for(let g=this.lines.length-1;g>=0;g--){let h=this.lines.get(g);if(!h||!h.isWrapped&&h.getTrimmedLength()<=a)continue;let i=[h];for(;h.isWrapped&&g>0;)h=this.lines.get(--g),i.unshift(h);if(!c){let a=this.ybase+this.y;if(a>=g&&a<g+i.length)continue}let j=i[i.length-1].getTrimmedLength(),k=function(a,b,c){let d=[],e=a.map((c,d)=>ek(a,d,b)).reduce((a,b)=>a+b),f=0,g=0,h=0;for(;h<e;){if(e-h<c){d.push(e-h);break}f+=c;let i=ek(a,g,b);f>i&&(f-=i,g++);let j=2===a[g].getWidth(f-1);j&&f--;let k=j?c-1:c;d.push(k),h+=k}return d}(i,this._cols,a),l=k.length-i.length,m;m=0===this.ybase&&this.y!==this.lines.length-1?Math.max(0,this.y-this.lines.maxLength+l):Math.max(0,this.lines.length-this.lines.maxLength+l);let n=[];for(let a=0;a<l;a++){let a=this.getBlankLine(eh,!0);n.push(a)}n.length>0&&(e.push({start:g+i.length+f,newLines:n}),f+=n.length),i.push(...n);let o=k.length-1,p=k[o];0===p&&(p=k[--o]);let q=i.length-l-1,r=j;for(;q>=0;){let a=Math.min(r,p);if(void 0===i[o])break;i[o].copyCellsFrom(i[q],r-a,p-a,a,!0),0==(p-=a)&&(p=k[--o]),0==(r-=a)&&(r=ek(i,Math.max(--q,0),this._cols))}for(let b=0;b<i.length;b++)k[b]<a&&i[b].setCell(k[b],d);let s=l-m;for(;s-- >0;)0===this.ybase?this.y<b-1?(this.y++,this.lines.pop()):(this.ybase++,this.ydisp++):this.ybase<Math.min(this.lines.maxLength,this.lines.length+f)-b&&(this.ybase===this.ydisp&&this.ydisp++,this.ybase++);this.savedY=Math.min(this.savedY+l,this.ybase+b-1)}if(e.length>0){let a=[],b=[];for(let a=0;a<this.lines.length;a++)b.push(this.lines.get(a));let c=this.lines.length,d=c-1,g=0,h=e[0];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+f);let i=0;for(let j=Math.min(this.lines.maxLength-1,c+f-1);j>=0;j--)if(h&&h.start>d+i){for(let a=h.newLines.length-1;a>=0;a--)this.lines.set(j--,h.newLines[a]);j++,a.push({index:d+1,amount:h.newLines.length}),i+=h.newLines.length,h=e[++g]}else this.lines.set(j,b[d--]);let j=0;for(let b=a.length-1;b>=0;b--)a[b].index+=j,this.lines.onInsertEmitter.fire(a[b]),j+=a[b].amount;let k=Math.max(0,c+f-this.lines.maxLength);k>0&&this.lines.onTrimEmitter.fire(k)}}translateBufferLineToString(a,b,c=0,d){let e=this.lines.get(a);return e?e.translateToString(b,c,d):""}getWrappedRangeForLine(a){let b=a,c=a;for(;b>0&&this.lines.get(b).isWrapped;)b--;for(;c+1<this.lines.length&&this.lines.get(c+1).isWrapped;)c++;return{first:b,last:c}}setupTabStops(a){for(null!=a?this.tabs[a]||(a=this.prevStop(a)):(this.tabs={},a=0);a<this._cols;a+=this._optionsService.rawOptions.tabStopWidth)this.tabs[a]=!0}prevStop(a){for(null==a&&(a=this.x);!this.tabs[--a]&&a>0;);return a>=this._cols?this._cols-1:a<0?0:a}nextStop(a){for(null==a&&(a=this.x);!this.tabs[++a]&&a<this._cols;);return a>=this._cols?this._cols-1:a<0?0:a}clearMarkers(a){this._isClearing=!0;for(let b=0;b<this.markers.length;b++)this.markers[b].line===a&&(this.markers[b].dispose(),this.markers.splice(b--,1));this._isClearing=!1}clearAllMarkers(){this._isClearing=!0;for(let a=0;a<this.markers.length;a++)this.markers[a].dispose();this.markers.length=0,this._isClearing=!1}addMarker(a){let b=new el(a);return this.markers.push(b),b.register(this.lines.onTrim(a=>{b.line-=a,b.line<0&&b.dispose()})),b.register(this.lines.onInsert(a=>{b.line>=a.index&&(b.line+=a.amount)})),b.register(this.lines.onDelete(a=>{b.line>=a.index&&b.line<a.index+a.amount&&b.dispose(),b.line>a.index&&(b.line-=a.amount)})),b.register(b.onDispose(()=>this._removeMarker(b))),b}_removeMarker(a){this._isClearing||this.markers.splice(this.markers.indexOf(a),1)}},ep=class extends aU{constructor(a,b){super(),this._optionsService=a,this._bufferService=b,this._onBufferActivate=this._register(new bb),this.onBufferActivate=this._onBufferActivate.event,this.reset(),this._register(this._optionsService.onSpecificOptionChange("scrollback",()=>this.resize(this._bufferService.cols,this._bufferService.rows))),this._register(this._optionsService.onSpecificOptionChange("tabStopWidth",()=>this.setupTabStops()))}reset(){this._normal=new eo(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new eo(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}),this.setupTabStops()}get alt(){return this._alt}get active(){return this._activeBuffer}get normal(){return this._normal}activateNormalBuffer(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clearAllMarkers(),this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))}activateAltBuffer(a){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(a),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))}resize(a,b){this._normal.resize(a,b),this._alt.resize(a,b),this.setupTabStops(a)}setupTabStops(a){this._normal.setupTabStops(a),this._alt.setupTabStops(a)}},eq=class extends aU{constructor(a){super(),this.isUserScrolling=!1,this._onResize=this._register(new bb),this.onResize=this._onResize.event,this._onScroll=this._register(new bb),this.onScroll=this._onScroll.event,this.cols=Math.max(a.rawOptions.cols||0,2),this.rows=Math.max(a.rawOptions.rows||0,1),this.buffers=this._register(new ep(a,this)),this._register(this.buffers.onBufferActivate(a=>{this._onScroll.fire(a.activeBuffer.ydisp)}))}get buffer(){return this.buffers.active}resize(a,b){let c=this.cols!==a,d=this.rows!==b;this.cols=a,this.rows=b,this.buffers.resize(a,b),this._onResize.fire({cols:a,rows:b,colsChanged:c,rowsChanged:d})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(a,b=!1){let c=this.buffer,d;(d=this._cachedBlankLine)&&d.length===this.cols&&d.getFg(0)===a.fg&&d.getBg(0)===a.bg||(d=c.getBlankLine(a,b),this._cachedBlankLine=d),d.isWrapped=b;let e=c.ybase+c.scrollTop,f=c.ybase+c.scrollBottom;if(0===c.scrollTop){let a=c.lines.isFull;f===c.lines.length-1?a?c.lines.recycle().copyFrom(d):c.lines.push(d.clone()):c.lines.splice(f+1,0,d.clone()),a?this.isUserScrolling&&(c.ydisp=Math.max(c.ydisp-1,0)):(c.ybase++,this.isUserScrolling||c.ydisp++)}else{let a=f-e+1;c.lines.shiftElements(e+1,a-1,-1),c.lines.set(f,d.clone())}this.isUserScrolling||(c.ydisp=c.ybase),this._onScroll.fire(c.ydisp)}scrollLines(a,b){let c=this.buffer;if(a<0){if(0===c.ydisp)return;this.isUserScrolling=!0}else a+c.ydisp>=c.ybase&&(this.isUserScrolling=!1);let d=c.ydisp;c.ydisp=Math.max(Math.min(c.ydisp+a,c.ybase),0),d!==c.ydisp&&(b||this._onScroll.fire(c.ydisp))}};eq=X([Y(0,at)],eq);var er={cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,cursorInactiveStyle:"outline",customGlyphs:!0,drawBoldTextInBrightColors:!0,documentOverride:null,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",ignoreBracketedPasteMode:!1,lineHeight:1,letterSpacing:0,linkHandler:null,logLevel:"info",logger:null,scrollback:1e3,scrollOnEraseInDisplay:!1,scrollOnUserInput:!0,scrollSensitivity:1,screenReaderMode:!1,smoothScrollDuration:0,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!1,allowTransparency:!1,tabStopWidth:8,theme:{},reflowCursorLine:!1,rescaleOverlappingGlyphs:!1,rightClickSelectsWord:dJ,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRuler:{}},es=["normal","bold","100","200","300","400","500","600","700","800","900"],et=class extends aU{constructor(a){super(),this._onOptionChange=this._register(new bb),this.onOptionChange=this._onOptionChange.event;let b={...er};for(let c in a)if(c in b)try{let d=a[c];b[c]=this._sanitizeAndValidateOption(c,d)}catch(a){console.error(a)}this.rawOptions=b,this.options={...b},this._setupOptions(),this._register(aR(()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null}))}onSpecificOptionChange(a,b){return this.onOptionChange(c=>{c===a&&b(this.rawOptions[a])})}onMultipleOptionChange(a,b){return this.onOptionChange(c=>{-1!==a.indexOf(c)&&b()})}_setupOptions(){let a=a=>{if(!(a in er))throw Error(`No option with key "${a}"`);return this.rawOptions[a]},b=(a,b)=>{if(!(a in er))throw Error(`No option with key "${a}"`);b=this._sanitizeAndValidateOption(a,b),this.rawOptions[a]!==b&&(this.rawOptions[a]=b,this._onOptionChange.fire(a))};for(let c in this.rawOptions){let d={get:a.bind(this,c),set:b.bind(this,c)};Object.defineProperty(this.options,c,d)}}_sanitizeAndValidateOption(a,b){switch(a){case"cursorStyle":var c;if(b||(b=er[a]),"block"!==(c=b)&&"underline"!==c&&"bar"!==c)throw Error(`"${b}" is not a valid value for ${a}`);break;case"wordSeparator":b||(b=er[a]);break;case"fontWeight":case"fontWeightBold":if("number"==typeof b&&1<=b&&b<=1e3)break;b=es.includes(b)?b:er[a];break;case"cursorWidth":b=Math.floor(b);case"lineHeight":case"tabStopWidth":if(b<1)throw Error(`${a} cannot be less than 1, value: ${b}`);break;case"minimumContrastRatio":b=Math.max(1,Math.min(21,Math.round(10*b)/10));break;case"scrollback":if((b=Math.min(b,0xffffffff))<0)throw Error(`${a} cannot be less than 0, value: ${b}`);break;case"fastScrollSensitivity":case"scrollSensitivity":if(b<=0)throw Error(`${a} cannot be less than or equal to 0, value: ${b}`);break;case"rows":case"cols":if(!b&&0!==b)throw Error(`${a} must be numeric, value: ${b}`);break;case"windowsPty":b=b??{}}return b}};function eu(a,b=5){if("object"!=typeof a)return a;let c=Array.isArray(a)?[]:{};for(let d in a)c[d]=b<=1?a[d]:a[d]&&eu(a[d],b-1);return c}var ev=Object.freeze({insertMode:!1}),ew=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,cursorBlink:void 0,cursorStyle:void 0,origin:!1,reverseWraparound:!1,sendFocus:!1,synchronizedOutput:!1,wraparound:!0}),ex=class extends aU{constructor(a,b,c){super(),this._bufferService=a,this._logService=b,this._optionsService=c,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this._register(new bb),this.onData=this._onData.event,this._onUserInput=this._register(new bb),this.onUserInput=this._onUserInput.event,this._onBinary=this._register(new bb),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this._register(new bb),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=eu(ev),this.decPrivateModes=eu(ew)}reset(){this.modes=eu(ev),this.decPrivateModes=eu(ew)}triggerDataEvent(a,b=!1){if(this._optionsService.rawOptions.disableStdin)return;let c=this._bufferService.buffer;b&&this._optionsService.rawOptions.scrollOnUserInput&&c.ybase!==c.ydisp&&this._onRequestScrollToBottom.fire(),b&&this._onUserInput.fire(),this._logService.debug(`sending data "${a}"`),this._logService.trace("sending data (codes)",()=>a.split("").map(a=>a.charCodeAt(0))),this._onData.fire(a)}triggerBinaryEvent(a){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${a}"`),this._logService.trace("sending binary (codes)",()=>a.split("").map(a=>a.charCodeAt(0))),this._onBinary.fire(a))}};ex=X([Y(0,an),Y(1,as),Y(2,at)],ex);var ey={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:a=>4!==a.button&&1===a.action&&(a.ctrl=!1,a.alt=!1,a.shift=!1,!0)},VT200:{events:19,restrict:a=>32!==a.action},DRAG:{events:23,restrict:a=>32!==a.action||3!==a.button},ANY:{events:31,restrict:a=>!0}};function ez(a,b){let c=16*!!a.ctrl|4*!!a.shift|8*!!a.alt;return 4===a.button?(c|=64,c|=a.action):(c|=3&a.button,4&a.button&&(c|=64),8&a.button&&(c|=128),32===a.action?c|=32:0!==a.action||b||(c|=3)),c}var eA=String.fromCharCode,eB={DEFAULT:a=>{let b=[ez(a,!1)+32,a.col+32,a.row+32];return b[0]>255||b[1]>255||b[2]>255?"":`\x1b[M${eA(b[0])}${eA(b[1])}${eA(b[2])}`},SGR:a=>{let b=0===a.action&&4!==a.button?"m":"M";return`\x1b[<${ez(a,!0)};${a.col};${a.row}${b}`},SGR_PIXELS:a=>{let b=0===a.action&&4!==a.button?"m":"M";return`\x1b[<${ez(a,!0)};${a.x};${a.y}${b}`}},eC=class extends aU{constructor(a,b,c){for(let d of(super(),this._bufferService=a,this._coreService=b,this._optionsService=c,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._lastEvent=null,this._wheelPartialScroll=0,this._onProtocolChange=this._register(new bb),this.onProtocolChange=this._onProtocolChange.event,Object.keys(ey)))this.addProtocol(d,ey[d]);for(let a of Object.keys(eB))this.addEncoding(a,eB[a]);this.reset()}addProtocol(a,b){this._protocols[a]=b}addEncoding(a,b){this._encodings[a]=b}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return 0!==this._protocols[this._activeProtocol].events}set activeProtocol(a){if(!this._protocols[a])throw Error(`unknown protocol "${a}"`);this._activeProtocol=a,this._onProtocolChange.fire(this._protocols[a].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(a){if(!this._encodings[a])throw Error(`unknown encoding "${a}"`);this._activeEncoding=a}reset(){this.activeProtocol="NONE",this.activeEncoding="DEFAULT",this._lastEvent=null,this._wheelPartialScroll=0}consumeWheelEvent(a,b,c){if(0===a.deltaY||a.shiftKey||void 0===b||void 0===c)return 0;let d=this._applyScrollModifier(a.deltaY,a);return a.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(d/=b/c+0,50>Math.abs(a.deltaY)&&(d*=.3),this._wheelPartialScroll+=d,d=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):a.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(d*=this._bufferService.rows),d}_applyScrollModifier(a,b){return b.altKey||b.ctrlKey||b.shiftKey?a*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:a*this._optionsService.rawOptions.scrollSensitivity}triggerMouseEvent(a){if(a.col<0||a.col>=this._bufferService.cols||a.row<0||a.row>=this._bufferService.rows||4===a.button&&32===a.action||3===a.button&&32!==a.action||4!==a.button&&(2===a.action||3===a.action)||(a.col++,a.row++,32===a.action&&this._lastEvent&&this._equalEvents(this._lastEvent,a,"SGR_PIXELS"===this._activeEncoding))||!this._protocols[this._activeProtocol].restrict(a))return!1;let b=this._encodings[this._activeEncoding](a);return b&&("DEFAULT"===this._activeEncoding?this._coreService.triggerBinaryEvent(b):this._coreService.triggerDataEvent(b,!0)),this._lastEvent=a,!0}explainEvents(a){return{down:!!(1&a),up:!!(2&a),drag:!!(4&a),move:!!(8&a),wheel:!!(16&a)}}_equalEvents(a,b,c){if(c){if(a.x!==b.x||a.y!==b.y)return!1}else if(a.col!==b.col||a.row!==b.row)return!1;return a.button===b.button&&a.action===b.action&&a.ctrl===b.ctrl&&a.alt===b.alt&&a.shift===b.shift}};eC=X([Y(0,an),Y(1,ap),Y(2,at)],eC);var eD,eE,eF,eG,eH,eI,eJ=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],eK=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],eL=class{constructor(){if(this.version="6",!eI){(eI=new Uint8Array(65536)).fill(1),eI[0]=0,eI.fill(0,1,32),eI.fill(0,127,160),eI.fill(2,4352,4448),eI[9001]=2,eI[9002]=2,eI.fill(2,11904,42192),eI[12351]=1,eI.fill(2,44032,55204),eI.fill(2,63744,64256),eI.fill(2,65040,65050),eI.fill(2,65072,65136),eI.fill(2,65280,65377),eI.fill(2,65504,65511);for(let a=0;a<eJ.length;++a)eI.fill(0,eJ[a][0],eJ[a][1]+1)}}wcwidth(a){return a<32?0:a<127?1:a<65536?eI[a]:!function(a,b){let c=0,d=b.length-1,e;if(a<b[0][0]||a>b[d][1])return!1;for(;d>=c;)if(a>b[e=c+d>>1][1])c=e+1;else{if(!(a<b[e][0]))return!0;d=e-1}return!1}(a,eK)?a>=131072&&a<=196605||a>=196608&&a<=262141?2:1:0}charProperties(a,b){let c=this.wcwidth(a),d=0===c&&0!==b;if(d){let a=eM.extractWidth(b);0===a?d=!1:a>c&&(c=a)}return eM.createPropertyValue(0,c,d)}},eM=class a{constructor(){this._providers=Object.create(null),this._active="",this._onChange=new bb,this.onChange=this._onChange.event;let a=new eL;this.register(a),this._active=a.version,this._activeProvider=a}static extractShouldJoin(a){return(1&a)!=0}static extractWidth(a){return a>>1&3}static extractCharKind(a){return a>>3}static createPropertyValue(a,b,c=!1){return(0xffffff&a)<<3|(3&b)<<1|!!c}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(a){if(!this._providers[a])throw Error(`unknown Unicode version "${a}"`);this._active=a,this._activeProvider=this._providers[a],this._onChange.fire(a)}register(a){this._providers[a.version]=a}wcwidth(a){return this._activeProvider.wcwidth(a)}getStringCellWidth(b){let c=0,d=0,e=b.length;for(let f=0;f<e;++f){let g=b.charCodeAt(f);if(55296<=g&&g<=56319){if(++f>=e)return c+this.wcwidth(g);let a=b.charCodeAt(f);56320<=a&&a<=57343?g=(g-55296)*1024+a-56320+65536:c+=this.wcwidth(a)}let h=this.charProperties(g,d),i=a.extractWidth(h);a.extractShouldJoin(h)&&(i-=a.extractWidth(d)),c+=i,d=h}return c}charProperties(a,b){return this._activeProvider.charProperties(a,b)}},eN=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(a){this.glevel=a,this.charset=this._charsets[a]}setgCharset(a,b){this._charsets[a]=b,this.glevel===a&&(this.charset=b)}};function eO(a){let b=a.buffer.lines.get(a.buffer.ybase+a.buffer.y-1)?.get(a.cols-1),c=a.buffer.lines.get(a.buffer.ybase+a.buffer.y);c&&b&&(c.isWrapped=0!==b[3]&&32!==b[3])}var eP=class a{constructor(a=32,b=32){if(this.maxLength=a,this.maxSubParamsLength=b,b>256)throw Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(a),this.length=0,this._subParams=new Int32Array(b),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(a),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}static fromArray(b){let c=new a;if(!b.length)return c;for(let a=+!!Array.isArray(b[0]);a<b.length;++a){let d=b[a];if(Array.isArray(d))for(let a=0;a<d.length;++a)c.addSubParam(d[a]);else c.addParam(d)}return c}clone(){let b=new a(this.maxLength,this.maxSubParamsLength);return b.params.set(this.params),b.length=this.length,b._subParams.set(this._subParams),b._subParamsLength=this._subParamsLength,b._subParamsIdx.set(this._subParamsIdx),b._rejectDigits=this._rejectDigits,b._rejectSubDigits=this._rejectSubDigits,b._digitIsSub=this._digitIsSub,b}toArray(){let a=[];for(let b=0;b<this.length;++b){a.push(this.params[b]);let c=this._subParamsIdx[b]>>8,d=255&this._subParamsIdx[b];d-c>0&&a.push(Array.prototype.slice.call(this._subParams,c,d))}return a}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(a){if(this._digitIsSub=!1,this.length>=this.maxLength){this._rejectDigits=!0;return}if(a<-1)throw Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=a>0x7fffffff?0x7fffffff:a}addSubParam(a){if(this._digitIsSub=!0,this.length){if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength){this._rejectSubDigits=!0;return}if(a<-1)throw Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=a>0x7fffffff?0x7fffffff:a,this._subParamsIdx[this.length-1]++}}hasSubParams(a){return(255&this._subParamsIdx[a])-(this._subParamsIdx[a]>>8)>0}getSubParams(a){let b=this._subParamsIdx[a]>>8,c=255&this._subParamsIdx[a];return c-b>0?this._subParams.subarray(b,c):null}getSubParamsAll(){let a={};for(let b=0;b<this.length;++b){let c=this._subParamsIdx[b]>>8,d=255&this._subParamsIdx[b];d-c>0&&(a[b]=this._subParams.slice(c,d))}return a}addDigit(a){let b;if(this._rejectDigits||!(b=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;let c=this._digitIsSub?this._subParams:this.params,d=c[b-1];c[b-1]=~d?Math.min(10*d+a,0x7fffffff):a}},eQ=[],eR=class{constructor(){this._state=0,this._active=eQ,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(a,b){void 0===this._handlers[a]&&(this._handlers[a]=[]);let c=this._handlers[a];return c.push(b),{dispose:()=>{let a=c.indexOf(b);-1!==a&&c.splice(a,1)}}}clearHandler(a){this._handlers[a]&&delete this._handlers[a]}setHandlerFallback(a){this._handlerFb=a}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=eQ}reset(){if(2===this._state)for(let a=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;a>=0;--a)this._active[a].end(!1);this._stack.paused=!1,this._active=eQ,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||eQ,this._active.length)for(let a=this._active.length-1;a>=0;a--)this._active[a].start();else this._handlerFb(this._id,"START")}_put(a,b,c){if(this._active.length)for(let d=this._active.length-1;d>=0;d--)this._active[d].put(a,b,c);else this._handlerFb(this._id,"PUT",ad(a,b,c))}start(){this.reset(),this._state=1}put(a,b,c){if(3!==this._state){if(1===this._state)for(;b<c;){let c=a[b++];if(59===c){this._state=2,this._start();break}if(c<48||57<c){this._state=3;return}-1===this._id&&(this._id=0),this._id=10*this._id+c-48}2===this._state&&c-b>0&&this._put(a,b,c)}}end(a,b=!0){if(0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){let c=!1,d=this._active.length-1,e=!1;if(this._stack.paused&&(d=this._stack.loopPosition-1,c=b,e=this._stack.fallThrough,this._stack.paused=!1),!e&&!1===c){for(;d>=0&&!0!==(c=this._active[d].end(a));d--)if(c instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=d,this._stack.fallThrough=!1,c;d--}for(;d>=0;d--)if((c=this._active[d].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=d,this._stack.fallThrough=!0,c}else this._handlerFb(this._id,"END",a);this._active=eQ,this._id=-1,this._state=0}}},eS=class{constructor(a){this._handler=a,this._data="",this._hitLimit=!1}start(){this._data="",this._hitLimit=!1}put(a,b,c){this._hitLimit||(this._data+=ad(a,b,c),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}end(a){let b=!1;if(this._hitLimit)b=!1;else if(a&&(b=this._handler(this._data))instanceof Promise)return b.then(a=>(this._data="",this._hitLimit=!1,a));return this._data="",this._hitLimit=!1,b}},eT=[],eU=class{constructor(){this._handlers=Object.create(null),this._active=eT,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=eT}registerHandler(a,b){void 0===this._handlers[a]&&(this._handlers[a]=[]);let c=this._handlers[a];return c.push(b),{dispose:()=>{let a=c.indexOf(b);-1!==a&&c.splice(a,1)}}}clearHandler(a){this._handlers[a]&&delete this._handlers[a]}setHandlerFallback(a){this._handlerFb=a}reset(){if(this._active.length)for(let a=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;a>=0;--a)this._active[a].unhook(!1);this._stack.paused=!1,this._active=eT,this._ident=0}hook(a,b){if(this.reset(),this._ident=a,this._active=this._handlers[a]||eT,this._active.length)for(let a=this._active.length-1;a>=0;a--)this._active[a].hook(b);else this._handlerFb(this._ident,"HOOK",b)}put(a,b,c){if(this._active.length)for(let d=this._active.length-1;d>=0;d--)this._active[d].put(a,b,c);else this._handlerFb(this._ident,"PUT",ad(a,b,c))}unhook(a,b=!0){if(this._active.length){let c=!1,d=this._active.length-1,e=!1;if(this._stack.paused&&(d=this._stack.loopPosition-1,c=b,e=this._stack.fallThrough,this._stack.paused=!1),!e&&!1===c){for(;d>=0&&!0!==(c=this._active[d].unhook(a));d--)if(c instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=d,this._stack.fallThrough=!1,c;d--}for(;d>=0;d--)if((c=this._active[d].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=d,this._stack.fallThrough=!0,c}else this._handlerFb(this._ident,"UNHOOK",a);this._active=eT,this._ident=0}},eV=new eP;eV.addParam(0);var eW=class{constructor(a){this._handler=a,this._data="",this._params=eV,this._hitLimit=!1}hook(a){this._params=a.length>1||a.params[0]?a.clone():eV,this._data="",this._hitLimit=!1}put(a,b,c){this._hitLimit||(this._data+=ad(a,b,c),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}unhook(a){let b=!1;if(this._hitLimit)b=!1;else if(a&&(b=this._handler(this._data,this._params))instanceof Promise)return b.then(a=>(this._params=eV,this._data="",this._hitLimit=!1,a));return this._params=eV,this._data="",this._hitLimit=!1,b}},eX=class{constructor(a){this.table=new Uint8Array(a)}setDefault(a,b){this.table.fill(a<<4|b)}add(a,b,c,d){this.table[b<<8|a]=c<<4|d}addMany(a,b,c,d){for(let e=0;e<a.length;e++)this.table[b<<8|a[e]]=c<<4|d}},eY=function(){let a=new eX(4095),b=Array.apply(null,Array(256)).map((a,b)=>b),c=(a,c)=>b.slice(a,c),d=c(32,127),e=c(0,24);e.push(25),e.push.apply(e,c(28,32));let f=c(0,14),g;for(g in a.setDefault(1,0),a.addMany(d,0,2,0),f)a.addMany([24,26,153,154],g,3,0),a.addMany(c(128,144),g,3,0),a.addMany(c(144,152),g,3,0),a.add(156,g,0,0),a.add(27,g,11,1),a.add(157,g,4,8),a.addMany([152,158,159],g,0,7),a.add(155,g,11,3),a.add(144,g,11,9);return a.addMany(e,0,3,0),a.addMany(e,1,3,1),a.add(127,1,0,1),a.addMany(e,8,0,8),a.addMany(e,3,3,3),a.add(127,3,0,3),a.addMany(e,4,3,4),a.add(127,4,0,4),a.addMany(e,6,3,6),a.addMany(e,5,3,5),a.add(127,5,0,5),a.addMany(e,2,3,2),a.add(127,2,0,2),a.add(93,1,4,8),a.addMany(d,8,5,8),a.add(127,8,5,8),a.addMany([156,27,24,26,7],8,6,0),a.addMany(c(28,32),8,0,8),a.addMany([88,94,95],1,0,7),a.addMany(d,7,0,7),a.addMany(e,7,0,7),a.add(156,7,0,0),a.add(127,7,0,7),a.add(91,1,11,3),a.addMany(c(64,127),3,7,0),a.addMany(c(48,60),3,8,4),a.addMany([60,61,62,63],3,9,4),a.addMany(c(48,60),4,8,4),a.addMany(c(64,127),4,7,0),a.addMany([60,61,62,63],4,0,6),a.addMany(c(32,64),6,0,6),a.add(127,6,0,6),a.addMany(c(64,127),6,0,0),a.addMany(c(32,48),3,9,5),a.addMany(c(32,48),5,9,5),a.addMany(c(48,64),5,0,6),a.addMany(c(64,127),5,7,0),a.addMany(c(32,48),4,9,5),a.addMany(c(32,48),1,9,2),a.addMany(c(32,48),2,9,2),a.addMany(c(48,127),2,10,0),a.addMany(c(48,80),1,10,0),a.addMany(c(81,88),1,10,0),a.addMany([89,90,92],1,10,0),a.addMany(c(96,127),1,10,0),a.add(80,1,11,9),a.addMany(e,9,0,9),a.add(127,9,0,9),a.addMany(c(28,32),9,0,9),a.addMany(c(32,48),9,9,12),a.addMany(c(48,60),9,8,10),a.addMany([60,61,62,63],9,9,10),a.addMany(e,11,0,11),a.addMany(c(32,128),11,0,11),a.addMany(c(28,32),11,0,11),a.addMany(e,10,0,10),a.add(127,10,0,10),a.addMany(c(28,32),10,0,10),a.addMany(c(48,60),10,8,10),a.addMany([60,61,62,63],10,0,11),a.addMany(c(32,48),10,9,12),a.addMany(e,12,0,12),a.add(127,12,0,12),a.addMany(c(28,32),12,0,12),a.addMany(c(32,48),12,9,12),a.addMany(c(48,64),12,0,11),a.addMany(c(64,127),12,12,13),a.addMany(c(64,127),10,12,13),a.addMany(c(64,127),9,12,13),a.addMany(e,13,13,13),a.addMany(d,13,13,13),a.add(127,13,0,13),a.addMany([27,156,24,26],13,14,0),a.add(160,0,2,0),a.add(160,8,5,8),a.add(160,6,0,6),a.add(160,11,0,11),a.add(160,13,13,13),a}(),eZ=class extends aU{constructor(a=eY){super(),this._transitions=a,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new eP,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(a,b,c)=>{},this._executeHandlerFb=a=>{},this._csiHandlerFb=(a,b)=>{},this._escHandlerFb=a=>{},this._errorHandlerFb=a=>a,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this._register(aR(()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)})),this._oscParser=this._register(new eR),this._dcsParser=this._register(new eU),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:"\\"},()=>!0)}_identifier(a,b=[64,126]){let c=0;if(a.prefix){if(a.prefix.length>1)throw Error("only one byte as prefix supported");if((c=a.prefix.charCodeAt(0))&&60>c||c>63)throw Error("prefix must be in range 0x3c .. 0x3f")}if(a.intermediates){if(a.intermediates.length>2)throw Error("only two bytes as intermediates are supported");for(let b=0;b<a.intermediates.length;++b){let d=a.intermediates.charCodeAt(b);if(32>d||d>47)throw Error("intermediate must be in range 0x20 .. 0x2f");c<<=8,c|=d}}if(1!==a.final.length)throw Error("final must be a single byte");let d=a.final.charCodeAt(0);if(b[0]>d||d>b[1])throw Error(`final must be in range ${b[0]} .. ${b[1]}`);return c<<=8,c|=d}identToString(a){let b=[];for(;a;)b.push(String.fromCharCode(255&a)),a>>=8;return b.reverse().join("")}setPrintHandler(a){this._printHandler=a}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(a,b){let c=this._identifier(a,[48,126]);void 0===this._escHandlers[c]&&(this._escHandlers[c]=[]);let d=this._escHandlers[c];return d.push(b),{dispose:()=>{let a=d.indexOf(b);-1!==a&&d.splice(a,1)}}}clearEscHandler(a){this._escHandlers[this._identifier(a,[48,126])]&&delete this._escHandlers[this._identifier(a,[48,126])]}setEscHandlerFallback(a){this._escHandlerFb=a}setExecuteHandler(a,b){this._executeHandlers[a.charCodeAt(0)]=b}clearExecuteHandler(a){this._executeHandlers[a.charCodeAt(0)]&&delete this._executeHandlers[a.charCodeAt(0)]}setExecuteHandlerFallback(a){this._executeHandlerFb=a}registerCsiHandler(a,b){let c=this._identifier(a);void 0===this._csiHandlers[c]&&(this._csiHandlers[c]=[]);let d=this._csiHandlers[c];return d.push(b),{dispose:()=>{let a=d.indexOf(b);-1!==a&&d.splice(a,1)}}}clearCsiHandler(a){this._csiHandlers[this._identifier(a)]&&delete this._csiHandlers[this._identifier(a)]}setCsiHandlerFallback(a){this._csiHandlerFb=a}registerDcsHandler(a,b){return this._dcsParser.registerHandler(this._identifier(a),b)}clearDcsHandler(a){this._dcsParser.clearHandler(this._identifier(a))}setDcsHandlerFallback(a){this._dcsParser.setHandlerFallback(a)}registerOscHandler(a,b){return this._oscParser.registerHandler(a,b)}clearOscHandler(a){this._oscParser.clearHandler(a)}setOscHandlerFallback(a){this._oscParser.setHandlerFallback(a)}setErrorHandler(a){this._errorHandler=a}clearErrorHandler(){this._errorHandler=this._errorHandlerFb}reset(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])}_preserveStack(a,b,c,d,e){this._parseStack.state=a,this._parseStack.handlers=b,this._parseStack.handlerPos=c,this._parseStack.transition=d,this._parseStack.chunkPos=e}parse(a,b,c){let d=0,e=0,f=0,g;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,f=this._parseStack.chunkPos+1;else{if(void 0===c||1===this._parseStack.state)throw this._parseStack.state=1,Error("improper continuation due to previous async handler, giving up parsing");let b=this._parseStack.handlers,e=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===c&&e>-1){for(;e>=0&&!0!==(g=b[e](this._params));e--)if(g instanceof Promise)return this._parseStack.handlerPos=e,g}this._parseStack.handlers=[];break;case 4:if(!1===c&&e>-1){for(;e>=0&&!0!==(g=b[e]());e--)if(g instanceof Promise)return this._parseStack.handlerPos=e,g}this._parseStack.handlers=[];break;case 6:if(d=a[this._parseStack.chunkPos],g=this._dcsParser.unhook(24!==d&&26!==d,c))return g;27===d&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(d=a[this._parseStack.chunkPos],g=this._oscParser.end(24!==d&&26!==d,c))return g;27===d&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,f=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=15&this._parseStack.transition}for(let c=f;c<b;++c){switch(d=a[c],(e=this._transitions.table[this.currentState<<8|(d<160?d:160)])>>4){case 2:for(let e=c+1;;++e)if(e>=b||(d=a[e])<32||d>126&&d<160||++e>=b||(d=a[e])<32||d>126&&d<160||++e>=b||(d=a[e])<32||d>126&&d<160||++e>=b||(d=a[e])<32||d>126&&d<160){this._printHandler(a,c,e),c=e-1;break}break;case 3:this._executeHandlers[d]?this._executeHandlers[d]():this._executeHandlerFb(d),this.precedingJoinState=0;break;case 0:break;case 1:if(this._errorHandler({position:c,code:d,currentState:this.currentState,collect:this._collect,params:this._params,abort:!1}).abort)return;break;case 7:let f=this._csiHandlers[this._collect<<8|d],h=f?f.length-1:-1;for(;h>=0&&!0!==(g=f[h](this._params));h--)if(g instanceof Promise)return this._preserveStack(3,f,h,e,c),g;h<0&&this._csiHandlerFb(this._collect<<8|d,this._params),this.precedingJoinState=0;break;case 8:do switch(d){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(d-48)}while(++c<b&&(d=a[c])>47&&d<60)c--;break;case 9:this._collect<<=8,this._collect|=d;break;case 10:let i=this._escHandlers[this._collect<<8|d],j=i?i.length-1:-1;for(;j>=0&&!0!==(g=i[j]());j--)if(g instanceof Promise)return this._preserveStack(4,i,j,e,c),g;j<0&&this._escHandlerFb(this._collect<<8|d),this.precedingJoinState=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|d,this._params);break;case 13:for(let e=c+1;;++e)if(e>=b||24===(d=a[e])||26===d||27===d||d>127&&d<160){this._dcsParser.put(a,c,e),c=e-1;break}break;case 14:if(g=this._dcsParser.unhook(24!==d&&26!==d))return this._preserveStack(6,[],0,e,c),g;27===d&&(e|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break;case 4:this._oscParser.start();break;case 5:for(let e=c+1;;e++)if(e>=b||(d=a[e])<32||d>127&&d<160){this._oscParser.put(a,c,e),c=e-1;break}break;case 6:if(g=this._oscParser.end(24!==d&&26!==d))return this._preserveStack(5,[],0,e,c),g;27===d&&(e|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0}this.currentState=15&e}}},e$=/^([\da-f])\/([\da-f])\/([\da-f])$|^([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})$|^([\da-f]{3})\/([\da-f]{3})\/([\da-f]{3})$|^([\da-f]{4})\/([\da-f]{4})\/([\da-f]{4})$/,e_=/^[\da-f]+$/;function e0(a){if(!a)return;let b=a.toLowerCase();if(0===b.indexOf("rgb:")){b=b.slice(4);let a=e$.exec(b);if(a){let b=a[1]?15:a[4]?255:a[7]?4095:65535;return[Math.round(parseInt(a[1]||a[4]||a[7]||a[10],16)/b*255),Math.round(parseInt(a[2]||a[5]||a[8]||a[11],16)/b*255),Math.round(parseInt(a[3]||a[6]||a[9]||a[12],16)/b*255)]}}else if(0===b.indexOf("#")&&(b=b.slice(1),e_.exec(b)&&[3,6,9,12].includes(b.length))){let a=b.length/3,c=[0,0,0];for(let d=0;d<3;++d){let e=parseInt(b.slice(a*d,a*d+a),16);c[d]=1===a?e<<4:2===a?e:3===a?e>>4:e>>8}return c}}function e1(a,b){let c=a.toString(16),d=c.length<2?"0"+c:c;switch(b){case 4:return c[0];case 8:return d;case 12:return(d+d).slice(0,3);default:return d+d}}var e2={"(":0,")":1,"*":2,"+":3,"-":1,".":2};function e3(a,b){if(a>24)return b.setWinLines||!1;switch(a){case 1:return!!b.restoreWin;case 2:return!!b.minimizeWin;case 3:return!!b.setWinPosition;case 4:return!!b.setWinSizePixels;case 5:return!!b.raiseWin;case 6:return!!b.lowerWin;case 7:return!!b.refreshWin;case 8:return!!b.setWinSizeChars;case 9:return!!b.maximizeWin;case 10:return!!b.fullscreenWin;case 11:return!!b.getWinState;case 13:return!!b.getWinPosition;case 14:return!!b.getWinSizePixels;case 15:return!!b.getScreenSizePixels;case 16:return!!b.getCellSizePixels;case 18:return!!b.getWinSizeChars;case 19:return!!b.getScreenSizeChars;case 20:return!!b.getIconTitle;case 21:return!!b.getWinTitle;case 22:return!!b.pushTitle;case 23:return!!b.popTitle;case 24:return!!b.setWinLines}return!1}var e4=0,e5=class extends aU{constructor(a,b,c,d,e,f,g,h,i=new eZ){for(let j in super(),this._bufferService=a,this._charsetService=b,this._coreService=c,this._logService=d,this._optionsService=e,this._oscLinkService=f,this._coreMouseService=g,this._unicodeService=h,this._parser=i,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new ae,this._utf8Decoder=new af,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=eh.clone(),this._eraseAttrDataInternal=eh.clone(),this._onRequestBell=this._register(new bb),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this._register(new bb),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this._register(new bb),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this._register(new bb),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this._register(new bb),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this._register(new bb),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this._register(new bb),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this._register(new bb),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this._register(new bb),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this._register(new bb),this.onLineFeed=this._onLineFeed.event,this._onScroll=this._register(new bb),this.onScroll=this._onScroll.event,this._onTitleChange=this._register(new bb),this.onTitleChange=this._onTitleChange.event,this._onColor=this._register(new bb),this.onColor=this._onColor.event,this._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},this._specialColors=[256,257,258],this._register(this._parser),this._dirtyRowTracker=new e6(this._bufferService),this._activeBuffer=this._bufferService.buffer,this._register(this._bufferService.buffers.onBufferActivate(a=>this._activeBuffer=a.activeBuffer)),this._parser.setCsiHandlerFallback((a,b)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(a),params:b.toArray()})}),this._parser.setEscHandlerFallback(a=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(a)})}),this._parser.setExecuteHandlerFallback(a=>{this._logService.debug("Unknown EXECUTE code: ",{code:a})}),this._parser.setOscHandlerFallback((a,b,c)=>{this._logService.debug("Unknown OSC code: ",{identifier:a,action:b,data:c})}),this._parser.setDcsHandlerFallback((a,b,c)=>{"HOOK"===b&&(c=c.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(a),action:b,payload:c})}),this._parser.setPrintHandler((a,b,c)=>this.print(a,b,c)),this._parser.registerCsiHandler({final:"@"},a=>this.insertChars(a)),this._parser.registerCsiHandler({intermediates:" ",final:"@"},a=>this.scrollLeft(a)),this._parser.registerCsiHandler({final:"A"},a=>this.cursorUp(a)),this._parser.registerCsiHandler({intermediates:" ",final:"A"},a=>this.scrollRight(a)),this._parser.registerCsiHandler({final:"B"},a=>this.cursorDown(a)),this._parser.registerCsiHandler({final:"C"},a=>this.cursorForward(a)),this._parser.registerCsiHandler({final:"D"},a=>this.cursorBackward(a)),this._parser.registerCsiHandler({final:"E"},a=>this.cursorNextLine(a)),this._parser.registerCsiHandler({final:"F"},a=>this.cursorPrecedingLine(a)),this._parser.registerCsiHandler({final:"G"},a=>this.cursorCharAbsolute(a)),this._parser.registerCsiHandler({final:"H"},a=>this.cursorPosition(a)),this._parser.registerCsiHandler({final:"I"},a=>this.cursorForwardTab(a)),this._parser.registerCsiHandler({final:"J"},a=>this.eraseInDisplay(a,!1)),this._parser.registerCsiHandler({prefix:"?",final:"J"},a=>this.eraseInDisplay(a,!0)),this._parser.registerCsiHandler({final:"K"},a=>this.eraseInLine(a,!1)),this._parser.registerCsiHandler({prefix:"?",final:"K"},a=>this.eraseInLine(a,!0)),this._parser.registerCsiHandler({final:"L"},a=>this.insertLines(a)),this._parser.registerCsiHandler({final:"M"},a=>this.deleteLines(a)),this._parser.registerCsiHandler({final:"P"},a=>this.deleteChars(a)),this._parser.registerCsiHandler({final:"S"},a=>this.scrollUp(a)),this._parser.registerCsiHandler({final:"T"},a=>this.scrollDown(a)),this._parser.registerCsiHandler({final:"X"},a=>this.eraseChars(a)),this._parser.registerCsiHandler({final:"Z"},a=>this.cursorBackwardTab(a)),this._parser.registerCsiHandler({final:"`"},a=>this.charPosAbsolute(a)),this._parser.registerCsiHandler({final:"a"},a=>this.hPositionRelative(a)),this._parser.registerCsiHandler({final:"b"},a=>this.repeatPrecedingCharacter(a)),this._parser.registerCsiHandler({final:"c"},a=>this.sendDeviceAttributesPrimary(a)),this._parser.registerCsiHandler({prefix:">",final:"c"},a=>this.sendDeviceAttributesSecondary(a)),this._parser.registerCsiHandler({final:"d"},a=>this.linePosAbsolute(a)),this._parser.registerCsiHandler({final:"e"},a=>this.vPositionRelative(a)),this._parser.registerCsiHandler({final:"f"},a=>this.hVPosition(a)),this._parser.registerCsiHandler({final:"g"},a=>this.tabClear(a)),this._parser.registerCsiHandler({final:"h"},a=>this.setMode(a)),this._parser.registerCsiHandler({prefix:"?",final:"h"},a=>this.setModePrivate(a)),this._parser.registerCsiHandler({final:"l"},a=>this.resetMode(a)),this._parser.registerCsiHandler({prefix:"?",final:"l"},a=>this.resetModePrivate(a)),this._parser.registerCsiHandler({final:"m"},a=>this.charAttributes(a)),this._parser.registerCsiHandler({final:"n"},a=>this.deviceStatus(a)),this._parser.registerCsiHandler({prefix:"?",final:"n"},a=>this.deviceStatusPrivate(a)),this._parser.registerCsiHandler({intermediates:"!",final:"p"},a=>this.softReset(a)),this._parser.registerCsiHandler({intermediates:" ",final:"q"},a=>this.setCursorStyle(a)),this._parser.registerCsiHandler({final:"r"},a=>this.setScrollRegion(a)),this._parser.registerCsiHandler({final:"s"},a=>this.saveCursor(a)),this._parser.registerCsiHandler({final:"t"},a=>this.windowOptions(a)),this._parser.registerCsiHandler({final:"u"},a=>this.restoreCursor(a)),this._parser.registerCsiHandler({intermediates:"'",final:"}"},a=>this.insertColumns(a)),this._parser.registerCsiHandler({intermediates:"'",final:"~"},a=>this.deleteColumns(a)),this._parser.registerCsiHandler({intermediates:'"',final:"q"},a=>this.selectProtected(a)),this._parser.registerCsiHandler({intermediates:"$",final:"p"},a=>this.requestMode(a,!0)),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},a=>this.requestMode(a,!1)),this._parser.setExecuteHandler(cT.BEL,()=>this.bell()),this._parser.setExecuteHandler(cT.LF,()=>this.lineFeed()),this._parser.setExecuteHandler(cT.VT,()=>this.lineFeed()),this._parser.setExecuteHandler(cT.FF,()=>this.lineFeed()),this._parser.setExecuteHandler(cT.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler(cT.BS,()=>this.backspace()),this._parser.setExecuteHandler(cT.HT,()=>this.tab()),this._parser.setExecuteHandler(cT.SO,()=>this.shiftOut()),this._parser.setExecuteHandler(cT.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(cU.IND,()=>this.index()),this._parser.setExecuteHandler(cU.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(cU.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new eS(a=>(this.setTitle(a),this.setIconName(a),!0))),this._parser.registerOscHandler(1,new eS(a=>this.setIconName(a))),this._parser.registerOscHandler(2,new eS(a=>this.setTitle(a))),this._parser.registerOscHandler(4,new eS(a=>this.setOrReportIndexedColor(a))),this._parser.registerOscHandler(8,new eS(a=>this.setHyperlink(a))),this._parser.registerOscHandler(10,new eS(a=>this.setOrReportFgColor(a))),this._parser.registerOscHandler(11,new eS(a=>this.setOrReportBgColor(a))),this._parser.registerOscHandler(12,new eS(a=>this.setOrReportCursorColor(a))),this._parser.registerOscHandler(104,new eS(a=>this.restoreIndexedColor(a))),this._parser.registerOscHandler(110,new eS(a=>this.restoreFgColor(a))),this._parser.registerOscHandler(111,new eS(a=>this.restoreBgColor(a))),this._parser.registerOscHandler(112,new eS(a=>this.restoreCursorColor(a))),this._parser.registerEscHandler({final:"7"},()=>this.saveCursor()),this._parser.registerEscHandler({final:"8"},()=>this.restoreCursor()),this._parser.registerEscHandler({final:"D"},()=>this.index()),this._parser.registerEscHandler({final:"E"},()=>this.nextLine()),this._parser.registerEscHandler({final:"H"},()=>this.tabSet()),this._parser.registerEscHandler({final:"M"},()=>this.reverseIndex()),this._parser.registerEscHandler({final:"="},()=>this.keypadApplicationMode()),this._parser.registerEscHandler({final:">"},()=>this.keypadNumericMode()),this._parser.registerEscHandler({final:"c"},()=>this.fullReset()),this._parser.registerEscHandler({final:"n"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"o"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"|"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"}"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"~"},()=>this.setgLevel(1)),this._parser.registerEscHandler({intermediates:"%",final:"@"},()=>this.selectDefaultCharset()),this._parser.registerEscHandler({intermediates:"%",final:"G"},()=>this.selectDefaultCharset()),em)this._parser.registerEscHandler({intermediates:"(",final:j},()=>this.selectCharset("("+j)),this._parser.registerEscHandler({intermediates:")",final:j},()=>this.selectCharset(")"+j)),this._parser.registerEscHandler({intermediates:"*",final:j},()=>this.selectCharset("*"+j)),this._parser.registerEscHandler({intermediates:"+",final:j},()=>this.selectCharset("+"+j)),this._parser.registerEscHandler({intermediates:"-",final:j},()=>this.selectCharset("-"+j)),this._parser.registerEscHandler({intermediates:".",final:j},()=>this.selectCharset("."+j)),this._parser.registerEscHandler({intermediates:"/",final:j},()=>this.selectCharset("/"+j));this._parser.registerEscHandler({intermediates:"#",final:"8"},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(a=>(this._logService.error("Parsing error: ",a),a)),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new eW((a,b)=>this.requestStatusString(a,b)))}getAttrData(){return this._curAttrData}_preserveStack(a,b,c,d){this._parseStack.paused=!0,this._parseStack.cursorStartX=a,this._parseStack.cursorStartY=b,this._parseStack.decodedLength=c,this._parseStack.position=d}_logSlowResolvingAsync(a){this._logService.logLevel<=3&&Promise.race([a,new Promise((a,b)=>setTimeout(()=>b("#SLOW_TIMEOUT"),5e3))]).catch(a=>{if("#SLOW_TIMEOUT"!==a)throw a;console.warn("async parser handler taking longer than 5000 ms")})}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(a,b){let c,d=this._activeBuffer.x,e=this._activeBuffer.y,f=0,g=this._parseStack.paused;if(g){if(c=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,b))return this._logSlowResolvingAsync(c),c;d=this._parseStack.cursorStartX,e=this._parseStack.cursorStartY,this._parseStack.paused=!1,a.length>131072&&(f=this._parseStack.position+131072)}if(this._logService.logLevel<=1&&this._logService.debug(`parsing data ${"string"==typeof a?` "${a}"`:` "${Array.prototype.map.call(a,a=>String.fromCharCode(a)).join("")}"`}`),0===this._logService.logLevel&&this._logService.trace("parsing data (codes)","string"==typeof a?a.split("").map(a=>a.charCodeAt(0)):a),this._parseBuffer.length<a.length&&this._parseBuffer.length<131072&&(this._parseBuffer=new Uint32Array(Math.min(a.length,131072))),g||this._dirtyRowTracker.clearRange(),a.length>131072)for(let b=f;b<a.length;b+=131072){let f=b+131072<a.length?b+131072:a.length,g="string"==typeof a?this._stringDecoder.decode(a.substring(b,f),this._parseBuffer):this._utf8Decoder.decode(a.subarray(b,f),this._parseBuffer);if(c=this._parser.parse(this._parseBuffer,g))return this._preserveStack(d,e,g,b),this._logSlowResolvingAsync(c),c}else if(!g){let b="string"==typeof a?this._stringDecoder.decode(a,this._parseBuffer):this._utf8Decoder.decode(a,this._parseBuffer);if(c=this._parser.parse(this._parseBuffer,b))return this._preserveStack(d,e,b,0),this._logSlowResolvingAsync(c),c}(this._activeBuffer.x!==d||this._activeBuffer.y!==e)&&this._onCursorMove.fire();let h=this._dirtyRowTracker.end+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp),i=this._dirtyRowTracker.start+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp);i<this._bufferService.rows&&this._onRequestRefreshRows.fire({start:Math.min(i,this._bufferService.rows-1),end:Math.min(h,this._bufferService.rows-1)})}print(a,b,c){let d,e,f=this._charsetService.charset,g=this._optionsService.rawOptions.screenReaderMode,h=this._bufferService.cols,i=this._coreService.decPrivateModes.wraparound,j=this._coreService.modes.insertMode,k=this._curAttrData,l=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._activeBuffer.x&&c-b>0&&2===l.getWidth(this._activeBuffer.x-1)&&l.setCellFromCodepoint(this._activeBuffer.x-1,0,1,k);let m=this._parser.precedingJoinState;for(let n=b;n<c;++n){if((d=a[n])<127&&f){let a=f[String.fromCharCode(d)];a&&(d=a.charCodeAt(0))}let b=this._unicodeService.charProperties(d,m);e=eM.extractWidth(b);let c=eM.extractShouldJoin(b),o=c?eM.extractWidth(m):0;if(m=b,g&&this._onA11yChar.fire(ac(d)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+e-o>h){if(i){let a=l,b=this._activeBuffer.x-o;for(this._activeBuffer.x=o,this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData(),!0)):(this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!0),l=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),o>0&&l instanceof ej&&l.copyCellsFrom(a,b,0,o,!1);b<h;)a.setCellFromCodepoint(b++,0,1,k)}else if(this._activeBuffer.x=h-1,2===e)continue}if(c&&this._activeBuffer.x){let a=l.getWidth(this._activeBuffer.x-1)?1:2;l.addCodepointToCell(this._activeBuffer.x-a,d,e);for(let a=e-o;--a>=0;)l.setCellFromCodepoint(this._activeBuffer.x++,0,0,k);continue}if(j&&(l.insertCells(this._activeBuffer.x,e-o,this._activeBuffer.getNullCell(k)),2===l.getWidth(h-1)&&l.setCellFromCodepoint(h-1,0,1,k)),l.setCellFromCodepoint(this._activeBuffer.x++,d,e,k),e>0)for(;--e;)l.setCellFromCodepoint(this._activeBuffer.x++,0,0,k)}this._parser.precedingJoinState=m,this._activeBuffer.x<h&&c-b>0&&0===l.getWidth(this._activeBuffer.x)&&!l.hasContent(this._activeBuffer.x)&&l.setCellFromCodepoint(this._activeBuffer.x,0,1,k),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(a,b){return"t"!==a.final||a.prefix||a.intermediates?this._parser.registerCsiHandler(a,b):this._parser.registerCsiHandler(a,a=>!e3(a.params[0],this._optionsService.rawOptions.windowOptions)||b(a))}registerDcsHandler(a,b){return this._parser.registerDcsHandler(a,new eW(b))}registerEscHandler(a,b){return this._parser.registerEscHandler(a,b)}registerOscHandler(a,b){return this._parser.registerOscHandler(a,new eS(b))}bell(){return this._onRequestBell.fire(),!0}lineFeed(){return this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._optionsService.rawOptions.convertEol&&(this._activeBuffer.x=0),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows?this._activeBuffer.y=this._bufferService.rows-1:this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.x>=this._bufferService.cols&&this._activeBuffer.x--,this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._onLineFeed.fire(),!0}carriageReturn(){return this._activeBuffer.x=0,!0}backspace(){if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),this._activeBuffer.x>0&&this._activeBuffer.x--,!0;if(this._restrictCursor(this._bufferService.cols),this._activeBuffer.x>0)this._activeBuffer.x--;else if(0===this._activeBuffer.x&&this._activeBuffer.y>this._activeBuffer.scrollTop&&this._activeBuffer.y<=this._activeBuffer.scrollBottom&&this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y)?.isWrapped){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;let a=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);a.hasWidth(this._activeBuffer.x)&&!a.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let a=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-a),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(a=this._bufferService.cols-1){this._activeBuffer.x=Math.min(a,Math.max(0,this._activeBuffer.x)),this._activeBuffer.y=this._coreService.decPrivateModes.origin?Math.min(this._activeBuffer.scrollBottom,Math.max(this._activeBuffer.scrollTop,this._activeBuffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._activeBuffer.y)),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_setCursor(a,b){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=a,this._activeBuffer.y=this._activeBuffer.scrollTop+b):(this._activeBuffer.x=a,this._activeBuffer.y=b),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(a,b){this._restrictCursor(),this._setCursor(this._activeBuffer.x+a,this._activeBuffer.y+b)}cursorUp(a){let b=this._activeBuffer.y-this._activeBuffer.scrollTop;return b>=0?this._moveCursor(0,-Math.min(b,a.params[0]||1)):this._moveCursor(0,-(a.params[0]||1)),!0}cursorDown(a){let b=this._activeBuffer.scrollBottom-this._activeBuffer.y;return b>=0?this._moveCursor(0,Math.min(b,a.params[0]||1)):this._moveCursor(0,a.params[0]||1),!0}cursorForward(a){return this._moveCursor(a.params[0]||1,0),!0}cursorBackward(a){return this._moveCursor(-(a.params[0]||1),0),!0}cursorNextLine(a){return this.cursorDown(a),this._activeBuffer.x=0,!0}cursorPrecedingLine(a){return this.cursorUp(a),this._activeBuffer.x=0,!0}cursorCharAbsolute(a){return this._setCursor((a.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(a){return this._setCursor(a.length>=2?(a.params[1]||1)-1:0,(a.params[0]||1)-1),!0}charPosAbsolute(a){return this._setCursor((a.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(a){return this._moveCursor(a.params[0]||1,0),!0}linePosAbsolute(a){return this._setCursor(this._activeBuffer.x,(a.params[0]||1)-1),!0}vPositionRelative(a){return this._moveCursor(0,a.params[0]||1),!0}hVPosition(a){return this.cursorPosition(a),!0}tabClear(a){let b=a.params[0];return 0===b?delete this._activeBuffer.tabs[this._activeBuffer.x]:3===b&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(a){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let b=a.params[0]||1;for(;b--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(a){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let b=a.params[0]||1;for(;b--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(a){let b=a.params[0];return 1===b&&(this._curAttrData.bg|=0x20000000),(2===b||0===b)&&(this._curAttrData.bg&=-0x20000001),!0}_eraseInBufferLine(a,b,c,d=!1,e=!1){let f=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);f.replaceCells(b,c,this._activeBuffer.getNullCell(this._eraseAttrData()),e),d&&(f.isWrapped=!1)}_resetBufferLine(a,b=!1){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);c&&(c.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),b),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+a),c.isWrapped=!1)}eraseInDisplay(a,b=!1){let c;switch(this._restrictCursor(this._bufferService.cols),a.params[0]){case 0:for(c=this._activeBuffer.y,this._dirtyRowTracker.markDirty(c),this._eraseInBufferLine(c++,this._activeBuffer.x,this._bufferService.cols,0===this._activeBuffer.x,b);c<this._bufferService.rows;c++)this._resetBufferLine(c,b);this._dirtyRowTracker.markDirty(c);break;case 1:for(c=this._activeBuffer.y,this._dirtyRowTracker.markDirty(c),this._eraseInBufferLine(c,0,this._activeBuffer.x+1,!0,b),this._activeBuffer.x+1>=this._bufferService.cols&&(this._activeBuffer.lines.get(c+1).isWrapped=!1);c--;)this._resetBufferLine(c,b);this._dirtyRowTracker.markDirty(0);break;case 2:if(this._optionsService.rawOptions.scrollOnEraseInDisplay){for(c=this._bufferService.rows,this._dirtyRowTracker.markRangeDirty(0,c-1);c--&&!this._activeBuffer.lines.get(this._activeBuffer.ybase+c)?.getTrimmedLength(););for(;c>=0;c--)this._bufferService.scroll(this._eraseAttrData())}else{for(c=this._bufferService.rows,this._dirtyRowTracker.markDirty(c-1);c--;)this._resetBufferLine(c,b);this._dirtyRowTracker.markDirty(0)}break;case 3:let d=this._activeBuffer.lines.length-this._bufferService.rows;d>0&&(this._activeBuffer.lines.trimStart(d),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-d,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-d,0),this._onScroll.fire(0))}return!0}eraseInLine(a,b=!1){switch(this._restrictCursor(this._bufferService.cols),a.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,0===this._activeBuffer.x,b);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,b);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,b)}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(a){this._restrictCursor();let b=a.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let c=this._activeBuffer.ybase+this._activeBuffer.y,d=this._bufferService.rows-1-this._activeBuffer.scrollBottom,e=this._bufferService.rows-1+this._activeBuffer.ybase-d+1;for(;b--;)this._activeBuffer.lines.splice(e-1,1),this._activeBuffer.lines.splice(c,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}deleteLines(a){this._restrictCursor();let b=a.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let c=this._activeBuffer.ybase+this._activeBuffer.y,d;for(d=this._bufferService.rows-1-this._activeBuffer.scrollBottom,d=this._bufferService.rows-1+this._activeBuffer.ybase-d;b--;)this._activeBuffer.lines.splice(c,1),this._activeBuffer.lines.splice(d,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}insertChars(a){this._restrictCursor();let b=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return b&&(b.insertCells(this._activeBuffer.x,a.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}deleteChars(a){this._restrictCursor();let b=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return b&&(b.deleteCells(this._activeBuffer.x,a.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}scrollUp(a){let b=a.params[0]||1;for(;b--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollDown(a){let b=a.params[0]||1;for(;b--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,0,this._activeBuffer.getBlankLine(eh));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollLeft(a){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let b=a.params[0]||1;for(let a=this._activeBuffer.scrollTop;a<=this._activeBuffer.scrollBottom;++a){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);c.deleteCells(0,b,this._activeBuffer.getNullCell(this._eraseAttrData())),c.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollRight(a){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let b=a.params[0]||1;for(let a=this._activeBuffer.scrollTop;a<=this._activeBuffer.scrollBottom;++a){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);c.insertCells(0,b,this._activeBuffer.getNullCell(this._eraseAttrData())),c.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}insertColumns(a){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let b=a.params[0]||1;for(let a=this._activeBuffer.scrollTop;a<=this._activeBuffer.scrollBottom;++a){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);c.insertCells(this._activeBuffer.x,b,this._activeBuffer.getNullCell(this._eraseAttrData())),c.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}deleteColumns(a){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let b=a.params[0]||1;for(let a=this._activeBuffer.scrollTop;a<=this._activeBuffer.scrollBottom;++a){let c=this._activeBuffer.lines.get(this._activeBuffer.ybase+a);c.deleteCells(this._activeBuffer.x,b,this._activeBuffer.getNullCell(this._eraseAttrData())),c.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}eraseChars(a){this._restrictCursor();let b=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return b&&(b.replaceCells(this._activeBuffer.x,this._activeBuffer.x+(a.params[0]||1),this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}repeatPrecedingCharacter(a){let b=this._parser.precedingJoinState;if(!b)return!0;let c=a.params[0]||1,d=eM.extractWidth(b),e=this._activeBuffer.x-d,f=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).getString(e),g=new Uint32Array(f.length*c),h=0;for(let a=0;a<f.length;){let b=f.codePointAt(a)||0;g[h++]=b,a+=b>65535?2:1}let i=h;for(let a=1;a<c;++a)g.copyWithin(i,0,h),i+=h;return this.print(g,0,i),!0}sendDeviceAttributesPrimary(a){return a.params[0]>0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(cT.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(cT.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(a){return a.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(cT.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(cT.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(a.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(cT.ESC+"[>83;40003;0c")),!0}_is(a){return 0===(this._optionsService.rawOptions.termName+"").indexOf(a)}setMode(a){for(let b=0;b<a.length;b++)switch(a.params[b]){case 4:this._coreService.modes.insertMode=!0;break;case 20:this._optionsService.options.convertEol=!0}return!0}setModePrivate(a){for(let b=0;b<a.length;b++)switch(a.params[b]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!0;break;case 2:this._charsetService.setgCharset(0,en),this._charsetService.setgCharset(1,en),this._charsetService.setgCharset(2,en),this._charsetService.setgCharset(3,en);break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(132,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!0,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!0;break;case 12:this._optionsService.options.cursorBlink=!0;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!0;break;case 66:this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire();break;case 9:this._coreMouseService.activeProtocol="X10";break;case 1e3:this._coreMouseService.activeProtocol="VT200";break;case 1002:this._coreMouseService.activeProtocol="DRAG";break;case 1003:this._coreMouseService.activeProtocol="ANY";break;case 1004:this._coreService.decPrivateModes.sendFocus=!0,this._onRequestSendFocus.fire();break;case 1005:this._logService.debug("DECSET 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="SGR";break;case 1015:this._logService.debug("DECSET 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="SGR_PIXELS";break;case 25:this._coreService.isCursorHidden=!1;break;case 1048:this.saveCursor();break;case 1049:this.saveCursor();case 47:case 1047:this._bufferService.buffers.activateAltBuffer(this._eraseAttrData()),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!0;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!0}return!0}resetMode(a){for(let b=0;b<a.length;b++)switch(a.params[b]){case 4:this._coreService.modes.insertMode=!1;break;case 20:this._optionsService.options.convertEol=!1}return!0}resetModePrivate(a){for(let b=0;b<a.length;b++)switch(a.params[b]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!1;break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(80,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!1,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!1;break;case 12:this._optionsService.options.cursorBlink=!1;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!1;break;case 66:this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire();break;case 9:case 1e3:case 1002:case 1003:this._coreMouseService.activeProtocol="NONE";break;case 1004:this._coreService.decPrivateModes.sendFocus=!1;break;case 1005:this._logService.debug("DECRST 1005 not supported (see #2507)");break;case 1006:case 1016:this._coreMouseService.activeEncoding="DEFAULT";break;case 1015:this._logService.debug("DECRST 1015 not supported (see #2507)");break;case 25:this._coreService.isCursorHidden=!0;break;case 1048:this.restoreCursor();break;case 1049:case 47:case 1047:this._bufferService.buffers.activateNormalBuffer(),1049===a.params[b]&&this.restoreCursor(),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!1;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!1,this._onRequestRefreshRows.fire(void 0)}return!0}requestMode(a,b){let c,d,e,f;(d=c||={})[d.NOT_RECOGNIZED=0]="NOT_RECOGNIZED",d[d.SET=1]="SET",d[d.RESET=2]="RESET",d[d.PERMANENTLY_SET=3]="PERMANENTLY_SET",d[d.PERMANENTLY_RESET=4]="PERMANENTLY_RESET";let g=this._coreService.decPrivateModes,{activeProtocol:h,activeEncoding:i}=this._coreMouseService,j=this._coreService,{buffers:k,cols:l}=this._bufferService,{active:m,alt:n}=k,o=this._optionsService.rawOptions,p=a=>a?1:2,q=a.params[0];return e=q,f=b?2===q?4:4===q?p(j.modes.insertMode):12===q?3:20===q?p(o.convertEol):0:1===q?p(g.applicationCursorKeys):3===q?o.windowOptions.setWinLines?80===l?2:+(132===l):0:6===q?p(g.origin):7===q?p(g.wraparound):8===q?3:9===q?p("X10"===h):12===q?p(o.cursorBlink):25===q?p(!j.isCursorHidden):45===q?p(g.reverseWraparound):66===q?p(g.applicationKeypad):67===q?4:1e3===q?p("VT200"===h):1002===q?p("DRAG"===h):1003===q?p("ANY"===h):1004===q?p(g.sendFocus):1005===q?4:1006===q?p("SGR"===i):1015===q?4:1016===q?p("SGR_PIXELS"===i):1048===q?1:47===q||1047===q||1049===q?p(m===n):2004===q?p(g.bracketedPasteMode):2026===q?p(g.synchronizedOutput):0,j.triggerDataEvent(`${cT.ESC}[${b?"":"?"}${e};${f}$y`),!0}_updateAttrColor(a,b,c,d,e){return 2===b?(a|=0x3000000,a&=-0x1000000,a|=ag.fromColorRGB([c,d,e])):5===b&&(a&=-0x3000100,a|=0x2000000|255&c),a}_extractColor(a,b,c){let d=[0,0,-1,0,0,0],e=0,f=0;do{if(d[f+e]=a.params[b+f],a.hasSubParams(b+f)){let c=a.getSubParams(b+f),g=0;do 5===d[1]&&(e=1),d[f+g+1+e]=c[g];while(++g<c.length&&g+f+1+e<d.length)break}if(5===d[1]&&f+e>=2||2===d[1]&&f+e>=5)break;d[1]&&(e=1)}while(++f+b<a.length&&f+e<d.length)for(let a=2;a<d.length;++a)-1===d[a]&&(d[a]=0);switch(d[0]){case 38:c.fg=this._updateAttrColor(c.fg,d[1],d[3],d[4],d[5]);break;case 48:c.bg=this._updateAttrColor(c.bg,d[1],d[3],d[4],d[5]);break;case 58:c.extended=c.extended.clone(),c.extended.underlineColor=this._updateAttrColor(c.extended.underlineColor,d[1],d[3],d[4],d[5])}return f}_processUnderline(a,b){b.extended=b.extended.clone(),(!~a||a>5)&&(a=1),b.extended.underlineStyle=a,b.fg|=0x10000000,0===a&&(b.fg&=-0x10000001),b.updateExtended()}_processSGR0(a){a.fg=eh.fg,a.bg=eh.bg,a.extended=a.extended.clone(),a.extended.underlineStyle=0,a.extended.underlineColor&=-0x4000000,a.updateExtended()}charAttributes(a){if(1===a.length&&0===a.params[0])return this._processSGR0(this._curAttrData),!0;let b=a.length,c,d=this._curAttrData;for(let e=0;e<b;e++)(c=a.params[e])>=30&&c<=37?(d.fg&=-0x3000100,d.fg|=0x1000000|c-30):c>=40&&c<=47?(d.bg&=-0x3000100,d.bg|=0x1000000|c-40):c>=90&&c<=97?(d.fg&=-0x3000100,d.fg|=0x1000000|c-90|8):c>=100&&c<=107?(d.bg&=-0x3000100,d.bg|=0x1000000|c-100|8):0===c?this._processSGR0(d):1===c?d.fg|=0x8000000:3===c?d.bg|=0x4000000:4===c?(d.fg|=0x10000000,this._processUnderline(a.hasSubParams(e)?a.getSubParams(e)[0]:1,d)):5===c?d.fg|=0x20000000:7===c?d.fg|=0x4000000:8===c?d.fg|=0x40000000:9===c?d.fg|=0x80000000:2===c?d.bg|=0x8000000:21===c?this._processUnderline(2,d):22===c?(d.fg&=-0x8000001,d.bg&=-0x8000001):23===c?d.bg&=-0x4000001:24===c?(d.fg&=-0x10000001,this._processUnderline(0,d)):25===c?d.fg&=-0x20000001:27===c?d.fg&=-0x4000001:28===c?d.fg&=-0x40000001:29===c?d.fg&=0x7fffffff:39===c?(d.fg&=-0x4000000,d.fg|=0xffffff&eh.fg):49===c?(d.bg&=-0x4000000,d.bg|=0xffffff&eh.bg):38===c||48===c||58===c?e+=this._extractColor(a,e,d):53===c?d.bg|=0x40000000:55===c?d.bg&=-0x40000001:59===c?(d.extended=d.extended.clone(),d.extended.underlineColor=-1,d.updateExtended()):100===c?(d.fg&=-0x4000000,d.fg|=0xffffff&eh.fg,d.bg&=-0x4000000,d.bg|=0xffffff&eh.bg):this._logService.debug("Unknown SGR attribute: %d.",c);return!0}deviceStatus(a){switch(a.params[0]){case 5:this._coreService.triggerDataEvent(`${cT.ESC}[0n`);break;case 6:let b=this._activeBuffer.y+1,c=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${cT.ESC}[${b};${c}R`)}return!0}deviceStatusPrivate(a){if(6===a.params[0]){let a=this._activeBuffer.y+1,b=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${cT.ESC}[?${a};${b}R`)}return!0}softReset(a){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=eh.clone(),this._coreService.reset(),this._charsetService.reset(),this._activeBuffer.savedX=0,this._activeBuffer.savedY=this._activeBuffer.ybase,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0}setCursorStyle(a){let b=0===a.length?1:a.params[0];if(0===b)this._coreService.decPrivateModes.cursorStyle=void 0,this._coreService.decPrivateModes.cursorBlink=void 0;else{switch(b){case 1:case 2:this._coreService.decPrivateModes.cursorStyle="block";break;case 3:case 4:this._coreService.decPrivateModes.cursorStyle="underline";break;case 5:case 6:this._coreService.decPrivateModes.cursorStyle="bar"}this._coreService.decPrivateModes.cursorBlink=b%2==1}return!0}setScrollRegion(a){let b=a.params[0]||1,c;return(a.length<2||(c=a.params[1])>this._bufferService.rows||0===c)&&(c=this._bufferService.rows),c>b&&(this._activeBuffer.scrollTop=b-1,this._activeBuffer.scrollBottom=c-1,this._setCursor(0,0)),!0}windowOptions(a){if(!e3(a.params[0],this._optionsService.rawOptions.windowOptions))return!0;let b=a.length>1?a.params[1]:0;switch(a.params[0]){case 14:2!==b&&this._onRequestWindowsOptionsReport.fire(0);break;case 16:this._onRequestWindowsOptionsReport.fire(1);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${cT.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:(0===b||2===b)&&(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),(0===b||1===b)&&(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:(0===b||2===b)&&this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),(0===b||1===b)&&this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0}saveCursor(a){return this._activeBuffer.savedX=this._activeBuffer.x,this._activeBuffer.savedY=this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,!0}restoreCursor(a){return this._activeBuffer.x=this._activeBuffer.savedX||0,this._activeBuffer.y=Math.max(this._activeBuffer.savedY-this._activeBuffer.ybase,0),this._curAttrData.fg=this._activeBuffer.savedCurAttrData.fg,this._curAttrData.bg=this._activeBuffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._activeBuffer.savedCharset&&(this._charsetService.charset=this._activeBuffer.savedCharset),this._restrictCursor(),!0}setTitle(a){return this._windowTitle=a,this._onTitleChange.fire(a),!0}setIconName(a){return this._iconName=a,!0}setOrReportIndexedColor(a){let b=[],c=a.split(";");for(;c.length>1;){let a=c.shift(),d=c.shift();if(/^\d+$/.exec(a)){let c=parseInt(a);if(e7(c))if("?"===d)b.push({type:0,index:c});else{let a=e0(d);a&&b.push({type:1,index:c,color:a})}}}return b.length&&this._onColor.fire(b),!0}setHyperlink(a){let b=a.indexOf(";");if(-1===b)return!0;let c=a.slice(0,b).trim(),d=a.slice(b+1);return d?this._createHyperlink(c,d):!c.trim()&&this._finishHyperlink()}_createHyperlink(a,b){this._getCurrentLinkId()&&this._finishHyperlink();let c=a.split(":"),d,e=c.findIndex(a=>a.startsWith("id="));return -1!==e&&(d=c[e].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:d,uri:b}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(a,b){let c=a.split(";");for(let a=0;a<c.length&&!(b>=this._specialColors.length);++a,++b)if("?"===c[a])this._onColor.fire([{type:0,index:this._specialColors[b]}]);else{let d=e0(c[a]);d&&this._onColor.fire([{type:1,index:this._specialColors[b],color:d}])}return!0}setOrReportFgColor(a){return this._setOrReportSpecialColor(a,0)}setOrReportBgColor(a){return this._setOrReportSpecialColor(a,1)}setOrReportCursorColor(a){return this._setOrReportSpecialColor(a,2)}restoreIndexedColor(a){if(!a)return this._onColor.fire([{type:2}]),!0;let b=[],c=a.split(";");for(let a=0;a<c.length;++a)if(/^\d+$/.exec(c[a])){let d=parseInt(c[a]);e7(d)&&b.push({type:2,index:d})}return b.length&&this._onColor.fire(b),!0}restoreFgColor(a){return this._onColor.fire([{type:2,index:256}]),!0}restoreBgColor(a){return this._onColor.fire([{type:2,index:257}]),!0}restoreCursorColor(a){return this._onColor.fire([{type:2,index:258}]),!0}nextLine(){return this._activeBuffer.x=0,this.index(),!0}keypadApplicationMode(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0}keypadNumericMode(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0}selectDefaultCharset(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,en),!0}selectCharset(a){return 2!==a.length?this.selectDefaultCharset():"/"===a[0]||this._charsetService.setgCharset(e2[a[0]],em[a[1]]||en),!0}index(){return this._restrictCursor(),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._restrictCursor(),!0}tabSet(){return this._activeBuffer.tabs[this._activeBuffer.x]=!0,!0}reverseIndex(){if(this._restrictCursor(),this._activeBuffer.y===this._activeBuffer.scrollTop){let a=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,a,1),this._activeBuffer.lines.set(this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.getBlankLine(this._eraseAttrData())),this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom)}else this._activeBuffer.y--,this._restrictCursor();return!0}fullReset(){return this._parser.reset(),this._onRequestReset.fire(),!0}reset(){this._curAttrData=eh.clone(),this._eraseAttrDataInternal=eh.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-0x4000000,this._eraseAttrDataInternal.bg|=0x3ffffff&this._curAttrData.bg,this._eraseAttrDataInternal}setgLevel(a){return this._charsetService.setgLevel(a),!0}screenAlignmentPattern(){let a=new ai;a.content=4194373,a.fg=this._curAttrData.fg,a.bg=this._curAttrData.bg,this._setCursor(0,0);for(let b=0;b<this._bufferService.rows;++b){let c=this._activeBuffer.ybase+this._activeBuffer.y+b,d=this._activeBuffer.lines.get(c);d&&(d.fill(a),d.isWrapped=!1)}return this._dirtyRowTracker.markAllDirty(),this._setCursor(0,0),!0}requestStatusString(a,b){let c=a=>(this._coreService.triggerDataEvent(`${cT.ESC}${a}${cT.ESC}\\`),!0),d=this._bufferService.buffer,e=this._optionsService.rawOptions;return c('"q'===a?`P1$r${+!!this._curAttrData.isProtected()}"q`:'"p'===a?'P1$r61;1"p':"r"===a?`P1$r${d.scrollTop+1};${d.scrollBottom+1}r`:"m"===a?"P1$r0m":" q"===a?`P1$r${({block:2,underline:4,bar:6})[e.cursorStyle]-!!e.cursorBlink} q`:"P0$r")}markRangeDirty(a,b){this._dirtyRowTracker.markRangeDirty(a,b)}},e6=class{constructor(a){this._bufferService=a,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(a){a<this.start?this.start=a:a>this.end&&(this.end=a)}markRangeDirty(a,b){a>b&&(e4=a,a=b,b=e4),a<this.start&&(this.start=a),b>this.end&&(this.end=b)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};function e7(a){return 0<=a&&a<256}e6=X([Y(0,an)],e6);var e8=class extends aU{constructor(a){super(),this._action=a,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this._register(new bb),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(a,b){let c;if(void 0!==b&&this._syncCalls>b){this._syncCalls=0;return}if(this._pendingData+=a.length,this._writeBuffer.push(a),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){for(this._isSyncWriting=!0;c=this._writeBuffer.shift();){this._action(c);let a=this._callbacks.shift();a&&a()}this._pendingData=0,this._bufferOffset=0x7fffffff,this._isSyncWriting=!1,this._syncCalls=0}}write(a,b){if(this._pendingData>5e7)throw Error("write data discarded, use flow control to avoid losing data");if(!this._writeBuffer.length){if(this._bufferOffset=0,this._didUserInput){this._didUserInput=!1,this._pendingData+=a.length,this._writeBuffer.push(a),this._callbacks.push(b),this._innerWrite();return}setTimeout(()=>this._innerWrite())}this._pendingData+=a.length,this._writeBuffer.push(a),this._callbacks.push(b)}_innerWrite(a=0,b=!0){let c=a||performance.now();for(;this._writeBuffer.length>this._bufferOffset;){let a=this._writeBuffer[this._bufferOffset],d=this._action(a,b);if(d){let a=a=>performance.now()-c>=12?setTimeout(()=>this._innerWrite(0,a)):this._innerWrite(c,a);d.catch(a=>(queueMicrotask(()=>{throw a}),Promise.resolve(!1))).then(a);return}let e=this._callbacks[this._bufferOffset];if(e&&e(),this._bufferOffset++,this._pendingData-=a.length,performance.now()-c>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout(()=>this._innerWrite())):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0),this._onWriteParsed.fire()}},e9=class{constructor(a){this._bufferService=a,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(a){let b=this._bufferService.buffer;if(void 0===a.id){let c=b.addMarker(b.ybase+b.y),d={data:a,id:this._nextId++,lines:[c]};return c.onDispose(()=>this._removeMarkerFromLink(d,c)),this._dataByLinkId.set(d.id,d),d.id}let c=this._getEntryIdKey(a),d=this._entriesWithId.get(c);if(d)return this.addLineToLink(d.id,b.ybase+b.y),d.id;let e=b.addMarker(b.ybase+b.y),f={id:this._nextId++,key:this._getEntryIdKey(a),data:a,lines:[e]};return e.onDispose(()=>this._removeMarkerFromLink(f,e)),this._entriesWithId.set(f.key,f),this._dataByLinkId.set(f.id,f),f.id}addLineToLink(a,b){let c=this._dataByLinkId.get(a);if(c&&c.lines.every(a=>a.line!==b)){let a=this._bufferService.buffer.addMarker(b);c.lines.push(a),a.onDispose(()=>this._removeMarkerFromLink(c,a))}}getLinkData(a){return this._dataByLinkId.get(a)?.data}_getEntryIdKey(a){return`${a.id};;${a.uri}`}_removeMarkerFromLink(a,b){let c=a.lines.indexOf(b);-1!==c&&(a.lines.splice(c,1),0===a.lines.length&&(void 0!==a.data.id&&this._entriesWithId.delete(a.key),this._dataByLinkId.delete(a.id)))}};e9=X([Y(0,an)],e9);var fa=!1,fb=class extends aU{constructor(a){super(),this._windowsWrappingHeuristics=this._register(new aV),this._onBinary=this._register(new bb),this.onBinary=this._onBinary.event,this._onData=this._register(new bb),this.onData=this._onData.event,this._onLineFeed=this._register(new bb),this.onLineFeed=this._onLineFeed.event,this._onResize=this._register(new bb),this.onResize=this._onResize.event,this._onWriteParsed=this._register(new bb),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this._register(new bb),this._instantiationService=new ed,this.optionsService=this._register(new et(a)),this._instantiationService.setService(at,this.optionsService),this._bufferService=this._register(this._instantiationService.createInstance(eq)),this._instantiationService.setService(an,this._bufferService),this._logService=this._register(this._instantiationService.createInstance(ef)),this._instantiationService.setService(as,this._logService),this.coreService=this._register(this._instantiationService.createInstance(ex)),this._instantiationService.setService(ap,this.coreService),this.coreMouseService=this._register(this._instantiationService.createInstance(eC)),this._instantiationService.setService(ao,this.coreMouseService),this.unicodeService=this._register(this._instantiationService.createInstance(eM)),this._instantiationService.setService(av,this.unicodeService),this._charsetService=this._instantiationService.createInstance(eN),this._instantiationService.setService(aq,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(e9),this._instantiationService.setService(au,this._oscLinkService),this._inputHandler=this._register(new e5(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this._register(a4.forward(this._inputHandler.onLineFeed,this._onLineFeed)),this._register(this._inputHandler),this._register(a4.forward(this._bufferService.onResize,this._onResize)),this._register(a4.forward(this.coreService.onData,this._onData)),this._register(a4.forward(this.coreService.onBinary,this._onBinary)),this._register(this.coreService.onRequestScrollToBottom(()=>this.scrollToBottom(!0))),this._register(this.coreService.onUserInput(()=>this._writeBuffer.handleUserInput())),this._register(this.optionsService.onMultipleOptionChange(["windowsMode","windowsPty"],()=>this._handleWindowsPtyOptionChange())),this._register(this._bufferService.onScroll(()=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)})),this._writeBuffer=this._register(new e8((a,b)=>this._inputHandler.parse(a,b))),this._register(a4.forward(this._writeBuffer.onWriteParsed,this._onWriteParsed))}get onScroll(){return this._onScrollApi||(this._onScrollApi=this._register(new bb),this._onScroll.event(a=>{this._onScrollApi?.fire(a.position)})),this._onScrollApi.event}get cols(){return this._bufferService.cols}get rows(){return this._bufferService.rows}get buffers(){return this._bufferService.buffers}get options(){return this.optionsService.options}set options(a){for(let b in a)this.optionsService.options[b]=a[b]}write(a,b){this._writeBuffer.write(a,b)}writeSync(a,b){this._logService.logLevel<=3&&!fa&&(this._logService.warn("writeSync is unreliable and will be removed soon."),fa=!0),this._writeBuffer.writeSync(a,b)}input(a,b=!0){this.coreService.triggerDataEvent(a,b)}resize(a,b){isNaN(a)||isNaN(b)||(a=Math.max(a,2),b=Math.max(b,1),this._bufferService.resize(a,b))}scroll(a,b=!1){this._bufferService.scroll(a,b)}scrollLines(a,b){this._bufferService.scrollLines(a,b)}scrollPages(a){this.scrollLines(a*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(a){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(a){let b=a-this._bufferService.buffer.ydisp;0!==b&&this.scrollLines(b)}registerEscHandler(a,b){return this._inputHandler.registerEscHandler(a,b)}registerDcsHandler(a,b){return this._inputHandler.registerDcsHandler(a,b)}registerCsiHandler(a,b){return this._inputHandler.registerCsiHandler(a,b)}registerOscHandler(a,b){return this._inputHandler.registerOscHandler(a,b)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let a=!1,b=this.optionsService.rawOptions.windowsPty;b&&void 0!==b.buildNumber&&void 0!==b.buildNumber?a="conpty"===b.backend&&b.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(a=!0),a?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){let a=[];a.push(this.onLineFeed(eO.bind(null,this._bufferService))),a.push(this.registerCsiHandler({final:"H"},()=>(eO(this._bufferService),!1))),this._windowsWrappingHeuristics.value=aR(()=>{for(let b of a)b.dispose()})}}},fc={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']},fd=0,fe=class{constructor(a){this._getKey=a,this._array=[],this._insertedValues=[],this._flushInsertedTask=new dS,this._isFlushingInserted=!1,this._deletedIndices=[],this._flushDeletedTask=new dS,this._isFlushingDeleted=!1}clear(){this._array.length=0,this._insertedValues.length=0,this._flushInsertedTask.clear(),this._isFlushingInserted=!1,this._deletedIndices.length=0,this._flushDeletedTask.clear(),this._isFlushingDeleted=!1}insert(a){this._flushCleanupDeleted(),0===this._insertedValues.length&&this._flushInsertedTask.enqueue(()=>this._flushInserted()),this._insertedValues.push(a)}_flushInserted(){let a=this._insertedValues.sort((a,b)=>this._getKey(a)-this._getKey(b)),b=0,c=0,d=Array(this._array.length+this._insertedValues.length);for(let e=0;e<d.length;e++)c>=this._array.length||this._getKey(a[b])<=this._getKey(this._array[c])?(d[e]=a[b],b++):d[e]=this._array[c++];this._array=d,this._insertedValues.length=0}_flushCleanupInserted(){!this._isFlushingInserted&&this._insertedValues.length>0&&this._flushInsertedTask.flush()}delete(a){if(this._flushCleanupInserted(),0===this._array.length)return!1;let b=this._getKey(a);if(void 0===b||-1===(fd=this._search(b))||this._getKey(this._array[fd])!==b)return!1;do if(this._array[fd]===a)return 0===this._deletedIndices.length&&this._flushDeletedTask.enqueue(()=>this._flushDeleted()),this._deletedIndices.push(fd),!0;while(++fd<this._array.length&&this._getKey(this._array[fd])===b)return!1}_flushDeleted(){this._isFlushingDeleted=!0;let a=this._deletedIndices.sort((a,b)=>a-b),b=0,c=Array(this._array.length-a.length),d=0;for(let e=0;e<this._array.length;e++)a[b]===e?b++:c[d++]=this._array[e];this._array=c,this._deletedIndices.length=0,this._isFlushingDeleted=!1}_flushCleanupDeleted(){!this._isFlushingDeleted&&this._deletedIndices.length>0&&this._flushDeletedTask.flush()}*getKeyIterator(a){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),0!==this._array.length&&!((fd=this._search(a))<0||fd>=this._array.length)&&this._getKey(this._array[fd])===a)do yield this._array[fd];while(++fd<this._array.length&&this._getKey(this._array[fd])===a)}forEachByKey(a,b){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),0!==this._array.length&&!((fd=this._search(a))<0||fd>=this._array.length)&&this._getKey(this._array[fd])===a)do b(this._array[fd]);while(++fd<this._array.length&&this._getKey(this._array[fd])===a)}values(){return this._flushCleanupInserted(),this._flushCleanupDeleted(),[...this._array].values()}_search(a){let b=0,c=this._array.length-1;for(;c>=b;){let d=b+c>>1,e=this._getKey(this._array[d]);if(e>a)c=d-1;else if(e<a)b=d+1;else{for(;d>0&&this._getKey(this._array[d-1])===a;)d--;return d}}return b}},ff=0,fg=0,fh=class extends aU{constructor(){super(),this._decorations=new fe(a=>a?.marker.line),this._onDecorationRegistered=this._register(new bb),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this._register(new bb),this.onDecorationRemoved=this._onDecorationRemoved.event,this._register(aR(()=>this.reset()))}get decorations(){return this._decorations.values()}registerDecoration(a){if(a.marker.isDisposed)return;let b=new fi(a);if(b){let a=b.marker.onDispose(()=>b.dispose()),c=b.onDispose(()=>{c.dispose(),b&&(this._decorations.delete(b)&&this._onDecorationRemoved.fire(b),a.dispose())});this._decorations.insert(b),this._onDecorationRegistered.fire(b)}return b}reset(){for(let a of this._decorations.values())a.dispose();this._decorations.clear()}*getDecorationsAtCell(a,b,c){let d=0,e=0;for(let f of this._decorations.getKeyIterator(b))e=(d=f.options.x??0)+(f.options.width??1),a>=d&&a<e&&(!c||(f.options.layer??"bottom")===c)&&(yield f)}forEachDecorationAtCell(a,b,c,d){this._decorations.forEachByKey(b,b=>{fg=(ff=b.options.x??0)+(b.options.width??1),a>=ff&&a<fg&&(!c||(b.options.layer??"bottom")===c)&&d(b)})}},fi=class extends aT{constructor(a){super(),this.options=a,this.onRenderEmitter=this.add(new bb),this.onRender=this.onRenderEmitter.event,this._onDispose=this.add(new bb),this.onDispose=this._onDispose.event,this._cachedBg=null,this._cachedFg=null,this.marker=a.marker,this.options.overviewRulerOptions&&!this.options.overviewRulerOptions.position&&(this.options.overviewRulerOptions.position="full")}get backgroundColorRGB(){return null===this._cachedBg&&(this.options.backgroundColor?this._cachedBg=eF.toColor(this.options.backgroundColor):this._cachedBg=void 0),this._cachedBg}get foregroundColorRGB(){return null===this._cachedFg&&(this.options.foregroundColor?this._cachedFg=eF.toColor(this.options.foregroundColor):this._cachedFg=void 0),this._cachedFg}dispose(){this._onDispose.fire(),super.dispose()}},fj=class{constructor(a,b=1e3){this._renderCallback=a,this._debounceThresholdMS=b,this._lastRefreshMs=0,this._additionalRefreshRequested=!1}dispose(){this._refreshTimeoutID&&clearTimeout(this._refreshTimeoutID)}refresh(a,b,c){this._rowCount=c,a=void 0!==a?a:0,b=void 0!==b?b:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,a):a,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,b):b;let d=performance.now();if(d-this._lastRefreshMs>=this._debounceThresholdMS)this._lastRefreshMs=d,this._innerRefresh();else if(!this._additionalRefreshRequested){let a=d-this._lastRefreshMs,b=this._debounceThresholdMS-a;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout(()=>{this._lastRefreshMs=performance.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0},b)}}_innerRefresh(){if(void 0===this._rowStart||void 0===this._rowEnd||void 0===this._rowCount)return;let a=Math.max(this._rowStart,0),b=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(a,b)}},fk=class extends aU{constructor(a,b,c,d){super(),this._terminal=a,this._coreBrowserService=c,this._renderService=d,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce="";let e=this._coreBrowserService.mainDocument;this._accessibilityContainer=e.createElement("div"),this._accessibilityContainer.classList.add("xterm-accessibility"),this._rowContainer=e.createElement("div"),this._rowContainer.setAttribute("role","list"),this._rowContainer.classList.add("xterm-accessibility-tree"),this._rowElements=[];for(let a=0;a<this._terminal.rows;a++)this._rowElements[a]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[a]);if(this._topBoundaryFocusListener=a=>this._handleBoundaryFocus(a,0),this._bottomBoundaryFocusListener=a=>this._handleBoundaryFocus(a,1),this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._accessibilityContainer.appendChild(this._rowContainer),this._liveRegion=e.createElement("div"),this._liveRegion.classList.add("live-region"),this._liveRegion.setAttribute("aria-live","assertive"),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this._register(new fj(this._renderRows.bind(this))),!this._terminal.element)throw Error("Cannot enable accessibility before Terminal.open");this._terminal.element.insertAdjacentElement("afterbegin",this._accessibilityContainer),this._register(this._terminal.onResize(a=>this._handleResize(a.rows))),this._register(this._terminal.onRender(a=>this._refreshRows(a.start,a.end))),this._register(this._terminal.onScroll(()=>this._refreshRows())),this._register(this._terminal.onA11yChar(a=>this._handleChar(a))),this._register(this._terminal.onLineFeed(()=>this._handleChar(`
|
|
19
19
|
`))),this._register(this._terminal.onA11yTab(a=>this._handleTab(a))),this._register(this._terminal.onKey(a=>this._handleKey(a.key))),this._register(this._terminal.onBlur(()=>this._clearLiveRegion())),this._register(this._renderService.onDimensionsChange(()=>this._refreshRowsDimensions())),this._register(cf(e,"selectionchange",()=>this._handleSelectionChange())),this._register(this._coreBrowserService.onDprChange(()=>this._refreshRowsDimensions())),this._refreshRowsDimensions(),this._refreshRows(),this._register(aR(()=>{this._accessibilityContainer.remove(),this._rowElements.length=0}))}_handleTab(a){for(let b=0;b<a;b++)this._handleChar(" ")}_handleChar(a){this._liveRegionLineCount<21&&(this._charsToConsume.length>0?this._charsToConsume.shift()!==a&&(this._charsToAnnounce+=a):this._charsToAnnounce+=a,a===`
|
|
20
20
|
`&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=$)))}_clearLiveRegion(){this._liveRegion.textContent="",this._liveRegionLineCount=0}_handleKey(a){this._clearLiveRegion(),/\p{Control}/u.test(a)||this._charsToConsume.push(a)}_refreshRows(a,b){this._liveRegionDebouncer.refresh(a,b,this._terminal.rows)}_renderRows(a,b){let c=this._terminal.buffer,d=c.lines.length.toString();for(let e=a;e<=b;e++){let a=c.lines.get(c.ydisp+e),b=[],f=a?.translateToString(!0,void 0,void 0,b)||"",g=(c.ydisp+e+1).toString(),h=this._rowElements[e];h&&(0===f.length?(h.textContent=" ",this._rowColumns.set(h,[0,1])):(h.textContent=f,this._rowColumns.set(h,b)),h.setAttribute("aria-posinset",g),h.setAttribute("aria-setsize",d),this._alignRowWidth(h))}this._announceCharacters()}_announceCharacters(){0!==this._charsToAnnounce.length&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce="")}_handleBoundaryFocus(a,b){let c,d,e=a.target,f=this._rowElements[0===b?1:this._rowElements.length-2];if(e.getAttribute("aria-posinset")!==(0===b?"1":`${this._terminal.buffer.lines.length}`)&&a.relatedTarget===f){if(0===b?(c=e,d=this._rowElements.pop(),this._rowContainer.removeChild(d)):(c=this._rowElements.shift(),d=e,this._rowContainer.removeChild(c)),c.removeEventListener("focus",this._topBoundaryFocusListener),d.removeEventListener("focus",this._bottomBoundaryFocusListener),0===b){let a=this._createAccessibilityTreeNode();this._rowElements.unshift(a),this._rowContainer.insertAdjacentElement("afterbegin",a)}else{let a=this._createAccessibilityTreeNode();this._rowElements.push(a),this._rowContainer.appendChild(a)}this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._terminal.scrollLines(0===b?-1:1),this._rowElements[0===b?1:this._rowElements.length-2].focus(),a.preventDefault(),a.stopImmediatePropagation()}}_handleSelectionChange(){if(0===this._rowElements.length)return;let a=this._coreBrowserService.mainDocument.getSelection();if(!a)return;if(a.isCollapsed){this._rowContainer.contains(a.anchorNode)&&this._terminal.clearSelection();return}if(!a.anchorNode||!a.focusNode)return void console.error("anchorNode and/or focusNode are null");let b={node:a.anchorNode,offset:a.anchorOffset},c={node:a.focusNode,offset:a.focusOffset};if((b.node.compareDocumentPosition(c.node)&Node.DOCUMENT_POSITION_PRECEDING||b.node===c.node&&b.offset>c.offset)&&([b,c]=[c,b]),b.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(b={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(b.node))return;let d=this._rowElements.slice(-1)[0];if(c.node.compareDocumentPosition(d)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(c={node:d,offset:d.textContent?.length??0}),!this._rowContainer.contains(c.node))return;let e=({node:a,offset:b})=>{let c=a instanceof Text?a.parentNode:a,d=parseInt(c?.getAttribute("aria-posinset"),10)-1;if(isNaN(d))return console.warn("row is invalid. Race condition?"),null;let e=this._rowColumns.get(c);if(!e)return console.warn("columns is null. Race condition?"),null;let f=b<e.length?e[b]:e.slice(-1)[0]+1;return f>=this._terminal.cols&&(++d,f=0),{row:d,column:f}},f=e(b),g=e(c);if(!(!f||!g)){if(f.row>g.row||f.row===g.row&&f.column>=g.column)throw Error("invalid range");this._terminal.select(f.column,f.row,(g.row-f.row)*this._terminal.cols-f.column+g.column)}}_handleResize(a){this._rowElements[this._rowElements.length-1].removeEventListener("focus",this._bottomBoundaryFocusListener);for(let a=this._rowContainer.children.length;a<this._terminal.rows;a++)this._rowElements[a]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[a]);for(;this._rowElements.length>a;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){let a=this._coreBrowserService.mainDocument.createElement("div");return a.setAttribute("role","listitem"),a.tabIndex=-1,this._refreshRowDimensions(a),a}_refreshRowsDimensions(){if(this._renderService.dimensions.css.cell.height){Object.assign(this._accessibilityContainer.style,{width:`${this._renderService.dimensions.css.canvas.width}px`,fontSize:`${this._terminal.options.fontSize}px`}),this._rowElements.length!==this._terminal.rows&&this._handleResize(this._terminal.rows);for(let a=0;a<this._terminal.rows;a++)this._refreshRowDimensions(this._rowElements[a]),this._alignRowWidth(this._rowElements[a])}}_refreshRowDimensions(a){a.style.height=`${this._renderService.dimensions.css.cell.height}px`}_alignRowWidth(a){a.style.transform="";let b=a.getBoundingClientRect().width,c=this._rowColumns.get(a)?.slice(-1)?.[0];if(!c)return;let d=c*this._renderService.dimensions.css.cell.width;a.style.transform=`scaleX(${d/b})`}};fk=X([Y(1,ar),Y(2,az),Y(3,aB)],fk);var fl=class extends aU{constructor(a,b,c,d,e){super(),this._element=a,this._mouseService=b,this._renderService=c,this._bufferService=d,this._linkProviderService=e,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this._register(new bb),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this._register(new bb),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this._register(aR(()=>{aQ(this._linkCacheDisposables),this._linkCacheDisposables.length=0,this._lastMouseEvent=void 0,this._activeProviderReplies?.clear()})),this._register(this._bufferService.onResize(()=>{this._clearCurrentLink(),this._wasResized=!0})),this._register(cf(this._element,"mouseleave",()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(cf(this._element,"mousemove",this._handleMouseMove.bind(this))),this._register(cf(this._element,"mousedown",this._handleMouseDown.bind(this))),this._register(cf(this._element,"mouseup",this._handleMouseUp.bind(this)))}get currentLink(){return this._currentLink}_handleMouseMove(a){this._lastMouseEvent=a;let b=this._positionFromMouseEvent(a,this._element,this._mouseService);if(!b)return;this._isMouseOut=!1;let c=a.composedPath();for(let a=0;a<c.length;a++){let b=c[a];if(b.classList.contains("xterm"))break;if(b.classList.contains("xterm-hover"))return}this._lastBufferCell&&b.x===this._lastBufferCell.x&&b.y===this._lastBufferCell.y||(this._handleHover(b),this._lastBufferCell=b)}_handleHover(a){if(this._activeLine!==a.y||this._wasResized){this._clearCurrentLink(),this._askForLink(a,!1),this._wasResized=!1;return}this._currentLink&&this._linkAtPosition(this._currentLink.link,a)||(this._clearCurrentLink(),this._askForLink(a,!0))}_askForLink(a,b){this._activeProviderReplies&&b||(this._activeProviderReplies?.forEach(a=>{a?.forEach(a=>{a.link.dispose&&a.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=a.y);let c=!1;for(let[d,e]of this._linkProviderService.linkProviders.entries())b?this._activeProviderReplies?.get(d)&&(c=this._checkLinkProviderResult(d,a,c)):e.provideLinks(a.y,b=>{if(this._isMouseOut)return;let e=b?.map(a=>({link:a}));this._activeProviderReplies?.set(d,e),c=this._checkLinkProviderResult(d,a,c),this._activeProviderReplies?.size===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(a.y,this._activeProviderReplies)})}_removeIntersectingLinks(a,b){let c=new Set;for(let d=0;d<b.size;d++){let e=b.get(d);if(e)for(let b=0;b<e.length;b++){let d=e[b],f=d.link.range.start.y<a?0:d.link.range.start.x,g=d.link.range.end.y>a?this._bufferService.cols:d.link.range.end.x;for(let a=f;a<=g;a++){if(c.has(a)){e.splice(b--,1);break}c.add(a)}}}}_checkLinkProviderResult(a,b,c){if(!this._activeProviderReplies)return c;let d=this._activeProviderReplies.get(a),e=!1;for(let b=0;b<a;b++)(!this._activeProviderReplies.has(b)||this._activeProviderReplies.get(b))&&(e=!0);if(!e&&d){let a=d.find(a=>this._linkAtPosition(a.link,b));a&&(c=!0,this._handleNewLink(a))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!c)for(let a=0;a<this._activeProviderReplies.size;a++){let d=this._activeProviderReplies.get(a)?.find(a=>this._linkAtPosition(a.link,b));if(d){c=!0,this._handleNewLink(d);break}}return c}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(a){var b,c;if(!this._currentLink)return;let d=this._positionFromMouseEvent(a,this._element,this._mouseService);d&&this._mouseDownLink&&(b=this._mouseDownLink.link,c=this._currentLink.link,b.text===c.text&&b.range.start.x===c.range.start.x&&b.range.start.y===c.range.start.y&&b.range.end.x===c.range.end.x&&b.range.end.y===c.range.end.y)&&this._linkAtPosition(this._currentLink.link,d)&&this._currentLink.link.activate(a,this._currentLink.link.text)}_clearCurrentLink(a,b){this._currentLink&&this._lastMouseEvent&&(!a||!b||this._currentLink.link.range.start.y>=a&&this._currentLink.link.range.end.y<=b)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,aQ(this._linkCacheDisposables),this._linkCacheDisposables.length=0)}_handleNewLink(a){if(!this._lastMouseEvent)return;let b=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);b&&this._linkAtPosition(a.link,b)&&(this._currentLink=a,this._currentLink.state={decorations:{underline:void 0===a.link.decorations||a.link.decorations.underline,pointerCursor:void 0===a.link.decorations||a.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,a.link,this._lastMouseEvent),a.link.decorations={},Object.defineProperties(a.link.decorations,{pointerCursor:{get:()=>this._currentLink?.state?.decorations.pointerCursor,set:a=>{this._currentLink?.state&&this._currentLink.state.decorations.pointerCursor!==a&&(this._currentLink.state.decorations.pointerCursor=a,this._currentLink.state.isHovered&&this._element.classList.toggle("xterm-cursor-pointer",a))}},underline:{get:()=>this._currentLink?.state?.decorations.underline,set:b=>{this._currentLink?.state&&this._currentLink?.state?.decorations.underline!==b&&(this._currentLink.state.decorations.underline=b,this._currentLink.state.isHovered&&this._fireUnderlineEvent(a.link,b))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange(a=>{if(!this._currentLink)return;let b=0===a.start?0:a.start+1+this._bufferService.buffer.ydisp,c=this._bufferService.buffer.ydisp+1+a.end;if(this._currentLink.link.range.start.y>=b&&this._currentLink.link.range.end.y<=c&&(this._clearCurrentLink(b,c),this._lastMouseEvent)){let a=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);a&&this._askForLink(a,!1)}})))}_linkHover(a,b,c){this._currentLink?.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(b,!0),this._currentLink.state.decorations.pointerCursor&&a.classList.add("xterm-cursor-pointer")),b.hover&&b.hover(c,b.text)}_fireUnderlineEvent(a,b){let c=a.range,d=this._bufferService.buffer.ydisp,e=this._createLinkUnderlineEvent(c.start.x-1,c.start.y-d-1,c.end.x,c.end.y-d-1,void 0);(b?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(e)}_linkLeave(a,b,c){this._currentLink?.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(b,!1),this._currentLink.state.decorations.pointerCursor&&a.classList.remove("xterm-cursor-pointer")),b.leave&&b.leave(c,b.text)}_linkAtPosition(a,b){let c=a.range.start.y*this._bufferService.cols+a.range.start.x,d=a.range.end.y*this._bufferService.cols+a.range.end.x,e=b.y*this._bufferService.cols+b.x;return c<=e&&e<=d}_positionFromMouseEvent(a,b,c){let d=c.getCoords(a,b,this._bufferService.cols,this._bufferService.rows);if(d)return{x:d[0],y:d[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(a,b,c,d,e){return{x1:a,y1:b,x2:c,y2:d,cols:this._bufferService.cols,fg:e}}};fl=X([Y(1,aA),Y(2,aB),Y(3,an),Y(4,aF)],fl);var fm=class extends fb{constructor(a={}){super(a),this._linkifier=this._register(new aV),this.browser=dz,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new aV),this._onCursorMove=this._register(new bb),this.onCursorMove=this._onCursorMove.event,this._onKey=this._register(new bb),this.onKey=this._onKey.event,this._onRender=this._register(new bb),this.onRender=this._onRender.event,this._onSelectionChange=this._register(new bb),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this._register(new bb),this.onTitleChange=this._onTitleChange.event,this._onBell=this._register(new bb),this.onBell=this._onBell.event,this._onFocus=this._register(new bb),this._onBlur=this._register(new bb),this._onA11yCharEmitter=this._register(new bb),this._onA11yTabEmitter=this._register(new bb),this._onWillOpen=this._register(new bb),this._setup(),this._decorationService=this._instantiationService.createInstance(fh),this._instantiationService.setService(aw,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(dv),this._instantiationService.setService(aF,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(ax)),this._register(this._inputHandler.onRequestBell(()=>this._onBell.fire())),this._register(this._inputHandler.onRequestRefreshRows(a=>this.refresh(a?.start??0,a?.end??this.rows-1))),this._register(this._inputHandler.onRequestSendFocus(()=>this._reportFocus())),this._register(this._inputHandler.onRequestReset(()=>this.reset())),this._register(this._inputHandler.onRequestWindowsOptionsReport(a=>this._reportWindowsOptions(a))),this._register(this._inputHandler.onColor(a=>this._handleColorEvent(a))),this._register(a4.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register(a4.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register(a4.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register(a4.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(a=>this._afterResize(a.cols,a.rows))),this._register(aR(()=>{this._customKeyEventHandler=void 0,this.element?.parentNode?.removeChild(this.element)}))}get linkifier(){return this._linkifier.value}get onFocus(){return this._onFocus.event}get onBlur(){return this._onBlur.event}get onA11yChar(){return this._onA11yCharEmitter.event}get onA11yTab(){return this._onA11yTabEmitter.event}get onWillOpen(){return this._onWillOpen.event}_handleColorEvent(a){if(this._themeService)for(let b of a){let a,c="";switch(b.index){case 256:a="foreground",c="10";break;case 257:a="background",c="11";break;case 258:a="cursor",c="12";break;default:a="ansi",c="4;"+b.index}switch(b.type){case 0:let d=eE.toColorRGB("ansi"===a?this._themeService.colors.ansi[b.index]:this._themeService.colors[a]);this.coreService.triggerDataEvent(`${cT.ESC}]${c};${function(a,b=16){let[c,d,e]=a;return`rgb:${e1(c,b)}/${e1(d,b)}/${e1(e,b)}`}(d)}${cV.ST}`);break;case 1:if("ansi"===a)this._themeService.modifyColors(a=>a.ansi[b.index]=cW.toColor(...b.color));else{let c=a;this._themeService.modifyColors(a=>a[c]=cW.toColor(...b.color))}break;case 2:this._themeService.restoreColor(b.index)}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(a){a?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(fk,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(a){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(cT.ESC+"[I"),this.element.classList.add("focus"),this._showCursor(),this._onFocus.fire()}blur(){return this.textarea?.blur()}_handleTextAreaBlur(){this.textarea.value="",this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(cT.ESC+"[O"),this.element.classList.remove("focus"),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;let a=this.buffer.ybase+this.buffer.y,b=this.buffer.lines.get(a);if(!b)return;let c=Math.min(this.buffer.x,this.cols-1),d=this._renderService.dimensions.css.cell.height,e=b.getWidth(c),f=this._renderService.dimensions.css.cell.width*e,g=this.buffer.y*this._renderService.dimensions.css.cell.height,h=c*this._renderService.dimensions.css.cell.width;this.textarea.style.left=h+"px",this.textarea.style.top=g+"px",this.textarea.style.width=f+"px",this.textarea.style.height=d+"px",this.textarea.style.lineHeight=d+"px",this.textarea.style.zIndex="-5"}_initGlobal(){this._bindKeys(),this._register(cf(this.element,"copy",a=>{var b;this.hasSelection()&&(b=this._selectionService,a.clipboardData&&a.clipboardData.setData("text/plain",b.selectionText),a.preventDefault())}));let a=a=>{var b,c,d;return b=this.textarea,c=this.coreService,d=this.optionsService,void(a.stopPropagation(),a.clipboardData&&_(a.clipboardData.getData("text/plain"),b,c,d))};this._register(cf(this.textarea,"paste",a)),this._register(cf(this.element,"paste",a)),dF?this._register(cf(this.element,"mousedown",a=>{2===a.button&&ab(a,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(cf(this.element,"contextmenu",a=>{ab(a,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),dN&&this._register(cf(this.element,"auxclick",a=>{1===a.button&&aa(a,this.textarea,this.screenElement)}))}_bindKeys(){this._register(cf(this.textarea,"keyup",a=>this._keyUp(a),!0)),this._register(cf(this.textarea,"keydown",a=>this._keyDown(a),!0)),this._register(cf(this.textarea,"keypress",a=>this._keyPress(a),!0)),this._register(cf(this.textarea,"compositionstart",()=>this._compositionHelper.compositionstart())),this._register(cf(this.textarea,"compositionupdate",a=>this._compositionHelper.compositionupdate(a))),this._register(cf(this.textarea,"compositionend",()=>this._compositionHelper.compositionend())),this._register(cf(this.textarea,"input",a=>this._inputEvent(a),!0)),this._register(this.onRender(()=>this._compositionHelper.updateCompositionElements()))}open(a){if(!a)throw Error("Terminal requires a parent element.");if(a.isConnected||this._logService.debug("Terminal.open was called on an element that was not attached to the DOM"),this.element?.ownerDocument.defaultView&&this._coreBrowserService){this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView);return}this._document=a.ownerDocument,this.options.documentOverride&&this.options.documentOverride instanceof Document&&(this._document=this.optionsService.rawOptions.documentOverride),this.element=this._document.createElement("div"),this.element.dir="ltr",this.element.classList.add("terminal"),this.element.classList.add("xterm"),a.appendChild(this.element);let b=this._document.createDocumentFragment();this._viewportElement=this._document.createElement("div"),this._viewportElement.classList.add("xterm-viewport"),b.appendChild(this._viewportElement),this.screenElement=this._document.createElement("div"),this.screenElement.classList.add("xterm-screen"),this._register(cf(this.screenElement,"mousemove",a=>this.updateCursorStyle(a))),this._helperContainer=this._document.createElement("div"),this._helperContainer.classList.add("xterm-helpers"),this.screenElement.appendChild(this._helperContainer),b.appendChild(this.screenElement);let c=this.textarea=this._document.createElement("textarea");this.textarea.classList.add("xterm-helper-textarea"),this.textarea.setAttribute("aria-label",Z),dO||this.textarea.setAttribute("aria-multiline","false"),this.textarea.setAttribute("autocorrect","off"),this.textarea.setAttribute("autocapitalize","off"),this.textarea.setAttribute("spellcheck","false"),this.textarea.tabIndex=0,this._register(this.optionsService.onSpecificOptionChange("disableStdin",()=>c.readOnly=this.optionsService.rawOptions.disableStdin)),this.textarea.readOnly=this.optionsService.rawOptions.disableStdin,this._coreBrowserService=this._register(this._instantiationService.createInstance(dt,this.textarea,a.ownerDocument.defaultView??window,this._document?window.document:null)),this._instantiationService.setService(az,this._coreBrowserService),this._register(cf(this.textarea,"focus",a=>this._handleTextAreaFocus(a))),this._register(cf(this.textarea,"blur",()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(dp,this._document,this._helperContainer),this._instantiationService.setService(ay,this._charSizeService),this._themeService=this._instantiationService.createInstance(ea),this._instantiationService.setService(aE,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(da),this._instantiationService.setService(aD,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(dU,this.rows,this.screenElement)),this._instantiationService.setService(aB,this._renderService),this._register(this._renderService.onRenderedViewportChange(a=>this._onRender.fire(a))),this.onResize(a=>this._renderService.resize(a.cols,a.rows)),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(cN,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(dx),this._instantiationService.setService(aA,this._mouseService);let d=this._linkifier.value=this._register(this._instantiationService.createInstance(fl,this.screenElement));this.element.appendChild(b);try{this._onWillOpen.fire(this.element)}catch{}this._renderService.hasRenderer()||this._renderService.setRenderer(this._createRenderer()),this._register(this.onCursorMove(()=>{this._renderService.handleCursorMove(),this._syncTextArea()})),this._register(this.onResize(()=>this._renderService.handleResize(this.cols,this.rows))),this._register(this.onBlur(()=>this._renderService.handleBlur())),this._register(this.onFocus(()=>this._renderService.handleFocus())),this._viewport=this._register(this._instantiationService.createInstance(cG,this.element,this.screenElement)),this._register(this._viewport.onRequestScrollLines(a=>{super.scrollLines(a,!1),this.refresh(0,this.rows-1)})),this._selectionService=this._register(this._instantiationService.createInstance(d2,this.element,this.screenElement,d)),this._instantiationService.setService(aC,this._selectionService),this._register(this._selectionService.onRequestScrollLines(a=>this.scrollLines(a.amount,a.suppressScrollEvent))),this._register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this._register(this._selectionService.onRequestRedraw(a=>this._renderService.handleSelectionChanged(a.start,a.end,a.columnSelectMode))),this._register(this._selectionService.onLinuxMouseSelection(a=>{this.textarea.value=a,this.textarea.focus(),this.textarea.select()})),this._register(a4.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{this._selectionService.refresh(),this._viewport?.queueSync()})),this._register(this._instantiationService.createInstance(cH,this.screenElement)),this._register(cf(this.element,"mousedown",a=>this._selectionService.handleMouseDown(a))),this.coreMouseService.areMouseEventsActive?(this._selectionService.disable(),this.element.classList.add("enable-mouse-events")):this._selectionService.enable(),this.options.screenReaderMode&&(this._accessibilityManager.value=this._instantiationService.createInstance(fk,this)),this._register(this.optionsService.onSpecificOptionChange("screenReaderMode",a=>this._handleScreenReaderModeOptionChange(a))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(cM,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRuler",a=>{!this._overviewRulerRenderer&&a&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(cM,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(dn,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){let a=this,b=this.element;function c(b){let c,d,e=a._mouseService.getMouseReportCoords(b,a.screenElement);if(!e)return!1;switch(b.overrideType||b.type){case"mousemove":d=32,void 0===b.buttons?(c=3,void 0!==b.button&&(c=b.button<3?b.button:3)):c=1&b.buttons?0:4&b.buttons?1:2&b.buttons?2:3;break;case"mouseup":d=0,c=b.button<3?b.button:3;break;case"mousedown":d=1,c=b.button<3?b.button:3;break;case"wheel":if(a._customWheelEventHandler&&!1===a._customWheelEventHandler(b))return!1;let f=b.deltaY;if(0===f||0===a.coreMouseService.consumeWheelEvent(b,a._renderService?.dimensions?.device?.cell?.height,a._coreBrowserService?.dpr))return!1;d=f<0?0:1,c=4;break;default:return!1}return void 0!==d&&void 0!==c&&!(c>4)&&a.coreMouseService.triggerMouseEvent({col:e.col,row:e.row,x:e.x,y:e.y,button:c,action:d,ctrl:b.ctrlKey,alt:b.altKey,shift:b.shiftKey})}let d={mouseup:null,wheel:null,mousedrag:null,mousemove:null},e=a=>(c(a),a.buttons||(this._document.removeEventListener("mouseup",d.mouseup),d.mousedrag&&this._document.removeEventListener("mousemove",d.mousedrag)),this.cancel(a)),f=a=>(c(a),this.cancel(a,!0)),g=a=>{a.buttons&&c(a)},h=a=>{a.buttons||c(a)};this._register(this.coreMouseService.onProtocolChange(a=>{a?("debug"===this.optionsService.rawOptions.logLevel&&this._logService.debug("Binding to mouse events:",this.coreMouseService.explainEvents(a)),this.element.classList.add("enable-mouse-events"),this._selectionService.disable()):(this._logService.debug("Unbinding from mouse events."),this.element.classList.remove("enable-mouse-events"),this._selectionService.enable()),8&a?d.mousemove||(b.addEventListener("mousemove",h),d.mousemove=h):(b.removeEventListener("mousemove",d.mousemove),d.mousemove=null),16&a?d.wheel||(b.addEventListener("wheel",f,{passive:!1}),d.wheel=f):(b.removeEventListener("wheel",d.wheel),d.wheel=null),2&a?d.mouseup||(d.mouseup=e):(this._document.removeEventListener("mouseup",d.mouseup),d.mouseup=null),4&a?d.mousedrag||(d.mousedrag=g):(this._document.removeEventListener("mousemove",d.mousedrag),d.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this._register(cf(b,"mousedown",a=>{if(a.preventDefault(),this.focus(),!(!this.coreMouseService.areMouseEventsActive||this._selectionService.shouldForceSelection(a)))return c(a),d.mouseup&&this._document.addEventListener("mouseup",d.mouseup),d.mousedrag&&this._document.addEventListener("mousemove",d.mousedrag),this.cancel(a)})),this._register(cf(b,"wheel",b=>{if(!d.wheel){if(this._customWheelEventHandler&&!1===this._customWheelEventHandler(b))return!1;if(!this.buffer.hasScrollback){if(0===b.deltaY)return!1;if(0===a.coreMouseService.consumeWheelEvent(b,a._renderService?.dimensions?.device?.cell?.height,a._coreBrowserService?.dpr))return this.cancel(b,!0);let c=cT.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(b.deltaY<0?"A":"B");return this.coreService.triggerDataEvent(c,!0),this.cancel(b,!0)}}},{passive:!1}))}refresh(a,b){this._renderService?.refreshRows(a,b)}updateCursorStyle(a){this._selectionService?.shouldColumnSelect(a)?this.element.classList.add("column-select"):this.element.classList.remove("column-select")}_showCursor(){this.coreService.isCursorInitialized||(this.coreService.isCursorInitialized=!0,this.refresh(this.buffer.y,this.buffer.y))}scrollLines(a,b){this._viewport?this._viewport.scrollLines(a):super.scrollLines(a,b),this.refresh(0,this.rows-1)}scrollPages(a){this.scrollLines(a*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(a){a&&this._viewport?this._viewport.scrollToLine(this.buffer.ybase,!0):this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(a){let b=a-this._bufferService.buffer.ydisp;0!==b&&this.scrollLines(b)}paste(a){_(a,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(a){this._customKeyEventHandler=a}attachCustomWheelEventHandler(a){this._customWheelEventHandler=a}registerLinkProvider(a){return this._linkProviderService.registerLinkProvider(a)}registerCharacterJoiner(a){if(!this._characterJoinerService)throw Error("Terminal must be opened first");let b=this._characterJoinerService.register(a);return this.refresh(0,this.rows-1),b}deregisterCharacterJoiner(a){if(!this._characterJoinerService)throw Error("Terminal must be opened first");this._characterJoinerService.deregister(a)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(a){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+a)}registerDecoration(a){return this._decorationService.registerDecoration(a)}hasSelection(){return!!this._selectionService&&this._selectionService.hasSelection}select(a,b,c){this._selectionService.setSelection(a,b,c)}getSelection(){return this._selectionService?this._selectionService.selectionText:""}getSelectionPosition(){if(!(!this._selectionService||!this._selectionService.hasSelection))return{start:{x:this._selectionService.selectionStart[0],y:this._selectionService.selectionStart[1]},end:{x:this._selectionService.selectionEnd[0],y:this._selectionService.selectionEnd[1]}}}clearSelection(){this._selectionService?.clearSelection()}selectAll(){this._selectionService?.selectAll()}selectLines(a,b){this._selectionService?.selectLines(a,b)}_keyDown(a){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&!1===this._customKeyEventHandler(a))return!1;let b=this.browser.isMac&&this.options.macOptionIsMeta&&a.altKey;if(!b&&!this._compositionHelper.keydown(a))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(!0),!1;b||"Dead"!==a.key&&"AltGraph"!==a.key||(this._unprocessedDeadKey=!0);let c=function(a,b,c,d){let e={type:0,cancel:!1,key:void 0},f=!!a.shiftKey|2*!!a.altKey|4*!!a.ctrlKey|8*!!a.metaKey;switch(a.keyCode){case 0:"UIKeyInputUpArrow"===a.key?b?e.key=cT.ESC+"OA":e.key=cT.ESC+"[A":"UIKeyInputLeftArrow"===a.key?b?e.key=cT.ESC+"OD":e.key=cT.ESC+"[D":"UIKeyInputRightArrow"===a.key?b?e.key=cT.ESC+"OC":e.key=cT.ESC+"[C":"UIKeyInputDownArrow"===a.key&&(b?e.key=cT.ESC+"OB":e.key=cT.ESC+"[B");break;case 8:e.key=a.ctrlKey?"\b":cT.DEL,a.altKey&&(e.key=cT.ESC+e.key);break;case 9:if(a.shiftKey){e.key=cT.ESC+"[Z";break}e.key=cT.HT,e.cancel=!0;break;case 13:e.key=a.altKey?cT.ESC+cT.CR:cT.CR,e.cancel=!0;break;case 27:e.key=cT.ESC,a.altKey&&(e.key=cT.ESC+cT.ESC),e.cancel=!0;break;case 37:if(a.metaKey)break;f?e.key=cT.ESC+"[1;"+(f+1)+"D":b?e.key=cT.ESC+"OD":e.key=cT.ESC+"[D";break;case 39:if(a.metaKey)break;f?e.key=cT.ESC+"[1;"+(f+1)+"C":b?e.key=cT.ESC+"OC":e.key=cT.ESC+"[C";break;case 38:if(a.metaKey)break;f?e.key=cT.ESC+"[1;"+(f+1)+"A":b?e.key=cT.ESC+"OA":e.key=cT.ESC+"[A";break;case 40:if(a.metaKey)break;f?e.key=cT.ESC+"[1;"+(f+1)+"B":b?e.key=cT.ESC+"OB":e.key=cT.ESC+"[B";break;case 45:a.shiftKey||a.ctrlKey||(e.key=cT.ESC+"[2~");break;case 46:f?e.key=cT.ESC+"[3;"+(f+1)+"~":e.key=cT.ESC+"[3~";break;case 36:f?e.key=cT.ESC+"[1;"+(f+1)+"H":b?e.key=cT.ESC+"OH":e.key=cT.ESC+"[H";break;case 35:f?e.key=cT.ESC+"[1;"+(f+1)+"F":b?e.key=cT.ESC+"OF":e.key=cT.ESC+"[F";break;case 33:a.shiftKey?e.type=2:a.ctrlKey?e.key=cT.ESC+"[5;"+(f+1)+"~":e.key=cT.ESC+"[5~";break;case 34:a.shiftKey?e.type=3:a.ctrlKey?e.key=cT.ESC+"[6;"+(f+1)+"~":e.key=cT.ESC+"[6~";break;case 112:f?e.key=cT.ESC+"[1;"+(f+1)+"P":e.key=cT.ESC+"OP";break;case 113:f?e.key=cT.ESC+"[1;"+(f+1)+"Q":e.key=cT.ESC+"OQ";break;case 114:f?e.key=cT.ESC+"[1;"+(f+1)+"R":e.key=cT.ESC+"OR";break;case 115:f?e.key=cT.ESC+"[1;"+(f+1)+"S":e.key=cT.ESC+"OS";break;case 116:f?e.key=cT.ESC+"[15;"+(f+1)+"~":e.key=cT.ESC+"[15~";break;case 117:f?e.key=cT.ESC+"[17;"+(f+1)+"~":e.key=cT.ESC+"[17~";break;case 118:f?e.key=cT.ESC+"[18;"+(f+1)+"~":e.key=cT.ESC+"[18~";break;case 119:f?e.key=cT.ESC+"[19;"+(f+1)+"~":e.key=cT.ESC+"[19~";break;case 120:f?e.key=cT.ESC+"[20;"+(f+1)+"~":e.key=cT.ESC+"[20~";break;case 121:f?e.key=cT.ESC+"[21;"+(f+1)+"~":e.key=cT.ESC+"[21~";break;case 122:f?e.key=cT.ESC+"[23;"+(f+1)+"~":e.key=cT.ESC+"[23~";break;case 123:f?e.key=cT.ESC+"[24;"+(f+1)+"~":e.key=cT.ESC+"[24~";break;default:if(!a.ctrlKey||a.shiftKey||a.altKey||a.metaKey)if((!c||d)&&a.altKey&&!a.metaKey){let b=fc[a.keyCode]?.[+!!a.shiftKey];if(b)e.key=cT.ESC+b;else if(a.keyCode>=65&&a.keyCode<=90){let b=String.fromCharCode(a.ctrlKey?a.keyCode-64:a.keyCode+32);a.shiftKey&&(b=b.toUpperCase()),e.key=cT.ESC+b}else if(32===a.keyCode)e.key=cT.ESC+(a.ctrlKey?cT.NUL:" ");else if("Dead"===a.key&&a.code.startsWith("Key")){let b=a.code.slice(3,4);a.shiftKey||(b=b.toLowerCase()),e.key=cT.ESC+b,e.cancel=!0}}else!c||a.altKey||a.ctrlKey||a.shiftKey||!a.metaKey?!a.key||a.ctrlKey||a.altKey||a.metaKey||!(a.keyCode>=48)||1!==a.key.length?a.key&&a.ctrlKey&&("_"===a.key&&(e.key=cT.US),"@"===a.key&&(e.key=cT.NUL)):e.key=a.key:65===a.keyCode&&(e.type=1);else a.keyCode>=65&&a.keyCode<=90?e.key=String.fromCharCode(a.keyCode-64):32===a.keyCode?e.key=cT.NUL:a.keyCode>=51&&a.keyCode<=55?e.key=String.fromCharCode(a.keyCode-51+27):56===a.keyCode?e.key=cT.DEL:219===a.keyCode?e.key=cT.ESC:220===a.keyCode?e.key=cT.FS:221===a.keyCode&&(e.key=cT.GS)}return e}(a,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(a),3===c.type||2===c.type){let b=this.rows-1;return this.scrollLines(2===c.type?-b:b),this.cancel(a,!0)}return 1===c.type&&this.selectAll(),!!(this._isThirdLevelShift(this.browser,a)||(c.cancel&&this.cancel(a,!0),!c.key)||a.key&&!a.ctrlKey&&!a.altKey&&!a.metaKey&&1===a.key.length&&a.key.charCodeAt(0)>=65&&90>=a.key.charCodeAt(0))||(this._unprocessedDeadKey?(this._unprocessedDeadKey=!1,!0):((c.key===cT.ETX||c.key===cT.CR)&&(this.textarea.value=""),this._onKey.fire({key:c.key,domEvent:a}),this._showCursor(),this.coreService.triggerDataEvent(c.key,!0),!this.optionsService.rawOptions.screenReaderMode||a.altKey||a.ctrlKey)?this.cancel(a,!0):void(this._keyDownHandled=!0))}_isThirdLevelShift(a,b){let c=a.isMac&&!this.options.macOptionIsMeta&&b.altKey&&!b.ctrlKey&&!b.metaKey||a.isWindows&&b.altKey&&b.ctrlKey&&!b.metaKey||a.isWindows&&b.getModifierState("AltGraph");return"keypress"===b.type?c:c&&(!b.keyCode||b.keyCode>47)}_keyUp(a){var b;this._keyDownSeen=!1,this._customKeyEventHandler&&!1===this._customKeyEventHandler(a)||(16===(b=a).keyCode||17===b.keyCode||18===b.keyCode||this.focus(),this.updateCursorStyle(a),this._keyPressHandled=!1)}_keyPress(a){let b;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&!1===this._customKeyEventHandler(a))return!1;if(this.cancel(a),a.charCode)b=a.charCode;else if(null===a.which||void 0===a.which)b=a.keyCode;else{if(0===a.which||0===a.charCode)return!1;b=a.which}return!!b&&(!a.altKey&&!a.ctrlKey&&!a.metaKey||!!this._isThirdLevelShift(this.browser,a))&&(b=String.fromCharCode(b),this._onKey.fire({key:b,domEvent:a}),this._showCursor(),this.coreService.triggerDataEvent(b,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,!0)}_inputEvent(a){if(a.data&&"insertText"===a.inputType&&(!a.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;let b=a.data;return this.coreService.triggerDataEvent(b,!0),this.cancel(a),!0}return!1}resize(a,b){if(a===this.cols&&b===this.rows){this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure();return}super.resize(a,b)}_afterResize(a,b){this._charSizeService?.measure()}clear(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.clearAllMarkers(),this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(let a=1;a<this.rows;a++)this.buffer.lines.push(this.buffer.getBlankLine(eh));this._onScroll.fire({position:this.buffer.ydisp}),this.refresh(0,this.rows-1)}}reset(){this.options.rows=this.rows,this.options.cols=this.cols;let a=this._customKeyEventHandler;this._setup(),super.reset(),this._selectionService?.reset(),this._decorationService.reset(),this._customKeyEventHandler=a,this.refresh(0,this.rows-1)}clearTextureAtlas(){this._renderService?.clearTextureAtlas()}_reportFocus(){this.element?.classList.contains("focus")?this.coreService.triggerDataEvent(cT.ESC+"[I"):this.coreService.triggerDataEvent(cT.ESC+"[O")}_reportWindowsOptions(a){if(this._renderService)switch(a){case 0:let b=this._renderService.dimensions.css.canvas.width.toFixed(0),c=this._renderService.dimensions.css.canvas.height.toFixed(0);this.coreService.triggerDataEvent(`${cT.ESC}[4;${c};${b}t`);break;case 1:let d=this._renderService.dimensions.css.cell.width.toFixed(0),e=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${cT.ESC}[6;${e};${d}t`)}}cancel(a,b){if(!(!this.options.cancelEvents&&!b))return a.preventDefault(),a.stopPropagation(),!1}},fn=class{constructor(){this._addons=[]}dispose(){for(let a=this._addons.length-1;a>=0;a--)this._addons[a].instance.dispose()}loadAddon(a,b){let c={instance:b,dispose:b.dispose,isDisposed:!1};this._addons.push(c),b.dispose=()=>this._wrappedAddonDispose(c),b.activate(a)}_wrappedAddonDispose(a){if(a.isDisposed)return;let b=-1;for(let c=0;c<this._addons.length;c++)if(this._addons[c]===a){b=c;break}if(-1===b)throw Error("Could not dispose an addon that has not been loaded");a.isDisposed=!0,a.dispose.apply(a.instance),this._addons.splice(b,1)}},fo=class{constructor(a){this._line=a}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(a,b){if(!(a<0||a>=this._line.length))return b?(this._line.loadCell(a,b),b):this._line.loadCell(a,new ai)}translateToString(a,b,c){return this._line.translateToString(a,b,c)}},fp=class{constructor(a,b){this._buffer=a,this.type=b}init(a){return this._buffer=a,this}get cursorY(){return this._buffer.y}get cursorX(){return this._buffer.x}get viewportY(){return this._buffer.ydisp}get baseY(){return this._buffer.ybase}get length(){return this._buffer.lines.length}getLine(a){let b=this._buffer.lines.get(a);if(b)return new fo(b)}getNullCell(){return new ai}},fq=class extends aU{constructor(a){super(),this._core=a,this._onBufferChange=this._register(new bb),this.onBufferChange=this._onBufferChange.event,this._normal=new fp(this._core.buffers.normal,"normal"),this._alternate=new fp(this._core.buffers.alt,"alternate"),this._core.buffers.onBufferActivate(()=>this._onBufferChange.fire(this.active))}get active(){if(this._core.buffers.active===this._core.buffers.normal)return this.normal;if(this._core.buffers.active===this._core.buffers.alt)return this.alternate;throw Error("Active buffer is neither normal nor alternate")}get normal(){return this._normal.init(this._core.buffers.normal)}get alternate(){return this._alternate.init(this._core.buffers.alt)}},fr=class{constructor(a){this._core=a}registerCsiHandler(a,b){return this._core.registerCsiHandler(a,a=>b(a.toArray()))}addCsiHandler(a,b){return this.registerCsiHandler(a,b)}registerDcsHandler(a,b){return this._core.registerDcsHandler(a,(a,c)=>b(a,c.toArray()))}addDcsHandler(a,b){return this.registerDcsHandler(a,b)}registerEscHandler(a,b){return this._core.registerEscHandler(a,b)}addEscHandler(a,b){return this.registerEscHandler(a,b)}registerOscHandler(a,b){return this._core.registerOscHandler(a,b)}addOscHandler(a,b){return this.registerOscHandler(a,b)}},fs=class{constructor(a){this._core=a}register(a){this._core.unicodeService.register(a)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(a){this._core.unicodeService.activeVersion=a}},ft=["cols","rows"],fu=0,fv=class extends aU{constructor(a){super(),this._core=this._register(new fm(a)),this._addonManager=this._register(new fn),this._publicOptions={...this._core.options};let b=a=>this._core.options[a],c=(a,b)=>{this._checkReadonlyOptions(a),this._core.options[a]=b};for(let a in this._core.options){let d={get:b.bind(this,a),set:c.bind(this,a)};Object.defineProperty(this._publicOptions,a,d)}}_checkReadonlyOptions(a){if(ft.includes(a))throw Error(`Option "${a}" can only be set in the constructor`)}_checkProposedApi(){if(!this._core.optionsService.rawOptions.allowProposedApi)throw Error("You must set the allowProposedApi option to true to use proposed API")}get onBell(){return this._core.onBell}get onBinary(){return this._core.onBinary}get onCursorMove(){return this._core.onCursorMove}get onData(){return this._core.onData}get onKey(){return this._core.onKey}get onLineFeed(){return this._core.onLineFeed}get onRender(){return this._core.onRender}get onResize(){return this._core.onResize}get onScroll(){return this._core.onScroll}get onSelectionChange(){return this._core.onSelectionChange}get onTitleChange(){return this._core.onTitleChange}get onWriteParsed(){return this._core.onWriteParsed}get element(){return this._core.element}get parser(){return this._parser||(this._parser=new fr(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new fs(this._core)}get textarea(){return this._core.textarea}get rows(){return this._core.rows}get cols(){return this._core.cols}get buffer(){return this._buffer||(this._buffer=this._register(new fq(this._core))),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){let a=this._core.coreService.decPrivateModes,b="none";switch(this._core.coreMouseService.activeProtocol){case"X10":b="x10";break;case"VT200":b="vt200";break;case"DRAG":b="drag";break;case"ANY":b="any"}return{applicationCursorKeysMode:a.applicationCursorKeys,applicationKeypadMode:a.applicationKeypad,bracketedPasteMode:a.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:b,originMode:a.origin,reverseWraparoundMode:a.reverseWraparound,sendFocusMode:a.sendFocus,synchronizedOutputMode:a.synchronizedOutput,wraparoundMode:a.wraparound}}get options(){return this._publicOptions}set options(a){for(let b in a)this._publicOptions[b]=a[b]}blur(){this._core.blur()}focus(){this._core.focus()}input(a,b=!0){this._core.input(a,b)}resize(a,b){this._verifyIntegers(a,b),this._core.resize(a,b)}open(a){this._core.open(a)}attachCustomKeyEventHandler(a){this._core.attachCustomKeyEventHandler(a)}attachCustomWheelEventHandler(a){this._core.attachCustomWheelEventHandler(a)}registerLinkProvider(a){return this._core.registerLinkProvider(a)}registerCharacterJoiner(a){return this._checkProposedApi(),this._core.registerCharacterJoiner(a)}deregisterCharacterJoiner(a){this._checkProposedApi(),this._core.deregisterCharacterJoiner(a)}registerMarker(a=0){return this._verifyIntegers(a),this._core.registerMarker(a)}registerDecoration(a){return this._checkProposedApi(),this._verifyPositiveIntegers(a.x??0,a.width??0,a.height??0),this._core.registerDecoration(a)}hasSelection(){return this._core.hasSelection()}select(a,b,c){this._verifyIntegers(a,b,c),this._core.select(a,b,c)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(a,b){this._verifyIntegers(a,b),this._core.selectLines(a,b)}dispose(){super.dispose()}scrollLines(a){this._verifyIntegers(a),this._core.scrollLines(a)}scrollPages(a){this._verifyIntegers(a),this._core.scrollPages(a)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(a){this._verifyIntegers(a),this._core.scrollToLine(a)}clear(){this._core.clear()}write(a,b){this._core.write(a,b)}writeln(a,b){this._core.write(a),this._core.write(`\r
|
|
21
|
-
`,b)}paste(a){this._core.paste(a)}refresh(a,b){this._verifyIntegers(a,b),this._core.refresh(a,b)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(a){this._addonManager.loadAddon(this,a)}static get strings(){return{get promptLabel(){return Z},set promptLabel(t){Z=t},get tooMuchOutput(){return $},set tooMuchOutput(t){$=t}}}_verifyIntegers(...a){for(fu of a)if(fu===1/0||isNaN(fu)||fu%1!=0)throw Error("This API only accepts integers")}_verifyPositiveIntegers(...a){for(fu of a)if(fu&&(fu===1/0||isNaN(fu)||fu%1!=0||fu<0))throw Error("This API only accepts positive integers")}},fw=class{activate(a){this._terminal=a}dispose(){}fit(){let a=this.proposeDimensions();if(!a||!this._terminal||isNaN(a.cols)||isNaN(a.rows))return;let b=this._terminal._core;(this._terminal.rows!==a.rows||this._terminal.cols!==a.cols)&&(b._renderService.clear(),this._terminal.resize(a.cols,a.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let a=this._terminal._core._renderService.dimensions;if(0===a.css.cell.width||0===a.css.cell.height)return;let b=0===this._terminal.options.scrollback?0:this._terminal.options.overviewRuler?.width||14,c=window.getComputedStyle(this._terminal.element.parentElement),d=parseInt(c.getPropertyValue("height")),e=Math.max(0,parseInt(c.getPropertyValue("width"))),f=window.getComputedStyle(this._terminal.element),g={top:parseInt(f.getPropertyValue("padding-top")),bottom:parseInt(f.getPropertyValue("padding-bottom")),right:parseInt(f.getPropertyValue("padding-right")),left:parseInt(f.getPropertyValue("padding-left"))},h=g.top+g.bottom;return{cols:Math.max(2,Math.floor((e-(g.right+g.left)-b)/a.css.cell.width)),rows:Math.max(1,Math.floor((d-h)/a.css.cell.height))}}},fx=a.i(83915),fy=a.i(80087),fz=a.i(5151);let fA=(0,v.default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);var fB=a.i(33441);let fC=(0,v.default)("square-pen",[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z",key:"ohrbg2"}]]);var fD=a.i(53155),fE=a.i(65025);let fF=(0,r.forwardRef)(function({tabId:a,cwd:b,env:c,worktreePath:d,command:e,className:f="",initialTodos:g,initialClaudeStatus:h,isActive:i,onTodosUpdated:j,onStatusChange:k},l){let m=(0,r.useRef)(null),n=(0,r.useRef)(null),o=(0,r.useRef)(null),p=(0,r.useRef)(null),s=(0,r.useRef)(a),[u,v]=(0,r.useState)(!1),w=(0,r.useRef)(!1),x=(0,r.useRef)(i),y=(0,r.useRef)("idle"),z=(0,r.useRef)(!1),A=(0,r.useRef)(!1),C=(0,r.useRef)(null),D=(0,r.useRef)(null),E=(0,r.useRef)(null),F=(0,r.useRef)(0),[G,H]=(0,r.useState)("idle"),[J,K]=(0,r.useState)(null),[L,M]=(0,r.useState)(h??"idle"),N=(0,r.useRef)(h??"idle"),[O,P]=(0,r.useState)(g??[]),[R,S]=(0,r.useState)(!1),{effectiveTheme:T}=(0,fy.useTheme)(),U=(0,r.useRef)(k);U.current=k;let V="dark"===T,W=V?{background:"#1e1e1e",foreground:"#d4d4d4",cursor:"#d4d4d4",selectionBackground:"#264f78"}:{background:"#ffffff",foreground:"#1e1e1e",cursor:"#1e1e1e",selectionBackground:"#add6ff"};async function X(a){try{await fetch((0,B.apiUrl)(`/api/internal/tabs/${a}/interrupt`),{method:"POST"})}catch(a){console.warn("[TerminalView] Failed to notify interrupt:",a)}}function Y(){let a=p.current,b=n.current,c=s.current;a&&a.connected&&b&&c&&a.emit("resize",{sessionId:c,cols:b.cols,rows:b.rows})}function Z(a){a.write("\x1b[2J\x1b[3J\x1b[H")}async function $(f,g,h){H("connecting"),K(null);try{var i,k,l,m;let q,r,u=await fetch((0,B.apiUrl)("/api/terminal/sessions"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:b,env:c,worktreePath:d,sessionId:f,command:e}),signal:h});if(!u.ok){let a,b=await u.text().catch(()=>"");try{a=JSON.parse(b).error}catch{}throw a&&K(a),Error(`Failed to create session: ${u.status} ${b}`)}let v=await u.json();if(h.aborted)return;s.current=v.sessionId,v.reused||Z(g),i=v.sessionId,k=v.reused,l=g,m=h,C.current?.dispose(),C.current=null,p.current&&(p.current.removeAllListeners(),p.current.disconnect()),p.current=q=(0,fx.io)((0,B.getServerUrl)(),{transports:["polling","websocket"]}),r=!1,q.on("connect",()=>{let a=z.current;z.current=!0,a?l.writeln("\x1b[90mReconnected.\x1b[0m"):k?(A.current=!0,Z(l)):l.writeln("\x1b[90mConnected.\x1b[0m"),H("connected"),F.current=0,q.emit("join",{room:`tab:${i}`,mode:"terminal"}),a&&x.current&&l.focus()}),q.on("output",({data:a})=>{k&&!r?(r=!0,l.write(a,()=>{A.current=!1,o.current?.fit();let a=n.current;if(a){let b=64===a.cols?63:64;a.resize(b,a.rows),Y(),setTimeout(()=>{o.current?.fit(),Y()},50)}l.scrollToBottom()})):l.write(a)}),q.on("exit",({exitCode:a})=>{console.log("[TerminalView] PTY exited with code:",a),H("exited"),s.current=null,p.current=null}),q.on("error",({message:a})=>{if(console.error("[TerminalView] Socket error message:",a),a.startsWith("Session not found")&&F.current<1){F.current+=1,_();return}H("error")}),q.on("disconnect",()=>{m.aborted||H(a=>"exited"===a||"paused"===a||"idle"===a?a:"exited")}),q.on("status-changed",({status:a})=>{M(a)}),q.on("todos-updated",({todos:b})=>{P(b),j?.(a,b)}),q.on("editor:open",({sessionId:a,content:b})=>{window.dispatchEvent(new CustomEvent("editor-session-open-request",{detail:{sessionId:a,content:b}}))}),C.current=l.onData(a=>{"\x1b"===a&&("running"===N.current||"waiting"===N.current)&&s.current&&X(s.current),q.connected&&s.current&&q.emit("input",{sessionId:s.current,data:a})})}catch(a){if(a instanceof Error&&"AbortError"===a.name)return;console.error("[TerminalView] connectSession error:",a instanceof Error?a.message:String(a)),H("error")}}async function _(){let b=n.current;if(!b)return;let c=new AbortController;await $(a,b,c.signal)}(0,r.useEffect)(()=>{U.current?.(a,G,L)},[a,G,L]),(0,r.useLayoutEffect)(()=>{x.current=i}),(0,r.useLayoutEffect)(()=>{y.current=G}),(0,r.useLayoutEffect)(()=>{N.current=L}),(0,r.useEffect)(()=>{i&&n.current?.focus()},[i]),(0,r.useEffect)(()=>{if(u)n.current?.blur();else if(i){let a=m.current?.querySelector("textarea.xterm-helper-textarea");a?.focus()}},[u,i]),(0,r.useEffect)(()=>{"connected"===G&&o.current&&(o.current.fit(),A.current||Y())},[G]),(0,r.useEffect)(()=>{if(!m.current)return;let b=m.current,c=new fv({cursorBlink:!0,fontSize:13,fontFamily:'"Cascadia Code", "Fira Code", "Menlo", monospace',theme:W,allowProposedApi:!0}),d=new fw;c.loadAddon(d),c.open(m.current),d.fit(),n.current=c,o.current=d,x.current&&c.focus(),c.attachCustomKeyEventHandler(()=>!w.current),c.buffer.onBufferChange(a=>{"normal"===a.type&&c.refresh(0,c.rows-1)});let e=0,f=a=>{let b=performance.now();""===a.data&&b-e<100?a.stopImmediatePropagation():e=b};b.addEventListener("compositionend",f,!0);let g=null,h=0,i=a=>{if(1!==a.touches.length){g=null;return}g=a.touches[0].clientY,h=c.buffer.active.viewportY},j=a=>{if(null===g||1!==a.touches.length)return;let d=b.clientHeight/c.rows;if(d<=0)return;let e=(g-a.touches[0].clientY)/d;c.scrollToLine(Math.round(h+e))};b.addEventListener("touchstart",i,{passive:!0}),b.addEventListener("touchmove",j,{passive:!0});let k=new ResizeObserver(()=>{!w.current&&(d.fit(),A.current||Y())});k.observe(m.current);let l=new AbortController;return $(a,c,l.signal),()=>{l.abort(),k.disconnect(),b.removeEventListener("compositionend",f,!0),b.removeEventListener("touchstart",i),b.removeEventListener("touchmove",j),C.current?.dispose(),C.current=null,c.dispose(),n.current=null,o.current=null,p.current?.removeAllListeners(),p.current?.disconnect(),p.current=null}},[]),(0,r.useEffect)(()=>{n.current&&(n.current.options.theme=W)},[V]),(0,r.useEffect)(()=>{function a(){w.current=!0,n.current?.blur()}function b(){if(setTimeout(()=>{let a=n.current;if(a){let b=64===a.cols?63:64;a.resize(b,a.rows),Y(),setTimeout(()=>{w.current=!1,o.current?.fit(),Y()},100)}else w.current=!1},300),!x.current)return;let a=m.current?.querySelector("textarea.xterm-helper-textarea");a?.focus()}return window.addEventListener("editor-session-open",a),window.addEventListener("editor-session-done",b),()=>{window.removeEventListener("editor-session-open",a),window.removeEventListener("editor-session-done",b)}},[]),(0,r.useEffect)(()=>{function a(a){let b=p.current;if(!b||!b.connected||D.current)return;D.current=setTimeout(()=>{D.current=null,E.current&&(b.off("health-check-ack",E.current),E.current=null),b.disconnect(),b.connect(),H("connecting")},6e3);let c=()=>{D.current&&(clearTimeout(D.current),D.current=null),E.current=null,a.refocus&&x.current&&n.current?.focus()};E.current=c,b.once("health-check-ack",c),b.emit("health-check")}function b(){"visible"===document.visibilityState&&a({refocus:!0})}let c=setInterval(()=>{"visible"!==document.visibilityState||"connected"===y.current&&a({refocus:!1})},8e3);return document.addEventListener("visibilitychange",b),()=>{document.removeEventListener("visibilitychange",b),clearInterval(c),D.current&&(clearTimeout(D.current),D.current=null),E.current&&(p.current?.off("health-check-ack",E.current),E.current=null)}},[]),(0,r.useImperativeHandle)(l,()=>({sendInput:a=>{let b=p.current,c=s.current;b?.connected&&c&&b.emit("input",{sessionId:c,data:a})},focus:()=>{n.current?.focus()}}));let aa=(0,r.useCallback)(()=>{navigator.clipboard.writeText(a).then(()=>{S(!0),setTimeout(()=>S(!1),2e3)})},[a]),ab="connecting"===G,ac="paused"===G||"exited"===G||"error"===G,ad="connected"===G,ae=O.filter(a=>"deleted"!==a.status),af=ae.filter(a=>"completed"===a.status).length,ag=ae.length,ah=a.length>8?`${a.slice(0,8)}…`:a;return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)("div",{className:`flex flex-col h-full min-h-0 ${f}`,children:[(0,q.jsxs)("div",{className:"flex items-center gap-2 px-2 py-1 border-b border-border flex-shrink-0 bg-card",children:[(0,q.jsx)("span",{className:"font-mono text-xs text-muted-foreground",title:a,children:ah}),(0,q.jsx)(Q.Button,{variant:"ghost",size:"icon-xs",onClick:aa,className:"text-muted-foreground hover:text-foreground",title:"Copy tab ID",children:R?(0,q.jsx)(fB.Check,{className:"w-3 h-3 text-success"}):(0,q.jsx)(fz.Copy,{className:"w-3 h-3"})}),(0,q.jsxs)(Q.Button,{size:"xs",onClick:function(){let a=p.current,b=s.current;if(!a||!a.connected||!b)return;let c=`claude --dangerously-skip-permissions --resume ${b} 2>/dev/null || claude --dangerously-skip-permissions --session-id ${b}
|
|
22
|
-
`;a.emit("input",{sessionId:b,data:c})},disabled:!ad,title:"Run Claude",children:[(0,q.jsx)(fA,{className:"w-3 h-3"}),"Run Claude"]}),(0,q.jsxs)(Q.Button,{variant:"ghost",size:"xs",onClick:()=>v(!0),disabled:!ad,className:"text-muted-foreground hover:text-foreground",title:"Open editor input",children:[(0,q.jsx)(fC,{className:"w-3 h-3"}),"Open Editor"]}),ag>0&&(0,q.jsxs)("div",{className:"ml-auto flex items-center gap-1.5 shrink-0",title:O.find(a=>"in_progress"===a.status)?.content??"",children:[(0,q.jsx)(fE.Progress,{value:af,max:ag,className:"w-16 gap-0 [&_[data-slot=progress-track]]:h-[3px]"}),(0,q.jsxs)("span",{className:"text-[10px] text-muted-foreground tabular-nums",children:[af,"/",ag]})]})]}),(0,q.jsxs)("div",{className:"relative flex-1 min-h-0 overflow-hidden",children:[(0,q.jsx)("div",{ref:m,className:"w-full h-full",style:{padding:"4px"}}),ab&&(0,q.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-background",children:(0,q.jsxs)("div",{className:"flex items-center gap-2 text-muted-foreground text-xs",children:[(0,q.jsx)(I.Loader2,{className:"w-4 h-4 animate-spin"}),(0,q.jsx)("span",{children:"Connecting..."})]})}),ac&&(0,q.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-background/90",children:(0,q.jsxs)("div",{className:"text-center space-y-2",children:["error"===G&&(0,q.jsx)("p",{className:"text-xs text-destructive",children:J??"Connection failed"}),"exited"===G&&(0,q.jsx)("p",{className:"text-xs text-muted-foreground",children:"Session ended"}),"paused"===G&&(0,q.jsx)("p",{className:"text-xs text-muted-foreground",children:"Paused"}),(0,q.jsx)(Q.Button,{size:"xs",onClick:_,children:"Reconnect"})]})})]})]}),(0,q.jsx)(fD.MonacoEditorModal,{open:u,onOpenChange:a=>{a.open||v(!1)},onSubmit:a=>{n.current&&a&&n.current.paste(a),v(!1)},title:"Terminal Input",submitLabel:"Paste"})]})});var fG=a.i(72047);let fH=(0,r.forwardRef)(function({task:a,tabs:b,activeTabId:c,onTabChange:d,onTabCreate:e,onTabDelete:f,onTodosUpdated:g,onClaudeStatusChange:h},i){let[j,k]=(0,r.useState)(()=>new Set(c?[c]:[]));(0,r.useEffect)(()=>{c&&k(a=>{if(a.has(c))return a;let b=new Set(a);return b.add(c),b})},[c]);let[l,m]=(0,r.useState)(()=>new Map(b.map(a=>[a.tab_id,{terminal:"connecting",claude:a.status}])));(0,r.useEffect)(()=>{m(a=>{let c=!1,d=new Map(a);for(let a of b)d.has(a.tab_id)||(d.set(a.tab_id,{terminal:"connecting",claude:a.status}),c=!0);return c?d:a})},[b]);let n=(0,r.useRef)(new Map);(0,r.useEffect)(()=>{c&&n.current.get(c)?.focus()},[c]);let o=(0,r.useCallback)((a,b,c)=>{m(d=>{let e=new Map(d);return e.set(a,{terminal:b,claude:c}),e}),h?.(a,c)},[h]);(0,r.useImperativeHandle)(i,()=>({sendInput:(a,b)=>{let c=n.current.get(a);c?.sendInput(b)}}));let p=(0,r.useCallback)(a=>{k(b=>{if(b.has(a))return b;let c=new Set(b);return c.add(a),c}),d(a)},[d]),s=(0,r.useCallback)(async a=>{let b=await e(a);b&&k(a=>{let c=new Set(a);return c.add(b),c})},[e]),u=(0,r.useCallback)(()=>s("terminal"),[s]),v=(0,r.useCallback)(()=>s("claude"),[s]),w=(0,r.useCallback)(()=>s("ollama"),[s]),{settings:x}=(0,fG.useOllamaSettings)(),y=x?.enabled===!0,A=(0,r.useCallback)(a=>{c&&n.current.get(c)?.sendInput(a)},[c]),B=(0,r.useCallback)(a=>{k(b=>{let c=new Set(b);return c.delete(a),c}),m(b=>{let c=new Map(b);return c.delete(a),c}),n.current.delete(a),f(a)},[f]);return(0,q.jsxs)("div",{className:"flex flex-col flex-1 min-h-0",children:[(0,q.jsx)("div",{className:"px-4 pt-4 flex-shrink-0",children:(0,q.jsx)(U,{tabs:b,activeTabId:c,onTabChange:p,onTabCreateTerminal:u,onTabCreateClaude:v,onTabCreateOllama:y?w:void 0,ollamaModel:x?.model,onTabDelete:B,tabStatusMap:l,onVoiceInputTranscribed:b.length>0?A:void 0})}),(0,q.jsxs)("div",{className:"flex-1 min-h-0 relative",children:[b.map(b=>{let d=j.has(b.tab_id),e=b.tab_id===c;return d?(0,q.jsx)("div",{className:"absolute inset-0 flex flex-col px-4 pb-4 pt-2",style:{visibility:e?"visible":"hidden",pointerEvents:e?"auto":"none"},children:(0,q.jsx)(fF,{ref:a=>{a?n.current.set(b.tab_id,a):n.current.delete(b.tab_id)},tabId:b.tab_id,isActive:e,cwd:a.worktreePath,worktreePath:a.worktreePath,command:"terminal"===b.mode?void 0:`claude --dangerously-skip-permissions --resume ${b.tab_id} 2>/dev/null || claude --dangerously-skip-permissions --session-id ${b.tab_id}`,className:"h-full",initialTodos:b.todos,initialClaudeStatus:b.status,onTodosUpdated:g,onStatusChange:o})},b.tab_id):null}),0===b.length&&(0,q.jsxs)("div",{className:"h-full flex flex-col items-center justify-center gap-4 px-4",children:[(0,q.jsx)("p",{className:"text-sm text-muted-foreground",children:"起動するタブを選んでください"}),(0,q.jsxs)("div",{className:"flex flex-wrap items-center justify-center gap-2",children:[(0,q.jsxs)(Q.Button,{onClick:v,children:[(0,q.jsx)(S.ClaudeIcon,{className:"w-4 h-4"}),"Claude Code"]}),y&&(0,q.jsx)("span",{title:x?.model?`Claude Code (Ollama: ${x.model})`:"Ollama のモデルが未設定です(Settings で設定)",children:(0,q.jsxs)(Q.Button,{variant:"outline",onClick:w,disabled:!x?.model,children:[(0,q.jsx)(S.OllamaIcon,{className:"w-4 h-4"}),"Claude Code (Ollama)"]})}),(0,q.jsxs)(Q.Button,{variant:"outline",onClick:u,children:[(0,q.jsx)(z,{className:"w-4 h-4"}),"Terminal"]})]})]}),b.length>0&&!c&&(0,q.jsx)("div",{className:"h-full flex items-center justify-center text-muted-foreground text-sm",children:"Select a tab to view terminal"})]})]})});a.s([],52628),a.i(52628);var fI=a.i(21376);let fJ=r.createContext(void 0);function fK(a){let b=r.useContext(fJ);if(void 0===b&&!a)throw Error((0,fI.default)(33));return b}let fL=r.createContext(void 0);function fM(a){let b=r.useContext(fL);if(void 0===b&&!a)throw Error((0,fI.default)(36));return b}var fN=a.i(2840),fO=a.i(4987);let fP=r.forwardRef(function(a,b){let{className:c,render:d,...e}=a,{store:f}=fM(),{arrowRef:g,side:h,align:i,arrowUncentered:j,arrowStyles:k}=fK(),l=f.useState("open");return(0,fN.useRenderElement)("div",a,{ref:[g,b],stateAttributesMapping:fO.popupStateMapping,state:{open:l,side:h,align:i,uncentered:j},props:{style:k,"aria-hidden":!0,...e}})});var fQ=a.i(58418);let fR=r.createContext(void 0);function fS(a=!0){let b=r.useContext(fR);if(void 0===b&&!a)throw Error((0,fI.default)(25));return b}var fT=a.i(74348);let fU={...fO.popupStateMapping,...fQ.transitionStatusMapping},fV=r.forwardRef(function(a,b){let{className:c,render:d,...e}=a,{store:f}=fM(),g=f.useState("open"),h=f.useState("mounted"),i=f.useState("transitionStatus"),j=f.useState("lastOpenChangeReason"),k=fS();return(0,fN.useRenderElement)("div",a,{ref:k?.backdropRef?[b,k.backdropRef]:b,state:{open:g,transitionStatus:i},stateAttributesMapping:fU,props:[{role:"presentation",hidden:!h,style:{pointerEvents:j===fT.REASONS.triggerHover?"none":void 0,userSelect:"none",WebkitUserSelect:"none"}},e]})});var fW=a.i(71812),fX=a.i(52034);let fY=r.createContext(void 0);var fZ=a.i(71689),f$=a.i(45819),f_=a.i(84991),f0=a.i(25238);function f1(a){let{closeOnClick:b,highlighted:c,id:d,nodeId:e,store:f,typingRef:g,itemRef:h,itemMetadata:i}=a,{events:j}=f.useState("floatingTreeRoot"),k=fS(!0),l=void 0!==k;return r.useMemo(()=>({id:d,role:"menuitem",tabIndex:c?0:-1,onKeyDown(a){" "===a.key&&g?.current&&a.preventDefault()},onMouseMove(a){e&&j.emit("itemhover",{nodeId:e,target:a.currentTarget})},onClick(a){b&&j.emit("close",{domEvent:a,reason:fT.REASONS.itemPress})},onMouseUp(a){if(k){let b=k.initialCursorPointRef.current;if(k.initialCursorPointRef.current=null,l&&b&&1>=Math.abs(a.clientX-b.x)&&1>=Math.abs(a.clientY-b.y)||l&&!f0.isMac&&2===a.button)return}h.current&&f.context.allowMouseUpTriggerRef.current&&(!l||2===a.button)&&(!i||"regular-item"===i.type)&&h.current.click()}}),[b,c,d,j,e,f,g,h,k,l,i])}let f2={type:"regular-item"};function f3(a){let{closeOnClick:b,disabled:c=!1,highlighted:d,id:e,store:f,typingRef:g=f.context.typingRef,nativeButton:h,itemMetadata:i,nodeId:j}=a,k=r.useRef(null),{getButtonProps:l,buttonRef:m}=(0,f$.useButton)({disabled:c,focusableWhenDisabled:!0,native:h,composite:!0}),n=f1({closeOnClick:b,highlighted:d,id:e,nodeId:j,store:f,typingRef:g,itemRef:k,itemMetadata:i}),o=r.useCallback(a=>(0,f_.mergeProps)(n,{onMouseEnter(){"submenu-trigger"===i.type&&i.setActive()}},a,l),[n,l,i]),p=(0,fZ.useMergedRefs)(k,m);return r.useMemo(()=>({getItemProps:o,itemRef:p}),[o,p])}var f4=a.i(17585);let f5=r.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},elementsRef:{current:[]},nextIndexRef:{current:0}}),f6=((n={})[n.None=0]="None",n[n.GuessFromOrder=1]="GuessFromOrder",n);function f7(a={}){let{label:b,metadata:c,textRef:d,indexGuessBehavior:e,index:f}=a,{register:g,unregister:h,subscribeMapChange:i,elementsRef:j,labelsRef:k,nextIndexRef:l}=r.useContext(f5),m=r.useRef(-1),[n,o]=r.useState(f??(e===f6.GuessFromOrder?()=>{if(-1===m.current){let a=l.current;l.current+=1,m.current=a}return m.current}:-1)),p=r.useRef(null),q=r.useCallback(a=>{if(p.current=a,-1!==n&&null!==a&&(j.current[n]=a,k)){let c=void 0!==b;k.current[n]=c?b:d?.current?.textContent??a.textContent}},[n,j,k,b,d]);return(0,f4.useIsoLayoutEffect)(()=>{if(null!=f)return;let a=p.current;if(a)return g(a,c),()=>{h(a)}},[f,g,h,c]),(0,f4.useIsoLayoutEffect)(()=>{if(null==f)return i(a=>{let b=p.current?a.get(p.current)?.index:null;null!=b&&o(b)})},[f,i,o]),r.useMemo(()=>({ref:q,index:n}),[n,q])}var f8=a.i(98134);let f9=((o={}).checked="data-checked",o.unchecked="data-unchecked",o.disabled="data-disabled",o.highlighted="data-highlighted",o),ga={checked:a=>a?{[f9.checked]:""}:{[f9.unchecked]:""},...fQ.transitionStatusMapping};var gb=a.i(62255);let gc=r.forwardRef(function(a,b){let{render:c,className:d,id:e,label:f,nativeButton:g=!1,disabled:h=!1,closeOnClick:i=!1,checked:j,defaultChecked:k,onCheckedChange:l,...m}=a,n=f7({label:f}),o=fK(!0),p=(0,f8.useBaseUiId)(e),{store:s}=fM(),u=s.useState("isActive",n.index),v=s.useState("itemProps"),[w,x]=(0,fX.useControlled)({controlled:j,default:k??!1,name:"MenuCheckboxItem",state:"checked"}),{getItemProps:y,itemRef:z}=f3({closeOnClick:i,disabled:h,highlighted:u,id:p,store:s,nativeButton:g,nodeId:o?.nodeId,itemMetadata:f2}),A=r.useMemo(()=>({disabled:h,highlighted:u,checked:w}),[h,u,w]),B=(0,fW.useStableCallback)(a=>{let b={...(0,gb.createChangeEventDetails)(fT.REASONS.itemPress,a.nativeEvent),preventUnmountOnClose:()=>{}};l?.(!w,b),b.isCanceled||x(a=>!a)}),C=(0,fN.useRenderElement)("div",a,{state:A,stateAttributesMapping:ga,props:[v,{role:"menuitemcheckbox","aria-checked":w,onClick:B},m,y],ref:[z,b,n.ref]});return(0,q.jsx)(fY.Provider,{value:A,children:C})});var gd=a.i(77717),ge=a.i(2471);let gf=r.forwardRef(function(a,b){let{render:c,className:d,keepMounted:e=!1,...f}=a,g=function(){let a=r.useContext(fY);if(void 0===a)throw Error((0,fI.default)(30));return a}(),h=r.useRef(null),{transitionStatus:i,setMounted:j}=(0,gd.useTransitionStatus)(g.checked);(0,ge.useOpenChangeComplete)({open:g.checked,ref:h,onComplete(){g.checked||j(!1)}});let k={checked:g.checked,disabled:g.disabled,highlighted:g.highlighted,transitionStatus:i};return(0,fN.useRenderElement)("span",a,{state:k,ref:[b,h],stateAttributesMapping:ga,props:{"aria-hidden":!0,...f},enabled:e||g.checked})}),gg=r.createContext(void 0),gh=r.forwardRef(function(a,b){let{render:c,className:d,...e}=a,[f,g]=r.useState(void 0),h=r.useMemo(()=>({setLabelId:g}),[g]),i=(0,fN.useRenderElement)("div",a,{ref:b,props:{role:"group","aria-labelledby":f,...e}});return(0,q.jsx)(gg.Provider,{value:h,children:i})}),gi=r.forwardRef(function(a,b){let{className:c,render:d,id:e,...f}=a,g=(0,f8.useBaseUiId)(e),{setLabelId:h}=function(){let a=r.useContext(gg);if(void 0===a)throw Error((0,fI.default)(31));return a}();return(0,f4.useIsoLayoutEffect)(()=>(h(g),()=>{h(void 0)}),[h,g]),(0,fN.useRenderElement)("div",a,{ref:b,props:{id:g,role:"presentation",...f}})}),gj=r.forwardRef(function(a,b){let{render:c,className:d,id:e,label:f,nativeButton:g=!1,disabled:h=!1,closeOnClick:i=!0,...j}=a,k=f7({label:f}),l=fK(!0),m=(0,f8.useBaseUiId)(e),{store:n}=fM(),o=n.useState("isActive",k.index),p=n.useState("itemProps"),{getItemProps:q,itemRef:r}=f3({closeOnClick:i,disabled:h,highlighted:o,id:m,store:n,nativeButton:g,nodeId:l?.nodeId,itemMetadata:f2});return(0,fN.useRenderElement)("div",a,{state:{disabled:h,highlighted:o},props:[p,j,q],ref:[r,b,k.ref]})}),gk=r.forwardRef(function(a,b){let{render:c,className:d,id:e,label:f,closeOnClick:g=!1,...h}=a,i=r.useRef(null),j=f7({label:f}),k=fK(!0),l=k?.nodeId,m=(0,f8.useBaseUiId)(e),{store:n}=fM(),o=n.useState("isActive",j.index),p=n.useState("itemProps"),q=n.context.typingRef,{getButtonProps:s,buttonRef:u}=(0,f$.useButton)({native:!1,composite:!0}),v=f1({closeOnClick:g,highlighted:o,id:m,nodeId:l,store:n,typingRef:q,itemRef:i}),w=r.useMemo(()=>({highlighted:o}),[o]);return(0,fN.useRenderElement)("a",a,{state:w,props:[p,h,function(a){return(0,f_.mergeProps)(v,a,s)}],ref:[i,u,b,j.ref]})});var gl=a.i(15815),gm=a.i(55061),gn=a.i(80401),go=a.i(32049),gp=a.i(45037);let gq={...fO.popupStateMapping,...fQ.transitionStatusMapping},gr=r.forwardRef(function(a,b){let{render:c,className:d,finalFocus:e,...f}=a,{store:g}=fM(),{side:h,align:i}=fK(),j=null!=(0,gn.useToolbarRootContext)(!0),k=g.useState("open"),l=g.useState("transitionStatus"),m=g.useState("popupProps"),n=g.useState("mounted"),o=g.useState("instantType"),p=g.useState("activeTriggerElement"),s=g.useState("parent"),u=g.useState("lastOpenChangeReason"),v=g.useState("rootId"),w=g.useState("floatingRootContext"),x=g.useState("floatingTreeRoot"),y=g.useState("closeDelay"),z=g.useState("activeTriggerElement"),A="context-menu"===s.type;(0,ge.useOpenChangeComplete)({open:k,ref:g.context.popupRef,onComplete(){k&&g.context.onOpenChangeComplete?.(!0)}}),r.useEffect(()=>{function a(a){g.setOpen(!1,(0,gb.createChangeEventDetails)(a.reason,a.domEvent))}return x.events.on("close",a),()=>{x.events.off("close",a)}},[x.events,g]);let B=g.useState("hoverEnabled"),C=g.useState("disabled");(0,gm.useHoverFloatingInteraction)(w,{enabled:B&&!C&&!A&&"menubar"!==s.type,closeDelay:y});let D={transitionStatus:l,side:h,align:i,open:k,nested:"menu"===s.type,instant:o},E=r.useCallback(a=>{g.set("popupElement",a)},[g]),F=(0,fN.useRenderElement)("div",a,{state:D,ref:[b,g.context.popupRef,E],stateAttributesMapping:gq,props:[m,{onKeyDown(a){j&&go.COMPOSITE_KEYS.has(a.key)&&a.stopPropagation()}},(0,gp.getDisabledMountTransitionStyles)(l),f,{"data-rootownerid":v}]}),G=void 0===s.type||A;return(p||"menubar"===s.type&&u!==fT.REASONS.outsidePress)&&(G=!0),(0,q.jsx)(gl.FloatingFocusManager,{context:w,modal:A,disabled:!n,returnFocus:void 0===e?G:e,initialFocus:"menu"!==s.type,restoreFocus:!0,externalTree:"menubar"!==s.type?x:void 0,previousFocusableElement:z,nextFocusableElement:void 0===s.type?g.context.triggerFocusTargetRef:void 0,beforeContentFocusGuardRef:void 0===s.type?g.context.beforeContentFocusGuardRef:void 0,children:F})});var gs=a.i(87263);let gt=r.createContext(void 0),gu=r.forwardRef(function(a,b){let{keepMounted:c=!1,...d}=a,{store:e}=fM();return e.useState("mounted")||c?(0,q.jsx)(gt.Provider,{value:c,children:(0,q.jsx)(gs.FloatingPortal,{ref:b,...d})}):null});var gv=a.i(83065),gw=a.i(76093),gx=a.i(84151),gy=a.i(93573),gz=a.i(95337);function gA(a){let{children:b,elementsRef:c,labelsRef:d,onMapChange:e}=a,f=(0,fW.useStableCallback)(e),g=r.useRef(0),h=(0,gz.useRefWithInit)(gC).current,i=(0,gz.useRefWithInit)(gB).current,[j,k]=r.useState(0),l=r.useRef(j),m=(0,fW.useStableCallback)((a,b)=>{i.set(a,b??null),l.current+=1,k(l.current)}),n=(0,fW.useStableCallback)(a=>{i.delete(a),l.current+=1,k(l.current)}),o=r.useMemo(()=>{let a=new Map;return Array.from(i.keys()).filter(a=>a.isConnected).sort(gD).forEach((b,c)=>{let d=i.get(b)??{};a.set(b,{...d,index:c})}),a},[i,j]);(0,f4.useIsoLayoutEffect)(()=>{if("function"!=typeof MutationObserver||0===o.size)return;let a=new MutationObserver(a=>{let b=new Set,c=a=>b.has(a)?b.delete(a):b.add(a);a.forEach(a=>{a.removedNodes.forEach(c),a.addedNodes.forEach(c)}),0===b.size&&(l.current+=1,k(l.current))});return o.forEach((b,c)=>{c.parentElement&&a.observe(c.parentElement,{childList:!0})}),()=>{a.disconnect()}},[o]),(0,f4.useIsoLayoutEffect)(()=>{l.current===j&&(c.current.length!==o.size&&(c.current.length=o.size),d&&d.current.length!==o.size&&(d.current.length=o.size),g.current=o.size),f(o)},[f,o,c,d,j]),(0,f4.useIsoLayoutEffect)(()=>()=>{c.current=[]},[c]),(0,f4.useIsoLayoutEffect)(()=>()=>{d&&(d.current=[])},[d]);let p=(0,fW.useStableCallback)(a=>(h.add(a),()=>{h.delete(a)}));(0,f4.useIsoLayoutEffect)(()=>{h.forEach(a=>a(o))},[h,o]);let s=r.useMemo(()=>({register:m,unregister:n,subscribeMapChange:p,elementsRef:c,labelsRef:d,nextIndexRef:g}),[m,n,p,c,d,g]);return(0,q.jsx)(f5.Provider,{value:s,children:b})}function gB(){return new Map}function gC(){return new Set}function gD(a,b){let c=a.compareDocumentPosition(b);return c&Node.DOCUMENT_POSITION_FOLLOWING||c&Node.DOCUMENT_POSITION_CONTAINED_BY?-1:c&Node.DOCUMENT_POSITION_PRECEDING||c&Node.DOCUMENT_POSITION_CONTAINS?1:0}var gE=a.i(32654),gF=a.i(19382),gG=a.i(84313),gH=a.i(14612);let gI=r.forwardRef(function(a,b){let{anchor:c,positionMethod:d="absolute",className:e,render:f,side:g,align:h,sideOffset:i=0,alignOffset:j=0,collisionBoundary:k="clipping-ancestors",collisionPadding:l=5,arrowPadding:m=5,sticky:n=!1,disableAnchorTracking:o=!1,collisionAvoidance:p=gF.DROPDOWN_COLLISION_AVOIDANCE,...s}=a,{store:u}=fM(),v=function(){let a=r.useContext(gt);if(void 0===a)throw Error((0,fI.default)(32));return a}(),w=fS(!0),x=u.useState("parent"),y=u.useState("floatingRootContext"),z=u.useState("floatingTreeRoot"),A=u.useState("mounted"),B=u.useState("open"),C=u.useState("modal"),D=u.useState("activeTriggerElement"),E=u.useState("transitionStatus"),F=u.useState("positionerElement"),G=u.useState("instantType"),H=u.useState("hasViewport"),I=u.useState("lastOpenChangeReason"),J=u.useState("floatingNodeId"),K=u.useState("floatingParentNodeId"),L=y.useState("domReferenceElement"),M=r.useRef(null),N=(0,gH.useAnimationsFinished)(F,!1,!1),O=c,P=i,Q=j,R=h,S=p;"context-menu"===x.type&&(O=c??x.context?.anchor,R=R??"start",g||"center"===R||(Q=a.alignOffset??2,P=a.sideOffset??-5));let T=g,U=R;"menu"===x.type?(T=T??"inline-end",U=U??"start",S=a.collisionAvoidance??gF.POPUP_COLLISION_AVOIDANCE):"menubar"===x.type&&(T=T??"bottom",U=U??"start");let V="context-menu"===x.type,W=(0,gy.useAnchorPositioning)({anchor:O,floatingRootContext:y,positionMethod:w?"fixed":d,mounted:A,side:T,sideOffset:P,align:U,alignOffset:Q,arrowPadding:V?0:m,collisionBoundary:k,collisionPadding:l,sticky:n,nodeId:J,keepMounted:v,disableAnchorTracking:o,collisionAvoidance:S,shiftCrossAxis:V&&!("side"in S&&"flip"===S.side),externalTree:z,adaptiveOrigin:H?gG.adaptiveOrigin:void 0}),X=r.useMemo(()=>{let a={};return B||(a.pointerEvents="none"),{role:"presentation",hidden:!A,style:{...W.positionerStyles,...a}}},[B,A,W.positionerStyles]);r.useEffect(()=>{function a(a){a.open&&(a.parentNodeId===J&&u.set("hoverEnabled",!1),a.nodeId!==J&&a.parentNodeId===u.select("floatingParentNodeId")&&u.setOpen(!1,(0,gb.createChangeEventDetails)(fT.REASONS.siblingOpen)))}return z.events.on("menuopenchange",a),()=>{z.events.off("menuopenchange",a)}},[u,z.events,J]),r.useEffect(()=>{if(null!=u.select("floatingParentNodeId"))return z.events.on("menuopenchange",a),()=>{z.events.off("menuopenchange",a)};function a(a){if(a.open||a.nodeId!==u.select("floatingParentNodeId"))return;let b=a.reason??fT.REASONS.siblingOpen;u.setOpen(!1,(0,gb.createChangeEventDetails)(b))}},[z.events,u]);let Y=(0,gw.useTimeout)();r.useEffect(()=>{B||Y.clear()},[B,Y]),r.useEffect(()=>{function a(a){if(B&&a.nodeId===u.select("floatingParentNodeId"))if(a.target&&D&&D!==a.target){let a=u.select("closeDelay");a>0?Y.isStarted()||Y.start(a,()=>{u.setOpen(!1,(0,gb.createChangeEventDetails)(fT.REASONS.siblingOpen))}):u.setOpen(!1,(0,gb.createChangeEventDetails)(fT.REASONS.siblingOpen))}else Y.clear()}return z.events.on("itemhover",a),()=>{z.events.off("itemhover",a)}},[z.events,B,D,u,Y]),r.useEffect(()=>{let a={open:B,nodeId:J,parentNodeId:K,reason:u.select("lastOpenChangeReason")};z.events.emit("menuopenchange",a)},[z.events,B,u,J,K]),(0,f4.useIsoLayoutEffect)(()=>{let a=M.current;if(L&&(M.current=L),a&&L&&L!==a){u.set("instantType",void 0);let a=new AbortController;return N(()=>{u.set("instantType","trigger-change")},a.signal),()=>{a.abort()}}},[L,N,u]);let Z={open:B,side:W.side,align:W.align,anchorHidden:W.anchorHidden,nested:"menu"===x.type,instant:G},$=r.useMemo(()=>({side:W.side,align:W.align,arrowRef:W.arrowRef,arrowUncentered:W.arrowUncentered,arrowStyles:W.arrowStyles,nodeId:W.context.nodeId}),[W.side,W.align,W.arrowRef,W.arrowUncentered,W.arrowStyles,W.context.nodeId]),_=(0,fN.useRenderElement)("div",a,{state:Z,stateAttributesMapping:fO.popupStateMapping,ref:[b,u.useStateSetter("positionerElement")],props:[X,(0,gp.getDisabledMountTransitionStyles)(E),s]}),aa=A&&"menu"!==x.type&&("menubar"!==x.type&&C&&I!==fT.REASONS.triggerHover||"menubar"===x.type&&x.context.modal),ab=null;return"menubar"===x.type?ab=x.context.contentElement:void 0===x.type&&(ab=D),(0,q.jsxs)(fJ.Provider,{value:$,children:[aa&&(0,q.jsx)(gE.InternalBackdrop,{ref:"context-menu"===x.type||"nested-context-menu"===x.type?x.context.internalBackdropRef:null,inert:(0,gv.inertValue)(!B),cutout:ab}),(0,q.jsx)(gx.FloatingNode,{id:J,children:(0,q.jsx)(gA,{elementsRef:u.context.itemDomElements,labelsRef:u.context.itemLabels,children:_})})]})}),gJ=r.createContext(void 0),gK=r.memo(r.forwardRef(function(a,b){let{render:c,className:d,value:e,defaultValue:f,onValueChange:g,disabled:h=!1,...i}=a,[j,k]=(0,fX.useControlled)({controlled:e,default:f,name:"MenuRadioGroup"}),l=(0,fW.useStableCallback)(g),m=(0,fW.useStableCallback)((a,b)=>{l?.(a,b),b.isCanceled||k(a)}),n=(0,fN.useRenderElement)("div",a,{state:{disabled:h},ref:b,props:{role:"group","aria-disabled":h||void 0,...i}}),o=r.useMemo(()=>({value:j,setValue:m,disabled:h}),[j,m,h]);return(0,q.jsx)(gJ.Provider,{value:o,children:n})})),gL=r.createContext(void 0),gM=r.forwardRef(function(a,b){let{render:c,className:d,id:e,label:f,nativeButton:g=!1,disabled:h=!1,closeOnClick:i=!1,value:j,...k}=a,l=f7({label:f}),m=fK(!0),n=(0,f8.useBaseUiId)(e),{store:o}=fM(),p=o.useState("isActive",l.index),s=o.useState("itemProps"),{value:u,setValue:v,disabled:w}=function(){let a=r.useContext(gJ);if(void 0===a)throw Error((0,fI.default)(34));return a}(),x=w||h,y=u===j,{getItemProps:z,itemRef:A}=f3({closeOnClick:i,disabled:x,highlighted:p,id:n,store:o,nativeButton:g,nodeId:m?.nodeId,itemMetadata:f2}),B=r.useMemo(()=>({disabled:x,highlighted:p,checked:y}),[x,p,y]),C=(0,fW.useStableCallback)(a=>{v(j,{...(0,gb.createChangeEventDetails)(fT.REASONS.itemPress,a.nativeEvent),preventUnmountOnClose:()=>{}})}),D=(0,fN.useRenderElement)("div",a,{state:B,stateAttributesMapping:ga,props:[s,{role:"menuitemradio","aria-checked":y,onClick:C},k,z],ref:[A,b,l.ref]});return(0,q.jsx)(gL.Provider,{value:B,children:D})}),gN=r.forwardRef(function(a,b){let{render:c,className:d,keepMounted:e=!1,...f}=a,g=function(){let a=r.useContext(gL);if(void 0===a)throw Error((0,fI.default)(35));return a}(),h=r.useRef(null),{transitionStatus:i,setMounted:j}=(0,gd.useTransitionStatus)(g.checked);(0,ge.useOpenChangeComplete)({open:g.checked,ref:h,onComplete(){g.checked||j(!1)}});let k={checked:g.checked,disabled:g.disabled,highlighted:g.highlighted,transitionStatus:i};return(0,fN.useRenderElement)("span",a,{state:k,stateAttributesMapping:ga,ref:[b,h],props:{"aria-hidden":!0,...f},enabled:e||g.checked})});var gO=a.i(21042),gP=a.i(87377),gQ=a.i(66173),gR=a.i(37388),gS=a.i(62279),gT=a.i(60349),gU=a.i(25158),gV=a.i(26476),gW=a.i(35850),gX=a.i(632),gY=a.i(6239),gZ=a.i(50499),g$=a.i(99570),g_=a.i(85766),g0=a.i(38794);function g1(a,b,c){switch(a){case"vertical":return b;case"horizontal":return c;default:return b||c}}function g2(a,b){return g1(b,a===g0.ARROW_UP||a===g0.ARROW_DOWN,a===g0.ARROW_LEFT||a===g0.ARROW_RIGHT)}function g3(a,b,c){return g1(b,a===g0.ARROW_DOWN,c?a===g0.ARROW_LEFT:a===g0.ARROW_RIGHT)||"Enter"===a||" "===a||""===a}var g4=a.i(59750),g5=a.i(88074);let g6=r.createContext(null);function g7(a){let b=r.useContext(g6);if(null===b&&!a)throw Error((0,fI.default)(5));return b}var g8=a.i(25173),g9=a.i(8273),ha=a.i(458),hb=a.i(43216),hc=a.i(46790),hd=a.i(78462),he=a.i(21017);let hf={...hd.popupStoreSelectors,disabled:(0,ha.createSelector)(a=>"menubar"===a.parent.type&&a.parent.context.disabled||a.disabled),modal:(0,ha.createSelector)(a=>(void 0===a.parent.type||"context-menu"===a.parent.type)&&(a.modal??!0)),allowMouseEnter:(0,ha.createSelector)(a=>a.allowMouseEnter),stickIfOpen:(0,ha.createSelector)(a=>a.stickIfOpen),parent:(0,ha.createSelector)(a=>a.parent),rootId:(0,ha.createSelector)(a=>"menu"===a.parent.type?a.parent.store.select("rootId"):void 0!==a.parent.type?a.parent.context.rootId:a.rootId),activeIndex:(0,ha.createSelector)(a=>a.activeIndex),isActive:(0,ha.createSelector)((a,b)=>a.activeIndex===b),hoverEnabled:(0,ha.createSelector)(a=>a.hoverEnabled),instantType:(0,ha.createSelector)(a=>a.instantType),lastOpenChangeReason:(0,ha.createSelector)(a=>a.openChangeReason),floatingTreeRoot:(0,ha.createSelector)(a=>"menu"===a.parent.type?a.parent.store.select("floatingTreeRoot"):a.floatingTreeRoot),floatingNodeId:(0,ha.createSelector)(a=>a.floatingNodeId),floatingParentNodeId:(0,ha.createSelector)(a=>a.floatingParentNodeId),itemProps:(0,ha.createSelector)(a=>a.itemProps),closeDelay:(0,ha.createSelector)(a=>a.closeDelay),hasViewport:(0,ha.createSelector)(a=>a.hasViewport),keyboardEventRelay:(0,ha.createSelector)(a=>a.keyboardEventRelay?a.keyboardEventRelay:"menu"===a.parent.type?a.parent.store.select("keyboardEventRelay"):void 0)};class hg extends hb.ReactStore{constructor(a){super({...{...(0,hd.createInitialPopupStoreState)(),disabled:!1,modal:!0,allowMouseEnter:!1,stickIfOpen:!0,parent:{type:void 0},rootId:void 0,activeIndex:null,hoverEnabled:!0,instantType:void 0,openChangeReason:null,floatingTreeRoot:new hc.FloatingTreeStore,floatingNodeId:void 0,floatingParentNodeId:null,itemProps:gR.EMPTY_OBJECT,keyboardEventRelay:void 0,closeDelay:0,hasViewport:!1},...a},{positionerRef:r.createRef(),popupRef:r.createRef(),typingRef:{current:!1},itemDomElements:{current:[]},itemLabels:{current:[]},allowMouseUpTriggerRef:{current:!1},triggerFocusTargetRef:r.createRef(),beforeContentFocusGuardRef:r.createRef(),onOpenChangeComplete:void 0,triggerElements:new he.PopupTriggerMap},hf),this.unsubscribeParentListener=this.observe("parent",a=>{if(this.unsubscribeParentListener?.(),"menu"===a.type){let b=a.store.select("rootId"),c=a.store.select("floatingTreeRoot"),d=a.store.select("keyboardEventRelay");this.unsubscribeParentListener=a.store.subscribe(()=>{let e=a.store.select("rootId"),f=a.store.select("floatingTreeRoot"),g=a.store.select("keyboardEventRelay");(b!==e||c!==f||d!==g)&&(b=e,c=f,d=g,this.notifyAll())}),this.context.allowMouseUpTriggerRef=a.store.context.allowMouseUpTriggerRef;return}void 0!==a.type&&(this.context.allowMouseUpTriggerRef=a.context.allowMouseUpTriggerRef),this.unsubscribeParentListener=null})}setOpen(a,b){this.state.floatingRootContext.context.events.emit("setOpen",{open:a,eventDetails:b})}static useStore(a,b){let c=(0,gz.useRefWithInit)(()=>new hg(b)).current;return a??c}unsubscribeParentListener=null}var hh=a.i(86089);let hi=r.createContext(void 0);function hj(){return r.useContext(hi)}let hk=(0,gS.fastComponent)(function(a){let b,c,{children:d,open:e,onOpenChange:f,onOpenChangeComplete:g,defaultOpen:h=!1,disabled:i=!1,modal:j,loopFocus:k=!0,orientation:l="vertical",actionsRef:m,closeParentOnEsc:n=!1,handle:o,triggerId:p,defaultTriggerId:s=null,highlightItemOnHover:u=!0}=a,v=fS(!0),w=fM(!0),x=g7(!0),y=hj(),z=r.useMemo(()=>y&&w?{type:"menu",store:w.store}:x?{type:"menubar",context:x}:v&&!w?{type:"context-menu",context:v}:{type:void 0},[v,w,x,y]),A=hg.useStore(o?.store,{open:h,openProp:e,activeTriggerId:s,triggerIdProp:p,parent:z});(0,gP.useOnFirstRender)(()=>{void 0===e&&!1===A.state.open&&!0===h&&A.update({open:!0,activeTriggerId:s})}),A.useControlledProp("openProp",e),A.useControlledProp("triggerIdProp",p),A.useContextCallback("onOpenChangeComplete",g);let B=A.useState("floatingTreeRoot"),C=(0,gx.useFloatingNodeId)(B),D=(0,gx.useFloatingParentNodeId)();(0,f4.useIsoLayoutEffect)(()=>{v&&!w?A.update({parent:{type:"context-menu",context:v},floatingNodeId:C,floatingParentNodeId:D}):w&&A.update({floatingNodeId:C,floatingParentNodeId:D})},[v,w,C,D,A]);let E=A.useState("open"),F=A.useState("activeTriggerElement"),G=A.useState("positionerElement"),H=A.useState("hoverEnabled"),I=A.useState("modal"),J=A.useState("disabled"),K=A.useState("lastOpenChangeReason"),L=A.useState("parent"),M=A.useState("activeIndex"),N=A.useState("payload"),O=A.useState("floatingParentNodeId"),P=r.useRef(null),Q=null!=O;A.useSyncedValues({disabled:i,modal:void 0===L.type?j:void 0,rootId:(0,gO.useId)()});let{openMethod:R,triggerProps:S}=(0,g9.useOpenInteractionType)(E);(0,hh.useImplicitActiveTrigger)(A);let{forceUnmount:T}=(0,hh.useOpenStateTransitions)(E,A,()=>{A.update({allowMouseEnter:!1,stickIfOpen:!0})}),U=r.useRef("context-menu"!==L.type),V=(0,gw.useTimeout)();r.useEffect(()=>{if(E||(P.current=null),"context-menu"===L.type){if(!E){V.clear(),U.current=!1;return}V.start(500,()=>{U.current=!0})}},[V,E,L.type]),(0,gQ.useScrollLock)(E&&I&&K!==fT.REASONS.triggerHover&&"touch"!==R,G),(0,f4.useIsoLayoutEffect)(()=>{E||H||A.set("hoverEnabled",!0)},[E,H,A]);let W=r.useRef(!0),X=(0,gw.useTimeout)(),Y=(0,fW.useStableCallback)((a,c)=>{let d=c.reason;if(E===a&&c.trigger===F&&K===d||(c.preventUnmountOnClose=()=>{A.set("preventUnmountingOnClose",!0)},a||null!=c.trigger||(c.trigger=F??void 0),f?.(a,c),c.isCanceled))return;let e={open:a,nativeEvent:c.event,reason:c.reason,nested:Q};b?.emit("openchange",e);let g=c.event;if(!1===a&&g?.type==="click"&&"touch"===g.pointerType&&!W.current)return;if(!a&&null!==M){let a=A.context.itemDomElements.current[M];queueMicrotask(()=>{a?.setAttribute("tabindex","-1")})}a&&d===fT.REASONS.triggerFocus?(W.current=!1,X.start(300,()=>{W.current=!0})):(W.current=!0,X.clear());let h=(d===fT.REASONS.triggerPress||d===fT.REASONS.itemPress)&&0===g.detail&&g?.isTrusted,i=!a&&(d===fT.REASONS.escapeKey||null==d),j={open:a,openChangeReason:d};P.current=c.event??null;let k=c.trigger?.id??null;(k||a)&&(j.activeTriggerId=k,j.activeTriggerElement=c.trigger??null),A.update(j),"menubar"===L.type&&(d===fT.REASONS.triggerFocus||d===fT.REASONS.focusOut||d===fT.REASONS.triggerHover||d===fT.REASONS.listNavigation||d===fT.REASONS.siblingOpen)?A.set("instantType","group"):h||i?A.set("instantType",h?"click":"dismiss"):A.set("instantType",void 0)}),Z=r.useCallback(a=>{let b=(0,gb.createChangeEventDetails)(a);return b.preventUnmountOnClose=()=>{A.set("preventUnmountingOnClose",!0)},b},[A]),$=r.useCallback(()=>{A.setOpen(!1,Z(fT.REASONS.imperativeAction))},[A,Z]);r.useImperativeHandle(m,()=>({unmount:T,close:$}),[T,$]),"context-menu"===L.type&&(c=L.context),r.useImperativeHandle(c?.positionerRef,()=>G,[G]),r.useImperativeHandle(c?.actionsRef,()=>({setOpen:Y}),[Y]);let _=(0,g5.useSyncedFloatingRootContext)({popupStore:A,onOpenChange:Y});b=_.context.events,r.useEffect(()=>{let a=({open:a,eventDetails:b})=>Y(a,b);return b.on("setOpen",a),()=>{b?.off("setOpen",a)}},[b,Y]);let aa=(0,gT.useDismiss)(_,{enabled:!J,bubbles:{escapeKey:n&&"menu"===L.type},outsidePress:()=>"context-menu"!==L.type||P.current?.type==="contextmenu"||U.current,externalTree:Q?B:void 0}),ab=(0,g4.useRole)(_,{role:"menu"}),ac=(0,g8.useDirection)(),ad=r.useCallback(a=>{A.select("activeIndex")!==a&&A.set("activeIndex",a)},[A]),ae=function(a,b){let c="rootStore"in a?a.rootStore:a,d=c.useState("open"),e=c.useState("floatingElement"),f=c.useState("domReferenceElement"),g=c.context.dataRef,{listRef:h,activeIndex:i,onNavigate:j=()=>{},enabled:k=!0,selectedIndex:l=null,allowEscape:m=!1,loopFocus:n=!1,nested:o=!1,rtl:p=!1,virtual:q=!1,focusItemOnOpen:s="auto",focusItemOnHover:u=!0,openOnArrowKeyDown:v=!0,disabledIndices:w,orientation:x="vertical",parentOrientation:y,cols:z=1,id:A,resetOnPointerLeave:B=!0,externalTree:C}=b,D=(0,gY.getFloatingFocusElement)(e),E=(0,gW.useValueAsRef)(D),F=(0,gx.useFloatingParentNodeId)(),G=(0,gx.useFloatingTree)(C);(0,f4.useIsoLayoutEffect)(()=>{g.current.orientation=x},[g,x]);let H=(0,gY.isTypeableCombobox)(f),I=r.useRef(s),J=r.useRef(l??-1),K=r.useRef(null),L=r.useRef(!0),M=(0,fW.useStableCallback)(a=>{j(-1===J.current?null:J.current,a)}),N=r.useRef(M),O=r.useRef(!!e),P=r.useRef(d),Q=r.useRef(!1),R=r.useRef(!1),S=(0,gW.useValueAsRef)(w),T=(0,gW.useValueAsRef)(d),U=(0,gW.useValueAsRef)(l),V=(0,gW.useValueAsRef)(B),W=(0,fW.useStableCallback)(()=>{function a(a){q?G?.events.emit("virtualfocus",a):(0,g_.enqueueFocus)(a,{sync:Q.current,preventScroll:!0})}let b=h.current[J.current],c=R.current;b&&a(b),(Q.current?a=>a():requestAnimationFrame)(()=>{let d=h.current[J.current]||b;!d||(b||a(d),Y&&(c||!L.current)&&d.scrollIntoView?.({block:"nearest",inline:"nearest"}))})});(0,f4.useIsoLayoutEffect)(()=>{k&&(d&&e?(J.current=l??-1,I.current&&null!=l&&(R.current=!0,M())):O.current&&(J.current=-1,N.current()))},[k,d,e,l,M]),(0,f4.useIsoLayoutEffect)(()=>{if(k){if(!d){Q.current=!1;return}if(e)if(null==i){if(Q.current=!1,null!=U.current)return;if(O.current&&(J.current=-1,W()),(!P.current||!O.current)&&I.current&&(null!=K.current||!0===I.current&&null==K.current)){let a=0,b=()=>{null==h.current[0]?(a<2&&(a?requestAnimationFrame:queueMicrotask)(b),a+=1):(J.current=null==K.current||g3(K.current,x,p)||o?(0,g$.getMinListIndex)(h):(0,g$.getMaxListIndex)(h),K.current=null,M())};b()}}else(0,g$.isIndexOutOfListBounds)(h,i)||(J.current=i,W(),R.current=!1)}},[k,d,e,i,U,o,h,x,p,M,W,S]),(0,f4.useIsoLayoutEffect)(()=>{if(!k||e||!G||q||!O.current)return;let a=G.nodesRef.current,b=a.find(a=>a.id===F)?.context?.elements.floating,c=(0,gY.activeElement)((0,gX.ownerDocument)(e)),d=a.some(a=>a.context&&(0,gY.contains)(a.context.elements.floating,c));b&&!d&&L.current&&b.focus({preventScroll:!0})},[k,e,G,F,q]),(0,f4.useIsoLayoutEffect)(()=>{N.current=M,P.current=d,O.current=!!e}),(0,f4.useIsoLayoutEffect)(()=>{d||(K.current=null,I.current=s)},[d,s]);let X=null!=i,Y=r.useMemo(()=>{function a(a){if(!T.current)return;let b=h.current.indexOf(a.currentTarget);-1!==b&&J.current!==b&&(J.current=b,M(a))}return{onFocus(b){Q.current=!0,a(b)},onClick:({currentTarget:a})=>a.focus({preventScroll:!0}),onMouseMove(b){Q.current=!0,R.current=!1,u&&a(b)},onPointerLeave(a){if(!T.current||!L.current||"touch"===a.pointerType)return;Q.current=!0;let b=a.relatedTarget;if(!(!u||h.current.includes(b))&&V.current&&((0,g_.enqueueFocus)(null,{sync:!0}),J.current=-1,M(a),!q)){let a=E.current,b=(0,gY.activeElement)((0,gX.ownerDocument)(a));a&&(0,gY.contains)(a,b)&&a.focus({preventScroll:!0})}}}},[T,E,u,h,M,V,q]),Z=r.useCallback(()=>y??G?.nodesRef.current.find(a=>a.id===F)?.context?.dataRef?.current.orientation,[F,G,y]),$=(0,fW.useStableCallback)(a=>{var b;let e,g;if(L.current=!1,Q.current=!0,229===a.which||!T.current&&a.currentTarget===E.current)return;if(o&&(b=a.key,e=p?b===g0.ARROW_RIGHT:b===g0.ARROW_LEFT,g=b===g0.ARROW_UP,"both"===x||"horizontal"===x&&z&&z>1?"Escape"===b:g1(x,e,g))){g2(a.key,Z())||(0,gZ.stopEvent)(a),c.setOpen(!1,(0,gb.createChangeEventDetails)(fT.REASONS.listNavigation,a.nativeEvent)),(0,gV.isHTMLElement)(f)&&(q?G?.events.emit("virtualfocus",f):f.focus());return}let i=J.current,j=(0,g$.getMinListIndex)(h,w),k=(0,g$.getMaxListIndex)(h,w);if(H||("Home"===a.key&&((0,gZ.stopEvent)(a),J.current=j,M(a)),"End"===a.key&&((0,gZ.stopEvent)(a),J.current=k,M(a))),z>1){let b=Array.from({length:h.current.length},()=>({width:1,height:1})),c=(0,g$.createGridCellMap)(b,z,!1),d=c.findIndex(a=>null!=a&&!(0,g$.isListIndexDisabled)(h,a,w)),e=c.reduce((a,b,c)=>null==b||(0,g$.isListIndexDisabled)(h,b,w)?a:c,-1),f=c[(0,g$.getGridNavigatedIndex)({current:c.map(a=>null!=a?h.current[a]:null)},{event:a,orientation:x,loopFocus:n,rtl:p,cols:z,disabledIndices:(0,g$.getGridCellIndices)([...("function"!=typeof w?w:null)||h.current.map((a,b)=>(0,g$.isListIndexDisabled)(h,b,w)?b:void 0),void 0],c),minIndex:d,maxIndex:e,prevIndex:(0,g$.getGridCellIndexOfCorner)(J.current>k?j:J.current,b,c,z,a.key===g0.ARROW_DOWN?"bl":a.key===(p?g0.ARROW_LEFT:g0.ARROW_RIGHT)?"tr":"tl"),stopEvent:!0})];if(null!=f&&(J.current=f,M(a)),"both"===x)return}if(g2(a.key,x)){if((0,gZ.stopEvent)(a),d&&!q&&(0,gY.activeElement)(a.currentTarget.ownerDocument)===a.currentTarget){J.current=g3(a.key,x,p)?j:k,M(a);return}g3(a.key,x,p)?n?i>=k?m&&i!==h.current.length?J.current=-1:(Q.current=!1,J.current=j):J.current=(0,g$.findNonDisabledListIndex)(h,{startingIndex:i,disabledIndices:w}):J.current=Math.min(k,(0,g$.findNonDisabledListIndex)(h,{startingIndex:i,disabledIndices:w})):n?i<=j?m&&-1!==i?J.current=h.current.length:(Q.current=!1,J.current=k):J.current=(0,g$.findNonDisabledListIndex)(h,{startingIndex:i,decrement:!0,disabledIndices:w}):J.current=Math.max(j,(0,g$.findNonDisabledListIndex)(h,{startingIndex:i,decrement:!0,disabledIndices:w})),(0,g$.isIndexOutOfListBounds)(h,J.current)&&(J.current=-1),M(a)}}),_=r.useMemo(()=>q&&d&&X&&{"aria-activedescendant":`${A}-${i}`},[q,d,X,A,i]),aa=r.useMemo(()=>({"aria-orientation":"both"===x?void 0:x,...!H?_:{},onKeyDown(a){if("Tab"===a.key&&a.shiftKey&&d&&!q){let b=(0,gY.getTarget)(a.nativeEvent);if(b&&!(0,gY.contains)(E.current,b))return;(0,gZ.stopEvent)(a),c.setOpen(!1,(0,gb.createChangeEventDetails)(fT.REASONS.focusOut,a.nativeEvent)),(0,gV.isHTMLElement)(f)&&f.focus();return}$(a)},onPointerMove(){L.current=!0}}),[_,$,E,x,H,c,d,q,f]),ab=r.useMemo(()=>{function a(a){"auto"===s&&(0,gZ.isVirtualClick)(a.nativeEvent)&&(I.current=!q)}function b(a){I.current=s,"auto"===s&&(0,gZ.isVirtualPointerEvent)(a.nativeEvent)&&(I.current=!0)}return{onKeyDown(a){var b,d;let e=c.select("open");L.current=!1;let f=a.key.startsWith("Arrow"),g=(b=a.key,d=Z(),g1(d,p?b===g0.ARROW_LEFT:b===g0.ARROW_RIGHT,b===g0.ARROW_DOWN)),i=g2(a.key,x),j=(o?g:i)||"Enter"===a.key||""===a.key.trim();if(q&&e)return $(a);if(e||v||!f){if(j){let b=g2(a.key,Z());K.current=o&&b?null:a.key}if(o){g&&((0,gZ.stopEvent)(a),e?(J.current=(0,g$.getMinListIndex)(h,S.current),M(a)):c.setOpen(!0,(0,gb.createChangeEventDetails)(fT.REASONS.listNavigation,a.nativeEvent,a.currentTarget)));return}i&&(null!=U.current&&(J.current=U.current),(0,gZ.stopEvent)(a),!e&&v?c.setOpen(!0,(0,gb.createChangeEventDetails)(fT.REASONS.listNavigation,a.nativeEvent,a.currentTarget)):$(a),e&&M(a))}},onFocus(a){c.select("open")&&!q&&(J.current=-1,M(a))},onPointerDown:b,onPointerEnter:b,onMouseDown:a,onClick:a}},[$,S,s,h,o,M,c,v,x,Z,p,U,q]),ac=r.useMemo(()=>({..._,...ab}),[_,ab]);return r.useMemo(()=>k?{reference:ac,floating:aa,item:Y,trigger:ab}:{},[k,ac,aa,ab,Y])}(_,{enabled:!J,listRef:A.context.itemDomElements,activeIndex:M,nested:void 0!==L.type,loopFocus:k,orientation:l,parentOrientation:"menubar"===L.type?L.context.orientation:void 0,rtl:"rtl"===ac,disabledIndices:gR.EMPTY_ARRAY,onNavigate:ad,openOnArrowKeyDown:"context-menu"!==L.type,externalTree:Q?B:void 0,focusItemOnHover:u}),af=r.useCallback(a=>{A.context.typingRef.current=a},[A]),ag=function(a,b){let c="rootStore"in a?a.rootStore:a,d=c.context.dataRef,e=c.useState("open"),{listRef:f,elementsRef:g,activeIndex:h,onMatch:i,onTypingChange:j,enabled:k=!0,resetMs:l=750,selectedIndex:m=null}=b,n=(0,gw.useTimeout)(),o=r.useRef(""),p=r.useRef(m??h??-1),q=r.useRef(null);(0,f4.useIsoLayoutEffect)(()=>{(e||null===m)&&(n.clear(),q.current=null,""!==o.current&&(o.current=""))},[e,m,n]),(0,f4.useIsoLayoutEffect)(()=>{e&&""===o.current&&(p.current=m??h??-1)},[e,m,h]);let s=(0,fW.useStableCallback)(a=>{a?d.current.typing||(d.current.typing=a,j?.(a)):d.current.typing&&(d.current.typing=a,j?.(a))}),u=(0,fW.useStableCallback)(a=>{function b(a,c,d=0){if(0===a.length)return -1;let e=(d%a.length+a.length)%a.length,f=c.toLocaleLowerCase();for(let b=0;b<a.length;b+=1){let c=(e+b)%a.length,d=a[c];if(d?.toLocaleLowerCase().startsWith(f)&&function(a){let b=g?.current[a];return!b||(0,g$.isElementVisible)(b)}(c))return c}return -1}let c=f.current;if(o.current.length>0&&" "===a.key&&((0,gZ.stopEvent)(a),s(!0)),o.current.length>0&&" "!==o.current[0]&&-1===b(c,o.current)&&" "!==a.key&&s(!1),null==c||1!==a.key.length||a.ctrlKey||a.metaKey||a.altKey)return;e&&" "!==a.key&&((0,gZ.stopEvent)(a),s(!0));let d=""===o.current;d&&(p.current=m??h??-1),c.every(a=>!a||a[0]?.toLocaleLowerCase()!==a[1]?.toLocaleLowerCase())&&o.current===a.key&&(o.current="",p.current=q.current),o.current+=a.key,n.start(l,()=>{o.current="",p.current=q.current,s(!1)});let j=d?m??h??-1:p.current,k=b(c,o.current,(j??0)+1);-1!==k?(i?.(k),q.current=k):" "!==a.key&&(o.current="",s(!1))}),v=(0,fW.useStableCallback)(a=>{let b=a.relatedTarget,d=c.select("domReferenceElement"),e=c.select("floatingElement"),f=(0,gY.contains)(d,b),g=(0,gY.contains)(e,b);f||g||(n.clear(),o.current="",p.current=q.current,s(!1))}),w=r.useMemo(()=>({onKeyDown:u,onBlur:v}),[u,v]),x=r.useMemo(()=>({onKeyDown:u,onBlur:v}),[u,v]);return r.useMemo(()=>k?{reference:w,floating:x}:{},[k,w,x])}(_,{listRef:A.context.itemLabels,elementsRef:A.context.itemDomElements,activeIndex:M,resetMs:gF.TYPEAHEAD_RESET_MS,onMatch:a=>{E&&a!==M&&A.set("activeIndex",a)},onTypingChange:af}),{getReferenceProps:ah,getFloatingProps:ai,getItemProps:aj,getTriggerProps:ak}=(0,gU.useInteractions)([aa,ab,ae,ag]),al=r.useMemo(()=>{let a=(0,f_.mergeProps)(ah(),{onMouseMove(){A.set("allowMouseEnter",!0)}},S);return delete a.role,a},[ah,A,S]),am=r.useMemo(()=>{let a=ak();if(!a)return a;let b=(0,f_.mergeProps)(a,S);return delete b.role,delete b["aria-controls"],b},[ak,S]),an=r.useMemo(()=>ai({onMouseMove(){A.set("allowMouseEnter",!0),"menu"===L.type&&A.set("hoverEnabled",!1)},onClick(){A.select("hoverEnabled")&&A.set("hoverEnabled",!1)},onKeyDown(a){let b=A.select("keyboardEventRelay");b&&!a.isPropagationStopped()&&b(a)}}),[ai,L.type,A]),ao=r.useMemo(()=>aj(),[aj]);A.useSyncedValues({floatingRootContext:_,activeTriggerProps:al,inactiveTriggerProps:am,popupProps:an,itemProps:ao});let ap=r.useMemo(()=>({store:A,parent:z}),[A,z]),aq=(0,q.jsx)(fL.Provider,{value:ap,children:"function"==typeof d?d({payload:N}):d});return void 0===L.type||"context-menu"===L.type?(0,q.jsx)(gx.FloatingTree,{externalTree:B,children:aq}):aq});var hl=a.i(35112),hm=a.i(7813),hn=a.i(58240),ho=a.i(9236);let hp=f0.isMac&&f0.isSafari;var hq=a.i(24629),hr=a.i(81751),hs=a.i(29975);function ht(a){let{render:b,className:c,state:d=gR.EMPTY_OBJECT,props:e=gR.EMPTY_ARRAY,refs:f=gR.EMPTY_ARRAY,metadata:g,stateAttributesMapping:h,tag:i="div",...j}=a,{compositeProps:k,compositeRef:l}=function(a={}){let{highlightItemOnHover:b,highlightedIndex:c,onHighlightedIndexChange:d}=(0,hs.useCompositeRootContext)(),{ref:e,index:f}=f7(a),g=c===f,h=r.useRef(null),i=(0,fZ.useMergedRefs)(e,h);return{compositeProps:r.useMemo(()=>({tabIndex:g?0:-1,onFocus(){d(f)},onMouseMove(){let a=h.current;if(!b||!a)return;let c=a.hasAttribute("disabled")||"true"===a.ariaDisabled;g||c||a.focus()}}),[g,d,f,b]),compositeRef:i,index:f}}({metadata:g});return(0,fN.useRenderElement)(i,a,{state:d,ref:[...f,l],props:[k,...e,j],stateAttributesMapping:h})}var hu=a.i(25839);let hv=(0,gS.fastComponentRef)(function(a,b){let c,d,e,{render:f,className:g,disabled:h=!1,nativeButton:i=!0,id:j,openOnHover:k,delay:l=100,closeDelay:m=0,handle:n,payload:o,...p}=a,s=fM(!0),u=n?.store??s?.store;if(!u)throw Error((0,fI.default)(85));let v=(0,f8.useBaseUiId)(j),w=u.useState("isTriggerActive",v),x=u.useState("floatingRootContext"),y=u.useState("isOpenedByTrigger",v),z=r.useRef(null),A=(c=fS(!0),d=fM(!0),e=g7(!0),r.useMemo(()=>e?{type:"menubar",context:e}:c&&!d?{type:"context-menu",context:c}:{type:void 0},[c,d,e])),B=(0,hs.useCompositeRootContext)(!0),C=(0,gx.useFloatingTree)(),D=r.useMemo(()=>C??new hc.FloatingTreeStore,[C]),E=(0,gx.useFloatingNodeId)(D),F=(0,gx.useFloatingParentNodeId)(),{registerTrigger:G,isMountedByThisTrigger:H}=(0,hh.useTriggerDataForwarding)(v,z,u,{payload:o,closeDelay:m,parent:A,floatingTreeRoot:D,floatingNodeId:E,floatingParentNodeId:F,keyboardEventRelay:B?.relayKeyboardEvent}),I="menubar"===A.type,J=u.useState("disabled"),K=h||J||I&&A.context.disabled,{getButtonProps:L,buttonRef:M}=(0,f$.useButton)({disabled:K,native:i});r.useEffect(()=>{y||void 0!==A.type||(u.context.allowMouseUpTriggerRef.current=!1)},[u,y,A.type]);let N=r.useRef(null),O=(0,gw.useTimeout)(),P=(0,fW.useStableCallback)(a=>{if(!N.current)return;O.clear(),u.context.allowMouseUpTriggerRef.current=!1;let b=a.target;if((0,gY.contains)(N.current,b)||(0,gY.contains)(u.select("positionerElement"),b)||b===N.current||null!=b&&function a(b){return(0,gV.isHTMLElement)(b)&&b.hasAttribute("data-rootownerid")?b.getAttribute("data-rootownerid")??void 0:(0,gV.isLastTraversableNode)(b)?void 0:a((0,gV.getParentNode)(b))}(b)===u.select("rootId"))return;let c=function(a){let b=a.getBoundingClientRect(),c=window.getComputedStyle(a,"::before"),d=window.getComputedStyle(a,"::after");if("none"===c.content&&"none"===d.content)return b;let e=parseFloat(c.width)||0,f=parseFloat(c.height)||0,g=parseFloat(d.width)||0,h=parseFloat(d.height)||0,i=Math.max(b.width,e,g),j=Math.max(b.height,f,h),k=i-b.width,l=j-b.height;return{left:b.left-k/2,right:b.right+k/2,top:b.top-l/2,bottom:b.bottom+l/2}}(N.current);a.clientX>=c.left-2&&a.clientX<=c.right+2&&a.clientY>=c.top-2&&a.clientY<=c.bottom+2||D.events.emit("close",{domEvent:a,reason:fT.REASONS.cancelOpen})});r.useEffect(()=>{y&&u.select("lastOpenChangeReason")===fT.REASONS.triggerHover&&(0,gX.ownerDocument)(N.current).addEventListener("mouseup",P,{once:!0})},[y,P,u]);let Q=I&&A.context.hasSubmenuOpen,R=k??Q,S=(0,hq.useHoverReferenceInteraction)(x,{enabled:R&&!K&&"context-menu"!==A.type&&(!I||Q&&!H),handleClose:(0,hm.safePolygon)({blockPointerEvents:!I}),mouseOnly:!0,move:!1,restMs:void 0===A.type?l:void 0,delay:{close:m},triggerElementRef:z,externalTree:D,isActiveTrigger:w}),T=function(a,b){let c=(0,gw.useTimeout)(),[d,e]=r.useState(!1);return(0,f4.useIsoLayoutEffect)(()=>{a&&"trigger-hover"===b?(e(!0),c.start(gF.PATIENT_CLICK_THRESHOLD,()=>{e(!1)})):a||(c.clear(),e(!1))},[a,b,c]),d}(y,u.select("lastOpenChangeReason")),U=(0,hn.useClick)(x,{enabled:!K&&"context-menu"!==A.type,event:y&&I?"click":"mousedown",toggle:!0,ignoreMouse:!1,stickIfOpen:void 0===A.type&&T}),V=function(a,b={}){let c="rootStore"in a?a.rootStore:a,{events:d,dataRef:e}=c.context,{enabled:f=!0,delay:g}=b,h=r.useRef(!1),i=r.useRef(null),j=(0,gw.useTimeout)(),k=r.useRef(!0);r.useEffect(()=>{let a=c.select("domReferenceElement");if(!f)return;let b=(0,gV.getWindow)(a);function d(){let a=c.select("domReferenceElement");!c.select("open")&&(0,gV.isHTMLElement)(a)&&a===(0,gY.activeElement)((0,gX.ownerDocument)(a))&&(h.current=!0)}function e(){k.current=!0}function g(){k.current=!1}return b.addEventListener("blur",d),hp&&(b.addEventListener("keydown",e,!0),b.addEventListener("pointerdown",g,!0)),()=>{b.removeEventListener("blur",d),hp&&(b.removeEventListener("keydown",e,!0),b.removeEventListener("pointerdown",g,!0))}},[c,f]),r.useEffect(()=>{if(f)return d.on("openchange",a),()=>{d.off("openchange",a)};function a(a){if(a.reason===fT.REASONS.triggerPress||a.reason===fT.REASONS.escapeKey){let a=c.select("domReferenceElement");(0,gV.isElement)(a)&&(i.current=a,h.current=!0)}}},[d,f,c]);let l=r.useMemo(()=>({onMouseLeave(){h.current=!1,i.current=null},onFocus(a){let b=a.currentTarget;if(h.current){if(i.current===b)return;h.current=!1,i.current=null}let d=(0,gY.getTarget)(a.nativeEvent);if((0,gV.isElement)(d)){if(hp&&!a.relatedTarget){if(!k.current&&!(0,gY.isTypeableElement)(d))return}else if(!(0,gY.matchesFocusVisible)(d))return}let e=(0,gY.isTargetInsideEnabledTrigger)(a.relatedTarget,c.context.triggerElements),{nativeEvent:f,currentTarget:l}=a,m="function"==typeof g?g():g;c.select("open")&&e||0===m||void 0===m?c.setOpen(!0,(0,gb.createChangeEventDetails)(fT.REASONS.triggerFocus,f,l)):j.start(m,()=>{h.current||c.setOpen(!0,(0,gb.createChangeEventDetails)(fT.REASONS.triggerFocus,f,l))})},onBlur(a){h.current=!1,i.current=null;let b=a.relatedTarget,d=a.nativeEvent,f=(0,gV.isElement)(b)&&b.hasAttribute((0,ho.createAttribute)("focus-guard"))&&"outside"===b.getAttribute("data-type");j.start(0,()=>{let a=c.select("domReferenceElement"),g=(0,gY.activeElement)(a?a.ownerDocument:document);if(!b&&g===a||(0,gY.contains)(e.current.floatingContext?.refs.floating.current,g)||(0,gY.contains)(a,g)||f)return;let h=b??g;(0,gY.isTargetInsideEnabledTrigger)(h,c.context.triggerElements)||c.setOpen(!1,(0,gb.createChangeEventDetails)(fT.REASONS.triggerFocus,d))})}}),[e,c,j,g]);return r.useMemo(()=>f?{reference:l,trigger:l}:{},[f,l])}(x,{enabled:!K&&Q}),W=function(a){let{enabled:b=!0,mouseDownAction:c,open:d}=a,e=r.useRef(!1);return r.useMemo(()=>b?{onMouseDown:a=>{("open"===c&&!d||"close"===c&&d)&&(e.current=!0,(0,gX.ownerDocument)(a.currentTarget).addEventListener("click",()=>{e.current=!1},{once:!0}))},onClick:a=>{e.current&&(e.current=!1,a.preventBaseUIHandler())}}:gR.EMPTY_OBJECT,[b,c,d])}({open:y,enabled:I,mouseDownAction:"open"}),X=(0,gU.useInteractions)([U,V]),Y={disabled:K,open:y},Z=u.useState("triggerProps",H),$=[N,b,M,G,z],_=[X.getReferenceProps(),S??gR.EMPTY_OBJECT,Z,{"aria-haspopup":"menu",id:v,onMouseDown:a=>{u.select("open")||(O.start(200,()=>{u.context.allowMouseUpTriggerRef.current=!0}),(0,gX.ownerDocument)(a.currentTarget).addEventListener("mouseup",P,{once:!0}))}},I?{role:"menuitem"}:{},W,p,L],aa=r.useRef(null),ab=(0,fW.useStableCallback)(a=>{hl.flushSync(()=>{u.setOpen(!1,(0,gb.createChangeEventDetails)(fT.REASONS.focusOut,a.nativeEvent,a.currentTarget))});let b=(0,hr.getTabbableBeforeElement)(aa.current);b?.focus()}),ac=(0,fW.useStableCallback)(a=>{let b=u.select("positionerElement");if(b&&(0,hr.isOutsideEvent)(a,b))u.context.beforeContentFocusGuardRef.current?.focus();else{hl.flushSync(()=>{u.setOpen(!1,(0,gb.createChangeEventDetails)(fT.REASONS.focusOut,a.nativeEvent,a.currentTarget))});let c=(0,hr.getTabbableAfterElement)(u.context.triggerFocusTargetRef.current||z.current);for(;null!==c&&(0,gY.contains)(b,c);){let a=c;if((c=(0,hr.getNextTabbable)(c))===a)break}c?.focus()}}),ad=(0,fN.useRenderElement)("button",a,{enabled:!I,stateAttributesMapping:fO.pressableTriggerOpenStateMapping,state:Y,ref:$,props:_});return I?(0,q.jsx)(ht,{tag:"button",render:f,className:g,state:Y,refs:$,props:_,stateAttributesMapping:fO.pressableTriggerOpenStateMapping}):y?(0,q.jsxs)(r.Fragment,{children:[(0,q.jsx)(hu.FocusGuard,{ref:aa,onFocus:ab},`${v}-pre-focus-guard`),(0,q.jsx)(r.Fragment,{children:ad},v),(0,q.jsx)(hu.FocusGuard,{ref:u.context.triggerFocusTargetRef,onFocus:ac},`${v}-post-focus-guard`)]}):(0,q.jsx)(r.Fragment,{children:ad},v)});var hw=a.i(43538);let hx=((p={}).popupWidth="--popup-width",p.popupHeight="--popup-height",p),hy={activationDirection:a=>a?{"data-activation-direction":a}:null},hz=r.forwardRef(function(a,b){let{render:c,className:d,children:e,...f}=a,{store:g}=fM(),{side:h}=fK(),i=g.useState("instantType"),{children:j,state:k}=(0,hw.usePopupViewport)({store:g,side:h,cssVars:hx,children:e}),l={activationDirection:k.activationDirection,transitioning:k.transitioning,instant:i};return(0,fN.useRenderElement)("div",a,{state:l,ref:b,props:[f,{children:j}],stateAttributesMapping:hy})}),hA=r.forwardRef(function(a,b){let{className:c,render:d,orientation:e="horizontal",...f}=a;return(0,fN.useRenderElement)("div",a,{state:{orientation:e},ref:b,props:[{role:"separator","aria-orientation":e},f]})}),hB=r.forwardRef(function(a,b){let{render:c,className:d,label:e,id:f,nativeButton:g=!1,openOnHover:h=!0,delay:i=100,closeDelay:j=0,disabled:k=!1,...l}=a,m=f7(),n=fK(),{store:o}=fM(),p=(0,f8.useBaseUiId)(f),q=o.useState("open"),s=o.useState("floatingRootContext"),u=o.useState("floatingTreeRoot"),v=(0,hh.useTriggerRegistration)(p,o),w=r.useCallback(a=>{let b=v(a);return null!==a&&o.select("open")&&null==o.select("activeTriggerId")&&o.update({activeTriggerId:p,activeTriggerElement:a,closeDelay:j}),b},[v,j,o,p]),x=r.useRef(null),y=r.useCallback(a=>{x.current=a,o.set("activeTriggerElement",a)},[o]),z=hj();if(!z?.parentMenu)throw Error((0,fI.default)(37));o.useSyncedValue("closeDelay",j);let A=z.parentMenu,B=A.useState("itemProps"),C=A.useState("isActive",m.index),D=r.useMemo(()=>({type:"submenu-trigger",setActive(){A.set("activeIndex",m.index)}}),[A,m.index]),E=o.useState("disabled"),F=k||E,{getItemProps:G,itemRef:H}=f3({closeOnClick:!1,disabled:F,highlighted:C,id:p,store:o,typingRef:A.context.typingRef,nativeButton:g,itemMetadata:D,nodeId:n?.nodeId}),I=o.useState("hoverEnabled"),J=A.useState("allowMouseEnter"),K=(0,hq.useHoverReferenceInteraction)(s,{enabled:I&&h&&!F,handleClose:(0,hm.safePolygon)({blockPointerEvents:!0}),mouseOnly:!0,move:!0,restMs:i,delay:J?{open:i,close:j}:0,triggerElementRef:x,externalTree:u}),L=(0,hn.useClick)(s,{enabled:!F,event:"mousedown",toggle:!h,ignoreMouse:h,stickIfOpen:!1}),M=(0,gU.useInteractions)([L]),N=o.useState("triggerProps",!0);return delete N.id,(0,fN.useRenderElement)("div",a,{state:{disabled:F,highlighted:C,open:q},stateAttributesMapping:fO.triggerOpenStateMapping,props:[M.getReferenceProps(),K,N,B,{tabIndex:q||C?0:-1,onBlur(){C&&A.set("activeIndex",null)}},l,G],ref:[b,m.ref,H,w,y]})});class hC{constructor(){this.store=new hg}open(a){let b=a?this.store.context.triggerElements.getById(a):void 0;if(a&&!b)throw Error((0,fI.default)(83,a));this.store.setOpen(!0,(0,gb.createChangeEventDetails)("imperative-action",void 0,b))}close(){this.store.setOpen(!1,(0,gb.createChangeEventDetails)("imperative-action",void 0,void 0))}get isOpen(){return this.store.state.open}}a.s(["Arrow",0,fP,"Backdrop",0,fV,"CheckboxItem",0,gc,"CheckboxItemIndicator",0,gf,"Group",0,gh,"GroupLabel",0,gi,"Handle",0,hC,"Item",0,gj,"LinkItem",0,gk,"Popup",0,gr,"Portal",0,gu,"Positioner",0,gI,"RadioGroup",0,gK,"RadioItem",0,gM,"RadioItemIndicator",0,gN,"Root",0,hk,"Separator",0,hA,"SubmenuRoot",0,function(a){let b=fM().store,c=r.useMemo(()=>({parentMenu:b}),[b]);return(0,q.jsx)(hi.Provider,{value:c,children:(0,q.jsx)(hk,{...a})})},"SubmenuTrigger",0,hB,"Trigger",0,hv,"Viewport",0,hz,"createHandle",0,function(){return new hC}],74483);var hD=a.i(74483),hD=hD,hE=a.i(760);function hF({...a}){return(0,q.jsx)(hD.Root,{"data-slot":"dropdown-menu",...a})}function hG({...a}){return(0,q.jsx)(hD.Trigger,{"data-slot":"dropdown-menu-trigger",...a})}function hH({align:a="start",alignOffset:b=0,side:c="bottom",sideOffset:d=4,className:e,...f}){return(0,q.jsx)(hD.Portal,{children:(0,q.jsx)(hD.Positioner,{className:"isolate z-50 outline-none",align:a,alignOffset:b,side:c,sideOffset:d,children:(0,q.jsx)(hD.Popup,{"data-slot":"dropdown-menu-content",className:(0,hE.cn)("z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95",e),...f})})})}function hI({className:a,inset:b,variant:c="default",...d}){return(0,q.jsx)(hD.Item,{"data-slot":"dropdown-menu-item","data-inset":b,"data-variant":c,className:(0,hE.cn)("group/dropdown-menu-item relative flex min-h-7 cursor-default items-center gap-2 rounded-md px-2 py-1 text-xs/relaxed outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7.5 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-3.5 data-[variant=destructive]:*:[svg]:text-destructive",a),...d})}function hJ({className:a,...b}){return(0,q.jsx)(hD.Separator,{"data-slot":"dropdown-menu-separator",className:(0,hE.cn)("-mx-1 my-1 h-px bg-border/50",a),...b})}a.i(11989),a.i(6406),a.s(["default",0,function({params:a}){let{id:b}=(0,r.use)(a),c=(0,s.useRouter)(),d=(0,E.useToast)(),[e,f]=(0,r.useState)(null),[g,h]=(0,r.useState)([]),[i,j]=(0,r.useState)(),[k,l]=(0,r.useState)(!0),[m,n]=(0,r.useState)(!1),[o,p]=(0,r.useState)(!1),[v,H]=(0,r.useState)(!0),I=(0,r.useRef)(null);(0,F.useDocumentTitle)(e?.title),(0,G.useTaskEvents)({onTaskCreated:()=>{},onTaskUpdated:a=>{a.id===b&&f(a)},onTaskDeleted:a=>{a===b&&(d.info("Task deleted",e?.title??void 0),c.push("/"))}});let J=(0,r.useCallback)(()=>{fetch((0,B.apiUrl)(`/api/tasks/${b}/read`),{method:"POST"}).catch(()=>{})},[b]),K=(0,r.useCallback)((a,b)=>{("success"===b||"failure"===b||"error"===b)&&J()},[J]),L=(0,r.useRef)(null),M=(0,r.useCallback)(async()=>{if(null!==L.current&&L.current!==b&&H(!0),L.current=b,v){l(!0);try{let a=await fetch((0,B.apiUrl)(`/api/tasks/${b}`));if(!a.ok)throw Error("Failed to fetch task");let c=(await a.json()).data.task,d=c.tabs||[];f(c),h(d),d.length>0&&j(d[0].tab_id),J()}catch(a){console.error("Failed to load data:",a)}finally{l(!1),H(!1)}}},[b,v,J]);(0,r.useEffect)(()=>{M()},[b,M]);let N=async(a,b)=>{let c=d.loading("Updating task...");try{let e=await fetch((0,B.apiUrl)(`/api/tasks/${a}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)});if(!e.ok)throw Error("Failed to update task");let g=await e.json();return f(g.data.task),d.success(c,"Successfully updated task"),{success:!0}}catch(b){console.error("Failed to update task:",b);let a=b instanceof Error?b.message:"Failed to update task";return d.error(c,"Failed to update task",a),{success:!1,errors:[{field:"global",message:"Failed to update task"}]}}},O=async(a="claude")=>{try{let c=await fetch((0,B.apiUrl)(`/api/tasks/${b}/tabs`),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({mode:a})});if(!c.ok)throw Error("Failed to create tab");let d=(await c.json()).data.tab;return h(a=>a.some(a=>a.tab_id===d.tab_id)?a:[...a,d]),j(d.tab_id),d.tab_id}catch(a){console.error("Failed to create tab:",a);return}},R=async a=>{try{if(!(await fetch((0,B.apiUrl)(`/api/tasks/${b}/tabs/${a}`),{method:"DELETE"})).ok)throw Error("Failed to delete tab");if(h(b=>b.filter(b=>b.tab_id!==a)),i===a){let b=g.filter(b=>b.tab_id!==a);j(b[0]?.tab_id)}}catch(a){console.error("Failed to delete tab:",a)}},S=async()=>{if(!e)return;let a=d.loading("Opening terminal...",e.worktreePath);try{if(!(await fetch((0,B.apiUrl)("/api/commands/open"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({commandType:"terminal",owner:e.owner,repo:e.repo,branch:e.branch})})).ok)throw Error("Command execution failed");d.success(a,"Successfully opened terminal",e.worktreePath)}catch(c){let b=c instanceof Error?c.message:"Unknown error";d.error(a,"Failed to open terminal",b)}},T=async()=>{if(!e)return;let a=d.loading("Opening VS Code...",e.worktreePath);try{if(!(await fetch((0,B.apiUrl)("/api/commands/open"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({commandType:"vscode",owner:e.owner,repo:e.repo,branch:e.branch})})).ok)throw Error("Command execution failed");d.success(a,"Successfully opened VS Code",e.worktreePath)}catch(c){let b=c instanceof Error?c.message:"Unknown error";d.error(a,"Failed to open VS Code",b)}};return k&&!e?(0,q.jsx)("div",{className:"h-screen flex items-center justify-center bg-background",children:(0,q.jsx)(D.LoadingSpinner,{size:"lg",message:"Loading task..."})}):e?(0,q.jsxs)("div",{className:"h-screen flex flex-col bg-background",children:[(0,q.jsx)("div",{className:"sticky top-0 z-50 p-4 border-b border-border bg-card",children:(0,q.jsxs)("div",{className:"flex items-center justify-between",children:[(0,q.jsxs)(Q.Button,{variant:"ghost",onClick:()=>c.push("/"),className:"text-primary font-medium hover:bg-primary/10 hover:text-foreground",children:[(0,q.jsx)(u.ArrowLeft,{className:"w-4 h-4"}),"Back to Board"]}),(0,q.jsx)("h1",{className:"text-base font-semibold text-foreground absolute left-1/2 -translate-x-1/2 max-w-[50vw] truncate",children:e.title}),(0,q.jsxs)(hF,{children:[(0,q.jsx)(hG,{render:(0,q.jsx)(Q.Button,{variant:"ghost",size:"icon-lg",className:"text-primary hover:bg-primary/10 hover:text-foreground",title:"Task menu"}),children:(0,q.jsx)(x,{className:"w-5 h-5"})}),(0,q.jsxs)(hH,{align:"end",children:[(0,q.jsxs)(hI,{onClick:()=>n(!0),children:[(0,q.jsx)(y.Pencil,{className:"w-4 h-4"}),"Detail / Edit"]}),(0,q.jsx)(hJ,{}),(0,q.jsxs)(hI,{onClick:S,children:[(0,q.jsx)(z,{className:"w-4 h-4"}),"Open Terminal"]}),(0,q.jsxs)(hI,{onClick:T,children:[(0,q.jsx)(w,{className:"w-4 h-4"}),"Open VS Code"]}),(0,q.jsx)(hJ,{}),(0,q.jsxs)(hI,{className:"text-destructive focus:text-destructive",onClick:()=>p(!0),children:[(0,q.jsx)(A.Trash2,{className:"w-4 h-4"}),"Delete"]})]})]})]})}),(0,q.jsx)("div",{className:"flex-1 flex flex-col min-h-0",children:(0,q.jsx)("div",{className:"bg-card flex flex-col flex-1 min-h-0",children:(0,q.jsx)(fH,{ref:I,task:e,tabs:g,activeTabId:i,onTabChange:j,onTabCreate:O,onTabDelete:R,onClaudeStatusChange:K})})}),(0,q.jsx)(C.TaskDialog,{mode:"edit",isOpen:m,onClose:()=>n(!1),task:e,onUpdate:N}),(0,q.jsx)(P.ConfirmDialog,{open:o,onOpenChange:a=>p(a.open),title:"Delete Task",message:`Delete task "${e.title}"?
|
|
21
|
+
`,b)}paste(a){this._core.paste(a)}refresh(a,b){this._verifyIntegers(a,b),this._core.refresh(a,b)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(a){this._addonManager.loadAddon(this,a)}static get strings(){return{get promptLabel(){return Z},set promptLabel(t){Z=t},get tooMuchOutput(){return $},set tooMuchOutput(t){$=t}}}_verifyIntegers(...a){for(fu of a)if(fu===1/0||isNaN(fu)||fu%1!=0)throw Error("This API only accepts integers")}_verifyPositiveIntegers(...a){for(fu of a)if(fu&&(fu===1/0||isNaN(fu)||fu%1!=0||fu<0))throw Error("This API only accepts positive integers")}},fw=class{activate(a){this._terminal=a}dispose(){}fit(){let a=this.proposeDimensions();if(!a||!this._terminal||isNaN(a.cols)||isNaN(a.rows))return;let b=this._terminal._core;(this._terminal.rows!==a.rows||this._terminal.cols!==a.cols)&&(b._renderService.clear(),this._terminal.resize(a.cols,a.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let a=this._terminal._core._renderService.dimensions;if(0===a.css.cell.width||0===a.css.cell.height)return;let b=0===this._terminal.options.scrollback?0:this._terminal.options.overviewRuler?.width||14,c=window.getComputedStyle(this._terminal.element.parentElement),d=parseInt(c.getPropertyValue("height")),e=Math.max(0,parseInt(c.getPropertyValue("width"))),f=window.getComputedStyle(this._terminal.element),g={top:parseInt(f.getPropertyValue("padding-top")),bottom:parseInt(f.getPropertyValue("padding-bottom")),right:parseInt(f.getPropertyValue("padding-right")),left:parseInt(f.getPropertyValue("padding-left"))},h=g.top+g.bottom;return{cols:Math.max(2,Math.floor((e-(g.right+g.left)-b)/a.css.cell.width)),rows:Math.max(1,Math.floor((d-h)/a.css.cell.height))}}},fx=a.i(83915),fy=a.i(80087),fz=a.i(5151),fA=a.i(25015),fB=a.i(33441);let fC=(0,v.default)("square-pen",[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z",key:"ohrbg2"}]]);var fD=a.i(53155),fE=a.i(65025),fF=a.i(6828);let fG=(0,r.forwardRef)(function({tabId:a,cwd:b,env:c,launchClaude:d=!1,className:e="",initialTodos:f,initialClaudeStatus:g,isActive:h,onTodosUpdated:i,onStatusChange:j},k){let l=(0,r.useRef)(null),m=(0,r.useRef)(null),n=(0,r.useRef)(null),o=(0,r.useRef)(null),p=(0,r.useRef)(a),[s,u]=(0,r.useState)(!1),v=(0,r.useRef)(!1),w=(0,r.useRef)(h),x=(0,r.useRef)("idle"),y=(0,r.useRef)(!1),z=(0,r.useRef)(!1),A=(0,r.useRef)(null),C=(0,r.useRef)(null),D=(0,r.useRef)(null),E=(0,r.useRef)(0),[F,G]=(0,r.useState)("idle"),[H,J]=(0,r.useState)(null),[K,L]=(0,r.useState)(g??"idle"),M=(0,r.useRef)(g??"idle"),[N,O]=(0,r.useState)(f??[]),[P,R]=(0,r.useState)(!1),{effectiveTheme:S}=(0,fy.useTheme)(),T=(0,r.useRef)(j);T.current=j;let U="dark"===S,V=U?{background:"#1e1e1e",foreground:"#d4d4d4",cursor:"#d4d4d4",selectionBackground:"#264f78"}:{background:"#ffffff",foreground:"#1e1e1e",cursor:"#1e1e1e",selectionBackground:"#add6ff"};async function W(a){try{await fetch((0,B.apiUrl)(`/api/internal/tabs/${a}/interrupt`),{method:"POST"})}catch(a){console.warn("[TerminalView] Failed to notify interrupt:",a)}}function X(){let a=o.current,b=m.current,c=p.current;a&&a.connected&&b&&c&&a.emit("resize",{sessionId:c,cols:b.cols,rows:b.rows})}function Y(a){a.write("\x1b[2J\x1b[3J\x1b[H")}async function Z(e,f,g){G("connecting"),J(null);try{var h,j,k,l;let q,r,s=await fetch((0,B.apiUrl)("/api/terminal/sessions"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:b,env:c,sessionId:e,claude:d}),signal:g});if(!s.ok){let a,b=await s.text().catch(()=>"");try{a=JSON.parse(b).error}catch{}throw a&&J(a),Error(`Failed to create session: ${s.status} ${b}`)}let u=await s.json();if(g.aborted)return;p.current=u.sessionId,u.reused||Y(f),h=u.sessionId,j=u.reused,k=f,l=g,A.current?.dispose(),A.current=null,o.current&&(o.current.removeAllListeners(),o.current.disconnect()),o.current=q=(0,fx.io)((0,B.getServerUrl)(),{transports:["polling","websocket"]}),r=!1,q.on("connect",()=>{let a=y.current;y.current=!0,a?k.writeln("\x1b[90mReconnected.\x1b[0m"):j?(z.current=!0,Y(k)):k.writeln("\x1b[90mConnected.\x1b[0m"),G("connected"),E.current=0,q.emit("join",{room:`tab:${h}`,mode:"terminal"}),a&&w.current&&k.focus()}),q.on("output",({data:a})=>{j&&!r?(r=!0,k.write(a,()=>{z.current=!1,n.current?.fit();let a=m.current;if(a){let b=64===a.cols?63:64;a.resize(b,a.rows),X(),setTimeout(()=>{n.current?.fit(),X()},50)}k.scrollToBottom()})):k.write(a)}),q.on("exit",({exitCode:a})=>{console.log("[TerminalView] PTY exited with code:",a),G("exited"),p.current=null,o.current=null}),q.on("error",({message:a})=>{if(console.error("[TerminalView] Socket error message:",a),a.startsWith("Session not found")&&E.current<1){E.current+=1,$();return}G("error")}),q.on("disconnect",()=>{l.aborted||G(a=>"exited"===a||"paused"===a||"idle"===a?a:"exited")}),q.on("status-changed",({status:a})=>{L(a)}),q.on("todos-updated",({todos:b})=>{O(b),i?.(a,b)}),q.on("editor:open",({sessionId:a,content:b})=>{window.dispatchEvent(new CustomEvent("editor-session-open-request",{detail:{sessionId:a,content:b}}))}),A.current=k.onData(a=>{"\x1b"===a&&("running"===M.current||"waiting"===M.current)&&p.current&&W(p.current),q.connected&&p.current&&q.emit("input",{sessionId:p.current,data:a})})}catch(a){if(a instanceof Error&&"AbortError"===a.name)return;console.error("[TerminalView] connectSession error:",a instanceof Error?a.message:String(a)),G("error")}}async function $(){let b=m.current;if(!b)return;let c=new AbortController;await Z(a,b,c.signal)}(0,r.useEffect)(()=>{T.current?.(a,F,K)},[a,F,K]),(0,r.useLayoutEffect)(()=>{w.current=h}),(0,r.useLayoutEffect)(()=>{x.current=F}),(0,r.useLayoutEffect)(()=>{M.current=K}),(0,r.useEffect)(()=>{h&&m.current?.focus()},[h]),(0,r.useEffect)(()=>{if(s)m.current?.blur();else if(h){let a=l.current?.querySelector("textarea.xterm-helper-textarea");a?.focus()}},[s,h]),(0,r.useEffect)(()=>{"connected"===F&&n.current&&(n.current.fit(),z.current||X())},[F]),(0,r.useEffect)(()=>{if(!l.current)return;let b=l.current,c=new fv({cursorBlink:!0,fontSize:13,fontFamily:'"Cascadia Code", "Fira Code", "Menlo", monospace',theme:V,allowProposedApi:!0}),d=new fw;c.loadAddon(d),c.open(l.current),d.fit(),m.current=c,n.current=d,w.current&&c.focus(),c.attachCustomKeyEventHandler(()=>!v.current),c.buffer.onBufferChange(a=>{"normal"===a.type&&c.refresh(0,c.rows-1)});let e=0,f=a=>{let b=performance.now();""===a.data&&b-e<100?a.stopImmediatePropagation():e=b};b.addEventListener("compositionend",f,!0);let g=null,h=0,i=a=>{if(1!==a.touches.length){g=null;return}g=a.touches[0].clientY,h=c.buffer.active.viewportY},j=a=>{if(null===g||1!==a.touches.length)return;let d=b.clientHeight/c.rows;if(d<=0)return;let e=(g-a.touches[0].clientY)/d;c.scrollToLine(Math.round(h+e))};b.addEventListener("touchstart",i,{passive:!0}),b.addEventListener("touchmove",j,{passive:!0});let k=new ResizeObserver(()=>{!v.current&&(d.fit(),z.current||X())});k.observe(l.current);let p=new AbortController;return Z(a,c,p.signal),()=>{p.abort(),k.disconnect(),b.removeEventListener("compositionend",f,!0),b.removeEventListener("touchstart",i),b.removeEventListener("touchmove",j),A.current?.dispose(),A.current=null,c.dispose(),m.current=null,n.current=null,o.current?.removeAllListeners(),o.current?.disconnect(),o.current=null}},[]),(0,r.useEffect)(()=>{m.current&&(m.current.options.theme=V)},[U]),(0,r.useEffect)(()=>{function a(){v.current=!0,m.current?.blur()}function b(){if(setTimeout(()=>{let a=m.current;if(a){let b=64===a.cols?63:64;a.resize(b,a.rows),X(),setTimeout(()=>{v.current=!1,n.current?.fit(),X()},100)}else v.current=!1},300),!w.current)return;let a=l.current?.querySelector("textarea.xterm-helper-textarea");a?.focus()}return window.addEventListener("editor-session-open",a),window.addEventListener("editor-session-done",b),()=>{window.removeEventListener("editor-session-open",a),window.removeEventListener("editor-session-done",b)}},[]),(0,r.useEffect)(()=>{function a(a){let b=o.current;if(!b||!b.connected||C.current)return;C.current=setTimeout(()=>{C.current=null,D.current&&(b.off("health-check-ack",D.current),D.current=null),b.disconnect(),b.connect(),G("connecting")},6e3);let c=()=>{C.current&&(clearTimeout(C.current),C.current=null),D.current=null,a.refocus&&w.current&&m.current?.focus()};D.current=c,b.once("health-check-ack",c),b.emit("health-check")}function b(){"visible"===document.visibilityState&&a({refocus:!0})}let c=setInterval(()=>{"visible"!==document.visibilityState||"connected"===x.current&&a({refocus:!1})},8e3);return document.addEventListener("visibilitychange",b),()=>{document.removeEventListener("visibilitychange",b),clearInterval(c),C.current&&(clearTimeout(C.current),C.current=null),D.current&&(o.current?.off("health-check-ack",D.current),D.current=null)}},[]),(0,r.useImperativeHandle)(k,()=>({sendInput:a=>{let b=o.current,c=p.current;b?.connected&&c&&b.emit("input",{sessionId:c,data:a})},focus:()=>{m.current?.focus()}}));let _=(0,r.useCallback)(()=>{navigator.clipboard.writeText(a).then(()=>{R(!0),setTimeout(()=>R(!1),2e3)})},[a]);async function aa(){let a=p.current;if(a)try{let b=await fetch((0,B.apiUrl)(`/api/terminal/sessions/${a}/claude`),{method:"POST"});if(!b.ok){let a=await b.json().catch(()=>null);throw Error(a?.error||`HTTPエラー: ${b.status}`)}}catch(a){fF.toaster.create({type:"error",title:"Claude を起動できません",description:a instanceof Error?a.message:String(a)})}}let ab="connecting"===F,ac="paused"===F||"exited"===F||"error"===F,ad="connected"===F,ae=N.filter(a=>"deleted"!==a.status),af=ae.filter(a=>"completed"===a.status).length,ag=ae.length,ah=a.length>8?`${a.slice(0,8)}…`:a;return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)("div",{className:`flex flex-col h-full min-h-0 ${e}`,children:[(0,q.jsxs)("div",{className:"flex items-center gap-2 px-2 py-1 border-b border-border flex-shrink-0 bg-card",children:[(0,q.jsx)("span",{className:"font-mono text-xs text-muted-foreground",title:a,children:ah}),(0,q.jsx)(Q.Button,{variant:"ghost",size:"icon-xs",onClick:_,className:"text-muted-foreground hover:text-foreground",title:"Copy tab ID",children:P?(0,q.jsx)(fB.Check,{className:"w-3 h-3 text-success"}):(0,q.jsx)(fz.Copy,{className:"w-3 h-3"})}),(0,q.jsxs)(Q.Button,{size:"xs",onClick:()=>void aa(),disabled:!ad,title:"Run Claude",children:[(0,q.jsx)(fA.Play,{className:"w-3 h-3"}),"Run Claude"]}),(0,q.jsxs)(Q.Button,{variant:"ghost",size:"xs",onClick:()=>u(!0),disabled:!ad,className:"text-muted-foreground hover:text-foreground",title:"Open editor input",children:[(0,q.jsx)(fC,{className:"w-3 h-3"}),"Open Editor"]}),ag>0&&(0,q.jsxs)("div",{className:"ml-auto flex items-center gap-1.5 shrink-0",title:N.find(a=>"in_progress"===a.status)?.content??"",children:[(0,q.jsx)(fE.Progress,{value:af,max:ag,className:"w-16 gap-0 [&_[data-slot=progress-track]]:h-[3px]"}),(0,q.jsxs)("span",{className:"text-[10px] text-muted-foreground tabular-nums",children:[af,"/",ag]})]})]}),(0,q.jsxs)("div",{className:"relative flex-1 min-h-0 overflow-hidden",children:[(0,q.jsx)("div",{ref:l,className:"w-full h-full",style:{padding:"4px"}}),ab&&(0,q.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-background",children:(0,q.jsxs)("div",{className:"flex items-center gap-2 text-muted-foreground text-xs",children:[(0,q.jsx)(I.Loader2,{className:"w-4 h-4 animate-spin"}),(0,q.jsx)("span",{children:"Connecting..."})]})}),ac&&(0,q.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-background/90",children:(0,q.jsxs)("div",{className:"text-center space-y-2",children:["error"===F&&(0,q.jsx)("p",{className:"text-xs text-destructive",children:H??"Connection failed"}),"exited"===F&&(0,q.jsx)("p",{className:"text-xs text-muted-foreground",children:"Session ended"}),"paused"===F&&(0,q.jsx)("p",{className:"text-xs text-muted-foreground",children:"Paused"}),(0,q.jsx)(Q.Button,{size:"xs",onClick:$,children:"Reconnect"})]})})]})]}),(0,q.jsx)(fD.MonacoEditorModal,{open:s,onOpenChange:a=>{a.open||u(!1)},onSubmit:a=>{m.current&&a&&m.current.paste(a),u(!1)},title:"Terminal Input",submitLabel:"Paste"})]})});var fH=a.i(12223);let fI=(0,r.forwardRef)(function({task:a,tabs:b,activeTabId:c,onTabChange:d,onTabCreate:e,onTabDelete:f,onTodosUpdated:g,onClaudeStatusChange:h},i){let[j,k]=(0,r.useState)(()=>new Set(c?[c]:[]));(0,r.useEffect)(()=>{c&&k(a=>{if(a.has(c))return a;let b=new Set(a);return b.add(c),b})},[c]);let[l,m]=(0,r.useState)(()=>new Map(b.map(a=>[a.tab_id,{terminal:"connecting",claude:a.status}])));(0,r.useEffect)(()=>{m(a=>{let c=!1,d=new Map(a);for(let a of b)d.has(a.tab_id)||(d.set(a.tab_id,{terminal:"connecting",claude:a.status}),c=!0);return c?d:a})},[b]);let n=(0,r.useRef)(new Map);(0,r.useEffect)(()=>{c&&n.current.get(c)?.focus()},[c]);let o=(0,r.useCallback)((a,b,c)=>{m(d=>{let e=new Map(d);return e.set(a,{terminal:b,claude:c}),e}),h?.(a,c)},[h]);(0,r.useImperativeHandle)(i,()=>({sendInput:(a,b)=>{let c=n.current.get(a);c?.sendInput(b)}}));let p=(0,r.useCallback)(a=>{k(b=>{if(b.has(a))return b;let c=new Set(b);return c.add(a),c}),d(a)},[d]),s=(0,r.useCallback)(async a=>{let b=await e(a);b&&k(a=>{let c=new Set(a);return c.add(b),c})},[e]),u=(0,r.useCallback)(()=>s("terminal"),[s]),v=(0,r.useCallback)(()=>s("claude"),[s]),w=(0,r.useCallback)(()=>s("local"),[s]),{settings:x}=(0,fH.useOllamaSettings)(),{settings:y}=(0,fH.useLmStudioSettings)(),{settings:A}=(0,fH.useLocalLlmSettings)(),B=x?.enabled||y?.enabled?{provider:A?.active?.provider??null,model:A?.active?.model??""}:void 0,C=(0,r.useCallback)(a=>{c&&n.current.get(c)?.sendInput(a)},[c]),D=(0,r.useCallback)(a=>{k(b=>{let c=new Set(b);return c.delete(a),c}),m(b=>{let c=new Map(b);return c.delete(a),c}),n.current.delete(a),f(a)},[f]);return(0,q.jsxs)("div",{className:"flex flex-col flex-1 min-h-0",children:[(0,q.jsx)("div",{className:"px-4 pt-4 flex-shrink-0",children:(0,q.jsx)(U,{tabs:b,activeTabId:c,onTabChange:p,onTabCreateTerminal:u,onTabCreateClaude:v,localLlmOption:B,onTabCreateLocalLlm:w,onTabDelete:D,tabStatusMap:l,onVoiceInputTranscribed:b.length>0?C:void 0})}),(0,q.jsxs)("div",{className:"flex-1 min-h-0 relative",children:[b.map(b=>{let d=j.has(b.tab_id),e=b.tab_id===c;return d?(0,q.jsx)("div",{className:"absolute inset-0 flex flex-col px-4 pb-4 pt-2",style:{visibility:e?"visible":"hidden",pointerEvents:e?"auto":"none"},children:(0,q.jsx)(fG,{ref:a=>{a?n.current.set(b.tab_id,a):n.current.delete(b.tab_id)},tabId:b.tab_id,isActive:e,cwd:a.worktreePath,launchClaude:"terminal"!==b.mode,className:"h-full",initialTodos:b.todos,initialClaudeStatus:b.status,onTodosUpdated:g,onStatusChange:o})},b.tab_id):null}),0===b.length&&(0,q.jsxs)("div",{className:"h-full flex flex-col items-center justify-center gap-4 px-4",children:[(0,q.jsx)("p",{className:"text-sm text-muted-foreground",children:"起動するタブを選んでください"}),(0,q.jsxs)("div",{className:"flex flex-wrap items-center justify-center gap-2",children:[(0,q.jsxs)(Q.Button,{onClick:v,children:[(0,q.jsx)(S.ClaudeIcon,{className:"w-4 h-4"}),"Claude Code"]}),B&&(0,q.jsx)("span",{title:B.model?`Claude Code (ローカルLLM: ${B.model})`:"ローカルLLMのモデルが未設定です(Settings で設定)",children:(0,q.jsxs)(Q.Button,{variant:"outline",onClick:()=>void w(),disabled:!B.model,children:[(0,q.jsx)(S.LocalLlmTabIcon,{provider:B.provider,className:"w-4 h-4"}),"Claude Code (ローカルLLM)"]})}),(0,q.jsxs)(Q.Button,{variant:"outline",onClick:u,children:[(0,q.jsx)(z,{className:"w-4 h-4"}),"Terminal"]})]})]}),b.length>0&&!c&&(0,q.jsx)("div",{className:"h-full flex items-center justify-center text-muted-foreground text-sm",children:"Select a tab to view terminal"})]})]})});a.s([],52628),a.i(52628);var fJ=a.i(21376);let fK=r.createContext(void 0);function fL(a){let b=r.useContext(fK);if(void 0===b&&!a)throw Error((0,fJ.default)(33));return b}let fM=r.createContext(void 0);function fN(a){let b=r.useContext(fM);if(void 0===b&&!a)throw Error((0,fJ.default)(36));return b}var fO=a.i(2840),fP=a.i(4987);let fQ=r.forwardRef(function(a,b){let{className:c,render:d,...e}=a,{store:f}=fN(),{arrowRef:g,side:h,align:i,arrowUncentered:j,arrowStyles:k}=fL(),l=f.useState("open");return(0,fO.useRenderElement)("div",a,{ref:[g,b],stateAttributesMapping:fP.popupStateMapping,state:{open:l,side:h,align:i,uncentered:j},props:{style:k,"aria-hidden":!0,...e}})});var fR=a.i(58418);let fS=r.createContext(void 0);function fT(a=!0){let b=r.useContext(fS);if(void 0===b&&!a)throw Error((0,fJ.default)(25));return b}var fU=a.i(74348);let fV={...fP.popupStateMapping,...fR.transitionStatusMapping},fW=r.forwardRef(function(a,b){let{className:c,render:d,...e}=a,{store:f}=fN(),g=f.useState("open"),h=f.useState("mounted"),i=f.useState("transitionStatus"),j=f.useState("lastOpenChangeReason"),k=fT();return(0,fO.useRenderElement)("div",a,{ref:k?.backdropRef?[b,k.backdropRef]:b,state:{open:g,transitionStatus:i},stateAttributesMapping:fV,props:[{role:"presentation",hidden:!h,style:{pointerEvents:j===fU.REASONS.triggerHover?"none":void 0,userSelect:"none",WebkitUserSelect:"none"}},e]})});var fX=a.i(71812),fY=a.i(52034);let fZ=r.createContext(void 0);var f$=a.i(71689),f_=a.i(45819),f0=a.i(84991),f1=a.i(25238);function f2(a){let{closeOnClick:b,highlighted:c,id:d,nodeId:e,store:f,typingRef:g,itemRef:h,itemMetadata:i}=a,{events:j}=f.useState("floatingTreeRoot"),k=fT(!0),l=void 0!==k;return r.useMemo(()=>({id:d,role:"menuitem",tabIndex:c?0:-1,onKeyDown(a){" "===a.key&&g?.current&&a.preventDefault()},onMouseMove(a){e&&j.emit("itemhover",{nodeId:e,target:a.currentTarget})},onClick(a){b&&j.emit("close",{domEvent:a,reason:fU.REASONS.itemPress})},onMouseUp(a){if(k){let b=k.initialCursorPointRef.current;if(k.initialCursorPointRef.current=null,l&&b&&1>=Math.abs(a.clientX-b.x)&&1>=Math.abs(a.clientY-b.y)||l&&!f1.isMac&&2===a.button)return}h.current&&f.context.allowMouseUpTriggerRef.current&&(!l||2===a.button)&&(!i||"regular-item"===i.type)&&h.current.click()}}),[b,c,d,j,e,f,g,h,k,l,i])}let f3={type:"regular-item"};function f4(a){let{closeOnClick:b,disabled:c=!1,highlighted:d,id:e,store:f,typingRef:g=f.context.typingRef,nativeButton:h,itemMetadata:i,nodeId:j}=a,k=r.useRef(null),{getButtonProps:l,buttonRef:m}=(0,f_.useButton)({disabled:c,focusableWhenDisabled:!0,native:h,composite:!0}),n=f2({closeOnClick:b,highlighted:d,id:e,nodeId:j,store:f,typingRef:g,itemRef:k,itemMetadata:i}),o=r.useCallback(a=>(0,f0.mergeProps)(n,{onMouseEnter(){"submenu-trigger"===i.type&&i.setActive()}},a,l),[n,l,i]),p=(0,f$.useMergedRefs)(k,m);return r.useMemo(()=>({getItemProps:o,itemRef:p}),[o,p])}var f5=a.i(17585);let f6=r.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},elementsRef:{current:[]},nextIndexRef:{current:0}}),f7=((n={})[n.None=0]="None",n[n.GuessFromOrder=1]="GuessFromOrder",n);function f8(a={}){let{label:b,metadata:c,textRef:d,indexGuessBehavior:e,index:f}=a,{register:g,unregister:h,subscribeMapChange:i,elementsRef:j,labelsRef:k,nextIndexRef:l}=r.useContext(f6),m=r.useRef(-1),[n,o]=r.useState(f??(e===f7.GuessFromOrder?()=>{if(-1===m.current){let a=l.current;l.current+=1,m.current=a}return m.current}:-1)),p=r.useRef(null),q=r.useCallback(a=>{if(p.current=a,-1!==n&&null!==a&&(j.current[n]=a,k)){let c=void 0!==b;k.current[n]=c?b:d?.current?.textContent??a.textContent}},[n,j,k,b,d]);return(0,f5.useIsoLayoutEffect)(()=>{if(null!=f)return;let a=p.current;if(a)return g(a,c),()=>{h(a)}},[f,g,h,c]),(0,f5.useIsoLayoutEffect)(()=>{if(null==f)return i(a=>{let b=p.current?a.get(p.current)?.index:null;null!=b&&o(b)})},[f,i,o]),r.useMemo(()=>({ref:q,index:n}),[n,q])}var f9=a.i(98134);let ga=((o={}).checked="data-checked",o.unchecked="data-unchecked",o.disabled="data-disabled",o.highlighted="data-highlighted",o),gb={checked:a=>a?{[ga.checked]:""}:{[ga.unchecked]:""},...fR.transitionStatusMapping};var gc=a.i(62255);let gd=r.forwardRef(function(a,b){let{render:c,className:d,id:e,label:f,nativeButton:g=!1,disabled:h=!1,closeOnClick:i=!1,checked:j,defaultChecked:k,onCheckedChange:l,...m}=a,n=f8({label:f}),o=fL(!0),p=(0,f9.useBaseUiId)(e),{store:s}=fN(),u=s.useState("isActive",n.index),v=s.useState("itemProps"),[w,x]=(0,fY.useControlled)({controlled:j,default:k??!1,name:"MenuCheckboxItem",state:"checked"}),{getItemProps:y,itemRef:z}=f4({closeOnClick:i,disabled:h,highlighted:u,id:p,store:s,nativeButton:g,nodeId:o?.nodeId,itemMetadata:f3}),A=r.useMemo(()=>({disabled:h,highlighted:u,checked:w}),[h,u,w]),B=(0,fX.useStableCallback)(a=>{let b={...(0,gc.createChangeEventDetails)(fU.REASONS.itemPress,a.nativeEvent),preventUnmountOnClose:()=>{}};l?.(!w,b),b.isCanceled||x(a=>!a)}),C=(0,fO.useRenderElement)("div",a,{state:A,stateAttributesMapping:gb,props:[v,{role:"menuitemcheckbox","aria-checked":w,onClick:B},m,y],ref:[z,b,n.ref]});return(0,q.jsx)(fZ.Provider,{value:A,children:C})});var ge=a.i(77717),gf=a.i(2471);let gg=r.forwardRef(function(a,b){let{render:c,className:d,keepMounted:e=!1,...f}=a,g=function(){let a=r.useContext(fZ);if(void 0===a)throw Error((0,fJ.default)(30));return a}(),h=r.useRef(null),{transitionStatus:i,setMounted:j}=(0,ge.useTransitionStatus)(g.checked);(0,gf.useOpenChangeComplete)({open:g.checked,ref:h,onComplete(){g.checked||j(!1)}});let k={checked:g.checked,disabled:g.disabled,highlighted:g.highlighted,transitionStatus:i};return(0,fO.useRenderElement)("span",a,{state:k,ref:[b,h],stateAttributesMapping:gb,props:{"aria-hidden":!0,...f},enabled:e||g.checked})}),gh=r.createContext(void 0),gi=r.forwardRef(function(a,b){let{render:c,className:d,...e}=a,[f,g]=r.useState(void 0),h=r.useMemo(()=>({setLabelId:g}),[g]),i=(0,fO.useRenderElement)("div",a,{ref:b,props:{role:"group","aria-labelledby":f,...e}});return(0,q.jsx)(gh.Provider,{value:h,children:i})}),gj=r.forwardRef(function(a,b){let{className:c,render:d,id:e,...f}=a,g=(0,f9.useBaseUiId)(e),{setLabelId:h}=function(){let a=r.useContext(gh);if(void 0===a)throw Error((0,fJ.default)(31));return a}();return(0,f5.useIsoLayoutEffect)(()=>(h(g),()=>{h(void 0)}),[h,g]),(0,fO.useRenderElement)("div",a,{ref:b,props:{id:g,role:"presentation",...f}})}),gk=r.forwardRef(function(a,b){let{render:c,className:d,id:e,label:f,nativeButton:g=!1,disabled:h=!1,closeOnClick:i=!0,...j}=a,k=f8({label:f}),l=fL(!0),m=(0,f9.useBaseUiId)(e),{store:n}=fN(),o=n.useState("isActive",k.index),p=n.useState("itemProps"),{getItemProps:q,itemRef:r}=f4({closeOnClick:i,disabled:h,highlighted:o,id:m,store:n,nativeButton:g,nodeId:l?.nodeId,itemMetadata:f3});return(0,fO.useRenderElement)("div",a,{state:{disabled:h,highlighted:o},props:[p,j,q],ref:[r,b,k.ref]})}),gl=r.forwardRef(function(a,b){let{render:c,className:d,id:e,label:f,closeOnClick:g=!1,...h}=a,i=r.useRef(null),j=f8({label:f}),k=fL(!0),l=k?.nodeId,m=(0,f9.useBaseUiId)(e),{store:n}=fN(),o=n.useState("isActive",j.index),p=n.useState("itemProps"),q=n.context.typingRef,{getButtonProps:s,buttonRef:u}=(0,f_.useButton)({native:!1,composite:!0}),v=f2({closeOnClick:g,highlighted:o,id:m,nodeId:l,store:n,typingRef:q,itemRef:i}),w=r.useMemo(()=>({highlighted:o}),[o]);return(0,fO.useRenderElement)("a",a,{state:w,props:[p,h,function(a){return(0,f0.mergeProps)(v,a,s)}],ref:[i,u,b,j.ref]})});var gm=a.i(15815),gn=a.i(55061),go=a.i(80401),gp=a.i(32049),gq=a.i(45037);let gr={...fP.popupStateMapping,...fR.transitionStatusMapping},gs=r.forwardRef(function(a,b){let{render:c,className:d,finalFocus:e,...f}=a,{store:g}=fN(),{side:h,align:i}=fL(),j=null!=(0,go.useToolbarRootContext)(!0),k=g.useState("open"),l=g.useState("transitionStatus"),m=g.useState("popupProps"),n=g.useState("mounted"),o=g.useState("instantType"),p=g.useState("activeTriggerElement"),s=g.useState("parent"),u=g.useState("lastOpenChangeReason"),v=g.useState("rootId"),w=g.useState("floatingRootContext"),x=g.useState("floatingTreeRoot"),y=g.useState("closeDelay"),z=g.useState("activeTriggerElement"),A="context-menu"===s.type;(0,gf.useOpenChangeComplete)({open:k,ref:g.context.popupRef,onComplete(){k&&g.context.onOpenChangeComplete?.(!0)}}),r.useEffect(()=>{function a(a){g.setOpen(!1,(0,gc.createChangeEventDetails)(a.reason,a.domEvent))}return x.events.on("close",a),()=>{x.events.off("close",a)}},[x.events,g]);let B=g.useState("hoverEnabled"),C=g.useState("disabled");(0,gn.useHoverFloatingInteraction)(w,{enabled:B&&!C&&!A&&"menubar"!==s.type,closeDelay:y});let D={transitionStatus:l,side:h,align:i,open:k,nested:"menu"===s.type,instant:o},E=r.useCallback(a=>{g.set("popupElement",a)},[g]),F=(0,fO.useRenderElement)("div",a,{state:D,ref:[b,g.context.popupRef,E],stateAttributesMapping:gr,props:[m,{onKeyDown(a){j&&gp.COMPOSITE_KEYS.has(a.key)&&a.stopPropagation()}},(0,gq.getDisabledMountTransitionStyles)(l),f,{"data-rootownerid":v}]}),G=void 0===s.type||A;return(p||"menubar"===s.type&&u!==fU.REASONS.outsidePress)&&(G=!0),(0,q.jsx)(gm.FloatingFocusManager,{context:w,modal:A,disabled:!n,returnFocus:void 0===e?G:e,initialFocus:"menu"!==s.type,restoreFocus:!0,externalTree:"menubar"!==s.type?x:void 0,previousFocusableElement:z,nextFocusableElement:void 0===s.type?g.context.triggerFocusTargetRef:void 0,beforeContentFocusGuardRef:void 0===s.type?g.context.beforeContentFocusGuardRef:void 0,children:F})});var gt=a.i(87263);let gu=r.createContext(void 0),gv=r.forwardRef(function(a,b){let{keepMounted:c=!1,...d}=a,{store:e}=fN();return e.useState("mounted")||c?(0,q.jsx)(gu.Provider,{value:c,children:(0,q.jsx)(gt.FloatingPortal,{ref:b,...d})}):null});var gw=a.i(83065),gx=a.i(76093),gy=a.i(84151),gz=a.i(93573),gA=a.i(95337);function gB(a){let{children:b,elementsRef:c,labelsRef:d,onMapChange:e}=a,f=(0,fX.useStableCallback)(e),g=r.useRef(0),h=(0,gA.useRefWithInit)(gD).current,i=(0,gA.useRefWithInit)(gC).current,[j,k]=r.useState(0),l=r.useRef(j),m=(0,fX.useStableCallback)((a,b)=>{i.set(a,b??null),l.current+=1,k(l.current)}),n=(0,fX.useStableCallback)(a=>{i.delete(a),l.current+=1,k(l.current)}),o=r.useMemo(()=>{let a=new Map;return Array.from(i.keys()).filter(a=>a.isConnected).sort(gE).forEach((b,c)=>{let d=i.get(b)??{};a.set(b,{...d,index:c})}),a},[i,j]);(0,f5.useIsoLayoutEffect)(()=>{if("function"!=typeof MutationObserver||0===o.size)return;let a=new MutationObserver(a=>{let b=new Set,c=a=>b.has(a)?b.delete(a):b.add(a);a.forEach(a=>{a.removedNodes.forEach(c),a.addedNodes.forEach(c)}),0===b.size&&(l.current+=1,k(l.current))});return o.forEach((b,c)=>{c.parentElement&&a.observe(c.parentElement,{childList:!0})}),()=>{a.disconnect()}},[o]),(0,f5.useIsoLayoutEffect)(()=>{l.current===j&&(c.current.length!==o.size&&(c.current.length=o.size),d&&d.current.length!==o.size&&(d.current.length=o.size),g.current=o.size),f(o)},[f,o,c,d,j]),(0,f5.useIsoLayoutEffect)(()=>()=>{c.current=[]},[c]),(0,f5.useIsoLayoutEffect)(()=>()=>{d&&(d.current=[])},[d]);let p=(0,fX.useStableCallback)(a=>(h.add(a),()=>{h.delete(a)}));(0,f5.useIsoLayoutEffect)(()=>{h.forEach(a=>a(o))},[h,o]);let s=r.useMemo(()=>({register:m,unregister:n,subscribeMapChange:p,elementsRef:c,labelsRef:d,nextIndexRef:g}),[m,n,p,c,d,g]);return(0,q.jsx)(f6.Provider,{value:s,children:b})}function gC(){return new Map}function gD(){return new Set}function gE(a,b){let c=a.compareDocumentPosition(b);return c&Node.DOCUMENT_POSITION_FOLLOWING||c&Node.DOCUMENT_POSITION_CONTAINED_BY?-1:c&Node.DOCUMENT_POSITION_PRECEDING||c&Node.DOCUMENT_POSITION_CONTAINS?1:0}var gF=a.i(32654),gG=a.i(19382),gH=a.i(84313),gI=a.i(14612);let gJ=r.forwardRef(function(a,b){let{anchor:c,positionMethod:d="absolute",className:e,render:f,side:g,align:h,sideOffset:i=0,alignOffset:j=0,collisionBoundary:k="clipping-ancestors",collisionPadding:l=5,arrowPadding:m=5,sticky:n=!1,disableAnchorTracking:o=!1,collisionAvoidance:p=gG.DROPDOWN_COLLISION_AVOIDANCE,...s}=a,{store:u}=fN(),v=function(){let a=r.useContext(gu);if(void 0===a)throw Error((0,fJ.default)(32));return a}(),w=fT(!0),x=u.useState("parent"),y=u.useState("floatingRootContext"),z=u.useState("floatingTreeRoot"),A=u.useState("mounted"),B=u.useState("open"),C=u.useState("modal"),D=u.useState("activeTriggerElement"),E=u.useState("transitionStatus"),F=u.useState("positionerElement"),G=u.useState("instantType"),H=u.useState("hasViewport"),I=u.useState("lastOpenChangeReason"),J=u.useState("floatingNodeId"),K=u.useState("floatingParentNodeId"),L=y.useState("domReferenceElement"),M=r.useRef(null),N=(0,gI.useAnimationsFinished)(F,!1,!1),O=c,P=i,Q=j,R=h,S=p;"context-menu"===x.type&&(O=c??x.context?.anchor,R=R??"start",g||"center"===R||(Q=a.alignOffset??2,P=a.sideOffset??-5));let T=g,U=R;"menu"===x.type?(T=T??"inline-end",U=U??"start",S=a.collisionAvoidance??gG.POPUP_COLLISION_AVOIDANCE):"menubar"===x.type&&(T=T??"bottom",U=U??"start");let V="context-menu"===x.type,W=(0,gz.useAnchorPositioning)({anchor:O,floatingRootContext:y,positionMethod:w?"fixed":d,mounted:A,side:T,sideOffset:P,align:U,alignOffset:Q,arrowPadding:V?0:m,collisionBoundary:k,collisionPadding:l,sticky:n,nodeId:J,keepMounted:v,disableAnchorTracking:o,collisionAvoidance:S,shiftCrossAxis:V&&!("side"in S&&"flip"===S.side),externalTree:z,adaptiveOrigin:H?gH.adaptiveOrigin:void 0}),X=r.useMemo(()=>{let a={};return B||(a.pointerEvents="none"),{role:"presentation",hidden:!A,style:{...W.positionerStyles,...a}}},[B,A,W.positionerStyles]);r.useEffect(()=>{function a(a){a.open&&(a.parentNodeId===J&&u.set("hoverEnabled",!1),a.nodeId!==J&&a.parentNodeId===u.select("floatingParentNodeId")&&u.setOpen(!1,(0,gc.createChangeEventDetails)(fU.REASONS.siblingOpen)))}return z.events.on("menuopenchange",a),()=>{z.events.off("menuopenchange",a)}},[u,z.events,J]),r.useEffect(()=>{if(null!=u.select("floatingParentNodeId"))return z.events.on("menuopenchange",a),()=>{z.events.off("menuopenchange",a)};function a(a){if(a.open||a.nodeId!==u.select("floatingParentNodeId"))return;let b=a.reason??fU.REASONS.siblingOpen;u.setOpen(!1,(0,gc.createChangeEventDetails)(b))}},[z.events,u]);let Y=(0,gx.useTimeout)();r.useEffect(()=>{B||Y.clear()},[B,Y]),r.useEffect(()=>{function a(a){if(B&&a.nodeId===u.select("floatingParentNodeId"))if(a.target&&D&&D!==a.target){let a=u.select("closeDelay");a>0?Y.isStarted()||Y.start(a,()=>{u.setOpen(!1,(0,gc.createChangeEventDetails)(fU.REASONS.siblingOpen))}):u.setOpen(!1,(0,gc.createChangeEventDetails)(fU.REASONS.siblingOpen))}else Y.clear()}return z.events.on("itemhover",a),()=>{z.events.off("itemhover",a)}},[z.events,B,D,u,Y]),r.useEffect(()=>{let a={open:B,nodeId:J,parentNodeId:K,reason:u.select("lastOpenChangeReason")};z.events.emit("menuopenchange",a)},[z.events,B,u,J,K]),(0,f5.useIsoLayoutEffect)(()=>{let a=M.current;if(L&&(M.current=L),a&&L&&L!==a){u.set("instantType",void 0);let a=new AbortController;return N(()=>{u.set("instantType","trigger-change")},a.signal),()=>{a.abort()}}},[L,N,u]);let Z={open:B,side:W.side,align:W.align,anchorHidden:W.anchorHidden,nested:"menu"===x.type,instant:G},$=r.useMemo(()=>({side:W.side,align:W.align,arrowRef:W.arrowRef,arrowUncentered:W.arrowUncentered,arrowStyles:W.arrowStyles,nodeId:W.context.nodeId}),[W.side,W.align,W.arrowRef,W.arrowUncentered,W.arrowStyles,W.context.nodeId]),_=(0,fO.useRenderElement)("div",a,{state:Z,stateAttributesMapping:fP.popupStateMapping,ref:[b,u.useStateSetter("positionerElement")],props:[X,(0,gq.getDisabledMountTransitionStyles)(E),s]}),aa=A&&"menu"!==x.type&&("menubar"!==x.type&&C&&I!==fU.REASONS.triggerHover||"menubar"===x.type&&x.context.modal),ab=null;return"menubar"===x.type?ab=x.context.contentElement:void 0===x.type&&(ab=D),(0,q.jsxs)(fK.Provider,{value:$,children:[aa&&(0,q.jsx)(gF.InternalBackdrop,{ref:"context-menu"===x.type||"nested-context-menu"===x.type?x.context.internalBackdropRef:null,inert:(0,gw.inertValue)(!B),cutout:ab}),(0,q.jsx)(gy.FloatingNode,{id:J,children:(0,q.jsx)(gB,{elementsRef:u.context.itemDomElements,labelsRef:u.context.itemLabels,children:_})})]})}),gK=r.createContext(void 0),gL=r.memo(r.forwardRef(function(a,b){let{render:c,className:d,value:e,defaultValue:f,onValueChange:g,disabled:h=!1,...i}=a,[j,k]=(0,fY.useControlled)({controlled:e,default:f,name:"MenuRadioGroup"}),l=(0,fX.useStableCallback)(g),m=(0,fX.useStableCallback)((a,b)=>{l?.(a,b),b.isCanceled||k(a)}),n=(0,fO.useRenderElement)("div",a,{state:{disabled:h},ref:b,props:{role:"group","aria-disabled":h||void 0,...i}}),o=r.useMemo(()=>({value:j,setValue:m,disabled:h}),[j,m,h]);return(0,q.jsx)(gK.Provider,{value:o,children:n})})),gM=r.createContext(void 0),gN=r.forwardRef(function(a,b){let{render:c,className:d,id:e,label:f,nativeButton:g=!1,disabled:h=!1,closeOnClick:i=!1,value:j,...k}=a,l=f8({label:f}),m=fL(!0),n=(0,f9.useBaseUiId)(e),{store:o}=fN(),p=o.useState("isActive",l.index),s=o.useState("itemProps"),{value:u,setValue:v,disabled:w}=function(){let a=r.useContext(gK);if(void 0===a)throw Error((0,fJ.default)(34));return a}(),x=w||h,y=u===j,{getItemProps:z,itemRef:A}=f4({closeOnClick:i,disabled:x,highlighted:p,id:n,store:o,nativeButton:g,nodeId:m?.nodeId,itemMetadata:f3}),B=r.useMemo(()=>({disabled:x,highlighted:p,checked:y}),[x,p,y]),C=(0,fX.useStableCallback)(a=>{v(j,{...(0,gc.createChangeEventDetails)(fU.REASONS.itemPress,a.nativeEvent),preventUnmountOnClose:()=>{}})}),D=(0,fO.useRenderElement)("div",a,{state:B,stateAttributesMapping:gb,props:[s,{role:"menuitemradio","aria-checked":y,onClick:C},k,z],ref:[A,b,l.ref]});return(0,q.jsx)(gM.Provider,{value:B,children:D})}),gO=r.forwardRef(function(a,b){let{render:c,className:d,keepMounted:e=!1,...f}=a,g=function(){let a=r.useContext(gM);if(void 0===a)throw Error((0,fJ.default)(35));return a}(),h=r.useRef(null),{transitionStatus:i,setMounted:j}=(0,ge.useTransitionStatus)(g.checked);(0,gf.useOpenChangeComplete)({open:g.checked,ref:h,onComplete(){g.checked||j(!1)}});let k={checked:g.checked,disabled:g.disabled,highlighted:g.highlighted,transitionStatus:i};return(0,fO.useRenderElement)("span",a,{state:k,stateAttributesMapping:gb,ref:[b,h],props:{"aria-hidden":!0,...f},enabled:e||g.checked})});var gP=a.i(21042),gQ=a.i(87377),gR=a.i(66173),gS=a.i(37388),gT=a.i(62279),gU=a.i(60349),gV=a.i(25158),gW=a.i(26476),gX=a.i(35850),gY=a.i(632),gZ=a.i(6239),g$=a.i(50499),g_=a.i(99570),g0=a.i(85766),g1=a.i(38794);function g2(a,b,c){switch(a){case"vertical":return b;case"horizontal":return c;default:return b||c}}function g3(a,b){return g2(b,a===g1.ARROW_UP||a===g1.ARROW_DOWN,a===g1.ARROW_LEFT||a===g1.ARROW_RIGHT)}function g4(a,b,c){return g2(b,a===g1.ARROW_DOWN,c?a===g1.ARROW_LEFT:a===g1.ARROW_RIGHT)||"Enter"===a||" "===a||""===a}var g5=a.i(59750),g6=a.i(88074);let g7=r.createContext(null);function g8(a){let b=r.useContext(g7);if(null===b&&!a)throw Error((0,fJ.default)(5));return b}var g9=a.i(25173),ha=a.i(8273),hb=a.i(458),hc=a.i(43216),hd=a.i(46790),he=a.i(78462),hf=a.i(21017);let hg={...he.popupStoreSelectors,disabled:(0,hb.createSelector)(a=>"menubar"===a.parent.type&&a.parent.context.disabled||a.disabled),modal:(0,hb.createSelector)(a=>(void 0===a.parent.type||"context-menu"===a.parent.type)&&(a.modal??!0)),allowMouseEnter:(0,hb.createSelector)(a=>a.allowMouseEnter),stickIfOpen:(0,hb.createSelector)(a=>a.stickIfOpen),parent:(0,hb.createSelector)(a=>a.parent),rootId:(0,hb.createSelector)(a=>"menu"===a.parent.type?a.parent.store.select("rootId"):void 0!==a.parent.type?a.parent.context.rootId:a.rootId),activeIndex:(0,hb.createSelector)(a=>a.activeIndex),isActive:(0,hb.createSelector)((a,b)=>a.activeIndex===b),hoverEnabled:(0,hb.createSelector)(a=>a.hoverEnabled),instantType:(0,hb.createSelector)(a=>a.instantType),lastOpenChangeReason:(0,hb.createSelector)(a=>a.openChangeReason),floatingTreeRoot:(0,hb.createSelector)(a=>"menu"===a.parent.type?a.parent.store.select("floatingTreeRoot"):a.floatingTreeRoot),floatingNodeId:(0,hb.createSelector)(a=>a.floatingNodeId),floatingParentNodeId:(0,hb.createSelector)(a=>a.floatingParentNodeId),itemProps:(0,hb.createSelector)(a=>a.itemProps),closeDelay:(0,hb.createSelector)(a=>a.closeDelay),hasViewport:(0,hb.createSelector)(a=>a.hasViewport),keyboardEventRelay:(0,hb.createSelector)(a=>a.keyboardEventRelay?a.keyboardEventRelay:"menu"===a.parent.type?a.parent.store.select("keyboardEventRelay"):void 0)};class hh extends hc.ReactStore{constructor(a){super({...{...(0,he.createInitialPopupStoreState)(),disabled:!1,modal:!0,allowMouseEnter:!1,stickIfOpen:!0,parent:{type:void 0},rootId:void 0,activeIndex:null,hoverEnabled:!0,instantType:void 0,openChangeReason:null,floatingTreeRoot:new hd.FloatingTreeStore,floatingNodeId:void 0,floatingParentNodeId:null,itemProps:gS.EMPTY_OBJECT,keyboardEventRelay:void 0,closeDelay:0,hasViewport:!1},...a},{positionerRef:r.createRef(),popupRef:r.createRef(),typingRef:{current:!1},itemDomElements:{current:[]},itemLabels:{current:[]},allowMouseUpTriggerRef:{current:!1},triggerFocusTargetRef:r.createRef(),beforeContentFocusGuardRef:r.createRef(),onOpenChangeComplete:void 0,triggerElements:new hf.PopupTriggerMap},hg),this.unsubscribeParentListener=this.observe("parent",a=>{if(this.unsubscribeParentListener?.(),"menu"===a.type){let b=a.store.select("rootId"),c=a.store.select("floatingTreeRoot"),d=a.store.select("keyboardEventRelay");this.unsubscribeParentListener=a.store.subscribe(()=>{let e=a.store.select("rootId"),f=a.store.select("floatingTreeRoot"),g=a.store.select("keyboardEventRelay");(b!==e||c!==f||d!==g)&&(b=e,c=f,d=g,this.notifyAll())}),this.context.allowMouseUpTriggerRef=a.store.context.allowMouseUpTriggerRef;return}void 0!==a.type&&(this.context.allowMouseUpTriggerRef=a.context.allowMouseUpTriggerRef),this.unsubscribeParentListener=null})}setOpen(a,b){this.state.floatingRootContext.context.events.emit("setOpen",{open:a,eventDetails:b})}static useStore(a,b){let c=(0,gA.useRefWithInit)(()=>new hh(b)).current;return a??c}unsubscribeParentListener=null}var hi=a.i(86089);let hj=r.createContext(void 0);function hk(){return r.useContext(hj)}let hl=(0,gT.fastComponent)(function(a){let b,c,{children:d,open:e,onOpenChange:f,onOpenChangeComplete:g,defaultOpen:h=!1,disabled:i=!1,modal:j,loopFocus:k=!0,orientation:l="vertical",actionsRef:m,closeParentOnEsc:n=!1,handle:o,triggerId:p,defaultTriggerId:s=null,highlightItemOnHover:u=!0}=a,v=fT(!0),w=fN(!0),x=g8(!0),y=hk(),z=r.useMemo(()=>y&&w?{type:"menu",store:w.store}:x?{type:"menubar",context:x}:v&&!w?{type:"context-menu",context:v}:{type:void 0},[v,w,x,y]),A=hh.useStore(o?.store,{open:h,openProp:e,activeTriggerId:s,triggerIdProp:p,parent:z});(0,gQ.useOnFirstRender)(()=>{void 0===e&&!1===A.state.open&&!0===h&&A.update({open:!0,activeTriggerId:s})}),A.useControlledProp("openProp",e),A.useControlledProp("triggerIdProp",p),A.useContextCallback("onOpenChangeComplete",g);let B=A.useState("floatingTreeRoot"),C=(0,gy.useFloatingNodeId)(B),D=(0,gy.useFloatingParentNodeId)();(0,f5.useIsoLayoutEffect)(()=>{v&&!w?A.update({parent:{type:"context-menu",context:v},floatingNodeId:C,floatingParentNodeId:D}):w&&A.update({floatingNodeId:C,floatingParentNodeId:D})},[v,w,C,D,A]);let E=A.useState("open"),F=A.useState("activeTriggerElement"),G=A.useState("positionerElement"),H=A.useState("hoverEnabled"),I=A.useState("modal"),J=A.useState("disabled"),K=A.useState("lastOpenChangeReason"),L=A.useState("parent"),M=A.useState("activeIndex"),N=A.useState("payload"),O=A.useState("floatingParentNodeId"),P=r.useRef(null),Q=null!=O;A.useSyncedValues({disabled:i,modal:void 0===L.type?j:void 0,rootId:(0,gP.useId)()});let{openMethod:R,triggerProps:S}=(0,ha.useOpenInteractionType)(E);(0,hi.useImplicitActiveTrigger)(A);let{forceUnmount:T}=(0,hi.useOpenStateTransitions)(E,A,()=>{A.update({allowMouseEnter:!1,stickIfOpen:!0})}),U=r.useRef("context-menu"!==L.type),V=(0,gx.useTimeout)();r.useEffect(()=>{if(E||(P.current=null),"context-menu"===L.type){if(!E){V.clear(),U.current=!1;return}V.start(500,()=>{U.current=!0})}},[V,E,L.type]),(0,gR.useScrollLock)(E&&I&&K!==fU.REASONS.triggerHover&&"touch"!==R,G),(0,f5.useIsoLayoutEffect)(()=>{E||H||A.set("hoverEnabled",!0)},[E,H,A]);let W=r.useRef(!0),X=(0,gx.useTimeout)(),Y=(0,fX.useStableCallback)((a,c)=>{let d=c.reason;if(E===a&&c.trigger===F&&K===d||(c.preventUnmountOnClose=()=>{A.set("preventUnmountingOnClose",!0)},a||null!=c.trigger||(c.trigger=F??void 0),f?.(a,c),c.isCanceled))return;let e={open:a,nativeEvent:c.event,reason:c.reason,nested:Q};b?.emit("openchange",e);let g=c.event;if(!1===a&&g?.type==="click"&&"touch"===g.pointerType&&!W.current)return;if(!a&&null!==M){let a=A.context.itemDomElements.current[M];queueMicrotask(()=>{a?.setAttribute("tabindex","-1")})}a&&d===fU.REASONS.triggerFocus?(W.current=!1,X.start(300,()=>{W.current=!0})):(W.current=!0,X.clear());let h=(d===fU.REASONS.triggerPress||d===fU.REASONS.itemPress)&&0===g.detail&&g?.isTrusted,i=!a&&(d===fU.REASONS.escapeKey||null==d),j={open:a,openChangeReason:d};P.current=c.event??null;let k=c.trigger?.id??null;(k||a)&&(j.activeTriggerId=k,j.activeTriggerElement=c.trigger??null),A.update(j),"menubar"===L.type&&(d===fU.REASONS.triggerFocus||d===fU.REASONS.focusOut||d===fU.REASONS.triggerHover||d===fU.REASONS.listNavigation||d===fU.REASONS.siblingOpen)?A.set("instantType","group"):h||i?A.set("instantType",h?"click":"dismiss"):A.set("instantType",void 0)}),Z=r.useCallback(a=>{let b=(0,gc.createChangeEventDetails)(a);return b.preventUnmountOnClose=()=>{A.set("preventUnmountingOnClose",!0)},b},[A]),$=r.useCallback(()=>{A.setOpen(!1,Z(fU.REASONS.imperativeAction))},[A,Z]);r.useImperativeHandle(m,()=>({unmount:T,close:$}),[T,$]),"context-menu"===L.type&&(c=L.context),r.useImperativeHandle(c?.positionerRef,()=>G,[G]),r.useImperativeHandle(c?.actionsRef,()=>({setOpen:Y}),[Y]);let _=(0,g6.useSyncedFloatingRootContext)({popupStore:A,onOpenChange:Y});b=_.context.events,r.useEffect(()=>{let a=({open:a,eventDetails:b})=>Y(a,b);return b.on("setOpen",a),()=>{b?.off("setOpen",a)}},[b,Y]);let aa=(0,gU.useDismiss)(_,{enabled:!J,bubbles:{escapeKey:n&&"menu"===L.type},outsidePress:()=>"context-menu"!==L.type||P.current?.type==="contextmenu"||U.current,externalTree:Q?B:void 0}),ab=(0,g5.useRole)(_,{role:"menu"}),ac=(0,g9.useDirection)(),ad=r.useCallback(a=>{A.select("activeIndex")!==a&&A.set("activeIndex",a)},[A]),ae=function(a,b){let c="rootStore"in a?a.rootStore:a,d=c.useState("open"),e=c.useState("floatingElement"),f=c.useState("domReferenceElement"),g=c.context.dataRef,{listRef:h,activeIndex:i,onNavigate:j=()=>{},enabled:k=!0,selectedIndex:l=null,allowEscape:m=!1,loopFocus:n=!1,nested:o=!1,rtl:p=!1,virtual:q=!1,focusItemOnOpen:s="auto",focusItemOnHover:u=!0,openOnArrowKeyDown:v=!0,disabledIndices:w,orientation:x="vertical",parentOrientation:y,cols:z=1,id:A,resetOnPointerLeave:B=!0,externalTree:C}=b,D=(0,gZ.getFloatingFocusElement)(e),E=(0,gX.useValueAsRef)(D),F=(0,gy.useFloatingParentNodeId)(),G=(0,gy.useFloatingTree)(C);(0,f5.useIsoLayoutEffect)(()=>{g.current.orientation=x},[g,x]);let H=(0,gZ.isTypeableCombobox)(f),I=r.useRef(s),J=r.useRef(l??-1),K=r.useRef(null),L=r.useRef(!0),M=(0,fX.useStableCallback)(a=>{j(-1===J.current?null:J.current,a)}),N=r.useRef(M),O=r.useRef(!!e),P=r.useRef(d),Q=r.useRef(!1),R=r.useRef(!1),S=(0,gX.useValueAsRef)(w),T=(0,gX.useValueAsRef)(d),U=(0,gX.useValueAsRef)(l),V=(0,gX.useValueAsRef)(B),W=(0,fX.useStableCallback)(()=>{function a(a){q?G?.events.emit("virtualfocus",a):(0,g0.enqueueFocus)(a,{sync:Q.current,preventScroll:!0})}let b=h.current[J.current],c=R.current;b&&a(b),(Q.current?a=>a():requestAnimationFrame)(()=>{let d=h.current[J.current]||b;!d||(b||a(d),Y&&(c||!L.current)&&d.scrollIntoView?.({block:"nearest",inline:"nearest"}))})});(0,f5.useIsoLayoutEffect)(()=>{k&&(d&&e?(J.current=l??-1,I.current&&null!=l&&(R.current=!0,M())):O.current&&(J.current=-1,N.current()))},[k,d,e,l,M]),(0,f5.useIsoLayoutEffect)(()=>{if(k){if(!d){Q.current=!1;return}if(e)if(null==i){if(Q.current=!1,null!=U.current)return;if(O.current&&(J.current=-1,W()),(!P.current||!O.current)&&I.current&&(null!=K.current||!0===I.current&&null==K.current)){let a=0,b=()=>{null==h.current[0]?(a<2&&(a?requestAnimationFrame:queueMicrotask)(b),a+=1):(J.current=null==K.current||g4(K.current,x,p)||o?(0,g_.getMinListIndex)(h):(0,g_.getMaxListIndex)(h),K.current=null,M())};b()}}else(0,g_.isIndexOutOfListBounds)(h,i)||(J.current=i,W(),R.current=!1)}},[k,d,e,i,U,o,h,x,p,M,W,S]),(0,f5.useIsoLayoutEffect)(()=>{if(!k||e||!G||q||!O.current)return;let a=G.nodesRef.current,b=a.find(a=>a.id===F)?.context?.elements.floating,c=(0,gZ.activeElement)((0,gY.ownerDocument)(e)),d=a.some(a=>a.context&&(0,gZ.contains)(a.context.elements.floating,c));b&&!d&&L.current&&b.focus({preventScroll:!0})},[k,e,G,F,q]),(0,f5.useIsoLayoutEffect)(()=>{N.current=M,P.current=d,O.current=!!e}),(0,f5.useIsoLayoutEffect)(()=>{d||(K.current=null,I.current=s)},[d,s]);let X=null!=i,Y=r.useMemo(()=>{function a(a){if(!T.current)return;let b=h.current.indexOf(a.currentTarget);-1!==b&&J.current!==b&&(J.current=b,M(a))}return{onFocus(b){Q.current=!0,a(b)},onClick:({currentTarget:a})=>a.focus({preventScroll:!0}),onMouseMove(b){Q.current=!0,R.current=!1,u&&a(b)},onPointerLeave(a){if(!T.current||!L.current||"touch"===a.pointerType)return;Q.current=!0;let b=a.relatedTarget;if(!(!u||h.current.includes(b))&&V.current&&((0,g0.enqueueFocus)(null,{sync:!0}),J.current=-1,M(a),!q)){let a=E.current,b=(0,gZ.activeElement)((0,gY.ownerDocument)(a));a&&(0,gZ.contains)(a,b)&&a.focus({preventScroll:!0})}}}},[T,E,u,h,M,V,q]),Z=r.useCallback(()=>y??G?.nodesRef.current.find(a=>a.id===F)?.context?.dataRef?.current.orientation,[F,G,y]),$=(0,fX.useStableCallback)(a=>{var b;let e,g;if(L.current=!1,Q.current=!0,229===a.which||!T.current&&a.currentTarget===E.current)return;if(o&&(b=a.key,e=p?b===g1.ARROW_RIGHT:b===g1.ARROW_LEFT,g=b===g1.ARROW_UP,"both"===x||"horizontal"===x&&z&&z>1?"Escape"===b:g2(x,e,g))){g3(a.key,Z())||(0,g$.stopEvent)(a),c.setOpen(!1,(0,gc.createChangeEventDetails)(fU.REASONS.listNavigation,a.nativeEvent)),(0,gW.isHTMLElement)(f)&&(q?G?.events.emit("virtualfocus",f):f.focus());return}let i=J.current,j=(0,g_.getMinListIndex)(h,w),k=(0,g_.getMaxListIndex)(h,w);if(H||("Home"===a.key&&((0,g$.stopEvent)(a),J.current=j,M(a)),"End"===a.key&&((0,g$.stopEvent)(a),J.current=k,M(a))),z>1){let b=Array.from({length:h.current.length},()=>({width:1,height:1})),c=(0,g_.createGridCellMap)(b,z,!1),d=c.findIndex(a=>null!=a&&!(0,g_.isListIndexDisabled)(h,a,w)),e=c.reduce((a,b,c)=>null==b||(0,g_.isListIndexDisabled)(h,b,w)?a:c,-1),f=c[(0,g_.getGridNavigatedIndex)({current:c.map(a=>null!=a?h.current[a]:null)},{event:a,orientation:x,loopFocus:n,rtl:p,cols:z,disabledIndices:(0,g_.getGridCellIndices)([...("function"!=typeof w?w:null)||h.current.map((a,b)=>(0,g_.isListIndexDisabled)(h,b,w)?b:void 0),void 0],c),minIndex:d,maxIndex:e,prevIndex:(0,g_.getGridCellIndexOfCorner)(J.current>k?j:J.current,b,c,z,a.key===g1.ARROW_DOWN?"bl":a.key===(p?g1.ARROW_LEFT:g1.ARROW_RIGHT)?"tr":"tl"),stopEvent:!0})];if(null!=f&&(J.current=f,M(a)),"both"===x)return}if(g3(a.key,x)){if((0,g$.stopEvent)(a),d&&!q&&(0,gZ.activeElement)(a.currentTarget.ownerDocument)===a.currentTarget){J.current=g4(a.key,x,p)?j:k,M(a);return}g4(a.key,x,p)?n?i>=k?m&&i!==h.current.length?J.current=-1:(Q.current=!1,J.current=j):J.current=(0,g_.findNonDisabledListIndex)(h,{startingIndex:i,disabledIndices:w}):J.current=Math.min(k,(0,g_.findNonDisabledListIndex)(h,{startingIndex:i,disabledIndices:w})):n?i<=j?m&&-1!==i?J.current=h.current.length:(Q.current=!1,J.current=k):J.current=(0,g_.findNonDisabledListIndex)(h,{startingIndex:i,decrement:!0,disabledIndices:w}):J.current=Math.max(j,(0,g_.findNonDisabledListIndex)(h,{startingIndex:i,decrement:!0,disabledIndices:w})),(0,g_.isIndexOutOfListBounds)(h,J.current)&&(J.current=-1),M(a)}}),_=r.useMemo(()=>q&&d&&X&&{"aria-activedescendant":`${A}-${i}`},[q,d,X,A,i]),aa=r.useMemo(()=>({"aria-orientation":"both"===x?void 0:x,...!H?_:{},onKeyDown(a){if("Tab"===a.key&&a.shiftKey&&d&&!q){let b=(0,gZ.getTarget)(a.nativeEvent);if(b&&!(0,gZ.contains)(E.current,b))return;(0,g$.stopEvent)(a),c.setOpen(!1,(0,gc.createChangeEventDetails)(fU.REASONS.focusOut,a.nativeEvent)),(0,gW.isHTMLElement)(f)&&f.focus();return}$(a)},onPointerMove(){L.current=!0}}),[_,$,E,x,H,c,d,q,f]),ab=r.useMemo(()=>{function a(a){"auto"===s&&(0,g$.isVirtualClick)(a.nativeEvent)&&(I.current=!q)}function b(a){I.current=s,"auto"===s&&(0,g$.isVirtualPointerEvent)(a.nativeEvent)&&(I.current=!0)}return{onKeyDown(a){var b,d;let e=c.select("open");L.current=!1;let f=a.key.startsWith("Arrow"),g=(b=a.key,d=Z(),g2(d,p?b===g1.ARROW_LEFT:b===g1.ARROW_RIGHT,b===g1.ARROW_DOWN)),i=g3(a.key,x),j=(o?g:i)||"Enter"===a.key||""===a.key.trim();if(q&&e)return $(a);if(e||v||!f){if(j){let b=g3(a.key,Z());K.current=o&&b?null:a.key}if(o){g&&((0,g$.stopEvent)(a),e?(J.current=(0,g_.getMinListIndex)(h,S.current),M(a)):c.setOpen(!0,(0,gc.createChangeEventDetails)(fU.REASONS.listNavigation,a.nativeEvent,a.currentTarget)));return}i&&(null!=U.current&&(J.current=U.current),(0,g$.stopEvent)(a),!e&&v?c.setOpen(!0,(0,gc.createChangeEventDetails)(fU.REASONS.listNavigation,a.nativeEvent,a.currentTarget)):$(a),e&&M(a))}},onFocus(a){c.select("open")&&!q&&(J.current=-1,M(a))},onPointerDown:b,onPointerEnter:b,onMouseDown:a,onClick:a}},[$,S,s,h,o,M,c,v,x,Z,p,U,q]),ac=r.useMemo(()=>({..._,...ab}),[_,ab]);return r.useMemo(()=>k?{reference:ac,floating:aa,item:Y,trigger:ab}:{},[k,ac,aa,ab,Y])}(_,{enabled:!J,listRef:A.context.itemDomElements,activeIndex:M,nested:void 0!==L.type,loopFocus:k,orientation:l,parentOrientation:"menubar"===L.type?L.context.orientation:void 0,rtl:"rtl"===ac,disabledIndices:gS.EMPTY_ARRAY,onNavigate:ad,openOnArrowKeyDown:"context-menu"!==L.type,externalTree:Q?B:void 0,focusItemOnHover:u}),af=r.useCallback(a=>{A.context.typingRef.current=a},[A]),ag=function(a,b){let c="rootStore"in a?a.rootStore:a,d=c.context.dataRef,e=c.useState("open"),{listRef:f,elementsRef:g,activeIndex:h,onMatch:i,onTypingChange:j,enabled:k=!0,resetMs:l=750,selectedIndex:m=null}=b,n=(0,gx.useTimeout)(),o=r.useRef(""),p=r.useRef(m??h??-1),q=r.useRef(null);(0,f5.useIsoLayoutEffect)(()=>{(e||null===m)&&(n.clear(),q.current=null,""!==o.current&&(o.current=""))},[e,m,n]),(0,f5.useIsoLayoutEffect)(()=>{e&&""===o.current&&(p.current=m??h??-1)},[e,m,h]);let s=(0,fX.useStableCallback)(a=>{a?d.current.typing||(d.current.typing=a,j?.(a)):d.current.typing&&(d.current.typing=a,j?.(a))}),u=(0,fX.useStableCallback)(a=>{function b(a,c,d=0){if(0===a.length)return -1;let e=(d%a.length+a.length)%a.length,f=c.toLocaleLowerCase();for(let b=0;b<a.length;b+=1){let c=(e+b)%a.length,d=a[c];if(d?.toLocaleLowerCase().startsWith(f)&&function(a){let b=g?.current[a];return!b||(0,g_.isElementVisible)(b)}(c))return c}return -1}let c=f.current;if(o.current.length>0&&" "===a.key&&((0,g$.stopEvent)(a),s(!0)),o.current.length>0&&" "!==o.current[0]&&-1===b(c,o.current)&&" "!==a.key&&s(!1),null==c||1!==a.key.length||a.ctrlKey||a.metaKey||a.altKey)return;e&&" "!==a.key&&((0,g$.stopEvent)(a),s(!0));let d=""===o.current;d&&(p.current=m??h??-1),c.every(a=>!a||a[0]?.toLocaleLowerCase()!==a[1]?.toLocaleLowerCase())&&o.current===a.key&&(o.current="",p.current=q.current),o.current+=a.key,n.start(l,()=>{o.current="",p.current=q.current,s(!1)});let j=d?m??h??-1:p.current,k=b(c,o.current,(j??0)+1);-1!==k?(i?.(k),q.current=k):" "!==a.key&&(o.current="",s(!1))}),v=(0,fX.useStableCallback)(a=>{let b=a.relatedTarget,d=c.select("domReferenceElement"),e=c.select("floatingElement"),f=(0,gZ.contains)(d,b),g=(0,gZ.contains)(e,b);f||g||(n.clear(),o.current="",p.current=q.current,s(!1))}),w=r.useMemo(()=>({onKeyDown:u,onBlur:v}),[u,v]),x=r.useMemo(()=>({onKeyDown:u,onBlur:v}),[u,v]);return r.useMemo(()=>k?{reference:w,floating:x}:{},[k,w,x])}(_,{listRef:A.context.itemLabels,elementsRef:A.context.itemDomElements,activeIndex:M,resetMs:gG.TYPEAHEAD_RESET_MS,onMatch:a=>{E&&a!==M&&A.set("activeIndex",a)},onTypingChange:af}),{getReferenceProps:ah,getFloatingProps:ai,getItemProps:aj,getTriggerProps:ak}=(0,gV.useInteractions)([aa,ab,ae,ag]),al=r.useMemo(()=>{let a=(0,f0.mergeProps)(ah(),{onMouseMove(){A.set("allowMouseEnter",!0)}},S);return delete a.role,a},[ah,A,S]),am=r.useMemo(()=>{let a=ak();if(!a)return a;let b=(0,f0.mergeProps)(a,S);return delete b.role,delete b["aria-controls"],b},[ak,S]),an=r.useMemo(()=>ai({onMouseMove(){A.set("allowMouseEnter",!0),"menu"===L.type&&A.set("hoverEnabled",!1)},onClick(){A.select("hoverEnabled")&&A.set("hoverEnabled",!1)},onKeyDown(a){let b=A.select("keyboardEventRelay");b&&!a.isPropagationStopped()&&b(a)}}),[ai,L.type,A]),ao=r.useMemo(()=>aj(),[aj]);A.useSyncedValues({floatingRootContext:_,activeTriggerProps:al,inactiveTriggerProps:am,popupProps:an,itemProps:ao});let ap=r.useMemo(()=>({store:A,parent:z}),[A,z]),aq=(0,q.jsx)(fM.Provider,{value:ap,children:"function"==typeof d?d({payload:N}):d});return void 0===L.type||"context-menu"===L.type?(0,q.jsx)(gy.FloatingTree,{externalTree:B,children:aq}):aq});var hm=a.i(35112),hn=a.i(7813),ho=a.i(58240),hp=a.i(9236);let hq=f1.isMac&&f1.isSafari;var hr=a.i(24629),hs=a.i(81751),ht=a.i(29975);function hu(a){let{render:b,className:c,state:d=gS.EMPTY_OBJECT,props:e=gS.EMPTY_ARRAY,refs:f=gS.EMPTY_ARRAY,metadata:g,stateAttributesMapping:h,tag:i="div",...j}=a,{compositeProps:k,compositeRef:l}=function(a={}){let{highlightItemOnHover:b,highlightedIndex:c,onHighlightedIndexChange:d}=(0,ht.useCompositeRootContext)(),{ref:e,index:f}=f8(a),g=c===f,h=r.useRef(null),i=(0,f$.useMergedRefs)(e,h);return{compositeProps:r.useMemo(()=>({tabIndex:g?0:-1,onFocus(){d(f)},onMouseMove(){let a=h.current;if(!b||!a)return;let c=a.hasAttribute("disabled")||"true"===a.ariaDisabled;g||c||a.focus()}}),[g,d,f,b]),compositeRef:i,index:f}}({metadata:g});return(0,fO.useRenderElement)(i,a,{state:d,ref:[...f,l],props:[k,...e,j],stateAttributesMapping:h})}var hv=a.i(25839);let hw=(0,gT.fastComponentRef)(function(a,b){let c,d,e,{render:f,className:g,disabled:h=!1,nativeButton:i=!0,id:j,openOnHover:k,delay:l=100,closeDelay:m=0,handle:n,payload:o,...p}=a,s=fN(!0),u=n?.store??s?.store;if(!u)throw Error((0,fJ.default)(85));let v=(0,f9.useBaseUiId)(j),w=u.useState("isTriggerActive",v),x=u.useState("floatingRootContext"),y=u.useState("isOpenedByTrigger",v),z=r.useRef(null),A=(c=fT(!0),d=fN(!0),e=g8(!0),r.useMemo(()=>e?{type:"menubar",context:e}:c&&!d?{type:"context-menu",context:c}:{type:void 0},[c,d,e])),B=(0,ht.useCompositeRootContext)(!0),C=(0,gy.useFloatingTree)(),D=r.useMemo(()=>C??new hd.FloatingTreeStore,[C]),E=(0,gy.useFloatingNodeId)(D),F=(0,gy.useFloatingParentNodeId)(),{registerTrigger:G,isMountedByThisTrigger:H}=(0,hi.useTriggerDataForwarding)(v,z,u,{payload:o,closeDelay:m,parent:A,floatingTreeRoot:D,floatingNodeId:E,floatingParentNodeId:F,keyboardEventRelay:B?.relayKeyboardEvent}),I="menubar"===A.type,J=u.useState("disabled"),K=h||J||I&&A.context.disabled,{getButtonProps:L,buttonRef:M}=(0,f_.useButton)({disabled:K,native:i});r.useEffect(()=>{y||void 0!==A.type||(u.context.allowMouseUpTriggerRef.current=!1)},[u,y,A.type]);let N=r.useRef(null),O=(0,gx.useTimeout)(),P=(0,fX.useStableCallback)(a=>{if(!N.current)return;O.clear(),u.context.allowMouseUpTriggerRef.current=!1;let b=a.target;if((0,gZ.contains)(N.current,b)||(0,gZ.contains)(u.select("positionerElement"),b)||b===N.current||null!=b&&function a(b){return(0,gW.isHTMLElement)(b)&&b.hasAttribute("data-rootownerid")?b.getAttribute("data-rootownerid")??void 0:(0,gW.isLastTraversableNode)(b)?void 0:a((0,gW.getParentNode)(b))}(b)===u.select("rootId"))return;let c=function(a){let b=a.getBoundingClientRect(),c=window.getComputedStyle(a,"::before"),d=window.getComputedStyle(a,"::after");if("none"===c.content&&"none"===d.content)return b;let e=parseFloat(c.width)||0,f=parseFloat(c.height)||0,g=parseFloat(d.width)||0,h=parseFloat(d.height)||0,i=Math.max(b.width,e,g),j=Math.max(b.height,f,h),k=i-b.width,l=j-b.height;return{left:b.left-k/2,right:b.right+k/2,top:b.top-l/2,bottom:b.bottom+l/2}}(N.current);a.clientX>=c.left-2&&a.clientX<=c.right+2&&a.clientY>=c.top-2&&a.clientY<=c.bottom+2||D.events.emit("close",{domEvent:a,reason:fU.REASONS.cancelOpen})});r.useEffect(()=>{y&&u.select("lastOpenChangeReason")===fU.REASONS.triggerHover&&(0,gY.ownerDocument)(N.current).addEventListener("mouseup",P,{once:!0})},[y,P,u]);let Q=I&&A.context.hasSubmenuOpen,R=k??Q,S=(0,hr.useHoverReferenceInteraction)(x,{enabled:R&&!K&&"context-menu"!==A.type&&(!I||Q&&!H),handleClose:(0,hn.safePolygon)({blockPointerEvents:!I}),mouseOnly:!0,move:!1,restMs:void 0===A.type?l:void 0,delay:{close:m},triggerElementRef:z,externalTree:D,isActiveTrigger:w}),T=function(a,b){let c=(0,gx.useTimeout)(),[d,e]=r.useState(!1);return(0,f5.useIsoLayoutEffect)(()=>{a&&"trigger-hover"===b?(e(!0),c.start(gG.PATIENT_CLICK_THRESHOLD,()=>{e(!1)})):a||(c.clear(),e(!1))},[a,b,c]),d}(y,u.select("lastOpenChangeReason")),U=(0,ho.useClick)(x,{enabled:!K&&"context-menu"!==A.type,event:y&&I?"click":"mousedown",toggle:!0,ignoreMouse:!1,stickIfOpen:void 0===A.type&&T}),V=function(a,b={}){let c="rootStore"in a?a.rootStore:a,{events:d,dataRef:e}=c.context,{enabled:f=!0,delay:g}=b,h=r.useRef(!1),i=r.useRef(null),j=(0,gx.useTimeout)(),k=r.useRef(!0);r.useEffect(()=>{let a=c.select("domReferenceElement");if(!f)return;let b=(0,gW.getWindow)(a);function d(){let a=c.select("domReferenceElement");!c.select("open")&&(0,gW.isHTMLElement)(a)&&a===(0,gZ.activeElement)((0,gY.ownerDocument)(a))&&(h.current=!0)}function e(){k.current=!0}function g(){k.current=!1}return b.addEventListener("blur",d),hq&&(b.addEventListener("keydown",e,!0),b.addEventListener("pointerdown",g,!0)),()=>{b.removeEventListener("blur",d),hq&&(b.removeEventListener("keydown",e,!0),b.removeEventListener("pointerdown",g,!0))}},[c,f]),r.useEffect(()=>{if(f)return d.on("openchange",a),()=>{d.off("openchange",a)};function a(a){if(a.reason===fU.REASONS.triggerPress||a.reason===fU.REASONS.escapeKey){let a=c.select("domReferenceElement");(0,gW.isElement)(a)&&(i.current=a,h.current=!0)}}},[d,f,c]);let l=r.useMemo(()=>({onMouseLeave(){h.current=!1,i.current=null},onFocus(a){let b=a.currentTarget;if(h.current){if(i.current===b)return;h.current=!1,i.current=null}let d=(0,gZ.getTarget)(a.nativeEvent);if((0,gW.isElement)(d)){if(hq&&!a.relatedTarget){if(!k.current&&!(0,gZ.isTypeableElement)(d))return}else if(!(0,gZ.matchesFocusVisible)(d))return}let e=(0,gZ.isTargetInsideEnabledTrigger)(a.relatedTarget,c.context.triggerElements),{nativeEvent:f,currentTarget:l}=a,m="function"==typeof g?g():g;c.select("open")&&e||0===m||void 0===m?c.setOpen(!0,(0,gc.createChangeEventDetails)(fU.REASONS.triggerFocus,f,l)):j.start(m,()=>{h.current||c.setOpen(!0,(0,gc.createChangeEventDetails)(fU.REASONS.triggerFocus,f,l))})},onBlur(a){h.current=!1,i.current=null;let b=a.relatedTarget,d=a.nativeEvent,f=(0,gW.isElement)(b)&&b.hasAttribute((0,hp.createAttribute)("focus-guard"))&&"outside"===b.getAttribute("data-type");j.start(0,()=>{let a=c.select("domReferenceElement"),g=(0,gZ.activeElement)(a?a.ownerDocument:document);if(!b&&g===a||(0,gZ.contains)(e.current.floatingContext?.refs.floating.current,g)||(0,gZ.contains)(a,g)||f)return;let h=b??g;(0,gZ.isTargetInsideEnabledTrigger)(h,c.context.triggerElements)||c.setOpen(!1,(0,gc.createChangeEventDetails)(fU.REASONS.triggerFocus,d))})}}),[e,c,j,g]);return r.useMemo(()=>f?{reference:l,trigger:l}:{},[f,l])}(x,{enabled:!K&&Q}),W=function(a){let{enabled:b=!0,mouseDownAction:c,open:d}=a,e=r.useRef(!1);return r.useMemo(()=>b?{onMouseDown:a=>{("open"===c&&!d||"close"===c&&d)&&(e.current=!0,(0,gY.ownerDocument)(a.currentTarget).addEventListener("click",()=>{e.current=!1},{once:!0}))},onClick:a=>{e.current&&(e.current=!1,a.preventBaseUIHandler())}}:gS.EMPTY_OBJECT,[b,c,d])}({open:y,enabled:I,mouseDownAction:"open"}),X=(0,gV.useInteractions)([U,V]),Y={disabled:K,open:y},Z=u.useState("triggerProps",H),$=[N,b,M,G,z],_=[X.getReferenceProps(),S??gS.EMPTY_OBJECT,Z,{"aria-haspopup":"menu",id:v,onMouseDown:a=>{u.select("open")||(O.start(200,()=>{u.context.allowMouseUpTriggerRef.current=!0}),(0,gY.ownerDocument)(a.currentTarget).addEventListener("mouseup",P,{once:!0}))}},I?{role:"menuitem"}:{},W,p,L],aa=r.useRef(null),ab=(0,fX.useStableCallback)(a=>{hm.flushSync(()=>{u.setOpen(!1,(0,gc.createChangeEventDetails)(fU.REASONS.focusOut,a.nativeEvent,a.currentTarget))});let b=(0,hs.getTabbableBeforeElement)(aa.current);b?.focus()}),ac=(0,fX.useStableCallback)(a=>{let b=u.select("positionerElement");if(b&&(0,hs.isOutsideEvent)(a,b))u.context.beforeContentFocusGuardRef.current?.focus();else{hm.flushSync(()=>{u.setOpen(!1,(0,gc.createChangeEventDetails)(fU.REASONS.focusOut,a.nativeEvent,a.currentTarget))});let c=(0,hs.getTabbableAfterElement)(u.context.triggerFocusTargetRef.current||z.current);for(;null!==c&&(0,gZ.contains)(b,c);){let a=c;if((c=(0,hs.getNextTabbable)(c))===a)break}c?.focus()}}),ad=(0,fO.useRenderElement)("button",a,{enabled:!I,stateAttributesMapping:fP.pressableTriggerOpenStateMapping,state:Y,ref:$,props:_});return I?(0,q.jsx)(hu,{tag:"button",render:f,className:g,state:Y,refs:$,props:_,stateAttributesMapping:fP.pressableTriggerOpenStateMapping}):y?(0,q.jsxs)(r.Fragment,{children:[(0,q.jsx)(hv.FocusGuard,{ref:aa,onFocus:ab},`${v}-pre-focus-guard`),(0,q.jsx)(r.Fragment,{children:ad},v),(0,q.jsx)(hv.FocusGuard,{ref:u.context.triggerFocusTargetRef,onFocus:ac},`${v}-post-focus-guard`)]}):(0,q.jsx)(r.Fragment,{children:ad},v)});var hx=a.i(43538);let hy=((p={}).popupWidth="--popup-width",p.popupHeight="--popup-height",p),hz={activationDirection:a=>a?{"data-activation-direction":a}:null},hA=r.forwardRef(function(a,b){let{render:c,className:d,children:e,...f}=a,{store:g}=fN(),{side:h}=fL(),i=g.useState("instantType"),{children:j,state:k}=(0,hx.usePopupViewport)({store:g,side:h,cssVars:hy,children:e}),l={activationDirection:k.activationDirection,transitioning:k.transitioning,instant:i};return(0,fO.useRenderElement)("div",a,{state:l,ref:b,props:[f,{children:j}],stateAttributesMapping:hz})}),hB=r.forwardRef(function(a,b){let{className:c,render:d,orientation:e="horizontal",...f}=a;return(0,fO.useRenderElement)("div",a,{state:{orientation:e},ref:b,props:[{role:"separator","aria-orientation":e},f]})}),hC=r.forwardRef(function(a,b){let{render:c,className:d,label:e,id:f,nativeButton:g=!1,openOnHover:h=!0,delay:i=100,closeDelay:j=0,disabled:k=!1,...l}=a,m=f8(),n=fL(),{store:o}=fN(),p=(0,f9.useBaseUiId)(f),q=o.useState("open"),s=o.useState("floatingRootContext"),u=o.useState("floatingTreeRoot"),v=(0,hi.useTriggerRegistration)(p,o),w=r.useCallback(a=>{let b=v(a);return null!==a&&o.select("open")&&null==o.select("activeTriggerId")&&o.update({activeTriggerId:p,activeTriggerElement:a,closeDelay:j}),b},[v,j,o,p]),x=r.useRef(null),y=r.useCallback(a=>{x.current=a,o.set("activeTriggerElement",a)},[o]),z=hk();if(!z?.parentMenu)throw Error((0,fJ.default)(37));o.useSyncedValue("closeDelay",j);let A=z.parentMenu,B=A.useState("itemProps"),C=A.useState("isActive",m.index),D=r.useMemo(()=>({type:"submenu-trigger",setActive(){A.set("activeIndex",m.index)}}),[A,m.index]),E=o.useState("disabled"),F=k||E,{getItemProps:G,itemRef:H}=f4({closeOnClick:!1,disabled:F,highlighted:C,id:p,store:o,typingRef:A.context.typingRef,nativeButton:g,itemMetadata:D,nodeId:n?.nodeId}),I=o.useState("hoverEnabled"),J=A.useState("allowMouseEnter"),K=(0,hr.useHoverReferenceInteraction)(s,{enabled:I&&h&&!F,handleClose:(0,hn.safePolygon)({blockPointerEvents:!0}),mouseOnly:!0,move:!0,restMs:i,delay:J?{open:i,close:j}:0,triggerElementRef:x,externalTree:u}),L=(0,ho.useClick)(s,{enabled:!F,event:"mousedown",toggle:!h,ignoreMouse:h,stickIfOpen:!1}),M=(0,gV.useInteractions)([L]),N=o.useState("triggerProps",!0);return delete N.id,(0,fO.useRenderElement)("div",a,{state:{disabled:F,highlighted:C,open:q},stateAttributesMapping:fP.triggerOpenStateMapping,props:[M.getReferenceProps(),K,N,B,{tabIndex:q||C?0:-1,onBlur(){C&&A.set("activeIndex",null)}},l,G],ref:[b,m.ref,H,w,y]})});class hD{constructor(){this.store=new hh}open(a){let b=a?this.store.context.triggerElements.getById(a):void 0;if(a&&!b)throw Error((0,fJ.default)(83,a));this.store.setOpen(!0,(0,gc.createChangeEventDetails)("imperative-action",void 0,b))}close(){this.store.setOpen(!1,(0,gc.createChangeEventDetails)("imperative-action",void 0,void 0))}get isOpen(){return this.store.state.open}}a.s(["Arrow",0,fQ,"Backdrop",0,fW,"CheckboxItem",0,gd,"CheckboxItemIndicator",0,gg,"Group",0,gi,"GroupLabel",0,gj,"Handle",0,hD,"Item",0,gk,"LinkItem",0,gl,"Popup",0,gs,"Portal",0,gv,"Positioner",0,gJ,"RadioGroup",0,gL,"RadioItem",0,gN,"RadioItemIndicator",0,gO,"Root",0,hl,"Separator",0,hB,"SubmenuRoot",0,function(a){let b=fN().store,c=r.useMemo(()=>({parentMenu:b}),[b]);return(0,q.jsx)(hj.Provider,{value:c,children:(0,q.jsx)(hl,{...a})})},"SubmenuTrigger",0,hC,"Trigger",0,hw,"Viewport",0,hA,"createHandle",0,function(){return new hD}],74483);var hE=a.i(74483),hE=hE,hF=a.i(760);function hG({...a}){return(0,q.jsx)(hE.Root,{"data-slot":"dropdown-menu",...a})}function hH({...a}){return(0,q.jsx)(hE.Trigger,{"data-slot":"dropdown-menu-trigger",...a})}function hI({align:a="start",alignOffset:b=0,side:c="bottom",sideOffset:d=4,className:e,...f}){return(0,q.jsx)(hE.Portal,{children:(0,q.jsx)(hE.Positioner,{className:"isolate z-50 outline-none",align:a,alignOffset:b,side:c,sideOffset:d,children:(0,q.jsx)(hE.Popup,{"data-slot":"dropdown-menu-content",className:(0,hF.cn)("z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95",e),...f})})})}function hJ({className:a,inset:b,variant:c="default",...d}){return(0,q.jsx)(hE.Item,{"data-slot":"dropdown-menu-item","data-inset":b,"data-variant":c,className:(0,hF.cn)("group/dropdown-menu-item relative flex min-h-7 cursor-default items-center gap-2 rounded-md px-2 py-1 text-xs/relaxed outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7.5 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-3.5 data-[variant=destructive]:*:[svg]:text-destructive",a),...d})}function hK({className:a,...b}){return(0,q.jsx)(hE.Separator,{"data-slot":"dropdown-menu-separator",className:(0,hF.cn)("-mx-1 my-1 h-px bg-border/50",a),...b})}a.i(11989),a.i(6406),a.s(["default",0,function({params:a}){let{id:b}=(0,r.use)(a),c=(0,s.useRouter)(),d=(0,E.useToast)(),[e,f]=(0,r.useState)(null),[g,h]=(0,r.useState)([]),[i,j]=(0,r.useState)(),[k,l]=(0,r.useState)(!0),[m,n]=(0,r.useState)(!1),[o,p]=(0,r.useState)(!1),[v,H]=(0,r.useState)(!0),I=(0,r.useRef)(null);(0,F.useDocumentTitle)(e?.title),(0,G.useTaskEvents)({onTaskCreated:()=>{},onTaskUpdated:a=>{a.id===b&&f(a)},onTaskDeleted:a=>{a===b&&(d.info("Task deleted",e?.title??void 0),c.push("/"))}});let J=(0,r.useCallback)(()=>{fetch((0,B.apiUrl)(`/api/tasks/${b}/read`),{method:"POST"}).catch(()=>{})},[b]),K=(0,r.useCallback)((a,b)=>{("success"===b||"failure"===b||"error"===b)&&J()},[J]),L=(0,r.useRef)(null),M=(0,r.useCallback)(async()=>{if(null!==L.current&&L.current!==b&&H(!0),L.current=b,v){l(!0);try{let a=await fetch((0,B.apiUrl)(`/api/tasks/${b}`));if(!a.ok)throw Error("Failed to fetch task");let c=(await a.json()).data.task,d=c.tabs||[];f(c),h(d),d.length>0&&j(d[0].tab_id),J()}catch(a){console.error("Failed to load data:",a)}finally{l(!1),H(!1)}}},[b,v,J]);(0,r.useEffect)(()=>{M()},[b,M]);let N=async(a,b)=>{let c=d.loading("Updating task...");try{let e=await fetch((0,B.apiUrl)(`/api/tasks/${a}`),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)});if(!e.ok)throw Error("Failed to update task");let g=await e.json();return f(g.data.task),d.success(c,"Successfully updated task"),{success:!0}}catch(b){console.error("Failed to update task:",b);let a=b instanceof Error?b.message:"Failed to update task";return d.error(c,"Failed to update task",a),{success:!1,errors:[{field:"global",message:"Failed to update task"}]}}},O=async(a="claude")=>{try{let c=await fetch((0,B.apiUrl)(`/api/tasks/${b}/tabs`),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({mode:a})});if(!c.ok)throw Error("Failed to create tab");let d=(await c.json()).data.tab;return h(a=>a.some(a=>a.tab_id===d.tab_id)?a:[...a,d]),j(d.tab_id),d.tab_id}catch(a){console.error("Failed to create tab:",a);return}},R=async a=>{try{if(!(await fetch((0,B.apiUrl)(`/api/tasks/${b}/tabs/${a}`),{method:"DELETE"})).ok)throw Error("Failed to delete tab");if(h(b=>b.filter(b=>b.tab_id!==a)),i===a){let b=g.filter(b=>b.tab_id!==a);j(b[0]?.tab_id)}}catch(a){console.error("Failed to delete tab:",a)}},S=async()=>{if(!e)return;let a=d.loading("Opening terminal...",e.worktreePath);try{if(!(await fetch((0,B.apiUrl)("/api/commands/open"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({commandType:"terminal",owner:e.owner,repo:e.repo,branch:e.branch})})).ok)throw Error("Command execution failed");d.success(a,"Successfully opened terminal",e.worktreePath)}catch(c){let b=c instanceof Error?c.message:"Unknown error";d.error(a,"Failed to open terminal",b)}},T=async()=>{if(!e)return;let a=d.loading("Opening VS Code...",e.worktreePath);try{if(!(await fetch((0,B.apiUrl)("/api/commands/open"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({commandType:"vscode",owner:e.owner,repo:e.repo,branch:e.branch})})).ok)throw Error("Command execution failed");d.success(a,"Successfully opened VS Code",e.worktreePath)}catch(c){let b=c instanceof Error?c.message:"Unknown error";d.error(a,"Failed to open VS Code",b)}};return k&&!e?(0,q.jsx)("div",{className:"h-screen flex items-center justify-center bg-background",children:(0,q.jsx)(D.LoadingSpinner,{size:"lg",message:"Loading task..."})}):e?(0,q.jsxs)("div",{className:"h-screen flex flex-col bg-background",children:[(0,q.jsx)("div",{className:"sticky top-0 z-50 p-4 border-b border-border bg-card",children:(0,q.jsxs)("div",{className:"flex items-center justify-between",children:[(0,q.jsxs)(Q.Button,{variant:"ghost",onClick:()=>c.push("/"),className:"text-primary font-medium hover:bg-primary/10 hover:text-foreground",children:[(0,q.jsx)(u.ArrowLeft,{className:"w-4 h-4"}),"Back to Board"]}),(0,q.jsx)("h1",{className:"text-base font-semibold text-foreground absolute left-1/2 -translate-x-1/2 max-w-[50vw] truncate",children:e.title}),(0,q.jsxs)(hG,{children:[(0,q.jsx)(hH,{render:(0,q.jsx)(Q.Button,{variant:"ghost",size:"icon-lg",className:"text-primary hover:bg-primary/10 hover:text-foreground",title:"Task menu"}),children:(0,q.jsx)(x,{className:"w-5 h-5"})}),(0,q.jsxs)(hI,{align:"end",children:[(0,q.jsxs)(hJ,{onClick:()=>n(!0),children:[(0,q.jsx)(y.Pencil,{className:"w-4 h-4"}),"Detail / Edit"]}),(0,q.jsx)(hK,{}),(0,q.jsxs)(hJ,{onClick:S,children:[(0,q.jsx)(z,{className:"w-4 h-4"}),"Open Terminal"]}),(0,q.jsxs)(hJ,{onClick:T,children:[(0,q.jsx)(w,{className:"w-4 h-4"}),"Open VS Code"]}),(0,q.jsx)(hK,{}),(0,q.jsxs)(hJ,{className:"text-destructive focus:text-destructive",onClick:()=>p(!0),children:[(0,q.jsx)(A.Trash2,{className:"w-4 h-4"}),"Delete"]})]})]})]})}),(0,q.jsx)("div",{className:"flex-1 flex flex-col min-h-0",children:(0,q.jsx)("div",{className:"bg-card flex flex-col flex-1 min-h-0",children:(0,q.jsx)(fI,{ref:I,task:e,tabs:g,activeTabId:i,onTabChange:j,onTabCreate:O,onTabDelete:R,onClaudeStatusChange:K})})}),(0,q.jsx)(C.TaskDialog,{mode:"edit",isOpen:m,onClose:()=>n(!1),task:e,onUpdate:N}),(0,q.jsx)(P.ConfirmDialog,{open:o,onOpenChange:a=>p(a.open),title:"Delete Task",message:`Delete task "${e.title}"?
|
|
23
22
|
|
|
24
23
|
This will also delete the worktree and branch.`,confirmLabel:"Delete",cancelLabel:"Cancel",onConfirm:()=>{if(!e)return;let a=d.loading("Deleting task...",e.title);fetch((0,B.apiUrl)(`/api/tasks/${e.id}`),{method:"DELETE"}).then(()=>{d.success(a,"Successfully deleted task",e.title)}).catch(b=>{let c=b instanceof Error?b.message:"Unknown error";d.error(a,"Failed to delete task",c)}),c.push("/")},variant:"danger"})]}):(0,q.jsx)("div",{className:"h-screen flex items-center justify-center bg-background",children:(0,q.jsx)("div",{className:"text-center text-foreground",children:"Task not found"})})}],81814)}];
|
|
25
24
|
|