ryco-cli 0.1.7 → 0.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{AzureDevOpsSourceControlProvider-CF5LuCHp.mjs → AzureDevOpsSourceControlProvider-B5vb4DOU.mjs} +2 -2
- package/dist/{AzureDevOpsSourceControlProvider-5exivY-1.cjs → AzureDevOpsSourceControlProvider-CYZmJqSM.cjs} +2 -2
- package/dist/{BitbucketSourceControlProvider-CKH09tfT.mjs → BitbucketSourceControlProvider-CcAb4IgH.mjs} +2 -2
- package/dist/{BitbucketSourceControlProvider-1GWENqcl.cjs → BitbucketSourceControlProvider-D_7i4YQz.cjs} +2 -2
- package/dist/{ClaudeDriver-WwWFTu61.mjs → ClaudeDriver-CoPBpdrp.mjs} +22 -5
- package/dist/{ClaudeDriver-BXLdjrht.cjs → ClaudeDriver-ScqmbPKW.cjs} +22 -5
- package/dist/{CodexDriver-BboMT9uk.cjs → CodexDriver-CtCCc3CC.cjs} +34 -7
- package/dist/{CodexDriver-93-TmCrO.mjs → CodexDriver-DH7vqku4.mjs} +34 -7
- package/dist/{CodexTextGeneration-BU9Myn87.mjs → CodexTextGeneration-CJV1jPda.mjs} +2 -2
- package/dist/{CodexTextGeneration-0pRbJji3.cjs → CodexTextGeneration-Db2hn8Qz.cjs} +2 -2
- package/dist/{CopilotDriver-BASi8pJ0.mjs → CopilotDriver-CFCF68Te.mjs} +6 -5
- package/dist/{CopilotDriver-DCsv-17W.cjs → CopilotDriver-DLN2KEoc.cjs} +6 -5
- package/dist/{CursorDriver-BTSiM3A8.cjs → CursorDriver-BlvQbOEZ.cjs} +42 -3
- package/dist/{CursorDriver-D5LvIqUk.mjs → CursorDriver-Dej81rwD.mjs} +42 -3
- package/dist/{ForgejoSourceControlProvider-e-4hvvZ_.mjs → ForgejoSourceControlProvider-3cFD7SqY.mjs} +2 -2
- package/dist/{ForgejoSourceControlProvider-BTXRDCGB.cjs → ForgejoSourceControlProvider-DYFUGvBk.cjs} +2 -2
- package/dist/{GitHubSourceControlProvider-DWmwkA_y.cjs → GitHubSourceControlProvider-B1Tp0TbY.cjs} +27 -4
- package/dist/{GitHubSourceControlProvider-26IofDAO.mjs → GitHubSourceControlProvider-Kf4rrBTF.mjs} +27 -4
- package/dist/{GitLabSourceControlProvider-D-YHnxRe.cjs → GitLabSourceControlProvider-D3vvKrB4.cjs} +2 -2
- package/dist/{GitLabSourceControlProvider-DePct78W.mjs → GitLabSourceControlProvider-Ygppeftk.mjs} +2 -2
- package/dist/{NodeSqliteClient-B5aDHbNc.cjs → NodeSqliteClient-D1O-MR8w.cjs} +4 -1
- package/dist/{NodeSqliteClient-A1TEgwj_.mjs → NodeSqliteClient-DdTjpAko.mjs} +4 -1
- package/dist/{OpenCodeDriver-BhvLOmvn.mjs → OpenCodeDriver-BGa9Tkot.mjs} +3 -3
- package/dist/{OpenCodeDriver-CVeZ4n9-.cjs → OpenCodeDriver-mbR9mF54.cjs} +3 -3
- package/dist/{SourceControlProviderDiscoveryCatalog-DeFR5xH3.cjs → SourceControlProviderDiscoveryCatalog-CTb100Uk.cjs} +1 -1
- package/dist/{SourceControlProviderDiscoveryCatalog-mJV_Xitr.mjs → SourceControlProviderDiscoveryCatalog-Zk11tJoL.mjs} +1 -1
- package/dist/bin.cjs +259 -243
- package/dist/bin.mjs +259 -243
- package/dist/client/assets/{AnimatedHeight-BSU0lzYs.js → AnimatedHeight-CPQ2q38I.js} +1 -1
- package/dist/client/assets/AppearanceSettings-B0FYiIxL.js +1 -0
- package/dist/client/assets/{BranchToolbar.logic-CZIFSvhd.js → BranchToolbar.logic-C1yjFjxJ.js} +1 -1
- package/dist/client/assets/ChatRightPanel-CJDSKMU2.js +188 -0
- package/dist/client/assets/ChatThreadRouteView-BaKwKGbC.js +1 -0
- package/dist/client/assets/CommandPaletteDialog-BHG_MdZk.js +1 -0
- package/dist/client/assets/{CompositeRoot-B_KEfCUE.js → CompositeRoot-Bs0hfelE.js} +1 -1
- package/dist/client/assets/ConnectionsSettings-DvZNgO60.js +1 -0
- package/dist/client/assets/{DiagnosticsSettings-DtzPCb6N.js → DiagnosticsSettings-0v_hh1Qh.js} +1 -1
- package/dist/client/assets/{DialogHandle-DuHnmWoE.js → DialogHandle-CwEAVRF_.js} +1 -1
- package/dist/client/assets/{DialogRoot-BV25qAcA.js → DialogRoot-CYuaaDI3.js} +1 -1
- package/dist/client/assets/{DialogTitle-DQsi-RTa.js → DialogTitle-Cak6zT3u.js} +1 -1
- package/dist/client/assets/{DialogTrigger-D0fA01C6.js → DialogTrigger-BD0KYYT-.js} +1 -1
- package/dist/client/assets/{DialogViewport-CMV_BePU.js → DialogViewport-9sGf4JUp.js} +1 -1
- package/dist/client/assets/{DraftChatThreadRouteView-BoiKnrii.js → DraftChatThreadRouteView-nvKLHlii.js} +1 -1
- package/dist/client/assets/{JetBrainsIcons-BcPxJlMf.js → JetBrainsIcons-CflvH7gO.js} +1 -1
- package/dist/client/assets/KeybindingsSettings-DhLKhgYn.js +7 -0
- package/dist/client/assets/McpServersSettings-COs_dng1.js +6 -0
- package/dist/client/assets/{NoActiveThreadState-C2q_O1kP.js → NoActiveThreadState-cxMCW-cQ.js} +1 -1
- package/dist/client/assets/OpinionatedPluginsSettings-ag_OgOGj.js +1 -0
- package/dist/client/assets/{ProjectFavicon-D2imiJ8M.js → ProjectFavicon-D97Hy4xo.js} +1 -1
- package/dist/client/assets/{ProviderUpdateLaunchNotification.logic-CJgA--nK.js → ProviderUpdateLaunchNotification.logic-RMYvRSEk.js} +1 -1
- package/dist/client/assets/ProvidersSettingsPanel-DcdVMRVC.js +1 -0
- package/dist/client/assets/{RedactedSensitiveText-B2GFTyfq.js → RedactedSensitiveText-CQY4pFAq.js} +1 -1
- package/dist/client/assets/RootAppShell-BRjETnaT.js +12 -0
- package/dist/client/assets/SettingsDialog-DRi5jsmq.js +2 -0
- package/dist/client/assets/SourceControlSettings-CdUulS4O.js +1 -0
- package/dist/client/assets/StatisticsPanel-NLU3ecLt.js +64 -0
- package/dist/client/assets/{ThreadStatusIndicators-Cw_jLVQf.js → ThreadStatusIndicators-CebYbeXP.js} +1 -1
- package/dist/client/assets/{ThreadTerminalDrawer-D1WnSemH.js → ThreadTerminalDrawer-DlI0gGer.js} +2 -2
- package/dist/client/assets/{ThreadWorkspacePanel-L4qCPTOA.js → ThreadWorkspacePanel-CEIVrCZ0.js} +6 -6
- package/dist/client/assets/{alert-dialog-CNmKa0BK.js → alert-dialog-wh07u3JU.js} +1 -1
- package/dist/client/assets/{chart-column-BWSKYZ_a.js → chart-column-Cg34FxwD.js} +1 -1
- package/dist/client/assets/{chatThreadActions-TtDsiwDC.js → chatThreadActions-UitETN_n.js} +1 -1
- package/dist/client/assets/{chevron-up-zopJ_99l.js → chevron-up-C3DS3evc.js} +1 -1
- package/dist/client/assets/{clamp-Ds6WJu8j.js → clamp-DPbdAzEu.js} +1 -1
- package/dist/client/assets/{clipboard-copy-BoJGpdmJ.js → clipboard-copy-ClVNnHW5.js} +1 -1
- package/dist/client/assets/clock-Cr66Pt4W.js +1 -0
- package/dist/client/assets/{commandPaletteStore-KebG835b.js → commandPaletteStore-DzUBFRor.js} +1 -1
- package/dist/client/assets/composerDraftStore-BfLPHwHL.js +21 -0
- package/dist/client/assets/{desktopUpdateAtoms-BQ0GGEfM.js → desktopUpdateAtoms-BiqPT2_z.js} +1 -1
- package/dist/client/assets/{download-CUiRE0N9.js → download-DJ1juHK4.js} +1 -1
- package/dist/client/assets/{draft-input-CwpGDtoT.js → draft-input-B1txZFC7.js} +1 -1
- package/dist/client/assets/editorPreferences-Bbmh6Bm1.js +1 -0
- package/dist/client/assets/{empty-CBuXePtg.js → empty-CUEYr1p8.js} +1 -1
- package/dist/client/assets/{group-BpZvxjG5.js → group-BouZ2n9F.js} +1 -1
- package/dist/client/assets/{index-BKzXTNJ_.js → index-DiHgOLH_.js} +2 -2
- package/dist/client/assets/{input-CgDawd6k.js → input-Do_m9U-4.js} +1 -1
- package/dist/client/assets/kbd-DJilTfYF.js +1 -0
- package/dist/client/assets/{keybindings-CUTRYI_A.js → keybindings-CRkz0yvp.js} +1 -1
- package/dist/client/assets/{keyboard-DFFiI7JY.js → keyboard-D3WgbAUQ.js} +1 -1
- package/dist/client/assets/{keyedQuery-DiOCbGH0.js → keyedQuery-PQcOnB2O.js} +0 -0
- package/dist/client/assets/{main-BgFGju3e.js → main-C-491vdD.js} +3 -3
- package/dist/client/assets/main-fW5L_SdM.css +2 -0
- package/dist/client/assets/{palette-BXCL909c.js → palette-BRoYo327.js} +1 -1
- package/dist/client/assets/{play-DI2LZohg.js → play-BZbHk_vw.js} +1 -1
- package/dist/client/assets/plus-D0S72hZS.js +1 -0
- package/dist/client/assets/projectAtoms-KYCIIuVn.js +1 -0
- package/dist/client/assets/providerDriverMeta-BX4CLldz.js +1 -0
- package/dist/client/assets/providerIconUtils-DTRc3qno.js +47 -0
- package/dist/client/assets/{radio-group-_PPYg3YY.js → radio-group-De3hRQoY.js} +1 -1
- package/dist/client/assets/{refresh-cw-BsQTNBXl.js → refresh-cw-D_1NT-T2.js} +1 -1
- package/dist/client/assets/{resolveAriaLabelledBy-CRHo_s16.js → resolveAriaLabelledBy-RblUm3b1.js} +1 -1
- package/dist/client/assets/rightPanelRouteSearch-DLllyqRr.js +1 -0
- package/dist/client/assets/{scale-DDEJ-tvn.js → scale-s57Ro96s.js} +1 -1
- package/dist/client/assets/{scroll-area-HgsI-ErG.js → scroll-area-B0_k8-iT.js} +1 -1
- package/dist/client/assets/{separator-ClnL4mUB.js → separator-AyXRgdnJ.js} +1 -1
- package/dist/client/assets/{server-Bbs3L-6_.js → server-Z-m1OqE5.js} +1 -1
- package/dist/client/assets/{session-logic-CKQkgIwo.js → session-logic-B87Htlw4.js} +2 -2
- package/dist/client/assets/settingsDialogStore-CxUfUnd9.js +1 -0
- package/dist/client/assets/{settingsLayout-G5xVm-ZT.js → settingsLayout-BtKS3Z8f.js} +1 -1
- package/dist/client/assets/{sidebar-_u7SGgmC.js → sidebar-B0WxOej2.js} +1 -1
- package/dist/client/assets/{sidebarStatusText-BTYnwflG.js → sidebarStatusText-C_EsHj20.js} +1 -1
- package/dist/client/assets/{skeleton-CmUvhZGP.js → skeleton-COt2Az5i.js} +1 -1
- package/dist/client/assets/{storeSelectors-DhJRpdiw.js → storeSelectors-BuB4Kzj6.js} +1 -1
- package/dist/client/assets/{threadSelectionStore-ygmA4DNA.js → threadSelectionStore-BS6X6HHt.js} +1 -1
- package/dist/client/assets/toast-CaV8TQi_.js +1 -0
- package/dist/client/assets/{toggle-DGS7tKuj.js → toggle-DE4ApNIU.js} +1 -1
- package/dist/client/assets/{toggle-group-Dtv1ZUFW.js → toggle-group-BuzAkAEk.js} +1 -1
- package/dist/client/assets/{tokenModePresentation-Dor1DnBx.js → tokenModePresentation-BCL2aeat.js} +1 -1
- package/dist/client/assets/{trash-2-C2G3VGoV.js → trash-2-ZZ1feCT6.js} +1 -1
- package/dist/client/assets/{triangle-alert-Bpz3xGu5.js → triangle-alert-CL3zqnKL.js} +1 -1
- package/dist/client/assets/{undo-2-C3rtxuqZ.js → undo-2-Cu9H3R3q.js} +1 -1
- package/dist/client/assets/{useHandleNewThread-ypSbzG0P.js → useHandleNewThread-Gke-ZFBr.js} +1 -1
- package/dist/client/assets/useLabelableId-DfuxWqrk.js +1 -0
- package/dist/client/assets/{useNavigate-_4hWGSey.js → useNavigate-DQEHh6ky.js} +1 -1
- package/dist/client/assets/{vscode-icons-DdSTtxYd.js → vscode-icons-DGDiHkqG.js} +1 -1
- package/dist/client/assets/{wrench-C4jdis40.js → wrench-C_OATMLq.js} +1 -1
- package/dist/client/assets/x-BG9zZGeD.js +1 -0
- package/dist/client/index.html +1 -1
- package/dist/{collectUint8StreamText-uNXVRHOf.cjs → collectUint8StreamText-B-GW3u_2.cjs} +83 -10
- package/dist/{collectUint8StreamText-Lv4GGI79.mjs → collectUint8StreamText-COE2_gie.mjs} +83 -10
- package/dist/{makeManagedServerProvider-CkPEptun.mjs → makeManagedServerProvider-D1_iEWGi.mjs} +1 -1
- package/dist/{makeManagedServerProvider-3SD-Q5xh.cjs → makeManagedServerProvider-DTsQ87HL.cjs} +1 -1
- package/package.json +4 -2
- package/dist/client/assets/AppearanceSettings-D7q0ujGK.js +0 -1
- package/dist/client/assets/ChatRightPanel-CWHOIuiQ.js +0 -188
- package/dist/client/assets/ChatThreadRouteView-bA7xWXzc.js +0 -1
- package/dist/client/assets/CommandPaletteDialog-DNYaVOZO.js +0 -1
- package/dist/client/assets/ConnectionsSettings-CLZPbx_K.js +0 -1
- package/dist/client/assets/KeybindingsSettings-LuI98pdF.js +0 -7
- package/dist/client/assets/McpServersSettings-BFMuWYVV.js +0 -6
- package/dist/client/assets/OpinionatedPluginsSettings-Bqwct37O.js +0 -1
- package/dist/client/assets/ProvidersSettingsPanel-B97vbeu6.js +0 -1
- package/dist/client/assets/RootAppShell-C1xTR98P.js +0 -12
- package/dist/client/assets/SettingsDialog-Q0Q8O5oH.js +0 -2
- package/dist/client/assets/SourceControlSettings-KAvoPTNi.js +0 -1
- package/dist/client/assets/StatisticsPanel-BzsQ444K.js +0 -64
- package/dist/client/assets/clock-CzUHThzk.js +0 -1
- package/dist/client/assets/composerDraftStore-DpPEQ6BN.js +0 -21
- package/dist/client/assets/editorPreferences-jN7DKbyt.js +0 -1
- package/dist/client/assets/kbd-QYSL97CK.js +0 -1
- package/dist/client/assets/main-D0UFdwts.css +0 -2
- package/dist/client/assets/plus-DzgIfHUF.js +0 -1
- package/dist/client/assets/projectAtoms-DXXpuERK.js +0 -1
- package/dist/client/assets/providerDriverMeta-CRNNp0q3.js +0 -1
- package/dist/client/assets/providerIconUtils-D-DFhem2.js +0 -47
- package/dist/client/assets/rightPanelRouteSearch-CfmZ7osj.js +0 -1
- package/dist/client/assets/settingsDialogStore-SG-W1q0A.js +0 -1
- package/dist/client/assets/toast-DmA_ziPT.js +0 -1
- package/dist/client/assets/useLabelableId-Bc7KEnHU.js +0 -1
- package/dist/client/assets/x-CG2WU63t.js +0 -1
package/dist/client/assets/{ThreadStatusIndicators-Cw_jLVQf.js → ThreadStatusIndicators-CebYbeXP.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./compiler-runtime-BNrXlsa1.js";import{ao as t,no as n,ro as r}from"./react-CjD7iThp.js";import{Kt as i,Ot as a,an as o,ft as s,ht as c,it as l,pt as u,qt as d}from"./projectAtoms-
|
|
1
|
+
import{t as e}from"./compiler-runtime-BNrXlsa1.js";import{ao as t,no as n,ro as r}from"./react-CjD7iThp.js";import{Kt as i,Ot as a,an as o,ft as s,ht as c,it as l,pt as u,qt as d}from"./projectAtoms-KYCIIuVn.js";import{A as f,M as p,O as m,Oi as h,Zr as g,k as _}from"./composerDraftStore-BfLPHwHL.js";import{$n as v,lr as y,yr as b}from"./providerIconUtils-DTRc3qno.js";import{i as x}from"./primary-CSkhdakK.js";import{g as S}from"./settingsDialogStore-CxUfUnd9.js";var C=g(`folder-plus`,[[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`M9 13h6`,key:`1uhe8q`}],[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),w=e(),T=h();function E(e,t){if(!e)return null;let n=l(t);return e.state===`open`?{label:`${n.shortName} open`,colorClass:`text-emerald-600 dark:text-emerald-300/90`,tooltip:`#${e.number} ${n.shortName} open: ${e.title}`,url:e.url}:e.state===`closed`?{label:`${n.shortName} closed`,colorClass:`text-zinc-500 dark:text-zinc-400/80`,tooltip:`#${e.number} ${n.shortName} closed: ${e.title}`,url:e.url}:e.state===`merged`?{label:`${n.shortName} merged`,colorClass:`text-violet-600 dark:text-violet-300/90`,tooltip:`#${e.number} ${n.shortName} merged: ${e.title}`,url:e.url}:null}function D(e){let t=(0,w.c)(2),{className:n}=e,r;return t[0]===n?r=t[1]:(r=(0,T.jsx)(y,{className:n}),t[0]=n,t[1]=r),r}function O(e,t){return e===null||t===null||t.refName!==e?null:t.pr??null}function k(e){return e.length===0?null:{label:`Terminal process running`,colorClass:`text-teal-600 dark:text-teal-300/90`,pulse:!0}}function A(e){let t=(0,w.c)(18),{status:n,compact:r}=e;if(r!==void 0&&r){let e=`inline-flex size-3.5 shrink-0 items-center justify-center ${n.colorClass}`,r=`size-[9px] rounded-full ${n.dotClass} ${n.pulse?`animate-pulse`:``}`,i;t[0]===r?i=t[1]:(i=(0,T.jsx)(`span`,{className:r}),t[0]=r,t[1]=i);let a;t[2]===n.label?a=t[3]:(a=(0,T.jsx)(`span`,{className:`sr-only`,children:n.label}),t[2]=n.label,t[3]=a);let o;return t[4]!==n.label||t[5]!==e||t[6]!==i||t[7]!==a?(o=(0,T.jsxs)(`span`,{title:n.label,className:e,children:[i,a]}),t[4]=n.label,t[5]=e,t[6]=i,t[7]=a,t[8]=o):o=t[8],o}let i=`inline-flex items-center gap-1 text-[10px] ${n.colorClass}`,a=`h-1.5 w-1.5 rounded-full ${n.dotClass} ${n.pulse?`animate-pulse`:``}`,o;t[9]===a?o=t[10]:(o=(0,T.jsx)(`span`,{className:a}),t[9]=a,t[10]=o);let s;t[11]===n.label?s=t[12]:(s=(0,T.jsx)(`span`,{className:`hidden md:inline`,children:n.label}),t[11]=n.label,t[12]=s);let c;return t[13]!==n.label||t[14]!==i||t[15]!==o||t[16]!==s?(c=(0,T.jsxs)(`span`,{title:n.label,className:i,children:[o,s]}),t[13]=n.label,t[14]=i,t[15]=o,t[16]=s,t[17]=c):c=t[17],c}function j(e){let i=(0,w.c)(24),{thread:s}=e,l;i[0]!==s.environmentId||i[1]!==s.id?(l=r(s.environmentId,s.id),i[0]=s.environmentId,i[1]=s.id,i[2]=l):l=i[2];let u=l,d;i[3]===u?d=i[4]:(d=e=>e.threadLastVisitedAtById[t(u)],i[3]=u,i[4]=d);let h=m(d),g;i[5]!==s.environmentId||i[6]!==s.projectId?(g=e=>c(e,n(s.environmentId,s.projectId))?.cwd??null,i[5]=s.environmentId,i[6]=s.projectId,i[7]=g):g=i[7];let v=a(g),y=s.worktreePath??v,b=s.branch==null?null:y,x;i[8]!==b||i[9]!==s.environmentId?(x={environmentId:s.environmentId,cwd:b},i[8]=b,i[9]=s.environmentId,i[10]=x):x=i[10];let C=o(x),k;i[11]!==C.data||i[12]!==s.branch?(k=E(O(s.branch,C.data),C.data?.sourceControlProvider),i[11]=C.data,i[12]=s.branch,i[13]=k):k=i[13];let j=k,M;i[14]!==h||i[15]!==s?(M=S({thread:{...s,lastVisitedAt:h}}),i[14]=h,i[15]=s,i[16]=M):M=i[16];let N=M;if(!j&&!N)return null;let P;i[17]===j?P=i[18]:(P=j?(0,T.jsxs)(_,{children:[(0,T.jsx)(p,{render:(0,T.jsx)(`span`,{"aria-label":j.tooltip,className:`inline-flex items-center justify-center ${j.colorClass}`}),children:(0,T.jsx)(D,{className:`size-3`})}),(0,T.jsx)(f,{side:`top`,children:j.tooltip})]}):null,i[17]=j,i[18]=P);let F;i[19]===N?F=i[20]:(F=N?(0,T.jsx)(A,{status:N}):null,i[19]=N,i[20]=F);let I;return i[21]!==P||i[22]!==F?(I=(0,T.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1.5`,children:[P,F]}),i[21]=P,i[22]=F,i[23]=I):I=i[23],I}function M(e){let t=(0,w.c)(19),{thread:n}=e,a;t[0]!==n.environmentId||t[1]!==n.id?(a=r(n.environmentId,n.id),t[0]=n.environmentId,t[1]=n.id,t[2]=a):a=t[2];let o=a,c;t[3]===o?c=t[4]:(c=e=>s(e.terminalStateByThreadKey,o).runningTerminalIds,t[3]=o,t[4]=c);let l=u(c),m=x(),h=m!==null&&n.environmentId!==m,g;t[5]===n.environmentId?g=t[6]:(g=e=>e.byId[n.environmentId]?.descriptor?.label??null,t[5]=n.environmentId,t[6]=g);let y=d(g),S;t[7]===n.environmentId?S=t[8]:(S=e=>e.byId[n.environmentId]?.label??null,t[7]=n.environmentId,t[8]=S);let C=i(S),E=h?y??C??`Remote`:null,D;t[9]===l?D=t[10]:(D=k(l),t[9]=l,t[10]=D);let O=D;if(!O&&!h)return null;let A;t[11]===O?A=t[12]:(A=O?(0,T.jsx)(`span`,{role:`img`,"aria-label":O.label,title:O.label,className:`inline-flex items-center justify-center ${O.colorClass}`,children:(0,T.jsx)(v,{className:`size-3 ${O.pulse?`animate-pulse`:``}`})}):null,t[11]=O,t[12]=A);let j;t[13]!==h||t[14]!==E?(j=h?(0,T.jsxs)(_,{children:[(0,T.jsx)(p,{render:(0,T.jsx)(`span`,{"aria-label":E??`Remote`,className:`inline-flex items-center justify-center`}),children:(0,T.jsx)(b,{className:`size-3 text-muted-foreground/60`})}),(0,T.jsx)(f,{side:`top`,children:E})]}):null,t[13]=h,t[14]=E,t[15]=j):j=t[15];let M;return t[16]!==A||t[17]!==j?(M=(0,T.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1.5`,children:[A,j]}),t[16]=A,t[17]=j,t[18]=M):M=t[18],M}export{E as a,C as c,A as i,j as n,O as o,M as r,k as s,D as t};
|
package/dist/client/assets/{ThreadTerminalDrawer-D1WnSemH.js → ThreadTerminalDrawer-DlI0gGer.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{i as e,t}from"./react-PSPkXoKo.js";import{t as n}from"./compiler-runtime-BNrXlsa1.js";import{At as r,Mt as i,Nt as a,Yt as o,dt as s,jt as c,p as l,pt as u}from"./projectAtoms-DXXpuERK.js";import{Pi as d,Zr as f,gi as p}from"./composerDraftStore-DpPEQ6BN.js";import{S as m,b as h,x as g}from"./providerIconUtils-D-DFhem2.js";import{Ct as _,Dt as ee,Et as te,Ot as ne,St as re,Tt as ie,wt as ae}from"./ChatRightPanel-CWHOIuiQ.js";import{t as oe}from"./plus-DzgIfHUF.js";import{t as se}from"./trash-2-C2G3VGoV.js";import{t as ce}from"./x-CG2WU63t.js";import{b as v,c as le,d as y,l as ue,r as de,s as fe,u as b,y as pe}from"./keybindings-CUTRYI_A.js";import{t as me}from"./editorPreferences-jN7DKbyt.js";import{S as he}from"./useTheme-HcKmBfpF.js";var ge=f(`square-split-horizontal`,[[`path`,{d:`M8 19H5c-1 0-2-1-2-2V7c0-1 1-2 2-2h3`,key:`lubmu8`}],[`path`,{d:`M16 5h3c1 0 2 1 2 2v10c0 1-1 2-2 2h-3`,key:`1ag34g`}],[`line`,{x1:`12`,x2:`12`,y1:`4`,y2:`20`,key:`1tx1rr`}]]),_e=n(),x=2,ve=1,ye=class{activate(e){this._terminal=e}dispose(){}fit(){let e=this.proposeDimensions();if(!e||!this._terminal||isNaN(e.cols)||isNaN(e.rows))return;let t=this._terminal._core;(this._terminal.rows!==e.rows||this._terminal.cols!==e.cols)&&(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let e=this._terminal._core._renderService.dimensions;if(e.css.cell.width===0||e.css.cell.height===0)return;let t=this._terminal.options.scrollback===0?0:this._terminal.options.overviewRuler?.width||14,n=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(n.getPropertyValue(`height`)),i=Math.max(0,parseInt(n.getPropertyValue(`width`))),a=window.getComputedStyle(this._terminal.element),o={top:parseInt(a.getPropertyValue(`padding-top`)),bottom:parseInt(a.getPropertyValue(`padding-bottom`)),right:parseInt(a.getPropertyValue(`padding-right`)),left:parseInt(a.getPropertyValue(`padding-left`))},s=o.top+o.bottom,c=o.right+o.left,l=r-s,u=i-c-t;return{cols:Math.max(x,Math.floor(u/e.css.cell.width)),rows:Math.max(ve,Math.floor(l/e.css.cell.height))}}},be=Object.defineProperty,xe=Object.getOwnPropertyDescriptor,Se=(e,t)=>{for(var n in t)be(e,n,{get:t[n],enumerable:!0})},S=(e,t,n,r)=>{for(var i=r>1?void 0:r?xe(t,n):t,a=e.length-1,o;a>=0;a--)(o=e[a])&&(i=(r?o(t,n,i):o(i))||i);return r&&i&&be(t,n,i),i},C=(e,t)=>(n,r)=>t(n,r,e),Ce=`Terminal input`,we={get:()=>Ce,set:e=>Ce=e},Te=`Too much output to announce, navigate to rows manually to read`,Ee={get:()=>Te,set:e=>Te=e};function De(e){return e.replace(/\r?\n/g,`\r`)}function Oe(e,t){return t?`\x1B[200~`+e+`\x1B[201~`:e}function ke(e,t){e.clipboardData&&e.clipboardData.setData(`text/plain`,t.selectionText),e.preventDefault()}function Ae(e,t,n,r){e.stopPropagation(),e.clipboardData&&w(e.clipboardData.getData(`text/plain`),t,n,r)}function w(e,t,n,r){e=De(e),e=Oe(e,n.decPrivateModes.bracketedPasteMode&&r.rawOptions.ignoreBracketedPasteMode!==!0),n.triggerDataEvent(e,!0),t.value=``}function je(e,t,n){let r=n.getBoundingClientRect(),i=e.clientX-r.left-10,a=e.clientY-r.top-10;t.style.width=`20px`,t.style.height=`20px`,t.style.left=`${i}px`,t.style.top=`${a}px`,t.style.zIndex=`1000`,t.focus()}function Me(e,t,n,r,i){je(e,t,n),i&&r.rightClickSelect(e),t.value=r.selectionText,t.select()}function T(e){return e>65535?(e-=65536,String.fromCharCode((e>>10)+55296)+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)}function Ne(e,t=0,n=e.length){let r=``;for(let i=t;i<n;++i){let t=e[i];t>65535?(t-=65536,r+=String.fromCharCode((t>>10)+55296)+String.fromCharCode(t%1024+56320)):r+=String.fromCharCode(t)}return r}var E=class{constructor(){this._interim=0}clear(){this._interim=0}decode(e,t){let n=e.length;if(!n)return 0;let r=0,i=0;if(this._interim){let n=e.charCodeAt(i++);56320<=n&&n<=57343?t[r++]=(this._interim-55296)*1024+n-56320+65536:(t[r++]=this._interim,t[r++]=n),this._interim=0}for(let a=i;a<n;++a){let i=e.charCodeAt(a);if(55296<=i&&i<=56319){if(++a>=n)return this._interim=i,r;let o=e.charCodeAt(a);56320<=o&&o<=57343?t[r++]=(i-55296)*1024+o-56320+65536:(t[r++]=i,t[r++]=o);continue}i!==65279&&(t[r++]=i)}return r}},Pe=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(e,t){let n=e.length;if(!n)return 0;let r=0,i,a,o,s,c=0,l=0;if(this.interim[0]){let i=!1,a=this.interim[0];a&=(a&224)==192?31:(a&240)==224?15:7;let o=0,s;for(;(s=this.interim[++o]&63)&&o<4;)a<<=6,a|=s;let c=(this.interim[0]&224)==192?2:(this.interim[0]&240)==224?3:4,u=c-o;for(;l<u;){if(l>=n)return 0;if(s=e[l++],(s&192)!=128){l--,i=!0;break}else this.interim[o++]=s,a<<=6,a|=s&63}i||(c===2?a<128?l--:t[r++]=a:c===3?a<2048||a>=55296&&a<=57343||a===65279||(t[r++]=a):a<65536||a>1114111||(t[r++]=a)),this.interim.fill(0)}let u=n-4,d=l;for(;d<n;){for(;d<u&&!((i=e[d])&128)&&!((a=e[d+1])&128)&&!((o=e[d+2])&128)&&!((s=e[d+3])&128);)t[r++]=i,t[r++]=a,t[r++]=o,t[r++]=s,d+=4;if(i=e[d++],i<128)t[r++]=i;else if((i&224)==192){if(d>=n)return this.interim[0]=i,r;if(a=e[d++],(a&192)!=128){d--;continue}if(c=(i&31)<<6|a&63,c<128){d--;continue}t[r++]=c}else if((i&240)==224){if(d>=n)return this.interim[0]=i,r;if(a=e[d++],(a&192)!=128){d--;continue}if(d>=n)return this.interim[0]=i,this.interim[1]=a,r;if(o=e[d++],(o&192)!=128){d--;continue}if(c=(i&15)<<12|(a&63)<<6|o&63,c<2048||c>=55296&&c<=57343||c===65279)continue;t[r++]=c}else if((i&248)==240){if(d>=n)return this.interim[0]=i,r;if(a=e[d++],(a&192)!=128){d--;continue}if(d>=n)return this.interim[0]=i,this.interim[1]=a,r;if(o=e[d++],(o&192)!=128){d--;continue}if(d>=n)return this.interim[0]=i,this.interim[1]=a,this.interim[2]=o,r;if(s=e[d++],(s&192)!=128){d--;continue}if(c=(i&7)<<18|(a&63)<<12|(o&63)<<6|s&63,c<65536||c>1114111)continue;t[r++]=c}}return r}},Fe=``,Ie=` `,Le=class e{constructor(){this.fg=0,this.bg=0,this.extended=new Re}static toColorRGB(e){return[e>>>16&255,e>>>8&255,e&255]}static fromColorRGB(e){return(e[0]&255)<<16|(e[1]&255)<<8|e[2]&255}clone(){let t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t}isInverse(){return this.fg&67108864}isBold(){return this.fg&134217728}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:this.fg&268435456}isBlink(){return this.fg&536870912}isInvisible(){return this.fg&1073741824}isItalic(){return this.bg&67108864}isDim(){return this.bg&134217728}isStrikethrough(){return this.fg&2147483648}isProtected(){return this.bg&536870912}isOverline(){return this.bg&1073741824}getFgColorMode(){return this.fg&50331648}getBgColorMode(){return this.bg&50331648}isFgRGB(){return(this.fg&50331648)==50331648}isBgRGB(){return(this.bg&50331648)==50331648}isFgPalette(){return(this.fg&50331648)==16777216||(this.fg&50331648)==33554432}isBgPalette(){return(this.bg&50331648)==16777216||(this.bg&50331648)==33554432}isFgDefault(){return(this.fg&50331648)==0}isBgDefault(){return(this.bg&50331648)==0}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(this.fg&50331648){case 16777216:case 33554432:return this.fg&255;case 50331648:return this.fg&16777215;default:return-1}}getBgColor(){switch(this.bg&50331648){case 16777216:case 33554432:return this.bg&255;case 50331648:return this.bg&16777215;default:return-1}}hasExtendedAttrs(){return this.bg&268435456}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(this.bg&268435456&&~this.extended.underlineColor)switch(this.extended.underlineColor&50331648){case 16777216:case 33554432:return this.extended.underlineColor&255;case 50331648:return this.extended.underlineColor&16777215;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return this.bg&268435456&&~this.extended.underlineColor?this.extended.underlineColor&50331648:this.getFgColorMode()}isUnderlineColorRGB(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)==50331648:this.isFgRGB()}isUnderlineColorPalette(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)==16777216||(this.extended.underlineColor&50331648)==33554432:this.isFgPalette()}isUnderlineColorDefault(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)==0:this.isFgDefault()}getUnderlineStyle(){return this.fg&268435456?this.bg&268435456?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},Re=class e{constructor(e=0,t=0){this._ext=0,this._urlId=0,this._ext=e,this._urlId=t}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(e){this._ext=e}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(e){this._ext&=-469762049,this._ext|=e<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(e){this._ext&=-67108864,this._ext|=e&67108863}get urlId(){return this._urlId}set urlId(e){this._urlId=e}get underlineVariantOffset(){let e=(this._ext&3758096384)>>29;return e<0?e^4294967288:e}set underlineVariantOffset(e){this._ext&=536870911,this._ext|=e<<29&3758096384}clone(){return new e(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}},D=class e extends Le{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new Re,this.combinedData=``}static fromCharData(t){let n=new e;return n.setFromCharData(t),n}isCombined(){return this.content&2097152}getWidth(){return this.content>>22}getChars(){return this.content&2097152?this.combinedData:this.content&2097151?T(this.content&2097151):``}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):this.content&2097151}setFromCharData(e){this.fg=e[0],this.bg=0;let t=!1;if(e[1].length>2)t=!0;else if(e[1].length===2){let n=e[1].charCodeAt(0);if(55296<=n&&n<=56319){let r=e[1].charCodeAt(1);56320<=r&&r<=57343?this.content=(n-55296)*1024+r-56320+65536|e[2]<<22:t=!0}else t=!0}else this.content=e[1].charCodeAt(0)|e[2]<<22;t&&(this.combinedData=e[1],this.content=2097152|e[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},ze=`di$target`,Be=`di$dependencies`,Ve=new Map;function He(e){return e[Be]||[]}function O(e){if(Ve.has(e))return Ve.get(e);let t=function(e,n,r){if(arguments.length!==3)throw Error(`@IServiceName-decorator can only be used to decorate a parameter`);Ue(t,e,r)};return t._id=e,Ve.set(e,t),t}function Ue(e,t,n){t[ze]===t?t[Be].push({id:e,index:n}):(t[Be]=[{id:e,index:n}],t[ze]=t)}var k=O(`BufferService`),We=O(`CoreMouseService`),Ge=O(`CoreService`),Ke=O(`CharsetService`),qe=O(`InstantiationService`),Je=O(`LogService`),A=O(`OptionsService`),Ye=O(`OscLinkService`),Xe=O(`UnicodeService`),Ze=O(`DecorationService`),Qe=class{constructor(e,t,n){this._bufferService=e,this._optionsService=t,this._oscLinkService=n}provideLinks(e,t){let n=this._bufferService.buffer.lines.get(e-1);if(!n){t(void 0);return}let r=[],i=this._optionsService.rawOptions.linkHandler,a=new D,o=n.getTrimmedLength(),s=-1,c=-1,l=!1;for(let t=0;t<o;t++)if(!(c===-1&&!n.hasContent(t))){if(n.loadCell(t,a),a.hasExtendedAttrs()&&a.extended.urlId)if(c===-1){c=t,s=a.extended.urlId;continue}else l=a.extended.urlId!==s;else c!==-1&&(l=!0);if(l||c!==-1&&t===o-1){let n=this._oscLinkService.getLinkData(s)?.uri;if(n){let a={start:{x:c+1,y:e},end:{x:t+ +(!l&&t===o-1),y:e}},s=!1;if(!i?.allowNonHttpProtocols)try{let e=new URL(n);[`http:`,`https:`].includes(e.protocol)||(s=!0)}catch{s=!0}s||r.push({text:n,range:a,activate:(e,t)=>i?i.activate(e,t,a):$e(e,t),hover:(e,t)=>i?.hover?.(e,t,a),leave:(e,t)=>i?.leave?.(e,t,a)})}l=!1,a.hasExtendedAttrs()&&a.extended.urlId?(c=t,s=a.extended.urlId):(c=-1,s=-1)}}t(r)}};Qe=S([C(0,k),C(1,A),C(2,Ye)],Qe);function $e(e,t){if(confirm(`Do you want to navigate to ${t}?
|
|
1
|
+
import{i as e,t}from"./react-PSPkXoKo.js";import{t as n}from"./compiler-runtime-BNrXlsa1.js";import{At as r,Mt as i,Nt as a,Yt as o,dt as s,jt as c,p as l,pt as u}from"./projectAtoms-KYCIIuVn.js";import{Oi as d,Zr as f,_i as p}from"./composerDraftStore-BfLPHwHL.js";import{S as m,b as h,x as g}from"./providerIconUtils-DTRc3qno.js";import{Ct as _,Dt as ee,Et as te,Ot as ne,St as re,Tt as ie,wt as ae}from"./ChatRightPanel-CJDSKMU2.js";import{t as oe}from"./plus-D0S72hZS.js";import{t as se}from"./trash-2-ZZ1feCT6.js";import{t as ce}from"./x-BG9zZGeD.js";import{b as v,c as le,d as y,f as ue,i as de,l as fe,u as b,x as pe}from"./keybindings-CRkz0yvp.js";import{t as me}from"./editorPreferences-Bbmh6Bm1.js";import{S as he}from"./useTheme-HcKmBfpF.js";var ge=f(`square-split-horizontal`,[[`path`,{d:`M8 19H5c-1 0-2-1-2-2V7c0-1 1-2 2-2h3`,key:`lubmu8`}],[`path`,{d:`M16 5h3c1 0 2 1 2 2v10c0 1-1 2-2 2h-3`,key:`1ag34g`}],[`line`,{x1:`12`,x2:`12`,y1:`4`,y2:`20`,key:`1tx1rr`}]]),_e=n(),x=2,ve=1,ye=class{activate(e){this._terminal=e}dispose(){}fit(){let e=this.proposeDimensions();if(!e||!this._terminal||isNaN(e.cols)||isNaN(e.rows))return;let t=this._terminal._core;(this._terminal.rows!==e.rows||this._terminal.cols!==e.cols)&&(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let e=this._terminal._core._renderService.dimensions;if(e.css.cell.width===0||e.css.cell.height===0)return;let t=this._terminal.options.scrollback===0?0:this._terminal.options.overviewRuler?.width||14,n=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(n.getPropertyValue(`height`)),i=Math.max(0,parseInt(n.getPropertyValue(`width`))),a=window.getComputedStyle(this._terminal.element),o={top:parseInt(a.getPropertyValue(`padding-top`)),bottom:parseInt(a.getPropertyValue(`padding-bottom`)),right:parseInt(a.getPropertyValue(`padding-right`)),left:parseInt(a.getPropertyValue(`padding-left`))},s=o.top+o.bottom,c=o.right+o.left,l=r-s,u=i-c-t;return{cols:Math.max(x,Math.floor(u/e.css.cell.width)),rows:Math.max(ve,Math.floor(l/e.css.cell.height))}}},be=Object.defineProperty,xe=Object.getOwnPropertyDescriptor,Se=(e,t)=>{for(var n in t)be(e,n,{get:t[n],enumerable:!0})},S=(e,t,n,r)=>{for(var i=r>1?void 0:r?xe(t,n):t,a=e.length-1,o;a>=0;a--)(o=e[a])&&(i=(r?o(t,n,i):o(i))||i);return r&&i&&be(t,n,i),i},C=(e,t)=>(n,r)=>t(n,r,e),Ce=`Terminal input`,we={get:()=>Ce,set:e=>Ce=e},Te=`Too much output to announce, navigate to rows manually to read`,Ee={get:()=>Te,set:e=>Te=e};function De(e){return e.replace(/\r?\n/g,`\r`)}function Oe(e,t){return t?`\x1B[200~`+e+`\x1B[201~`:e}function ke(e,t){e.clipboardData&&e.clipboardData.setData(`text/plain`,t.selectionText),e.preventDefault()}function Ae(e,t,n,r){e.stopPropagation(),e.clipboardData&&w(e.clipboardData.getData(`text/plain`),t,n,r)}function w(e,t,n,r){e=De(e),e=Oe(e,n.decPrivateModes.bracketedPasteMode&&r.rawOptions.ignoreBracketedPasteMode!==!0),n.triggerDataEvent(e,!0),t.value=``}function je(e,t,n){let r=n.getBoundingClientRect(),i=e.clientX-r.left-10,a=e.clientY-r.top-10;t.style.width=`20px`,t.style.height=`20px`,t.style.left=`${i}px`,t.style.top=`${a}px`,t.style.zIndex=`1000`,t.focus()}function Me(e,t,n,r,i){je(e,t,n),i&&r.rightClickSelect(e),t.value=r.selectionText,t.select()}function T(e){return e>65535?(e-=65536,String.fromCharCode((e>>10)+55296)+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)}function Ne(e,t=0,n=e.length){let r=``;for(let i=t;i<n;++i){let t=e[i];t>65535?(t-=65536,r+=String.fromCharCode((t>>10)+55296)+String.fromCharCode(t%1024+56320)):r+=String.fromCharCode(t)}return r}var E=class{constructor(){this._interim=0}clear(){this._interim=0}decode(e,t){let n=e.length;if(!n)return 0;let r=0,i=0;if(this._interim){let n=e.charCodeAt(i++);56320<=n&&n<=57343?t[r++]=(this._interim-55296)*1024+n-56320+65536:(t[r++]=this._interim,t[r++]=n),this._interim=0}for(let a=i;a<n;++a){let i=e.charCodeAt(a);if(55296<=i&&i<=56319){if(++a>=n)return this._interim=i,r;let o=e.charCodeAt(a);56320<=o&&o<=57343?t[r++]=(i-55296)*1024+o-56320+65536:(t[r++]=i,t[r++]=o);continue}i!==65279&&(t[r++]=i)}return r}},Pe=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(e,t){let n=e.length;if(!n)return 0;let r=0,i,a,o,s,c=0,l=0;if(this.interim[0]){let i=!1,a=this.interim[0];a&=(a&224)==192?31:(a&240)==224?15:7;let o=0,s;for(;(s=this.interim[++o]&63)&&o<4;)a<<=6,a|=s;let c=(this.interim[0]&224)==192?2:(this.interim[0]&240)==224?3:4,u=c-o;for(;l<u;){if(l>=n)return 0;if(s=e[l++],(s&192)!=128){l--,i=!0;break}else this.interim[o++]=s,a<<=6,a|=s&63}i||(c===2?a<128?l--:t[r++]=a:c===3?a<2048||a>=55296&&a<=57343||a===65279||(t[r++]=a):a<65536||a>1114111||(t[r++]=a)),this.interim.fill(0)}let u=n-4,d=l;for(;d<n;){for(;d<u&&!((i=e[d])&128)&&!((a=e[d+1])&128)&&!((o=e[d+2])&128)&&!((s=e[d+3])&128);)t[r++]=i,t[r++]=a,t[r++]=o,t[r++]=s,d+=4;if(i=e[d++],i<128)t[r++]=i;else if((i&224)==192){if(d>=n)return this.interim[0]=i,r;if(a=e[d++],(a&192)!=128){d--;continue}if(c=(i&31)<<6|a&63,c<128){d--;continue}t[r++]=c}else if((i&240)==224){if(d>=n)return this.interim[0]=i,r;if(a=e[d++],(a&192)!=128){d--;continue}if(d>=n)return this.interim[0]=i,this.interim[1]=a,r;if(o=e[d++],(o&192)!=128){d--;continue}if(c=(i&15)<<12|(a&63)<<6|o&63,c<2048||c>=55296&&c<=57343||c===65279)continue;t[r++]=c}else if((i&248)==240){if(d>=n)return this.interim[0]=i,r;if(a=e[d++],(a&192)!=128){d--;continue}if(d>=n)return this.interim[0]=i,this.interim[1]=a,r;if(o=e[d++],(o&192)!=128){d--;continue}if(d>=n)return this.interim[0]=i,this.interim[1]=a,this.interim[2]=o,r;if(s=e[d++],(s&192)!=128){d--;continue}if(c=(i&7)<<18|(a&63)<<12|(o&63)<<6|s&63,c<65536||c>1114111)continue;t[r++]=c}}return r}},Fe=``,Ie=` `,Le=class e{constructor(){this.fg=0,this.bg=0,this.extended=new Re}static toColorRGB(e){return[e>>>16&255,e>>>8&255,e&255]}static fromColorRGB(e){return(e[0]&255)<<16|(e[1]&255)<<8|e[2]&255}clone(){let t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t}isInverse(){return this.fg&67108864}isBold(){return this.fg&134217728}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:this.fg&268435456}isBlink(){return this.fg&536870912}isInvisible(){return this.fg&1073741824}isItalic(){return this.bg&67108864}isDim(){return this.bg&134217728}isStrikethrough(){return this.fg&2147483648}isProtected(){return this.bg&536870912}isOverline(){return this.bg&1073741824}getFgColorMode(){return this.fg&50331648}getBgColorMode(){return this.bg&50331648}isFgRGB(){return(this.fg&50331648)==50331648}isBgRGB(){return(this.bg&50331648)==50331648}isFgPalette(){return(this.fg&50331648)==16777216||(this.fg&50331648)==33554432}isBgPalette(){return(this.bg&50331648)==16777216||(this.bg&50331648)==33554432}isFgDefault(){return(this.fg&50331648)==0}isBgDefault(){return(this.bg&50331648)==0}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(this.fg&50331648){case 16777216:case 33554432:return this.fg&255;case 50331648:return this.fg&16777215;default:return-1}}getBgColor(){switch(this.bg&50331648){case 16777216:case 33554432:return this.bg&255;case 50331648:return this.bg&16777215;default:return-1}}hasExtendedAttrs(){return this.bg&268435456}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(this.bg&268435456&&~this.extended.underlineColor)switch(this.extended.underlineColor&50331648){case 16777216:case 33554432:return this.extended.underlineColor&255;case 50331648:return this.extended.underlineColor&16777215;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return this.bg&268435456&&~this.extended.underlineColor?this.extended.underlineColor&50331648:this.getFgColorMode()}isUnderlineColorRGB(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)==50331648:this.isFgRGB()}isUnderlineColorPalette(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)==16777216||(this.extended.underlineColor&50331648)==33554432:this.isFgPalette()}isUnderlineColorDefault(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)==0:this.isFgDefault()}getUnderlineStyle(){return this.fg&268435456?this.bg&268435456?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},Re=class e{constructor(e=0,t=0){this._ext=0,this._urlId=0,this._ext=e,this._urlId=t}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(e){this._ext=e}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(e){this._ext&=-469762049,this._ext|=e<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(e){this._ext&=-67108864,this._ext|=e&67108863}get urlId(){return this._urlId}set urlId(e){this._urlId=e}get underlineVariantOffset(){let e=(this._ext&3758096384)>>29;return e<0?e^4294967288:e}set underlineVariantOffset(e){this._ext&=536870911,this._ext|=e<<29&3758096384}clone(){return new e(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}},D=class e extends Le{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new Re,this.combinedData=``}static fromCharData(t){let n=new e;return n.setFromCharData(t),n}isCombined(){return this.content&2097152}getWidth(){return this.content>>22}getChars(){return this.content&2097152?this.combinedData:this.content&2097151?T(this.content&2097151):``}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):this.content&2097151}setFromCharData(e){this.fg=e[0],this.bg=0;let t=!1;if(e[1].length>2)t=!0;else if(e[1].length===2){let n=e[1].charCodeAt(0);if(55296<=n&&n<=56319){let r=e[1].charCodeAt(1);56320<=r&&r<=57343?this.content=(n-55296)*1024+r-56320+65536|e[2]<<22:t=!0}else t=!0}else this.content=e[1].charCodeAt(0)|e[2]<<22;t&&(this.combinedData=e[1],this.content=2097152|e[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},ze=`di$target`,Be=`di$dependencies`,Ve=new Map;function He(e){return e[Be]||[]}function O(e){if(Ve.has(e))return Ve.get(e);let t=function(e,n,r){if(arguments.length!==3)throw Error(`@IServiceName-decorator can only be used to decorate a parameter`);Ue(t,e,r)};return t._id=e,Ve.set(e,t),t}function Ue(e,t,n){t[ze]===t?t[Be].push({id:e,index:n}):(t[Be]=[{id:e,index:n}],t[ze]=t)}var k=O(`BufferService`),We=O(`CoreMouseService`),Ge=O(`CoreService`),Ke=O(`CharsetService`),qe=O(`InstantiationService`),Je=O(`LogService`),A=O(`OptionsService`),Ye=O(`OscLinkService`),Xe=O(`UnicodeService`),Ze=O(`DecorationService`),Qe=class{constructor(e,t,n){this._bufferService=e,this._optionsService=t,this._oscLinkService=n}provideLinks(e,t){let n=this._bufferService.buffer.lines.get(e-1);if(!n){t(void 0);return}let r=[],i=this._optionsService.rawOptions.linkHandler,a=new D,o=n.getTrimmedLength(),s=-1,c=-1,l=!1;for(let t=0;t<o;t++)if(!(c===-1&&!n.hasContent(t))){if(n.loadCell(t,a),a.hasExtendedAttrs()&&a.extended.urlId)if(c===-1){c=t,s=a.extended.urlId;continue}else l=a.extended.urlId!==s;else c!==-1&&(l=!0);if(l||c!==-1&&t===o-1){let n=this._oscLinkService.getLinkData(s)?.uri;if(n){let a={start:{x:c+1,y:e},end:{x:t+ +(!l&&t===o-1),y:e}},s=!1;if(!i?.allowNonHttpProtocols)try{let e=new URL(n);[`http:`,`https:`].includes(e.protocol)||(s=!0)}catch{s=!0}s||r.push({text:n,range:a,activate:(e,t)=>i?i.activate(e,t,a):$e(e,t),hover:(e,t)=>i?.hover?.(e,t,a),leave:(e,t)=>i?.leave?.(e,t,a)})}l=!1,a.hasExtendedAttrs()&&a.extended.urlId?(c=t,s=a.extended.urlId):(c=-1,s=-1)}}t(r)}};Qe=S([C(0,k),C(1,A),C(2,Ye)],Qe);function $e(e,t){if(confirm(`Do you want to navigate to ${t}?
|
|
2
2
|
|
|
3
3
|
WARNING: This link could potentially be dangerous`)){let e=window.open();if(e){try{e.opener=null}catch{}e.location.href=t}else console.warn(`Opening link blocked as opener could not be cleared`)}}var et=O(`CharSizeService`),tt=O(`CoreBrowserService`),nt=O(`MouseService`),rt=O(`RenderService`),it=O(`SelectionService`),at=O(`CharacterJoinerService`),ot=O(`ThemeService`),st=O(`LinkProviderService`),ct=new class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?mt.isErrorNoTelemetry(e)?new mt(e.message+`
|
|
4
4
|
|
|
@@ -35,4 +35,4 @@ ${s.join(`
|
|
|
35
35
|
`&&(this._liveRegionLineCount++,this._liveRegionLineCount===rc+1&&(this._liveRegion.textContent+=Ee.get())))}_clearLiveRegion(){this._liveRegion.textContent=``,this._liveRegionLineCount=0}_handleKey(e){this._clearLiveRegion(),/\p{Control}/u.test(e)||this._charsToConsume.push(e)}_refreshRows(e,t){this._liveRegionDebouncer.refresh(e,t,this._terminal.rows)}_renderRows(e,t){let n=this._terminal.buffer,r=n.lines.length.toString();for(let i=e;i<=t;i++){let e=n.lines.get(n.ydisp+i),t=[],a=e?.translateToString(!0,void 0,void 0,t)||``,o=(n.ydisp+i+1).toString(),s=this._rowElements[i];s&&(a.length===0?(s.textContent=`\xA0`,this._rowColumns.set(s,[0,1])):(s.textContent=a,this._rowColumns.set(s,t)),s.setAttribute(`aria-posinset`,o),s.setAttribute(`aria-setsize`,r),this._alignRowWidth(s))}this._announceCharacters()}_announceCharacters(){this._charsToAnnounce.length!==0&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce=``)}_handleBoundaryFocus(e,t){let n=e.target,r=this._rowElements[t===0?1:this._rowElements.length-2];if(n.getAttribute(`aria-posinset`)===(t===0?`1`:`${this._terminal.buffer.lines.length}`)||e.relatedTarget!==r)return;let i,a;if(t===0?(i=n,a=this._rowElements.pop(),this._rowContainer.removeChild(a)):(i=this._rowElements.shift(),a=n,this._rowContainer.removeChild(i)),i.removeEventListener(`focus`,this._topBoundaryFocusListener),a.removeEventListener(`focus`,this._bottomBoundaryFocusListener),t===0){let e=this._createAccessibilityTreeNode();this._rowElements.unshift(e),this._rowContainer.insertAdjacentElement(`afterbegin`,e)}else{let e=this._createAccessibilityTreeNode();this._rowElements.push(e),this._rowContainer.appendChild(e)}this._rowElements[0].addEventListener(`focus`,this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener(`focus`,this._bottomBoundaryFocusListener),this._terminal.scrollLines(t===0?-1:1),this._rowElements[t===0?1:this._rowElements.length-2].focus(),e.preventDefault(),e.stopImmediatePropagation()}_handleSelectionChange(){if(this._rowElements.length===0)return;let e=this._coreBrowserService.mainDocument.getSelection();if(!e)return;if(e.isCollapsed){this._rowContainer.contains(e.anchorNode)&&this._terminal.clearSelection();return}if(!e.anchorNode||!e.focusNode){console.error(`anchorNode and/or focusNode are null`);return}let t={node:e.anchorNode,offset:e.anchorOffset},n={node:e.focusNode,offset:e.focusOffset};if((t.node.compareDocumentPosition(n.node)&Node.DOCUMENT_POSITION_PRECEDING||t.node===n.node&&t.offset>n.offset)&&([t,n]=[n,t]),t.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(t={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(t.node))return;let r=this._rowElements.slice(-1)[0];if(n.node.compareDocumentPosition(r)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(n={node:r,offset:r.textContent?.length??0}),!this._rowContainer.contains(n.node))return;let i=({node:e,offset:t})=>{let n=e instanceof Text?e.parentNode:e,r=parseInt(n?.getAttribute(`aria-posinset`),10)-1;if(isNaN(r))return console.warn(`row is invalid. Race condition?`),null;let i=this._rowColumns.get(n);if(!i)return console.warn(`columns is null. Race condition?`),null;let a=t<i.length?i[t]:i.slice(-1)[0]+1;return a>=this._terminal.cols&&(++r,a=0),{row:r,column:a}},a=i(t),o=i(n);if(!(!a||!o)){if(a.row>o.row||a.row===o.row&&a.column>=o.column)throw Error(`invalid range`);this._terminal.select(a.column,a.row,(o.row-a.row)*this._terminal.cols-a.column+o.column)}}_handleResize(e){this._rowElements[this._rowElements.length-1].removeEventListener(`focus`,this._bottomBoundaryFocusListener);for(let e=this._rowContainer.children.length;e<this._terminal.rows;e++)this._rowElements[e]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[e]);for(;this._rowElements.length>e;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener(`focus`,this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){let e=this._coreBrowserService.mainDocument.createElement(`div`);return e.setAttribute(`role`,`listitem`),e.tabIndex=-1,this._refreshRowDimensions(e),e}_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 e=0;e<this._terminal.rows;e++)this._refreshRowDimensions(this._rowElements[e]),this._alignRowWidth(this._rowElements[e])}}_refreshRowDimensions(e){e.style.height=`${this._renderService.dimensions.css.cell.height}px`}_alignRowWidth(e){e.style.transform=``;let t=e.getBoundingClientRect().width,n=this._rowColumns.get(e)?.slice(-1)?.[0];if(!n)return;let r=n*this._renderService.dimensions.css.cell.width;e.style.transform=`scaleX(${r/t})`}};ac=S([C(1,qe),C(2,tt),C(3,rt)],ac);var oc=class extends M{constructor(e,t,n,r,i){super(),this._element=e,this._mouseService=t,this._renderService=n,this._bufferService=r,this._linkProviderService=i,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this._register(new P),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this._register(new P),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this._register(j(()=>{It(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(F(this._element,`mouseleave`,()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(F(this._element,`mousemove`,this._handleMouseMove.bind(this))),this._register(F(this._element,`mousedown`,this._handleMouseDown.bind(this))),this._register(F(this._element,`mouseup`,this._handleMouseUp.bind(this)))}get currentLink(){return this._currentLink}_handleMouseMove(e){this._lastMouseEvent=e;let t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(!t)return;this._isMouseOut=!1;let n=e.composedPath();for(let e=0;e<n.length;e++){let t=n[e];if(t.classList.contains(`xterm`))break;if(t.classList.contains(`xterm-hover`))return}(!this._lastBufferCell||t.x!==this._lastBufferCell.x||t.y!==this._lastBufferCell.y)&&(this._handleHover(t),this._lastBufferCell=t)}_handleHover(e){if(this._activeLine!==e.y||this._wasResized){this._clearCurrentLink(),this._askForLink(e,!1),this._wasResized=!1;return}this._currentLink&&this._linkAtPosition(this._currentLink.link,e)||(this._clearCurrentLink(),this._askForLink(e,!0))}_askForLink(e,t){(!this._activeProviderReplies||!t)&&(this._activeProviderReplies?.forEach(e=>{e?.forEach(e=>{e.link.dispose&&e.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=e.y);let n=!1;for(let[r,i]of this._linkProviderService.linkProviders.entries())t?this._activeProviderReplies?.get(r)&&(n=this._checkLinkProviderResult(r,e,n)):i.provideLinks(e.y,t=>{if(this._isMouseOut)return;let i=t?.map(e=>({link:e}));this._activeProviderReplies?.set(r,i),n=this._checkLinkProviderResult(r,e,n),this._activeProviderReplies?.size===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(e.y,this._activeProviderReplies)})}_removeIntersectingLinks(e,t){let n=new Set;for(let r=0;r<t.size;r++){let i=t.get(r);if(i)for(let t=0;t<i.length;t++){let r=i[t],a=r.link.range.start.y<e?0:r.link.range.start.x,o=r.link.range.end.y>e?this._bufferService.cols:r.link.range.end.x;for(let e=a;e<=o;e++){if(n.has(e)){i.splice(t--,1);break}n.add(e)}}}}_checkLinkProviderResult(e,t,n){if(!this._activeProviderReplies)return n;let r=this._activeProviderReplies.get(e),i=!1;for(let t=0;t<e;t++)(!this._activeProviderReplies.has(t)||this._activeProviderReplies.get(t))&&(i=!0);if(!i&&r){let e=r.find(e=>this._linkAtPosition(e.link,t));e&&(n=!0,this._handleNewLink(e))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!n)for(let e=0;e<this._activeProviderReplies.size;e++){let r=this._activeProviderReplies.get(e)?.find(e=>this._linkAtPosition(e.link,t));if(r){n=!0,this._handleNewLink(r);break}}return n}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(e){if(!this._currentLink)return;let t=this._positionFromMouseEvent(e,this._element,this._mouseService);t&&this._mouseDownLink&&sc(this._mouseDownLink.link,this._currentLink.link)&&this._linkAtPosition(this._currentLink.link,t)&&this._currentLink.link.activate(e,this._currentLink.link.text)}_clearCurrentLink(e,t){!this._currentLink||!this._lastMouseEvent||(!e||!t||this._currentLink.link.range.start.y>=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,It(this._linkCacheDisposables),this._linkCacheDisposables.length=0)}_handleNewLink(e){if(!this._lastMouseEvent)return;let t=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);t&&this._linkAtPosition(e.link,t)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:e.link.decorations===void 0?!0:e.link.decorations.underline,pointerCursor:e.link.decorations===void 0?!0:e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:()=>this._currentLink?.state?.decorations.pointerCursor,set:e=>{this._currentLink?.state&&this._currentLink.state.decorations.pointerCursor!==e&&(this._currentLink.state.decorations.pointerCursor=e,this._currentLink.state.isHovered&&this._element.classList.toggle(`xterm-cursor-pointer`,e))}},underline:{get:()=>this._currentLink?.state?.decorations.underline,set:t=>{this._currentLink?.state&&this._currentLink?.state?.decorations.underline!==t&&(this._currentLink.state.decorations.underline=t,this._currentLink.state.isHovered&&this._fireUnderlineEvent(e.link,t))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange(e=>{if(!this._currentLink)return;let t=e.start===0?0:e.start+1+this._bufferService.buffer.ydisp,n=this._bufferService.buffer.ydisp+1+e.end;if(this._currentLink.link.range.start.y>=t&&this._currentLink.link.range.end.y<=n&&(this._clearCurrentLink(t,n),this._lastMouseEvent)){let e=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);e&&this._askForLink(e,!1)}})))}_linkHover(e,t,n){this._currentLink?.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add(`xterm-cursor-pointer`)),t.hover&&t.hover(n,t.text)}_fireUnderlineEvent(e,t){let n=e.range,r=this._bufferService.buffer.ydisp,i=this._createLinkUnderlineEvent(n.start.x-1,n.start.y-r-1,n.end.x,n.end.y-r-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(i)}_linkLeave(e,t,n){this._currentLink?.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove(`xterm-cursor-pointer`)),t.leave&&t.leave(n,t.text)}_linkAtPosition(e,t){let n=e.range.start.y*this._bufferService.cols+e.range.start.x,r=e.range.end.y*this._bufferService.cols+e.range.end.x,i=t.y*this._bufferService.cols+t.x;return n<=i&&i<=r}_positionFromMouseEvent(e,t,n){let r=n.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(r)return{x:r[0],y:r[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(e,t,n,r,i){return{x1:e,y1:t,x2:n,y2:r,cols:this._bufferService.cols,fg:i}}};oc=S([C(1,nt),C(2,rt),C(3,k),C(4,st)],oc);function sc(e,t){return e.text===t.text&&e.range.start.x===t.range.start.x&&e.range.start.y===t.range.start.y&&e.range.end.x===t.range.end.x&&e.range.end.y===t.range.end.y}var cc=class extends qs{constructor(e={}){super(e),this._linkifier=this._register(new Bt),this.browser=Ta,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new Bt),this._onCursorMove=this._register(new P),this.onCursorMove=this._onCursorMove.event,this._onKey=this._register(new P),this.onKey=this._onKey.event,this._onRender=this._register(new P),this.onRender=this._onRender.event,this._onSelectionChange=this._register(new P),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this._register(new P),this.onTitleChange=this._onTitleChange.event,this._onBell=this._register(new P),this.onBell=this._onBell.event,this._onFocus=this._register(new P),this._onBlur=this._register(new P),this._onA11yCharEmitter=this._register(new P),this._onA11yTabEmitter=this._register(new P),this._onWillOpen=this._register(new P),this._setup(),this._decorationService=this._instantiationService.createInstance($s),this._instantiationService.setService(Ze,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(ba),this._instantiationService.setService(st,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(Qe)),this._register(this._inputHandler.onRequestBell(()=>this._onBell.fire())),this._register(this._inputHandler.onRequestRefreshRows(e=>this.refresh(e?.start??0,e?.end??this.rows-1))),this._register(this._inputHandler.onRequestSendFocus(()=>this._reportFocus())),this._register(this._inputHandler.onRequestReset(()=>this.reset())),this._register(this._inputHandler.onRequestWindowsOptionsReport(e=>this._reportWindowsOptions(e))),this._register(this._inputHandler.onColor(e=>this._handleColorEvent(e))),this._register(Yt.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register(Yt.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register(Yt.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register(Yt.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(e=>this._afterResize(e.cols,e.rows))),this._register(j(()=>{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(e){if(this._themeService)for(let t of e){let e,n=``;switch(t.index){case 256:e=`foreground`,n=`10`;break;case 257:e=`background`,n=`11`;break;case 258:e=`cursor`,n=`12`;break;default:e=`ansi`,n=`4;`+t.index}switch(t.type){case 0:let r=U.toColorRGB(e===`ansi`?this._themeService.colors.ansi[t.index]:this._themeService.colors[e]);this.coreService.triggerDataEvent(`${L.ESC}]${n};${js(r)}${Vi.ST}`);break;case 1:if(e===`ansi`)this._themeService.modifyColors(e=>e.ansi[t.index]=H.toColor(...t.color));else{let n=e;this._themeService.modifyColors(e=>e[n]=H.toColor(...t.color))}break;case 2:this._themeService.restoreColor(t.index);break}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(e){e?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(ac,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(e){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(L.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(L.ESC+`[O`),this.element.classList.remove(`focus`),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;let e=this.buffer.ybase+this.buffer.y,t=this.buffer.lines.get(e);if(!t)return;let n=Math.min(this.buffer.x,this.cols-1),r=this._renderService.dimensions.css.cell.height,i=t.getWidth(n),a=this._renderService.dimensions.css.cell.width*i,o=this.buffer.y*this._renderService.dimensions.css.cell.height,s=n*this._renderService.dimensions.css.cell.width;this.textarea.style.left=s+`px`,this.textarea.style.top=o+`px`,this.textarea.style.width=a+`px`,this.textarea.style.height=r+`px`,this.textarea.style.lineHeight=r+`px`,this.textarea.style.zIndex=`-5`}_initGlobal(){this._bindKeys(),this._register(F(this.element,`copy`,e=>{this.hasSelection()&&ke(e,this._selectionService)}));let e=e=>Ae(e,this.textarea,this.coreService,this.optionsService);this._register(F(this.textarea,`paste`,e)),this._register(F(this.element,`paste`,e)),ka?this._register(F(this.element,`mousedown`,e=>{e.button===2&&Me(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(F(this.element,`contextmenu`,e=>{Me(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),La&&this._register(F(this.element,`auxclick`,e=>{e.button===1&&je(e,this.textarea,this.screenElement)}))}_bindKeys(){this._register(F(this.textarea,`keyup`,e=>this._keyUp(e),!0)),this._register(F(this.textarea,`keydown`,e=>this._keyDown(e),!0)),this._register(F(this.textarea,`keypress`,e=>this._keyPress(e),!0)),this._register(F(this.textarea,`compositionstart`,()=>this._compositionHelper.compositionstart())),this._register(F(this.textarea,`compositionupdate`,e=>this._compositionHelper.compositionupdate(e))),this._register(F(this.textarea,`compositionend`,()=>this._compositionHelper.compositionend())),this._register(F(this.textarea,`input`,e=>this._inputEvent(e),!0)),this._register(this.onRender(()=>this._compositionHelper.updateCompositionElements()))}open(e){if(!e)throw Error(`Terminal requires a parent element.`);if(e.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=e.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`),e.appendChild(this.element);let t=this._document.createDocumentFragment();this._viewportElement=this._document.createElement(`div`),this._viewportElement.classList.add(`xterm-viewport`),t.appendChild(this._viewportElement),this.screenElement=this._document.createElement(`div`),this.screenElement.classList.add(`xterm-screen`),this._register(F(this.screenElement,`mousemove`,e=>this.updateCursorStyle(e))),this._helperContainer=this._document.createElement(`div`),this._helperContainer.classList.add(`xterm-helpers`),this.screenElement.appendChild(this._helperContainer),t.appendChild(this.screenElement);let n=this.textarea=this._document.createElement(`textarea`);this.textarea.classList.add(`xterm-helper-textarea`),this.textarea.setAttribute(`aria-label`,we.get()),Ra||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`,()=>n.readOnly=this.optionsService.rawOptions.disableStdin)),this.textarea.readOnly=this.optionsService.rawOptions.disableStdin,this._coreBrowserService=this._register(this._instantiationService.createInstance(va,this.textarea,e.ownerDocument.defaultView??window,this._document??typeof window<`u`?window.document:null)),this._instantiationService.setService(tt,this._coreBrowserService),this._register(F(this.textarea,`focus`,e=>this._handleTextAreaFocus(e))),this._register(F(this.textarea,`blur`,()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(ma,this._document,this._helperContainer),this._instantiationService.setService(et,this._charSizeService),this._themeService=this._instantiationService.createInstance(So),this._instantiationService.setService(ot,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(Yi),this._instantiationService.setService(at,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(Wa,this.rows,this.screenElement)),this._instantiationService.setService(rt,this._renderService),this._register(this._renderService.onRenderedViewportChange(e=>this._onRender.fire(e))),this.onResize(e=>this._renderService.resize(e.cols,e.rows)),this._compositionView=this._document.createElement(`div`),this._compositionView.classList.add(`composition-view`),this._compositionHelper=this._instantiationService.createInstance(Hi,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(Ca),this._instantiationService.setService(nt,this._mouseService);let r=this._linkifier.value=this._register(this._instantiationService.createInstance(oc,this.screenElement));this.element.appendChild(t);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(Ni,this.element,this.screenElement)),this._register(this._viewport.onRequestScrollLines(e=>{super.scrollLines(e,!1),this.refresh(0,this.rows-1)})),this._selectionService=this._register(this._instantiationService.createInstance(po,this.element,this.screenElement,r)),this._instantiationService.setService(it,this._selectionService),this._register(this._selectionService.onRequestScrollLines(e=>this.scrollLines(e.amount,e.suppressScrollEvent))),this._register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this._register(this._selectionService.onRequestRedraw(e=>this._renderService.handleSelectionChanged(e.start,e.end,e.columnSelectMode))),this._register(this._selectionService.onLinuxMouseSelection(e=>{this.textarea.value=e,this.textarea.focus(),this.textarea.select()})),this._register(Yt.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{this._selectionService.refresh(),this._viewport?.queueSync()})),this._register(this._instantiationService.createInstance(Pi,this.screenElement)),this._register(F(this.element,`mousedown`,e=>this._selectionService.handleMouseDown(e))),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(ac,this)),this._register(this.optionsService.onSpecificOptionChange(`screenReaderMode`,e=>this._handleScreenReaderModeOptionChange(e))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(zi,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange(`overviewRuler`,e=>{!this._overviewRulerRenderer&&e&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(zi,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(pa,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){let e=this,t=this.element;function n(t){let n=e._mouseService.getMouseReportCoords(t,e.screenElement);if(!n)return!1;let r,i;switch(t.overrideType||t.type){case`mousemove`:i=32,t.buttons===void 0?(r=3,t.button!==void 0&&(r=t.button<3?t.button:3)):r=t.buttons&1?0:t.buttons&4?1:t.buttons&2?2:3;break;case`mouseup`:i=0,r=t.button<3?t.button:3;break;case`mousedown`:i=1,r=t.button<3?t.button:3;break;case`wheel`:if(e._customWheelEventHandler&&e._customWheelEventHandler(t)===!1)return!1;let n=t.deltaY;if(n===0||e.coreMouseService.consumeWheelEvent(t,e._renderService?.dimensions?.device?.cell?.height,e._coreBrowserService?.dpr)===0)return!1;i=n<0?0:1,r=4;break;default:return!1}return i===void 0||r===void 0||r>4?!1:e.coreMouseService.triggerMouseEvent({col:n.col,row:n.row,x:n.x,y:n.y,button:r,action:i,ctrl:t.ctrlKey,alt:t.altKey,shift:t.shiftKey})}let r={mouseup:null,wheel:null,mousedrag:null,mousemove:null},i={mouseup:e=>(n(e),e.buttons||(this._document.removeEventListener(`mouseup`,r.mouseup),r.mousedrag&&this._document.removeEventListener(`mousemove`,r.mousedrag)),this.cancel(e)),wheel:e=>(n(e),this.cancel(e,!0)),mousedrag:e=>{e.buttons&&n(e)},mousemove:e=>{e.buttons||n(e)}};this._register(this.coreMouseService.onProtocolChange(e=>{e?(this.optionsService.rawOptions.logLevel===`debug`&&this._logService.debug(`Binding to mouse events:`,this.coreMouseService.explainEvents(e)),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()),e&8?r.mousemove||=(t.addEventListener(`mousemove`,i.mousemove),i.mousemove):(t.removeEventListener(`mousemove`,r.mousemove),r.mousemove=null),e&16?r.wheel||=(t.addEventListener(`wheel`,i.wheel,{passive:!1}),i.wheel):(t.removeEventListener(`wheel`,r.wheel),r.wheel=null),e&2?r.mouseup||=i.mouseup:(this._document.removeEventListener(`mouseup`,r.mouseup),r.mouseup=null),e&4?r.mousedrag||=i.mousedrag:(this._document.removeEventListener(`mousemove`,r.mousedrag),r.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this._register(F(t,`mousedown`,e=>{if(e.preventDefault(),this.focus(),!(!this.coreMouseService.areMouseEventsActive||this._selectionService.shouldForceSelection(e)))return n(e),r.mouseup&&this._document.addEventListener(`mouseup`,r.mouseup),r.mousedrag&&this._document.addEventListener(`mousemove`,r.mousedrag),this.cancel(e)})),this._register(F(t,`wheel`,t=>{if(!r.wheel){if(this._customWheelEventHandler&&this._customWheelEventHandler(t)===!1)return!1;if(!this.buffer.hasScrollback){if(t.deltaY===0)return!1;if(e.coreMouseService.consumeWheelEvent(t,e._renderService?.dimensions?.device?.cell?.height,e._coreBrowserService?.dpr)===0)return this.cancel(t,!0);let n=L.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?`O`:`[`)+(t.deltaY<0?`A`:`B`);return this.coreService.triggerDataEvent(n,!0),this.cancel(t,!0)}}},{passive:!1}))}refresh(e,t){this._renderService?.refreshRows(e,t)}updateCursorStyle(e){this._selectionService?.shouldColumnSelect(e)?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(e,t){this._viewport?this._viewport.scrollLines(e):super.scrollLines(e,t),this.refresh(0,this.rows-1)}scrollPages(e){this.scrollLines(e*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(e){e&&this._viewport?this._viewport.scrollToLine(this.buffer.ybase,!0):this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(e){let t=e-this._bufferService.buffer.ydisp;t!==0&&this.scrollLines(t)}paste(e){w(e,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(e){this._customKeyEventHandler=e}attachCustomWheelEventHandler(e){this._customWheelEventHandler=e}registerLinkProvider(e){return this._linkProviderService.registerLinkProvider(e)}registerCharacterJoiner(e){if(!this._characterJoinerService)throw Error(`Terminal must be opened first`);let t=this._characterJoinerService.register(e);return this.refresh(0,this.rows-1),t}deregisterCharacterJoiner(e){if(!this._characterJoinerService)throw Error(`Terminal must be opened first`);this._characterJoinerService.deregister(e)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(e){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+e)}registerDecoration(e){return this._decorationService.registerDecoration(e)}hasSelection(){return this._selectionService?this._selectionService.hasSelection:!1}select(e,t,n){this._selectionService.setSelection(e,t,n)}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(e,t){this._selectionService?.selectLines(e,t)}_keyDown(e){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)return!1;let t=this.browser.isMac&&this.options.macOptionIsMeta&&e.altKey;if(!t&&!this._compositionHelper.keydown(e))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(!0),!1;!t&&(e.key===`Dead`||e.key===`AltGraph`)&&(this._unprocessedDeadKey=!0);let n=Ys(e,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(e),n.type===3||n.type===2){let t=this.rows-1;return this.scrollLines(n.type===2?-t:t),this.cancel(e,!0)}if(n.type===1&&this.selectAll(),this._isThirdLevelShift(this.browser,e)||(n.cancel&&this.cancel(e,!0),!n.key)||e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.key.length===1&&e.key.charCodeAt(0)>=65&&e.key.charCodeAt(0)<=90)return!0;if(this._unprocessedDeadKey)return this._unprocessedDeadKey=!1,!0;if((n.key===L.ETX||n.key===L.CR)&&(this.textarea.value=``),this._onKey.fire({key:n.key,domEvent:e}),this._showCursor(),this.coreService.triggerDataEvent(n.key,!0),!this.optionsService.rawOptions.screenReaderMode||e.altKey||e.ctrlKey)return this.cancel(e,!0);this._keyDownHandled=!0}_isThirdLevelShift(e,t){let n=e.isMac&&!this.options.macOptionIsMeta&&t.altKey&&!t.ctrlKey&&!t.metaKey||e.isWindows&&t.altKey&&t.ctrlKey&&!t.metaKey||e.isWindows&&t.getModifierState(`AltGraph`);return t.type===`keypress`?n:n&&(!t.keyCode||t.keyCode>47)}_keyUp(e){this._keyDownSeen=!1,!(this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)&&(lc(e)||this.focus(),this.updateCursorStyle(e),this._keyPressHandled=!1)}_keyPress(e){let t;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(e.which===null||e.which===void 0)t=e.keyCode;else if(e.which!==0&&e.charCode!==0)t=e.which;else return!1;return!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)?!1:(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this.coreService.triggerDataEvent(t,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,!0)}_inputEvent(e){if(e.data&&e.inputType===`insertText`&&(!e.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;let t=e.data;return this.coreService.triggerDataEvent(t,!0),this.cancel(e),!0}return!1}resize(e,t){if(e===this.cols&&t===this.rows){this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure();return}super.resize(e,t)}_afterResize(e,t){this._charSizeService?.measure()}clear(){if(!(this.buffer.ybase===0&&this.buffer.y===0)){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 e=1;e<this.rows;e++)this.buffer.lines.push(this.buffer.getBlankLine(J));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 e=this._customKeyEventHandler;this._setup(),super.reset(),this._selectionService?.reset(),this._decorationService.reset(),this._customKeyEventHandler=e,this.refresh(0,this.rows-1)}clearTextureAtlas(){this._renderService?.clearTextureAtlas()}_reportFocus(){this.element?.classList.contains(`focus`)?this.coreService.triggerDataEvent(L.ESC+`[I`):this.coreService.triggerDataEvent(L.ESC+`[O`)}_reportWindowsOptions(e){if(this._renderService)switch(e){case 0:let e=this._renderService.dimensions.css.canvas.width.toFixed(0),t=this._renderService.dimensions.css.canvas.height.toFixed(0);this.coreService.triggerDataEvent(`${L.ESC}[4;${t};${e}t`);break;case 1:let n=this._renderService.dimensions.css.cell.width.toFixed(0),r=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${L.ESC}[6;${r};${n}t`);break}}cancel(e,t){if(!(!this.options.cancelEvents&&!t))return e.preventDefault(),e.stopPropagation(),!1}};function lc(e){return e.keyCode===16||e.keyCode===17||e.keyCode===18}var uc=class{constructor(){this._addons=[]}dispose(){for(let e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()}loadAddon(e,t){let n={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(n),t.dispose=()=>this._wrappedAddonDispose(n),t.activate(e)}_wrappedAddonDispose(e){if(e.isDisposed)return;let t=-1;for(let n=0;n<this._addons.length;n++)if(this._addons[n]===e){t=n;break}if(t===-1)throw Error(`Could not dispose an addon that has not been loaded`);e.isDisposed=!0,e.dispose.apply(e.instance),this._addons.splice(t,1)}},dc=class{constructor(e){this._line=e}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(e,t){if(!(e<0||e>=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new D)}translateToString(e,t,n){return this._line.translateToString(e,t,n)}},fc=class{constructor(e,t){this._buffer=e,this.type=t}init(e){return this._buffer=e,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(e){let t=this._buffer.lines.get(e);if(t)return new dc(t)}getNullCell(){return new D}},pc=class extends M{constructor(e){super(),this._core=e,this._onBufferChange=this._register(new P),this.onBufferChange=this._onBufferChange.event,this._normal=new fc(this._core.buffers.normal,`normal`),this._alternate=new fc(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)}},mc=class{constructor(e){this._core=e}registerCsiHandler(e,t){return this._core.registerCsiHandler(e,e=>t(e.toArray()))}addCsiHandler(e,t){return this.registerCsiHandler(e,t)}registerDcsHandler(e,t){return this._core.registerDcsHandler(e,(e,n)=>t(e,n.toArray()))}addDcsHandler(e,t){return this.registerDcsHandler(e,t)}registerEscHandler(e,t){return this._core.registerEscHandler(e,t)}addEscHandler(e,t){return this.registerEscHandler(e,t)}registerOscHandler(e,t){return this._core.registerOscHandler(e,t)}addOscHandler(e,t){return this.registerOscHandler(e,t)}},hc=class{constructor(e){this._core=e}register(e){this._core.unicodeService.register(e)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(e){this._core.unicodeService.activeVersion=e}},gc=[`cols`,`rows`],_c=0,vc=class extends M{constructor(e){super(),this._core=this._register(new cc(e)),this._addonManager=this._register(new uc),this._publicOptions={...this._core.options};let t=e=>this._core.options[e],n=(e,t)=>{this._checkReadonlyOptions(e),this._core.options[e]=t};for(let e in this._core.options){let r={get:t.bind(this,e),set:n.bind(this,e)};Object.defineProperty(this._publicOptions,e,r)}}_checkReadonlyOptions(e){if(gc.includes(e))throw Error(`Option "${e}" 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||=new mc(this._core),this._parser}get unicode(){return this._checkProposedApi(),new hc(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._register(new pc(this._core)),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){let e=this._core.coreService.decPrivateModes,t=`none`;switch(this._core.coreMouseService.activeProtocol){case`X10`:t=`x10`;break;case`VT200`:t=`vt200`;break;case`DRAG`:t=`drag`;break;case`ANY`:t=`any`;break}return{applicationCursorKeysMode:e.applicationCursorKeys,applicationKeypadMode:e.applicationKeypad,bracketedPasteMode:e.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:t,originMode:e.origin,reverseWraparoundMode:e.reverseWraparound,sendFocusMode:e.sendFocus,synchronizedOutputMode:e.synchronizedOutput,wraparoundMode:e.wraparound}}get options(){return this._publicOptions}set options(e){for(let t in e)this._publicOptions[t]=e[t]}blur(){this._core.blur()}focus(){this._core.focus()}input(e,t=!0){this._core.input(e,t)}resize(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)}open(e){this._core.open(e)}attachCustomKeyEventHandler(e){this._core.attachCustomKeyEventHandler(e)}attachCustomWheelEventHandler(e){this._core.attachCustomWheelEventHandler(e)}registerLinkProvider(e){return this._core.registerLinkProvider(e)}registerCharacterJoiner(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)}deregisterCharacterJoiner(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)}registerMarker(e=0){return this._verifyIntegers(e),this._core.registerMarker(e)}registerDecoration(e){return this._checkProposedApi(),this._verifyPositiveIntegers(e.x??0,e.width??0,e.height??0),this._core.registerDecoration(e)}hasSelection(){return this._core.hasSelection()}select(e,t,n){this._verifyIntegers(e,t,n),this._core.select(e,t,n)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)}dispose(){super.dispose()}scrollLines(e){this._verifyIntegers(e),this._core.scrollLines(e)}scrollPages(e){this._verifyIntegers(e),this._core.scrollPages(e)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(e){this._verifyIntegers(e),this._core.scrollToLine(e)}clear(){this._core.clear()}write(e,t){this._core.write(e,t)}writeln(e,t){this._core.write(e),this._core.write(`\r
|
|
36
36
|
`,t)}paste(e){this._core.paste(e)}refresh(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(e){this._addonManager.loadAddon(this,e)}static get strings(){return{get promptLabel(){return we.get()},set promptLabel(e){we.set(e)},get tooMuchOutput(){return Ee.get()},set tooMuchOutput(e){Ee.set(e)}}}_verifyIntegers(...e){for(_c of e)if(_c===1/0||isNaN(_c)||_c%1!=0)throw Error(`This API only accepts integers`)}_verifyPositiveIntegers(...e){for(_c of e)if(_c&&(_c===1/0||isNaN(_c)||_c%1!=0||_c<0))throw Error(`This API only accepts positive integers`)}},Q=e(t(),1),$=d(),yc=180,bc=.75,xc=260,Sc=`"SF Mono", "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace`;function Cc(){return typeof document>`u`||typeof getComputedStyle>`u`?Sc:getComputedStyle(document.documentElement).getPropertyValue(`--font-family-mono`).trim()||Sc}function wc(){return typeof window>`u`?280:Math.max(yc,Math.floor(window.innerHeight*bc))}function Tc(e){let t=Number.isFinite(e)?e:280,n=wc();return Math.min(Math.max(Math.round(t),yc),n)}function Ec(e,t){e.write(`\r\n[terminal] ${t}\r\n`)}function Dc(e,t){e.write(`\x1Bc`),t.history.length>0&&e.write(t.history)}function Oc(e){if(typeof window<`u`&&typeof window.requestAnimationFrame==`function`){let t=window.requestAnimationFrame(e);return()=>{window.cancelAnimationFrame(t)}}let t=setTimeout(e,0);return()=>{clearTimeout(t)}}function kc(e){let t=e.requestFlush??Oc,n=``,r=null,i=()=>{if(r!==null&&(r(),r=null),n.length===0)return;let t=n;n=``,e.write(t)},a=()=>{r=null,i()},o=()=>{r===null&&(r=t(a))};return{writeOutput:e=>{e.length!==0&&(n+=e,o())},flush:i,dispose:i}}function Ac(e,t){return e.filter(e=>e.event.createdAt>t)}function jc(e,t){return e.filter(e=>e.id>t)}function Mc(e,t){return e.terminalIds.length>1?`Split ${t}`:`Terminal ${t}`}function Nc(e,t){if(t.length===0)return!1;let n=new Set(t);return e.terminalIds.some(e=>n.has(e))}function Pc(e,t){let n=e?.trim().toLowerCase();return!n||n===`transparent`||n===`rgba(0, 0, 0, 0)`||n===`rgba(0 0 0 / 0)`?t:e??t}function Fc(e){let t=document.documentElement.classList.contains(`dark`),n=t?`rgb(14, 18, 24)`:`rgb(255, 255, 255)`,r=t?`rgb(237, 241, 247)`:`rgb(28, 33, 41)`,i=e?.closest(`.thread-terminal-drawer`)??document.querySelector(`.thread-terminal-drawer`)??document.body,a=getComputedStyle(i),o=getComputedStyle(document.body),s=Pc(a.backgroundColor,Pc(o.backgroundColor,n)),c=Pc(a.color,Pc(o.color,r));return t?{background:s,foreground:c,cursor:`rgb(180, 203, 255)`,selectionBackground:`rgba(180, 203, 255, 0.25)`,scrollbarSliderBackground:`rgba(255, 255, 255, 0.1)`,scrollbarSliderHoverBackground:`rgba(255, 255, 255, 0.18)`,scrollbarSliderActiveBackground:`rgba(255, 255, 255, 0.22)`,black:`rgb(24, 30, 38)`,red:`rgb(255, 122, 142)`,green:`rgb(134, 231, 149)`,yellow:`rgb(244, 205, 114)`,blue:`rgb(137, 190, 255)`,magenta:`rgb(208, 176, 255)`,cyan:`rgb(124, 232, 237)`,white:`rgb(210, 218, 230)`,brightBlack:`rgb(110, 120, 136)`,brightRed:`rgb(255, 168, 180)`,brightGreen:`rgb(176, 245, 186)`,brightYellow:`rgb(255, 224, 149)`,brightBlue:`rgb(174, 210, 255)`,brightMagenta:`rgb(229, 203, 255)`,brightCyan:`rgb(167, 244, 247)`,brightWhite:`rgb(244, 247, 252)`}:{background:s,foreground:c,cursor:`rgb(38, 56, 78)`,selectionBackground:`rgba(37, 63, 99, 0.2)`,scrollbarSliderBackground:`rgba(0, 0, 0, 0.15)`,scrollbarSliderHoverBackground:`rgba(0, 0, 0, 0.25)`,scrollbarSliderActiveBackground:`rgba(0, 0, 0, 0.3)`,black:`rgb(44, 53, 66)`,red:`rgb(191, 70, 87)`,green:`rgb(60, 126, 86)`,yellow:`rgb(146, 112, 35)`,blue:`rgb(72, 102, 163)`,magenta:`rgb(132, 86, 149)`,cyan:`rgb(53, 127, 141)`,white:`rgb(210, 215, 223)`,brightBlack:`rgb(112, 123, 140)`,brightRed:`rgb(212, 95, 112)`,brightGreen:`rgb(85, 148, 111)`,brightYellow:`rgb(173, 133, 45)`,brightBlue:`rgb(91, 124, 194)`,brightMagenta:`rgb(153, 107, 172)`,brightCyan:`rgb(70, 149, 164)`,brightWhite:`rgb(236, 240, 246)`}}function Ic(e){let t=window.getSelection();if(!t||t.rangeCount===0||t.isCollapsed)return null;let n=t.getRangeAt(0),r=n.commonAncestorContainer,i=r instanceof Element?r:r.parentElement;if(!(i instanceof Element)||!e.contains(i))return null;let a=Array.from(n.getClientRects()).filter(e=>e.width>0||e.height>0);if(a.length>0)return a[a.length-1]??null;let o=n.getBoundingClientRect();return o.width>0||o.height>0?o:null}function Lc(e){let{bounds:t,selectionRect:n,pointer:r,viewport:i}=e,a=i?.width??(typeof window>`u`?t.left+t.width+8:window.innerWidth),o=i?.height??(typeof window>`u`?t.top+t.height+8:window.innerHeight),s=Math.round(t.left),c=Math.round(t.top),l=Math.round(t.left+t.width),u=Math.round(t.top+t.height),d=n===null?r===null?Math.round(t.left+t.width-140):Math.max(s,Math.min(Math.round(r.x),l)):Math.round(n.right),f=n===null?r===null?Math.round(t.top+12):Math.max(c,Math.min(Math.round(r.y),u)):Math.round(n.bottom+4);return{x:Math.max(8,Math.min(d,Math.max(a-8,8))),y:Math.max(8,Math.min(f,Math.max(o-8,8)))}}function Rc(e){return e>=2?xc:0}function zc(e,t){return e&&t===0}function Bc({threadRef:e,threadId:t,terminalId:n,terminalLabel:d,cwd:f,worktreePath:p,runtimeEnv:m,onSessionExited:h,onAddTerminalContext:g,focusRequestId:ne,autoFocus:oe,resizeEpoch:se,drawerHeight:ce,keybindings:ge}){let _e=(0,Q.useRef)(null),x=(0,Q.useRef)(null),ve=(0,Q.useRef)(null),be=e.environmentId,xe=(0,Q.useRef)(!1),Se=(0,Q.useRef)(null),S=(0,Q.useRef)(!1),C=(0,Q.useRef)(0),Ce=(0,Q.useRef)(!1),we=(0,Q.useRef)(null),Te=(0,Q.useRef)(ge),Ee=(0,Q.useRef)(0),De=(0,Q.useRef)(!1),Oe=(0,Q.useEffectEvent)(()=>{h()}),ke=(0,Q.useEffectEvent)(e=>{g(e)}),Ae=(0,Q.useEffectEvent)(()=>d);return(0,Q.useEffect)(()=>{Te.current=ge},[ge]),(0,Q.useEffect)(()=>{let d=_e.current;if(!d)return;let h=!1,g=l(be),ne=o();if(!g||!ne)return;let se=new ye,ce=new vc({cursorBlink:!0,lineHeight:1.2,fontSize:12,scrollback:5e3,fontFamily:Cc(),theme:Fc(d)});ce.loadAddon(se),ce.open(d),se.fit(),x.current=ce,ve.current=se;let ge=kc({write:e=>{ce.write(e)}}),w=(e,t)=>{ge.flush(),Ec(e,t)},je=()=>{let e=Cc();ce.options.fontFamily!==e&&(ce.options.fontFamily=e,se.fit())};window.addEventListener(he,je);let Me=()=>{C.current+=1,we.current!==null&&(window.clearTimeout(we.current),we.current=null)},T=()=>{let e=x.current,t=_e.current;if(!e||!t||!e.hasSelection())return null;let r=e.getSelection(),i=e.getSelectionPosition(),a=r.replace(/\r\n/g,`
|
|
37
37
|
`).replace(/^\n+|\n+$/g,``);if(!i||a.length===0)return null;let o=i.start.y+1,s=a.split(`
|
|
38
|
-
`).length,c=Math.max(o,o+s-1),l=t.getBoundingClientRect(),u=Ic(t);return{position:Lc({bounds:l,selectionRect:u===null?null:{right:u.right,bottom:u.bottom},pointer:Se.current}),selection:{terminalId:n,terminalLabel:Ae(),lineStart:o,lineEnd:c,text:a}}},Ne=async()=>{if(Ce.current)return;let e=T();if(!e){Me();return}let t=++C.current;Ce.current=!0;try{let n=await ne.contextMenu.show([{id:`add-to-chat`,label:`Add to chat`}],e.position);if(t!==C.current||n!==`add-to-chat`)return;ke(e.selection),x.current?.clearSelection(),x.current?.focus()}finally{Ce.current=!1}},E=async(e,r)=>{let i=x.current;if(i)try{await g.terminal.write({threadId:t,terminalId:n,data:e})}catch(e){w(i,e instanceof Error?e.message:r)}};ce.attachCustomKeyEventHandler(e=>{let t=Te.current,n={context:{terminalFocus:!0,terminalOpen:!0}};if(y(e,t,n)||b(e,t,n)||ue(e,t,n)||le(e,t,n)||de(e,t,n))return!1;let r=v(e);if(r!==null)return e.preventDefault(),e.stopPropagation(),E(r,`Failed to move cursor`),!1;let i=pe(e);return i===null?fe(e)?(e.preventDefault(),e.stopPropagation(),E(`\f`,`Failed to clear terminal`),!1):!0:(e.preventDefault(),e.stopPropagation(),E(i,`Failed to delete terminal input`),!1)});let Pe=ce.registerLinkProvider({provideLinks:(e,t)=>{let n=x.current;if(!n){t(void 0);return}let r=re(e,e=>n.buffer.active.getLine(e));if(!r){t(void 0);return}let i=_(r.text).map(e=>({match:e,range:te(r,e)})).filter(({range:t})=>ee(t,e));if(i.length===0){t(void 0);return}t(i.map(({match:e,range:t})=>({text:e.text,range:t,activate:t=>{if(!ae(t))return;let n=x.current;if(n){if(e.kind===`url`){ne.shell.openExternal(e.text).catch(e=>{w(n,e instanceof Error?e.message:`Unable to open link`)});return}me(ne,ie(e.text,f)).catch(e=>{w(n,e instanceof Error?e.message:`Unable to open path`)})}}})))}}),Fe=ce.onData(e=>{g.terminal.write({threadId:t,terminalId:n,data:e}).catch(e=>w(ce,e instanceof Error?e.message:`Terminal write failed`))}),Ie=ce.onSelectionChange(()=>{x.current?.hasSelection()||Me()}),Le=e=>{let t=zc(S.current,e.button);if(S.current=!1,!t)return;Se.current={x:e.clientX,y:e.clientY};let n=Rc(e.detail);we.current=window.setTimeout(()=>{we.current=null,window.requestAnimationFrame(()=>{Ne()})},n)},Re=e=>{Me(),S.current=e.button===0};window.addEventListener(`mouseup`,Le),d.addEventListener(`pointerdown`,Re);let D=new MutationObserver(()=>{let e=x.current;e&&(e.options.theme=Fc(_e.current),e.refresh(0,e.rows-1))});D.observe(document.documentElement,{attributes:!0,attributeFilter:[`class`,`style`]});let ze=e=>{let t=r(),n=t?c():0,o=()=>{t&&i(`web.terminal.drawer.events.apply`,{...e.type===`output`?{bytes:a(e.data)}:{},durationMs:c()-n})},s=x.current;if(!s){o();return}if(e.type===`activity`){o();return}if(e.type===`output`){ge.writeOutput(e.data),Me(),o();return}if(ge.flush(),e.type===`started`||e.type===`restarted`){xe.current=!1,Me(),Dc(s,e.snapshot),o();return}if(e.type===`cleared`){Me(),s.clear(),s.write(`\x1Bc`),o();return}if(e.type===`error`){w(s,e.message),o();return}let l=[typeof e.exitCode==`number`?`code ${e.exitCode}`:null,typeof e.exitSignal==`number`?`signal ${e.exitSignal}`:null].filter(e=>e!==null).join(`, `);if(w(s,l.length>0?`Process exited (${l})`:`Process exited`),xe.current){o();return}xe.current=!0,window.setTimeout(()=>{xe.current&&Oe()},0),o()},Be=e=>{let t=jc(e,Ee.current);if(t.length!==0){for(let e of t)ze(e.event);Ee.current=t.at(-1)?.id??Ee.current}},Ve=u.subscribe((t,r)=>{if(!De.current)return;let i=s(r.terminalEventEntriesByKey,e,n).at(-1)?.id??0,a=s(t.terminalEventEntriesByKey,e,n);(a.at(-1)?.id??0)!==i&&Be(a)}),He=async()=>{try{let r=x.current,i=ve.current;if(!r||!i)return;i.fit();let a=await g.terminal.open({threadId:t,terminalId:n,cwd:f,...p===void 0?{}:{worktreePath:p},cols:r.cols,rows:r.rows,...m?{env:m}:{}});if(h)return;Dc(r,a);let o=s(u.getState().terminalEventEntriesByKey,e,n),c=Ac(o,a.updatedAt);for(let e of c)ze(e.event);Ee.current=o.at(-1)?.id??0,De.current=!0,oe&&window.requestAnimationFrame(()=>{r.focus()})}catch(e){if(h)return;w(ce,e instanceof Error?e.message:`Failed to open terminal`)}},O=window.setTimeout(()=>{let e=x.current,r=ve.current;if(!e||!r)return;let i=e.buffer.active.viewportY>=e.buffer.active.baseY;r.fit(),i&&e.scrollToBottom(),g.terminal.resize({threadId:t,terminalId:n,cols:e.cols,rows:e.rows}).catch(()=>void 0)},30);return He(),()=>{ge.dispose(),h=!0,De.current=!1,Ee.current=0,Ve(),window.clearTimeout(O),Fe.dispose(),Ie.dispose(),Pe.dispose(),we.current!==null&&window.clearTimeout(we.current),window.removeEventListener(`mouseup`,Le),d.removeEventListener(`pointerdown`,Re),D.disconnect(),window.removeEventListener(he,je),x.current=null,ve.current=null,ce.dispose()}},[f,be,m,n,t]),(0,Q.useEffect)(()=>{if(!oe)return;let e=x.current;if(!e)return;let t=window.requestAnimationFrame(()=>{e.focus()});return()=>{window.cancelAnimationFrame(t)}},[oe,ne]),(0,Q.useEffect)(()=>{let e=l(be),r=x.current,i=ve.current;if(!e||!r||!i)return;let a=r.buffer.active.viewportY>=r.buffer.active.baseY,o=window.requestAnimationFrame(()=>{i.fit(),a&&r.scrollToBottom(),e.terminal.resize({threadId:t,terminalId:n,cols:r.cols,rows:r.rows}).catch(()=>void 0)});return()=>{window.cancelAnimationFrame(o)}},[ce,be,se,n,t]),(0,$.jsx)(`div`,{ref:_e,className:`relative h-full w-full overflow-hidden rounded-[4px] bg-background`})}function Vc(e){let t=(0,_e.c)(12),{label:n,className:r,onClick:i,children:a}=e,o;t[0]!==r||t[1]!==n||t[2]!==i?(o=(0,$.jsx)(`button`,{type:`button`,className:r,onClick:i,"aria-label":n}),t[0]=r,t[1]=n,t[2]=i,t[3]=o):o=t[3];let s;t[4]!==a||t[5]!==o?(s=(0,$.jsx)(m,{openOnHover:!0,render:o,children:a}),t[4]=a,t[5]=o,t[6]=s):s=t[6];let c;t[7]===n?c=t[8]:(c=(0,$.jsx)(g,{tooltipStyle:!0,side:`bottom`,sideOffset:6,align:`center`,className:`pointer-events-none select-none`,children:n}),t[7]=n,t[8]=c);let l;return t[9]!==s||t[10]!==c?(l=(0,$.jsxs)(h,{children:[s,c]}),t[9]=s,t[10]=c,t[11]=l):l=t[11],l}function Hc(e){let t=(0,_e.c)(136),{threadRef:n,threadId:r,cwd:i,worktreePath:a,runtimeEnv:o,layout:s,visible:c,height:l,terminalIds:u,runningTerminalIds:d,activeTerminalId:f,terminalGroups:_,activeTerminalGroupId:ee,focusRequestId:te,onSplitTerminal:re,onNewTerminal:ie,splitShortcutLabel:ae,newShortcutLabel:v,closeShortcutLabel:le,onActiveTerminalChange:y,onCloseTerminal:ue,onHeightChange:de,onAddTerminalContext:fe,keybindings:b}=e,pe=s===void 0?`drawer`:s,me=c===void 0?!0:c,he;t[0]===l?he=t[1]:(he=()=>Tc(l),t[0]=l,t[1]=he);let[x,ve]=(0,Q.useState)(he),[ye,be]=(0,Q.useState)(0),xe;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(xe={width:0,x:0,visible:!1},t[2]=xe):xe=t[2];let[Se,S]=(0,Q.useState)(xe),C=(0,Q.useRef)(x),Ce=(0,Q.useRef)(null),we;t[3]===l?we=t[4]:(we=Tc(l),t[3]=l,t[4]=we);let Te=(0,Q.useRef)(we),Ee=(0,Q.useRef)(de),De=(0,Q.useRef)(null),Oe=(0,Q.useRef)(!1),ke;t[5]===u?ke=t[6]:(ke=new Set(u.map(Qc).filter(Zc)),t[5]=u,t[6]=ke);let Ae;if(t[7]!==ke){let e=[...ke];Ae=e.length>0?e:[p],t[7]=ke,t[8]=Ae}else Ae=t[8];let w=Ae,je;bb0:{if(d.length===0){let e;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],t[9]=e):e=t[9],je=e;break bb0}let e;t[10]===w?e=t[11]:(e=new Set(w),t[10]=w,t[11]=e);let n=e,r;if(t[12]!==d||t[13]!==n){let e;t[15]===n?e=t[16]:(e=e=>n.has(e),t[15]=n,t[16]=e),r=d.filter(e),t[12]=d,t[13]=n,t[14]=r}else r=t[14];je=r}let Me=je,T=w.includes(f)?f:w[0]??`default`,Ne;bb1:{let e;t[17]===w?e=t[18]:(e=new Set(w),t[17]=w,t[18]=e);let n=e,r;if(t[19]!==w||t[20]!==_||t[21]!==n){let e=new Set,i=new Set;r=[];let a=e=>{if(!i.has(e))return i.add(e),e;let t=2;for(;i.has(`${e}-${t}`);)t+=1;let n=`${e}-${t}`;return i.add(n),n};for(let t of _){let i=[...new Set(t.terminalIds.map(Xc).filter(Yc))].filter(t=>!(!n.has(t)||e.has(t)));if(i.length===0)continue;for(let t of i)e.add(t);let o=t.id.trim().length>0?t.id.trim():`group-${i[0]??`default`}`;r.push({id:a(o),terminalIds:i})}for(let t of w)e.has(t)||r.push({id:a(`group-${t}`),terminalIds:[t]});t[19]=w,t[20]=_,t[21]=n,t[22]=r}else r=t[22];if(r.length>0){Ne=r;break bb1}let i=`group-${T}`,a;t[23]===T?a=t[24]:(a=[T],t[23]=T,t[24]=a);let o;t[25]!==i||t[26]!==a?(o=[{id:i,terminalIds:a}],t[25]=i,t[26]=a,t[27]=o):o=t[27],Ne=o}let E=Ne,Pe;bb2:{let e=E.findIndex(e=>e.id===ee);if(e>=0){Pe=e;break bb2}let t=E.findIndex(e=>e.terminalIds.includes(T));Pe=t>=0?t:0}let Fe=Pe,Ie;t[28]!==Fe||t[29]!==T||t[30]!==E?(Ie=E[Fe]?.terminalIds??[T],t[28]=Fe,t[29]=T,t[30]=E,t[31]=Ie):Ie=t[31];let Le=Ie,Re=Le.length>1,D=Le.length>=4,ze=pe===`panel`,Be;t[32]===w?Be=t[33]:(Be=new Map(w.map(Jc)),t[32]=w,t[33]=Be);let Ve=Be,He=D?`Split Terminal (max 4 per group)`:ae?`Split Terminal (${ae})`:`Split Terminal`,O=v?`New Terminal (${v})`:`New Terminal`,Ue=le?`Close Terminal (${le})`:`Close Terminal`,k;t[34]!==D||t[35]!==re?(k=()=>{D||re()},t[34]=D,t[35]=re,t[36]=k):k=t[36];let We=k,Ge;t[37]===ie?Ge=t[38]:(Ge=()=>{ie()},t[37]=ie,t[38]=Ge);let Ke=Ge,qe,Je;t[39]===de?(qe=t[40],Je=t[41]):(qe=()=>{Ee.current=de},Je=[de],t[39]=de,t[40]=qe,t[41]=Je),(0,Q.useEffect)(qe,Je);let A,Ye;t[42]===x?(A=t[43],Ye=t[44]):(A=()=>{C.current=x},Ye=[x],t[42]=x,t[43]=A,t[44]=Ye),(0,Q.useEffect)(A,Ye);let Xe;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(Xe=e=>{let t=Tc(e);Te.current!==t&&(Te.current=t,Ee.current(t))},t[45]=Xe):Xe=t[45];let Ze=Xe,Qe;t[46]===l?Qe=t[47]:(Qe=()=>{let e=Tc(l);ve(e),C.current=e,Te.current=e},t[46]=l,t[47]=Qe);let $e;t[48]!==l||t[49]!==r?($e=[l,r],t[48]=l,t[49]=r,t[50]=$e):$e=t[50],(0,Q.useEffect)(Qe,$e);let et;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(et=e=>{e.button===0&&(e.preventDefault(),e.currentTarget.setPointerCapture(e.pointerId),Oe.current=!1,De.current={pointerId:e.pointerId,startY:e.clientY,startHeight:C.current})},t[51]=et):et=t[51];let tt=et,nt;t[52]===Symbol.for(`react.memo_cache_sentinel`)?(nt=e=>{let t=De.current;if(!t||t.pointerId!==e.pointerId)return;e.preventDefault();let n=Tc(t.startHeight+(t.startY-e.clientY));n!==C.current&&(Oe.current=!0,C.current=n,ve(n))},t[52]=nt):nt=t[52];let rt=nt,it;t[53]===Symbol.for(`react.memo_cache_sentinel`)?(it=e=>{let t=De.current;!t||t.pointerId!==e.pointerId||(De.current=null,e.currentTarget.hasPointerCapture(e.pointerId)&&e.currentTarget.releasePointerCapture(e.pointerId),Oe.current&&(Ze(C.current),be(qc)))},t[53]=it):it=t[53];let at=it,ot,st;t[54]===me?(ot=t[55],st=t[56]):(ot=()=>{if(!me)return;let e=()=>{let e=Tc(C.current);e!==C.current&&(ve(e),C.current=e),De.current||Ze(e),be(Kc)};return window.addEventListener(`resize`,e),()=>{window.removeEventListener(`resize`,e)}},st=[Ze,me],t[54]=me,t[55]=ot,t[56]=st),(0,Q.useEffect)(ot,st);let ct,lt;t[57]===me?(ct=t[58],lt=t[59]):(ct=()=>{me&&be(Gc)},lt=[me],t[57]=me,t[58]=ct,t[59]=lt),(0,Q.useEffect)(ct,lt);let ut;t[60]!==Fe||t[61]!==E?(ut=()=>{let e=Ce.current;if(!e){S(Wc);return}let t=e.querySelector(`[data-terminal-tab-id="${CSS.escape(E[Fe]?.id??``)}"]`);if(!t){S(Uc);return}S({width:t.offsetWidth,x:t.offsetLeft,visible:!0})},t[60]=Fe,t[61]=E,t[62]=ut):ut=t[62];let dt;t[63]!==ye||t[64]!==Fe||t[65]!==E?(dt=[Fe,E,ye],t[63]=ye,t[64]=Fe,t[65]=E,t[66]=dt):dt=t[66],(0,Q.useLayoutEffect)(ut,dt);let ft,pt;t[67]===Symbol.for(`react.memo_cache_sentinel`)?(ft=()=>()=>{Ze(C.current)},pt=[Ze],t[67]=ft,t[68]=pt):(ft=t[67],pt=t[68]),(0,Q.useEffect)(ft,pt);let mt=ze?`thread-terminal-drawer relative flex h-full min-h-0 min-w-0 flex-col overflow-hidden bg-background`:`thread-terminal-drawer relative flex min-w-0 shrink-0 animate-[terminal-drawer-in_220ms_ease-out] flex-col overflow-hidden border-border/80 border-t bg-background`,ht;t[69]!==x||t[70]!==ze?(ht=ze?void 0:{height:`${x}px`},t[69]=x,t[70]=ze,t[71]=ht):ht=t[71];let gt;t[72]===ze?gt=t[73]:(gt=ze?null:(0,$.jsx)(`div`,{className:`absolute inset-x-0 top-0 z-20 h-1.5 cursor-row-resize`,onPointerDown:tt,onPointerMove:rt,onPointerUp:at,onPointerCancel:at}),t[72]=ze,t[73]=gt);let _t=`pointer-events-none absolute inset-y-0 left-0 z-0 bg-background transition-[transform,width,opacity] duration-[240ms] ease-out ${Se.visible?`opacity-100`:`opacity-0`}`,vt=`translateX(${Se.x}px)`,yt;t[74]!==vt||t[75]!==Se.width?(yt={width:Se.width,transform:vt},t[74]=vt,t[75]=Se.width,t[76]=yt):yt=t[76];let bt;t[77]!==_t||t[78]!==yt?(bt=(0,$.jsx)(`span`,{className:_t,style:yt,"aria-hidden":!0}),t[77]=_t,t[78]=yt,t[79]=bt):bt=t[79];let xt;t[80]!==Me||t[81]!==y||t[82]!==ue||t[83]!==Fe||t[84]!==T||t[85]!==E?(xt=E.map((e,t)=>{let n=t===Fe,r=Nc(e,Me),i=Mc(e,t+1),a=e.terminalIds.includes(T)?T:e.terminalIds[0]??T,o=E.length>1,s=`Close ${i}`;return(0,$.jsxs)(`div`,{role:`tab`,"aria-selected":n,"data-terminal-tab-id":e.id,className:`group relative z-10 flex shrink-0 items-center gap-1.5 border-r border-border/70 px-2 text-xs transition-colors duration-150 ${n?`text-foreground`:`text-muted-foreground hover:bg-accent/40 hover:text-foreground`}`,children:[(0,$.jsxs)(`button`,{type:`button`,className:`flex min-w-0 items-center gap-1.5`,onClick:()=>y(a),children:[(0,$.jsx)(ne,{className:`size-3 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:i}),r&&(0,$.jsx)(`span`,{className:`size-1.5 shrink-0 rounded-full bg-emerald-500`,"aria-label":`Running`})]}),o&&(0,$.jsxs)(h,{children:[(0,$.jsx)(m,{openOnHover:!0,render:(0,$.jsx)(`button`,{type:`button`,className:`inline-flex size-3.5 items-center justify-center rounded text-muted-foreground opacity-0 transition hover:bg-accent hover:text-foreground group-hover:opacity-100`,onClick:t=>{t.stopPropagation();for(let t of e.terminalIds)ue(t)},"aria-label":s}),children:(0,$.jsx)(ce,{className:`size-2.5`})}),(0,$.jsx)(g,{tooltipStyle:!0,side:`bottom`,sideOffset:6,align:`center`,className:`pointer-events-none select-none`,children:s})]})]},e.id)}),t[80]=Me,t[81]=y,t[82]=ue,t[83]=Fe,t[84]=T,t[85]=E,t[86]=xt):xt=t[86];let St;t[87]===Symbol.for(`react.memo_cache_sentinel`)?(St=(0,$.jsx)(oe,{className:`size-3.25`}),t[87]=St):St=t[87];let Ct;t[88]!==O||t[89]!==Ke?(Ct=(0,$.jsx)(Vc,{className:`inline-flex shrink-0 items-center border-r border-border/70 px-2 text-foreground/90 transition-colors hover:bg-accent/70`,onClick:Ke,label:O,children:St}),t[88]=O,t[89]=Ke,t[90]=Ct):Ct=t[90];let wt;t[91]!==bt||t[92]!==xt||t[93]!==Ct?(wt=(0,$.jsxs)(`div`,{ref:Ce,className:`relative isolate flex min-w-0 flex-1 items-stretch overflow-x-auto`,children:[bt,xt,Ct]}),t[91]=bt,t[92]=xt,t[93]=Ct,t[94]=wt):wt=t[94];let Tt=`inline-flex items-center px-2 text-foreground/90 transition-colors ${D?`cursor-not-allowed opacity-45 hover:bg-transparent`:`hover:bg-accent/70`}`,Et;t[95]===Symbol.for(`react.memo_cache_sentinel`)?(Et=(0,$.jsx)(ge,{className:`size-3.25`}),t[95]=Et):Et=t[95];let Dt;t[96]!==We||t[97]!==He||t[98]!==Tt?(Dt=(0,$.jsx)(Vc,{className:Tt,onClick:We,label:He,children:Et}),t[96]=We,t[97]=He,t[98]=Tt,t[99]=Dt):Dt=t[99];let Ot;t[100]!==ue||t[101]!==T?(Ot=()=>ue(T),t[100]=ue,t[101]=T,t[102]=Ot):Ot=t[102];let kt;t[103]===Symbol.for(`react.memo_cache_sentinel`)?(kt=(0,$.jsx)(se,{className:`size-3.25`}),t[103]=kt):kt=t[103];let At;t[104]!==Ue||t[105]!==Ot?(At=(0,$.jsx)(Vc,{className:`inline-flex items-center border-l border-border/70 px-2 text-foreground/90 transition-colors hover:bg-accent/70`,onClick:Ot,label:Ue,children:kt}),t[104]=Ue,t[105]=Ot,t[106]=At):At=t[106];let jt;t[107]!==Dt||t[108]!==At?(jt=(0,$.jsxs)(`div`,{className:`flex shrink-0 items-stretch border-l border-border/70`,children:[Dt,At]}),t[107]=Dt,t[108]=At,t[109]=jt):jt=t[109];let Mt;t[110]!==wt||t[111]!==jt?(Mt=(0,$.jsxs)(`div`,{role:`tablist`,"aria-label":`Terminals`,className:`flex h-7 shrink-0 items-stretch border-border/70 border-b bg-muted/10`,children:[wt,jt]}),t[110]=wt,t[111]=jt,t[112]=Mt):Mt=t[112];let Nt;t[113]!==i||t[114]!==x||t[115]!==te||t[116]!==Re||t[117]!==b||t[118]!==y||t[119]!==fe||t[120]!==ue||t[121]!==ye||t[122]!==T||t[123]!==o||t[124]!==Ve||t[125]!==r||t[126]!==n||t[127]!==Le||t[128]!==a?(Nt=(0,$.jsx)(`div`,{className:`min-h-0 w-full flex-1`,children:Re?(0,$.jsx)(`div`,{className:`grid h-full w-full min-w-0 gap-0 overflow-hidden`,style:{gridTemplateColumns:`repeat(${Le.length}, minmax(0, 1fr))`},children:Le.map(e=>(0,$.jsx)(`div`,{className:`min-h-0 min-w-0 border-l first:border-l-0 ${e===T?`border-border`:`border-border/70`}`,onMouseDown:()=>{e!==T&&y(e)},children:(0,$.jsx)(`div`,{className:`h-full p-1`,children:(0,$.jsx)(Bc,{threadRef:n,threadId:r,terminalId:e,terminalLabel:Ve.get(e)??`Terminal`,cwd:i,...a===void 0?{}:{worktreePath:a},...o?{runtimeEnv:o}:{},onSessionExited:()=>ue(e),onAddTerminalContext:fe,focusRequestId:te,autoFocus:e===T,resizeEpoch:ye,drawerHeight:x,keybindings:b})})},e))}):(0,$.jsx)(`div`,{className:`h-full p-1`,children:(0,$.jsx)(Bc,{threadRef:n,threadId:r,terminalId:T,terminalLabel:Ve.get(T)??`Terminal`,cwd:i,...a===void 0?{}:{worktreePath:a},...o?{runtimeEnv:o}:{},onSessionExited:()=>ue(T),onAddTerminalContext:fe,focusRequestId:te,autoFocus:!0,resizeEpoch:ye,drawerHeight:x,keybindings:b},T)})}),t[113]=i,t[114]=x,t[115]=te,t[116]=Re,t[117]=b,t[118]=y,t[119]=fe,t[120]=ue,t[121]=ye,t[122]=T,t[123]=o,t[124]=Ve,t[125]=r,t[126]=n,t[127]=Le,t[128]=a,t[129]=Nt):Nt=t[129];let Pt;return t[130]!==mt||t[131]!==ht||t[132]!==gt||t[133]!==Mt||t[134]!==Nt?(Pt=(0,$.jsxs)(`aside`,{className:mt,style:ht,children:[gt,Mt,Nt]}),t[130]=mt,t[131]=ht,t[132]=gt,t[133]=Mt,t[134]=Nt,t[135]=Pt):Pt=t[135],Pt}function Uc(e){return{...e,visible:!1}}function Wc(e){return{...e,visible:!1}}function Gc(e){return e+1}function Kc(e){return e+1}function qc(e){return e+1}function Jc(e,t){return[e,`Terminal ${t+1}`]}function Yc(e){return e.length>0}function Xc(e){return e.trim()}function Zc(e){return e.length>0}function Qc(e){return e.trim()}export{Bc as TerminalViewport,kc as createTerminalOutputBatcher,Hc as default,Nc as groupHasRunningTerminal,Mc as resolveTabLabel,Lc as resolveTerminalSelectionActionPosition,jc as selectPendingTerminalEventEntries,Ac as selectTerminalEventEntriesAfterSnapshot,zc as shouldHandleTerminalSelectionMouseUp,Rc as terminalSelectionActionDelayForClickCount};
|
|
38
|
+
`).length,c=Math.max(o,o+s-1),l=t.getBoundingClientRect(),u=Ic(t);return{position:Lc({bounds:l,selectionRect:u===null?null:{right:u.right,bottom:u.bottom},pointer:Se.current}),selection:{terminalId:n,terminalLabel:Ae(),lineStart:o,lineEnd:c,text:a}}},Ne=async()=>{if(Ce.current)return;let e=T();if(!e){Me();return}let t=++C.current;Ce.current=!0;try{let n=await ne.contextMenu.show([{id:`add-to-chat`,label:`Add to chat`}],e.position);if(t!==C.current||n!==`add-to-chat`)return;ke(e.selection),x.current?.clearSelection(),x.current?.focus()}finally{Ce.current=!1}},E=async(e,r)=>{let i=x.current;if(i)try{await g.terminal.write({threadId:t,terminalId:n,data:e})}catch(e){w(i,e instanceof Error?e.message:r)}};ce.attachCustomKeyEventHandler(e=>{let t=Te.current,n={context:{terminalFocus:!0,terminalOpen:!0}};if(ue(e,t,n)||y(e,t,n)||b(e,t,n)||fe(e,t,n)||de(e,t,n))return!1;let r=pe(e);if(r!==null)return e.preventDefault(),e.stopPropagation(),E(r,`Failed to move cursor`),!1;let i=v(e);return i===null?le(e)?(e.preventDefault(),e.stopPropagation(),E(`\f`,`Failed to clear terminal`),!1):!0:(e.preventDefault(),e.stopPropagation(),E(i,`Failed to delete terminal input`),!1)});let Pe=ce.registerLinkProvider({provideLinks:(e,t)=>{let n=x.current;if(!n){t(void 0);return}let r=re(e,e=>n.buffer.active.getLine(e));if(!r){t(void 0);return}let i=_(r.text).map(e=>({match:e,range:te(r,e)})).filter(({range:t})=>ee(t,e));if(i.length===0){t(void 0);return}t(i.map(({match:e,range:t})=>({text:e.text,range:t,activate:t=>{if(!ae(t))return;let n=x.current;if(n){if(e.kind===`url`){ne.shell.openExternal(e.text).catch(e=>{w(n,e instanceof Error?e.message:`Unable to open link`)});return}me(ne,ie(e.text,f)).catch(e=>{w(n,e instanceof Error?e.message:`Unable to open path`)})}}})))}}),Fe=ce.onData(e=>{g.terminal.write({threadId:t,terminalId:n,data:e}).catch(e=>w(ce,e instanceof Error?e.message:`Terminal write failed`))}),Ie=ce.onSelectionChange(()=>{x.current?.hasSelection()||Me()}),Le=e=>{let t=zc(S.current,e.button);if(S.current=!1,!t)return;Se.current={x:e.clientX,y:e.clientY};let n=Rc(e.detail);we.current=window.setTimeout(()=>{we.current=null,window.requestAnimationFrame(()=>{Ne()})},n)},Re=e=>{Me(),S.current=e.button===0};window.addEventListener(`mouseup`,Le),d.addEventListener(`pointerdown`,Re);let D=new MutationObserver(()=>{let e=x.current;e&&(e.options.theme=Fc(_e.current),e.refresh(0,e.rows-1))});D.observe(document.documentElement,{attributes:!0,attributeFilter:[`class`,`style`]});let ze=e=>{let t=r(),n=t?c():0,o=()=>{t&&i(`web.terminal.drawer.events.apply`,{...e.type===`output`?{bytes:a(e.data)}:{},durationMs:c()-n})},s=x.current;if(!s){o();return}if(e.type===`activity`){o();return}if(e.type===`output`){ge.writeOutput(e.data),Me(),o();return}if(ge.flush(),e.type===`started`||e.type===`restarted`){xe.current=!1,Me(),Dc(s,e.snapshot),o();return}if(e.type===`cleared`){Me(),s.clear(),s.write(`\x1Bc`),o();return}if(e.type===`error`){w(s,e.message),o();return}let l=[typeof e.exitCode==`number`?`code ${e.exitCode}`:null,typeof e.exitSignal==`number`?`signal ${e.exitSignal}`:null].filter(e=>e!==null).join(`, `);if(w(s,l.length>0?`Process exited (${l})`:`Process exited`),xe.current){o();return}xe.current=!0,window.setTimeout(()=>{xe.current&&Oe()},0),o()},Be=e=>{let t=jc(e,Ee.current);if(t.length!==0){for(let e of t)ze(e.event);Ee.current=t.at(-1)?.id??Ee.current}},Ve=u.subscribe((t,r)=>{if(!De.current)return;let i=s(r.terminalEventEntriesByKey,e,n).at(-1)?.id??0,a=s(t.terminalEventEntriesByKey,e,n);(a.at(-1)?.id??0)!==i&&Be(a)}),He=async()=>{try{let r=x.current,i=ve.current;if(!r||!i)return;i.fit();let a=await g.terminal.open({threadId:t,terminalId:n,cwd:f,...p===void 0?{}:{worktreePath:p},cols:r.cols,rows:r.rows,...m?{env:m}:{}});if(h)return;Dc(r,a);let o=s(u.getState().terminalEventEntriesByKey,e,n),c=Ac(o,a.updatedAt);for(let e of c)ze(e.event);Ee.current=o.at(-1)?.id??0,De.current=!0,oe&&window.requestAnimationFrame(()=>{r.focus()})}catch(e){if(h)return;w(ce,e instanceof Error?e.message:`Failed to open terminal`)}},O=window.setTimeout(()=>{let e=x.current,r=ve.current;if(!e||!r)return;let i=e.buffer.active.viewportY>=e.buffer.active.baseY;r.fit(),i&&e.scrollToBottom(),g.terminal.resize({threadId:t,terminalId:n,cols:e.cols,rows:e.rows}).catch(()=>void 0)},30);return He(),()=>{ge.dispose(),h=!0,De.current=!1,Ee.current=0,Ve(),window.clearTimeout(O),Fe.dispose(),Ie.dispose(),Pe.dispose(),we.current!==null&&window.clearTimeout(we.current),window.removeEventListener(`mouseup`,Le),d.removeEventListener(`pointerdown`,Re),D.disconnect(),window.removeEventListener(he,je),x.current=null,ve.current=null,ce.dispose()}},[f,be,m,n,t]),(0,Q.useEffect)(()=>{if(!oe)return;let e=x.current;if(!e)return;let t=window.requestAnimationFrame(()=>{e.focus()});return()=>{window.cancelAnimationFrame(t)}},[oe,ne]),(0,Q.useEffect)(()=>{let e=l(be),r=x.current,i=ve.current;if(!e||!r||!i)return;let a=r.buffer.active.viewportY>=r.buffer.active.baseY,o=window.requestAnimationFrame(()=>{i.fit(),a&&r.scrollToBottom(),e.terminal.resize({threadId:t,terminalId:n,cols:r.cols,rows:r.rows}).catch(()=>void 0)});return()=>{window.cancelAnimationFrame(o)}},[ce,be,se,n,t]),(0,$.jsx)(`div`,{ref:_e,className:`relative h-full w-full overflow-hidden rounded-[4px] bg-background`})}function Vc(e){let t=(0,_e.c)(12),{label:n,className:r,onClick:i,children:a}=e,o;t[0]!==r||t[1]!==n||t[2]!==i?(o=(0,$.jsx)(`button`,{type:`button`,className:r,onClick:i,"aria-label":n}),t[0]=r,t[1]=n,t[2]=i,t[3]=o):o=t[3];let s;t[4]!==a||t[5]!==o?(s=(0,$.jsx)(m,{openOnHover:!0,render:o,children:a}),t[4]=a,t[5]=o,t[6]=s):s=t[6];let c;t[7]===n?c=t[8]:(c=(0,$.jsx)(g,{tooltipStyle:!0,side:`bottom`,sideOffset:6,align:`center`,className:`pointer-events-none select-none`,children:n}),t[7]=n,t[8]=c);let l;return t[9]!==s||t[10]!==c?(l=(0,$.jsxs)(h,{children:[s,c]}),t[9]=s,t[10]=c,t[11]=l):l=t[11],l}function Hc(e){let t=(0,_e.c)(136),{threadRef:n,threadId:r,cwd:i,worktreePath:a,runtimeEnv:o,layout:s,visible:c,height:l,terminalIds:u,runningTerminalIds:d,activeTerminalId:f,terminalGroups:_,activeTerminalGroupId:ee,focusRequestId:te,onSplitTerminal:re,onNewTerminal:ie,splitShortcutLabel:ae,newShortcutLabel:v,closeShortcutLabel:le,onActiveTerminalChange:y,onCloseTerminal:ue,onHeightChange:de,onAddTerminalContext:fe,keybindings:b}=e,pe=s===void 0?`drawer`:s,me=c===void 0?!0:c,he;t[0]===l?he=t[1]:(he=()=>Tc(l),t[0]=l,t[1]=he);let[x,ve]=(0,Q.useState)(he),[ye,be]=(0,Q.useState)(0),xe;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(xe={width:0,x:0,visible:!1},t[2]=xe):xe=t[2];let[Se,S]=(0,Q.useState)(xe),C=(0,Q.useRef)(x),Ce=(0,Q.useRef)(null),we;t[3]===l?we=t[4]:(we=Tc(l),t[3]=l,t[4]=we);let Te=(0,Q.useRef)(we),Ee=(0,Q.useRef)(de),De=(0,Q.useRef)(null),Oe=(0,Q.useRef)(!1),ke;t[5]===u?ke=t[6]:(ke=new Set(u.map(Qc).filter(Zc)),t[5]=u,t[6]=ke);let Ae;if(t[7]!==ke){let e=[...ke];Ae=e.length>0?e:[p],t[7]=ke,t[8]=Ae}else Ae=t[8];let w=Ae,je;bb0:{if(d.length===0){let e;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],t[9]=e):e=t[9],je=e;break bb0}let e;t[10]===w?e=t[11]:(e=new Set(w),t[10]=w,t[11]=e);let n=e,r;if(t[12]!==d||t[13]!==n){let e;t[15]===n?e=t[16]:(e=e=>n.has(e),t[15]=n,t[16]=e),r=d.filter(e),t[12]=d,t[13]=n,t[14]=r}else r=t[14];je=r}let Me=je,T=w.includes(f)?f:w[0]??`default`,Ne;bb1:{let e;t[17]===w?e=t[18]:(e=new Set(w),t[17]=w,t[18]=e);let n=e,r;if(t[19]!==w||t[20]!==_||t[21]!==n){let e=new Set,i=new Set;r=[];let a=e=>{if(!i.has(e))return i.add(e),e;let t=2;for(;i.has(`${e}-${t}`);)t+=1;let n=`${e}-${t}`;return i.add(n),n};for(let t of _){let i=[...new Set(t.terminalIds.map(Xc).filter(Yc))].filter(t=>!(!n.has(t)||e.has(t)));if(i.length===0)continue;for(let t of i)e.add(t);let o=t.id.trim().length>0?t.id.trim():`group-${i[0]??`default`}`;r.push({id:a(o),terminalIds:i})}for(let t of w)e.has(t)||r.push({id:a(`group-${t}`),terminalIds:[t]});t[19]=w,t[20]=_,t[21]=n,t[22]=r}else r=t[22];if(r.length>0){Ne=r;break bb1}let i=`group-${T}`,a;t[23]===T?a=t[24]:(a=[T],t[23]=T,t[24]=a);let o;t[25]!==i||t[26]!==a?(o=[{id:i,terminalIds:a}],t[25]=i,t[26]=a,t[27]=o):o=t[27],Ne=o}let E=Ne,Pe;bb2:{let e=E.findIndex(e=>e.id===ee);if(e>=0){Pe=e;break bb2}let t=E.findIndex(e=>e.terminalIds.includes(T));Pe=t>=0?t:0}let Fe=Pe,Ie;t[28]!==Fe||t[29]!==T||t[30]!==E?(Ie=E[Fe]?.terminalIds??[T],t[28]=Fe,t[29]=T,t[30]=E,t[31]=Ie):Ie=t[31];let Le=Ie,Re=Le.length>1,D=Le.length>=4,ze=pe===`panel`,Be;t[32]===w?Be=t[33]:(Be=new Map(w.map(Jc)),t[32]=w,t[33]=Be);let Ve=Be,He=D?`Split Terminal (max 4 per group)`:ae?`Split Terminal (${ae})`:`Split Terminal`,O=v?`New Terminal (${v})`:`New Terminal`,Ue=le?`Close Terminal (${le})`:`Close Terminal`,k;t[34]!==D||t[35]!==re?(k=()=>{D||re()},t[34]=D,t[35]=re,t[36]=k):k=t[36];let We=k,Ge;t[37]===ie?Ge=t[38]:(Ge=()=>{ie()},t[37]=ie,t[38]=Ge);let Ke=Ge,qe,Je;t[39]===de?(qe=t[40],Je=t[41]):(qe=()=>{Ee.current=de},Je=[de],t[39]=de,t[40]=qe,t[41]=Je),(0,Q.useEffect)(qe,Je);let A,Ye;t[42]===x?(A=t[43],Ye=t[44]):(A=()=>{C.current=x},Ye=[x],t[42]=x,t[43]=A,t[44]=Ye),(0,Q.useEffect)(A,Ye);let Xe;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(Xe=e=>{let t=Tc(e);Te.current!==t&&(Te.current=t,Ee.current(t))},t[45]=Xe):Xe=t[45];let Ze=Xe,Qe;t[46]===l?Qe=t[47]:(Qe=()=>{let e=Tc(l);ve(e),C.current=e,Te.current=e},t[46]=l,t[47]=Qe);let $e;t[48]!==l||t[49]!==r?($e=[l,r],t[48]=l,t[49]=r,t[50]=$e):$e=t[50],(0,Q.useEffect)(Qe,$e);let et;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(et=e=>{e.button===0&&(e.preventDefault(),e.currentTarget.setPointerCapture(e.pointerId),Oe.current=!1,De.current={pointerId:e.pointerId,startY:e.clientY,startHeight:C.current})},t[51]=et):et=t[51];let tt=et,nt;t[52]===Symbol.for(`react.memo_cache_sentinel`)?(nt=e=>{let t=De.current;if(!t||t.pointerId!==e.pointerId)return;e.preventDefault();let n=Tc(t.startHeight+(t.startY-e.clientY));n!==C.current&&(Oe.current=!0,C.current=n,ve(n))},t[52]=nt):nt=t[52];let rt=nt,it;t[53]===Symbol.for(`react.memo_cache_sentinel`)?(it=e=>{let t=De.current;!t||t.pointerId!==e.pointerId||(De.current=null,e.currentTarget.hasPointerCapture(e.pointerId)&&e.currentTarget.releasePointerCapture(e.pointerId),Oe.current&&(Ze(C.current),be(qc)))},t[53]=it):it=t[53];let at=it,ot,st;t[54]===me?(ot=t[55],st=t[56]):(ot=()=>{if(!me)return;let e=()=>{let e=Tc(C.current);e!==C.current&&(ve(e),C.current=e),De.current||Ze(e),be(Kc)};return window.addEventListener(`resize`,e),()=>{window.removeEventListener(`resize`,e)}},st=[Ze,me],t[54]=me,t[55]=ot,t[56]=st),(0,Q.useEffect)(ot,st);let ct,lt;t[57]===me?(ct=t[58],lt=t[59]):(ct=()=>{me&&be(Gc)},lt=[me],t[57]=me,t[58]=ct,t[59]=lt),(0,Q.useEffect)(ct,lt);let ut;t[60]!==Fe||t[61]!==E?(ut=()=>{let e=Ce.current;if(!e){S(Wc);return}let t=e.querySelector(`[data-terminal-tab-id="${CSS.escape(E[Fe]?.id??``)}"]`);if(!t){S(Uc);return}S({width:t.offsetWidth,x:t.offsetLeft,visible:!0})},t[60]=Fe,t[61]=E,t[62]=ut):ut=t[62];let dt;t[63]!==ye||t[64]!==Fe||t[65]!==E?(dt=[Fe,E,ye],t[63]=ye,t[64]=Fe,t[65]=E,t[66]=dt):dt=t[66],(0,Q.useLayoutEffect)(ut,dt);let ft,pt;t[67]===Symbol.for(`react.memo_cache_sentinel`)?(ft=()=>()=>{Ze(C.current)},pt=[Ze],t[67]=ft,t[68]=pt):(ft=t[67],pt=t[68]),(0,Q.useEffect)(ft,pt);let mt=ze?`thread-terminal-drawer relative flex h-full min-h-0 min-w-0 flex-col overflow-hidden bg-background`:`thread-terminal-drawer relative flex min-w-0 shrink-0 animate-[terminal-drawer-in_220ms_ease-out] flex-col overflow-hidden border-border/80 border-t bg-background`,ht;t[69]!==x||t[70]!==ze?(ht=ze?void 0:{height:`${x}px`},t[69]=x,t[70]=ze,t[71]=ht):ht=t[71];let gt;t[72]===ze?gt=t[73]:(gt=ze?null:(0,$.jsx)(`div`,{className:`absolute inset-x-0 top-0 z-20 h-1.5 cursor-row-resize`,onPointerDown:tt,onPointerMove:rt,onPointerUp:at,onPointerCancel:at}),t[72]=ze,t[73]=gt);let _t=`pointer-events-none absolute inset-y-0 left-0 z-0 bg-background transition-[transform,width,opacity] duration-[240ms] ease-out ${Se.visible?`opacity-100`:`opacity-0`}`,vt=`translateX(${Se.x}px)`,yt;t[74]!==vt||t[75]!==Se.width?(yt={width:Se.width,transform:vt},t[74]=vt,t[75]=Se.width,t[76]=yt):yt=t[76];let bt;t[77]!==_t||t[78]!==yt?(bt=(0,$.jsx)(`span`,{className:_t,style:yt,"aria-hidden":!0}),t[77]=_t,t[78]=yt,t[79]=bt):bt=t[79];let xt;t[80]!==Me||t[81]!==y||t[82]!==ue||t[83]!==Fe||t[84]!==T||t[85]!==E?(xt=E.map((e,t)=>{let n=t===Fe,r=Nc(e,Me),i=Mc(e,t+1),a=e.terminalIds.includes(T)?T:e.terminalIds[0]??T,o=E.length>1,s=`Close ${i}`;return(0,$.jsxs)(`div`,{role:`tab`,"aria-selected":n,"data-terminal-tab-id":e.id,className:`group relative z-10 flex shrink-0 items-center gap-1.5 border-r border-border/70 px-2 text-xs transition-colors duration-150 ${n?`text-foreground`:`text-muted-foreground hover:bg-accent/40 hover:text-foreground`}`,children:[(0,$.jsxs)(`button`,{type:`button`,className:`flex min-w-0 items-center gap-1.5`,onClick:()=>y(a),children:[(0,$.jsx)(ne,{className:`size-3 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:i}),r&&(0,$.jsx)(`span`,{className:`size-1.5 shrink-0 rounded-full bg-emerald-500`,"aria-label":`Running`})]}),o&&(0,$.jsxs)(h,{children:[(0,$.jsx)(m,{openOnHover:!0,render:(0,$.jsx)(`button`,{type:`button`,className:`inline-flex size-3.5 items-center justify-center rounded text-muted-foreground opacity-0 transition hover:bg-accent hover:text-foreground group-hover:opacity-100`,onClick:t=>{t.stopPropagation();for(let t of e.terminalIds)ue(t)},"aria-label":s}),children:(0,$.jsx)(ce,{className:`size-2.5`})}),(0,$.jsx)(g,{tooltipStyle:!0,side:`bottom`,sideOffset:6,align:`center`,className:`pointer-events-none select-none`,children:s})]})]},e.id)}),t[80]=Me,t[81]=y,t[82]=ue,t[83]=Fe,t[84]=T,t[85]=E,t[86]=xt):xt=t[86];let St;t[87]===Symbol.for(`react.memo_cache_sentinel`)?(St=(0,$.jsx)(oe,{className:`size-3.25`}),t[87]=St):St=t[87];let Ct;t[88]!==O||t[89]!==Ke?(Ct=(0,$.jsx)(Vc,{className:`inline-flex shrink-0 items-center border-r border-border/70 px-2 text-foreground/90 transition-colors hover:bg-accent/70`,onClick:Ke,label:O,children:St}),t[88]=O,t[89]=Ke,t[90]=Ct):Ct=t[90];let wt;t[91]!==bt||t[92]!==xt||t[93]!==Ct?(wt=(0,$.jsxs)(`div`,{ref:Ce,className:`relative isolate flex min-w-0 flex-1 items-stretch overflow-x-auto`,children:[bt,xt,Ct]}),t[91]=bt,t[92]=xt,t[93]=Ct,t[94]=wt):wt=t[94];let Tt=`inline-flex items-center px-2 text-foreground/90 transition-colors ${D?`cursor-not-allowed opacity-45 hover:bg-transparent`:`hover:bg-accent/70`}`,Et;t[95]===Symbol.for(`react.memo_cache_sentinel`)?(Et=(0,$.jsx)(ge,{className:`size-3.25`}),t[95]=Et):Et=t[95];let Dt;t[96]!==We||t[97]!==He||t[98]!==Tt?(Dt=(0,$.jsx)(Vc,{className:Tt,onClick:We,label:He,children:Et}),t[96]=We,t[97]=He,t[98]=Tt,t[99]=Dt):Dt=t[99];let Ot;t[100]!==ue||t[101]!==T?(Ot=()=>ue(T),t[100]=ue,t[101]=T,t[102]=Ot):Ot=t[102];let kt;t[103]===Symbol.for(`react.memo_cache_sentinel`)?(kt=(0,$.jsx)(se,{className:`size-3.25`}),t[103]=kt):kt=t[103];let At;t[104]!==Ue||t[105]!==Ot?(At=(0,$.jsx)(Vc,{className:`inline-flex items-center border-l border-border/70 px-2 text-foreground/90 transition-colors hover:bg-accent/70`,onClick:Ot,label:Ue,children:kt}),t[104]=Ue,t[105]=Ot,t[106]=At):At=t[106];let jt;t[107]!==Dt||t[108]!==At?(jt=(0,$.jsxs)(`div`,{className:`flex shrink-0 items-stretch border-l border-border/70`,children:[Dt,At]}),t[107]=Dt,t[108]=At,t[109]=jt):jt=t[109];let Mt;t[110]!==wt||t[111]!==jt?(Mt=(0,$.jsxs)(`div`,{role:`tablist`,"aria-label":`Terminals`,className:`flex h-7 shrink-0 items-stretch border-border/70 border-b bg-muted/10`,children:[wt,jt]}),t[110]=wt,t[111]=jt,t[112]=Mt):Mt=t[112];let Nt;t[113]!==i||t[114]!==x||t[115]!==te||t[116]!==Re||t[117]!==b||t[118]!==y||t[119]!==fe||t[120]!==ue||t[121]!==ye||t[122]!==T||t[123]!==o||t[124]!==Ve||t[125]!==r||t[126]!==n||t[127]!==Le||t[128]!==a?(Nt=(0,$.jsx)(`div`,{className:`min-h-0 w-full flex-1`,children:Re?(0,$.jsx)(`div`,{className:`grid h-full w-full min-w-0 gap-0 overflow-hidden`,style:{gridTemplateColumns:`repeat(${Le.length}, minmax(0, 1fr))`},children:Le.map(e=>(0,$.jsx)(`div`,{className:`min-h-0 min-w-0 border-l first:border-l-0 ${e===T?`border-border`:`border-border/70`}`,onMouseDown:()=>{e!==T&&y(e)},children:(0,$.jsx)(`div`,{className:`h-full p-1`,children:(0,$.jsx)(Bc,{threadRef:n,threadId:r,terminalId:e,terminalLabel:Ve.get(e)??`Terminal`,cwd:i,...a===void 0?{}:{worktreePath:a},...o?{runtimeEnv:o}:{},onSessionExited:()=>ue(e),onAddTerminalContext:fe,focusRequestId:te,autoFocus:e===T,resizeEpoch:ye,drawerHeight:x,keybindings:b})})},e))}):(0,$.jsx)(`div`,{className:`h-full p-1`,children:(0,$.jsx)(Bc,{threadRef:n,threadId:r,terminalId:T,terminalLabel:Ve.get(T)??`Terminal`,cwd:i,...a===void 0?{}:{worktreePath:a},...o?{runtimeEnv:o}:{},onSessionExited:()=>ue(T),onAddTerminalContext:fe,focusRequestId:te,autoFocus:!0,resizeEpoch:ye,drawerHeight:x,keybindings:b},T)})}),t[113]=i,t[114]=x,t[115]=te,t[116]=Re,t[117]=b,t[118]=y,t[119]=fe,t[120]=ue,t[121]=ye,t[122]=T,t[123]=o,t[124]=Ve,t[125]=r,t[126]=n,t[127]=Le,t[128]=a,t[129]=Nt):Nt=t[129];let Pt;return t[130]!==mt||t[131]!==ht||t[132]!==gt||t[133]!==Mt||t[134]!==Nt?(Pt=(0,$.jsxs)(`aside`,{className:mt,style:ht,children:[gt,Mt,Nt]}),t[130]=mt,t[131]=ht,t[132]=gt,t[133]=Mt,t[134]=Nt,t[135]=Pt):Pt=t[135],Pt}function Uc(e){return{...e,visible:!1}}function Wc(e){return{...e,visible:!1}}function Gc(e){return e+1}function Kc(e){return e+1}function qc(e){return e+1}function Jc(e,t){return[e,`Terminal ${t+1}`]}function Yc(e){return e.length>0}function Xc(e){return e.trim()}function Zc(e){return e.length>0}function Qc(e){return e.trim()}export{Bc as TerminalViewport,kc as createTerminalOutputBatcher,Hc as default,Nc as groupHasRunningTerminal,Mc as resolveTabLabel,Lc as resolveTerminalSelectionActionPosition,jc as selectPendingTerminalEventEntries,Ac as selectTerminalEventEntriesAfterSnapshot,zc as shouldHandleTerminalSelectionMouseUp,Rc as terminalSelectionActionDelayForClickCount};
|