@dylanpiercey/work 0.0.115 → 0.0.117
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/bin/work.mjs +7 -29
- package/dist/{_8-LIGykR.js → _4-M1FiLt.js} +80 -80
- package/dist/{_CzngR9Hn.js → _BBnpIqz1.js} +39 -39
- package/dist/_DHnrMF7e.js +2 -0
- package/dist/{_CmheBYWi.js → _b8Fct3kh.js} +15 -16
- package/dist/index.mjs +462 -489
- package/dist/public/assets/{_BxMSfS55.js → _-Z8UOkRe.js} +1 -1
- package/dist/public/assets/_-Z8UOkRe.js.br +0 -0
- package/dist/public/assets/{_Cg22zLVo.js → _18MJzEZM.js} +1 -1
- package/dist/public/assets/_18MJzEZM.js.br +0 -0
- package/dist/public/assets/{_BJjHxccu2.js → _6WLgQe1U2.js} +1 -1
- package/dist/public/assets/_6WLgQe1U2.js.br +0 -0
- package/dist/public/assets/{_LWvTfycL.js → _7MvaMNIr.js} +1 -1
- package/dist/public/assets/_7MvaMNIr.js.br +0 -0
- package/dist/public/assets/{_DreKZ6Rw.js → _9m5DBxeF.js} +1 -1
- package/dist/public/assets/_9m5DBxeF.js.br +0 -0
- package/dist/public/assets/{_DrnCFDue2.js → _B9EjUGkg2.js} +1 -1
- package/dist/public/assets/_B9EjUGkg2.js.br +0 -0
- package/dist/public/assets/{_CgeKq2-o.js → _BBji3Y6b.js} +1 -1
- package/dist/public/assets/{_CgeKq2-o.js.br → _BBji3Y6b.js.br} +0 -0
- package/dist/public/assets/{_CTTuxe3N2.js → _BD7DcChF2.js} +1 -1
- package/dist/public/assets/_BD7DcChF2.js.br +0 -0
- package/dist/public/assets/{_Ddh9AEPH2.js → _BK807sss2.js} +1 -1
- package/dist/public/assets/_BK807sss2.js.br +0 -0
- package/dist/public/assets/{_l8LgTz7i.js → _BRsp-Ky6.js} +1 -1
- package/dist/public/assets/_BRsp-Ky6.js.br +0 -0
- package/dist/public/assets/{_BVFO0MQN.js → _BSES323S.js} +1 -1
- package/dist/public/assets/_BSES323S.js.br +0 -0
- package/dist/public/assets/{_ROrfh8pq2.js → _BTgPFRhu2.js} +1 -1
- package/dist/public/assets/_BTgPFRhu2.js.br +0 -0
- package/dist/public/assets/{_4uzDltDB.js → _BUfH9de1.js} +1 -1
- package/dist/public/assets/_BUfH9de1.js.br +0 -0
- package/dist/public/assets/{_TlJdhc872.js → _BWPyMgyP2.js} +1 -1
- package/dist/public/assets/_BWPyMgyP2.js.br +0 -0
- package/dist/public/assets/{_Bn4Yxbs-.js → _BZO0Y-8B.js} +1 -1
- package/dist/public/assets/_BZO0Y-8B.js.br +0 -0
- package/dist/public/assets/{_D_TU1ccH2.js → _B_vKus4A2.js} +1 -1
- package/dist/public/assets/_B_vKus4A2.js.br +0 -0
- package/dist/public/assets/{_Cv-_61om2.js → _BdCj3x0L2.js} +1 -1
- package/dist/public/assets/_BdCj3x0L2.js.br +0 -0
- package/dist/public/assets/{_CmCNOS1s.js → _BdVI9Fdo.js} +1 -1
- package/dist/public/assets/_BdVI9Fdo.js.br +0 -0
- package/dist/public/assets/{_Dlu2lNNv.js → _BmgHXWoi.js} +1 -1
- package/dist/public/assets/_BmgHXWoi.js.br +0 -0
- package/dist/public/assets/{_DMXr53s0.js → _BqGtsnPj.js} +1 -1
- package/dist/public/assets/_BqGtsnPj.js.br +0 -0
- package/dist/public/assets/{_mz4IwXGu.js → _BrtordPT.js} +21 -21
- package/dist/public/assets/_BrtordPT.js.br +0 -0
- package/dist/public/assets/{_BjBLGYpT.js → _BybHWkEd.js} +1 -1
- package/dist/public/assets/_BybHWkEd.js.br +0 -0
- package/dist/public/assets/{_CMcC5NfO.js → _BzVV11vP.js} +1 -1
- package/dist/public/assets/_BzVV11vP.js.br +0 -0
- package/dist/public/assets/{_Bc_oQQms2.js → _C52Kc8e02.js} +1 -1
- package/dist/public/assets/_C52Kc8e02.js.br +0 -0
- package/dist/public/assets/{_e-09CJmy.js → _C8S11_GE.js} +1 -1
- package/dist/public/assets/_C8S11_GE.js.br +0 -0
- package/dist/public/assets/{_D2GYbNVm2.js → _C8tBcmDQ2.js} +1 -1
- package/dist/public/assets/_C8tBcmDQ2.js.br +0 -0
- package/dist/public/assets/{_lsWhs50P.js → _C9uj0n8L.js} +1 -1
- package/dist/public/assets/_C9uj0n8L.js.br +0 -0
- package/dist/public/assets/{_BoroURD8.js → _CBhJbYqJ.js} +1 -1
- package/dist/public/assets/_CBhJbYqJ.js.br +0 -0
- package/dist/public/assets/{_2RqhVli_.js → _CD2VZxgc.js} +1 -1
- package/dist/public/assets/_CD2VZxgc.js.br +0 -0
- package/dist/public/assets/{_uJxmn4g-.js → _CD9LUiA1.js} +1 -1
- package/dist/public/assets/_CD9LUiA1.js.br +0 -0
- package/dist/public/assets/{_FsBjJqid.js → _CGfW8lhA.js} +1 -1
- package/dist/public/assets/_CGfW8lhA.js.br +0 -0
- package/dist/public/assets/{_OLZq7u5Z.js → _CH6beBRd.js} +1 -1
- package/dist/public/assets/_CH6beBRd.js.br +0 -0
- package/dist/public/assets/{_DNzBnKww.js → _CK_oq_Zy.js} +1 -1
- package/dist/public/assets/_CK_oq_Zy.js.br +0 -0
- package/dist/public/assets/{_ohVSZIH5.js → _CKsCeryF.js} +1 -1
- package/dist/public/assets/_CKsCeryF.js.br +0 -0
- package/dist/public/assets/{_CYWQWhM3.js → _CN6zO7Nx.js} +1 -1
- package/dist/public/assets/_CN6zO7Nx.js.br +0 -0
- package/dist/public/assets/{_JWLm_-Hw.js → _CT_4aU9v.js} +1 -1
- package/dist/public/assets/_CT_4aU9v.js.br +0 -0
- package/dist/public/assets/{_B15VVecH.js → _Cc0zTPig.js} +1 -1
- package/dist/public/assets/_Cc0zTPig.js.br +0 -0
- package/dist/public/assets/{_U-L3COPT.js → _CkvKurj3.js} +1 -1
- package/dist/public/assets/_CkvKurj3.js.br +0 -0
- package/dist/public/assets/{_BRNT6Euu2.js → _CqCBTa4i2.js} +1 -1
- package/dist/public/assets/_CqCBTa4i2.js.br +0 -0
- package/dist/public/assets/{_CGJwkY1t.js → _CxAIftOa.js} +1 -1
- package/dist/public/assets/_CxAIftOa.js.br +0 -0
- package/dist/public/assets/{_DwDOs-hG2.js → _Cxc4x3kp2.js} +1 -1
- package/dist/public/assets/_Cxc4x3kp2.js.br +0 -0
- package/dist/public/assets/{_43PRStcn.js → _D-lWfj_d.js} +1 -1
- package/dist/public/assets/_D-lWfj_d.js.br +0 -0
- package/dist/public/assets/{_Cusx8CXY.js → _D1v40D0_.js} +1 -1
- package/dist/public/assets/_D1v40D0_.js.br +0 -0
- package/dist/public/assets/{_BC0J2_-32.js → _D2CBcmy92.js} +1 -1
- package/dist/public/assets/_D2CBcmy92.js.br +0 -0
- package/dist/public/assets/{_B0dJ1TmV.js → _DANBCOm8.js} +1 -1
- package/dist/public/assets/_DANBCOm8.js.br +0 -0
- package/dist/public/assets/{_DgoDrOg9.js → _DFxITRGV.js} +6 -6
- package/dist/public/assets/_DFxITRGV.js.br +0 -0
- package/dist/public/assets/{_g_g39Z4x2.js → _DIcIfpSi2.js} +1 -1
- package/dist/public/assets/_DIcIfpSi2.js.br +0 -0
- package/dist/public/assets/{_pg0OwSj92.js → _DIiQj1WK2.js} +1 -1
- package/dist/public/assets/_DIiQj1WK2.js.br +0 -0
- package/dist/public/assets/{_QY-Ytpyj.js → _DJF1Yq0V.js} +1 -1
- package/dist/public/assets/_DJF1Yq0V.js.br +0 -0
- package/dist/public/assets/{_DyTDTRq1.js → _DMyeY0fg.js} +1 -1
- package/dist/public/assets/_DMyeY0fg.js.br +0 -0
- package/dist/public/assets/{_DeAHixdN.js → _DPYxtc2v.js} +1 -1
- package/dist/public/assets/_DPYxtc2v.js.br +0 -0
- package/dist/public/assets/{_CmBrLhAh2.js → _DY5rDZr62.js} +1 -1
- package/dist/public/assets/_DY5rDZr62.js.br +0 -0
- package/dist/public/assets/{_C7yNzPiC.js → _DZBUwVb4.js} +1 -1
- package/dist/public/assets/_DZBUwVb4.js.br +0 -0
- package/dist/public/assets/{_Dq1yfpqy.js → _DcQSDUkF.js} +1 -1
- package/dist/public/assets/_DcQSDUkF.js.br +0 -0
- package/dist/public/assets/{_Buq2_Wff2.js → _Ddhg8pUf2.js} +1 -1
- package/dist/public/assets/_Ddhg8pUf2.js.br +0 -0
- package/dist/public/assets/{_C9iASNNr.js → _Dev6jrQa.js} +1 -1
- package/dist/public/assets/_Dev6jrQa.js.br +0 -0
- package/dist/public/assets/{_DK4Yj0y5.js → _DmOEoBSj.js} +1 -1
- package/dist/public/assets/{_Cc2ZvwOU2.js → _DoJIySsK2.js} +1 -1
- package/dist/public/assets/_DoJIySsK2.js.br +0 -0
- package/dist/public/assets/{_BUgyA17v.js → _Ds-nHHU4.js} +1 -1
- package/dist/public/assets/_Ds-nHHU4.js.br +0 -0
- package/dist/public/assets/{_u1NutSwu2.js → _Dza3l03i2.js} +1 -1
- package/dist/public/assets/_Dza3l03i2.js.br +0 -0
- package/dist/public/assets/{_CdNQc4Og.js → _E92w3rhc.js} +1 -1
- package/dist/public/assets/_E92w3rhc.js.br +0 -0
- package/dist/public/assets/{_DyII464-.js → _KIdOm5wV.js} +1 -1
- package/dist/public/assets/_KIdOm5wV.js.br +0 -0
- package/dist/public/assets/{_Czrr5AFc.js → _KkA9wgSQ.js} +1 -1
- package/dist/public/assets/_KkA9wgSQ.js.br +0 -0
- package/dist/public/assets/{_CsgdD5I-.js → _Qnv2YVI1.js} +1 -1
- package/dist/public/assets/_Qnv2YVI1.js.br +0 -0
- package/dist/public/assets/{_DcgLE27V.js → _RD4UJVHf.js} +1 -1
- package/dist/public/assets/_RD4UJVHf.js.br +0 -0
- package/dist/public/assets/{_lhL7OV7_.js → _Rw9EiWl4.js} +1 -1
- package/dist/public/assets/_Rw9EiWl4.js.br +0 -0
- package/dist/public/assets/{_49DiKr5L.js → _VPFo3zSh.js} +1 -1
- package/dist/public/assets/_VPFo3zSh.js.br +0 -0
- package/dist/public/assets/{_CZwfKSM-.js → _Yb5xKwv4.js} +1 -1
- package/dist/public/assets/_Yb5xKwv4.js.br +0 -0
- package/dist/public/assets/{_39wVE9tP.js → _bwdm3qFa.js} +1 -1
- package/dist/public/assets/_bwdm3qFa.js.br +0 -0
- package/dist/public/assets/{_BMBt7ACI2.js → _ghie1-zD2.js} +1 -1
- package/dist/public/assets/{_Cj4eWcbw2.js → _nKN2u-0c2.js} +1 -1
- package/dist/public/assets/_nKN2u-0c2.js.br +0 -0
- package/dist/public/assets/{_HsinODJ3.js → _qR1knnaE.js} +1 -1
- package/dist/public/assets/_qR1knnaE.js.br +0 -0
- package/dist/public/assets/{_DuSXkcpH2.js → _snEbm2Ar2.js} +1 -1
- package/dist/public/assets/_snEbm2Ar2.js.br +0 -0
- package/dist/public/assets/{_Ci2u2uah2.js → _tGNZxau42.js} +1 -1
- package/dist/public/assets/{_Boyh70Ee2.js → _tejT-pAf2.js} +1 -1
- package/dist/public/assets/_tejT-pAf2.js.br +0 -0
- package/dist/public/assets/{_nG_P_baQ.js → _ulYs8wvn.js} +1 -1
- package/dist/public/assets/_ulYs8wvn.js.br +0 -0
- package/dist/public/assets/app-page-DuEXAcnI.css +1 -0
- package/dist/public/assets/app-page-DuEXAcnI.css.br +0 -0
- package/dist/public/assets/diff-view-BK4TD-oL.css +1 -0
- package/dist/public/assets/diff-view-BK4TD-oL.css.br +0 -0
- package/dist/public/assets/new-gddPZdgU.js +1 -0
- package/dist/public/assets/settings-gddPZdgU.js +1 -0
- package/dist/public/assets/w-gddPZdgU.js +1 -0
- package/dist/public/assets/w._-E2EHSRw5.js +1 -0
- package/dist/public/assets/w._-gddPZdgU.js +1 -0
- package/lib/setup/doctor.d.mts +0 -2
- package/lib/setup/doctor.mjs +2 -2
- package/lib/usage/format.d.mts +2 -0
- package/lib/usage/format.mjs +22 -0
- package/package.json +1 -1
- package/dist/_BBEL67Rf.js +0 -2
- package/dist/public/assets/_2RqhVli_.js.br +0 -0
- package/dist/public/assets/_39wVE9tP.js.br +0 -0
- package/dist/public/assets/_43PRStcn.js.br +0 -0
- package/dist/public/assets/_49DiKr5L.js.br +0 -0
- package/dist/public/assets/_4uzDltDB.js.br +0 -0
- package/dist/public/assets/_B0dJ1TmV.js.br +0 -0
- package/dist/public/assets/_B15VVecH.js.br +0 -0
- package/dist/public/assets/_BC0J2_-32.js.br +0 -0
- package/dist/public/assets/_BJjHxccu2.js.br +0 -0
- package/dist/public/assets/_BRNT6Euu2.js.br +0 -0
- package/dist/public/assets/_BUgyA17v.js.br +0 -0
- package/dist/public/assets/_BVFO0MQN.js.br +0 -0
- package/dist/public/assets/_Bc_oQQms2.js.br +0 -0
- package/dist/public/assets/_BjBLGYpT.js.br +0 -0
- package/dist/public/assets/_Bn4Yxbs-.js.br +0 -0
- package/dist/public/assets/_BoroURD8.js.br +0 -0
- package/dist/public/assets/_Boyh70Ee2.js.br +0 -0
- package/dist/public/assets/_Buq2_Wff2.js.br +0 -0
- package/dist/public/assets/_BxMSfS55.js.br +0 -0
- package/dist/public/assets/_C7yNzPiC.js.br +0 -0
- package/dist/public/assets/_C9iASNNr.js.br +0 -0
- package/dist/public/assets/_CGJwkY1t.js.br +0 -0
- package/dist/public/assets/_CMcC5NfO.js.br +0 -0
- package/dist/public/assets/_CTTuxe3N2.js.br +0 -0
- package/dist/public/assets/_CYWQWhM3.js.br +0 -0
- package/dist/public/assets/_CZwfKSM-.js.br +0 -0
- package/dist/public/assets/_Cc2ZvwOU2.js.br +0 -0
- package/dist/public/assets/_CdNQc4Og.js.br +0 -0
- package/dist/public/assets/_Cg22zLVo.js.br +0 -0
- package/dist/public/assets/_Cj4eWcbw2.js.br +0 -0
- package/dist/public/assets/_CmBrLhAh2.js.br +0 -0
- package/dist/public/assets/_CmCNOS1s.js.br +0 -0
- package/dist/public/assets/_CsgdD5I-.js.br +0 -0
- package/dist/public/assets/_Cusx8CXY.js.br +0 -0
- package/dist/public/assets/_Cv-_61om2.js.br +0 -0
- package/dist/public/assets/_Czrr5AFc.js.br +0 -0
- package/dist/public/assets/_D2GYbNVm2.js.br +0 -0
- package/dist/public/assets/_DMXr53s0.js.br +0 -0
- package/dist/public/assets/_DNzBnKww.js.br +0 -0
- package/dist/public/assets/_D_TU1ccH2.js.br +0 -0
- package/dist/public/assets/_DcgLE27V.js.br +0 -0
- package/dist/public/assets/_Ddh9AEPH2.js.br +0 -0
- package/dist/public/assets/_DeAHixdN.js.br +0 -0
- package/dist/public/assets/_DgoDrOg9.js.br +0 -0
- package/dist/public/assets/_Dlu2lNNv.js.br +0 -0
- package/dist/public/assets/_Dq1yfpqy.js.br +0 -0
- package/dist/public/assets/_DreKZ6Rw.js.br +0 -0
- package/dist/public/assets/_DrnCFDue2.js.br +0 -0
- package/dist/public/assets/_DuSXkcpH2.js.br +0 -0
- package/dist/public/assets/_DwDOs-hG2.js.br +0 -0
- package/dist/public/assets/_DyII464-.js.br +0 -0
- package/dist/public/assets/_DyTDTRq1.js.br +0 -0
- package/dist/public/assets/_FsBjJqid.js.br +0 -0
- package/dist/public/assets/_HsinODJ3.js.br +0 -0
- package/dist/public/assets/_JWLm_-Hw.js.br +0 -0
- package/dist/public/assets/_LWvTfycL.js.br +0 -0
- package/dist/public/assets/_OLZq7u5Z.js.br +0 -0
- package/dist/public/assets/_QY-Ytpyj.js.br +0 -0
- package/dist/public/assets/_ROrfh8pq2.js.br +0 -0
- package/dist/public/assets/_TlJdhc872.js.br +0 -0
- package/dist/public/assets/_U-L3COPT.js.br +0 -0
- package/dist/public/assets/_e-09CJmy.js.br +0 -0
- package/dist/public/assets/_g_g39Z4x2.js.br +0 -0
- package/dist/public/assets/_l8LgTz7i.js.br +0 -0
- package/dist/public/assets/_lhL7OV7_.js.br +0 -0
- package/dist/public/assets/_lsWhs50P.js.br +0 -0
- package/dist/public/assets/_mz4IwXGu.js.br +0 -0
- package/dist/public/assets/_nG_P_baQ.js.br +0 -0
- package/dist/public/assets/_ohVSZIH5.js.br +0 -0
- package/dist/public/assets/_pg0OwSj92.js.br +0 -0
- package/dist/public/assets/_u1NutSwu2.js.br +0 -0
- package/dist/public/assets/_uJxmn4g-.js.br +0 -0
- package/dist/public/assets/app-page-BbtnI6Ar.css +0 -1
- package/dist/public/assets/app-page-BbtnI6Ar.css.br +0 -0
- package/dist/public/assets/diff-view-BZuzHKWL.css +0 -1
- package/dist/public/assets/diff-view-BZuzHKWL.css.br +0 -0
- package/dist/public/assets/new-N_jFKGt0.js +0 -1
- package/dist/public/assets/settings-N_jFKGt0.js +0 -1
- package/dist/public/assets/w-N_jFKGt0.js +0 -1
- package/dist/public/assets/w._-BO2RF7K9.js +0 -1
- package/dist/public/assets/w._-N_jFKGt0.js +0 -1
package/dist/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as __toCommonJS, i as __require, n as __esmMin, o as __toESM, r as __exportAll, t as __commonJSMin } from "./_BMI-E3GI.js";
|
|
2
|
-
import { $ as setSetting, A as setScrapedPhase, B as saveSubscription, C as agentBadge, D as agentMeta, E as agentLabel, F as manifest, G as agentChoices, H as subscribe, I as normalizeAccent, J as enabledAgents, K as allPrefs, L as setInstance, M as ACCENT_RE, N as getInstance, O as clearAgentPhase, P as iconSvg, Q as setPref, R as deleteSubscription, S as blankRow, T as agentFromCommand, U as subscriberCount, V as publish, W as subscriberJoins, X as preferredAgent, Y as getSetting, Z as setDisabledAgents, _ as tmuxName, _t as run, a as ensureTmuxServer, at as which, b as readHookPayload, c as killWorkspaceSessions, ct as agentById, d as newSessionArgs, dt as db, et as discoverAgents, ft as get, g as sessionStates, gt as git, h as sendToSession, ht as gh, i as disposeSessions, it as setupPath, j as setSessionViewers, k as setAgentPhase, l as listSessions, lt as toolById, m as renameSession, mt as TMUX_SOCKET, n as clearTmuxStarted, nt as ghKnownHosts, o as getSession, ot as DEFAULT_GITHUB_HOST, p as panePids, pt as workspacePath, q as disabledAgents, r as createSession, rt as miseVersions, s as killSession, st as TOOLS, t as cleanEnv, tt as doctor, u as markTmuxStarted, ut as all, v as tmuxWasStarted, vt as tmux, w as agentFamily, x as reportsWorking, y as AGENTS, yt as config, z as pushPublicKey } from "./
|
|
3
|
-
import { $ as _content, A as repoLabel, At as attrTag, B as phase, C as sideNavOpen, Ct as _serialize_if, D as icon_xmark_default, Dt as _to_text, E as toast_default, Et as _template, H as $global, I as iconBtnRow, J as _attr_or, K as _attr_input_value, L as iconBtnXs, M as setPrimaryHost, Mt as withPageAssets, N as btnLg, Nt as writeScope, O as icon_base_default, Ot as _trailers, P as btnSm, Q as _attrs_partial, R as inputLg, S as setWorkspaceTab, St as _serialize_guard, T as workspaceTab, Tt as _subscribe, U as _attr, V as tone, W as _attr_class, X as _attr_style, Y as _attr_select_value, Z as _attrs, _t as _scope_id, at as _escape, bt as _script, c as icon_arrow_up_default, ct as _for_of, d as iconBtn$2, dt as _html, et as _content_resume, f as row, ft as _id, gt as _resume_branch, ht as _resume, i as icon_sidebar_default, it as _el_resume, j as repoWebUrl$1, jt as forOf, k as parseRepoUrl, kt as _var, l as icon_back_default, lt as _hoist, mt as _peek_scope_id, n as findIconBtn, o as rankRepos, ot as _existing_scope, p as sectionCount$1, pt as _if, q as _attr_option_value, r as findInput, rt as _el_read_error, s as icon_search_default, st as _flush_head, t as icon_arrow_down_default, tt as _dynamic_tag, u as icon_refresh_default, ut as _hoist_read_error, v as ignoredSsoOrgs, vt as _scope_reason, w as theme, wt as _set_serialize_reason, x as setTheme, xt as _sep, yt as _scope_with_id, z as metaTrunc } from "./
|
|
2
|
+
import { $ as setSetting, A as setScrapedPhase, B as saveSubscription, C as agentBadge, D as agentMeta, E as agentLabel, F as manifest, G as agentChoices, H as subscribe, I as normalizeAccent, J as enabledAgents, K as allPrefs, L as setInstance, M as ACCENT_RE, N as getInstance, O as clearAgentPhase, P as iconSvg, Q as setPref, R as deleteSubscription, S as blankRow, T as agentFromCommand, U as subscriberCount, V as publish, W as subscriberJoins, X as preferredAgent, Y as getSetting, Z as setDisabledAgents, _ as tmuxName, _t as run, a as ensureTmuxServer, at as which, b as readHookPayload, c as killWorkspaceSessions, ct as agentById, d as newSessionArgs, dt as db, et as discoverAgents, ft as get, g as sessionStates, gt as git, h as sendToSession, ht as gh, i as disposeSessions, it as setupPath, j as setSessionViewers, k as setAgentPhase, l as listSessions, lt as toolById, m as renameSession, mt as TMUX_SOCKET, n as clearTmuxStarted, nt as ghKnownHosts, o as getSession, ot as DEFAULT_GITHUB_HOST, p as panePids, pt as workspacePath, q as disabledAgents, r as createSession, rt as miseVersions, s as killSession, st as TOOLS, t as cleanEnv, tt as doctor, u as markTmuxStarted, ut as all, v as tmuxWasStarted, vt as tmux, w as agentFamily, x as reportsWorking, y as AGENTS, yt as config, z as pushPublicKey } from "./_b8Fct3kh.js";
|
|
3
|
+
import { $ as _content, A as repoLabel, At as attrTag, B as phase, C as sideNavOpen, Ct as _serialize_if, D as icon_xmark_default, Dt as _to_text, E as toast_default, Et as _template, H as $global, I as iconBtnRow, J as _attr_or, K as _attr_input_value, L as iconBtnXs, M as setPrimaryHost, Mt as withPageAssets, N as btnLg, Nt as writeScope, O as icon_base_default, Ot as _trailers, P as btnSm, Q as _attrs_partial, R as inputLg, S as setWorkspaceTab, St as _serialize_guard, T as workspaceTab, Tt as _subscribe, U as _attr, V as tone, W as _attr_class, X as _attr_style, Y as _attr_select_value, Z as _attrs, _t as _scope_id, at as _escape, bt as _script, c as icon_arrow_up_default, ct as _for_of, d as iconBtn$2, dt as _html, et as _content_resume, f as row, ft as _id, gt as _resume_branch, ht as _resume, i as icon_sidebar_default, it as _el_resume, j as repoWebUrl$1, jt as forOf, k as parseRepoUrl, kt as _var, l as icon_back_default, lt as _hoist, mt as _peek_scope_id, n as findIconBtn, o as rankRepos, ot as _existing_scope, p as sectionCount$1, pt as _if, q as _attr_option_value, r as findInput, rt as _el_read_error, s as icon_search_default, st as _flush_head, t as icon_arrow_down_default, tt as _dynamic_tag, u as icon_refresh_default, ut as _hoist_read_error, v as ignoredSsoOrgs, vt as _scope_reason, w as theme, wt as _set_serialize_reason, x as setTheme, xt as _sep, yt as _scope_with_id, z as metaTrunc } from "./_BBnpIqz1.js";
|
|
4
4
|
import fs from "node:fs";
|
|
5
5
|
import { createServer } from "node:http";
|
|
6
6
|
import path from "node:path";
|
|
@@ -1921,6 +1921,11 @@ var branches = swr(3e5, async (fullName) => {
|
|
|
1921
1921
|
//#endregion
|
|
1922
1922
|
//#region src/server/procs.ts
|
|
1923
1923
|
var darwin = process.platform === "darwin";
|
|
1924
|
+
/** Is `cwd` the workspace root or somewhere under it? The trailing slash is
|
|
1925
|
+
* the whole point: a sibling `…/work-2` must not read as inside `…/work`. */
|
|
1926
|
+
function inside(cwd, root) {
|
|
1927
|
+
return cwd === root || cwd.startsWith(root + "/");
|
|
1928
|
+
}
|
|
1924
1929
|
/** Listening TCP ports attributed to workspaces by the owning process's cwd. */
|
|
1925
1930
|
async function portsByWorkspace(paths) {
|
|
1926
1931
|
const result = /* @__PURE__ */ new Map();
|
|
@@ -1929,7 +1934,7 @@ async function portsByWorkspace(paths) {
|
|
|
1929
1934
|
for (const info of ports) {
|
|
1930
1935
|
const cwd = cwds.get(info.pid);
|
|
1931
1936
|
if (!cwd) continue;
|
|
1932
|
-
for (const [wsId, wsPath] of canonical) if (cwd
|
|
1937
|
+
for (const [wsId, wsPath] of canonical) if (inside(cwd, wsPath)) {
|
|
1933
1938
|
const list = result.get(wsId) || [];
|
|
1934
1939
|
list.push(info);
|
|
1935
1940
|
result.set(wsId, list);
|
|
@@ -1949,7 +1954,7 @@ async function workspaceProcs(wsPath) {
|
|
|
1949
1954
|
for (const { port, pid } of ports) portsByPid.set(pid, [...portsByPid.get(pid) || [], port]);
|
|
1950
1955
|
const procs = [];
|
|
1951
1956
|
for (const [pid, cwd] of cwds) {
|
|
1952
|
-
if (cwd
|
|
1957
|
+
if (!inside(cwd, wsPath)) continue;
|
|
1953
1958
|
const parts = await procArgs(pid);
|
|
1954
1959
|
if (!parts.length) continue;
|
|
1955
1960
|
const cmd = parts[0].split("/").pop() || parts[0];
|
|
@@ -1975,10 +1980,7 @@ async function killWorkspaceProcs(wsPath) {
|
|
|
1975
1980
|
async function killWorkspaceProc(pid, wsPaths) {
|
|
1976
1981
|
const cwd = await readCwd(pid);
|
|
1977
1982
|
if (!cwd) return false;
|
|
1978
|
-
if (!wsPaths.some((p) =>
|
|
1979
|
-
const root = realPath(p);
|
|
1980
|
-
return cwd === root || cwd.startsWith(root + "/");
|
|
1981
|
-
})) return false;
|
|
1983
|
+
if (!wsPaths.some((p) => inside(cwd, realPath(p)))) return false;
|
|
1982
1984
|
try {
|
|
1983
1985
|
process.kill(pid, "SIGTERM");
|
|
1984
1986
|
} catch {
|
|
@@ -2146,10 +2148,10 @@ function getWorkspace(id) {
|
|
|
2146
2148
|
const ws = get("SELECT * FROM workspaces WHERE id = ?", id);
|
|
2147
2149
|
return ws && hydrate(ws);
|
|
2148
2150
|
}
|
|
2151
|
+
var home$1 = os.homedir();
|
|
2149
2152
|
function hydrate(ws) {
|
|
2150
|
-
const home = os.homedir();
|
|
2151
2153
|
ws.repos = all("SELECT full_name, worktree, base_branch, default_branch FROM repos WHERE workspace_id = ? ORDER BY worktree", ws.id);
|
|
2152
|
-
ws.display_path = ws.path.startsWith(home) ? `~${ws.path.slice(home.length)}` : ws.path;
|
|
2154
|
+
ws.display_path = ws.path.startsWith(home$1) ? `~${ws.path.slice(home$1.length)}` : ws.path;
|
|
2153
2155
|
return ws;
|
|
2154
2156
|
}
|
|
2155
2157
|
async function createWorkspace(name, repos) {
|
|
@@ -2599,12 +2601,7 @@ async function pruneLaneBranch(workspaceId, fullName, lane, headOid) {
|
|
|
2599
2601
|
if (!ws.repos.some((r) => r.full_name === fullName)) return false;
|
|
2600
2602
|
return withRepoLock(fullName, async () => {
|
|
2601
2603
|
const bare = barePath(fullName);
|
|
2602
|
-
|
|
2603
|
-
"rev-parse",
|
|
2604
|
-
"--verify",
|
|
2605
|
-
`refs/heads/${lane}`
|
|
2606
|
-
], bare).catch(() => "");
|
|
2607
|
-
if (!local || local !== headOid) return false;
|
|
2604
|
+
if (await revParse(bare, `refs/heads/${lane}`) !== headOid) return false;
|
|
2608
2605
|
return git([
|
|
2609
2606
|
"branch",
|
|
2610
2607
|
"-D",
|
|
@@ -3317,14 +3314,13 @@ async function refreshPrsBatch(targets, force = false) {
|
|
|
3317
3314
|
if (upstream) names.add(splitRepo(upstream).name);
|
|
3318
3315
|
byHost.set(host, names);
|
|
3319
3316
|
}
|
|
3320
|
-
const
|
|
3321
|
-
const results = await Promise.all([...byHost].map(([host, names]) => searchPrs(host, [...names],
|
|
3317
|
+
const branches = [...new Set(wanted.map((t) => t.branch))];
|
|
3318
|
+
const results = await Promise.all([...byHost].map(([host, names]) => searchPrs(host, [...names], branches).catch((err) => {
|
|
3322
3319
|
if (byHost.size === 1) throw err;
|
|
3323
3320
|
return null;
|
|
3324
3321
|
})));
|
|
3325
3322
|
const nodes = results.flatMap((r) => r ?? []);
|
|
3326
3323
|
const failedHosts = new Set([...byHost.keys()].filter((_, i) => results[i] === null));
|
|
3327
|
-
const branches = [...new Set(wanted.map((t) => t.branch))];
|
|
3328
3324
|
for (const target of wanted) {
|
|
3329
3325
|
if (failedHosts.has(splitRepo(target.fullName).host)) continue;
|
|
3330
3326
|
const foreign = branches.filter((b) => b !== target.branch);
|
|
@@ -3518,15 +3514,12 @@ async function statusForAllFresh() {
|
|
|
3518
3514
|
/** RSS here is the Node + Marko baseline (~80 MB empty, ~115 MB loaded),
|
|
3519
3515
|
* not a leak and not worth chasing — young-gen flags do not move it. */
|
|
3520
3516
|
async function computeStatus() {
|
|
3521
|
-
const
|
|
3517
|
+
const everyWorkspace = listWorkspaces();
|
|
3518
|
+
const workspaces = everyWorkspace.filter((ws) => ws.status === "active");
|
|
3522
3519
|
const paths = new Map(workspaces.map((ws) => [ws.id, ws.path]));
|
|
3523
3520
|
const [ports, states] = await Promise.all([portsByWorkspace(paths), sessionStates()]);
|
|
3524
|
-
const allBranches = listWorkspaces().map((w) => ({
|
|
3525
|
-
id: w.id,
|
|
3526
|
-
branch: w.branch
|
|
3527
|
-
}));
|
|
3528
3521
|
const entries = await Promise.all(workspaces.map(async (ws) => {
|
|
3529
|
-
const foreign =
|
|
3522
|
+
const foreign = everyWorkspace.filter((w) => w.id !== ws.id).map((w) => w.branch);
|
|
3530
3523
|
const statuses = await Promise.all(ws.repos.map((repo) => repoStatus(ws, repo, foreign)));
|
|
3531
3524
|
return [ws.id, {
|
|
3532
3525
|
ports: ports.get(ws.id) || [],
|
|
@@ -3587,7 +3580,7 @@ var QUICK_MS = 80;
|
|
|
3587
3580
|
var _middleware_default$3 = Run.ALL(async (_ctx, next) => {
|
|
3588
3581
|
const statusP = statusForAll();
|
|
3589
3582
|
const quick = await Promise.race([statusP.then((s) => ({ s })), sleep(QUICK_MS).then(() => null)]).catch(() => null);
|
|
3590
|
-
|
|
3583
|
+
const res = await next({
|
|
3591
3584
|
workspaces: listWorkspaces(),
|
|
3592
3585
|
settings: {
|
|
3593
3586
|
preferredAgent: preferredAgent(),
|
|
@@ -3600,6 +3593,8 @@ var _middleware_default$3 = Run.ALL(async (_ctx, next) => {
|
|
|
3600
3593
|
setup: null,
|
|
3601
3594
|
usage: usagePeek()
|
|
3602
3595
|
});
|
|
3596
|
+
if (res.headers.get("content-type")?.startsWith("text/html")) res.headers.set("cache-control", "private, no-cache");
|
|
3597
|
+
return res;
|
|
3603
3598
|
});
|
|
3604
3599
|
//#endregion
|
|
3605
3600
|
//#region src/routes/_app/w/$id/+middleware.ts
|
|
@@ -3749,6 +3744,8 @@ function clearAuthReloadGuard() {
|
|
|
3749
3744
|
/** True when a Response looks like an auth/proxy bounce instead of our JSON API. */
|
|
3750
3745
|
function isAuthDeathResponse(res) {
|
|
3751
3746
|
if (res.status === 401 || res.status === 403) return true;
|
|
3747
|
+
if (res.type === "opaqueredirect") return true;
|
|
3748
|
+
if (res.redirected && new URL(res.url).origin !== location.origin) return true;
|
|
3752
3749
|
const ct = res.headers.get("content-type") || "";
|
|
3753
3750
|
if (ct.includes("text/html") && !ct.includes("json")) return true;
|
|
3754
3751
|
return false;
|
|
@@ -3785,6 +3782,23 @@ async function api$7(url, init) {
|
|
|
3785
3782
|
return data;
|
|
3786
3783
|
}
|
|
3787
3784
|
//#endregion
|
|
3785
|
+
//#region lib/usage/format.mjs
|
|
3786
|
+
/** Percent, with a decimal only where rounding would lie: 99.6% must not
|
|
3787
|
+
* read as a spent 100%, and 0.4% must not read as an untouched 0%. */
|
|
3788
|
+
function pctText(pct) {
|
|
3789
|
+
const rounded = Math.round(pct);
|
|
3790
|
+
return rounded !== pct && (rounded === 100 || rounded === 0) ? `${pct.toFixed(1)}%` : `${rounded}%`;
|
|
3791
|
+
}
|
|
3792
|
+
/** Coarse span — minutes, then hours, then days. Used for "resets in" and
|
|
3793
|
+
* "n old", where a precise figure would imply freshness it doesn't have. */
|
|
3794
|
+
function duration(ms) {
|
|
3795
|
+
const m = Math.round(ms / 6e4);
|
|
3796
|
+
if (m < 60) return `${m}m`;
|
|
3797
|
+
const h = Math.round(m / 60);
|
|
3798
|
+
if (h < 48) return `${h}h`;
|
|
3799
|
+
return `${Math.round(h / 24)}d`;
|
|
3800
|
+
}
|
|
3801
|
+
//#endregion
|
|
3788
3802
|
//#region src/client/usage.ts
|
|
3789
3803
|
var cached$1 = null;
|
|
3790
3804
|
function lastUsage$1() {
|
|
@@ -3928,28 +3942,28 @@ function applyInstance(inst) {
|
|
|
3928
3942
|
}
|
|
3929
3943
|
//#endregion
|
|
3930
3944
|
//#region src/tags/settings-page.css.ts
|
|
3931
|
-
var content$2 = "
|
|
3932
|
-
var agentGrid = "
|
|
3933
|
-
var toolGrid = "
|
|
3934
|
-
var themeSeg = "
|
|
3935
|
-
var swatches = "
|
|
3945
|
+
var content$2 = "_cb _bo _bp";
|
|
3946
|
+
var agentGrid = "_cf _bz";
|
|
3947
|
+
var toolGrid = "_cp _bz";
|
|
3948
|
+
var themeSeg = "_cE _5";
|
|
3949
|
+
var swatches = "_cM _5";
|
|
3936
3950
|
//#endregion
|
|
3937
3951
|
//#region src/tags/page-head.marko
|
|
3938
3952
|
var page_head_default = _template("r", (input) => {
|
|
3939
3953
|
const $scope0_reason = _scope_reason(), $sg__input_backHref__OR__input_onBack__OR__input_meta__OR__input_actions = _serialize_guard($scope0_reason, 3), $sg__input_meta = _serialize_guard($scope0_reason, 6), $sg__input_actions = _serialize_guard($scope0_reason, 7), $si__input_backHref__OR__input_onBack = _serialize_if($scope0_reason, 1), $si__input_meta = _serialize_if($scope0_reason, 6), $si__input_actions = _serialize_if($scope0_reason, 7);
|
|
3940
3954
|
const $scope0_id = _scope_id();
|
|
3941
|
-
_html(`<header${_attr_class("
|
|
3955
|
+
_html(`<header${_attr_class("_bq")}>`);
|
|
3942
3956
|
_if(() => {
|
|
3943
3957
|
if (input.backHref) {
|
|
3944
3958
|
const $scope1_id = _scope_id();
|
|
3945
|
-
_html(`<a${_attr("href", input.backHref)}${_attr_class([iconBtnRow, "
|
|
3959
|
+
_html(`<a${_attr("href", input.backHref)}${_attr_class([iconBtnRow, "_cT"])}${_attr_or("title", input.backTitle, " title=\"Back (Esc)\"")}${_attr_or("aria-label", input.backTitle, " aria-label=Back")}>`);
|
|
3946
3960
|
icon_back_default({ size: 16 });
|
|
3947
3961
|
_html(`</a>${_el_resume($scope1_id, "a", _serialize_guard($scope0_reason, 0))}`);
|
|
3948
3962
|
_serialize_if($scope0_reason, 2) && writeScope($scope1_id, { _: _serialize_if($scope0_reason, 0) && _scope_with_id($scope0_id) });
|
|
3949
3963
|
return 0;
|
|
3950
3964
|
} else if (input.onBack) {
|
|
3951
3965
|
const $scope2_id = _scope_id();
|
|
3952
|
-
_html(`<button${_attr_class([iconBtnRow, "
|
|
3966
|
+
_html(`<button${_attr_class([iconBtnRow, "_cT"])}${_attr_or("title", input.backTitle, " title=\"Back (Esc)\"")}${_attr_or("aria-label", input.backTitle, " aria-label=Back")}>`);
|
|
3953
3967
|
icon_back_default({ size: 16 });
|
|
3954
3968
|
_html(`</button>${_el_resume($scope2_id, "a")}`);
|
|
3955
3969
|
_script($scope2_id, "r0");
|
|
@@ -3957,11 +3971,11 @@ var page_head_default = _template("r", (input) => {
|
|
|
3957
3971
|
return 1;
|
|
3958
3972
|
}
|
|
3959
3973
|
}, $scope0_id, "b", _serialize_guard($scope0_reason, 2), _serialize_guard($scope0_reason, 1), $sg__input_backHref__OR__input_onBack__OR__input_meta__OR__input_actions, 0, 1);
|
|
3960
|
-
_html(`<div${_attr_class("
|
|
3974
|
+
_html(`<div${_attr_class("_bs")}><h1${_attr("id", input.titleId)}${_attr_class("_br")}>${_escape(input.title)}${_el_resume($scope0_id, "e", _serialize_guard($scope0_reason, 5))}</h1>${_el_resume($scope0_id, "d", _serialize_guard($scope0_reason, 4))}`);
|
|
3961
3975
|
_if(() => {
|
|
3962
3976
|
if (input.meta) {
|
|
3963
3977
|
const $scope3_id = _scope_id();
|
|
3964
|
-
_html(`<p${_attr_class("
|
|
3978
|
+
_html(`<p${_attr_class("_bt")}>`);
|
|
3965
3979
|
_dynamic_tag($scope3_id, "b", input.meta, {}, 0, 0, $sg__input_meta);
|
|
3966
3980
|
_html("</p>");
|
|
3967
3981
|
$si__input_meta && writeScope($scope3_id, { _: _scope_with_id($scope0_id) });
|
|
@@ -3972,7 +3986,7 @@ var page_head_default = _template("r", (input) => {
|
|
|
3972
3986
|
_if(() => {
|
|
3973
3987
|
if (input.actions) {
|
|
3974
3988
|
const $scope4_id = _scope_id();
|
|
3975
|
-
_html(`<div${_attr_class("
|
|
3989
|
+
_html(`<div${_attr_class("_bu")}>`);
|
|
3976
3990
|
_dynamic_tag($scope4_id, "b", input.actions, {}, 0, 0, $sg__input_actions);
|
|
3977
3991
|
_html("</div>");
|
|
3978
3992
|
$si__input_actions && writeScope($scope4_id, { _: _scope_with_id($scope0_id) });
|
|
@@ -4040,10 +4054,10 @@ var icon_agent_default = _template("G", (input) => {
|
|
|
4040
4054
|
n: $badge__closures
|
|
4041
4055
|
});
|
|
4042
4056
|
});
|
|
4043
|
-
var usageNote = "
|
|
4057
|
+
var usageNote = "_e6 _R";
|
|
4044
4058
|
//#endregion
|
|
4045
4059
|
//#region src/tags/icons/icon-warning.marko
|
|
4046
|
-
var icon_warning_default = _template("
|
|
4060
|
+
var icon_warning_default = _template("jb", (input) => {
|
|
4047
4061
|
const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
|
|
4048
4062
|
const $scope0_id = _scope_id();
|
|
4049
4063
|
_set_serialize_reason({
|
|
@@ -4060,17 +4074,6 @@ var icon_warning_default = _template("kb", (input) => {
|
|
|
4060
4074
|
});
|
|
4061
4075
|
//#endregion
|
|
4062
4076
|
//#region src/tags/usage-meters.marko
|
|
4063
|
-
function duration(ms) {
|
|
4064
|
-
const m = Math.round(ms / 6e4);
|
|
4065
|
-
if (m < 60) return `${m}m`;
|
|
4066
|
-
const h = Math.round(m / 60);
|
|
4067
|
-
if (h < 48) return `${h}h`;
|
|
4068
|
-
return `${Math.round(h / 24)}d`;
|
|
4069
|
-
}
|
|
4070
|
-
function pctText$1(pct) {
|
|
4071
|
-
const rounded = Math.round(pct);
|
|
4072
|
-
return rounded !== pct && (rounded === 100 || rounded === 0) ? `${pct.toFixed(1)}%` : `${rounded}%`;
|
|
4073
|
-
}
|
|
4074
4077
|
function resetLabel(iso, stale) {
|
|
4075
4078
|
if (!iso) return null;
|
|
4076
4079
|
const ms = new Date(iso).getTime() - Date.now();
|
|
@@ -4081,11 +4084,11 @@ var usage_meters_default = _template("D", (input) => {
|
|
|
4081
4084
|
const $scope0_reason = _scope_reason(), $sg__input_agent__OR__input_hideName = _serialize_guard($scope0_reason, 0), $sg__input_agent = _serialize_guard($scope0_reason, 1), $si__input_agent = _serialize_if($scope0_reason, 1), $sg__input_hideName = _serialize_guard($scope0_reason, 2), $si__input_agent__OR__input_hideName = _serialize_if($scope0_reason, 0);
|
|
4082
4085
|
const $scope0_id = _scope_id();
|
|
4083
4086
|
const agent = input.agent;
|
|
4084
|
-
_html(`<div${_attr_class(["
|
|
4087
|
+
_html(`<div${_attr_class(["_e0", { ["_e1"]: input.hideName }])}><div${_attr_class("_e2")}>`);
|
|
4085
4088
|
_if(() => {
|
|
4086
4089
|
if (!input.hideName) {
|
|
4087
4090
|
const $scope1_id = _scope_id();
|
|
4088
|
-
_html(`<strong${_attr_class("
|
|
4091
|
+
_html(`<strong${_attr_class("_fk")}>${_escape(agent.agent)}${_el_resume($scope1_id, "b", $sg__input_agent)}</strong>`);
|
|
4089
4092
|
$si__input_agent__OR__input_hideName && writeScope($scope1_id, { _: $si__input_agent && _scope_with_id($scope0_id) });
|
|
4090
4093
|
return 0;
|
|
4091
4094
|
}
|
|
@@ -4093,7 +4096,7 @@ var usage_meters_default = _template("D", (input) => {
|
|
|
4093
4096
|
_if(() => {
|
|
4094
4097
|
if (agent.plan && agent.plan.toLowerCase() !== agent.agent.toLowerCase()) {
|
|
4095
4098
|
const $scope2_id = _scope_id();
|
|
4096
|
-
_html(`<span${_attr_class("
|
|
4099
|
+
_html(`<span${_attr_class("_e3")}>${_escape(agent.plan.replace(/^default_/, "").replaceAll("_", " "))}${_el_resume($scope2_id, "b", $sg__input_agent)}</span>`);
|
|
4097
4100
|
$si__input_agent && writeScope($scope2_id, { _: _scope_with_id($scope0_id) });
|
|
4098
4101
|
return 0;
|
|
4099
4102
|
}
|
|
@@ -4101,21 +4104,21 @@ var usage_meters_default = _template("D", (input) => {
|
|
|
4101
4104
|
_if(() => {
|
|
4102
4105
|
if (agent.stale_seconds != null) {
|
|
4103
4106
|
const $scope3_id = _scope_id();
|
|
4104
|
-
_html(`<span${_attr_class("
|
|
4107
|
+
_html(`<span${_attr_class("_e4")}${_attr("title", `${agent.note || "provider unreachable"}. Last cached numbers, ${duration(agent.stale_seconds * 1e3)} old`)}>`);
|
|
4105
4108
|
icon_warning_default({ size: 12 });
|
|
4106
4109
|
_html(` ${_sep($sg__input_agent)}${_escape(duration(agent.stale_seconds * 1e3))}${_el_resume($scope3_id, "c", $sg__input_agent)} old</span>${_el_resume($scope3_id, "a", $sg__input_agent)}`);
|
|
4107
4110
|
$si__input_agent && writeScope($scope3_id, { _: _scope_with_id($scope0_id) });
|
|
4108
4111
|
return 0;
|
|
4109
4112
|
}
|
|
4110
4113
|
}, $scope0_id, "e", $sg__input_agent, $sg__input_agent, $sg__input_agent__OR__input_hideName, 0, 1);
|
|
4111
|
-
_html(`</div><div${_attr_class(["
|
|
4114
|
+
_html(`</div><div${_attr_class(["_e5", { ["_fl"]: agent.stale_seconds != null }])}>`);
|
|
4112
4115
|
_for_of(agent.windows || [], (win) => {
|
|
4113
4116
|
const $scope4_id = _scope_id();
|
|
4114
|
-
const pct = pctText
|
|
4117
|
+
const pct = pctText(win.used_percent);
|
|
4115
4118
|
const label = resetLabel(win.resets_at, agent.stale_seconds != null);
|
|
4116
|
-
const fillClass = win.used_percent >= 90 ? "
|
|
4117
|
-
const pctClass = win.used_percent >= 90 ? "
|
|
4118
|
-
_html(`<div${_attr_class("
|
|
4119
|
+
const fillClass = win.used_percent >= 90 ? "_fd" : win.used_percent >= 70 ? "_fc" : win.used_percent >= 40 ? "_fb" : "_fa";
|
|
4120
|
+
const pctClass = win.used_percent >= 90 ? "_fi" : win.used_percent >= 70 ? "_fh" : win.used_percent >= 40 ? "_fg" : "_ff";
|
|
4121
|
+
_html(`<div${_attr_class("_e7")}${_attr("title", `${win.window}: ${pct} used${win.resets_at ? `, resets ${new Date(win.resets_at).toLocaleString()}` : ""}`)}><span${_attr_class("_e8")}>${_escape(win.window)}${_el_resume($scope4_id, "c", $sg__input_agent)}</span><span${_attr_class("_e9")}><span${_attr_class(["_e_", fillClass])}${_attr_style(`width:${Math.min(100, Math.max(2, win.used_percent))}%`)}></span>${_el_resume($scope4_id, "e", $sg__input_agent)}</span><span${_attr_class(["_fe", pctClass])}>${_escape(pct)}${_el_resume($scope4_id, "g", $sg__input_agent)}</span>${_el_resume($scope4_id, "f", $sg__input_agent)}<span${_attr_class("_fj")}>`);
|
|
4119
4122
|
_if(() => {
|
|
4120
4123
|
if (label) {
|
|
4121
4124
|
const $scope6_id = _scope_id();
|
|
@@ -4194,14 +4197,14 @@ var sso_auth_default = _template("z", (input) => {
|
|
|
4194
4197
|
localCode = null;
|
|
4195
4198
|
}
|
|
4196
4199
|
}, "z0", $scope0_id);
|
|
4197
|
-
_html(`<div${_attr_class("
|
|
4200
|
+
_html(`<div${_attr_class("_eO")}>`);
|
|
4198
4201
|
_if(() => {
|
|
4199
4202
|
if (input.items.length) {
|
|
4200
4203
|
const $scope1_id = _scope_id();
|
|
4201
|
-
_html(`<p${_attr_class("
|
|
4204
|
+
_html(`<p${_attr_class("_eZ")}>GitHub CLI needs org SSO for ${_sep($sg__input_items)}${_escape(input.items.map((s) => s.org).join(", "))}${_el_resume($scope1_id, "b", $sg__input_items)}.</p><ul${_attr_class("_eP")}>`);
|
|
4202
4205
|
_for_of(input.items, (s) => {
|
|
4203
4206
|
const $scope2_id = _scope_id();
|
|
4204
|
-
_html(`<li${_attr_class("
|
|
4207
|
+
_html(`<li${_attr_class("_eQ")}>${_escape(s.org)}${_el_resume($scope2_id, "b", $sg__input_items)}<button type=button${_attr_class("_eR")}${_attr("title", `Skip ${s.org}`)}${_attr("aria-label", `Skip ${s.org}`)}${_attr("disabled", busy)}>`);
|
|
4205
4208
|
icon_xmark_default({ size: 11 });
|
|
4206
4209
|
_html(`</button>${_el_resume($scope2_id, "c")}</li>`);
|
|
4207
4210
|
_script($scope2_id, "z1");
|
|
@@ -4210,17 +4213,17 @@ var sso_auth_default = _template("z", (input) => {
|
|
|
4210
4213
|
_: _scope_with_id($scope1_id)
|
|
4211
4214
|
}));
|
|
4212
4215
|
}, "org", $scope1_id, "c", $sg__input_items, $sg__input_items, $sg__input_items, "</ul>", 1);
|
|
4213
|
-
_html(`<div${_attr_class("
|
|
4216
|
+
_html(`<div${_attr_class("_eS")}>`);
|
|
4214
4217
|
_if(() => {
|
|
4215
4218
|
if (busy && authCode$2) {
|
|
4216
4219
|
const $scope5_id = _scope_id();
|
|
4217
|
-
_html(`<span${_attr_class("
|
|
4220
|
+
_html(`<span${_attr_class("_eT")}><span${_attr_class("_E")}></span> Enter code <strong${_attr_class("_eU")}>${_escape(authCode$2)}${_el_resume($scope5_id, "d")}</strong> at <a${_attr("href", `https://${host}/login/device`)}${_attr_class("_eV")}>${_escape(host)}${_el_resume($scope5_id, "f", _serialize_guard($scope0_reason, 3))}/login/device</a>${_el_resume($scope5_id, "e")}</span>`);
|
|
4218
4221
|
_script($scope5_id, "z2");
|
|
4219
4222
|
_subscribe($authCode__closures, _subscribe($si__input_items_0_host && $host__closures, writeScope($scope5_id, {})));
|
|
4220
4223
|
return 0;
|
|
4221
4224
|
} else if (busy) {
|
|
4222
4225
|
const $scope8_id = _scope_id();
|
|
4223
|
-
_html(`<span${_attr_class("
|
|
4226
|
+
_html(`<span${_attr_class("_eT")}><span${_attr_class("_E")}></span>Starting GitHub re-authorization…</span>`);
|
|
4224
4227
|
writeScope($scope8_id, {});
|
|
4225
4228
|
return 1;
|
|
4226
4229
|
} else {
|
|
@@ -4234,7 +4237,7 @@ var sso_auth_default = _template("z", (input) => {
|
|
|
4234
4237
|
_if(() => {
|
|
4235
4238
|
if (localError) {
|
|
4236
4239
|
const $scope6_id = _scope_id();
|
|
4237
|
-
_html(`<p${_attr_class("
|
|
4240
|
+
_html(`<p${_attr_class("_eZ")}>${_escape(localError)}${_el_resume($scope6_id, "b")}</p>`);
|
|
4238
4241
|
_subscribe($localError__closures, writeScope($scope6_id, {}));
|
|
4239
4242
|
return 0;
|
|
4240
4243
|
}
|
|
@@ -4246,10 +4249,10 @@ var sso_auth_default = _template("z", (input) => {
|
|
|
4246
4249
|
_if(() => {
|
|
4247
4250
|
if (skipped$1.length) {
|
|
4248
4251
|
const $scope3_id = _scope_id();
|
|
4249
|
-
_html(`<p${_attr_class("
|
|
4252
|
+
_html(`<p${_attr_class("_eW")}>Skipped SSO for `);
|
|
4250
4253
|
_for_of(skipped$1, (s) => {
|
|
4251
4254
|
const $scope4_id = _scope_id();
|
|
4252
|
-
_html(`<span${_attr_class("
|
|
4255
|
+
_html(`<span${_attr_class("_eX")}>${_escape(s.org)}${_el_resume($scope4_id, "b", $sg__input_skipped)}<button type=button${_attr_class("_eY")}${_attr("title", `Show ${s.org} again`)}>(undo)</button>${_el_resume($scope4_id, "c")}</span>`);
|
|
4253
4256
|
_script($scope4_id, "z4");
|
|
4254
4257
|
writeScope($scope4_id, {
|
|
4255
4258
|
f: s?.org,
|
|
@@ -4286,7 +4289,7 @@ var sso_auth_default = _template("z", (input) => {
|
|
|
4286
4289
|
});
|
|
4287
4290
|
//#endregion
|
|
4288
4291
|
//#region src/tags/icons/icon-plus.marko
|
|
4289
|
-
var icon_plus_default = _template("
|
|
4292
|
+
var icon_plus_default = _template("cb", (input) => {
|
|
4290
4293
|
const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
|
|
4291
4294
|
const $scope0_id = _scope_id();
|
|
4292
4295
|
_set_serialize_reason({
|
|
@@ -4324,7 +4327,7 @@ var modal_view_default = _template("p", (input) => {
|
|
|
4324
4327
|
const { label, class: inputClass, open: _open, openChange: _openChange, dismissable: _dismissable, content, footer, closedby: _closedby, onCancel: _onCancel, onClose: _onClose, "aria-label": inputAriaLabel, "aria-labelledby": inputLabelledBy, ...htmlInput } = input;
|
|
4325
4328
|
const dismissable = input.dismissable !== false;
|
|
4326
4329
|
let open = input.open;
|
|
4327
|
-
_html(`<dialog${_attr_class(["
|
|
4330
|
+
_html(`<dialog${_attr_class(["_gv", inputClass])}${_attr("aria-labelledby", inputLabelledBy)}${inputLabelledBy ? _attr("aria-label", inputAriaLabel) : _attr("aria-label", inputAriaLabel || label)} closedby=${dismissable ? "any" : "none"}${_attrs_partial({
|
|
4328
4331
|
...htmlInput,
|
|
4329
4332
|
open: null
|
|
4330
4333
|
}, {
|
|
@@ -4334,20 +4337,20 @@ var modal_view_default = _template("p", (input) => {
|
|
|
4334
4337
|
closedby: 1,
|
|
4335
4338
|
"on-cancel": 1,
|
|
4336
4339
|
"on-close": 1
|
|
4337
|
-
}, "a", $scope0_id, "dialog")}><div${_attr_class("
|
|
4340
|
+
}, "a", $scope0_id, "dialog")}><div${_attr_class("_gw")}>`);
|
|
4338
4341
|
_dynamic_tag($scope0_id, "c", content, {}, 0, 0, _serialize_guard($scope0_reason, 6));
|
|
4339
4342
|
_html("</div>");
|
|
4340
4343
|
_if(() => {
|
|
4341
4344
|
if (footer) {
|
|
4342
4345
|
const $scope1_id = _scope_id();
|
|
4343
|
-
_html(`<form method=dialog${_attr_class("
|
|
4346
|
+
_html(`<form method=dialog${_attr_class("_gx")}>`);
|
|
4344
4347
|
_dynamic_tag($scope1_id, "b", footer.content, {}, 0, 0, _serialize_guard($scope0_reason, 7));
|
|
4345
4348
|
_html("</form>");
|
|
4346
4349
|
$si__input_openChange__OR__input_footer && writeScope($scope1_id, { _: _serialize_if($scope0_reason, 7) && _scope_with_id($scope0_id) });
|
|
4347
4350
|
return 0;
|
|
4348
4351
|
} else if (input.openChange) {
|
|
4349
4352
|
const $scope2_id = _scope_id();
|
|
4350
|
-
_html(`<form method=dialog${_attr_class("
|
|
4353
|
+
_html(`<form method=dialog${_attr_class("_gx")}>`);
|
|
4351
4354
|
dialog_close_default({
|
|
4352
4355
|
class: ["_o", "_p"],
|
|
4353
4356
|
content: _content("p0", () => {
|
|
@@ -4406,14 +4409,14 @@ var prompt_dialog_default = _template("s", (input) => {
|
|
|
4406
4409
|
const $childScope = _peek_scope_id();
|
|
4407
4410
|
modal_view_default({
|
|
4408
4411
|
label: input.label,
|
|
4409
|
-
class: "
|
|
4412
|
+
class: "_eM",
|
|
4410
4413
|
open: input.open,
|
|
4411
4414
|
openChange: input.openChange,
|
|
4412
4415
|
"aria-labelledby": titleId,
|
|
4413
4416
|
footer: attrTag({ content: _content_resume("s5", () => {
|
|
4414
4417
|
_scope_reason();
|
|
4415
4418
|
const $scope1_id = _scope_id();
|
|
4416
|
-
_html(`<button type=button${_attr_class(["_o", "_p"])}${_attr("disabled", !value.trim())}>${_escape(input.submitLabel || "OK")}${_el_resume($scope1_id, "b", _serialize_guard($scope0_reason, 4))}</button>${_el_resume($scope1_id, "a")}<div${_attr_class("
|
|
4419
|
+
_html(`<button type=button${_attr_class(["_o", "_p"])}${_attr("disabled", !value.trim())}>${_escape(input.submitLabel || "OK")}${_el_resume($scope1_id, "b", _serialize_guard($scope0_reason, 4))}</button>${_el_resume($scope1_id, "a")}<div${_attr_class("_x")}></div>`);
|
|
4417
4420
|
dialog_close_default({
|
|
4418
4421
|
class: "_o",
|
|
4419
4422
|
content: _content("s2", () => {
|
|
@@ -4429,7 +4432,7 @@ var prompt_dialog_default = _template("s", (input) => {
|
|
|
4429
4432
|
content: _content("s6", () => {
|
|
4430
4433
|
_scope_reason();
|
|
4431
4434
|
const $scope2_id = _scope_id();
|
|
4432
|
-
_html(`<h2${_attr_class("
|
|
4435
|
+
_html(`<h2${_attr_class("_eN")}${_attr("id", titleId)}>${_escape(input.label)}${_el_resume($scope2_id, "b", $sg__input_label)}</h2><input${_attr_input_value($scope2_id, "c", value, _resume((_new_value) => {
|
|
4433
4436
|
value = _new_value;
|
|
4434
4437
|
}, "s0", $scope2_id))}${_attr("placeholder", input.placeholder)}>${_el_resume($scope2_id, "c")}`);
|
|
4435
4438
|
_script($scope2_id, "s4");
|
|
@@ -4811,7 +4814,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
4811
4814
|
const githubId = _id();
|
|
4812
4815
|
const machineId = _id();
|
|
4813
4816
|
const skillsId = _id();
|
|
4814
|
-
_html(`<div${_attr_class("
|
|
4817
|
+
_html(`<div${_attr_class("_bm")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bn")}><div${_attr_class(content$2)}>`);
|
|
4815
4818
|
_set_serialize_reason({
|
|
4816
4819
|
0: _serialize_guard($scope0_reason, 4),
|
|
4817
4820
|
1: $sg__input_backHref__OR__input_onExit,
|
|
@@ -4835,12 +4838,12 @@ var settings_page_default = _template("v", (input) => {
|
|
|
4835
4838
|
return 0;
|
|
4836
4839
|
} else if (setup.ready) {
|
|
4837
4840
|
const $scope67_id = _scope_id();
|
|
4838
|
-
_html(`<span${_attr_class("
|
|
4841
|
+
_html(`<span${_attr_class("_cd")}>Ready</span>. Tools, GitHub, and an agent are all in place.`);
|
|
4839
4842
|
writeScope($scope67_id, {});
|
|
4840
4843
|
return 1;
|
|
4841
4844
|
} else {
|
|
4842
4845
|
const $scope6_id = _scope_id();
|
|
4843
|
-
_html(`<span${_attr_class("
|
|
4846
|
+
_html(`<span${_attr_class("_ce")}>Not ready</span>. Missing <!>${_escape(setup.missing.map((m) => MISSING_LABEL[m] || m).join(", "))}${_el_resume($scope6_id, "b")}.`);
|
|
4844
4847
|
_subscribe($setup_missing__closures, writeScope($scope6_id, {}));
|
|
4845
4848
|
return 2;
|
|
4846
4849
|
}
|
|
@@ -4856,7 +4859,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
4856
4859
|
const $childScope = _peek_scope_id();
|
|
4857
4860
|
icon_refresh_default({
|
|
4858
4861
|
size: 14,
|
|
4859
|
-
class: refreshing && "
|
|
4862
|
+
class: refreshing && "_D"
|
|
4860
4863
|
});
|
|
4861
4864
|
_html(`</button>${_el_resume($scope10_id, "a")}`);
|
|
4862
4865
|
_script($scope10_id, "v36");
|
|
@@ -4890,16 +4893,16 @@ var settings_page_default = _template("v", (input) => {
|
|
|
4890
4893
|
_if(() => {
|
|
4891
4894
|
if (selfUpdatePending || selfUpdating) {
|
|
4892
4895
|
const $scope45_id = _scope_id();
|
|
4893
|
-
_html(`<div${_attr_class("
|
|
4896
|
+
_html(`<div${_attr_class("_cI")} role=status><div${_attr_class("_cJ")}>`);
|
|
4894
4897
|
_if(() => {
|
|
4895
4898
|
if (selfUpdating) {
|
|
4896
4899
|
const $scope68_id = _scope_id();
|
|
4897
|
-
_html(`<span${_attr_class("
|
|
4900
|
+
_html(`<span${_attr_class("_cK")}><span${_attr_class("_E")}></span> Updating work…</span><span${_attr_class("_cL")}>The app restarts and reloads when it is done.</span>`);
|
|
4898
4901
|
writeScope($scope68_id, {});
|
|
4899
4902
|
return 0;
|
|
4900
4903
|
} else {
|
|
4901
4904
|
const $scope46_id = _scope_id();
|
|
4902
|
-
_html(`<span${_attr_class("
|
|
4905
|
+
_html(`<span${_attr_class("_cK")}>Update available</span><span${_attr_class("_cL")}>v<!>${_escape(self.version)}${_el_resume($scope46_id, "c")} → v<!>${_escape(self.latest)}${_el_resume($scope46_id, "d")}</span>`);
|
|
4903
4906
|
_subscribe($self_version__closures, _subscribe($self_latest__closures, writeScope($scope46_id, {})));
|
|
4904
4907
|
return 1;
|
|
4905
4908
|
}
|
|
@@ -4918,11 +4921,11 @@ var settings_page_default = _template("v", (input) => {
|
|
|
4918
4921
|
return 0;
|
|
4919
4922
|
}
|
|
4920
4923
|
}, $scope0_id, "f", 1, 1, 1, 0, 1);
|
|
4921
|
-
_html(`<section${_attr_class("
|
|
4924
|
+
_html(`<section${_attr_class("_bw")}${_attr("aria-labelledby", agentsId)}><div${_attr_class("_bx")}><h2${_attr("id", agentsId)}${_attr_class("_bK")}>Agents</h2><div${_attr_class("_x")}></div><label${_attr_class("_ch")}><span${_attr_class("_R")}>Default</span><span${_attr_class("_m")}>`);
|
|
4922
4925
|
_attr_select_value($scope0_id, "n", input.preferred, _resume(function(v) {
|
|
4923
4926
|
setPreferred(v);
|
|
4924
4927
|
}, "v2", $scope0_id), () => {
|
|
4925
|
-
_html(`<select${_attr_class(["_n", "
|
|
4928
|
+
_html(`<select${_attr_class(["_n", "_ci"])} aria-label="Default agent (starts when a workspace has no session yet)" title="Starts when a workspace has no session yet">`);
|
|
4926
4929
|
_for_of(input.agents.filter((a) => a !== "shell"), (id) => {
|
|
4927
4930
|
const $scope69_id = _scope_id();
|
|
4928
4931
|
_html(`<option${_attr_option_value(id)}>${_escape(agentLabel(id))}${_el_resume($scope69_id, "b", $sg__input_agents)}</option>${_el_resume($scope69_id, "a", $sg__input_agents)}`);
|
|
@@ -4934,7 +4937,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
4934
4937
|
const $childScope3 = _peek_scope_id();
|
|
4935
4938
|
icon_refresh_default({
|
|
4936
4939
|
size: 14,
|
|
4937
|
-
class: usageRefreshing && "
|
|
4940
|
+
class: usageRefreshing && "_D"
|
|
4938
4941
|
});
|
|
4939
4942
|
_html(`</button>${_el_resume($scope0_id, "o")}</div><ul${_attr_class(agentGrid)}>`);
|
|
4940
4943
|
_for_of(families, (a) => {
|
|
@@ -4943,18 +4946,18 @@ var settings_page_default = _template("v", (input) => {
|
|
|
4943
4946
|
const rows = lone ? [] : a.instances;
|
|
4944
4947
|
const loneAccounts = lone && lone.enabled ? accountsFor(lone.id) : [];
|
|
4945
4948
|
const extraAccounts = a.installed ? strayAccountsFor(a) : [];
|
|
4946
|
-
_html(`<li${_attr_class(["
|
|
4949
|
+
_html(`<li${_attr_class(["_bB", "_cg"])}><div${_attr_class(["_cj", { ["_cm"]: lone && !lone.enabled }])}>`);
|
|
4947
4950
|
_set_serialize_reason(12);
|
|
4948
4951
|
const $childScope4 = _peek_scope_id();
|
|
4949
4952
|
icon_agent_default({
|
|
4950
4953
|
agent: a.id,
|
|
4951
4954
|
size: 18
|
|
4952
4955
|
});
|
|
4953
|
-
_html(`<div${_attr_class("
|
|
4956
|
+
_html(`<div${_attr_class("_bC")}><span${_attr_class("_bE")}><span${_attr_class("_bD")}>${_escape(a.label)}${_el_resume($scope1_id, "g")}</span>`);
|
|
4954
4957
|
_if(() => {
|
|
4955
4958
|
if (lone && input.preferred === lone.id) {
|
|
4956
4959
|
const $scope70_id = _scope_id();
|
|
4957
|
-
_html(`<span${_attr_class(["
|
|
4960
|
+
_html(`<span${_attr_class(["_H", tone.accent])}>default</span>`);
|
|
4958
4961
|
writeScope($scope70_id, {});
|
|
4959
4962
|
return 0;
|
|
4960
4963
|
}
|
|
@@ -4963,12 +4966,12 @@ var settings_page_default = _template("v", (input) => {
|
|
|
4963
4966
|
_if(() => {
|
|
4964
4967
|
if (active.has(a.id)) {
|
|
4965
4968
|
const $scope11_id = _scope_id();
|
|
4966
|
-
_html(`<span${_attr_class("
|
|
4969
|
+
_html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span><!>${_escape(active.get(a.id) || "Starting…")}${_el_resume($scope11_id, "c")}</span>`);
|
|
4967
4970
|
_subscribe($active__closures, writeScope($scope11_id, {}));
|
|
4968
4971
|
return 0;
|
|
4969
4972
|
} else if (!a.installed) {
|
|
4970
4973
|
const $scope71_id = _scope_id();
|
|
4971
|
-
_html(`<span${_attr_class("
|
|
4974
|
+
_html(`<span${_attr_class("_bF")}>Not installed</span>`);
|
|
4972
4975
|
writeScope($scope71_id, {});
|
|
4973
4976
|
return 1;
|
|
4974
4977
|
}
|
|
@@ -4987,8 +4990,8 @@ var settings_page_default = _template("v", (input) => {
|
|
|
4987
4990
|
if (lone) {
|
|
4988
4991
|
const $scope63_id = _scope_id();
|
|
4989
4992
|
_html(`<button${_attr_class([
|
|
4990
|
-
"
|
|
4991
|
-
"
|
|
4993
|
+
"_H",
|
|
4994
|
+
"_J",
|
|
4992
4995
|
{ [tone.ok]: lone.enabled }
|
|
4993
4996
|
])} role=switch aria-checked=${lone.enabled ? "true" : "false"} title=${lone.enabled ? "\"Shown in session pickers. Hide it\"" : "\"Hidden from session pickers. Show it\""}>${lone.enabled ? "on" : "off"}${_el_resume($scope63_id, "b")}</button>${_el_resume($scope63_id, "a")}`);
|
|
4994
4997
|
_script($scope63_id, "v42");
|
|
@@ -5000,29 +5003,29 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5000
5003
|
_if(() => {
|
|
5001
5004
|
if (rows.length || loneAccounts.length || extraAccounts.length) {
|
|
5002
5005
|
const $scope2_id = _scope_id();
|
|
5003
|
-
_html(`<ul${_attr_class("
|
|
5006
|
+
_html(`<ul${_attr_class("_co")}>`);
|
|
5004
5007
|
_for_of(rows, (inst) => {
|
|
5005
5008
|
const $scope3_id = _scope_id();
|
|
5006
5009
|
const accounts = inst.enabled ? accountsFor(inst.id) : [];
|
|
5007
|
-
_html(`<li${_attr_class("
|
|
5010
|
+
_html(`<li${_attr_class("_ck")}><div${_attr_class(["_cl", { ["_cm"]: !inst.enabled }])}>`);
|
|
5008
5011
|
_set_serialize_reason(12);
|
|
5009
5012
|
const $childScope5 = _peek_scope_id();
|
|
5010
5013
|
icon_agent_default({
|
|
5011
5014
|
agent: inst.id,
|
|
5012
5015
|
size: 15
|
|
5013
5016
|
});
|
|
5014
|
-
_html(`<span${_attr_class(["
|
|
5017
|
+
_html(`<span${_attr_class(["_cn", "_w"])}>${_escape(inst.command)}${_el_resume($scope3_id, "e")}</span>`);
|
|
5015
5018
|
_if(() => {
|
|
5016
5019
|
if (input.preferred === inst.id) {
|
|
5017
5020
|
const $scope72_id = _scope_id();
|
|
5018
|
-
_html(`<span${_attr_class(["
|
|
5021
|
+
_html(`<span${_attr_class(["_H", tone.accent])}>default</span>`);
|
|
5019
5022
|
writeScope($scope72_id, {});
|
|
5020
5023
|
return 0;
|
|
5021
5024
|
}
|
|
5022
5025
|
}, $scope3_id, "f", 1, 1, 1, 0, 1);
|
|
5023
|
-
_html(`<span${_attr_class("
|
|
5024
|
-
"
|
|
5025
|
-
"
|
|
5026
|
+
_html(`<span${_attr_class("_x")}></span><button${_attr_class([
|
|
5027
|
+
"_H",
|
|
5028
|
+
"_J",
|
|
5026
5029
|
{ [tone.ok]: inst.enabled }
|
|
5027
5030
|
])} role=switch aria-checked=${inst.enabled ? "true" : "false"} title=${inst.enabled ? "\"Shown in session pickers. Hide it\"" : "\"Hidden from session pickers. Show it\""}>${inst.enabled ? "on" : "off"}${_el_resume($scope3_id, "i")}</button>${_el_resume($scope3_id, "h")}</div>${_el_resume($scope3_id, "b")}`);
|
|
5028
5031
|
_for_of(accounts, (u) => {
|
|
@@ -5086,7 +5089,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5086
5089
|
}, "id", $scope0_id, "r", 1, 1, 1, 0, 1);
|
|
5087
5090
|
_for_of(otherUsage, (u) => {
|
|
5088
5091
|
const $scope76_id = _scope_id();
|
|
5089
|
-
_html(`<li${_attr_class(["
|
|
5092
|
+
_html(`<li${_attr_class(["_bB", "_cg"])}>`);
|
|
5090
5093
|
_set_serialize_reason(6);
|
|
5091
5094
|
const $childScope9 = _peek_scope_id();
|
|
5092
5095
|
usage_meters_default({ agent: u });
|
|
@@ -5097,17 +5100,17 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5097
5100
|
_if(() => {
|
|
5098
5101
|
if (!usage && families.length) {
|
|
5099
5102
|
const $scope77_id = _scope_id();
|
|
5100
|
-
_html(`<p${_attr_class("
|
|
5103
|
+
_html(`<p${_attr_class("_bH")}><span${_attr_class("_E")}></span> Loading usage…</p>`);
|
|
5101
5104
|
writeScope($scope77_id, {});
|
|
5102
5105
|
return 0;
|
|
5103
5106
|
} else if (usage?.error) {
|
|
5104
5107
|
const $scope7_id = _scope_id();
|
|
5105
|
-
_html(`<p${_attr_class("
|
|
5108
|
+
_html(`<p${_attr_class("_bH")}>${_escape(usage.error)}${_el_resume($scope7_id, "b")}</p>`);
|
|
5106
5109
|
writeScope($scope7_id, {});
|
|
5107
5110
|
return 1;
|
|
5108
5111
|
}
|
|
5109
5112
|
}, $scope0_id, "t", 1, 1, 1, 0, 1);
|
|
5110
|
-
_html(`</section><section${_attr_class("
|
|
5113
|
+
_html(`</section><section${_attr_class("_bw")}${_attr("aria-labelledby", githubId)}><div${_attr_class("_bx")}><h2${_attr("id", githubId)}${_attr_class("_bK")}>GitHub</h2></div><ul${_attr_class("_bz")}>`);
|
|
5111
5114
|
_for_of(setup?.github || [], (h) => {
|
|
5112
5115
|
const $scope12_id = _scope_id();
|
|
5113
5116
|
const $for_content4__h_host__closures = /* @__PURE__ */ new Set();
|
|
@@ -5121,11 +5124,11 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5121
5124
|
const skippedSso = (() => {
|
|
5122
5125
|
return (h.sso || []).filter((s) => ignoredSso.has(s.org));
|
|
5123
5126
|
})();
|
|
5124
|
-
_html(`<li${_attr_class(["
|
|
5127
|
+
_html(`<li${_attr_class(["_bB", "_cy"])}><div${_attr_class("_cz")}><div${_attr_class("_bC")}><span${_attr_class("_bE")}><span${_attr_class(["_bD", "_w"])}>${_escape(h.host)}${_el_resume($scope12_id, "f")}</span>`);
|
|
5125
5128
|
_if(() => {
|
|
5126
5129
|
if (h.isEnterprise) {
|
|
5127
5130
|
const $scope80_id = _scope_id();
|
|
5128
|
-
_html(`<span${_attr_class("
|
|
5131
|
+
_html(`<span${_attr_class("_H")}>Enterprise</span>`);
|
|
5129
5132
|
writeScope($scope80_id, {});
|
|
5130
5133
|
return 0;
|
|
5131
5134
|
}
|
|
@@ -5134,22 +5137,22 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5134
5137
|
_if(() => {
|
|
5135
5138
|
if (active.has(h.host) && authCodes.has(h.host)) {
|
|
5136
5139
|
const $scope32_id = _scope_id();
|
|
5137
|
-
_html(`<span${_attr_class("
|
|
5140
|
+
_html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span> Enter code <strong${_attr_class("_cw")}>${_escape(authCodes.get(h.host))}${_el_resume($scope32_id, "d")}</strong> at <a${_attr("href", `https://${h.host}/login/device`)} target=_blank rel=noopener${_attr_class("_cx")}>${_escape(h.host)}${_el_resume($scope32_id, "f")}/login/device</a>${_el_resume($scope32_id, "e")}</span>`);
|
|
5138
5141
|
_subscribe($authCodes__closures, writeScope($scope32_id, { Ces: 1 }));
|
|
5139
5142
|
return 0;
|
|
5140
5143
|
} else if (active.has(h.host)) {
|
|
5141
5144
|
const $scope13_id = _scope_id();
|
|
5142
|
-
_html(`<span${_attr_class("
|
|
5145
|
+
_html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span><!>${_escape(active.get(h.host) || "Starting…")}${_el_resume($scope13_id, "c")}</span>`);
|
|
5143
5146
|
_subscribe($active__closures, writeScope($scope13_id, { Ceq: 1 }));
|
|
5144
5147
|
return 1;
|
|
5145
5148
|
} else if (h.authed) {
|
|
5146
5149
|
const $scope78_id = _scope_id();
|
|
5147
|
-
_html(`<span${_attr_class("
|
|
5150
|
+
_html(`<span${_attr_class("_bF")}>Signed in<!>${h.user ? ` as ${_escape(`${_to_text(h.user)}`)}` : ""}${_el_resume($scope78_id, "b")}</span>`);
|
|
5148
5151
|
writeScope($scope78_id, {});
|
|
5149
5152
|
return 2;
|
|
5150
5153
|
} else {
|
|
5151
5154
|
const $scope79_id = _scope_id();
|
|
5152
|
-
_html(`<span${_attr_class("
|
|
5155
|
+
_html(`<span${_attr_class("_bF")}>${_escape(h.error || "Not signed in")}${_el_resume($scope79_id, "b")}</span>`);
|
|
5153
5156
|
writeScope($scope79_id, {});
|
|
5154
5157
|
return 3;
|
|
5155
5158
|
}
|
|
@@ -5180,9 +5183,9 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5180
5183
|
if (h.isEnterprise) {
|
|
5181
5184
|
const $scope35_id = _scope_id();
|
|
5182
5185
|
_html(`<button${_attr_class([
|
|
5183
|
-
"
|
|
5186
|
+
"_bG",
|
|
5187
|
+
"_1",
|
|
5184
5188
|
"_2",
|
|
5185
|
-
"_3",
|
|
5186
5189
|
{ ["_q"]: confirmingRemove === h.host }
|
|
5187
5190
|
])}${confirmingRemove === h.host ? _attr("title", `Forget ${h.host}? (gh stays signed in)`) : _attr("title", `Forget ${h.host}`)}>`);
|
|
5188
5191
|
_if(() => {
|
|
@@ -5256,7 +5259,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5256
5259
|
_if(() => {
|
|
5257
5260
|
if (setup && !setup.github.length) {
|
|
5258
5261
|
const $scope83_id = _scope_id();
|
|
5259
|
-
_html(`<p${_attr_class("
|
|
5262
|
+
_html(`<p${_attr_class("_bH")}>Install the GitHub CLI below to sign in.</p>`);
|
|
5260
5263
|
writeScope($scope83_id, {});
|
|
5261
5264
|
return 0;
|
|
5262
5265
|
}
|
|
@@ -5264,20 +5267,20 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5264
5267
|
_if(() => {
|
|
5265
5268
|
if (setup) {
|
|
5266
5269
|
const $scope43_id = _scope_id();
|
|
5267
|
-
_html(`<form${_attr_class("
|
|
5270
|
+
_html(`<form${_attr_class("_cv")}><label${_attr_class("_V")}>`);
|
|
5268
5271
|
icon_plus_default({
|
|
5269
5272
|
size: 14,
|
|
5270
|
-
class: "
|
|
5273
|
+
class: "_W"
|
|
5271
5274
|
});
|
|
5272
5275
|
_html(`<input${_attr_input_value($scope43_id, "d", hostInput, _resume((_new_hostInput) => {
|
|
5273
5276
|
hostInput = _new_hostInput;
|
|
5274
|
-
}, "v3", $scope43_id))}${_attr_class([inputLg, "
|
|
5277
|
+
}, "v3", $scope43_id))}${_attr_class([inputLg, "_X"])} type=text placeholder="Add a GitHub Enterprise host, e.g. github.example.com" aria-label="GitHub Enterprise host" autocomplete=off spellcheck=false>${_el_resume($scope43_id, "d")}</label><button${_attr_class(btnSm)} type=submit${_attr("disabled", !hostInput.trim() || hostBusy)}>${hostBusy ? "Adding…" : "Add host"}${_el_resume($scope43_id, "f")}</button>${_el_resume($scope43_id, "e")}</form>${_el_resume($scope43_id, "a")}`);
|
|
5275
5278
|
_script($scope43_id, "v47");
|
|
5276
5279
|
writeScope($scope43_id, {});
|
|
5277
5280
|
return 0;
|
|
5278
5281
|
}
|
|
5279
5282
|
}, $scope0_id, "z", 1, 1, 1, 0, 1);
|
|
5280
|
-
_html(`</section><section${_attr_class("
|
|
5283
|
+
_html(`</section><section${_attr_class("_bw")}${_attr("aria-labelledby", machineId)}><div${_attr_class("_bx")}><h2${_attr("id", machineId)}${_attr_class("_bK")}>Machine</h2>`);
|
|
5281
5284
|
_if(() => {
|
|
5282
5285
|
if (missingCount) {
|
|
5283
5286
|
const $scope64_id = _scope_id();
|
|
@@ -5294,7 +5297,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5294
5297
|
return 0;
|
|
5295
5298
|
}
|
|
5296
5299
|
}, $scope0_id, "a4", 1, 1, 1, 0, 1);
|
|
5297
|
-
_html(`<div${_attr_class("
|
|
5300
|
+
_html(`<div${_attr_class("_x")}></div>`);
|
|
5298
5301
|
_if(() => {
|
|
5299
5302
|
if (outdatedIds.length > 1) {
|
|
5300
5303
|
const $scope15_id = _scope_id();
|
|
@@ -5317,7 +5320,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5317
5320
|
_if(() => {
|
|
5318
5321
|
if (setup && !setup.mise.installed) {
|
|
5319
5322
|
const $scope17_id = _scope_id();
|
|
5320
|
-
_html(`<p${_attr_class("
|
|
5323
|
+
_html(`<p${_attr_class("_bH")}>mise is not installed. It provides every tool below. <button${_attr_class(btnSm)}${_attr("disabled", active.has("mise"))}>${active.has("mise") ? "Installing…" : "Install mise"}${_el_resume($scope17_id, "c")}</button>${_el_resume($scope17_id, "b")}</p>`);
|
|
5321
5324
|
_script($scope17_id, "v50");
|
|
5322
5325
|
writeScope($scope17_id, {});
|
|
5323
5326
|
return 0;
|
|
@@ -5327,16 +5330,16 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5327
5330
|
_if(() => {
|
|
5328
5331
|
if (self) {
|
|
5329
5332
|
const $scope48_id = _scope_id();
|
|
5330
|
-
_html(`<li${_attr_class(row)}><span${_attr_class(["
|
|
5333
|
+
_html(`<li${_attr_class(row)}><span${_attr_class(["_cr", "_w"])}>work</span>`);
|
|
5331
5334
|
_if(() => {
|
|
5332
5335
|
if (selfUpdating) {
|
|
5333
5336
|
const $scope84_id = _scope_id();
|
|
5334
|
-
_html(`<span${_attr_class("
|
|
5337
|
+
_html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span>Updating — the app restarts and reloads when it is done…</span>`);
|
|
5335
5338
|
writeScope($scope84_id, {});
|
|
5336
5339
|
return 0;
|
|
5337
5340
|
} else {
|
|
5338
5341
|
const $scope49_id = _scope_id();
|
|
5339
|
-
_html(`<span${_attr_class(["
|
|
5342
|
+
_html(`<span${_attr_class(["_w", metaTrunc])} title="Running version">v<!>${_escape(self.version)}${_el_resume($scope49_id, "b")}</span>`);
|
|
5340
5343
|
_if(() => {
|
|
5341
5344
|
if (self.install === "source") {
|
|
5342
5345
|
const $scope85_id = _scope_id();
|
|
@@ -5345,7 +5348,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5345
5348
|
return 0;
|
|
5346
5349
|
} else if (self.latest && self.latest !== self.version) {
|
|
5347
5350
|
const $scope50_id = _scope_id();
|
|
5348
|
-
_html(`<button${_attr_class([btnSm, "
|
|
5351
|
+
_html(`<button${_attr_class([btnSm, "_ct"])}${_attr("title", `Update work to v${self.latest} and restart`)}>`);
|
|
5349
5352
|
icon_arrow_up_default({ size: 12 });
|
|
5350
5353
|
_html(` <!>${_escape(self.latest)}${_el_resume($scope50_id, "c")}</button>${_el_resume($scope50_id, "a")}`);
|
|
5351
5354
|
_script($scope50_id, "v51");
|
|
@@ -5365,11 +5368,11 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5365
5368
|
return 1;
|
|
5366
5369
|
}
|
|
5367
5370
|
}, $scope48_id, "c");
|
|
5368
|
-
_html(`<span${_attr_class("
|
|
5371
|
+
_html(`<span${_attr_class("_x")}></span>`);
|
|
5369
5372
|
_if(() => {
|
|
5370
5373
|
if (!selfUpdating) {
|
|
5371
5374
|
const $scope87_id = _scope_id();
|
|
5372
|
-
_html(`<span${_attr_class("
|
|
5375
|
+
_html(`<span${_attr_class("_H")}>app</span>`);
|
|
5373
5376
|
writeScope($scope87_id, {});
|
|
5374
5377
|
return 0;
|
|
5375
5378
|
}
|
|
@@ -5386,11 +5389,11 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5386
5389
|
const $for_content5__t_path__closures = /* @__PURE__ */ new Set();
|
|
5387
5390
|
const $for_content5__t_latest__closures = /* @__PURE__ */ new Set();
|
|
5388
5391
|
const $for_content5__t_id__closures = /* @__PURE__ */ new Set();
|
|
5389
|
-
_html(`<li${_attr_class([row, { ["
|
|
5392
|
+
_html(`<li${_attr_class([row, { ["_cq"]: !t.installed }])}><span${_attr_class(["_cr", "_w"])}>${_escape(t.label)}${_el_resume($scope18_id, "c")}</span>`);
|
|
5390
5393
|
_if(() => {
|
|
5391
5394
|
if (active.has(t.id)) {
|
|
5392
5395
|
const $scope19_id = _scope_id();
|
|
5393
|
-
_html(`<span${_attr_class("
|
|
5396
|
+
_html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span><!>${_escape(active.get(t.id) || "Starting…")}${_el_resume($scope19_id, "c")}</span>`);
|
|
5394
5397
|
_subscribe($active__closures, writeScope($scope19_id, { Ceq: 3 }));
|
|
5395
5398
|
return 0;
|
|
5396
5399
|
} else if (t.installed) {
|
|
@@ -5398,13 +5401,13 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5398
5401
|
_if(() => {
|
|
5399
5402
|
if (t.version) {
|
|
5400
5403
|
const $scope40_id = _scope_id();
|
|
5401
|
-
_html(`<button${_attr_class(["
|
|
5404
|
+
_html(`<button${_attr_class(["_cs", "_w"])}${_attr("title", `${t.path || t.label}. Pin a version`)}>v<!>${_escape(t.version)}${_el_resume($scope40_id, "b")}</button>${_el_resume($scope40_id, "a")}`);
|
|
5402
5405
|
_script($scope40_id, "v52");
|
|
5403
5406
|
_subscribe($for_content5__t_path__closures, _subscribe($for_content5__t_version__closures, _subscribe($for_content5__t_label__closures, writeScope($scope40_id, { Cu: 1 }))));
|
|
5404
5407
|
return 0;
|
|
5405
5408
|
} else {
|
|
5406
5409
|
const $scope88_id = _scope_id();
|
|
5407
|
-
_html(`<span${_attr_class([metaTrunc, "
|
|
5410
|
+
_html(`<span${_attr_class([metaTrunc, "_w"])}${_attr("title", t.path)}>${_escape(t.path)}${_el_resume($scope88_id, "b")}</span>${_el_resume($scope88_id, "a")}`);
|
|
5408
5411
|
_subscribe($for_content5__t_path__closures, writeScope($scope88_id, { Cx: 1 }));
|
|
5409
5412
|
return 1;
|
|
5410
5413
|
}
|
|
@@ -5412,7 +5415,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5412
5415
|
_if(() => {
|
|
5413
5416
|
if (outdated(t)) {
|
|
5414
5417
|
const $scope58_id = _scope_id();
|
|
5415
|
-
_html(`<button${_attr_class([btnSm, "
|
|
5418
|
+
_html(`<button${_attr_class([btnSm, "_ct"])}${_attr("title", `Update to v${t.latest}`)}>`);
|
|
5416
5419
|
icon_arrow_up_default({ size: 12 });
|
|
5417
5420
|
_html(` <!>${_escape(t.latest)}${_el_resume($scope58_id, "c")}</button>${_el_resume($scope58_id, "a")}`);
|
|
5418
5421
|
_script($scope58_id, "v53");
|
|
@@ -5434,14 +5437,14 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5434
5437
|
return 3;
|
|
5435
5438
|
}
|
|
5436
5439
|
}, $scope18_id, "d");
|
|
5437
|
-
_html(`<span${_attr_class("
|
|
5440
|
+
_html(`<span${_attr_class("_x")}></span>`);
|
|
5438
5441
|
_if(() => {
|
|
5439
5442
|
if (!active.has(t.id)) {
|
|
5440
5443
|
const $scope36_id = _scope_id();
|
|
5441
5444
|
_if(() => {
|
|
5442
5445
|
if (t.required) {
|
|
5443
5446
|
const $scope91_id = _scope_id();
|
|
5444
|
-
_html(`<span${_attr_class("
|
|
5447
|
+
_html(`<span${_attr_class("_H")}>required</span>`);
|
|
5445
5448
|
writeScope($scope91_id, {});
|
|
5446
5449
|
return 0;
|
|
5447
5450
|
}
|
|
@@ -5457,8 +5460,8 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5457
5460
|
const $scope37_id = _scope_id();
|
|
5458
5461
|
_html(`<button${_attr_class([
|
|
5459
5462
|
iconBtnXs,
|
|
5463
|
+
"_1",
|
|
5460
5464
|
"_2",
|
|
5461
|
-
"_3",
|
|
5462
5465
|
{ ["_q"]: confirmingRemove === t.id }
|
|
5463
5466
|
])}${confirmingRemove === t.id ? _attr("title", `Remove ${t.label}?`) : _attr("title", `Remove ${t.label}`)}>`);
|
|
5464
5467
|
_if(() => {
|
|
@@ -5505,28 +5508,28 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5505
5508
|
_if(() => {
|
|
5506
5509
|
if (setup && setup.mise.installed) {
|
|
5507
5510
|
const $scope20_id = _scope_id();
|
|
5508
|
-
_html(`<div><label${_attr_class("
|
|
5511
|
+
_html(`<div><label${_attr_class("_V")}>`);
|
|
5509
5512
|
icon_search_default({
|
|
5510
5513
|
size: 14,
|
|
5511
|
-
class: "
|
|
5514
|
+
class: "_W"
|
|
5512
5515
|
});
|
|
5513
|
-
_html(`<input${_attr_input_value($scope20_id, "c", query, search)}${_attr_class([inputLg, "
|
|
5516
|
+
_html(`<input${_attr_input_value($scope20_id, "c", query, search)}${_attr_class([inputLg, "_X"])} type=text placeholder="Add a tool from the mise registry…" aria-label="Search the mise registry" autocomplete=off>${_el_resume($scope20_id, "c")}</label>`);
|
|
5514
5517
|
_if(() => {
|
|
5515
5518
|
if (hits && hits.length) {
|
|
5516
5519
|
const $scope21_id = _scope_id();
|
|
5517
|
-
_html(`<ul${_attr_class([toolGrid, "
|
|
5520
|
+
_html(`<ul${_attr_class([toolGrid, "_cu"])}>`);
|
|
5518
5521
|
_for_of(hits, (h) => {
|
|
5519
5522
|
const $scope22_id = _scope_id();
|
|
5520
|
-
_html(`<li${_attr_class(row)}><div${_attr_class("
|
|
5523
|
+
_html(`<li${_attr_class(row)}><div${_attr_class("_bC")}><span${_attr_class(["_cr", "_w"])}>${_escape(h.name)}${_el_resume($scope22_id, "d")}</span>`);
|
|
5521
5524
|
_if(() => {
|
|
5522
5525
|
if (active.has(h.name)) {
|
|
5523
5526
|
const $scope23_id = _scope_id();
|
|
5524
|
-
_html(`<span${_attr_class("
|
|
5527
|
+
_html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span><!>${_escape(active.get(h.name) || "Starting…")}${_el_resume($scope23_id, "c")}</span>`);
|
|
5525
5528
|
_subscribe($active__closures, writeScope($scope23_id, { Ceq: 5 }));
|
|
5526
5529
|
return 0;
|
|
5527
5530
|
} else if (h.description) {
|
|
5528
5531
|
const $scope94_id = _scope_id();
|
|
5529
|
-
_html(`<span${_attr_class("
|
|
5532
|
+
_html(`<span${_attr_class("_bF")}${_attr("title", h.description)}>${_escape(h.description)}${_el_resume($scope94_id, "b")}</span>${_el_resume($scope94_id, "a")}`);
|
|
5530
5533
|
writeScope($scope94_id, {});
|
|
5531
5534
|
return 1;
|
|
5532
5535
|
}
|
|
@@ -5538,7 +5541,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5538
5541
|
_if(() => {
|
|
5539
5542
|
if (h.installed) {
|
|
5540
5543
|
const $scope95_id = _scope_id();
|
|
5541
|
-
_html(`<span${_attr_class("
|
|
5544
|
+
_html(`<span${_attr_class("_H")}>installed</span>`);
|
|
5542
5545
|
writeScope($scope95_id, {});
|
|
5543
5546
|
return 0;
|
|
5544
5547
|
} else {
|
|
@@ -5565,7 +5568,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5565
5568
|
return 0;
|
|
5566
5569
|
} else if (hits && !searching) {
|
|
5567
5570
|
const $scope44_id = _scope_id();
|
|
5568
|
-
_html(`<p${_attr_class("
|
|
5571
|
+
_html(`<p${_attr_class("_bH")}>No tools match "<!>${_escape(query)}${_el_resume($scope44_id, "b")}".</p>`);
|
|
5569
5572
|
_subscribe($query__closures, writeScope($scope44_id, {}));
|
|
5570
5573
|
return 1;
|
|
5571
5574
|
}
|
|
@@ -5576,7 +5579,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5576
5579
|
return 0;
|
|
5577
5580
|
}
|
|
5578
5581
|
}, $scope0_id, "ac", 1, 1, 1, 0, 1);
|
|
5579
|
-
_html(`</section><section${_attr_class("
|
|
5582
|
+
_html(`</section><section${_attr_class("_bw")}${_attr("aria-labelledby", skillsId)}><div${_attr_class("_bx")}><h2${_attr("id", skillsId)}${_attr_class("_bK")}>Skills</h2>`);
|
|
5580
5583
|
_if(() => {
|
|
5581
5584
|
if (skills?.global.length) {
|
|
5582
5585
|
const $scope52_id = _scope_id();
|
|
@@ -5589,30 +5592,30 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5589
5592
|
_if(() => {
|
|
5590
5593
|
if (skills && !skills.agents.length) {
|
|
5591
5594
|
const $scope96_id = _scope_id();
|
|
5592
|
-
_html(`<p${_attr_class("
|
|
5595
|
+
_html(`<p${_attr_class("_bH")}>No agent CLIs are installed, so a skill would have nowhere to go.</p>`);
|
|
5593
5596
|
writeScope($scope96_id, {});
|
|
5594
5597
|
return 0;
|
|
5595
5598
|
} else if (skills && !skills.available) {
|
|
5596
5599
|
const $scope24_id = _scope_id();
|
|
5597
|
-
_html(`<p${_attr_class("
|
|
5600
|
+
_html(`<p${_attr_class("_bH")}>The skills CLI is not installed, so these can be listed but not changed. <button${_attr_class(btnSm)}${_attr("disabled", active.has("skills"))}>${active.has("skills") ? "Installing…" : "Install it"}${_el_resume($scope24_id, "c")}</button>${_el_resume($scope24_id, "b")}</p>`);
|
|
5598
5601
|
_script($scope24_id, "v58");
|
|
5599
5602
|
writeScope($scope24_id, {});
|
|
5600
5603
|
return 1;
|
|
5601
5604
|
}
|
|
5602
5605
|
}, $scope0_id, "ah", 1, 1, 1, 0, 1);
|
|
5603
|
-
_html(`<ul${_attr_class("
|
|
5606
|
+
_html(`<ul${_attr_class("_bz")}>`);
|
|
5604
5607
|
_for_of(skills?.global || [], (s) => {
|
|
5605
5608
|
const $scope25_id = _scope_id();
|
|
5606
|
-
_html(`<li${_attr_class("
|
|
5609
|
+
_html(`<li${_attr_class("_bB")}><div${_attr_class("_bC")}><span${_attr_class(["_bD", "_w"])}>${_escape(s.name)}${_el_resume($scope25_id, "d")}</span>`);
|
|
5607
5610
|
_if(() => {
|
|
5608
5611
|
if (active.has(s.id)) {
|
|
5609
5612
|
const $scope26_id = _scope_id();
|
|
5610
|
-
_html(`<span${_attr_class("
|
|
5613
|
+
_html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span><!>${_escape(active.get(s.id) || "Starting…")}${_el_resume($scope26_id, "c")}</span>`);
|
|
5611
5614
|
_subscribe($active__closures, writeScope($scope26_id, { Ceq: 6 }));
|
|
5612
5615
|
return 0;
|
|
5613
5616
|
} else if (s.description) {
|
|
5614
5617
|
const $scope97_id = _scope_id();
|
|
5615
|
-
_html(`<span${_attr_class("
|
|
5618
|
+
_html(`<span${_attr_class("_bF")}${_attr("title", s.description)}>${_escape(s.description)}${_el_resume($scope97_id, "b")}</span>${_el_resume($scope97_id, "a")}`);
|
|
5616
5619
|
writeScope($scope97_id, {});
|
|
5617
5620
|
return 1;
|
|
5618
5621
|
}
|
|
@@ -5620,17 +5623,17 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5620
5623
|
_if(() => {
|
|
5621
5624
|
if (s.sourceUrl) {
|
|
5622
5625
|
const $scope98_id = _scope_id();
|
|
5623
|
-
_html(`<a${_attr_class(["
|
|
5626
|
+
_html(`<a${_attr_class(["_bF", "_cS"])}${_attr("href", s.sourceUrl)} target=_blank rel=noopener${_attr("title", `Open ${s.source} on GitHub`)}>${_escape(s.source)}${_el_resume($scope98_id, "b")}</a>${_el_resume($scope98_id, "a")}`);
|
|
5624
5627
|
writeScope($scope98_id, {});
|
|
5625
5628
|
return 0;
|
|
5626
5629
|
} else if (s.source) {
|
|
5627
5630
|
const $scope99_id = _scope_id();
|
|
5628
|
-
_html(`<span${_attr_class("
|
|
5631
|
+
_html(`<span${_attr_class("_bF")}>${_escape(s.source)}${_el_resume($scope99_id, "b")}</span>`);
|
|
5629
5632
|
writeScope($scope99_id, {});
|
|
5630
5633
|
return 1;
|
|
5631
5634
|
} else {
|
|
5632
5635
|
const $scope101_id = _scope_id();
|
|
5633
|
-
_html(`<span${_attr_class(["
|
|
5636
|
+
_html(`<span${_attr_class(["_bF", "_v"])} title="Not installed from a source, so it cannot be updated">local only</span>`);
|
|
5634
5637
|
writeScope($scope101_id, {});
|
|
5635
5638
|
return 2;
|
|
5636
5639
|
}
|
|
@@ -5639,7 +5642,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5639
5642
|
_if(() => {
|
|
5640
5643
|
if (skills && s.agents.length < skills.agents.length) {
|
|
5641
5644
|
const $scope100_id = _scope_id();
|
|
5642
|
-
_html(`<span${_attr_class("
|
|
5645
|
+
_html(`<span${_attr_class("_bE")}><span${_attr_class("_H")}${_attr("title", `Only installed for ${s.agents.map(agentLabel).join(", ")}`)}>${_escape(s.agents.map(agentLabel).join(", "))}${_el_resume($scope100_id, "c")} only</span>${_el_resume($scope100_id, "b")}</span>`);
|
|
5643
5646
|
writeScope($scope100_id, {});
|
|
5644
5647
|
return 0;
|
|
5645
5648
|
}
|
|
@@ -5658,8 +5661,8 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5658
5661
|
}, $scope55_id, "a", 1, 1, 1, 0, 1);
|
|
5659
5662
|
_html(`<button${_attr_class([
|
|
5660
5663
|
iconBtnXs,
|
|
5664
|
+
"_1",
|
|
5661
5665
|
"_2",
|
|
5662
|
-
"_3",
|
|
5663
5666
|
{ ["_q"]: confirmingSkill === s.id }
|
|
5664
5667
|
])}${confirmingSkill === s.id ? _attr("title", `Remove ${s.name}?`) : _attr("title", `Remove ${s.name}`)}>`);
|
|
5665
5668
|
_if(() => {
|
|
@@ -5693,7 +5696,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5693
5696
|
_if(() => {
|
|
5694
5697
|
if (skills && !skills.global.length) {
|
|
5695
5698
|
const $scope104_id = _scope_id();
|
|
5696
|
-
_html(`<p${_attr_class("
|
|
5699
|
+
_html(`<p${_attr_class("_bH")}>No skills installed. Search below, or paste an owner/repo.</p>`);
|
|
5697
5700
|
writeScope($scope104_id, {});
|
|
5698
5701
|
return 0;
|
|
5699
5702
|
}
|
|
@@ -5701,20 +5704,20 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5701
5704
|
_if(() => {
|
|
5702
5705
|
if (skills?.available && skills.agents.length) {
|
|
5703
5706
|
const $scope27_id = _scope_id();
|
|
5704
|
-
_html(`<div><label${_attr_class("
|
|
5707
|
+
_html(`<div><label${_attr_class("_V")}>`);
|
|
5705
5708
|
icon_search_default({
|
|
5706
5709
|
size: 14,
|
|
5707
|
-
class: "
|
|
5710
|
+
class: "_W"
|
|
5708
5711
|
});
|
|
5709
|
-
_html(`<input${_attr_input_value($scope27_id, "c", skillQuery, searchSkills)}${_attr_class([inputLg, "
|
|
5712
|
+
_html(`<input${_attr_input_value($scope27_id, "c", skillQuery, searchSkills)}${_attr_class([inputLg, "_X"])} type=text placeholder="Search skills, or paste owner/repo…" aria-label="Search for a skill" autocomplete=off spellcheck=false>${_el_resume($scope27_id, "c")}</label><ul${_attr_class([toolGrid, "_cu"])}${_attr("hidden", !skillQuery.trim())}>`);
|
|
5710
5713
|
_if(() => {
|
|
5711
5714
|
if (looksLikeSource(skillQuery)) {
|
|
5712
5715
|
const $scope28_id = _scope_id();
|
|
5713
|
-
_html(`<li${_attr_class(row)}><div${_attr_class("
|
|
5716
|
+
_html(`<li${_attr_class(row)}><div${_attr_class("_bC")}><span${_attr_class(["_cr", "_w"])}>${_escape(skillQuery.trim())}${_el_resume($scope28_id, "d")}</span>`);
|
|
5714
5717
|
_if(() => {
|
|
5715
5718
|
if (active.has(skillQuery.trim())) {
|
|
5716
5719
|
const $scope29_id = _scope_id();
|
|
5717
|
-
_html(`<span${_attr_class("
|
|
5720
|
+
_html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span><!>${_escape(active.get(skillQuery.trim()) || "Starting…")}${_el_resume($scope29_id, "c")}</span>`);
|
|
5718
5721
|
_subscribe($skillQuery__closures, _subscribe($active__closures, writeScope($scope29_id, {
|
|
5719
5722
|
Ceq: 8,
|
|
5720
5723
|
Cfa: 1
|
|
@@ -5722,7 +5725,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5722
5725
|
return 0;
|
|
5723
5726
|
} else {
|
|
5724
5727
|
const $scope105_id = _scope_id();
|
|
5725
|
-
_html(`<span${_attr_class("
|
|
5728
|
+
_html(`<span${_attr_class("_bF")}>Add straight from this source</span>`);
|
|
5726
5729
|
writeScope($scope105_id, {});
|
|
5727
5730
|
return 1;
|
|
5728
5731
|
}
|
|
@@ -5745,16 +5748,16 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5745
5748
|
_for_of(skillHits || [], (h) => {
|
|
5746
5749
|
const $scope30_id = _scope_id();
|
|
5747
5750
|
const $for_content8__h_installs__closures = /* @__PURE__ */ new Set();
|
|
5748
|
-
_html(`<li${_attr_class(row)}><div${_attr_class("
|
|
5751
|
+
_html(`<li${_attr_class(row)}><div${_attr_class("_bC")}><span${_attr_class(["_cr", "_w"])}>${_escape(h.name)}${_el_resume($scope30_id, "d")}</span>`);
|
|
5749
5752
|
_if(() => {
|
|
5750
5753
|
if (active.has(h.skillId)) {
|
|
5751
5754
|
const $scope31_id = _scope_id();
|
|
5752
|
-
_html(`<span${_attr_class("
|
|
5755
|
+
_html(`<span${_attr_class("_cc")}><span${_attr_class("_E")}></span><!>${_escape(active.get(h.skillId) || "Starting…")}${_el_resume($scope31_id, "c")}</span>`);
|
|
5753
5756
|
_subscribe($active__closures, writeScope($scope31_id, { Ceq: 10 }));
|
|
5754
5757
|
return 0;
|
|
5755
5758
|
} else {
|
|
5756
5759
|
const $scope106_id = _scope_id();
|
|
5757
|
-
_html(`<span${_attr_class("
|
|
5760
|
+
_html(`<span${_attr_class("_bF")}${_attr("title", h.source)}>${_escape(h.source)}${_el_resume($scope106_id, "b")}</span>${_el_resume($scope106_id, "a")}`);
|
|
5758
5761
|
writeScope($scope106_id, {});
|
|
5759
5762
|
return 1;
|
|
5760
5763
|
}
|
|
@@ -5766,7 +5769,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5766
5769
|
_if(() => {
|
|
5767
5770
|
if (h.installs) {
|
|
5768
5771
|
const $scope107_id = _scope_id();
|
|
5769
|
-
_html(`<span${_attr_class(["
|
|
5772
|
+
_html(`<span${_attr_class(["_H", "_I"])}${_attr("title", `${h.installs} installs`)}>${_escape(skillInstalls(h.installs))}${_el_resume($scope107_id, "b")}</span>${_el_resume($scope107_id, "a")}`);
|
|
5770
5773
|
_subscribe($for_content8__h_installs__closures, writeScope($scope107_id, {}));
|
|
5771
5774
|
return 0;
|
|
5772
5775
|
}
|
|
@@ -5774,7 +5777,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5774
5777
|
_if(() => {
|
|
5775
5778
|
if (h.installed) {
|
|
5776
5779
|
const $scope108_id = _scope_id();
|
|
5777
|
-
_html(`<span${_attr_class("
|
|
5780
|
+
_html(`<span${_attr_class("_H")}>installed</span>`);
|
|
5778
5781
|
writeScope($scope108_id, {});
|
|
5779
5782
|
return 0;
|
|
5780
5783
|
} else {
|
|
@@ -5803,7 +5806,7 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5803
5806
|
_if(() => {
|
|
5804
5807
|
if (skillHits && !skillHits.length && !skillSearching && !looksLikeSource(skillQuery)) {
|
|
5805
5808
|
const $scope54_id = _scope_id();
|
|
5806
|
-
_html(`<p${_attr_class("
|
|
5809
|
+
_html(`<p${_attr_class("_bH")}>No skills match "<!>${_escape(skillQuery)}${_el_resume($scope54_id, "b")}".</p>`);
|
|
5807
5810
|
_subscribe($skillQuery__closures, writeScope($scope54_id, { Cfa: 2 }));
|
|
5808
5811
|
return 0;
|
|
5809
5812
|
}
|
|
@@ -5828,37 +5831,37 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5828
5831
|
label: "Dark"
|
|
5829
5832
|
}
|
|
5830
5833
|
];
|
|
5831
|
-
_html(`</section><section${_attr_class("
|
|
5834
|
+
_html(`</section><section${_attr_class("_bw")}${_attr("aria-labelledby", appearanceId)}><div${_attr_class("_bx")}><h2${_attr("id", appearanceId)}${_attr_class("_bK")}>Appearance</h2></div><div${_attr_class(["_bB", "_cA"])}><label${_attr_class("_cB")}><span${_attr_class("_cC")}>Name</span><input${_attr_input_value($scope0_id, "ar", input.instance.name, _resume(function(v) {
|
|
5832
5835
|
setInstance({ name: v });
|
|
5833
|
-
}, "v4", $scope0_id))}${_attr_class(["
|
|
5836
|
+
}, "v4", $scope0_id))}${_attr_class(["_T", "_cD"])} type=text placeholder="Tab title" maxlength=32 autocomplete=off spellcheck=false>${_el_resume($scope0_id, "ar")}</label><div${_attr_class("_cB")}><span${_attr_class("_cC")}>Theme</span><span${_attr_class("_cF")}><span${_attr_class(themeSeg)} role=radiogroup aria-label="Color theme">`);
|
|
5834
5837
|
_for_of(themeOpts, (opt) => {
|
|
5835
5838
|
const $scope51_id = _scope_id();
|
|
5836
|
-
_html(`<button type=button${_attr_class(["
|
|
5839
|
+
_html(`<button type=button${_attr_class(["_7", { ["_6"]: themeMode === opt.id }])} role=radio aria-checked=${themeMode === opt.id ? "true" : "false"}>${_escape(opt.label)}</button>${_el_resume($scope51_id, "a")}`);
|
|
5837
5840
|
_script($scope51_id, "v64");
|
|
5838
5841
|
writeScope($scope51_id, {
|
|
5839
5842
|
e: opt?.id,
|
|
5840
5843
|
_: _scope_with_id($scope0_id)
|
|
5841
5844
|
});
|
|
5842
5845
|
}, "id", $scope0_id, "av", 1, 0, 1, 0, 1);
|
|
5843
|
-
_html(`</span><span${_attr_class(["_m", "
|
|
5846
|
+
_html(`</span><span${_attr_class(["_m", "_cG"])}>`);
|
|
5844
5847
|
_attr_select_value($scope0_id, "ax", themeMode, _resume(function(v) {
|
|
5845
5848
|
setThemeMode(v);
|
|
5846
5849
|
}, "v5", $scope0_id), () => {
|
|
5847
|
-
_html(`<select${_attr_class(["_n", "
|
|
5850
|
+
_html(`<select${_attr_class(["_n", "_cH"])} aria-label="Color theme">`);
|
|
5848
5851
|
forOf(themeOpts, (opt) => {
|
|
5849
5852
|
_scope_id();
|
|
5850
5853
|
_html(`<option${_attr_option_value(opt.id)}>${_escape(opt.label)}</option>`);
|
|
5851
5854
|
});
|
|
5852
5855
|
_html("</select>");
|
|
5853
5856
|
});
|
|
5854
|
-
_html(`${_el_resume($scope0_id, "ax")}</span></span></div><div${_attr_class("
|
|
5857
|
+
_html(`${_el_resume($scope0_id, "ax")}</span></span></div><div${_attr_class("_cB")}><span${_attr_class("_cC")}>Accent</span><span${_attr_class(swatches)} role=radiogroup aria-label="Accent colour"><button type=button${_attr_class([
|
|
5858
|
+
"_cN",
|
|
5855
5859
|
"_cP",
|
|
5856
|
-
"
|
|
5857
|
-
{ ["_cQ"]: !input.instance.accent }
|
|
5860
|
+
{ ["_cO"]: !input.instance.accent }
|
|
5858
5861
|
])} role=radio aria-checked=${!input.instance.accent ? "true" : "false"} title="Default (blue)" aria-label="Default (blue)"></button>${_el_resume($scope0_id, "b1")}`);
|
|
5859
5862
|
_for_of(ACCENT_PRESETS, (p) => {
|
|
5860
5863
|
const $scope4_id = _scope_id();
|
|
5861
|
-
_html(`<button type=button${_attr_class(["
|
|
5864
|
+
_html(`<button type=button${_attr_class(["_cN", { ["_cO"]: input.instance.accent === p.value }])}${_attr_style(`--swatch:${p.value}`)} role=radio aria-checked=${input.instance.accent === p.value ? "true" : "false"}${_attr("title", p.name)}${_attr("aria-label", p.name)}></button>${_el_resume($scope4_id, "a")}`);
|
|
5862
5865
|
_script($scope4_id, "v65");
|
|
5863
5866
|
writeScope($scope4_id, {
|
|
5864
5867
|
d: p?.value,
|
|
@@ -5867,12 +5870,12 @@ var settings_page_default = _template("v", (input) => {
|
|
|
5867
5870
|
}, "value", $scope0_id, "b2", $sg__input_instance_accent, 0, 1, 0, 1);
|
|
5868
5871
|
const customOn = !!input.instance.accent && !ACCENT_PRESETS.some((p) => p.value === input.instance.accent);
|
|
5869
5872
|
_html(`<label${_attr_class([
|
|
5870
|
-
"
|
|
5871
|
-
"
|
|
5872
|
-
{ ["
|
|
5873
|
+
"_cN",
|
|
5874
|
+
"_cQ",
|
|
5875
|
+
{ ["_cO"]: customOn }
|
|
5873
5876
|
])}${customOn ? _attr_style(`--swatch:${input.instance.accent}`) : ""} title="Custom colour"><input${_attr_input_value($scope0_id, "b4", input.instance.accent || "#3556d8", _resume(function(v) {
|
|
5874
5877
|
setInstance({ accent: v });
|
|
5875
|
-
}, "v6", $scope0_id))}${_attr_class("
|
|
5878
|
+
}, "v6", $scope0_id))}${_attr_class("_cR")} type=color aria-label="Custom accent colour">${_el_resume($scope0_id, "b4")}<span aria-hidden=true>+</span></label>${_el_resume($scope0_id, "b3", $sg__input_instance_accent)}</span></div></div></section></div></div></div>`);
|
|
5876
5879
|
_if(() => {
|
|
5877
5880
|
if (versionPick) {
|
|
5878
5881
|
const $scope38_id = _scope_id();
|
|
@@ -6000,12 +6003,12 @@ var settings_page_default = _template("v", (input) => {
|
|
|
6000
6003
|
});
|
|
6001
6004
|
//#endregion
|
|
6002
6005
|
//#region src/tags/new-workspace.css.ts
|
|
6003
|
-
var content$1 = "
|
|
6004
|
-
var section$1 = "
|
|
6005
|
-
var curBase = "
|
|
6006
|
-
var archived = "
|
|
6007
|
-
var archivedHint = "
|
|
6008
|
-
var archivedCard = "
|
|
6006
|
+
var content$1 = "_bL _bo";
|
|
6007
|
+
var section$1 = "_bP _bw";
|
|
6008
|
+
var curBase = "_bU _S _R";
|
|
6009
|
+
var archived = "_bZ _bw";
|
|
6010
|
+
var archivedHint = "_b0 _R";
|
|
6011
|
+
var archivedCard = "_b1 _bB";
|
|
6009
6012
|
//#endregion
|
|
6010
6013
|
//#region src/tags/icons/icon-check.marko
|
|
6011
6014
|
var icon_check_default = _template("P", (input) => {
|
|
@@ -6040,7 +6043,7 @@ var icon_branch_default = _template("O", (input) => {
|
|
|
6040
6043
|
});
|
|
6041
6044
|
_serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
|
|
6042
6045
|
});
|
|
6043
|
-
var resultBranch = "
|
|
6046
|
+
var resultBranch = "_c1 _Y _j";
|
|
6044
6047
|
//#endregion
|
|
6045
6048
|
//#region src/tags/branch-pick.marko
|
|
6046
6049
|
var branch_pick_default = _template("d", (input) => {
|
|
@@ -6053,11 +6056,11 @@ var branch_pick_default = _template("d", (input) => {
|
|
|
6053
6056
|
let branchFilter = "";
|
|
6054
6057
|
let reloadTick = 0;
|
|
6055
6058
|
let refreshing = false;
|
|
6056
|
-
_html(`<div${_attr_class("
|
|
6059
|
+
_html(`<div${_attr_class("_c3")}>`);
|
|
6057
6060
|
_if(() => {
|
|
6058
6061
|
{
|
|
6059
6062
|
const $scope4_id = _scope_id();
|
|
6060
|
-
_html(`<p${_attr_class("
|
|
6063
|
+
_html(`<p${_attr_class("_bH")}><span${_attr_class("_E")}></span> Loading branches…</p>`);
|
|
6061
6064
|
writeScope($scope4_id, {});
|
|
6062
6065
|
return 0;
|
|
6063
6066
|
}
|
|
@@ -6135,11 +6138,11 @@ var repo_picker_default = _template("t", (input) => {
|
|
|
6135
6138
|
const ignored = new Set(prefs$1?.ignoredSsoOrgs?.() ?? []);
|
|
6136
6139
|
return (catalog?.sso || []).filter((s) => !ignored.has(s.org));
|
|
6137
6140
|
})();
|
|
6138
|
-
_html(`<div${_attr_class("
|
|
6141
|
+
_html(`<div${_attr_class("_cU")}>`);
|
|
6139
6142
|
_if(() => {
|
|
6140
6143
|
if (ssoPending.length) {
|
|
6141
6144
|
const $scope7_id = _scope_id();
|
|
6142
|
-
_html(`<div${_attr_class("
|
|
6145
|
+
_html(`<div${_attr_class("_cV")}>`);
|
|
6143
6146
|
_set_serialize_reason(154);
|
|
6144
6147
|
const $childScope = _peek_scope_id();
|
|
6145
6148
|
sso_auth_default({
|
|
@@ -6156,29 +6159,29 @@ var repo_picker_default = _template("t", (input) => {
|
|
|
6156
6159
|
return 0;
|
|
6157
6160
|
}
|
|
6158
6161
|
}, $scope0_id, "b", 1, 1, 1, 0, 1);
|
|
6159
|
-
_html(`<label${_attr_class("
|
|
6162
|
+
_html(`<label${_attr_class("_V")}>`);
|
|
6160
6163
|
icon_search_default({
|
|
6161
6164
|
size: 14,
|
|
6162
|
-
class: "
|
|
6165
|
+
class: "_W"
|
|
6163
6166
|
});
|
|
6164
6167
|
_html(`<input${_attr_input_value($scope0_id, "e", filter, _resume(function(v) {
|
|
6165
6168
|
filter = v;
|
|
6166
6169
|
highlight = 0;
|
|
6167
6170
|
pasteWillFork = false;
|
|
6168
|
-
}, "t0", $scope0_id))}${_attr_class([inputLg, "
|
|
6171
|
+
}, "t0", $scope0_id))}${_attr_class([inputLg, "_X"])} placeholder="Add a repo…" aria-label="Add a repo"${_attr("disabled", input.disabled)}>${_el_resume($scope0_id, "e")}</label>`);
|
|
6169
6172
|
_if(() => {
|
|
6170
6173
|
if (pasted) {
|
|
6171
6174
|
const $scope1_id = _scope_id();
|
|
6172
|
-
_html(`<ul${_attr_class("
|
|
6175
|
+
_html(`<ul${_attr_class("_cW")}><li><div${_attr_class(["_cY", "_cX"])}><button${_attr_class("_cZ")}${pasteWillFork ? _attr("title", `Fork ${pasted} to your account and add the fork`) : _attr("title", `Add ${pasted} as-is (pushes go to that repo)`)}>`);
|
|
6173
6176
|
icon_plus_default({
|
|
6174
6177
|
size: 12,
|
|
6175
|
-
class: "
|
|
6178
|
+
class: "_c5"
|
|
6176
6179
|
});
|
|
6177
|
-
_html(`<span${_attr_class("
|
|
6180
|
+
_html(`<span${_attr_class("_c6")}>${_escape(repoLabel(pasted))}${_el_resume($scope1_id, "f")}</span></button>${_el_resume($scope1_id, "c")}`);
|
|
6178
6181
|
_if(() => {
|
|
6179
6182
|
if (pastedForkable) {
|
|
6180
6183
|
const $scope8_id = _scope_id();
|
|
6181
|
-
_html(`<button${_attr_class(["
|
|
6184
|
+
_html(`<button${_attr_class(["_c2", { ["_c0"]: pasteWillFork }])}${pasteWillFork ? " title=\"Will fork to your account; click to clone as-is instead\"" : _attr("title", `Fork ${pasted} to your account and clone the fork`)} aria-pressed=${pasteWillFork ? "true" : "false"}>`);
|
|
6182
6185
|
_if(() => {
|
|
6183
6186
|
if (pasteWillFork) {
|
|
6184
6187
|
const $scope10_id = _scope_id();
|
|
@@ -6198,7 +6201,7 @@ var repo_picker_default = _template("t", (input) => {
|
|
|
6198
6201
|
return 0;
|
|
6199
6202
|
}
|
|
6200
6203
|
}, $scope1_id, "g", 1, 1, 1, 0, 1);
|
|
6201
|
-
_html(`<button${_attr_class([resultBranch, { ["
|
|
6204
|
+
_html(`<button${_attr_class([resultBranch, { ["_c0"]: branchesFor === pasted }])}${_attr("title", `Pick a base branch for ${pasted}`)}${_attr("aria-label", `Pick a base branch for ${pasted}`)}>`);
|
|
6202
6205
|
icon_branch_default({ size: 12 });
|
|
6203
6206
|
_html(`</button>${_el_resume($scope1_id, "h")}</div>`);
|
|
6204
6207
|
_if(() => {
|
|
@@ -6225,7 +6228,7 @@ var repo_picker_default = _template("t", (input) => {
|
|
|
6225
6228
|
return 0;
|
|
6226
6229
|
} else if (filter && !catalog) {
|
|
6227
6230
|
const $scope9_id = _scope_id();
|
|
6228
|
-
_html(`<p${_attr_class("
|
|
6231
|
+
_html(`<p${_attr_class("_bH")}>Loading repos…</p>`);
|
|
6229
6232
|
writeScope($scope9_id, {});
|
|
6230
6233
|
return 1;
|
|
6231
6234
|
}
|
|
@@ -6233,15 +6236,15 @@ var repo_picker_default = _template("t", (input) => {
|
|
|
6233
6236
|
_if(() => {
|
|
6234
6237
|
if (results.length) {
|
|
6235
6238
|
const $scope3_id = _scope_id();
|
|
6236
|
-
_html(`<ul${_attr_class("
|
|
6239
|
+
_html(`<ul${_attr_class("_cW")}>`);
|
|
6237
6240
|
_for_of(results, (repo, i) => {
|
|
6238
6241
|
const $scope4_id = _scope_id();
|
|
6239
|
-
_html(`<li><div${_attr_class(["
|
|
6242
|
+
_html(`<li><div${_attr_class(["_cY", { ["_cX"]: i === highlight }])}><button${_attr_class("_cZ")}>`);
|
|
6240
6243
|
icon_plus_default({
|
|
6241
6244
|
size: 12,
|
|
6242
|
-
class: "
|
|
6245
|
+
class: "_c5"
|
|
6243
6246
|
});
|
|
6244
|
-
_html(`<span${_attr_class("
|
|
6247
|
+
_html(`<span${_attr_class("_c6")}>${_escape(repoLabel(repo.nameWithOwner))}${_el_resume($scope4_id, "e")}</span></button>${_el_resume($scope4_id, "b")}<button${_attr_class([resultBranch, { ["_c0"]: branchesFor === repo.nameWithOwner }])}${_attr("title", `Pick a base branch for ${repo.nameWithOwner}`)}${_attr("aria-label", `Pick a base branch for ${repo.nameWithOwner}`)}>`);
|
|
6245
6248
|
icon_branch_default({ size: 12 });
|
|
6246
6249
|
_html(`</button>${_el_resume($scope4_id, "f")}</div>${_el_resume($scope4_id, "a")}`);
|
|
6247
6250
|
_if(() => {
|
|
@@ -6276,7 +6279,7 @@ var repo_picker_default = _template("t", (input) => {
|
|
|
6276
6279
|
return 0;
|
|
6277
6280
|
} else if (filter && catalog && !pasted) {
|
|
6278
6281
|
const $scope6_id = _scope_id();
|
|
6279
|
-
_html(`<p${_attr_class("
|
|
6282
|
+
_html(`<p${_attr_class("_bH")}>No repos match "<!>${_escape(filter)}${_el_resume($scope6_id, "b")}". Paste a clone URL to add any repo.</p>`);
|
|
6280
6283
|
writeScope($scope6_id, {});
|
|
6281
6284
|
return 1;
|
|
6282
6285
|
}
|
|
@@ -6417,7 +6420,7 @@ var new_workspace_default = _template("q", (input) => {
|
|
|
6417
6420
|
}
|
|
6418
6421
|
}, "q6", $scope0_id);
|
|
6419
6422
|
const titleId = _id();
|
|
6420
|
-
_html(`<div${_attr_class("
|
|
6423
|
+
_html(`<div${_attr_class("_bm")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bn")}><div${_attr_class(content$1)}>`);
|
|
6421
6424
|
_set_serialize_reason({
|
|
6422
6425
|
0: _serialize_guard($scope0_reason, 2),
|
|
6423
6426
|
1: $sg__input_backHref__OR__input_onExit,
|
|
@@ -6456,23 +6459,23 @@ var new_workspace_default = _template("q", (input) => {
|
|
|
6456
6459
|
return 0;
|
|
6457
6460
|
}
|
|
6458
6461
|
}, $scope0_id, "e", 1, 1, 1, 0, 1);
|
|
6459
|
-
_html(`<label${_attr_class("
|
|
6462
|
+
_html(`<label${_attr_class("_bO")}><span${_attr_class("_bK")}>Name</span><input${_attr_input_value($scope0_id, "h", name, _resume((_new_name) => {
|
|
6460
6463
|
name = _new_name;
|
|
6461
|
-
}, "q0", $scope0_id))}${_attr_class(inputLg)} placeholder=my-feature${_attr("disabled", busy)} autofocus>${_el_resume($scope0_id, "h")}</label><section${_attr_class(section$1)}><div${_attr_class("
|
|
6464
|
+
}, "q0", $scope0_id))}${_attr_class(inputLg)} placeholder=my-feature${_attr("disabled", busy)} autofocus>${_el_resume($scope0_id, "h")}</label><section${_attr_class(section$1)}><div${_attr_class("_bQ")}><h2${_attr_class("_bK")}>Repos</h2><button${_attr_class(iconBtnRow)} title="Refresh repo list" aria-label="Refresh repo list"${_attr("disabled", catalogRefreshing)}>`);
|
|
6462
6465
|
_set_serialize_reason(1);
|
|
6463
6466
|
const $childScope2 = _peek_scope_id();
|
|
6464
6467
|
icon_refresh_default({
|
|
6465
6468
|
size: 14,
|
|
6466
|
-
class: catalogRefreshing && "
|
|
6469
|
+
class: catalogRefreshing && "_D"
|
|
6467
6470
|
});
|
|
6468
|
-
_html(`</button>${_el_resume($scope0_id, "l")}</div><ul${_attr_class("
|
|
6471
|
+
_html(`</button>${_el_resume($scope0_id, "l")}</div><ul${_attr_class("_bR")}>`);
|
|
6469
6472
|
_for_of(selected, (repo) => {
|
|
6470
6473
|
const $scope2_id = _scope_id();
|
|
6471
|
-
_html(`<li><div${_attr_class(row)}><span${_attr_class("
|
|
6474
|
+
_html(`<li><div${_attr_class(row)}><span${_attr_class("_bS")}>${_escape(repoLabel(repo.fullName))}${_el_resume($scope2_id, "c")}</span>`);
|
|
6472
6475
|
_if(() => {
|
|
6473
6476
|
if (repo.fork !== void 0) {
|
|
6474
6477
|
const $scope3_id = _scope_id();
|
|
6475
|
-
_html(`<button${_attr_class(["
|
|
6478
|
+
_html(`<button${_attr_class(["_bV", { ["_bT"]: repo.fork }])}${repo.fork ? _attr("title", `${repo.fullName} will be forked to your account; click to clone as-is instead`) : _attr("title", `Fork ${repo.fullName} to your account and clone the fork`)} aria-pressed=${repo.fork ? "true" : "false"}${_attr("disabled", busy)}>`);
|
|
6476
6479
|
_if(() => {
|
|
6477
6480
|
if (repo.fork) {
|
|
6478
6481
|
const $scope12_id = _scope_id();
|
|
@@ -6494,11 +6497,11 @@ var new_workspace_default = _template("q", (input) => {
|
|
|
6494
6497
|
}, $scope2_id, "d", 1, 1, 1, 0, 1);
|
|
6495
6498
|
_html(`<button${_attr_class([
|
|
6496
6499
|
curBase,
|
|
6497
|
-
"
|
|
6498
|
-
{ ["
|
|
6500
|
+
"_w",
|
|
6501
|
+
{ ["_bT"]: branchesFor === repo.fullName }
|
|
6499
6502
|
])}${_attr("title", `Change base branch for ${repo.fullName}`)}${_attr("aria-label", `Change base branch for ${repo.fullName}`)}${_attr("disabled", busy)}>`);
|
|
6500
6503
|
icon_branch_default({ size: 12 });
|
|
6501
|
-
_html(`<!>${repo.baseBranch ? ` ${_escape(`${_to_text(repo.baseBranch)}`)}` : ""}${_el_resume($scope2_id, "g")}</button>${_el_resume($scope2_id, "e")}<button${_attr_class([iconBtnXs, "
|
|
6504
|
+
_html(`<!>${repo.baseBranch ? ` ${_escape(`${_to_text(repo.baseBranch)}`)}` : ""}${_el_resume($scope2_id, "g")}</button>${_el_resume($scope2_id, "e")}<button${_attr_class([iconBtnXs, "_1"])}${_attr("title", `Remove ${repo.fullName}`)}${_attr("disabled", busy)}>`);
|
|
6502
6505
|
icon_xmark_default({ size: 12 });
|
|
6503
6506
|
_html(`</button>${_el_resume($scope2_id, "h")}</div>`);
|
|
6504
6507
|
_if(() => {
|
|
@@ -6531,7 +6534,7 @@ var new_workspace_default = _template("q", (input) => {
|
|
|
6531
6534
|
_if(() => {
|
|
6532
6535
|
if (!selected.length) {
|
|
6533
6536
|
const $scope14_id = _scope_id();
|
|
6534
|
-
_html(`<li${_attr_class("
|
|
6537
|
+
_html(`<li${_attr_class("_bH")}>No repos yet. Search below to add one, or create it empty.</li>`);
|
|
6535
6538
|
writeScope($scope14_id, {});
|
|
6536
6539
|
return 0;
|
|
6537
6540
|
}
|
|
@@ -6556,19 +6559,19 @@ var new_workspace_default = _template("q", (input) => {
|
|
|
6556
6559
|
_if(() => {
|
|
6557
6560
|
if (busy && steps$1.length) {
|
|
6558
6561
|
const $scope9_id = _scope_id();
|
|
6559
|
-
_html(`<ul${_attr_class("
|
|
6562
|
+
_html(`<ul${_attr_class("_bW")}>`);
|
|
6560
6563
|
_for_of(steps$1, (step$1, i) => {
|
|
6561
6564
|
const $scope10_id = _scope_id();
|
|
6562
|
-
_html(`<li${_attr_class(["
|
|
6565
|
+
_html(`<li${_attr_class(["_b2", { ["_bX"]: i === steps$1.length - 1 }])}>`);
|
|
6563
6566
|
_if(() => {
|
|
6564
6567
|
if (i === steps$1.length - 1) {
|
|
6565
6568
|
const $scope15_id = _scope_id();
|
|
6566
|
-
_html(`<span${_attr_class("
|
|
6569
|
+
_html(`<span${_attr_class("_E")}></span>`);
|
|
6567
6570
|
writeScope($scope15_id, {});
|
|
6568
6571
|
return 0;
|
|
6569
6572
|
} else {
|
|
6570
6573
|
const $scope16_id = _scope_id();
|
|
6571
|
-
_html(`<span${_attr_class("
|
|
6574
|
+
_html(`<span${_attr_class("_bY")}>`);
|
|
6572
6575
|
icon_check_default({ size: 14 });
|
|
6573
6576
|
_html("</span>");
|
|
6574
6577
|
writeScope($scope16_id, {});
|
|
@@ -6582,7 +6585,7 @@ var new_workspace_default = _template("q", (input) => {
|
|
|
6582
6585
|
return 0;
|
|
6583
6586
|
}
|
|
6584
6587
|
}, $scope0_id, "s", 1, 1, 1, 0, 1);
|
|
6585
|
-
_html(`<div${_attr_class("
|
|
6588
|
+
_html(`<div${_attr_class("_bM")}>`);
|
|
6586
6589
|
_if(() => {
|
|
6587
6590
|
if (input.onExit || busy) {
|
|
6588
6591
|
const $scope1_id = _scope_id();
|
|
@@ -6595,19 +6598,19 @@ var new_workspace_default = _template("q", (input) => {
|
|
|
6595
6598
|
_html(`<button type=button${_attr_class([
|
|
6596
6599
|
btnLg,
|
|
6597
6600
|
"_p",
|
|
6598
|
-
"
|
|
6601
|
+
"_bN"
|
|
6599
6602
|
])}${_attr("disabled", busy || !!restoring || !name.trim())}>${busy ? "Creating…" : "Create workspace"}${_el_resume($scope0_id, "w")}</button>${_el_resume($scope0_id, "v")}</div>`);
|
|
6600
6603
|
_if(() => {
|
|
6601
6604
|
if (archived$1.length) {
|
|
6602
6605
|
const $scope4_id = _scope_id();
|
|
6603
|
-
_html(`<section${_attr_class(archived)}><div${_attr_class("
|
|
6606
|
+
_html(`<section${_attr_class(archived)}><div${_attr_class("_bQ")}><h2${_attr_class("_bK")}>Archived</h2><span${_attr_class(sectionCount$1)}>${_escape(archived$1.length)}${_el_resume($scope4_id, "e", $sg__input_workspaces)}</span></div><p${_attr_class(archivedHint)}>Restore an archived workspace instead of creating a new one.</p><ul${_attr_class("_bz")}>`);
|
|
6604
6607
|
_for_of(archived$1, (ws) => {
|
|
6605
6608
|
const $scope5_id = _scope_id();
|
|
6606
|
-
_html(`<li${_attr_class(archivedCard)}><div${_attr_class("
|
|
6609
|
+
_html(`<li${_attr_class(archivedCard)}><div${_attr_class("_bC")}><span${_attr_class("_bD")}>${_escape(ws.name)}${_el_resume($scope5_id, "d", $sg__input_workspaces)}</span><span${_attr_class([metaTrunc, "_w"])}${_attr("title", ws.display_path || ws.path)}>${_escape(ws.display_path || ws.path)}${_el_resume($scope5_id, "f", $sg__input_workspaces)}</span>${_el_resume($scope5_id, "e", $sg__input_workspaces)}</div><button type=button${_attr_class(btnLg)}${_attr("disabled", busy || !!restoring)}>`);
|
|
6607
6610
|
_if(() => {
|
|
6608
6611
|
if (restoring === ws.id) {
|
|
6609
6612
|
const $scope17_id = _scope_id();
|
|
6610
|
-
_html(`<span${_attr_class("
|
|
6613
|
+
_html(`<span${_attr_class("_E")}></span> Restoring…`);
|
|
6611
6614
|
writeScope($scope17_id, {});
|
|
6612
6615
|
return 0;
|
|
6613
6616
|
} else {
|
|
@@ -6709,29 +6712,8 @@ function vapidKey(base64) {
|
|
|
6709
6712
|
const raw = atob(padded.replace(/-/g, "+").replace(/_/g, "/"));
|
|
6710
6713
|
return Uint8Array.from(raw, (c) => c.charCodeAt(0));
|
|
6711
6714
|
}
|
|
6712
|
-
|
|
6713
|
-
|
|
6714
|
-
/** Workspace activity dot from its polled status counts. */
|
|
6715
|
-
function phaseOf(status) {
|
|
6716
|
-
return status?.working ? "working" : status?.waiting ? "waiting" : status?.agents ? "idle" : "off";
|
|
6717
|
-
}
|
|
6718
|
-
/** Session activity dot from its own state. */
|
|
6719
|
-
function sessionPhase(state) {
|
|
6720
|
-
return state?.phase === "working" ? "working" : state?.phase === "waiting" ? "waiting" : state?.alive ? "idle" : "off";
|
|
6721
|
-
}
|
|
6722
|
-
/**
|
|
6723
|
-
* What a session is *running*, which is not always what it was started as: a
|
|
6724
|
-
* shell someone typed `claude` into is a claude session as far as the reader
|
|
6725
|
-
* is concerned. Only shells are reinterpreted — an agent kind stays itself
|
|
6726
|
-
* even while it shells out, so the icon doesn't flicker mid-command.
|
|
6727
|
-
*/
|
|
6728
|
-
function activeAgent(session) {
|
|
6729
|
-
if (session.agent !== "shell") return session.agent;
|
|
6730
|
-
const command = session.state?.command?.trim();
|
|
6731
|
-
return command && agentFromCommand(command) || session.agent;
|
|
6732
|
-
}
|
|
6733
|
-
var iconBtn$1 = "_dZ _j";
|
|
6734
|
-
var navToggle = "_d4 _j";
|
|
6715
|
+
var iconBtn$1 = "_db _j";
|
|
6716
|
+
var navToggle = "_dg _j";
|
|
6735
6717
|
_template("N", (input) => {
|
|
6736
6718
|
const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
|
|
6737
6719
|
const $scope0_id = _scope_id();
|
|
@@ -6749,7 +6731,7 @@ _template("N", (input) => {
|
|
|
6749
6731
|
});
|
|
6750
6732
|
//#endregion
|
|
6751
6733
|
//#region src/tags/icons/icon-settings.marko
|
|
6752
|
-
var icon_settings_default = _template("
|
|
6734
|
+
var icon_settings_default = _template("fb", (input) => {
|
|
6753
6735
|
const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
|
|
6754
6736
|
const $scope0_id = _scope_id();
|
|
6755
6737
|
_set_serialize_reason({
|
|
@@ -6774,12 +6756,33 @@ var ARM_MS = 3500;
|
|
|
6774
6756
|
function disarmLater(fn) {
|
|
6775
6757
|
return setTimeout(fn, ARM_MS);
|
|
6776
6758
|
}
|
|
6777
|
-
var railBtn = "
|
|
6778
|
-
var rowIcon = "
|
|
6779
|
-
var close = "
|
|
6759
|
+
var railBtn = "_fJ _j";
|
|
6760
|
+
var rowIcon = "_fS _Y _j";
|
|
6761
|
+
var close = "_fT _Y _j _1";
|
|
6780
6762
|
//#endregion
|
|
6781
6763
|
//#region src/styles/session-pop.css.ts
|
|
6782
|
-
var sessionPop = "
|
|
6764
|
+
var sessionPop = "_fs _3";
|
|
6765
|
+
//#endregion
|
|
6766
|
+
//#region src/client/status.ts
|
|
6767
|
+
/** Workspace activity dot from its polled status counts. */
|
|
6768
|
+
function phaseOf(status) {
|
|
6769
|
+
return status?.working ? "working" : status?.waiting ? "waiting" : status?.agents ? "idle" : "off";
|
|
6770
|
+
}
|
|
6771
|
+
/** Session activity dot from its own state. */
|
|
6772
|
+
function sessionPhase(state) {
|
|
6773
|
+
return state?.phase === "working" ? "working" : state?.phase === "waiting" ? "waiting" : state?.alive ? "idle" : "off";
|
|
6774
|
+
}
|
|
6775
|
+
/**
|
|
6776
|
+
* What a session is *running*, which is not always what it was started as: a
|
|
6777
|
+
* shell someone typed `claude` into is a claude session as far as the reader
|
|
6778
|
+
* is concerned. Only shells are reinterpreted — an agent kind stays itself
|
|
6779
|
+
* even while it shells out, so the icon doesn't flicker mid-command.
|
|
6780
|
+
*/
|
|
6781
|
+
function activeAgent(session) {
|
|
6782
|
+
if (session.agent !== "shell") return session.agent;
|
|
6783
|
+
const command = session.state?.command?.trim();
|
|
6784
|
+
return command && agentFromCommand(command) || session.agent;
|
|
6785
|
+
}
|
|
6783
6786
|
//#endregion
|
|
6784
6787
|
//#region src/tags/icons/icon-diff.marko
|
|
6785
6788
|
var icon_diff_default = _template("V", (input) => {
|
|
@@ -6799,7 +6802,7 @@ var icon_diff_default = _template("V", (input) => {
|
|
|
6799
6802
|
});
|
|
6800
6803
|
//#endregion
|
|
6801
6804
|
//#region src/tags/icons/icon-manage.marko
|
|
6802
|
-
var icon_manage_default = _template("
|
|
6805
|
+
var icon_manage_default = _template("bb", (input) => {
|
|
6803
6806
|
const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
|
|
6804
6807
|
const $scope0_id = _scope_id();
|
|
6805
6808
|
_set_serialize_reason({
|
|
@@ -6816,10 +6819,6 @@ var icon_manage_default = _template("cb", (input) => {
|
|
|
6816
6819
|
});
|
|
6817
6820
|
//#endregion
|
|
6818
6821
|
//#region src/tags/usage-pcts.marko
|
|
6819
|
-
function pctText(pct) {
|
|
6820
|
-
const rounded = Math.round(pct);
|
|
6821
|
-
return rounded !== pct && (rounded === 100 || rounded === 0) ? `${pct.toFixed(1)}%` : `${rounded}%`;
|
|
6822
|
-
}
|
|
6823
6822
|
var usage_pcts_default = _template("E", (input) => {
|
|
6824
6823
|
const $scope0_reason = _scope_reason(), $sg__input_agent = _serialize_guard($scope0_reason, 1), $si__input_agent = _serialize_if($scope0_reason, 1), $sg__input_agent__OR__input_class = _serialize_guard($scope0_reason, 0), $si__input_agent__OR__input_class = _serialize_if($scope0_reason, 0);
|
|
6825
6824
|
const $scope0_id = _scope_id();
|
|
@@ -6829,22 +6828,22 @@ var usage_pcts_default = _template("E", (input) => {
|
|
|
6829
6828
|
if (windows.length) {
|
|
6830
6829
|
const $scope1_id = _scope_id();
|
|
6831
6830
|
_html(`<span${_attr_class([
|
|
6832
|
-
"
|
|
6831
|
+
"_fm",
|
|
6833
6832
|
input.class,
|
|
6834
|
-
{ ["
|
|
6833
|
+
{ ["_fn"]: agent.stale_seconds != null }
|
|
6835
6834
|
])}${agent.stale_seconds != null ? _attr("title", `${agent.note || "provider unreachable"}; last cached numbers`) : " title=\"Plan usage\""}>`);
|
|
6836
6835
|
_for_of(windows, (win$1, i) => {
|
|
6837
6836
|
const $scope2_id = _scope_id();
|
|
6838
|
-
_html(`<span${_attr_class("
|
|
6837
|
+
_html(`<span${_attr_class("_fo")}>`);
|
|
6839
6838
|
_if(() => {
|
|
6840
6839
|
if (i) {
|
|
6841
6840
|
const $scope3_id = _scope_id();
|
|
6842
|
-
_html(`<span${_attr_class("
|
|
6841
|
+
_html(`<span${_attr_class("_fr")} aria-hidden=true>·</span>`);
|
|
6843
6842
|
$si__input_agent && writeScope($scope3_id, {});
|
|
6844
6843
|
return 0;
|
|
6845
6844
|
}
|
|
6846
6845
|
}, $scope2_id, "b", $sg__input_agent, $sg__input_agent, $sg__input_agent, 0, 1);
|
|
6847
|
-
_html(`<span${_attr_class("
|
|
6846
|
+
_html(`<span${_attr_class("_fp")}>${_escape(win$1.window)}${_el_resume($scope2_id, "d", $sg__input_agent)}</span><span${_attr_class(["_fq", win$1.used_percent >= 90 ? "_fi" : win$1.used_percent >= 70 ? "_fh" : win$1.used_percent >= 40 ? "_fg" : "_ff"])}>${_escape(pctText(win$1.used_percent))}${_el_resume($scope2_id, "f", $sg__input_agent)}</span>${_el_resume($scope2_id, "e", $sg__input_agent)}</span>`);
|
|
6848
6847
|
$si__input_agent && writeScope($scope2_id, {});
|
|
6849
6848
|
}, "window", $scope1_id, "a", $sg__input_agent, $sg__input_agent__OR__input_class, $sg__input_agent, "</span>", 1);
|
|
6850
6849
|
$si__input_agent__OR__input_class && writeScope($scope1_id, { _: _scope_with_id($scope0_id) });
|
|
@@ -6875,12 +6874,12 @@ var icon_edit_default = _template("X", (input) => {
|
|
|
6875
6874
|
});
|
|
6876
6875
|
_serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
|
|
6877
6876
|
});
|
|
6878
|
-
var prChip = "
|
|
6879
|
-
var portChip = "
|
|
6877
|
+
var prChip = "_hr _s _hq";
|
|
6878
|
+
var portChip = "_hs _s _hq";
|
|
6880
6879
|
var prState = {
|
|
6881
|
-
open: "
|
|
6882
|
-
merged: "
|
|
6883
|
-
closed: "
|
|
6880
|
+
open: "_hw",
|
|
6881
|
+
merged: "_hx",
|
|
6882
|
+
closed: "_hy"
|
|
6884
6883
|
};
|
|
6885
6884
|
//#endregion
|
|
6886
6885
|
//#region src/tags/side-nav-chips.marko
|
|
@@ -6952,7 +6951,7 @@ var side_nav_chips_default = _template("w", (input) => {
|
|
|
6952
6951
|
const name = repo.full_name.split("/").at(-1);
|
|
6953
6952
|
return repos.some((r) => r.full_name !== repo.full_name && r.full_name.split("/").at(-1) === name) ? repoLabel(repo.full_name) : name;
|
|
6954
6953
|
}, "w4", $scope1_id);
|
|
6955
|
-
_html(`<div${_attr_class("
|
|
6954
|
+
_html(`<div${_attr_class("_hp")}>`);
|
|
6956
6955
|
_for_of(repos, (repo) => {
|
|
6957
6956
|
const $scope2_id = _scope_id();
|
|
6958
6957
|
const $for_content__repo_worktree__closures = /* @__PURE__ */ new Set();
|
|
@@ -6963,16 +6962,16 @@ var side_nav_chips_default = _template("w", (input) => {
|
|
|
6963
6962
|
"_s",
|
|
6964
6963
|
prChip,
|
|
6965
6964
|
{
|
|
6966
|
-
["
|
|
6967
|
-
["
|
|
6965
|
+
["_t"]: open && !pr.isDraft,
|
|
6966
|
+
["_u"]: open && pr.isDraft,
|
|
6968
6967
|
[prState.merged]: pr.state === "MERGED",
|
|
6969
6968
|
[prState.closed]: pr.state === "CLOSED"
|
|
6970
6969
|
}
|
|
6971
|
-
])}${_attr("title", prTitle(repo, pr))}><a${_attr_class(["
|
|
6970
|
+
])}${_attr("title", prTitle(repo, pr))}><a${_attr_class(["_ht", { ["_hA"]: !open }])}${_attr("href", pr.url)} target=_blank rel=noopener>${_escape(repoLabel$1(repo))}${_el_resume($scope3_id, "c")}#<!>${_escape(pr.number)}${_el_resume($scope3_id, "d")}</a>${_el_resume($scope3_id, "b")}`);
|
|
6972
6971
|
_if(() => {
|
|
6973
6972
|
if (open) {
|
|
6974
6973
|
const $scope4_id = _scope_id();
|
|
6975
|
-
_html(`<a${_attr_class(["
|
|
6974
|
+
_html(`<a${_attr_class(["_ht", "_hu"])}${_attr("href", `/w/${input.workspaceId}/review?pr=${encodeURIComponent(`${repo.worktree}/${pr.number}`)}`)}${_attr("title", `Review #${pr.number} changes`)}>`);
|
|
6976
6975
|
icon_diff_default({ size: 12 });
|
|
6977
6976
|
_html(`</a>${_el_resume($scope4_id, "a")}`);
|
|
6978
6977
|
_subscribe($for_content__repo_worktree__closures, _subscribe($si__input_workspaceId && $input_workspaceId__closures, writeScope($scope4_id, {})));
|
|
@@ -6980,9 +6979,9 @@ var side_nav_chips_default = _template("w", (input) => {
|
|
|
6980
6979
|
} else {
|
|
6981
6980
|
const $scope6_id = _scope_id();
|
|
6982
6981
|
_html(`<button type=button${_attr_class([
|
|
6983
|
-
"
|
|
6984
|
-
"
|
|
6985
|
-
"
|
|
6982
|
+
"_ht",
|
|
6983
|
+
"_hu",
|
|
6984
|
+
"_hv"
|
|
6986
6985
|
])}${_attr("title", `Dismiss #${pr.number}`)}>`);
|
|
6987
6986
|
icon_xmark_default({ size: 12 });
|
|
6988
6987
|
_html(`</button>${_el_resume($scope6_id, "a")}`);
|
|
@@ -7003,10 +7002,10 @@ var side_nav_chips_default = _template("w", (input) => {
|
|
|
7003
7002
|
}, "full_name", $scope1_id, "b");
|
|
7004
7003
|
_for_of(ports, (p) => {
|
|
7005
7004
|
const $scope5_id = _scope_id();
|
|
7006
|
-
_html(`<span${_attr_class(["_s", portChip])}${_attr("title", p.cmd)}><button type=button${_attr_class(["
|
|
7005
|
+
_html(`<span${_attr_class(["_s", portChip])}${_attr("title", p.cmd)}><button type=button${_attr_class(["_ht", "_hz"])}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${p.port}`)}>:<!>${_escape(p.port)}${_el_resume($scope5_id, "c")}</button>${_el_resume($scope5_id, "b")}<button type=button${_attr_class([
|
|
7006
|
+
"_ht",
|
|
7007
|
+
"_hu",
|
|
7007
7008
|
"_hv",
|
|
7008
|
-
"_hw",
|
|
7009
|
-
"_hx",
|
|
7010
7009
|
{ ["_q"]: armedPid === p.pid }
|
|
7011
7010
|
])}${armedPid === p.pid ? " title=Kill?" : _attr("title", `Kill ${p.cmd} (pid ${p.pid})`)}>`);
|
|
7012
7011
|
icon_xmark_default({ size: 12 });
|
|
@@ -7102,10 +7101,10 @@ var side_nav_item_default = _template("x", (input) => {
|
|
|
7102
7101
|
_if(() => {
|
|
7103
7102
|
if (input.rail) {
|
|
7104
7103
|
const $scope2_id = _scope_id();
|
|
7105
|
-
_html(`<a${_attr("href", `/w/${ws$1.id}`)}${_attr_class([railBtn, { ["
|
|
7106
|
-
"
|
|
7104
|
+
_html(`<a${_attr("href", `/w/${ws$1.id}`)}${_attr_class([railBtn, { ["_fH"]: input.current }])}${_attr("title", ws$1.name)}>${_escape((input.index ?? 0) + 1)}${_el_resume($scope2_id, "b", _serialize_guard($scope0_reason, 27))}<span${_attr_class([
|
|
7105
|
+
"_y",
|
|
7107
7106
|
phase[dot],
|
|
7108
|
-
"
|
|
7107
|
+
"_fK"
|
|
7109
7108
|
])}></span>${_el_resume($scope2_id, "c", $sg__input_workspaceId__OR__input_status)}</a>${_el_resume($scope2_id, "a", _serialize_guard($scope0_reason, 3))}`);
|
|
7110
7109
|
_serialize_if($scope0_reason, 18) && _subscribe($si__input_workspaces__OR__input_workspaceId && $ws_name__closures, _subscribe($si__input_workspaces__OR__input_workspaceId && $ws_id__closures, _subscribe($si__input_index && $input_index__closures, _subscribe($si__input_current && $input_current__closures, writeScope($scope2_id, { _: _scope_with_id($scope1_id) })))));
|
|
7111
7110
|
return 0;
|
|
@@ -7113,15 +7112,15 @@ var side_nav_item_default = _template("x", (input) => {
|
|
|
7113
7112
|
const $scope3_id = _scope_id();
|
|
7114
7113
|
const sessions$1 = input.sessions || [];
|
|
7115
7114
|
const phaseLabel = dot === "working" ? "Working" : dot === "waiting" ? "Needs input" : dot === "idle" ? "Idle" : "Not running";
|
|
7116
|
-
_html(`<section${_attr_class(["
|
|
7117
|
-
["
|
|
7118
|
-
["
|
|
7119
|
-
["
|
|
7120
|
-
["
|
|
7121
|
-
}])}><div${_attr_class("
|
|
7122
|
-
"
|
|
7115
|
+
_html(`<section${_attr_class(["_fM", {
|
|
7116
|
+
["_fH"]: input.current,
|
|
7117
|
+
["_4"]: input.current,
|
|
7118
|
+
["_fN"]: input.railPop,
|
|
7119
|
+
["_fL"]: input.page
|
|
7120
|
+
}])}><div${_attr_class("_fO")}><a${_attr("href", `/w/${ws$1.id}`)}${_attr_class("_fP")}><span${_attr_class([
|
|
7121
|
+
"_y",
|
|
7123
7122
|
phase[dot],
|
|
7124
|
-
"
|
|
7123
|
+
"_f2"
|
|
7125
7124
|
])}${_attr("title", phaseLabel)}></span>${_el_resume($scope3_id, "d", $sg__input_workspaceId__OR__input_status)}`);
|
|
7126
7125
|
_if(() => {
|
|
7127
7126
|
if (sessions$1.length === 1) {
|
|
@@ -7134,7 +7133,7 @@ var side_nav_item_default = _template("x", (input) => {
|
|
|
7134
7133
|
icon_agent_default({
|
|
7135
7134
|
agent: activeAgent(sessions$1[0]),
|
|
7136
7135
|
size: 12,
|
|
7137
|
-
class: "
|
|
7136
|
+
class: "_fU"
|
|
7138
7137
|
});
|
|
7139
7138
|
$si__input_sessions && writeScope($scope14_id, {
|
|
7140
7139
|
_: _scope_with_id($scope3_id),
|
|
@@ -7144,16 +7143,16 @@ var side_nav_item_default = _template("x", (input) => {
|
|
|
7144
7143
|
}
|
|
7145
7144
|
}, $scope3_id, "e", $sg__input_sessions, $sg__input_sessions);
|
|
7146
7145
|
const metaText = sessions$1.length === 0 ? phaseLabel : sessions$1.length === 1 ? sessions$1[0].title || "" : `${sessions$1.length} sessions`;
|
|
7147
|
-
_html(`<span${_attr_class("
|
|
7146
|
+
_html(`<span${_attr_class("_fV")}><span${_attr_class("_fW")}>${_escape(ws$1.name)}${_el_resume($scope3_id, "h", $sg__input_workspaces__OR__input_workspaceId)}</span>`);
|
|
7148
7147
|
_if(() => {
|
|
7149
7148
|
if (input.page && metaText) {
|
|
7150
7149
|
const $scope16_id = _scope_id();
|
|
7151
|
-
_html(`<span${_attr_class("
|
|
7150
|
+
_html(`<span${_attr_class("_f0")}>${_escape(metaText)}${_el_resume($scope16_id, "b", _serialize_guard($scope0_reason, 7))}</span>`);
|
|
7152
7151
|
$si__input_page__OR__input_sessions__OR__input_workspaceId__OR__input_status && writeScope($scope16_id, { _: _serialize_if($scope0_reason, 7) && _scope_with_id($scope3_id) });
|
|
7153
7152
|
return 0;
|
|
7154
7153
|
} else if (sessions$1.length === 1 && sessions$1[0].title) {
|
|
7155
7154
|
const $scope15_id = _scope_id();
|
|
7156
|
-
_html(`<span${_attr_class("
|
|
7155
|
+
_html(`<span${_attr_class("_fX")}>${_escape(sessions$1[0].title)}${_el_resume($scope15_id, "b", $sg__input_sessions)}</span>`);
|
|
7157
7156
|
$si__input_page__OR__input_sessions__OR__input_workspaceId__OR__input_status && writeScope($scope15_id, { _: $si__input_sessions && _scope_with_id($scope3_id) });
|
|
7158
7157
|
return 1;
|
|
7159
7158
|
}
|
|
@@ -7163,10 +7162,10 @@ var side_nav_item_default = _template("x", (input) => {
|
|
|
7163
7162
|
if (input.page) {
|
|
7164
7163
|
const $scope4_id = _scope_id();
|
|
7165
7164
|
_html(`<span${_attr_class([
|
|
7166
|
-
"
|
|
7167
|
-
"
|
|
7168
|
-
"
|
|
7169
|
-
"
|
|
7165
|
+
"_H",
|
|
7166
|
+
"_Q",
|
|
7167
|
+
"_J",
|
|
7168
|
+
"_f1"
|
|
7170
7169
|
])}>${input.current ? "Open" : ""}${_el_resume($scope4_id, "b", _serialize_guard($scope0_reason, 21))}</span>`);
|
|
7171
7170
|
$si__input_current__OR__input_page__OR__input_rail__OR__input_workspaces__OR__input_workspaceId && _subscribe($si__input_current && $input_current__closures, writeScope($scope4_id, {
|
|
7172
7171
|
_: _scope_with_id($scope3_id),
|
|
@@ -7179,7 +7178,7 @@ var side_nav_item_default = _template("x", (input) => {
|
|
|
7179
7178
|
_if(() => {
|
|
7180
7179
|
if (!input.page) {
|
|
7181
7180
|
const $scope5_id = _scope_id();
|
|
7182
|
-
_html(`<div${_attr_class("
|
|
7181
|
+
_html(`<div${_attr_class("_fQ")}>`);
|
|
7183
7182
|
_if(() => {
|
|
7184
7183
|
if (input.onNewSession) {
|
|
7185
7184
|
const $scope6_id = _scope_id();
|
|
@@ -7193,7 +7192,7 @@ var side_nav_item_default = _template("x", (input) => {
|
|
|
7193
7192
|
_html(`</button>${_el_resume($scope6_id, "a")}<div${_attr("id", newPopId)} popover=auto${_attr_class(sessionPop)}>`);
|
|
7194
7193
|
_for_of([], (agent) => {
|
|
7195
7194
|
const $scope7_id = _scope_id();
|
|
7196
|
-
_html(`<button${_attr_class("
|
|
7195
|
+
_html(`<button${_attr_class("_ft")}>`);
|
|
7197
7196
|
_set_serialize_reason(12);
|
|
7198
7197
|
const $childScope2 = _peek_scope_id();
|
|
7199
7198
|
icon_agent_default({
|
|
@@ -7228,7 +7227,7 @@ var side_nav_item_default = _template("x", (input) => {
|
|
|
7228
7227
|
return 0;
|
|
7229
7228
|
}
|
|
7230
7229
|
}, $scope5_id, "c", $sg__input_onReview, $sg__input_onReview, $sg__input_onNewSession__OR__input_onReview, 0, 1);
|
|
7231
|
-
_html(`<a${input.managing ? _attr("href", `/w/${ws$1.id}`) : _attr("href", `/w/${ws$1.id}/manage`)}${_attr_class([rowIcon, { ["
|
|
7230
|
+
_html(`<a${input.managing ? _attr("href", `/w/${ws$1.id}`) : _attr("href", `/w/${ws$1.id}/manage`)}${_attr_class([rowIcon, { ["_fI"]: input.managing }])} title=${input.managing ? "\"Back to terminal\"" : "\"Manage workspace\""}${input.managing ? " aria-current=page" : ""}>`);
|
|
7232
7231
|
icon_manage_default({ size: 12 });
|
|
7233
7232
|
_html(`</a>${_el_resume($scope5_id, "d", _serialize_guard($scope0_reason, 8))}</div>`);
|
|
7234
7233
|
_subscribe($si__input_workspaces__OR__input_workspaceId && $ws_id__closures, _subscribe($si__input_managing && $input_managing__closures, _subscribe($si__input_onReview && $input_onReview__closures, _subscribe($si__input_onNewSession && $input_onNewSession__closures, writeScope($scope5_id, {
|
|
@@ -7238,7 +7237,7 @@ var side_nav_item_default = _template("x", (input) => {
|
|
|
7238
7237
|
return 0;
|
|
7239
7238
|
}
|
|
7240
7239
|
}, $scope3_id, "k", $sg__input_page, $sg__input_page, 1, 0, 1);
|
|
7241
|
-
_html(`</div><div${_attr_class("
|
|
7240
|
+
_html(`</div><div${_attr_class("_f7")}>`);
|
|
7242
7241
|
_if(() => {
|
|
7243
7242
|
if (sessions$1.length === 1 && openPlan) {
|
|
7244
7243
|
const $scope11_id = _scope_id();
|
|
@@ -7246,7 +7245,7 @@ var side_nav_item_default = _template("x", (input) => {
|
|
|
7246
7245
|
const $childScope3 = _peek_scope_id();
|
|
7247
7246
|
usage_pcts_default({
|
|
7248
7247
|
agent: openPlan,
|
|
7249
|
-
class: "
|
|
7248
|
+
class: "_fY"
|
|
7250
7249
|
});
|
|
7251
7250
|
_subscribe($openPlan__closures, writeScope($scope11_id, {
|
|
7252
7251
|
a: _existing_scope($childScope3),
|
|
@@ -7257,14 +7256,14 @@ var side_nav_item_default = _template("x", (input) => {
|
|
|
7257
7256
|
}, $scope3_id, "m");
|
|
7258
7257
|
_for_of(sessions$1.length > 1 ? sessions$1 : [], (s) => {
|
|
7259
7258
|
const $scope8_id = _scope_id();
|
|
7260
|
-
_html(`<div${_attr_class(["
|
|
7259
|
+
_html(`<div${_attr_class(["_fR", { ["_fH"]: s.id === input.currentTab }])}>`);
|
|
7261
7260
|
_if(() => {
|
|
7262
7261
|
if (renamingId === s.id) {
|
|
7263
7262
|
const $scope10_id = _scope_id();
|
|
7264
7263
|
_html(`<span${_attr_class([
|
|
7265
|
-
"
|
|
7264
|
+
"_y",
|
|
7266
7265
|
phase[sessionPhase(s.state)],
|
|
7267
|
-
"
|
|
7266
|
+
"_f5"
|
|
7268
7267
|
])}></span>${_el_resume($scope10_id, "a", $sg__input_sessions)}`);
|
|
7269
7268
|
_set_serialize_reason({
|
|
7270
7269
|
1: $sg__input_sessions,
|
|
@@ -7274,17 +7273,17 @@ var side_nav_item_default = _template("x", (input) => {
|
|
|
7274
7273
|
icon_agent_default({
|
|
7275
7274
|
agent: activeAgent(s),
|
|
7276
7275
|
size: 13,
|
|
7277
|
-
class: "
|
|
7276
|
+
class: "_f9"
|
|
7278
7277
|
});
|
|
7279
7278
|
_html(`<input${_attr_input_value($scope10_id, "c", renameValue, _resume((_new_renameValue) => {
|
|
7280
7279
|
renameValue = _new_renameValue;
|
|
7281
|
-
}, "x0", $scope10_id))}${_attr_class(["
|
|
7280
|
+
}, "x0", $scope10_id))}${_attr_class(["_T", "_f6"])} aria-label="Session name">${_el_resume($scope10_id, "c")}`);
|
|
7282
7281
|
_script($scope10_id, "x5");
|
|
7283
7282
|
_subscribe($renameValue__closures, writeScope($scope10_id, { b: $si__input_sessions && _existing_scope($childScope4) }));
|
|
7284
7283
|
return 0;
|
|
7285
7284
|
} else {
|
|
7286
7285
|
const $scope9_id = _scope_id();
|
|
7287
|
-
_html(`<a${_attr("href", `/w/${ws$1.id}?s=${s.id}`)}${_attr_class("
|
|
7286
|
+
_html(`<a${_attr("href", `/w/${ws$1.id}?s=${s.id}`)}${_attr_class("_f8")}><span${_attr_class(["_y", phase[sessionPhase(s.state)]])}></span>${_el_resume($scope9_id, "b", $sg__input_sessions)}`);
|
|
7288
7287
|
_set_serialize_reason({
|
|
7289
7288
|
1: $sg__input_sessions,
|
|
7290
7289
|
2: $sg__input_sessions
|
|
@@ -7293,9 +7292,9 @@ var side_nav_item_default = _template("x", (input) => {
|
|
|
7293
7292
|
icon_agent_default({
|
|
7294
7293
|
agent: activeAgent(s),
|
|
7295
7294
|
size: 13,
|
|
7296
|
-
class: "
|
|
7295
|
+
class: "_f9"
|
|
7297
7296
|
});
|
|
7298
|
-
_html(`<span${_attr_class("
|
|
7297
|
+
_html(`<span${_attr_class("_f3")}>${_escape(s.title || activeAgent(s))}${_el_resume($scope9_id, "e", $sg__input_sessions)}</span></a>${_el_resume($scope9_id, "a", _serialize_guard($scope0_reason, 6))}<div${_attr_class("_f4")}><button${_attr_class(rowIcon)} title="Rename session">`);
|
|
7299
7298
|
icon_edit_default({ size: 12 });
|
|
7300
7299
|
_html(`</button>${_el_resume($scope9_id, "g")}<button${_attr_class([close, { ["_q"]: armedKill === s.id }])} title=${armedKill === s.id ? "Close?" : "\"Close session\""}>`);
|
|
7301
7300
|
icon_xmark_default({ size: 12 });
|
|
@@ -7307,7 +7306,7 @@ var side_nav_item_default = _template("x", (input) => {
|
|
|
7307
7306
|
const $childScope6 = _peek_scope_id();
|
|
7308
7307
|
usage_pcts_default({
|
|
7309
7308
|
agent: openPlan,
|
|
7310
|
-
class: "
|
|
7309
|
+
class: "_fZ"
|
|
7311
7310
|
});
|
|
7312
7311
|
_subscribe($openPlan__closures, writeScope($scope12_id, {
|
|
7313
7312
|
a: _existing_scope($childScope6),
|
|
@@ -7436,7 +7435,7 @@ var icon_folder_plus_default = _template("$", (input) => {
|
|
|
7436
7435
|
});
|
|
7437
7436
|
//#endregion
|
|
7438
7437
|
//#region src/tags/icons/icon-sidebar-collapse.marko
|
|
7439
|
-
var icon_sidebar_collapse_default = _template("
|
|
7438
|
+
var icon_sidebar_collapse_default = _template("gb", (input) => {
|
|
7440
7439
|
const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
|
|
7441
7440
|
const $scope0_id = _scope_id();
|
|
7442
7441
|
_set_serialize_reason({
|
|
@@ -7497,40 +7496,39 @@ var side_nav_default = _template("y", (input) => {
|
|
|
7497
7496
|
const itemIds = input.allWorkspaces?.length ? input.allWorkspaces.filter((w) => w.status === "active").map((w) => w.id) : [ws.id];
|
|
7498
7497
|
const workspaces = input.allWorkspaces || [ws];
|
|
7499
7498
|
const allStatus = input.allStatus || {};
|
|
7500
|
-
allStatus[ws.id];
|
|
7501
7499
|
const isPage = view === "nav";
|
|
7502
7500
|
const backHref = `/w/${ws.id}`;
|
|
7503
7501
|
const iconSrc = `/api/instance/icon${input.instanceAccent ? `?v=${input.instanceAccent.slice(1)}` : ""}`;
|
|
7504
7502
|
const otherIds = itemIds.filter((id) => id !== ws.id);
|
|
7505
7503
|
const listIds = isPage ? [ws.id, ...otherIds] : itemIds;
|
|
7506
|
-
_html(`<aside${_attr_class(["
|
|
7507
|
-
["
|
|
7508
|
-
["
|
|
7504
|
+
_html(`<aside${_attr_class(["_df", {
|
|
7505
|
+
["_dd"]: !navOpen,
|
|
7506
|
+
["_de"]: isPage
|
|
7509
7507
|
}])}${_attr("hidden", view === "diff")}>`);
|
|
7510
7508
|
_if(() => {
|
|
7511
7509
|
if (isPage) {
|
|
7512
7510
|
const $scope1_id = _scope_id();
|
|
7513
|
-
_html(`<header${_attr_class("
|
|
7511
|
+
_html(`<header${_attr_class("_di")}><div${_attr_class("_dr")}>`);
|
|
7514
7512
|
_if(() => {
|
|
7515
7513
|
if (input.instanceName) {
|
|
7516
7514
|
const $scope2_id = _scope_id();
|
|
7517
|
-
_html(`<div${_attr_class("
|
|
7515
|
+
_html(`<div${_attr_class("_do")} title="This work server (Settings → Appearance)"><img${_attr_class("_dp")}${_attr("src", iconSrc)} alt aria-hidden=true>${_el_resume($scope2_id, "b", $sg__input_instanceAccent)}<span${_attr_class("_dq")}>${_escape(input.instanceName)}${_el_resume($scope2_id, "d", $sg__input_instanceName)}</span></div>`);
|
|
7518
7516
|
_subscribe($si__input_instanceAccent && $iconSrc__closures, _subscribe($si__input_instanceName && $input_instanceName__closures, writeScope($scope2_id, { _: _scope_with_id($scope1_id) })));
|
|
7519
7517
|
return 0;
|
|
7520
7518
|
}
|
|
7521
7519
|
}, $scope1_id, "c", $sg__input_instanceName, $sg__input_instanceName, 1, 0, 1);
|
|
7522
|
-
_html(`<h1${_attr_class("
|
|
7520
|
+
_html(`<h1${_attr_class("_dj")}>Workspaces</h1></div><div${_attr_class("_dk")}>`);
|
|
7523
7521
|
_if(() => {}, $scope1_id, "f", 1, 1, 1, 0, 1);
|
|
7524
7522
|
_html(`<a${view === "settings" ? _attr("href", backHref) : " href=/settings"}${_attr_class([
|
|
7525
7523
|
iconBtn$1,
|
|
7526
|
-
"
|
|
7527
|
-
{ ["
|
|
7524
|
+
"_dl",
|
|
7525
|
+
{ ["_da"]: view === "settings" }
|
|
7528
7526
|
])} title=${view === "settings" ? "\"Back to workspace\"" : "Settings"}${view === "settings" ? " aria-current=page" : ""}>`);
|
|
7529
7527
|
icon_settings_default({ size: 16 });
|
|
7530
7528
|
_if(() => {
|
|
7531
7529
|
if (input.setupReady === false) {
|
|
7532
7530
|
const $scope12_id = _scope_id();
|
|
7533
|
-
_html(`<span${_attr_class(["
|
|
7531
|
+
_html(`<span${_attr_class(["_y", "_dc"])} title="Machine setup incomplete"></span>`);
|
|
7534
7532
|
$si__input_setupReady && writeScope($scope12_id, {});
|
|
7535
7533
|
return 0;
|
|
7536
7534
|
}
|
|
@@ -7543,18 +7541,18 @@ var side_nav_default = _template("y", (input) => {
|
|
|
7543
7541
|
_if(() => {
|
|
7544
7542
|
if (!isPage && input.instanceName) {
|
|
7545
7543
|
const $scope3_id = _scope_id();
|
|
7546
|
-
_html(`<div${_attr_class("
|
|
7544
|
+
_html(`<div${_attr_class("_do")} title="This work server (Settings → Appearance)"><img${_attr_class("_dp")}${_attr("src", iconSrc)} alt aria-hidden=true>${_el_resume($scope3_id, "b", $sg__input_instanceAccent)}<span${_attr_class("_dq")}>${_escape(input.instanceName)}${_el_resume($scope3_id, "d", $sg__input_instanceName)}</span></div>`);
|
|
7547
7545
|
writeScope($scope3_id, {});
|
|
7548
7546
|
return 0;
|
|
7549
7547
|
}
|
|
7550
7548
|
}, $scope0_id, "c", 1, 1, 1, 0, 1);
|
|
7551
|
-
_html(`<div${_attr_class("
|
|
7549
|
+
_html(`<div${_attr_class("_ds")}>`);
|
|
7552
7550
|
_for_of(listIds, (wsId) => {
|
|
7553
7551
|
const $scope4_id = _scope_id();
|
|
7554
7552
|
_if(() => {
|
|
7555
7553
|
if (isPage && wsId === ws.id) {
|
|
7556
7554
|
const $scope13_id = _scope_id();
|
|
7557
|
-
_html(`<h2${_attr_class(["
|
|
7555
|
+
_html(`<h2${_attr_class(["_bK", "_dm"])}>Current</h2>`);
|
|
7558
7556
|
writeScope($scope13_id, {});
|
|
7559
7557
|
return 0;
|
|
7560
7558
|
}
|
|
@@ -7562,7 +7560,7 @@ var side_nav_default = _template("y", (input) => {
|
|
|
7562
7560
|
_if(() => {
|
|
7563
7561
|
if (isPage && wsId !== ws.id && wsId === otherIds[0]) {
|
|
7564
7562
|
const $scope14_id = _scope_id();
|
|
7565
|
-
_html(`<h2${_attr_class(["
|
|
7563
|
+
_html(`<h2${_attr_class(["_bK", "_dm"])}>Other workspaces</h2>`);
|
|
7566
7564
|
writeScope($scope14_id, {});
|
|
7567
7565
|
return 0;
|
|
7568
7566
|
}
|
|
@@ -7646,7 +7644,7 @@ var side_nav_default = _template("y", (input) => {
|
|
|
7646
7644
|
railHover = null;
|
|
7647
7645
|
}, 150);
|
|
7648
7646
|
}, "y6", $scope5_id);
|
|
7649
|
-
_html(`<div${_attr_class("
|
|
7647
|
+
_html(`<div${_attr_class("_dt")}>`);
|
|
7650
7648
|
_for_of(itemIds, (wsId, i) => {
|
|
7651
7649
|
const $scope6_id = _scope_id();
|
|
7652
7650
|
_html("<span>");
|
|
@@ -7700,7 +7698,7 @@ var side_nav_default = _template("y", (input) => {
|
|
|
7700
7698
|
if (railHover) {
|
|
7701
7699
|
const $scope7_id = _scope_id();
|
|
7702
7700
|
const hoverId = railHover.id;
|
|
7703
|
-
_html(`<div${_attr_class(["
|
|
7701
|
+
_html(`<div${_attr_class(["_3", "_dw"])}${_attr_style(`top:${railHover.top}px;left:${railHover.left}px`)}>`);
|
|
7704
7702
|
_set_serialize_reason({
|
|
7705
7703
|
0: 1,
|
|
7706
7704
|
1: 1,
|
|
@@ -7767,9 +7765,9 @@ var side_nav_default = _template("y", (input) => {
|
|
|
7767
7765
|
_subscribe($si__input_allStatus && $allStatus__closures, _subscribe($si__input_workspace__OR__input_allWorkspaces && $workspaces__closures, _subscribe($view__closures, _subscribe($si__input_tab__OR__input_tabChange && $tab__closures, _subscribe($si__input_workspace && $ws_id__closures, _subscribe($si__input_onCloseSession && $input_onCloseSession__closures, _subscribe($si__input_onRenameSession && $input_onRenameSession__closures, _subscribe($si__input_sessions && $input_sessions__closures, _subscribe($si__input_onReviewOther && $input_onReviewOther__closures, _subscribe($si__input_onReviewOpened && $input_onReviewOpened__closures, _subscribe($si__input_onNewSession && $input_onNewSession__closures, _subscribe($si__input_agents && $input_agents__closures, writeScope($scope7_id, {
|
|
7768
7766
|
d: hoverId,
|
|
7769
7767
|
b: _existing_scope($childScope3),
|
|
7770
|
-
|
|
7771
|
-
|
|
7772
|
-
|
|
7768
|
+
Cb4: $si__input_workspace && 1,
|
|
7769
|
+
Cbc: $si__input_workspace__OR__input_allWorkspaces && 1,
|
|
7770
|
+
Cbd: $si__input_allStatus && 1
|
|
7773
7771
|
})))))))))))));
|
|
7774
7772
|
return 0;
|
|
7775
7773
|
}
|
|
@@ -7785,7 +7783,7 @@ var side_nav_default = _template("y", (input) => {
|
|
|
7785
7783
|
return 0;
|
|
7786
7784
|
}
|
|
7787
7785
|
}, $scope0_id, "e");
|
|
7788
|
-
_html(`<div${_attr_class("
|
|
7786
|
+
_html(`<div${_attr_class("_du")}>`);
|
|
7789
7787
|
_if(() => {
|
|
7790
7788
|
if (isPage) {
|
|
7791
7789
|
const $scope9_id = _scope_id();
|
|
@@ -7793,7 +7791,7 @@ var side_nav_default = _template("y", (input) => {
|
|
|
7793
7791
|
"_o",
|
|
7794
7792
|
"_p",
|
|
7795
7793
|
btnLg,
|
|
7796
|
-
"
|
|
7794
|
+
"_dn"
|
|
7797
7795
|
])} title=${view === "new" ? "\"Back to workspace\"" : "\"New workspace\""}${view === "new" ? " aria-current=page" : ""}>`);
|
|
7798
7796
|
icon_folder_plus_default({ size: 16 });
|
|
7799
7797
|
_html(` New workspace</a>${_el_resume($scope9_id, "a")}`);
|
|
@@ -7815,19 +7813,19 @@ var side_nav_default = _template("y", (input) => {
|
|
|
7815
7813
|
return 1;
|
|
7816
7814
|
}
|
|
7817
7815
|
}, $scope8_id, "a", 1, 1, 1, "</button>", 1);
|
|
7818
|
-
_html(`<div${_attr_class(["
|
|
7816
|
+
_html(`<div${_attr_class(["_x", "_dv"])}></div>`);
|
|
7819
7817
|
_if(() => {}, $scope8_id, "c", 1, 1, 1, 0, 1);
|
|
7820
|
-
_html(`<a${view === "settings" ? _attr("href", backHref) : " href=/settings"}${_attr_class([iconBtn$1, { ["
|
|
7818
|
+
_html(`<a${view === "settings" ? _attr("href", backHref) : " href=/settings"}${_attr_class([iconBtn$1, { ["_da"]: view === "settings" }])} title=${view === "settings" ? "\"Back to workspace\"" : "Settings"}${view === "settings" ? " aria-current=page" : ""}>`);
|
|
7821
7819
|
icon_settings_default({ size: 15 });
|
|
7822
7820
|
_if(() => {
|
|
7823
7821
|
if (input.setupReady === false) {
|
|
7824
7822
|
const $scope17_id = _scope_id();
|
|
7825
|
-
_html(`<span${_attr_class(["
|
|
7823
|
+
_html(`<span${_attr_class(["_y", "_dc"])} title="Machine setup incomplete"></span>`);
|
|
7826
7824
|
$si__input_setupReady && writeScope($scope17_id, {});
|
|
7827
7825
|
return 0;
|
|
7828
7826
|
}
|
|
7829
7827
|
}, $scope8_id, "f", $sg__input_setupReady, $sg__input_setupReady, 1, 0, 1);
|
|
7830
|
-
_html(`</a>${_el_resume($scope8_id, "d")}<a${view === "new" ? _attr("href", backHref) : " href=/new"}${_attr_class([iconBtn$1, { ["
|
|
7828
|
+
_html(`</a>${_el_resume($scope8_id, "d")}<a${view === "new" ? _attr("href", backHref) : " href=/new"}${_attr_class([iconBtn$1, { ["_da"]: view === "new" }])} title=${view === "new" ? "\"Back to workspace\"" : "\"New workspace\""}${view === "new" ? " aria-current=page" : ""}>`);
|
|
7831
7829
|
icon_folder_plus_default({ size: 16 });
|
|
7832
7830
|
_html(`</a>${_el_resume($scope8_id, "g")}`);
|
|
7833
7831
|
_script($scope8_id, "y15");
|
|
@@ -7868,36 +7866,36 @@ var side_nav_default = _template("y", (input) => {
|
|
|
7868
7866
|
ai: itemIds,
|
|
7869
7867
|
ak: workspaces,
|
|
7870
7868
|
al: allStatus,
|
|
7871
|
-
|
|
7872
|
-
|
|
7873
|
-
|
|
7874
|
-
|
|
7875
|
-
|
|
7869
|
+
am: isPage,
|
|
7870
|
+
ap: backHref,
|
|
7871
|
+
aq: iconSrc,
|
|
7872
|
+
ar: otherIds,
|
|
7873
|
+
at: otherIds?.[0],
|
|
7876
7874
|
ab: input.viewChange || void 0,
|
|
7877
|
-
|
|
7878
|
-
|
|
7879
|
-
|
|
7880
|
-
|
|
7881
|
-
|
|
7882
|
-
|
|
7883
|
-
|
|
7884
|
-
|
|
7885
|
-
|
|
7886
|
-
|
|
7887
|
-
|
|
7888
|
-
|
|
7889
|
-
|
|
7890
|
-
|
|
7891
|
-
|
|
7875
|
+
av: $si__input_instanceName && $input_instanceName__closures,
|
|
7876
|
+
bg: $si__input_instanceAccent && $iconSrc__closures,
|
|
7877
|
+
b8: $notifyOn__closures,
|
|
7878
|
+
b4: $si__input_workspace && $ws_id__closures,
|
|
7879
|
+
bc: $si__input_workspace__OR__input_allWorkspaces && $workspaces__closures,
|
|
7880
|
+
bd: $si__input_allStatus && $allStatus__closures,
|
|
7881
|
+
ax: $si__input_agents && $input_agents__closures,
|
|
7882
|
+
ay: $si__input_onNewSession && $input_onNewSession__closures,
|
|
7883
|
+
az: $si__input_onReviewOpened && $input_onReviewOpened__closures,
|
|
7884
|
+
b0: $si__input_onReviewOther && $input_onReviewOther__closures,
|
|
7885
|
+
b1: $si__input_sessions && $input_sessions__closures,
|
|
7886
|
+
b2: $si__input_onRenameSession && $input_onRenameSession__closures,
|
|
7887
|
+
b3: $si__input_onCloseSession && $input_onCloseSession__closures,
|
|
7888
|
+
b5: $si__input_tab__OR__input_tabChange && $tab__closures,
|
|
7889
|
+
b6: $view__closures
|
|
7892
7890
|
});
|
|
7893
7891
|
_resume_branch($scope0_id);
|
|
7894
7892
|
});
|
|
7895
|
-
var iconBtn = "
|
|
7896
|
-
var sectionCount = "
|
|
7897
|
-
var content = "
|
|
7898
|
-
var pageMeta = "
|
|
7899
|
-
var pathMeta = "
|
|
7900
|
-
var dangerHint = "
|
|
7893
|
+
var iconBtn = "_Z _j";
|
|
7894
|
+
var sectionCount = "_by _H _I";
|
|
7895
|
+
var content = "_ea _bo";
|
|
7896
|
+
var pageMeta = "_eb _bt";
|
|
7897
|
+
var pathMeta = "_ee _w";
|
|
7898
|
+
var dangerHint = "_ek _R";
|
|
7901
7899
|
//#endregion
|
|
7902
7900
|
//#region src/tags/manage-workspace.marko
|
|
7903
7901
|
var api$2;
|
|
@@ -8028,7 +8026,7 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8028
8026
|
setTimeout(() => loadProcs(void 0), 500);
|
|
8029
8027
|
}, "o7", $scope0_id);
|
|
8030
8028
|
const titleId = _id();
|
|
8031
|
-
_html(`<div${_attr_class("
|
|
8029
|
+
_html(`<div${_attr_class("_bm")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bn")}><div${_attr_class(content)}>`);
|
|
8032
8030
|
_set_serialize_reason(30);
|
|
8033
8031
|
const $childScope = _peek_scope_id();
|
|
8034
8032
|
page_head_default({
|
|
@@ -8041,16 +8039,16 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8041
8039
|
meta: attrTag({ content: _content_resume("o13", () => {
|
|
8042
8040
|
_scope_reason();
|
|
8043
8041
|
const $scope13_id = _scope_id();
|
|
8044
|
-
_html(`<span${_attr_class(pageMeta)}${_attr("title", ws.display_path || ws.path)}><span${_attr_class("
|
|
8042
|
+
_html(`<span${_attr_class(pageMeta)}${_attr("title", ws.display_path || ws.path)}><span${_attr_class("_ec")}>${_escape(ws.name)}${_el_resume($scope13_id, "c")}</span>`);
|
|
8045
8043
|
_if(() => {
|
|
8046
8044
|
if (ws.status !== "active") {
|
|
8047
8045
|
const $scope17_id = _scope_id();
|
|
8048
|
-
_html(`<span${_attr_class(["
|
|
8046
|
+
_html(`<span${_attr_class(["_H", "_J"])}>Archived</span>`);
|
|
8049
8047
|
writeScope($scope17_id, {});
|
|
8050
8048
|
return 0;
|
|
8051
8049
|
}
|
|
8052
8050
|
}, $scope13_id, "d", 1, 1, 1, 0, 1);
|
|
8053
|
-
_html(`<span${_attr_class("
|
|
8051
|
+
_html(`<span${_attr_class("_ed")} aria-hidden=true>·</span><span${_attr_class(pathMeta)}>${_escape(ws.display_path || ws.path)}${_el_resume($scope13_id, "g")}</span></span>${_el_resume($scope13_id, "a")}`);
|
|
8054
8052
|
_subscribe($ws_status__closures, _subscribe($ws_name__closures, _subscribe($ws_path__closures, _subscribe($ws_display_path__closures, writeScope($scope13_id, { _: _scope_with_id($scope0_id) })))));
|
|
8055
8053
|
_resume_branch($scope13_id);
|
|
8056
8054
|
}, $scope0_id) })
|
|
@@ -8078,26 +8076,26 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8078
8076
|
_if(() => {
|
|
8079
8077
|
if (pendingAction && actionStep) {
|
|
8080
8078
|
const $scope11_id = _scope_id();
|
|
8081
|
-
_html(`<p${_attr_class("
|
|
8079
|
+
_html(`<p${_attr_class("_bv")}><span${_attr_class("_E")}></span><!>${_escape(actionStep)}${_el_resume($scope11_id, "c")}</p>`);
|
|
8082
8080
|
writeScope($scope11_id, {});
|
|
8083
8081
|
return 0;
|
|
8084
8082
|
}
|
|
8085
8083
|
}, $scope0_id, "f", 1, 1, 1, 0, 1);
|
|
8086
|
-
_html(`<section${_attr_class("
|
|
8084
|
+
_html(`<section${_attr_class("_bw")}><div${_attr_class("_bx")}><h2${_attr_class("_bK")}>Repos</h2><span${_attr_class(sectionCount)}>${_escape(ws.repos.length)}${_el_resume($scope0_id, "k")}</span><div${_attr_class("_x")}></div><button${_attr_class(iconBtn)} title="Refresh repo list" aria-label="Refresh repo list"${_attr("disabled", catalogRefreshing)}>`);
|
|
8087
8085
|
_set_serialize_reason(1);
|
|
8088
8086
|
const $childScope2 = _peek_scope_id();
|
|
8089
8087
|
icon_refresh_default({
|
|
8090
8088
|
size: 14,
|
|
8091
|
-
class: catalogRefreshing && "
|
|
8089
|
+
class: catalogRefreshing && "_D"
|
|
8092
8090
|
});
|
|
8093
|
-
_html(`</button>${_el_resume($scope0_id, "m")}</div><ul${_attr_class("
|
|
8091
|
+
_html(`</button>${_el_resume($scope0_id, "m")}</div><ul${_attr_class("_bz")}>`);
|
|
8094
8092
|
_for_of(ws.repos, (row) => {
|
|
8095
8093
|
const $scope1_id = _scope_id();
|
|
8096
|
-
_html(`<li${_attr_class("
|
|
8094
|
+
_html(`<li${_attr_class("_bB")}><div${_attr_class("_bC")}><span${_attr_class(["_bD", "_w"])}>${_escape(row.worktree)}${_el_resume($scope1_id, "d")}/</span><span${_attr_class("_bE")}><a${_attr_class(["_bF", "_eg"])}${_attr("href", repoWebUrl$1(row.full_name))} target=_blank rel=noopener${_attr("title", `Open ${row.full_name} on GitHub`)}>${_escape(repoLabel(row.full_name))}${_el_resume($scope1_id, "g")}</a>${_el_resume($scope1_id, "f")}`);
|
|
8097
8095
|
_if(() => {
|
|
8098
8096
|
if (row.base_branch !== row.default_branch) {
|
|
8099
8097
|
const $scope18_id = _scope_id();
|
|
8100
|
-
_html(`<span${_attr_class(["
|
|
8098
|
+
_html(`<span${_attr_class(["_H", "_w"])} title="Base branch">`);
|
|
8101
8099
|
icon_branch_default({ size: 12 });
|
|
8102
8100
|
_html(` <!>${_escape(row.base_branch)}${_el_resume($scope18_id, "c")}</span>`);
|
|
8103
8101
|
writeScope($scope18_id, {});
|
|
@@ -8108,15 +8106,15 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8108
8106
|
_if(() => {
|
|
8109
8107
|
if (busy.has(row.full_name)) {
|
|
8110
8108
|
const $scope19_id = _scope_id();
|
|
8111
|
-
_html(`<span${_attr_class("
|
|
8109
|
+
_html(`<span${_attr_class("_E")}></span>`);
|
|
8112
8110
|
writeScope($scope19_id, {});
|
|
8113
8111
|
return 0;
|
|
8114
8112
|
} else {
|
|
8115
8113
|
const $scope10_id = _scope_id();
|
|
8116
8114
|
_html(`<button${_attr_class([
|
|
8117
|
-
"
|
|
8115
|
+
"_bG",
|
|
8116
|
+
"_1",
|
|
8118
8117
|
"_2",
|
|
8119
|
-
"_3",
|
|
8120
8118
|
{ ["_q"]: confirmingRemove === row.full_name }
|
|
8121
8119
|
])}${confirmingRemove === row.full_name ? _attr("title", `Remove ${row.worktree}/? Uncommitted changes are lost.`) : _attr("title", `Remove ${row.worktree}/`)}>`);
|
|
8122
8120
|
_if(() => {
|
|
@@ -8147,19 +8145,19 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8147
8145
|
}, "full_name", $scope0_id, "p", 1, 1, 1, 0, 1);
|
|
8148
8146
|
_for_of([...busy].filter((n) => !inWorkspace.has(n)), (name) => {
|
|
8149
8147
|
const $scope22_id = _scope_id();
|
|
8150
|
-
_html(`<li${_attr_class(["
|
|
8148
|
+
_html(`<li${_attr_class(["_bB", "_bA"])}><span${_attr_class("_E")}></span><div${_attr_class("_bC")}><span${_attr_class("_bF")}>Adding <!>${_escape(name)}${_el_resume($scope22_id, "e")}…</span></div></li>`);
|
|
8151
8149
|
writeScope($scope22_id, {});
|
|
8152
8150
|
}, (n) => n, $scope0_id, "q", 1, 1, 1, 0, 1);
|
|
8153
8151
|
_html("</ul>");
|
|
8154
8152
|
_if(() => {
|
|
8155
8153
|
if (!ws.repos.length && !busy.size) {
|
|
8156
8154
|
const $scope23_id = _scope_id();
|
|
8157
|
-
_html(`<p${_attr_class("
|
|
8155
|
+
_html(`<p${_attr_class("_bH")}>No repos yet. Search below to add one.</p>`);
|
|
8158
8156
|
writeScope($scope23_id, {});
|
|
8159
8157
|
return 0;
|
|
8160
8158
|
}
|
|
8161
8159
|
}, $scope0_id, "r", 1, 1, 1, 0, 1);
|
|
8162
|
-
_html(`<div${_attr_class("
|
|
8160
|
+
_html(`<div${_attr_class("_ef")}>`);
|
|
8163
8161
|
const $childScope3 = _peek_scope_id();
|
|
8164
8162
|
let refreshCatalog = repo_picker_default({
|
|
8165
8163
|
exclude: inWorkspace,
|
|
@@ -8180,7 +8178,7 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8180
8178
|
_if(() => {
|
|
8181
8179
|
if (wsSkills.length || repoSkills.length) {
|
|
8182
8180
|
const $scope2_id = _scope_id();
|
|
8183
|
-
_html(`<section${_attr_class("
|
|
8181
|
+
_html(`<section${_attr_class("_bw")}><div${_attr_class("_bx")}><h2${_attr_class("_bK")}>Skills</h2>`);
|
|
8184
8182
|
_if(() => {
|
|
8185
8183
|
if (wsSkills.length) {
|
|
8186
8184
|
const $scope24_id = _scope_id();
|
|
@@ -8189,23 +8187,23 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8189
8187
|
return 0;
|
|
8190
8188
|
}
|
|
8191
8189
|
}, $scope2_id, "d", 1, 1, 1, 0, 1);
|
|
8192
|
-
_html(`</div><ul${_attr_class("
|
|
8190
|
+
_html(`</div><ul${_attr_class("_bz")}>`);
|
|
8193
8191
|
_for_of(wsSkills, (s) => {
|
|
8194
8192
|
const $scope3_id = _scope_id();
|
|
8195
|
-
_html(`<li${_attr_class("
|
|
8193
|
+
_html(`<li${_attr_class("_bB")}><div${_attr_class("_bC")}><span${_attr_class(["_bD", "_w"])}>${_escape(s.name)}${_el_resume($scope3_id, "d")}</span><span${_attr_class("_bE")}>`);
|
|
8196
8194
|
_if(() => {
|
|
8197
8195
|
if (s.broken) {
|
|
8198
8196
|
const $scope25_id = _scope_id();
|
|
8199
8197
|
_html(`<span${_attr_class([
|
|
8200
|
-
"
|
|
8201
|
-
"
|
|
8198
|
+
"_H",
|
|
8199
|
+
"_J",
|
|
8202
8200
|
tone.danger
|
|
8203
8201
|
])}${_attr("title", `Points into ${s.worktree || "a repo"} that is no longer here`)}>broken link</span>${_el_resume($scope25_id, "a")}`);
|
|
8204
8202
|
writeScope($scope25_id, {});
|
|
8205
8203
|
return 0;
|
|
8206
8204
|
} else if (s.worktree) {
|
|
8207
8205
|
const $scope26_id = _scope_id();
|
|
8208
|
-
_html(`<span${_attr_class(["
|
|
8206
|
+
_html(`<span${_attr_class(["_H", "_w"])}>from <!>${_escape(s.worktree)}${_el_resume($scope26_id, "b")}/</span>`);
|
|
8209
8207
|
writeScope($scope26_id, {});
|
|
8210
8208
|
return 1;
|
|
8211
8209
|
}
|
|
@@ -8213,7 +8211,7 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8213
8211
|
_if(() => {
|
|
8214
8212
|
if (s.shadows === "global") {
|
|
8215
8213
|
const $scope30_id = _scope_id();
|
|
8216
|
-
_html(`<span${_attr_class("
|
|
8214
|
+
_html(`<span${_attr_class("_H")} title="Used instead of the system skill of the same name">overrides system</span>`);
|
|
8217
8215
|
writeScope($scope30_id, {});
|
|
8218
8216
|
return 0;
|
|
8219
8217
|
}
|
|
@@ -8221,7 +8219,7 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8221
8219
|
_if(() => {
|
|
8222
8220
|
if (skills && s.agents.length < skills.agents.length) {
|
|
8223
8221
|
const $scope27_id = _scope_id();
|
|
8224
|
-
_html(`<span${_attr_class("
|
|
8222
|
+
_html(`<span${_attr_class("_H")}${_attr("title", `Only for ${s.agents.map(agentLabel).join(", ")}`)}>${_escape(s.agents.map(agentLabel).join(", "))}${_el_resume($scope27_id, "b")} only</span>${_el_resume($scope27_id, "a")}`);
|
|
8225
8223
|
writeScope($scope27_id, {});
|
|
8226
8224
|
return 0;
|
|
8227
8225
|
}
|
|
@@ -8230,7 +8228,7 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8230
8228
|
_if(() => {
|
|
8231
8229
|
if (s.description) {
|
|
8232
8230
|
const $scope28_id = _scope_id();
|
|
8233
|
-
_html(`<span${_attr_class("
|
|
8231
|
+
_html(`<span${_attr_class("_bF")}${_attr("title", s.description)}>${_escape(s.description)}${_el_resume($scope28_id, "b")}</span>${_el_resume($scope28_id, "a")}`);
|
|
8234
8232
|
writeScope($scope28_id, {});
|
|
8235
8233
|
return 0;
|
|
8236
8234
|
}
|
|
@@ -8238,7 +8236,7 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8238
8236
|
_if(() => {
|
|
8239
8237
|
if (s.sourceUrl) {
|
|
8240
8238
|
const $scope29_id = _scope_id();
|
|
8241
|
-
_html(`<a${_attr_class(["
|
|
8239
|
+
_html(`<a${_attr_class(["_bF", "_eg"])}${_attr("href", s.sourceUrl)} target=_blank rel=noopener${_attr("title", `Open ${s.source} on GitHub`)}>${_escape(s.source)}${_el_resume($scope29_id, "b")}</a>${_el_resume($scope29_id, "a")}`);
|
|
8242
8240
|
writeScope($scope29_id, {});
|
|
8243
8241
|
return 0;
|
|
8244
8242
|
}
|
|
@@ -8247,15 +8245,15 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8247
8245
|
_if(() => {
|
|
8248
8246
|
if (busy.has(s.id)) {
|
|
8249
8247
|
const $scope31_id = _scope_id();
|
|
8250
|
-
_html(`<span${_attr_class("
|
|
8248
|
+
_html(`<span${_attr_class("_E")}></span>`);
|
|
8251
8249
|
writeScope($scope31_id, {});
|
|
8252
8250
|
return 0;
|
|
8253
8251
|
} else {
|
|
8254
8252
|
const $scope12_id = _scope_id();
|
|
8255
8253
|
_html(`<button${_attr_class([
|
|
8256
|
-
"
|
|
8254
|
+
"_bG",
|
|
8255
|
+
"_1",
|
|
8257
8256
|
"_2",
|
|
8258
|
-
"_3",
|
|
8259
8257
|
{ ["_q"]: confirmingSkill === s.id }
|
|
8260
8258
|
])}${confirmingSkill === s.id ? _attr("title", `Remove ${s.name} from this workspace?`) : s.linked ? _attr("title", `Stop using ${s.name} here`) : _attr("title", `Remove ${s.name}`)}>`);
|
|
8261
8259
|
_if(() => {
|
|
@@ -8291,14 +8289,14 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8291
8289
|
_if(() => {
|
|
8292
8290
|
if (repoSkills.length) {
|
|
8293
8291
|
const $scope4_id = _scope_id();
|
|
8294
|
-
_html(`<ul${_attr_class("
|
|
8292
|
+
_html(`<ul${_attr_class("_bz")}>`);
|
|
8295
8293
|
_for_of(repoSkills, (s) => {
|
|
8296
8294
|
const $scope5_id = _scope_id();
|
|
8297
|
-
_html(`<li${_attr_class("
|
|
8295
|
+
_html(`<li${_attr_class("_bB")}><div${_attr_class("_bC")}><span${_attr_class(["_bD", "_w"])}>${_escape(s.name)}${_el_resume($scope5_id, "d")}</span><span${_attr_class("_bE")}><span${_attr_class(["_bF", "_w"])}>${_escape(s.worktree)}${_el_resume($scope5_id, "g")}/</span>`);
|
|
8298
8296
|
_if(() => {
|
|
8299
8297
|
if (s.shadows) {
|
|
8300
8298
|
const $scope34_id = _scope_id();
|
|
8301
|
-
_html(`<span${_attr_class("
|
|
8299
|
+
_html(`<span${_attr_class("_H")}${_attr("title", `A ${s.shadows} skill of the same name already exists`)}>name taken</span>${_el_resume($scope34_id, "a")}`);
|
|
8302
8300
|
writeScope($scope34_id, {});
|
|
8303
8301
|
return 0;
|
|
8304
8302
|
}
|
|
@@ -8307,7 +8305,7 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8307
8305
|
_if(() => {
|
|
8308
8306
|
if (s.description) {
|
|
8309
8307
|
const $scope35_id = _scope_id();
|
|
8310
|
-
_html(`<span${_attr_class("
|
|
8308
|
+
_html(`<span${_attr_class("_bF")}${_attr("title", s.description)}>${_escape(s.description)}${_el_resume($scope35_id, "b")}</span>${_el_resume($scope35_id, "a")}`);
|
|
8311
8309
|
writeScope($scope35_id, {});
|
|
8312
8310
|
return 0;
|
|
8313
8311
|
}
|
|
@@ -8316,7 +8314,7 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8316
8314
|
_if(() => {
|
|
8317
8315
|
if (busy.has(s.id)) {
|
|
8318
8316
|
const $scope36_id = _scope_id();
|
|
8319
|
-
_html(`<span${_attr_class("
|
|
8317
|
+
_html(`<span${_attr_class("_E")}></span>`);
|
|
8320
8318
|
writeScope($scope36_id, {});
|
|
8321
8319
|
return 0;
|
|
8322
8320
|
} else if (!s.shadows) {
|
|
@@ -8350,17 +8348,17 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8350
8348
|
_if(() => {
|
|
8351
8349
|
if (running.length) {
|
|
8352
8350
|
const $scope15_id = _scope_id();
|
|
8353
|
-
_html(`<section${_attr_class("
|
|
8351
|
+
_html(`<section${_attr_class("_bw")}><div${_attr_class("_bx")}><h2${_attr_class("_bK")}>Running</h2><span${_attr_class(sectionCount)}>${_escape(running.length)}${_el_resume($scope15_id, "e")}</span></div><ul${_attr_class("_bz")}>`);
|
|
8354
8352
|
_for_of(running, (p) => {
|
|
8355
8353
|
const $scope16_id = _scope_id();
|
|
8356
|
-
_html(`<li${_attr_class("
|
|
8354
|
+
_html(`<li${_attr_class("_bB")}><div${_attr_class("_bC")}${_attr("title", p.args)}><span${_attr_class(["_bD", "_w"])}>${_escape(p.cmd)}${_el_resume($scope16_id, "d")}</span>`);
|
|
8357
8355
|
_if(() => {
|
|
8358
8356
|
if (p.ports.length) {
|
|
8359
8357
|
const $scope37_id = _scope_id();
|
|
8360
|
-
_html(`<span${_attr_class("
|
|
8358
|
+
_html(`<span${_attr_class("_bE")}>`);
|
|
8361
8359
|
_for_of(p.ports, (port) => {
|
|
8362
8360
|
const $scope38_id = _scope_id();
|
|
8363
|
-
_html(`<button${_attr_class(["_s", "
|
|
8361
|
+
_html(`<button${_attr_class(["_s", "_eh"])}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${port}`)}>:<!>${_escape(port)}${_el_resume($scope38_id, "b")}</button>${_el_resume($scope38_id, "a")}`);
|
|
8364
8362
|
_script($scope38_id, "o19");
|
|
8365
8363
|
writeScope($scope38_id, { d: port });
|
|
8366
8364
|
}, (x) => String(x), $scope37_id, "a", 1, 1, 1, "</span>", 1);
|
|
@@ -8368,7 +8366,7 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8368
8366
|
return 0;
|
|
8369
8367
|
}
|
|
8370
8368
|
}, $scope16_id, "e", 1, 1, 1, 0, 1);
|
|
8371
|
-
_html(`</div>${_el_resume($scope16_id, "b")}<button${_attr_class(["
|
|
8369
|
+
_html(`</div>${_el_resume($scope16_id, "b")}<button${_attr_class(["_bG", "_1"])} type=button${_attr("title", `Kill process ${p.pid}`)}${_attr("aria-label", `Kill process ${p.pid}`)}>`);
|
|
8372
8370
|
icon_xmark_default({ size: 14 });
|
|
8373
8371
|
_html(`</button>${_el_resume($scope16_id, "f")}</li>`);
|
|
8374
8372
|
_script($scope16_id, "o20");
|
|
@@ -8382,7 +8380,7 @@ var manage_workspace_default = _template("o", (input) => {
|
|
|
8382
8380
|
return 0;
|
|
8383
8381
|
}
|
|
8384
8382
|
}, $scope0_id, "w", 1, 1, 1, 0, 1);
|
|
8385
|
-
_html(`<section${_attr_class(["
|
|
8383
|
+
_html(`<section${_attr_class(["_bw", "_ei"])}><div${_attr_class("_bx")}><h2${_attr_class("_bK")}>Workspace</h2></div><div${_attr_class("_ej")}>`);
|
|
8386
8384
|
_if(() => {
|
|
8387
8385
|
if (ws.status === "active") {
|
|
8388
8386
|
const $scope8_id = _scope_id();
|
|
@@ -8496,19 +8494,19 @@ var term_find_default = _template("A", (input) => {
|
|
|
8496
8494
|
const canStep = hasQuery && open;
|
|
8497
8495
|
const keybar = input.placement === "keybar";
|
|
8498
8496
|
_html(`<div${_attr_class([
|
|
8499
|
-
"
|
|
8500
|
-
keybar ? "
|
|
8501
|
-
!open && "
|
|
8502
|
-
])} aria-hidden=${open ? "false" : "true"}><div${_attr_class(["
|
|
8497
|
+
"_fA",
|
|
8498
|
+
keybar ? "_fC" : "_fB",
|
|
8499
|
+
!open && "_fE"
|
|
8500
|
+
])} aria-hidden=${open ? "false" : "true"}><div${_attr_class(["_fv", keybar ? "_fD" : "_fx"])}><input${_attr_input_value($scope0_id, "c", query, _resume(function(v) {
|
|
8503
8501
|
if (!open) return;
|
|
8504
8502
|
query = v;
|
|
8505
8503
|
live.query = v;
|
|
8506
8504
|
run(0);
|
|
8507
|
-
}, "A0", $scope0_id))}${_attr_class([findInput, keybar && "
|
|
8505
|
+
}, "A0", $scope0_id))}${_attr_class([findInput, keybar && "_fF"])} type=search enterkeyhint=search autocomplete=off tabindex=${open ? "0" : "-1"} placeholder="Find in terminal" aria-label="Find in terminal">${_el_resume($scope0_id, "c")}<button type=button${_attr_class([findIconBtn, keybar && "_fG"])} title="Previous match"${_attr("disabled", !canStep)} tabindex=${open ? "0" : "-1"}>`);
|
|
8508
8506
|
icon_arrow_up_default({ size: 14 });
|
|
8509
|
-
_html(`</button>${_el_resume($scope0_id, "d")}<button type=button${_attr_class([findIconBtn, keybar && "
|
|
8507
|
+
_html(`</button>${_el_resume($scope0_id, "d")}<button type=button${_attr_class([findIconBtn, keybar && "_fG"])} title="Next match"${_attr("disabled", !canStep)} tabindex=${open ? "0" : "-1"}>`);
|
|
8510
8508
|
icon_arrow_down_default({ size: 14 });
|
|
8511
|
-
_html(`</button>${_el_resume($scope0_id, "f")}<button type=button${_attr_class([findIconBtn, keybar && "
|
|
8509
|
+
_html(`</button>${_el_resume($scope0_id, "f")}<button type=button${_attr_class([findIconBtn, keybar && "_fG"])} title="Close find" tabindex=${open ? "0" : "-1"}>`);
|
|
8512
8510
|
icon_xmark_default({ size: 14 });
|
|
8513
8511
|
_html(`</button>${_el_resume($scope0_id, "h")}</div>${_el_resume($scope0_id, "b", _serialize_guard($scope0_reason, 2))}</div>${_el_resume($scope0_id, "a")}`);
|
|
8514
8512
|
_script($scope0_id, "A4");
|
|
@@ -8536,7 +8534,7 @@ var term_find_default = _template("A", (input) => {
|
|
|
8536
8534
|
});
|
|
8537
8535
|
_resume_branch($scope0_id);
|
|
8538
8536
|
});
|
|
8539
|
-
_template("
|
|
8537
|
+
_template("kb", (input) => {
|
|
8540
8538
|
const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
|
|
8541
8539
|
const $scope0_id = _scope_id();
|
|
8542
8540
|
_set_serialize_reason({
|
|
@@ -8566,7 +8564,7 @@ _template("W", (input) => {
|
|
|
8566
8564
|
});
|
|
8567
8565
|
_serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
|
|
8568
8566
|
});
|
|
8569
|
-
_template("
|
|
8567
|
+
_template("ab", (input) => {
|
|
8570
8568
|
const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
|
|
8571
8569
|
const $scope0_id = _scope_id();
|
|
8572
8570
|
_set_serialize_reason({
|
|
@@ -8641,7 +8639,7 @@ _template("Y", (input) => {
|
|
|
8641
8639
|
});
|
|
8642
8640
|
_serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
|
|
8643
8641
|
});
|
|
8644
|
-
_template("
|
|
8642
|
+
_template("ib", (input) => {
|
|
8645
8643
|
const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
|
|
8646
8644
|
const $scope0_id = _scope_id();
|
|
8647
8645
|
_set_serialize_reason({
|
|
@@ -8842,7 +8840,7 @@ var term_default = _template("B", (input) => {
|
|
|
8842
8840
|
trapOpen = true;
|
|
8843
8841
|
}
|
|
8844
8842
|
}, "B14", $scope0_id);
|
|
8845
|
-
_html(`<div${_attr("hidden", !onTermPage)}${_attr_class("
|
|
8843
|
+
_html(`<div${_attr("hidden", !onTermPage)}${_attr_class("_dx")}><div${_attr_class("_dy")}></div>${_el_resume($scope0_id, "b")}`);
|
|
8846
8844
|
_if(() => {
|
|
8847
8845
|
if (findOpen) {
|
|
8848
8846
|
const $scope12_id = _scope_id();
|
|
@@ -8869,7 +8867,7 @@ var term_default = _template("B", (input) => {
|
|
|
8869
8867
|
_if(() => {
|
|
8870
8868
|
if (uploading) {
|
|
8871
8869
|
const $scope19_id = _scope_id();
|
|
8872
|
-
_html(`<div${_attr_class("
|
|
8870
|
+
_html(`<div${_attr_class("_dE")}>uploading…</div>`);
|
|
8873
8871
|
writeScope($scope19_id, {});
|
|
8874
8872
|
return 0;
|
|
8875
8873
|
}
|
|
@@ -8877,7 +8875,7 @@ var term_default = _template("B", (input) => {
|
|
|
8877
8875
|
_if(() => {
|
|
8878
8876
|
if (copiedFlash) {
|
|
8879
8877
|
const $scope20_id = _scope_id();
|
|
8880
|
-
_html(`<div${_attr_class("
|
|
8878
|
+
_html(`<div${_attr_class("_dD")}>Copied</div>`);
|
|
8881
8879
|
writeScope($scope20_id, {});
|
|
8882
8880
|
return 0;
|
|
8883
8881
|
}
|
|
@@ -8886,7 +8884,7 @@ var term_default = _template("B", (input) => {
|
|
|
8886
8884
|
_if(() => {
|
|
8887
8885
|
if (trapOpen) {
|
|
8888
8886
|
const $scope11_id = _scope_id();
|
|
8889
|
-
_html(`<div${_attr_class("
|
|
8887
|
+
_html(`<div${_attr_class("_dF")}><div${_attr_class("_dG")}><p${_attr_class("_d_")}>Long-press the field below and choose Paste</p><input placeholder="Paste here…">${_el_resume($scope11_id, "d")}<button${_attr_class("_o")}>Cancel</button>${_el_resume($scope11_id, "e")}</div>${_el_resume($scope11_id, "b")}</div>${_el_resume($scope11_id, "a")}`);
|
|
8890
8888
|
_script($scope11_id, "B25");
|
|
8891
8889
|
_script($scope11_id, "B26");
|
|
8892
8890
|
writeScope($scope11_id, {});
|
|
@@ -8990,7 +8988,7 @@ var work_view_default = _template("F", (input) => {
|
|
|
8990
8988
|
let DiffView = null;
|
|
8991
8989
|
const loadDiffView = _resume(() => {
|
|
8992
8990
|
if (DiffView) return;
|
|
8993
|
-
import("./
|
|
8991
|
+
import("./_4-M1FiLt.js").then((m) => {
|
|
8994
8992
|
DiffView = m.default;
|
|
8995
8993
|
});
|
|
8996
8994
|
}, "F6", $scope0_id);
|
|
@@ -9178,10 +9176,10 @@ var work_view_default = _template("F", (input) => {
|
|
|
9178
9176
|
toggleDiff();
|
|
9179
9177
|
}
|
|
9180
9178
|
}, "F21", $scope0_id);
|
|
9181
|
-
_html(`<div${_attr_class(["
|
|
9182
|
-
["
|
|
9183
|
-
["
|
|
9184
|
-
}])}><div${_attr_class("
|
|
9179
|
+
_html(`<div${_attr_class(["_b5", {
|
|
9180
|
+
["_b3"]: view === "nav",
|
|
9181
|
+
["_b4"]: !input.active
|
|
9182
|
+
}])}><div${_attr_class("_b6")}>`);
|
|
9185
9183
|
_set_serialize_reason({
|
|
9186
9184
|
0: _serialize_guard($scope0_reason, 0),
|
|
9187
9185
|
1: 1,
|
|
@@ -9250,7 +9248,7 @@ var work_view_default = _template("F", (input) => {
|
|
|
9250
9248
|
});
|
|
9251
9249
|
}, "F30", $scope0_id)
|
|
9252
9250
|
});
|
|
9253
|
-
_html(`</div><div${_attr_class("
|
|
9251
|
+
_html(`</div><div${_attr_class("_b7")}>`);
|
|
9254
9252
|
_if(() => {
|
|
9255
9253
|
if (error) {
|
|
9256
9254
|
const $scope8_id = _scope_id();
|
|
@@ -9273,7 +9271,7 @@ var work_view_default = _template("F", (input) => {
|
|
|
9273
9271
|
_if(() => {
|
|
9274
9272
|
if (diffMounted && DiffView) {
|
|
9275
9273
|
const $scope1_id = _scope_id();
|
|
9276
|
-
_html(`<div${_attr_class("
|
|
9274
|
+
_html(`<div${_attr_class("_b8")}${_attr_or("data-live", view === "diff", "")}${_attr("inert", view !== "diff")}>`);
|
|
9277
9275
|
_dynamic_tag($scope1_id, "b", DiffView, {
|
|
9278
9276
|
workspaceId: ws.id,
|
|
9279
9277
|
workspaceBranch: ws.branch,
|
|
@@ -9313,7 +9311,7 @@ var work_view_default = _template("F", (input) => {
|
|
|
9313
9311
|
_if(() => {
|
|
9314
9312
|
if (manageMounted) {
|
|
9315
9313
|
const $scope2_id = _scope_id();
|
|
9316
|
-
_html(`<div${_attr_class("
|
|
9314
|
+
_html(`<div${_attr_class("_b8")}${_attr_or("data-live", view === "manage", "")}${_attr("inert", view !== "manage")}>`);
|
|
9317
9315
|
_set_serialize_reason(_serialize_guard($scope0_reason, 16));
|
|
9318
9316
|
const $childScope2 = _peek_scope_id();
|
|
9319
9317
|
manage_workspace_default({
|
|
@@ -9336,7 +9334,7 @@ var work_view_default = _template("F", (input) => {
|
|
|
9336
9334
|
_if(() => {
|
|
9337
9335
|
if (settingsMounted) {
|
|
9338
9336
|
const $scope3_id = _scope_id();
|
|
9339
|
-
_html(`<div${_attr_class("
|
|
9337
|
+
_html(`<div${_attr_class("_b8")}${_attr_or("data-live", view === "settings", "")}${_attr("inert", view !== "settings")}>`);
|
|
9340
9338
|
_set_serialize_reason({
|
|
9341
9339
|
0: _serialize_guard($scope0_reason, 1),
|
|
9342
9340
|
1: $sg__input_workspace,
|
|
@@ -9377,7 +9375,7 @@ var work_view_default = _template("F", (input) => {
|
|
|
9377
9375
|
_if(() => {
|
|
9378
9376
|
if (newMounted) {
|
|
9379
9377
|
const $scope4_id = _scope_id();
|
|
9380
|
-
_html(`<div${_attr_class("
|
|
9378
|
+
_html(`<div${_attr_class("_b8")}${_attr_or("data-live", view === "new", "")}${_attr("inert", view !== "new")}>`);
|
|
9381
9379
|
_set_serialize_reason({
|
|
9382
9380
|
0: 1,
|
|
9383
9381
|
1: $sg__input_allWorkspaces,
|
|
@@ -9404,13 +9402,13 @@ var work_view_default = _template("F", (input) => {
|
|
|
9404
9402
|
return 0;
|
|
9405
9403
|
}
|
|
9406
9404
|
}, $scope0_id, "i", 1, 1, 1, 0, 1);
|
|
9407
|
-
_html(`<div${_attr_class(["
|
|
9405
|
+
_html(`<div${_attr_class(["_b_", { ["_b9"]: view !== "term" }])}>`);
|
|
9408
9406
|
_if(() => {
|
|
9409
9407
|
if (shownSessions) {
|
|
9410
9408
|
const $scope5_id = _scope_id();
|
|
9411
9409
|
_for_of(input.active ? shownSessions : shownSessions.filter((x) => x.id === curTab), (s) => {
|
|
9412
9410
|
const $scope6_id = _scope_id();
|
|
9413
|
-
_html(`<div${_attr_class("
|
|
9411
|
+
_html(`<div${_attr_class("_ca")}${_attr_or("data-live", s.id === curTab, "")}${_attr("inert", s.id !== curTab)}>`);
|
|
9414
9412
|
_set_serialize_reason({
|
|
9415
9413
|
0: 1,
|
|
9416
9414
|
1: 1,
|
|
@@ -9470,7 +9468,7 @@ var work_view_default = _template("F", (input) => {
|
|
|
9470
9468
|
_if(() => {
|
|
9471
9469
|
if (!shownSessions.length && view === "term") {
|
|
9472
9470
|
const $scope7_id = _scope_id();
|
|
9473
|
-
_html(`<div${_attr_class("
|
|
9471
|
+
_html(`<div${_attr_class("_bI")}><span>No sessions in this workspace.</span><button${_attr_class(["_o", "_p"])}${_attr("disabled", spawning)}>${spawning ? "Starting…" : `Start ${_escape(`${input.preferred || "shell"}`)}`}${_el_resume($scope7_id, "c")}</button>${_el_resume($scope7_id, "b")}</div>`);
|
|
9474
9472
|
_script($scope7_id, "F50");
|
|
9475
9473
|
_subscribe($spawning__closures, _subscribe($si__input_preferred && $input_preferred__closures, writeScope($scope7_id, {})));
|
|
9476
9474
|
return 0;
|
|
@@ -9480,7 +9478,7 @@ var work_view_default = _template("F", (input) => {
|
|
|
9480
9478
|
return 0;
|
|
9481
9479
|
} else {
|
|
9482
9480
|
const $scope10_id = _scope_id();
|
|
9483
|
-
_html(`<p${_attr_class("
|
|
9481
|
+
_html(`<p${_attr_class("_bI")}>Loading sessions…</p>`);
|
|
9484
9482
|
writeScope($scope10_id, {});
|
|
9485
9483
|
return 1;
|
|
9486
9484
|
}
|
|
@@ -9997,7 +9995,7 @@ var app_page_default = _template("b", (input) => {
|
|
|
9997
9995
|
});
|
|
9998
9996
|
//#endregion
|
|
9999
9997
|
//#region src/routes/_app/new/+page.marko
|
|
10000
|
-
var _page_default$4 = _template("
|
|
9998
|
+
var _page_default$4 = _template("mb", (input) => {
|
|
10001
9999
|
_scope_reason();
|
|
10002
10000
|
_scope_id();
|
|
10003
10001
|
app_page_default({ initial: {
|
|
@@ -10039,7 +10037,7 @@ var GET$24 = Run.GET(async (_ctx, next) => {
|
|
|
10039
10037
|
});
|
|
10040
10038
|
//#endregion
|
|
10041
10039
|
//#region src/routes/_app/settings/+page.marko
|
|
10042
|
-
var _page_default$3 = _template("
|
|
10040
|
+
var _page_default$3 = _template("nb", (input) => {
|
|
10043
10041
|
_scope_reason();
|
|
10044
10042
|
_scope_id();
|
|
10045
10043
|
app_page_default({ initial: {
|
|
@@ -10076,7 +10074,7 @@ function head3(context) {
|
|
|
10076
10074
|
}
|
|
10077
10075
|
//#endregion
|
|
10078
10076
|
//#region src/routes/_app/w/$id/+page.marko
|
|
10079
|
-
var _page_default$2 = _template("
|
|
10077
|
+
var _page_default$2 = _template("ob", (input) => {
|
|
10080
10078
|
_scope_reason();
|
|
10081
10079
|
_scope_id();
|
|
10082
10080
|
const $global$3 = $global();
|
|
@@ -10114,7 +10112,7 @@ function head4(context) {
|
|
|
10114
10112
|
}
|
|
10115
10113
|
//#endregion
|
|
10116
10114
|
//#region src/routes/_app/w/$id/manage/+page.marko
|
|
10117
|
-
var _page_default$1 = _template("
|
|
10115
|
+
var _page_default$1 = _template("pb", (input) => {
|
|
10118
10116
|
_scope_reason();
|
|
10119
10117
|
_scope_id();
|
|
10120
10118
|
app_page_default({ initial: {
|
|
@@ -10150,7 +10148,7 @@ function head5(context) {
|
|
|
10150
10148
|
}
|
|
10151
10149
|
//#endregion
|
|
10152
10150
|
//#region src/routes/_app/w/$id/review/+page.marko
|
|
10153
|
-
var _page_default = _template("
|
|
10151
|
+
var _page_default = _template("qb", (input) => {
|
|
10154
10152
|
_scope_reason();
|
|
10155
10153
|
_scope_id();
|
|
10156
10154
|
const $global$1 = $global();
|
|
@@ -12369,7 +12367,7 @@ async function prDiff(dir, repo, pr, ctx) {
|
|
|
12369
12367
|
const baseRef = `origin/${pr.baseRefName}`;
|
|
12370
12368
|
const head = await git(["rev-parse", headRef], dir).catch(() => "") || pr.headRefOid || "";
|
|
12371
12369
|
const baseSha = await git(["rev-parse", baseRef], dir).catch(() => "");
|
|
12372
|
-
|
|
12370
|
+
const base = {
|
|
12373
12371
|
id: `${repo.worktree}#${pr.number}`,
|
|
12374
12372
|
worktree: repo.worktree,
|
|
12375
12373
|
full_name: repo.full_name,
|
|
@@ -12379,7 +12377,10 @@ async function prDiff(dir, repo, pr, ctx) {
|
|
|
12379
12377
|
head,
|
|
12380
12378
|
baseSha,
|
|
12381
12379
|
pr: prMeta(pr),
|
|
12382
|
-
localHead: ctx.localHead
|
|
12380
|
+
localHead: ctx.localHead
|
|
12381
|
+
};
|
|
12382
|
+
if (!head || !baseSha) return {
|
|
12383
|
+
...base,
|
|
12383
12384
|
baseMissing: true,
|
|
12384
12385
|
files: []
|
|
12385
12386
|
};
|
|
@@ -12392,16 +12393,7 @@ async function prDiff(dir, repo, pr, ctx) {
|
|
|
12392
12393
|
const files = await collectFiles(dir, contained ? head : mergeBase || baseRef, head, ctx.scope);
|
|
12393
12394
|
const githubDrift = !!pr.headRefOid && head !== pr.headRefOid;
|
|
12394
12395
|
return {
|
|
12395
|
-
|
|
12396
|
-
worktree: repo.worktree,
|
|
12397
|
-
full_name: repo.full_name,
|
|
12398
|
-
base: pr.baseRefName,
|
|
12399
|
-
default_branch: repo.default_branch,
|
|
12400
|
-
branch: ctx.branch,
|
|
12401
|
-
head,
|
|
12402
|
-
baseSha,
|
|
12403
|
-
pr: prMeta(pr),
|
|
12404
|
-
localHead: ctx.localHead,
|
|
12396
|
+
...base,
|
|
12405
12397
|
...githubDrift && { githubDrift: true },
|
|
12406
12398
|
...contained && { contained: true },
|
|
12407
12399
|
files
|
|
@@ -12475,33 +12467,20 @@ function prMeta(pr) {
|
|
|
12475
12467
|
async function collectFiles(dir, oldRev, newRev, scope) {
|
|
12476
12468
|
if (scope === "dirty") oldRev = newRev;
|
|
12477
12469
|
const uncommitted = scope !== "committed";
|
|
12478
|
-
const
|
|
12479
|
-
|
|
12480
|
-
"--name-status",
|
|
12481
|
-
"-z",
|
|
12482
|
-
"--no-renames",
|
|
12483
|
-
oldRev
|
|
12484
|
-
] : [
|
|
12470
|
+
const revs = uncommitted ? [oldRev] : [oldRev, newRev];
|
|
12471
|
+
const nameArgs = [
|
|
12485
12472
|
"diff",
|
|
12486
12473
|
"--name-status",
|
|
12487
12474
|
"-z",
|
|
12488
12475
|
"--no-renames",
|
|
12489
|
-
|
|
12490
|
-
newRev
|
|
12476
|
+
...revs
|
|
12491
12477
|
];
|
|
12492
|
-
const numArgs =
|
|
12493
|
-
"diff",
|
|
12494
|
-
"--numstat",
|
|
12495
|
-
"-z",
|
|
12496
|
-
"--no-renames",
|
|
12497
|
-
oldRev
|
|
12498
|
-
] : [
|
|
12478
|
+
const numArgs = [
|
|
12499
12479
|
"diff",
|
|
12500
12480
|
"--numstat",
|
|
12501
12481
|
"-z",
|
|
12502
12482
|
"--no-renames",
|
|
12503
|
-
|
|
12504
|
-
newRev
|
|
12483
|
+
...revs
|
|
12505
12484
|
];
|
|
12506
12485
|
const [nameStatus, numstat, untracked, dirtyNames] = await Promise.all([
|
|
12507
12486
|
git(nameArgs, dir).catch(() => ""),
|
|
@@ -12520,15 +12499,16 @@ async function collectFiles(dir, oldRev, newRev, scope) {
|
|
|
12520
12499
|
"HEAD"
|
|
12521
12500
|
], dir).catch(() => "") : Promise.resolve("")
|
|
12522
12501
|
]);
|
|
12502
|
+
const untrackedPaths = untracked.split("\0").filter(Boolean);
|
|
12523
12503
|
const dirtyPaths = new Set(dirtyNames.split("\0").filter(Boolean));
|
|
12524
|
-
for (const file of
|
|
12504
|
+
for (const file of untrackedPaths) dirtyPaths.add(file);
|
|
12525
12505
|
const entries = [];
|
|
12526
12506
|
const parts = nameStatus.split("\0").filter(Boolean);
|
|
12527
12507
|
for (let i = 0; i + 1 < parts.length; i += 2) entries.push({
|
|
12528
12508
|
path: parts[i + 1],
|
|
12529
12509
|
status: parts[i]
|
|
12530
12510
|
});
|
|
12531
|
-
for (const file of
|
|
12511
|
+
for (const file of untrackedPaths) entries.push({
|
|
12532
12512
|
path: file,
|
|
12533
12513
|
status: "A"
|
|
12534
12514
|
});
|
|
@@ -12631,16 +12611,18 @@ function fromBlobs(filePath, status, old, neu) {
|
|
|
12631
12611
|
if (old !== void 0) result.old = old;
|
|
12632
12612
|
if (neu !== void 0) result.new = neu;
|
|
12633
12613
|
}
|
|
12634
|
-
|
|
12635
|
-
|
|
12636
|
-
|
|
12637
|
-
|
|
12614
|
+
return withoutUnrenderable(result);
|
|
12615
|
+
}
|
|
12616
|
+
/** A binary or over-size file ships as flags with no content: the client
|
|
12617
|
+
* renders the reason, and shipping the bytes anyway is what made a diff of
|
|
12618
|
+
* one large asset megabytes of JSON. */
|
|
12619
|
+
function withoutUnrenderable(file) {
|
|
12620
|
+
if (file.old?.includes("\0") || file.new?.includes("\0")) file.binary = true;
|
|
12621
|
+
if (file.binary || file.tooLarge) {
|
|
12622
|
+
file.old = null;
|
|
12623
|
+
file.new = null;
|
|
12638
12624
|
}
|
|
12639
|
-
|
|
12640
|
-
result.old = null;
|
|
12641
|
-
result.new = null;
|
|
12642
|
-
}
|
|
12643
|
-
return result;
|
|
12625
|
+
return file;
|
|
12644
12626
|
}
|
|
12645
12627
|
async function loadWorktreeFile(dir, filePath, status, old) {
|
|
12646
12628
|
const result = {
|
|
@@ -12658,16 +12640,7 @@ async function loadWorktreeFile(dir, filePath, status, old) {
|
|
|
12658
12640
|
if ((await fsp.stat(full)).size > MAX_FILE_BYTES) result.tooLarge = true;
|
|
12659
12641
|
else result.new = await fsp.readFile(full, "utf8");
|
|
12660
12642
|
} catch {}
|
|
12661
|
-
|
|
12662
|
-
result.binary = true;
|
|
12663
|
-
result.old = null;
|
|
12664
|
-
result.new = null;
|
|
12665
|
-
}
|
|
12666
|
-
if (result.tooLarge) {
|
|
12667
|
-
result.old = null;
|
|
12668
|
-
result.new = null;
|
|
12669
|
-
}
|
|
12670
|
-
return result;
|
|
12643
|
+
return withoutUnrenderable(result);
|
|
12671
12644
|
}
|
|
12672
12645
|
//#endregion
|
|
12673
12646
|
//#region src/routes/api/workspaces/$id/diff/+handler.ts
|
|
@@ -17990,4 +17963,4 @@ server.listen(port, () => {
|
|
|
17990
17963
|
//#endregion
|
|
17991
17964
|
export {};
|
|
17992
17965
|
|
|
17993
|
-
;var __MARKO_MANIFEST__={"
|
|
17966
|
+
;var __MARKO_MANIFEST__={"ibphXY4":{"block":[2,"stylesheet#/assets/app-page-DuEXAcnI.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DuEXAcnI.css\"",">"],"defer":[2,"/assets/w._-gddPZdgU.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w._-gddPZdgU.js\"","></script>",2,"modulepreload#/assets/_BrtordPT.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_BrtordPT.js\"",">"]},"ZLT8joi":{"block":[2,"stylesheet#/assets/app-page-DuEXAcnI.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DuEXAcnI.css\"",">"],"defer":[2,"/assets/new-gddPZdgU.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/new-gddPZdgU.js\"","></script>",2,"modulepreload#/assets/_BrtordPT.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_BrtordPT.js\"",">"]},"T$MNY0k":{"block":[2,"stylesheet#/assets/app-page-DuEXAcnI.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DuEXAcnI.css\"",">"],"defer":[2,"/assets/w._-E2EHSRw5.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w._-E2EHSRw5.js\"","></script>",2,"modulepreload#/assets/_BrtordPT.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_BrtordPT.js\"",">"]},"AA0T2xt":{"block":[2,"stylesheet#/assets/app-page-DuEXAcnI.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DuEXAcnI.css\"",">"],"defer":[2,"/assets/settings-gddPZdgU.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/settings-gddPZdgU.js\"","></script>",2,"modulepreload#/assets/_BrtordPT.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_BrtordPT.js\"",">"]},"LH2lXAg":{"block":[2,"stylesheet#/assets/app-page-DuEXAcnI.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DuEXAcnI.css\"",">"],"defer":[2,"/assets/w-gddPZdgU.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w-gddPZdgU.js\"","></script>",2,"modulepreload#/assets/_BrtordPT.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_BrtordPT.js\"",">"]}};
|