sliccy 6.128.0 → 6.128.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ui/.vite/manifest.json +231 -177
- package/dist/ui/assets/{account-store-BuE211Cb.js → account-store-AnNFDy2P.js} +1 -1
- package/dist/ui/assets/{account-store-D3DsEOPh.js → account-store-QAWTf9es.js} +1 -1
- package/dist/ui/assets/{adobe-C2P4NvAa.js → adobe-BN1ZAXjw.js} +1 -1
- package/dist/ui/assets/{adobe-CoZdrk2K.js → adobe-CwWmY478.js} +1 -1
- package/dist/ui/assets/{agent-bridge-CBhmYKb1.js → agent-bridge-DJBiO6eU.js} +1 -1
- package/dist/ui/assets/agent-message-to-chat-DZhrVcVe.js +1 -0
- package/dist/ui/assets/agent-panels-B92KQapO.js +1 -0
- package/dist/ui/assets/{apply-layout-CmN831j-.js → apply-layout-DRX2hbKF.js} +1 -1
- package/dist/ui/assets/{apps-B2ccSIJf.js → apps-BF0_egNy.js} +1 -1
- package/dist/ui/assets/{azure-openai-DXU4bdU4.js → azure-openai-CBmQJEBL.js} +1 -1
- package/dist/ui/assets/{azure-openai-Br8uemfb.js → azure-openai-Demqg5Qi.js} +1 -1
- package/dist/ui/assets/boundary-BBU8IvQr.js +1 -0
- package/dist/ui/assets/{cerebras-ClNCTWfU.js → cerebras-B1cmQz2k.js} +1 -1
- package/dist/ui/assets/{cerebras-CShCaU7t.js → cerebras-DqE8lqTV.js} +1 -1
- package/dist/ui/assets/{connect-surface-C_PMqn87.js → connect-surface-12gDDi-P.js} +1 -1
- package/dist/ui/assets/{directed-approval-L4Jq3q1K.js → directed-approval-B1e2ES3a.js} +1 -1
- package/dist/ui/assets/extension-ops-4CHxluMA.js +1 -0
- package/dist/ui/assets/{fs-Bfdu7rH9.js → fs-BIk-iv5m.js} +1 -1
- package/dist/ui/assets/{fs-JCIV-5NC.js → fs-CjjuhOp_.js} +2 -2
- package/dist/ui/assets/{github-CJLMjxa7.js → github-1KFQrsFp.js} +1 -1
- package/dist/ui/assets/{github-Cn3GHGLg.js → github-CW1YbGum.js} +2 -2
- package/dist/ui/assets/{github-copilot-BrsobPyJ.js → github-copilot--XEHMOYM.js} +1 -1
- package/dist/ui/assets/{github-copilot-VAga8Vjs.js → github-copilot-C9FoWf5Q.js} +1 -1
- package/dist/ui/assets/{github-install-wVxMobbZ.js → github-install-DJwKDZ2X.js} +1 -1
- package/dist/ui/assets/{github-zip-DS90BmnP.js → github-zip-B1SOCvRU.js} +1 -1
- package/dist/ui/assets/{help-BThl3z2T.js → help-tl-9MNkV.js} +1 -1
- package/dist/ui/assets/host-command-C3f7bKlE.js +1 -0
- package/dist/ui/assets/{js-realm-worker-C0xPMuGu.js → js-realm-worker-BIhTDwhB.js} +1 -1
- package/dist/ui/assets/{kernel-worker-CXs-mjDQ.js → kernel-worker-D6GE2eW6.js} +438 -438
- package/dist/ui/assets/layout-schema-m9_VAwOw.js +1 -0
- package/dist/ui/assets/leader-session-events-BMpq401g.js +1 -0
- package/dist/ui/assets/{local-llm-COzzWE0y.js → local-llm-Bp3hYRkd.js} +1 -1
- package/dist/ui/assets/{local-llm-DdjAwzbi.js → local-llm-wC4GLZz1.js} +1 -1
- package/dist/ui/assets/{main-DGYbRv7u.js → main-wQEmvcig.js} +3 -3
- package/dist/ui/assets/mount-CvJ9EIqL.js +12 -0
- package/dist/ui/assets/mount-bridge-client-DWskyztE.js +1 -0
- package/dist/ui/assets/mount-bridge-client-HmmY0hET.js +1 -0
- package/dist/ui/assets/mount-recovery-DMW71B2R.js +2 -0
- package/dist/ui/assets/mount-v0iuE8_k.js +3 -0
- package/dist/ui/assets/{new-session-DnCDqrSq.js → new-session-CfKDiPZX.js} +2 -2
- package/dist/ui/assets/{oauth-bootstrap-7cVVczPl.js → oauth-bootstrap-B-6P1ECI.js} +2 -2
- package/dist/ui/assets/{openai-codex-jziNdpzD.js → openai-codex-BSkoVpsZ.js} +1 -1
- package/dist/ui/assets/{openai-codex-BXwBm5vL.js → openai-codex-QpFfvitC.js} +1 -1
- package/dist/ui/assets/{openrouter-C-FNacWC.js → openrouter-B10ZIJHb.js} +1 -1
- package/dist/ui/assets/{openrouter-B5zF6YNN.js → openrouter-DdMDMVvm.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-B6FU0OM3.js → openrouter-oauth-CYPTNmFd.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-DYuw7--S.js → openrouter-oauth-Z8D9Uexm.js} +1 -1
- package/dist/ui/assets/panel-registry-CJdOibpf.js +1 -0
- package/dist/ui/assets/panel-rpc-handlers-BiZ4asca.js +2 -0
- package/dist/ui/assets/panelize-shell-CazjIR5d.js +4 -0
- package/dist/ui/assets/{provider-CVSTPtcn.js → provider-5TDJo0ur.js} +2 -2
- package/dist/ui/assets/{provider-DwHisLxk.js → provider-BgIyNZvR.js} +1 -1
- package/dist/ui/assets/{provider-settings-aLhWbDX6.js → provider-settings-BNDUj_a2.js} +1 -1
- package/dist/ui/assets/{provider-settings-BI4T-4O3.js → provider-settings-Bx1ls4Yh.js} +1 -1
- package/dist/ui/assets/provider-store-access-CruwM-j5.js +1 -0
- package/dist/ui/assets/{provider-store-access-sj2QQYJd.js → provider-store-access-FCVeMJRb.js} +2 -2
- package/dist/ui/assets/{providers-BKOgFpnh.js → providers-CFsw2G3b.js} +1 -1
- package/dist/ui/assets/{providers-BU9XvYkz.js → providers-CMdt7NIp.js} +2 -2
- package/dist/ui/assets/{quick-llm-DJqJy5O3.js → quick-llm-u8uic8QB.js} +1 -1
- package/dist/ui/assets/{recovery-screen-DSqq1d1-.js → recovery-screen-CZYT7flO.js} +1 -1
- package/dist/ui/assets/rest-ops-PnqziEjh.js +1 -0
- package/dist/ui/assets/rest-paths-Dia19u9P.js +1 -0
- package/dist/ui/assets/{run-BI74nmrm.js → run-BQKfwSke.js} +1 -1
- package/dist/ui/assets/{run-CZERdpGj.js → run-EHwjzgre.js} +2 -2
- package/dist/ui/assets/{session-freezer-D1tT6nQE.js → session-freezer-BGtUBp7O.js} +3 -3
- package/dist/ui/assets/{setup-feature-flags-remote-DzKcrtwW.js → setup-feature-flags-remote-l9KfTyYp.js} +1 -1
- package/dist/ui/assets/{setup-standalone-prelude-DZrEB-T8.js → setup-standalone-prelude-CRyLSjRK.js} +1 -1
- package/dist/ui/assets/{setup-sudo-DrDfdRu-.js → setup-sudo-CYrdyJH7.js} +2 -2
- package/dist/ui/assets/{skills-4fwPQ1Gx.js → skills-BiYtev0K.js} +1 -1
- package/dist/ui/assets/slicc-version-3d67O-JT.js +1 -0
- package/dist/ui/assets/{snapshot-Bw2e-24V.js → snapshot-BVDkGgv2.js} +1 -1
- package/dist/ui/assets/{snapshot-features-745T506g.js → snapshot-features-_gfLx1rZ.js} +1 -1
- package/dist/ui/assets/{wc-shell-7CKFVN9n.js → src-CC79QyGZ.js} +165 -295
- package/dist/ui/assets/{state-DyOTvXtw.js → state-B1fUKJq0.js} +1 -1
- package/dist/ui/assets/{store-Dz-Lf6hd.js → store-IrYUKEu1.js} +1 -1
- package/dist/ui/assets/{store-DN38qJzW.js → store-UM5Ipvg3.js} +1 -1
- package/dist/ui/assets/{sudo-BzgekaVM.js → sudo-CteiAvdB.js} +1 -1
- package/dist/ui/assets/surface-fullscreen-4YjALjE7.js +1 -0
- package/dist/ui/assets/trusted-layer-ghPA1ENf.js +1 -0
- package/dist/ui/assets/{upgrade-detection-BrCP_eUg.js → upgrade-detection-BhBRUFIl.js} +1 -1
- package/dist/ui/assets/wc-attach-BUOV0IxU.js +13 -0
- package/dist/ui/assets/wc-extension-BLA8yGsG.js +2 -0
- package/dist/ui/assets/wc-float-label-_S5TsF66.js +1 -0
- package/dist/ui/assets/{wc-floatbar-online-DLfdnelx.js → wc-floatbar-online-BRZloJeW.js} +1 -1
- package/dist/ui/assets/wc-follower-oauth-oylSQku7.js +5 -0
- package/dist/ui/assets/wc-follower-tRbhAiRk.js +17 -0
- package/dist/ui/assets/wc-live-Cgl26Lem.js +8 -0
- package/dist/ui/assets/wc-nav-DrRK17dw.js +2 -0
- package/dist/ui/assets/{wc-onboarding-46iMKxvL.js → wc-onboarding-Be_O8bmO.js} +2 -2
- package/dist/ui/assets/{wc-placeholder-sIX0TVVJ.js → wc-placeholder-DtI6L3KZ.js} +2 -2
- package/dist/ui/assets/{wc-settings-BqtMD3tJ.js → wc-settings-DzKLh6wd.js} +2 -2
- package/dist/ui/assets/wc-shell-C6Pg0Q54.js +122 -0
- package/dist/ui/assets/{wc-shortcut-config-DV51tMmU.js → wc-shortcut-config--IseG9bJ.js} +2 -2
- package/dist/ui/assets/wc-shortcuts-BWBA9QlD.js +11 -0
- package/dist/ui/assets/wc-sprinkles-D6ytPwhq.js +2 -0
- package/dist/ui/assets/{wc-tray-3jtdva4I.js → wc-tray-DtpbV4Hy.js} +4 -4
- package/dist/ui/assets/{xai-grok-Bi7eGASm.js → xai-grok--gX-Nc6Q.js} +1 -1
- package/dist/ui/assets/{xai-grok-CelS82Bz.js → xai-grok-Cd-DzyGd.js} +1 -1
- package/dist/ui/index.html +6 -6
- package/dist/ui/packages/webapp/index.html +6 -6
- package/package.json +1 -1
- package/dist/ui/assets/agent-message-to-chat-Cc7vTUN1.js +0 -1
- package/dist/ui/assets/agent-panels-BmmVprFD.js +0 -1
- package/dist/ui/assets/attachments-329cIT1j.js +0 -1
- package/dist/ui/assets/extension-ops-B-WyC2wH.js +0 -1
- package/dist/ui/assets/mount-DM-auup2.js +0 -12
- package/dist/ui/assets/mount-OAHBlcuo.js +0 -3
- package/dist/ui/assets/mount-bridge-client-CrNd-YrX.js +0 -1
- package/dist/ui/assets/mount-bridge-client-DACW9wdF.js +0 -1
- package/dist/ui/assets/mount-recovery-e-94Ez9O.js +0 -2
- package/dist/ui/assets/panel-rpc-handlers-CLywtZTq.js +0 -2
- package/dist/ui/assets/panelize-shell-_2PryU_a.js +0 -4
- package/dist/ui/assets/provider-store-access-Cf5376WQ.js +0 -1
- package/dist/ui/assets/rest-ops-DUYdwFOV.js +0 -1
- package/dist/ui/assets/slicc-version-C6Kk_h5b.js +0 -1
- package/dist/ui/assets/types-00zrQL_h.js +0 -1
- package/dist/ui/assets/wc-attach-CgxhloJz.js +0 -13
- package/dist/ui/assets/wc-extension-CegXaEJB.js +0 -2
- package/dist/ui/assets/wc-float-label-BYiE1Fhr.js +0 -1
- package/dist/ui/assets/wc-follower-2f1XaZAF.js +0 -17
- package/dist/ui/assets/wc-follower-oauth-AMVUxyhw.js +0 -5
- package/dist/ui/assets/wc-live-9bz6A9z1.js +0 -8
- package/dist/ui/assets/wc-nav-IS6CxPbv.js +0 -2
- package/dist/ui/assets/wc-sprinkles-DRtGhE0c.js +0 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dist-kBT87Ea7.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/preload-helper-Czpn1I53.js"
|
|
2
|
-
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helper-Czpn1I53.js";import{
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dist-kBT87Ea7.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/preload-helper-Czpn1I53.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helper-Czpn1I53.js";import{n,t as r}from"./icons-BJsliYCh.js";import{i,n as a,r as o,t as s}from"./speech-C5U8h4In.js";import{t as c}from"./soundscape-cues-5_sT5Un6.js";import"./panel-registry-CJdOibpf.js";import{a as l,c as u,d,f,h as p,i as m,n as h,o as g,p as _,r as v,u as y}from"./layout-schema-m9_VAwOw.js";var b=[`top`,`right`,`bottom`,`left`,`center`];function x(e){return e!=null&&b.includes(e)}function S(e){let t=e?.panelMeta;return t&&typeof t.id==`string`?t:void 0}var C=[`top-left`,`top-right`,`bottom-left`,`bottom-right`,`top`,`right`,`bottom`,`left`],ee=`top-right`,te=`slicc-launcher-corner`,w=[`disconnected`,`connected`,`error`],T=`disconnected`,E=`follower-status`,ne=new Set(C),re=new Set(w);function ie(e,t=ee){return e&&ne.has(e)?e:t}function D(e,t=T){return e&&re.has(e)?e:t}function ae(e){return e>=6}function O({clientX:e,clientY:t,viewportWidth:n,viewportHeight:r,velocityXPxPerMs:i=0,velocityYPxPerMs:a=0,flickProjectionMs:o=180}){let s=oe(e+i*o,0,n),c=oe(t+a*o,0,r),l=s/n,u=c/r,d=l>1/3&&l<2/3,f=u>1/3&&u<2/3;if(d&&f){let e=u,t=1-u,n=l,r=1-l,i=Math.min(e,t,n,r);return i===e?`top`:i===t?`bottom`:i===n?`left`:`right`}return d?u<.5?`top`:`bottom`:f?l<.5?`left`:`right`:`${u<.5?`top`:`bottom`}-${l<.5?`left`:`right`}`}function oe(e,t,n){return Math.min(Math.max(e,t),n)}var se=`<?xml version="1.0" encoding="UTF-8"?>
|
|
3
3
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" width="100%" height="100%"><g transform="translate(151.53125, -171.3125) scale(1.25)"><g transform="translate(0, 21)"><g id="Cone">
|
|
4
4
|
<path id="Cone_Bottom" data-name="Cone Bottom" d="M108.22,414.88l189.84,460.03c1.36,3.3,6.09,3.16,7.25-.22l159.34-463.34c.87-2.53-1.03-5.16-3.7-5.13l-349.18,3.32c-2.74.03-4.59,2.82-3.55,5.35Z" style="fill: rgb(34, 34, 34); stroke: rgb(255, 255, 255); stroke-linejoin: round; stroke-width: 20px;"></path>
|
|
5
5
|
<g id="Waffle_Cross-Hatch" data-name="Waffle Cross-Hatch">
|
|
@@ -26,7 +26,7 @@ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helpe
|
|
|
26
26
|
<circle id="Right_Eye_Outline" data-name="Right Eye Outline" cx="175.1" cy="250.34" r="64.78" style="fill: rgb(0, 0, 0); stroke: rgb(255, 255, 255); stroke-miterlimit: 10; stroke-width: 6px;"></circle>
|
|
27
27
|
|
|
28
28
|
</g><g><line x1="351.01" y1="183.73000000000002" x2="415.78999999999996" y2="248.51" stroke="#fff" stroke-width="15" stroke-linecap="round"></line><line x1="351.01" y1="248.51" x2="415.78999999999996" y2="183.73000000000002" stroke="#fff" stroke-width="15" stroke-linecap="round"></line></g><g><line x1="142.70999999999998" y1="217.95" x2="207.49" y2="282.73" stroke="#fff" stroke-width="15" stroke-linecap="round"></line><line x1="142.70999999999998" y1="282.73" x2="207.49" y2="217.95" stroke="#fff" stroke-width="15" stroke-linecap="round"></line></g></g></g></svg>
|
|
29
|
-
`,
|
|
29
|
+
`,ce=`<?xml version="1.0" encoding="UTF-8"?>
|
|
30
30
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" width="100%" height="100%"><g transform="translate(151.53125, -171.3125) scale(1.25)"><g transform="translate(0, 21)"><g id="Cone">
|
|
31
31
|
<path id="Cone_Bottom" data-name="Cone Bottom" d="M108.22,414.88l189.84,460.03c1.36,3.3,6.09,3.16,7.25-.22l159.34-463.34c.87-2.53-1.03-5.16-3.7-5.13l-349.18,3.32c-2.74.03-4.59,2.82-3.55,5.35Z" style="fill: #fff; stroke: #000; stroke-linejoin: round; stroke-width: 20px;"></path>
|
|
32
32
|
<g id="Waffle_Cross-Hatch" data-name="Waffle Cross-Hatch">
|
|
@@ -53,7 +53,7 @@ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helpe
|
|
|
53
53
|
<circle id="Right_Eye_Outline" data-name="Right Eye Outline" cx="175.1" cy="250.34" r="64.78" style="fill: #fff; stroke: #000; stroke-miterlimit: 10; stroke-width: 6px;"></circle>
|
|
54
54
|
|
|
55
55
|
</g><g><line x1="351.01" y1="183.73000000000002" x2="415.78999999999996" y2="248.51" stroke="#000" stroke-width="15" stroke-linecap="round"></line><line x1="351.01" y1="248.51" x2="415.78999999999996" y2="183.73000000000002" stroke="#000" stroke-width="15" stroke-linecap="round"></line></g><g><line x1="142.70999999999998" y1="217.95" x2="207.49" y2="282.73" stroke="#000" stroke-width="15" stroke-linecap="round"></line><line x1="142.70999999999998" y1="282.73" x2="207.49" y2="217.95" stroke="#000" stroke-width="15" stroke-linecap="round"></line></g></g></g></svg>
|
|
56
|
-
`,
|
|
56
|
+
`,le=`<?xml version="1.0" encoding="UTF-8"?>
|
|
57
57
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" width="100%" height="100%"><g transform="translate(151.53125, -171.3125) scale(1.25)"><g transform="translate(0, 21)"><g id="Cone">
|
|
58
58
|
<path id="Cone_Bottom" data-name="Cone Bottom" d="M108.22,414.88l189.84,460.03c1.36,3.3,6.09,3.16,7.25-.22l159.34-463.34c.87-2.53-1.03-5.16-3.7-5.13l-349.18,3.32c-2.74.03-4.59,2.82-3.55,5.35Z" style="fill: rgb(34, 34, 34); stroke: rgb(255, 255, 255); stroke-linejoin: round; stroke-width: 20px;"/>
|
|
59
59
|
<g id="Waffle_Cross-Hatch" data-name="Waffle Cross-Hatch">
|
|
@@ -79,7 +79,7 @@ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helpe
|
|
|
79
79
|
</g><g id="Left_Eye" data-name="Left Eye">
|
|
80
80
|
<circle id="Right_Eye_Outline" data-name="Right Eye Outline" cx="175.1" cy="250.34" r="64.78" style="fill: rgb(0, 0, 0); stroke: rgb(255, 255, 255); stroke-miterlimit: 10; stroke-width: 6px;"/>
|
|
81
81
|
<path id="Left_Pupil" data-name="Left Pupil" d="M213.74,233.23c-.13,1.98-.7,3.97-1.76,5.81-3.71,6.43-11.93,8.63-18.36,4.92-6.43-3.71-8.63-11.93-4.92-18.36,2.32-4.02,6.4-6.38,10.7-6.69-3.8-1.78-8.03-2.8-12.51-2.8-16.37,0-29.64,13.27-29.64,29.64s13.27,29.64,29.64,29.64,29.64-13.27,29.64-29.64c0-4.48-1.02-8.72-2.81-12.53Z" style="fill: rgb(255, 255, 255);"/>
|
|
82
|
-
</g></g></g></svg>`,
|
|
82
|
+
</g></g></g></svg>`,ue=`<?xml version="1.0" encoding="UTF-8"?>
|
|
83
83
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" width="100%" height="100%"><g transform="translate(191.47118749999993, 12.583024999999978) scale(1.1115000000000002)"><g transform="translate(0, 0)"><g id="Cone">
|
|
84
84
|
<path id="Cone_Bottom" data-name="Cone Bottom" d="M108.22,414.88l189.84,460.03c1.36,3.3,6.09,3.16,7.25-.22l159.34-463.34c.87-2.53-1.03-5.16-3.7-5.13l-349.18,3.32c-2.74.03-4.59,2.82-3.55,5.35Z" style="fill: rgb(34, 34, 34); stroke: rgb(255, 255, 255); stroke-linejoin: round; stroke-width: 20px;"/>
|
|
85
85
|
<g id="Waffle_Cross-Hatch" data-name="Waffle Cross-Hatch">
|
|
@@ -105,7 +105,7 @@ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helpe
|
|
|
105
105
|
</g><g id="Left_Eye" data-name="Left Eye">
|
|
106
106
|
<circle id="Right_Eye_Outline" data-name="Right Eye Outline" cx="175.1" cy="250.34" r="64.78" style="fill: rgb(0, 0, 0); stroke: rgb(255, 255, 255); stroke-miterlimit: 10; stroke-width: 6px;"/>
|
|
107
107
|
<path id="Left_Pupil" data-name="Left Pupil" d="M213.74,233.23c-.13,1.98-.7,3.97-1.76,5.81-3.71,6.43-11.93,8.63-18.36,4.92-6.43-3.71-8.63-11.93-4.92-18.36,2.32-4.02,6.4-6.38,10.7-6.69-3.8-1.78-8.03-2.8-12.51-2.8-16.37,0-29.64,13.27-29.64,29.64s13.27,29.64,29.64,29.64,29.64-13.27,29.64-29.64c0-4.48-1.02-8.72-2.81-12.53Z" style="fill: rgb(255, 255, 255);"/>
|
|
108
|
-
</g></g></g></svg>`,
|
|
108
|
+
</g></g></g></svg>`,de=`<?xml version="1.0" encoding="UTF-8"?>
|
|
109
109
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" width="100%" height="100%"><g transform="translate(151.53125, -171.3125) scale(1.25)"><g transform="translate(0, 21)"><g id="Cone">
|
|
110
110
|
<path id="Cone_Bottom" data-name="Cone Bottom" d="M108.22,414.88l189.84,460.03c1.36,3.3,6.09,3.16,7.25-.22l159.34-463.34c.87-2.53-1.03-5.16-3.7-5.13l-349.18,3.32c-2.74.03-4.59,2.82-3.55,5.35Z" style="fill: #fff; stroke: #000; stroke-linejoin: round; stroke-width: 20px;"/>
|
|
111
111
|
<g id="Waffle_Cross-Hatch" data-name="Waffle Cross-Hatch">
|
|
@@ -131,7 +131,7 @@ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helpe
|
|
|
131
131
|
</g><g id="Left_Eye" data-name="Left Eye">
|
|
132
132
|
<circle id="Right_Eye_Outline" data-name="Right Eye Outline" cx="175.1" cy="250.34" r="64.78" style="fill: #fff; stroke: #000; stroke-miterlimit: 10; stroke-width: 6px;"/>
|
|
133
133
|
<path id="Left_Pupil" data-name="Left Pupil" d="M213.74,233.23c-.13,1.98-.7,3.97-1.76,5.81-3.71,6.43-11.93,8.63-18.36,4.92-6.43-3.71-8.63-11.93-4.92-18.36,2.32-4.02,6.4-6.38,10.7-6.69-3.8-1.78-8.03-2.8-12.51-2.8-16.37,0-29.64,13.27-29.64,29.64s13.27,29.64,29.64,29.64,29.64-13.27,29.64-29.64c0-4.48-1.02-8.72-2.81-12.53Z" style="fill: rgb(0, 0, 0);"/>
|
|
134
|
-
</g></g></g></svg>`,
|
|
134
|
+
</g></g></g></svg>`,fe=`<?xml version="1.0" encoding="UTF-8"?>
|
|
135
135
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" width="100%" height="100%"><g transform="translate(191.47118749999993, 12.583024999999978) scale(1.1115000000000002)"><g transform="translate(0, 0)"><g id="Cone">
|
|
136
136
|
<path id="Cone_Bottom" data-name="Cone Bottom" d="M108.22,414.88l189.84,460.03c1.36,3.3,6.09,3.16,7.25-.22l159.34-463.34c.87-2.53-1.03-5.16-3.7-5.13l-349.18,3.32c-2.74.03-4.59,2.82-3.55,5.35Z" style="fill: #fff; stroke: #000; stroke-linejoin: round; stroke-width: 20px;"/>
|
|
137
137
|
<g id="Waffle_Cross-Hatch" data-name="Waffle Cross-Hatch">
|
|
@@ -157,7 +157,7 @@ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helpe
|
|
|
157
157
|
</g><g id="Left_Eye" data-name="Left Eye">
|
|
158
158
|
<circle id="Right_Eye_Outline" data-name="Right Eye Outline" cx="175.1" cy="250.34" r="64.78" style="fill: #fff; stroke: #000; stroke-miterlimit: 10; stroke-width: 6px;"/>
|
|
159
159
|
<path id="Left_Pupil" data-name="Left Pupil" d="M213.74,233.23c-.13,1.98-.7,3.97-1.76,5.81-3.71,6.43-11.93,8.63-18.36,4.92-6.43-3.71-8.63-11.93-4.92-18.36,2.32-4.02,6.4-6.38,10.7-6.69-3.8-1.78-8.03-2.8-12.51-2.8-16.37,0-29.64,13.27-29.64,29.64s13.27,29.64,29.64,29.64,29.64-13.27,29.64-29.64c0-4.48-1.02-8.72-2.81-12.53Z" style="fill: rgb(0, 0, 0);"/>
|
|
160
|
-
</g></g></g></svg>`;function
|
|
160
|
+
</g></g></g></svg>`;function pe(e,t){typeof customElements>`u`||customElements==null||customElements.get(e)||customElements.define(e,t)}function me(e,t){for(let n of t)n!=null&&n!==!1&&e.append(typeof n==`string`||typeof n==`number`?document.createTextNode(String(n)):n)}function k(e,t,...n){let r=document.createElement(e);if(t)for(let[e,n]of Object.entries(t))n!=null&&n!==!1&&(e===`class`?r.className=String(n):r.setAttribute(e,n===!0?``:String(n)));return me(r,n),r}function he(e){let t=new CSSStyleSheet;return t.replaceSync(e),t}var ge=he(`
|
|
161
161
|
:host {
|
|
162
162
|
all: initial;
|
|
163
163
|
position: fixed;
|
|
@@ -214,10 +214,10 @@ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helpe
|
|
|
214
214
|
.logo-icon { width: 32px; height: 32px; display: block; }
|
|
215
215
|
.logo-icon svg { width: 100%; height: 100%; display: block; }
|
|
216
216
|
.logo-state { display: none; }
|
|
217
|
-
:host(:not([${
|
|
218
|
-
:host([${
|
|
219
|
-
:host([${
|
|
220
|
-
:host([${
|
|
217
|
+
:host(:not([${E}])) .logo-state-disconnected,
|
|
218
|
+
:host([${E}="disconnected"]) .logo-state-disconnected,
|
|
219
|
+
:host([${E}="connected"]) .logo-state-connected,
|
|
220
|
+
:host([${E}="error"]) .logo-state-error { display: contents; }
|
|
221
221
|
.logo-for-dark { display: block; }
|
|
222
222
|
.logo-for-light { display: none; }
|
|
223
223
|
@media (prefers-color-scheme: light) {
|
|
@@ -320,7 +320,7 @@ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helpe
|
|
|
320
320
|
@media (prefers-reduced-motion: reduce) {
|
|
321
321
|
.launcher, .sidebar, .backdrop { transition: none; }
|
|
322
322
|
}
|
|
323
|
-
`);function
|
|
323
|
+
`);function _e(e){let t=e.replace(/<\?xml[^?]*\?>\s*/i,``),n=new DOMParser().parseFromString(t,`image/svg+xml`);return document.importNode(n.documentElement,!0)}var ve=[{state:`disconnected`,darkSvg:le,lightSvg:de},{state:`connected`,darkSvg:ue,lightSvg:fe},{state:`error`,darkSvg:se,lightSvg:ce}];function ye(){let e=k(`span`,{class:`logo`,part:`logo`});for(let{state:t,darkSvg:n,lightSvg:r}of ve){let i=k(`div`,{class:`logo-icon logo-for-dark`});i.appendChild(_e(n));let a=k(`div`,{class:`logo-icon logo-for-light`});a.appendChild(_e(r));let o=k(`span`,{class:`logo-state logo-state-${t}`,"aria-hidden":`true`},i,a);e.appendChild(o)}return e}function be(e,t,n){return Math.min(Math.max(e,t),n)}function xe(e,t){try{e.setPointerCapture(t)}catch{}}function Se(e,t){try{e.hasPointerCapture(t)&&e.releasePointerCapture(t)}catch{}}function Ce(e){try{return ie(e?.localStorage.getItem(te))}catch{return ee}}function we(e,t){try{e?.localStorage.setItem(te,t)}catch{}}var Te=`Set the app-url attribute to load SLICC.`;pe(`slicc-launcher`,class extends HTMLElement{static observedAttributes=[`open`,`corner`,`app-url`,`status-message`,E];#e;#t;#n;#r;#i;#a;#o=``;#s=null;#c=!1;#l=!1;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[ge],this.#u()}connectedCallback(){if(!this.hasAttribute(`corner`)){let e=Ce(this.ownerDocument.defaultView);this.#l=!0,this.setAttribute(`corner`,e),this.#l=!1}this.#f(),this.#p()}attributeChangedCallback(e){if(!this.#l&&(e===`app-url`&&this.#f(),e===`status-message`&&this.#p(),e===`corner`&&we(this.ownerDocument.defaultView,this.corner),e===`follower-status`)){let e=this.getAttribute(E);if(e!==null){let t=D(e);t!==e&&(this.#l=!0,this.setAttribute(E,t),this.#l=!1)}}}get open(){return this.hasAttribute(`open`)}set open(e){this.open!==e&&(this.toggleAttribute(`open`,e),this.#d())}get corner(){return ie(this.getAttribute(`corner`))}set corner(e){let t=ie(e);this.corner===t&&this.hasAttribute(`corner`)||this.setAttribute(`corner`,t)}get appUrl(){return this.getAttribute(`app-url`)?.trim()??``}set appUrl(e){let t=(e??``).trim();t?this.setAttribute(`app-url`,t):this.removeAttribute(`app-url`)}get statusMessage(){return this.getAttribute(`status-message`)??``}set statusMessage(e){let t=e??``;t?this.setAttribute(`status-message`,t):this.removeAttribute(`status-message`)}get followerStatus(){return D(this.getAttribute(E))}set followerStatus(e){if(e==null){this.removeAttribute(E);return}let t=D(e);this.getAttribute(`follower-status`)!==t&&this.setAttribute(E,t)}show(){this.open=!0}hide(){this.open=!1}toggle(){this.open=!this.open}#u(){this.#t=k(`button`,{class:`launcher`,part:`launcher`,type:`button`,"aria-label":`Toggle SLICC`},ye(),k(`span`,{class:`tab-label`,part:`tab-label`},`SLICC`)),this.#t.addEventListener(`click`,e=>{if(this.#c){this.#c=!1,e.preventDefault(),e.stopImmediatePropagation();return}this.toggle()}),this.#t.addEventListener(`dblclick`,e=>{e.preventDefault(),this.dispatchEvent(new CustomEvent(`slicc-launcher-focus`,{bubbles:!0,composed:!0}))}),this.#t.addEventListener(`pointerdown`,this.#m),this.#t.addEventListener(`pointermove`,this.#h),this.#t.addEventListener(`pointerup`,this.#g),this.#t.addEventListener(`pointercancel`,this.#_),this.#n=k(`div`,{class:`backdrop`,part:`backdrop`}),this.#n.addEventListener(`click`,()=>this.hide()),this.#i=k(`iframe`,{title:`SLICC overlay`}),this.#a=k(`div`,{class:`empty`},Te);let e=k(`div`,{class:`viewport`},this.#i,this.#a);this.#r=k(`aside`,{class:`sidebar`,part:`sidebar`,"aria-label":`SLICC launcher sidebar`},e),this.#e.replaceChildren(this.#n,this.#r,this.#t)}#d(){this.dispatchEvent(new CustomEvent(`slicc-launcher-toggle`,{detail:{open:this.open},bubbles:!0,composed:!0}))}#f(){let e=this.appUrl;if(this.#a.toggleAttribute(`hidden`,!!e),!e){this.#o&&(this.#o=``,this.#i.removeAttribute(`src`));return}e!==this.#o&&(this.#o=e,this.#i.src=e)}#p(){this.#a.textContent=this.statusMessage||Te}#m=e=>{if(!e.isPrimary||e.button!==0)return;let t=this.#t.getBoundingClientRect();this.#s={pointerId:e.pointerId,startX:e.clientX,startY:e.clientY,startLeft:t.left,startTop:t.top,width:t.width,height:t.height,lastX:e.clientX,lastY:e.clientY,lastTimestamp:e.timeStamp,velocityX:0,velocityY:0,dragging:!1},this.#c=!1,e.preventDefault(),xe(this.#t,e.pointerId)};#h=e=>{let t=this.#s;if(!t||e.pointerId!==t.pointerId)return;let n=e.clientX-t.startX,r=e.clientY-t.startY,i=Math.hypot(n,r);!t.dragging&&ae(i)&&(t.dragging=!0,this.setAttribute(`dragging`,``));let a=Math.max(e.timeStamp-t.lastTimestamp,1),o=(e.clientX-t.lastX)/a,s=(e.clientY-t.lastY)/a;if(t.velocityX=t.velocityX===0?o:t.velocityX*.35+o*.65,t.velocityY=t.velocityY===0?s:t.velocityY*.35+s*.65,t.lastX=e.clientX,t.lastY=e.clientY,t.lastTimestamp=e.timeStamp,!t.dragging)return;let c=Math.max(18,window.innerWidth-t.width-18),l=Math.max(18,window.innerHeight-t.height-18),u=be(t.startLeft+n,18,c),d=be(t.startTop+r,18,l);this.#t.style.left=`${u}px`,this.#t.style.top=`${d}px`,this.#t.style.right=`auto`,this.#t.style.bottom=`auto`,e.preventDefault()};#g=e=>{this.#v(e,!0)};#_=e=>{this.#v(e,!1)};#v(e,t){let n=this.#s;if(!n||e.pointerId!==n.pointerId)return;let r=Math.hypot(e.clientX-n.startX,e.clientY-n.startY);if(t&&(n.dragging||ae(r))){let t=O({clientX:e.clientX,clientY:e.clientY,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight,velocityXPxPerMs:n.velocityX,velocityYPxPerMs:n.velocityY});this.corner=t,this.dispatchEvent(new CustomEvent(`slicc-launcher-move`,{detail:{corner:t},bubbles:!0,composed:!0})),this.#c=!0,e.preventDefault()}Se(this.#t,e.pointerId),this.#s=null,this.removeAttribute(`dragging`),this.#t.style.left=``,this.#t.style.top=``,this.#t.style.right=``,this.#t.style.bottom=``}});function A(e,t){typeof customElements>`u`||customElements==null||customElements.get(e)||customElements.define(e,t)}function Ee(e,t){for(let n of t)n!=null&&n!==!1&&e.append(typeof n==`string`||typeof n==`number`?document.createTextNode(String(n)):n)}function j(e,t,...n){let r=document.createElement(e);if(t)for(let[e,n]of Object.entries(t))n!=null&&n!==!1&&(e===`class`?r.className=String(n):r.setAttribute(e,n===!0?``:String(n)));return Ee(r,n),r}function M(e){let t=new CSSStyleSheet;return t.replaceSync(e),t}var De=20,Oe=16,N=18,ke=M(`
|
|
324
324
|
:host{display:block;width:100%;
|
|
325
325
|
--am-accent:var(--accent,#3b63fb);
|
|
326
326
|
--am-accent-subtle:color-mix(in oklab,var(--am-accent) 12%,var(--canvas,#fff));
|
|
@@ -376,7 +376,7 @@ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helpe
|
|
|
376
376
|
.sep{height:1px;background:var(--line,#e1e1e1);margin:6px 4px;}
|
|
377
377
|
.drop{position:absolute;inset:0;border-radius:10px;display:none;align-items:center;justify-content:center;text-align:center;background:var(--am-accent-subtle);border:2px dashed var(--am-accent);color:var(--am-accent);font-size:13px;font-weight:600;pointer-events:none;}
|
|
378
378
|
:host([data-dropping]) .drop{display:flex;}
|
|
379
|
-
`),
|
|
379
|
+
`),Ae=[{kind:`file`,label:`Files`,icon:`file`,entries:[{id:`/workspace/README.md`,label:`README.md`,sub:`/workspace`},{id:`/workspace/src/main.ts`,label:`main.ts`,sub:`/workspace/src`},{id:`/workspace/src/orchestrator.ts`,label:`orchestrator.ts`,sub:`/workspace/src`},{id:`/workspace/notes/launch-plan.md`,label:`launch-plan.md`,sub:`/workspace/notes`},{id:`/shared/CLAUDE.md`,label:`CLAUDE.md`,sub:`/shared`},{id:`/tmp/screenshot-3.png`,label:`screenshot-3.png`,sub:`/tmp`}]},{kind:`skill`,label:`Skills`,icon:`sparkles`,entries:[{id:`slicc-handoff`,label:`slicc-handoff`,sub:`Continue work in the SLICC browser agent`},{id:`playwright-cli`,label:`playwright-cli`,sub:`Automate browser interactions`},{id:`mixtape`,label:`mixtape`,sub:`Curate themed music playlists`},{id:`wavespeed`,label:`wavespeed`,sub:`Generate images, video and speech`},{id:`save-the-cat`,label:`save-the-cat`,sub:`Screenwriting beat sheets`}]},{kind:`conversation`,label:`Conversations`,icon:`message-square`,entries:[{id:`c1`,label:`Dark mode toggle`,sub:`Frozen · 2h ago`},{id:`c2`,label:`Refactor the mount backend`,sub:`Frozen · yesterday`},{id:`c3`,label:`Add slash menu (declined)`,sub:`Frozen · 3 days ago`},{id:`c4`,label:`WebGL shader walkthrough`,sub:`Frozen · last week`}]}],je=[{kind:`upload`,icon:`upload`,label:`Upload from this computer`,sub:`Drag & drop or click to browse`,quick:!0},{kind:`capture`,mode:`photo`,icon:`image`,label:`Take a photo`,quick:!0},{kind:`capture`,mode:`screenshot`,icon:`monitor`,label:`Take a screenshot`,quick:!0}];A(`slicc-add-menu`,class extends HTMLElement{static observedAttributes=[`theme`,`global-drop`,`no-camera`];#e;#t=null;#n=null;#r=!1;#i=``;#a=0;#o=[];#s=0;#c;#l;#u;#d;#f;#p;#m=e=>{this.#r&&!this.contains(e.target)&&this.close()};#h=!1;#g=0;#_=!1;#v(e){let t=e.dataTransfer?.types;return!!t&&Array.from(t).includes(`Files`)}#y(){this.#r||(this.#_=!0,this.open()),this.setAttribute(`data-dropping`,``)}#b(){this.#g=0,this.removeAttribute(`data-dropping`),this.#_&&(this.#_=!1,this.close())}#x=e=>{this.#v(e)&&(e.preventDefault(),this.#g++,!e.composedPath().includes(this.#u)&&this.#y())};#S=e=>{this.#v(e)&&e.preventDefault()};#C=e=>{this.#v(e)&&(this.#g=Math.max(0,this.#g-1),this.#g===0&&this.#b())};#w=e=>{if(!this.#v(e))return;if(e.preventDefault(),this.#g=0,e.composedPath().includes(this.#u)){this.#_=!1;return}this.removeAttribute(`data-dropping`),this.#_=!1;let t=e.dataTransfer?.files;if(t?.length)for(let e of Array.from(t))this.#B({kind:`upload`,name:e.name,size:e.size,file:e});this.close()};#T(){this.isConnected&&this.hasAttribute(`global-drop`)?this.#E():this.#D()}#E(){if(this.#h)return;this.#h=!0;let e=this.ownerDocument;e.addEventListener(`dragenter`,this.#x),e.addEventListener(`dragover`,this.#S),e.addEventListener(`dragleave`,this.#C),e.addEventListener(`drop`,this.#w)}#D(){if(!this.#h)return;this.#h=!1;let e=this.ownerDocument;e.removeEventListener(`dragenter`,this.#x),e.removeEventListener(`dragover`,this.#S),e.removeEventListener(`dragleave`,this.#C),e.removeEventListener(`drop`,this.#w),this.#g=0,this.#_=!1}constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[ke]}connectedCallback(){this.#k(),this.#T()}disconnectedCallback(){document.removeEventListener(`mousedown`,this.#m),this.#D()}attributeChangedCallback(e){e===`global-drop`?this.#T():e===`no-camera`&&this.#r&&this.#P()}#O(){return this.hasAttribute(`no-camera`)?je.filter(e=>e.kind!==`capture`||e.mode!==`photo`):je}get results(){return this.#t}set results(e){this.#t=e,this.#r&&this.#P()}get provider(){return this.#n}set provider(e){this.#n=e,this.#r&&this.#P()}get isOpen(){return this.#r}#k(){let e=j(`input`,{type:`file`,multiple:!0,hidden:!0}),t=j(`div`,{class:`body`}),r=j(`div`,{class:`results`,part:`results`,role:`listbox`},t,j(`div`,{class:`drop`},`Drop files to add`)),i=j(`span`,{class:`ti`},n(`plus`,{size:De})),a=j(`button`,{class:`trigger`,part:`trigger`,"aria-haspopup":`true`,"aria-expanded":`false`,title:`Add to prompt`},i),o=j(`input`,{type:`text`,placeholder:`Search files, skills, conversations…`}),s=j(`div`,{class:`wrap`,part:`wrap`},r,j(`div`,{class:`row`},a,j(`div`,{class:`searchbox`},j(`span`,{class:`si`},n(`search`,{size:Oe})),o)));this.#e.replaceChildren(e,s),this.#c=a,this.#l=i,this.#u=s,this.#d=o,this.#f=t,this.#p=e,this.#A(),this.#P()}#A(){this.#c.addEventListener(`click`,()=>this.toggle()),this.#d.addEventListener(`input`,()=>{this.#i=this.#d.value,this.#a=0,this.#P()}),this.#d.addEventListener(`keydown`,e=>this.#R(e)),this.#p.addEventListener(`change`,()=>{for(let e of Array.from(this.#p.files??[]))this.#B({kind:`upload`,name:e.name,size:e.size,file:e});this.#p.value=``,this.close()});for(let e of[`dragenter`,`dragover`])this.#u.addEventListener(e,e=>{e.preventDefault(),this.#r||this.open(),this.setAttribute(`data-dropping`,``)});for(let e of[`dragleave`,`drop`])this.#u.addEventListener(e,t=>{t.preventDefault();let n=t;e===`dragleave`&&this.#u.contains(n.relatedTarget)||this.removeAttribute(`data-dropping`)});this.#u.addEventListener(`drop`,e=>{let t=e.dataTransfer?.files;if(t?.length){for(let e of Array.from(t))this.#B({kind:`upload`,name:e.name,size:e.size,file:e});this.close()}})}toggle(){this.#r?this.close():this.open()}#j(e){this.#l.replaceChildren(n(e?`x`:`plus`,{size:De}))}open(){this.#r||(this.#r=!0,this.setAttribute(`data-open`,``),this.#c.setAttribute(`aria-expanded`,`true`),this.#j(!0),document.addEventListener(`mousedown`,this.#m),this.#i=``,this.#d.value=``,this.#a=0,this.#P(),requestAnimationFrame(()=>this.#d.focus()))}close(){this.#r&&(this.#r=!1,this.removeAttribute(`data-open`),this.removeAttribute(`data-dropping`),this.#c.setAttribute(`aria-expanded`,`false`),this.#j(!1),document.removeEventListener(`mousedown`,this.#m))}async#M(e){if(this.#n){let t=await this.#n(e);if(t)return t}return this.#t??Ae}#N(e){let t=this.#i.trim().toLowerCase(),n=e=>!t||`${e.label} ${e.sub??``}`.toLowerCase().includes(t),r=[],i=this.#O();if(!t)for(let e of i)r.push({type:`quick`,data:e});else if(`upload take a photo screenshot`.includes(t))for(let e of i)e.label.toLowerCase().includes(t)&&r.push({type:`quick`,data:e});for(let i of e){let e=i.entries.filter(n).slice(0,t?8:4);if(e.length){r.push({type:`sec`,label:i.label});for(let t of e)r.push({type:`row`,section:i,data:t})}}return r}async#P(){let e=++this.#s,t=await this.#M(this.#i.trim().toLowerCase());if(e!==this.#s)return;let r=this.#N(t);this.#o=[];let i=[],a=!1;for(let e of r)if(e.type===`sec`)a&&i.push(j(`div`,{class:`sep`})),i.push(j(`div`,{class:`sec`},e.label)),a=!1;else if(e.type===`quick`){let t=this.#o.length;this.#o.push(e.data.kind===`upload`?{kind:`upload`,name:``,size:0}:{kind:`capture`,mode:e.data.mode??`photo`,label:e.data.label});let r=j(`span`,{class:`tx`},j(`div`,{class:`lb`},e.data.label));e.data.sub&&r.append(j(`div`,{class:`sb`},e.data.sub)),i.push(j(`div`,{class:`item quick`,"data-i":t},j(`span`,{class:`ic`},n(e.data.icon,{size:N})),r)),a=!0}else{let t=this.#o.length;this.#o.push({kind:e.section.kind,id:e.data.id,label:e.data.label}),i.push(j(`div`,{class:`item`,"data-i":t},j(`span`,{class:`ic`},n(e.section.icon,{size:N})),j(`span`,{class:`tx`},j(`div`,{class:`lb`},e.data.label),j(`div`,{class:`sb`},e.data.sub??``))))}i.length?this.#f.replaceChildren(...i):this.#f.replaceChildren(j(`div`,{class:`empty`},`No matches for “${this.#i}”.`));for(let e of Array.from(this.#f.querySelectorAll(`.item`))){let t=Number(e.dataset.i);e.addEventListener(`mouseenter`,()=>this.#I(t)),e.addEventListener(`click`,()=>this.#z(t))}this.#a>=this.#o.length&&(this.#a=0),this.#F()}#F(){for(let e of Array.from(this.#f.querySelectorAll(`.item`)))e.classList.toggle(`active`,Number(e.dataset.i)===this.#a)}#I(e){this.#a=e,this.#F()}#L(e){if(!this.#o.length)return;this.#a=(this.#a+e+this.#o.length)%this.#o.length,this.#F();let t=this.#f.querySelector(`.item[data-i="${this.#a}"]`);t&&t.scrollIntoView({block:`nearest`})}#R(e){e.key===`ArrowDown`?(e.preventDefault(),this.#L(1)):e.key===`ArrowUp`?(e.preventDefault(),this.#L(-1)):e.key===`Enter`?(e.preventDefault(),this.#z(this.#a)):e.key===`Escape`&&(e.preventDefault(),this.close(),this.#c.focus())}#z(e){let t=this.#o[e];if(t){if(t.kind===`upload`){this.#p.click();return}this.#B(t),this.close()}}#B(e){this.dispatchEvent(new CustomEvent(`slicc-add`,{detail:e,bubbles:!0,composed:!0}))}});var Me=M(`
|
|
380
380
|
:host {
|
|
381
381
|
display: inline-grid;
|
|
382
382
|
grid-auto-flow: column;
|
|
@@ -410,7 +410,7 @@ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helpe
|
|
|
410
410
|
.glyph { display: grid; place-items: center; pointer-events: none; }
|
|
411
411
|
.glyph svg { display: block; }
|
|
412
412
|
.label { pointer-events: none; }
|
|
413
|
-
`),
|
|
413
|
+
`),Ne=[{cue:`sent`,label:`Sent`,icon:`send`},{cue:`tool-start`,label:`Tool start`,icon:`play`},{cue:`tool-finish`,label:`Tool finish`,icon:`check`}],Pe=14;A(`slicc-soundboard`,class extends HTMLElement{#e;#t=null;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[Me]}connectedCallback(){this.#i()}get audioContext(){return this.#t}#n(){return typeof AudioContext>`u`?null:((!this.#t||this.#t.state===`closed`)&&(this.#t=new AudioContext),this.#t)}#r(e){let t=this.#n();t&&(t.state===`suspended`&&t.resume(),c(t,e))}#i(){let e=Ne.map(({cue:e,label:t,icon:r})=>{let i=n(r,{size:Pe,part:`icon`}),a=j(`button`,{type:`button`,class:`cue`,part:`button`,"data-cue":e,"aria-label":`Play ${t} cue`,title:`Play ${t} cue`},j(`span`,{class:`glyph`},i),j(`span`,{class:`label`,part:`label`},t));return a.addEventListener(`click`,()=>this.#r(e)),a});this.#e.replaceChildren(...e)}});var Fe=`
|
|
414
414
|
slicc-action-card { display: block; }
|
|
415
415
|
|
|
416
416
|
/* in-chat tool / terminal / git card (.tcard) */
|
|
@@ -528,7 +528,7 @@ slicc-action-card .prcard .pmeta {
|
|
|
528
528
|
slicc-action-card .prcard .pmeta b { color: var(--ink); }
|
|
529
529
|
slicc-action-card .prcard .pmeta .add { color: #1a7f37; }
|
|
530
530
|
slicc-action-card .prcard .pmeta .del { color: #cf222e; }
|
|
531
|
-
`,
|
|
531
|
+
`,Ie=`slicc-action-card-style`;function Le(e){if(e.getElementById(Ie))return;let t=e.createElement(`style`);t.id=Ie,t.textContent=Fe,(e.head??e.documentElement).appendChild(t)}var Re=new Set([`tool`,`light`,`pr`]),ze=new Set([`ink`,`cy`,`vi`,`am`,`gh`]);A(`slicc-action-card`,class extends HTMLElement{static observedAttributes=[`variant`,`glyph`,`tone`,`title`,`badge`,`number`,`status`,`branch`,`files`,`add`,`del`,`checks`];#e=[];#t=!1;connectedCallback(){Le(this.ownerDocument),this.classList.add(`slicc-action-card`),this.#a(),this.#n()}attributeChangedCallback(e,t,n){!this.isConnected||t===n||(this.#n(),e===`variant`&&this.dispatchEvent(new CustomEvent(`slicc-action-card-change`,{bubbles:!0,composed:!0,detail:{variant:this.variant}})))}get variant(){let e=this.getAttribute(`variant`);return e&&Re.has(e)?e:`tool`}set variant(e){this.setAttribute(`variant`,Re.has(e)?e:`tool`)}get glyph(){return this.getAttribute(`glyph`)}set glyph(e){e==null?this.removeAttribute(`glyph`):this.setAttribute(`glyph`,e)}get tone(){let e=this.getAttribute(`tone`);return e&&ze.has(e)?e:`ink`}set tone(e){this.setAttribute(`tone`,ze.has(e)?e:`ink`)}get title(){return this.getAttribute(`title`)??``}set title(e){e==null?this.removeAttribute(`title`):this.setAttribute(`title`,e)}get badge(){return this.getAttribute(`badge`)}set badge(e){e==null?this.removeAttribute(`badge`):this.setAttribute(`badge`,e)}get number(){return this.getAttribute(`number`)}set number(e){e==null?this.removeAttribute(`number`):this.setAttribute(`number`,e)}get status(){return this.getAttribute(`status`)}set status(e){e==null?this.removeAttribute(`status`):this.setAttribute(`status`,e)}get branch(){return this.getAttribute(`branch`)}set branch(e){e==null?this.removeAttribute(`branch`):this.setAttribute(`branch`,e)}get files(){return this.getAttribute(`files`)}set files(e){e==null?this.removeAttribute(`files`):this.setAttribute(`files`,e)}get add(){return this.getAttribute(`add`)}set add(e){e==null?this.removeAttribute(`add`):this.setAttribute(`add`,e)}get del(){return this.getAttribute(`del`)}set del(e){e==null?this.removeAttribute(`del`):this.setAttribute(`del`,e)}get checks(){return this.getAttribute(`checks`)}set checks(e){e==null?this.removeAttribute(`checks`):this.setAttribute(`checks`,e)}#n(){let e=this.variant;e===`pr`?this.#i():this.#r(e===`light`)}#r(e){let t=this.glyph,n=this.tone,r=this.title,i=this.badge,a=n===`ink`?`ic`:`ic ${n}`,o=j(`div`,{class:`th`,part:`header`});Ee(o,[j(`span`,{class:a,part:`icon`},t??null),` `,j(`span`,{class:`nm`,part:`title`},r),i==null?null:j(`span`,{class:`badge`,part:`badge`},i)]);let s=j(`div`,{class:`tb`,part:`body`});s.append(...this.#e);let c=j(`div`,{class:e?`tcard light`:`tcard`,part:`card`},o,s);this.replaceChildren(c)}#i(){let e=this.title,t=this.number,n=this.status??`Open`,r=this.branch,i=this.files,a=this.add,o=this.del,s=this.checks,c=j(`div`,{class:`ph`,part:`header`});Ee(c,[j(`span`,{class:`gi`,part:`icon`},`⎇`),j(`span`,{class:`pt`,part:`title`},e),t==null?null:j(`span`,{class:`pn`,part:`number`},t),j(`span`,{class:`open`,part:`status`},n)]);let l=j(`div`,{class:`pmeta`,part:`meta`}),u=this.#e.filter(e=>e instanceof HTMLElement&&e.getAttribute(`slot`)===`meta`);u.length>0?l.append(...u):Ee(l,[r==null?null:j(`span`,null,r),i==null?null:j(`span`,null,j(`b`,null,i),` files`),a==null?null:j(`span`,{class:`add`},`+${a}`),o==null?null:j(`span`,{class:`del`},`−${o}`),s==null?null:j(`span`,null,`checks `,j(`b`,{style:`color:#1a7f37`},s))]);let d=j(`div`,{class:`prcard`,part:`card`},c,l);this.replaceChildren(d)}#a(){this.#t||(this.#t=!0,this.#e=Array.from(this.childNodes))}});var Be=`
|
|
532
532
|
slicc-action-row {
|
|
533
533
|
display: block;
|
|
534
534
|
margin: -2px 0 16px;
|
|
@@ -628,7 +628,7 @@ slicc-action-row .vlink {
|
|
|
628
628
|
slicc-action-row .vlink:hover {
|
|
629
629
|
border-bottom-style: solid;
|
|
630
630
|
}
|
|
631
|
-
`,
|
|
631
|
+
`,Ve=`slicc-action-row-style`;function He(e){if(e.getElementById(Ve))return;let t=e.createElement(`style`);t.id=Ve,t.textContent=Be,(e.head??e.documentElement).appendChild(t)}var Ue=new Set([`ink`,`vi`,`am`,`cy`,`gh`]);A(`slicc-action-row`,class extends HTMLElement{static observedAttributes=[`open`,`icon`,`tone`,`label`,`result`];#e;#t;#n;#r;#i;#a=!1;#o=()=>this.#s();connectedCallback(){He(this.ownerDocument),this.#c(),this.#l(),this.#e?.addEventListener(`click`,this.#o)}disconnectedCallback(){this.#e?.removeEventListener(`click`,this.#o)}attributeChangedCallback(e,t,n){t===n||!this.#a||(e===`open`?(this.#e.setAttribute(`aria-expanded`,String(n!==null)),this.dispatchEvent(new CustomEvent(`slicc-action-row-toggle`,{bubbles:!0,composed:!0,detail:{open:n!==null}}))):this.#l())}get open(){return this.hasAttribute(`open`)}set open(e){this.toggleAttribute(`open`,e)}get icon(){return this.getAttribute(`icon`)}set icon(e){e==null?this.removeAttribute(`icon`):this.setAttribute(`icon`,e)}get tone(){let e=this.getAttribute(`tone`);return e&&Ue.has(e)?e:`ink`}set tone(e){this.setAttribute(`tone`,e)}get label(){return this.getAttribute(`label`)}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}get result(){return this.getAttribute(`result`)}set result(e){e==null?this.removeAttribute(`result`):this.setAttribute(`result`,e)}#s(){this.open=!this.open}#c(){if(this.#a)return;this.#a=!0;let e=Array.from(this.childNodes).filter(e=>!(e instanceof HTMLElement&&e.classList.contains(`slicc-act__head`))&&!(e instanceof HTMLElement&&e.classList.contains(`slicc-act__body`)));this.#e=this.ownerDocument.createElement(`button`),this.#e.type=`button`,this.#e.className=`slicc-act__head`,this.#e.setAttribute(`part`,`head`),this.#t=j(`span`,{class:`slicc-act__ic`,part:`icon`}),this.#n=j(`span`,{class:`slicc-act__label`,part:`label`}),this.#r=j(`span`,{class:`slicc-act__badge`,part:`badge`}),Ee(this.#e,[this.#t,this.#n,this.#r,j(`span`,{class:`slicc-act__chev`,part:`chevron`,"aria-hidden":`true`},`▸`)]),this.#i=this.ownerDocument.createElement(`div`),this.#i.className=`slicc-act__body`,this.#i.setAttribute(`part`,`body`);for(let t of e)t instanceof HTMLElement&&t.getAttribute(`slot`)===`body`?this.#i.appendChild(t):this.#n.appendChild(t);this.replaceChildren(this.#e,this.#i),this.#e.addEventListener(`click`,this.#o)}#l(){if(!this.#a)return;let e=this.tone;this.#t.className=`slicc-act__ic${e===`ink`?``:` ${e}`}`;let t=this.icon??``;t&&r(t)?this.#t.replaceChildren(n(t,{size:12})):this.#t.textContent=t;let i=this.label;i!=null&&(this.#n.textContent=i),this.#e.setAttribute(`aria-expanded`,String(this.open)),this.#r.textContent=this.result??``}});var We=`
|
|
632
632
|
slicc-agent-message { display: block; margin-bottom: 18px; font-size: 15px; line-height: 1.5; --accent: color-mix(in srgb, var(--ctx) 55%, var(--ink)); }
|
|
633
633
|
slicc-agent-message .msg-ts { font-family: var(--ui); font-size: 10px; color: var(--txt-3); opacity: .7; margin-bottom: 2px; font-variant-numeric: tabular-nums; }
|
|
634
634
|
/* Same containment the user bubble needs, for the same reason: an unbroken run
|
|
@@ -698,7 +698,7 @@ slicc-agent-message .dots i:nth-child(3) { animation-delay: .32s; }
|
|
|
698
698
|
@keyframes slicc-am-bdot { 0%, 75%, 100% { transform: translateY(0); opacity: .45; } 38% { transform: translateY(-8px); opacity: 1; } }
|
|
699
699
|
slicc-agent-message .tw-caret { display: inline-block; width: 2px; height: 1.05em; vertical-align: -2px; margin-left: 1px; background: var(--ink); animation: slicc-am-cblink .9s steps(1) infinite; }
|
|
700
700
|
@keyframes slicc-am-cblink { 50% { opacity: 0; } }
|
|
701
|
-
`,
|
|
701
|
+
`,Ge=`slicc-agent-message-style`;function Ke(e){if(e.getElementById(Ge))return;let t=e.createElement(`style`);t.id=Ge,t.textContent=We,(e.head??e.documentElement).appendChild(t)}var qe=[`#f43f5e`,`#06b6d4`,`#8b5cf6`],Je=new Set([``,`r`,`cy`,`vi`,`am`]);function P(){let e=j(`div`,{class:`dots`,part:`dots`,"aria-hidden":`true`});for(let t of qe)e.append(j(`i`,{style:`--d:${t}`}));return e}function Ye(e){let t=j(`ul`,{class:`plan`,part:`plan`});for(let n of e)t.append(j(`li`,null,n));return t}function Xe(e){let t=j(`ul`,{class:`check`,part:`check`});for(let n of e){let e=n.variant&&Je.has(n.variant)?n.variant:``,r=e?`ck ${e}`:`ck`,i=n.glyph??`✓`;t.append(j(`li`,null,j(`span`,{class:r},i),j(`span`,{class:`ctext`},n.text)))}return t}A(`slicc-agent-message`,class extends HTMLElement{static observedAttributes=[`thinking`,`streaming`,`progress`,`timestamp`];#e;#t=null;#n=null;#r=null;#i=!1;connectedCallback(){Ke(this.ownerDocument),this.#o(),this.#s(),this.#l()}attributeChangedCallback(e,t,n){t===n||!this.isConnected||(e===`thinking`?(this.#s(),this.dispatchEvent(new CustomEvent(`slicc-agent-message-thinking`,{bubbles:!0,composed:!0,detail:{thinking:n!==null}}))):e===`progress`?this.#c():e===`streaming`?(this.#l(),this.dispatchEvent(new CustomEvent(`slicc-agent-message-streaming`,{bubbles:!0,composed:!0,detail:{streaming:n!==null}}))):e===`timestamp`&&this.#u())}get thinking(){return this.hasAttribute(`thinking`)}set thinking(e){e?this.setAttribute(`thinking`,``):this.removeAttribute(`thinking`)}get streaming(){return this.hasAttribute(`streaming`)}set streaming(e){e?this.setAttribute(`streaming`,``):this.removeAttribute(`streaming`)}get progress(){return this.getAttribute(`progress`)}set progress(e){e==null?this.removeAttribute(`progress`):this.setAttribute(`progress`,e)}get body(){return this.#o(),this.#e}setBodyHtml(e){this.#o();let t=this.ownerDocument.createRange();t.selectNodeContents(this.#e),this.#a(t.createContextualFragment(e))}setPlan(e){this.#a(Ye(e))}setCheck(e){this.#a(Xe(e))}#a(e){this.#o(),this.#e.replaceChildren(e),this.#l()}#o(){if(this.#i)return;this.#i=!0,this.classList.add(`msg`,`bot`);let e=Array.from(this.childNodes).filter(e=>!(e instanceof HTMLElement&&e.classList.contains(`body`))),t=this.getAttribute(`timestamp`);if(t){let e=this.ownerDocument.createElement(`span`);e.className=`msg-ts`,e.setAttribute(`part`,`timestamp`),e.textContent=t,this.appendChild(e)}this.#e=this.ownerDocument.createElement(`div`),this.#e.className=`body`,this.#e.setAttribute(`part`,`body`);for(let t of e)this.#e.appendChild(t);this.appendChild(this.#e)}#s(){let e=this.thinking;this.classList.toggle(`thinkrow`,e),e?(this.#e.style.display=`none`,this.#t||(this.#t=this.ownerDocument.createElement(`div`),this.#t.className=`thinkrow-row`,this.#t.appendChild(P()),this.insertBefore(this.#t,this.#e)),this.#c()):(this.#e.style.removeProperty(`display`),this.#t&&(this.#t.remove(),this.#t=null,this.#n=null))}#c(){if(!this.#t)return;let e=this.progress;e?(this.#n||(this.#n=this.ownerDocument.createElement(`span`),this.#n.className=`progress`,this.#n.setAttribute(`part`,`progress`),this.#n.setAttribute(`aria-live`,`polite`),this.#t.appendChild(this.#n)),this.#n.textContent=e):this.#n&&=(this.#n.remove(),null)}#l(){this.streaming?this.#r?.isConnected?this.#e.appendChild(this.#r):(this.#r=this.ownerDocument.createElement(`span`),this.#r.className=`tw-caret`,this.#r.setAttribute(`part`,`caret`),this.#r.setAttribute(`aria-hidden`,`true`),this.#e.appendChild(this.#r)):this.#r&&=(this.#r.remove(),null)}#u(){let e=this.querySelector(`.msg-ts`),t=this.getAttribute(`timestamp`);if(t){if(e)e.textContent=t;else{let e=this.ownerDocument.createElement(`span`);e.className=`msg-ts`,e.setAttribute(`part`,`timestamp`),e.textContent=t,this.insertBefore(e,this.#e)}}else e?.remove()}});var Ze=`
|
|
702
702
|
slicc-chat-table { display: block; }
|
|
703
703
|
slicc-chat-table > .ctable {
|
|
704
704
|
width: 100%;
|
|
@@ -739,7 +739,7 @@ slicc-chat-table > .ctable code {
|
|
|
739
739
|
overflow-wrap: anywhere;
|
|
740
740
|
word-break: break-word;
|
|
741
741
|
}
|
|
742
|
-
`,
|
|
742
|
+
`,Qe=`slicc-chat-table-style`;function $e(e){if(e.getElementById(Qe))return;let t=e.createElement(`style`);t.id=Qe,t.textContent=Ze,(e.head??e.documentElement).appendChild(t)}function et(e){return e.split(`,`).map(e=>e.trim()).filter(e=>e.length>0)}A(`slicc-chat-table`,class extends HTMLElement{static observedAttributes=[`headers`];#e;#t;#n;#r=!1;connectedCallback(){$e(this.ownerDocument),this.#i()}attributeChangedCallback(e,t,n){e===`headers`&&t!==n&&(this.#r&&this.#a(),this.isConnected&&this.dispatchEvent(new CustomEvent(`slicc-chat-table-change`,{bubbles:!0,composed:!0,detail:{headers:this.headers}})))}get headers(){let e=this.getAttribute(`headers`);return e?et(e):[]}set headers(e){e==null?this.removeAttribute(`headers`):Array.isArray(e)?this.setAttribute(`headers`,e.join(`,`)):this.setAttribute(`headers`,e)}#i(){if(this.#r)return;this.#r=!0;let e=Array.from(this.childNodes).filter(e=>!(e instanceof HTMLTableElement&&e.classList.contains(`ctable`)));this.#e=this.ownerDocument.createElement(`table`),this.#e.className=`ctable`,this.#e.setAttribute(`part`,`table`),this.#t=this.ownerDocument.createElement(`thead`),this.#t.setAttribute(`part`,`head`),this.#n=this.ownerDocument.createElement(`tbody`),this.#n.setAttribute(`part`,`body`),this.#e.append(this.#t,this.#n);for(let t of e)t instanceof HTMLElement&&t.getAttribute(`slot`)===`head`?this.#t.appendChild(t):this.#n.appendChild(t);this.#a(),this.appendChild(this.#e)}#a(){if(!this.#r)return;let e=this.#t.querySelector(`tr`);if(e&&!e.hasAttribute(`data-slicc-generated`))return;let t=this.headers;if(t.length===0){this.#t.replaceChildren();return}let n=j(`tr`,{"data-slicc-generated":``});for(let e of t)n.append(j(`th`,null,e));this.#t.replaceChildren(n)}});function tt(e){if(typeof window>`u`||!window.location)return null;try{return new URLSearchParams(window.location.search).get(e)}catch{return null}}function nt(e,t,n={}){if(!(typeof window>`u`||!window.history?.replaceState))try{let r=new URL(window.location.href),i=r.searchParams.get(e);if(i===t||i===null&&(t===null||t===``))return;t==null||t===``?r.searchParams.delete(e):r.searchParams.set(e,t),n.push?window.history.pushState(window.history.state,``,r):window.history.replaceState(window.history.state,``,r)}catch{}}var rt=`
|
|
743
743
|
slicc-chat-thread {
|
|
744
744
|
flex: 1 1 auto;
|
|
745
745
|
display: block;
|
|
@@ -837,7 +837,7 @@ slicc-chat-thread[open] > .slicc-thread__inner {
|
|
|
837
837
|
padding: 16px 14px;
|
|
838
838
|
}
|
|
839
839
|
}
|
|
840
|
-
`,
|
|
840
|
+
`,it=`slicc-chat-thread-style`,at=120;function ot(e){if(e.getElementById(it))return;let t=e.createElement(`style`);t.id=it,t.textContent=rt,(e.head??e.documentElement).appendChild(t)}A(`slicc-chat-thread`,class e extends HTMLElement{static observedAttributes=[`open`,`context`,`accent`,`url-state`];#e;#t=!1;#n=null;#r=null;#i=null;#a=!1;#o=!1;#s=0;#c=null;#l=null;#u=null;#d=null;#f=null;#p=()=>{this.#d=null,this.#f=performance.now(),nt(`at`,String(Math.round(this.scrollTop)))};#m=()=>{if(!this.urlState)return;let e=this.#f==null?at:performance.now()-this.#f;if(e>=at){this.#d!=null&&clearTimeout(this.#d),this.#p();return}this.#d??=setTimeout(this.#p,at-e)};#h=()=>{if(!this.urlState)return;let e=tt(`ctx`);if(e&&e!==this.context)this.dispatchEvent(new CustomEvent(`slicc-url-context`,{bubbles:!0,composed:!0,detail:{context:e}}));else{let e=tt(`at`);e!=null&&(this.scrollTop=Number.parseInt(e,10)||0)}};#g=null;#_=new Map;connectedCallback(){ot(this.ownerDocument),this.#E(),this.#T(),this.#b(),this.scrollToBottom(),this.urlState&&(this.#r=tt(`at`),this.#i=tt(`ctx`),this.addEventListener(`scroll`,this.#m,{passive:!0}),window.addEventListener(`popstate`,this.#h))}disconnectedCallback(){this.#n&&=(this.#e?.removeEventListener(`click`,this.#n),null),this.removeEventListener(`scroll`,this.#m),window.removeEventListener(`popstate`,this.#h),this.#d!=null&&(clearTimeout(this.#d),this.#d=null),this.#f=null,this.#u?.disconnect(),this.#u=null,this.#C()}attributeChangedCallback(e,t,n){t!==n&&(e===`accent`&&this.#t&&this.#T(),e===`open`&&this.#t&&this.isConnected&&this.#x(),e===`context`&&this.urlState&&n!=null&&this.isConnected&&(n!==this.#i&&(this.#r=null),nt(`ctx`,n,{push:!0})))}get urlState(){return this.hasAttribute(`url-state`)}set urlState(e){this.toggleAttribute(`url-state`,e)}get urlContext(){return this.urlState?tt(`ctx`):null}get open(){return this.hasAttribute(`open`)}set open(e){e?this.setAttribute(`open`,``):this.removeAttribute(`open`)}get context(){return this.getAttribute(`context`)}set context(e){e==null?this.removeAttribute(`context`):this.setAttribute(`context`,e)}get accent(){return this.getAttribute(`accent`)}set accent(e){e==null?this.removeAttribute(`accent`):this.setAttribute(`accent`,e)}get inner(){return this.#E(),this.#e}switchContext(e){this.#E();let t=this.context;if(e===t)return;t!=null&&this.#_.set(t,this.#w());let n=this.#_.get(e);this.#e.replaceChildren(...n?Array.from(n.cloneNode(!0).childNodes):[]),this.context=e,this.removeAttribute(`has-new`),this.dispatchEvent(new CustomEvent(`slicc-context-change`,{bubbles:!0,composed:!0,detail:{context:e,previous:t}})),this.scrollToBottom()}append(...e){this.#E(),e.length>0&&(this.#r=null),this.#e.append(...e),this.requestFollow()}static FOLLOW_SLACK=80;#v(){return this.scrollHeight-this.scrollTop-this.clientHeight<=e.FOLLOW_SLACK}requestFollow(){this.#E(),this.#a?(this.#S(this.scrollHeight),this.removeAttribute(`has-new`)):this.setAttribute(`has-new`,``)}#y=()=>{if(this.#o&&Math.abs(this.scrollTop-this.#s)<=1){this.#C();return}this.#C(),this.#a=this.#v(),this.#a&&this.removeAttribute(`has-new`)};replaceContent(...e){this.#E(),this.#e.replaceChildren(...e),this.removeAttribute(`has-new`),this.scrollToBottom();let t=this.#r;t!=null&&e.length>0&&requestAnimationFrame(()=>{this.#r===t&&(this.#a=!1,this.#S(Number.parseInt(t,10)||0),this.#a=this.#v())})}scrollToBottom(){this.#a=!0,this.removeAttribute(`has-new`),this.#S(this.scrollHeight)}#b(){this.#u?.disconnect(),typeof ResizeObserver==`function`&&(this.#u=new ResizeObserver(()=>this.#x()),this.#u.observe(this.#e))}#x(){if(!this.#a)return;let t=this.#s-this.scrollTop;this.#o&&t>e.FOLLOW_SLACK||this.#S(this.scrollHeight)}#S(e){this.#o=!0,this.scrollTop=e,this.#s=this.scrollTop,this.#c!=null&&cancelAnimationFrame(this.#c),this.#l!=null&&clearTimeout(this.#l),`onscrollend`in HTMLElement.prototype?this.#l=setTimeout(()=>this.#C(),100):this.#c=requestAnimationFrame(()=>this.#C())}#C(){this.#o=!1,this.#c!=null&&cancelAnimationFrame(this.#c),this.#c=null,this.#l!=null&&clearTimeout(this.#l),this.#l=null}#w(){let e=this.ownerDocument.createDocumentFragment();for(let t of Array.from(this.#e.childNodes))e.appendChild(t.cloneNode(!0));return e}#T(){let e=this.accent;e?this.style.setProperty(`--ctx`,e):this.style.removeProperty(`--ctx`)}#E(){if(this.#t)return;this.#t=!0;let e=this.querySelector(`:scope > .slicc-thread__inner`);if(e instanceof HTMLElement)this.#e=e;else{let e=Array.from(this.childNodes);this.#e=this.ownerDocument.createElement(`div`),this.#e.className=`slicc-thread__inner`,this.#e.setAttribute(`part`,`inner`);for(let t of e)this.#e.appendChild(t);this.appendChild(this.#e)}this.#g=this.ownerDocument.createElement(`div`),this.#g.className=`slicc-thread__follow`;let t=this.ownerDocument.createElement(`button`);t.type=`button`;let r=n(`chevron-down`,{size:14,strokeWidth:2});t.append(`New messages`,r),t.addEventListener(`click`,()=>{this.scrollToBottom()}),this.#g.append(t),this.appendChild(this.#g),this.addEventListener(`scroll`,this.#y,{passive:!0}),this.addEventListener(`scrollend`,()=>this.#C(),{passive:!0}),this.#n=e=>{let t=e.target;t instanceof HTMLElement&&this.dispatchEvent(new CustomEvent(`slicc-thread-action`,{bubbles:!0,composed:!0,detail:{target:t}}))},this.#e.addEventListener(`click`,this.#n)}});var st=M(`
|
|
841
841
|
:host {
|
|
842
842
|
display: flex;
|
|
843
843
|
align-items: center;
|
|
@@ -875,7 +875,7 @@ code {
|
|
|
875
875
|
overflow-wrap: anywhere;
|
|
876
876
|
word-break: break-word;
|
|
877
877
|
}
|
|
878
|
-
`),
|
|
878
|
+
`),ct=[`feed`,`scoop`,`drop`,`sprinkle`],lt={feed:`arrow-right`,scoop:`circle-plus`,drop:`circle-check`,sprinkle:`sparkles`},F={feed:`Delegated to`,scoop:`Spun up`,drop:`Wrapped up`,sprinkle:``},I={feed_scoop:`Delegated to`,scoop_scoop:`Spun up`,drop_scoop:`Wrapped up`,"sprinkle-opened":`Opened`};function ut(e){return I[e]??e}function dt(e){return ct.includes(e??``)?e:`feed`}function ft(e){return e.split(`,`).map(e=>e.trim()).filter(e=>e.length>0)}A(`slicc-delegation-line`,class extends HTMLElement{static observedAttributes=[`kind`,`hue`,`verb`,`scoop`,`label`,`args`,`source`];#e;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[st]}connectedCallback(){this.#t()}attributeChangedCallback(){this.isConnected&&this.#t()}get kind(){return dt(this.getAttribute(`kind`))}set kind(e){this.setAttribute(`kind`,dt(e))}get hue(){return this.getAttribute(`hue`)}set hue(e){e==null?this.removeAttribute(`hue`):this.setAttribute(`hue`,e)}get verb(){return this.getAttribute(`verb`)}set verb(e){e==null?this.removeAttribute(`verb`):this.setAttribute(`verb`,e)}get scoop(){return this.getAttribute(`scoop`)}set scoop(e){e==null?this.removeAttribute(`scoop`):this.setAttribute(`scoop`,e)}get label(){return this.getAttribute(`label`)}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}get args(){return this.getAttribute(`args`)}set args(e){e==null?this.removeAttribute(`args`):this.setAttribute(`args`,e)}get source(){return this.hasAttribute(`source`)}set source(e){this.toggleAttribute(`source`,e)}#t(){let e=this.kind,t=this.hue,r=this.verb,i=r==null?F[e]:ut(r),a=this.scoop,o=this.label,s=this.args?ft(this.args):[];t?this.style.setProperty(`--c`,t):this.style.removeProperty(`--c`);let c=j(`span`,{class:`darrow`,part:`arrow`},j(`slot`,{name:`arrow`},n(lt[e],{size:13}))),l=j(`slot`,{name:`label`});i&&l.append(j(`span`,{class:`verb`},i)),a&&l.append(j(`b`,{class:`scoop`,part:`scoop`,style:t?`color:${t}`:void 0},a)),o&&l.append(j(`span`,{class:`prose`},o));let u=j(`span`,{class:`label`,part:`label`},l),d=j(`slot`,{name:`args`});for(let e of s)d.append(j(`code`,{part:`code`},e));this.#e.replaceChildren(c,u,d)}});var pt=M(`
|
|
879
879
|
:host {
|
|
880
880
|
display: block;
|
|
881
881
|
border: 1px solid var(--line);
|
|
@@ -901,7 +901,7 @@ code {
|
|
|
901
901
|
/* palette chips carry inline-style light backgrounds — tone them down for dark mode */
|
|
902
902
|
:host-context(.dark) .ch,
|
|
903
903
|
:host-context([data-theme="dark"]) .ch { filter: brightness(.55) saturate(.85); }
|
|
904
|
-
`);
|
|
904
|
+
`);A(`slicc-palette-cell`,class extends HTMLElement{static observedAttributes=[`color`,`label`,`group`,`selected`];#e;#t=null;#n=null;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[pt]}connectedCallback(){this.hasAttribute(`tabindex`)||this.setAttribute(`tabindex`,`0`),this.setAttribute(`role`,`button`),this.#o(),this.#i()}disconnectedCallback(){this.#a()}attributeChangedCallback(){this.isConnected&&this.#o()}get color(){return this.getAttribute(`color`)}set color(e){e==null?this.removeAttribute(`color`):this.setAttribute(`color`,e)}get label(){return this.getAttribute(`label`)}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}get group(){return this.getAttribute(`group`)}set group(e){e==null?this.removeAttribute(`group`):this.setAttribute(`group`,e)}get selected(){return this.hasAttribute(`selected`)}set selected(e){this.toggleAttribute(`selected`,e)}select(){this.#r(),this.selected=!0,this.dispatchEvent(new CustomEvent(`palette-select`,{bubbles:!0,composed:!0,detail:{color:this.color,label:this.label,group:this.group}}))}#r(){let e=this.group;if(!e)return;let t=this.getRootNode().querySelectorAll(`slicc-palette-cell[group="${CSS.escape(e)}"][selected]`);for(let e of t)e!==this&&(e.selected=!1)}#i(){this.#t||(this.#t=()=>this.select(),this.#n=e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),this.select())},this.addEventListener(`click`,this.#t),this.addEventListener(`keydown`,this.#n))}#a(){this.#t&&this.removeEventListener(`click`,this.#t),this.#n&&this.removeEventListener(`keydown`,this.#n),this.#t=null,this.#n=null}#o(){this.setAttribute(`aria-pressed`,this.selected?`true`:`false`);let e=this.color??`transparent`,t=this.label,n=j(`div`,{class:`ch`,part:`chip`,style:`background:${e}`}),r=j(`div`,{class:`cl`,part:`label`},t??j(`slot`));this.#e.replaceChildren(n,r)}});var mt=[`#f43f5e`,`#f59e0b`,`#06b6d4`,`#8b5cf6`,`#ec4899`,`#22c55e`],ht=46,gt=72,_t=6.283185;function vt(e,t){return e+Math.random()*(t-e)}var L=[{color:`#faf6f1`,label:`paper`},{color:`#fff7ed`,label:`cream`},{color:`#f5f3ff`,label:`lilac`},{color:`#fef2f2`,label:`blush`}],yt=[{color:`#8b5cf6`,label:`violet`},{color:`#f43f5e`,label:`rose`},{color:`#06b6d4`,label:`cyan`},{color:`#ef7000`,label:`cone`}],R=0,bt=M(`
|
|
905
905
|
:host {
|
|
906
906
|
position: relative;
|
|
907
907
|
display: block;
|
|
@@ -988,7 +988,7 @@ canvas.sprk {
|
|
|
988
988
|
@media (prefers-reduced-motion: reduce) {
|
|
989
989
|
canvas.sprk { display: none; }
|
|
990
990
|
}
|
|
991
|
-
`);
|
|
991
|
+
`);A(`slicc-dip`,class extends HTMLElement{static observedAttributes=[`name`,`hue`,`prompt`];#e;#t=`d${++R}`;#n=null;#r=null;#i=0;#a=null;#o=[];#s=0;#c=0;#l=-999;#u=-999;#d=null;#f=null;#p=null;#m=null;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[bt]}connectedCallback(){this.#v(),this.#b(),this.#w()}disconnectedCallback(){this.#T(),this.#x()}attributeChangedCallback(){this.isConnected&&(this.#v(),this.#b(),this.#w())}get name(){return this.getAttribute(`name`)??`palette.shtml`}set name(e){e==null?this.removeAttribute(`name`):this.setAttribute(`name`,e)}get hue(){return this.getAttribute(`hue`)}set hue(e){e==null?this.removeAttribute(`hue`):this.setAttribute(`hue`,e)}get prompt(){return this.getAttribute(`prompt`)}set prompt(e){e==null?this.removeAttribute(`prompt`):this.setAttribute(`prompt`,e)}get selectedCanvas(){return this.#h(`canvas:${this.#t}`)}get selectedAccent(){return this.#h(`accent:${this.#t}`)}#h(e){let t=this.querySelector(`slicc-palette-cell[group="${CSS.escape(e)}"][selected]`);return t?{color:t.getAttribute(`color`)??``,label:t.getAttribute(`label`)??``}:null}#g(e,t,n){let r=e.startsWith(`canvas`)?`canvas`:`accent`;if(!this.querySelector(`slicc-palette-cell[slot="${r}"]`))for(let i of t){let t=this.ownerDocument.createElement(`slicc-palette-cell`);t.setAttribute(`slot`,r),t.setAttribute(`color`,i.color),t.setAttribute(`label`,i.label),t.setAttribute(`group`,e),i.label===n&&t.setAttribute(`selected`,``),this.appendChild(t)}}#_(){return[document.createTextNode(`Tune the hero’s `),j(`b`,null,`canvas`),document.createTextNode(` & `),j(`b`,null,`accent`),document.createTextNode(`, then apply:`)]}#v(){let e=this.hue,t=e?`--c:${e}`:void 0,r=j(`slot`,{name:`prompt`});this.prompt?r.append(this.prompt):r.append(...this.#_()),this.#e.replaceChildren(j(`canvas`,{class:`sprk`,part:`field`,"aria-hidden":`true`}),j(`div`,{class:`dh`,part:`header`,style:t},j(`span`,{class:`sg`,part:`glyph`},n(`sparkles`,{size:12})),j(`span`,{class:`nm`,part:`name`},this.name),j(`span`,{class:`tag`,part:`tag`},`sprinkle · dip`)),j(`div`,{class:`dbody`,part:`body`,style:t},j(`p`,{class:`dprompt`,part:`prompt`},r),j(`div`,{class:`pgrid canvas`,part:`grid-canvas`},j(`slot`,{name:`canvas`})),j(`div`,{class:`pgrid accent`,part:`grid-accent`},j(`slot`,{name:`accent`})),j(`div`,{class:`dfoot`},j(`button`,{class:`dapply`,part:`apply`,type:`button`},`Apply to hero →`),j(`span`,{class:`dnote`,part:`note`})))),this.#g(`canvas:${this.#t}`,L,`paper`),this.#g(`accent:${this.#t}`,yt,`cone`),this.#y()}#y(){let e=this.#e.querySelector(`.dnote`);e&&(e.textContent=`${this.selectedCanvas?.label??`paper`} · ${this.selectedAccent?.label??`violet`}`)}#b(){this.#p||(this.#p=()=>this.#y(),this.addEventListener(`palette-select`,this.#p)),this.#m||=()=>this.#S(),this.#e.querySelector(`.dapply`)?.addEventListener(`click`,this.#m)}#x(){this.#p&&=(this.removeEventListener(`palette-select`,this.#p),null),this.#m=null}#S(){this.#y(),this.dispatchEvent(new CustomEvent(`slicc-dip-apply`,{bubbles:!0,composed:!0,detail:{canvas:this.selectedCanvas,accent:this.selectedAccent}}))}#C(){return typeof matchMedia==`function`&&matchMedia(`(prefers-reduced-motion: reduce)`).matches}#w(){if(this.#T(),this.#C())return;let e=this.#e.querySelector(`canvas.sprk`),t=e?.getContext(`2d`)??null;!e||!t||(this.#n=e,this.#r=t,this.#o=[],this.#E(),typeof ResizeObserver==`function`&&(this.#a=new ResizeObserver(()=>this.#E()),this.#a.observe(this)),this.#d=e=>{let t=this.getBoundingClientRect();this.#l=e.clientX-t.left,this.#u=e.clientY-t.top},this.#f=()=>{this.#l=-999,this.#u=-999},this.addEventListener(`pointermove`,this.#d),this.addEventListener(`pointerleave`,this.#f),this.#i=requestAnimationFrame(()=>this.#O()))}#T(){this.#i&&cancelAnimationFrame(this.#i),this.#i=0,this.#a?.disconnect(),this.#a=null,this.#d&&this.removeEventListener(`pointermove`,this.#d),this.#f&&this.removeEventListener(`pointerleave`,this.#f),this.#d=null,this.#f=null}#E(){let e=this.#n,t=this.#r;if(!e||!t)return;let n=this.getBoundingClientRect(),r=Math.min(typeof devicePixelRatio==`number`?devicePixelRatio:1,2);if(this.#s=n.width,this.#c=n.height||90,e.width=Math.max(1,Math.round(this.#s*r)),e.height=Math.max(1,Math.round(this.#c*r)),t.setTransform(r,0,0,r,0,0),!this.#o.length)for(let e=0;e<ht;e++)this.#o.push({x:vt(0,this.#s),y:vt(0,this.#c),vx:vt(-.1,.1),vy:vt(-.08,.08),rot:vt(0,_t),rv:vt(-.014,.014),s:vt(1.2,2.2),col:mt[e%mt.length]})}#D(e,t,n,r,i){let a=this.#r;a&&(a.roundRect?(a.beginPath(),a.roundRect(e,t,n,r,i)):(a.beginPath(),a.moveTo(e+i,t),a.arcTo(e+n,t,e+n,t+r,i),a.arcTo(e+n,t+r,e,t+r,i),a.arcTo(e,t+r,e,t,i),a.arcTo(e,t,e+n,t,i),a.closePath()))}#O(){let e=this.#r;if(e){e.clearRect(0,0,this.#s,this.#c);for(let t of this.#o){let n=t.x-this.#l,r=t.y-this.#u,i=n*n+r*r;if(i<5184){let e=Math.sqrt(i)||1,a=(gt-e)/gt*.5;t.vx+=n/e*a,t.vy+=r/e*a}t.vx*=.95,t.vy*=.95,t.x+=t.vx+.04,t.y+=t.vy,t.rot+=t.rv,t.x<-6&&(t.x=this.#s+6),t.x>this.#s+6&&(t.x=-6),t.y<-6&&(t.y=this.#c+6),t.y>this.#c+6&&(t.y=-6);let a=t.s*4,o=t.s*1.55;e.save(),e.translate(t.x,t.y),e.rotate(t.rot),e.globalAlpha=.5,e.fillStyle=t.col,this.#D(-a/2,-o/2,a,o,o/2),e.fill(),e.globalAlpha=.85,e.fillStyle=`#fff`,this.#D(-a/2+o*.3,-o*.34,a-o*.6,o*.3,o*.15),e.fill(),e.restore(),e.globalAlpha=1}this.#i=requestAnimationFrame(()=>this.#O())}}});var xt=14,St=12,Ct=`Something went wrong`,wt={retry:`Try again`,settings:`Open Settings`,"change-model":`Change model`,login:`Log in again`},Tt={retry:`rotate-ccw`,settings:`settings`,"change-model":`sparkles`,login:`log-in`},Et=M(`
|
|
992
992
|
:host{
|
|
993
993
|
/* Error cards sit in the assistant column (left-aligned). Tokens default to
|
|
994
994
|
the light palette and flip in dark mode via the library's outer scopes
|
|
@@ -1054,7 +1054,7 @@ canvas.sprk {
|
|
|
1054
1054
|
.retry:hover{filter:brightness(1.08);}
|
|
1055
1055
|
.retry:focus-visible{outline:2px solid color-mix(in srgb,var(--err-btn-bg) 60%,var(--ink));outline-offset:2px;}
|
|
1056
1056
|
.retry svg{display:block;}
|
|
1057
|
-
`);
|
|
1057
|
+
`);A(`slicc-error-card`,class extends HTMLElement{static observedAttributes=[`label`,`message`,`button-label`,`message-id`,`action`,`no-action`,`theme`];#e;#t=null;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[Et]}connectedCallback(){this.#n()}disconnectedCallback(){this.#i()}attributeChangedCallback(){this.isConnected&&this.#n()}get label(){return this.getAttribute(`label`)}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}get message(){return this.getAttribute(`message`)}set message(e){e==null?this.removeAttribute(`message`):this.setAttribute(`message`,e)}get buttonLabel(){return this.getAttribute(`button-label`)}set buttonLabel(e){e==null?this.removeAttribute(`button-label`):this.setAttribute(`button-label`,e)}get messageId(){return this.getAttribute(`message-id`)}set messageId(e){e==null?this.removeAttribute(`message-id`):this.setAttribute(`message-id`,e)}get action(){let e=this.getAttribute(`action`);return e===`settings`||e===`change-model`||e===`login`?e:`retry`}set action(e){e==null?this.removeAttribute(`action`):this.setAttribute(`action`,e)}get noAction(){return this.hasAttribute(`no-action`)}set noAction(e){this.toggleAttribute(`no-action`,e)}get theme(){let e=this.getAttribute(`theme`);return e===`light`||e===`dark`?e:null}set theme(e){e==null?this.removeAttribute(`theme`):this.setAttribute(`theme`,e)}retry(){this.dispatchEvent(new CustomEvent(`slicc-error-retry`,{detail:{messageId:this.getAttribute(`message-id`)??null},bubbles:!0,composed:!0}))}openSettings(){this.dispatchEvent(new CustomEvent(`slicc-error-open-settings`,{detail:{messageId:this.getAttribute(`message-id`)??null},bubbles:!0,composed:!0}))}changeModel(){this.dispatchEvent(new CustomEvent(`slicc-error-change-model`,{detail:{messageId:this.getAttribute(`message-id`)??null},bubbles:!0,composed:!0}))}login(){this.dispatchEvent(new CustomEvent(`slicc-error-login`,{detail:{messageId:this.getAttribute(`message-id`)??null},bubbles:!0,composed:!0}))}#n(){let e=this.action,t=this.label??Ct,r=this.message,i=this.buttonLabel??wt[e],a=Tt[e],o=j(`span`,{class:`ic`,part:`icon`,"aria-hidden":!0});o.append(n(`triangle-alert`,{size:xt}));let s=j(`div`,{class:`eh`,part:`header`},o,j(`span`,{class:`lbl`,part:`label`},t)),c=j(`div`,{class:`eb`,part:`body`},r??j(`slot`)),l=j(`button`,{type:`button`,class:`retry`,part:`button`,"aria-label":i},n(a,{size:St}),i),u=[s,c];this.noAction||u.push(j(`div`,{class:`foot`},l));let d=j(`div`,{class:`err`,part:`card`},...u);this.#e.replaceChildren(d),this.#r()}#r(){this.#i();let e=this.#e.querySelector(`.retry`);if(!e)return;let t=this.action;this.#t=()=>{t===`settings`?this.openSettings():t===`change-model`?this.changeModel():t===`login`?this.login():this.retry()},e.addEventListener(`click`,this.#t)}#i(){let e=this.#e.querySelector(`.retry`);e&&this.#t&&e.removeEventListener(`click`,this.#t),this.#t=null}});var Dt=9,Ot=3,kt=45,At=M(`
|
|
1058
1058
|
:host {
|
|
1059
1059
|
display: inline-flex;
|
|
1060
1060
|
align-items: center;
|
|
@@ -1135,7 +1135,7 @@ canvas.sprk {
|
|
|
1135
1135
|
@media (prefers-reduced-motion: reduce) {
|
|
1136
1136
|
:host([blink]) .eye { animation: none; }
|
|
1137
1137
|
}
|
|
1138
|
-
`);
|
|
1138
|
+
`);A(`slicc-googly-eyes`,class extends HTMLElement{static observedAttributes=[`inverted`,`tracking`,`blink`,`eyes`,`size`];#e;#t=[];#n=null;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[At]}connectedCallback(){this.#r(),this.#i()}disconnectedCallback(){this.#o()}attributeChangedCallback(e,t,n){this.isConnected&&(e===`size`||e===`eyes`?(this.#r(),this.#i()):e===`tracking`&&this.#i())}get inverted(){return this.hasAttribute(`inverted`)}set inverted(e){this.toggleAttribute(`inverted`,e)}get tracking(){return this.getAttribute(`tracking`)!==`off`}set tracking(e){e?this.setAttribute(`tracking`,`on`):this.setAttribute(`tracking`,`off`)}get blink(){return this.hasAttribute(`blink`)}set blink(e){this.toggleAttribute(`blink`,e)}get eyes(){return this.getAttribute(`eyes`)===`dead`?`dead`:`open`}set eyes(e){this.setAttribute(`eyes`,e===`dead`?`dead`:`open`)}get size(){let e=Number.parseFloat(this.getAttribute(`size`)??``);return Number.isFinite(e)&&e>0?e:Dt}set size(e){this.setAttribute(`size`,String(e))}#r(){let e=this.size,t=1.3/Dt*e,n=this.eyes===`dead`,r=e=>j(`span`,{class:`eye`,part:e},n?j(`span`,{class:`x`,"aria-hidden":`true`},`×`):null),i=j(`span`,{class:`eyes`,part:`eyes`,style:`--_eye:${e}px;--_border:${t}px`,role:`img`,"aria-label":n?`dead eyes`:`googly eyes`},r(`eye eye-left`),j(`slot`),r(`eye eye-right`));this.#e.replaceChildren(i),this.#t=Array.from(this.#e.querySelectorAll(`.eye`)),this.#s()}#i(){this.tracking&&this.eyes===`open`?this.#a():(this.#o(),this.#s())}#a(){this.#n||(this.#n=e=>this.#c(e),document.addEventListener(`mousemove`,this.#n))}#o(){this.#n&&=(document.removeEventListener(`mousemove`,this.#n),null)}#s(){for(let e of this.#t)e.style.setProperty(`--px`,`0px`),e.style.setProperty(`--py`,`0px`)}#c(e){for(let t of this.#t){let n=t.getBoundingClientRect(),r=n.left+n.width/2,i=n.top+n.height/2,a=Math.atan2(e.clientY-i,e.clientX-r),o=Math.min(Ot,Math.hypot(e.clientX-r,e.clientY-i)/kt);t.style.setProperty(`--px`,`${(Math.cos(a)*o).toFixed(2)}px`),t.style.setProperty(`--py`,`${(Math.sin(a)*o).toFixed(2)}px`)}}});var jt=M(`
|
|
1139
1139
|
:host{display:block;font-family:var(--ui);}
|
|
1140
1140
|
:host([hidden]){display:none;}
|
|
1141
1141
|
.handoff{border:1px solid var(--line);border-radius:13px;padding:13px 15px;margin:2px 0 18px;}
|
|
@@ -1155,7 +1155,7 @@ canvas.sprk {
|
|
|
1155
1155
|
.opened .sg{width:20px;height:20px;border-radius:6px;display:grid;place-items:center;color:#fff;background:var(--rainbow);flex:0 0 auto;}
|
|
1156
1156
|
.opened .sg svg{display:block;}
|
|
1157
1157
|
.opened b{color:var(--ink);font-weight:600;}
|
|
1158
|
-
`),
|
|
1158
|
+
`),Mt=`Handoff request from`;A(`slicc-handoff-card`,class extends HTMLElement{static observedAttributes=[`variant`,`name`,`pre`,`text`,`eyes`];#e;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[jt]}connectedCallback(){this.#t()}attributeChangedCallback(){this.isConnected&&this.#t()}get variant(){return this.getAttribute(`variant`)===`opened`?`opened`:`handoff`}set variant(e){this.setAttribute(`variant`,e===`opened`?`opened`:`handoff`)}get name(){return this.getAttribute(`name`)}set name(e){e==null?this.removeAttribute(`name`):this.setAttribute(`name`,e)}get pre(){return this.getAttribute(`pre`)}set pre(e){e==null?this.removeAttribute(`pre`):this.setAttribute(`pre`,e)}get text(){return this.getAttribute(`text`)}set text(e){e==null?this.removeAttribute(`text`):this.setAttribute(`text`,e)}get eyes(){return this.getAttribute(`eyes`)===`dead`?`dead`:`open`}set eyes(e){this.setAttribute(`eyes`,e===`dead`?`dead`:`open`)}#t(){this.variant===`opened`?this.#i():this.#r()}#n(){let e=this.text;return e==null?j(`slot`):document.createTextNode(e)}#r(){let e=this.pre??Mt,t=this.name,r=j(`slicc-googly-eyes`,{class:`eyes`});this.eyes===`dead`&&r.setAttribute(`eyes`,`dead`);let i=j(`div`,{class:`top`,part:`top`},j(`span`,{class:`av`,part:`avatar`},r),j(`span`,{class:`lbl2`,part:`label`},j(`span`,{class:`hand`,part:`hand`,"aria-hidden":`true`},n(`hand`,{size:13})),j(`span`,{class:`pre`},e),` `,t==null?null:j(`b`,{part:`name`},t))),a=j(`p`,{part:`text`},this.#n());this.#e.replaceChildren(j(`div`,{class:`handoff`,part:`card`},i,a))}#i(){let e=this.name,t=j(`span`,{class:`sg`,part:`glyph`,"aria-hidden":`true`},n(`sparkles`,{size:12})),r=j(`span`,{part:`text`},e==null?null:j(`b`,{part:`name`},e),e==null?null:` `,this.#n());this.#e.replaceChildren(j(`div`,{class:`opened`,part:`card`},t,r))}});var Nt=14,Pt=`event`,Ft={webhook:`webhook`,cron:`clock`,workflow:`workflow`,bash:`square-terminal`,"session-reload":`rotate-ccw`,navigate:`compass`,discovery:`radar`,upgrade:`circle-arrow-up`,sprinkle:`sparkles`,fswatch:`eye`,"scoop-notify":`bell-ring`,"scoop-idle":`moon`,"scoop-wait":`hourglass`,"sudo-request":`key-round`},It=`bell`;function Lt(e){return e&&Ft[e.toLowerCase()]||It}var Rt={confirmed:`circle-check`,dismissed:`circle-x`},zt=M(`
|
|
1159
1159
|
:host{
|
|
1160
1160
|
/* Licks are right-aligned in the chat column (mirroring the lickIn slide-in
|
|
1161
1161
|
from the right): the host is a full-width flex row that pushes the card to
|
|
@@ -1262,7 +1262,7 @@ canvas.sprk {
|
|
|
1262
1262
|
:host([collapsed]) .lb{display:none;}
|
|
1263
1263
|
|
|
1264
1264
|
@keyframes lickIn{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}
|
|
1265
|
-
`),
|
|
1265
|
+
`),Bt=`
|
|
1266
1266
|
slicc-lick-card pre{
|
|
1267
1267
|
white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;
|
|
1268
1268
|
max-width:100%;overflow-x:auto;margin:6px 0;
|
|
@@ -1273,7 +1273,7 @@ slicc-lick-card a{overflow-wrap:anywhere;}
|
|
|
1273
1273
|
slicc-lick-card img{max-width:100%;height:auto;}
|
|
1274
1274
|
slicc-lick-card table{display:block;max-width:100%;width:fit-content;overflow-x:auto;}
|
|
1275
1275
|
slicc-lick-card > *{min-width:0;max-width:100%;}
|
|
1276
|
-
`,
|
|
1276
|
+
`,Vt=`slicc-lick-card-slotted-style`;function Ht(e){if(e.getElementById(Vt))return;let t=e.createElement(`style`);t.id=Vt,t.textContent=Bt,(e.head??e.documentElement).appendChild(t)}var Ut=`·`;A(`slicc-lick-card`,class extends HTMLElement{static observedAttributes=[`kind`,`event-label`,`body`,`count`,`no-animate`,`collapsible`,`collapsed`,`theme`,`hue`,`state`];#e;#t=null;#n=null;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[zt]}connectedCallback(){Ht(this.ownerDocument),this.#r()}disconnectedCallback(){this.#a()}attributeChangedCallback(){this.isConnected&&this.#r()}get kind(){return this.getAttribute(`kind`)}set kind(e){e==null?this.removeAttribute(`kind`):this.setAttribute(`kind`,e)}get eventLabel(){return this.getAttribute(`event-label`)}set eventLabel(e){e==null?this.removeAttribute(`event-label`):this.setAttribute(`event-label`,e)}get body(){return this.getAttribute(`body`)}set body(e){e==null?this.removeAttribute(`body`):this.setAttribute(`body`,e)}get count(){let e=Number.parseInt(this.getAttribute(`count`)??``,10);return Number.isFinite(e)&&e>0?e:1}set count(e){e>1?this.setAttribute(`count`,String(e)):this.removeAttribute(`count`)}get noAnimate(){return this.hasAttribute(`no-animate`)}set noAnimate(e){this.toggleAttribute(`no-animate`,e)}get collapsible(){return this.hasAttribute(`collapsible`)}set collapsible(e){this.toggleAttribute(`collapsible`,e)}get collapsed(){return this.hasAttribute(`collapsed`)}set collapsed(e){this.toggleAttribute(`collapsed`,e)}get theme(){let e=this.getAttribute(`theme`);return e===`light`||e===`dark`?e:null}set theme(e){e==null?this.removeAttribute(`theme`):this.setAttribute(`theme`,e)}get state(){let e=this.getAttribute(`state`);return e===`confirmed`||e===`dismissed`?e:`pending`}set state(e){e==null||e===`pending`?this.removeAttribute(`state`):this.setAttribute(`state`,e)}toggle(){this.collapsible&&(this.collapsed=!this.collapsed,this.dispatchEvent(new CustomEvent(`slicc-lick-toggle`,{detail:{collapsed:this.collapsed},bubbles:!0,composed:!0})))}#r(){let e=this.kind??``,t=this.count,r=this.getAttribute(`hue`);r?(this.style.setProperty(`--lick-pill`,r),this.style.setProperty(`--lick-pill-ink`,`#fff`)):(this.style.removeProperty(`--lick-pill`),this.style.removeProperty(`--lick-pill-ink`));let i=this.eventLabel??Pt,a=t>1?`${i} ×${t}`:i,o=this.body,s=this.collapsible,c=e?`lick ${Ut} ${e}`:`lick ${Ut}`,l=j(`span`,{class:`bell`,part:`bell`,"aria-hidden":!0});l.append(n(Lt(e),{size:Nt}));let u={class:`lh`,part:`header`};s&&(u.tabindex=`0`,u.role=`button`,u[`aria-expanded`]=this.collapsed?`false`:`true`);let d=j(`div`,u,l,` `,j(`span`,{class:`kind`,part:`kind`},`${c} `),j(`span`,{class:`lk`,part:`event`},a)),f=this.state;if(f!==`pending`){let e=j(`span`,{class:`status`,part:`status`,"aria-hidden":!0});e.append(n(Rt[f],{size:Nt})),d.append(e)}let p=j(`div`,{class:`lick`,part:`card`},d,j(`div`,{class:`lb`,part:`body`},o??j(`slot`)));this.#e.replaceChildren(p),this.#i()}#i(){if(this.#a(),!this.collapsible)return;let e=this.#e.querySelector(`.lh`);e&&(this.#t=()=>this.toggle(),this.#n=e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),this.toggle())},e.addEventListener(`click`,this.#t),e.addEventListener(`keydown`,this.#n))}#a(){let e=this.#e.querySelector(`.lh`);e&&this.#t&&e.removeEventListener(`click`,this.#t),e&&this.#n&&e.removeEventListener(`keydown`,this.#n),this.#t=null,this.#n=null}});var Wt=`
|
|
1277
1277
|
slicc-tool-cluster {
|
|
1278
1278
|
display: block;
|
|
1279
1279
|
margin: -2px 0 16px;
|
|
@@ -1349,7 +1349,7 @@ slicc-tool-cluster[open] .slicc-cluster__body {
|
|
|
1349
1349
|
slicc-tool-cluster .slicc-cluster__body slicc-action-row {
|
|
1350
1350
|
margin-bottom: 4px;
|
|
1351
1351
|
}
|
|
1352
|
-
`,
|
|
1352
|
+
`,Gt=`slicc-tool-cluster-style`;function Kt(e){if(e.getElementById(Gt))return;let t=e.createElement(`style`);t.id=Gt,t.textContent=Wt,(e.head??e.documentElement).appendChild(t)}var qt=`A few quick steps`;A(`slicc-tool-cluster`,class extends HTMLElement{static observedAttributes=[`open`,`label`,`count`];#e;#t;#n;#r;#i=!1;#a=()=>{this.open=!this.open};connectedCallback(){Kt(this.ownerDocument),this.#o(),this.#s(),this.#e?.addEventListener(`click`,this.#a)}disconnectedCallback(){this.#e?.removeEventListener(`click`,this.#a)}attributeChangedCallback(e,t,n){t===n||!this.#i||(e===`open`?(this.#e.setAttribute(`aria-expanded`,String(n!==null)),this.dispatchEvent(new CustomEvent(`slicc-tool-cluster-toggle`,{bubbles:!0,composed:!0,detail:{open:n!==null}}))):this.#s())}get open(){return this.hasAttribute(`open`)}set open(e){this.toggleAttribute(`open`,e)}get label(){return this.getAttribute(`label`)??qt}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}get count(){let e=Number.parseInt(this.getAttribute(`count`)??``,10);return Number.isFinite(e)&&e>0?e:0}set count(e){e>0?this.setAttribute(`count`,String(e)):this.removeAttribute(`count`)}get body(){return this.#o(),this.#r}append(...e){this.#o(),this.#r.append(...e),this.#s()}#o(){if(this.#i)return;this.#i=!0;let e=Array.from(this.childNodes).filter(e=>!(e instanceof HTMLElement&&e.classList.contains(`slicc-cluster__head`))&&!(e instanceof HTMLElement&&e.classList.contains(`slicc-cluster__body`)));this.#e=this.ownerDocument.createElement(`button`),this.#e.type=`button`,this.#e.className=`slicc-cluster__head`,this.#e.setAttribute(`part`,`head`),this.#t=j(`span`,{class:`slicc-cluster__label`,part:`label`}),this.#n=j(`span`,{class:`slicc-cluster__count`,part:`count`}),Ee(this.#e,[j(`span`,{class:`slicc-cluster__ic`,part:`icon`},n(`layers`,{size:12})),this.#t,this.#n,j(`span`,{class:`slicc-cluster__chev`,part:`chevron`,"aria-hidden":`true`},`▸`)]),this.#r=this.ownerDocument.createElement(`div`),this.#r.className=`slicc-cluster__body`,this.#r.setAttribute(`part`,`body`);for(let t of e)this.#r.appendChild(t);this.replaceChildren(this.#e,this.#r),this.#e.addEventListener(`click`,this.#a)}#s(){if(!this.#i)return;this.#t.textContent=this.label;let e=this.count||this.#r.children.length;this.#n.textContent=e>0?`${e} steps`:``,this.#e.setAttribute(`aria-expanded`,String(this.open))}});var Jt=400,Yt=M(`
|
|
1353
1353
|
:host{position:fixed;inset:0;z-index:1000;display:none;}
|
|
1354
1354
|
:host([open]){display:block;}
|
|
1355
1355
|
.overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;cursor:pointer;}
|
|
@@ -1357,7 +1357,7 @@ slicc-tool-cluster .slicc-cluster__body slicc-action-row {
|
|
|
1357
1357
|
.overlay.visible .backdrop{opacity:1;}
|
|
1358
1358
|
.overlay.closing .backdrop{opacity:0;}
|
|
1359
1359
|
.image{position:absolute;border-radius:6px;box-shadow:0 20px 60px rgba(0,0,0,.4),0 8px 20px rgba(0,0,0,.3);max-width:90vw;max-height:90vh;object-fit:contain;transform-origin:center center;will-change:transform;transition:transform .35s cubic-bezier(.2,0,.13,1),border-radius .35s cubic-bezier(.2,0,.13,1);}
|
|
1360
|
-
`),
|
|
1360
|
+
`),Xt=null,Zt=class extends HTMLElement{#e;#t=null;#n=null;#r=null;#i=null;#a=!1;#o=null;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[Yt]}disconnectedCallback(){this.#l(),Xt===this&&(Xt=null)}get src(){return this.getAttribute(`src`)}set src(e){e==null?this.removeAttribute(`src`):this.setAttribute(`src`,e)}get isOpen(){return this.hasAttribute(`open`)}open(e,t){Xt&&Xt!==this&&Xt.#s(),this.#l(),this.#a=!1,this.src=e,this.setAttribute(`open`,``),Xt=this,this.#r=t??this;let n=document.createElement(`div`);n.className=`overlay`,n.setAttribute(`part`,`overlay`);let r=document.createElement(`div`);r.className=`backdrop`,r.setAttribute(`part`,`backdrop`),n.appendChild(r);let i=document.createElement(`img`);i.className=`image`,i.setAttribute(`part`,`image`),i.src=e,i.alt=`Image preview`,n.appendChild(i),this.#e.appendChild(n),this.#t=n,this.#n=i;let a=this.#r.getBoundingClientRect(),o=()=>{let e=window.innerWidth,t=window.innerHeight,r=e*.9,o=t*.9,s=i.naturalWidth||a.width*4,c=i.naturalHeight||a.height*4,l=Math.min(r/s,o/c,1),u=s*l,d=c*l,f=(e-u)/2,p=(t-d)/2,m=a.width/u,h=a.height/d,g=a.left+a.width/2,_=a.top+a.height/2,v=f+u/2,y=p+d/2,b=g-v,x=_-y;i.style.position=`absolute`,i.style.width=`${u}px`,i.style.height=`${d}px`,i.style.left=`${f}px`,i.style.top=`${p}px`,i.style.transform=`translate(${b}px, ${x}px) scale(${m}, ${h})`,i.style.borderRadius=`${6/Math.min(m,h)}px`,requestAnimationFrame(()=>{requestAnimationFrame(()=>{i.style.transform=`translate(0, 0) scale(1, 1)`,i.style.borderRadius=`6px`,n.classList.add(`visible`)})})};i.complete&&i.naturalWidth>0?o():(i.onload=()=>o(),i.onerror=()=>this.#s()),this.#i=e=>{e.key===`Escape`&&this.close()},n.addEventListener(`click`,()=>this.close()),document.addEventListener(`keydown`,this.#i),this.dispatchEvent(new CustomEvent(`slicc-image-preview-open`,{bubbles:!0,composed:!0,detail:{src:e}}))}close(){let e=this.#t,t=this.#n;if(this.#a||!e||!t||Xt!==this)return;this.#a=!0,e.classList.add(`closing`),e.classList.remove(`visible`);let n=this.#r,r=n?n.getBoundingClientRect():null;if(r&&r.width>0&&r.height>0){let e=t.getBoundingClientRect(),n=r.width/e.width,i=r.height/e.height,a=r.left+r.width/2,o=r.top+r.height/2,s=e.left+e.width/2,c=e.top+e.height/2,l=a-s,u=o-c;t.style.transform=`translate(${l}px, ${u}px) scale(${n}, ${i})`,t.style.borderRadius=`${6/Math.min(n,i)}px`}this.dispatchEvent(new CustomEvent(`slicc-image-preview-close`,{bubbles:!0,composed:!0,detail:{src:this.src}}));let i=()=>this.#c();this.#o=setTimeout(i,Jt),e.addEventListener(`transitionend`,e=>{e.propertyName===`transform`&&(this.#o&&clearTimeout(this.#o),i())})}#s(){this.#l()}#c(){this.#l()}#l(){this.#o&&=(clearTimeout(this.#o),null),this.#i&&=(document.removeEventListener(`keydown`,this.#i),null),this.#t&&=(this.#t.remove(),null),this.#n=null,this.#r=null,this.removeAttribute(`open`),this.removeAttribute(`src`),Xt===this&&(Xt=null)}static show(e,t){let n=document.querySelector(`slicc-image-preview[data-shared]`);return n||(n=document.createElement(`slicc-image-preview`),n.setAttribute(`data-shared`,``),document.body.appendChild(n)),n.open(e,t),()=>n.close()}};A(`slicc-image-preview`,Zt);var Qt=M(`
|
|
1361
1361
|
:host{display:block;margin-bottom:18px;font-family:var(--ui);font-size:15px;line-height:1.5;}
|
|
1362
1362
|
:host([hidden]){display:none;}
|
|
1363
1363
|
.msg{display:flex;justify-content:flex-end;}
|
|
@@ -1405,7 +1405,7 @@ slicc-tool-cluster .slicc-cluster__body slicc-action-row {
|
|
|
1405
1405
|
:host([queued]) .b{opacity:.62;}
|
|
1406
1406
|
.queued-tag{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;color:var(--txt-3);}
|
|
1407
1407
|
.queued-tag svg{display:block;}
|
|
1408
|
-
`)
|
|
1408
|
+
`),$t={image:`image`,text:`file-text`,file:`file`};function en(e){return e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1048576).toFixed(1)} MB`}A(`slicc-user-message`,class extends HTMLElement{static observedAttributes=[`text`,`queued`,`timestamp`];#e;#t=null;#n=[];constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[Qt]}connectedCallback(){this.#a()}attributeChangedCallback(){this.isConnected&&this.#a()}get text(){return this.getAttribute(`text`)}set text(e){e==null?this.removeAttribute(`text`):this.setAttribute(`text`,e)}get queued(){return this.hasAttribute(`queued`)}set queued(e){this.toggleAttribute(`queued`,e)}setBodyHtml(e){this.#t=e,this.#a()}setAttachments(e){this.#n=e.slice(),this.#a()}#r(){if(this.#t!=null)return this.ownerDocument.createRange().createContextualFragment(this.#t);let e=this.text;return e==null?j(`slot`):this.ownerDocument.createTextNode(e)}#i(e){let t=e.kind??`file`,r=j(`span`,{class:`attachment-chip__visual`});if(t===`image`&&e.src){let t=j(`img`,{src:e.src,alt:e.name||`Attached image`});t.addEventListener(`click`,n=>{n.stopPropagation(),Zt.show(e.src,t)}),r.append(t)}else r.append(n($t[t],{size:16}));let i=e.size==null?e.mime:`${e.mime||`file`} · ${en(e.size)}`,a=j(`span`,{class:`attachment-chip__body`},j(`span`,{class:`attachment-chip__name`},e.name),i?j(`span`,{class:`attachment-chip__meta`},i):null);return j(`div`,{class:`attachment-chip attachment-chip--${t}`},r,a)}#a(){let e=this.#n.length>0,t=this.text!=null||this.#t!=null,r=this.childNodes.length>0,i=t||r||!e,a=j(`div`,{class:`stack`,part:`stack`}),o=this.getAttribute(`timestamp`);if(o&&a.append(j(`span`,{class:`ts`,part:`timestamp`},o)),e){let e=j(`div`,{class:`attachments`,part:`attachments`});for(let t of this.#n)e.append(this.#i(t));a.append(e)}i&&a.append(j(`div`,{class:`b`,part:`bubble`},this.#r())),this.queued&&a.append(j(`span`,{class:`queued-tag`,part:`queued`},n(`clock`,{size:11}),`queued`));let s=j(`div`,{class:`msg user`,part:`message`},a);this.#e.replaceChildren(s)}});var tn=`
|
|
1409
1409
|
slicc-composer {
|
|
1410
1410
|
flex: 0 0 auto;
|
|
1411
1411
|
display: block;
|
|
@@ -1759,7 +1759,7 @@ slicc-composer .slicc-composer__ptt.is-picking {
|
|
|
1759
1759
|
animation-name: none;
|
|
1760
1760
|
}
|
|
1761
1761
|
}
|
|
1762
|
-
`,Un=`slicc-composer-style`;function Wn(e){if(e.getElementById(Un))return;let t=e.createElement(`style`);t.id=Un,t.textContent=Hn,(e.head??e.documentElement).appendChild(t)}var Gn=1e3,Kn=60,qn=1e4,Jn=45e3,Yn=1500;function Xn(e,t,n){return new Promise((r,i)=>{let a=setTimeout(()=>i(n),t);e.then(e=>{clearTimeout(a),r(e)},e=>{clearTimeout(a),i(e instanceof Error?e:Error(String(e)))})})}var Zn=`slicc-composer:mic-device`;function Qn(){try{return typeof localStorage>`u`?null:localStorage.getItem(Zn)}catch{return null}}function $n(e){try{if(typeof localStorage>`u`)return;e?localStorage.setItem(Zn,e):localStorage.removeItem(Zn)}catch{}}function er(e){return e==null||!Number.isFinite(e)?``:e<60?`~${Math.max(1,Math.round(e))}s`:`~${Math.floor(e/60)}m ${Math.round(e%60)}s`}N(`slicc-composer`,class extends HTMLElement{static observedAttributes=[`open`];#e;#t=!1;#n=null;#r=`idle`;#i=!1;#a=0;#o=null;#s=null;#c=!1;#l=null;#u=null;#d=null;#f=`unknown`;#p=Qn();#m=null;#h=null;#g=null;#_=null;#v=null;#y=null;#b=null;#x=null;#S=null;#C=null;#w=null;#T=[];connectedCallback(){Wn(this.ownerDocument),this.#E(),this.addEventListener(`pointerdown`,this.#D)}disconnectedCallback(){this.removeEventListener(`pointerdown`,this.#D),this.#l?.cancel(),this.#l=null,this.#N(),this.#i=!1,this.#o=null,this.#a++,this.#V(),this.#z(),this.#h&&clearTimeout(this.#h),this.#h=null,this.#B(),this.#q(),this.#ne()}attributeChangedCallback(){}get open(){return this.hasAttribute(`open`)}set open(e){e?this.setAttribute(`open`,``):this.removeAttribute(`open`)}get speech(){return this.#d??=y(),this.#d}set speech(e){this.#d=e,this.#f=`unknown`}get device(){return this.#p}set device(e){this.#p=e,$n(e)}get inner(){return this.#E(),this.#e}append(...e){this.#E(),this.#e.append(...e)}#E(){if(this.#t)return;this.#t=!0;let e=this.querySelector(`:scope > .slicc-composer__inner`);if(e instanceof HTMLElement){this.#e=e;return}let t=Array.from(this.childNodes);this.#e=this.ownerDocument.createElement(`div`),this.#e.className=`slicc-composer__inner`,this.#e.setAttribute(`part`,`inner`);for(let e of t)this.#e.appendChild(e);this.appendChild(this.#e)}#D=e=>{if(!this.hasAttribute(`ptt`)||!e.isPrimary||this.#i||e.button!==0||this.#r===`finalizing`||this.#r===`picking`)return;let t=e.target?.closest?.(`textarea`);if(!(t instanceof HTMLTextAreaElement)||!this.contains(t)||t.value!==``)return;this.#i=!0,this.#a++,this.#o=t,this.#s=e.pointerId;try{this.setPointerCapture(e.pointerId)}catch{}let n=this.ownerDocument;n.addEventListener(`pointerup`,this.#P),this.addEventListener(`pointercancel`,this.#F),n.addEventListener(`selectionchange`,this.#k);let r=this.#a;this.#g=setTimeout(()=>{this.#z(),this.#A(this.speech,r)},400)};toggleHandsFree(){return this.#i?(this.#c&&this.#I(!0),!1):this.#O()}#O(){if(!this.hasAttribute(`ptt`)||this.#r===`finalizing`||this.#r===`picking`)return!1;let e=this.querySelector(`textarea`);return!(e instanceof HTMLTextAreaElement)||e.value!==``?!1:(this.#i=!0,this.#c=!0,this.#a++,this.#o=e,this.#A(this.speech,this.#a),!0)}#k=()=>{if(!this.#g)return;let e=this.ownerDocument.getSelection();!e||e.isCollapsed||e.toString()===``||(this.#i=!1,this.#a++,this.#o=null,this.#z(),this.#V(),this.#B())};async#A(e,t){let n=await Promise.race([e.permission().then(e=>(this.#f=e,e)),new Promise(e=>setTimeout(()=>e(`pending`),Kn))]);if(!(t!==this.#a||!this.#i)){if(n===`granted`){this.#M(e,t);return}if(n===`denied`){this.#Y(`denied`);return}this.#Y(`enable`),this.#h=setTimeout(()=>{this.#h=null,this.#j(e,t)},Gn),n===`pending`&&e.permission().then(n=>{this.#f=n,!(t!==this.#a||!this.#i||this.#r!==`enable`)&&(n===`granted`?(this.#R(),this.#M(e,t)):n===`denied`&&(this.#R(),this.#Y(`denied`)))})}}#j(e,t){t!==this.#a||!this.#i||this.#r!==`enable`||(this.#y=null,this.#Y(`prompting`),Xn(e.requestPermission(),qn,Error(`Microphone didn't respond. Check your mic, then hold again.`)).then(n=>{this.#f=n?`granted`:`denied`,n&&e.warmup(),t===this.#a&&(n&&this.#i?this.#M(e,t):n?this.#ne():this.#i?this.#Y(`denied`):this.#ne())}).catch(e=>{this.#f=`denied`,t===this.#a&&(this.#i?(this.#y=e instanceof Error?e.message:String(e),this.#Y(`denied`)):this.#ne())}))}#M(e,t){this.#r=`recording`,this.#Y(`recording`),e.warmup(),this.#_?.(),this.#_=e.onStatus(e=>{this.#v=e,this.#ee()});let n=e.microphones();n.then(e=>{t===this.#a&&(this.#p??(this.#m=v(e)),g(e)&&this.#te(e))}).catch(()=>{});let r=(this.#p==null?Xn(n,Yn,Error(`microphone enumeration timed out`)).then(e=>v(e)).catch(()=>null):Promise.resolve(this.#p)).then(n=>e.start({deviceId:n??void 0,onPartial:e=>{t===this.#a&&this.#$(e)},onError:e=>{t===this.#a&&this.#$(e,!0)}}));this.#u=r,r.then(e=>{if(this.#u===r){if(this.#u=null,t!==this.#a||this.#r!==`recording`){e.cancel();return}this.#l=e}}).catch(e=>{this.#u===r&&(this.#u=null,t===this.#a&&this.#$(e instanceof Error?e.message:String(e),!0))})}#N(){let e=this.#u;this.#u=null,e!==null&&e.then(e=>e.cancel(),()=>{})}#P=e=>{if(!this.#i||this.#s!=null&&e.pointerId!==this.#s)return;let t=this.#C,n=!1;if(this.#r===`recording`&&t&&!t.hidden){if(e.composedPath().includes(t))n=!0;else{let r=this.ownerDocument.elementFromPoint(e.clientX,e.clientY);n=r!=null&&t.contains(r)}}if(n){this.#i=!1,this.#V(),this.#B(),this.#l?.cancel(),this.#l=null,this.#N(),this.#o=null,this.#H();return}this.#I(!0)};#F=e=>{(this.#s==null||e.pointerId===this.#s)&&this.#I(!1)};#I(e){if(!this.#i)return;switch(this.#i=!1,this.#c=!1,this.#z(),this.#V(),this.#B(),this.#r){case`enable`:this.#R(),this.#o=null,this.#ne();return;case`prompting`:this.#o=null;return;case`denied`:this.#o=null,this.#ne();return;case`recording`:break;default:this.#o=null,this.#ne();return}let t=this.#l;this.#l=null;let n=this.#u;if(this.#u=null,!e){t?.cancel(),n!==null&&n.then(e=>e.cancel(),()=>{}),this.#o=null,this.#ne();return}if(!t&&n===null){this.#o=null,this.#ne();return}this.#r=`finalizing`,this.#$(`Transcribing…`);let r=this.#a;Xn((t?Promise.resolve(t):n).then(e=>e.stop()),Jn,Error(`finalize timed out`)).then(e=>{r===this.#a&&(this.#ne(),this.#L(e))}).catch(()=>{r===this.#a&&(this.#ne(),this.#o=null)})}#L(e){let t=this.#o;if(this.#o=null,!t)return;let n=e.trim();if(!n){t.focus();return}t.value=t.value?/\s$/.test(t.value)?t.value+n:`${t.value} ${n}`:n,t.dispatchEvent(new Event(`input`,{bubbles:!0})),t.focus();let r=t.closest(`slicc-input-card`);r&&typeof r.submit==`function`?r.submit(`dictation`):t.dispatchEvent(new CustomEvent(`submit`,{bubbles:!0,composed:!0,detail:{value:t.value,source:`dictation`}}))}#R(){this.#h&&clearTimeout(this.#h),this.#h=null}#z(){this.#g&&clearTimeout(this.#g),this.#g=null,this.ownerDocument.removeEventListener(`selectionchange`,this.#k)}#B(){this.ownerDocument.removeEventListener(`pointerup`,this.#P),this.removeEventListener(`pointercancel`,this.#F)}#V(){let e=this.#s;if(this.#s=null,e!=null)try{this.releasePointerCapture(e)}catch{}}#H(){this.#r=`picking`,this.#Q(`picking`),this.#b&&(this.#b.textContent=`Choose a microphone`),this.#x&&(this.#x.hidden=!0),this.#U();let e=this.ownerDocument;e.addEventListener(`pointerdown`,this.#G,!0),e.addEventListener(`keydown`,this.#K,!0)}#U(){let e=this.#C;if(!e||this.#w)return;let t=F(`div`,{class:`slicc-composer__ptt-device-menu`,role:`menu`}),n=null,r=this.#p??this.#m;for(let e of this.#T){let i=e.deviceId===r,a=F(`button`,{type:`button`,class:`slicc-composer__ptt-device-item`,role:`menuitemradio`,"aria-checked":i?`true`:`false`,"data-device-id":e.deviceId},e.label,F(`span`,{class:`tick`},m(`check`,{size:14})));a.addEventListener(`click`,()=>{this.device=e.deviceId,this.#J()}),(i||!n)&&(n=a),t.appendChild(a)}this.#w=t,e.appendChild(t),this.#W(t,e),n?.focus()}#W(e,t){let n=t.getBoundingClientRect(),r=(window.innerHeight||document.documentElement.clientHeight)-n.bottom-6-8,i=n.top-6-8,a=e.offsetHeight>r&&i>r;e.classList.toggle(`slicc-composer__ptt-device-menu--up`,a);let o=Math.max(a?i:r,0);e.style.maxHeight=`${Math.min(320,o)}px`}#G=e=>{this.#C&&e.composedPath().includes(this.#C)||this.#J()};#K=e=>{e.key===`Escape`&&(e.stopPropagation(),this.#J())};#q(){let e=this.ownerDocument;e.removeEventListener(`pointerdown`,this.#G,!0),e.removeEventListener(`keydown`,this.#K,!0)}#J(){this.#q(),this.#ne()}#Y(e){switch(this.#r=e,this.#n||(this.#n=F(`div`,{class:`slicc-composer__ptt`,"data-ptt":!0,role:`button`}),this.appendChild(this.#n)),this.#Q(e),e){case`enable`:{let e=this.#c?`Enabling push to talk`:`Hold to enable push to talk`;this.#X(m(`mic`,{size:28}),e,this.#Z(`Requesting microphone access when the bar fills`)),this.#n.setAttribute(`aria-label`,e);break}case`prompting`:this.#X(m(`mic`,{size:28}),`Allow microphone access in the browser prompt`,this.#Z(`Waiting for permission…`)),this.#n.setAttribute(`aria-label`,`Waiting for microphone permission`);break;case`denied`:{let e=this.#y?`Microphone unavailable`:`Microphone access is blocked`,t=this.#y??`Enable the microphone for this site in your browser settings, then hold again.`;this.#X(m(`mic-off`,{size:28}),e,F(`div`,{class:`slicc-composer__ptt-load-text`},t)),this.#n.setAttribute(`aria-label`,e);break}case`recording`:{this.#C=F(`div`,{class:`slicc-composer__ptt-device`,hidden:!0}),this.#x=F(`div`,{class:`slicc-composer__ptt-caption`,"aria-live":`polite`,hidden:!0}),this.#S=F(`div`,{class:`slicc-composer__ptt-status`,hidden:!0});let e=F(`div`,{class:`slicc-composer__ptt-microw`},F(`div`,{class:`slicc-composer__ptt-mic`},m(`mic`,{size:28})),this.#C),t=this.#c?`Listening — press again to send`:`Listening — release to send`;this.#b=F(`div`,{class:`slicc-composer__ptt-label`},t),this.#n.replaceChildren(e,this.#b,this.#x,this.#S),this.#n.setAttribute(`aria-label`,t),this.#ee();break}}}#X(e,t,n){this.#n&&(this.#b=F(`div`,{class:`slicc-composer__ptt-label`},t),this.#x=null,this.#S=null,this.#C=null,this.#w=null,this.#T=[],this.#n.replaceChildren(F(`div`,{class:`slicc-composer__ptt-mic`},e),this.#b,n))}#Z(e){return F(`div`,{class:`slicc-composer__ptt-load`},F(`span`,{class:`slicc-composer__ptt-load-text`},e),F(`div`,{class:`slicc-composer__ptt-bar`},F(`div`,{class:`slicc-composer__ptt-bar-fill`})))}#Q(e){this.#n&&(this.#n.classList.remove(`is-enable`,`is-prompting`,`is-denied`,`is-recording`,`is-finalizing`,`is-picking`),e!==`idle`&&this.#n.classList.add(`is-${e}`))}#$(e,t=!1){let n=this.#x;if(!n)return;let r=e.trim().split(/\s+/).filter(Boolean);if(r.length===0){n.hidden=!0;return}n.textContent=r.slice(-8).join(` `),n.classList.toggle(`is-error`,t),n.hidden=!1}#ee(){let e=this.#S;if(!e)return;let t=this.#v;if(t?.state===`downloading`){if(t.download){let n=er(t.download.etaSeconds??null);e.textContent=n?`Better speech recognition downloading · ready in ${n}`:`Better speech recognition downloading…`}else e.textContent=`Preparing enhanced speech…`;e.classList.remove(`is-error`),e.hidden=!1}else t?.state===`ready`&&t.engine===`enhanced`?(e.textContent=`Enhanced speech recognition`,e.classList.remove(`is-error`),e.hidden=!1):t?.state===`unavailable`&&t.message?(e.textContent=t.message,e.classList.add(`is-error`),e.hidden=!1):(e.classList.remove(`is-error`),e.hidden=!0)}#te(e){let t=this.#C;if(!t)return;this.#T=e;let n=F(`button`,{type:`button`,class:`slicc-composer__ptt-device-btn`,"aria-label":`Choose a microphone`,"aria-haspopup":`menu`,title:`Choose a microphone`},m(`chevron-down`,{size:12}));n.addEventListener(`pointerdown`,e=>e.stopPropagation()),t.replaceChildren(n),t.hidden=!1}#ne(){this.#_?.(),this.#_=null,this.#n?.remove(),this.#n=null,this.#b=null,this.#x=null,this.#S=null,this.#C=null,this.#w=null,this.#T=[],this.#m=null,this.#y=null,this.#r=`idle`}});var tr=`
|
|
1762
|
+
`,nn=`slicc-composer-style`;function rn(e){if(e.getElementById(nn))return;let t=e.createElement(`style`);t.id=nn,t.textContent=tn,(e.head??e.documentElement).appendChild(t)}var an=1e3,on=60,sn=1e4,cn=45e3,ln=1500;function un(e,t,n){return new Promise((r,i)=>{let a=setTimeout(()=>i(n),t);e.then(e=>{clearTimeout(a),r(e)},e=>{clearTimeout(a),i(e instanceof Error?e:Error(String(e)))})})}var dn=`slicc-composer:mic-device`;function fn(){try{return typeof localStorage>`u`?null:localStorage.getItem(dn)}catch{return null}}function pn(e){try{if(typeof localStorage>`u`)return;e?localStorage.setItem(dn,e):localStorage.removeItem(dn)}catch{}}function mn(e){return e==null||!Number.isFinite(e)?``:e<60?`~${Math.max(1,Math.round(e))}s`:`~${Math.floor(e/60)}m ${Math.round(e%60)}s`}A(`slicc-composer`,class extends HTMLElement{static observedAttributes=[`open`];#e;#t=!1;#n=null;#r=`idle`;#i=!1;#a=0;#o=null;#s=null;#c=!1;#l=null;#u=null;#d=null;#f=`unknown`;#p=fn();#m=null;#h=null;#g=null;#_=null;#v=null;#y=null;#b=null;#x=null;#S=null;#C=null;#w=null;#T=[];connectedCallback(){rn(this.ownerDocument),this.#E(),this.addEventListener(`pointerdown`,this.#D)}disconnectedCallback(){this.removeEventListener(`pointerdown`,this.#D),this.#l?.cancel(),this.#l=null,this.#N(),this.#i=!1,this.#o=null,this.#a++,this.#V(),this.#z(),this.#h&&clearTimeout(this.#h),this.#h=null,this.#B(),this.#q(),this.#ne()}attributeChangedCallback(){}get open(){return this.hasAttribute(`open`)}set open(e){e?this.setAttribute(`open`,``):this.removeAttribute(`open`)}get speech(){return this.#d??=s(),this.#d}set speech(e){this.#d=e,this.#f=`unknown`}get device(){return this.#p}set device(e){this.#p=e,pn(e)}get inner(){return this.#E(),this.#e}append(...e){this.#E(),this.#e.append(...e)}#E(){if(this.#t)return;this.#t=!0;let e=this.querySelector(`:scope > .slicc-composer__inner`);if(e instanceof HTMLElement){this.#e=e;return}let t=Array.from(this.childNodes);this.#e=this.ownerDocument.createElement(`div`),this.#e.className=`slicc-composer__inner`,this.#e.setAttribute(`part`,`inner`);for(let e of t)this.#e.appendChild(e);this.appendChild(this.#e)}#D=e=>{if(!this.hasAttribute(`ptt`)||!e.isPrimary||this.#i||e.button!==0||this.#r===`finalizing`||this.#r===`picking`)return;let t=e.target?.closest?.(`textarea`);if(!(t instanceof HTMLTextAreaElement)||!this.contains(t)||t.value!==``)return;this.#i=!0,this.#a++,this.#o=t,this.#s=e.pointerId;try{this.setPointerCapture(e.pointerId)}catch{}let n=this.ownerDocument;n.addEventListener(`pointerup`,this.#P),this.addEventListener(`pointercancel`,this.#F),n.addEventListener(`selectionchange`,this.#k);let r=this.#a;this.#g=setTimeout(()=>{this.#z(),this.#A(this.speech,r)},400)};toggleHandsFree(){return this.#i?(this.#c&&this.#I(!0),!1):this.#O()}#O(){if(!this.hasAttribute(`ptt`)||this.#r===`finalizing`||this.#r===`picking`)return!1;let e=this.querySelector(`textarea`);return!(e instanceof HTMLTextAreaElement)||e.value!==``?!1:(this.#i=!0,this.#c=!0,this.#a++,this.#o=e,this.#A(this.speech,this.#a),!0)}#k=()=>{if(!this.#g)return;let e=this.ownerDocument.getSelection();!e||e.isCollapsed||e.toString()===``||(this.#i=!1,this.#a++,this.#o=null,this.#z(),this.#V(),this.#B())};async#A(e,t){let n=await Promise.race([e.permission().then(e=>(this.#f=e,e)),new Promise(e=>setTimeout(()=>e(`pending`),on))]);if(!(t!==this.#a||!this.#i)){if(n===`granted`){this.#M(e,t);return}if(n===`denied`){this.#Y(`denied`);return}this.#Y(`enable`),this.#h=setTimeout(()=>{this.#h=null,this.#j(e,t)},an),n===`pending`&&e.permission().then(n=>{this.#f=n,!(t!==this.#a||!this.#i||this.#r!==`enable`)&&(n===`granted`?(this.#R(),this.#M(e,t)):n===`denied`&&(this.#R(),this.#Y(`denied`)))})}}#j(e,t){t!==this.#a||!this.#i||this.#r!==`enable`||(this.#y=null,this.#Y(`prompting`),un(e.requestPermission(),sn,Error(`Microphone didn't respond. Check your mic, then hold again.`)).then(n=>{this.#f=n?`granted`:`denied`,n&&e.warmup(),t===this.#a&&(n&&this.#i?this.#M(e,t):n?this.#ne():this.#i?this.#Y(`denied`):this.#ne())}).catch(e=>{this.#f=`denied`,t===this.#a&&(this.#i?(this.#y=e instanceof Error?e.message:String(e),this.#Y(`denied`)):this.#ne())}))}#M(e,t){this.#r=`recording`,this.#Y(`recording`),e.warmup(),this.#_?.(),this.#_=e.onStatus(e=>{this.#v=e,this.#ee()});let n=e.microphones();n.then(e=>{t===this.#a&&(this.#p??(this.#m=o(e)),i(e)&&this.#te(e))}).catch(()=>{});let r=(this.#p==null?un(n,ln,Error(`microphone enumeration timed out`)).then(e=>o(e)).catch(()=>null):Promise.resolve(this.#p)).then(n=>e.start({deviceId:n??void 0,onPartial:e=>{t===this.#a&&this.#$(e)},onError:e=>{t===this.#a&&this.#$(e,!0)}}));this.#u=r,r.then(e=>{if(this.#u===r){if(this.#u=null,t!==this.#a||this.#r!==`recording`){e.cancel();return}this.#l=e}}).catch(e=>{this.#u===r&&(this.#u=null,t===this.#a&&this.#$(e instanceof Error?e.message:String(e),!0))})}#N(){let e=this.#u;this.#u=null,e!==null&&e.then(e=>e.cancel(),()=>{})}#P=e=>{if(!this.#i||this.#s!=null&&e.pointerId!==this.#s)return;let t=this.#C,n=!1;if(this.#r===`recording`&&t&&!t.hidden){if(e.composedPath().includes(t))n=!0;else{let r=this.ownerDocument.elementFromPoint(e.clientX,e.clientY);n=r!=null&&t.contains(r)}}if(n){this.#i=!1,this.#V(),this.#B(),this.#l?.cancel(),this.#l=null,this.#N(),this.#o=null,this.#H();return}this.#I(!0)};#F=e=>{(this.#s==null||e.pointerId===this.#s)&&this.#I(!1)};#I(e){if(!this.#i)return;switch(this.#i=!1,this.#c=!1,this.#z(),this.#V(),this.#B(),this.#r){case`enable`:this.#R(),this.#o=null,this.#ne();return;case`prompting`:this.#o=null;return;case`denied`:this.#o=null,this.#ne();return;case`recording`:break;default:this.#o=null,this.#ne();return}let t=this.#l;this.#l=null;let n=this.#u;if(this.#u=null,!e){t?.cancel(),n!==null&&n.then(e=>e.cancel(),()=>{}),this.#o=null,this.#ne();return}if(!t&&n===null){this.#o=null,this.#ne();return}this.#r=`finalizing`,this.#$(`Transcribing…`);let r=this.#a;un((t?Promise.resolve(t):n).then(e=>e.stop()),cn,Error(`finalize timed out`)).then(e=>{r===this.#a&&(this.#ne(),this.#L(e))}).catch(()=>{r===this.#a&&(this.#ne(),this.#o=null)})}#L(e){let t=this.#o;if(this.#o=null,!t)return;let n=e.trim();if(!n){t.focus();return}t.value=t.value?/\s$/.test(t.value)?t.value+n:`${t.value} ${n}`:n,t.dispatchEvent(new Event(`input`,{bubbles:!0})),t.focus();let r=t.closest(`slicc-input-card`);r&&typeof r.submit==`function`?r.submit(`dictation`):t.dispatchEvent(new CustomEvent(`submit`,{bubbles:!0,composed:!0,detail:{value:t.value,source:`dictation`}}))}#R(){this.#h&&clearTimeout(this.#h),this.#h=null}#z(){this.#g&&clearTimeout(this.#g),this.#g=null,this.ownerDocument.removeEventListener(`selectionchange`,this.#k)}#B(){this.ownerDocument.removeEventListener(`pointerup`,this.#P),this.removeEventListener(`pointercancel`,this.#F)}#V(){let e=this.#s;if(this.#s=null,e!=null)try{this.releasePointerCapture(e)}catch{}}#H(){this.#r=`picking`,this.#Q(`picking`),this.#b&&(this.#b.textContent=`Choose a microphone`),this.#x&&(this.#x.hidden=!0),this.#U();let e=this.ownerDocument;e.addEventListener(`pointerdown`,this.#G,!0),e.addEventListener(`keydown`,this.#K,!0)}#U(){let e=this.#C;if(!e||this.#w)return;let t=j(`div`,{class:`slicc-composer__ptt-device-menu`,role:`menu`}),r=null,i=this.#p??this.#m;for(let e of this.#T){let a=e.deviceId===i,o=j(`button`,{type:`button`,class:`slicc-composer__ptt-device-item`,role:`menuitemradio`,"aria-checked":a?`true`:`false`,"data-device-id":e.deviceId},e.label,j(`span`,{class:`tick`},n(`check`,{size:14})));o.addEventListener(`click`,()=>{this.device=e.deviceId,this.#J()}),(a||!r)&&(r=o),t.appendChild(o)}this.#w=t,e.appendChild(t),this.#W(t,e),r?.focus()}#W(e,t){let n=t.getBoundingClientRect(),r=(window.innerHeight||document.documentElement.clientHeight)-n.bottom-6-8,i=n.top-6-8,a=e.offsetHeight>r&&i>r;e.classList.toggle(`slicc-composer__ptt-device-menu--up`,a);let o=Math.max(a?i:r,0);e.style.maxHeight=`${Math.min(320,o)}px`}#G=e=>{this.#C&&e.composedPath().includes(this.#C)||this.#J()};#K=e=>{e.key===`Escape`&&(e.stopPropagation(),this.#J())};#q(){let e=this.ownerDocument;e.removeEventListener(`pointerdown`,this.#G,!0),e.removeEventListener(`keydown`,this.#K,!0)}#J(){this.#q(),this.#ne()}#Y(e){switch(this.#r=e,this.#n||(this.#n=j(`div`,{class:`slicc-composer__ptt`,"data-ptt":!0,role:`button`}),this.appendChild(this.#n)),this.#Q(e),e){case`enable`:{let e=this.#c?`Enabling push to talk`:`Hold to enable push to talk`;this.#X(n(`mic`,{size:28}),e,this.#Z(`Requesting microphone access when the bar fills`)),this.#n.setAttribute(`aria-label`,e);break}case`prompting`:this.#X(n(`mic`,{size:28}),`Allow microphone access in the browser prompt`,this.#Z(`Waiting for permission…`)),this.#n.setAttribute(`aria-label`,`Waiting for microphone permission`);break;case`denied`:{let e=this.#y?`Microphone unavailable`:`Microphone access is blocked`,t=this.#y??`Enable the microphone for this site in your browser settings, then hold again.`;this.#X(n(`mic-off`,{size:28}),e,j(`div`,{class:`slicc-composer__ptt-load-text`},t)),this.#n.setAttribute(`aria-label`,e);break}case`recording`:{this.#C=j(`div`,{class:`slicc-composer__ptt-device`,hidden:!0}),this.#x=j(`div`,{class:`slicc-composer__ptt-caption`,"aria-live":`polite`,hidden:!0}),this.#S=j(`div`,{class:`slicc-composer__ptt-status`,hidden:!0});let e=j(`div`,{class:`slicc-composer__ptt-microw`},j(`div`,{class:`slicc-composer__ptt-mic`},n(`mic`,{size:28})),this.#C),t=this.#c?`Listening — press again to send`:`Listening — release to send`;this.#b=j(`div`,{class:`slicc-composer__ptt-label`},t),this.#n.replaceChildren(e,this.#b,this.#x,this.#S),this.#n.setAttribute(`aria-label`,t),this.#ee();break}}}#X(e,t,n){this.#n&&(this.#b=j(`div`,{class:`slicc-composer__ptt-label`},t),this.#x=null,this.#S=null,this.#C=null,this.#w=null,this.#T=[],this.#n.replaceChildren(j(`div`,{class:`slicc-composer__ptt-mic`},e),this.#b,n))}#Z(e){return j(`div`,{class:`slicc-composer__ptt-load`},j(`span`,{class:`slicc-composer__ptt-load-text`},e),j(`div`,{class:`slicc-composer__ptt-bar`},j(`div`,{class:`slicc-composer__ptt-bar-fill`})))}#Q(e){this.#n&&(this.#n.classList.remove(`is-enable`,`is-prompting`,`is-denied`,`is-recording`,`is-finalizing`,`is-picking`),e!==`idle`&&this.#n.classList.add(`is-${e}`))}#$(e,t=!1){let n=this.#x;if(!n)return;let r=e.trim().split(/\s+/).filter(Boolean);if(r.length===0){n.hidden=!0;return}n.textContent=r.slice(-8).join(` `),n.classList.toggle(`is-error`,t),n.hidden=!1}#ee(){let e=this.#S;if(!e)return;let t=this.#v;if(t?.state===`downloading`){if(t.download){let n=mn(t.download.etaSeconds??null);e.textContent=n?`Better speech recognition downloading · ready in ${n}`:`Better speech recognition downloading…`}else e.textContent=`Preparing enhanced speech…`;e.classList.remove(`is-error`),e.hidden=!1}else t?.state===`ready`&&t.engine===`enhanced`?(e.textContent=`Enhanced speech recognition`,e.classList.remove(`is-error`),e.hidden=!1):t?.state===`unavailable`&&t.message?(e.textContent=t.message,e.classList.add(`is-error`),e.hidden=!1):(e.classList.remove(`is-error`),e.hidden=!0)}#te(e){let t=this.#C;if(!t)return;this.#T=e;let r=j(`button`,{type:`button`,class:`slicc-composer__ptt-device-btn`,"aria-label":`Choose a microphone`,"aria-haspopup":`menu`,title:`Choose a microphone`},n(`chevron-down`,{size:12}));r.addEventListener(`pointerdown`,e=>e.stopPropagation()),t.replaceChildren(r),t.hidden=!1}#ne(){this.#_?.(),this.#_=null,this.#n?.remove(),this.#n=null,this.#b=null,this.#x=null,this.#S=null,this.#C=null,this.#w=null,this.#T=[],this.#m=null,this.#y=null,this.#r=`idle`}});var hn=`
|
|
1763
1763
|
slicc-composer-capture {
|
|
1764
1764
|
position: relative;
|
|
1765
1765
|
display: block;
|
|
@@ -1963,7 +1963,7 @@ slicc-composer-capture .slicc-capture__timer {
|
|
|
1963
1963
|
slicc-composer-capture .slicc-capture__timer[hidden] {
|
|
1964
1964
|
display: none;
|
|
1965
1965
|
}
|
|
1966
|
-
`,nr=`slicc-composer-capture-style`;function rr(e){if(e.getElementById(nr))return;let t=e.createElement(`style`);t.id=nr,t.textContent=tr,(e.head??e.documentElement).appendChild(t)}var ir=`photo`,ar=[`video/webm;codecs=vp9,opus`,`video/webm;codecs=vp8,opus`,`video/webm`];function or(){if(typeof MediaRecorder>`u`)return`video/webm`;for(let e of ar)if(MediaRecorder.isTypeSupported?.(e))return e;return`video/webm`}function sr(e){let t=Math.max(0,Math.floor(e/1e3)),n=Math.floor(t/60),r=t%60;return`${n}:${String(r).padStart(2,`0`)}`}N(`slicc-composer-capture`,class extends HTMLElement{static observedAttributes=[`mode`,`preferred-device`,`preferred-audio-device`];media=null;recorderFactory=null;#e;#t;#n;#r;#i;#a;#o;#s;#c;#l=!1;#u=null;#d=null;#f=null;#p=[];#m=0;#h=null;#g=null;#_=e=>{e.key===`Escape`&&this.#g&&this.#L()};connectedCallback(){rr(this.ownerDocument),this.#H(),this.ownerDocument.addEventListener(`keydown`,this.#_)}disconnectedCallback(){if(this.ownerDocument.removeEventListener(`keydown`,this.#_),this.#N(),this.#P(),this.#I(),this.#g){let e=this.#g;this.#g=null,e(null)}}attributeChangedCallback(e,t,n){e===`mode`&&this.#l&&this.#z(n??ir)}get mode(){return this.getAttribute(`mode`)===`video`?`video`:`photo`}set mode(e){e==null?this.removeAttribute(`mode`):this.setAttribute(`mode`,e)}get preferredDevice(){return this.getAttribute(`preferred-device`)}set preferredDevice(e){e==null?this.removeAttribute(`preferred-device`):this.setAttribute(`preferred-device`,e)}get preferredAudioDevice(){return this.getAttribute(`preferred-audio-device`)}set preferredAudioDevice(e){e==null?this.removeAttribute(`preferred-audio-device`):this.setAttribute(`preferred-audio-device`,e)}#v(){return this.media??(typeof navigator<`u`?navigator.mediaDevices:null)??null}#y(e,t){return this.recorderFactory?this.recorderFactory(e,t):new MediaRecorder(e,t)}async open(e){this.#H(),e&&(this.mode=e),this.#z(this.mode);let t=this.#v();if(!t)return null;try{this.#u=await this.#b(t,this.preferredDevice,this.preferredAudioDevice,this.mode)}catch{return null}return this.#S(),this.#C(this.#u),await this.#w(t),await this.#T(t),this.hidden=!1,new Promise(e=>{this.#g=e})}async#b(e,t,n,r){let i=await this.#x(e,n,r);if(t)try{return await e.getUserMedia({video:{deviceId:{exact:t}},audio:i})}catch{}try{return await e.getUserMedia({video:!0,audio:i})}catch(t){if(i===!1)throw t;return this.#r.textContent=`Microphone unavailable — recording video only.`,e.getUserMedia({video:!0,audio:!1})}}async#x(e,t,n){if(n!==`video`)return!1;if(t)return{deviceId:{exact:t}};let r=[];try{r=(await e.enumerateDevices()).filter(e=>e.kind===`audioinput`)}catch{r=[]}let i=v(_(r,`microphone`));return!i||{deviceId:{exact:i}}}#S(){this.#d=this.#u?.getAudioTracks()[0]??null}#C(e){this.#e.srcObject=e,this.#e.muted=!0,this.#e.play?.()?.catch(()=>void 0);let t=e.getVideoTracks()[0]?.getSettings?.().facingMode;this.#e.toggleAttribute(`data-mirrored`,t!==`environment`)}async#w(e){let t=[];try{t=(await e.enumerateDevices()).filter(e=>e.kind===`videoinput`)}catch{t=[]}let n=_(t,`camera`);this.#t.replaceChildren(...n.map(e=>F(`option`,{value:e.deviceId},e.label)));let r=this.#u?.getVideoTracks()[0]?.getSettings?.().deviceId;r&&(this.#t.value=r),this.#t.toggleAttribute(`hidden`,!g(n))}async#T(e){let t=[];try{t=(await e.enumerateDevices()).filter(e=>e.kind===`audioinput`)}catch{t=[]}let n=_(t,`microphone`);this.#n.replaceChildren(...n.map(e=>F(`option`,{value:e.deviceId},e.label)));let r=this.#d?.getSettings?.().deviceId??this.preferredAudioDevice??v(n);r&&n.some(e=>e.deviceId===r)&&(this.#n.value=r),this.#E()}#E(){if(!this.#n)return;let e=this.#n.options.length>=2,t=this.mode===`video`&&e;this.#n.toggleAttribute(`hidden`,!t)}async#D(e){let t=this.#v();if(t){this.#r.textContent=``;try{let n=await t.getUserMedia({video:{deviceId:{exact:e}}});this.#F();let r=n;if(this.mode===`video`&&this.#d&&this.#d.readyState===`live`)r.addTrack(this.#d);else if(this.mode===`video`)try{let e=await t.getUserMedia({audio:await this.#x(t,this.preferredAudioDevice,`video`)});for(let t of e.getAudioTracks())this.#d=t,r.addTrack(t)}catch{this.#r.textContent=`Microphone unavailable — recording video only.`}this.#u=r,this.#C(r),this.dispatchEvent(new CustomEvent(`slicc-capture-device-change`,{detail:{deviceId:e,kind:`camera`},bubbles:!0,composed:!0}))}catch{this.#r.textContent=`Could not switch camera — keeping the current one.`}}}async#O(e){let t=this.#v();if(!t||!this.#u)return;this.#r.textContent=``;let n;try{n=await t.getUserMedia({audio:{deviceId:{exact:e}}})}catch{this.#r.textContent=`Could not switch microphone — keeping the current one.`;return}let r=n.getAudioTracks()[0];if(!r){this.#r.textContent=`Could not switch microphone — keeping the current one.`;return}if(this.#d){try{this.#u.removeTrack(this.#d)}catch{}this.#d.stop()}this.#u.addTrack(r),this.#d=r,this.preferredAudioDevice=e,this.dispatchEvent(new CustomEvent(`slicc-capture-device-change`,{detail:{deviceId:e,kind:`microphone`},bubbles:!0,composed:!0}))}#k(){let e=this.ownerDocument.createElement(`canvas`);if(e.width=this.#e.videoWidth,e.height=this.#e.videoHeight,e.width===0||e.height===0){this.#r.textContent=`No frame yet — give the camera a moment.`;return}e.getContext(`2d`)?.drawImage(this.#e,0,0);let t=`image/png`,n=e.toDataURL(t);this.#R({kind:`image`,dataUrl:n,mimeType:t,width:e.width,height:e.height})}#A(){if(!this.#u||this.#f)return;this.#p=[];let e=or(),t;try{t=this.#y(this.#u,{mimeType:e})}catch{this.#r.textContent=`Recording is not supported in this browser.`;return}t.ondataavailable=e=>{e.data&&e.data.size>0&&this.#p.push(e.data)},t.onstop=()=>this.#M(e);try{t.start()}catch{this.#r.textContent=`Could not start recording.`;return}this.#f=t,this.#m=Date.now(),this.#n.disabled=!0,this.#t.disabled=!0,this.#i.hidden=!1,this.#i.textContent=sr(0),this.#h=setInterval(()=>{this.#i.textContent=sr(Date.now()-this.#m)},250),this.#B()}#j(){let e=this.#f;if(e)try{e.state!==`inactive`&&e.stop()}catch{this.#M(e.mimeType||`video/webm`)}}#M(e){let t=this.#m?Date.now()-this.#m:0;this.#N();let n=this.#f?.mimeType||e||`video/webm`,r=new Blob(this.#p,{type:n});this.#p=[],this.#f=null,this.#n&&(this.#n.disabled=!1),this.#t&&(this.#t.disabled=!1);let i=typeof URL<`u`?URL.createObjectURL(r):void 0;this.#R({kind:`video`,blob:r,dataUrl:i,mimeType:n,width:this.#e.videoWidth,height:this.#e.videoHeight,durationMs:t})}#N(){this.#h!=null&&(clearInterval(this.#h),this.#h=null),this.#i.hidden=!0,this.#i.textContent=``,this.#m=0}#P(){let e=this.#f;if(this.#f=null,this.#p=[],this.#n&&(this.#n.disabled=!1),this.#t&&(this.#t.disabled=!1),e){e.ondataavailable=null,e.onstop=null;try{e.state!==`inactive`&&e.stop()}catch{}}}#F(){for(let e of this.#u?.getVideoTracks()??[])e.stop()}#I(){for(let e of this.#u?.getTracks()??[])e.stop();this.#u=null,this.#d=null,this.#e&&(this.#e.srcObject=null)}#L(){this.dispatchEvent(new CustomEvent(`slicc-capture-cancel`,{bubbles:!0,composed:!0})),this.#R(null)}#R(e){e&&this.dispatchEvent(new CustomEvent(`slicc-capture`,{detail:e,bubbles:!0,composed:!0})),this.#N(),this.#P(),this.#I();let t=this.#g;this.#g=null,this.hidden=!0,t?.(e)}#z(e){let t=e===`video`;this.#s.setAttribute(`aria-pressed`,String(!t)),this.#c.setAttribute(`aria-pressed`,String(t)),this.#r.textContent=t?`Mic on — video will record audio.`:``,this.#B(),this.#E()}#B(){let e=this.#a;if(e.replaceChildren(),this.mode===`photo`){e.className=`slicc-capture__btn slicc-capture__btn--primary`,e.setAttribute(`part`,`snap`),e.setAttribute(`aria-label`,`Snap photo`),e.append(m(`camera`,{size:14}),document.createTextNode(` Snap`));return}this.#f?(e.className=`slicc-capture__btn slicc-capture__btn--rec`,e.setAttribute(`part`,`stop`),e.setAttribute(`aria-label`,`Stop recording`),e.append(F(`span`,{class:`slicc-capture__square`}),document.createTextNode(` Stop`))):(e.className=`slicc-capture__btn slicc-capture__btn--rec`,e.setAttribute(`part`,`record`),e.setAttribute(`aria-label`,`Start recording`),e.append(F(`span`,{class:`slicc-capture__dot`}),document.createTextNode(` Record`)))}#V(){if(this.mode===`photo`){this.#k();return}this.#f?this.#j():this.#A()}#H(){if(this.#l)return;this.#l=!0,this.#e=F(`video`,{class:`slicc-capture__video`,part:`video`,autoplay:!0,muted:!0,playsinline:!0}),this.#e.muted=!0,this.#r=F(`div`,{class:`slicc-capture__status`}),this.#t=F(`select`,{class:`slicc-capture__select`,part:`picker`,"aria-label":`Camera`,hidden:!0}),this.#t.addEventListener(`change`,()=>{this.#D(this.#t.value)}),this.#n=F(`select`,{class:`slicc-capture__select`,part:`audio-picker`,"aria-label":`Microphone`,hidden:!0}),this.#n.addEventListener(`change`,()=>{this.#O(this.#n.value)}),this.#s=F(`button`,{type:`button`,class:`slicc-capture__mode-btn`,part:`mode`,"aria-pressed":`true`,"aria-label":`Photo`},m(`image`,{size:14})),this.#s.addEventListener(`click`,()=>{this.mode=`photo`}),this.#c=F(`button`,{type:`button`,class:`slicc-capture__mode-btn`,part:`mode`,"aria-pressed":`false`,"aria-label":`Video`},m(`video`,{size:14})),this.#c.addEventListener(`click`,()=>{this.#U()});let e=F(`div`,{class:`slicc-capture__mode`,role:`group`,"aria-label":`Capture mode`},this.#s,this.#c);this.#i=F(`span`,{class:`slicc-capture__timer`,hidden:!0}),this.#o=F(`button`,{type:`button`,class:`slicc-capture__close`,part:`cancel`,"aria-label":`Cancel`},m(`x`,{size:14})),this.#o.addEventListener(`click`,()=>this.#L()),this.#a=F(`button`,{type:`button`,class:`slicc-capture__btn slicc-capture__btn--primary`,part:`snap`,"aria-label":`Snap photo`}),this.#a.addEventListener(`click`,()=>this.#V());let t=F(`div`,{class:`slicc-capture__bar`},this.#t,this.#n,F(`span`,{class:`slicc-capture__spacer`}),this.#i,this.#a,e);this.replaceChildren(this.#e,this.#r,t,this.#o),this.#z(this.mode)}async#U(){if(this.mode=`video`,!this.#u||this.#u.getAudioTracks().length>0)return;let e=this.#v();if(!e)return;let t=this.#u.getVideoTracks()[0]?.getSettings?.().deviceId??this.preferredDevice??null,n=await this.#x(e,this.preferredAudioDevice,`video`);try{let r=t?await e.getUserMedia({video:{deviceId:{exact:t}},audio:n}):await e.getUserMedia({video:!0,audio:n});this.#I(),this.#u=r,this.#S(),this.#C(r),await this.#T(e)}catch{this.#r.textContent=`Microphone unavailable — recording video only.`}}});var cr=[`off`,`low`,`medium`,`high`,`xhigh`,`max`],lr={off:{label:`Secco`,gloss:`bone dry — not a drop (ask any prosecco)`,tint:`var(--txt-3)`},low:{label:`Goccia`,gloss:`one drop — bar-speak: «macchiato, solo una goccia»`,tint:`color-mix(in srgb, var(--violet) 20%, var(--txt-3))`},medium:{label:`Bagnato`,gloss:`properly wet`,tint:`color-mix(in srgb, var(--violet) 40%, var(--txt-3))`},high:{label:`Affogato`,gloss:`drowned — the menu item itself`,tint:`color-mix(in srgb, var(--violet) 60%, var(--txt-3))`},xhigh:{label:`Inzuppato`,gloss:`soaked through, biscotto-style`,tint:`color-mix(in srgb, var(--violet) 80%, var(--txt-3))`},max:{label:`Sprofondato`,gloss:`sunk to the bottom`,tint:`var(--violet)`}},ur=`max`,dr=`Opus 4.8`,fr=[{name:`Opus 4.8`,provider:`Anthropic`,id:`claude-opus-4-8`},{name:`Sonnet 4.6`,provider:`Anthropic`,id:`claude-sonnet-4-6`},{name:`Haiku 4.5`,provider:`Anthropic`,id:`claude-haiku-4-5`}],pr=8;function mr(e){let t=typeof e==`string`?{name:e}:e;return{...t,name:t.name,id:t.id??t.name}}var hr=`max`,gr=13;function _r(){return m(`sparkles`,{size:gr,class:`ic`,part:`model-icon`})}function vr(){return m(`brain`,{size:gr,class:`brain`,part:`brain`})}function yr(){return m(`chevron-down`,{size:11,part:`caret`})}var br=`http://www.w3.org/2000/svg`;function xr(){let e=document.createElementNS(br,`svg`);e.setAttribute(`width`,`0`),e.setAttribute(`height`,`0`),e.setAttribute(`aria-hidden`,`true`),e.setAttribute(`style`,`position:absolute`);let t=document.createElementNS(br,`defs`),n=document.createElementNS(br,`linearGradient`);n.setAttribute(`id`,`meta-rainbow`),n.setAttribute(`x1`,`0`),n.setAttribute(`y1`,`0`),n.setAttribute(`x2`,`1`),n.setAttribute(`y2`,`0`);for(let[e,t]of[[`0%`,`#f43f5e`],[`28%`,`#f59e0b`],[`64%`,`#06b6d4`],[`100%`,`#8b5cf6`]]){let r=document.createElementNS(br,`stop`);r.setAttribute(`offset`,e),r.setAttribute(`stop-color`,t),n.appendChild(r)}return t.appendChild(n),e.appendChild(t),e}var Sr=I(`
|
|
1966
|
+
`,gn=`slicc-composer-capture-style`;function _n(e){if(e.getElementById(gn))return;let t=e.createElement(`style`);t.id=gn,t.textContent=hn,(e.head??e.documentElement).appendChild(t)}var vn=`photo`,yn=[`video/webm;codecs=vp9,opus`,`video/webm;codecs=vp8,opus`,`video/webm`];function bn(){if(typeof MediaRecorder>`u`)return`video/webm`;for(let e of yn)if(MediaRecorder.isTypeSupported?.(e))return e;return`video/webm`}function xn(e){let t=Math.max(0,Math.floor(e/1e3)),n=Math.floor(t/60),r=t%60;return`${n}:${String(r).padStart(2,`0`)}`}A(`slicc-composer-capture`,class extends HTMLElement{static observedAttributes=[`mode`,`preferred-device`,`preferred-audio-device`];media=null;recorderFactory=null;#e;#t;#n;#r;#i;#a;#o;#s;#c;#l=!1;#u=null;#d=null;#f=null;#p=[];#m=0;#h=null;#g=null;#_=e=>{e.key===`Escape`&&this.#g&&this.#L()};connectedCallback(){_n(this.ownerDocument),this.#H(),this.ownerDocument.addEventListener(`keydown`,this.#_)}disconnectedCallback(){if(this.ownerDocument.removeEventListener(`keydown`,this.#_),this.#N(),this.#P(),this.#I(),this.#g){let e=this.#g;this.#g=null,e(null)}}attributeChangedCallback(e,t,n){e===`mode`&&this.#l&&this.#z(n??vn)}get mode(){return this.getAttribute(`mode`)===`video`?`video`:`photo`}set mode(e){e==null?this.removeAttribute(`mode`):this.setAttribute(`mode`,e)}get preferredDevice(){return this.getAttribute(`preferred-device`)}set preferredDevice(e){e==null?this.removeAttribute(`preferred-device`):this.setAttribute(`preferred-device`,e)}get preferredAudioDevice(){return this.getAttribute(`preferred-audio-device`)}set preferredAudioDevice(e){e==null?this.removeAttribute(`preferred-audio-device`):this.setAttribute(`preferred-audio-device`,e)}#v(){return this.media??(typeof navigator<`u`?navigator.mediaDevices:null)??null}#y(e,t){return this.recorderFactory?this.recorderFactory(e,t):new MediaRecorder(e,t)}async open(e){this.#H(),e&&(this.mode=e),this.#z(this.mode);let t=this.#v();if(!t)return null;try{this.#u=await this.#b(t,this.preferredDevice,this.preferredAudioDevice,this.mode)}catch{return null}return this.#S(),this.#C(this.#u),await this.#w(t),await this.#T(t),this.hidden=!1,new Promise(e=>{this.#g=e})}async#b(e,t,n,r){let i=await this.#x(e,n,r);if(t)try{return await e.getUserMedia({video:{deviceId:{exact:t}},audio:i})}catch{}try{return await e.getUserMedia({video:!0,audio:i})}catch(t){if(i===!1)throw t;return this.#r.textContent=`Microphone unavailable — recording video only.`,e.getUserMedia({video:!0,audio:!1})}}async#x(e,t,n){if(n!==`video`)return!1;if(t)return{deviceId:{exact:t}};let r=[];try{r=(await e.enumerateDevices()).filter(e=>e.kind===`audioinput`)}catch{r=[]}let i=o(a(r,`microphone`));return!i||{deviceId:{exact:i}}}#S(){this.#d=this.#u?.getAudioTracks()[0]??null}#C(e){this.#e.srcObject=e,this.#e.muted=!0,this.#e.play?.()?.catch(()=>void 0);let t=e.getVideoTracks()[0]?.getSettings?.().facingMode;this.#e.toggleAttribute(`data-mirrored`,t!==`environment`)}async#w(e){let t=[];try{t=(await e.enumerateDevices()).filter(e=>e.kind===`videoinput`)}catch{t=[]}let n=a(t,`camera`);this.#t.replaceChildren(...n.map(e=>j(`option`,{value:e.deviceId},e.label)));let r=this.#u?.getVideoTracks()[0]?.getSettings?.().deviceId;r&&(this.#t.value=r),this.#t.toggleAttribute(`hidden`,!i(n))}async#T(e){let t=[];try{t=(await e.enumerateDevices()).filter(e=>e.kind===`audioinput`)}catch{t=[]}let n=a(t,`microphone`);this.#n.replaceChildren(...n.map(e=>j(`option`,{value:e.deviceId},e.label)));let r=this.#d?.getSettings?.().deviceId??this.preferredAudioDevice??o(n);r&&n.some(e=>e.deviceId===r)&&(this.#n.value=r),this.#E()}#E(){if(!this.#n)return;let e=this.#n.options.length>=2,t=this.mode===`video`&&e;this.#n.toggleAttribute(`hidden`,!t)}async#D(e){let t=this.#v();if(t){this.#r.textContent=``;try{let n=await t.getUserMedia({video:{deviceId:{exact:e}}});this.#F();let r=n;if(this.mode===`video`&&this.#d&&this.#d.readyState===`live`)r.addTrack(this.#d);else if(this.mode===`video`)try{let e=await t.getUserMedia({audio:await this.#x(t,this.preferredAudioDevice,`video`)});for(let t of e.getAudioTracks())this.#d=t,r.addTrack(t)}catch{this.#r.textContent=`Microphone unavailable — recording video only.`}this.#u=r,this.#C(r),this.dispatchEvent(new CustomEvent(`slicc-capture-device-change`,{detail:{deviceId:e,kind:`camera`},bubbles:!0,composed:!0}))}catch{this.#r.textContent=`Could not switch camera — keeping the current one.`}}}async#O(e){let t=this.#v();if(!t||!this.#u)return;this.#r.textContent=``;let n;try{n=await t.getUserMedia({audio:{deviceId:{exact:e}}})}catch{this.#r.textContent=`Could not switch microphone — keeping the current one.`;return}let r=n.getAudioTracks()[0];if(!r){this.#r.textContent=`Could not switch microphone — keeping the current one.`;return}if(this.#d){try{this.#u.removeTrack(this.#d)}catch{}this.#d.stop()}this.#u.addTrack(r),this.#d=r,this.preferredAudioDevice=e,this.dispatchEvent(new CustomEvent(`slicc-capture-device-change`,{detail:{deviceId:e,kind:`microphone`},bubbles:!0,composed:!0}))}#k(){let e=this.ownerDocument.createElement(`canvas`);if(e.width=this.#e.videoWidth,e.height=this.#e.videoHeight,e.width===0||e.height===0){this.#r.textContent=`No frame yet — give the camera a moment.`;return}e.getContext(`2d`)?.drawImage(this.#e,0,0);let t=`image/png`,n=e.toDataURL(t);this.#R({kind:`image`,dataUrl:n,mimeType:t,width:e.width,height:e.height})}#A(){if(!this.#u||this.#f)return;this.#p=[];let e=bn(),t;try{t=this.#y(this.#u,{mimeType:e})}catch{this.#r.textContent=`Recording is not supported in this browser.`;return}t.ondataavailable=e=>{e.data&&e.data.size>0&&this.#p.push(e.data)},t.onstop=()=>this.#M(e);try{t.start()}catch{this.#r.textContent=`Could not start recording.`;return}this.#f=t,this.#m=Date.now(),this.#n.disabled=!0,this.#t.disabled=!0,this.#i.hidden=!1,this.#i.textContent=xn(0),this.#h=setInterval(()=>{this.#i.textContent=xn(Date.now()-this.#m)},250),this.#B()}#j(){let e=this.#f;if(e)try{e.state!==`inactive`&&e.stop()}catch{this.#M(e.mimeType||`video/webm`)}}#M(e){let t=this.#m?Date.now()-this.#m:0;this.#N();let n=this.#f?.mimeType||e||`video/webm`,r=new Blob(this.#p,{type:n});this.#p=[],this.#f=null,this.#n&&(this.#n.disabled=!1),this.#t&&(this.#t.disabled=!1);let i=typeof URL<`u`?URL.createObjectURL(r):void 0;this.#R({kind:`video`,blob:r,dataUrl:i,mimeType:n,width:this.#e.videoWidth,height:this.#e.videoHeight,durationMs:t})}#N(){this.#h!=null&&(clearInterval(this.#h),this.#h=null),this.#i.hidden=!0,this.#i.textContent=``,this.#m=0}#P(){let e=this.#f;if(this.#f=null,this.#p=[],this.#n&&(this.#n.disabled=!1),this.#t&&(this.#t.disabled=!1),e){e.ondataavailable=null,e.onstop=null;try{e.state!==`inactive`&&e.stop()}catch{}}}#F(){for(let e of this.#u?.getVideoTracks()??[])e.stop()}#I(){for(let e of this.#u?.getTracks()??[])e.stop();this.#u=null,this.#d=null,this.#e&&(this.#e.srcObject=null)}#L(){this.dispatchEvent(new CustomEvent(`slicc-capture-cancel`,{bubbles:!0,composed:!0})),this.#R(null)}#R(e){e&&this.dispatchEvent(new CustomEvent(`slicc-capture`,{detail:e,bubbles:!0,composed:!0})),this.#N(),this.#P(),this.#I();let t=this.#g;this.#g=null,this.hidden=!0,t?.(e)}#z(e){let t=e===`video`;this.#s.setAttribute(`aria-pressed`,String(!t)),this.#c.setAttribute(`aria-pressed`,String(t)),this.#r.textContent=t?`Mic on — video will record audio.`:``,this.#B(),this.#E()}#B(){let e=this.#a;if(e.replaceChildren(),this.mode===`photo`){e.className=`slicc-capture__btn slicc-capture__btn--primary`,e.setAttribute(`part`,`snap`),e.setAttribute(`aria-label`,`Snap photo`),e.append(n(`camera`,{size:14}),document.createTextNode(` Snap`));return}this.#f?(e.className=`slicc-capture__btn slicc-capture__btn--rec`,e.setAttribute(`part`,`stop`),e.setAttribute(`aria-label`,`Stop recording`),e.append(j(`span`,{class:`slicc-capture__square`}),document.createTextNode(` Stop`))):(e.className=`slicc-capture__btn slicc-capture__btn--rec`,e.setAttribute(`part`,`record`),e.setAttribute(`aria-label`,`Start recording`),e.append(j(`span`,{class:`slicc-capture__dot`}),document.createTextNode(` Record`)))}#V(){if(this.mode===`photo`){this.#k();return}this.#f?this.#j():this.#A()}#H(){if(this.#l)return;this.#l=!0,this.#e=j(`video`,{class:`slicc-capture__video`,part:`video`,autoplay:!0,muted:!0,playsinline:!0}),this.#e.muted=!0,this.#r=j(`div`,{class:`slicc-capture__status`}),this.#t=j(`select`,{class:`slicc-capture__select`,part:`picker`,"aria-label":`Camera`,hidden:!0}),this.#t.addEventListener(`change`,()=>{this.#D(this.#t.value)}),this.#n=j(`select`,{class:`slicc-capture__select`,part:`audio-picker`,"aria-label":`Microphone`,hidden:!0}),this.#n.addEventListener(`change`,()=>{this.#O(this.#n.value)}),this.#s=j(`button`,{type:`button`,class:`slicc-capture__mode-btn`,part:`mode`,"aria-pressed":`true`,"aria-label":`Photo`},n(`image`,{size:14})),this.#s.addEventListener(`click`,()=>{this.mode=`photo`}),this.#c=j(`button`,{type:`button`,class:`slicc-capture__mode-btn`,part:`mode`,"aria-pressed":`false`,"aria-label":`Video`},n(`video`,{size:14})),this.#c.addEventListener(`click`,()=>{this.#U()});let e=j(`div`,{class:`slicc-capture__mode`,role:`group`,"aria-label":`Capture mode`},this.#s,this.#c);this.#i=j(`span`,{class:`slicc-capture__timer`,hidden:!0}),this.#o=j(`button`,{type:`button`,class:`slicc-capture__close`,part:`cancel`,"aria-label":`Cancel`},n(`x`,{size:14})),this.#o.addEventListener(`click`,()=>this.#L()),this.#a=j(`button`,{type:`button`,class:`slicc-capture__btn slicc-capture__btn--primary`,part:`snap`,"aria-label":`Snap photo`}),this.#a.addEventListener(`click`,()=>this.#V());let t=j(`div`,{class:`slicc-capture__bar`},this.#t,this.#n,j(`span`,{class:`slicc-capture__spacer`}),this.#i,this.#a,e);this.replaceChildren(this.#e,this.#r,t,this.#o),this.#z(this.mode)}async#U(){if(this.mode=`video`,!this.#u||this.#u.getAudioTracks().length>0)return;let e=this.#v();if(!e)return;let t=this.#u.getVideoTracks()[0]?.getSettings?.().deviceId??this.preferredDevice??null,n=await this.#x(e,this.preferredAudioDevice,`video`);try{let r=t?await e.getUserMedia({video:{deviceId:{exact:t}},audio:n}):await e.getUserMedia({video:!0,audio:n});this.#I(),this.#u=r,this.#S(),this.#C(r),await this.#T(e)}catch{this.#r.textContent=`Microphone unavailable — recording video only.`}}});var Sn=[`off`,`low`,`medium`,`high`,`xhigh`,`max`],Cn={off:{label:`Secco`,gloss:`bone dry — not a drop (ask any prosecco)`,tint:`var(--txt-3)`},low:{label:`Goccia`,gloss:`one drop — bar-speak: «macchiato, solo una goccia»`,tint:`color-mix(in srgb, var(--violet) 20%, var(--txt-3))`},medium:{label:`Bagnato`,gloss:`properly wet`,tint:`color-mix(in srgb, var(--violet) 40%, var(--txt-3))`},high:{label:`Affogato`,gloss:`drowned — the menu item itself`,tint:`color-mix(in srgb, var(--violet) 60%, var(--txt-3))`},xhigh:{label:`Inzuppato`,gloss:`soaked through, biscotto-style`,tint:`color-mix(in srgb, var(--violet) 80%, var(--txt-3))`},max:{label:`Sprofondato`,gloss:`sunk to the bottom`,tint:`var(--violet)`}},wn=`max`,Tn=`Opus 4.8`,En=[{name:`Opus 4.8`,provider:`Anthropic`,id:`claude-opus-4-8`},{name:`Sonnet 4.6`,provider:`Anthropic`,id:`claude-sonnet-4-6`},{name:`Haiku 4.5`,provider:`Anthropic`,id:`claude-haiku-4-5`}],Dn=8;function On(e){let t=typeof e==`string`?{name:e}:e;return{...t,name:t.name,id:t.id??t.name}}var kn=`max`,An=13;function jn(){return n(`sparkles`,{size:An,class:`ic`,part:`model-icon`})}function Mn(){return n(`brain`,{size:An,class:`brain`,part:`brain`})}function Nn(){return n(`chevron-down`,{size:11,part:`caret`})}var Pn=`http://www.w3.org/2000/svg`;function Fn(){let e=document.createElementNS(Pn,`svg`);e.setAttribute(`width`,`0`),e.setAttribute(`height`,`0`),e.setAttribute(`aria-hidden`,`true`),e.setAttribute(`style`,`position:absolute`);let t=document.createElementNS(Pn,`defs`),n=document.createElementNS(Pn,`linearGradient`);n.setAttribute(`id`,`meta-rainbow`),n.setAttribute(`x1`,`0`),n.setAttribute(`y1`,`0`),n.setAttribute(`x2`,`1`),n.setAttribute(`y2`,`0`);for(let[e,t]of[[`0%`,`#f43f5e`],[`28%`,`#f59e0b`],[`64%`,`#06b6d4`],[`100%`,`#8b5cf6`]]){let r=document.createElementNS(Pn,`stop`);r.setAttribute(`offset`,e),r.setAttribute(`stop-color`,t),n.appendChild(r)}return t.appendChild(n),e.appendChild(t),e}var In=M(`
|
|
1967
1967
|
:host{display:block;}
|
|
1968
1968
|
*{box-sizing:border-box;}
|
|
1969
1969
|
.meta{display:flex;align-items:center;gap:8px;max-width:680px;margin:11px auto 0;font-family:var(--ui);}
|
|
@@ -2020,7 +2020,7 @@ slicc-composer-capture .slicc-capture__timer[hidden] {
|
|
|
2020
2020
|
/* Narrow / extension-sidebar: the ⏎ / ⇧⏎ keyboard hints don't fit (and touch
|
|
2021
2021
|
users have no keyboard) — drop them regardless of the narrow-chat attribute. */
|
|
2022
2022
|
@media (max-width: 560px){ .hint{display:none;} }
|
|
2023
|
-
`);
|
|
2023
|
+
`);A(`slicc-composer-meta`,class extends HTMLElement{static observedAttributes=[`model`,`thinking`,`narrow`,`no-thinking`];#e;#t=null;#n=null;#r=null;#i=null;#a=null;#o=null;#s=null;#c=null;#l=null;#u=!1;#d=!1;#f=``;#p=e=>{let t=e.composedPath();this.#u&&!t.includes(this)&&this.#C(),this.#d&&!t.includes(this)&&this.#O()};#m=e=>{e.key===`Escape`&&(this.#u&&(e.stopPropagation(),this.#C(),this.#r?.focus()),this.#d&&(e.stopPropagation(),this.#O(),this.#i?.focus()))};constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[In]}connectedCallback(){this.#_()}disconnectedCallback(){this.#b(),document.removeEventListener(`mousedown`,this.#p),document.removeEventListener(`keydown`,this.#m,!0)}attributeChangedCallback(){this.isConnected&&this.#_()}get model(){return this.getAttribute(`model`)??Tn}set model(e){e==null?this.removeAttribute(`model`):this.setAttribute(`model`,e)}get selectedModelId(){return this.#l}set selectedModelId(e){this.#l=e??null}get models(){return(this.#c??[...En]).map(e=>typeof e==`string`?e:{...e})}set models(e){this.#c=Array.isArray(e)?e.slice():null,this.isConnected&&this.#_()}get#h(){return(this.#c??En).map(On)}get#g(){return this.#c!==null&&this.#c.length===0}get thinking(){let e=this.getAttribute(`thinking`);return Sn.includes(e??``)?e:kn}set thinking(e){this.setAttribute(`thinking`,e)}get narrow(){return this.hasAttribute(`narrow`)}set narrow(e){this.toggleAttribute(`narrow`,e)}get noThinking(){return this.hasAttribute(`no-thinking`)}set noThinking(e){this.toggleAttribute(`no-thinking`,e)}get accented(){return this.thinking===wn}#_(){this.#b();let e=this.model,t=this.thinking,r=Cn[t],i=t===wn,a=this.#g,o=a?j(`button`,{type:`button`,class:`ctl msel`,part:`model`},jn(),` `,`Add AI`):j(`button`,{type:`button`,class:`ctl msel`,part:`model`,"aria-haspopup":`menu`,"aria-expanded":`false`},jn(),` `,e,` `,j(`span`,{class:`cx`},Nn())),s=j(`div`,{class:`menu`,part:`model-menu`,role:`menu`});if(this.#h.length>Dn){let e=j(`input`,{class:`msearch`,part:`model-search`,type:`text`,placeholder:`Search models…`,"aria-label":`Search models`});e.value=this.#f,e.addEventListener(`input`,()=>{this.#f=e.value,this.#v()}),e.addEventListener(`click`,e=>e.stopPropagation()),s.append(e)}this.#s=j(`div`,{class:`mlist`,role:`none`}),s.append(this.#s);let c=j(`div`,{class:`mwrap`},o,s),l=!this.noThinking&&!a,u=null;if(l){let e=Mn();e.style.color=r.tint;let a=j(`button`,{type:`button`,class:`ctl tsel${i?` x`:``}`,part:`thinking`,title:r.gloss,"aria-haspopup":`menu`,"aria-expanded":`false`},e,` `,j(`span`,{class:`tlabel`},r.label),` `,j(`span`,{class:`cx`},Nn()));a.style.setProperty(`--tw`,r.tint);let o=j(`div`,{class:`menu tmenu`,part:`thinking-menu`,role:`menu`}),s=j(`div`,{class:`mlist`,role:`none`});for(let e of Sn){let r=Cn[e],i=j(`button`,{type:`button`,class:`mitem titem`,role:`menuitemradio`,"data-level":e,"aria-selected":e===t?`true`:`false`,title:r.gloss},j(`span`,{class:`mname`},r.label),j(`span`,{class:`tick`},n(`check`,{size:14})));i.addEventListener(`click`,()=>this.#A(e)),s.append(i)}o.append(s),u=j(`div`,{class:`twrap`},a,o)}let d=j(`slot`,{name:`hint`});Ee(d,[j(`span`,{class:`kbd`},`⏎`),` send `,j(`span`,{class:`sep`}),` `,j(`span`,{class:`kbd`},`⇧⏎`),` newline`]);let f=j(`div`,{class:`meta`,part:`meta`},c,u??!1,j(`div`,{class:`mspacer`}),j(`span`,{class:`hint`,part:`hint`},d));this.#e.replaceChildren(Fn(),f),this.#a=c,this.#o=this.#e.querySelector(`.twrap`),this.#r=this.#e.querySelector(`.msel`),this.#i=this.#e.querySelector(`.tsel`),this.#v(),this.#w(),this.#k(),this.#y()}#v(){let e=this.#s;if(!e)return;let t=this.#f.trim().toLowerCase(),r=this.#h.filter(e=>!t||`${e.name} ${e.provider??``}`.toLowerCase().includes(t)),i=this.model,a=[];for(let e of r){let t=this.#l?e.id===this.#l:e.name===i,r=j(`button`,{type:`button`,class:`mitem`,role:`menuitemradio`,"data-id":e.id,"aria-selected":t?`true`:`false`},j(`span`,{class:`mname`},e.name),e.provider?j(`span`,{class:`mprov`},e.provider):!1,j(`span`,{class:`tick`},n(`check`,{size:14})));r.addEventListener(`click`,()=>this.#T(e.id)),a.push(r)}e.replaceChildren(...a.length?a:[j(`div`,{class:`mempty`},`No models match.`)])}#y(){this.#r&&(this.#t=e=>{if(e.stopPropagation(),this.#g){this.dispatchEvent(new CustomEvent(`add-ai`,{bubbles:!0,composed:!0}));return}this.#x()},this.#r.addEventListener(`click`,this.#t)),this.#i&&(this.#n=()=>this.#E(),this.#i.addEventListener(`click`,this.#n))}#b(){this.#r&&this.#t&&this.#r.removeEventListener(`click`,this.#t),this.#i&&this.#n&&this.#i.removeEventListener(`click`,this.#n),this.#t=null,this.#n=null,this.#r=null,this.#i=null,this.#a=null,this.#o=null,this.#s=null}get menuOpen(){return this.#u}openMenu(){this.#g||this.#S()}cycleModel(){if(this.#g)return;let e=this.#h;if(e.length===0)return;let t=this.#l?e.findIndex(e=>e.id===this.#l):-1;t<0&&(t=e.findIndex(e=>e.name===this.model));let n=e[(t+1)%e.length];n&&this.#T(n.id)}cycleThinking(){if(this.noThinking)return;let e=Sn[(Sn.indexOf(this.thinking)+1)%Sn.length];e&&this.#A(e)}#x(){this.#u?this.#C():this.#S()}#S(){if(this.#u)return;this.#O(),this.#u=!0,this.#f=``,this.#v(),this.#w();let e=this.#e.querySelector(`.msearch`);e&&(e.value=``,requestAnimationFrame(()=>e.focus())),document.addEventListener(`mousedown`,this.#p),document.addEventListener(`keydown`,this.#m,!0)}#C(){this.#u&&(this.#u=!1,this.#w(),this.#d||(document.removeEventListener(`mousedown`,this.#p),document.removeEventListener(`keydown`,this.#m,!0)))}#w(){this.#a?.classList.toggle(`open`,this.#u),this.#r?.setAttribute(`aria-expanded`,this.#u?`true`:`false`)}#T(e){let t=this.#h.find(t=>t.id===e)??{name:e,id:e,provider:void 0};this.#l=t.id,this.#C(),t.name!==this.model&&(this.model=t.name),this.dispatchEvent(new CustomEvent(`model-change`,{detail:{model:t.name,provider:t.provider,id:t.id},bubbles:!0,composed:!0}))}#E(){this.#d?this.#O():this.#D()}#D(){this.#d||(this.#C(),this.#d=!0,this.#k(),document.addEventListener(`mousedown`,this.#p),document.addEventListener(`keydown`,this.#m,!0))}#O(){this.#d&&(this.#d=!1,this.#k(),this.#u||(document.removeEventListener(`mousedown`,this.#p),document.removeEventListener(`keydown`,this.#m,!0)))}#k(){this.#o?.classList.toggle(`open`,this.#d),this.#i?.setAttribute(`aria-expanded`,this.#d?`true`:`false`)}#A(e){this.#O(),this.thinking=e,this.dispatchEvent(new CustomEvent(`thinking-change`,{detail:{thinking:e,label:Cn[e].label,accented:e===wn},bubbles:!0,composed:!0}))}});async function Ln(e){let t=new TextEncoder().encode(e),n=await crypto.subtle.digest(`SHA-256`,t);return Array.from(new Uint8Array(n)).map(e=>e.toString(16).padStart(2,`0`)).join(``)}async function Rn(e,t={}){let n=(e??``).trim().toLowerCase();if(n===``)return null;let r=await Ln(n),i=t.size??80,a=t.fallback??`mp`;return`https://www.gravatar.com/avatar/${r}?s=${i}&d=${encodeURIComponent(a)}`}var zn=M(`
|
|
2024
2024
|
:host { display: inline-flex; }
|
|
2025
2025
|
:host([hidden]) { display: none; }
|
|
2026
2026
|
|
|
@@ -2223,7 +2223,7 @@ slicc-composer-capture .slicc-capture__timer[hidden] {
|
|
|
2223
2223
|
}
|
|
2224
2224
|
.glyph.is-press { transform: none; }
|
|
2225
2225
|
}
|
|
2226
|
-
`),
|
|
2226
|
+
`),Bn=18,Vn=72,Hn=`http://www.w3.org/2000/svg`,Un=15,Wn=.25;function Gn(e){let t=document.createElementNS(Hn,`svg`);t.setAttribute(`width`,`36`),t.setAttribute(`height`,`36`),t.setAttribute(`viewBox`,`0 0 36 36`),t.setAttribute(`fill`,`none`),t.setAttribute(`aria-hidden`,`true`);let n=2*Math.PI*Un,r=e=>{let t=document.createElementNS(Hn,`circle`);return t.setAttribute(`cx`,`18`),t.setAttribute(`cy`,`18`),t.setAttribute(`r`,String(Un)),t.setAttribute(`fill`,`none`),t.setAttribute(`stroke-width`,`2.5`),t.setAttribute(`stroke-linecap`,`round`),t.setAttribute(`class`,e),t};t.appendChild(r(`ring-track`));let i=r(`ring-arc`),a=e==null?Wn:Math.max(0,Math.min(1,e));return i.setAttribute(`stroke-dasharray`,`${n*a} ${n}`),e!=null&&i.setAttribute(`transform`,`rotate(-90 18 18)`),t.appendChild(i),t}function Kn(e){return e===`tool`?`tool`:`thinking`}function qn(e){if(e==null||e.trim()===``)return null;let t=Number(e);return Number.isFinite(t)?Math.max(0,Math.min(1,t)):null}A(`slicc-send-button`,class extends HTMLElement{static observedAttributes=[`disabled`,`busy`,`phase`,`progress`,`email`,`src`,`label`];#e;#t=null;#n=0;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[zn]}connectedCallback(){this.#d()}attributeChangedCallback(){this.isConnected&&this.#d()}get disabled(){return this.hasAttribute(`disabled`)}set disabled(e){this.toggleAttribute(`disabled`,!!e)}get busy(){return this.hasAttribute(`busy`)}set busy(e){this.toggleAttribute(`busy`,!!e)}get phase(){return Kn(this.getAttribute(`phase`))}set phase(e){this.setAttribute(`phase`,Kn(e))}get progress(){return qn(this.getAttribute(`progress`))}set progress(e){e==null?this.removeAttribute(`progress`):this.setAttribute(`progress`,String(e))}get email(){return this.getAttribute(`email`)}set email(e){e==null?this.removeAttribute(`email`):this.setAttribute(`email`,e)}get src(){return this.getAttribute(`src`)}set src(e){e==null?this.removeAttribute(`src`):this.setAttribute(`src`,e)}get label(){return this.getAttribute(`label`)}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}#r=()=>{if(!this.disabled){if(this.busy){this.dispatchEvent(new CustomEvent(`stop`,{bubbles:!0,composed:!0}));return}this.#l(),this.dispatchEvent(new CustomEvent(`send`,{bubbles:!0,composed:!0}))}};#i(){return this.#e.querySelector(`.glyph`)}#a=()=>{this.disabled||this.busy||this.#i()?.classList.add(`is-hover`)};#o=()=>{this.#i()?.classList.remove(`is-hover`,`is-press`)};#s=()=>{if(this.disabled||this.busy)return;let e=this.#i();e?.classList.add(`is-press`),e?.classList.remove(`is-hover`)};#c=()=>{this.#i()?.classList.remove(`is-press`)};#l(){let e=this.#e.querySelector(`.glyph`);e&&(e.classList.remove(`is-whoosh`),e.offsetWidth,e.classList.add(`is-whoosh`),e.addEventListener(`animationend`,()=>e.classList.remove(`is-whoosh`),{once:!0}))}#u(){let e=++this.#n;if(!this.#t)return;let t=t=>{if(e!==this.#n)return;let n=this.#t;if(n){if(n.querySelector(`.face`)?.remove(),t){let e=document.createElement(`img`);e.className=`face`,e.setAttribute(`part`,`face`),e.alt=``,e.src=t,n.prepend(e),n.classList.add(`has-face`)}else n.classList.remove(`has-face`)}},n=this.src;if(n){t(n);return}let r=this.email;if(!r||r.trim()===``){t(null);return}t(null),Rn(r,{size:Vn}).then(t).catch(()=>t(null))}#d(){let e=this.busy,t=this.disabled,r=e&&this.phase===`tool`,i=this.label??(e?`Stop`:`Send`),a;if(r){let e=this.progress,t=e==null;a=j(`slot`,{name:`busy`},j(`span`,{class:`stop`,part:`stop`},n(`square`,{size:Bn})),j(`span`,{class:`spinner${t?` is-indeterminate`:``}`,part:`spinner`},Gn(e)))}else a=e?j(`slot`,{name:`busy`},j(`span`,{class:`stop`,part:`stop`},n(`square`,{size:Bn}),j(`span`,{class:`stop-fill`},n(`square`,{size:Bn})))):j(`slot`,null,j(`span`,{class:`glyph`,part:`glyph`},n(`arrow-up`,{size:Bn})));let o=j(`button`,{part:`button`,class:`send${e?` is-busy`:``}${r?` is-tool`:``}`,type:`button`,title:i,"aria-label":i,disabled:t||void 0},a);this.#e.replaceChildren(o),this.#t=o,this.#t.addEventListener(`click`,this.#r),this.#t.addEventListener(`pointerenter`,this.#a),this.#t.addEventListener(`pointerleave`,this.#o),this.#t.addEventListener(`pointerdown`,this.#s),this.#t.addEventListener(`pointerup`,this.#c),this.#u()}});var Jn=`
|
|
2227
2227
|
slicc-input-card {
|
|
2228
2228
|
display: block;
|
|
2229
2229
|
}
|
|
@@ -2277,7 +2277,7 @@ slicc-input-card .toolbar slicc-add-menu {
|
|
|
2277
2277
|
flex: 1;
|
|
2278
2278
|
min-width: 0;
|
|
2279
2279
|
}
|
|
2280
|
-
`,
|
|
2280
|
+
`,Yn=`slicc-input-card-style`;function Xn(e){if(e.getElementById(Yn))return;let t=e.createElement(`style`);t.id=Yn,t.textContent=Jn,(e.head??e.documentElement).appendChild(t)}var Zn=`Ask sliccy, or describe a change…`;A(`slicc-input-card`,class extends HTMLElement{static observedAttributes=[`value`,`placeholder`,`suggestion`,`disabled`];#e;#t;#n;#r=!1;connectedCallback(){Xn(this.ownerDocument),this.#i(),this.#a(),this.#u()}attributeChangedCallback(e,t,n){!this.#r||t===n||(this.#a(),e===`value`&&this.#u())}get value(){return this.#r?this.#t.value:this.getAttribute(`value`)??``}set value(e){let t=e??``;this.#r&&(this.#t.value=t,this.#u()),t===``?this.removeAttribute(`value`):this.setAttribute(`value`,t)}get placeholder(){return this.getAttribute(`placeholder`)??Zn}set placeholder(e){e==null?this.removeAttribute(`placeholder`):this.setAttribute(`placeholder`,e)}get suggestion(){return this.getAttribute(`suggestion`)}set suggestion(e){e==null||e===``?this.removeAttribute(`suggestion`):this.setAttribute(`suggestion`,e)}get disabled(){return this.hasAttribute(`disabled`)}set disabled(e){this.toggleAttribute(`disabled`,!!e)}focus(e){this.#i(),this.#t.focus(e)}clear(){this.value=``}#i(){if(this.#r)return;this.#r=!0;let e=this.ownerDocument,t=Array.from(this.children).filter(e=>e.getAttribute(`slot`)===`toolbar`);if(this.replaceChildren(),this.#e=e.createElement(`div`),this.#e.className=`slicc-input-card__card`,this.#e.setAttribute(`part`,`card`),this.#t=e.createElement(`textarea`),this.#t.className=`ta`,this.#t.setAttribute(`part`,`textarea`),this.#t.rows=1,this.#n=e.createElement(`div`),this.#n.className=`toolbar`,this.#n.setAttribute(`part`,`toolbar`),t.length>0)for(let e of t)this.#n.appendChild(e);else this.#n.append(j(`slicc-add-menu`),j(`slicc-send-button`));this.#e.append(this.#t,this.#n),this.appendChild(this.#e),this.#t.addEventListener(`input`,this.#o),this.#t.addEventListener(`keydown`,this.#s),this.#n.addEventListener(`send`,this.#c)}#a(){if(!this.#r)return;let e=this.#t;e.placeholder=this.suggestion??this.placeholder,e.disabled=this.disabled;let t=this.getAttribute(`value`)??``;e.value!==t&&(e.value=t)}#o=e=>{e.stopPropagation();let t=this.#t.value;t===``?this.removeAttribute(`value`):this.setAttribute(`value`,t),this.#u(),this.dispatchEvent(new CustomEvent(`input`,{bubbles:!0,composed:!0,detail:{value:t}}))};#s=e=>{if(e.isComposing)return;if(e.key===`Enter`&&!e.shiftKey&&!e.altKey){e.preventDefault(),this.#l(void 0,e.ctrlKey||e.metaKey);return}if(e.key===`Tab`&&!e.shiftKey&&!e.altKey&&!e.ctrlKey&&!e.metaKey){let t=this.suggestion;if(t&&this.#t.value===``){e.preventDefault(),this.removeAttribute(`suggestion`);let n=this.#t;n.value=t,n.setSelectionRange(t.length,t.length),n.dispatchEvent(new Event(`input`,{bubbles:!0}))}return}let t=this.#t,n=t.selectionStart===t.selectionEnd;e.key===`ArrowUp`&&n&&t.selectionStart===0?(e.preventDefault(),this.dispatchEvent(new CustomEvent(`history-up`,{bubbles:!0,composed:!0}))):e.key===`ArrowDown`&&n&&t.selectionStart===t.value.length&&this.dispatchEvent(new CustomEvent(`history-down`,{bubbles:!0,composed:!0}))};#c=e=>{e.stopPropagation(),this.#l()};submit(e){this.#i(),this.#l(e)}focusEnd(){if(!this.#r)return;let e=this.#t;e.focus();let t=e.value.length;e.setSelectionRange(t,t)}#l(e,t){if(this.disabled)return;let n=this.#t.value;n.trim()!==``&&(this.removeAttribute(`suggestion`),this.dispatchEvent(new CustomEvent(`submit`,{bubbles:!0,composed:!0,detail:{value:n,...e?{source:e}:{},...t?{steer:!0}:{}}})))}#u(){if(!this.#r)return;let e=this.#t;e.style.height=`auto`;let t=e.scrollHeight;e.style.height=`${Math.min(t,140)}px`,e.style.overflowY=t>140?`auto`:`hidden`}});var Qn=`slicc-key-hud`,$n=4,er=1600,tr=`[?] help · [i] or [⏎] to type`,nr={"⏎":`corner-down-left`,"↵":`corner-down-left`,Enter:`corner-down-left`,"←":`arrow-left`,"→":`arrow-right`,"↑":`arrow-up`,"↓":`arrow-down`,"⇥":`arrow-right-to-line`};function rr(e,t){let i=nr[e],a=j(`kbd`,{class:t?`cap cap-hint`:`cap`,part:`cap`,...i?{"aria-label":e}:{}});return i&&r(i)?a.append(n(i,{size:t?11:12,strokeWidth:2.2})):a.textContent=e,a}function ir(e){return e.split(/(\[[^\]]+\])/).filter(e=>e!==``).map(e=>e.startsWith(`[`)&&e.endsWith(`]`)?rr(e.slice(1,-1),!0):e)}var ar=M(`
|
|
2281
2281
|
:host{display:block;font-family:var(--ui);color:var(--ink);}
|
|
2282
2282
|
:host([hidden]){display:none;}
|
|
2283
2283
|
.hud{display:flex;align-items:center;gap:8px;font:600 11.5px/1 var(--ui);}
|
|
@@ -2327,9 +2327,9 @@ slicc-input-card .toolbar slicc-add-menu {
|
|
|
2327
2327
|
.pressanimation:$PREFIX-press-in .12s ease-out;
|
|
2328
2328
|
.hudanimation:$PREFIX-band-in .14s ease-out;
|
|
2329
2329
|
}
|
|
2330
|
-
@keyframes ${
|
|
2331
|
-
@keyframes ${
|
|
2332
|
-
`);
|
|
2330
|
+
@keyframes ${Qn}-press-in{from{opacity:0;transform:translateY(2px) scale(.94);}to{opacity:1;transform:none;}}
|
|
2331
|
+
@keyframes ${Qn}-band-in{from{opacity:0;}to{opacity:1;}}
|
|
2332
|
+
`);A(Qn,class extends HTMLElement{static observedAttributes=[`label`,`hint`];#e;#t=[];#n=null;#r=null;#i=null;#a=null;#o=null;#s=null;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[ar]}connectedCallback(){this.hasAttribute(`role`)||this.setAttribute(`role`,`status`),this.hasAttribute(`aria-live`)||this.setAttribute(`aria-live`,`polite`),this.#f(),this.#l()}disconnectedCallback(){this.#u()}attributeChangedCallback(){this.#i&&this.#p()}get label(){return this.getAttribute(`label`)??`Keyboard mode`}set label(e){this.setAttribute(`label`,e)}get hint(){return this.getAttribute(`hint`)??tr}set hint(e){this.setAttribute(`hint`,e)}get depth(){let e=Number.parseInt(this.getAttribute(`depth`)??``,10);return Number.isFinite(e)&&e>0?e:$n}set depth(e){this.setAttribute(`depth`,String(e))}get linger(){let e=Number.parseInt(this.getAttribute(`linger`)??``,10);return Number.isFinite(e)&&e>0?e:er}set linger(e){this.setAttribute(`linger`,String(e))}get presses(){return this.#t.map(e=>({...e,caps:[...e.caps]}))}set presses(e){this.#t=(Array.isArray(e)?e:[]).filter(e=>Array.isArray(e?.caps)).map(e=>({bound:e.bound!==!1,caps:[...e.caps]})),this.#u(),this.#r=null,this.#d(),this.#p()}record(e,t=!0){this.#t.push({caps:[...e],bound:t}),this.#d(),this.#p(),this.#c(this.linger)}clear(){this.#u(),this.#r=null,this.#t=[],this.#p()}#c(e){this.#u(),this.#r=Date.now()+e,this.#n=setTimeout(()=>{this.#n=null,this.clear()},e)}#l(){if(this.#r===null||this.#t.length===0)return;let e=this.#r-Date.now();e<=0?this.clear():this.#c(e)}#u(){this.#n!==null&&(clearTimeout(this.#n),this.#n=null)}#d(){let e=this.#t.length-this.depth;e>0&&this.#t.splice(0,e)}#f(){this.#a=j(`span`,{class:`label`,part:`label`}),this.#o=j(`span`,{class:`hint`,part:`hint`}),this.#s=j(`div`,{class:`keys`,part:`keys`,"aria-hidden":`true`}),this.#i=j(`div`,{class:`hud`,part:`hud`},n(`keyboard`,{size:15,strokeWidth:1.9,class:`icon`,part:`icon`}),this.#a,this.#o,this.#s),this.#e.replaceChildren(this.#i),this.#p()}#p(){!this.#a||!this.#o||!this.#s||(this.#a.textContent=this.label,this.#o.replaceChildren(),Ee(this.#o,ir(this.hint)),this.#o.hidden=this.hint===``||this.#t.length>0,this.#s.replaceChildren(...this.#t.map((e,t)=>j(`span`,{class:`press`,"data-bound":String(e.bound!==!1),...t<this.#t.length-1?{"data-age":`stale`}:{}},...e.caps.map(e=>rr(e,!1))))))}});var or=M(`
|
|
2333
2333
|
:host{display:block;font-family:var(--ui);}
|
|
2334
2334
|
:host(:not([count])),:host([count="0"]),:host([count="-0"]){display:none;}
|
|
2335
2335
|
.wrap{display:flex;flex-direction:column;align-items:stretch;gap:6px;}
|
|
@@ -2350,7 +2350,7 @@ slicc-input-card .toolbar slicc-add-menu {
|
|
|
2350
2350
|
:host-context(body.dark) .dismiss:hover,:host-context(body.dark) .dismiss:focus-visible,
|
|
2351
2351
|
:host-context(.dark) .dismiss:hover,:host-context(.dark) .dismiss:focus-visible,
|
|
2352
2352
|
:host-context([data-theme="dark"]) .dismiss:hover,:host-context([data-theme="dark"]) .dismiss:focus-visible{background:color-mix(in srgb,#0a0a0a 14%,transparent);}
|
|
2353
|
-
`),
|
|
2353
|
+
`),sr=[{rot:0,x:0,y:0},{rot:-2,x:-3,y:-2},{rot:2,x:3,y:-4},{rot:-3,x:-5,y:-6},{rot:3,x:5,y:-8},{rot:-1,x:-2,y:-10},{rot:1,x:2,y:-12}];function cr(e){return sr[Math.min(e,sr.length-1)]??sr[0]}A(`slicc-queued-stack`,class extends HTMLElement{#e;#t=[];constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[or]}connectedCallback(){this.#i()}get count(){return this.#t.length}setMessages(e){this.#t=e.slice(),this.setAttribute(`count`,String(this.#t.length)),this.#i()}#n(e){this.dispatchEvent(new CustomEvent(`slicc-queued-remove`,{detail:{id:e},bubbles:!0,composed:!0}))}#r(e,t,r,i){let{rot:a,x:o,y:s}=cr(t),c=r?`none`:`translate(${o}px, ${s}px) rotate(${a}deg)`,l=`card${r?` is-front`:``}${t===0?``:t===1?` is-back`:` is-deep`}`,u=r?`card front`:`card`,d=`transform:${c};z-index:${i};`,f=[j(`span`,{class:`bubble`},e.text)];if(e.attachments&&e.attachments>0&&f.push(j(`span`,{class:`attach`},`+${e.attachments}`)),r){let t=j(`button`,{type:`button`,class:`dismiss`,part:`dismiss`,"aria-label":`Remove queued message`},n(`x`,{size:14}));t.addEventListener(`click`,t=>{t.stopPropagation(),this.#n(e.id)}),f.push(t)}return j(`div`,{class:l,part:u,style:d},...f)}#i(){if(this.#t.length===0){this.#e.replaceChildren();return}let e=this.#t.length,t=[];for(let n=e-1;n>=0;n--){let r=e-1-n,i=r===0,a=n+1,o=this.#t[n];o&&t.push(this.#r(o,r,i,a))}let r=j(`div`,{class:`stack`,part:`stack`},...t),i=j(`div`,{class:`wrap`},j(`span`,{class:`badge`,part:`badge`},n(`clock`,{size:11}),`${e} queued`),r);this.#e.replaceChildren(i)}});var lr=1e3;function ur(e,t){let n=t.longPressMs??1e3,r=t.modifierClickAsLongPress??!0,i=null,a=!1,o=()=>{t.onPressEnd?.()},s=()=>{i!==null&&(clearTimeout(i),i=null),o()},c=e=>{e.button===0&&(e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||(a=!1,s(),t.onPressStart?.(e),i=setTimeout(()=>{a=!0,o(),i=null,t.onLongPress()},n)))},l=()=>s(),u=()=>s(),d=()=>s(),f=()=>s(),p=e=>{if(a){a=!1,e.preventDefault();return}if((e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)&&r){e.preventDefault(),t.onLongPress();return}t.onShortClick(e)};return e.addEventListener(`mousedown`,c),e.addEventListener(`mouseup`,l),e.addEventListener(`mouseleave`,u),e.addEventListener(`blur`,d),e.addEventListener(`contextmenu`,f),e.addEventListener(`click`,p),{destroy:()=>{s(),e.removeEventListener(`mousedown`,c),e.removeEventListener(`mouseup`,l),e.removeEventListener(`mouseleave`,u),e.removeEventListener(`blur`,d),e.removeEventListener(`contextmenu`,f),e.removeEventListener(`click`,p)}}}var dr=M(`
|
|
2354
2354
|
:host { display: inline-grid; }
|
|
2355
2355
|
:host([hidden]) { display: none; }
|
|
2356
2356
|
|
|
@@ -2432,7 +2432,7 @@ slicc-input-card .toolbar slicc-add-menu {
|
|
|
2432
2432
|
|
|
2433
2433
|
.glyph { display: grid; place-items: center; line-height: 1; }
|
|
2434
2434
|
.glyph svg { display: block; }
|
|
2435
|
-
`),
|
|
2435
|
+
`),fr=`square`,pr=18;A(`slicc-dock-item`,class extends HTMLElement{static observedAttributes=[`item-id`,`kind`,`hue`,`icon`,`tip`,`active`,`lit`];#e;#t=null;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[dr]}disconnectedCallback(){this.#t?.destroy(),this.#t=null}connectedCallback(){this.#n()}attributeChangedCallback(){this.isConnected&&this.#n()}get itemId(){return this.getAttribute(`item-id`)}set itemId(e){e==null?this.removeAttribute(`item-id`):this.setAttribute(`item-id`,e)}get kind(){return this.getAttribute(`kind`)===`sprinkle`?`sprinkle`:`tool`}set kind(e){this.setAttribute(`kind`,e===`sprinkle`?`sprinkle`:`tool`)}get hue(){return this.getAttribute(`hue`)}set hue(e){e==null?this.removeAttribute(`hue`):this.setAttribute(`hue`,e)}get icon(){return this.getAttribute(`icon`)??fr}set icon(e){e==null?this.removeAttribute(`icon`):this.setAttribute(`icon`,e)}get tip(){return this.getAttribute(`tip`)}set tip(e){e==null?this.removeAttribute(`tip`):this.setAttribute(`tip`,e)}get active(){return this.hasAttribute(`active`)}set active(e){this.toggleAttribute(`active`,!!e)}get lit(){return this.hasAttribute(`lit`)}set lit(e){this.toggleAttribute(`lit`,!!e)}#n(){let e=[`di`];this.kind===`sprinkle`&&e.push(`sp`),this.active&&e.push(`on`),this.lit&&e.push(`lit`);let t=this.tip,r=n(this.icon,{size:pr,part:`icon`}),i=t??this.itemId??`dock item`,a=j(`button`,{type:`button`,part:`button`,class:e.join(` `),"aria-label":i,"aria-pressed":this.active?`true`:`false`},j(`span`,{class:`glyph`,part:`glyph`},j(`slot`,null,r)),t?j(`span`,{class:`tip`,part:`tip`},t):null),o=this.hue;o&&a.style.setProperty(`--h`,o),this.#t?.destroy(),this.#t=ur(a,{onShortClick:this.#r,onLongPress:()=>this.#i(`longpress`)}),this.#e.replaceChildren(a)}#r=()=>{this.#i(this.active?`collapse`:`select`)};#i(e){this.dispatchEvent(new CustomEvent(e,{detail:{id:this.itemId},bubbles:!0,composed:!0}))}});var mr=[{id:`browser`,icon:`globe`,label:`Browser · CDP`,kind:`tool`},{id:`files`,icon:`folder`,label:`Files · VFS`,kind:`tool`},{id:`term`,icon:`square-terminal`,label:`Terminal`,kind:`tool`},{id:`memory`,icon:`brain`,label:`Memory`,kind:`tool`},{id:`monitor`,icon:`activity`,label:`Monitor`,kind:`tool`}],hr=`
|
|
2436
2436
|
.slicc-dock {
|
|
2437
2437
|
flex: 0 0 48px;
|
|
2438
2438
|
box-sizing: border-box;
|
|
@@ -2453,7 +2453,7 @@ slicc-input-card .toolbar slicc-add-menu {
|
|
|
2453
2453
|
margin: 2px 0;
|
|
2454
2454
|
}
|
|
2455
2455
|
.slicc-dock .grow { flex: 1; }
|
|
2456
|
-
`,
|
|
2456
|
+
`,gr=`slicc-dock-style`;function _r(e){if(e.getElementById(gr))return;let t=e.createElement(`style`);t.id=gr,t.textContent=hr,(e.head??e.documentElement).appendChild(t)}function vr(e){return e===`sprinkle`?`sprinkle`:`tool`}A(`slicc-dock`,class extends HTMLElement{static get observedAttributes(){return[`active`,`system-tools`]}#e=[];#t=null;#n=null;#r=null;#i=!1;connectedCallback(){_r(this.ownerDocument),this.classList.add(`slicc-dock`),this.setAttribute(`part`,`rail`),this.setAttribute(`role`,`toolbar`),this.setAttribute(`aria-orientation`,`vertical`),this.#i||=(this.#a(),!0),this.#t||(this.#t=e=>this.#u(e),this.#n=e=>this.#d(e),this.#r=e=>this.#f(e),this.addEventListener(`select`,this.#t),this.addEventListener(`collapse`,this.#n),this.addEventListener(`longpress`,this.#r)),this.#c()}disconnectedCallback(){this.#t&&=(this.removeEventListener(`select`,this.#t),null),this.#n&&=(this.removeEventListener(`collapse`,this.#n),null),this.#r&&=(this.removeEventListener(`longpress`,this.#r),null)}attributeChangedCallback(e){this.#i&&(e===`active`?this.#l():e===`system-tools`&&this.#c())}get items(){return this.#e.map(e=>({...e}))}set items(e){this.#e=Array.isArray(e)?e.map(e=>({...e})):[],this.#i&&this.isConnected&&this.#c()}get active(){return this.getAttribute(`active`)}set active(e){e==null?this.removeAttribute(`active`):this.setAttribute(`active`,e)}get systemTools(){return this.hasAttribute(`system-tools`)}set systemTools(e){this.toggleAttribute(`system-tools`,!!e)}selectItem(e){this.active=e,this.dispatchEvent(new CustomEvent(`slicc-dock-select`,{detail:{id:e,kind:this.#o(e)},bubbles:!0,composed:!0}))}clearActive(){this.active=null}collapse(){let e=this.active;this.active=null,e!=null&&this.dispatchEvent(new CustomEvent(`slicc-dock-collapse`,{detail:{id:e},bubbles:!0,composed:!0}))}#a(){let e=[...this.querySelectorAll(`slicc-dock-item`)];if(e.length===0)return;let t=[];for(let n of e){let e=vr(n.getAttribute(`kind`)),r=n.getAttribute(`item-id`)??n.dataset.t??n.getAttribute(`tip`)??``;e!==`tool`&&r!==``&&t.push({id:r,icon:n.getAttribute(`icon`)??void 0,label:n.getAttribute(`tip`)??void 0,kind:`sprinkle`,hue:n.getAttribute(`hue`)??void 0})}for(let t of e)t.remove();this.#e.length===0&&(this.#e=t)}#o(e){return mr.some(t=>t.id===e)?`tool`:this.#e.find(t=>t.id===e)?.kind??`tool`}#s(e,t){let n=e.id,r=vr(e.kind),i=e.icon??``,a=e.label??n,o=t!=null&&t===n,s=e.hue;return j(`slicc-dock-item`,{"data-t":n,"item-id":n,kind:r,icon:i||!1,tip:a,hue:s||!1,active:o})}#c(){let e=this.active,t=[];for(let n of this.#e)vr(n.kind)===`sprinkle`&&t.push(this.#s(n,e));if(t.push(j(`div`,{class:`grow`})),this.systemTools){t.push(j(`div`,{class:`div`}));for(let n of mr)t.push(this.#s(n,e))}this.replaceChildren(),Ee(this,t)}#l(){let e=this.active;for(let t of this.querySelectorAll(`slicc-dock-item`))t.toggleAttribute(`active`,t.dataset.t===e)}#u(e){let t=this.#p(e);t!=null&&(e.stopPropagation(),this.selectItem(t))}#d(e){let t=this.#p(e);t!=null&&(e.stopPropagation(),this.active!==t&&(this.active=t),this.collapse())}#f(e){let t=this.#p(e);t!=null&&(e.stopPropagation(),this.active!==t&&this.selectItem(t),this.dispatchEvent(new CustomEvent(`slicc-dock-longpress`,{detail:{id:t,kind:this.#o(t)},bubbles:!0,composed:!0})))}#p(e){let t=e.detail;if(t&&typeof t.id==`string`)return t.id;let n=e.target?.closest(`slicc-dock-item`);return n&&this.contains(n)?n.dataset.t??null:null}});var yr=M(`
|
|
2457
2457
|
:host { display: none; }
|
|
2458
2458
|
:host([open]) { display: block; }
|
|
2459
2459
|
.overlay {
|
|
@@ -2557,7 +2557,7 @@ slicc-input-card .toolbar slicc-add-menu {
|
|
|
2557
2557
|
color: rgba(255,255,255,.7); font-family: var(--ui); font-size: 14px;
|
|
2558
2558
|
}
|
|
2559
2559
|
@media (prefers-reduced-motion: reduce) { .overlay, .card { transition: none; } }
|
|
2560
|
-
`);function
|
|
2560
|
+
`);function br(e,t){let n=e===t-1?9:e<8?e+1:null;return n===null?null:j(`span`,{class:`num`,part:`number`},String(n))}var xr=3e3,Sr=`Open tabs`;A(`slicc-tab-overlay`,class extends HTMLElement{static observedAttributes=[`open`,`heading`];#e;#t=[];#n=null;#r=null;#i=!1;#a=null;#o=null;#s=e=>{if(!this.open)return;if(e.key===`Escape`){e.stopPropagation(),this.#_(`escape`);return}if(e.ctrlKey||e.metaKey||e.altKey||e.isComposing)return;let t=/^Digit([1-9])$/.exec(e.code??``)?.[1]??/^[1-9]$/.exec(e.key)?.[0];if(t){e.stopPropagation(),e.preventDefault(),this.#c(Number(t));return}(e.key===`p`||e.key===`P`)&&!this.hasAttribute(`no-peek`)&&(e.stopPropagation(),e.preventDefault(),this.peeking=!this.#i)};#c(e){if(this.#t.length===0){this.#l(e);return}let t=e===9?this.#t.length-1:e-1,n=t>=0?this.#t[t]:void 0;n&&this.#d(n.id)}#l(e){this.#u(),this.#a=e,this.#o=setTimeout(()=>this.#u(),xr)}#u(){this.#o&&clearTimeout(this.#o),this.#o=null,this.#a=null}constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[yr]}connectedCallback(){this.#m(),this.#h()}disconnectedCallback(){document.removeEventListener(`keydown`,this.#s,!0)}attributeChangedCallback(e){this.isConnected&&(e===`open`?this.#h():this.#m())}get open(){return this.hasAttribute(`open`)}set open(e){this.toggleAttribute(`open`,!!e)}get heading(){return this.getAttribute(`heading`)??Sr}set heading(e){e==null?this.removeAttribute(`heading`):this.setAttribute(`heading`,e)}get tabs(){return this.#t.map(e=>({...e}))}set tabs(e){this.#t=Array.isArray(e)?e.map(e=>({...e})):[],this.isConnected&&this.#m();let t=this.#a;t!==null&&this.#t.length>0&&(this.#u(),this.#c(t))}show(){this.open||=!0}get peeking(){return this.#i}set peeking(e){this.#i=e&&!this.hasAttribute(`no-peek`),this.toggleAttribute(`data-peek`,this.#i)}#d(e){this.#g(this.#i?`tab-peek`:`tab-activate`,e)}hide(){this.open&&this.#_(`api`)}#f(){let e=j(`button`,{class:`close`,part:`close`,type:`button`,"aria-label":`Close tabs overlay`},n(`x`,{size:18}));return e.addEventListener(`click`,()=>this.#_(`close-button`)),e}#p(e,t){let r=e.title??e.id,i=e.screenshot?j(`img`,{class:`shot`,part:`shot`,src:e.screenshot,alt:r,loading:`lazy`}):j(`div`,{class:`shot ph`,part:`shot`},n(`globe`,{size:28})),a=j(`button`,{class:`x`,part:`card-close`,type:`button`,"aria-label":`Close ${r}`},n(`x`,{size:14}));a.addEventListener(`click`,t=>{t.stopPropagation(),this.#g(`tab-close`,e.id)});let o=j(`div`,{class:`label`},j(`span`,{class:`name`,part:`title`},r),e.url?j(`span`,{class:`url`},e.url):null),s=j(`div`,{class:e.active?`card on`:`card`,part:`card`,role:`button`,tabindex:`0`,"data-tab-id":e.id,"aria-label":r,"aria-current":e.active?`true`:!1},br(t,this.#t.length),i,j(`div`,{class:`meta`},o,a));return s.addEventListener(`click`,()=>this.#d(e.id)),s.addEventListener(`keydown`,t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),this.#d(e.id))}),s}#m(){let e=j(`div`,{class:`bar`,part:`bar`},j(`span`,{class:`title`},this.heading),j(`span`,{class:`count`},String(this.#t.length)),j(`span`,{class:`peek`},`Peek · comes back`),j(`span`,{class:`grow`}),this.#f()),t;this.#t.length===0?t=j(`div`,{class:`empty`},`No open tabs.`):(t=j(`div`,{class:`grid`,part:`grid`,role:`list`}),this.#t.forEach((e,n)=>{t.appendChild(this.#p(e,n))})),this.#n=j(`div`,{class:`overlay`,part:`overlay`},e,t),this.#n.addEventListener(`mousedown`,e=>{e.target===this.#n&&this.#_(`backdrop`)}),this.#e.replaceChildren(this.#n)}#h(){this.open||(this.peeking=!1,this.#u()),this.open?(this.#r=this.getRootNode().activeElement,document.addEventListener(`keydown`,this.#s,!0),requestAnimationFrame(()=>this.#n?.querySelector(`.close`)?.focus())):(document.removeEventListener(`keydown`,this.#s,!0),this.#r?.focus?.(),this.#r=null)}#g(e,t){this.dispatchEvent(new CustomEvent(e,{detail:{id:t},bubbles:!0,composed:!0}))}#_(e){this.open=!1,this.dispatchEvent(new CustomEvent(`overlay-close`,{detail:{reason:e},bubbles:!0,composed:!0}))}});var Cr=`#3b6cb2`,wr=`
|
|
2561
2561
|
.slicc-freezer {
|
|
2562
2562
|
position: fixed;
|
|
2563
2563
|
left: 0;
|
|
@@ -2659,12 +2659,12 @@ slicc-input-card .toolbar slicc-add-menu {
|
|
|
2659
2659
|
|
|
2660
2660
|
/* ice-blue accent while a freezer context is active (prototype _ctxAccent) —
|
|
2661
2661
|
tints the toggle + the new-chat icon; cards keep their snow palette. */
|
|
2662
|
-
.slicc-freezer[ctx] .fztgl { color: var(--fz-ctx, ${
|
|
2662
|
+
.slicc-freezer[ctx] .fztgl { color: var(--fz-ctx, ${Cr}); border-color: color-mix(in srgb, var(--fz-ctx, ${Cr}) 40%, var(--line)); }
|
|
2663
2663
|
.slicc-freezer[ctx] ::part(new-icon),
|
|
2664
2664
|
.slicc-freezer[ctx] slicc-freezer-new::part(new-icon) {
|
|
2665
|
-
background: color-mix(in srgb, var(--fz-ctx, ${
|
|
2666
|
-
border-color: color-mix(in srgb, var(--fz-ctx, ${
|
|
2667
|
-
color: var(--fz-ctx, ${
|
|
2665
|
+
background: color-mix(in srgb, var(--fz-ctx, ${Cr}) 14%, var(--canvas));
|
|
2666
|
+
border-color: color-mix(in srgb, var(--fz-ctx, ${Cr}) 40%, var(--line));
|
|
2667
|
+
color: var(--fz-ctx, ${Cr});
|
|
2668
2668
|
}
|
|
2669
2669
|
|
|
2670
2670
|
/* match-hidden: search filtered a session row out (only meaningful when open,
|
|
@@ -2672,7 +2672,7 @@ slicc-input-card .toolbar slicc-add-menu {
|
|
|
2672
2672
|
prototype .fzcard row. */
|
|
2673
2673
|
.slicc-freezer[open] slicc-freezer-card.match-hidden,
|
|
2674
2674
|
.slicc-freezer[open] .fzcard.match-hidden { display: none; }
|
|
2675
|
-
`,
|
|
2675
|
+
`,Tr=`slicc-freezer-style`;function Er(e){if(e.getElementById(Tr))return;let t=e.createElement(`style`);t.id=Tr,t.textContent=wr,(e.head??e.documentElement).appendChild(t)}var Dr=`http://www.w3.org/2000/svg`;function Or(){let e=document.createElementNS(Dr,`svg`);for(let[t,n]of[[`width`,`14`],[`height`,`14`],[`viewBox`,`0 0 16 16`],[`fill`,`none`],[`stroke`,`currentColor`],[`stroke-width`,`1.6`],[`stroke-linecap`,`round`],[`stroke-linejoin`,`round`],[`aria-hidden`,`true`]])e.setAttribute(t,n);let t=document.createElementNS(Dr,`rect`);for(let[e,n]of[[`x`,`2.5`],[`y`,`3.5`],[`width`,`11`],[`height`,`9`],[`rx`,`1.5`]])t.setAttribute(e,n);let n=document.createElementNS(Dr,`line`);for(let[e,t]of[[`x1`,`6`],[`y1`,`3.5`],[`x2`,`6`],[`y2`,`12.5`]])n.setAttribute(e,t);let r=document.createElementNS(Dr,`polyline`);return r.setAttribute(`points`,`9,6.5 10.5,8 9,9.5`),e.append(t,n,r),e}A(`slicc-freezer`,class extends HTMLElement{static observedAttributes=[`open`,`ctx`,`search-placeholder`];#e;#t;#n;#r;#i=!1;#a=null;#o=null;connectedCallback(){Er(this.ownerDocument),this.classList.add(`slicc-freezer`),this.setAttribute(`part`,`freezer`),this.hasAttribute(`aria-label`)||this.setAttribute(`aria-label`,`Past sessions (freezer)`),this.#s(),this.#l(),this.#u()}disconnectedCallback(){this.#a&&this.#t&&(this.#t.removeEventListener(`click`,this.#a),this.#a=null),this.#o&&this.#n&&(this.#n.removeEventListener(`input`,this.#o),this.#o=null)}attributeChangedCallback(e,t,n){this.#i&&(e===`open`?(this.#l(),this.#u()):e===`search-placeholder`&&(this.#n.placeholder=n??`search past sessions`))}get open(){return this.hasAttribute(`open`)}set open(e){this.toggleAttribute(`open`,e)}get ctx(){return this.hasAttribute(`ctx`)}set ctx(e){this.toggleAttribute(`ctx`,e)}get searchPlaceholder(){return this.getAttribute(`search-placeholder`)??`search past sessions`}set searchPlaceholder(e){e==null?this.removeAttribute(`search-placeholder`):this.setAttribute(`search-placeholder`,e)}get query(){return this.#i?this.#n.value:``}set query(e){this.#s(),this.#n.value=e,this.#d()}get rail(){return this.#s(),this.#r}toggle(e){let t=e??!this.open;t===this.open&&this.#l(),this.open=t,this.#l(),this.#u(),this.dispatchEvent(new CustomEvent(`freezer-toggle`,{detail:{open:t},bubbles:!0,composed:!0}))}append(...e){this.#s(),this.#r.append(...e),this.#u()}#s(){if(this.#i)return;let e=this.querySelector(`:scope > .fzh`),t=this.querySelector(`:scope > .fzrail`);if(e instanceof HTMLElement&&t instanceof HTMLElement){this.#c(e,t);return}let n=Array.from(this.childNodes).filter(e=>!(e instanceof HTMLElement&&(e.classList.contains(`fzh`)||e.classList.contains(`fzrail`)))),r=this.ownerDocument,i=r.createElement(`div`);i.className=`fzh`,i.setAttribute(`part`,`header`);let a=r.createElement(`button`);a.className=`fztgl`,a.type=`button`,a.setAttribute(`part`,`toggle`),a.setAttribute(`aria-label`,`Toggle freezer`),a.append(Or());let o=r.createElement(`input`);o.className=`fzsearch`,o.type=`text`,o.setAttribute(`part`,`search`),o.placeholder=this.searchPlaceholder,o.setAttribute(`aria-label`,`Search past sessions`),i.append(a,o);let s=r.createElement(`div`);s.className=`fzrail`,s.setAttribute(`part`,`rail`);for(let e of n)s.appendChild(e);this.replaceChildren(i,s),this.#c(i,s)}#c(e,t){this.#i=!0,this.#e=e,this.#r=t;let n=e.querySelector(`.fztgl`),r=e.querySelector(`.fzsearch`);n&&(this.#t=n),r&&(this.#n=r),this.#t&&!this.#a&&(this.#a=()=>this.toggle(),this.#t.addEventListener(`click`,this.#a)),this.#n&&!this.#o&&(this.#o=()=>this.#d(),this.#n.addEventListener(`input`,this.#o))}#l(){if(!this.#t)return;let e=this.open;this.#t.setAttribute(`aria-expanded`,e?`true`:`false`),this.#t.title=e?`Collapse freezer`:`Expand freezer`}#u(){if(!this.#i)return;let e=this.open,t=this.#r.querySelectorAll(`slicc-freezer-card, slicc-freezer-new`);for(let n of t)n.toggleAttribute(`expanded`,e)}#d(){let e=this.#n.value.trim().toLowerCase(),t=this.#r.querySelectorAll(`slicc-freezer-card, .fzcard`);for(let n of t){let t=(n.textContent??``).toLowerCase();n.classList.toggle(`match-hidden`,e.length>0&&!t.includes(e))}}});var kr=14,Ar=M(`
|
|
2676
2676
|
:host {
|
|
2677
2677
|
display: inline-grid;
|
|
2678
2678
|
place-items: center;
|
|
@@ -2708,7 +2708,7 @@ slicc-input-card .toolbar slicc-add-menu {
|
|
|
2708
2708
|
nothing is slotted */
|
|
2709
2709
|
::slotted(*), .ic { line-height: 1; }
|
|
2710
2710
|
.ic { display: block; }
|
|
2711
|
-
`);
|
|
2711
|
+
`);A(`slicc-snowflake`,class extends HTMLElement{static observedAttributes=[`thawed`];#e;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[Ar];let e=j(`span`,{class:`snow`,part:`badge`},j(`slot`,null,n(`snowflake`,{size:kr,part:`glyph`,class:`ic`})));this.#e.replaceChildren(e)}get thawed(){return this.hasAttribute(`thawed`)}set thawed(e){this.toggleAttribute(`thawed`,e)}});var jr=`
|
|
2712
2712
|
slicc-freezer-card {
|
|
2713
2713
|
position: relative;
|
|
2714
2714
|
display: flex;
|
|
@@ -2801,7 +2801,7 @@ slicc-freezer-card .slicc-fzcard__meta {
|
|
|
2801
2801
|
slicc-freezer-card[thawed] {
|
|
2802
2802
|
background: color-mix(in srgb, var(--rose) 12%, transparent);
|
|
2803
2803
|
}
|
|
2804
|
-
`,
|
|
2804
|
+
`,Mr=`slicc-freezer-card-style`;function Nr(e){if(e.getElementById(Mr))return;let t=e.createElement(`style`);t.id=Mr,t.textContent=jr,(e.head??e.documentElement).appendChild(t)}var Pr=1400,Fr=14;A(`slicc-freezer-card`,class extends HTMLElement{static observedAttributes=[`title`,`meta`,`slug`,`icon`,`thawed`];#e;#t;#n;#r;#i=null;#a=null;#o=!1;#s=null;#c=()=>this.#u();#l=()=>{if(!this.#i)return;let e=this.getBoundingClientRect();this.#i.style.setProperty(`--tip-x`,`${e.right+8}px`),this.#i.style.setProperty(`--tip-y`,`${e.top+e.height/2}px`)};connectedCallback(){Nr(this.ownerDocument),this.#d(),this.#f()}disconnectedCallback(){this.removeEventListener(`click`,this.#c),this.removeEventListener(`pointerenter`,this.#l),this.removeEventListener(`focusin`,this.#l),this.#s!=null&&(clearTimeout(this.#s),this.#s=null)}attributeChangedCallback(e,t,n){t===n||!this.#o||(e===`thawed`?this.#e.toggleAttribute(`thawed`,n!==null):e===`icon`?this.#p():this.#f())}get title(){return this.getAttribute(`title`)??``}set title(e){e==null?this.removeAttribute(`title`):this.setAttribute(`title`,e)}get meta(){return this.getAttribute(`meta`)??``}set meta(e){e==null?this.removeAttribute(`meta`):this.setAttribute(`meta`,e)}get slug(){return this.getAttribute(`slug`)??``}set slug(e){e==null?this.removeAttribute(`slug`):this.setAttribute(`slug`,e)}get icon(){return this.getAttribute(`icon`)}set icon(e){e==null?this.removeAttribute(`icon`):this.setAttribute(`icon`,e)}get expanded(){return this.hasAttribute(`expanded`)}set expanded(e){this.toggleAttribute(`expanded`,e)}get thawed(){return this.hasAttribute(`thawed`)}set thawed(e){this.toggleAttribute(`thawed`,e)}get hidden(){return this.hasAttribute(`hidden`)}set hidden(e){this.toggleAttribute(`hidden`,e)}get badge(){return this.#d(),this.#e}#u(){this.dispatchEvent(new CustomEvent(`freezer-card-select`,{bubbles:!0,composed:!0,detail:{slug:this.slug}})),this.flashThaw()}flashThaw(e=Pr){this.#s!=null&&clearTimeout(this.#s),this.thawed=!0,this.#s=setTimeout(()=>{this.thawed=!1,this.#s=null},e)}#d(){if(this.#o)return;this.#o=!0;let e=this.querySelector(`:scope > .slicc-fzcard__text`);if(e instanceof HTMLElement){this.#t=e,this.#n=e.querySelector(`.slicc-fzcard__title`),this.#r=e.querySelector(`.slicc-fzcard__meta`),this.#e=this.querySelector(`:scope > slicc-snowflake`),this.#i=this.querySelector(`:scope > .slicc-fzcard__tip`),this.addEventListener(`click`,this.#c),this.addEventListener(`pointerenter`,this.#l),this.addEventListener(`focusin`,this.#l);return}let t=Array.from(this.childNodes);this.#e=this.ownerDocument.createElement(`slicc-snowflake`),this.#e.setAttribute(`part`,`badge`),this.#n=j(`div`,{class:`slicc-fzcard__title`,part:`title`}),this.#r=j(`div`,{class:`slicc-fzcard__meta`,part:`meta`}),this.#t=j(`div`,{class:`slicc-fzcard__text`,part:`text`},this.#n,this.#r);for(let e of t)this.#n.appendChild(e);this.#i=j(`span`,{class:`slicc-fzcard__tip`,part:`tip`,"aria-hidden":`true`}),this.replaceChildren(this.#e,this.#t,this.#i),this.addEventListener(`click`,this.#c),this.addEventListener(`pointerenter`,this.#l),this.addEventListener(`focusin`,this.#l)}#f(){if(!this.#o)return;let e=this.getAttribute(`title`);e!=null&&(this.#n.textContent=e),this.#r.textContent=this.meta,this.#i&&(this.#i.textContent=e??(this.#n.textContent||``)),this.#e.toggleAttribute(`thawed`,this.thawed),this.#p()}#p(){if(!this.#o)return;let e=this.getAttribute(`icon`);if(e){let t=n(e,{size:Fr,class:`ic`,part:`icon`});this.#a?this.#a.replaceWith(t):this.#e.appendChild(t),this.#a=t}else this.#a&&=(this.#a.remove(),null)}});var Ir=`square-pen`,Lr=`loader-circle`,Rr=16,zr=`New chat`,Br=350,Vr=[[`new-chat-save`,`square-pen`,`New chat — save & extract memories`],[`new-chat-skip`,`fast-forward`,`New chat, fast — memories extracted later`],[`new-chat-erase`,`trash-2`,`Discard this chat — no freezer, no memories`],[`new-cone`,`plus`,`New cone — keep this chat, start another cone`],[`drop-cone`,`circle-minus`,`Drop this cone — freeze its chat, no memories`]],Hr=M(`
|
|
2805
2805
|
:host { display: block; }
|
|
2806
2806
|
:host([hidden]) { display: none; }
|
|
2807
2807
|
*{ box-sizing: border-box; }
|
|
@@ -2947,18 +2947,18 @@ slicc-freezer-card[thawed] {
|
|
|
2947
2947
|
.fznew, .nlbl { transition: none; }
|
|
2948
2948
|
.fznew-spinner svg { animation: none; }
|
|
2949
2949
|
}
|
|
2950
|
-
`);
|
|
2950
|
+
`);A(`slicc-freezer-new`,class extends HTMLElement{static observedAttributes=[`expanded`,`label`,`busy`,`progress`,`no-skip`,`cones`];#e;#t=null;#n=null;#r=null;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[Hr]}connectedCallback(){this.#a()}disconnectedCallback(){this.#n?.destroy(),this.#n=null,this.#l()}attributeChangedCallback(e){e===`progress`&&this.#i()||this.isConnected&&this.#a()}get expanded(){return this.hasAttribute(`expanded`)}set expanded(e){this.toggleAttribute(`expanded`,e)}get label(){return this.getAttribute(`label`)??zr}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}get noSkip(){return this.hasAttribute(`no-skip`)}set noSkip(e){this.toggleAttribute(`no-skip`,e)}get cones(){let e=this.getAttribute(`cones`);if(e==null)return null;let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>=0?t:null}set cones(e){e==null?this.removeAttribute(`cones`):this.setAttribute(`cones`,String(Math.max(0,Math.floor(e))))}get busy(){return this.hasAttribute(`busy`)}set busy(e){this.toggleAttribute(`busy`,e)}get progress(){let e=this.getAttribute(`progress`);if(e==null)return null;let t=Number.parseFloat(e);return Number.isFinite(t)?Math.min(1,Math.max(0,t)):null}set progress(e){e==null?this.removeAttribute(`progress`):this.setAttribute(`progress`,String(Math.min(1,Math.max(0,e))))}#i(){let e=this.#e.querySelector(`.fznew-ring`);return!e||!this.busy||!this.hasAttribute(`progress`)?!1:(e.style.setProperty(`--fznew-progress`,String(this.progress??0)),!0)}#a(){let e=this.label,t=this.busy,r=t&&this.hasAttribute(`progress`),i=j(`span`,{class:`nico`,part:`badge`},t?j(`span`,{class:`fznew-spinner`,part:`spinner`},r?j(`span`,{class:`fznew-ring`,part:`ring`,style:`--fznew-progress:${this.progress??0}`}):null,n(Lr,{size:Rr,part:`icon`})):j(`slot`,{name:`icon`},n(Ir,{size:Rr,part:`icon`}))),a=j(`span`,{class:`nlbl`,part:`label`},j(`slot`,null,e)),o=j(`button`,{class:`fznew`,part:`button`,type:`button`,"aria-label":e,title:e,"aria-busy":t?`true`:void 0},i,a);this.#t=o,this.#c(o),this.#e.replaceChildren(o,this.#o(t,r))}#o(e,t){let r=j(`div`,{class:`fznew-row`,part:`row`,role:`group`,"aria-label":this.label});for(let[i,a,o]of this.#s()){let s=i===`new-chat-save`,c=s&&e?j(`span`,{class:`fznew-spinner`},t?j(`span`,{class:`fznew-ring`,style:`--fznew-progress:${this.progress??0}`}):null,n(Lr,{size:Rr})):n(a,{size:Rr}),l=j(`button`,{class:`fznew-act fznew-act--${i}`,part:`action-${i}`,type:`button`,title:o,"aria-label":o,"aria-busy":s&&e?`true`:void 0},c);l.disabled=e,l.addEventListener(`click`,()=>{this.busy||this.#u(i)}),r.appendChild(l)}return r}#s(){let e=this.cones;return Vr.filter(([t])=>t===`new-chat-skip`?!this.noSkip:t===`new-cone`?e!==null:t!==`drop-cone`||e!==null&&e>1)}#c(e){this.#n?.destroy(),this.#l(),this.#n=ur(e,{onLongPress:()=>{if(this.#r!==null){this.#l(),this.#u(`new-chat-skip`);return}this.#u(`new-chat-erase`)},onShortClick:()=>{if(this.noSkip){this.#u(`new-chat-save`);return}if(this.#r!==null){this.#l(),this.#u(`new-chat-skip`);return}this.#r=setTimeout(()=>{this.#r=null,this.#u(`new-chat-save`)},Br)}})}#l(){this.#r!==null&&(clearTimeout(this.#r),this.#r=null)}#u(e){e===`new-chat-save`&&(this.busy=!0),this.dispatchEvent(new CustomEvent(e,{bubbles:!0,composed:!0}))}});var Ur=1e3/15;function Wr(e,t,n){return n?!0:e-t>=62.66666666666667}function Gr(e,t,n){if(n||!Number.isFinite(t))return e;let r=t+Ur;return e-r>66.66666666666667?e:r}var Kr=`attribute vec2 a_pos; void main(){ gl_Position = vec4(a_pos,0.0,1.0); }`,qr=`precision highp float;
|
|
2951
2951
|
uniform vec2 u_res; uniform float u_time; uniform float u_energy;
|
|
2952
2952
|
uniform vec2 u_center; uniform vec3 u_evt; uniform float u_freeze; uniform float u_dark;
|
|
2953
2953
|
uniform float u_falloff; uniform float u_life; uniform vec3 u_tint; uniform float u_scroll;
|
|
2954
2954
|
uniform float u_brightness; uniform float u_contrast; uniform float u_noise; uniform float u_blur;
|
|
2955
|
-
vec3 themeBg(){ return mix(vec3(0.97,0.95,0.89), vec3(0.09,0.08,0.06), u_dark); }`,
|
|
2955
|
+
vec3 themeBg(){ return mix(vec3(0.97,0.95,0.89), vec3(0.09,0.08,0.06), u_dark); }`,Jr=`
|
|
2956
2956
|
float hash21(vec2 p){ p=fract(p*vec2(123.34,456.21)); p+=dot(p,p+45.32); return fract(p.x*p.y); }
|
|
2957
2957
|
float vnoise(vec2 p){ vec2 i=floor(p),f=fract(p);
|
|
2958
2958
|
float a=hash21(i),b=hash21(i+vec2(1.,0.)),c=hash21(i+vec2(0.,1.)),d=hash21(i+vec2(1.,1.));
|
|
2959
2959
|
vec2 u=f*f*(3.-2.*f); return mix(mix(a,b,u.x),mix(c,d,u.x),u.y); }
|
|
2960
2960
|
float fbm(vec2 p){ float v=0.,a=0.5; for(int i=0;i<5;i++){ v+=a*vnoise(p); p=p*2.02+vec2(7.1,3.7); a*=0.5;} return v; }
|
|
2961
|
-
vec2 warp(vec2 p, float t){ float a=fbm(p+vec2(0.0,1.7)+t*0.10); float b=fbm(p+vec2(5.2,1.3)-t*0.08); return p+0.85*vec2(a,b); }`,
|
|
2961
|
+
vec2 warp(vec2 p, float t){ float a=fbm(p+vec2(0.0,1.7)+t*0.10); float b=fbm(p+vec2(5.2,1.3)-t*0.08); return p+0.85*vec2(a,b); }`,Yr=`${qr}${Jr}
|
|
2962
2962
|
vec3 pal(float t){ vec3 strawberry=vec3(1.0,0.45,0.62); vec3 vanilla=vec3(1.0,0.95,0.82);
|
|
2963
2963
|
vec3 pistachio=vec3(0.60,0.86,0.52);
|
|
2964
2964
|
vec3 col=mix(strawberry,vanilla,smoothstep(0.0,0.5,t)); col=mix(col,pistachio,smoothstep(0.5,1.0,t)); return col; }
|
|
@@ -2977,7 +2977,7 @@ void main(){
|
|
|
2977
2977
|
ice*=0.95+0.08*sin(u_time*0.4); float mask=smoothstep(0.62,0.0,r);
|
|
2978
2978
|
vec3 col=mix(bg,ice,clamp(mask,0.0,1.0)*0.80); col+=ice*mask*hl*0.12;
|
|
2979
2979
|
gl_FragColor=vec4(col,1.0);
|
|
2980
|
-
}`,
|
|
2980
|
+
}`,Xr=`${qr}${Jr}
|
|
2981
2981
|
/* Inside-of-a-freezer ground: icy WHITE in light mode (never the warm theme
|
|
2982
2982
|
canvas — blue-on-beige read as sand, not frost), cold blue-black in dark. */
|
|
2983
2983
|
vec3 freezerBg(){ return mix(vec3(0.965,0.98,1.0), vec3(0.05,0.08,0.13), u_dark); }
|
|
@@ -3004,7 +3004,7 @@ void main(){
|
|
|
3004
3004
|
deviation budget the cone glass uses. */
|
|
3005
3005
|
col=mix(freezerBg(),col,0.22);
|
|
3006
3006
|
gl_FragColor=vec4(col,1.0);
|
|
3007
|
-
}`,
|
|
3007
|
+
}`,Zr=`${qr}${Jr}
|
|
3008
3008
|
uniform float u_speed;
|
|
3009
3009
|
vec2 sugarHash(vec2 p){ p=vec2(dot(p,vec2(127.1,311.7)),dot(p,vec2(269.5,183.3))); return fract(sin(p)*43758.5453123); }
|
|
3010
3010
|
vec3 sugarVoronoi(vec2 p,float t){
|
|
@@ -3083,20 +3083,20 @@ void main(){
|
|
|
3083
3083
|
col+=u_noise*grain; col=(col-0.5)*u_contrast+0.5; col*=u_brightness; col=clamp(col,0.0,1.0);
|
|
3084
3084
|
col=clamp(col,max(bg-vec3(0.20),vec3(0.0)),min(bg+vec3(0.20),vec3(1.0)));
|
|
3085
3085
|
gl_FragColor=vec4(col,1.0);
|
|
3086
|
-
}`,
|
|
3086
|
+
}`,Qr={caramel:{mode:`cone`,tint:`#d08a3c`,brightness:1.1,contrast:1.1,noise:.025,blur:.14,coverage:.28,speed:.0625},"caramel-soft":{mode:`cone`,tint:`#d08a3c`,brightness:1.2,contrast:.75,noise:.025,blur:.14,coverage:.28,speed:1},frosted:{mode:`cone`,tint:`#ead9bd`,brightness:1,contrast:.55,noise:.005,blur:.9,coverage:.08,speed:1},brittle:{mode:`cone`,tint:`#ffd089`,brightness:.96,contrast:1.2,noise:.055,blur:.02,coverage:.68,speed:1},"waffle-glass":{mode:`cone`,tint:`#d3a15f`,brightness:1,contrast:.9,noise:.02,blur:.08,coverage:.9,speed:1}},$r={cone:Zr,scoop:Yr,freezer:Xr},ei=new Set([`cone`,`scoop`,`freezer`]),ti={cone:`radial-gradient(120% 120% at 35% 45%, color-mix(in srgb,#d08a3c 20%,var(--bg)) 0%, var(--bg) 70%)`,scoop:`radial-gradient(120% 120% at 40% 50%, color-mix(in srgb,#ff9bc0 40%,var(--bg)) 0%, var(--bg) 62%)`,freezer:`radial-gradient(120% 120% at 0% 100%, color-mix(in srgb,#7fb0e6 55%,var(--bg)) 0%, var(--bg) 70%)`},ni=M(`
|
|
3087
3087
|
:host { position: relative; display: block; pointer-events: none; }
|
|
3088
3088
|
.canvas, .fallback { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
|
|
3089
3089
|
.fallback { display: none; }
|
|
3090
3090
|
:host([no-webgl]) .canvas { display: none; }
|
|
3091
|
-
:host([no-webgl]) .fallback { display: block; }`),
|
|
3091
|
+
:host([no-webgl]) .fallback { display: block; }`),ri=1,ii=.5,ai=2,oi=.35,si=3e3,ci=[`u_res`,`u_scroll`,`u_time`,`u_energy`,`u_center`,`u_evt`,`u_freeze`,`u_dark`,`u_falloff`,`u_life`,`u_tint`,`u_brightness`,`u_contrast`,`u_noise`,`u_blur`,`u_speed`];function li(e,t,n,r){return Number.isFinite(e)?Math.max(t,Math.min(n,e)):r}function ui(e,t){if(!e||typeof getComputedStyle!=`function`)return t;let n=document.createElement(`span`);n.style.color=e,n.style.display=`none`,document.body.appendChild(n);let r=getComputedStyle(n).color;n.remove();let i=r.match(/[\d.]+/g)?.map(Number);return!i||i.length<3?t:[i[0]/255,i[1]/255,i[2]/255]}var di=class extends HTMLElement{static observedAttributes=[`mode`,`tint`,`coverage`,`intensity`,`scroll`,`brightness`,`contrast`,`noise`,`blur`,`speed`,`dpr`];#e;#t=null;#n=null;#r=null;#i={};#a=null;#o={};#s=-1;#c=0;#l=0;#u=0;#d=-1/0;#f=0;#p=!1;#m=0;#h=null;#g=!1;#_=[.816,.541,.235];#v=[.957,.247,.369];#y=0;#b=null;#x=null;#S=null;#C=null;#w=null;#T=null;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[ni];let e=j(`canvas`,{class:`canvas`,part:`canvas`}),t=j(`div`,{class:`fallback`,part:`fallback`,"aria-hidden":`true`});this.#e.replaceChildren(e,t),this.#t=e}connectedCallback(){if(this.#g=typeof matchMedia==`function`&&matchMedia(`(prefers-reduced-motion: reduce)`).matches,this.#E(),!this.#P()){this.setAttribute(`no-webgl`,``);return}if(this.removeAttribute(`no-webgl`),typeof ResizeObserver<`u`){let e=!0;this.#h=new ResizeObserver(()=>{let t=e;e=!1,this.#G({burst:!t})}),this.#h.observe(this)}this.#D(),this.#O(),this.#l=performance.now()/1e3,this.#d=-1/0,this.#p=!1,this.#z(),this.#G()}disconnectedCallback(){this.#q(),this.#h?.disconnect(),this.#h=null,this.#b?.disconnect(),this.#b=null,this.#x&&this.#S&&this.#x.removeEventListener(`change`,this.#S),this.#x=null,this.#S=null,this.#J()}attributeChangedCallback(e){if(this.isConnected){if((e===`tint`||e===`mode`)&&this.#D(),e===`mode`&&this.#n&&this.mode!==this.#C){if(this.#j()){this.#U(),this.#d=performance.now(),this.#E(),this.#G();return}console.error(`[slicc-shader] mode switch failed to link program`)}this.#E(),this.#G({burst:!0})}}get mode(){let e=this.getAttribute(`mode`);return e&&ei.has(e)?e:`cone`}set mode(e){this.setAttribute(`mode`,e)}get coverage(){let e=this.mode===`cone`?Qr.caramel.coverage:.66;return li(Number.parseFloat(this.getAttribute(`coverage`)??``),0,1,e)}set coverage(e){this.setAttribute(`coverage`,String(e))}get intensity(){return li(Number.parseFloat(this.getAttribute(`intensity`)??``),0,4,1)}set intensity(e){this.setAttribute(`intensity`,String(e))}get scrollOffset(){let e=Number.parseFloat(this.getAttribute(`scroll`)??``);return Number.isFinite(e)?e:0}set scrollOffset(e){this.setAttribute(`scroll`,String(e))}get brightness(){return li(Number.parseFloat(this.getAttribute(`brightness`)??``),.5,1.5,Qr.caramel.brightness)}set brightness(e){this.setAttribute(`brightness`,String(e))}get contrast(){return li(Number.parseFloat(this.getAttribute(`contrast`)??``),.5,2,Qr.caramel.contrast)}set contrast(e){this.setAttribute(`contrast`,String(e))}get noise(){return li(Number.parseFloat(this.getAttribute(`noise`)??``),0,.3,Qr.caramel.noise)}set noise(e){this.setAttribute(`noise`,String(e))}get blurAmount(){return li(Number.parseFloat(this.getAttribute(`blur`)??``),0,1,Qr.caramel.blur)}set blurAmount(e){this.setAttribute(`blur`,String(e))}get speed(){return li(Number.parseFloat(this.getAttribute(`speed`)??``),0,2,Qr.caramel.speed)}set speed(e){this.setAttribute(`speed`,String(e))}get dpr(){return li(Number.parseFloat(this.getAttribute(`dpr`)??``),ii,ai,ri)}set dpr(e){this.setAttribute(`dpr`,String(e))}get noWebgl(){return this.hasAttribute(`no-webgl`)}pulse(e=1){Number.isFinite(e)&&(this.#u=Math.min(1.4,Math.max(0,this.#u+e)),this.#G({burst:!0}))}#E(){let e=this.#e.querySelector(`.fallback`);e&&(e.style.background=ti[this.mode])}#D(){let e=this.getAttribute(`tint`)??(this.mode===`cone`?Qr.caramel.tint:``);this.#_=ui(e,[.545,.361,.965]),this.#v=ui(e,[.957,.247,.369]),this.#y=this.#H()}#O(){let e=()=>{this.#D(),this.#G({burst:!0})};if(typeof MutationObserver<`u`){this.#b=new MutationObserver(e);for(let e of[document.documentElement,document.body])e&&this.#b.observe(e,{attributes:!0,attributeFilter:[`class`,`data-theme`]})}typeof matchMedia==`function`&&(this.#x=matchMedia(`(prefers-color-scheme: dark)`),this.#S=e,this.#x.addEventListener(`change`,this.#S))}#k(e,t,n){let r=e.createShader(t);return r?(e.shaderSource(r,n),e.compileShader(r),e.getShaderParameter(r,e.COMPILE_STATUS)?r:(e.deleteShader(r),null)):null}#A(e){let t=this.#n;if(!t)return null;let n=this.#k(t,t.VERTEX_SHADER,Kr),r=this.#k(t,t.FRAGMENT_SHADER,$r[e]);if(!n||!r)return n&&t.deleteShader(n),r&&t.deleteShader(r),null;let i=t.createProgram();if(!i)return t.deleteShader(n),t.deleteShader(r),null;if(t.attachShader(i,n),t.attachShader(i,r),t.linkProgram(i),!t.getProgramParameter(i,t.LINK_STATUS))return t.deleteProgram(i),t.deleteShader(n),t.deleteShader(r),null;let a=t.getAttribLocation(i,`a_pos`),o={};for(let e of ci)o[e]=t.getUniformLocation(i,e);return{program:i,vs:n,fs:r,aPos:a,loc:o}}#j(){let e=this.#n;if(!e)return!1;let t=this.mode,n=this.#i[t];if(!n){let e=this.#A(t);if(!e)return!1;this.#i[t]=e,n=e}return this.#r=n.program,this.#s=n.aPos,this.#o=n.loc,e.useProgram(n.program),this.#C=t,!0}#M(e){let t={premultipliedAlpha:!0,alpha:!0,antialias:!0};try{return e.getContext(`webgl`,t)??e.getContext(`experimental-webgl`,t)}catch{return null}}#N(e){this.#L(e);let t=j(`canvas`,{class:`canvas`,part:`canvas`});return e.parentNode?e.replaceWith(t):this.#e.prepend(t),this.#t=t,t}#P(){let e=this.#t;if(!e)return!1;let t=this.#M(e);return t?.isContextLost()&&(e=this.#N(e),t=this.#M(e)),!t||t.isContextLost()?!1:(this.#n=t,this.#I(e),this.#F()?!0:(this.#J(),!1))}#F(){let e=this.#n;if(!e||!this.#j())return!1;let t=e.createBuffer();return t?(this.#a=t,e.bindBuffer(e.ARRAY_BUFFER,t),e.bufferData(e.ARRAY_BUFFER,new Float32Array([-1,-1,3,-1,-1,3]),e.STATIC_DRAW),!0):!1}#I(e){this.#L(e),this.#w=e=>{e.preventDefault(),this.#p=!0,this.#q(),this.#i={},this.#r=null,this.#C=null,this.#o={},this.#a=null,console.warn(`[slicc-shader] WebGL context lost; waiting for restore`),this.#R()},this.#T=()=>{if(this.#z(),!(!this.isConnected||!this.#n)){if(this.#i={},!this.#F()){this.#B(`GL restore failed; falling back to CSS gradient`);return}this.#p=!1,this.#l=performance.now()/1e3,this.#d=-1/0,this.#G()}},e.addEventListener(`webglcontextlost`,this.#w,!1),e.addEventListener(`webglcontextrestored`,this.#T,!1)}#L(e){this.#w&&e.removeEventListener(`webglcontextlost`,this.#w),this.#T&&e.removeEventListener(`webglcontextrestored`,this.#T),this.#w=null,this.#T=null}#R(){this.#z(),this.#m=window.setTimeout(()=>{this.#m=0,!(!this.isConnected||!this.#p)&&this.#B(`WebGL context not restored; falling back to CSS gradient`)},si)}#z(){this.#m&&=(clearTimeout(this.#m),0)}#B(e){this.#z(),this.#p=!1,console.error(`[slicc-shader] ${e}`),this.setAttribute(`no-webgl`,``);let t=this.#t;t&&this.#N(t),this.#J()}#V(){let e=this.#t;if(!e)return;let t=Math.min(this.dpr,typeof window<`u`&&window.devicePixelRatio||1),n=Math.max(1,e.clientWidth*t|0),r=Math.max(1,e.clientHeight*t|0);(e.width!==n||e.height!==r)&&(e.width=n,e.height=r)}#H(){if(typeof getComputedStyle!=`function`)return 0;let e=getComputedStyle(this).getPropertyValue(`--ink`).trim();if(!e)return 0;let[t,n,r]=ui(e,[0,0,0]);return+(.2126*t+.7152*n+.0722*r>.5)}#U(){let e=this.#n,t=this.#t,n=this.#r;if(!e||!t||!n||!this.#a)return;this.#V();let r=performance.now()/1e3-this.#l,i=.5+.5*Math.sin(r*.12),a=.5+.5*Math.sin(r*.097+1),o=.2*(1-i)+.46*i,s=.74*(1-a)+.3*a,c=this.#y,l=this.#_,u=this.#v;e.viewport(0,0,t.width,t.height),e.useProgram(n),e.bindBuffer(e.ARRAY_BUFFER,this.#a),e.enableVertexAttribArray(this.#s),e.vertexAttribPointer(this.#s,2,e.FLOAT,!1,0,0);let d=this.#o;e.uniform2f(d.u_res??null,t.width,t.height),e.uniform1f(d.u_time??null,r),e.uniform1f(d.u_energy??null,this.#u),e.uniform2f(d.u_center??null,o,s),e.uniform3f(d.u_evt??null,u[0],u[1],u[2]),e.uniform1f(d.u_freeze??null,li(this.coverage*this.intensity,0,1,.66)*2.2),e.uniform1f(d.u_dark??null,c),e.uniform1f(d.u_scroll??null,this.scrollOffset*oi/Math.max(1,t.clientHeight||t.height)),e.uniform1f(d.u_falloff??null,.3),e.uniform1f(d.u_life??null,.35),e.uniform3f(d.u_tint??null,l[0],l[1],l[2]),e.uniform1f(d.u_brightness??null,this.brightness),e.uniform1f(d.u_contrast??null,this.contrast),e.uniform1f(d.u_noise??null,this.noise),e.uniform1f(d.u_blur??null,this.blurAmount),e.uniform1f(d.u_speed??null,this.speed),e.drawArrays(e.TRIANGLES,0,3),this.#u*=.95,this.#u<.001&&(this.#u=0)}#W(){return!(this.#g||this.mode===`cone`&&this.speed===0)}#G(e={}){e.burst&&(this.#f=performance.now()+800),!(this.#c||!this.#n||this.#p)&&(this.#c=requestAnimationFrame(this.#K))}#K=e=>{this.#c=0;let t=e<this.#f||this.#u>0;Wr(e,this.#d,t)&&(this.#d=Gr(e,this.#d,t),this.#U()),!(this.#g||!this.#W()&&this.#u===0)&&(this.#c=requestAnimationFrame(this.#K))};#q(){this.#c&&cancelAnimationFrame(this.#c),this.#c=0}#J(){this.#z();let e=this.#n,t=this.#t;if(t&&this.#L(t),e){this.#a&&e.deleteBuffer(this.#a);for(let t of Object.values(this.#i))t&&(e.deleteProgram(t.program),e.deleteShader(t.vs),e.deleteShader(t.fs));e.getExtension(`WEBGL_lose_context`)?.loseContext()}this.#n=null,this.#r=null,this.#i={},this.#o={},this.#a=null,this.#C=null}};A(`slicc-shader`,di),A(`slicc-frost-shader`,class extends di{connectedCallback(){this.getAttribute(`mode`)!==`freezer`&&this.setAttribute(`mode`,`freezer`),super.connectedCallback()}});var fi=`# Memory
|
|
3092
3092
|
|
|
3093
|
-
|
|
3093
|
+
`,pi=[`**Evidence first:** inspect the smallest relevant surface before editing and record the observed state.`,`**Narrow plans:** keep one measurable outcome, one implementation pass, and one verification pass.`,`**Runtime state:** prefer browser-owned storage and keep the relay stateless whenever practical.`,`**Failure boundaries:** external work needs a timeout, a useful error category, and an explicit retry decision.`,"**Keyboard parity:** interactive rows remain focusable and respond to both `Enter` and `Space`.",`**Memory rendering:** preserve Markdown meaning while sanitizing untrusted tags at the DOM boundary.`,`**Cross-runtime parity:** shared events need matching page, worker, extension, and follower handling.`,`**Verification records:** report the exact command, outcome, and scope instead of writing only “tests pass”.`,`**Synthetic data:** use neutral paths, reserved domains, and conspicuously invented identifiers in fixtures.`,`**Collaboration:** coordinate public-barrel edits before overlapping with another active implementation.`],mi=["Keep the durable rule beside `packages/example.ts` so later work can reproduce the decision without a transcript.",`Preserve selection, expansion, and scroll state when a refresh replaces visible children.`,`Run the focused regression first; broaden to package and repository gates only after the hypothesis holds.`,'Treat A & B, “quoted labels”, arrows →, and `<preview mode="safe">` as text rather than executable markup.',`Prefer a reversible patch over a destructive command when the target was inferred rather than supplied.`,`Stop exploring when another read no longer changes the hypothesis; switch to a test or focused question.`,`Document the invalidation trigger when cached data can become stale, and retain a correctness bypass.`,`Release every listener, timer, observer, channel, and object URL during the matching teardown path.`,`Keep logs to operation name, duration, status, and a synthetic correlation label; omit payload contents.`],hi=pi.flatMap(e=>mi.map(t=>`- ${e} ${t}`)),gi=[`- Keep diffs small.`,`- Prefer native APIs.`,`- Ship docs with code.`,`- No surprise deploys.`,"- **Continuation stress:** preserve one logical memory across source lines,\n carrying `inline-code`, emphasis, and an arrow → without creating another row.",'- **Escaping stress:** render `<preview mode="safe">`, A & B, “quotes”, and `score > threshold` as inert content.',`- **Reserved link:** [the synthetic reference](https://example.invalid/memory) exists only to exercise link rendering.`,`- **Medium tail:** before rebuilding a filtered collection, capture the query, focused control, selected row, group expansion, and scroll anchor; restore only state that still refers to surviving items.`,`- **Long tail:** ${`A long-lived panel decision was reviewed in sequence: a compact sample initially hid scale problems; a larger dataset exposed discarded provenance and summaries cut mid-phrase; Markdown stress then revealed literal markers; keyboard review found pointer-only activation; narrow layouts showed metadata competing with the primary text; refresh testing exposed lost search, focus, expansion, and scroll state; cross-runtime review found a missing follower path; failure testing identified an unbounded request; cleanup testing found a retained observer; and final verification required the focused test, package suite, coverage gate, and build. `.repeat(2).trim()}`,`- **Folded long tail:** a remote action keeps one event contract and preserves error categories across serialization,
|
|
3094
3094
|
terminates pending requests on disconnect, and verifies timeout plus malformed-response behavior,
|
|
3095
|
-
while this third source line remains part of the same bullet and contains “quotes”, A & B, and <angle brackets>.`],
|
|
3096
|
-
`)}\n`}
|
|
3097
|
-
`),`${
|
|
3095
|
+
while this third source line remains part of the same bullet and contains “quotes”, A & B, and <angle brackets>.`],_i=[...hi,...gi],vi=[[`2099-01-03`,`compaction`],[`2099-01-10`,`new-session`],[`2099-01-18`,`compaction`],[`2099-02-02`,`pending-enrichment`],[`2099-02-14`,`new-session`],[`2099-03-01`,`compaction`],[`2099-03-21`,`pending-enrichment`],[`2099-04-05`,`compaction`],[`2099-04-19`,`new-session`],[`2099-05-07`,`compaction`]];function yi(e,t,n){return`## Auto-extracted (${e}, ${t})\n\n${n.join(`
|
|
3096
|
+
`)}\n`}fi+vi.map(([e,t],n)=>yi(e,t,_i.slice(n*10,n*10+10))).join(`
|
|
3097
|
+
`),`${fi}${_i.join(`
|
|
3098
3098
|
`)}`,[`# Project Northstar`,``,`Role: Kestrel (primary engineering agent)`,`Workspace: /workspaces/northstar`,`Snapshot: 2032-04-18T14:15:51.712Z`,``,`## Operating agreements`,"- **Keep Northstar changes reviewable:** issue #501 requires one concern per branch in `packages/northstar-shell/src/` with fixtures under `/workspaces/northstar/testdata/`; run `keel verify --scope shell` before asking Mina Kestrel for `review_ready` status. The branch note in `packages/northstar-shell/reviews/` explains the user-visible outcome, the measured baseline, and the exact rollback point so another engineer can judge the change without reconstructing the session.","- **Prefer evidence before edits:** issue #502 starts with traces from `packages/telemetry/src/` and a reproduction in `/workspaces/northstar/repros/`; record the failing `trace_id` and the smallest useful `fixture_seed` before changing code. The supporting report in `packages/telemetry/reports/` separates observed behavior from a proposed cause and includes the command, expected result, actual result, and environment assumptions.","- **Use the native release path:** issue #503 sends text-only patches through `packages/release-tools/src/` and stores large binary fixtures in `/workspaces/northstar/artifacts/`; invoke `keel publish --dry-run` and confirm `release_manifest_v3` before upload. The release record in `packages/release-tools/records/` names every artifact, its content digest, the verification run that produced it, and the person who approved promotion.","- **Never merge on assumption:** issue #504 leaves the candidate in `packages/change-gate/src/` until `/workspaces/northstar/reviews/` contains an explicit approval; use `keel review status` and preserve the requested `merge_strategy`. The decision log in `packages/change-gate/decisions/` states whether history must remain linear and whether a reviewer requested a merge commit for audit context.",``,`## Repository and release workflow`,"- **Branch from the verified base:** issue #505 creates work in `packages/release-tools/branches/` and writes the base proof to `/workspaces/northstar/checkpoints/`; `keel branch create` must report the expected `base_oid`. The branch receipt in `packages/release-tools/receipts/` also captures the remote name and fetch time, which makes stale-base failures obvious during review.","- **Rebase only when linear history is required:** issue #506 keeps merge-preserving work in `packages/change-gate/policies/` and conflict notes in `/workspaces/northstar/reviews/`; choose `merge_commit` or `linear_rebase` from the recorded policy, never from habit. Guidance under packages/change-gate/guides/rebase/ requires a fresh verification run after conflict resolution because a clean textual rebase does not prove unchanged behavior.","- **Treat remote deletion as a gated operation:** issue #507 resolves the exact ref through `packages/release-tools/refs/` and snapshots it in `/workspaces/northstar/checkpoints/`; call `keel ref delete --confirm` only after `ref_guard` matches. The recovery note under packages/release-tools/guides/restore/ retains the deleted object identifier and a tested restore command until the review window closes.",``,`## Aurora renderer bootstrap — desktop preview (Session April 02)`,"- **Create the preview shell:** issue #508 keeps the host in `packages/aurora-preview/src/` and its deterministic scene data in `/workspaces/northstar/fixtures/aurora/`; start `keel preview aurora` with `scene_seed_2048`. A walkthrough under packages/aurora-preview/guides/startup/ lists the expected loading, ready, degraded, and failed states so reviewers know whether the shell or renderer owns a defect.","- **Load the renderer through its public package:** issue #509 imports `@northstar/aurora` from `/workspaces/northstar/apps/desktop/` and pins `aurora_protocol_v6`; the preview must not reach the private `renderer_singleton`. Contract notes under packages/aurora-preview/guides/contracts/ describe the mount lifecycle and require the host to release observers, workers, and object URLs during teardown.","- **Keep browser and desktop entry points equivalent:** issue #510 compares `packages/aurora-preview/browser/` with `/workspaces/northstar/apps/desktop/`; both expose `mountAuroraPreview` and accept `preview_transport`. Parity evidence under packages/aurora-preview/reviews/parity/ records the same scene, viewport, theme, keyboard path, and frame checksum for each host.","- **Pass viewer identity without personal data:** issue #511 reads `packages/aurora-preview/config/` and `/workspaces/northstar/fixtures/viewers/`; use `viewer_alpha` plus `tenant_sandbox`, never an account copied from production. The fixture catalog under packages/aurora-preview/fixtures/viewers/ explains each synthetic role and deliberately omits names, credentials, message history, and customer content.","- **Document the development-only compositor:** the guide in `packages/aurora-preview/docs/` points to `/workspaces/northstar/examples/compositor/`; `keel preview --inspect` exposes `frame_budget_ms` for local diagnosis. The inspector reports dropped frames, long tasks, active workers, and selected fallback mode without changing the scheduling decisions being measured.","- **Bundle Aurora without runtime network fetches:** build `packages/aurora-preview/bundle/` into `/workspaces/northstar/artifacts/aurora/` with `rook bundle --target desktop`; the output registers `aurora_bundle_hash` and embeds shader tables, icon atlases, locale data, fallback fonts, protocol schemas, worker bootstrap code, source labels, feature defaults, accessibility metadata, safe demo accounts, and the exact scene seed used by review. The host imports one local module, validates the manifest before evaluation, rejects unknown capabilities, records a structured startup trace, and keeps every optional adapter behind a capability check. When the packager rewrites an external import, inspect the emitted dependency map rather than adding a global shim. The accepted bundle must boot with the network disabled, survive a renderer restart, restore the selected scene, preserve focus order, report missing GPU features as a visible diagnostic, and produce the same frame checksum in Chromium and the desktop shell. Store the checksum beside the manifest, not in application code, so a fixture update is reviewable without touching runtime behavior.","- **Aurora offline recovery drill for the desktop preview** uses `packages/aurora-preview/fallback/` and `/workspaces/northstar/apps/desktop/assets/` with `aurora_fallback_entry` after `gpu_probe_result` records unsupported adapter evidence then the host verifies the local manifest restores the selected scene preserves keyboard focus retains the review viewport loads bundled fonts rejects network requests emits a visible diagnostic stores the frame checksum beside the artifact compares browser and desktop output keeps the original trace identifier and leaves the normal renderer untouched for the next controlled restart",``,`## Signal audio service — capture and transcription pipeline`,"- **Keep voice fixtures synthetic:** write generated samples to `packages/signal-audio/fixtures/` and metadata to `/workspaces/northstar/testdata/audio/`; select `signal_voice_cedar` with `sample_rate_24000`. The catalog under packages/signal-audio/guides/fixtures/ states how each sample was generated and which timing, silence, overlap, and clipping cases it is meant to exercise.","- **Resolve credentials through the fixture broker:** configure `packages/signal-audio/auth/` from `/workspaces/northstar/config/local/`; `keel secret lease signal` returns `signal_lease_ref` without exposing token material. The runbook under packages/signal-audio/guides/auth/ distinguishes a missing lease, an expired lease, provider denial, and an unavailable broker so recovery remains specific.","- **Use the streaming endpoint for long utterances:** send chunks from `packages/signal-audio/stream/` through `/workspaces/northstar/repros/audio/`; the client tracks `utterance_seq` and rejects a stale `transcript_epoch`. Evidence under packages/signal-audio/reviews/streaming/ includes chunk timing and final ordering, making dropped, duplicated, and late frames visible without retaining spoken content.","- **Preserve binary audio until decoding succeeds:** `packages/signal-audio/codecs/` writes to `/workspaces/northstar/artifacts/audio/`; `signal_decode_pcm` returns `decoded_frame_count` before text normalization. Notes under packages/signal-audio/guides/codecs/ require the original byte length, channel count, sample rate, and decoder warning before any waveform is discarded.",``,`## Harbor control-plane CLI (Session April 05, #401)`,"- **Define Harbor as a thin API client:** keep commands in `packages/harbor-cli/src/` and contract fixtures in `/workspaces/northstar/testdata/harbor/`; `harbor project list` emits `harbor_result_v2`. This boundary keeps command behavior easy to inspect, lets the service remain the source of truth, and gives every failure one clear place for diagnosis.","- **Store only a broker reference:** `packages/harbor-cli/auth/` reads `/workspaces/northstar/config/local/`; `harbor auth login` persists `credential_handle`, never a bearer value. A later command can ask the broker for a short lease while the terminal, history, trace, and saved configuration remain free of secret material.","- **Normalize boolean flags at the boundary:** `packages/harbor-cli/args/` tests `/workspaces/northstar/repros/harbor/`; `--include-paused=false` becomes `include_paused` rather than a truthy string. The same rule covers an omitted flag, an explicit true value, and a false value so script behavior does not depend on parser accident.","- **Do not edit remote files with shell redirection:** fetch through `packages/harbor-cli/files/` into `/workspaces/northstar/checkpoints/`; `harbor file replace` validates `remote_etag` before committing. The client first writes a complete local draft, shows a compact difference, and sends the whole document only after the expected revision still matches.","- **Read structured responses before printing:** `packages/harbor-cli/output/` stores schemas under `/workspaces/northstar/testdata/schemas/`; `harbor --format json` preserves `error_code` and nested causes. Human output may become shorter, but machine output must retain every field needed for retry, support, audit, and a later automated decision.","- **Refresh expired leases once:** `packages/harbor-cli/retry/` records attempts in `/workspaces/northstar/traces/`; `harbor_lease_expired` may trigger one `credential_refresh`, not a loop. A second denial is returned with the first request identity and lease age so the operator sees a stable failure rather than repeated login work.","- **Map provider failures to actionable hints:** `packages/harbor-cli/errors/` uses `/workspaces/northstar/docs/runbooks/`; `deployment_policy_denied` points to `harbor deployment inspect`. Each hint names the blocked resource, the required capability, and a safe read-only command that can confirm policy state before any new request.",``,`## Atlas runtime and plugin packaging (Session April 07, #418)`,"- **Build Atlas from a readable entry module:** `packages/atlas-runtime/src/` produces `/workspaces/northstar/artifacts/atlas/`; `rook build atlas` keeps `atlas_entrypoint` stable. The entry names each adapter and capability in one visible table, which makes bundle review possible without following generated glue across many small files.","- **Install plugins into an isolated sandbox:** `packages/atlas-runtime/plugins/` expands under `/workspaces/northstar/sandboxes/atlas/`; `atlas plugin inspect` verifies `plugin_manifest_v4`. Extraction rejects parent traversal, absolute names, duplicate entries, and unsupported links before any plugin code can observe the host or write outside its assigned directory.","- **Share filesystem adapters across hosts:** `packages/atlas-runtime/adapters/` is tested against `/workspaces/northstar/testdata/files/`; `atlas_read_bytes` and `atlas_write_atomic` retain binary data. Browser and desktop implementations must agree on path normalization, missing file behavior, atomic replacement, permission denial, and the byte count returned after a write.","- **Externalize host-owned modules:** `packages/atlas-runtime/build/` writes `/workspaces/northstar/artifacts/maps/`; `rook bundle --external host` marks `host_module_table` in the manifest. The loader resolves only names declared by that table and reports an absent host module before plugin startup rather than after partial state has changed.","- **Preserve integer field types during schema conversion:** `packages/atlas-runtime/schema/` compares `/workspaces/northstar/testdata/events/`; `packet_sequence` stays numeric in `atlas_event_v3`. The conversion test also covers zero, the largest safe value, a missing optional field, and an invalid string so type loss cannot hide in ordinary data.","- **Treat unknown extensions as data:** `packages/atlas-runtime/loader/` copies `/workspaces/northstar/fixtures/plugins/`; `atlas_load_module` uses `declared_media_type` instead of filename guessing. This permits a host to choose the correct evaluator while an untrusted plugin cannot change execution mode by selecting a familiar suffix.","- **Verify large artifacts through content hashes:** `packages/atlas-runtime/cache/` indexes `/workspaces/northstar/artifacts/atlas/`; `atlas artifact verify` checks `sha256_digest` before activation. Size and digest are checked after download and again before load, with one clear error that names which step observed an unexpected value.","- **Detect build drift against one canonical artifact:** `packages/atlas-runtime/ci/` reads `/workspaces/northstar/checkpoints/builds/`; `keel drift atlas` compares `canonical_bundle_id` rather than tool banners. A green result means the committed artifact matches the verified build output, not merely that two tools printed a similar version name.",``,`## Relay deployment automation (Session April 09, #433)`,"- **Acquire deployment credentials per operation:** `packages/relay-deploy/auth/` resolves `/workspaces/northstar/config/relay/`; `relay credential lease` returns `relay_lease_id`. The lease is bound to one provider and action, expires quickly, and can be revoked without changing local configuration or any unrelated deployment session.","- **Use immutable release descriptors:** `packages/relay-deploy/manifests/` publishes `/workspaces/northstar/artifacts/releases/`; `relay deploy plan` pins `release_descriptor_sha`. Review therefore covers the exact image, configuration, migration, and rollback input that promotion will consume rather than a mutable branch or floating tag.","- **Model provider capabilities explicitly:** `packages/relay-deploy/providers/` tests `/workspaces/northstar/testdata/providers/`; `provider_capability_set` prevents unsupported preview creation. A plan can explain which feature is absent and offer a compatible path before it asks a remote service to begin work.","- **Write remote documents atomically:** `packages/relay-deploy/files/` stages `/workspaces/northstar/checkpoints/remote/`; `relay file put` requires `expected_revision`. This prevents a short replacement from leaving stale tail content and prevents a concurrent operator from losing a newer remote change.","- **Keep retry policy narrow:** `packages/relay-deploy/retry/` reads `/workspaces/northstar/docs/runbooks/`; `relay_retryable_error` excludes policy denials and invalid manifests. Delay includes a firm attempt limit and a stable request identity so a temporary transport fault cannot become duplicate provider work.","- **Promote the artifact already tested:** `packages/relay-deploy/promote/` selects `/workspaces/northstar/artifacts/releases/`; `relay promote` verifies `tested_artifact_sha`. The command refuses a rebuild during promotion because even an equivalent source revision can yield a different dependency graph or bundle digest.",``,`## Orbit browser collaboration (Session April 11, #447)`,"- **Represent each shared tab as an Orbit room:** `packages/orbit-collab/rooms/` persists `/workspaces/northstar/testdata/orbit/`; `orbit room create` returns `room_epoch` and `participant_slot`. Room identity stays stable across transport replacement, while a new epoch makes every participant reject late state from a connection that no longer owns the session.","- **Send cursor updates as replaceable state:** `packages/orbit-collab/presence/` replays `/workspaces/northstar/fixtures/presence/`; `orbit_presence_v5` coalesces superseded coordinates. Presence may be lost without harming the document because the next update replaces it, which keeps interaction smooth under delay without building an unbounded queue.","- **Keep durable messages separate from presence:** `packages/orbit-collab/messages/` writes `/workspaces/northstar/checkpoints/orbit/`; `orbit message append` assigns `message_sequence`. A message is acknowledged only after durable storage, and replay begins after the highest sequence already seen so reconnect cannot create a duplicate conversation entry.","- **Recover from a stale browser execution context:** `packages/orbit-collab/browser/` logs `/workspaces/northstar/traces/orbit/`; `orbit context renew` increments `context_generation`. The old context is detached before a new observer is added, preventing both generations from sending navigation and focus events for the same visible tab.","- **Capture collaboration evidence through the public surface:** `packages/orbit-collab/qa/` stores `/workspaces/northstar/artifacts/screens/`; `keel orbit snapshot` records `active_room_id`. Review uses the same controls available to a person, then records visible member state, selected room, pending draft, and transport health beside the image.","- **Preserve pending input during reconnect:** `packages/orbit-collab/drafts/` tests `/workspaces/northstar/repros/reconnect/`; `draft_revision` survives one `transport_rebind`. The draft remains local until send succeeds, and a successful acknowledgement clears only the revision that was actually delivered rather than newer text still being edited.",``,`## Incident review — reconnect storm (Session April 12)`,"- **Root cause was competing transport owners:** `packages/orbit-collab/transport/` and `/workspaces/northstar/repros/reconnect/` both advanced `room_epoch`; the fix elects one `transport_owner`. The incident began when a browser wake event and a network return event each created a connection before either could observe the other.","- **The retry loop hid the first useful error:** `packages/orbit-collab/retry/` now records `/workspaces/northstar/traces/incidents/`; `first_failure_code` is retained in `reconnect_report`. Later timeout noise remains available in the trace, but the summary leads with the event that first moved the room away from healthy state.","- **Recovery must preserve the draft and selected room:** `packages/orbit-collab/state/` replays `/workspaces/northstar/fixtures/recovery/`; `orbit_recover_state` restores `active_room_id`. The acceptance check covers unsent text, keyboard focus, scroll position, participant order, and exactly one successful delivery after transport recovery.",``,`## Mobile companion sync (Session April 14, #462)`,"- **Pair the companion with an ephemeral code:** `packages/mobile-sync/pairing/` verifies `/workspaces/northstar/testdata/pairing/`; `mobile_pair_code` expires with `pairing_epoch`. Approval shows the synthetic device name and requested capability before either side accepts, and cancellation invalidates the code immediately rather than waiting for normal expiry.","- `packages/mobile-sync/outbox/` mirrors `/workspaces/northstar/fixtures/offline/`; `mobile_outbox_flush` preserves ordering after a network transition. Each item carries a local sequence and stable identity, so a retry can continue after the last acknowledgement without losing or repeating an action.","- `packages/mobile-sync/media/` writes `/workspaces/northstar/artifacts/mobile/`; `mobile_media_chunk` carries a checksum before upload. The receiver verifies every chunk before assembly and reports the first damaged range, which permits a narrow retry instead of sending the complete recording again.","- `packages/mobile-sync/notifications/` reads `/workspaces/northstar/testdata/push/`; `notification_dedupe_key` prevents duplicate alerts after resume. Foreground delivery updates visible state without another banner, while background delivery presents one alert that opens the exact room named by the event.","- `packages/mobile-sync/state/` compares `/workspaces/northstar/checkpoints/mobile/`; `mobile_state_merge` rejects an older `device_epoch`. Merge keeps local draft content, accepts newer durable state, and records a conflict when both sides changed the same preference after their common revision.","- `packages/mobile-sync/diagnostics/` exports `/workspaces/northstar/traces/mobile/`; `mobile_diag_bundle` removes payload text but keeps timing. The bundle includes version, platform, connection change, queue depth, retry count, and state generation so support can reason about order without reading user content.","- `packages/mobile-sync/accessibility/` tests `/workspaces/northstar/fixtures/a11y/`; `focus_restore_target` survives a view rebuild. The check follows pairing, room choice, draft entry, send, background, and resume with a keyboard so focus order is verified through a complete task.","- `packages/mobile-sync/release/` stages `/workspaces/northstar/artifacts/mobile/`; `mobile_release_channel` defaults to the review track. Promotion requires the same signed archive that passed device smoke review, with no rebuild or configuration change between approval and publication.","- `packages/mobile-sync/qa/` records `/workspaces/northstar/reviews/mobile/`; `mobile_smoke_matrix` covers offline launch, resume, and re-pairing. Each case states the initial network and account state, the exact action, the visible result, and the durable state expected after another launch.",``,`## Release readiness (Session April 16)`,"- `packages/release-checks/lint/` scans `/workspaces/northstar/checkpoints/release/`; `keel verify lint` writes `lint_run_id` for the candidate. Review links that identity rather than a copied summary so any warning, formatter change, or excluded file remains visible in its original context.","- `packages/release-checks/types/` scans `/workspaces/northstar/checkpoints/release/`; `keel verify types` records `type_graph_hash`. A later source or dependency change invalidates that graph and requires another check before the candidate can share the earlier result.","- `packages/release-checks/tests/` reads `/workspaces/northstar/testdata/`; `keel verify tests` stores `test_matrix_id`. The matrix names every package, host, browser, and fixture group that ran, making an omitted surface as visible as a failed assertion.","- `packages/release-checks/coverage/` reads `/workspaces/northstar/artifacts/coverage/`; `keel verify coverage` compares `coverage_floor_set`.","- `packages/release-checks/build/` emits `/workspaces/northstar/artifacts/builds/`; `keel verify build` stamps `bundle_manifest_sha`.","- `packages/release-checks/smoke/` stores `/workspaces/northstar/reviews/smoke/`; `keel verify smoke` requires `reviewer_ack`.",``,`## Durable project reference`,``,`### People and product context`,"- Mina Kestrel leads Northstar product engineering; the synthetic team directory lives in `packages/project-context/people/` and uses `mina_kestrel` plus `product_lead`.","- Oren Vale owns the Aurora renderer; notes in `packages/project-context/people/` use `oren_vale` and `rendering_owner`.","- Jules Rowan owns Harbor and Relay; entries in `packages/project-context/people/` use `jules_rowan` and `control_plane_owner`.","- Nia Ember owns Signal audio; records in `packages/project-context/people/` use `nia_ember` and `audio_owner`.","- Kestrel is the primary engineering agent; `/workspaces/northstar/agents/` maps `agent_kestrel` to `northstar_generalist`.","- Northstar is a fictional collaborative desktop environment; `/workspaces/northstar/docs/` defines `northstar_product` and `desktop_collaboration`.","- Aurora renders local workspaces and review scenes; `/workspaces/northstar/docs/` defines `aurora_renderer` and `scene_protocol_v6`.","- Atlas hosts sandboxed extensions; `/workspaces/northstar/docs/` defines `atlas_runtime` and `plugin_manifest_v4`.","- Harbor manages control-plane resources; `/workspaces/northstar/docs/` defines `harbor_cli` and `harbor_result_v2`.","- Relay promotes verified artifacts; `/workspaces/northstar/docs/` defines `relay_deploy` and `release_descriptor_sha`.","- Orbit synchronizes shared browser state; `/workspaces/northstar/docs/` defines `orbit_collab` and `room_epoch`.","- Signal captures and transcribes synthetic audio; `/workspaces/northstar/docs/` defines `signal_audio` and `utterance_seq`.","- Keel is the repository and verification CLI; `/workspaces/northstar/docs/` defines `keel_cli` and `verification_run`.","- Rook is the deterministic package builder; `/workspaces/northstar/docs/` defines `rook_builder` and `bundle_manifest`.","- The demo tenant is always synthetic; `/workspaces/northstar/fixtures/` uses `tenant_sandbox` and `viewer_alpha`.","- Review accounts use the reserved invalid domain; `/workspaces/northstar/fixtures/` stores `mina@example.invalid` and `oren@example.invalid`.","- Dates and identifiers describe an invented future project; `/workspaces/northstar/docs/` labels `fixture_provenance` and `synthetic_only`.","- Product decisions favor understandable failure states; `/workspaces/northstar/docs/` records `visible_diagnostics` and `recoverable_actions`.",``,`### Engineering preferences`,"- Keep each review branch narrow; `/workspaces/northstar/reviews/` records `change_scope` and `review_owner`.","- Prefer native text patches for source changes; `/workspaces/northstar/checkpoints/` records `patch_digest` and `base_oid`.","- Wait on CI through the supported command; `/workspaces/northstar/checkpoints/` stores `verification_run` and `final_status`.","- Never commit credential material; `/workspaces/northstar/config/` contains `credential_handle` and `lease_expiry` only.","- Require explicit confirmation before production promotion; `/workspaces/northstar/reviews/` stores `promotion_approval` and `rollback_plan`.","- Reproduce failures before changing a workaround; `/workspaces/northstar/repros/` stores `fixture_seed` and `first_failure_code`.","- Diagnose invisible failures with traffic and state metrics; `/workspaces/northstar/traces/` tracks `request_count` and `state_generation`.","- Use exact units instead of ambiguous shorthand; `/workspaces/northstar/docs/` prefers `approximately` and `milliseconds`.","- Keep secrets inside the broker boundary; `/workspaces/northstar/config/` exposes `credential_handle` and `provider_scope`.","- Report regressions with measured before and after values; `/workspaces/northstar/reviews/` records `baseline_metric` and `candidate_metric`.",``,`### Repository and verification map`,"- The monorepo root is `/workspaces/northstar/`; `packages/northstar-shell` contains the desktop host and `keel verify shell` is its focused gate.","- Aurora lives in `/workspaces/northstar/packages/`; `@northstar/aurora` is the public package and `aurora_protocol_v6` is the renderer contract.","- Atlas lives in `/workspaces/northstar/packages/`; `@northstar/atlas-runtime` owns plugin loading and `plugin_manifest_v4` is its schema.","- Harbor and Relay live in `/workspaces/northstar/packages/`; `@northstar/harbor-cli` owns commands and `release_descriptor_sha` identifies promotion input.","- Orbit and Signal live in `/workspaces/northstar/packages/`; `@northstar/orbit-collab` owns shared state and `utterance_seq` orders audio text.","- All synthetic fixtures live in `/workspaces/northstar/testdata/`; `keel verify fixtures` checks privacy and `fixture_provenance` marks their source.",``,`### Infrastructure and operations`,"- The local control plane uses `/workspaces/northstar/config/`; `harbor_local_profile` selects the sandbox and `credential_handle` references broker state.","- Preview artifacts use `/workspaces/northstar/artifacts/`; `aurora_bundle_hash` identifies the renderer and `canonical_bundle_id` drives drift checks.","- Deployment manifests use `/workspaces/northstar/artifacts/`; `release_descriptor_sha` pins content and `tested_artifact_sha` gates promotion.","- Collaboration traces use `/workspaces/northstar/traces/`; `room_epoch` identifies a session and `context_generation` identifies browser renewal.","- Mobile diagnostics use `/workspaces/northstar/traces/`; `mobile_diag_bundle` strips content and `device_epoch` orders state.","- Incident runbooks use `/workspaces/northstar/docs/`; `first_failure_code` names the initiating fault and `rollback_plan` names recovery.","- Review evidence uses `/workspaces/northstar/reviews/`; `baseline_metric` and `candidate_metric` keep UI judgments quantitative.","- Production promotion remains disabled in this fixture; `/workspaces/northstar/config/` sets `production_enabled` false and `tenant_sandbox` as the only tenant."].join(`
|
|
3099
|
-
`)+``;var
|
|
3099
|
+
`)+``;var bi=new Set([`user`,`feedback`,`project`]),xi={user:{hue:`--rose`,label:`user`},feedback:{hue:`--cyan`,label:`feedback`},project:{hue:`--violet`,label:`project`}};function Si(e){return e===`feedback`||e===`project`?e:`user`}var Ci=M(`
|
|
3100
3100
|
:host {
|
|
3101
3101
|
display: inline-flex;
|
|
3102
3102
|
vertical-align: middle;
|
|
@@ -3118,13 +3118,13 @@ void main(){
|
|
|
3118
3118
|
background: color-mix(in srgb, var(--mtag-hue, var(--rose)) var(--mtag-fill), var(--canvas));
|
|
3119
3119
|
border: 1px solid color-mix(in srgb, var(--mtag-hue, var(--rose)) var(--mtag-border), var(--line));
|
|
3120
3120
|
}
|
|
3121
|
-
`),
|
|
3121
|
+
`),wi=`slicc-memtag-dark`,Ti=`
|
|
3122
3122
|
.dark slicc-memtag,
|
|
3123
3123
|
[data-theme="dark"] slicc-memtag {
|
|
3124
3124
|
--mtag-fill: 22%;
|
|
3125
3125
|
--mtag-border: 38%;
|
|
3126
3126
|
}
|
|
3127
|
-
`;function
|
|
3127
|
+
`;function Ei(e){if(e.getElementById(wi))return;let t=e.createElement(`style`);t.id=wi,t.textContent=Ti,(e.head??e.documentElement).appendChild(t)}A(`slicc-memtag`,class extends HTMLElement{static observedAttributes=[`type`,`label`];#e;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[Ci]}connectedCallback(){Ei(this.ownerDocument),this.#t()}attributeChangedCallback(){this.isConnected&&this.#t()}get type(){return Si(this.getAttribute(`type`))}set type(e){this.setAttribute(`type`,bi.has(e)?e:`user`)}get label(){return this.getAttribute(`label`)}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}#t(){let{hue:e,label:t}=xi[this.type],n=this.label??j(`slot`,null,t),r=j(`span`,{class:`mtag`,part:`tag`,style:`--mtag-hue:var(${e})`},n);this.#e.replaceChildren(r)}});var Di=`
|
|
3128
3128
|
slicc-memrow {
|
|
3129
3129
|
display: block;
|
|
3130
3130
|
border: 1px solid var(--line);
|
|
@@ -3231,7 +3231,7 @@ slicc-memrow.fresh {
|
|
|
3231
3231
|
background: color-mix(in srgb, var(--violet) 22%, var(--canvas));
|
|
3232
3232
|
border-color: color-mix(in srgb, var(--violet) 38%, var(--line));
|
|
3233
3233
|
}
|
|
3234
|
-
`,
|
|
3234
|
+
`,Oi=`slicc-memrow-style`,ki=96,Ai=12;function ji(e,t){if(e.length<=ki)return{heading:e,summary:t};let n=e.slice(0,97).lastIndexOf(` `),r=n>=Ai?n:ki,i=e.slice(r).trim();return{heading:e.slice(0,r).trim(),summary:[i,t].filter(Boolean).join(` `)}}function Mi(e){if(e.getElementById(Oi))return;let t=e.createElement(`style`);t.id=Oi,t.textContent=Di,(e.head??e.documentElement).appendChild(t)}function Ni(e){return e===`feedback`||e===`project`?e:`user`}A(`slicc-memrow`,class extends HTMLElement{static get observedAttributes(){return[`heading`,`summary`,`tag`,`fresh`,`expanded`]}#e=!1;#t=null;#n=null;#r=null;#i=null;#a=null;#o=null;#s=0;#c=!1;#l=!1;#u=null;#d=null;#f=null;connectedCallback(){Mi(this.ownerDocument),this.#e||this.#p(),this.#m(),this.#y(),this.#h()}disconnectedCallback(){this.#b(),this.#o?.disconnect(),this.#o=null,this.#s&&cancelAnimationFrame(this.#s),this.#s=0}attributeChangedCallback(){this.#e&&this.#m()}get heading(){return this.getAttribute(`heading`)??``}set heading(e){e==null?this.removeAttribute(`heading`):this.setAttribute(`heading`,e)}get summary(){return this.getAttribute(`summary`)??``}set summary(e){e==null?this.removeAttribute(`summary`):this.setAttribute(`summary`,e)}get tag(){return Ni(this.getAttribute(`tag`))}set tag(e){this.setAttribute(`tag`,e)}get fresh(){return this.hasAttribute(`fresh`)}set fresh(e){this.toggleAttribute(`fresh`,e)}get expanded(){return this.hasAttribute(`expanded`)}set expanded(e){this.toggleAttribute(`expanded`,e)}setHeadingContent(e){this.#c=!0,this.#n?this.#n.replaceChildren(e):this.#u=e}setBodyContent(e){this.#l=!0,this.#i?this.#i.replaceChildren(e):this.#d=e,this.#g()}#p(){this.#e=!0;let e=this.ownerDocument.createElement(`button`);e.className=`mt`,e.type=`button`;let t=this.ownerDocument.createElement(`b`),n=this.ownerDocument.createElement(`slicc-memtag`);e.append(t,n);let r=this.ownerDocument.createElement(`div`);for(r.className=`ms`;this.firstChild;)r.appendChild(this.firstChild);this.#u&&t.replaceChildren(this.#u),this.#d&&r.replaceChildren(this.#d),this.#u=null,this.#d=null,this.append(e,r),this.#t=e,this.#n=t,this.#r=n,this.#i=r}#m(){let e=this.#n,t=this.#r,n=this.#i;if(!e||!t||!n)return;let r=ji(this.heading,this.summary);this.#c||(e.textContent=r.heading);let i=this.tag;if(t.className=``,t.hidden=!this.hasAttribute(`tag`),t.setAttribute(`type`,i),t.textContent=``,!this.#l){let e=n.firstChild,t=r.summary;e&&e.nodeType===Node.TEXT_NODE?e.textContent=t:t&&n.insertBefore(this.ownerDocument.createTextNode(t),e)}this.classList.toggle(`fresh`,this.fresh),this.#v(),this.#g()}#h(){let e=this.#i;!e||this.#o||(this.#o=new ResizeObserver(()=>this.#g()),this.#o.observe(e),this.#g())}#g(){!this.isConnected||this.expanded||(this.#s&&cancelAnimationFrame(this.#s),this.#s=requestAnimationFrame(()=>{this.#s=0;let e=this.#i;!e||this.expanded||(e.scrollHeight>e.clientHeight+1?this.#_():this.#a?.remove(),this.#v())}))}#_(){if(!this.#a){let e=this.ownerDocument.createElement(`button`);e.className=`mexpand`,e.type=`button`,e.addEventListener(`click`,e=>{e.stopPropagation(),this.expanded=!this.expanded}),this.#a=e}this.#a.isConnected||this.append(this.#a)}#v(){let e=this.#a;if(!e?.isConnected)return;let t=this.expanded;e.textContent=t?`Show less`:`Show more`,e.setAttribute(`aria-expanded`,String(t))}#y(){this.#f||(this.#f=e=>this.#x(e),this.addEventListener(`click`,this.#f))}#b(){this.#f&&=(this.removeEventListener(`click`,this.#f),null)}#x(e){this.dispatchEvent(new CustomEvent(`select`,{bubbles:!0,composed:!0,detail:{heading:this.heading,summary:this.summary,tag:this.tag,sourceEvent:e}}))}});var Pi=`
|
|
3235
3235
|
slicc-memory-panel{display:flex;flex-direction:column;min-height:0;overflow:hidden;background:var(--canvas);color:var(--ink);font-family:var(--ui)}
|
|
3236
3236
|
slicc-memory-panel .mp-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--canvas) 94%,var(--violet))}
|
|
3237
3237
|
slicc-memory-panel .mp-search{display:flex;align-items:center;min-width:0;border:1px solid var(--line);border-radius:10px;background:var(--canvas);padding:0 10px}
|
|
@@ -3264,7 +3264,7 @@ slicc-memory-panel .mp-rows{padding:0;border-top:0}
|
|
|
3264
3264
|
slicc-memory-panel slicc-memrow{border:0;border-radius:0;border-top:1px solid var(--line);margin:0;padding:7px 12px}
|
|
3265
3265
|
slicc-memory-panel slicc-memrow .mt b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
|
|
3266
3266
|
slicc-memory-panel slicc-memrow .ms{-webkit-line-clamp:1;margin-top:2px;font-size:11px}
|
|
3267
|
-
`,
|
|
3267
|
+
`,Fi=`slicc-memory-panel-style`;function Ii(e){if(e.getElementById(Fi))return;let t=e.createElement(`style`);t.id=Fi,t.textContent=Pi,(e.head??e.documentElement).append(t)}function Li(e){return e.getAttribute(`section`)?.trim()||`General`}function Ri(e){let t=new Map;for(let n of e){let e=Li(n),r=t.get(e)??[];r.push(n),t.set(e,r)}return t}var zi=2,Bi=[`user`,`feedback`,`project`];function Vi(e){for(let t of Bi)if(e.filter(e=>e.getAttribute(`tag`)===t).length*2>e.length)return t;return null}function Hi(e,t){let n=Vi(t);n&&e.setAttribute(`data-suppress-${n}`,``)}function Ui(e){let t=/^Auto-extracted \((?:(\d{4})-(\d{2})-(\d{2}),\s*)?([^)]+)\)$/.exec(e);if(!t){let t=/\(([^)]*\bsessions?\b[^)]*)\)/i.exec(e);return t?{name:`${e.slice(0,t.index)} ${e.slice(t.index+t[0].length)}`.replace(/\s+[—–-]\s*$/,``).replace(/\s+/g,` `).trim()||`Session memory`,source:t[1]}:{name:e,source:``}}let[,n,r,i,a]=t;if(!n||!r||!i)return{name:`Auto-extracted`,source:a};let o=new Date(Date.UTC(Number(n),Number(r)-1,Number(i)));return{name:new Intl.DateTimeFormat(`en-US`,{month:`short`,day:`numeric`,year:`numeric`,timeZone:`UTC`}).format(o),source:a.replaceAll(`-`,` `)}}A(`slicc-memory-panel`,class extends HTMLElement{#e=[];#t=null;#n=null;#r=null;#i=null;#a=``;#o=`all`;#s=new Set;#c=!1;connectedCallback(){Ii(this.ownerDocument),this.#c||this.#u(),this.#h()}setRows(e){let t=new Set(Ri(this.#e).keys());this.#e=e.filter(e=>e.matches(`slicc-memrow`)),this.#l();let n=[...Ri(this.#e).keys()],r=new Set;for(let e of n)(!t.has(e)||this.#s.has(e))&&r.add(e);this.#s=r,this.#c&&this.#h()}#l(){let e=this.#i;if(e){for(let t of e.options){if(t.value===`all`)continue;let e=!this.#e.some(e=>e.getAttribute(`tag`)===t.value);t.hidden=e,t.disabled=e}e.value=this.#o}}#u(){this.#c=!0;let e=j(`input`,{type:`search`,placeholder:`Search memories…`,"aria-label":`Search memories`}),t=j(`select`,{class:`mp-filter`,"aria-label":`Filter memories by tag`},j(`option`,{value:`all`},`All tags`),j(`option`,{value:`user`},`User`),j(`option`,{value:`feedback`},`Feedback`),j(`option`,{value:`project`},`Project`)),n=j(`div`,{class:`mp-count`,role:`status`,"aria-live":`polite`}),r=j(`div`,{class:`mp-toolbar`},j(`label`,{class:`mp-search`},e),t,n),i=j(`div`,{class:`mp-body`});e.addEventListener(`input`,()=>{this.#a=e.value.trim().toLowerCase(),this.#h()}),t.addEventListener(`change`,()=>{this.#o=t.value,this.#h()}),this.replaceChildren(r,i),this.#t=i,this.#n=n,this.#r=e,this.#i=t,this.#l()}#d(){return this.#e.filter(e=>this.#o!==`all`&&e.getAttribute(`tag`)!==this.#o?!1:!this.#a||[e.getAttribute(`heading`),e.getAttribute(`summary`),e.getAttribute(`section`),e.getAttribute(`tag`),e.textContent].filter(Boolean).join(` `).toLowerCase().includes(this.#a))}#f(e){return j(`div`,{class:`mp-empty`},j(`strong`,null,e?`No matching memories`:`No memories yet`),j(`span`,null,e?`Try a different search or tag.`:`Memories extracted from conversations will appear here.`))}#p(e,t){let n=Ui(e),r=j(`details`,{class:`mp-group`},j(`summary`,{class:`mp-section`},j(`span`,{class:`mp-section-name`},n.name),...n.source?[j(`span`,{class:`mp-section-source`},n.source)]:[],j(`span`,{class:`mp-section-count`},`${t.length}`)),j(`div`,{class:`mp-rows`},...t));return r.open=this.#a?!0:this.#s.has(e),r.addEventListener(`toggle`,()=>{r.open?this.#s.add(e):this.#s.delete(e)}),Hi(r,t),r}#m(e){let t=j(`div`,{class:`mp-flat`},...e);return Hi(t,e),t}#h(){let e=this.#t;if(!e)return;let t=this.#d();if(this.#r&&(this.#r.placeholder=`Search ${this.#e.length} memories…`),this.#n&&(this.#n.textContent=`${t.length} of ${this.#e.length} memories`),this.#e.length===0){e.replaceChildren(this.#f(!1));return}if(t.length===0){e.replaceChildren(this.#f(!0));return}let n=Ri(t);if(n.size<zi){e.replaceChildren(this.#m(t));return}e.replaceChildren(...[...n].map(([e,t])=>this.#p(e,t)))}});var Wi=`
|
|
3268
3268
|
slicc-palette-grid {
|
|
3269
3269
|
display: block;
|
|
3270
3270
|
flex: 1;
|
|
@@ -3283,7 +3283,7 @@ slicc-palette-grid .palgrid {
|
|
|
3283
3283
|
grid-template-columns: repeat(auto-fill, minmax(96px, 1fr));
|
|
3284
3284
|
gap: 10px;
|
|
3285
3285
|
}
|
|
3286
|
-
`,
|
|
3286
|
+
`,Gi=`slicc-palette-grid-style`;function Ki(e){if(e.getElementById(Gi))return;let t=e.createElement(`style`);t.id=Gi,t.textContent=Wi,(e.head??e.documentElement).appendChild(t)}var qi=[{label:`canvas #faf6f1`,color:`#faf6f1`},{label:`cone #ef7000`,color:`#ef7000`},{label:`scoop #8b5cf6`,color:`#8b5cf6`},{label:`scoop #06b6d4`,color:`#06b6d4`},{label:`scoop #f43f5e`,color:`#f43f5e`},{label:`ink #0a0a0a`,color:`#0a0a0a`}],Ji=`brand palette · tokens`;A(`slicc-palette-grid`,class extends HTMLElement{static get observedAttributes(){return[`heading`]}#e=!1;#t=null;#n=null;#r=[];#i=null;#a=null;connectedCallback(){Ki(this.ownerDocument),this.#e||this.#o(),this.#s(),this.#l()}disconnectedCallback(){this.#u()}attributeChangedCallback(){this.#e&&this.#s()}get heading(){return this.getAttribute(`heading`)??Ji}set heading(e){e==null?this.removeAttribute(`heading`):this.setAttribute(`heading`,e)}get tokens(){return(this.#i??qi).map(e=>({...e}))}set tokens(e){this.#i=Array.isArray(e)?e.map(e=>({label:String(e.label??``),color:String(e.color??``)})):null,this.#e&&this.#c()}#o(){for(this.#e=!0,this.#r=[];this.firstChild;)this.#r.push(this.firstChild),this.removeChild(this.firstChild);let e=this.ownerDocument.createElement(`h4`),t=this.ownerDocument.createElement(`div`);t.className=`palgrid`,this.append(e,t),this.#t=e,this.#n=t,this.#c()}#s(){this.#t&&(this.#t.textContent=this.heading)}#c(){let e=this.#n;if(e){e.replaceChildren();for(let t of this.#r)e.appendChild(t);for(let t of this.tokens){let n=this.ownerDocument.createElement(`slicc-palette-cell`);n.setAttribute(`color`,t.color),n.setAttribute(`label`,t.label),e.appendChild(n)}}}#l(){this.#a||(this.#a=e=>{let t=e.detail??{};this.dispatchEvent(new CustomEvent(`select`,{bubbles:!0,composed:!0,detail:{label:t.label??``,color:t.color??``,sourceEvent:e}}))},this.addEventListener(`palette-select`,this.#a))}#u(){this.#a&&=(this.removeEventListener(`palette-select`,this.#a),null)}});var Yi=M(`
|
|
3287
3287
|
:host { display: inline-block; position: relative; font-family: var(--ui); }
|
|
3288
3288
|
.trigger {
|
|
3289
3289
|
display: inline-flex; align-items: center; justify-content: center;
|
|
@@ -3324,7 +3324,7 @@ slicc-palette-grid .palgrid {
|
|
|
3324
3324
|
.item .ic { flex: 0 0 auto; display: flex; color: var(--txt-2, #505050); }
|
|
3325
3325
|
.item.danger .ic { color: var(--rose, #f43f5e); }
|
|
3326
3326
|
@media (prefers-reduced-motion: reduce) { .pop { transition: none; } }
|
|
3327
|
-
`);
|
|
3327
|
+
`);A(`slicc-avatar-menu`,class extends HTMLElement{static observedAttributes=[`open`];#e;#t;#n;#r=[];#i=null;#a=e=>{this.open&&!e.composedPath().includes(this)&&this.hide()};#o=e=>{e.key===`Escape`&&this.open&&(this.hide(),this.#t.focus())};constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[Yi],this.#t=j(`button`,{class:`trigger`,part:`trigger`,type:`button`,"aria-haspopup":`menu`,"aria-expanded":`false`},j(`slot`)),this.#n=j(`div`,{class:`pop`,part:`popover`,role:`menu`}),this.#e.replaceChildren(this.#t,this.#n),this.#t.addEventListener(`click`,()=>this.toggle())}connectedCallback(){this.#c()}disconnectedCallback(){document.removeEventListener(`mousedown`,this.#a),document.removeEventListener(`keydown`,this.#o)}attributeChangedCallback(e){if(e===`open`){let e=this.open;this.#t.setAttribute(`aria-expanded`,e?`true`:`false`),e?(document.addEventListener(`mousedown`,this.#a),document.addEventListener(`keydown`,this.#o)):(document.removeEventListener(`mousedown`,this.#a),document.removeEventListener(`keydown`,this.#o))}}get open(){return this.hasAttribute(`open`)}set open(e){this.toggleAttribute(`open`,e)}get user(){return this.#i}set user(e){this.#i=e,this.#c()}get items(){return this.#r.map(e=>({...e}))}set items(e){this.#r=Array.isArray(e)?e.map(e=>({...e})):[],this.#c()}show(){this.open||(this.open=!0,this.#s())}hide(){this.open&&(this.open=!1,this.#s())}toggle(){this.open?this.hide():this.show()}#s(){this.dispatchEvent(new CustomEvent(`slicc-avatar-menu-toggle`,{detail:{open:this.open},bubbles:!0,composed:!0}))}#c(){let e=[];if(this.#i){let t=j(`div`,{class:`user`},j(`div`,{class:`name`},this.#i.name));this.#i.provider&&t.append(j(`div`,{class:`prov`},this.#i.provider)),e.push(t)}for(let t of this.#r)if(t.kind===`separator`)e.push(j(`div`,{class:`sep`,role:`separator`}));else if(t.kind===`caption`)e.push(j(`div`,{class:`cap`},t.label??``));else{let r=j(`button`,{class:`item${t.danger?` danger`:``}`,part:`item`,type:`button`,role:`menuitem`,"data-id":t.id??``,disabled:t.disabled?!0:void 0});t.icon&&r.append(j(`span`,{class:`ic`},n(t.icon,{size:16}))),r.append(j(`span`,{class:`lb`},t.label??``)),t.disabled||r.addEventListener(`click`,()=>this.#l(t.id??``)),e.push(r)}this.#n.replaceChildren(...e)}#l(e){this.dispatchEvent(new CustomEvent(`slicc-avatar-action`,{detail:{id:e},bubbles:!0,composed:!0})),this.hide()}});var Xi=`
|
|
3328
3328
|
.slicc-nav {
|
|
3329
3329
|
display: flex;
|
|
3330
3330
|
align-items: center;
|
|
@@ -3354,7 +3354,7 @@ slicc-palette-grid .palgrid {
|
|
|
3354
3354
|
width, not the viewport, so embedded and Storybook frames behave like the
|
|
3355
3355
|
real sidebar. */
|
|
3356
3356
|
.slicc-nav[data-narrow] { gap: 8px; padding: 0 10px; }
|
|
3357
|
-
`,
|
|
3357
|
+
`,Zi=`slicc-nav-style`;function Qi(e){if(e.getElementById(Zi))return;let t=e.createElement(`style`);t.id=Zi,t.textContent=Xi,(e.head??e.documentElement).appendChild(t)}A(`slicc-nav`,class extends HTMLElement{static observedAttributes=[`accent`];#e=!1;#t=null;connectedCallback(){Qi(this.ownerDocument),this.classList.add(`slicc-nav`),this.setAttribute(`part`,`bar`),this.#n(),this.#r(this.getAttribute(`accent`)),typeof ResizeObserver<`u`&&(this.#t=new ResizeObserver(()=>this.#i()),this.#t.observe(this)),this.#i()}disconnectedCallback(){this.#t?.disconnect(),this.#t=null}attributeChangedCallback(e,t,n){e===`accent`&&t!==n&&this.isConnected&&(this.#r(n),this.dispatchEvent(new CustomEvent(`slicc-nav-accent-change`,{detail:{accent:n},bubbles:!0,composed:!0})))}get accent(){return this.getAttribute(`accent`)}set accent(e){e==null?this.removeAttribute(`accent`):this.setAttribute(`accent`,e)}get spacer(){return this.#n(),this.querySelector(`:scope > .slicc-nav__spacer, :scope > .spacer`)}#n(){if(this.#e||(this.#e=!0,this.querySelector(`:scope > .slicc-nav__spacer, :scope > .spacer`)))return;let e=this.ownerDocument.createElement(`div`);e.className=`slicc-nav__spacer`,e.setAttribute(`part`,`spacer`),e.setAttribute(`aria-hidden`,`true`);let t=this.querySelector(`:scope > slicc-floatbar, :scope > slicc-theme-toggle, :scope > slicc-avatar`);t?this.insertBefore(e,t):this.appendChild(e)}#r(e){e==null||e.trim()===``?this.style.removeProperty(`--ctx`):this.style.setProperty(`--ctx`,e)}#i(){this.toggleAttribute(`data-narrow`,this.getBoundingClientRect().width<=560)}});var $i=M(`
|
|
3358
3358
|
:host {
|
|
3359
3359
|
position: fixed;
|
|
3360
3360
|
z-index: 110;
|
|
@@ -3392,7 +3392,7 @@ slicc-palette-grid .palgrid {
|
|
|
3392
3392
|
.item.destructive {
|
|
3393
3393
|
color: var(--red, #e53e3e);
|
|
3394
3394
|
}
|
|
3395
|
-
`),
|
|
3395
|
+
`),ea=null,ta=null,na=null,ra=class e extends HTMLElement{#e;#t=void 0;#n=null;#r=null;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[$i]}connectedCallback(){this.#e.addEventListener(`click`,this.#i)}disconnectedCallback(){this.#e.removeEventListener(`click`,this.#i)}#i=t=>{let n=t.target.closest(`[data-action]`);if(!n)return;let r=n.dataset.action;(this.#r??this.#n??this).dispatchEvent(new CustomEvent(`overflow-action`,{bubbles:!0,composed:!0,detail:{action:r,context:this.#t}})),e.hide()};static show(t){e.hide();let r=document.createElement(`slicc-overflow-menu`);r.#t=t.context,r.#n=t.anchor,r.#r=t.dispatchTarget??null;let i=t.items.filter(e=>e.visible!==!1),a=j(`div`,{class:`menu`});for(let e of i){let t=e.destructive?`item destructive`:`item`,r=[];e.icon&&r.push(n(e.icon,{size:14})),r.push(e.label);let i=j(`button`,{class:t,"data-action":e.id},...r);a.appendChild(i)}r.#e.appendChild(a),document.body.appendChild(r),ea=r;let o=t.anchor.getBoundingClientRect(),s=r.getBoundingClientRect(),c=o.bottom+4;c+s.height>window.innerHeight&&(c=o.top-s.height-4);let l=o.right-s.width;l<4&&(l=o.left),r.style.top=`${c}px`,r.style.left=`${l}px`,ta=t=>{t.key===`Escape`&&e.hide()},na=n=>{let i=n.composedPath();!i.includes(r)&&!i.includes(t.anchor)&&e.hide()},document.addEventListener(`keydown`,ta),document.addEventListener(`pointerdown`,na,{capture:!0})}static hide(){ea&&=(ea.remove(),null),ta&&=(document.removeEventListener(`keydown`,ta),null),na&&=(document.removeEventListener(`pointerdown`,na,{capture:!0}),null)}};A(`slicc-overflow-menu`,ra);var ia=M(`
|
|
3396
3396
|
:host { display: none; }
|
|
3397
3397
|
:host([open]) { display: block; }
|
|
3398
3398
|
.overlay {
|
|
@@ -3439,7 +3439,7 @@ slicc-palette-grid .palgrid {
|
|
|
3439
3439
|
@media (prefers-reduced-motion: reduce) {
|
|
3440
3440
|
.overlay, .dialog { transition: none; }
|
|
3441
3441
|
}
|
|
3442
|
-
`);
|
|
3442
|
+
`);A(`slicc-dialog`,class extends HTMLElement{static observedAttributes=[`open`,`heading`,`description`,`no-close-button`];#e;#t;#n;#r;#i;#a;#o=null;#s=e=>{e.key===`Escape`&&this.open&&(e.stopPropagation(),this.#c(`escape`))};constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[ia],this.#r=j(`div`,{class:`title`,part:`title`,id:`slicc-dialog-title`}),this.#i=j(`div`,{class:`desc`,part:`description`}),this.#a=j(`button`,{class:`x`,part:`close`,type:`button`,"aria-label":`Close`},n(`x`,{size:18}));let e=j(`div`,{class:`body`},j(`slot`)),t=j(`div`,{class:`footer`},j(`slot`,{name:`footer`}));this.#n=j(`div`,{class:`dialog`,part:`dialog`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`slicc-dialog-title`,tabindex:`-1`},this.#a,this.#r,this.#i,e,t),this.#t=j(`div`,{class:`overlay`,part:`overlay`},this.#n),this.#e.replaceChildren(this.#t),this.#a.addEventListener(`click`,()=>this.#c(`close-button`)),this.#t.addEventListener(`mousedown`,e=>{e.target===this.#t&&!this.persistent&&this.#c(`backdrop`)})}connectedCallback(){this.#u()}disconnectedCallback(){document.removeEventListener(`keydown`,this.#s,!0)}attributeChangedCallback(e){e===`open`?this.#u():this.#l()}get open(){return this.hasAttribute(`open`)}set open(e){this.toggleAttribute(`open`,e)}get heading(){return this.getAttribute(`heading`)}set heading(e){e==null?this.removeAttribute(`heading`):this.setAttribute(`heading`,e)}get description(){return this.getAttribute(`description`)}set description(e){e==null?this.removeAttribute(`description`):this.setAttribute(`description`,e)}get persistent(){return this.hasAttribute(`persistent`)}set persistent(e){this.toggleAttribute(`persistent`,e)}show(){this.open||=!0}hide(){this.open&&this.#c(`api`)}#c(e){this.open=!1,this.dispatchEvent(new CustomEvent(`slicc-dialog-close`,{detail:{reason:e},bubbles:!0,composed:!0}))}#l(){this.#r.textContent=this.heading??``,this.#r.style.display=this.heading?``:`none`,this.#i.textContent=this.description??``,this.#i.style.display=this.description?``:`none`,this.#a.style.display=this.hasAttribute(`no-close-button`)?`none`:``}#u(){this.#l(),this.open?(this.#o=this.getRootNode().activeElement,document.addEventListener(`keydown`,this.#s,!0),requestAnimationFrame(()=>this.#n.focus())):(document.removeEventListener(`keydown`,this.#s,!0),this.#o?.focus?.(),this.#o=null)}});var aa=`
|
|
3443
3443
|
slicc-camera-dialog slicc-dialog::part(dialog) {
|
|
3444
3444
|
width: min(560px, 92vw);
|
|
3445
3445
|
}
|
|
@@ -3506,7 +3506,7 @@ slicc-camera-dialog .slicc-camera__btn--snap {
|
|
|
3506
3506
|
slicc-camera-dialog .slicc-camera__btn--snap:hover {
|
|
3507
3507
|
background: color-mix(in srgb, var(--ink) 85%, var(--canvas));
|
|
3508
3508
|
}
|
|
3509
|
-
`,
|
|
3509
|
+
`,oa=`slicc-camera-dialog-style`;function sa(e){if(e.getElementById(oa))return;let t=e.createElement(`style`);t.id=oa,t.textContent=aa,(e.head??e.documentElement).appendChild(t)}var ca=`Take a photo`;A(`slicc-camera-dialog`,class extends HTMLElement{static observedAttributes=[`heading`,`preferred-device`];media=null;#e;#t;#n;#r;#i=!1;#a=null;#o=null;connectedCallback(){sa(this.ownerDocument),this.#h()}disconnectedCallback(){this.#m()}attributeChangedCallback(e){e===`heading`&&this.#i&&this.#e.setAttribute(`heading`,this.heading)}get heading(){return this.getAttribute(`heading`)??ca}set heading(e){e==null?this.removeAttribute(`heading`):this.setAttribute(`heading`,e)}get preferredDevice(){return this.getAttribute(`preferred-device`)}set preferredDevice(e){e==null?this.removeAttribute(`preferred-device`):this.setAttribute(`preferred-device`,e)}#s(){return this.media??(typeof navigator<`u`?navigator.mediaDevices:null)??null}async open(){this.#h();let e=this.#s();if(!e)return null;try{this.#a=await this.#c(e,this.preferredDevice)}catch{return null}return this.#l(this.#a),await this.#u(e),this.#e.setAttribute(`heading`,this.heading),this.#e.show?.(),new Promise(e=>{this.#o=e})}async#c(e,t){if(t)try{return await e.getUserMedia({video:{deviceId:{exact:t}}})}catch{}return e.getUserMedia({video:!0})}#l(e){this.#t.srcObject=e,this.#t.play?.()?.catch(()=>void 0);let t=e.getVideoTracks()[0]?.getSettings?.().facingMode;this.#t.toggleAttribute(`data-mirrored`,t!==`environment`)}async#u(e){let t=[];try{t=(await e.enumerateDevices()).filter(e=>e.kind===`videoinput`)}catch{t=[]}this.#n.replaceChildren(...t.map((e,t)=>j(`option`,{value:e.deviceId},e.label||`Camera ${t+1}`)));let n=this.#a?.getVideoTracks()[0]?.getSettings?.().deviceId;n&&(this.#n.value=n),this.#n.toggleAttribute(`hidden`,t.length<2)}async#d(e){let t=this.#s();if(t){this.#r.textContent=``;try{let n=await t.getUserMedia({video:{deviceId:{exact:e}}});this.#m(),this.#a=n,this.#l(n),this.dispatchEvent(new CustomEvent(`slicc-camera-device-change`,{detail:{deviceId:e},bubbles:!0,composed:!0}))}catch{this.#r.textContent=`Could not switch camera — keeping the current one.`}}}#f(){let e=this.ownerDocument.createElement(`canvas`);if(e.width=this.#t.videoWidth,e.height=this.#t.videoHeight,e.width===0||e.height===0){this.#r.textContent=`No frame yet — give the camera a moment.`;return}e.getContext(`2d`)?.drawImage(this.#t,0,0);let t=e.toDataURL(`image/png`);this.dispatchEvent(new CustomEvent(`slicc-camera-capture`,{detail:{dataUrl:t},bubbles:!0,composed:!0})),this.#p(t)}#p(e){this.#m();let t=this.#o;this.#o=null,this.#e.hide?.(),t?.(e)}#m(){for(let e of this.#a?.getTracks()??[])e.stop();this.#a=null,this.#t&&(this.#t.srcObject=null)}#h(){if(this.#i)return;this.#i=!0,this.#t=j(`video`,{class:`slicc-camera__video`,part:`video`,autoplay:!0,muted:!0,playsinline:!0}),this.#n=j(`select`,{class:`slicc-camera__select`,part:`picker`,"aria-label":`Camera`,hidden:!0}),this.#n.addEventListener(`change`,()=>{this.#d(this.#n.value)}),this.#r=j(`div`,{class:`slicc-camera__status`});let e=j(`button`,{type:`button`,class:`slicc-camera__btn`,part:`cancel`,slot:`footer`},`Cancel`);e.addEventListener(`click`,()=>this.#p(null));let t=j(`button`,{type:`button`,class:`slicc-camera__btn slicc-camera__btn--snap`,part:`snap`,slot:`footer`},n(`camera`,{size:14}),` Snap`);t.addEventListener(`click`,()=>this.#f());let r=j(`div`,{class:`slicc-camera__body`},this.#t,this.#n,this.#r);this.#e=this.ownerDocument.createElement(`slicc-dialog`),this.#e.setAttribute(`heading`,this.heading),this.#e.append(r,e,t),this.#e.addEventListener(`slicc-dialog-close`,()=>{this.#o&&this.#p(null)}),this.append(this.#e)}});var la={debug(e,t){t===void 0?console.debug(`[slicc-permissions] ${e}`):console.debug(`[slicc-permissions] ${e}`,t)},error(e,t){t===void 0?console.error(`[slicc-permissions] ${e}`):console.error(`[slicc-permissions] ${e}`,t)}},ua=new Set([`microphone`,`camera`]);function da(e){return typeof navigator>`u`||!navigator.permissions?.query?Promise.resolve(`prompt`):navigator.permissions.query({name:e}).then(e=>e.state)}var fa=`
|
|
3510
3510
|
slicc-permissions {
|
|
3511
3511
|
/* Invisible host by default — only the drop overlay paints, and only
|
|
3512
3512
|
while a folder drag is in flight. Hosts can give the element a fixed
|
|
@@ -3677,7 +3677,7 @@ slicc-permissions .slicc-permissions__prompt-btn:disabled {
|
|
|
3677
3677
|
transform: translateX(-50%) translateY(0);
|
|
3678
3678
|
}
|
|
3679
3679
|
}
|
|
3680
|
-
|
|
3680
|
+
`,pa=`slicc-permissions-style`;function ma(e){if(e.getElementById(pa))return;let t=e.createElement(`style`);t.id=pa,t.textContent=fa,(e.head??e.documentElement).appendChild(t)}function ha(e){let t=e.dataTransfer?.types;if(!t)return!1;for(let e=0;e<t.length;e++)if(t[e]===`Files`)return!0;return!1}var ga=class extends HTMLElement{providers={};permissionQuery=null;#e;#t=!1;#n=0;#r=null;connectedCallback(){ma(this.ownerDocument),this.#C();let e=this.ownerDocument;e.addEventListener(`dragenter`,this.#v),e.addEventListener(`dragover`,this.#y),e.addEventListener(`dragleave`,this.#b),e.addEventListener(`drop`,this.#x)}disconnectedCallback(){let e=this.ownerDocument;e.removeEventListener(`dragenter`,this.#v),e.removeEventListener(`dragover`,this.#y),e.removeEventListener(`dragleave`,this.#b),e.removeEventListener(`drop`,this.#x),this.#n=0,this.removeAttribute(`data-dropping`),this.#r&&this.#r.cancel()}async request(e,t){switch(e){case`camera`:return this.#o(t);case`microphone`:return this.#s(t);case`screenshare`:return this.#l(t);case`usb`:return this.#u(t);case`hid`:return this.#d(t);case`serial`:return this.#f(t);case`filesystem`:return this.#p();case`popup`:return this.#m(t);default:return null}}async prompt(e){if(!e.kinds.length)return{status:`granted`,grants:[]};if(e.skipIfGranted){let t=await this.#i(e);if(t)return t}return this.#r&&this.#r.cancel(),new Promise(t=>{this.#w(e,t)})}async#i(e){if(!e.kinds.every(e=>ua.has(e)))return la.debug(`prompt: showing dialog (a gesture-bound kind was requested)`,{kinds:e.kinds}),null;let t=this.permissionQuery??da,n;try{n=await Promise.all(e.kinds.map(e=>t(e)))}catch(e){return la.error(`prompt: permission query threw; showing dialog`,e),null}if(la.debug(`prompt: queried permission state`,{kinds:e.kinds,states:n}),!n.every(e=>e===`granted`))return la.debug(`prompt: not all kinds granted; showing dialog`),null;let r=[];for(let t of e.kinds){let n=await this.request(t,e.requestOptions?.[t]);if(!n)return la.error(`prompt: acquisition failed after granted state`,{kind:t}),{status:`error`,grants:r,reason:`error`};r.push(n)}return la.debug(`prompt: short-circuited dialog (already granted)`,{kinds:e.kinds}),{status:`granted`,grants:r}}#a(){return this.providers.media??(typeof navigator<`u`?navigator.mediaDevices:null)??null}async#o(e){let t=this.#a();if(!t)return this.#g(`camera`,`unavailable`,`mediaDevices unavailable`);try{let n=await t.getUserMedia(e?.constraints??{video:!0});return this.#h({kind:`camera`,stream:n})}catch(e){return this.#_(`camera`,e)}}async#s(e){let t=this.#a();if(!t)return this.#g(`microphone`,`unavailable`,`mediaDevices unavailable`);try{let n=await t.getUserMedia(e?.constraints??{audio:!0});return this.#h({kind:`microphone`,stream:n})}catch(e){return this.#_(`microphone`,e)}}#c(){if(this.providers.screenshare)return this.providers.screenshare;let e=typeof navigator<`u`?navigator.mediaDevices:void 0;return e&&typeof e.getDisplayMedia==`function`?{getDisplayMedia:t=>e.getDisplayMedia(t)}:null}async#l(e){let t=this.#c();if(!t)return this.#g(`screenshare`,`unavailable`,`getDisplayMedia unavailable`);try{let n=await t.getDisplayMedia(e?.constraints??{video:!0});return this.#h({kind:`screenshare`,stream:n})}catch(e){return this.#_(`screenshare`,e)}}async#u(e){let t=this.providers.usb??globalThis.navigator?.usb??null;if(!t?.requestDevice)return this.#g(`usb`,`unavailable`,`WebUSB unavailable`);try{let n=await t.requestDevice({filters:e?.filters??[]});return n?this.#h({kind:`usb`,device:n}):this.#g(`usb`,`cancelled`)}catch(e){return this.#_(`usb`,e)}}async#d(e){let t=this.providers.hid??globalThis.navigator?.hid??null;if(!t?.requestDevice)return this.#g(`hid`,`unavailable`,`WebHID unavailable`);try{let n=await t.requestDevice({filters:e?.filters??[]}),r=Array.isArray(n)?n:n?[n]:[];return r.length===0?this.#g(`hid`,`cancelled`):this.#h({kind:`hid`,device:r[0],devices:r})}catch(e){return this.#_(`hid`,e)}}async#f(e){let t=this.providers.serial??globalThis.navigator?.serial??null;if(!t?.requestPort)return this.#g(`serial`,`unavailable`,`Web Serial unavailable`);try{let n=await t.requestPort(e?.filters?.length?{filters:e.filters}:{});return n?this.#h({kind:`serial`,port:n}):this.#g(`serial`,`cancelled`)}catch(e){return this.#_(`serial`,e)}}async#p(){let e=this.providers.filesystem??(typeof window<`u`&&`showDirectoryPicker`in window&&window||null);if(!e?.showDirectoryPicker)return this.#g(`filesystem`,`unavailable`,`showDirectoryPicker unavailable`);try{let t=await e.showDirectoryPicker({mode:`readwrite`});return this.#h({kind:`filesystem`,handle:t,source:`picker`,permission:`granted`})}catch(e){return this.#_(`filesystem`,e)}}#m(e){let t=e?.url;if(!t)return this.#g(`popup`,`error`,`popup request missing url`);let n=e?.features??`width=500,height=700,popup=yes`,r=this.providers.popup??(typeof window<`u`?{open:(e,t)=>window.open(e,`_blank`,t)}:null);if(!r)return this.#g(`popup`,`unavailable`,`window.open unavailable`);let i;try{i=r.open(t,n)}catch(e){return this.#_(`popup`,e)}return i?this.#h({kind:`popup`,window:i}):this.#g(`popup`,`error`,`window.open returned null (popup blocked?)`)}#h(e){return this.dispatchEvent(new CustomEvent(`slicc-permission-grant`,{detail:e,bubbles:!0,composed:!0})),e}#g(e,t,n){return this.dispatchEvent(new CustomEvent(`slicc-permission-deny`,{detail:{kind:e,reason:t,message:n},bubbles:!0,composed:!0})),null}#_(e,t){return t instanceof Error&&(t.name===`AbortError`||t.name===`NotFoundError`)?this.#g(e,`cancelled`):this.#g(e,`error`,t instanceof Error?t.message:String(t))}#v=e=>{ha(e)&&(e.preventDefault(),this.#n++,this.setAttribute(`data-dropping`,``))};#y=e=>{ha(e)&&e.preventDefault()};#b=e=>{ha(e)&&(this.#n=Math.max(0,this.#n-1),this.#n===0&&this.removeAttribute(`data-dropping`))};#x=e=>{if(!ha(e))return;e.preventDefault(),this.#n=0,this.removeAttribute(`data-dropping`);let t=e.dataTransfer?.items;if(!t?.length)return;let n=[];for(let e=0;e<t.length;e++){let r=t[e];r.kind===`file`&&typeof r.getAsFileSystemHandle==`function`&&n.push(r.getAsFileSystemHandle())}n.length!==0&&this.#S(n)};async#S(e){let t;try{t=await Promise.all(e)}catch(e){this.#g(`filesystem`,`error`,e instanceof Error?e.message:String(e));return}let n=t.find(e=>e?.kind===`directory`);if(!n){this.#g(`filesystem`,`cancelled`,`no directory in drop`);return}let r=n,i;if(r.requestPermission)try{i=await r.requestPermission({mode:`readwrite`})}catch(e){this.#g(`filesystem`,`error`,e instanceof Error?e.message:String(e));return}else i=`granted`;if(i!==`granted`){this.#g(`filesystem`,`cancelled`,`permission ${i}`);return}this.#h({kind:`filesystem`,handle:n,source:`drop`,permission:i})}#C(){if(this.#t)return;this.#t=!0;let e=j(`div`,{class:`slicc-permissions__drop-inner`},n(`folder-up`,{size:32}),j(`div`,null,`Drop a folder to mount it (read-write)`));this.#e=j(`div`,{class:`slicc-permissions__drop`,part:`drop`,"aria-hidden":`true`},e),this.append(this.#e)}#w(e,t){let r=e.heading??ya(e.kinds),i=e.grantLabel??`Allow`,a=e.cancelLabel??`Cancel`,o=`slicc-permissions__heading-${Math.random().toString(36).slice(2,8)}`,s=`slicc-permissions__desc-${Math.random().toString(36).slice(2,8)}`,c=j(`button`,{type:`button`,class:`slicc-permissions__prompt-btn`,"data-variant":`ghost`,part:`prompt-cancel`},a),l=j(`button`,{type:`button`,class:`slicc-permissions__prompt-btn`,"data-variant":`primary`,part:`prompt-grant`},i),u=j(`div`,{class:`slicc-permissions__prompt-icons`,"aria-hidden":`true`},...e.kinds.map(e=>j(`span`,{class:`slicc-permissions__prompt-icon`},n(_a(e),{size:22})))),d=j(`div`,{class:`slicc-permissions__prompt`,part:`prompt`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":o,"aria-describedby":s,tabindex:`-1`,popover:`manual`},u,j(`h2`,{class:`slicc-permissions__prompt-heading`,id:o},r),j(`p`,{class:`slicc-permissions__prompt-desc`,id:s},e.description),j(`div`,{class:`slicc-permissions__prompt-actions`},c,l));this.append(d);let f=d;if(typeof f.showPopover==`function`)try{f.showPopover()}catch{}let p=!1,m=this.ownerDocument.activeElement??null,h=()=>{if(d.removeEventListener(`keydown`,_),d.remove(),m&&typeof m.focus==`function`)try{m.focus()}catch{}this.#r=null},g=(n,r)=>{if(!p){p=!0;for(let t of e.kinds)this.#g(t,n,r);h(),t({status:`cancelled`,grants:[],reason:n,message:r})}},_=e=>{if(e.key===`Escape`){e.preventDefault(),g(`cancelled`);return}if(e.key===`Tab`){let t=[c,l],n=this.ownerDocument.activeElement,r=t.indexOf(n);if(r===-1){t[0].focus(),e.preventDefault();return}(e.shiftKey?t[(r-1+t.length)%t.length]:t[(r+1)%t.length]).focus(),e.preventDefault()}};c.addEventListener(`click`,()=>g(`cancelled`)),l.addEventListener(`click`,async()=>{if(p)return;p=!0,l.disabled=!0,c.disabled=!0;let n=[],r=null;for(let t of e.kinds){let i=await this.request(t,e.requestOptions?.[t]);if(i)n.push(i);else{r={kind:t,reason:`cancelled`};break}}let i=r?e.kinds.indexOf(r.kind):-1;if(r&&i>=0)for(let t=i+1;t<e.kinds.length;t++)this.#g(e.kinds[t],`cancelled`);h(),t(r?{status:`cancelled`,grants:n,reason:`cancelled`}:{status:`granted`,grants:n})}),d.addEventListener(`keydown`,_),this.#r={cancel:()=>g(`cancelled`)},requestAnimationFrame(()=>{d.setAttribute(`data-open`,``),l.focus()})}};function _a(e){switch(e){case`camera`:return`camera`;case`microphone`:return`mic`;case`screenshare`:return`monitor-up`;case`usb`:return`usb`;case`hid`:return`keyboard`;case`serial`:return`cable`;case`filesystem`:return`folder`;case`popup`:return`external-link`}}function va(e){switch(e){case`camera`:return`camera`;case`microphone`:return`microphone`;case`screenshare`:return`screen`;case`usb`:return`USB device`;case`hid`:return`HID device`;case`serial`:return`serial port`;case`filesystem`:return`folder`;case`popup`:return`sign-in window`}}function ya(e){if(e.length===1)return`Allow access to your ${va(e[0])}?`;let t=e.map(va),n=t.pop();return`Allow access to your ${t.join(`, `)} and ${n}?`}A(`slicc-permissions`,ga);var ba=new Set([`top`,`bottom`,`left`,`right`]),xa=M(`
|
|
3681
3681
|
:host { position: relative; display: inline-flex; }
|
|
3682
3682
|
:host([hidden]) { display: none; }
|
|
3683
3683
|
.tip {
|
|
@@ -3702,7 +3702,7 @@ slicc-permissions .slicc-permissions__prompt-btn:disabled {
|
|
|
3702
3702
|
:host(:hover) .tip[data-p="right"], :host(:focus-within) .tip[data-p="right"], :host([open]) .tip[data-p="right"] { transform: translate(0, -50%); }
|
|
3703
3703
|
.tip:empty { display: none; }
|
|
3704
3704
|
@media (prefers-reduced-motion: reduce) { .tip { transition: none; } }
|
|
3705
|
-
`);
|
|
3705
|
+
`);A(`slicc-tooltip`,class extends HTMLElement{static observedAttributes=[`label`,`placement`];#e;#t;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[xa],this.#t=j(`span`,{class:`tip`,part:`tip`,role:`tooltip`,"aria-hidden":`true`}),this.#e.replaceChildren(j(`slot`),this.#t)}connectedCallback(){this.#n()}attributeChangedCallback(){this.#n()}get label(){return this.getAttribute(`label`)??``}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}get placement(){let e=this.getAttribute(`placement`);return e&&ba.has(e)?e:`top`}set placement(e){this.setAttribute(`placement`,e)}#n(){this.#t.textContent=this.label,this.#t.setAttribute(`data-p`,this.placement)}});function Sa(e,t){let n=e.base;for(let r of e.variants??[])f(r.when,t)&&(r.zones!==void 0||r.center!==void 0)&&(n=r);return n}var Ca=.02,wa=48,Ta={top:`Top`,left:`Left`,center:`Center`,right:`Right`,bottom:`Bottom`},Ea=class{#e;#t;#n;#r=null;constructor(e){this.#e=e,this.#t=Da(`slicc-layout__ghost`),this.#n=Da(`slicc-layout__targets`)}overlays(){return[this.#n,this.#t]}cancel(){window.removeEventListener(`pointermove`,this.#l),window.removeEventListener(`pointerup`,this.#d),this.#r=null,this.#t.classList.remove(`slicc-layout__ghost--active`),this.#n.replaceChildren(),this.#n.classList.remove(`slicc-layout__targets--active`)}decorateSlot(e,t){if(this.#e.isLocked(t))return;let r=document.createElement(`button`);r.type=`button`,r.className=`slicc-layout__move`,r.title=`Move ${t}`,r.setAttribute(`aria-label`,`Move ${t}`),r.dataset.panelId=t,r.appendChild(n(`grip-vertical`,{size:13})),r.addEventListener(`pointerdown`,e=>this.#a(e,t)),e.appendChild(r)}buildZonePanelDivider(e,t,n,r){if(r)return null;let i=t===`row`,a=Da(`slicc-layout__divider slicc-layout__divider--${i?`h`:`v`}`);return a.dataset.zone=e,a.addEventListener(`pointerdown`,t=>{this.#f(t,e,i,n)}),a}buildZoneDivider(e,t,n,r,i){if(i)return null;let a=Da(`slicc-layout__divider slicc-layout__divider--zone slicc-layout__divider--${n?`h`:`v`}`);return a.dataset.zoneBefore=e,a.dataset.zoneAfter=t,a.addEventListener(`pointerdown`,i=>{this.#i(i,e,t,n,r)}),a}#i(e,t,n,r,i){e.preventDefault();let a=t===`center`?n:t,o=a===t?1:-1,s=i.querySelector(`:scope > [data-zone="${a}"]`);if(!(s instanceof HTMLElement))return;this.#e.setPointerCapture(e.pointerId);let c=s.getBoundingClientRect(),l=r?c.width:c.height,u=r?e.clientX:e.clientY,d=i.getBoundingClientRect(),f=r?d.width:d.height,p=0;for(let e of Array.from(i.children)){if(!(e instanceof HTMLElement)||e===s)continue;let t=e.getBoundingClientRect(),n=r?t.width:t.height,i=e.dataset.zone===`center`||e.classList.contains(`slicc-layout__work-row`);p+=i?wa:n}let m=Math.max(wa,f-p),h=l,g=e=>{let t=r?e.clientX:e.clientY;h=Math.max(wa,Math.min(m,l+(t-u)*o)),this.#e.applyZoneResize(a,`${Math.round(h)}px`),this.#e.rerender()},_=()=>{window.removeEventListener(`pointermove`,g),window.removeEventListener(`pointerup`,_),window.removeEventListener(`pointercancel`,_),this.#e.hasPointerCapture(e.pointerId)&&this.#e.releasePointerCapture(e.pointerId),this.#e.applyZoneResize(a,`${Math.round(h)}px`),this.#e.commitResize()};window.addEventListener(`pointermove`,g),window.addEventListener(`pointerup`,_),window.addEventListener(`pointercancel`,_)}#a(e,t){this.#e.isLocked(t)||(e.preventDefault(),this.#r={panelId:t,zone:null},this.#t.textContent=t,this.#t.classList.add(`slicc-layout__ghost--active`),this.#c(e),this.#o(),window.addEventListener(`pointermove`,this.#l),window.addEventListener(`pointerup`,this.#d))}#o(){let e=this.#e.querySelector(`.slicc-layout__work`);if(!(e instanceof HTMLElement))return;let t=e.getBoundingClientRect();for(let e of h)this.#n.appendChild(ja(e,t));this.#n.classList.add(`slicc-layout__targets--active`)}#s(e){for(let t of Array.from(this.#n.children))t.classList.toggle(`slicc-layout__target--hot`,t===e)}#c(e){this.#t.style.left=`${e.clientX}px`,this.#t.style.top=`${e.clientY}px`}#l=e=>{let t=this.#r;if(!t)return;this.#c(e),t.zone=null;let n=document.elementFromPoint(e.clientX,e.clientY),r=n?.closest(`.slicc-layout__target`);if(r instanceof HTMLElement){let e=r.dataset.zone;if(e){t.zone=e,this.#s(r);return}}let i=n?.closest(`.slicc-layout__zone`),a=i instanceof HTMLElement?i.dataset.zone:null;t.zone=a,this.#s(a?this.#u(a):null)};#u(e){return this.#n.querySelector(`.slicc-layout__target[data-zone="${e}"]`)}#d=()=>{let e=this.#r;this.cancel(),e?.zone&&this.#e.applyMove(e.panelId,e.zone)};#f(e,t,n,r){e.preventDefault();let i=e.currentTarget,a=Array.from(r.querySelectorAll(`:scope > .slicc-layout__slot`)),o=Array.from(r.children).slice(0,Array.from(r.children).indexOf(i)).filter(e=>e.classList.contains(`slicc-layout__slot`)).length;if(o<1||o>=a.length)return;this.#e.setPointerCapture(e.pointerId);let s=a.map(e=>{let t=e.getBoundingClientRect();return Math.max(1,n?t.width:t.height)}),c=s.reduce((e,t)=>e+t,0),l=s.map(e=>e/c*s.length),u=r.getBoundingClientRect(),d=n?u.width:u.height,f=n?e.clientX:e.clientY,p=l.reduce((e,t)=>e+t,0),m=l[o-1]+l[o],h=m*Ca,g=l[o-1],_=l,v=e=>{let r=n?e.clientX:e.clientY,i=d>0?(r-f)/d*p:0,a=Math.max(h,Math.min(m-h,g+i));_=[...l],_[o-1]=a,_[o]=m-a,this.#e.applyResize(t,_),this.#e.rerender()},y=()=>{window.removeEventListener(`pointermove`,v),window.removeEventListener(`pointerup`,y),window.removeEventListener(`pointercancel`,y),this.#e.hasPointerCapture(e.pointerId)&&this.#e.releasePointerCapture(e.pointerId),this.#e.applyResize(t,_),this.#e.commitResize()};window.addEventListener(`pointermove`,v),window.addEventListener(`pointerup`,y),window.addEventListener(`pointercancel`,y)}};function Da(e){let t=document.createElement(`div`);return t.className=e,t}var Oa={top:`arrow-up`,bottom:`arrow-down`,left:`arrow-left`,right:`arrow-right`,center:`square`},ka=56,Aa=16;function ja(e,t){let r=Da(`slicc-layout__target slicc-layout__target--${e}`);r.dataset.zone=e,r.title=`Move to ${Ta[e]}`,r.appendChild(n(Oa[e],{size:20}));let i=Da(`slicc-layout__target-label`);i.textContent=Ta[e],r.appendChild(i);let a=t.left+t.width/2-ka/2,o=t.top+t.height/2-ka/2,[s,c]={center:[a,o],top:[a,t.top+Aa],bottom:[a,t.bottom-ka-Aa],left:[t.left+Aa,o],right:[t.right-ka-Aa,o]}[e];return r.style.left=`${s}px`,r.style.top=`${c}px`,r}var Ma=`
|
|
3706
3706
|
/* The corner grip: hidden until the slot is hovered, mirroring the dock-tree's
|
|
3707
3707
|
(and slicc-file-tree's) hover-reveal action pattern — a persistent title bar on
|
|
3708
3708
|
every panel was the thing the redesign set out to remove. */
|
|
@@ -3808,7 +3808,7 @@ slicc-layout .slicc-layout__target--hot {
|
|
|
3808
3808
|
color: #fff;
|
|
3809
3809
|
transform: scale(1.12);
|
|
3810
3810
|
}
|
|
3811
|
-
`,
|
|
3811
|
+
`,Na=`
|
|
3812
3812
|
[data-slicc-panel] {
|
|
3813
3813
|
display: flex;
|
|
3814
3814
|
flex-direction: column;
|
|
@@ -3847,7 +3847,7 @@ slicc-layout .slicc-layout__target--hot {
|
|
|
3847
3847
|
[data-slicc-panel][presentation="floating"][anchor="center"] {
|
|
3848
3848
|
top: 50%; left: 50%; transform: translate(-50%, -50%);
|
|
3849
3849
|
}
|
|
3850
|
-
`,
|
|
3850
|
+
`,Pa=`slicc-panel-style`;function Fa(e){if(e.getElementById(Pa))return;let t=e.createElement(`style`);t.id=Pa,t.textContent=Na,(e.head??e.documentElement).appendChild(t)}var Ia=`data-slicc-panel`;A(`slicc-panel`,class extends HTMLElement{static observedAttributes=[`panel-id`,`hidden`,`locked`,`presentation`,`anchor`];static panelMeta;#e=null;connectedCallback(){Fa(this.ownerDocument),this.setAttribute(Ia,``),this.setAttribute(`part`,`panel`),this.hasAttribute(`presentation`)||this.setAttribute(`presentation`,this.presentation),!this.hasAttribute(`anchor`)&&this.anchor&&this.setAttribute(`anchor`,this.anchor),this.#t(),this.visible&&this.onPanelShow?.()}disconnectedCallback(){this.#e?.disconnect(),this.#e=null}attributeChangedCallback(e,t,n){if(!this.isConnected||t===n||e!==`hidden`)return;let r=this.visible;r?this.onPanelShow?.():this.onPanelHide?.(),this.dispatchEvent(new CustomEvent(`slicc-panel-visibility`,{bubbles:!0,composed:!0,detail:{panelId:this.panelId,visible:r}}))}get panelId(){return this.getAttribute(`panel-id`)??S(this.constructor)?.id??null}set panelId(e){e==null?this.removeAttribute(`panel-id`):this.setAttribute(`panel-id`,e)}get visible(){return!this.hasAttribute(`hidden`)}set visible(e){this.toggleAttribute(`hidden`,!e)}get locked(){return this.hasAttribute(`locked`)}set locked(e){this.toggleAttribute(`locked`,e)}get presentation(){let e=this.getAttribute(`presentation`);return e===`floating`||e===`docked`?e:S(this.constructor)?.presentation??`docked`}set presentation(e){this.setAttribute(`presentation`,e)}get anchor(){let e=this.getAttribute(`anchor`);return x(e)?e:S(this.constructor)?.anchor??null}set anchor(e){e==null?this.removeAttribute(`anchor`):this.setAttribute(`anchor`,e)}get meta(){return S(this.constructor)}#t(){!this.onPanelResize||typeof ResizeObserver>`u`||(this.#e=new ResizeObserver(e=>{let t=e[0]?.contentRect;t&&this.onPanelResize?.(t)}),this.#e.observe(this))}});var La=`
|
|
3851
3851
|
slicc-layout {
|
|
3852
3852
|
display: flex;
|
|
3853
3853
|
flex-direction: column;
|
|
@@ -3946,7 +3946,7 @@ slicc-layout .slicc-layout__zone {
|
|
|
3946
3946
|
sit side by side or stacked — see zoneAxis(). */
|
|
3947
3947
|
slicc-layout .slicc-layout__zone[data-axis='row'] { flex-direction: row; }
|
|
3948
3948
|
slicc-layout .slicc-layout__zone[data-axis='col'] { flex-direction: column; }
|
|
3949
|
-
${
|
|
3949
|
+
${Ma}`,Ra=`slicc-layout-style`;function za(e){if(e.getElementById(Ra))return;let t=e.createElement(`style`);t.id=Ra,t.textContent=La,(e.head??e.documentElement).appendChild(t)}function Ba(e,t){let n=document.createElement(e);return n.className=t,n}var Va=class extends HTMLElement{static observedAttributes=[`platform`];#e=m();#t=null;#n=!1;#r=Ba(`div`,`slicc-layout__root`);#i=Ba(`div`,`slicc-layout__parking`);#a=new Set;#o=null;#s=null;#c=0;#l=new MutationObserver(()=>this.#f());#u=new Ea(this);connectedCallback(){za(this.ownerDocument),this.#n=!0,this.#r.parentElement!==this&&this.append(this.#r),this.#i.parentElement!==this&&this.append(this.#i);for(let e of this.#u.overlays())e.parentElement!==this&&this.append(e);this.#v(),this.#f(),this.#l.observe(this,{childList:!0})}disconnectedCallback(){this.#n=!1,this.#l.disconnect(),this.#u.cancel(),this.#s?.disconnect(),this.#s=null,this.#c&&cancelAnimationFrame(this.#c),this.#c=0}attributeChangedCallback(e,t,n){e!==`platform`||t===n||!this.#n||this.#f(`environment`)}setLayout(e){this.#e=e?v(e):m(),this.#n&&this.#f(`set`)}getLayout(){return v(this.#e)}getResolved(){return this.#t?v(this.#t):null}getPlacedPanelIds(){return this.#t?g(this.#t).filter(e=>this.#a.has(e)):[]}isLocked(e){let t=this.#o??this.#t;return t?l(t,e):!1}environment(){let e=this.getBoundingClientRect(),t=this.getAttribute(`platform`);return{width:e.width,height:e.height,platform:t===`web`||t===`extension`||t===`electron`?t:void 0}}#d(){let e=new Map;for(let t of Array.from(this.querySelectorAll(`[${Ia}]`))){if(!(t instanceof HTMLElement)||t.parentElement?.closest(`[data-slicc-panel]`))continue;let n=t.getAttribute(`panel-id`);n&&e.set(n,t)}return e}#f(e=`set`,t){let n=y(this.#e,this.environment());this.#o=n;let r=this.#d(),i=new Set,a=e=>this.#p(n,e,r,i),o=Ba(`div`,`slicc-layout__row`),s=a(`left`),c=a(`right`);s&&o.appendChild(s);let l=this.#m(n,r,i);l.style.flex=`1 1 0`,o.appendChild(l),c&&o.appendChild(c);let u=[],d=a(`top`);d&&u.push(d),u.push(o);let f=a(`bottom`);f&&u.push(f);let p=this.#g(n,r,i);p&&u.push(p);for(let[e,t]of r)i.has(e)||t.parentElement!==this.#i&&this.#i.appendChild(t);this.#r.replaceChildren(...u),this.#l.takeRecords(),this.#t=n,this.#a=i,this.#o=null,!t?.silent&&this.dispatchEvent(new CustomEvent(`slicc-layout-change`,{bubbles:!0,composed:!0,detail:{layout:v(n),reason:e}}))}#p(e,t,n,r){let i=e.docks.filter(e=>e.edge===t);if(i.length===0)return null;let a=[];for(let o of i){let i=Ba(`div`,`slicc-layout__dock slicc-layout__dock--${t}`);i.dataset.edge=t;let s=!1;for(let t of o.panels){let a=n.get(t);!a||e.panels[t]?.visible===!1||(this.#_(a,e,t),i.appendChild(a),r.add(t),s=!0)}s&&(i.style.flex=o.size==null?`0 0 auto`:d(o.size),a.push(i))}if(a.length===0)return null;if(a.length===1)return a[0];let o=Ba(`div`,`slicc-layout__dockstack slicc-layout__dockstack--${t}`);return o.dataset.edge=t,o.append(...a),o.style.flex=`0 0 auto`,o}#m(e,t,n){let r=e.zones??(e.center?p(e.center):{}),i=Ba(`div`,`slicc-layout__work`),a=i=>{let a=e.locked||(r.locked??[]).includes(i),o=(r[i]??[]).map(r=>this.#h(r,i,e,t,n)).filter(e=>e!==null);if(o.length===0)return null;let s=Ba(`div`,`slicc-layout__zone slicc-layout__zone--${i}`);s.dataset.zone=i;let c=_(r,i);s.dataset.axis=c,o.forEach((e,t)=>{if(t>0){let e=this.#u.buildZonePanelDivider(i,c,s,a);e&&s.appendChild(e)}s.appendChild(e)});let l=r.sizes?.[i];return s.style.flex=i===`center`?`1 1 0`:d(l??void 0),s},o=(t,n,i)=>{let o=n.map(e=>({zone:e,element:a(e)})).filter(e=>!!e.element);o.forEach((n,a)=>{if(a>0){let s=o[a-1].zone,c=e.locked||(r.locked??[]).includes(s)||(r.locked??[]).includes(n.zone),l=this.#u.buildZoneDivider(s,n.zone,i,t,c);l&&t.appendChild(l)}t.appendChild(n.element)})},s=Ba(`div`,`slicc-layout__work-row`);o(s,[`left`,`center`,`right`],!0);let c=a(`top`),l=a(`bottom`),u=[];return c&&u.push({zone:`top`,element:c}),u.push({zone:`center`,element:s}),l&&u.push({zone:`bottom`,element:l}),u.forEach((t,n)=>{if(n>0){let a=u[n-1].zone,o=e.locked||(r.locked??[]).includes(a)||(r.locked??[]).includes(t.zone),s=this.#u.buildZoneDivider(a,t.zone,!1,i,o);s&&i.appendChild(s)}i.appendChild(t.element)}),i}#h(e,t,n,r,i){let a=r.get(e);if(!a||n.panels[e]?.visible===!1)return null;let o=Ba(`div`,`slicc-layout__slot`);return o.dataset.panelId=e,o.dataset.zone=t,o.style.flex=d(n.panels[e]?.size??void 0),this.#_(a,n,e),o.appendChild(a),this.#u.decorateSlot(o,e),i.add(e),o}applyMove(e,t){if(this.isLocked(e))return;let n=Sa(this.#e,this.environment()),r=n.zones??p(n.center??null),i=u(r,e,t);i===r&&n.zones||(n.zones=i,n.center=null,this.#f(`rearrange`))}applyResize(e,t){let n=Sa(this.#e,this.environment()).zones,r=n?.[e];if(!n||!r||r.length!==t.length)return;let i={...this.#e.panels??{}};r.forEach((e,n)=>{i[e]={...i[e],size:t[n]}}),this.#e.panels=i}applyZoneResize(e,t){let n=Sa(this.#e,this.environment());n.zones&&(n.zones.sizes={...n.zones.sizes,[e]:t})}rerender(){this.#f(`resize`,{silent:!0})}commitResize(){this.#f(`resize`)}#g(e,t,n){if(e.floating.length===0)return null;let r=Ba(`div`,`slicc-layout__floating`),i=!1;for(let a of e.floating){let o=t.get(a.panel);!o||e.panels[a.panel]?.visible===!1||(this.#_(o,e,a.panel),o.setAttribute(`presentation`,`floating`),a.anchor&&o.setAttribute(`anchor`,a.anchor),a.width!=null&&(o.style.width=Ha(a.width)),a.height!=null&&(o.style.height=Ha(a.height)),r.appendChild(o),n.add(a.panel),i=!0)}return i?r:null}#_(e,t,n){e.toggleAttribute(`locked`,l(t,n)),e.removeAttribute(`hidden`),e.setAttribute(`presentation`,`docked`),e.removeAttribute(`anchor`),e.style.removeProperty(`width`),e.style.removeProperty(`height`)}#v(){typeof ResizeObserver>`u`||(this.#s=new ResizeObserver(()=>{this.#e.variants?.length&&(this.#c||=requestAnimationFrame(()=>{this.#c=0;let e=y(this.#e,this.environment()),t=this.#t?.appliedVariants.join(`,`)??``;e.appliedVariants.join(`,`)!==t&&this.#f(`viewport`)}))}),this.#s.observe(this))}};function Ha(e){return typeof e==`number`?`${e}px`:e}A(`slicc-layout`,Va);var Ua={offline:`#94a3b8`,connecting:`#f59e0b`,live:`#22c55e`,stalled:`#eab308`,reconnecting:`#f97316`,error:`#ef4444`},Wa={offline:`color-mix(in srgb, #94a3b8 18%, transparent)`,connecting:`color-mix(in srgb, #f59e0b 28%, transparent)`,live:`color-mix(in srgb, #22c55e 22%, transparent)`,stalled:`color-mix(in srgb, #eab308 26%, transparent)`,reconnecting:`color-mix(in srgb, #f97316 28%, transparent)`,error:`color-mix(in srgb, #ef4444 24%, transparent)`},Ga={offline:`offline`,connecting:`connecting`,live:`live`,stalled:`leader busy`,reconnecting:`reconnecting`,error:`connection error`},Ka={npx:`terminal`,sliccstart:`monitor`,extension:`blocks`,standalone:`monitor`,cherry:`frame`,electron:`laptop`,hosted:`cloud`},qa={npx:`npx`,sliccstart:`sliccstart`,extension:`extension`,standalone:`standalone`,cherry:`cherry`,electron:`electron`,hosted:`hosted`},Ja={leader:`crown`,follower:`radio`},Ya={none:`local`,leader:`leading tray`,follower:`following tray`};function Xa(e){return Ka[e]}function Za(e){return qa[e]}function Qa(e){return Ua[e]}function $a(e){return Wa[e]}function eo(e){return Ga[e]}function to(e){return e===`none`?null:Ja[e]}function no(e){return Ya[e]}function ro(e){return e===`connecting`||e===`reconnecting`}function io(){return{connection:`offline`,floatKind:`standalone`,trayRole:`none`}}function ao(e){return[Za(e.floatKind),no(e.trayRole),eo(e.connection)].join(` · `)}var oo=M(`
|
|
3950
3950
|
:host {
|
|
3951
3951
|
display: inline-grid;
|
|
3952
3952
|
place-items: center;
|
|
@@ -3993,7 +3993,7 @@ ${yo}`,To=`slicc-layout-style`;function Eo(e){if(e.getElementById(To))return;let
|
|
|
3993
3993
|
object-fit: cover;
|
|
3994
3994
|
display: block;
|
|
3995
3995
|
}
|
|
3996
|
-
`),
|
|
3996
|
+
`),so=class extends HTMLElement{static observedAttributes=[`initials`,`name`,`src`,`email`,`size`,`label`];#e;#t=0;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[oo],this.addEventListener(`click`,this.#i),this.addEventListener(`keydown`,this.#a)}connectedCallback(){this.hasAttribute(`role`)||this.setAttribute(`role`,`button`),this.hasAttribute(`tabindex`)||this.setAttribute(`tabindex`,`0`),this.#o()}disconnectedCallback(){this.#t++}attributeChangedCallback(e,t,n){e===`size`&&this.#r(n),this.isConnected&&this.#o()}get initials(){return this.getAttribute(`initials`)}set initials(e){e==null?this.removeAttribute(`initials`):this.setAttribute(`initials`,e)}get name(){return this.getAttribute(`name`)}set name(e){e==null?this.removeAttribute(`name`):this.setAttribute(`name`,e)}get src(){return this.getAttribute(`src`)}set src(e){e==null?this.removeAttribute(`src`):this.setAttribute(`src`,e)}get email(){return this.getAttribute(`email`)}set email(e){e==null?this.removeAttribute(`email`):this.setAttribute(`email`,e)}get size(){return this.getAttribute(`size`)}set size(e){e==null?this.removeAttribute(`size`):this.setAttribute(`size`,e)}get label(){return this.getAttribute(`label`)}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}get resolvedInitials(){let e=this.initials;return e!=null&&e.trim()!==``?e.trim().slice(0,2).toUpperCase():lo(this.name)||`?`}async gravatarUrl(e=this.email){let t=e?.trim().toLowerCase();return t?`https://www.gravatar.com/avatar/${await co(t)}?s=${this.#n()}&d=404`:null}#n(){let e=this.getBoundingClientRect().width;return Math.max(1,Math.round((e>0?e:30)*2))}#r(e){e==null||e.trim()===``?this.style.removeProperty(`--avatar-size`):this.style.setProperty(`--avatar-size`,e)}#i=()=>{this.dispatchEvent(new CustomEvent(`slicc-avatar-click`,{bubbles:!0,composed:!0}))};#a=e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),this.click())};#o(){let e=++this.#t,t=this.src,n=this.email,r=this.resolvedInitials,i=this.label??this.name??(r===`?`?`Account`:r);this.setAttribute(`aria-label`,i);let a=[j(`span`,{class:`ini`,part:`initials`},r)];if(t){let n=j(`img`,{class:`img`,part:`image`,src:t,alt:i});n.addEventListener(`load`,()=>{e===this.#t&&this.#e.querySelector(`.me`)?.classList.add(`has-img`)}),n.addEventListener(`error`,()=>{e===this.#t&&(n.remove(),this.#e.querySelector(`.me`)?.classList.remove(`has-img`))}),a.push(n)}let o=j(`div`,{class:`me`,part:`avatar`},j(`slot`,null,...a));this.#e.replaceChildren(o),!t&&n&&this.#s(n,e)}#s(e,t){this.gravatarUrl(e).then(e=>{if(!e||t!==this.#t)return;let n=new Image;n.onload=()=>{if(t!==this.#t||!this.isConnected)return;let n=this.#e.querySelector(`.me`);n&&(n.style.backgroundImage=`url("${e}")`,n.classList.add(`has-img`))},n.src=e}).catch(()=>{})}};async function co(e){let t=new TextEncoder().encode(e),n=await crypto.subtle.digest(`SHA-256`,t);return Array.from(new Uint8Array(n)).map(e=>e.toString(16).padStart(2,`0`)).join(``)}function lo(e){if(!e)return``;let t=e.trim().split(/\s+/).filter(Boolean);return t.length===0?``:t.length===1?t[0].slice(0,2).toUpperCase():(t[0][0]+t[t.length-1][0]).toUpperCase()}A(`slicc-avatar`,so);var uo=M(`
|
|
3997
3997
|
:host{display:inline-flex;vertical-align:baseline;max-width:100%;}
|
|
3998
3998
|
:host([hidden]){display:none;}
|
|
3999
3999
|
button{
|
|
@@ -4021,7 +4021,7 @@ button:active{background:color-mix(in srgb,currentColor 26%,transparent);}
|
|
|
4021
4021
|
overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
|
|
4022
4022
|
font-variant-numeric:tabular-nums;
|
|
4023
4023
|
}
|
|
4024
|
-
`),
|
|
4024
|
+
`),fo=`file`;A(`slicc-blob-chip`,class extends HTMLElement{static observedAttributes=[`label`,`icon`];#e;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[uo]}connectedCallback(){this.#t()}attributeChangedCallback(){this.isConnected&&this.#t()}get label(){return this.getAttribute(`label`)??``}set label(e){this.setAttribute(`label`,e)}get icon(){return this.getAttribute(`icon`)??fo}set icon(e){this.setAttribute(`icon`,e)}#t(){let e=j(`button`,{class:`chip`,part:`chip`});e.type=`button`,e.append(n(this.icon,{size:13,class:`icon`,part:`icon`}),j(`span`,{class:`label`,part:`label`},this.label)),this.#e.replaceChildren(e)}});var po=5,mo=1;function ho(e){return e.replace(`claude-`,``)}function go(e){return e==null||e===0?``:e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(0)}K`:String(e)}function _o(e){if(e.length<=po)return{individuals:e,buckets:[]};let t=[...e].sort((e,t)=>t.cost-e.cost),n=t.slice(0,po),r=[],i={count:0,cost:0};for(let e of t.slice(po))i.count+=1,i.cost+=e.cost,i.cost>=mo&&(r.push(i),i={count:0,cost:0});if(i.count>0){let e=r.at(-1);e?(e.count+=i.count,e.cost+=i.cost):r.push(i)}return{individuals:n,buckets:r}}var vo=M(`
|
|
4025
4025
|
:host {
|
|
4026
4026
|
position: absolute;
|
|
4027
4027
|
top: calc(100% + 8px);
|
|
@@ -4145,7 +4145,7 @@ button:active{background:color-mix(in srgb,currentColor 26%,transparent);}
|
|
|
4145
4145
|
font-variant-numeric: tabular-nums;
|
|
4146
4146
|
color: var(--ink);
|
|
4147
4147
|
}
|
|
4148
|
-
`);
|
|
4148
|
+
`);A(`slicc-cost-overlay`,class extends HTMLElement{static observedAttributes=[`open`];#e;#t=[];#n=[];#r=null;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[vo]}connectedCallback(){this.#i()}attributeChangedCallback(){this.isConnected&&this.#i()}get open(){return this.hasAttribute(`open`)}set open(e){this.toggleAttribute(`open`,!!e)}get models(){return this.#t}set models(e){this.#t=e,this.isConnected&&this.#i()}get scoops(){return this.#n}set scoops(e){this.#n=e,this.isConnected&&this.#i()}get total(){return this.#r}set total(e){this.#r=e!=null&&Number.isFinite(e)?e:null,this.isConnected&&this.#i()}#i(){let e=[];if(this.#t.length>0){let t=this.#t.map(e=>{let t=go(e.tokens);return j(`div`,{class:`model-row`},j(`span`,{class:`model-name`},ho(e.model)),t?j(`span`,{class:`model-tokens`},t):!1,j(`span`,{class:`model-cost`},`$${e.cost.toFixed(2)}`))});e.push(j(`div`,{class:`section section--models`},j(`div`,{class:`section-title`},`BY MODEL`),...t))}if(this.#n.length>0){let t=_o(this.#n),n=t.individuals.map(e=>j(`div`,{class:`scoop-row`},j(`span`,{class:`scoop-name`},e.name),j(`span`,{class:`scoop-cost`},`$${e.cost.toFixed(2)}`))),r=t.buckets.map(e=>j(`div`,{class:`bucket-row`,part:`bucket`},`${e.count} ${e.count===1?`agent`:`agents`} · $${e.cost.toFixed(2)}`));e.push(j(`div`,{class:`section section--scoops`},j(`div`,{class:`section-title`},`BY AGENT`),...n,...r))}let t=this.#r??this.#t.reduce((e,t)=>e+t.cost,0);e.push(j(`div`,{class:`total-row`},j(`span`,{class:`total-label`},`Total`),j(`span`,{class:`total-cost`},`$${t.toFixed(2)}`)));let n=j(`div`,{class:`card`},...e);this.#e.replaceChildren(n)}});var yo=M(`
|
|
4149
4149
|
:host {
|
|
4150
4150
|
display: flex;
|
|
4151
4151
|
align-items: center;
|
|
@@ -4174,7 +4174,7 @@ button:active{background:color-mix(in srgb,currentColor 26%,transparent);}
|
|
|
4174
4174
|
min-width: 0;
|
|
4175
4175
|
background: var(--line, #e5e5e5);
|
|
4176
4176
|
}
|
|
4177
|
-
`);
|
|
4177
|
+
`);A(`slicc-day-separator`,class extends HTMLElement{static observedAttributes=[`label`];#e;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[yo]}connectedCallback(){this.#t()}attributeChangedCallback(){this.isConnected&&this.#t()}get label(){return this.getAttribute(`label`)}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}#t(){let e=this.label??j(`slot`);this.#e.replaceChildren(j(`span`,{class:`label`,part:`label`},e))}});var bo=M(`
|
|
4178
4178
|
:host {
|
|
4179
4179
|
position: absolute;
|
|
4180
4180
|
top: calc(100% + 8px);
|
|
@@ -4292,7 +4292,7 @@ button:active{background:color-mix(in srgb,currentColor 26%,transparent);}
|
|
|
4292
4292
|
color: var(--txt-2);
|
|
4293
4293
|
font-size: 11px;
|
|
4294
4294
|
}
|
|
4295
|
-
`);
|
|
4295
|
+
`);A(`slicc-follower-hud`,class extends HTMLElement{static observedAttributes=[`open`];#e;#t=[];#n=null;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[bo]}connectedCallback(){this.#r()}attributeChangedCallback(){this.isConnected&&this.#r()}get open(){return this.hasAttribute(`open`)}set open(e){this.toggleAttribute(`open`,!!e)}get rows(){return this.#t}set rows(e){this.#t=e,this.isConnected&&this.#r()}get hint(){return this.#n}set hint(e){this.#n=e&&e.trim()!==``?e:null,this.isConnected&&this.#r()}#r(){let e=this.#t.length,t=[];if(e===0)t.push(j(`div`,{class:`empty`},`No followers connected.`));else{let r=this.#t.map(e=>j(`div`,{class:`row`,part:`row`},n(e.icon,{size:14}),j(`div`,{class:`row-main`},j(`span`,{class:`row-title`},e.title),e.detail?j(`span`,{class:`row-detail`},e.detail):!1,e.chips&&e.chips.length>0?j(`div`,{class:`chips`},...e.chips.map(e=>j(`span`,{class:`chip`},e))):!1),j(`div`,{class:`row-state`},j(`span`,{class:`sdot`,"data-state":e.state}),e.stateText)));t.push(j(`div`,{class:`section`},j(`div`,{class:`section-title`},`${e} ${e===1?`follower`:`followers`}`),...r))}this.#n&&t.push(j(`div`,{class:`hint`},this.#n)),this.#e.replaceChildren(j(`div`,{class:`card`,part:`card`},...t))}});var xo=`CLI float`;function So(e){if(e==null)return null;let t=e.trim();if(t===``)return null;let n=Number.parseFloat(t.replace(/^\$/,``));return Number.isFinite(n)?n:null}function Co(e){let t=So(e);return t==null?null:`$${t.toFixed(2)}`}function wo(e){return`${Co(e)??`$0.00`}/h`}var To=720,Eo=M(`
|
|
4296
4296
|
:host {
|
|
4297
4297
|
position: relative;
|
|
4298
4298
|
display: inline-flex;
|
|
@@ -4492,7 +4492,7 @@ button:active{background:color-mix(in srgb,currentColor 26%,transparent);}
|
|
|
4492
4492
|
.tip { transition: none; }
|
|
4493
4493
|
.beacon[data-pulse] .beacon__ring { animation: none; }
|
|
4494
4494
|
}
|
|
4495
|
-
`);
|
|
4495
|
+
`);A(`slicc-floatbar`,class extends HTMLElement{static observedAttributes=[`label`,`linked`,`connection`,`float-kind`,`tray-role`,`rate`,`spent`];#e;#t=null;#n=null;#r=[];#i=[];#a;#o=[];#s=null;#c;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[Eo]}connectedCallback(){this.#f();let e=this.closest(`slicc-nav`);e&&typeof ResizeObserver<`u`&&(this.#t=new ResizeObserver(()=>this.#d()),this.#t.observe(e))}disconnectedCallback(){this.#t?.disconnect(),this.#t=null,clearTimeout(this.#a),clearTimeout(this.#c)}attributeChangedCallback(e,t,n){t!==n&&this.isConnected&&this.#f()}get label(){return this.getAttribute(`label`)??xo}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}get linked(){return this.hasAttribute(`linked`)}set linked(e){this.toggleAttribute(`linked`,!!e)}get connection(){let e=this.getAttribute(`connection`);return e===`connecting`||e===`live`||e===`stalled`||e===`reconnecting`||e===`error`?e:`offline`}set connection(e){e==null?this.removeAttribute(`connection`):this.setAttribute(`connection`,e)}get floatKind(){let e=this.getAttribute(`float-kind`);return e===`npx`||e===`sliccstart`||e===`extension`||e===`standalone`||e===`cherry`||e===`electron`||e===`hosted`?e:io().floatKind}set floatKind(e){e==null?this.removeAttribute(`float-kind`):this.setAttribute(`float-kind`,e)}get trayRole(){let e=this.getAttribute(`tray-role`);return e===`leader`||e===`follower`?e:`none`}set trayRole(e){e==null||e===`none`?this.removeAttribute(`tray-role`):this.setAttribute(`tray-role`,e)}get status(){return{connection:this.connection,floatKind:this.floatKind,trayRole:this.trayRole}}set status(e){this.connection=e.connection,this.floatKind=e.floatKind,this.trayRole=e.trayRole}get spent(){return this.getAttribute(`spent`)}set spent(e){e==null?this.removeAttribute(`spent`):this.setAttribute(`spent`,String(e))}get rate(){return this.getAttribute(`rate`)}set rate(e){e==null?this.removeAttribute(`rate`):this.setAttribute(`rate`,String(e))}get costModels(){return this.#r}set costModels(e){this.#r=e,this.#n&&(this.#n.models=e)}get followers(){return this.#o}set followers(e){this.#o=e,e.length>0?this.setAttribute(`follower-count`,String(e.length)):this.removeAttribute(`follower-count`),this.isConnected?this.#f():this.#s&&(this.#s.rows=e)}get costScoops(){return this.#i}set costScoops(e){this.#i=e,this.#n&&(this.#n.scoops=e)}#l(){let e=[this.label,ao(this.status)],t=this.#o.length;return t>0&&e.push(`${t} ${t===1?`follower`:`followers`}`),e.push(wo(this.rate)),e.push(`recency-weighted session avg`),e.join(` · `)}#u(e){let{connection:t,floatKind:r,trayRole:i}=e,a=j(`span`,{class:`beacon__ring`,part:`beacon-ring`,style:`--beacon-fill:${Qa(t)};--beacon-glow:${$a(t)}`}),o=j(`span`,{class:`beacon__icon`,part:`beacon-icon`},n(Xa(r),{size:9,strokeWidth:2.25})),s={class:`beacon`,part:`beacon dot`,"data-connection":t,"data-float-kind":r,"aria-label":ao({connection:t,floatKind:r,trayRole:i})};i!==`none`&&(s[`data-tray-role`]=i),ro(t)&&(s[`data-pulse`]=``);let c=[a,o],l=to(i);return l&&c.push(j(`span`,{class:`beacon__role`,part:`beacon-role`,"aria-hidden":`true`},n(l,{size:5,strokeWidth:2.5}))),j(`span`,s,...c)}#d(){let e=this.closest(`slicc-nav`),t=e?getComputedStyle(e):null;(e?e.clientWidth-Number.parseFloat(t?.paddingLeft??`0`)-Number.parseFloat(t?.paddingRight??`0`):1/0)<=To?this.setAttribute(`title`,this.#l()):this.removeAttribute(`title`)}#f(){let e=[];e.push(this.#u(this.status));let[t,...r]=this.label.split(` · `),i=[j(`span`,{class:`runtime`},t)];r.length>0&&i.push(j(`span`,{class:`detail`},` · ${r.join(` · `)}`)),e.push(j(`span`,{class:`label`,part:`label`},j(`slot`,null,...i))),this.#o.length>0&&(e.push(j(`span`,{class:`sep sep--followers`,part:`sep`})),e.push(this.#p(this.#o.length))),e.push(j(`span`,{class:`sep sep--spent`,part:`sep`}));let a=j(`span`,{class:`spent`,part:`spent rate`},n(`circle-dollar-sign`,{size:12}),j(`span`,{class:`amount`},wo(this.rate)));a.addEventListener(`mouseenter`,()=>this.#_()),a.addEventListener(`mouseleave`,()=>this.#v()),e.push(a),e.push(j(`span`,{class:`tip`,part:`tip`,"aria-hidden":`true`},this.#l()));let o=this.#s?.hasAttribute(`open`)&&this.#o.length>0?this.#s:null;this.#n=null,this.#s=o,this.#e.replaceChildren(...e),o&&(o.rows=this.#o,this.#e.appendChild(o)),this.#d()}#p(e){let t=j(`button`,{class:`followers`,part:`followers`,type:`button`,"aria-haspopup":`dialog`,"aria-label":`${`${e} ${e===1?`follower`:`followers`}`} connected — open session sharing`},n(`users`,{size:12}),j(`span`,{class:`follower-count`},String(e)));return t.addEventListener(`mouseenter`,()=>this.#m()),t.addEventListener(`mouseleave`,()=>this.#h()),t.addEventListener(`focus`,()=>this.#m()),t.addEventListener(`blur`,()=>this.#h()),t.addEventListener(`keydown`,e=>{e.key===`Escape`&&this.#g()}),t.addEventListener(`click`,()=>{this.#g(),this.dispatchEvent(new CustomEvent(`slicc-followers-click`,{bubbles:!0,composed:!0}))}),t}#m(){if(clearTimeout(this.#c),!this.#s){let e=document.createElement(`slicc-follower-hud`);e.rows=this.#o,e.hint=`Click for sharing options.`,e.addEventListener(`mouseenter`,()=>this.#m()),e.addEventListener(`mouseleave`,()=>this.#h()),this.#e.appendChild(e),this.#s=e}this.#s.toggleAttribute(`open`,!0)}#h(){this.#c=setTimeout(()=>this.#g(),150)}#g(){clearTimeout(this.#c),this.#s?.removeAttribute(`open`)}#_(){if(clearTimeout(this.#a),!this.#n){let e=document.createElement(`slicc-cost-overlay`);e.models=this.#r,e.scoops=this.#i,e.total=So(this.spent),e.addEventListener(`mouseenter`,()=>this.#_()),e.addEventListener(`mouseleave`,()=>this.#v()),this.#e.appendChild(e),this.#n=e}this.#n.toggleAttribute(`open`,!0)}#v(){this.#a=setTimeout(()=>{this.#n&&this.#n.removeAttribute(`open`)},150)}});var Do=M(`
|
|
4496
4496
|
:host { display: inline-grid; }
|
|
4497
4497
|
:host([hidden]) { display: none; }
|
|
4498
4498
|
.iconbtn {
|
|
@@ -4521,7 +4521,7 @@ button:active{background:color-mix(in srgb,currentColor 26%,transparent);}
|
|
|
4521
4521
|
.iconbtn:disabled:hover { background: var(--canvas); color: var(--txt-2); }
|
|
4522
4522
|
.icon { display: grid; place-items: center; pointer-events: none; }
|
|
4523
4523
|
.icon svg { display: block; }
|
|
4524
|
-
`),
|
|
4524
|
+
`),Oo=`plus`,ko=16;A(`slicc-icon-button`,class extends HTMLElement{static observedAttributes=[`icon`,`disabled`,`label`];#e;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[Do]}connectedCallback(){this.#t()}attributeChangedCallback(){this.isConnected&&this.#t()}get icon(){return this.getAttribute(`icon`)??Oo}set icon(e){e==null?this.removeAttribute(`icon`):this.setAttribute(`icon`,e)}get disabled(){return this.hasAttribute(`disabled`)}set disabled(e){e?this.setAttribute(`disabled`,``):this.removeAttribute(`disabled`)}get label(){return this.getAttribute(`label`)}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}#t(){let e=this.label,t=j(`slot`,null,j(`span`,{class:`icon`},n(this.icon,{size:ko,part:`icon`}))),r=j(`button`,{type:`button`,class:`iconbtn`,part:`button`,"aria-label":e??void 0,title:e??void 0,disabled:this.disabled},t);this.#e.replaceChildren(r)}});var Ao=`
|
|
4525
4525
|
slicc-pane {
|
|
4526
4526
|
display: flex;
|
|
4527
4527
|
flex-direction: column;
|
|
@@ -4560,7 +4560,7 @@ slicc-pane .slicc-pane__body {
|
|
|
4560
4560
|
min-height: 0;
|
|
4561
4561
|
overflow: auto;
|
|
4562
4562
|
}
|
|
4563
|
-
`,
|
|
4563
|
+
`,jo=`slicc-pane-style`;function Mo(e){if(e.getElementById(jo))return;let t=e.createElement(`style`);t.id=jo,t.textContent=Ao,(e.head??e.documentElement).appendChild(t)}A(`slicc-pane`,class extends HTMLElement{static observedAttributes=[`elevated`];#e;#t;#n=!1;connectedCallback(){Mo(this.ownerDocument),this.#r()}attributeChangedCallback(e,t,n){e===`elevated`&&t!==n&&this.isConnected&&this.dispatchEvent(new CustomEvent(`slicc-pane-change`,{bubbles:!0,composed:!0,detail:{elevated:n!==null}}))}get elevated(){return this.hasAttribute(`elevated`)}set elevated(e){e?this.setAttribute(`elevated`,``):this.removeAttribute(`elevated`)}#r(){if(this.#n)return;this.#n=!0;let e=Array.from(this.childNodes).filter(e=>!(e instanceof HTMLElement&&e.classList.contains(`slicc-pane__surface`))),t=this.ownerDocument.createElement(`div`);t.className=`slicc-pane__surface`,t.setAttribute(`part`,`surface`),this.#e=this.ownerDocument.createElement(`div`),this.#e.className=`slicc-pane__header`,this.#e.setAttribute(`part`,`header`),this.#t=this.ownerDocument.createElement(`div`),this.#t.className=`slicc-pane__body`,this.#t.setAttribute(`part`,`body`),t.append(this.#e,this.#t);for(let t of e)t instanceof HTMLElement&&t.getAttribute(`slot`)===`header`?this.#e.appendChild(t):this.#t.appendChild(t);this.appendChild(t)}});var No=`
|
|
4564
4564
|
slicc-press-button {
|
|
4565
4565
|
display: inline-flex;
|
|
4566
4566
|
}
|
|
@@ -4652,7 +4652,7 @@ slicc-press-button {
|
|
|
4652
4652
|
animation: none;
|
|
4653
4653
|
}
|
|
4654
4654
|
}
|
|
4655
|
-
`,
|
|
4655
|
+
`,Po=`slicc-press-button-style`;function Fo(e){if(e.getElementById(Po))return;let t=e.createElement(`style`);t.id=Po,t.textContent=No,(e.head??e.documentElement).appendChild(t)}var Io=`slicc-press-btn`,Lo=`is-squish`,Ro=`is-wobble`;A(`slicc-press-button`,class extends HTMLElement{static get observedAttributes(){return[`label`,`tooltip`,`tooltip-pos`,`disabled`]}innerBtn=null;pressLayer=null;handle=null;initialized=!1;pendingShortTimer=null;pendingShortEvent=null;animEndListener=null;connectedCallback(){Fo(this.ownerDocument),this.initialized?this.handle===null&&this.attachGesture():this.initialize(),this.syncAttributes()}disconnectedCallback(){this.handle?.destroy(),this.handle=null,this.clearPendingShort(),this.clearRipple(),this.clearAnimation()}attributeChangedCallback(){this.initialized&&this.syncAttributes()}get disabled(){return this.hasAttribute(`disabled`)}set disabled(e){this.toggleAttribute(`disabled`,e)}get label(){return this.getAttribute(`label`)}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}get tooltip(){return this.getAttribute(`tooltip`)}set tooltip(e){e==null?this.removeAttribute(`tooltip`):this.setAttribute(`tooltip`,e)}setIcon(e){this.initialized||this.initialize();let t=this.innerBtn,n=this.pressLayer;for(let e of Array.from(t.childNodes))e!==n&&e.remove();let r=new DOMParser().parseFromString(e,`text/html`).body;for(;r.firstChild;)t.appendChild(r.firstChild)}focus(e){this.initialized||this.initialize(),this.innerBtn?.focus(e)}initialize(){this.initialized=!0;let e=j(`span`,{class:`${Io}__press-layer`,part:`press-layer`}),t=j(`button`,{type:`button`,class:`${Io}__btn`,part:`button`},e);for(;this.firstChild;)t.appendChild(this.firstChild);this.appendChild(t),this.innerBtn=t,this.pressLayer=e,this.attachGesture()}syncAttributes(){let e=this.innerBtn;if(!e)return;let t=this.getAttribute(`label`);t==null?e.removeAttribute(`aria-label`):e.setAttribute(`aria-label`,t);let n=this.getAttribute(`tooltip`);n==null?delete e.dataset.tooltip:e.dataset.tooltip=n;let r=this.getAttribute(`tooltip-pos`);r==null?delete e.dataset.tooltipPos:e.dataset.tooltipPos=r,this.hasAttribute(`disabled`)?e.setAttribute(`disabled`,``):e.removeAttribute(`disabled`)}longPressMs(){let e=this.getAttribute(`long-press-ms`);if(e==null)return lr;let t=Number(e);return Number.isFinite(t)&&t>0?t:lr}doubleClickMs(){let e=this.getAttribute(`double-click-ms`);if(e==null)return 350;let t=Number(e);return Number.isFinite(t)&&t>0?t:350}doubleClickDisabled(){return this.hasAttribute(`disable-double-click`)}emit(e,t){e===`short-click`?this.playAnimation(Lo):e===`double-click`&&this.playAnimation(Ro);let n=t?{sourceEvent:t}:{};this.dispatchEvent(new CustomEvent(e,{bubbles:!0,cancelable:!0,detail:n}))}playAnimation(e){let t=this.innerBtn;if(!t)return;this.clearAnimation(),t.offsetWidth,t.classList.add(e);let n=e=>{e.target===t&&this.clearAnimation()};this.animEndListener=n,t.addEventListener(`animationend`,n)}clearAnimation(){let e=this.innerBtn;e&&(this.animEndListener&&=(e.removeEventListener(`animationend`,this.animEndListener),null),e.classList.remove(Lo,Ro))}clearPendingShort(){this.pendingShortTimer!==null&&(clearTimeout(this.pendingShortTimer),this.pendingShortTimer=null),this.pendingShortEvent=null}attachGesture(){this.handle=ur(this,{longPressMs:this.longPressMs(),onPressStart:e=>this.paintRipple(e),onPressEnd:()=>this.clearRipple(),onLongPress:()=>{if(this.pendingShortTimer!==null){this.clearPendingShort(),this.emit(`double-click`);return}this.emit(`long-press`)},onShortClick:e=>{if(this.doubleClickDisabled()){this.emit(`short-click`,e);return}if(this.pendingShortTimer!==null){this.clearPendingShort(),this.emit(`double-click`,e);return}this.pendingShortEvent=e,this.pendingShortTimer=setTimeout(()=>{this.pendingShortTimer=null;let e=this.pendingShortEvent;this.pendingShortEvent=null,this.emit(`short-click`,e??void 0)},this.doubleClickMs())}})}paintRipple(e){this.clearRipple();let t=this.pressLayer;if(!t)return;let n=t.getBoundingClientRect(),r=e.clientX-n.left,i=e.clientY-n.top,a=Math.max(r,n.width-r),o=Math.max(i,n.height-i),s=Math.ceil(Math.hypot(a,o))+2,c=this.ownerDocument.createElement(`span`);c.className=`${Io}__press`,c.style.left=`${r}px`,c.style.top=`${i}px`,c.style.width=`0px`,c.style.height=`0px`,c.style.transitionDuration=`${this.longPressMs()}ms`,t.appendChild(c),requestAnimationFrame(()=>{c.isConnected&&(c.style.width=`${s*2}px`,c.style.height=`${s*2}px`)})}clearRipple(){let e=this.pressLayer;if(e)for(;e.firstChild;)e.firstChild.remove()}});var zo=M(`
|
|
4656
4656
|
:host { display: inline-flex; }
|
|
4657
4657
|
:host([hidden]) { display: none; }
|
|
4658
4658
|
|
|
@@ -4682,7 +4682,7 @@ slicc-press-button {
|
|
|
4682
4682
|
outline: 2px solid var(--violet);
|
|
4683
4683
|
outline-offset: 2px;
|
|
4684
4684
|
}
|
|
4685
|
-
`);
|
|
4685
|
+
`);A(`slicc-swatch`,class extends HTMLElement{static observedAttributes=[`color`,`hue`,`selected`,`label`];#e;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[zo]}connectedCallback(){this.#t()}attributeChangedCallback(){this.isConnected&&this.#t()}get color(){return this.getAttribute(`color`)}set color(e){e==null?this.removeAttribute(`color`):this.setAttribute(`color`,e)}get hue(){return this.hasAttribute(`hue`)}set hue(e){this.toggleAttribute(`hue`,!!e)}get selected(){return this.hasAttribute(`selected`)}set selected(e){this.toggleAttribute(`selected`,!!e)}get label(){return this.getAttribute(`label`)}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}#t(){let e=this.color,t=[`sw`];this.hue&&t.push(`hue`),this.selected&&t.push(`on`);let n=j(`button`,{type:`button`,part:`button`,class:t.join(` `),"aria-pressed":this.selected?`true`:`false`,"aria-label":this.label??e??`color swatch`},j(`slot`));e&&n.style.setProperty(`--swatch-color`,e),n.addEventListener(`click`,this.#n),this.#e.replaceChildren(n)}#n=()=>{this.selected=!0,this.dispatchEvent(new CustomEvent(`select`,{detail:{color:this.color},bubbles:!0,composed:!0}))}});var Bo=new Set([`rose`,`cyan`,`violet`,`amber`,`waffle`,`green`]),Vo=M(`
|
|
4686
4686
|
:host {
|
|
4687
4687
|
display: inline-flex;
|
|
4688
4688
|
vertical-align: middle;
|
|
@@ -4742,7 +4742,7 @@ slicc-press-button {
|
|
|
4742
4742
|
:host-context(.dark)[hue="amber"] .tag, :host-context([data-theme="dark"])[hue="amber"] .tag { background: color-mix(in srgb, var(--amber) 22%, var(--canvas)); border-color: color-mix(in srgb, var(--amber) 38%, var(--line)); }
|
|
4743
4743
|
:host-context(.dark)[hue="waffle"] .tag, :host-context([data-theme="dark"])[hue="waffle"] .tag { background: color-mix(in srgb, var(--waffle) 22%, var(--canvas)); border-color: color-mix(in srgb, var(--waffle) 38%, var(--line)); }
|
|
4744
4744
|
:host-context(.dark)[hue="green"] .tag, :host-context([data-theme="dark"])[hue="green"] .tag { background: color-mix(in srgb, var(--green) 22%, var(--canvas)); border-color: color-mix(in srgb, var(--green) 38%, var(--line)); }
|
|
4745
|
-
`);
|
|
4745
|
+
`);A(`slicc-tag`,class extends HTMLElement{static observedAttributes=[`hue`,`label`,`dot`];#e;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[Vo]}connectedCallback(){this.#t()}attributeChangedCallback(){this.isConnected&&this.#t()}get hue(){let e=this.getAttribute(`hue`);return e&&Bo.has(e)?e:null}set hue(e){e==null?this.removeAttribute(`hue`):this.setAttribute(`hue`,e)}get label(){return this.getAttribute(`label`)}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}get dot(){return this.hasAttribute(`dot`)}set dot(e){e?this.setAttribute(`dot`,``):this.removeAttribute(`dot`)}#t(){let e=this.label??j(`slot`),t=j(`span`,{class:`tag`,part:`tag`},this.dot?j(`span`,{class:`dot`,part:`dot`}):null,j(`span`,{class:`label`,part:`label`},e));this.#e.replaceChildren(t)}});var Ho=`binary`;function Uo(e){let t=e.split(`;`,1)[0]?.trim()??e;return t===`application/octet-stream`||t.length===0?Ho:t.slice(t.indexOf(`/`)+1).replace(/^x-/,``).replace(/\+.*$/,``)}var Wo=M(`
|
|
4746
4746
|
:host {
|
|
4747
4747
|
position: fixed;
|
|
4748
4748
|
inset: 0;
|
|
@@ -4930,7 +4930,7 @@ iframe {
|
|
|
4930
4930
|
font-size: 13px;
|
|
4931
4931
|
}
|
|
4932
4932
|
.fallback code { font-family: var(--mono, monospace); font-size: 12px; }
|
|
4933
|
-
`),
|
|
4933
|
+
`),Go={rendered:`Preview`,file:`Source`,diff:`Diff`};function Ko(e){let t=[];return e.rendered&&t.push(`rendered`),Xo(e)&&t.push(`file`),e.baseContent!==void 0&&t.push(`diff`),t}function qo(e){return e.rendered?`rendered`:e.baseContent===void 0?`file`:`diff`}var Jo=null,Yo=null;function Xo(e){if(e.text===!0)return!0;let t=e.mimeType.split(`;`,1)[0]?.trim()??e.mimeType;return t.startsWith(`text/`)?!0:t===`application/json`||t===`application/xml`||t===`application/javascript`||t===`image/svg+xml`||t.endsWith(`+json`)||t.endsWith(`+xml`)}function Zo(e){return typeof e==`string`?e:new TextDecoder().decode(e)}function Qo(e,t){let n=typeof e==`string`?new TextEncoder().encode(e):e;return new Blob([n],{type:t})}var $o=!1;function es(e){if(!$o){$o=!0;for(let t of[`jsh`,`bsh`])try{e.setCustomExtension(t,`zsh`)}catch{}}}function ts(e,t){let n=`<style>:root{color-scheme:${t};}html{background:Canvas;color:CanvasText;}</style>`,r=/^\s*<!doctype[^>]*>/i.exec(e);return r?e.slice(0,r[0].length)+n+e.slice(r[0].length):n+e}function ns(){let e=document.documentElement,t=e.dataset.theme??e.getAttribute(`data-theme`)??``;return t.includes(`dark`)?`dark`:t.includes(`light`)?`light`:globalThis.matchMedia?.(`(prefers-color-scheme: dark)`).matches?`dark`:`light`}var rs=class e extends HTMLElement{#e;#t=[];#n=0;#r=null;#i=null;#a=`file`;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[Wo]}disconnectedCallback(){for(let e of this.#t)URL.revokeObjectURL(e);this.#t.length=0,Jo===this&&(Jo=null)}static open(t){e.close();let r=document.createElement(`slicc-quick-look`);r.#r=t,r.#n+=1,r.#a=qo(t);let i=t.path.split(`/`).pop()||t.path,a=t.path.slice(0,t.path.length-i.length),o=j(`div`,{class:`backdrop`}),s=j(`button`,{class:`x`});s.setAttribute(`aria-label`,`Close preview`),s.appendChild(n(`x`,{size:14}));let c=j(`div`,{class:`header`},j(`div`,{class:`name`},j(`span`,{class:`dir`},a),i));c.appendChild(j(`span`,{class:`chip`},Uo(t.mimeType))),t.gitStatus&&c.appendChild(j(`span`,{class:`chip chip--git`},t.gitStatus));let l=Ko(t);l.length>1&&c.appendChild(r.#o(l)),c.appendChild(s);let u=j(`div`,{class:`content`});r.#i=u,r.#s();let d=j(`div`,{class:`panel`},c,u);d.tabIndex=-1,r.#e.append(o,d),document.body.appendChild(r),Jo=r,d.focus(),o.addEventListener(`click`,()=>r.#l(`backdrop`)),s.addEventListener(`click`,()=>r.#l(`close-button`)),Yo&&document.removeEventListener(`keydown`,Yo),Yo=e=>{e.key===`Escape`&&r.#l(`escape`)},document.addEventListener(`keydown`,Yo)}static close(){if(Jo){for(let e of Jo.#t)URL.revokeObjectURL(e);Jo.remove(),Jo=null}Yo&&=(document.removeEventListener(`keydown`,Yo),null)}#o(e){let t=e.map(e=>j(`button`,{type:`button`},Go[e])),n=()=>{for(let[n,r]of e.entries())t[n]?.setAttribute(`aria-pressed`,String(this.#a===r))};n();for(let[r,i]of e.entries())t[r]?.addEventListener(`click`,()=>{this.#a!==i&&(this.#a=i,n(),this.#s())});return j(`div`,{class:`toggle`},...t)}#s(){let e=this.#r,t=this.#i;!e||!t||(t.replaceChildren(this.#d(e)),t.classList.toggle(`content--rich`,this.#a===`rendered`&&e.rendered?.mount===`sandbox`),this.#a!==`rendered`&&Xo(e)&&this.#u(this.#n))}#c(e){let t=e.rendered;if(!t)return j(`pre`,null,Zo(e.content));if(t.mount===`sandbox`){let n=document.createElement(`iframe`);return n.setAttribute(`sandbox`,``),n.srcdoc=ts(t.html,ns()),n.title=`${e.path.split(`/`).pop()||e.path} preview`,n.className=`rendered-frame`,n}let n=j(`div`,{class:`rendered`}),r=this.ownerDocument.createRange();return r.selectNodeContents(n),n.appendChild(r.createContextualFragment(t.html)),n}#l(t){this.dispatchEvent(new CustomEvent(`quick-look-close`,{bubbles:!0,composed:!0,detail:{reason:t}})),e.close()}async#u(e){let n=this.#r,r=this.#i;if(!n||!r)return;let i;try{i=await t(()=>import(`./dist-kBT87Ea7.js`).then(e=>e.t),__vite__mapDeps([0,1,2]))}catch{return}if(es(i),e!==this.#n||!this.isConnected)return;let a=n.path.split(`/`).pop()||n.path,o=Zo(n.content),s={themeType:ns(),theme:{dark:`github-dark`,light:`github-light`},stickyHeader:!1,disableFileHeader:!0},c=j(`div`);try{if(this.#a===`diff`&&n.baseContent!==void 0){let e=new i.FileDiff({...s,diffStyle:`unified`});e.render({oldFile:{name:a,contents:n.baseContent},newFile:{name:a,contents:o},containerWrapper:c}),n.line!==void 0&&e.setSelectedLines({start:n.line,end:n.line,side:`additions`})}else{let e=new i.File(s);e.render({file:{name:a,contents:o},containerWrapper:c}),n.line!==void 0&&e.setSelectedLines({start:n.line,end:n.line})}}catch{return}e!==this.#n||!this.isConnected||(r.classList.add(`content--rich`),r.replaceChildren(c))}#d(e){let t=e.mimeType;if(this.#a===`rendered`)return this.#c(e);if(Xo(e))return j(`pre`,null,Zo(e.content));if(t.startsWith(`image/`)){let n=document.createElement(`img`);return n.src=this.#f(e.content,t),n.alt=e.path.split(`/`).pop()||``,n}if(t.startsWith(`audio/`)){let n=document.createElement(`audio`);return n.controls=!0,n.src=this.#f(e.content,t),n}if(t.startsWith(`video/`)){let n=document.createElement(`video`);return n.controls=!0,n.src=this.#f(e.content,t),n}if(t===`application/pdf`){let n=document.createElement(`iframe`);return n.src=this.#f(e.content,t),n.title=e.path.split(`/`).pop()||`PDF preview`,n}return j(`div`,{class:`fallback`},j(`div`,null,`Preview not available for this file type (${is(typeof e.content==`string`?e.content.length:e.content.byteLength)})`),j(`div`,{style:`margin-top:6px;`},j(`code`,null,t)))}#f(e,t){let n=URL.createObjectURL(Qo(e,t));return this.#t.push(n),n}};function is(e){return e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1048576).toFixed(1)} MB`}A(`slicc-quick-look`,rs);var as=`
|
|
4934
4934
|
.slicc-chatpane {
|
|
4935
4935
|
flex: 1 1 0;
|
|
4936
4936
|
width: 100%;
|
|
@@ -4977,7 +4977,7 @@ iframe {
|
|
|
4977
4977
|
-webkit-mask-image: none;
|
|
4978
4978
|
mask-image: none;
|
|
4979
4979
|
}
|
|
4980
|
-
`,
|
|
4980
|
+
`,os=`slicc-chatpane-style`;function ss(e){if(e.getElementById(os))return;let t=e.createElement(`style`);t.id=os,t.textContent=as,(e.head??e.documentElement).appendChild(t)}var cs=[`slicc-chat-thread`,`slicc-composer`];A(`slicc-chatpane`,class extends HTMLElement{static observedAttributes=[`narrow`];#e=null;#t=!1;connectedCallback(){ss(this.ownerDocument),this.classList.add(`slicc-chatpane`),this.setAttribute(`part`,`pane`),this.#t=!0,this.#n(),this.#r()}disconnectedCallback(){this.#e?.disconnect(),this.#e=null}attributeChangedCallback(e,t,n){e===`narrow`&&t!==n&&this.isConnected&&(this.#n(),this.dispatchEvent(new CustomEvent(`slicc-chatpane-narrow-change`,{detail:{narrow:this.narrow},bubbles:!0,composed:!0})))}get narrow(){return this.hasAttribute(`narrow`)}set narrow(e){e?this.setAttribute(`narrow`,``):this.removeAttribute(`narrow`)}get nav(){return this.querySelector(`:scope > slicc-nav`)}get thread(){return this.querySelector(`:scope > slicc-chat-thread`)}get composer(){return this.querySelector(`:scope > slicc-composer`)}#n(){if(!this.#t)return;let e=this.narrow;for(let t of cs)for(let n of this.querySelectorAll(`:scope > ${t}`))e?n.setAttribute(`open`,``):n.removeAttribute(`open`)}#r(){this.#e||(this.#e=new MutationObserver(()=>this.#n()),this.#e.observe(this,{childList:!0}))}});var ls=`
|
|
4981
4981
|
.slicc-shell { display: flex; flex: 1; min-height: 0; }
|
|
4982
4982
|
.slicc-shell > slicc-dock-tree,
|
|
4983
4983
|
.slicc-shell > .dock-tree {
|
|
@@ -4993,7 +4993,7 @@ iframe {
|
|
|
4993
4993
|
and blur the rail's own opaque strip. */
|
|
4994
4994
|
.slicc-shell > slicc-dock,
|
|
4995
4995
|
.slicc-shell > .dock { flex: 0 0 48px; position: relative; z-index: 3; }
|
|
4996
|
-
`,
|
|
4996
|
+
`,us=`slicc-shell-style`;function ds(e){if(e.getElementById(us))return;let t=e.createElement(`style`);t.id=us,t.textContent=ls,(e.head??e.documentElement).appendChild(t)}var fs=`chat`;A(`slicc-shell`,class extends HTMLElement{#e=e=>{let t=e.detail?.placed;if(!Array.isArray(t))return;let n=t.some(e=>e!==fs);this.querySelector(`slicc-chatpane`)?.toggleAttribute(`narrow`,n)};connectedCallback(){ds(this.ownerDocument),this.classList.add(`slicc-shell`),this.setAttribute(`part`,`shell`),this.addEventListener(`dock-tree-render`,this.#e)}disconnectedCallback(){this.removeEventListener(`dock-tree-render`,this.#e)}get dockTree(){return this.querySelector(`:scope > slicc-dock-tree, :scope > .dock-tree`)}get dock(){return this.querySelector(`:scope > slicc-dock, :scope > .dock`)}});var ps=[`idle`,`thinking`,`working`,`awaiting`],ms=.22,hs=.08,gs=3400,_s=4600,vs=.38,ys=2600,bs=.22,xs=1e3,Ss=.1,Cs=.55,ws=.16,Ts={left:{raise:-9,tilt:-10},right:{raise:2,tilt:6}},Es=[{x:45,y:-15},{x:150,y:-10},{x:95,y:-25},{x:160,y:-30},{x:40,y:-28}],Ds=1300,Os=[{x:70,y:60},{x:130,y:40},{x:100,y:72},{x:55,y:30},{x:148,y:62}],ks=4100,As=2.2,js={x:100,y:66};function Ms(e,t,n){return e+(t-e)*n}function Ns(e,t,n,r){return e+(t-e)*Math.min(1,n*r)}function Ps(e){return e===null?null:ps.includes(e)?e:`idle`}function Fs(e){let t=Number.parseFloat(e??``);return Number.isFinite(t)&&t>=0?t:90}function Is(e){return+(e===`working`)}function Ls(e){return Ms(38,10,e)}function Rs(e,t){return Ms(e,e*ms,t)}function zs(e){return e<=50?1:e>=85?2.2:1+(e-50)/35*1.2}function Bs(e){return e<=0?1:1+ws*Math.min(1,e/350)}function Vs(e){return Math.max(2,Math.min(16,38-e-4))}function Hs(e){return e>.001?12+e*2*38:9}function Us(e){return e>.001?88-e*2*38:91}function Ws(e,t){let n=e-50;return Ms(Math.sqrt(Math.max(0,1444-n*n)),36,t)}function Gs(e,t){return e<=t?Ss:Ms(Ss,Cs,Math.min(1,(e-t)/12))}function Ks(e){return e.left.raise<0}function qs(e,t=Math.random){let n=t()<.65?!Ks(e):Ks(e),r={raise:-(7+t()*5),tilt:7+t()*5},i={raise:1+t()*2,tilt:4+t()*3};return n?{left:{raise:r.raise,tilt:-r.tilt},right:i}:{left:{raise:i.raise,tilt:-i.tilt},right:r}}function Js(e,t,n){return t<2?0:(e+1+Math.floor(n()*(t-1)))%t}var Ys=`http://www.w3.org/2000/svg`,Xs={cx:55,cy:50,r:38},Zs={cx:145,cy:50,r:38},Qs=1,$s=12,ec=.72,tc=[.08,.36,.68,.94],nc=1372365086,rc=2654435769,ic=2246822507,ac=Date.UTC(2001,0,1),oc=500,sc={cone:{vb:`70 330 440 570`,eyes:{top:-18.5,left:17,width:70,height:44},zoom:3,glyph:96},scoop:{vb:`0 0 580 470`,eyes:{top:30,left:15,width:70,height:45},zoom:2.65,glyph:96}},cc={cone:`#D2691E`,scoop:`#FFB6C1`},lc=M(`
|
|
4997
4997
|
:host{display:block;width:26px;height:26px;pointer-events:none;}
|
|
4998
4998
|
/* The tile itself no longer clips: .crop owns the roundrect so the brows can
|
|
4999
4999
|
break out of it (see .brow-layer). Everything else still paints inside. */
|
|
@@ -5008,14 +5008,14 @@ iframe {
|
|
|
5008
5008
|
.eyes{position:absolute;pointer-events:none;}
|
|
5009
5009
|
.eyes-svg,.brows-svg{display:block;overflow:visible;}
|
|
5010
5010
|
.eye-blink,.eye-frozen{transform-box:view-box;}
|
|
5011
|
-
@keyframes slicc-agent-avatar-blink{0%,92%,100%{transform:scaleY(1);}96%{transform:scaleY(${
|
|
5011
|
+
@keyframes slicc-agent-avatar-blink{0%,92%,100%{transform:scaleY(1);}96%{transform:scaleY(${hs});}}
|
|
5012
5012
|
:host([blink]) .eye-blink{animation:slicc-agent-avatar-blink 3.4s ease-in-out infinite;}
|
|
5013
5013
|
:host([blink]) .eye-r{animation-duration:4.6s;}
|
|
5014
5014
|
/* The engine drives blinks itself so it can commit shape changes at the apex. */
|
|
5015
5015
|
.avatar[data-expressive] .eye-blink{animation:none;}
|
|
5016
5016
|
.brow{transition:opacity 350ms ease,transform 350ms ease;}
|
|
5017
5017
|
@media (prefers-reduced-motion:reduce){:host([blink]) .eye-blink{animation:none;}.brow{transition:none;}}
|
|
5018
|
-
`);function z(e,t,...n){let r=document.createElementNS(Fc,e);for(let[e,n]of Object.entries(t))r.setAttribute(e,String(n));return r.append(...n),r}function Xc(e,t,n){e&&e.getAttribute(t)!==n&&e.setAttribute(t,n)}function Zc(e,t,n){Xc(e,t,n.toFixed(2))}function Qc(e,t){let n=e.replace(`#`,``),r=n.length===3?[...n].map(e=>`${e}${e}`).join(``):n,i=Number.parseInt(r,16);if(!Number.isFinite(i))return e;let a=t<0?0:255,o=e=>Math.round(e+(a-e)*Math.abs(t)).toString(16).padStart(2,`0`);return`#${o(i>>16&255)}${o(i>>8&255)}${o(i&255)}`}function $c(e,t,n){let r=[[`path`,{d:`M108.22,414.88l189.84,460.03c1.36,3.3,6.09,3.16,7.25-.22l159.34-463.34c.87-2.53-1.03-5.16-3.7-5.13l-349.18,3.32c-2.74.03-4.59,2.82-3.55,5.35Z`,fill:e,stroke:t,"stroke-linejoin":`round`,"stroke-width":20}],[`path`,{d:`M261.93,482.48h0c15.03-15.03,4.46-40.72-16.79-40.83h0c-21.37-.11-32.14,25.72-17.03,40.83h0c9.34,9.34,24.48,9.34,33.82,0Z`,fill:n}],[`path`,{d:`M384.85,527.49l-51.82,51.82c-2.24,2.24-2.24,5.86,0,8.1l55.71,55.71c2.24,2.24,5.86,2.24,8.1,0h0c.62-.62,1.08-1.36,1.37-2.19l26.52-77.11c.71-2.07.18-4.36-1.37-5.91l-30.41-30.41c-2.24-2.24-5.86-2.24-8.1,0Z`,fill:n}],[`path`,{d:`M371.7,684.58l-25.94,25.94c-2.24,2.24-2.24,5.86,0,8.1l12.67,12.67c2.99,2.99,8.09,1.82,9.46-2.19l13.28-38.61c1.97-5.74-5.17-10.2-9.46-5.91Z`,fill:n}],[`path`,{d:`M159.42,564.14l2.73,6.83c1.52,3.82,6.46,4.83,9.37,1.93l2.05-2.05c2.24-2.24,2.24-5.86,0-8.1l-4.78-4.78c-4.4-4.4-11.67.39-9.37,6.17Z`,fill:n}],[`path`,{d:`M243.92,633.11l-48.65-48.65c-5.24-5.24-13.74-5.24-18.99,0h0c-3.8,3.8-4.97,9.49-2.98,14.47l27.77,69.54c3.58,8.95,15.14,11.33,21.96,4.51l20.89-20.89c5.24-5.24,5.24-13.74,0-18.99Z`,fill:n}],[`path`,{d:`M211.32,533.1h0c14.11-14.11,14.11-36.98,0-51.08l-34.94-34.94c-.72-.72-.72-1.89,0-2.62h0c1.16-1.16.34-3.15-1.3-3.16l-11.23-.06c-25.62-.13-43.23,25.72-33.73,49.51l5.37,13.45c1.82,4.55,4.54,8.68,8,12.15l16.74,16.74c14.11,14.11,36.98,14.11,51.08,0Z`,fill:n}],[`path`,{d:`M263.74,792.53h0c-5.69,5.69-7.45,14.23-4.46,21.71l22.5,56.36c6.92,17.34,31.68,16.74,37.75-.92l8.66-25.2c2.5-7.28.64-15.35-4.8-20.79l-31.17-31.17c-7.87-7.87-20.62-7.87-28.48,0Z`,fill:n}],[`path`,{d:`M392.94,503.07l40.81-40.81c2.24-2.24,5.86-2.24,8.1,0l.06.06c2.24,2.24,2.24,5.86,0,8.1l-40.81,40.81c-2.24,2.24-2.24,5.86,0,8.1l22.48,22.48c2.99,2.99,8.09,1.82,9.46-2.19l30.71-89.32c1.27-3.71-1.47-7.57-5.39-7.59l-120.63-.6c-5.11-.03-7.69,6.16-4.08,9.77l51.18,51.18c2.24,2.24,5.86,2.24,8.1,0Z`,fill:n}]],i=[[274.59,463.59,84.73,95.66,42.36,`translate(-268.79 373.91) rotate(-45)`],[291.06,603.84,72.24,90.24,36.12,`translate(-363.06 421.43) rotate(-45)`],[217.18,527.25,72.24,95.66,36.12,`translate(-332.45 347.55) rotate(-45)`],[236.26,661.25,67.04,90.24,33.52,`translate(-420.46 397.65) rotate(-45)`]],a=r.map(([e,t])=>z(e,t));return a.push(...i.map(([e,t,r,i,a,o])=>z(`rect`,{x:e,y:t,width:r,height:i,rx:a,ry:a,transform:o,fill:n})),z(`ellipse`,{cx:288.37,cy:404.38,rx:182.34,ry:67.01,fill:e,stroke:t,"stroke-miterlimit":10,"stroke-width":20})),a}function el(e,t){return[z(`path`,{d:`M566.75,340.67c0-29.85-12.97-56.87-33.96-76.47,4.8-9.98,7.44-20.71,7.44-31.9,0-38.29-30.62-71.33-74.92-86.77.33-3.07.51-6.17.51-9.3,0-69.72-84.29-126.24-188.26-126.24s-188.26,56.52-188.26,126.24c0,4,.29,7.95.83,11.86-34.94,15.4-58.48,44.25-58.48,77.34,0,18.21,7.15,34.25,19.39,49.26-25.1,19.88-41.05,49.47-41.05,82.54,0,59.85,52.15,108.37,116.49,108.37,10.83,0,21.3-1.4,31.26-3.98,31.42,41.91,83.55,69.34,142.55,69.34,64.73,0,121.2-33,151.11-81.94,63.8-.57,115.34-48.85,115.34-108.34Z`,fill:e,stroke:t,"stroke-width":20})]}function tl(e,t,n,r){return z(`rect`,{x:e-t,y:50-t,width:t*2,height:t*2,rx:n,...r})}function nl(e,t,n,r){return z(`g`,{class:`pupil pupil-${t}`},tl(e,n,wc(n,r),{fill:`#000`}),z(`circle`,{cx:e-n*.3,cy:50-n*.35,r:n*.4,fill:`#fff`}))}function rl(e,t){return z(`line`,{class:`lid-line lid-${t}`,x1:e-38,y1:50,x2:e+38,y2:50,stroke:`#000`,"stroke-width":4,"stroke-linecap":`round`,display:`none`})}function il(e,t){let n=z(`line`,{class:`brow brow-${t}`,x1:e-22,y1:2,x2:e+22,y2:2,stroke:`#000`,"stroke-width":8,"stroke-linecap":`round`,opacity:0});return n.style.transformBox=`fill-box`,n.style.transformOrigin=`center`,n}function al(e){return F(`span`,{class:`eyes`,style:`top:${e.eyes.top}%;left:${e.eyes.left}%;width:${e.eyes.width}%;height:${e.eyes.height}%`})}function ol(e,t,n){let r=z(`g`,{class:`${n} eye-${t}`});return r.style.transformOrigin=`${e}px 50px`,r}function sl(e,t,n){let r=`slicc-agent-avatar-noise-${t}`;return z(`g`,{class:`eye-static eye-body-${t}`},z(`defs`,{},z(`clipPath`,{id:r},tl(e,38,n,{class:`noise-clip`}))),tl(e,38,n,{class:`socket`,fill:`#fff`}),z(`g`,{class:`noise noise-${t}`,"clip-path":`url(#${r})`,"data-cell-size":Rc}),tl(e,38,n,{class:`eye-outline`,fill:`none`,stroke:`#000`,"stroke-width":4}))}function cl(e){return e^=e<<13,e^=e>>>17,e^=e<<5,e>>>0}function ll(e){return(Hc^Math.imul(e,Wc))>>>0}function ul(e,t){return(ll(e)^Math.imul(t,Uc))>>>0}function dl(){return Math.floor((Date.now()-Gc)/1e3*zc)>>>0}function fl(e){return[z(`circle`,{cx:e,cy:50,r:38,fill:`#fff`,stroke:`#000`,"stroke-width":4}),z(`line`,{x1:e-15,y1:35,x2:e+15,y2:65,stroke:`#000`,"stroke-width":8,"stroke-linecap":`round`}),z(`line`,{x1:e+15,y1:35,x2:e-15,y2:65,stroke:`#000`,"stroke-width":8,"stroke-linecap":`round`})]}function pl(e,t,n,r,i){let a=n-t,o=r-50,s=Math.hypot(a,o),c=Math.min(s,i),l=s>0?a/s*c:0,u=s>0?o/s*c:0;e.setAttribute(`transform`,`translate(${l.toFixed(2)},${u.toFixed(2)})`)}var ml={now:()=>performance.now(),requestFrame:e=>window.requestAnimationFrame(e),cancelFrame:e=>window.cancelAnimationFrame(e),delay:(e,t)=>window.setTimeout(e,t),cancelDelay:e=>window.clearTimeout(e),repeat:(e,t)=>window.setInterval(e,t),cancelRepeat:e=>window.clearInterval(e)};N(`slicc-agent-avatar`,class extends HTMLElement{static observedAttributes=[`type`,`color`,`eyes`,`fill`,`connection`,`activity`,`gaze-target`,`drowse-delay`];#e;#t=e=>this.#ke(e);#n=()=>{this.#V(),this.#q(),this.#U()===`static`&&this.#we()};#r=null;#i=null;#a=null;#o=null;#s=[];#c=null;#l=16;#u=!1;#d=null;#f=!1;#p=!1;#m=0;#h=0;#g=!1;#_=0;#v=0;#y=dc;#b={x:100,y:50};#x=0;#S=0;#C=18;#w=null;#T=0;#E=0;#D=0;#O=null;#k=0;#A=[];#j=null;#M=[];#N=_c;#P=null;#F=ml;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[Yc]}connectedCallback(){this.#r=window.matchMedia(`(prefers-reduced-motion: reduce)`),this.#r.addEventListener(`change`,this.#n),this.#L(),this.#V(),this.#q()}disconnectedCallback(){this.#H(),this.#De(),this.#Q(),this.#r?.removeEventListener(`change`,this.#n),this.#r=null,this.#p=!1}attributeChangedCallback(e){if(this.isConnected){if(e===`activity`||e===`gaze-target`||e===`drowse-delay`){this.#K();return}this.#L(),this.#V(),this.#q()}}get activity(){return bc(this.getAttribute(`activity`))}set activity(e){e===null?this.removeAttribute(`activity`):this.setAttribute(`activity`,e)}get gazeTarget(){return this.getAttribute(`gaze-target`)}set gazeTarget(e){e===null?this.removeAttribute(`gaze-target`):this.setAttribute(`gaze-target`,e)}get drowseDelay(){return xc(this.getAttribute(`drowse-delay`))}set drowseDelay(e){this.setAttribute(`drowse-delay`,String(e))}get clock(){return this.#F}set clock(e){if(e===this.#F)return;this.#Q(),this.#F=e;let t=e.now();this.#k=t,this.#w!==null&&(this.#w=t),this.#T=0,this.#E=0,this.#D=0,this.#P=null,this.isConnected&&this.#q()}get expression(){return Object.freeze({activity:this.#d,shape:this.#m,lidTop:this.#_,lidBottom:this.#v,pupilRadius:this.#C,gaze:{...this.#b},brows:this.#y,browsVisible:this.#_e()})}wake(){let e=this.#F.now();this.#w=e,this.#W()||(this.#D=e+350,this.#ce()),this.#Y()}scrutinize(){this.#E=this.#F.now()+sc,this.#Y()}glower(){this.#T=this.#F.now()+ac,this.#Y()}resetExpression(){this.#se();let e=this.#F.now();this.#T=0,this.#E=0,this.#D=0,this.#_=0,this.#v=0,this.#y=dc,this.#N=_c,this.#P=null,this.#S=0,this.#w=this.#d===`awaiting`?e:null,this.#g=!1,this.#h=Sc(this.#d),this.#m=this.#h,this.#k=e,this.#I()&&this.isConnected&&(this.#ve(),this.#q())}#I(){return this.hasAttribute(`activity`)||this.#f}#L(){this.#De(),this.#s=[];let e=this.getAttribute(`type`)===`cone`?`cone`:`scoop`,t=qc[e],n=this.getAttribute(`color`)??Jc[e],r=this.#I();this.#d=bc(this.getAttribute(`activity`)),this.#d===`awaiting`&&this.#w===null&&(this.#w=this.#F.now()),this.#p||=(this.#m=this.#h=Sc(this.#d),!0);let i=z(`svg`,{class:`glyph`,viewBox:t.vb,preserveAspectRatio:`xMidYMid meet`,style:`--g:${t.glyph}%`},...e===`cone`?$c(n,Qc(n,-.38),Qc(n,.3)):el(n,Qc(n,-.32)));this.#o=z(`svg`,{class:`eyes-svg`,viewBox:`0 0 200 100`,width:`100%`,height:`100%`,preserveAspectRatio:`xMidYMid meet`},...this.#R(r));let a=al(t);a.append(this.#o);let o=`--tx:${((.5-t.zoom*((t.eyes.left+t.eyes.width/2)/100))*100).toFixed(2)}%;--ty:${((.5-t.zoom*((t.eyes.top+t.eyes.height/2)/100))*100).toFixed(2)}%;--zoom:${t.zoom}`,s=F(`span`,{class:`icon-inner`,style:o},i,a),c=this.#z(r),l=null;if(c){let e=al(t);e.append(c),l=F(`span`,{class:`icon-inner brow-layer`,style:o},e)}this.#e.replaceChildren(F(`span`,{class:`avatar`,"aria-hidden":`true`,"data-expressive":r||null},F(`span`,{class:`crop`},s),l)),this.#i=this.#e.querySelector(`.pupil-l`),this.#a=this.#e.querySelector(`.pupil-r`),this.#U()===`static`&&this.#we(),r&&this.#ve()}#R(e){let t=this.#U();if(t===`none`)return[];if(t===`dead`)return[...fl(Ic.cx),...fl(Lc.cx)];this.#C=this.#B(),this.#l=Dc(this.#C);let n=Cc(this.#m);return[Ic.cx,Lc.cx].map((r,i)=>{let a=i===0?`l`:`r`,o=t===`static`,s=ol(r,a,o?`eye-frozen`:`eye-blink`),c=o?sl(r,a,n):z(`g`,{class:`eye-body eye-body-${a}`},tl(r,38,n,{class:`socket`,fill:`#fff`,stroke:`#000`,"stroke-width":4}),nl(r,a,this.#C,this.#m));if(s.append(c),!e)return s;let l=`slicc-agent-avatar-lid-${a}`;return s.append(z(`defs`,{},z(`clipPath`,{id:l},z(`rect`,{class:`lid-clip`,x:r-38-3,y:9,width:82,height:82}))),rl(r,`top`),rl(r,`bottom`)),c.setAttribute(`clip-path`,`url(#${l})`),s})}#z(e){let t=this.#U();return!e||t===`none`||t===`dead`?null:z(`svg`,{class:`brows-svg`,viewBox:`0 0 200 100`,width:`100%`,height:`100%`,preserveAspectRatio:`xMidYMid meet`},...[Ic.cx,Lc.cx].map((e,t)=>{let n=t===0?`l`:`r`,r=z(`g`,{class:`brow-group brow-group-${n}`});return r.style.transformBox=`view-box`,r.style.transformOrigin=`${e}px 50px`,r.append(il(e,n)),r}))}#B(){return 18*Tc(Math.max(0,Math.min(100,Number.parseFloat(this.getAttribute(`fill`)??`0`)||0)))}#V(){let e=this.#U()===`open`&&!this.#r?.matches&&(this.#d===null||this.#d===`working`);e&&!this.#u?(this.ownerDocument.addEventListener(`pointermove`,this.#t),this.#u=!0):e||(this.#H(),(this.#d===null||this.#d===`working`)&&this.#Oe())}#H(){this.#u&&=(this.ownerDocument.removeEventListener(`pointermove`,this.#t),!1)}#U(){let e=this.getAttribute(`connection`);if(e!==null&&e!==`connected`)return`static`;let t=this.getAttribute(`eyes`);return t===`dead`||t===`none`||t===`static`?t:`open`}#W(){return this.#r?.matches===!0||this.#U()!==`open`||!this.isConnected||!this.#p}#G(){return this.#U()!==`open`}#K(){let e=bc(this.getAttribute(`activity`)),t=this.#e.querySelector(`.avatar[data-expressive]`)!==null;e===`awaiting`&&this.#d!==`awaiting`?this.#w=this.#F.now():e!==`awaiting`&&(this.#w=null),this.#P=null,this.#d=e,this.#I()!==t&&this.#L(),this.#V(),this.#q()}#q(){if(!this.#I()||!this.isConnected){this.#Q();return}if(this.#G()||this.#r?.matches){this.#Z(),this.#J(),this.#te();return}this.#ue(),this.#X()}#J(){for(let e of this.#M)this.#F.cancelRepeat(e);this.#M=[]}#Y(){this.#I()||(this.#f=!0,this.isConnected&&this.#L()),this.#q()}#X(){this.#O===null&&(this.#k=this.#F.now(),this.#O=this.#F.requestFrame(this.#$))}#Z(){this.#O!==null&&(this.#F.cancelFrame(this.#O),this.#O=null)}#Q(){this.#Z();for(let e of this.#A)this.#F.cancelDelay(e);this.#A=[],this.#j!==null&&this.#F.cancelDelay(this.#j),this.#j=null;for(let e of this.#M)this.#F.cancelRepeat(e);this.#M=[]}#$=e=>{this.#O=this.#F.requestFrame(this.#$);let t=Math.min(.05,Math.max(0,(e-this.#k)/1e3));this.#k=e,this.#ee(e,t),this.#ve()};#ee(e,t){let n=Sc(this.#d);n!==this.#h&&!this.#g&&this.#ae(n),this.#m=yc(this.#m,this.#h,6,t),this.#_=yc(this.#_,this.#re(e,!1),5,t),this.#v=yc(this.#v,this.#ie(e),5,t),this.#pe(e,t)}#te(){let e=this.#F.now();this.#G()||(this.#h=this.#m=Sc(this.#d),this.#_=this.#re(e,!0),this.#v=this.#ie(e),this.#me()),this.#ve(),this.#ne(e)}#ne(e){if(this.#j!==null&&this.#F.cancelDelay(this.#j),this.#j=null,this.#G())return;let t=this.#d===`awaiting`&&this.#w!==null?this.#w+this.drowseDelay*1e3:1/0,n=Math.min(this.#T>e?this.#T:1/0,this.#E>e?this.#E:1/0,t>e?t:1/0);Number.isFinite(n)&&(this.#j=this.#F.delay(()=>this.#te(),Math.max(0,n-e)+1))}#re(e,t){let n=this.#T>e?ic:0;if(this.#d!==`awaiting`)return n;let r=this.#w===null?0:(e-this.#w)/1e3,i=this.drowseDelay;return Math.max(n,jc(t&&r>i?i+12:r,i))}#ie(e){return this.#E>e?oc:0}#ae(e){if(this.#W()){this.#h=this.#m=e;return}this.#g=!0,this.#ce(()=>{this.#h=this.#m=e,this.#g=!1})}#oe(){return[...this.#e.querySelectorAll(`.eye-blink`)]}#se(){for(let e of this.#A)this.#F.cancelDelay(e);this.#A=[];for(let e of this.#oe())e.style.transition=`none`,e.style.transform=`scaleY(1)`}#ce(e){let t=this.#oe();if(t.length===0){e?.();return}t.forEach((t,n)=>{this.#le(t,n===0?e:void 0)})}#le(e,t){e.style.transition=`transform 110ms ease-in`,e.style.transform=`scaleY(${tc})`,this.#A.push(this.#F.delay(()=>{t?.(),this.#d===`thinking`&&!this.#G()&&(this.#y=Nc(this.#y)),e.style.transition=`transform 130ms ease-out`,e.style.transform=`scaleY(1)`},120))}#ue(){this.#M.length>0||this.#W()||this.#G()||[nc,rc].forEach((e,t)=>{this.#M.push(this.#F.repeat(()=>{let e=this.#oe()[t];e&&this.hasAttribute(`blink`)&&!this.#G()&&this.#le(e)},e))})}#de(e){return this.#d===`thinking`?{target:this.#fe(e,fc,pc),rate:9}:this.#d===`idle`?{target:this.#fe(e,mc,hc),rate:gc}:this.#d===`awaiting`?{target:this.#ge(e),rate:6}:null}#fe(e,t,n){return e-this.#S>n&&(this.#S=e,this.#x=Pc(this.#x,t.length,Math.random)),t[this.#x]??_c}#pe(e,t){let n=this.#de(e);n&&(this.#b={x:yc(this.#b.x,n.target.x,n.rate,t),y:yc(this.#b.y,n.target.y,n.rate,t)},this.#he())}#me(){this.#d===`awaiting`?(this.#b=this.#ge(this.#F.now()),this.#he()):(this.#d===`thinking`||this.#d===`idle`)&&this.#Oe()}#he(){this.#i&&pl(this.#i,Ic.cx,this.#b.x,this.#b.y,this.#l),this.#a&&pl(this.#a,Lc.cx,this.#b.x,this.#b.y,this.#l)}#ge(e){if(this.#P!==null&&e-this.#P<Kc)return this.#N;this.#P=e;let t=this.getAttribute(`gaze-target`),n=t?this.ownerDocument.querySelector(t):null,r=this.#o?.getBoundingClientRect();if(!n||!r?.width||!r.height)return this.#N=_c,this.#N;let i=n.getBoundingClientRect();return this.#N={x:(i.left+i.width/2-r.left)*(200/r.width),y:(i.top+i.height/2-r.top)*(100/r.height)},this.#N}#_e(){return this.#d===`thinking`}#ve(){let e=this.#F.now(),t=this.#m,n=Cc(t),r=this.#B()*Ec(this.#D-e);this.#C=r,this.#l=Dc(r);for(let[e,i]of[`l`,`r`].entries()){let a=e===0?Ic.cx:Lc.cx;this.#ye(i,n),this.#be(i,a,r,t),this.#xe(i,a,t),this.#Ce(i)}}#ye(e,t){for(let n of this.#e.querySelectorAll(`.eye-body-${e} .socket, .eye-body-${e} .eye-outline, .eye-body-${e} .noise-clip`))Zc(n,`rx`,t)}#be(e,t,n,r){let i=this.#e.querySelector(`.pupil-${e} rect`);if(!i)return;Zc(i,`x`,t-n),Zc(i,`y`,50-n),Zc(i,`width`,n*2),Zc(i,`height`,n*2),Zc(i,`rx`,wc(n,r));let a=this.#e.querySelector(`.pupil-${e} circle`);Zc(a,`cx`,t-n*.3),Zc(a,`cy`,50-n*.35),Zc(a,`r`,n*.4)}#xe(e,t,n){let r=this.#e.querySelector(`.eye-${e} .lid-clip`);if(!r)return;let i=Oc(this.#_),a=kc(this.#v);Zc(r,`y`,i),Zc(r,`height`,Math.max(0,a-i)),this.#Se(`.eye-${e} .lid-top`,t,i,n,this.#_),this.#Se(`.eye-${e} .lid-bottom`,t,a,n,this.#v)}#Se(e,t,n,r,i){let a=this.#e.querySelector(e);if(!a)return;let o=Ac(n,r);Zc(a,`x1`,t-o),Zc(a,`x2`,t+o),Zc(a,`y1`,n),Zc(a,`y2`,n),Xc(a,`display`,i>.02?`inline`:`none`)}#Ce(e){let t=this.#e.querySelector(`.brow-${e}`);if(!t)return;let n=this.#_e(),r=e===`l`?this.#y.left:this.#y.right;Xc(t,`opacity`,n?`1`:`0`),t.style.transform=n?`translateY(${r.raise.toFixed(2)}px) rotate(${r.tilt.toFixed(2)}deg)`:`translateY(6px)`}#we(){if(this.#De(),this.#s.length===0&&this.#Te(),this.#r?.matches){this.#Ee(null);return}this.#Ee(dl()),this.#c=window.setInterval(()=>{this.#Ee(dl())},1e3/zc)}#Te(){let e=this.#o?.getBoundingClientRect(),t=e?Math.min(e.width/200,e.height/100):0,n=Rc/(t>0?t:.25);this.#s=[...this.#e.querySelectorAll(`.noise`)].map((e,t)=>{let r=t===0?Ic.cx:Lc.cx,i=[],a=r-Ic.r,o=r+Ic.r,s=50-Ic.r,c=50+Ic.r;for(let e=s;e<c;e+=n)for(let t=a;t<o;t+=n){let r=z(`rect`,{x:t,y:e,width:Math.min(n,o-t),height:Math.min(n,c-e),opacity:Bc});i.push(r)}return e.replaceChildren(...i),i})}#Ee(e){this.#s.forEach((t,n)=>{let r=e===null?ll(n):ul(n,e),i=r===0?Hc:r;(t[0]?.parentElement)?.setAttribute(`data-seed`,String(i));for(let e of t){i=cl(i);let t=`${Vc[i%Vc.length]*100}%`;e.setAttribute(`fill`,`rgb(${t} ${t} ${t})`)}})}#De(){this.#c!==null&&(window.clearInterval(this.#c),this.#c=null)}#Oe(){this.#i?.setAttribute(`transform`,`translate(0,0)`),this.#a?.setAttribute(`transform`,`translate(0,0)`)}#ke(e){if(!this.#o||!this.#i||!this.#a)return;let t=this.#o.getBoundingClientRect();!t.width||!t.height||(this.#b={x:(e.clientX-t.left)*(200/t.width),y:(e.clientY-t.top)*(100/t.height)},this.#he())}});var hl=I(`
|
|
5018
|
+
`);function z(e,t,...n){let r=document.createElementNS(Ys,e);for(let[e,n]of Object.entries(t))r.setAttribute(e,String(n));return r.append(...n),r}function uc(e,t,n){e&&e.getAttribute(t)!==n&&e.setAttribute(t,n)}function dc(e,t,n){uc(e,t,n.toFixed(2))}function fc(e,t){let n=e.replace(`#`,``),r=n.length===3?[...n].map(e=>`${e}${e}`).join(``):n,i=Number.parseInt(r,16);if(!Number.isFinite(i))return e;let a=t<0?0:255,o=e=>Math.round(e+(a-e)*Math.abs(t)).toString(16).padStart(2,`0`);return`#${o(i>>16&255)}${o(i>>8&255)}${o(i&255)}`}function pc(e,t,n){let r=[[`path`,{d:`M108.22,414.88l189.84,460.03c1.36,3.3,6.09,3.16,7.25-.22l159.34-463.34c.87-2.53-1.03-5.16-3.7-5.13l-349.18,3.32c-2.74.03-4.59,2.82-3.55,5.35Z`,fill:e,stroke:t,"stroke-linejoin":`round`,"stroke-width":20}],[`path`,{d:`M261.93,482.48h0c15.03-15.03,4.46-40.72-16.79-40.83h0c-21.37-.11-32.14,25.72-17.03,40.83h0c9.34,9.34,24.48,9.34,33.82,0Z`,fill:n}],[`path`,{d:`M384.85,527.49l-51.82,51.82c-2.24,2.24-2.24,5.86,0,8.1l55.71,55.71c2.24,2.24,5.86,2.24,8.1,0h0c.62-.62,1.08-1.36,1.37-2.19l26.52-77.11c.71-2.07.18-4.36-1.37-5.91l-30.41-30.41c-2.24-2.24-5.86-2.24-8.1,0Z`,fill:n}],[`path`,{d:`M371.7,684.58l-25.94,25.94c-2.24,2.24-2.24,5.86,0,8.1l12.67,12.67c2.99,2.99,8.09,1.82,9.46-2.19l13.28-38.61c1.97-5.74-5.17-10.2-9.46-5.91Z`,fill:n}],[`path`,{d:`M159.42,564.14l2.73,6.83c1.52,3.82,6.46,4.83,9.37,1.93l2.05-2.05c2.24-2.24,2.24-5.86,0-8.1l-4.78-4.78c-4.4-4.4-11.67.39-9.37,6.17Z`,fill:n}],[`path`,{d:`M243.92,633.11l-48.65-48.65c-5.24-5.24-13.74-5.24-18.99,0h0c-3.8,3.8-4.97,9.49-2.98,14.47l27.77,69.54c3.58,8.95,15.14,11.33,21.96,4.51l20.89-20.89c5.24-5.24,5.24-13.74,0-18.99Z`,fill:n}],[`path`,{d:`M211.32,533.1h0c14.11-14.11,14.11-36.98,0-51.08l-34.94-34.94c-.72-.72-.72-1.89,0-2.62h0c1.16-1.16.34-3.15-1.3-3.16l-11.23-.06c-25.62-.13-43.23,25.72-33.73,49.51l5.37,13.45c1.82,4.55,4.54,8.68,8,12.15l16.74,16.74c14.11,14.11,36.98,14.11,51.08,0Z`,fill:n}],[`path`,{d:`M263.74,792.53h0c-5.69,5.69-7.45,14.23-4.46,21.71l22.5,56.36c6.92,17.34,31.68,16.74,37.75-.92l8.66-25.2c2.5-7.28.64-15.35-4.8-20.79l-31.17-31.17c-7.87-7.87-20.62-7.87-28.48,0Z`,fill:n}],[`path`,{d:`M392.94,503.07l40.81-40.81c2.24-2.24,5.86-2.24,8.1,0l.06.06c2.24,2.24,2.24,5.86,0,8.1l-40.81,40.81c-2.24,2.24-2.24,5.86,0,8.1l22.48,22.48c2.99,2.99,8.09,1.82,9.46-2.19l30.71-89.32c1.27-3.71-1.47-7.57-5.39-7.59l-120.63-.6c-5.11-.03-7.69,6.16-4.08,9.77l51.18,51.18c2.24,2.24,5.86,2.24,8.1,0Z`,fill:n}]],i=[[274.59,463.59,84.73,95.66,42.36,`translate(-268.79 373.91) rotate(-45)`],[291.06,603.84,72.24,90.24,36.12,`translate(-363.06 421.43) rotate(-45)`],[217.18,527.25,72.24,95.66,36.12,`translate(-332.45 347.55) rotate(-45)`],[236.26,661.25,67.04,90.24,33.52,`translate(-420.46 397.65) rotate(-45)`]],a=r.map(([e,t])=>z(e,t));return a.push(...i.map(([e,t,r,i,a,o])=>z(`rect`,{x:e,y:t,width:r,height:i,rx:a,ry:a,transform:o,fill:n})),z(`ellipse`,{cx:288.37,cy:404.38,rx:182.34,ry:67.01,fill:e,stroke:t,"stroke-miterlimit":10,"stroke-width":20})),a}function mc(e,t){return[z(`path`,{d:`M566.75,340.67c0-29.85-12.97-56.87-33.96-76.47,4.8-9.98,7.44-20.71,7.44-31.9,0-38.29-30.62-71.33-74.92-86.77.33-3.07.51-6.17.51-9.3,0-69.72-84.29-126.24-188.26-126.24s-188.26,56.52-188.26,126.24c0,4,.29,7.95.83,11.86-34.94,15.4-58.48,44.25-58.48,77.34,0,18.21,7.15,34.25,19.39,49.26-25.1,19.88-41.05,49.47-41.05,82.54,0,59.85,52.15,108.37,116.49,108.37,10.83,0,21.3-1.4,31.26-3.98,31.42,41.91,83.55,69.34,142.55,69.34,64.73,0,121.2-33,151.11-81.94,63.8-.57,115.34-48.85,115.34-108.34Z`,fill:e,stroke:t,"stroke-width":20})]}function hc(e,t,n,r){return z(`rect`,{x:e-t,y:50-t,width:t*2,height:t*2,rx:n,...r})}function gc(e,t,n,r){return z(`g`,{class:`pupil pupil-${t}`},hc(e,n,Rs(n,r),{fill:`#000`}),z(`circle`,{cx:e-n*.3,cy:50-n*.35,r:n*.4,fill:`#fff`}))}function _c(e,t){return z(`line`,{class:`lid-line lid-${t}`,x1:e-38,y1:50,x2:e+38,y2:50,stroke:`#000`,"stroke-width":4,"stroke-linecap":`round`,display:`none`})}function vc(e,t){let n=z(`line`,{class:`brow brow-${t}`,x1:e-22,y1:2,x2:e+22,y2:2,stroke:`#000`,"stroke-width":8,"stroke-linecap":`round`,opacity:0});return n.style.transformBox=`fill-box`,n.style.transformOrigin=`center`,n}function yc(e){return j(`span`,{class:`eyes`,style:`top:${e.eyes.top}%;left:${e.eyes.left}%;width:${e.eyes.width}%;height:${e.eyes.height}%`})}function bc(e,t,n){let r=z(`g`,{class:`${n} eye-${t}`});return r.style.transformOrigin=`${e}px 50px`,r}function xc(e,t,n){let r=`slicc-agent-avatar-noise-${t}`;return z(`g`,{class:`eye-static eye-body-${t}`},z(`defs`,{},z(`clipPath`,{id:r},hc(e,38,n,{class:`noise-clip`}))),hc(e,38,n,{class:`socket`,fill:`#fff`}),z(`g`,{class:`noise noise-${t}`,"clip-path":`url(#${r})`,"data-cell-size":Qs}),hc(e,38,n,{class:`eye-outline`,fill:`none`,stroke:`#000`,"stroke-width":4}))}function Sc(e){return e^=e<<13,e^=e>>>17,e^=e<<5,e>>>0}function Cc(e){return(nc^Math.imul(e,ic))>>>0}function wc(e,t){return(Cc(e)^Math.imul(t,rc))>>>0}function Tc(){return Math.floor((Date.now()-ac)/1e3*$s)>>>0}function Ec(e){return[z(`circle`,{cx:e,cy:50,r:38,fill:`#fff`,stroke:`#000`,"stroke-width":4}),z(`line`,{x1:e-15,y1:35,x2:e+15,y2:65,stroke:`#000`,"stroke-width":8,"stroke-linecap":`round`}),z(`line`,{x1:e+15,y1:35,x2:e-15,y2:65,stroke:`#000`,"stroke-width":8,"stroke-linecap":`round`})]}function Dc(e,t,n,r,i){let a=n-t,o=r-50,s=Math.hypot(a,o),c=Math.min(s,i),l=s>0?a/s*c:0,u=s>0?o/s*c:0;e.setAttribute(`transform`,`translate(${l.toFixed(2)},${u.toFixed(2)})`)}var Oc={now:()=>performance.now(),requestFrame:e=>window.requestAnimationFrame(e),cancelFrame:e=>window.cancelAnimationFrame(e),delay:(e,t)=>window.setTimeout(e,t),cancelDelay:e=>window.clearTimeout(e),repeat:(e,t)=>window.setInterval(e,t),cancelRepeat:e=>window.clearInterval(e)};A(`slicc-agent-avatar`,class extends HTMLElement{static observedAttributes=[`type`,`color`,`eyes`,`fill`,`connection`,`activity`,`gaze-target`,`drowse-delay`];#e;#t=e=>this.#ke(e);#n=()=>{this.#V(),this.#q(),this.#U()===`static`&&this.#we()};#r=null;#i=null;#a=null;#o=null;#s=[];#c=null;#l=16;#u=!1;#d=null;#f=!1;#p=!1;#m=0;#h=0;#g=!1;#_=0;#v=0;#y=Ts;#b={x:100,y:50};#x=0;#S=0;#C=18;#w=null;#T=0;#E=0;#D=0;#O=null;#k=0;#A=[];#j=null;#M=[];#N=js;#P=null;#F=Oc;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[lc]}connectedCallback(){this.#r=window.matchMedia(`(prefers-reduced-motion: reduce)`),this.#r.addEventListener(`change`,this.#n),this.#L(),this.#V(),this.#q()}disconnectedCallback(){this.#H(),this.#De(),this.#Q(),this.#r?.removeEventListener(`change`,this.#n),this.#r=null,this.#p=!1}attributeChangedCallback(e){if(this.isConnected){if(e===`activity`||e===`gaze-target`||e===`drowse-delay`){this.#K();return}this.#L(),this.#V(),this.#q()}}get activity(){return Ps(this.getAttribute(`activity`))}set activity(e){e===null?this.removeAttribute(`activity`):this.setAttribute(`activity`,e)}get gazeTarget(){return this.getAttribute(`gaze-target`)}set gazeTarget(e){e===null?this.removeAttribute(`gaze-target`):this.setAttribute(`gaze-target`,e)}get drowseDelay(){return Fs(this.getAttribute(`drowse-delay`))}set drowseDelay(e){this.setAttribute(`drowse-delay`,String(e))}get clock(){return this.#F}set clock(e){if(e===this.#F)return;this.#Q(),this.#F=e;let t=e.now();this.#k=t,this.#w!==null&&(this.#w=t),this.#T=0,this.#E=0,this.#D=0,this.#P=null,this.isConnected&&this.#q()}get expression(){return Object.freeze({activity:this.#d,shape:this.#m,lidTop:this.#_,lidBottom:this.#v,pupilRadius:this.#C,gaze:{...this.#b},brows:this.#y,browsVisible:this.#_e()})}wake(){let e=this.#F.now();this.#w=e,this.#W()||(this.#D=e+350,this.#ce()),this.#Y()}scrutinize(){this.#E=this.#F.now()+xs,this.#Y()}glower(){this.#T=this.#F.now()+ys,this.#Y()}resetExpression(){this.#se();let e=this.#F.now();this.#T=0,this.#E=0,this.#D=0,this.#_=0,this.#v=0,this.#y=Ts,this.#N=js,this.#P=null,this.#S=0,this.#w=this.#d===`awaiting`?e:null,this.#g=!1,this.#h=Is(this.#d),this.#m=this.#h,this.#k=e,this.#I()&&this.isConnected&&(this.#ve(),this.#q())}#I(){return this.hasAttribute(`activity`)||this.#f}#L(){this.#De(),this.#s=[];let e=this.getAttribute(`type`)===`cone`?`cone`:`scoop`,t=sc[e],n=this.getAttribute(`color`)??cc[e],r=this.#I();this.#d=Ps(this.getAttribute(`activity`)),this.#d===`awaiting`&&this.#w===null&&(this.#w=this.#F.now()),this.#p||=(this.#m=this.#h=Is(this.#d),!0);let i=z(`svg`,{class:`glyph`,viewBox:t.vb,preserveAspectRatio:`xMidYMid meet`,style:`--g:${t.glyph}%`},...e===`cone`?pc(n,fc(n,-.38),fc(n,.3)):mc(n,fc(n,-.32)));this.#o=z(`svg`,{class:`eyes-svg`,viewBox:`0 0 200 100`,width:`100%`,height:`100%`,preserveAspectRatio:`xMidYMid meet`},...this.#R(r));let a=yc(t);a.append(this.#o);let o=`--tx:${((.5-t.zoom*((t.eyes.left+t.eyes.width/2)/100))*100).toFixed(2)}%;--ty:${((.5-t.zoom*((t.eyes.top+t.eyes.height/2)/100))*100).toFixed(2)}%;--zoom:${t.zoom}`,s=j(`span`,{class:`icon-inner`,style:o},i,a),c=this.#z(r),l=null;if(c){let e=yc(t);e.append(c),l=j(`span`,{class:`icon-inner brow-layer`,style:o},e)}this.#e.replaceChildren(j(`span`,{class:`avatar`,"aria-hidden":`true`,"data-expressive":r||null},j(`span`,{class:`crop`},s),l)),this.#i=this.#e.querySelector(`.pupil-l`),this.#a=this.#e.querySelector(`.pupil-r`),this.#U()===`static`&&this.#we(),r&&this.#ve()}#R(e){let t=this.#U();if(t===`none`)return[];if(t===`dead`)return[...Ec(Xs.cx),...Ec(Zs.cx)];this.#C=this.#B(),this.#l=Vs(this.#C);let n=Ls(this.#m);return[Xs.cx,Zs.cx].map((r,i)=>{let a=i===0?`l`:`r`,o=t===`static`,s=bc(r,a,o?`eye-frozen`:`eye-blink`),c=o?xc(r,a,n):z(`g`,{class:`eye-body eye-body-${a}`},hc(r,38,n,{class:`socket`,fill:`#fff`,stroke:`#000`,"stroke-width":4}),gc(r,a,this.#C,this.#m));if(s.append(c),!e)return s;let l=`slicc-agent-avatar-lid-${a}`;return s.append(z(`defs`,{},z(`clipPath`,{id:l},z(`rect`,{class:`lid-clip`,x:r-38-3,y:9,width:82,height:82}))),_c(r,`top`),_c(r,`bottom`)),c.setAttribute(`clip-path`,`url(#${l})`),s})}#z(e){let t=this.#U();return!e||t===`none`||t===`dead`?null:z(`svg`,{class:`brows-svg`,viewBox:`0 0 200 100`,width:`100%`,height:`100%`,preserveAspectRatio:`xMidYMid meet`},...[Xs.cx,Zs.cx].map((e,t)=>{let n=t===0?`l`:`r`,r=z(`g`,{class:`brow-group brow-group-${n}`});return r.style.transformBox=`view-box`,r.style.transformOrigin=`${e}px 50px`,r.append(vc(e,n)),r}))}#B(){return 18*zs(Math.max(0,Math.min(100,Number.parseFloat(this.getAttribute(`fill`)??`0`)||0)))}#V(){let e=this.#U()===`open`&&!this.#r?.matches&&(this.#d===null||this.#d===`working`);e&&!this.#u?(this.ownerDocument.addEventListener(`pointermove`,this.#t),this.#u=!0):e||(this.#H(),(this.#d===null||this.#d===`working`)&&this.#Oe())}#H(){this.#u&&=(this.ownerDocument.removeEventListener(`pointermove`,this.#t),!1)}#U(){let e=this.getAttribute(`connection`);if(e!==null&&e!==`connected`)return`static`;let t=this.getAttribute(`eyes`);return t===`dead`||t===`none`||t===`static`?t:`open`}#W(){return this.#r?.matches===!0||this.#U()!==`open`||!this.isConnected||!this.#p}#G(){return this.#U()!==`open`}#K(){let e=Ps(this.getAttribute(`activity`)),t=this.#e.querySelector(`.avatar[data-expressive]`)!==null;e===`awaiting`&&this.#d!==`awaiting`?this.#w=this.#F.now():e!==`awaiting`&&(this.#w=null),this.#P=null,this.#d=e,this.#I()!==t&&this.#L(),this.#V(),this.#q()}#q(){if(!this.#I()||!this.isConnected){this.#Q();return}if(this.#G()||this.#r?.matches){this.#Z(),this.#J(),this.#te();return}this.#ue(),this.#X()}#J(){for(let e of this.#M)this.#F.cancelRepeat(e);this.#M=[]}#Y(){this.#I()||(this.#f=!0,this.isConnected&&this.#L()),this.#q()}#X(){this.#O===null&&(this.#k=this.#F.now(),this.#O=this.#F.requestFrame(this.#$))}#Z(){this.#O!==null&&(this.#F.cancelFrame(this.#O),this.#O=null)}#Q(){this.#Z();for(let e of this.#A)this.#F.cancelDelay(e);this.#A=[],this.#j!==null&&this.#F.cancelDelay(this.#j),this.#j=null;for(let e of this.#M)this.#F.cancelRepeat(e);this.#M=[]}#$=e=>{this.#O=this.#F.requestFrame(this.#$);let t=Math.min(.05,Math.max(0,(e-this.#k)/1e3));this.#k=e,this.#ee(e,t),this.#ve()};#ee(e,t){let n=Is(this.#d);n!==this.#h&&!this.#g&&this.#ae(n),this.#m=Ns(this.#m,this.#h,6,t),this.#_=Ns(this.#_,this.#re(e,!1),5,t),this.#v=Ns(this.#v,this.#ie(e),5,t),this.#pe(e,t)}#te(){let e=this.#F.now();this.#G()||(this.#h=this.#m=Is(this.#d),this.#_=this.#re(e,!0),this.#v=this.#ie(e),this.#me()),this.#ve(),this.#ne(e)}#ne(e){if(this.#j!==null&&this.#F.cancelDelay(this.#j),this.#j=null,this.#G())return;let t=this.#d===`awaiting`&&this.#w!==null?this.#w+this.drowseDelay*1e3:1/0,n=Math.min(this.#T>e?this.#T:1/0,this.#E>e?this.#E:1/0,t>e?t:1/0);Number.isFinite(n)&&(this.#j=this.#F.delay(()=>this.#te(),Math.max(0,n-e)+1))}#re(e,t){let n=this.#T>e?vs:0;if(this.#d!==`awaiting`)return n;let r=this.#w===null?0:(e-this.#w)/1e3,i=this.drowseDelay;return Math.max(n,Gs(t&&r>i?i+12:r,i))}#ie(e){return this.#E>e?bs:0}#ae(e){if(this.#W()){this.#h=this.#m=e;return}this.#g=!0,this.#ce(()=>{this.#h=this.#m=e,this.#g=!1})}#oe(){return[...this.#e.querySelectorAll(`.eye-blink`)]}#se(){for(let e of this.#A)this.#F.cancelDelay(e);this.#A=[];for(let e of this.#oe())e.style.transition=`none`,e.style.transform=`scaleY(1)`}#ce(e){let t=this.#oe();if(t.length===0){e?.();return}t.forEach((t,n)=>{this.#le(t,n===0?e:void 0)})}#le(e,t){e.style.transition=`transform 110ms ease-in`,e.style.transform=`scaleY(${hs})`,this.#A.push(this.#F.delay(()=>{t?.(),this.#d===`thinking`&&!this.#G()&&(this.#y=qs(this.#y)),e.style.transition=`transform 130ms ease-out`,e.style.transform=`scaleY(1)`},120))}#ue(){this.#M.length>0||this.#W()||this.#G()||[gs,_s].forEach((e,t)=>{this.#M.push(this.#F.repeat(()=>{let e=this.#oe()[t];e&&this.hasAttribute(`blink`)&&!this.#G()&&this.#le(e)},e))})}#de(e){return this.#d===`thinking`?{target:this.#fe(e,Es,Ds),rate:9}:this.#d===`idle`?{target:this.#fe(e,Os,ks),rate:As}:this.#d===`awaiting`?{target:this.#ge(e),rate:6}:null}#fe(e,t,n){return e-this.#S>n&&(this.#S=e,this.#x=Js(this.#x,t.length,Math.random)),t[this.#x]??js}#pe(e,t){let n=this.#de(e);n&&(this.#b={x:Ns(this.#b.x,n.target.x,n.rate,t),y:Ns(this.#b.y,n.target.y,n.rate,t)},this.#he())}#me(){this.#d===`awaiting`?(this.#b=this.#ge(this.#F.now()),this.#he()):(this.#d===`thinking`||this.#d===`idle`)&&this.#Oe()}#he(){this.#i&&Dc(this.#i,Xs.cx,this.#b.x,this.#b.y,this.#l),this.#a&&Dc(this.#a,Zs.cx,this.#b.x,this.#b.y,this.#l)}#ge(e){if(this.#P!==null&&e-this.#P<oc)return this.#N;this.#P=e;let t=this.getAttribute(`gaze-target`),n=t?this.ownerDocument.querySelector(t):null,r=this.#o?.getBoundingClientRect();if(!n||!r?.width||!r.height)return this.#N=js,this.#N;let i=n.getBoundingClientRect();return this.#N={x:(i.left+i.width/2-r.left)*(200/r.width),y:(i.top+i.height/2-r.top)*(100/r.height)},this.#N}#_e(){return this.#d===`thinking`}#ve(){let e=this.#F.now(),t=this.#m,n=Ls(t),r=this.#B()*Bs(this.#D-e);this.#C=r,this.#l=Vs(r);for(let[e,i]of[`l`,`r`].entries()){let a=e===0?Xs.cx:Zs.cx;this.#ye(i,n),this.#be(i,a,r,t),this.#xe(i,a,t),this.#Ce(i)}}#ye(e,t){for(let n of this.#e.querySelectorAll(`.eye-body-${e} .socket, .eye-body-${e} .eye-outline, .eye-body-${e} .noise-clip`))dc(n,`rx`,t)}#be(e,t,n,r){let i=this.#e.querySelector(`.pupil-${e} rect`);if(!i)return;dc(i,`x`,t-n),dc(i,`y`,50-n),dc(i,`width`,n*2),dc(i,`height`,n*2),dc(i,`rx`,Rs(n,r));let a=this.#e.querySelector(`.pupil-${e} circle`);dc(a,`cx`,t-n*.3),dc(a,`cy`,50-n*.35),dc(a,`r`,n*.4)}#xe(e,t,n){let r=this.#e.querySelector(`.eye-${e} .lid-clip`);if(!r)return;let i=Hs(this.#_),a=Us(this.#v);dc(r,`y`,i),dc(r,`height`,Math.max(0,a-i)),this.#Se(`.eye-${e} .lid-top`,t,i,n,this.#_),this.#Se(`.eye-${e} .lid-bottom`,t,a,n,this.#v)}#Se(e,t,n,r,i){let a=this.#e.querySelector(e);if(!a)return;let o=Ws(n,r);dc(a,`x1`,t-o),dc(a,`x2`,t+o),dc(a,`y1`,n),dc(a,`y2`,n),uc(a,`display`,i>.02?`inline`:`none`)}#Ce(e){let t=this.#e.querySelector(`.brow-${e}`);if(!t)return;let n=this.#_e(),r=e===`l`?this.#y.left:this.#y.right;uc(t,`opacity`,n?`1`:`0`),t.style.transform=n?`translateY(${r.raise.toFixed(2)}px) rotate(${r.tilt.toFixed(2)}deg)`:`translateY(6px)`}#we(){if(this.#De(),this.#s.length===0&&this.#Te(),this.#r?.matches){this.#Ee(null);return}this.#Ee(Tc()),this.#c=window.setInterval(()=>{this.#Ee(Tc())},1e3/$s)}#Te(){let e=this.#o?.getBoundingClientRect(),t=e?Math.min(e.width/200,e.height/100):0,n=Qs/(t>0?t:.25);this.#s=[...this.#e.querySelectorAll(`.noise`)].map((e,t)=>{let r=t===0?Xs.cx:Zs.cx,i=[],a=r-Xs.r,o=r+Xs.r,s=50-Xs.r,c=50+Xs.r;for(let e=s;e<c;e+=n)for(let t=a;t<o;t+=n){let r=z(`rect`,{x:t,y:e,width:Math.min(n,o-t),height:Math.min(n,c-e),opacity:ec});i.push(r)}return e.replaceChildren(...i),i})}#Ee(e){this.#s.forEach((t,n)=>{let r=e===null?Cc(n):wc(n,e),i=r===0?nc:r;(t[0]?.parentElement)?.setAttribute(`data-seed`,String(i));for(let e of t){i=Sc(i);let t=`${tc[i%tc.length]*100}%`;e.setAttribute(`fill`,`rgb(${t} ${t} ${t})`)}})}#De(){this.#c!==null&&(window.clearInterval(this.#c),this.#c=null)}#Oe(){this.#i?.setAttribute(`transform`,`translate(0,0)`),this.#a?.setAttribute(`transform`,`translate(0,0)`)}#ke(e){if(!this.#o||!this.#i||!this.#a)return;let t=this.#o.getBoundingClientRect();!t.width||!t.height||(this.#b={x:(e.clientX-t.left)*(200/t.width),y:(e.clientY-t.top)*(100/t.height)},this.#he())}});var kc=M(`
|
|
5019
5019
|
:host{display:inline-block;}
|
|
5020
5020
|
.switcher-more{position:relative;}
|
|
5021
5021
|
.morebtn{display:none;font:inherit;font-size:13px;font-weight:600;color:var(--txt-2);background:transparent;border:1px solid var(--line);border-radius:9999px;height:var(--ctl-h,30px);padding:0 11px;cursor:pointer;line-height:1;align-items:center;}
|
|
@@ -5047,14 +5047,14 @@ iframe {
|
|
|
5047
5047
|
@keyframes scoopReveal{from{opacity:0;transform:translateY(-4px);}to{opacity:1;transform:none;}}
|
|
5048
5048
|
@keyframes scoopArc{from{transform:rotate(-90deg);}to{transform:rotate(270deg);}}
|
|
5049
5049
|
@media (prefers-reduced-motion:reduce){.popup-row{animation:none;}.popup-row[data-state="working"] .glyph-arc{animation:none;transform:rotate(-90deg);}}
|
|
5050
|
-
`),
|
|
5051
|
-
.slicc-agent-tabs{display:flex;align-items:center;gap:${
|
|
5050
|
+
`),Ac=[4,5,3,7,1,6,2,0,8],jc=`http://www.w3.org/2000/svg`,Mc=5,Nc=2*Math.PI*Mc;function Pc(e,t,...n){let r=document.createElementNS(jc,e);for(let[e,n]of Object.entries(t))r.setAttribute(e,String(n));return r.append(...n),r}function Fc(e){return typeof e==`number`&&Number.isFinite(e)?Math.max(0,Math.min(100,e)):0}function Ic(e){return e.state??`idle`}function Lc(e){return(90+Fc(e)*2.7)/360*Nc}function Rc(e,t){let n=[];return e===`initializing`?n.push(Pc(`circle`,{class:`initializing-ring`,cx:7,cy:7,r:Mc,"stroke-width":1.7})):n.push(Pc(`circle`,{class:`glyph-base`,cx:7,cy:7,r:Mc,"stroke-width":1.5})),(e===`working`||e===`idle`)&&n.push(Pc(`circle`,{class:`glyph-arc`,cx:7,cy:7,r:Mc,"stroke-width":2,"stroke-dasharray":`${Lc(t).toFixed(3)} ${Nc.toFixed(3)}`,"stroke-dashoffset":0})),e===`working`&&n.push(Pc(`circle`,{class:`glyph-pin`,cx:7,cy:7,r:1.25})),e===`broken`&&n.push(Pc(`line`,{class:`broken-x`,x1:4.8,y1:4.8,x2:9.2,y2:9.2,"stroke-width":1.8}),Pc(`line`,{class:`broken-x`,x1:9.2,y1:4.8,x2:4.8,y2:9.2,"stroke-width":1.8})),Pc(`svg`,{class:`status-glyph`,viewBox:`0 0 14 14`,width:14,height:14,"aria-hidden":`true`},...n)}function zc(e){return e.state===`broken`?`broken`:(e.fill??0)>=75?`near-limit`:e.state===`working`?`working`:`idle`}function Bc(e){return e===`broken`?3:e===`near-limit`?2:+(e===`working`)}function Vc(e){let t=e.reduce((e,t)=>{let n=zc(t);return Bc(n)>Bc(e)?n:e},`idle`),n=t===`near-limit`?`near context limit`:t;return`${e.length} hidden scoop${e.length===1?``:`s`}; worst state ${n}`}function Hc(e,t=!1){if(t)return j(`span`,{class:`overflow-grid-cell overflow-grid-cell--plus`,"aria-hidden":`true`},j(`span`,{class:`overflow-plus-bar overflow-plus-bar--horizontal`}),j(`span`,{class:`overflow-plus-bar overflow-plus-bar--vertical`}));let n={class:`overflow-grid-cell`,"aria-hidden":`true`};return e&&(n[`data-dot-state`]=e),j(`span`,n)}function Uc(e){let t=e.map((e,t)=>({order:t,state:zc(e)})).sort((e,t)=>Bc(t.state)-Bc(e.state)||e.order-t.order).slice(0,e.length>9?8:9),n=Array.from({length:Ac.length},()=>Hc());return t.forEach((e,t)=>{n[Ac[t]]=Hc(e.state)}),e.length>9&&(n[Ac.at(-1)]=Hc(void 0,!0)),j(`span`,{class:`overflow-grid`,role:`img`,"aria-label":Vc(e),"data-hidden-count":String(e.length)},...n)}A(`slicc-scoop-overflow`,class extends HTMLElement{static observedAttributes=[`open`];#e;#t=[];#n;#r;#i;#a;#o=e=>{this.open&&!this.contains(e.target)&&this.close()};#s=e=>{!this.open||e.key!==`Escape`||(e.preventDefault(),this.close(),this.#r.focus())};constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[kc]}connectedCallback(){this.#c()}disconnectedCallback(){document.removeEventListener(`click`,this.#o),document.removeEventListener(`keydown`,this.#s)}attributeChangedCallback(e){e===`open`&&this.#n&&this.#u()}get items(){return this.#t}set items(e){this.#t=Array.isArray(e)?e:[],this.isConnected&&this.#l()}get count(){return this.#t.length}get hasOverflow(){return this.#t.length>0}get open(){return this.hasAttribute(`open`)}set open(e){this.toggleAttribute(`open`,e)}show(){this.open||=!0}close(){this.open&&=!1}toggle(){this.open=!this.open}#c(){this.#i=j(`slot`,{name:`more`},Uc(this.#t)),this.#r=j(`button`,{class:`morebtn`,part:`more`,type:`button`,title:`More scoops`,"aria-haspopup":`true`,"aria-expanded":`false`},this.#i),this.#a=j(`div`,{class:`pop`,part:`pop`,role:`menu`}),this.#n=j(`div`,{class:`switcher-more`,part:`wrap`},this.#r,this.#a),this.#r.addEventListener(`click`,e=>{e.stopPropagation(),this.toggle()}),this.#e.replaceChildren(this.#n),this.#l(),this.#u()}#l(){let e=this.#t.length;e>0?this.setAttribute(`count`,String(e)):this.removeAttribute(`count`),this.#n.classList.toggle(`has-overflow`,e>0),this.#r.setAttribute(`aria-haspopup`,`true`);let t=Vc(this.#t);if(this.#r.setAttribute(`aria-label`,`${t}. Show hidden scoops`),this.#i.replaceChildren(Uc(this.#t)),e===0){this.#a.replaceChildren(j(`slot`,{name:`empty`})),this.open&&this.close();return}let n=[];this.#t.forEach((e,t)=>{let r=e.id,i=e.label??e.id,a=Ic(e),o=Fc(e.fill),s=j(`button`,{class:`popup-row`,part:`row`,type:`button`,role:`menuitem`,"aria-label":`${i}: ${a}, ${o}% context fill`,"data-state":a,"data-k":r,style:`--hue:${e.color??`var(--rose)`};--i:${t}`},Rc(a,o),j(`span`,{class:`popup-label`},i),j(`span`,{class:`popup-state`},`${a} · ${o}%`));s.addEventListener(`click`,()=>{let e=s.dataset.k??``,t=this.#t.find(t=>t.id===e);this.#d(e,t?.label??e)}),n.push(s)}),this.#a.replaceChildren(...n)}#u(){let e=this.open;this.#n.classList.toggle(`open`,e),this.#r.setAttribute(`aria-expanded`,e?`true`:`false`),document.removeEventListener(`click`,this.#o),document.removeEventListener(`keydown`,this.#s),e&&(document.addEventListener(`click`,this.#o),document.addEventListener(`keydown`,this.#s))}#d(e,t){this.dispatchEvent(new CustomEvent(`slicc-scoop-select`,{detail:{id:e,key:e,label:t},bubbles:!0,composed:!0})),this.close()}});var B=`slicc-agent-tabs`,Wc=`${B}-style`,Gc=`http://www.w3.org/2000/svg`,Kc=5,qc=2*Math.PI*Kc,Jc=26,Yc=8,Xc=6,Zc=39,Qc=`sliccy`,$c=14,el=5,tl=16,nl=4,rl=65,il={cone:`var(--waffle)`,researcher:`var(--cyan)`,designer:`var(--violet)`,tester:`var(--amber)`,triage:`var(--green)`},al=`
|
|
5051
|
+
.slicc-agent-tabs{display:flex;align-items:center;gap:${Yc}px;min-width:0;overflow:visible;color:var(--ink);font-family:var(--ui);}
|
|
5052
5052
|
.slicc-agent-tabs *{box-sizing:border-box;}
|
|
5053
|
-
.slicc-agent-tabs__focus-avatar{display:block;flex:0 0 ${
|
|
5053
|
+
.slicc-agent-tabs__focus-avatar{display:block;flex:0 0 ${Jc}px;width:${Jc}px;height:${Jc}px;pointer-events:none;}
|
|
5054
5054
|
.slicc-agent-tabs__track-frame{position:relative;flex:0 1 auto;min-width:0;height:var(--ctl-h,30px);overflow:visible;border:1px solid var(--line);border-radius:9px;background:var(--ghost);}
|
|
5055
5055
|
.slicc-agent-tabs__track{display:flex;align-items:center;min-width:0;height:100%;padding:2px;overflow:hidden;}
|
|
5056
5056
|
.slicc-agent-tabs.has-overflow .slicc-agent-tabs__track{padding-right:41px;}
|
|
5057
|
-
.slicc-agent-tabs__segment{position:relative;display:inline-flex;flex:0 1 auto;align-items:center;justify-content:center;gap:${
|
|
5057
|
+
.slicc-agent-tabs__segment{position:relative;display:inline-flex;flex:0 1 auto;align-items:center;justify-content:center;gap:${el}px;width:max-content;min-width:var(--slicc-agent-tabs-segment-floor,${rl}px);max-width:160px;height:24px;padding:0 8px;overflow:hidden;color:var(--txt-2);font:500 11px/1 var(--ui);white-space:nowrap;border:0;border-radius:6px;background:transparent;cursor:pointer;}
|
|
5058
5058
|
.slicc-agent-tabs__segment:hover{color:var(--ink);}
|
|
5059
5059
|
.slicc-agent-tabs__segment[aria-selected='true']{color:var(--ink);background:var(--canvas);box-shadow:0 1px 3px color-mix(in srgb,var(--ink) 12%,transparent);}
|
|
5060
5060
|
.slicc-agent-tabs__segment.hide{display:none;}
|
|
@@ -5083,7 +5083,7 @@ iframe {
|
|
|
5083
5083
|
.slicc-agent-tabs slicc-scoop-overflow::part(pop){right:0;left:auto;}
|
|
5084
5084
|
@keyframes slicc-agent-tabs-arc{from{transform:rotate(-90deg);}to{transform:rotate(270deg);}}
|
|
5085
5085
|
@media (prefers-reduced-motion:reduce){.slicc-agent-tabs__glyph-arc{animation:none;transform:rotate(-90deg);}.slicc-agent-tabs__glyph-glow{transition:none;}}
|
|
5086
|
-
`;function
|
|
5086
|
+
`;function ol(e){if(e.getElementById(Wc))return;let t=e.createElement(`style`);t.id=Wc,t.textContent=al,(e.head??e.documentElement).append(t)}function sl(e,t,...n){let r=document.createElementNS(Gc,e);for(let[e,n]of Object.entries(t))r.setAttribute(e,String(n));return r.append(...n),r}function cl(e){return typeof e==`number`&&Number.isFinite(e)?Math.max(0,Math.min(100,e)):0}function ll(e){let t=e.ownerDocument.createElement(`canvas`).getContext(`2d`),n=e.ownerDocument.defaultView?.getComputedStyle(e);return!t||!n?rl:(t.font=n.font,Math.ceil(t.measureText(Qc).width+$c+el+tl)+nl)}function ul(e){return(90+cl(e)*2.7)/360*qc}function dl(e,t){return t===`working`?e.phase===`tool`?`tool`:`thinking`:null}function fl(e,t){return t===`working`?dl(e,t)===`tool`?`working`:`thinking`:t===`idle`?e.awaiting?`awaiting`:`idle`:null}function pl(e,t){return e.state?e.state:e.eyes===`dead`?`broken`:t===e.key?`working`:`idle`}function ml(e){return e.type===`cone`||e.key===`cone`?`cone`:`scoop`}function hl(e){return e.eyes??`open`}function gl(e){return il[e.key]??e.color??`var(--rose)`}function _l(e){let t=[sl(`circle`,{class:`${B}__glyph-glow`,cx:7,cy:7,r:Kc,"stroke-width":1.5}),sl(`circle`,{class:`${B}__glyph-base`,cx:7,cy:7,r:Kc,"stroke-width":1.5}),sl(`circle`,{class:`${B}__glyph-arc`,cx:7,cy:7,r:Kc,"stroke-width":2,"stroke-dasharray":`${ul(cl(e.fill)).toFixed(3)} ${qc.toFixed(3)}`,"stroke-dashoffset":0}),sl(`circle`,{class:`${B}__glyph-pin`,cx:7,cy:7,r:1.25}),sl(`rect`,{class:`${B}__glyph-pin-square`,x:5.5,y:5.5,width:3,height:3,rx:.15}),sl(`line`,{class:`${B}__broken-x`,x1:4.8,y1:4.8,x2:9.2,y2:9.2,"stroke-width":1.8}),sl(`line`,{class:`${B}__broken-x`,x1:9.2,y1:4.8,x2:4.8,y2:9.2,"stroke-width":1.8}),sl(`circle`,{class:`${B}__initializing-ring`,cx:7,cy:7,r:Kc,"stroke-width":1.7})];return sl(`svg`,{class:`${B}__status-glyph`,viewBox:`0 0 14 14`,width:14,height:14,"aria-hidden":`true`},...t)}A(`slicc-agent-tabs`,class extends HTMLElement{static observedAttributes=[`active`,`attention`,`connection`,`gaze-target`,`drowse-delay`];#e=[];#t=null;#n=null;#r=null;#i=null;#a=null;#o=null;#s=!1;#c=null;#l=!1;#u=null;#d=e=>this.#w(e);#f=e=>this.#T(e);connectedCallback(){ol(this.ownerDocument),this.classList.add(B),this.setAttribute(`part`,`row`),this.#l||=!0,this.addEventListener(`click`,this.#d),this.addEventListener(`keydown`,this.#f),this.#m(),this.#k(),requestAnimationFrame(()=>this.reflow())}disconnectedCallback(){this.#o?.disconnect(),this.#o=null,this.#c!==null&&cancelAnimationFrame(this.#c),this.#c=null,this.removeEventListener(`click`,this.#d),this.removeEventListener(`keydown`,this.#f)}attributeChangedCallback(e,t,n){!this.#l||!this.isConnected||(this.#m(),this.reflow(),e===`active`&&n!==null&&n!==t&&this.#E(n))}get scoops(){return this.#e.map(e=>({...e}))}set scoops(e){let t=new Map;if(Array.isArray(e))for(let n of e)t.has(n.key)||t.set(n.key,{...n});this.#e=[...t.values()],this.#l&&this.isConnected&&(this.#m(),this.reflow())}get attention(){return this.getAttribute(`attention`)}set attention(e){e==null?this.removeAttribute(`attention`):this.setAttribute(`attention`,e)}get active(){return this.getAttribute(`active`)}set active(e){e==null?this.removeAttribute(`active`):this.setAttribute(`active`,e)}get connection(){return this.getAttribute(`connection`)===`disconnected`?`disconnected`:`connected`}set connection(e){this.setAttribute(`connection`,e)}get gazeTarget(){return this.getAttribute(`gaze-target`)}set gazeTarget(e){e==null?this.removeAttribute(`gaze-target`):this.setAttribute(`gaze-target`,e)}get arrowKeys(){return this.getAttribute(`arrow-keys`)===`off`?`off`:`on`}set arrowKeys(e){e===`off`?this.setAttribute(`arrow-keys`,`off`):this.removeAttribute(`arrow-keys`)}get drowseDelay(){let e=this.getAttribute(`drowse-delay`);if(e===null)return null;let t=Number.parseFloat(e);return Number.isFinite(t)?t:null}set drowseDelay(e){e==null?this.removeAttribute(`drowse-delay`):this.setAttribute(`drowse-delay`,String(e))}scrutinize(){this.#t?.scrutinize()}glower(){this.#t?.glower()}wake(){this.#t?.wake()}select(e){this.active=e;let t=this.#e.find(t=>t.key===e)?.label??e;this.dispatchEvent(new CustomEvent(`slicc-scoop-select`,{detail:{id:e,key:e,label:t},bubbles:!0,composed:!0}))}reflow(){if(!(!this.isConnected||this.#s)){this.#s=!0;try{this.#p()}finally{this.#s=!1}}}#p(){let e=[...this.querySelectorAll(`.${B}__segment`)];for(let t of e)t.classList.remove(`hide`);if(this.classList.remove(`has-overflow`),e.length===0){this.#C([]);return}this.#u===null&&(this.#u=ll(e[0]),this.style.setProperty(`--slicc-agent-tabs-segment-floor`,`${this.#u}px`));let t=this.clientWidth;if(t<=0){this.#C([]),requestAnimationFrame(()=>{this.isConnected&&this.clientWidth>0&&this.reflow()});return}let n=Math.max(0,t-Jc-Yc-Xc),r=e.map(e=>e.offsetWidth),i=r.reduce((e,t)=>e+t,0),a=e.length>1&&i>n+1;this.classList.toggle(`has-overflow`,a);let o=a?e.map(e=>e.offsetWidth):r,s=Math.max(0,n-(a?Zc:0));if(!a){this.#C([]);return}let c=[],l=0;e.forEach((e,t)=>{t===0||c.length===0&&l+o[t]<=s?l+=o[t]:(e.classList.add(`hide`),c.push(e))}),this.#C(c)}#m(){let e=this.#D(),t=this.#e.find(e=>e.key===this.active)??this.#e.at(0)??null;this.#h(),this.#v(t),this.#x(t?.key??null),e!=null&&!this.#e.some(t=>t.key===e)&&this.#O(t?.key??null)?.focus()}#h(){if(this.#r&&this.#i&&this.#a&&this.contains(this.#i))return;this.#r=j(`div`,{class:`${B}__track`,part:`track`,role:`tablist`,"aria-label":`Agents`});let e=this.ownerDocument.createElement(`slicc-scoop-overflow`);e.setAttribute(`part`,`overflow`),e.addEventListener(`slicc-scoop-select`,e=>{let t=e.detail?.id;typeof t==`string`&&(e.stopPropagation(),this.select(t))}),this.#a=e,this.#i=j(`div`,{class:`${B}__track-frame`,part:`track-frame`},this.#r,e),this.replaceChildren(this.#i)}#g(e){let t=j(`slicc-agent-avatar`,{class:`${B}__focus-avatar`,part:`avatar`,role:`img`});return this.#_(t,e),t}#_(e,t){let n=pl(t,this.attention);this.#S(e,`type`,ml(t)),this.#S(e,`color`,t.color??null),this.#S(e,`eyes`,hl(t)),this.#S(e,`connection`,this.getAttribute(`connection`)),this.#S(e,`fill`,String(Math.round(cl(t.fill)))),this.#S(e,`blink`,n===`working`),this.#S(e,`activity`,fl(t,n)),this.#S(e,`gaze-target`,this.getAttribute(`gaze-target`)),this.#S(e,`drowse-delay`,this.getAttribute(`drowse-delay`)),this.#S(e,`aria-label`,`${t.label??t.key} focused agent`),e.style.setProperty(`--slicc-agent-tabs-hue`,gl(t))}#v(e){if(!e){this.#t?.remove(),this.#t=null,this.#n=null;return}let t=this.#t??this.#g(e);this.#t=t;let n=this.#n!==null&&this.#n!==e.key;this.#n=e.key,this.#_(t,e),n&&t.resetExpression(),(t.parentElement!==this||t.nextElementSibling!==this.#i)&&this.insertBefore(t,this.#i)}#y(e,t){let n=j(`button`,{part:`segment`,type:`button`,role:`tab`},_l(e),j(`span`,{class:`${B}__label`},e.label??e.key));return this.#b(n,e,t),n}#b(e,t,n){let r=pl(t,this.attention),i=dl(t,r),a=cl(t.fill),o=this.attention===t.key;e.className=`${B}__segment${t.ephemeral?` ephemeral`:``}`,e.setAttribute(`aria-selected`,String(t.key===n)),e.tabIndex=t.key===n?0:-1;let s=i===`tool`?` (running a tool)`:i?` (thinking)`:``;e.setAttribute(`aria-label`,`${t.label??t.key}: ${r}${s}, ${Math.round(a)}% context fill${o?`, spoke most recently`:``}`),e.dataset.k=t.key,e.dataset.state=r,this.#S(e,`data-phase`,i),this.#S(e,`data-attention`,o?`true`:null),e.style.setProperty(`--slicc-agent-tabs-hue`,gl(t));let c=e.querySelector(`.${B}__label`);c&&(c.textContent=t.label??t.key),e.querySelector(`.${B}__glyph-arc`)?.setAttribute(`stroke-dasharray`,`${ul(a).toFixed(3)} ${qc.toFixed(3)}`)}#x(e){if(!this.#r)return;let t=new Map;for(let e of this.#r.querySelectorAll(`:scope > .${B}__segment`)){let n=e.dataset.k??``;t.has(n)?e.remove():t.set(n,e)}let n=this.#e.map(n=>{let r=t.get(n.key)??this.#y(n,e);return t.delete(n.key),this.#b(r,n,e),r});for(let e of t.values())e.remove();n.forEach((e,t)=>{let n=this.#r?.children.item(t)??null;n!==e&&this.#r?.insertBefore(e,n)})}#S(e,t,n){n===null||n===!1?e.hasAttribute(t)&&e.removeAttribute(t):n===!0?e.hasAttribute(t)||e.setAttribute(t,``):e.getAttribute(t)!==n&&e.setAttribute(t,n)}#C(e){if(!this.#a)return;let t=e.map(e=>{let t=e.dataset.k??``,n=this.#e.find(e=>e.key===t)??{key:t};return{id:t,label:n.label??t,type:ml(n),color:n.color,eyes:hl(n),state:pl(n,this.attention),fill:cl(n.fill)}});this.#a.items=t}#w(e){let t=e.target?.closest(`.${B}__segment`);t&&this.contains(t)&&t.dataset.k&&this.select(t.dataset.k)}#T(e){let t=e.target?.closest(`.${B}__segment`);if(!t||!this.contains(t))return;if(e.key===`Enter`||e.key===` `){if(!t.dataset.k)return;e.preventDefault(),this.select(t.dataset.k);return}if((e.key===`ArrowLeft`||e.key===`ArrowRight`)&&this.arrowKeys===`off`)return;let n=[...this.querySelectorAll(`.${B}__segment:not(.hide)`)].filter(e=>!e.disabled),r=n.indexOf(t);if(r<0||n.length===0)return;let i;if(e.key===`ArrowLeft`)i=n[(r-1+n.length)%n.length];else if(e.key===`ArrowRight`)i=n[(r+1)%n.length];else if(e.key===`Home`)i=n[0];else if(e.key===`End`)i=n.at(-1);else return;e.preventDefault(),i?.focus()}#E(e){let t=this.#D();t!==null&&t!==e&&this.#O(e)?.focus()}#D(){let e=this.ownerDocument.activeElement;return!(e instanceof Element)||!this.contains(e)?null:e.closest(`.${B}__segment`)?.dataset.k??null}#O(e){return e==null?null:[...this.querySelectorAll(`.${B}__segment`)].find(t=>t.dataset.k===e)??null}#k(){this.#o||typeof ResizeObserver>`u`||(this.#o=new ResizeObserver(()=>{this.#c===null&&(this.#c=requestAnimationFrame(()=>{this.#c=null,this.reflow()}))}),this.#o.observe(this),this.parentElement&&this.#o.observe(this.parentElement))}});var vl=`/**
|
|
5087
5087
|
* SLICC design tokens — lifted verbatim from the prototype
|
|
5088
5088
|
* (proto/StellarRubySwift.html :root + body.dark). Light is the default; dark is
|
|
5089
5089
|
* opt-in. Per project decision the prototype's token vocabulary and light-default
|
|
@@ -5147,7 +5147,7 @@ iframe {
|
|
|
5147
5147
|
--shaderbg: #171410;
|
|
5148
5148
|
--shadow-pane: rgba(0, 0, 0, 0.35) 0 8px 26px -10px;
|
|
5149
5149
|
}
|
|
5150
|
-
`,
|
|
5150
|
+
`,yl=`slicc-tokens`;function bl(e=document){if(e.getElementById(yl))return;let t=e.createElement(`style`);t.id=yl,t.textContent=vl,(e.head??e.documentElement).appendChild(t)}function xl(e,t=document.body){t.classList.toggle(`dark`,e===`dark`),t.setAttribute(`data-theme`,e)}function Sl(e=document.body){if(typeof window>`u`||typeof window.matchMedia!=`function`)return()=>{};let t=window.matchMedia(`(prefers-color-scheme: dark)`),n=()=>xl(t.matches?`dark`:`light`,e);return n(),t.addEventListener(`change`,n),()=>t.removeEventListener(`change`,n)}var Cl=M(`
|
|
5151
5151
|
:host { display: inline-flex; flex: 0 0 auto; }
|
|
5152
5152
|
.themetgl {
|
|
5153
5153
|
font: inherit; font-family: var(--ui); font-size: 14px; line-height: 1;
|
|
@@ -5159,7 +5159,7 @@ iframe {
|
|
|
5159
5159
|
}
|
|
5160
5160
|
.themetgl:hover { background: color-mix(in srgb, var(--ink) 8%, var(--ghost)); }
|
|
5161
5161
|
.themetgl svg { display: block; }
|
|
5162
|
-
`),
|
|
5162
|
+
`),wl=16,Tl={light:`moon`,dark:`sun`},El={light:`Switch to dark mode`,dark:`Switch to light mode`};A(`slicc-theme-toggle`,class extends HTMLElement{static observedAttributes=[`theme`];#e;#t=null;#n=!1;constructor(){super(),this.#e=this.attachShadow({mode:`open`}),this.#e.adoptedStyleSheets=[Cl];let e=j(`button`,{class:`themetgl`,part:`button`,type:`button`,"aria-pressed":`false`},j(`slot`,{name:`glyph-light`},n(Tl.light,{size:wl})),j(`slot`,{name:`glyph-dark`,hidden:!0},n(Tl.dark,{size:wl})));this.#e.replaceChildren(e),this.#t=e}connectedCallback(){this.#t?.addEventListener(`click`,this.#i),this.#a(this.theme??`light`,{silent:!0})}disconnectedCallback(){this.#t?.removeEventListener(`click`,this.#i)}attributeChangedCallback(e,t,n){e===`theme`&&t!==n&&(this.#n||this.isConnected&&this.#a(this.#r(n)??`light`,{silent:!0}))}get theme(){return this.#r(this.getAttribute(`theme`))}set theme(e){this.#a(e===`dark`?`dark`:`light`,{silent:!0})}get pressed(){return this.theme===`dark`}#r(e){return e===`dark`?`dark`:e===`light`?`light`:null}#i=()=>{this.#a(this.theme===`dark`?`light`:`dark`)};#a(e,t={}){this.#n=!0;try{if(xl(e),this.getAttribute(`theme`)!==e&&this.setAttribute(`theme`,e),this.#t){this.#t.setAttribute(`aria-pressed`,e===`dark`?`true`:`false`),this.#t.title=El[e];let t=this.#e.querySelector(`slot[name="glyph-light"]`),n=this.#e.querySelector(`slot[name="glyph-dark"]`);t?.toggleAttribute(`hidden`,e===`dark`),n?.toggleAttribute(`hidden`,e===`light`)}for(let t of document.querySelectorAll(`slicc-add-menu`))t.setAttribute(`theme`,e)}finally{this.#n=!1}t.silent||this.dispatchEvent(new CustomEvent(`slicc-theme-change`,{detail:{theme:e},bubbles:!0,composed:!0}))}}),A(`slicc-theme`,class extends HTMLElement{static observedAttributes=[`theme`];connectedCallback(){bl(this.ownerDocument),this.classList.add(`slicc-theme`),this.#e()}attributeChangedCallback(e,t,n){e===`theme`&&t!==n&&this.isConnected&&this.#e()}get theme(){return this.getAttribute(`theme`)===`dark`?`dark`:`light`}set theme(e){this.setAttribute(`theme`,e===`dark`?`dark`:`light`)}#e(){let e=this.theme;xl(e,this),this.dispatchEvent(new CustomEvent(`slicc-theme-change`,{detail:{theme:e},bubbles:!0,composed:!0}))}});var Dl=`
|
|
5163
5163
|
slicc-dock-tree {
|
|
5164
5164
|
display: block;
|
|
5165
5165
|
/* Fill the parent shell's flex column. Without this the host collapses to
|
|
@@ -5382,7 +5382,7 @@ slicc-dock-tree .dock-tree__preview {
|
|
|
5382
5382
|
slicc-dock-tree .dock-tree__preview--active {
|
|
5383
5383
|
display: block;
|
|
5384
5384
|
}
|
|
5385
|
-
`,mu=`slicc-dock-tree-style`;function hu(e){if(e.getElementById(mu))return;let t=e.createElement(`style`);t.id=mu,t.textContent=pu,(e.head??e.documentElement).appendChild(t)}var gu=`slicc-surface`,_u=`chat`,vu=`sprinkle:`;function yu(e){return typeof e==`string`&&e.trim().toLowerCase()===`false`}function bu(e){return e===`chat`?`Chat`:e.startsWith(vu)?e.slice(9):e}var xu=[`top`,`left`,`middle`,`right`,`bottom`],Su=[`left`,`middle`,`right`],Cu=[`top`,`center`,`bottom`],wu=.02;function Tu(){return{zones:{top:null,left:null,middle:null,right:null,bottom:null},rowFr:{top:1,center:1,bottom:1},colFr:{left:1,middle:1,right:1}}}function Eu(e){return JSON.parse(JSON.stringify(e))}function Du(e,t){if(e.type===`leaf`){t.push(e.surfaceId);return}for(let n of e.children)Du(n,t)}function Ou(e,t){if(e.type===`leaf`)return e.surfaceId===t?e:null;for(let n of e.children){let e=Ou(n,t);if(e)return e}return null}function ku(e,t,n){if(n)return!0;function r(e,n){let i=n||e.locked===!0;if(e===t)return i;if(e.type!==`split`)return null;for(let t of e.children){let e=r(t,i);if(e!=null)return e}return null}return r(e,!1)??!1}function Au(e){return e.locked===!0||e.type===`split`&&e.children.some(Au)}function ju(e){return e.getAttribute(`surface-id`)||e.getAttribute(`data-s`)||e.id||null}function Mu(e){e.style.position=`relative`,e.style.inset=`auto`,e.style.display=`flex`,e.style.flex=`1 1 auto`,e.style.minWidth=`0`,e.style.minHeight=`0`}function Nu(e){e.style.removeProperty(`position`),e.style.removeProperty(`inset`),e.style.removeProperty(`flex`),e.style.removeProperty(`min-width`),e.style.removeProperty(`min-height`),e.style.display=`none`}function Pu(e,t){return{type:`split`,dir:e,children:t,sizes:t.map(()=>1)}}function Fu(e,t,n){e.type===`split`&&e.children.forEach((r,i)=>{r===t?n(e,i):Fu(r,t,n)})}function Iu(e,t){if(e.type!==`split`)return null;for(let n=0;n<e.children.length;n++){let r=e.children[n];if(r===t)return{parent:e,index:n};let i=Iu(r,t);if(i)return i}return null}function Lu(e){if(!e)return null;if(e.type!==`split`)return e;e.children=e.children.map(Lu).filter(e=>e!=null);let t=[],n=[];return e.children.forEach((r,i)=>{r.type===`split`&&r.dir===e.dir?r.children.forEach((a,o)=>{t.push(a),n.push((e.sizes[i]||1)*(r.sizes[o]||1))}):(t.push(r),n.push(e.sizes[i]||1))}),e.children=t,e.sizes=n,e.children.length===0?null:e.children.length===1?e.children[0]:e}function Ru(e,t,n){let r=e[t];if(r){if(r===n){e[t]=null;return}Fu(r,n,(e,t)=>{e.children.splice(t,1),e.sizes.splice(t,1)}),e[t]=Lu(r)}}function zu(e,t,n,r){if(e[t]===n){e[t]=r;return}let i=e[t];i&&Fu(i,n,(e,t)=>{e.children[t]=r})}function Bu(e,t,n){let r=t.reduce((e,t)=>e+t,0)-e;if(r<=0)return null;let i=Math.min(.98,Math.max(wu,n));return i*r/(1-i)}function Vu(e,t,n){let r=(t-e.left)/e.width,i=(n-e.top)/e.height;if(r>.34&&r<.66&&i>.34&&i<.66)return`center`;let a={n:i,s:1-i,w:r,e:1-r},o=Object.entries(a);return o.sort((e,t)=>e[1]-t[1]),o[0][0]}function Hu(e){let t=document.createElement(`div`);return t.className=`dock-tree__divider dock-tree__divider--${e}`,t}function Uu(){let e=document.createElement(`div`);return e.className=`dock-tree__root`,e}function Wu(){let e=document.createElement(`div`);return e.className=`dock-tree__parking`,e.hidden=!0,e}function Gu(){let e=document.createElement(`div`);return e.className=`dock-tree__ghost`,e}function Ku(){let e=document.createElement(`div`);return e.className=`dock-tree__preview`,e}N(`slicc-dock-tree`,class extends HTMLElement{static observedAttributes=[`tiles-movable`];#e=Tu();#t=!1;#n=!1;#r=new Set;#i=null;#a=null;#o=new WeakMap;#s=new Set;#c=Uu();#l=Wu();#u=Gu();#d=Ku();#f=new MutationObserver(()=>this.#x());connectedCallback(){hu(this.ownerDocument),this.#n=!0,this.#c.parentElement!==this&&this.append(this.#c),this.#l.parentElement!==this&&this.append(this.#l),this.#u.parentElement!==this&&this.append(this.#u),this.#d.parentElement!==this&&this.append(this.#d),this.#x(),this.#f.observe(this,{childList:!0})}disconnectedCallback(){this.#n=!1,this.#f.disconnect(),this.#L()}attributeChangedCallback(e,t,n){e!==`tiles-movable`||t===n||!this.#n||(this.tilesMovable||this.#L(),this.#x())}get tilesMovable(){let e=this.getAttribute(`tiles-movable`);return e!==null&&!yu(e)}set tilesMovable(e){this.toggleAttribute(`tiles-movable`,!!e&&!yu(e))}setTree(e){this.#e=e?Eu(e):Tu(),this.#n&&this.#x()}getTree(){return Eu(this.#e)}setPinned(e){this.#r=new Set(e)}getSurfaceIds(){let e=[];for(let t of xu){let n=this.#e.zones[t];n&&Du(n,e)}return e}#p(e){return this.#e.zones[e]!=null||this.#t}#m(e,t){let n=this.#e.zones[t];return n?ku(n,e,this.#e.locked===!0):!1}#h(e){if(this.#e.locked===!0)return!0;let t=this.#e.zones[e];return t!=null&&Au(t)}#g(e){return this.#e.locked===!0?!0:e===`center`?Su.some(e=>this.#h(e)):this.#h(e)}placeSurface(e,t){if(this.getSurfaceIds().includes(e))return;let n={type:`leaf`,surfaceId:e},r=this.#e.zones[t];this.#e.zones[t]=r==null?n:Lu(Pu(`col`,[r,n])),this.#n&&this.#x(),this.#R()}removeSurface(e){if(!this.#r.has(e))for(let t of xu){let n=this.#e.zones[t];if(!n)continue;let r=Ou(n,e);if(r){if(this.#m(r,t))return;Ru(this.#e.zones,t,r),this.#n&&this.#x(),this.#R();return}}}moveSurfaceToZone(e,t){let n=!1;for(let r of xu){let i=this.#e.zones[r];if(!i)continue;let a=Ou(i,e);if(a){if(n=!0,this.#m(a,r)||r===t&&i===a)return;Ru(this.#e.zones,r,a);break}}if(!n){this.placeSurface(e,t);return}let r={type:`leaf`,surfaceId:e};this.#e.zones[t]=r,this.#n&&this.#x(),this.#R()}setSurfaceSize(e,t){let n=this.#_(e);if(!n)return!1;let r=this.#z().get(e)??null,i=r?.getBoundingClientRect()??null,a=r?.closest(`.dock-tree__leaf`)?.getBoundingClientRect()??i,o=!1;if(n.width&&(t.widthPx!=null||t.widthPercent!=null)){let e=a&&i?Math.max(0,a.width-i.width):0;o=this.#b(n.width,t.widthPx==null?void 0:t.widthPx+e,t.widthPercent,a?.width)||o}if(n.height&&(t.heightPx!=null||t.heightPercent!=null)){let e=a&&i?Math.max(0,a.height-i.height):0;o=this.#b(n.height,t.heightPx==null?void 0:t.heightPx+e,t.heightPercent,a?.height)||o}return o&&(this.#x(),this.#k()),o}#_(e){for(let t of xu){let n=this.#e.zones[t];if(!n)continue;let r=Ou(n,e);if(!r)continue;if(this.#m(r,t))return{width:null,height:null};let i=Iu(n,r);if(i){let{parent:e,index:t}=i,n={currentFr:e.sizes[t]??1,groupFr:e.sizes,apply:n=>{e.sizes[t]=n}};return{width:e.dir===`row`?n:null,height:e.dir===`col`?n:null}}let a=t===`left`||t===`middle`||t===`right`,o=null;if(a){let e=t,n=this.#y();o={currentFr:this.#e.colFr[e],groupFr:n.map(e=>this.#e.colFr[e]),apply:t=>{this.#e.colFr[e]=t}}}let s=a?`center`:t,c=this.#v(),l={currentFr:this.#e.rowFr[s],groupFr:c.map(e=>this.#e.rowFr[e]),apply:e=>{this.#e.rowFr[s]=e}};return{width:o,height:l}}return null}#v(){let e=[];return this.#p(`top`)&&e.push(`top`),Su.some(e=>this.#p(e))&&e.push(`center`),this.#p(`bottom`)&&e.push(`bottom`),e}#y(){return Su.filter(e=>this.#p(e))}#b(e,t,n,r){let i=null;if(n!=null)i=n/100;else if(t!=null&&r!=null&&r>0&&e.currentFr>0){let n=r*e.groupFr.reduce((e,t)=>e+t,0)/e.currentFr;n>0&&(i=t/n)}if(i==null)return!1;let a=Bu(e.currentFr,e.groupFr,i);return a!=null&&(e.apply(a),!0)}#x(){let e=this.#e,t=this.#z(),n=new Set(this.getSurfaceIds()),r=this.#S(e,t),i=[];if(this.#p(`top`)){let n=this.#C(`top`,t);n.style.flex=`${e.rowFr.top} 1 0`,i.push({key:`top`,el:n})}if(r&&i.push({key:`center`,el:r}),this.#p(`bottom`)){let n=this.#C(`bottom`,t);n.style.flex=`${e.rowFr.bottom} 1 0`,i.push({key:`bottom`,el:n})}let a=[];i.forEach((t,n)=>{a.push(t.el),n<i.length-1&&!this.#g(t.key)&&!this.#g(i[n+1].key)&&a.push(this.#E(`v`,t.key,i[n+1].key,this.#c,e.rowFr,Cu))}),this.#c.replaceChildren(...a);for(let[e,r]of t)n.has(e)||(Nu(r),r.parentElement!==this.#l&&this.#l.appendChild(r));this.#s=n,this.dispatchEvent(new CustomEvent(`dock-tree-render`,{detail:{placed:[...n]},bubbles:!0,composed:!0}))}#S(e,t){let n=Su.filter(e=>this.#p(e));if(n.length===0)return null;let r=document.createElement(`div`);return r.className=`dock-tree__row`,r.style.flex=`${e.rowFr.center} 1 0`,n.forEach((i,a)=>{let o=this.#C(i,t);o.style.flex=`${e.colFr[i]} 1 0`,r.appendChild(o),a<n.length-1&&!this.#h(i)&&!this.#h(n[a+1])&&r.appendChild(this.#E(`h`,i,n[a+1],r,e.colFr,Su))}),r}#C(e,t){let n=document.createElement(`div`);n.className=`dock-tree__zone`,this.#t&&n.classList.add(`dock-tree__zone--droppable`),n.dataset.zone=e;let r=this.#e.zones[e];if(r==null){let t=document.createElement(`div`);return t.className=`dock-tree__empty`,t.textContent=`${e} (drop here)`,n.appendChild(t),n}let i=this.#w(r,t,e);return i.style.flex=`1 1 0`,n.appendChild(i),n}#w(e,t,n){if(e.type===`leaf`){let r=document.createElement(`div`);r.className=`dock-tree__leaf`;let i=t.get(e.surfaceId);return i&&r.appendChild(this.#T(e,n,e.surfaceId,i)),r}let r=document.createElement(`div`);r.className=`dock-tree__split dock-tree__split--${e.dir}`;let i=this.#e.locked===!0||e.locked===!0;return e.children.forEach((a,o)=>{let s=this.#w(a,t,n);s.style.flex=`${e.sizes[o]??1} 1 0`,r.appendChild(s),o<e.children.length-1&&!i&&r.appendChild(this.#D(e,o,r))}),r}#T(e,t,n,r){let i=document.createElement(`div`);if(i.className=`dock-tree__tile`,n!==`chat`&&(i.classList.add(`dock-tree__tile--chrome`),this.#s.has(n)||i.classList.add(`dock-tree__tile--enter`)),this.tilesMovable&&!this.#m(e,t)){let r=bu(n),a=document.createElement(`button`);a.type=`button`,a.className=`dock-tree__tile-move`,a.setAttribute(`aria-label`,`Move ${r}`),a.title=r,a.appendChild(m(`grip-vertical`,{size:13})),a.addEventListener(`pointerdown`,n=>this.#A(n,e,t)),i.appendChild(a)}let a=document.createElement(`div`);return a.className=`dock-tree__tile-body`,Mu(r),a.appendChild(r),i.appendChild(a),this.#o.set(i,e),i}#E(e,t,n,r,i,a){let o=Hu(e);return this.#O(o,e===`h`,r,()=>i[t]??1,()=>i[n]??1,(e,r)=>{i[t]=e,i[n]=r},()=>a.reduce((e,t)=>e+(i[t]??1),0)),o}#D(e,t,n){let r=e.dir===`row`,i=Hu(r?`h`:`v`);return this.#O(i,r,n,()=>e.sizes[t]??1,()=>e.sizes[t+1]??1,(n,r)=>{e.sizes[t]=n,e.sizes[t+1]=r},()=>e.sizes.reduce((e,t)=>e+(t??1),0)),i}#O(e,t,n,r,i,a,o){e.addEventListener(`pointerdown`,e=>{e.preventDefault(),this.setPointerCapture(e.pointerId);let s=n.getBoundingClientRect(),c=r()+i(),l=c*wu,u=o(),d=t?s.width:s.height,f=t?e.clientX:e.clientY,p=r(),m=e=>{let n=t?e.clientX:e.clientY,r=d>0?(n-f)/d*u:0,i=Math.max(l,Math.min(c-l,p+r));a(i,c-i),this.#x()},h=()=>{window.removeEventListener(`pointermove`,m),window.removeEventListener(`pointerup`,h),window.removeEventListener(`pointercancel`,h),this.hasPointerCapture(e.pointerId)&&this.releasePointerCapture(e.pointerId),this.#k()};window.addEventListener(`pointermove`,m),window.addEventListener(`pointerup`,h),window.addEventListener(`pointercancel`,h)})}#k(){this.dispatchEvent(new CustomEvent(`dock-tree-resize`,{detail:{tree:this.getTree()},bubbles:!0,composed:!0}))}#A(e,t,n){!this.tilesMovable||this.#m(t,n)||(e.preventDefault(),this.#j({kind:`internal`,node:t,fromZone:n},t.type===`leaf`?t.surfaceId:`panel`),this.#M(e))}beginExternalDrag(e,t){this.tilesMovable&&this.#j({kind:`external`,surfaceId:e},e)}#j(e,t){this.#i=e,this.#a=null,this.#t=!0,this.#x(),this.#u.textContent=t,this.#u.classList.add(`dock-tree__ghost--active`),window.addEventListener(`pointermove`,this.#N),window.addEventListener(`pointerup`,this.#I)}#M(e){this.#u.style.left=`${e.clientX}px`,this.#u.style.top=`${e.clientY}px`}#N=e=>{this.#M(e),this.#a=null,this.#d.classList.remove(`dock-tree__preview--active`);for(let e of Array.from(this.querySelectorAll(`.dock-tree__zone--hot`)))e.classList.remove(`dock-tree__zone--hot`);let t=this.#i;if(!t)return;let n=document.elementFromPoint(e.clientX,e.clientY);if(!n)return;let r=n.closest(`.dock-tree__zone`);if(!(r instanceof HTMLElement))return;let i=r.dataset.zone;if(!i)return;r.classList.add(`dock-tree__zone--hot`);let a=n.closest(`.dock-tree__tile`),o=a instanceof HTMLElement?this.#o.get(a):void 0,s=t.kind===`internal`&&o===t.node,c=!!o&&this.#m(o,i);if(a instanceof HTMLElement&&o&&!s&&!c){let t=a.getBoundingClientRect(),n=Vu(t,e.clientX,e.clientY);this.#a={zone:i,leaf:o,region:n},this.#P(t,n)}else a||(this.#a={zone:i,empty:!0},this.#F(r.getBoundingClientRect()))};#P(e,t){let{left:n,top:r,width:i,height:a}=e;t===`n`?a=e.height/2:t===`s`?(r=e.top+e.height/2,a=e.height/2):t===`w`?i=e.width/2:t===`e`&&(n=e.left+e.width/2,i=e.width/2),this.#F(new DOMRect(n,r,i,a))}#F(e){this.#d.style.left=`${e.left}px`,this.#d.style.top=`${e.top}px`,this.#d.style.width=`${e.width}px`,this.#d.style.height=`${e.height}px`,this.#d.classList.add(`dock-tree__preview--active`)}#I=()=>{window.removeEventListener(`pointermove`,this.#N),window.removeEventListener(`pointerup`,this.#I),this.#u.classList.remove(`dock-tree__ghost--active`),this.#d.classList.remove(`dock-tree__preview--active`);for(let e of Array.from(this.querySelectorAll(`.dock-tree__zone--hot`)))e.classList.remove(`dock-tree__zone--hot`);let e=this.#a,t=this.#i;this.#a=null,this.#i=null,this.#t=!1;let n=!!t&&t.kind===`internal`&&!!e&&!e.empty&&e.leaf===t.node,r=!!t&&t.kind===`external`&&this.getSurfaceIds().includes(t.surfaceId);if(!t||!e||n||r){this.#x();return}let i;if(t.kind===`internal`?(Ru(this.#e.zones,t.fromZone,t.node),i=t.node):i={type:`leaf`,surfaceId:t.surfaceId},e.empty||this.#e.zones[e.zone]==null)this.#e.zones[e.zone]=i;else{let{region:t,leaf:n}=e,r=Pu(t===`e`||t===`w`?`row`:`col`,t===`n`||t===`w`?[i,n]:[n,i]);zu(this.#e.zones,e.zone,n,r),this.#e.zones[e.zone]=Lu(this.#e.zones[e.zone])}this.#x(),this.#R()};#L(){this.#i&&(window.removeEventListener(`pointermove`,this.#N),window.removeEventListener(`pointerup`,this.#I),this.#i=null,this.#a=null,this.#t=!1,this.#u.classList.remove(`dock-tree__ghost--active`),this.#d.classList.remove(`dock-tree__preview--active`))}#R(){this.dispatchEvent(new CustomEvent(`dock-tree-change`,{detail:{tree:this.getTree()},bubbles:!0,composed:!0}))}#z(){let e=new Map;for(let t of Array.from(this.querySelectorAll(gu))){if(!(t instanceof HTMLElement)||t.parentElement?.closest(gu))continue;let n=ju(t);n&&e.set(n,t)}return e}});var qu=`<svg data-icon-sprite aria-hidden="true" width="0" height="0">
|
|
5385
|
+
`,Ol=`slicc-dock-tree-style`;function kl(e){if(e.getElementById(Ol))return;let t=e.createElement(`style`);t.id=Ol,t.textContent=Dl,(e.head??e.documentElement).appendChild(t)}var Al=`slicc-surface`,jl=`chat`,Ml=`sprinkle:`;function Nl(e){return typeof e==`string`&&e.trim().toLowerCase()===`false`}function Pl(e){return e===`chat`?`Chat`:e.startsWith(Ml)?e.slice(9):e}var Fl=[`top`,`left`,`middle`,`right`,`bottom`],Il=[`left`,`middle`,`right`],Ll=[`top`,`center`,`bottom`],Rl=.02;function zl(){return{zones:{top:null,left:null,middle:null,right:null,bottom:null},rowFr:{top:1,center:1,bottom:1},colFr:{left:1,middle:1,right:1}}}function Bl(e){return JSON.parse(JSON.stringify(e))}function Vl(e,t){if(e.type===`leaf`){t.push(e.surfaceId);return}for(let n of e.children)Vl(n,t)}function Hl(e,t){if(e.type===`leaf`)return e.surfaceId===t?e:null;for(let n of e.children){let e=Hl(n,t);if(e)return e}return null}function Ul(e,t,n){if(n)return!0;function r(e,n){let i=n||e.locked===!0;if(e===t)return i;if(e.type!==`split`)return null;for(let t of e.children){let e=r(t,i);if(e!=null)return e}return null}return r(e,!1)??!1}function Wl(e){return e.locked===!0||e.type===`split`&&e.children.some(Wl)}function Gl(e){return e.getAttribute(`surface-id`)||e.getAttribute(`data-s`)||e.id||null}function Kl(e){e.style.position=`relative`,e.style.inset=`auto`,e.style.display=`flex`,e.style.flex=`1 1 auto`,e.style.minWidth=`0`,e.style.minHeight=`0`}function ql(e){e.style.removeProperty(`position`),e.style.removeProperty(`inset`),e.style.removeProperty(`flex`),e.style.removeProperty(`min-width`),e.style.removeProperty(`min-height`),e.style.display=`none`}function Jl(e,t){return{type:`split`,dir:e,children:t,sizes:t.map(()=>1)}}function Yl(e,t,n){e.type===`split`&&e.children.forEach((r,i)=>{r===t?n(e,i):Yl(r,t,n)})}function Xl(e,t){if(e.type!==`split`)return null;for(let n=0;n<e.children.length;n++){let r=e.children[n];if(r===t)return{parent:e,index:n};let i=Xl(r,t);if(i)return i}return null}function Zl(e){if(!e)return null;if(e.type!==`split`)return e;e.children=e.children.map(Zl).filter(e=>e!=null);let t=[],n=[];return e.children.forEach((r,i)=>{r.type===`split`&&r.dir===e.dir?r.children.forEach((a,o)=>{t.push(a),n.push((e.sizes[i]||1)*(r.sizes[o]||1))}):(t.push(r),n.push(e.sizes[i]||1))}),e.children=t,e.sizes=n,e.children.length===0?null:e.children.length===1?e.children[0]:e}function Ql(e,t,n){let r=e[t];if(r){if(r===n){e[t]=null;return}Yl(r,n,(e,t)=>{e.children.splice(t,1),e.sizes.splice(t,1)}),e[t]=Zl(r)}}function $l(e,t,n,r){if(e[t]===n){e[t]=r;return}let i=e[t];i&&Yl(i,n,(e,t)=>{e.children[t]=r})}function eu(e,t,n){let r=t.reduce((e,t)=>e+t,0)-e;if(r<=0)return null;let i=Math.min(.98,Math.max(Rl,n));return i*r/(1-i)}function tu(e,t,n){let r=(t-e.left)/e.width,i=(n-e.top)/e.height;if(r>.34&&r<.66&&i>.34&&i<.66)return`center`;let a={n:i,s:1-i,w:r,e:1-r},o=Object.entries(a);return o.sort((e,t)=>e[1]-t[1]),o[0][0]}function nu(e){let t=document.createElement(`div`);return t.className=`dock-tree__divider dock-tree__divider--${e}`,t}function ru(){let e=document.createElement(`div`);return e.className=`dock-tree__root`,e}function iu(){let e=document.createElement(`div`);return e.className=`dock-tree__parking`,e.hidden=!0,e}function au(){let e=document.createElement(`div`);return e.className=`dock-tree__ghost`,e}function ou(){let e=document.createElement(`div`);return e.className=`dock-tree__preview`,e}A(`slicc-dock-tree`,class extends HTMLElement{static observedAttributes=[`tiles-movable`];#e=zl();#t=!1;#n=!1;#r=new Set;#i=null;#a=null;#o=new WeakMap;#s=new Set;#c=ru();#l=iu();#u=au();#d=ou();#f=new MutationObserver(()=>this.#x());connectedCallback(){kl(this.ownerDocument),this.#n=!0,this.#c.parentElement!==this&&this.append(this.#c),this.#l.parentElement!==this&&this.append(this.#l),this.#u.parentElement!==this&&this.append(this.#u),this.#d.parentElement!==this&&this.append(this.#d),this.#x(),this.#f.observe(this,{childList:!0})}disconnectedCallback(){this.#n=!1,this.#f.disconnect(),this.#L()}attributeChangedCallback(e,t,n){e!==`tiles-movable`||t===n||!this.#n||(this.tilesMovable||this.#L(),this.#x())}get tilesMovable(){let e=this.getAttribute(`tiles-movable`);return e!==null&&!Nl(e)}set tilesMovable(e){this.toggleAttribute(`tiles-movable`,!!e&&!Nl(e))}setTree(e){this.#e=e?Bl(e):zl(),this.#n&&this.#x()}getTree(){return Bl(this.#e)}setPinned(e){this.#r=new Set(e)}getSurfaceIds(){let e=[];for(let t of Fl){let n=this.#e.zones[t];n&&Vl(n,e)}return e}#p(e){return this.#e.zones[e]!=null||this.#t}#m(e,t){let n=this.#e.zones[t];return n?Ul(n,e,this.#e.locked===!0):!1}#h(e){if(this.#e.locked===!0)return!0;let t=this.#e.zones[e];return t!=null&&Wl(t)}#g(e){return this.#e.locked===!0?!0:e===`center`?Il.some(e=>this.#h(e)):this.#h(e)}placeSurface(e,t){if(this.getSurfaceIds().includes(e))return;let n={type:`leaf`,surfaceId:e},r=this.#e.zones[t];this.#e.zones[t]=r==null?n:Zl(Jl(`col`,[r,n])),this.#n&&this.#x(),this.#R()}removeSurface(e){if(!this.#r.has(e))for(let t of Fl){let n=this.#e.zones[t];if(!n)continue;let r=Hl(n,e);if(r){if(this.#m(r,t))return;Ql(this.#e.zones,t,r),this.#n&&this.#x(),this.#R();return}}}moveSurfaceToZone(e,t){let n=!1;for(let r of Fl){let i=this.#e.zones[r];if(!i)continue;let a=Hl(i,e);if(a){if(n=!0,this.#m(a,r)||r===t&&i===a)return;Ql(this.#e.zones,r,a);break}}if(!n){this.placeSurface(e,t);return}let r={type:`leaf`,surfaceId:e};this.#e.zones[t]=r,this.#n&&this.#x(),this.#R()}setSurfaceSize(e,t){let n=this.#_(e);if(!n)return!1;let r=this.#z().get(e)??null,i=r?.getBoundingClientRect()??null,a=r?.closest(`.dock-tree__leaf`)?.getBoundingClientRect()??i,o=!1;if(n.width&&(t.widthPx!=null||t.widthPercent!=null)){let e=a&&i?Math.max(0,a.width-i.width):0;o=this.#b(n.width,t.widthPx==null?void 0:t.widthPx+e,t.widthPercent,a?.width)||o}if(n.height&&(t.heightPx!=null||t.heightPercent!=null)){let e=a&&i?Math.max(0,a.height-i.height):0;o=this.#b(n.height,t.heightPx==null?void 0:t.heightPx+e,t.heightPercent,a?.height)||o}return o&&(this.#x(),this.#k()),o}#_(e){for(let t of Fl){let n=this.#e.zones[t];if(!n)continue;let r=Hl(n,e);if(!r)continue;if(this.#m(r,t))return{width:null,height:null};let i=Xl(n,r);if(i){let{parent:e,index:t}=i,n={currentFr:e.sizes[t]??1,groupFr:e.sizes,apply:n=>{e.sizes[t]=n}};return{width:e.dir===`row`?n:null,height:e.dir===`col`?n:null}}let a=t===`left`||t===`middle`||t===`right`,o=null;if(a){let e=t,n=this.#y();o={currentFr:this.#e.colFr[e],groupFr:n.map(e=>this.#e.colFr[e]),apply:t=>{this.#e.colFr[e]=t}}}let s=a?`center`:t,c=this.#v(),l={currentFr:this.#e.rowFr[s],groupFr:c.map(e=>this.#e.rowFr[e]),apply:e=>{this.#e.rowFr[s]=e}};return{width:o,height:l}}return null}#v(){let e=[];return this.#p(`top`)&&e.push(`top`),Il.some(e=>this.#p(e))&&e.push(`center`),this.#p(`bottom`)&&e.push(`bottom`),e}#y(){return Il.filter(e=>this.#p(e))}#b(e,t,n,r){let i=null;if(n!=null)i=n/100;else if(t!=null&&r!=null&&r>0&&e.currentFr>0){let n=r*e.groupFr.reduce((e,t)=>e+t,0)/e.currentFr;n>0&&(i=t/n)}if(i==null)return!1;let a=eu(e.currentFr,e.groupFr,i);return a!=null&&(e.apply(a),!0)}#x(){let e=this.#e,t=this.#z(),n=new Set(this.getSurfaceIds()),r=this.#S(e,t),i=[];if(this.#p(`top`)){let n=this.#C(`top`,t);n.style.flex=`${e.rowFr.top} 1 0`,i.push({key:`top`,el:n})}if(r&&i.push({key:`center`,el:r}),this.#p(`bottom`)){let n=this.#C(`bottom`,t);n.style.flex=`${e.rowFr.bottom} 1 0`,i.push({key:`bottom`,el:n})}let a=[];i.forEach((t,n)=>{a.push(t.el),n<i.length-1&&!this.#g(t.key)&&!this.#g(i[n+1].key)&&a.push(this.#E(`v`,t.key,i[n+1].key,this.#c,e.rowFr,Ll))}),this.#c.replaceChildren(...a);for(let[e,r]of t)n.has(e)||(ql(r),r.parentElement!==this.#l&&this.#l.appendChild(r));this.#s=n,this.dispatchEvent(new CustomEvent(`dock-tree-render`,{detail:{placed:[...n]},bubbles:!0,composed:!0}))}#S(e,t){let n=Il.filter(e=>this.#p(e));if(n.length===0)return null;let r=document.createElement(`div`);return r.className=`dock-tree__row`,r.style.flex=`${e.rowFr.center} 1 0`,n.forEach((i,a)=>{let o=this.#C(i,t);o.style.flex=`${e.colFr[i]} 1 0`,r.appendChild(o),a<n.length-1&&!this.#h(i)&&!this.#h(n[a+1])&&r.appendChild(this.#E(`h`,i,n[a+1],r,e.colFr,Il))}),r}#C(e,t){let n=document.createElement(`div`);n.className=`dock-tree__zone`,this.#t&&n.classList.add(`dock-tree__zone--droppable`),n.dataset.zone=e;let r=this.#e.zones[e];if(r==null){let t=document.createElement(`div`);return t.className=`dock-tree__empty`,t.textContent=`${e} (drop here)`,n.appendChild(t),n}let i=this.#w(r,t,e);return i.style.flex=`1 1 0`,n.appendChild(i),n}#w(e,t,n){if(e.type===`leaf`){let r=document.createElement(`div`);r.className=`dock-tree__leaf`;let i=t.get(e.surfaceId);return i&&r.appendChild(this.#T(e,n,e.surfaceId,i)),r}let r=document.createElement(`div`);r.className=`dock-tree__split dock-tree__split--${e.dir}`;let i=this.#e.locked===!0||e.locked===!0;return e.children.forEach((a,o)=>{let s=this.#w(a,t,n);s.style.flex=`${e.sizes[o]??1} 1 0`,r.appendChild(s),o<e.children.length-1&&!i&&r.appendChild(this.#D(e,o,r))}),r}#T(e,t,r,i){let a=document.createElement(`div`);if(a.className=`dock-tree__tile`,r!==`chat`&&(a.classList.add(`dock-tree__tile--chrome`),this.#s.has(r)||a.classList.add(`dock-tree__tile--enter`)),this.tilesMovable&&!this.#m(e,t)){let i=Pl(r),o=document.createElement(`button`);o.type=`button`,o.className=`dock-tree__tile-move`,o.setAttribute(`aria-label`,`Move ${i}`),o.title=i,o.appendChild(n(`grip-vertical`,{size:13})),o.addEventListener(`pointerdown`,n=>this.#A(n,e,t)),a.appendChild(o)}let o=document.createElement(`div`);return o.className=`dock-tree__tile-body`,Kl(i),o.appendChild(i),a.appendChild(o),this.#o.set(a,e),a}#E(e,t,n,r,i,a){let o=nu(e);return this.#O(o,e===`h`,r,()=>i[t]??1,()=>i[n]??1,(e,r)=>{i[t]=e,i[n]=r},()=>a.reduce((e,t)=>e+(i[t]??1),0)),o}#D(e,t,n){let r=e.dir===`row`,i=nu(r?`h`:`v`);return this.#O(i,r,n,()=>e.sizes[t]??1,()=>e.sizes[t+1]??1,(n,r)=>{e.sizes[t]=n,e.sizes[t+1]=r},()=>e.sizes.reduce((e,t)=>e+(t??1),0)),i}#O(e,t,n,r,i,a,o){e.addEventListener(`pointerdown`,e=>{e.preventDefault(),this.setPointerCapture(e.pointerId);let s=n.getBoundingClientRect(),c=r()+i(),l=c*Rl,u=o(),d=t?s.width:s.height,f=t?e.clientX:e.clientY,p=r(),m=e=>{let n=t?e.clientX:e.clientY,r=d>0?(n-f)/d*u:0,i=Math.max(l,Math.min(c-l,p+r));a(i,c-i),this.#x()},h=()=>{window.removeEventListener(`pointermove`,m),window.removeEventListener(`pointerup`,h),window.removeEventListener(`pointercancel`,h),this.hasPointerCapture(e.pointerId)&&this.releasePointerCapture(e.pointerId),this.#k()};window.addEventListener(`pointermove`,m),window.addEventListener(`pointerup`,h),window.addEventListener(`pointercancel`,h)})}#k(){this.dispatchEvent(new CustomEvent(`dock-tree-resize`,{detail:{tree:this.getTree()},bubbles:!0,composed:!0}))}#A(e,t,n){!this.tilesMovable||this.#m(t,n)||(e.preventDefault(),this.#j({kind:`internal`,node:t,fromZone:n},t.type===`leaf`?t.surfaceId:`panel`),this.#M(e))}beginExternalDrag(e,t){this.tilesMovable&&this.#j({kind:`external`,surfaceId:e},e)}#j(e,t){this.#i=e,this.#a=null,this.#t=!0,this.#x(),this.#u.textContent=t,this.#u.classList.add(`dock-tree__ghost--active`),window.addEventListener(`pointermove`,this.#N),window.addEventListener(`pointerup`,this.#I)}#M(e){this.#u.style.left=`${e.clientX}px`,this.#u.style.top=`${e.clientY}px`}#N=e=>{this.#M(e),this.#a=null,this.#d.classList.remove(`dock-tree__preview--active`);for(let e of Array.from(this.querySelectorAll(`.dock-tree__zone--hot`)))e.classList.remove(`dock-tree__zone--hot`);let t=this.#i;if(!t)return;let n=document.elementFromPoint(e.clientX,e.clientY);if(!n)return;let r=n.closest(`.dock-tree__zone`);if(!(r instanceof HTMLElement))return;let i=r.dataset.zone;if(!i)return;r.classList.add(`dock-tree__zone--hot`);let a=n.closest(`.dock-tree__tile`),o=a instanceof HTMLElement?this.#o.get(a):void 0,s=t.kind===`internal`&&o===t.node,c=!!o&&this.#m(o,i);if(a instanceof HTMLElement&&o&&!s&&!c){let t=a.getBoundingClientRect(),n=tu(t,e.clientX,e.clientY);this.#a={zone:i,leaf:o,region:n},this.#P(t,n)}else a||(this.#a={zone:i,empty:!0},this.#F(r.getBoundingClientRect()))};#P(e,t){let{left:n,top:r,width:i,height:a}=e;t===`n`?a=e.height/2:t===`s`?(r=e.top+e.height/2,a=e.height/2):t===`w`?i=e.width/2:t===`e`&&(n=e.left+e.width/2,i=e.width/2),this.#F(new DOMRect(n,r,i,a))}#F(e){this.#d.style.left=`${e.left}px`,this.#d.style.top=`${e.top}px`,this.#d.style.width=`${e.width}px`,this.#d.style.height=`${e.height}px`,this.#d.classList.add(`dock-tree__preview--active`)}#I=()=>{window.removeEventListener(`pointermove`,this.#N),window.removeEventListener(`pointerup`,this.#I),this.#u.classList.remove(`dock-tree__ghost--active`),this.#d.classList.remove(`dock-tree__preview--active`);for(let e of Array.from(this.querySelectorAll(`.dock-tree__zone--hot`)))e.classList.remove(`dock-tree__zone--hot`);let e=this.#a,t=this.#i;this.#a=null,this.#i=null,this.#t=!1;let n=!!t&&t.kind===`internal`&&!!e&&!e.empty&&e.leaf===t.node,r=!!t&&t.kind===`external`&&this.getSurfaceIds().includes(t.surfaceId);if(!t||!e||n||r){this.#x();return}let i;if(t.kind===`internal`?(Ql(this.#e.zones,t.fromZone,t.node),i=t.node):i={type:`leaf`,surfaceId:t.surfaceId},e.empty||this.#e.zones[e.zone]==null)this.#e.zones[e.zone]=i;else{let{region:t,leaf:n}=e,r=Jl(t===`e`||t===`w`?`row`:`col`,t===`n`||t===`w`?[i,n]:[n,i]);$l(this.#e.zones,e.zone,n,r),this.#e.zones[e.zone]=Zl(this.#e.zones[e.zone])}this.#x(),this.#R()};#L(){this.#i&&(window.removeEventListener(`pointermove`,this.#N),window.removeEventListener(`pointerup`,this.#I),this.#i=null,this.#a=null,this.#t=!1,this.#u.classList.remove(`dock-tree__ghost--active`),this.#d.classList.remove(`dock-tree__preview--active`))}#R(){this.dispatchEvent(new CustomEvent(`dock-tree-change`,{detail:{tree:this.getTree()},bubbles:!0,composed:!0}))}#z(){let e=new Map;for(let t of Array.from(this.querySelectorAll(Al))){if(!(t instanceof HTMLElement)||t.parentElement?.closest(Al))continue;let n=Gl(t);n&&e.set(n,t)}return e}});var su=`<svg data-icon-sprite aria-hidden="true" width="0" height="0">
|
|
5386
5386
|
<symbol id="file-tree-icon-chevron" viewBox="0 0 16 16">
|
|
5387
5387
|
<path d="M12.4697 5.46973C12.7626 5.17684 13.2374 5.17684 13.5303 5.46973C13.8232 5.76262 13.8232 6.23738 13.5303 6.53028L8.53028 11.5303C8.23738 11.8232 7.76262 11.8232 7.46973 11.5303L2.46973 6.53028C2.17684 6.23738 2.17684 5.76262 2.46973 5.46973C2.76262 5.17684 3.23738 5.17684 3.53028 5.46973L8 9.93946L12.4697 5.46973Z" fill="currentcolor"/>
|
|
5388
5388
|
</symbol>
|
|
@@ -5399,72 +5399,72 @@ slicc-dock-tree .dock-tree__preview--active {
|
|
|
5399
5399
|
<symbol id="file-tree-icon-ellipsis" viewBox="0 0 16 16">
|
|
5400
5400
|
<path d="M5 8.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M9.5 8.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M14 8.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0" />
|
|
5401
5401
|
</symbol>
|
|
5402
|
-
</svg>`,
|
|
5402
|
+
</svg>`,cu=`<symbol id="file-tree-builtin-astro" viewBox="0 0 16 16">
|
|
5403
5403
|
<path fill="currentColor" d="M6.08 13.92c-.63-.57-.81-1.79-.55-2.67.45.56 1.08.73 1.73.83 1 .15 1.99.1 2.92-.37l.32-.19q.13.38.08.78a2.1 2.1 0 0 1-.9 1.5q-.3.24-.61.43c-.64.44-.81.95-.57 1.69l.02.08a1.7 1.7 0 0 1-.74-.64 2 2 0 0 1-.3-.98q0-.27-.02-.52-.07-.61-.61-.62a.7.7 0 0 0-.75.6z" class="bg" opacity=".6"/>
|
|
5404
5404
|
<path fill="currentColor" d="M2.5 11.1s1.86-.9 3.72-.9l1.4-4.39c.05-.21.2-.36.38-.36s.33.15.38.36l1.4 4.38c2.2 0 3.72.92 3.72.92l-3.16-8.69q-.13-.4-.45-.42H6.11q-.3.02-.45.42z" class="fg"/>
|
|
5405
|
-
</symbol>`,
|
|
5405
|
+
</symbol>`,lu=`<symbol id="file-tree-builtin-babel" viewBox="0 0 16 16">
|
|
5406
5406
|
<path fill="currentColor" fill-rule="evenodd" d="M9.49.5q1.92.05 2.66.54 1.27.6 1.35 1.52v.23a4 4 0 0 1-.53 1.9l-1.38 1.24q-.74.38-.72.63c.77.82 1.33 1.29.85 2.42q-.47 1.1-2.04 2.28c-.5.32-1.88 1.35-2.96 1.86-1.64.77-3.1 1.4-4.65 1.89-.51.16-1.5.16-1.5.16L.5 15A76 76 0 0 0 5.76 3.49q-.1-.08-.1-.2.1 0 .32-.35l-.03-.09q-1.17.39-2.38 1.3l-.13.03q0-.1-.21-.16-.46.31-.82.7l-.13-.19.16-.06-.03-.16-.34.29L2 4.5q.36-.48.72-.54l.04-.1V3.8q.16 0 .15-.06l.13-.06a6 6 0 0 0 1.13-.9v-.03H4.1l-.12.07q0-.1-.1-.1l-.15.07-.04-.1q.93-.52 1.63-1.05Q7.89.65 9.5.5M8.46 7.83l-.32.04c-1.31.54-2.31.82-2.91.88a71 71 0 0 0-2.2 4.54h.07q.58-.04 3.04-1.42.13 0 1.66-1.05L9.18 9.7v.03q.45-.2.81-1.3v-.2q-.5-.46-1.53-.4m.28-5.75c-.5.1-.75.19-.72.38l-1.16 2.6q-.17.1-.34.95-.3.48-.25.77v.1l.22.05A15 15 0 0 1 8.86 6c1.1-.71 2.12-1.38 2.8-2.54q.24-.33.21-.54-.02-.33-.4-.54c-.54 0-1.07-.34-1.63-.28l-.94-.03z" clip-rule="evenodd"/>
|
|
5407
|
-
</symbol>`,
|
|
5407
|
+
</symbol>`,uu=`<symbol id="file-tree-builtin-bash" viewBox="0 0 16 16">
|
|
5408
5408
|
<path fill="currentColor" d="M8 1C2.24 1 1 2.24 1 8s1.24 7 7 7 7-1.24 7-7-1.24-7-7-7" class="bg" opacity=".2"/>
|
|
5409
5409
|
<path fill="currentColor" d="M11.5 11a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1zM7 6.75C7 6.42 6.64 6 6 6s-1 .42-1 .75q-.01.25.22.41.26.21.89.35.74.14 1.28.53c.37.29.61.7.61 1.21 0 .87-.68 1.5-1.5 1.7v.55a.5.5 0 0 1-1 0v-.56c-.82-.18-1.5-.82-1.5-1.69a.5.5 0 0 1 1 0c0 .33.36.75 1 .75s1-.42 1-.75q.01-.25-.22-.41a2 2 0 0 0-.89-.35q-.74-.14-1.28-.53A1.5 1.5 0 0 1 4 6.75c0-.87.68-1.5 1.5-1.7V4.5a.5.5 0 0 1 1 0v.56c.82.18 1.5.82 1.5 1.69a.5.5 0 0 1-1 0" class="fg-stroke"/>
|
|
5410
|
-
</symbol>`,
|
|
5410
|
+
</symbol>`,du=`<symbol id="file-tree-builtin-biome" viewBox="0 0 16 16">
|
|
5411
5411
|
<path fill="currentColor" d="M8 2 4.88 7.35a7 7 0 0 1 3.7-.13l1.04.25-.99 4.16-1.05-.25a2.7 2.7 0 0 0-3.07 1.45l-.98-.47a4 4 0 0 1 1.07-1.31 3.8 3.8 0 0 1 3.23-.71l.5-2.08a6 6 0 0 0-5.07 1.12A5.9 5.9 0 0 0 1 14h14z"/>
|
|
5412
|
-
</symbol>`,
|
|
5412
|
+
</symbol>`,fu=`<symbol id="file-tree-builtin-bootstrap" viewBox="0 0 16 16">
|
|
5413
5413
|
<path fill="currentColor" fill-rule="evenodd" d="M11.72 1.5A2.5 2.5 0 0 1 14.2 4q.02 1.08.3 2.09c.22.73.56 1.24 1.08 1.45.22.08.4.27.4.5s-.18.43-.4.51q-.76.34-1.08 1.45c-.2.65-.27 1.32-.3 2a2.5 2.5 0 0 1-2.48 2.5H4.25A2.6 2.6 0 0 1 1.7 12c-.04-.85-.1-1.68-.22-2.04C1.26 9.23.92 8.7.4 8.5.18 8.42 0 8.23 0 8s.18-.42.4-.5q.77-.35 1.09-1.46c.1-.36.17-1.19.2-2.04a2.6 2.6 0 0 1 2.56-2.5z" class="bg" clip-rule="evenodd" opacity=".2"/>
|
|
5414
5414
|
<path fill="currentColor" fill-rule="evenodd" d="M8.47 4.54c1.23 0 2.04.68 2.04 1.73 0 .73-.55 1.39-1.24 1.5v.04c.94.1 1.58.77 1.58 1.7 0 1.2-.9 1.95-2.37 1.95H5.97a.3.3 0 0 1-.2-.08.3.3 0 0 1-.08-.2V4.82a.3.3 0 0 1 .08-.2.3.3 0 0 1 .2-.08zm-1.7 6.04h1.49q1.47-.01 1.49-1.15Q9.74 8.31 8.2 8.3H6.77zm0-5.16v2.06h1.21c.93 0 1.45-.38 1.45-1.06 0-.65-.44-1-1.22-1z" class="fg" clip-rule="evenodd"/>
|
|
5415
|
-
</symbol
|
|
5415
|
+
</symbol>`,pu=`<symbol id="file-tree-builtin-browserslist" viewBox="0 0 16 16">
|
|
5416
5416
|
<path fill="currentColor" d="M8.88 6.96c0 3.82 3.72 4.7 5.7 3.74-.23.9-1.04 1.67-2.35 1.93-.02.4.42 1.28.82 1.63-.9.35-1.94-.12-2.51-.48a5 5 0 0 0-.32 1.87c-.68 0-1.57-1-1.8-1.37-.3.18-.85 1.15-.96 1.72a2.4 2.4 0 0 1-.81-.86 2.4 2.4 0 0 1-.3-1.15c-.38.27-1.48.95-1.99 1.18-.25-.58-.15-1.3 0-2.06-.21.12-1.8.27-2.43.12.32-.36.75-1.19.94-1.57A4.5 4.5 0 0 1 .44 10.6c.48-.22.97-.53 1.49-1.06C1.26 9.17.24 8.64 0 7.7a6 6 0 0 0 1.79-.32C1.28 7.08.44 6.15.6 5.01c.42.21 1.3.37 1.73.3a3.4 3.4 0 0 1-.25-2.75 5 5 0 0 0 1.48 1c-.08-.8.3-2.31.8-2.71.2.46.73 1.21 1.08 1.4.09-.61.87-2.06 1.57-2.25 0 .5.27 1.4.5 1.67.51-.54 2.25-1.44 3.64-1.13-.43.45-.75.61-.86.98 1.05 0 2.78.34 4.27 1.93-2.34-.89-5.69.56-5.69 3.5" class="bg" opacity=".5"/>
|
|
5417
5417
|
<path fill="currentColor" d="M11.21 3.59a4.1 4.1 0 0 0 2.47 2.89c.24-.22.61-.38.95-.19.76.44.2 1.26-.34 1.66l-.07.06a13 13 0 0 1-4.49 1.61l-.3-.43a10.5 10.5 0 0 0 4.13-1.31 1 1 0 0 0 .23-.25.5.5 0 0 0-.21-.69l-.15-.06a4.5 4.5 0 0 1-1.77-1.31 4.5 4.5 0 0 1-.88-1.77q.2-.12.43-.21"/>
|
|
5418
5418
|
<path fill="currentColor" d="M10.36 5.18a.4.4 0 0 0-.03.38c.09.2.3.3.46.23s.24-.3.15-.5l-.01-.02q.23.13.34.39a.83.83 0 0 1-.43 1.08.8.8 0 0 1-1.08-.43.83.83 0 0 1 .6-1.13"/>
|
|
5419
|
-
</symbol>`,
|
|
5419
|
+
</symbol>`,mu=`<symbol id="file-tree-builtin-bun" viewBox="0 0 16 16">
|
|
5420
5420
|
<path fill="currentColor" d="M8 14c3.87 0 7-2.46 7-5.49 0-1.88-1.2-3.53-3.04-4.52q-1.1-.61-1.84-1.07C9.2 2.35 8.64 2 8 2s-1.36.45-2.31 1.03A29 29 0 0 1 4.04 4C2.2 4.98 1 6.63 1 8.51 1 11.54 4.13 14 8 14M7.18 3.88q.3-.66.3-1.37c0-.08.11-.1.13-.01.38 1.57-.53 2.35-1.2 2.61-.08.03-.12-.07-.06-.12a3 3 0 0 0 .83-1.12m1.2-.05a3 3 0 0 0-.45-1.3V2.5c-.04-.07.05-.15.1-.1 1.15 1.2.77 2.3.33 2.87-.05.05-.13 0-.11-.08q.21-.67.13-1.37m1.04-.32a3 3 0 0 0-.94-1.02v-.01c-.06-.05-.01-.16.07-.12 1.51.61 1.61 1.8 1.43 2.5l-.03.03a.07.07 0 0 1-.1-.06 3 3 0 0 0-.43-1.32m-2.97.32c-.36.3-.74.43-1.2.56q-.11 0-.1-.1a3.5 3.5 0 0 0 1.76-1.57s.09-.07.1.04c0 .18-.2.76-.56 1.07m2.89 6.36q-.13.52-.55.88a1.3 1.3 0 0 1-.75.35 1.3 1.3 0 0 1-.77-.35 1.7 1.7 0 0 1-.54-.88.13.13 0 0 1 .15-.15h2.31a.14.14 0 0 1 .15.15M6.15 8.95a1.1 1.1 0 0 1-1.39-.14A1.1 1.1 0 0 1 5.12 7a1.1 1.1 0 0 1 1.2.25 1.1 1.1 0 0 1-.17 1.69m4.96 0a1.1 1.1 0 0 1-1.4-.14 1.1 1.1 0 0 1 .37-1.8 1.1 1.1 0 0 1 1.2.25 1.1 1.1 0 0 1 .24 1.2 1 1 0 0 1-.41.5"/>
|
|
5421
|
-
</symbol>`,
|
|
5421
|
+
</symbol>`,hu=`<symbol id="file-tree-builtin-c" viewBox="0 0 16 16">
|
|
5422
5422
|
<path fill="currentColor" fill-rule="evenodd" d="M8 1q.084 0 .166.021.098.023.186.075c1.055.624 4.22 2.486 5.277 3.11.085.05.15.112.209.192h-.002l.028.037a.5.5 0 0 1 .103.21q.031.102.033.21v6.29a.71.71 0 0 1-.347.616l-5.307 3.144a.68.68 0 0 1-.693 0l-5.307-3.144A.72.72 0 0 1 2 11.145V4.832a.71.71 0 0 1 .346-.612l5.288-3.126A.7.7 0 0 1 7.992 1zm2.901 4.349a3.75 3.75 0 1 0 0 5.302l-1.06-1.06a2.25 2.25 0 1 1 0-3.182z" clip-rule="evenodd"/>
|
|
5423
|
-
</symbol>`,
|
|
5423
|
+
</symbol>`,gu=`<symbol id="file-tree-builtin-claude" viewBox="0 0 16 16">
|
|
5424
5424
|
<path fill="currentColor" d="M3.75 10.31 6.5 8.77l.04-.14-.04-.07h-.14l-.46-.03-1.57-.04-1.38-.07-1.33-.07-.34-.07L1 7.86l.03-.21.28-.18.4.03.89.07 1.33.08.97.06 1.43.16h.22l.03-.1-.07-.05-.06-.06-1.39-.92-1.48-.98-.79-.57-.42-.28-.2-.28-.1-.6.39-.41.52.04.12.03.52.4 1.12.86L6.2 6.04l.2.17.09-.06.01-.04-.1-.15-.76-1.46-.85-1.46-.37-.6-.1-.36a1 1 0 0 1-.06-.42l.42-.59.25-.07.6.08.22.2.36.84.58 1.3.9 1.77.29.53.14.47.04.14h.1v-.07l.07-1 .14-1.22.14-1.57.04-.45.23-.53.42-.28.36.15.28.41-.04.25-.16 1.08-.36 1.7-.21 1.14h.12l.14-.15.58-.76.97-1.2.42-.5.5-.51.32-.25h.6l.44.66-.2.68-.61.79-.52.65-.74 1-.45.8.04.05h.1l1.68-.36.9-.16 1.06-.18.5.23.05.22-.2.48-1.15.28-1.34.28-2 .46-.04.01.03.04.9.09.4.03h.94l1.77.14.46.28.27.37-.04.28-.72.37-.95-.23-2.24-.53-.76-.18h-.11v.06l.64.63L12 10.86l1.48 1.35.07.34-.18.28-.2-.03-1.29-.98-.5-.42-1.12-.95h-.07v.1l.25.38 1.37 2.05.07.63-.1.2-.36.14-.38-.08-.8-1.12-.85-1.26-.66-1.15-.07.05-.4 4.23-.19.21-.42.17-.35-.28-.2-.42.2-.87.23-1.12.18-.9.17-1.1.1-.36v-.03h-.1l-.84 1.16-1.27 1.72-1 1.07-.24.1-.42-.22.04-.39.22-.32 1.4-1.8.84-1.1.57-.64-.02-.07h-.04l-3.7 2.4-.66.09-.28-.28.03-.42.14-.14 1.12-.77z"/>
|
|
5425
|
-
</symbol>`,
|
|
5425
|
+
</symbol>`,_u=`<symbol id="file-tree-builtin-cpp" viewBox="0 0 16 16">
|
|
5426
5426
|
<path fill="currentColor" fill-rule="evenodd" d="M8 1q.084 0 .166.021.098.023.186.075c1.055.624 4.22 2.486 5.277 3.11.085.05.15.112.209.192h-.002l.028.037a.5.5 0 0 1 .103.21q.031.102.033.21v6.29a.71.71 0 0 1-.347.616l-5.307 3.144a.68.68 0 0 1-.693 0l-5.307-3.144A.72.72 0 0 1 2 11.145V4.832a.71.71 0 0 1 .346-.612l5.288-3.126A.7.7 0 0 1 7.992 1zm2.901 4.349a3.75 3.75 0 1 0 0 5.302l-1.06-1.06a2.25 2.25 0 1 1 0-3.182z" clip-rule="evenodd"/>
|
|
5427
|
-
</symbol>`,
|
|
5427
|
+
</symbol>`,vu=`<symbol id="file-tree-builtin-css" viewBox="0 0 16 16">
|
|
5428
5428
|
<path fill="currentColor" d="M8 15c-5.76 0-7-1.24-7-7V2a1 1 0 0 1 1-1h6c5.77 0 7 1.24 7 7s-1.24 7-7 7" class="vector" opacity=".2"/>
|
|
5429
5429
|
<path fill="currentColor" d="M10.1 9.19h.73c.03.49.22.6 1 .6.76 0 .93-.12.93-.68 0-.52-.17-.67-.94-.85-1.38-.3-1.68-.56-1.68-1.47 0-1.05.3-1.29 1.67-1.29 1.29 0 1.57.2 1.6 1.13h-.74c-.01-.34-.17-.42-.85-.42-.77 0-.94.1-.94.58 0 .42.17.55.96.73 1.36.3 1.66.58 1.66 1.59 0 1.14-.31 1.39-1.73 1.39-1.39 0-1.69-.24-1.67-1.31m-3.9 0h.74c.03.49.21.6.99.6.76 0 .93-.12.93-.68 0-.52-.17-.67-.93-.85-1.39-.3-1.69-.56-1.69-1.47 0-1.05.3-1.29 1.67-1.29 1.3 0 1.58.2 1.6 1.13h-.73c-.02-.34-.18-.42-.85-.42-.78 0-.95.1-.95.58 0 .42.17.55.96.73 1.37.3 1.67.58 1.67 1.59 0 1.14-.32 1.39-1.74 1.39-1.38 0-1.68-.24-1.66-1.31m-1.22 0h.75c-.09 1.07-.37 1.31-1.56 1.31-1.37 0-1.68-.45-1.68-2.5 0-1.96.36-2.5 1.68-2.5 1.16 0 1.44.25 1.52 1.35h-.76c-.08-.52-.22-.64-.76-.64-.74 0-.9.33-.9 1.78 0 1.47.16 1.8.9 1.8.58 0 .74-.11.8-.6"/>
|
|
5430
|
-
</symbol>`,
|
|
5430
|
+
</symbol>`,yu=`<symbol id="file-tree-builtin-database" viewBox="0 0 16 16">
|
|
5431
5431
|
<path fill="currentColor" d="M14.953 9.733a12.4 12.4 0 0 1-.244 1.936c-.207.933-.532 1.58-.996 2.044s-1.11.789-2.044.996C10.73 14.918 9.533 15 8 15s-2.73-.082-3.669-.291c-.933-.207-1.58-.532-2.044-.996s-.789-1.11-.996-2.044c-.122-.547-.2-1.182-.244-1.92q.23.364.532.667c.64.639 1.482 1.031 2.533 1.265 1.046.232 2.33.315 3.884.315 1.555 0 2.838-.083 3.884-.315 1.051-.234 1.893-.626 2.532-1.265a4 4 0 0 0 .541-.683"/>
|
|
5432
5432
|
<path fill="currentColor" d="M14.93 5.924c-.046.663-.118 1.24-.23 1.743-.207.932-.532 1.579-.995 2.042s-1.11.789-2.042.996c-.938.209-2.135.291-3.667.291-1.531 0-2.729-.082-3.667-.29-.932-.208-1.579-.534-2.042-.997s-.789-1.11-.996-2.042a12 12 0 0 1-.227-1.683l.016-.188a4 4 0 0 0 .5.62c.638.639 1.48 1.031 2.532 1.265 1.046.232 2.33.315 3.884.315 1.555 0 2.838-.083 3.884-.315 1.051-.234 1.893-.626 2.532-1.265.192-.192.357-.404.506-.633z"/>
|
|
5433
5433
|
<path fill="currentColor" d="M8 1c1.533 0 2.73.082 3.669.291.933.207 1.58.533 2.044.996.403.404.904.944.91 1.695.004.764-.509 1.318-.918 1.727-.463.463-1.11.789-2.042.996-.938.209-2.135.291-3.667.291-1.531 0-2.729-.082-3.667-.29-.932-.208-1.579-.534-2.042-.997-.406-.406-.915-.953-.915-1.71 0-.758.509-1.305.915-1.712.464-.463 1.11-.789 2.044-.996C5.27 1.082 6.467 1 8 1"/>
|
|
5434
|
-
</symbol>`,
|
|
5434
|
+
</symbol>`,bu=`<symbol id="file-tree-builtin-default" viewBox="0 0 16 16">
|
|
5435
5435
|
<path fill="currentColor" d="M8 1v3a3 3 0 0 0 3 3h3v5.5a2.5 2.5 0 0 1-2.5 2.5h-7A2.5 2.5 0 0 1 2 12.5v-9A2.5 2.5 0 0 1 4.5 1z" class="bg" opacity=".4"/>
|
|
5436
5436
|
<path fill="currentColor" d="M9.5 1a.5.5 0 0 1 .354.146l4 4A.5.5 0 0 1 14 5.5V6h-3a2 2 0 0 1-2-2V1z" class="fg"/>
|
|
5437
|
-
</symbol>`,
|
|
5437
|
+
</symbol>`,xu=`<symbol id="file-tree-builtin-docker" viewBox="0 0 16 16">
|
|
5438
5438
|
<path fill="currentColor" d="M15.85 6.54c-.05-.04-.45-.36-1.31-.36q-.34 0-.68.06a2.7 2.7 0 0 0-1.14-1.79l-.23-.14-.15.23a3 3 0 0 0-.4 1q-.24 1.01.26 1.84c-.4.24-1.03.3-1.17.3H.5a.5.5 0 0 0-.5.52q-.01 1.46.46 2.83.55 1.5 1.6 2.18c.79.5 2.08.79 3.54.79q.96 0 1.94-.18a8 8 0 0 0 2.55-.97 7 7 0 0 0 1.73-1.5 10 10 0 0 0 1.7-3.06h.15a2.4 2.4 0 0 0 1.8-.7 2 2 0 0 0 .47-.74l.06-.2z"/>
|
|
5439
5439
|
<path fill="currentColor" d="M1.48 7.36h1.4a.14.14 0 0 0 .14-.13V5.91q-.01-.12-.13-.14H1.48a.13.13 0 0 0-.13.14v1.32q.02.13.13.13m1.94 0h1.41a.14.14 0 0 0 .13-.13V5.91q-.01-.12-.13-.14h-1.4a.13.13 0 0 0-.13.14v1.32q0 .13.12.13m1.98 0h1.4q.13 0 .14-.13V5.91a.13.13 0 0 0-.14-.14H5.4q-.1.01-.12.14v1.32q0 .13.12.13m1.95 0h1.42q.1 0 .12-.13V5.91q0-.12-.12-.14H7.35q-.1.01-.12.14v1.32q.01.13.12.13M3.42 5.5h1.41c.07 0 .13-.08.13-.15V4.03a.13.13 0 0 0-.13-.14h-1.4q-.12 0-.13.14v1.31q0 .13.12.15m1.98 0h1.4c.08 0 .14-.08.14-.15V4.03q0-.13-.14-.14H5.4q-.1 0-.12.14v1.31q0 .13.12.15m1.95 0h1.42c.06 0 .12-.08.12-.15V4.03q-.01-.13-.12-.14H7.35q-.1 0-.12.14v1.31q.01.13.12.15m0-1.9h1.42q.1-.02.12-.14v-1.3Q8.88 2 8.77 2H7.35q-.1 0-.12.14v1.3q.01.13.12.14m1.97 3.78h1.4a.13.13 0 0 0 .14-.13V5.91q-.01-.12-.13-.14H9.32q-.1.01-.12.14v1.32q.01.13.12.13" opacity=".5"/>
|
|
5440
|
-
</symbol>`,
|
|
5440
|
+
</symbol>`,Su=`<symbol id="file-tree-builtin-eslint" viewBox="0 0 16 16">
|
|
5441
5441
|
<path fill="currentColor" d="M11.16 6.1 8.12 4.35a.3.3 0 0 0-.24 0L4.84 6.1a.3.3 0 0 0-.12.2v3.5q0 .14.12.22l3.04 1.74q.12.08.24 0l3.04-1.74a.2.2 0 0 0 .13-.22V6.3a.3.3 0 0 0-.13-.2" opacity=".5"/>
|
|
5442
5442
|
<path fill="currentColor" d="m.1 7.69 3.63-6.3A.8.8 0 0 1 4.37 1h7.26c.26 0 .5.17.64.4l3.63 6.27a.8.8 0 0 1 0 .75l-3.63 6.24a.7.7 0 0 1-.64.34H4.37a.7.7 0 0 1-.64-.34L.1 8.41a.7.7 0 0 1 0-.72m3 3.02q.01.15.14.23l4.63 2.66q.13.06.26 0l4.63-2.66a.3.3 0 0 0 .14-.23V5.4a.3.3 0 0 0-.14-.23L8.13 2.52a.3.3 0 0 0-.26 0L3.24 5.17a.3.3 0 0 0-.14.23z"/>
|
|
5443
|
-
</symbol>`,
|
|
5443
|
+
</symbol>`,Cu=`<symbol id="file-tree-builtin-font" viewBox="0 0 16 16">
|
|
5444
5444
|
<path fill="currentColor" d="M12.3 13c-1.59 0-2.68-.99-2.68-2.5 0-1.43 1-2.34 2.88-2.35h2.16v-.83c0-1.08-.62-1.68-1.73-1.68-1.05 0-1.66.54-1.73 1.36H9.93c.09-1.43 1.06-2.48 3.05-2.48 1.75 0 3.02.95 3.02 2.68v5.66h-1.29v-1.02h-.04c-.41.66-1.16 1.16-2.37 1.16m.36-1.12c1.14 0 2-.72 2-1.74v-.96H12.6c-1.12 0-1.6.54-1.6 1.28 0 .97.8 1.42 1.66 1.42m-11.24.98H0L3.8 2h1.39l3.8 10.86H7.54l-1.08-3.2H2.5zm3.09-9.25h-.04l-1.6 4.95H6.1z"/>
|
|
5445
|
-
</symbol>`,
|
|
5445
|
+
</symbol>`,wu=`<symbol id="file-tree-builtin-git" viewBox="0 0 16 16">
|
|
5446
5446
|
<path fill="currentColor" d="M14.74 7.38 8.62 1.26a.9.9 0 0 0-1.27 0L6.08 2.53l1.61 1.61a1.07 1.07 0 0 1 1.36 1.37l1.55 1.55a1.07 1.07 0 0 1 1.1 1.77 1.07 1.07 0 0 1-1.74-1.16L8.5 6.22v3.8a1.07 1.07 0 1 1-.89-.02V6.15a1.07 1.07 0 0 1-.58-1.4l-1.58-1.6-4.2 4.2a.9.9 0 0 0 0 1.27l6.12 6.12a.9.9 0 0 0 1.27 0l6.09-6.09a.9.9 0 0 0 0-1.27"/>
|
|
5447
|
-
</symbol>`,
|
|
5447
|
+
</symbol>`,Tu=`<symbol id="file-tree-builtin-go" viewBox="0 0 16 16">
|
|
5448
5448
|
<path fill="currentColor" fill-rule="evenodd" d="M4.41 4.57A3.2 3.2 0 0 1 6.87 5q.74.49 1.08 1.29.08.12-.1.16l-1.55.4c-.14.03-.15.04-.27-.1a1 1 0 0 0-.44-.34 1.6 1.6 0 0 0-1.68.14q-.95.61-.94 1.73c0 .73.52 1.33 1.25 1.43q.95.1 1.58-.6l.25-.34h-1.8c-.19 0-.24-.12-.17-.27.12-.28.34-.76.47-1a.3.3 0 0 1 .24-.14h2.98a4 4 0 0 1 .64-1.19 4 4 0 0 1 2.6-1.52 3.5 3.5 0 0 1 2.64.46q1.13.73 1.31 2.04a3.5 3.5 0 0 1-1.06 3.09q-.93.92-2.23 1.17l-.74.08a3.5 3.5 0 0 1-2.27-.8 3 3 0 0 1-.93-1.42 4 4 0 0 1-.39.61 4 4 0 0 1-2.64 1.56 3.3 3.3 0 0 1-2.5-.6 3 3 0 0 1-1.18-2.03 3.5 3.5 0 0 1 .8-2.67 4 4 0 0 1 2.6-1.58M13.1 7.5a1.53 1.53 0 0 0-1.9-1.21q-1.3.3-1.62 1.59a1.5 1.5 0 0 0 .85 1.72q.77.33 1.52-.05a2 2 0 0 0 1.18-1.74q0-.17-.03-.3" clip-rule="evenodd"/>
|
|
5449
|
-
</symbol>`,
|
|
5449
|
+
</symbol>`,Eu=`<symbol id="file-tree-builtin-graphql" viewBox="0 0 16 16">
|
|
5450
5450
|
<path fill="currentColor" fill-rule="evenodd" d="M8 1a1.25 1.25 0 0 1 1.18 1.65l2.8 1.61q.33-.25.77-.26a1.25 1.25 0 0 1 .48 2.4v3.2a1.25 1.25 0 1 1-1.25 2.13l-2.8 1.62A1.25 1.25 0 0 1 8 15a1.25 1.25 0 0 1-1.18-1.65l-2.8-1.62q-.33.26-.77.27a1.25 1.25 0 0 1-.48-2.4V6.4a1.25 1.25 0 1 1 1.25-2.14l2.8-1.61A1.25 1.25 0 0 1 8 1M4.44 11.14l-.06.13 2.75 1.58a1.25 1.25 0 0 1 1.74 0l2.74-1.58-.05-.13zm3.89-7.68a1.3 1.3 0 0 1-.66 0L4.03 9.77q.37.3.45.78h7.04q.08-.48.45-.78zM4.38 4.73a1.24 1.24 0 0 1-1.02 1.76v3.02l.13.01 3.67-6.35-.03-.02zm4.46-1.56 3.67 6.35.13-.01V6.49a1.25 1.25 0 0 1-1.03-1.76L8.87 3.15z" clip-rule="evenodd"/>
|
|
5451
|
-
</symbol>`,
|
|
5451
|
+
</symbol>`,Du=`<symbol id="file-tree-builtin-html" viewBox="0 0 16 16">
|
|
5452
5452
|
<path fill="currentColor" d="M8 1C2.24 1 1 2.24 1 8s1.24 7 7 7 7-1.24 7-7-1.24-7-7-7" class="bg" opacity=".2"/>
|
|
5453
5453
|
<path fill="currentColor" d="M10.48 3.76a.5.5 0 0 1 .4.58L10.6 5.8h1.14a.5.5 0 0 1 0 1h-1.32L10 9.2h1.08a.5.5 0 0 1 0 1H9.8l-.3 1.64a.5.5 0 1 1-.98-.18l.27-1.46H6.4l-.3 1.64a.5.5 0 1 1-.98-.18l.27-1.46H4.25a.5.5 0 0 1 0-1h1.32L6 6.8H4.93a.5.5 0 0 1 0-1H6.2l.3-1.64a.5.5 0 1 1 .98.18L7.2 5.8h2.4l.3-1.64a.5.5 0 0 1 .58-.4M6.58 9.2h2.4l.44-2.4h-2.4z" class="fg"/>
|
|
5454
|
-
</symbol>`,
|
|
5454
|
+
</symbol>`,Ou=`<symbol id="file-tree-builtin-image" viewBox="0 0 16 16">
|
|
5455
5455
|
<path fill="currentColor" d="M12.5 2A2.5 2.5 0 0 1 15 4.5v4.67l-4.05-3.54-4.08 4.08-3-2L1 10.6V4.5A2.5 2.5 0 0 1 3.5 2z" opacity=".3"/>
|
|
5456
5456
|
<path fill="currentColor" d="M15 10.5v1a2.5 2.5 0 0 1-2.5 2.5h-9a2.5 2.5 0 0 1-2.46-2.04L4 9l3 2 4-4zm-7-5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0"/>
|
|
5457
|
-
</symbol>`,
|
|
5457
|
+
</symbol>`,ku=`<symbol id="file-tree-builtin-javascript" viewBox="0 0 16 16">
|
|
5458
5458
|
<path fill="currentColor" d="M8 1C2.24 1 1 2.24 1 8s1.24 7 7 7 7-1.24 7-7-1.24-7-7-7" class="bg" opacity=".2"/>
|
|
5459
5459
|
<path fill="currentColor" d="M8.1 9.64h.95c.04.62.28.76 1.28.76s1.2-.14 1.2-.85c0-.66-.2-.85-1.2-1.07-1.79-.38-2.18-.7-2.18-1.86C8.15 5.3 8.54 5 10.31 5c1.67 0 2.04.26 2.07 1.42h-.95c-.02-.43-.23-.53-1.1-.53-1 0-1.22.14-1.22.74 0 .52.22.7 1.24.92 1.76.38 2.15.73 2.15 2 0 1.44-.4 1.75-2.24 1.75-1.8 0-2.18-.3-2.15-1.66M3.5 9.5h.98c0 .76.15.92.85.92.77 0 .94-.18.94-1.02V5.1h1v4.34c0 1.54-.35 1.87-1.92 1.87-1.55 0-1.89-.32-1.86-1.8"/>
|
|
5460
|
-
</symbol>`,
|
|
5460
|
+
</symbol>`,Au=`<symbol id="file-tree-builtin-json" viewBox="0 0 16 16">
|
|
5461
5461
|
<path fill="currentColor" d="M13.25 11.5V9.75a.5.5 0 0 1 .36-.48l.55-.15a1.16 1.16 0 0 0 0-2.24l-.55-.15a.5.5 0 0 1-.36-.48V4.5a2.5 2.5 0 0 0-2.5-2.5h-.25a.5.5 0 0 0 0 1h.25a1.5 1.5 0 0 1 1.5 1.5v1.75a1.5 1.5 0 0 0 1.09 1.44l.54.15a.16.16 0 0 1 0 .32l-.54.15a1.5 1.5 0 0 0-1.09 1.44v1.75a1.5 1.5 0 0 1-1.5 1.5h-.25a.5.5 0 0 0 0 1h.25a2.5 2.5 0 0 0 2.5-2.5m-10.5 0V9.75a.5.5 0 0 0-.36-.48l-.55-.15a1.16 1.16 0 0 1 0-2.24l.55-.15a.5.5 0 0 0 .36-.48V4.5A2.5 2.5 0 0 1 5.25 2h.25a.5.5 0 0 1 0 1h-.25a1.5 1.5 0 0 0-1.5 1.5v1.75a1.5 1.5 0 0 1-1.09 1.44l-.54.15a.16.16 0 0 0 0 .32l.54.15a1.5 1.5 0 0 1 1.09 1.45v1.74a1.5 1.5 0 0 0 1.5 1.5h.25a.5.5 0 0 1 0 1h-.25a2.5 2.5 0 0 1-2.5-2.5"/>
|
|
5462
|
-
</symbol>`,
|
|
5462
|
+
</symbol>`,ju=`<symbol id="file-tree-builtin-markdown" viewBox="0 0 16 16">
|
|
5463
5463
|
<path fill="currentColor" d="M1 12V4h2l2 2.5L7 4h2v8H7V7.5l-2 2-2-2V12zm9-3 3 3.5L16 9h-2V4h-2v5z"/>
|
|
5464
|
-
</symbol>`,
|
|
5464
|
+
</symbol>`,Mu=`<symbol id="file-tree-builtin-mcp" viewBox="0 0 16 16">
|
|
5465
5465
|
<path fill="currentColor" d="M9.26-.04a3 3 0 0 1 2 .82 2.8 2.8 0 0 1 .8 2.35 2.9 2.9 0 0 1 2.41.8l.03.02a2.74 2.74 0 0 1 0 3.94l-5.8 5.69-.04.06-.02.07q0 .04.02.07.01.04.04.06l1.2 1.17a.55.55 0 0 1 0 .79.6.6 0 0 1-.81 0l-1.2-1.17a1.3 1.3 0 0 1 0-1.84L13.7 7.1a1.65 1.65 0 0 0 .37-1.82 2 2 0 0 0-.37-.54l-.03-.03a1.73 1.73 0 0 0-2.4 0L6.47 9.4l-.07.06a.58.58 0 0 1-.92-.18.6.6 0 0 1 .12-.6l4.85-4.76a1.65 1.65 0 0 0 0-2.36 1.73 1.73 0 0 0-2.4 0l-6.43 6.3a.6.6 0 0 1-.8 0 .55.55 0 0 1 0-.8L7.25.79a3 3 0 0 1 2-.82"/>
|
|
5466
5466
|
<path fill="currentColor" d="M9.26 2.19a.6.6 0 0 1 .52.34.6.6 0 0 1 0 .43l-.12.18L4.9 7.79a1.65 1.65 0 0 0 0 2.36 1.73 1.73 0 0 0 2.4 0l4.75-4.66a.58.58 0 0 1 .93.18.6.6 0 0 1-.12.61l-4.75 4.66a2.9 2.9 0 0 1-4.01 0 2.75 2.75 0 0 1-.62-3.04A3 3 0 0 1 4.1 7l4.74-4.65a.6.6 0 0 1 .4-.16"/>
|
|
5467
|
-
</symbol>`,
|
|
5467
|
+
</symbol>`,Nu=`<symbol id="file-tree-builtin-nextjs" viewBox="0 0 16 16">
|
|
5468
5468
|
<defs>
|
|
5469
5469
|
<linearGradient id="a" x1="4.522" x2="14" y1="3.943" y2="16" gradientUnits="userSpaceOnUse">
|
|
5470
5470
|
<stop stop-color="currentColor"/>
|
|
@@ -5474,82 +5474,82 @@ slicc-dock-tree .dock-tree__preview--active {
|
|
|
5474
5474
|
<path fill="currentColor" d="M3 2h1.522v9.09H3z"/>
|
|
5475
5475
|
<path fill="url(#a)" d="M4.903 2 15 15.075q-.565.5-1.195.925L4.522 3.943z"/>
|
|
5476
5476
|
<path fill="currentColor" d="M12.172 2h-1.508v9.094h1.508z"/>
|
|
5477
|
-
</symbol>`,
|
|
5477
|
+
</symbol>`,Pu=`<symbol id="file-tree-builtin-npm" viewBox="0 0 16 16">
|
|
5478
5478
|
<path fill="currentColor" d="M2 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z" class="vector" opacity=".2"/>
|
|
5479
5479
|
<path fill="currentColor" d="M10.5 13H13V3H3v10h5V5.5h2.5z"/>
|
|
5480
|
-
</symbol>`,
|
|
5480
|
+
</symbol>`,Fu=`<symbol id="file-tree-builtin-oxc" viewBox="0 0 16 16">
|
|
5481
5481
|
<path fill="currentColor" d="M9.5 1a.5.5 0 0 1 .5.5V3h3.5a.5.5 0 0 1 .38.83L10.5 7.69v1.44q.41.04.95-.16a4 4 0 0 0 .72-.35l.04-.03h.01a.5.5 0 0 1 .67.1l2 2.5a.5.5 0 0 1 0 .62c-.76.96-3.14 2.69-6.89 2.69s-6.13-1.73-6.89-2.69a.5.5 0 0 1 0-.62l2-2.5a.5.5 0 0 1 .67-.1l.05.03.16.09q.22.13.56.26.54.2.95.16V7.69L2.12 3.83A.5.5 0 0 1 2.5 3H6V1.5a.5.5 0 0 1 .5-.5zM7 3.5a.5.5 0 0 1-.5.5H3.6l2.78 3.17a.5.5 0 0 1 .12.33v2a.5.5 0 0 1-.28.45c-.7.35-1.5.15-2.02-.05a5 5 0 0 1-.58-.26l-1.46 1.84c.82.78 2.8 2.02 5.84 2.02s5.02-1.24 5.84-2.02l-1.46-1.83a5 5 0 0 1-.58.26c-.52.2-1.33.39-2.02.04a.5.5 0 0 1-.28-.45v-2a.5.5 0 0 1 .12-.33L12.4 4H9.5a.5.5 0 0 1-.5-.5V2H7z"/>
|
|
5482
|
-
</symbol>`,
|
|
5482
|
+
</symbol>`,Iu=`<symbol id="file-tree-builtin-postcss" viewBox="0 0 16 16">
|
|
5483
5483
|
<path fill="currentColor" d="M14.5 8a6.5 6.5 0 0 0-5.9-6.47l5.42 8.93A7 7 0 0 0 14.5 8M2.88 12A6.5 6.5 0 0 0 8 14.5c2.08 0 3.93-.98 5.12-2.5zm8.62-1h1.68L11.5 8.24zm-1-.55a4 4 0 0 1-.7.55h.7zM8 5.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5M5.5 11h.7a4 4 0 0 1-.7-.55zm-2.68 0H4.5V8.24zm3.76-6.2A4 4 0 0 1 8 4.5q.76 0 1.42.3L8 2.46zM1.5 8q0 1.31.48 2.46L7.4 1.53A6.5 6.5 0 0 0 1.5 8m14 0a7.5 7.5 0 0 1-.99 3.72l-.01.03-.02.03A7.5 7.5 0 0 1 8 15.5a7.5 7.5 0 0 1-6.5-3.75l-.01-.03A7.5 7.5 0 1 1 15.5 8"/>
|
|
5484
|
-
</symbol>`,
|
|
5484
|
+
</symbol>`,Lu=`<symbol id="file-tree-builtin-prettier" viewBox="0 0 16 16">
|
|
5485
5485
|
<path fill="currentColor" d="M6 12v1H4.93v-1zm1-2v1H2v-1zm6-4v1h-3V6zm-1-4v1H9V2z"/>
|
|
5486
5486
|
<path fill="currentColor" d="M11.5 10v1H8v-1zM5 6v1H2V6zm5-2v1H9V4z" opacity=".8"/>
|
|
5487
5487
|
<path fill="currentColor" d="M6 14v1H2v-1zm-.5-6v1H2V8zM13 4v1h-3V4zM4.93 2v1H2V2z" opacity=".6"/>
|
|
5488
5488
|
<path fill="currentColor" d="M4.93 12v1H2v-1zM13 8v1H9V8zM5.5 4v1H2V4zM9 2v1H4.93V2z" opacity=".4"/>
|
|
5489
|
-
</symbol>`,
|
|
5489
|
+
</symbol>`,Ru=`<symbol id="file-tree-builtin-python" viewBox="0 0 16 16">
|
|
5490
5490
|
<path fill="currentColor" d="M8.33 8.4H10c1.16 0 1.9-.73 1.9-1.86V5.08q0-.24.25-.24h.74c.75 0 1.33.32 1.66.97q.4.73.41 1.46c.09.9.09 1.78-.24 2.67-.25.73-.75 1.3-1.58 1.46h-4.8c-.08 0-.25 0-.25.08v.4s.17.09.25.09h2.82q.34-.02.33.32v1.06c0 .56-.25.97-.75 1.13-.41.16-.83.33-1.24.4a7 7 0 0 1-2.98-.07 3 3 0 0 1-1.16-.49c-.33-.32-.58-.65-.5-1.14v-2.91c0-1.13.67-1.78 1.82-1.78q.89-.1 1.66-.08m2.32 4.86a.65.65 0 0 0-.66-.65c-.34 0-.67.33-.67.65s.33.57.67.65a.65.65 0 0 0 .66-.65" class="bg" opacity=".8"/>
|
|
5491
5491
|
<path fill="currentColor" d="M7.67 7.6H6c-1.16 0-1.9.73-1.9 1.86v1.46q0 .24-.25.24h-.74c-.75 0-1.33-.32-1.66-.97a3 3 0 0 1-.41-1.46 6 6 0 0 1 .24-2.67c.25-.73.75-1.3 1.58-1.46h4.8c.08 0 .25 0 .25-.08v-.4s-.17-.09-.25-.09H4.85c-.24 0-.33-.08-.33-.32V2.65c0-.56.25-.97.75-1.13.41-.16.83-.33 1.24-.4a7 7 0 0 1 2.98.07c.41.09.83.25 1.16.49.33.32.58.65.5 1.13v2.92c0 1.14-.67 1.78-1.82 1.78-.58.08-1.16.08-1.66.08M5.35 2.73c0 .33.25.65.66.65.33 0 .66-.32.66-.65 0-.32-.33-.56-.66-.64a.65.65 0 0 0-.66.64" class="fg"/>
|
|
5492
|
-
</symbol>`,
|
|
5492
|
+
</symbol>`,zu=`<symbol id="file-tree-builtin-react" viewBox="0 0 16 16">
|
|
5493
5493
|
<path fill="currentColor" d="M8 6.65c.73 0 1.31.6 1.31 1.35S8.73 9.35 8 9.35 6.69 8.75 6.69 8 7.27 6.65 8 6.65"/>
|
|
5494
5494
|
<path fill="currentColor" fill-rule="evenodd" d="M8 2.55c1.3-.99 2.59-1.34 3.5-.8.92.55 1.27 1.87 1.08 3.53C14.06 5.94 15 6.9 15 8s-.94 2.06-2.42 2.72c.19 1.65-.16 2.98-1.08 3.52-.91.55-2.2.2-3.5-.8-1.3 1-2.58 1.35-3.5.8-.91-.54-1.27-1.87-1.08-3.52C1.94 10.06 1 9.1 1 8s.94-2.06 2.42-2.72c-.19-1.66.17-2.98 1.08-3.52s2.2-.2 3.5.8M4.26 11.2c-.08 1.34.28 2.03.68 2.26s1.15.22 2.25-.52l.11-.09a12 12 0 0 1-1.24-1.39 11 11 0 0 1-1.8-.41zm7.47-.15q-.83.27-1.79.41-.6.8-1.24 1.4l.11.08c1.1.74 1.86.76 2.25.52.4-.23.76-.92.68-2.26zm-3.04.54a14 14 0 0 1-1.38 0q.34.38.69.7.35-.32.7-.7M8 5.29q-.76 0-1.47.1A13 13 0 0 0 5.07 8a14 14 0 0 0 1.46 2.62 13 13 0 0 0 2.94 0A13 13 0 0 0 10.93 8a14 14 0 0 0-1.46-2.62A13 13 0 0 0 8 5.3M4.64 9.18q-.15.5-.25.96.44.16.94.27a15 15 0 0 1-.7-1.23m6.73 0a15 15 0 0 1-.7 1.23q.5-.11.95-.27a10 10 0 0 0-.25-.96M3.44 6.26C2.27 6.86 1.87 7.53 1.87 8s.4 1.14 1.57 1.74l.13.07q.18-.88.55-1.81a12 12 0 0 1-.55-1.8q-.07.02-.13.06m8.99-.07A12 12 0 0 1 11.88 8q.36.94.55 1.8l.13-.06c1.17-.6 1.56-1.27 1.56-1.74s-.39-1.14-1.56-1.74zm-7.1-.6q-.5.11-.94.27.1.46.25.96a15 15 0 0 1 .69-1.23m5.34 0a15 15 0 0 1 .7 1.23q.14-.5.24-.96-.44-.15-.94-.27M7.18 3.06c-1.09-.74-1.85-.76-2.24-.52s-.76.92-.69 2.26l.01.15a11 11 0 0 1 1.8-.41q.6-.8 1.24-1.4zm3.88-.52c-.4-.24-1.15-.22-2.25.52l-.12.08q.65.6 1.25 1.4.96.15 1.8.41v-.14c.08-1.35-.28-2.04-.68-2.27M8 3.7a10 10 0 0 0-.7.7 14 14 0 0 1 1.4 0 10 10 0 0 0-.7-.7" clip-rule="evenodd"/>
|
|
5495
|
-
</symbol>`,
|
|
5495
|
+
</symbol>`,Bu=`<symbol id="file-tree-builtin-ruby" viewBox="0 0 16 16">
|
|
5496
5496
|
<path fill="currentColor" fill-rule="evenodd" d="M11.04 2c.48 0 .92.23 1.18.6l2.54 3.65c.37.52.3 1.23-.15 1.69l-5.58 5.64a1.47 1.47 0 0 1-2.06 0L1.39 7.94a1.3 1.3 0 0 1-.15-1.7l2.54-3.63q.2-.3.5-.45.33-.16.68-.16zm.84 2.17a.5.5 0 0 0-.7-.05L8 6.84 4.83 4.12a.5.5 0 0 0-.65.76L6.65 7H3.5a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1H9.35l2.48-2.12a.5.5 0 0 0 .05-.7" clip-rule="evenodd"/>
|
|
5497
|
-
</symbol>`,
|
|
5497
|
+
</symbol>`,Vu=`<symbol id="file-tree-builtin-rust" viewBox="0 0 16 16">
|
|
5498
5498
|
<path fill="currentColor" fill-rule="evenodd" d="M8 .8a.2.2 0 0 1 .18.1l.38.6.16.02.5-.53.01-.01a.2.2 0 0 1 .33.08l.25.68.16.05.59-.43h.02a.2.2 0 0 1 .3.14l.12.71.15.08.65-.3a.2.2 0 0 1 .2.02.2.2 0 0 1 .1.18l-.03.72.12.1.71-.16a.2.2 0 0 1 .25.25l-.17.7q.06.06.1.13l.73-.03A.2.2 0 0 1 14 4a.2.2 0 0 1 .02.2l-.3.66.08.14.71.12a.2.2 0 0 1 .14.32l-.43.59.05.16.68.25a.2.2 0 0 1 .07.35l-.53.49.01.16.62.38a.2.2 0 0 1 0 .36l-.62.38-.01.16.53.5a.2.2 0 0 1-.07.34l-.68.25-.05.16.43.59a.2.2 0 0 1-.14.32l-.72.12-.07.15.3.65a.2.2 0 0 1-.02.2.2.2 0 0 1-.18.1l-.72-.03-.1.13.16.7a.2.2 0 0 1-.25.25l-.7-.17-.13.1.03.73a.2.2 0 0 1-.1.18.2.2 0 0 1-.2.02l-.66-.3-.14.08-.12.71a.2.2 0 0 1-.32.14l-.59-.43-.16.05-.25.68a.2.2 0 0 1-.34.07l-.5-.53-.16.01-.38.62a.2.2 0 0 1-.36 0l-.38-.62-.16-.01-.5.53a.2.2 0 0 1-.34-.07l-.25-.68-.16-.05-.59.43a.2.2 0 0 1-.32-.14L5 13.78l-.15-.07-.65.3a.2.2 0 0 1-.2-.02.2.2 0 0 1-.1-.18l.03-.72-.13-.1-.7.16a.2.2 0 0 1-.25-.25l.17-.7-.1-.13-.73.03a.2.2 0 0 1-.2-.3l.3-.66-.08-.14-.71-.12a.2.2 0 0 1-.14-.32l.43-.59-.05-.16-.68-.25A.2.2 0 0 1 1 9.22l.53-.5-.02-.16-.6-.38A.2.2 0 0 1 .8 8a.2.2 0 0 1 .1-.18l.6-.38.02-.16-.53-.5a.2.2 0 0 1 .07-.34l.68-.25.05-.16-.43-.59a.2.2 0 0 1 .14-.32L2.2 5l.08-.15L2 4.2a.2.2 0 0 1 .2-.3l.72.03.1-.13-.16-.7a.2.2 0 0 1 .25-.25l.7.16.13-.1-.03-.72A.2.2 0 0 1 4 2a.2.2 0 0 1 .2-.02l.65.3L5 2.2l.12-.71v-.03a.2.2 0 0 1 .32-.1l.59.41.16-.04.25-.68.01-.02A.2.2 0 0 1 6.8.99l.49.53.16-.02.38-.61.02-.02A.2.2 0 0 1 8 .79M6.8 9.45h1.26l.06.01q.03.01.03.05v1.52q0 .07-.09.06h-4.5A5.4 5.4 0 0 0 8 13.42a5.4 5.4 0 0 0 4.45-2.33h-2.42c-.36 0-.68-.5-.77-.75-.08-.22-.2-.91-.25-1.12-.15-.61-.59-.71-.78-.73H6.8zM8 2.58a5.4 5.4 0 0 0-4.07 1.85h5.74l.17.02c.23.03.6.12.96.35.34.23.83.68.83 1.4 0 .66-.55 1.16-1.08 1.5.42.33.7.53.86 1.44.04.17.34.32.62.29.29-.03.62-.16.62-.75v-.24q0-.1.07-.1h.68A5.43 5.43 0 0 0 8 2.59M2.96 6.03a5.4 5.4 0 0 0-.19 3.37h1.66V6.03zM6.8 7.06h1.66c.35 0 .77-.12.77-.47 0-.42-.55-.53-.65-.53H6.8z" clip-rule="evenodd"/>
|
|
5499
|
-
</symbol>`,
|
|
5499
|
+
</symbol>`,Hu=`<symbol id="file-tree-builtin-sass" viewBox="0 0 16 16">
|
|
5500
5500
|
<path fill="currentColor" fill-rule="evenodd" d="M8.08 1.44c2.41-.91 4.96-.37 5.35 1.27.39 1.62-.92 3.56-2.6 4.25a5 5 0 0 1-3.26.35c-.58-.2-.92-.62-1-.85-.03-.09-.09-.24 0-.3.05-.03.08-.02.22.15s.7.6 1.75.48c2.78-.34 4.45-2.64 3.92-3.88-.37-.87-2.5-1.26-5.18.16C4.03 4.81 3.85 6.24 3.82 6.8c-.08 1.5 1.73 2.28 2.7 3.4q.04.03.07.08c.3-.12.7-.19 1.35-.2 1.58-.03 2.47 1.08 2.43 2.08-.03.78-.7 1.1-.82 1.13-.1.01-.14.02-.15-.06q-.03-.06.13-.15c.16-.09.42-.3.48-.72.05-.43-.24-1.44-1.76-1.63a3 3 0 0 0-1.33.08c.27.62.32 1.87-.29 2.83-.63 1-1.8 1.61-2.93 1.27-.37-.1-.93-.92-.45-2.05.46-1.07 2.4-2.12 2.66-2.26-.9-.83-3.08-1.95-3.4-3.65-.08-.49.13-1.65 1.46-2.98a12 12 0 0 1 4.11-2.52m-1.88 9.7c-.01.01-.9.47-1.52 1.17-.59.66-.75 1.48-.43 1.69.3.18 1-.04 1.51-.62a3 3 0 0 0 .5-.9q.2-.64.02-1.39z" clip-rule="evenodd"/>
|
|
5501
|
-
</symbol>`,
|
|
5501
|
+
</symbol>`,Uu=`<symbol id="file-tree-builtin-stylelint" viewBox="0 0 16 16">
|
|
5502
5502
|
<path fill="currentColor" d="M4 3v3.5l1.5-1L7 15 .5 6l1-1.5L0 3l2.5-2h1zm12 0-1.5 1.5 1 1.5L9 15l1.5-9.5 1.5 1V3l.5-2h1zm-8 8.5a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1m0-3a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1m0-3a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1"/>
|
|
5503
5503
|
<path fill="currentColor" d="M6.5 2.5V4l-2 1.5v-4zm5 3L9.5 4V2.5l2-1zM9 4H7V2.5h2z"/>
|
|
5504
|
-
</symbol>`,
|
|
5504
|
+
</symbol>`,Wu=`<symbol id="file-tree-builtin-svelte" viewBox="0 0 16 16">
|
|
5505
5505
|
<path fill="currentColor" d="m3.98 3.7 3.36-2.08a4.5 4.5 0 0 1 5.9 1.23 4 4 0 0 1 .7 3.02q-.16.75-.58 1.4c.42.77.56 1.66.4 2.52a3.7 3.7 0 0 1-1.57 2.4l-.17.1-3.36 2.09a4.5 4.5 0 0 1-5.9-1.23 4 4 0 0 1-.66-1.44 4 4 0 0 1-.04-1.58 4 4 0 0 1 .58-1.4 4 4 0 0 1-.4-2.52 3.7 3.7 0 0 1 1.57-2.4zl3.36-2.08zm7.87 0a2.7 2.7 0 0 0-1.26-.95 2.7 2.7 0 0 0-1.6-.07 3 3 0 0 0-.52.2l-.16.09-3.36 2.08a2 2 0 0 0-.69.64 2 2 0 0 0-.36.86 2.3 2.3 0 0 0 .42 1.81A2.7 2.7 0 0 0 7.18 9.4q.28-.06.53-.2l.16-.09 1.28-.79.2-.09a.8.8 0 0 1 .87.31.7.7 0 0 1 .13.55.7.7 0 0 1-.24.4l-.08.05-3.36 2.08-.2.09a1 1 0 0 1-.49-.02 1 1 0 0 1-.38-.3 1 1 0 0 1-.13-.37v-.1l.01-.13-.13-.03a4 4 0 0 1-1.1-.5l-.2-.14-.18-.12-.07.18-.08.3a2.3 2.3 0 0 0 .43 1.82q.45.64 1.19.93.73.28 1.51.14l.16-.04q.27-.07.52-.2l.16-.09 3.36-2.08q.4-.25.69-.64.27-.4.36-.86a2.3 2.3 0 0 0-.42-1.82 2.7 2.7 0 0 0-1.27-.95 2.7 2.7 0 0 0-1.6-.08q-.27.07-.52.2l-.16.1-1.28.79-.2.09a1 1 0 0 1-.49-.03 1 1 0 0 1-.38-.29.7.7 0 0 1-.13-.54.7.7 0 0 1 .24-.4l.08-.06L9.33 4.4l.2-.1a.8.8 0 0 1 .87.32 1 1 0 0 1 .13.38v.22l.11.04q.6.18 1.12.5l.2.14.17.12.06-.19.08-.3a2.3 2.3 0 0 0-.42-1.81z"/>
|
|
5506
|
-
</symbol>`,
|
|
5506
|
+
</symbol>`,Gu=`<symbol id="file-tree-builtin-svg" viewBox="0 0 16 16">
|
|
5507
5507
|
<path fill="currentColor" d="M5 7a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v6a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2z"/>
|
|
5508
5508
|
<path fill="currentColor" d="M6 1a5 5 0 0 1 4.58 3H7a3 3 0 0 0-3 3v3.58A5 5 0 0 1 6 1" opacity=".5"/>
|
|
5509
|
-
</symbol>`,
|
|
5509
|
+
</symbol>`,Ku=`<symbol id="file-tree-builtin-svgo" viewBox="0 0 16 16">
|
|
5510
5510
|
<path fill="currentColor" d="M9.43 4.8A.6.6 0 1 1 9.19 6l-.56.96a1.2 1.2 0 0 1 .32 1.58l.7.53a.89.89 0 1 1-.17.22l-.7-.52a1.2 1.2 0 0 1-1.4.25l-.56.87a.75.75 0 1 1-.57-.2 1 1 0 0 1 .32.05l.56-.87a1.2 1.2 0 0 1-.4-1.24l-1.2-.47a.56.56 0 1 1 .1-.28v.02l1.2.47a1.2 1.2 0 0 1 1.56-.55l.56-.97a.6.6 0 0 1-.15-.64.6.6 0 0 1 .63-.4"/>
|
|
5511
5511
|
<path fill="currentColor" fill-rule="evenodd" d="M9.17 1q.16.63.27 1.26a6 6 0 0 1 1.61.67q.52-.38 1.08-.71l1.65 1.64q-.32.56-.68 1.05.48.78.72 1.67.6.09 1.18.25v2.32q-.55.15-1.11.24a6 6 0 0 1-.7 1.82q.31.44.59.91l-1.65 1.65-.85-.55a6 6 0 0 1-1.9.83q-.08.47-.2.95H6.84q-.12-.46-.2-.93a6 6 0 0 1-1.96-.81q-.39.27-.8.51l-1.65-1.65q.25-.43.53-.84a6 6 0 0 1-.75-1.9L1 9.16V6.83q.54-.14 1.09-.24a6 6 0 0 1 .77-1.74q-.33-.47-.63-.98l1.65-1.65q.54.32 1.03.68a6 6 0 0 1 1.66-.66q.1-.61.26-1.24zM7.96 3.73a4 4 0 0 0-1.74.36 4.5 4.5 0 0 0-2.3 2.3 4.4 4.4 0 0 0-.1 3.29l.03.06a4.4 4.4 0 0 0 2.4 2.47 4.4 4.4 0 0 0 3.48-.02l.03-.02a4.4 4.4 0 0 0 2.3-2.42l.06-.14a4.4 4.4 0 0 0-.2-3.4 4.4 4.4 0 0 0-2.13-2.07L9.47 4a4 4 0 0 0-1.51-.27" clip-rule="evenodd"/>
|
|
5512
|
-
</symbol>`,
|
|
5512
|
+
</symbol>`,qu=`<symbol id="file-tree-builtin-swift" viewBox="0 0 16 16">
|
|
5513
5513
|
<path fill="currentColor" d="M9.63 1c6.15 4.35 4.16 9.15 4.16 9.15s1.75 2.05 1.04 3.85c0 0-.72-1.26-1.93-1.26-1.17 0-1.85 1.26-4.2 1.26C3.47 14 1 9.46 1 9.46c4.71 3.22 7.93.94 7.93.94C6.8 9.12 2.29 3 2.29 3c3.93 3.47 5.63 4.39 5.63 4.39-1.01-.87-3.86-5.13-3.86-5.13C6.34 4.66 10.86 8 10.86 8c1.28-3.7-1.23-7-1.23-7"/>
|
|
5514
|
-
</symbol>`,
|
|
5514
|
+
</symbol>`,Ju=`<symbol id="file-tree-builtin-table" viewBox="0 0 16 16">
|
|
5515
5515
|
<path fill="currentColor" d="M8 4a3 3 0 0 0 3 3h3v5.5a2.5 2.5 0 0 1-2.5 2.5h-7A2.5 2.5 0 0 1 2 12.5v-9A2.5 2.5 0 0 1 4.5 1H8z" class="bg" opacity=".4"/>
|
|
5516
5516
|
<path fill="currentColor" d="M11.5 8a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5zM5 12h2.5v-1H5zm3.5 0H11v-1H8.5zM5 10h2.5V9H5zm3.5 0H11V9H8.5zm1-9a.5.5 0 0 1 .354.146l4 4A.5.5 0 0 1 14 5.5V6h-3a2 2 0 0 1-2-2V1z" class="fg"/>
|
|
5517
|
-
</symbol>`,
|
|
5517
|
+
</symbol>`,Yu=`<symbol id="file-tree-builtin-tailwind" viewBox="0 0 16 16">
|
|
5518
5518
|
<path fill="currentColor" fill-rule="evenodd" d="M8 4Q5.2 4 4.5 6.67q1.05-1.34 2.45-1c.53.12.91.5 1.33.9C8.98 7.23 9.77 8 11.5 8q2.8 0 3.5-2.67-1.05 1.34-2.45 1c-.53-.12-.91-.5-1.33-.9C10.52 4.77 9.73 4 8 4M4.5 8Q1.7 8 1 10.67q1.05-1.34 2.45-1c.53.12.91.5 1.33.9C5.48 11.23 6.26 12 8 12q2.8 0 3.5-2.67-1.05 1.34-2.45 1c-.53-.12-.91-.5-1.33-.9C7.02 8.77 6.24 8 4.5 8" clip-rule="evenodd"/>
|
|
5519
|
-
</symbol>`,
|
|
5519
|
+
</symbol>`,Xu=`<symbol id="file-tree-builtin-terraform" viewBox="0 0 16 16">
|
|
5520
5520
|
<path fill="currentColor" d="M1 0v5.05l4.35 2.53V2.53zm9.18 5.34L5.83 2.82v5.05l4.35 2.53zm.47 5.06V5.34L15 2.82v5.05zm-.48 5.6-4.35-2.53V8.42l4.35 2.53z"/>
|
|
5521
|
-
</symbol>`,
|
|
5521
|
+
</symbol>`,Zu=`<symbol id="file-tree-builtin-text" viewBox="0 0 16 16">
|
|
5522
5522
|
<path fill="currentColor" fill-rule="evenodd" d="M8 4a3 3 0 0 0 3 3h3v5.5a2.5 2.5 0 0 1-2.5 2.5h-7A2.5 2.5 0 0 1 2 12.5v-9A2.5 2.5 0 0 1 4.5 1H8z" class="bg" clip-rule="evenodd" opacity=".4"/>
|
|
5523
5523
|
<path fill="currentColor" d="M8.5 11a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1zm2-2a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1zm-1-8a.5.5 0 0 1 .354.146l4 4A.5.5 0 0 1 14 5.5V6h-3a2 2 0 0 1-2-2V1z"/>
|
|
5524
|
-
</symbol>`,
|
|
5524
|
+
</symbol>`,Qu=`<symbol id="file-tree-builtin-typescript" viewBox="0 0 16 16">
|
|
5525
5525
|
<path fill="currentColor" d="M8 1C2.24 1 1 2.24 1 8s1.24 7 7 7 7-1.24 7-7-1.24-7-7-7" class="bg" opacity=".2"/>
|
|
5526
5526
|
<path fill="currentColor" d="M8.1 9.64h.95c.04.62.28.76 1.28.76s1.2-.14 1.2-.85c0-.66-.2-.85-1.2-1.07-1.79-.38-2.18-.7-2.18-1.86C8.15 5.3 8.54 5 10.31 5c1.67 0 2.04.26 2.07 1.42h-.95c-.02-.43-.23-.53-1.1-.53-1 0-1.22.14-1.22.74 0 .52.22.7 1.24.92 1.76.38 2.15.73 2.15 2 0 1.44-.4 1.75-2.24 1.75-1.8 0-2.18-.3-2.15-1.66m-3 1.57V5.99H3.5v-.9h4.21v.9H6.1v5.22z"/>
|
|
5527
|
-
</symbol
|
|
5527
|
+
</symbol>`,$u=`<symbol id="file-tree-builtin-vite" viewBox="0 0 16 16">
|
|
5528
5528
|
<path fill="currentColor" d="M8.57 14.87c-.18.26-.55.11-.55-.22v-3.18l-.05-.27-.13-.22-.2-.15-.24-.06H4.29c-.26 0-.4-.32-.26-.55L6.08 7c.3-.46 0-1.1-.5-1.1H1.8c-.25 0-.4-.32-.25-.56l2.65-4.2A.3.3 0 0 1 4.46 1h7.9c.26 0 .4.32.26.55l-2.05 3.23c-.29.46 0 1.1.5 1.1h3.12c.26 0 .4.34.24.57z"/>
|
|
5529
|
-
</symbol>`,
|
|
5529
|
+
</symbol>`,ed=`<symbol id="file-tree-builtin-vscode" viewBox="0 0 16 16">
|
|
5530
5530
|
<path fill="currentColor" d="m5.11 9.68-2.4 1.84a.6.6 0 0 1-.75-.04l-.77-.7a.6.6 0 0 1 0-.87L3.28 8zm5.52-8.42a.51.51 0 0 1 .87.36V4.8L7.32 8 5.1 6.32z" opacity=".75"/>
|
|
5531
5531
|
<path fill="currentColor" d="M11.1 14.99h.03zM1.96 4.52a.6.6 0 0 1 .75-.04l8.8 6.71v3.19a.51.51 0 0 1-.88.36L1.19 6.1a.6.6 0 0 1 0-.87z" opacity=".65"/>
|
|
5532
5532
|
<path fill="currentColor" d="M11.62 14.91a.9.9 0 0 1-1-.17.51.51 0 0 0 .88-.36V1.62a.51.51 0 0 0-.87-.36.9.9 0 0 1 1-.17l2.87 1.39a.9.9 0 0 1 .5.8v9.44a.9.9 0 0 1-.5.8z"/>
|
|
5533
|
-
</symbol>`,
|
|
5533
|
+
</symbol>`,td=`<symbol id="file-tree-builtin-vue" viewBox="0 0 16 16">
|
|
5534
5534
|
<path fill="currentColor" d="M9.62 2.25 8 5.02 6.38 2.25H1l7 12 7-12z" opacity=".5"/>
|
|
5535
5535
|
<path fill="currentColor" d="M9.54 2.25 8 4.95l-1.54-2.7H4l4 7 4-7z"/>
|
|
5536
|
-
</symbol>`,
|
|
5536
|
+
</symbol>`,nd=`<symbol id="file-tree-builtin-wasm" viewBox="0 0 16 16">
|
|
5537
5537
|
<path fill="currentColor" d="M13 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h3a2 2 0 1 0 4 0z" class="subtract" opacity=".2"/>
|
|
5538
5538
|
<path fill="currentColor" d="M4.64 11.4h.02l.8-3.4h.91l.73 3.45L7.88 8h.96l-1.25 5h-.97L5.9 9.6 5.1 13h-1L3 8h.98z"/>
|
|
5539
5539
|
<path fill="currentColor" fill-rule="evenodd" d="M13 13h-1.02l-.33-1.11H9.9L9.64 13h-.97l1.26-5h1.54zm-2.49-3.77-.42 1.84h1.32l-.49-1.84z" clip-rule="evenodd"/>
|
|
5540
|
-
</symbol>`,
|
|
5540
|
+
</symbol>`,rd=`<symbol id="file-tree-builtin-webpack" viewBox="0 0 16 16">
|
|
5541
5541
|
<path fill="currentColor" d="M14.1 11.79 8.26 15v-2.5l3.64-1.94zm.4-.35V4.73l-2.14 1.2v4.3zm-12.6.35L7.74 15v-2.5L4.1 10.56zm-.4-.35V4.73l2.14 1.2v4.3zm.25-7.15 6-3.29v2.42L3.9 5.47l-.03.01zm12.5 0L8.25 1v2.42l3.85 2.05.03.01z" class="bg" opacity=".4"/>
|
|
5542
5542
|
<path fill="currentColor" d="m7.74 11.93-3.59-1.92v-3.8l3.6 2.02zm.52 0 3.59-1.92v-3.8l-3.6 2.02zM4.4 5.77 8 3.85l3.6 1.93L8 7.8z" class="fg"/>
|
|
5543
|
-
</symbol>`,
|
|
5543
|
+
</symbol>`,id=`<symbol id="file-tree-builtin-yml" viewBox="0 0 16 16">
|
|
5544
5544
|
<path fill="currentColor" d="M7.5 2A1.5 1.5 0 0 1 9 3.5v3A1.5 1.5 0 0 1 7.5 8h-2v2A1.5 1.5 0 0 0 7 11.5v-1A1.5 1.5 0 0 1 8.5 9h5a1.5 1.5 0 0 1 1.5 1.5v3a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 7 13.5v-1A2.5 2.5 0 0 1 4.5 10V8h-2A1.5 1.5 0 0 1 1 6.5v-3A1.5 1.5 0 0 1 2.5 2zm1 8a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5zm-6-7a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5z"/>
|
|
5545
|
-
</symbol>`,
|
|
5545
|
+
</symbol>`,ad=`<symbol id="file-tree-builtin-zig" viewBox="0 0 16 16">
|
|
5546
5546
|
<path fill="currentColor" d="m14.73 1.5-7.29 8.82h4.17l-1.73 2.04H5.76L1.27 14.5l7.3-8.91H4.39l1.73-2.05h4.12z"/>
|
|
5547
5547
|
<path fill="currentColor" d="M5.21 3.54 3.56 5.6h-.55v4.73h.83L2.1 12.36H1V3.54zm9.79 0v8.82h-4.3l1.74-2.04h.55V5.68h-.83l1.74-2.14z"/>
|
|
5548
|
-
</symbol>`,
|
|
5548
|
+
</symbol>`,od=[uu,hu,_u,vu,yu,bu,Cu,wu,Tu,Du,Ou,ku,Au,ju,Mu,Ru,Bu,Vu,qu,Ju,Zu,Qu,`<symbol id="file-tree-builtin-zip" viewBox="0 0 16 16">
|
|
5549
5549
|
<path fill="currentColor" d="M4.585 2a2 2 0 0 1 1.028.285l1.788 1.072a1 1 0 0 0 .514.143H12A2 2 0 0 1 13.935 5H0V4a2 2 0 0 1 2-2z" class="bg" opacity=".5"/>
|
|
5550
5550
|
<path fill="currentColor" fill-rule="evenodd" d="M14 12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-1.25h1v-1H0V6h14zM9.9 8.25c-.883 0-1.9.5-1.9.5H7v1h1v1s1.017.5 1.9.5c.884 0 1.6-.672 1.6-1.5s-.716-1.5-1.6-1.5M2 9.75v1h1v-1zm2 0v1h1v-1zm2 0v1h1v-1zm-5-1v1h1v-1zm2 0v1h1v-1zm2 0v1h1v-1z" class="fg" clip-rule="evenodd"/>
|
|
5551
|
-
</symbol>`],
|
|
5552
|
-
`)}\n</svg>`)}var Yd=Jd(qu,Kd),Xd={minimal:qu,standard:Yd,complete:Jd(Yd,qd)},Zd={".babelrc":`babel`,".babelrc.json":`babel`,".bash_profile":`bash`,".bashrc":`bash`,".browserslistrc":`browserslist`,".dockerignore":`docker`,".eslintignore":`eslint`,".eslintrc":`eslint`,".eslintrc.cjs":`eslint`,".eslintrc.js":`eslint`,".eslintrc.json":`eslint`,".eslintrc.yaml":`eslint`,".eslintrc.yml":`eslint`,".gitattributes":`git`,".gitignore":`git`,".gitkeep":`git`,".gitmodules":`git`,".oxlintrc.json":`oxc`,".postcssrc":`postcss`,".postcssrc.json":`postcss`,".postcssrc.yaml":`postcss`,".postcssrc.yml":`postcss`,".prettierignore":`prettier`,".prettierrc":`prettier`,".prettierrc.cjs":`prettier`,".prettierrc.js":`prettier`,".prettierrc.json":`prettier`,".prettierrc.mjs":`prettier`,".prettierrc.toml":`prettier`,".prettierrc.yaml":`prettier`,".prettierrc.yml":`prettier`,".stylelintignore":`stylelint`,".stylelintrc":`stylelint`,".stylelintrc.cjs":`stylelint`,".stylelintrc.js":`stylelint`,".stylelintrc.json":`stylelint`,".stylelintrc.mjs":`stylelint`,".stylelintrc.yaml":`stylelint`,".stylelintrc.yml":`stylelint`,".terraform.lock.hcl":`terraform`,".zprofile":`bash`,".zshenv":`bash`,".zshrc":`bash`,"babel.config.cjs":`babel`,"babel.config.js":`babel`,"babel.config.json":`babel`,"babel.config.mjs":`babel`,"biome.json":`biome`,"biome.jsonc":`biome`,"bootstrap.bundle.js":`bootstrap`,"bootstrap.bundle.min.js":`bootstrap`,"bootstrap.css":`bootstrap`,"bootstrap.js":`bootstrap`,"bootstrap.min.css":`bootstrap`,"bootstrap.min.js":`bootstrap`,"bun.lock":`bun`,"bun.lockb":`bun`,"bunfig.toml":`bun`,"claude.md":`claude`,"compose.yaml":`docker`,"compose.yml":`docker`,"docker-compose.override.yml":`docker`,"docker-compose.yaml":`docker`,"docker-compose.yml":`docker`,dockerfile:`docker`,"eslint.config.cjs":`eslint`,"eslint.config.js":`eslint`,"eslint.config.mjs":`eslint`,"eslint.config.mts":`eslint`,"eslint.config.ts":`eslint`,gemfile:`ruby`,"next.config.js":`nextjs`,"next.config.mjs":`nextjs`,"next.config.mts":`nextjs`,"next.config.ts":`nextjs`,"postcss.config.cjs":`postcss`,"postcss.config.js":`postcss`,"postcss.config.mjs":`postcss`,"postcss.config.ts":`postcss`,"prettier.config.cjs":`prettier`,"prettier.config.js":`prettier`,"prettier.config.mjs":`prettier`,rakefile:`ruby`,"readme.md":`markdown`,"stylelint.config.cjs":`stylelint`,"stylelint.config.js":`stylelint`,"stylelint.config.mjs":`stylelint`,"svgo.config.cjs":`svgo`,"svgo.config.js":`svgo`,"svgo.config.mjs":`svgo`,"svgo.config.ts":`svgo`,"tailwind.config.cjs":`tailwind`,"tailwind.config.js":`tailwind`,"tailwind.config.mjs":`tailwind`,"tailwind.config.ts":`tailwind`,"vite.config.js":`vite`,"vite.config.mjs":`vite`,"vite.config.mts":`vite`,"vite.config.ts":`vite`,"webpack.config.babel.js":`webpack`,"webpack.config.cjs":`webpack`,"webpack.config.js":`webpack`,"webpack.config.mjs":`webpack`,"webpack.config.ts":`webpack`},Qd={"7z":`zip`,astro:`astro`,AUTHORS:`text`,avif:`image`,bash:`bash`,bmp:`image`,bz2:`zip`,c:`c`,cc:`cpp`,cfg:`text`,CHANGELOG:`text`,cjs:`javascript`,"code-workspace":`vscode`,conf:`text`,CONTRIBUTORS:`text`,cpp:`cpp`,csh:`bash`,css:`css`,csv:`table`,cts:`typescript`,cxx:`cpp`,db:`database`,editorconfig:`text`,env:`text`,"env.development":`text`,"env.local":`text`,"env.production":`text`,eot:`font`,erb:`ruby`,fish:`bash`,gemspec:`ruby`,gif:`image`,go:`go`,gql:`graphql`,graphql:`graphql`,gz:`zip`,h:`c`,hh:`cpp`,hpp:`cpp`,htm:`html`,html:`html`,hxx:`cpp`,icns:`image`,ico:`image`,ini:`text`,inl:`cpp`,jar:`zip`,jpeg:`image`,jpg:`image`,js:`javascript`,json:`json`,json5:`json`,jsonc:`json`,jsonl:`json`,jsx:`javascript`,ksh:`bash`,less:`css`,LICENSE:`text`,log:`text`,markdown:`markdown`,mcp:`mcp`,md:`markdown`,mdx:`markdown`,"mdx.tsx":`markdown`,mjs:`javascript`,mm:`cpp`,mts:`typescript`,ods:`table`,otf:`font`,png:`image`,postcss:`css`,py:`python`,pyi:`python`,pyw:`python`,pyx:`python`,rake:`ruby`,rar:`zip`,rb:`ruby`,rs:`rust`,rst:`text`,rtf:`text`,sass:`css`,scss:`css`,sh:`bash`,sql:`database`,sqlite:`database`,sqlite3:`database`,styl:`css`,svelte:`svelte`,svg:`svg`,swift:`swift`,tar:`zip`,tf:`terraform`,tfstate:`terraform`,tfvars:`terraform`,tgz:`zip`,tif:`image`,tiff:`image`,ts:`typescript`,tsv:`table`,tsx:`typescript`,ttf:`font`,txt:`text`,vue:`vue`,war:`zip`,wasm:`wasm`,wast:`wasm`,wat:`wasm`,webp:`image`,woff:`font`,woff2:`font`,xhtml:`html`,xls:`table`,xlsx:`table`,xz:`zip`,yaml:`yml`,yml:`yml`,zig:`zig`,zip:`zip`,zsh:`bash`},$d={jsx:`react`,sass:`sass`,scss:`sass`,tsx:`react`},ef=new Set([`bash`,`c`,`cpp`,`css`,`database`,`default`,`font`,`git`,`go`,`html`,`image`,`javascript`,`json`,`markdown`,`mcp`,`python`,`ruby`,`rust`,`swift`,`table`,`text`,`typescript`,`zip`]),tf=new Set([`complete`]);function nf(e){return Xd[e===`none`?`minimal`:e]}function rf(e){return`file-tree-builtin-${e}`}function af(e){return e!==`none`&&tf.has(e)}function of(e,t,n){if(e===`minimal`||e===`none`)return;let r=e===`complete`,i=Zd[t.toLowerCase()];if(i!=null&&(r||ef.has(i)))return i;for(let e of n){if(r){let t=$d[e];if(t!=null)return t}let t=Qd[e];if(t!=null&&(r||ef.has(t)))return t}return`default`}var sf=`file-tree-container`,cf=`data-file-tree-style`,lf=`data-file-tree-unsafe-css`,uf=`data-file-tree-scrollbar-measure`,df=`data-file-tree-scrollbar-gutter-measured`,ff=`--trees-scrollbar-gutter-measured`,pf=`header`,mf=`context-menu`,hf=`context-menu-trigger`;function gf(e){return e.spriteSheet!=null||e.remap!=null||e.byFileName!=null||e.byFileExtension!=null||e.byFileNameContains!=null}function _f(e){return e==null?{set:`complete`,colored:!0}:typeof e==`string`?{set:e,colored:!0}:{...e,set:e.set??(gf(e)?`none`:`complete`),colored:e.colored??!0}}var vf=e=>e.trim().toLowerCase(),yf=e=>e.split(`/`).at(-1)??e,bf=e=>{let t=e.toLowerCase().split(`.`),n=[];for(let e=1;e<t.length;e+=1)n.push(t.slice(e).join(`.`));return n};function xf(e,t){return typeof e==`string`?{name:e,remappedFrom:t}:{...e,remappedFrom:t}}function Sf(e){let t=_f(e),n=t.remap,r=new Map;for(let[e,n]of Object.entries(t.byFileName??{}))r.set(e.toLowerCase(),n);let i=new Map;for(let[e,n]of Object.entries(t.byFileExtension??{}))i.set(vf(e),n);let a=Object.entries(t.byFileNameContains??{}).map(([e,t])=>[e.toLowerCase(),t]);return{resolveIcon:(e,o)=>{if(e===`file-tree-icon-file`&&o!=null){let s=yf(o),c=s.toLowerCase(),l=r.get(c);if(l!=null)return xf(l,e);for(let[t,n]of a)if(c.includes(t))return xf(n,e);let u=bf(s);for(let t of u){let n=i.get(t);if(n!=null)return xf(n,e)}let d=of(t.set,s,u);if(d!=null&&t.set!==`none`){if(d==="default"){let t=n?.[e];if(t!=null)return xf(t,e)}return{name:rf(d),remappedFrom:e,token:d}}}let s=n?.[e];return s==null?{name:e}:xf(s,e)}}}var Cf=5,wf=32,Tf=128;function Ef(){return{childIdByNameId:new Map,childIds:[],childPositionById:new Map,childVisibleChunkSums:null,totalChildSubtreeNodeCount:0,totalChildVisibleSubtreeCount:0}}function Df(){return{childIdByNameId:null,childIds:[],childPositionById:null,childVisibleChunkSums:null,totalChildSubtreeNodeCount:0,totalChildVisibleSubtreeCount:0}}function Of(e,t){if(t.childIdByNameId!=null)return t.childIdByNameId;let n=new Map;for(let r of t.childIds){let t=e[r];t!=null&&n.set(t.nameId,r)}return t.childIdByNameId=n,n}function kf(e){if(e.childPositionById!=null)return e.childPositionById;let t=new Map;for(let n=0;n<e.childIds.length;n++){let r=e.childIds[n];r!=null&&t.set(r,n)}return e.childPositionById=t,t}function Af(e,t){e.childPositionById!=null&&e.childPositionById.set(t,e.childIds.length),e.childIds.push(t)}function jf(e,t){if(e.childPositionById!=null)for(let n=t;n<e.childIds.length;n++){let t=e.childIds[n];t!=null&&e.childPositionById.set(t,n)}}function Mf(e,t){let n=0,r=0;for(let i of t.childIds){let t=e[i];t!=null&&(n+=t.subtreeNodeCount,r+=t.visibleSubtreeCount)}t.totalChildSubtreeNodeCount=n,t.totalChildVisibleSubtreeCount=r,If(e,t)}function Nf(e,t,n,r){if(e.totalChildSubtreeNodeCount+=n,e.totalChildVisibleSubtreeCount+=r,e.childVisibleChunkSums==null||r===0)return;let i=kf(e).get(t);if(i===void 0)return;let a=i>>Cf;e.childVisibleChunkSums[a]+=r}function Pf(e,t,n){let r=t.childVisibleChunkSums;if(r!=null){let i=n,a=0;for(let o of r){if(i<o){let r=Lf(e,t,a,i);return{...r,childVisibleIndex:n-r.localVisibleIndex}}i-=o,a+=wf}throw Error(`Visible child index ${String(n)} is out of range`)}let i=n;for(let r=0;r<t.childIds.length;r++){let a=t.childIds[r];if(a==null)continue;let o=e[a];if(o!=null){if(i<o.visibleSubtreeCount)return{childIndex:r,childVisibleIndex:n-i,localVisibleIndex:i};i-=o.visibleSubtreeCount}}throw Error(`Visible child index ${String(n)} is out of range`)}function Ff(e,t,n){let r=0,i=t.childVisibleChunkSums,a=0;if(i!=null){let e=n>>Cf;for(let t=0;t<e;t+=1)r+=i[t]??0;a=e<<Cf}for(let i=a;i<n;i+=1){let n=t.childIds[i];if(n==null)continue;let a=e[n];a!=null&&(r+=a.visibleSubtreeCount)}return r}function If(e,t){if(t.childIds.length<Tf){t.childVisibleChunkSums=null;return}let n=Math.ceil(t.childIds.length/wf),r=new Int32Array(n);for(let n=0;n<t.childIds.length;n++){let i=t.childIds[n];if(i==null)continue;let a=e[i];a!=null&&(r[n>>Cf]+=a.visibleSubtreeCount)}t.childVisibleChunkSums=r}function Lf(e,t,n,r){let i=Math.min(t.childIds.length,n+wf),a=r;for(let r=n;r<i;r++){let n=t.childIds[r];if(n==null)continue;let i=e[n];if(i!=null){if(a<i.visibleSubtreeCount)return{childIndex:r,localVisibleIndex:a};a-=i.visibleSubtreeCount}}throw Error(`Visible child index ${String(r)} is out of range`)}var Rf=7,zf=3,Bf=8,Vf=4;function Hf(e,t,n=0){return e<<Vf|n<<zf|t}function Uf(e){return e.depthAndFlags>>>Vf}function Wf(e){return(e.depthAndFlags&Bf)>>zf}function V(e){return(e.depthAndFlags&Bf)!==0}function Gf(e){return e.depthAndFlags&Rf}function Kf(e,t){return(Gf(e)&t)!==0}function qf(e,t){e.depthAndFlags|=t}function Jf(e,t){e.depthAndFlags=Hf(t,Gf(e),Wf(e))}var Yf=Symbol(`benchmarkInstrumentation`);function Xf(e,t){return t==null||Object.defineProperty(e,Yf,{configurable:!0,enumerable:!1,value:t,writable:!1}),e}function Zf(e){return e==null?null:e[Yf]??null}function H(e,t,n){return e==null?n():e.measurePhase(t,n)}function Qf(e,t,n){!Number.isFinite(n)||e==null||e.setCounter(t,n)}function $f(e){return e>=48&&e<=57}function ep(e){let t=[],n=0,r=0;for(;r<e.length;){for(;r<e.length&&!$f(e.charCodeAt(r));)r+=1;if(r>=e.length)break;r>n&&t.push(e.slice(n,r));let i=0;for(;r<e.length&&$f(e.charCodeAt(r));)i=i*10+(e.charCodeAt(r)-48),r+=1;t.push(i),n=r}return(n<e.length||t.length===0)&&t.push(e.slice(n)),t}function tp(e){let t=e.toLowerCase();return{lowerValue:t,tokens:ep(t)}}function np(e,t){let n=Math.min(e.length,t.length);for(let r=0;r<n;r++){let n=e[r],i=t[r];if(n===i)continue;if(typeof n==`number`&&typeof i==`number`)return n<i?-1:1;let a=String(n),o=String(i);if(a!==o)return a<o?-1:1}return e.length===t.length?0:e.length<t.length?-1:1}function rp(e,t){if(e.tokens.length===1&&t.tokens.length===1&&typeof e.tokens[0]==`string`&&typeof t.tokens[0]==`string`)return e.lowerValue===t.lowerValue?0:e.lowerValue<t.lowerValue?-1:1;let n=np(e.tokens,t.tokens);return n===0?e.lowerValue===t.lowerValue?0:e.lowerValue<t.lowerValue?-1:1:n}function ip(e,t,n){let r=rp(n(e),n(t));return r===0?e===t?0:e<t?-1:1:r}function ap(e,t){return ip(e,t,tp)}function op(e,t){return t===e.segments.length-1?+!!e.isDirectory:1}function sp(e,t){let n=Math.min(e.segments.length,t.segments.length);for(let r=0;r<n;r++){let n=e.segments[r],i=t.segments[r];if(n===i)continue;let a=op(e,r);return a===op(t,r)?ap(n,i):a===1?-1:1}return e.segments.length===t.segments.length?e.isDirectory===t.isDirectory?0:e.isDirectory?-1:1:e.segments.length<t.segments.length?-1:1}function cp(e,t){return sp(e,t)}function lp(e,t,n){let r=e=>{let t=n.get(e);if(t!=null)return t;let r=tp(e);return n.set(e,r),r},i=Math.min(e.segments.length,t.segments.length);for(let n=0;n<i;n++){let i=e.segments[n],a=t.segments[n];if(i===a)continue;let o=op(e,n);return o===op(t,n)?ip(i,a,r):o===1?-1:1}return e.segments.length===t.segments.length?e.isDirectory===t.isDirectory?0:e.isDirectory?-1:1:e.segments.length<t.segments.length?-1:1}function up(e,t){let n=e.sortKeyById[t];if(n!==void 0)return n;let r=e.valueById[t],i=tp(r);return e.sortKeyById[t]=i,i}function dp(e={}){return{flattenEmptyDirectories:e.flattenEmptyDirectories!==!1,sort:e.sort??`default`}}function fp(e){let t=e.length>0&&e.charCodeAt(e.length-1)===47,n=t?e.length-1:e.length,r=[],i=0;for(let t=0;t<n;t++)e.charCodeAt(t)===47&&(r.push(e.slice(i,t)),i=t+1);return r.push(e.slice(i,n)),{hasTrailingSlash:t,segments:r}}function pp(e){let{hasTrailingSlash:t,segments:n}=fp(e);return{basename:n[n.length-1]??``,isDirectory:t,path:e,segments:n}}function mp(e){if(e.length===0)return{requiresDirectory:!1,segments:[]};let{hasTrailingSlash:t,segments:n}=fp(e);return{requiresDirectory:t,segments:n}}function hp(){let e=new Map;return e.set(``,0),{idByValue:e,valueById:[``],sortKeyById:[tp(``)]}}function gp(e,t){let n=e.idByValue.get(t);if(n!==void 0)return n;let r=e.valueById.length;return e.idByValue.set(t,r),e.valueById.push(t),r}function _p(e,t){let n=e.valueById[t];if(n===void 0)throw Error(`Unknown segment ID: ${String(t)}`);return n}var vp=Symbol(`pathStorePreparedInputKind`);function yp(e,t){return e[vp]=t,e}function bp(e){return{basename:e.basename,depth:e.segments.length,isDirectory:e.isDirectory,path:e.path,segments:e.segments}}function xp(e,t,n){return n==="default"?cp(e,t):n(bp(e),bp(t))}function Sp(){return{depthAndFlags:Hf(0,3,1),nameId:0,parentId:0,subtreeNodeCount:1,visibleSubtreeCount:1}}function Cp(e,t){let n=Math.min(e.length,t.length);for(let r=0;r<n;r++)if(e[r]!==t[r])return r;return n}function wp(e){return e.isDirectory?e.segments.length:e.segments.length-1}function Tp(e){return Array.isArray(e)&&e.every(e=>typeof e==`object`&&!!e&&typeof e.path==`string`&&Array.isArray(e.segments)&&typeof e.basename==`string`&&typeof e.isDirectory==`boolean`)}function Ep(e){return Array.isArray(e)&&e.every(e=>typeof e==`string`)}function Dp(e,t={}){return Np(e,t).map(e=>e.path)}function Op(e,t={}){let n=Np(e,t);return yp({paths:n.map(e=>e.path),preparedPaths:n},`prepared`)}function kp(e){let t=e.length,n=!1;for(let r=0;r<t;r+=1){let t=e[r];if(t.length>0&&t.charCodeAt(t.length-1)===47){n=!0;break}}return yp({paths:e,presortedPaths:e,presortedPathsContainDirectories:n},`presorted`)}function Ap(e){let t=e,n=t.preparedPaths;if(t[vp]===`prepared`&&n!=null)return n;if(!Tp(n))throw Error(`preparedInput must come from PathStore.prepareInput()`);return n}function jp(e){let t=e;return t[vp]===`presorted`&&t.presortedPaths!=null||Ep(t.presortedPaths)?t.presortedPaths:null}function Mp(e){let t=e;return typeof t.presortedPathsContainDirectories==`boolean`?t.presortedPathsContainDirectories:null}function Np(e,t={}){let n=dp(t),r=Zf(t);Qf(r,`workload.inputFiles`,e.length);let i=H(r,`store.preparePathEntries.parse`,()=>e.map(e=>pp(e)));return H(r,`store.preparePathEntries.sort`,()=>i.sort((e,t)=>xp(e,t,n.sort))),i}var Pp=class{directories=new Map;directoryStack=[0];presortedDirectoryNodeIds=[];initialExpandedPathSet;createdDirectoriesAllExpanded=!1;createdDirectoryCount=0;lastPreparedPath=null;nodes=[Sp()];options;instrumentation;segmentSortKeyCache=new Map;segmentTable=hp();hasDeferredDirectoryIndexes=!1;constructor(e={}){this.instrumentation=Zf(e),this.options=dp(e);let t=e.initialExpandedPaths??null;if(t==null||t.length===0)this.initialExpandedPathSet=null;else{let e=new Set,n=t.length;for(let r=0;r<n;r+=1){let n=t[r],i=n.length;e.add(i>0&&n.charCodeAt(i-1)===47?n.slice(0,i-1):n)}this.initialExpandedPathSet=e,this.createdDirectoriesAllExpanded=!0}this.directories.set(0,Ef())}appendPaths(e){return H(this.instrumentation,`store.builder.appendPaths.parse`,()=>this.appendPreparedPaths(e.map(e=>pp(e))))}appendPreparedPaths(e,t=!0){return this.createdDirectoriesAllExpanded=!1,H(this.instrumentation,`store.builder.appendPreparedPaths`,()=>{for(let n of e)this.appendPreparedPath(n,t)}),this}appendPresortedPaths(e,t=null){return H(this.instrumentation,`store.builder.appendPresortedPaths`,()=>{if(t===!1){this.appendPresortedFilePaths(e);return}this.createdDirectoriesAllExpanded=!1;let n=null,r=0,i=this.nodes,a=this.segmentTable,o=a.idByValue,s=a.valueById,c=this.directoryStack,l=0,u=``,d=0;for(let t of e){if(n===t)throw Error(`Duplicate path: "${t}"`);let e=t.length>0&&t.charCodeAt(t.length-1)===47,a=e?t.length-1:t.length,f=0,p=0;if(n!=null){if(u.length>0&&t.length>u.length&&t.startsWith(u))f=d,p=u.length;else{let r=Math.min(a,n.length),i=!0;for(let e=0;e<r;e++){let r=t.charCodeAt(e);if(r!==n.charCodeAt(e)){i=!1;break}r===47&&(f++,p=e+1)}i&&e&&r===a&&n.length>a&&n.charCodeAt(a)===47&&(f++,p=a+1)}}l=f,r=f;let m=p,h=t.indexOf(`/`,m);for(;h>=0&&h<a;){let e=c[l];if(e===void 0)throw Error(`Directory stack underflow while building the path store`);r++;let n=t.slice(m,h),a=o.get(n);a===void 0&&(a=s.length,o.set(n,a),s.push(n));let u=i.length;i.push({depthAndFlags:Hf(r,0,1),nameId:a,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),this.recordCreatedDirectoryPath(t.slice(0,h)),l++,c[l]=u,m=h+1,h=t.indexOf(`/`,m)}if(e){if(m<a){let e=c[l];if(e===void 0)throw Error(`Unable to resolve directory parent for "${t}"`);r++;let n=t.slice(m,a),u=o.get(n);u===void 0&&(u=s.length,o.set(n,u),s.push(n));let d=i.length;i.push({depthAndFlags:Hf(r,0,1),nameId:u,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),l++,c[l]=d,m=a+1}let e=c[l];if(e===void 0)throw Error(`Unable to resolve directory node for "${t}"`);this.promoteDirectoryToExplicit(e,t)}else{let e=c[l];if(e===void 0)throw Error(`Unable to resolve file parent for "${t}"`);let n=t.slice(m),a=o.get(n);a===void 0&&(a=s.length,o.set(n,a),s.push(n)),i.push({depthAndFlags:Hf(r+1,0),nameId:a,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1})}m!==u.length&&(u=t.substring(0,m),d=r),n=t}c.length=l+1,n!=null&&(this.lastPreparedPath=pp(n)),this.hasDeferredDirectoryIndexes=!0}),this}appendPresortedFilePaths(e){let t=null,n=0,r=this.nodes,i=this.segmentTable,a=i.idByValue,o=i.valueById,s=this.directoryStack,c=0,l=``,u=0;for(let i of e){if(t===i)throw Error(`Duplicate path: "${i}"`);let e=i.length,d=0,f=0;if(t!=null){if(l.length>0&&i.length>l.length&&i.startsWith(l))d=u,f=l.length;else{let n=Math.min(e,t.length);for(let e=0;e<n;e++){let n=i.charCodeAt(e);if(n!==t.charCodeAt(e))break;n===47&&(d++,f=e+1)}}}c=d,n=d;let p=f,m=i.indexOf(`/`,p);for(;m>=0;){let e=s[c];if(e===void 0)throw Error(`Directory stack underflow while building the path store`);n++;let t=i.slice(p,m),l=a.get(t);l===void 0&&(l=o.length,a.set(t,l),o.push(t));let u=r.length;r.push({depthAndFlags:Hf(n,0,1),nameId:l,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),this.recordCreatedDirectoryPath(i.slice(0,m)),this.presortedDirectoryNodeIds.push(u),c++,s[c]=u,p=m+1,m=i.indexOf(`/`,p)}let h=s[c];if(h===void 0)throw Error(`Unable to resolve file parent for "${i}"`);let g=i.slice(p),_=a.get(g);_===void 0&&(_=o.length,a.set(g,_),o.push(g)),r.push({depthAndFlags:Hf(n+1,0),nameId:_,parentId:h,subtreeNodeCount:1,visibleSubtreeCount:1}),p!==l.length&&(l=i.substring(0,p),u=n),t=i}s.length=c+1,t!=null&&(this.lastPreparedPath=pp(t)),this.hasDeferredDirectoryIndexes=!0}finish(e={}){let t=e.skipSubtreeCountPass===!0;return this.hasDeferredDirectoryIndexes?(H(this.instrumentation,`store.builder.buildDirectoryIndexes`,()=>this.buildPresortedFinish(t)),this.hasDeferredDirectoryIndexes=!1):t||H(this.instrumentation,`store.builder.computeSubtreeCounts`,()=>this.computeSubtreeCounts(0)),{directories:this.directories,nodes:this.nodes,options:this.options,rootId:0,segmentTable:this.segmentTable,presortedDirectoryNodeIds:this.presortedDirectoryNodeIds.length>0?this.presortedDirectoryNodeIds:null}}didMatchAllInitialExpandedPaths(){return this.createdDirectoriesAllExpanded&&this.initialExpandedPathSet!=null&&this.createdDirectoryCount===this.initialExpandedPathSet.size}appendPreparedPath(e,t){if(this.hasDeferredDirectoryIndexes&&=(this.buildDirectoryIndexes(),!1),this.lastPreparedPath!=null){if(e.path===this.lastPreparedPath.path)throw Error(`Duplicate path: "${e.path}"`);if(t&&(this.options.sort==="default"?lp(this.lastPreparedPath,e,this.segmentSortKeyCache):xp(this.lastPreparedPath,e,this.options.sort))>0)throw Error(`Builder input must be sorted before appendPaths(): "${e.path}"`)}let n=this.lastPreparedPath,r=wp(e),i=n==null?0:wp(n),a=n==null?0:Cp(n.segments,e.segments),o=Math.min(a,r,i);this.directoryStack.length=o+1;for(let n=o;n<r;n++){let r=this.directoryStack[this.directoryStack.length-1];if(r===void 0)throw Error(`Directory stack underflow while building the path store`);let i=t?this.getOrCreateDirectoryChild(r,e.segments[n]):this.createDirectoryChild(r,e.segments[n]);this.directoryStack.push(i)}if(e.isDirectory){let t=this.directoryStack[this.directoryStack.length-1];if(t===void 0)throw Error(`Unable to resolve directory node for "${e.path}"`);this.promoteDirectoryToExplicit(t,e.path),this.lastPreparedPath=e;return}let s=this.directoryStack[this.directoryStack.length-1];if(s===void 0)throw Error(`Unable to resolve file parent for "${e.path}"`);t?this.createFileChild(s,e.basename,e.path):this.createFileChildUnchecked(s,e.basename),this.lastPreparedPath=e}recordCreatedDirectoryPath(e){!this.createdDirectoriesAllExpanded||this.initialExpandedPathSet==null||(this.createdDirectoryCount+=1,this.initialExpandedPathSet.has(e)||(this.createdDirectoriesAllExpanded=!1))}createFileChild(e,t,n){let r=gp(this.segmentTable,t),i=this.getDirectoryIndex(e),a=i.childIdByNameId;if(a!=null&&a.get(r)!==void 0)throw Error(`Path collides with an existing entry: "${n}"`);let o=this.nodes[e];if(o===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let s=this.nodes.length;return this.nodes.push({depthAndFlags:Hf(Uf(o)+1,0),nameId:r,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),a?.set(r,s),Af(i,s),s}createFileChildUnchecked(e,t){let n=gp(this.segmentTable,t),r=this.getDirectoryIndex(e),i=this.nodes[e];if(i===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let a=this.nodes.length;return this.nodes.push({depthAndFlags:Hf(Uf(i)+1,0),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Af(r,a),a}getOrCreateDirectoryChild(e,t){let n=gp(this.segmentTable,t),r=this.getDirectoryIndex(e);if(r.childIdByNameId!=null){let e=r.childIdByNameId.get(n);if(e!==void 0){let n=this.nodes[e];if(n!=null&&!V(n))throw Error(`Path collides with an existing file while creating directory "${t}"`);return e}}let i=this.nodes[e];if(i===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let a=this.nodes.length;return this.nodes.push({depthAndFlags:Hf(Uf(i)+1,0,1),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Af(r,a),this.directories.set(a,Ef()),a}createDirectoryChild(e,t){let n=gp(this.segmentTable,t),r=this.getDirectoryIndex(e),i=this.nodes[e];if(i===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let a=this.nodes.length;return this.nodes.push({depthAndFlags:Hf(Uf(i)+1,0,1),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Af(r,a),this.directories.set(a,Ef()),a}promoteDirectoryToExplicit(e,t){let n=this.nodes[e];if(n===void 0)throw Error(`Unknown directory node ID: ${String(e)}`);if(!V(n))throw Error(`Path is not a directory: "${t}"`);if(Kf(n,1))throw Error(`Duplicate path: "${t}"`);qf(n,1)}getDirectoryIndex(e){let t=this.directories.get(e);if(t!==void 0)return t;throw Error(`Unknown directory child index for node ${String(e)}`)}buildPresortedFinish(e){let t=this.nodes,n=this.directories;n.set(0,Df());let r=-1,i=null;for(let e=1;e<t.length;e++){let a=t[e];if(a==null)continue;if(V(a)){let t=Df();n.set(e,t),r=e,i=t}let o;a.parentId===r?o=i:(o=n.get(a.parentId),r=a.parentId,i=o??null),o?.childIds.push(e)}if(!e)for(let e=t.length-1;e>=1;e--){let n=t[e];if(n==null)continue;let r=t[n.parentId];r!=null&&(r.subtreeNodeCount+=n.subtreeNodeCount,r.visibleSubtreeCount+=n.visibleSubtreeCount)}}buildDirectoryIndexes(){let e=this.nodes;for(let t=1;t<e.length;t++){let n=e[t];if(n==null)continue;V(n)&&this.directories.set(t,Ef());let r=this.directories.get(n.parentId);r!=null&&(r.childIdByNameId!=null&&r.childIdByNameId.set(n.nameId,t),Af(r,t))}}computeSubtreeCounts(e){let t=this.nodes[e];if(t===void 0)throw Error(`Unknown node ID: ${String(e)}`);if(!V(t))return t.subtreeNodeCount=1,t.visibleSubtreeCount=1,1;let n=this.getDirectoryIndex(e),r=1;for(let e of n.childIds)r+=this.computeSubtreeCounts(e);return Mf(this.nodes,n),t.subtreeNodeCount=r,t.visibleSubtreeCount=r,r}};function Fp(e,t=`closed`,n=null){let r=Lp(t);return{activeNodeCount:e.nodes.length-1,collapsedDirectoryIds:new Set,collapseNewDirectoriesByDefault:!1,defaultExpansion:r,directoriesOpenByDefault:r===`open`,hasCollapsedDirectoryOverrides:!1,directoryLoadInfoById:new Map,expandedDirectoryIds:new Set,instrumentation:n,listeners:new Map,pathCacheByNodeId:new Map([[e.rootId,{path:``,version:0}]]),pathCacheVersion:0,snapshot:e,transactionStack:[]}}function Ip(){return{affectedAncestorIds:new Set,affectedNodeIds:new Set,events:[]}}function Lp(e){if(typeof e!=`number`)return e;if(!Number.isInteger(e)||e<0)throw Error(`initialExpansion must be "open", "closed", or a non-negative integer depth. Received: ${String(e)}`);return e}function Rp(e,t){return Kf(t,2)||e.defaultExpansion===`open`?!0:e.defaultExpansion!==`closed`&&Uf(t)<=e.defaultExpansion}function zp(e,t,n=e.snapshot.nodes[t]){return n==null||!V(n)?!1:e.directoriesOpenByDefault&&!e.hasCollapsedDirectoryOverrides?!0:e.collapsedDirectoryIds.has(t)?!1:e.expandedDirectoryIds.has(t)?!0:Rp(e,n)}function Bp(e,t,n,r=e.snapshot.nodes[t]){if(r==null||!V(r))return;let i=Rp(e,r);if(n){if(i){e.collapsedDirectoryIds.delete(t),e.hasCollapsedDirectoryOverrides=e.collapsedDirectoryIds.size>0;return}e.expandedDirectoryIds.add(t);return}if(i){e.collapsedDirectoryIds.add(t),e.hasCollapsedDirectoryOverrides=!0;return}e.expandedDirectoryIds.delete(t)}function Vp(e,t){let n=e.directoryLoadInfoById.get(t);if(n!=null)return n;let r={activeAttemptId:null,errorMessage:null,nextAttemptId:1,state:`loaded`};return e.directoryLoadInfoById.set(t,r),r}function Hp(e,t){return e.directoryLoadInfoById.get(t)?.state??`loaded`}function Up(e,t){let n=Vp(e,t);if(n.state===`loading`&&n.activeAttemptId!=null)return{attemptId:n.activeAttemptId,nodeId:t,reused:!0};let r=n.nextAttemptId;return n.activeAttemptId=r,n.errorMessage=null,n.nextAttemptId+=1,n.state=`loading`,{attemptId:r,nodeId:t,reused:!1}}function Wp(e,t){let n=Vp(e,t);n.activeAttemptId=null,n.errorMessage=null,n.state=`unloaded`}function Gp(e,t,n){let r=e.directoryLoadInfoById.get(t);return r==null||r.activeAttemptId!==n?!1:(r.activeAttemptId=null,r.errorMessage=null,r.state=`loaded`,!0)}function Kp(e,t,n){return e.directoryLoadInfoById.get(t)?.activeAttemptId===n}function qp(e,t,n,r){let i=e.directoryLoadInfoById.get(t);return i==null||i.activeAttemptId!==n?!1:(i.activeAttemptId=null,i.errorMessage=r??null,i.state=`error`,!0)}function Jp(e,t){e.directoryLoadInfoById.delete(t)}function Yp(e,t,n){let r=n,i=e.listeners.get(t);return i==null?e.listeners.set(t,new Set([r])):i.add(r),()=>{let n=e.listeners.get(t);n!=null&&(n.delete(r),n.size===0&&e.listeners.delete(t))}}function Xp(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,operation:`add`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function Zp(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,operation:`remove`,path:e.path,projectionChanged:e.projectionChanged,recursive:e.recursive,visibleCountDelta:null}}function Qp(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,from:e.from,operation:`move`,projectionChanged:e.projectionChanged,to:e.to,visibleCountDelta:null}}function $p(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`expand`,path:e.path,projectionChanged:!0,visibleCountDelta:null}}function em(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`collapse`,path:e.path,projectionChanged:!0,visibleCountDelta:null}}function tm(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`mark-directory-unloaded`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function nm(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:!1,operation:`begin-child-load`,path:e.path,projectionChanged:e.projectionChanged,reused:e.reused,visibleCountDelta:null}}function rm(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:e.childEvents.some(e=>e.canonicalChanged),childEvents:e.childEvents,operation:`apply-child-patch`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function im(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:!1,operation:`complete-child-load`,path:e.path,projectionChanged:e.projectionChanged,stale:e.stale,visibleCountDelta:null}}function am(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:!1,errorMessage:e.errorMessage,operation:`fail-child-load`,path:e.path,projectionChanged:e.projectionChanged,stale:e.stale,visibleCountDelta:null}}function om(e){return{activeNodeCountAfter:e.activeNodeCountAfter,activeNodeCountBefore:e.activeNodeCountBefore,affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],cachedPathEntryCountAfter:e.cachedPathEntryCountAfter,cachedPathEntryCountBefore:e.cachedPathEntryCountBefore,canonicalChanged:!1,idsPreserved:e.idsPreserved,loadInfoEntryCountAfter:e.loadInfoEntryCountAfter,loadInfoEntryCountBefore:e.loadInfoEntryCountBefore,mode:e.mode,operation:`cleanup`,projectionChanged:e.projectionChanged,reclaimedCachedPathEntryCount:e.reclaimedCachedPathEntryCount,reclaimedLoadInfoEntryCount:e.reclaimedLoadInfoEntryCount,reclaimedNodeSlotCount:e.reclaimedNodeSlotCount,reclaimedSegmentCount:e.reclaimedSegmentCount,segmentCountAfter:e.segmentCountAfter,segmentCountBefore:e.segmentCountBefore,totalNodeSlotCountAfter:e.totalNodeSlotCountAfter,totalNodeSlotCountBefore:e.totalNodeSlotCountBefore,visibleCountDelta:null}}function sm(e,t,n){return{...n,visibleCountDelta:vm(e)-t}}function cm(e,t){let n=vm(e),r=Ip();e.transactionStack.push(r);try{t()}catch(t){throw dm(e,r,!1),t}dm(e,r,!0,vm(e)-n)}function lm(e,t){let n=e.instrumentation;if(n==null){um(e,t);return}H(n,`store.events.record`,()=>um(e,t))}function um(e,t){let n=e.transactionStack[e.transactionStack.length-1]??null;if(n==null){gm(e,t);return}n.events.push(t),hm(n,t)}function dm(e,t,n,r=null){if(e.transactionStack.pop()!==t)throw Error(`Transaction stack underflow`);if(!n)return;let i=e.transactionStack[e.transactionStack.length-1]??null;if(i!=null){let n=e.instrumentation;n==null?mm(i,t):H(n,`store.events.batch.merge`,()=>mm(i,t));return}let a=fm(t,r),o=e.instrumentation;if(o==null){gm(e,a);return}H(o,`store.events.batch.commit`,()=>gm(e,a))}function fm(e,t){return{affectedAncestorIds:[...e.affectedAncestorIds],affectedNodeIds:[...e.affectedNodeIds],canonicalChanged:e.events.some(e=>e.canonicalChanged),events:[...e.events],operation:`batch`,projectionChanged:e.events.some(e=>e.projectionChanged),visibleCountDelta:t}}function pm(e,t){for(let n of t.affectedAncestorIds)e.affectedAncestorIds.add(n);for(let n of t.affectedNodeIds)e.affectedNodeIds.add(n)}function mm(e,t){for(let n of t.events)e.events.push(n);pm(e,t)}function hm(e,t){for(let n of t.affectedNodeIds)e.affectedNodeIds.add(n);for(let n of t.affectedAncestorIds)e.affectedAncestorIds.add(n)}function gm(e,t){let n=e.instrumentation;if(n==null){_m(e,t);return}H(n,`store.events.emit`,()=>_m(e,t))}function _m(e,t){e.listeners.get(t.operation)?.forEach(e=>e(t)),e.listeners.get(`*`)?.forEach(e=>e(t))}function vm(e){return e.snapshot.nodes[e.snapshot.rootId]?.visibleSubtreeCount??0}function ym(e,t){if(e.snapshot.options.flattenEmptyDirectories!==!0)return null;let n=e.snapshot.nodes[t];if(n==null||!V(n)||Kf(n,2))return null;let r=e.snapshot.directories.get(t);if(r==null||r.childIds.length!==1)return null;let i=r.childIds[0];if(i==null)return null;let a=e.snapshot.nodes[i];return a==null||!V(a)?null:i}function bm(e,t){let n=t;for(;;){let t=ym(e,n);if(t==null)return n;n=t}}function xm(e,t){let n=[t],r=t;for(;;){let t=ym(e,r);if(t==null)return n;n.push(t),r=t}}function Sm(e,t){let n=t==null?e.snapshot.rootId:jm(e,t);return n==null?[]:Nm(e,n)}function Cm(e,t){let n=pp(t),r=n.isDirectory?n.segments:n.segments.slice(0,-1),i=Jm(e,qm(e,r)),{createdNodeIds:a,directoryId:o}=Pm(e,r),s=new Set(a),c=o;if(n.isDirectory){let n=G(e,o);if(Kf(n,1))throw Error(`Path already exists: "${t}"`);qf(n,1),e.pathCacheByNodeId.set(o,{path:t,version:e.pathCacheVersion}),s.add(o)}else c=Im(e,o,n.basename),s.add(c);Om(e,o);let l=Jm(e,o);return Xp({affectedAncestorIds:Am(e,c),affectedNodeIds:[...s],path:t,projectionChanged:Ym(i,l)})}function wm(e,t,n){let r=jm(e,t);if(r==null)throw Error(`Path does not exist: "${t}"`);let i=G(e,r);if(Kf(i,2))throw Error(`The root node cannot be removed`);if(V(i)&&W(e,r).childIds.length>0&&n.recursive!==!0)throw Error(`Cannot remove a non-empty directory without recursive: "${t}"`);let a=i.parentId,o=Jm(e,a),s=Gm(e,r);zm(e,a,r,i.nameId),Km(e,a),Om(e,a);let c=Jm(e,a);return Zp({affectedAncestorIds:Am(e,a),affectedNodeIds:s,path:t,projectionChanged:Ym(o,c),recursive:n.recursive===!0})}function Tm(e,t,n,r){let i=jm(e,t);if(i==null)throw Error(`Source path does not exist: "${t}"`);let a=G(e,i);if(Kf(a,2))throw Error(`The root node cannot be moved`);let o=r.collision??`error`,s=Um(e,i,n),c=Jm(e,a.parentId),l=Jm(e,s.parentId),u=_p(e.snapshot.segmentTable,a.nameId),d=gp(e.snapshot.segmentTable,s.basename);if(s.parentId===a.parentId&&u===s.basename)return null;if(V(a)&&$m(e,i,s.parentId))throw Error(`Cannot move a directory into one of its descendants`);let f=Of(e.snapshot.nodes,W(e,s.parentId)).get(d),p=s.existingNodeId??f??null;if(p!=null&&p!==i&&Wm(e,p,o,Wf(a))===`skip`)return null;let m=a.parentId;zm(e,m,i,a.nameId),a.parentId=s.parentId,a.nameId=d,e.pathCacheByNodeId.delete(i),Qm(e,i),Rm(e,s.parentId,i),Km(e,m),e.pathCacheVersion++,Om(e,m),s.parentId!==m&&Om(e,s.parentId);let h=Jm(e,m),g=Jm(e,s.parentId);return Qp({affectedAncestorIds:[...new Set([...Am(e,m),...Am(e,s.parentId)])],affectedNodeIds:[i],from:t,projectionChanged:Xm([c,l],[h,g]),to:U(e,i)})}function Em(e,t){let n=e.pathCacheByNodeId.get(t);return n!=null&&n.version===e.pathCacheVersion?n.path:null}function Dm(e,t,n){return e.pathCacheByNodeId.set(t,{path:n,version:e.pathCacheVersion}),n}function U(e,t){let n=G(e,t),r=Em(e,t);if(r!=null)return r;if(Kf(n,2))return Dm(e,t,``);let i=U(e,n.parentId),a=_p(e.snapshot.segmentTable,n.nameId),o=i.length===0?a:`${i}${a}`;return Dm(e,t,V(n)?`${o}/`:o)}function Om(e,t){let n=e.instrumentation;if(n==null){th(e,t);return}H(n,`store.recomputeCountsUpwardFrom`,()=>th(e,t))}function km(e,t){let n=[[t,0]],{nodes:r,directories:i}=e.snapshot;for(;n.length>0;){let t=n[n.length-1],a=t[0],o=r[a];if(o==null||!V(o)){eh(e,a,o,!0),n.pop();continue}let s=i.get(a);if(s==null||t[1]>=s.childIds.length){eh(e,a,o,!0),n.pop();continue}let c=s.childIds[t[1]++];n.push([c,0])}}function Am(e,t){let n=[],r=t;for(;r!=null;){let t=G(e,r);if(n.push(r),r===e.snapshot.rootId)break;r=t.parentId}return n}function jm(e,t){if(t.length===0)return e.snapshot.rootId;let n=mp(t);return Mm(e,n.segments,n.requiresDirectory)}function Mm(e,t,n){let r=e.snapshot.rootId;for(let n of t){let t=e.snapshot.segmentTable.idByValue.get(n);if(t===void 0)return null;let i=W(e,r),a=Of(e.snapshot.nodes,i).get(t);if(a===void 0)return null;r=a}let i=G(e,r);return n&&!V(i)?null:r}function W(e,t){let n=e.snapshot.directories.get(t);if(n===void 0)throw Error(`Unknown directory child index for node ${String(t)}`);return n}function G(e,t){let n=e.snapshot.nodes[t];if(n===void 0||Kf(n,4))throw Error(`Unknown node ID: ${String(t)}`);return n}function Nm(e,t){let n=e.snapshot.nodes[t];if(n===void 0||Kf(n,4))return[];if(!V(n))return[U(e,t)];if(W(e,t).childIds.length===0)return Kf(n,1)&&!Kf(n,2)?[U(e,t)]:[];let r=[],i=[{childIndex:0,nodeId:t}];for(;i.length>0;){let t=i[i.length-1];if(t==null)break;let n=e.snapshot.nodes[t.nodeId];if(n===void 0||Kf(n,4)){i.pop();continue}if(!V(n)){r.push(U(e,t.nodeId)),i.pop();continue}let a=W(e,t.nodeId);if(a.childIds.length===0){Kf(n,1)&&!Kf(n,2)&&r.push(U(e,t.nodeId)),i.pop();continue}let o=a.childIds[t.childIndex];if(o==null){i.pop();continue}t.childIndex++,i.push({childIndex:0,nodeId:o})}return r}function Pm(e,t){let n=[],r=e.snapshot.rootId;for(let i of t){let t=gp(e.snapshot.segmentTable,i),a=W(e,r),o=Of(e.snapshot.nodes,a).get(t);if(o!==void 0){if(!V(G(e,o)))throw Error(`Cannot create a directory that collides with an existing file: "${i}"`);r=o;continue}r=Fm(e,r,t),n.push(r)}return{createdNodeIds:n,directoryId:r}}function Fm(e,t,n){let r=G(e,t),i=e.snapshot.nodes.length;return e.snapshot.nodes.push({depthAndFlags:Hf(Uf(r)+1,0,1),nameId:n,parentId:t,subtreeNodeCount:1,visibleSubtreeCount:1}),e.snapshot.directories.set(i,Ef()),Rm(e,t,i),e.collapseNewDirectoriesByDefault&&(e.collapsedDirectoryIds.add(i),e.hasCollapsedDirectoryOverrides=!0),e.activeNodeCount++,i}function Im(e,t,n){let r=gp(e.snapshot.segmentTable,n),i=W(e,t);if(Of(e.snapshot.nodes,i).has(r))throw Error(`Path already exists: "${rh(e,t,n)}"`);let a=G(e,t),o=e.snapshot.nodes.length;return e.snapshot.nodes.push({depthAndFlags:Hf(Uf(a)+1,0),nameId:r,parentId:t,subtreeNodeCount:1,visibleSubtreeCount:1}),Rm(e,t,o),e.activeNodeCount++,o}function Lm(e,t,n){let r=0,i=t.childIds.length;for(;r<i;){let a=r+i>>>1,o=t.childIds[a];if(o==null){i=a;continue}Bm(e,n,o)<0?i=a:r=a+1}return r}function Rm(e,t,n){let r=W(e,t),i=G(e,n);Of(e.snapshot.nodes,r).set(i.nameId,n),Nf(r,n,i.subtreeNodeCount,i.visibleSubtreeCount);let a=Lm(e,r,n);r.childIds.splice(a,0,n),jf(r,a),If(e.snapshot.nodes,r)}function zm(e,t,n,r){let i=W(e,t),a=kf(i),o=a.get(n)??-1;Of(e.snapshot.nodes,i).delete(r),a.delete(n);let s=e.snapshot.nodes[n];s!=null&&Nf(i,n,-s.subtreeNodeCount,-s.visibleSubtreeCount),o>=0&&(i.childIds.splice(o,1),jf(i,o),If(e.snapshot.nodes,i))}function Bm(e,t,n){let r=e.snapshot.options.sort;return r==="default"?Vm(e,t,n):r(Hm(e,t),Hm(e,n))}function Vm(e,t,n){let r=G(e,t),i=G(e,n),a=V(r);if(a!==V(i))return a?-1:1;let o=rp(up(e.snapshot.segmentTable,r.nameId),up(e.snapshot.segmentTable,i.nameId));if(o!==0)return o;let s=_p(e.snapshot.segmentTable,r.nameId),c=_p(e.snapshot.segmentTable,i.nameId);return s===c?t<n?-1:1:s<c?-1:1}function Hm(e,t){let n=G(e,t),r=U(e,t),i=V(n),a=i?r.slice(0,-1):r;return{basename:_p(e.snapshot.segmentTable,n.nameId),depth:Uf(n),isDirectory:i,path:r,segments:a.length===0?[]:a.split(`/`)}}function Um(e,t,n){let r=G(e,t),i=jm(e,n);if(i!=null){let t=G(e,i);if(V(t))return{basename:_p(e.snapshot.segmentTable,r.nameId),existingNodeId:null,parentId:i};let a=mp(n).segments;return{basename:a[a.length-1]??``,existingNodeId:i,parentId:t.parentId}}let a=mp(n),o=a.segments[a.segments.length-1]??``,s=a.segments.slice(0,-1),c=s.length===0?e.snapshot.rootId:Mm(e,s,!0);if(c==null)throw Error(`Destination parent does not exist: "${n}"`);return{basename:o,existingNodeId:null,parentId:c}}function Wm(e,t,n,r){if(n===`skip`)return`skip`;if(n===`error`)throw Error(`Destination already exists: "${U(e,t)}"`);let i=G(e,t);if(Wf(i)!==r)throw Error(`replace collision requires the same source and destination kinds`);if(V(i)&&W(e,t).childIds.length>0)throw Error(`replace collision does not support non-empty directories`);let a=i.parentId,o=i.nameId;return Gm(e,t),zm(e,a,t,o),Km(e,a),Om(e,a),`handled`}function Gm(e,t){let n=[],r=[{nodeId:t,visitedChildren:!1}];for(;r.length>0;){let t=r.pop();if(t==null)break;let i=G(e,t.nodeId);if(t.visitedChildren||!V(i)){V(i)&&e.snapshot.directories.delete(t.nodeId),qf(i,4),e.pathCacheByNodeId.delete(t.nodeId),e.collapsedDirectoryIds.delete(t.nodeId)&&(e.hasCollapsedDirectoryOverrides=e.collapsedDirectoryIds.size>0),e.expandedDirectoryIds.delete(t.nodeId),Jp(e,t.nodeId),e.activeNodeCount--,n.push(t.nodeId);continue}r.push({nodeId:t.nodeId,visitedChildren:!0});let a=W(e,t.nodeId);for(let e=a.childIds.length-1;e>=0;e--){let t=a.childIds[e];t!=null&&r.push({nodeId:t,visitedChildren:!1})}}return n}function Km(e,t){let n=t;for(;n!=null;){let t=G(e,n);if(!V(t)||Kf(t,2)||W(e,n).childIds.length>0)return;qf(t,1),n=t.parentId===n?null:t.parentId}}function qm(e,t){let n=e.snapshot.rootId;for(let r of t){let t=e.snapshot.segmentTable.idByValue.get(r);if(t==null)break;let i=Of(e.snapshot.nodes,W(e,n)).get(t);if(i==null||!V(G(e,i)))break;n=i}return n}function Jm(e,t){let n=Zm(e,t);if(n==null)return null;let r=bm(e,n),i=G(e,r),a=n===r?null:xm(e,n).map(t=>U(e,t));return JSON.stringify({flattenedSegmentPaths:a,hasChildren:W(e,r).childIds.length>0,path:U(e,r),terminalKind:Wf(i)})}function Ym(e,t){return Xm([e],[t])}function Xm(e,t){for(let n=0;n<e.length;n+=1){let r=e[n],i=t[n];if(r==null||i==null||r!==i)return!0}return!1}function Zm(e,t){let n=t;for(;n!=null;){let t=G(e,n);if(!V(t)||Kf(t,2))return null;if(!zp(e,n,t))return n;n=t.parentId}return null}function Qm(e,t){let n=G(e,t);if(Jf(n,(t===e.snapshot.rootId?-1:Uf(G(e,n.parentId)))+1),!V(n))return;let r=W(e,t);for(let t of r.childIds)Qm(e,t)}function $m(e,t,n){let r=n;for(;r!=null;){if(r===t)return!0;let n=G(e,r);if(r===e.snapshot.rootId)return!1;r=n.parentId}return!1}function eh(e,t,n=G(e,t),r=!1){let i=e.instrumentation;if(i==null){nh(e,t,n,r);return}H(i,`store.recomputeNodeCounts`,()=>nh(e,t,n,r))}function th(e,t){let n=t;for(;n!=null;){let t=G(e,n),r=t.subtreeNodeCount,i=t.visibleSubtreeCount;if(eh(e,n,t),n===e.snapshot.rootId)return;let a=t.subtreeNodeCount-r,o=t.visibleSubtreeCount-i,s=t.parentId;(a!==0||o!==0)&&Nf(W(e,s),n,a,o),n=s}}function nh(e,t,n,r){if(!V(n)){n.subtreeNodeCount=1,n.visibleSubtreeCount=1;return}let i=W(e,t);if(r){let t=e.instrumentation;t==null?Mf(e.snapshot.nodes,i):H(t,`store.recomputeNodeCounts.rebuildChildAggregates`,()=>Mf(e.snapshot.nodes,i))}let a=1+i.totalChildSubtreeNodeCount,o=i.totalChildVisibleSubtreeCount;if(n.subtreeNodeCount=a,Kf(n,2)){n.visibleSubtreeCount=o;return}n.visibleSubtreeCount=ym(e,t)==null?zp(e,t,n)?1+o:1:o}function rh(e,t,n){let r=U(e,t);return r.length===0?n:`${r}${n}`}function ih(e){return e!=null&&!Kf(e,4)}function ah(e,t){let n=e.snapshot.nodes[t];return!ih(n)||!V(n)||Kf(n,2)?null:n}function oh(e){let t=0;for(let[n,r]of e.pathCacheByNodeId)r.version===e.pathCacheVersion&&ih(e.snapshot.nodes[n])&&(t+=1);return t}function sh(e){return Math.max(0,e.valueById.length-1)}function ch(e){return{activeNodeCount:e.activeNodeCount,cachedPathEntryCount:oh(e),loadInfoEntryCount:e.directoryLoadInfoById.size,segmentCount:sh(e.snapshot.segmentTable),totalNodeSlotCount:Math.max(0,e.snapshot.nodes.length-1)}}function lh(e,t,n,r){return{activeNodeCountAfter:r.activeNodeCount,activeNodeCountBefore:n.activeNodeCount,cachedPathEntryCountAfter:r.cachedPathEntryCount,cachedPathEntryCountBefore:n.cachedPathEntryCount,idsPreserved:t,loadInfoEntryCountAfter:r.loadInfoEntryCount,loadInfoEntryCountBefore:n.loadInfoEntryCount,mode:e,reclaimedCachedPathEntryCount:n.cachedPathEntryCount-r.cachedPathEntryCount,reclaimedLoadInfoEntryCount:n.loadInfoEntryCount-r.loadInfoEntryCount,reclaimedNodeSlotCount:n.totalNodeSlotCount-r.totalNodeSlotCount,reclaimedSegmentCount:n.segmentCount-r.segmentCount,segmentCountAfter:r.segmentCount,segmentCountBefore:n.segmentCount,totalNodeSlotCountAfter:r.totalNodeSlotCount,totalNodeSlotCountBefore:n.totalNodeSlotCount}}function uh(e){let t=[],n=[];for(let n of e.collapsedDirectoryIds)ah(e,n)!=null&&t.push(U(e,n));for(let t of e.expandedDirectoryIds)ah(e,t)!=null&&n.push(U(e,t));return{collapsedPaths:t,expandedPaths:n}}function dh(e){let t=[];for(let[n,r]of e.directoryLoadInfoById)ah(e,n)!=null&&Hp(e,n)!==`loaded`&&t.push({info:{activeAttemptId:null,errorMessage:r.errorMessage,nextAttemptId:r.nextAttemptId,state:r.state},path:U(e,n)});return t}function fh(e,t){e.collapsedDirectoryIds.clear(),e.hasCollapsedDirectoryOverrides=!1,e.expandedDirectoryIds.clear();for(let n of t.expandedPaths){let t=jm(e,n);t!=null&&Bp(e,t,!0,G(e,t))}for(let n of t.collapsedPaths){let t=jm(e,n);t!=null&&Bp(e,t,!1,G(e,t))}}function ph(e,t){e.directoryLoadInfoById.clear();for(let n of t){let t=jm(e,n.path);t!=null&&ah(e,t)!=null&&e.directoryLoadInfoById.set(t,{activeAttemptId:null,errorMessage:n.info.errorMessage,nextAttemptId:n.info.nextAttemptId,state:n.info.state})}}function mh(e){e.pathCacheVersion+=1,e.pathCacheByNodeId.clear(),e.pathCacheByNodeId.set(e.snapshot.rootId,{path:``,version:e.pathCacheVersion})}function hh(e){let t=e.snapshot.segmentTable,n=hp();for(let r of e.snapshot.nodes)if(ih(r)){if(Kf(r,2)){r.nameId=0;continue}r.nameId=gp(n,_p(t,r.nameId))}e.snapshot.segmentTable=n}function gh(e){for(let[t,n]of e.snapshot.directories){let r=e.snapshot.nodes[t];if(!ih(r)||!V(r)){e.snapshot.directories.delete(t);continue}let i=n.childIds.filter(n=>{let r=e.snapshot.nodes[n];return ih(r)&&r.parentId===t});n.childIds=i,n.childIdByNameId=new Map(i.map(t=>[G(e,t).nameId,t])),n.childPositionById=new Map(i.map((e,t)=>[e,t])),Mf(e.snapshot.nodes,n)}}function _h(e){let t=e.snapshot.nodes.length-1;for(;t>e.snapshot.rootId;){let n=e.snapshot.nodes[t];if(ih(n))break;--t}e.snapshot.nodes.length=t+1}function vh(e){let t=uh(e),n=dh(e);H(e.instrumentation,`store.cleanup.stable.clearPathCaches`,()=>mh(e)),H(e.instrumentation,`store.cleanup.stable.rebuildSegmentTable`,()=>hh(e)),H(e.instrumentation,`store.cleanup.stable.rebuildDirectoryIndexes`,()=>gh(e)),H(e.instrumentation,`store.cleanup.stable.trimTrailingRemovedNodeSlots`,()=>_h(e)),H(e.instrumentation,`store.cleanup.stable.restoreExpansionOverrides`,()=>fh(e,t)),H(e.instrumentation,`store.cleanup.stable.restoreDirectoryLoadInfos`,()=>ph(e,n)),H(e.instrumentation,`store.cleanup.stable.recomputeCounts`,()=>km(e,e.snapshot.rootId))}function yh(e){let t=uh(e),n=dh(e),r=H(e.instrumentation,`store.cleanup.aggressive.listPaths`,()=>Sm(e)),i=Xf({...e.snapshot.options},e.instrumentation),a=H(e.instrumentation,`store.cleanup.aggressive.rebuildSnapshot`,()=>{let e=new Pp(i);return e.appendPaths(r),e.finish()});e.snapshot=a,e.activeNodeCount=a.nodes.length-1,e.pathCacheByNodeId=new Map([[a.rootId,{path:``,version:0}]]),e.pathCacheVersion=0,H(e.instrumentation,`store.cleanup.aggressive.restoreExpansionOverrides`,()=>fh(e,t)),H(e.instrumentation,`store.cleanup.aggressive.restoreDirectoryLoadInfos`,()=>ph(e,n)),H(e.instrumentation,`store.cleanup.aggressive.recomputeCounts`,()=>km(e,e.snapshot.rootId))}function bh(e){for(let t of e.directoryLoadInfoById.values())if(t.state===`loading`&&t.activeAttemptId!=null)return!0;return!1}function xh(e,t){let n=ch(e);t===`stable`?H(e.instrumentation,`store.cleanup.stable`,()=>vh(e)):H(e.instrumentation,`store.cleanup.aggressive`,()=>yh(e));let r=ch(e);return lh(t,t===`stable`,n,r)}var Sh=64;function Ch(e,t){let n=t+2;if(n<=e.length)return e;let r=e.length;for(;r<n;)r*=2;let i=new Int32Array(r);return i.fill(-1),i.set(e),i}function wh(e){return G(e,e.snapshot.rootId).visibleSubtreeCount}function Th(e,t,n,r){let i=G(e,t.terminalNodeId),a=Math.max(1,i.visibleSubtreeCount);return Math.min(r-1,n+a-1)}function Eh(e,t,n,r){return{ancestorPaths:r,index:t.index,posInSet:t.posInSet,row:Gh(e,t.cursor),setSize:t.setSize,subtreeEndIndex:Th(e,t.cursor,t.index,n)}}function Dh(e,t,n,r,i,a){let o=W(e,t),{childIndex:s,childVisibleIndex:c,localVisibleIndex:l}=Pf(e.snapshot.nodes,o,n),u=o.childIds[s];if(u==null)throw Error(`Visible index ${String(n)} is out of range`);return Oh(e,u,l,r+c,i+1,s,o.childIds.length,a)}function Oh(e,t,n,r,i,a,o,s){if(!V(G(e,t))){if(n===0)return{ancestors:s,cursor:{headNodeId:t,terminalNodeId:t,visibleDepth:i},index:r,posInSet:a,setSize:o};throw Error(`Visible index ${String(n)} is out of range for file`)}let c=zh(e,t,i);if(n===0)return{ancestors:s,cursor:c,index:r,posInSet:a,setSize:o};let l=G(e,c.terminalNodeId);if(!V(l)||!zp(e,c.terminalNodeId,l))throw Error(`Visible index ${String(n)} is out of range for collapsed directory`);return Dh(e,c.terminalNodeId,n-1,r+1,c.visibleDepth,[...s,{cursor:c,index:r,posInSet:a,setSize:o}])}function kh(e,t){let n=wh(e);if(t<0||t>=n)return null;let r=Dh(e,e.snapshot.rootId,t,0,-1,[]),i=r.ancestors.map(t=>U(e,t.cursor.terminalNodeId)),a=null;return{ancestorPaths:i,get ancestorRows(){if(a!=null)return a;let t=[],i=[];for(let a of r.ancestors){let r=Eh(e,a,n,[...i]);t.push(r),i.push(r.row.path)}return a=t,a},index:r.index,posInSet:r.posInSet,row:Gh(e,r.cursor),setSize:r.setSize,subtreeEndIndex:Th(e,r.cursor,r.index,n)}}function Ah(e,t,n){let r=e.instrumentation,i=wh(e);if(i<=0||n<t)return[];let a=Math.max(0,Math.min(t,i-1)),o=Math.max(a,Math.min(n,i-1));if(r==null){if(a===0)return Wh(e,o+1);let t=[],n=Ih(e,a);for(let r=a;r<=o&&n!=null;r++){let r=Gh(e,n);t.push(r),n=Vh(e,n)}return t}let s=[],c=0,l=0,u=H(r,`store.getVisibleSlice.selectFirstRow`,()=>Ih(e,a));for(let t=a;t<=o&&u!=null;t++){let t=H(r,`store.getVisibleSlice.materializeRow`,()=>Gh(e,u));s.push(t),t.isFlattened&&(c++,l+=t.flattenedSegments?.length??0),u=H(r,`store.getVisibleSlice.advanceCursor`,()=>Vh(e,u))}return Qf(r,`workload.visibleRowsRead`,s.length),Qf(r,`workload.flattenedRowsRead`,c),Qf(r,`workload.flattenedSegmentsRead`,l),s}function jh(e,t=wh(e)){let n=e.instrumentation;return n==null?Uh(e,t):H(n,`store.getVisibleTreeProjection`,()=>Uh(e,t))}function Mh(e){return Hh(jh(e))}function Nh(e,t){let n=jm(e,t);if(n==null||n===e.snapshot.rootId||V(G(e,n))&&bm(e,n)!==n)return null;let r=0,i=n,{nodes:a,rootId:o}=e.snapshot;for(;i!==o;){let t=G(e,i).parentId,n=W(e,t),s=kf(n).get(i);if(s==null)throw Error(`Child ${String(i)} was not found in its parent index`);if(r+=Ff(a,n,s),t!==o){let n=G(e,t),a=ym(e,t);if(!zp(e,t,n)&&a!==i)return null;bm(e,t)===t&&(r+=1)}i=t}return r}function Ph(e,t){let n=jm(e,t);if(n==null)throw Error(`Path does not exist: "${t}"`);let r=G(e,n);if(!V(r))throw Error(`Path is not a directory: "${t}"`);return zp(e,n,r)?null:(Bp(e,n,!0,r),Om(e,n),$p({affectedAncestorIds:Am(e,n),affectedNodeIds:[n],path:t,projectionChanged:!0}))}function Fh(e,t){let n=jm(e,t);if(n==null)throw Error(`Path does not exist: "${t}"`);let r=G(e,n);if(!V(r))throw Error(`Path is not a directory: "${t}"`);return zp(e,n,r)?(Bp(e,n,!1,r),Om(e,n),em({affectedAncestorIds:Am(e,n),affectedNodeIds:[n],path:t,projectionChanged:!0})):null}function Ih(e,t){return t<0||t>=wh(e)?null:Lh(e,e.snapshot.rootId,t,-1)}function Lh(e,t,n,r){let i=W(e,t),a=e.instrumentation,{childIndex:o,localVisibleIndex:s}=a==null?Pf(e.snapshot.nodes,i,n):H(a,`store.getVisibleSlice.selectChildIndex`,()=>Pf(e.snapshot.nodes,i,n)),c=i.childIds[o];if(c!=null)return Rh(e,c,s,r+1);throw Error(`Visible index ${String(n)} is out of range`)}function Rh(e,t,n,r){if(!V(G(e,t))){if(n===0)return{headNodeId:t,terminalNodeId:t,visibleDepth:r};throw Error(`Visible index ${String(n)} is out of range for file`)}let i=zh(e,t,r);if(n===0)return i;let a=G(e,i.terminalNodeId);if(!V(a)||!zp(e,i.terminalNodeId,a))throw Error(`Visible index ${String(n)} is out of range for collapsed directory`);return Lh(e,i.terminalNodeId,n-1,i.visibleDepth)}function zh(e,t,n){return V(G(e,t))?e.instrumentation==null?{headNodeId:t,terminalNodeId:bm(e,t),visibleDepth:n}:{headNodeId:t,terminalNodeId:H(e.instrumentation,`store.getVisibleSlice.flatten.resolveTerminalDirectory`,()=>bm(e,t)),visibleDepth:n}:{headNodeId:t,terminalNodeId:t,visibleDepth:n}}function Bh(e,t){let n=G(e,t);if(!V(n))return!0;let r=n.parentId;return r===e.snapshot.rootId||ym(e,r)!==t}function Vh(e,t){let n=G(e,t.terminalNodeId);if(V(n)){let r=W(e,t.terminalNodeId);if(zp(e,t.terminalNodeId,n)&&r.childIds.length>0){let n=r.childIds[0];return n==null?null:Rh(e,n,0,t.visibleDepth+1)}}let r=t.terminalNodeId,i=t.visibleDepth;for(;;){let t=G(e,r);if(r===e.snapshot.rootId)return null;let n=t.parentId,a=W(e,n),o=kf(a).get(r)??-1;if(o<0)throw Error(`Child ${String(r)} was not found in its parent index`);let s=a.childIds[o+1]??null;if(s!=null)return Rh(e,s,0,i);Bh(e,r)&&i--,r=n}}function Hh(e){let t=e.paths.length,n=Array(t);for(let r=0;r<t;r+=1){let t=e.getParentIndex(r);n[r]={index:r,parentPath:t>=0?e.paths[t]??null:null,path:e.paths[r]??``,posInSet:e.posInSetByIndex[r]??0,setSize:e.setSizeByIndex[r]??0}}return{getParentIndex:e.getParentIndex,rows:n,get visibleIndexByPath(){return e.visibleIndexByPath}}}function Uh(e,t){let n=Array(t),r=new Int32Array(t),i=new Int32Array(t),a=new Int32Array(t),o=new Int32Array(Sh);o.fill(-1);let s=0,{nodes:c,directories:l,segmentTable:u}=e.snapshot,d=[[l.get(e.snapshot.rootId),0,-1,``]],f=e.snapshot.options.flattenEmptyDirectories,p=e.pathCacheByNodeId,m=e.pathCacheVersion,h=u.valueById;for(;d.length>0&&s<t;){let t=d[d.length-1],u=t[0];if(t[1]>=u.childIds.length){d.pop();continue}let g=t[1],_=u.childIds[t[1]++],v=c[_],y=t[2]+1,b=t[3];o=Ch(o,y);let x,S=_;if(V(v))S=f?bm(e,_):_,x=S===_?`${b}${h[v.nameId]}/`:U(e,S);else{let e=p.get(_);x=e!=null&&e.version===m?e.path:`${b}${h[v.nameId]}`}r[s]=o[y],n[s]=x,i[s]=g,a[s]=u.childIds.length,o[y+1]=s,s+=1;let C=c[S];C!=null&&V(C)&&zp(e,S,C)&&d.push([l.get(S),0,y,x])}s<t&&(n.length=s);let g=r.subarray(0,s),_=i.subarray(0,s),v=a.subarray(0,s),y=null;return{getParentIndex(e){return e<0||e>=s?-1:g[e]??-1},paths:n,posInSetByIndex:_,setSizeByIndex:v,get visibleIndexByPath(){if(y==null){y=new Map;for(let e=0;e<s;e+=1)y.set(n[e]??``,e)}return y}}}function Wh(e,t){let n=Array(t),r=0,{nodes:i,directories:a,segmentTable:o}=e.snapshot,s=[[a.get(e.snapshot.rootId),0,-1]],c=o.valueById,l=e.snapshot.options.flattenEmptyDirectories,u=e.pathCacheByNodeId,d=e.pathCacheVersion;for(;s.length>0&&r<t;){let t=s[s.length-1],o=t[0];if(t[1]>=o.childIds.length){s.pop();continue}let f=o.childIds[t[1]++],p=i[f],m=t[2]+1;if(!V(p)){let t=u.get(f);n[r++]={depth:m,flattenedSegments:void 0,hasChildren:!1,id:f,isExpanded:!1,isFlattened:!1,isLoading:!1,kind:`file`,loadState:void 0,name:c[p.nameId],path:t!=null&&t.version===d?t.path:U(e,f)};continue}let h=l?bm(e,f):f,g={headNodeId:f,terminalNodeId:h,visibleDepth:m};n[r++]=Gh(e,g);let _=i[h];_!=null&&V(_)&&zp(e,h,_)&&s.push([a.get(h),0,m])}return r<t&&(n.length=r),n}function Gh(e,t){let n=G(e,t.terminalNodeId),r=V(n)?Kh(e,t):null,i=U(e,t.terminalNodeId),a=_p(e.snapshot.segmentTable,n.nameId),o=V(n)&&W(e,t.terminalNodeId).childIds.length>0,s=t.headNodeId!==t.terminalNodeId,c=e.instrumentation,l=s?c==null?xm(e,t.headNodeId).map(n=>{let r=G(e,n);return{isTerminal:n===t.terminalNodeId,name:_p(e.snapshot.segmentTable,r.nameId),nodeId:n,path:U(e,n)}}):H(c,`store.getVisibleSlice.flatten.collectSegments`,()=>xm(e,t.headNodeId).map(n=>{let r=G(e,n);return{isTerminal:n===t.terminalNodeId,name:_p(e.snapshot.segmentTable,r.nameId),nodeId:n,path:U(e,n)}})):void 0;return{depth:t.visibleDepth,flattenedSegments:l,hasChildren:o,id:t.terminalNodeId,isExpanded:V(n)&&zp(e,t.terminalNodeId,n),isFlattened:s,isLoading:r===`loading`,kind:V(n)?`directory`:`file`,loadState:r==null||r===`loaded`?void 0:r,name:a,path:i}}function Kh(e,t){if(t.headNodeId===t.terminalNodeId)return Hp(e,t.terminalNodeId);let n=xm(e,t.headNodeId),r=!1,i=!1;for(let t of n){let n=Hp(e,t);if(n===`loading`)return`loading`;if(n===`error`){i=!0;continue}n===`unloaded`&&(r=!0)}return i?`error`:r?`unloaded`:`loaded`}var qh=8;function Jh(e){let{nodes:t,directories:n,rootId:r,options:i}=e,a=t.length,o=new Int32Array(a),s=new Int32Array(a),c=new Int32Array(a),l=new Int32Array(a),u=new Int32Array(a),d=new Int32Array(a),f=new Int32Array(a);for(let e=0;e<a;e+=1){let n=t[e];n!=null&&(o[e]=n.parentId,s[e]=n.nameId,c[e]=n.depthAndFlags,l[e]=n.subtreeNodeCount,u[e]=n.visibleSubtreeCount)}let p=0;for(let e of n.values())p+=e.childIds.length;let m=new Int32Array(p),h=0;for(let[e,t]of n){let n=t.childIds;d[e]=h,f[e]=n.length;for(let e=0;e<n.length;e+=1)m[h]=n[e],h+=1}return{nodeCount:a,rootId:r,flattenEmptyDirectories:i.flattenEmptyDirectories===!0,parentId:o,nameId:s,depthAndFlags:c,subtreeNodeCount:l,visibleSubtreeCount:u,childStart:d,childCount:f,childIdsFlat:m}}function Yh(e){let{nodeCount:t,rootId:n,flattenEmptyDirectories:r,depthAndFlags:i,subtreeNodeCount:a,visibleSubtreeCount:o,childStart:s,childCount:c,childIdsFlat:l}=e;for(let e=t-1;e>=1;--e){if((i[e]&qh)===0)continue;let t=s[e],n=c[e],u=0,d=0;for(let e=0;e<n;e+=1){let n=l[t+e];u+=a[n],d+=o[n]}a[e]=1+u;let f;f=r&&n===1?(i[l[t]]&qh)===0?1+d:d:1+d,o[e]=f}let u=s[n],d=c[n],f=0,p=0;for(let e=0;e<d;e+=1){let t=l[u+e];f+=a[t],p+=o[t]}a[n]=1+f,o[n]=p}function Xh(e){let{directories:t,nodes:n,options:r,rootId:i,presortedDirectoryNodeIds:a}=e.snapshot,o=r.flattenEmptyDirectories===!0,s=e=>{let r=n[e];if(r==null||!V(r))return;let i=t.get(e);if(i==null)throw Error(`Unknown directory child index for node ${String(e)}`);let a=i.childIds,s=a.length,c=0,l=0;for(let e=0;e<s;e++){let t=a[e];if(t==null)continue;let r=n[t];c+=r.subtreeNodeCount,l+=r.visibleSubtreeCount}i.totalChildSubtreeNodeCount=c,i.totalChildVisibleSubtreeCount=l,s>=128&&If(n,i),r.subtreeNodeCount=1+c;let u;if(o&&s===1){let e=n[a[0]];u=e!=null&&V(e)?l:1+l}else u=1+l;r.visibleSubtreeCount=u};if(a!=null)for(let e=a.length-1;e>=0;e--)s(a[e]);else for(let e=n.length-1;e>=1;e--)s(e);let c=n[i],l=t.get(i);if(c==null||l==null)return;let u=l.childIds,d=0,f=0;for(let e=0;e<u.length;e++){let t=u[e];if(t==null)continue;let r=n[t];d+=r.subtreeNodeCount,f+=r.visibleSubtreeCount}l.totalChildSubtreeNodeCount=d,l.totalChildVisibleSubtreeCount=f,If(n,l),c.subtreeNodeCount=1+d,c.visibleSubtreeCount=f}function Zh(e){let{directories:t,nodes:n,rootId:r}=e.snapshot,i=Jh(e.snapshot);Yh(i);let a=i.subtreeNodeCount,o=i.visibleSubtreeCount;for(let e=0;e<n.length;e+=1){let t=n[e];t!=null&&(t.subtreeNodeCount=a[e],t.visibleSubtreeCount=o[e])}for(let[e,i]of t){let t=i.childIds,a=t.length,o=0,s=0;for(let e=0;e<a;e++){let r=t[e];if(r==null)continue;let i=n[r];o+=i.subtreeNodeCount,s+=i.visibleSubtreeCount}i.totalChildSubtreeNodeCount=o,i.totalChildVisibleSubtreeCount=s,(e===r||a>=128)&&If(n,i)}}function Qh(e){return e.initialExpansion===`open`&&(e.initialExpandedPaths==null||e.initialExpandedPaths.length===0)}var $h=class e{#e;constructor(e={}){let t=Zf(e),n=H(t,`store.builder.create`,()=>new Pp(e));if(e.preparedInput!=null){let t=jp(e.preparedInput);t==null?n.appendPreparedPaths(Ap(e.preparedInput),!1):n.appendPresortedPaths(t,Mp(e.preparedInput))}else{let r=e.paths??[];e.presorted===!0?n.appendPaths(r):n.appendPreparedPaths(H(t,`store.preparePathEntries`,()=>Np(r,e)))}let r=H(t,`store.builder.finish`,()=>n.finish({skipSubtreeCountPass:!0})),i=H(t,`store.state.detectAllDirectoriesExpanded`,()=>(e.initialExpansion??`closed`)===`closed`&&n.didMatchAllInitialExpandedPaths());this.#e=H(t,`store.state.create`,()=>Fp(r,i?`open`:e.initialExpansion??`closed`,t)),i&&(this.#e.collapseNewDirectoriesByDefault=!0);let a=i?this.#e.snapshot.directories.size-1:H(t,`store.state.initializeExpandedPaths`,()=>this.initializeExpandedPaths(e.initialExpandedPaths));i||Qh(e)||(e.initialExpansion??`closed`)===`closed`&&a===this.#e.snapshot.directories.size-1||(e.initialExpandedPaths?.length??0)>0&&H(t,`store.state.checkAllDirectoriesExpanded`,()=>this.hasAllDirectoriesExpanded())?e.useSoaCountSweep===!0?H(t,`store.state.initializeOpenVisibleCountsViaSoa`,()=>Zh(this.#e)):H(t,`store.state.initializeOpenVisibleCounts`,()=>Xh(this.#e)):H(t,`store.state.recomputeCounts`,()=>km(this.#e,this.#e.snapshot.rootId))}static preparePaths(e,t={}){return Dp(e,t)}static prepareInput(e,t={}){return Op(e,t)}static preparePresortedInput(e){return kp(e)}list(e){return H(this.#e.instrumentation,`store.list`,()=>Sm(this.#e,e))}add(e){H(this.#e.instrumentation,`store.add`,()=>{let t=wh(this.#e);lm(this.#e,sm(this.#e,t,Cm(this.#e,e)))})}remove(e,t={}){H(this.#e.instrumentation,`store.remove`,()=>{let n=wh(this.#e);lm(this.#e,sm(this.#e,n,wm(this.#e,e,t)))})}move(e,t,n={}){H(this.#e.instrumentation,`store.move`,()=>{let r=wh(this.#e),i=Tm(this.#e,e,t,n);i!=null&&lm(this.#e,sm(this.#e,r,i))})}batch(e){cm(this.#e,()=>{if(typeof e==`function`){e(this);return}for(let t of e)switch(t.type){case`add`:this.add(t.path);break;case`remove`:this.remove(t.path,{recursive:t.recursive});break;case`move`:this.move(t.from,t.to,{collision:t.collision});break}})}getVisibleCount(){return H(this.#e.instrumentation,`store.getVisibleCount`,()=>wh(this.#e))}getVisibleSlice(e,t){return H(this.#e.instrumentation,`store.getVisibleSlice`,()=>Ah(this.#e,e,t))}getVisibleRowContext(e){return H(this.#e.instrumentation,`store.getVisibleRowContext`,()=>kh(this.#e,e))}getVisibleTreeProjection(){return Mh(this.#e)}getVisibleTreeProjectionData(e){return jh(this.#e,e)}getVisibleIndex(e){return H(this.#e.instrumentation,`store.getVisibleIndex`,()=>Nh(this.#e,e))}getPathInfo(e){return H(this.#e.instrumentation,`store.getPathInfo`,()=>{let t=jm(this.#e,e);if(t==null)return null;let n=G(this.#e,t);return{depth:Uf(n),kind:V(n)?`directory`:`file`,path:U(this.#e,t)}})}isExpanded(e){return H(this.#e.instrumentation,`store.isExpanded`,()=>{let t=this.requireDirectoryNodeId(e),n=G(this.#e,t);return zp(this.#e,t,n)})}expand(e){H(this.#e.instrumentation,`store.expand`,()=>{let t=wh(this.#e),n=Ph(this.#e,e);n!=null&&lm(this.#e,sm(this.#e,t,n))})}collapse(e){H(this.#e.instrumentation,`store.collapse`,()=>{let t=wh(this.#e),n=Fh(this.#e,e);n!=null&&lm(this.#e,sm(this.#e,t,n))})}on(e,t){return Yp(this.#e,e,t)}getDirectoryLoadState(e){let t=this.requireDirectoryNodeId(e);return Hp(this.#e,t)}markDirectoryUnloaded(e){H(this.#e.instrumentation,`store.markDirectoryUnloaded`,()=>{let t=this.requireDirectoryNodeId(e);if(W(this.#e,t).childIds.length>0)throw Error(`Cannot mark a directory with known children as unloaded: "${e}"`);let n=wh(this.#e);Wp(this.#e,t),lm(this.#e,sm(this.#e,n,tm({affectedAncestorIds:Am(this.#e,t),affectedNodeIds:[t],path:e,projectionChanged:this.isDirectoryProjectionVisible(t)})))})}beginChildLoad(e){return H(this.#e.instrumentation,`store.beginChildLoad`,()=>{let t=this.requireDirectoryNodeId(e),n=wh(this.#e),r=Up(this.#e,t);return lm(this.#e,sm(this.#e,n,nm({affectedAncestorIds:Am(this.#e,t),affectedNodeIds:[t],attemptId:r.attemptId,path:e,projectionChanged:this.isDirectoryProjectionVisible(t),reused:r.reused}))),r})}applyChildPatch(e,t){return H(this.#e.instrumentation,`store.applyChildPatch`,()=>{let n=this.resolveActiveDirectoryNodeId(e.nodeId);if(n==null||Hp(this.#e,n)!==`loading`||!Kp(this.#e,n,e.attemptId))return!1;let r=U(this.#e,n);this.validateChildPatch(r,t);let i=wh(this.#e),a=[];for(let e of t.operations){eg(r,e);let t=wh(this.#e);switch(e.type){case`add`:a.push(sm(this.#e,t,Cm(this.#e,e.path)));break;case`remove`:a.push(sm(this.#e,t,wm(this.#e,e.path,{recursive:e.recursive})));break;case`move`:{let n=Tm(this.#e,e.from,e.to,{collision:e.collision});n!=null&&a.push(sm(this.#e,t,n));break}}}let o=a.some(e=>e.projectionChanged)||this.isDirectoryProjectionVisible(n);return lm(this.#e,sm(this.#e,i,rm({affectedAncestorIds:Am(this.#e,n),affectedNodeIds:[n],attemptId:e.attemptId,childEvents:a,path:U(this.#e,n),projectionChanged:o}))),!0})}completeChildLoad(e){return H(this.#e.instrumentation,`store.completeChildLoad`,()=>{let t=this.resolveActiveDirectoryNodeId(e.nodeId);if(t==null)return!1;let n=wh(this.#e),r=Gp(this.#e,t,e.attemptId);return lm(this.#e,sm(this.#e,n,im({affectedAncestorIds:Am(this.#e,t),affectedNodeIds:[t],attemptId:e.attemptId,path:U(this.#e,t),projectionChanged:this.isDirectoryProjectionVisible(t),stale:!r}))),r})}failChildLoad(e,t){return H(this.#e.instrumentation,`store.failChildLoad`,()=>{let n=this.resolveActiveDirectoryNodeId(e.nodeId);if(n==null)return!1;let r=wh(this.#e),i=qp(this.#e,n,e.attemptId,t);return lm(this.#e,sm(this.#e,r,am({affectedAncestorIds:Am(this.#e,n),affectedNodeIds:[n],attemptId:e.attemptId,errorMessage:t,path:U(this.#e,n),projectionChanged:this.isDirectoryProjectionVisible(n),stale:!i}))),i})}cleanup(e={}){return H(this.#e.instrumentation,`store.cleanup`,()=>{if(this.#e.transactionStack.length>0)throw Error(`Cleanup cannot run during an open batch or transaction.`);if(bh(this.#e))throw Error(`Cleanup cannot run while directory loads are active.`);let t=wh(this.#e),n=xh(this.#e,e.mode??`stable`);return lm(this.#e,sm(this.#e,t,om({...n,affectedAncestorIds:[],affectedNodeIds:[],projectionChanged:n.idsPreserved===!1}))),n})}getNodeCount(){return this.#e.activeNodeCount}initializeExpandedPaths(e){if(e==null||e.length===0)return 0;let t=0,n=[],r=[],i=0,a=null,o=this.#e.snapshot.segmentTable,s=o.valueById,c=this.#e.snapshot.nodes,l=new Map;for(let u of e){a!=null&&u<a&&(a=null,i=0,n.length=0,r.length=0);let e=u.length>0&&u.charCodeAt(u.length-1)===47?u.length-1:u.length;if(e===0){a=u,i=e,n.length=0,r.length=0;continue}let d=0,f=0;if(a!=null){let t=Math.min(e,i),n=!0;for(let e=0;e<t;e+=1){let t=u.charCodeAt(e);if(t!==a.charCodeAt(e)){n=!1;break}t===47&&(d+=1,f=e+1)}n&&(t===i&&e>t&&u.charCodeAt(t)===47?(d+=1,f=t+1):t===e&&i>t&&a.charCodeAt(t)===47&&(d+=1,f=e+1)),d=Math.min(d,r.length)}let p=d===0?this.#e.snapshot.rootId:r[d-1]??this.#e.snapshot.rootId,m=d,h=!0,g=f;for(;g<=e;){let t=u.indexOf(`/`,g),i=t===-1||t>e?e:t,a=u.slice(g,i),f=W(this.#e,p).childIds,_=m===d?n[m]??0:0,v=_,y,b=l.get(a)??tp(a);l.set(a,b);let x=(e,t)=>{for(v=e;v<t;v+=1){let e=f[v],t=c[e],n=s[t.nameId];if(n===a)return y=e,!0;let r=rp(up(o,t.nameId),b);if(r>0||r===0&&n>a)return!1}return!1};if(!x(_,f.length)&&_>0&&x(0,_),y===void 0){h=!1;break}if(!V(G(this.#e,y))){h=!1;break}if(n[m]=v,r[m]=y,p=y,m+=1,i===e)break;g=i+1}if(a=u,i=e,n.length=m,r.length=m,!h){a=null,i=0,n.length=0,r.length=0;continue}for(let e=d;e<m;e+=1){let n=r[e];if(n==null)continue;let i=G(this.#e,n);zp(this.#e,n,i)||(Bp(this.#e,n,!0,i),t+=1)}}return t}hasAllDirectoriesExpanded(){for(let e of this.#e.snapshot.directories.keys()){if(e===this.#e.snapshot.rootId)continue;let t=G(this.#e,e);if(!zp(this.#e,e,t))return!1}return!0}requireDirectoryNodeId(e){let t=jm(this.#e,e);if(t==null)throw Error(`Path does not exist: "${e}"`);if(!V(G(this.#e,t)))throw Error(`Path is not a directory: "${e}"`);return t}resolveActiveDirectoryNodeId(e){try{if(!V(G(this.#e,e)))throw Error(`Node is not a directory: ${String(e)}`);return e}catch{return null}}isDirectoryProjectionVisible(e){let t=e;for(;t!==this.#e.snapshot.rootId;){let e=G(this.#e,t).parentId;if(e!==this.#e.snapshot.rootId){let n=G(this.#e,e),r=ym(this.#e,e);if(!zp(this.#e,e,n)&&r!==t)return!1}t=e}return!0}validateChildPatch(t,n){new e({paths:this.list(t),presorted:!0,sort:this.#e.snapshot.options.sort}).batch(n.operations)}};function eg(e,t){switch(t.type){case`add`:case`remove`:if(!t.path.startsWith(e)||t.path===e)throw Error(`Child patch operation must stay within ${e}: "${t.path}"`);break;case`move`:if(!t.from.startsWith(e)||!t.to.startsWith(e)||t.from===e||t.to===e)throw Error(`Child patch move must stay within ${e}: "${t.from}" -> "${t.to}"`)}}function tg(e,t={}){return $h.prepareInput(e,t)}var ng={compact:{itemHeight:24,factor:.8},default:{itemHeight:30,factor:1},relaxed:{itemHeight:36,factor:1.2}};function rg(e,t){if(typeof e==`number`)return{itemHeight:t??ng.default.itemHeight,factor:e};let n=ng[e??`default`];return{itemHeight:t??n.itemHeight,factor:n.factor}}var ig=ng.default.itemHeight,ag=`@layer base {
|
|
5551
|
+
</symbol>`],sd=[cu,lu,du,fu,pu,mu,gu,xu,Su,Eu,Nu,Pu,Fu,Iu,Lu,zu,Hu,Uu,Wu,Gu,Ku,Yu,Xu,$u,ed,td,nd,rd,id,ad];function cd(e,t){return t.length===0?e:e.replace(`</svg>`,`\n ${t.join(`
|
|
5552
|
+
`)}\n</svg>`)}var ld=cd(su,od),ud={minimal:su,standard:ld,complete:cd(ld,sd)},dd={".babelrc":`babel`,".babelrc.json":`babel`,".bash_profile":`bash`,".bashrc":`bash`,".browserslistrc":`browserslist`,".dockerignore":`docker`,".eslintignore":`eslint`,".eslintrc":`eslint`,".eslintrc.cjs":`eslint`,".eslintrc.js":`eslint`,".eslintrc.json":`eslint`,".eslintrc.yaml":`eslint`,".eslintrc.yml":`eslint`,".gitattributes":`git`,".gitignore":`git`,".gitkeep":`git`,".gitmodules":`git`,".oxlintrc.json":`oxc`,".postcssrc":`postcss`,".postcssrc.json":`postcss`,".postcssrc.yaml":`postcss`,".postcssrc.yml":`postcss`,".prettierignore":`prettier`,".prettierrc":`prettier`,".prettierrc.cjs":`prettier`,".prettierrc.js":`prettier`,".prettierrc.json":`prettier`,".prettierrc.mjs":`prettier`,".prettierrc.toml":`prettier`,".prettierrc.yaml":`prettier`,".prettierrc.yml":`prettier`,".stylelintignore":`stylelint`,".stylelintrc":`stylelint`,".stylelintrc.cjs":`stylelint`,".stylelintrc.js":`stylelint`,".stylelintrc.json":`stylelint`,".stylelintrc.mjs":`stylelint`,".stylelintrc.yaml":`stylelint`,".stylelintrc.yml":`stylelint`,".terraform.lock.hcl":`terraform`,".zprofile":`bash`,".zshenv":`bash`,".zshrc":`bash`,"babel.config.cjs":`babel`,"babel.config.js":`babel`,"babel.config.json":`babel`,"babel.config.mjs":`babel`,"biome.json":`biome`,"biome.jsonc":`biome`,"bootstrap.bundle.js":`bootstrap`,"bootstrap.bundle.min.js":`bootstrap`,"bootstrap.css":`bootstrap`,"bootstrap.js":`bootstrap`,"bootstrap.min.css":`bootstrap`,"bootstrap.min.js":`bootstrap`,"bun.lock":`bun`,"bun.lockb":`bun`,"bunfig.toml":`bun`,"claude.md":`claude`,"compose.yaml":`docker`,"compose.yml":`docker`,"docker-compose.override.yml":`docker`,"docker-compose.yaml":`docker`,"docker-compose.yml":`docker`,dockerfile:`docker`,"eslint.config.cjs":`eslint`,"eslint.config.js":`eslint`,"eslint.config.mjs":`eslint`,"eslint.config.mts":`eslint`,"eslint.config.ts":`eslint`,gemfile:`ruby`,"next.config.js":`nextjs`,"next.config.mjs":`nextjs`,"next.config.mts":`nextjs`,"next.config.ts":`nextjs`,"postcss.config.cjs":`postcss`,"postcss.config.js":`postcss`,"postcss.config.mjs":`postcss`,"postcss.config.ts":`postcss`,"prettier.config.cjs":`prettier`,"prettier.config.js":`prettier`,"prettier.config.mjs":`prettier`,rakefile:`ruby`,"readme.md":`markdown`,"stylelint.config.cjs":`stylelint`,"stylelint.config.js":`stylelint`,"stylelint.config.mjs":`stylelint`,"svgo.config.cjs":`svgo`,"svgo.config.js":`svgo`,"svgo.config.mjs":`svgo`,"svgo.config.ts":`svgo`,"tailwind.config.cjs":`tailwind`,"tailwind.config.js":`tailwind`,"tailwind.config.mjs":`tailwind`,"tailwind.config.ts":`tailwind`,"vite.config.js":`vite`,"vite.config.mjs":`vite`,"vite.config.mts":`vite`,"vite.config.ts":`vite`,"webpack.config.babel.js":`webpack`,"webpack.config.cjs":`webpack`,"webpack.config.js":`webpack`,"webpack.config.mjs":`webpack`,"webpack.config.ts":`webpack`},fd={"7z":`zip`,astro:`astro`,AUTHORS:`text`,avif:`image`,bash:`bash`,bmp:`image`,bz2:`zip`,c:`c`,cc:`cpp`,cfg:`text`,CHANGELOG:`text`,cjs:`javascript`,"code-workspace":`vscode`,conf:`text`,CONTRIBUTORS:`text`,cpp:`cpp`,csh:`bash`,css:`css`,csv:`table`,cts:`typescript`,cxx:`cpp`,db:`database`,editorconfig:`text`,env:`text`,"env.development":`text`,"env.local":`text`,"env.production":`text`,eot:`font`,erb:`ruby`,fish:`bash`,gemspec:`ruby`,gif:`image`,go:`go`,gql:`graphql`,graphql:`graphql`,gz:`zip`,h:`c`,hh:`cpp`,hpp:`cpp`,htm:`html`,html:`html`,hxx:`cpp`,icns:`image`,ico:`image`,ini:`text`,inl:`cpp`,jar:`zip`,jpeg:`image`,jpg:`image`,js:`javascript`,json:`json`,json5:`json`,jsonc:`json`,jsonl:`json`,jsx:`javascript`,ksh:`bash`,less:`css`,LICENSE:`text`,log:`text`,markdown:`markdown`,mcp:`mcp`,md:`markdown`,mdx:`markdown`,"mdx.tsx":`markdown`,mjs:`javascript`,mm:`cpp`,mts:`typescript`,ods:`table`,otf:`font`,png:`image`,postcss:`css`,py:`python`,pyi:`python`,pyw:`python`,pyx:`python`,rake:`ruby`,rar:`zip`,rb:`ruby`,rs:`rust`,rst:`text`,rtf:`text`,sass:`css`,scss:`css`,sh:`bash`,sql:`database`,sqlite:`database`,sqlite3:`database`,styl:`css`,svelte:`svelte`,svg:`svg`,swift:`swift`,tar:`zip`,tf:`terraform`,tfstate:`terraform`,tfvars:`terraform`,tgz:`zip`,tif:`image`,tiff:`image`,ts:`typescript`,tsv:`table`,tsx:`typescript`,ttf:`font`,txt:`text`,vue:`vue`,war:`zip`,wasm:`wasm`,wast:`wasm`,wat:`wasm`,webp:`image`,woff:`font`,woff2:`font`,xhtml:`html`,xls:`table`,xlsx:`table`,xz:`zip`,yaml:`yml`,yml:`yml`,zig:`zig`,zip:`zip`,zsh:`bash`},pd={jsx:`react`,sass:`sass`,scss:`sass`,tsx:`react`},md=new Set([`bash`,`c`,`cpp`,`css`,`database`,`default`,`font`,`git`,`go`,`html`,`image`,`javascript`,`json`,`markdown`,`mcp`,`python`,`ruby`,`rust`,`swift`,`table`,`text`,`typescript`,`zip`]),hd=new Set([`complete`]);function gd(e){return ud[e===`none`?`minimal`:e]}function _d(e){return`file-tree-builtin-${e}`}function vd(e){return e!==`none`&&hd.has(e)}function yd(e,t,n){if(e===`minimal`||e===`none`)return;let r=e===`complete`,i=dd[t.toLowerCase()];if(i!=null&&(r||md.has(i)))return i;for(let e of n){if(r){let t=pd[e];if(t!=null)return t}let t=fd[e];if(t!=null&&(r||md.has(t)))return t}return`default`}var bd=`file-tree-container`,xd=`data-file-tree-style`,Sd=`data-file-tree-unsafe-css`,Cd=`data-file-tree-scrollbar-measure`,wd=`data-file-tree-scrollbar-gutter-measured`,Td=`--trees-scrollbar-gutter-measured`,Ed=`header`,Dd=`context-menu`,Od=`context-menu-trigger`;function kd(e){return e.spriteSheet!=null||e.remap!=null||e.byFileName!=null||e.byFileExtension!=null||e.byFileNameContains!=null}function Ad(e){return e==null?{set:`complete`,colored:!0}:typeof e==`string`?{set:e,colored:!0}:{...e,set:e.set??(kd(e)?`none`:`complete`),colored:e.colored??!0}}var jd=e=>e.trim().toLowerCase(),Md=e=>e.split(`/`).at(-1)??e,Nd=e=>{let t=e.toLowerCase().split(`.`),n=[];for(let e=1;e<t.length;e+=1)n.push(t.slice(e).join(`.`));return n};function Pd(e,t){return typeof e==`string`?{name:e,remappedFrom:t}:{...e,remappedFrom:t}}function Fd(e){let t=Ad(e),n=t.remap,r=new Map;for(let[e,n]of Object.entries(t.byFileName??{}))r.set(e.toLowerCase(),n);let i=new Map;for(let[e,n]of Object.entries(t.byFileExtension??{}))i.set(jd(e),n);let a=Object.entries(t.byFileNameContains??{}).map(([e,t])=>[e.toLowerCase(),t]);return{resolveIcon:(e,o)=>{if(e===`file-tree-icon-file`&&o!=null){let s=Md(o),c=s.toLowerCase(),l=r.get(c);if(l!=null)return Pd(l,e);for(let[t,n]of a)if(c.includes(t))return Pd(n,e);let u=Nd(s);for(let t of u){let n=i.get(t);if(n!=null)return Pd(n,e)}let d=yd(t.set,s,u);if(d!=null&&t.set!==`none`){if(d==="default"){let t=n?.[e];if(t!=null)return Pd(t,e)}return{name:_d(d),remappedFrom:e,token:d}}}let s=n?.[e];return s==null?{name:e}:Pd(s,e)}}}var Id=5,Ld=32,Rd=128;function zd(){return{childIdByNameId:new Map,childIds:[],childPositionById:new Map,childVisibleChunkSums:null,totalChildSubtreeNodeCount:0,totalChildVisibleSubtreeCount:0}}function Bd(){return{childIdByNameId:null,childIds:[],childPositionById:null,childVisibleChunkSums:null,totalChildSubtreeNodeCount:0,totalChildVisibleSubtreeCount:0}}function Vd(e,t){if(t.childIdByNameId!=null)return t.childIdByNameId;let n=new Map;for(let r of t.childIds){let t=e[r];t!=null&&n.set(t.nameId,r)}return t.childIdByNameId=n,n}function Hd(e){if(e.childPositionById!=null)return e.childPositionById;let t=new Map;for(let n=0;n<e.childIds.length;n++){let r=e.childIds[n];r!=null&&t.set(r,n)}return e.childPositionById=t,t}function Ud(e,t){e.childPositionById!=null&&e.childPositionById.set(t,e.childIds.length),e.childIds.push(t)}function Wd(e,t){if(e.childPositionById!=null)for(let n=t;n<e.childIds.length;n++){let t=e.childIds[n];t!=null&&e.childPositionById.set(t,n)}}function Gd(e,t){let n=0,r=0;for(let i of t.childIds){let t=e[i];t!=null&&(n+=t.subtreeNodeCount,r+=t.visibleSubtreeCount)}t.totalChildSubtreeNodeCount=n,t.totalChildVisibleSubtreeCount=r,Yd(e,t)}function Kd(e,t,n,r){if(e.totalChildSubtreeNodeCount+=n,e.totalChildVisibleSubtreeCount+=r,e.childVisibleChunkSums==null||r===0)return;let i=Hd(e).get(t);if(i===void 0)return;let a=i>>Id;e.childVisibleChunkSums[a]+=r}function qd(e,t,n){let r=t.childVisibleChunkSums;if(r!=null){let i=n,a=0;for(let o of r){if(i<o){let r=Xd(e,t,a,i);return{...r,childVisibleIndex:n-r.localVisibleIndex}}i-=o,a+=Ld}throw Error(`Visible child index ${String(n)} is out of range`)}let i=n;for(let r=0;r<t.childIds.length;r++){let a=t.childIds[r];if(a==null)continue;let o=e[a];if(o!=null){if(i<o.visibleSubtreeCount)return{childIndex:r,childVisibleIndex:n-i,localVisibleIndex:i};i-=o.visibleSubtreeCount}}throw Error(`Visible child index ${String(n)} is out of range`)}function Jd(e,t,n){let r=0,i=t.childVisibleChunkSums,a=0;if(i!=null){let e=n>>Id;for(let t=0;t<e;t+=1)r+=i[t]??0;a=e<<Id}for(let i=a;i<n;i+=1){let n=t.childIds[i];if(n==null)continue;let a=e[n];a!=null&&(r+=a.visibleSubtreeCount)}return r}function Yd(e,t){if(t.childIds.length<Rd){t.childVisibleChunkSums=null;return}let n=Math.ceil(t.childIds.length/Ld),r=new Int32Array(n);for(let n=0;n<t.childIds.length;n++){let i=t.childIds[n];if(i==null)continue;let a=e[i];a!=null&&(r[n>>Id]+=a.visibleSubtreeCount)}t.childVisibleChunkSums=r}function Xd(e,t,n,r){let i=Math.min(t.childIds.length,n+Ld),a=r;for(let r=n;r<i;r++){let n=t.childIds[r];if(n==null)continue;let i=e[n];if(i!=null){if(a<i.visibleSubtreeCount)return{childIndex:r,localVisibleIndex:a};a-=i.visibleSubtreeCount}}throw Error(`Visible child index ${String(r)} is out of range`)}var Zd=7,Qd=3,$d=8,ef=4;function tf(e,t,n=0){return e<<ef|n<<Qd|t}function nf(e){return e.depthAndFlags>>>ef}function rf(e){return(e.depthAndFlags&$d)>>Qd}function V(e){return(e.depthAndFlags&$d)!==0}function af(e){return e.depthAndFlags&Zd}function H(e,t){return(af(e)&t)!==0}function of(e,t){e.depthAndFlags|=t}function sf(e,t){e.depthAndFlags=tf(t,af(e),rf(e))}var cf=Symbol(`benchmarkInstrumentation`);function lf(e,t){return t==null||Object.defineProperty(e,cf,{configurable:!0,enumerable:!1,value:t,writable:!1}),e}function uf(e){return e==null?null:e[cf]??null}function U(e,t,n){return e==null?n():e.measurePhase(t,n)}function df(e,t,n){!Number.isFinite(n)||e==null||e.setCounter(t,n)}function ff(e){return e>=48&&e<=57}function pf(e){let t=[],n=0,r=0;for(;r<e.length;){for(;r<e.length&&!ff(e.charCodeAt(r));)r+=1;if(r>=e.length)break;r>n&&t.push(e.slice(n,r));let i=0;for(;r<e.length&&ff(e.charCodeAt(r));)i=i*10+(e.charCodeAt(r)-48),r+=1;t.push(i),n=r}return(n<e.length||t.length===0)&&t.push(e.slice(n)),t}function mf(e){let t=e.toLowerCase();return{lowerValue:t,tokens:pf(t)}}function hf(e,t){let n=Math.min(e.length,t.length);for(let r=0;r<n;r++){let n=e[r],i=t[r];if(n===i)continue;if(typeof n==`number`&&typeof i==`number`)return n<i?-1:1;let a=String(n),o=String(i);if(a!==o)return a<o?-1:1}return e.length===t.length?0:e.length<t.length?-1:1}function gf(e,t){if(e.tokens.length===1&&t.tokens.length===1&&typeof e.tokens[0]==`string`&&typeof t.tokens[0]==`string`)return e.lowerValue===t.lowerValue?0:e.lowerValue<t.lowerValue?-1:1;let n=hf(e.tokens,t.tokens);return n===0?e.lowerValue===t.lowerValue?0:e.lowerValue<t.lowerValue?-1:1:n}function _f(e,t,n){let r=gf(n(e),n(t));return r===0?e===t?0:e<t?-1:1:r}function vf(e,t){return _f(e,t,mf)}function yf(e,t){return t===e.segments.length-1?+!!e.isDirectory:1}function bf(e,t){let n=Math.min(e.segments.length,t.segments.length);for(let r=0;r<n;r++){let n=e.segments[r],i=t.segments[r];if(n===i)continue;let a=yf(e,r);return a===yf(t,r)?vf(n,i):a===1?-1:1}return e.segments.length===t.segments.length?e.isDirectory===t.isDirectory?0:e.isDirectory?-1:1:e.segments.length<t.segments.length?-1:1}function xf(e,t){return bf(e,t)}function Sf(e,t,n){let r=e=>{let t=n.get(e);if(t!=null)return t;let r=mf(e);return n.set(e,r),r},i=Math.min(e.segments.length,t.segments.length);for(let n=0;n<i;n++){let i=e.segments[n],a=t.segments[n];if(i===a)continue;let o=yf(e,n);return o===yf(t,n)?_f(i,a,r):o===1?-1:1}return e.segments.length===t.segments.length?e.isDirectory===t.isDirectory?0:e.isDirectory?-1:1:e.segments.length<t.segments.length?-1:1}function Cf(e,t){let n=e.sortKeyById[t];if(n!==void 0)return n;let r=e.valueById[t],i=mf(r);return e.sortKeyById[t]=i,i}function wf(e={}){return{flattenEmptyDirectories:e.flattenEmptyDirectories!==!1,sort:e.sort??`default`}}function Tf(e){let t=e.length>0&&e.charCodeAt(e.length-1)===47,n=t?e.length-1:e.length,r=[],i=0;for(let t=0;t<n;t++)e.charCodeAt(t)===47&&(r.push(e.slice(i,t)),i=t+1);return r.push(e.slice(i,n)),{hasTrailingSlash:t,segments:r}}function Ef(e){let{hasTrailingSlash:t,segments:n}=Tf(e);return{basename:n[n.length-1]??``,isDirectory:t,path:e,segments:n}}function Df(e){if(e.length===0)return{requiresDirectory:!1,segments:[]};let{hasTrailingSlash:t,segments:n}=Tf(e);return{requiresDirectory:t,segments:n}}function Of(){let e=new Map;return e.set(``,0),{idByValue:e,valueById:[``],sortKeyById:[mf(``)]}}function kf(e,t){let n=e.idByValue.get(t);if(n!==void 0)return n;let r=e.valueById.length;return e.idByValue.set(t,r),e.valueById.push(t),r}function Af(e,t){let n=e.valueById[t];if(n===void 0)throw Error(`Unknown segment ID: ${String(t)}`);return n}var jf=Symbol(`pathStorePreparedInputKind`);function Mf(e,t){return e[jf]=t,e}function Nf(e){return{basename:e.basename,depth:e.segments.length,isDirectory:e.isDirectory,path:e.path,segments:e.segments}}function Pf(e,t,n){return n==="default"?xf(e,t):n(Nf(e),Nf(t))}function Ff(){return{depthAndFlags:tf(0,3,1),nameId:0,parentId:0,subtreeNodeCount:1,visibleSubtreeCount:1}}function If(e,t){let n=Math.min(e.length,t.length);for(let r=0;r<n;r++)if(e[r]!==t[r])return r;return n}function Lf(e){return e.isDirectory?e.segments.length:e.segments.length-1}function Rf(e){return Array.isArray(e)&&e.every(e=>typeof e==`object`&&!!e&&typeof e.path==`string`&&Array.isArray(e.segments)&&typeof e.basename==`string`&&typeof e.isDirectory==`boolean`)}function zf(e){return Array.isArray(e)&&e.every(e=>typeof e==`string`)}function Bf(e,t={}){return Kf(e,t).map(e=>e.path)}function Vf(e,t={}){let n=Kf(e,t);return Mf({paths:n.map(e=>e.path),preparedPaths:n},`prepared`)}function Hf(e){let t=e.length,n=!1;for(let r=0;r<t;r+=1){let t=e[r];if(t.length>0&&t.charCodeAt(t.length-1)===47){n=!0;break}}return Mf({paths:e,presortedPaths:e,presortedPathsContainDirectories:n},`presorted`)}function Uf(e){let t=e,n=t.preparedPaths;if(t[jf]===`prepared`&&n!=null)return n;if(!Rf(n))throw Error(`preparedInput must come from PathStore.prepareInput()`);return n}function Wf(e){let t=e;return t[jf]===`presorted`&&t.presortedPaths!=null||zf(t.presortedPaths)?t.presortedPaths:null}function Gf(e){let t=e;return typeof t.presortedPathsContainDirectories==`boolean`?t.presortedPathsContainDirectories:null}function Kf(e,t={}){let n=wf(t),r=uf(t);df(r,`workload.inputFiles`,e.length);let i=U(r,`store.preparePathEntries.parse`,()=>e.map(e=>Ef(e)));return U(r,`store.preparePathEntries.sort`,()=>i.sort((e,t)=>Pf(e,t,n.sort))),i}var qf=class{directories=new Map;directoryStack=[0];presortedDirectoryNodeIds=[];initialExpandedPathSet;createdDirectoriesAllExpanded=!1;createdDirectoryCount=0;lastPreparedPath=null;nodes=[Ff()];options;instrumentation;segmentSortKeyCache=new Map;segmentTable=Of();hasDeferredDirectoryIndexes=!1;constructor(e={}){this.instrumentation=uf(e),this.options=wf(e);let t=e.initialExpandedPaths??null;if(t==null||t.length===0)this.initialExpandedPathSet=null;else{let e=new Set,n=t.length;for(let r=0;r<n;r+=1){let n=t[r],i=n.length;e.add(i>0&&n.charCodeAt(i-1)===47?n.slice(0,i-1):n)}this.initialExpandedPathSet=e,this.createdDirectoriesAllExpanded=!0}this.directories.set(0,zd())}appendPaths(e){return U(this.instrumentation,`store.builder.appendPaths.parse`,()=>this.appendPreparedPaths(e.map(e=>Ef(e))))}appendPreparedPaths(e,t=!0){return this.createdDirectoriesAllExpanded=!1,U(this.instrumentation,`store.builder.appendPreparedPaths`,()=>{for(let n of e)this.appendPreparedPath(n,t)}),this}appendPresortedPaths(e,t=null){return U(this.instrumentation,`store.builder.appendPresortedPaths`,()=>{if(t===!1){this.appendPresortedFilePaths(e);return}this.createdDirectoriesAllExpanded=!1;let n=null,r=0,i=this.nodes,a=this.segmentTable,o=a.idByValue,s=a.valueById,c=this.directoryStack,l=0,u=``,d=0;for(let t of e){if(n===t)throw Error(`Duplicate path: "${t}"`);let e=t.length>0&&t.charCodeAt(t.length-1)===47,a=e?t.length-1:t.length,f=0,p=0;if(n!=null){if(u.length>0&&t.length>u.length&&t.startsWith(u))f=d,p=u.length;else{let r=Math.min(a,n.length),i=!0;for(let e=0;e<r;e++){let r=t.charCodeAt(e);if(r!==n.charCodeAt(e)){i=!1;break}r===47&&(f++,p=e+1)}i&&e&&r===a&&n.length>a&&n.charCodeAt(a)===47&&(f++,p=a+1)}}l=f,r=f;let m=p,h=t.indexOf(`/`,m);for(;h>=0&&h<a;){let e=c[l];if(e===void 0)throw Error(`Directory stack underflow while building the path store`);r++;let n=t.slice(m,h),a=o.get(n);a===void 0&&(a=s.length,o.set(n,a),s.push(n));let u=i.length;i.push({depthAndFlags:tf(r,0,1),nameId:a,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),this.recordCreatedDirectoryPath(t.slice(0,h)),l++,c[l]=u,m=h+1,h=t.indexOf(`/`,m)}if(e){if(m<a){let e=c[l];if(e===void 0)throw Error(`Unable to resolve directory parent for "${t}"`);r++;let n=t.slice(m,a),u=o.get(n);u===void 0&&(u=s.length,o.set(n,u),s.push(n));let d=i.length;i.push({depthAndFlags:tf(r,0,1),nameId:u,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),l++,c[l]=d,m=a+1}let e=c[l];if(e===void 0)throw Error(`Unable to resolve directory node for "${t}"`);this.promoteDirectoryToExplicit(e,t)}else{let e=c[l];if(e===void 0)throw Error(`Unable to resolve file parent for "${t}"`);let n=t.slice(m),a=o.get(n);a===void 0&&(a=s.length,o.set(n,a),s.push(n)),i.push({depthAndFlags:tf(r+1,0),nameId:a,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1})}m!==u.length&&(u=t.substring(0,m),d=r),n=t}c.length=l+1,n!=null&&(this.lastPreparedPath=Ef(n)),this.hasDeferredDirectoryIndexes=!0}),this}appendPresortedFilePaths(e){let t=null,n=0,r=this.nodes,i=this.segmentTable,a=i.idByValue,o=i.valueById,s=this.directoryStack,c=0,l=``,u=0;for(let i of e){if(t===i)throw Error(`Duplicate path: "${i}"`);let e=i.length,d=0,f=0;if(t!=null){if(l.length>0&&i.length>l.length&&i.startsWith(l))d=u,f=l.length;else{let n=Math.min(e,t.length);for(let e=0;e<n;e++){let n=i.charCodeAt(e);if(n!==t.charCodeAt(e))break;n===47&&(d++,f=e+1)}}}c=d,n=d;let p=f,m=i.indexOf(`/`,p);for(;m>=0;){let e=s[c];if(e===void 0)throw Error(`Directory stack underflow while building the path store`);n++;let t=i.slice(p,m),l=a.get(t);l===void 0&&(l=o.length,a.set(t,l),o.push(t));let u=r.length;r.push({depthAndFlags:tf(n,0,1),nameId:l,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),this.recordCreatedDirectoryPath(i.slice(0,m)),this.presortedDirectoryNodeIds.push(u),c++,s[c]=u,p=m+1,m=i.indexOf(`/`,p)}let h=s[c];if(h===void 0)throw Error(`Unable to resolve file parent for "${i}"`);let g=i.slice(p),_=a.get(g);_===void 0&&(_=o.length,a.set(g,_),o.push(g)),r.push({depthAndFlags:tf(n+1,0),nameId:_,parentId:h,subtreeNodeCount:1,visibleSubtreeCount:1}),p!==l.length&&(l=i.substring(0,p),u=n),t=i}s.length=c+1,t!=null&&(this.lastPreparedPath=Ef(t)),this.hasDeferredDirectoryIndexes=!0}finish(e={}){let t=e.skipSubtreeCountPass===!0;return this.hasDeferredDirectoryIndexes?(U(this.instrumentation,`store.builder.buildDirectoryIndexes`,()=>this.buildPresortedFinish(t)),this.hasDeferredDirectoryIndexes=!1):t||U(this.instrumentation,`store.builder.computeSubtreeCounts`,()=>this.computeSubtreeCounts(0)),{directories:this.directories,nodes:this.nodes,options:this.options,rootId:0,segmentTable:this.segmentTable,presortedDirectoryNodeIds:this.presortedDirectoryNodeIds.length>0?this.presortedDirectoryNodeIds:null}}didMatchAllInitialExpandedPaths(){return this.createdDirectoriesAllExpanded&&this.initialExpandedPathSet!=null&&this.createdDirectoryCount===this.initialExpandedPathSet.size}appendPreparedPath(e,t){if(this.hasDeferredDirectoryIndexes&&=(this.buildDirectoryIndexes(),!1),this.lastPreparedPath!=null){if(e.path===this.lastPreparedPath.path)throw Error(`Duplicate path: "${e.path}"`);if(t&&(this.options.sort==="default"?Sf(this.lastPreparedPath,e,this.segmentSortKeyCache):Pf(this.lastPreparedPath,e,this.options.sort))>0)throw Error(`Builder input must be sorted before appendPaths(): "${e.path}"`)}let n=this.lastPreparedPath,r=Lf(e),i=n==null?0:Lf(n),a=n==null?0:If(n.segments,e.segments),o=Math.min(a,r,i);this.directoryStack.length=o+1;for(let n=o;n<r;n++){let r=this.directoryStack[this.directoryStack.length-1];if(r===void 0)throw Error(`Directory stack underflow while building the path store`);let i=t?this.getOrCreateDirectoryChild(r,e.segments[n]):this.createDirectoryChild(r,e.segments[n]);this.directoryStack.push(i)}if(e.isDirectory){let t=this.directoryStack[this.directoryStack.length-1];if(t===void 0)throw Error(`Unable to resolve directory node for "${e.path}"`);this.promoteDirectoryToExplicit(t,e.path),this.lastPreparedPath=e;return}let s=this.directoryStack[this.directoryStack.length-1];if(s===void 0)throw Error(`Unable to resolve file parent for "${e.path}"`);t?this.createFileChild(s,e.basename,e.path):this.createFileChildUnchecked(s,e.basename),this.lastPreparedPath=e}recordCreatedDirectoryPath(e){!this.createdDirectoriesAllExpanded||this.initialExpandedPathSet==null||(this.createdDirectoryCount+=1,this.initialExpandedPathSet.has(e)||(this.createdDirectoriesAllExpanded=!1))}createFileChild(e,t,n){let r=kf(this.segmentTable,t),i=this.getDirectoryIndex(e),a=i.childIdByNameId;if(a!=null&&a.get(r)!==void 0)throw Error(`Path collides with an existing entry: "${n}"`);let o=this.nodes[e];if(o===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let s=this.nodes.length;return this.nodes.push({depthAndFlags:tf(nf(o)+1,0),nameId:r,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),a?.set(r,s),Ud(i,s),s}createFileChildUnchecked(e,t){let n=kf(this.segmentTable,t),r=this.getDirectoryIndex(e),i=this.nodes[e];if(i===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let a=this.nodes.length;return this.nodes.push({depthAndFlags:tf(nf(i)+1,0),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Ud(r,a),a}getOrCreateDirectoryChild(e,t){let n=kf(this.segmentTable,t),r=this.getDirectoryIndex(e);if(r.childIdByNameId!=null){let e=r.childIdByNameId.get(n);if(e!==void 0){let n=this.nodes[e];if(n!=null&&!V(n))throw Error(`Path collides with an existing file while creating directory "${t}"`);return e}}let i=this.nodes[e];if(i===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let a=this.nodes.length;return this.nodes.push({depthAndFlags:tf(nf(i)+1,0,1),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Ud(r,a),this.directories.set(a,zd()),a}createDirectoryChild(e,t){let n=kf(this.segmentTable,t),r=this.getDirectoryIndex(e),i=this.nodes[e];if(i===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let a=this.nodes.length;return this.nodes.push({depthAndFlags:tf(nf(i)+1,0,1),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Ud(r,a),this.directories.set(a,zd()),a}promoteDirectoryToExplicit(e,t){let n=this.nodes[e];if(n===void 0)throw Error(`Unknown directory node ID: ${String(e)}`);if(!V(n))throw Error(`Path is not a directory: "${t}"`);if(H(n,1))throw Error(`Duplicate path: "${t}"`);of(n,1)}getDirectoryIndex(e){let t=this.directories.get(e);if(t!==void 0)return t;throw Error(`Unknown directory child index for node ${String(e)}`)}buildPresortedFinish(e){let t=this.nodes,n=this.directories;n.set(0,Bd());let r=-1,i=null;for(let e=1;e<t.length;e++){let a=t[e];if(a==null)continue;if(V(a)){let t=Bd();n.set(e,t),r=e,i=t}let o;a.parentId===r?o=i:(o=n.get(a.parentId),r=a.parentId,i=o??null),o?.childIds.push(e)}if(!e)for(let e=t.length-1;e>=1;e--){let n=t[e];if(n==null)continue;let r=t[n.parentId];r!=null&&(r.subtreeNodeCount+=n.subtreeNodeCount,r.visibleSubtreeCount+=n.visibleSubtreeCount)}}buildDirectoryIndexes(){let e=this.nodes;for(let t=1;t<e.length;t++){let n=e[t];if(n==null)continue;V(n)&&this.directories.set(t,zd());let r=this.directories.get(n.parentId);r!=null&&(r.childIdByNameId!=null&&r.childIdByNameId.set(n.nameId,t),Ud(r,t))}}computeSubtreeCounts(e){let t=this.nodes[e];if(t===void 0)throw Error(`Unknown node ID: ${String(e)}`);if(!V(t))return t.subtreeNodeCount=1,t.visibleSubtreeCount=1,1;let n=this.getDirectoryIndex(e),r=1;for(let e of n.childIds)r+=this.computeSubtreeCounts(e);return Gd(this.nodes,n),t.subtreeNodeCount=r,t.visibleSubtreeCount=r,r}};function Jf(e,t=`closed`,n=null){let r=Xf(t);return{activeNodeCount:e.nodes.length-1,collapsedDirectoryIds:new Set,collapseNewDirectoriesByDefault:!1,defaultExpansion:r,directoriesOpenByDefault:r===`open`,hasCollapsedDirectoryOverrides:!1,directoryLoadInfoById:new Map,expandedDirectoryIds:new Set,instrumentation:n,listeners:new Map,pathCacheByNodeId:new Map([[e.rootId,{path:``,version:0}]]),pathCacheVersion:0,snapshot:e,transactionStack:[]}}function Yf(){return{affectedAncestorIds:new Set,affectedNodeIds:new Set,events:[]}}function Xf(e){if(typeof e!=`number`)return e;if(!Number.isInteger(e)||e<0)throw Error(`initialExpansion must be "open", "closed", or a non-negative integer depth. Received: ${String(e)}`);return e}function Zf(e,t){return H(t,2)||e.defaultExpansion===`open`?!0:e.defaultExpansion!==`closed`&&nf(t)<=e.defaultExpansion}function Qf(e,t,n=e.snapshot.nodes[t]){return n==null||!V(n)?!1:e.directoriesOpenByDefault&&!e.hasCollapsedDirectoryOverrides?!0:e.collapsedDirectoryIds.has(t)?!1:e.expandedDirectoryIds.has(t)?!0:Zf(e,n)}function $f(e,t,n,r=e.snapshot.nodes[t]){if(r==null||!V(r))return;let i=Zf(e,r);if(n){if(i){e.collapsedDirectoryIds.delete(t),e.hasCollapsedDirectoryOverrides=e.collapsedDirectoryIds.size>0;return}e.expandedDirectoryIds.add(t);return}if(i){e.collapsedDirectoryIds.add(t),e.hasCollapsedDirectoryOverrides=!0;return}e.expandedDirectoryIds.delete(t)}function ep(e,t){let n=e.directoryLoadInfoById.get(t);if(n!=null)return n;let r={activeAttemptId:null,errorMessage:null,nextAttemptId:1,state:`loaded`};return e.directoryLoadInfoById.set(t,r),r}function tp(e,t){return e.directoryLoadInfoById.get(t)?.state??`loaded`}function np(e,t){let n=ep(e,t);if(n.state===`loading`&&n.activeAttemptId!=null)return{attemptId:n.activeAttemptId,nodeId:t,reused:!0};let r=n.nextAttemptId;return n.activeAttemptId=r,n.errorMessage=null,n.nextAttemptId+=1,n.state=`loading`,{attemptId:r,nodeId:t,reused:!1}}function rp(e,t){let n=ep(e,t);n.activeAttemptId=null,n.errorMessage=null,n.state=`unloaded`}function ip(e,t,n){let r=e.directoryLoadInfoById.get(t);return r==null||r.activeAttemptId!==n?!1:(r.activeAttemptId=null,r.errorMessage=null,r.state=`loaded`,!0)}function ap(e,t,n){return e.directoryLoadInfoById.get(t)?.activeAttemptId===n}function op(e,t,n,r){let i=e.directoryLoadInfoById.get(t);return i==null||i.activeAttemptId!==n?!1:(i.activeAttemptId=null,i.errorMessage=r??null,i.state=`error`,!0)}function sp(e,t){e.directoryLoadInfoById.delete(t)}function cp(e,t,n){let r=n,i=e.listeners.get(t);return i==null?e.listeners.set(t,new Set([r])):i.add(r),()=>{let n=e.listeners.get(t);n!=null&&(n.delete(r),n.size===0&&e.listeners.delete(t))}}function lp(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,operation:`add`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function up(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,operation:`remove`,path:e.path,projectionChanged:e.projectionChanged,recursive:e.recursive,visibleCountDelta:null}}function dp(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,from:e.from,operation:`move`,projectionChanged:e.projectionChanged,to:e.to,visibleCountDelta:null}}function fp(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`expand`,path:e.path,projectionChanged:!0,visibleCountDelta:null}}function pp(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`collapse`,path:e.path,projectionChanged:!0,visibleCountDelta:null}}function mp(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`mark-directory-unloaded`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function hp(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:!1,operation:`begin-child-load`,path:e.path,projectionChanged:e.projectionChanged,reused:e.reused,visibleCountDelta:null}}function gp(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:e.childEvents.some(e=>e.canonicalChanged),childEvents:e.childEvents,operation:`apply-child-patch`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function _p(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:!1,operation:`complete-child-load`,path:e.path,projectionChanged:e.projectionChanged,stale:e.stale,visibleCountDelta:null}}function vp(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:!1,errorMessage:e.errorMessage,operation:`fail-child-load`,path:e.path,projectionChanged:e.projectionChanged,stale:e.stale,visibleCountDelta:null}}function yp(e){return{activeNodeCountAfter:e.activeNodeCountAfter,activeNodeCountBefore:e.activeNodeCountBefore,affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],cachedPathEntryCountAfter:e.cachedPathEntryCountAfter,cachedPathEntryCountBefore:e.cachedPathEntryCountBefore,canonicalChanged:!1,idsPreserved:e.idsPreserved,loadInfoEntryCountAfter:e.loadInfoEntryCountAfter,loadInfoEntryCountBefore:e.loadInfoEntryCountBefore,mode:e.mode,operation:`cleanup`,projectionChanged:e.projectionChanged,reclaimedCachedPathEntryCount:e.reclaimedCachedPathEntryCount,reclaimedLoadInfoEntryCount:e.reclaimedLoadInfoEntryCount,reclaimedNodeSlotCount:e.reclaimedNodeSlotCount,reclaimedSegmentCount:e.reclaimedSegmentCount,segmentCountAfter:e.segmentCountAfter,segmentCountBefore:e.segmentCountBefore,totalNodeSlotCountAfter:e.totalNodeSlotCountAfter,totalNodeSlotCountBefore:e.totalNodeSlotCountBefore,visibleCountDelta:null}}function bp(e,t,n){return{...n,visibleCountDelta:jp(e)-t}}function xp(e,t){let n=jp(e),r=Yf();e.transactionStack.push(r);try{t()}catch(t){throw wp(e,r,!1),t}wp(e,r,!0,jp(e)-n)}function Sp(e,t){let n=e.instrumentation;if(n==null){Cp(e,t);return}U(n,`store.events.record`,()=>Cp(e,t))}function Cp(e,t){let n=e.transactionStack[e.transactionStack.length-1]??null;if(n==null){kp(e,t);return}n.events.push(t),Op(n,t)}function wp(e,t,n,r=null){if(e.transactionStack.pop()!==t)throw Error(`Transaction stack underflow`);if(!n)return;let i=e.transactionStack[e.transactionStack.length-1]??null;if(i!=null){let n=e.instrumentation;n==null?Dp(i,t):U(n,`store.events.batch.merge`,()=>Dp(i,t));return}let a=Tp(t,r),o=e.instrumentation;if(o==null){kp(e,a);return}U(o,`store.events.batch.commit`,()=>kp(e,a))}function Tp(e,t){return{affectedAncestorIds:[...e.affectedAncestorIds],affectedNodeIds:[...e.affectedNodeIds],canonicalChanged:e.events.some(e=>e.canonicalChanged),events:[...e.events],operation:`batch`,projectionChanged:e.events.some(e=>e.projectionChanged),visibleCountDelta:t}}function Ep(e,t){for(let n of t.affectedAncestorIds)e.affectedAncestorIds.add(n);for(let n of t.affectedNodeIds)e.affectedNodeIds.add(n)}function Dp(e,t){for(let n of t.events)e.events.push(n);Ep(e,t)}function Op(e,t){for(let n of t.affectedNodeIds)e.affectedNodeIds.add(n);for(let n of t.affectedAncestorIds)e.affectedAncestorIds.add(n)}function kp(e,t){let n=e.instrumentation;if(n==null){Ap(e,t);return}U(n,`store.events.emit`,()=>Ap(e,t))}function Ap(e,t){e.listeners.get(t.operation)?.forEach(e=>e(t)),e.listeners.get(`*`)?.forEach(e=>e(t))}function jp(e){return e.snapshot.nodes[e.snapshot.rootId]?.visibleSubtreeCount??0}function Mp(e,t){if(e.snapshot.options.flattenEmptyDirectories!==!0)return null;let n=e.snapshot.nodes[t];if(n==null||!V(n)||H(n,2))return null;let r=e.snapshot.directories.get(t);if(r==null||r.childIds.length!==1)return null;let i=r.childIds[0];if(i==null)return null;let a=e.snapshot.nodes[i];return a==null||!V(a)?null:i}function Np(e,t){let n=t;for(;;){let t=Mp(e,n);if(t==null)return n;n=t}}function Pp(e,t){let n=[t],r=t;for(;;){let t=Mp(e,r);if(t==null)return n;n.push(t),r=t}}function Fp(e,t){let n=t==null?e.snapshot.rootId:Wp(e,t);return n==null?[]:Kp(e,n)}function Ip(e,t){let n=Ef(t),r=n.isDirectory?n.segments:n.segments.slice(0,-1),i=sm(e,om(e,r)),{createdNodeIds:a,directoryId:o}=qp(e,r),s=new Set(a),c=o;if(n.isDirectory){let n=K(e,o);if(H(n,1))throw Error(`Path already exists: "${t}"`);of(n,1),e.pathCacheByNodeId.set(o,{path:t,version:e.pathCacheVersion}),s.add(o)}else c=Yp(e,o,n.basename),s.add(c);Vp(e,o);let l=sm(e,o);return lp({affectedAncestorIds:Up(e,c),affectedNodeIds:[...s],path:t,projectionChanged:cm(i,l)})}function Lp(e,t,n){let r=Wp(e,t);if(r==null)throw Error(`Path does not exist: "${t}"`);let i=K(e,r);if(H(i,2))throw Error(`The root node cannot be removed`);if(V(i)&&G(e,r).childIds.length>0&&n.recursive!==!0)throw Error(`Cannot remove a non-empty directory without recursive: "${t}"`);let a=i.parentId,o=sm(e,a),s=im(e,r);Qp(e,a,r,i.nameId),am(e,a),Vp(e,a);let c=sm(e,a);return up({affectedAncestorIds:Up(e,a),affectedNodeIds:s,path:t,projectionChanged:cm(o,c),recursive:n.recursive===!0})}function Rp(e,t,n,r){let i=Wp(e,t);if(i==null)throw Error(`Source path does not exist: "${t}"`);let a=K(e,i);if(H(a,2))throw Error(`The root node cannot be moved`);let o=r.collision??`error`,s=nm(e,i,n),c=sm(e,a.parentId),l=sm(e,s.parentId),u=Af(e.snapshot.segmentTable,a.nameId),d=kf(e.snapshot.segmentTable,s.basename);if(s.parentId===a.parentId&&u===s.basename)return null;if(V(a)&&fm(e,i,s.parentId))throw Error(`Cannot move a directory into one of its descendants`);let f=Vd(e.snapshot.nodes,G(e,s.parentId)).get(d),p=s.existingNodeId??f??null;if(p!=null&&p!==i&&rm(e,p,o,rf(a))===`skip`)return null;let m=a.parentId;Qp(e,m,i,a.nameId),a.parentId=s.parentId,a.nameId=d,e.pathCacheByNodeId.delete(i),dm(e,i),Zp(e,s.parentId,i),am(e,m),e.pathCacheVersion++,Vp(e,m),s.parentId!==m&&Vp(e,s.parentId);let h=sm(e,m),g=sm(e,s.parentId);return dp({affectedAncestorIds:[...new Set([...Up(e,m),...Up(e,s.parentId)])],affectedNodeIds:[i],from:t,projectionChanged:lm([c,l],[h,g]),to:W(e,i)})}function zp(e,t){let n=e.pathCacheByNodeId.get(t);return n!=null&&n.version===e.pathCacheVersion?n.path:null}function Bp(e,t,n){return e.pathCacheByNodeId.set(t,{path:n,version:e.pathCacheVersion}),n}function W(e,t){let n=K(e,t),r=zp(e,t);if(r!=null)return r;if(H(n,2))return Bp(e,t,``);let i=W(e,n.parentId),a=Af(e.snapshot.segmentTable,n.nameId),o=i.length===0?a:`${i}${a}`;return Bp(e,t,V(n)?`${o}/`:o)}function Vp(e,t){let n=e.instrumentation;if(n==null){mm(e,t);return}U(n,`store.recomputeCountsUpwardFrom`,()=>mm(e,t))}function Hp(e,t){let n=[[t,0]],{nodes:r,directories:i}=e.snapshot;for(;n.length>0;){let t=n[n.length-1],a=t[0],o=r[a];if(o==null||!V(o)){pm(e,a,o,!0),n.pop();continue}let s=i.get(a);if(s==null||t[1]>=s.childIds.length){pm(e,a,o,!0),n.pop();continue}let c=s.childIds[t[1]++];n.push([c,0])}}function Up(e,t){let n=[],r=t;for(;r!=null;){let t=K(e,r);if(n.push(r),r===e.snapshot.rootId)break;r=t.parentId}return n}function Wp(e,t){if(t.length===0)return e.snapshot.rootId;let n=Df(t);return Gp(e,n.segments,n.requiresDirectory)}function Gp(e,t,n){let r=e.snapshot.rootId;for(let n of t){let t=e.snapshot.segmentTable.idByValue.get(n);if(t===void 0)return null;let i=G(e,r),a=Vd(e.snapshot.nodes,i).get(t);if(a===void 0)return null;r=a}let i=K(e,r);return n&&!V(i)?null:r}function G(e,t){let n=e.snapshot.directories.get(t);if(n===void 0)throw Error(`Unknown directory child index for node ${String(t)}`);return n}function K(e,t){let n=e.snapshot.nodes[t];if(n===void 0||H(n,4))throw Error(`Unknown node ID: ${String(t)}`);return n}function Kp(e,t){let n=e.snapshot.nodes[t];if(n===void 0||H(n,4))return[];if(!V(n))return[W(e,t)];if(G(e,t).childIds.length===0)return H(n,1)&&!H(n,2)?[W(e,t)]:[];let r=[],i=[{childIndex:0,nodeId:t}];for(;i.length>0;){let t=i[i.length-1];if(t==null)break;let n=e.snapshot.nodes[t.nodeId];if(n===void 0||H(n,4)){i.pop();continue}if(!V(n)){r.push(W(e,t.nodeId)),i.pop();continue}let a=G(e,t.nodeId);if(a.childIds.length===0){H(n,1)&&!H(n,2)&&r.push(W(e,t.nodeId)),i.pop();continue}let o=a.childIds[t.childIndex];if(o==null){i.pop();continue}t.childIndex++,i.push({childIndex:0,nodeId:o})}return r}function qp(e,t){let n=[],r=e.snapshot.rootId;for(let i of t){let t=kf(e.snapshot.segmentTable,i),a=G(e,r),o=Vd(e.snapshot.nodes,a).get(t);if(o!==void 0){if(!V(K(e,o)))throw Error(`Cannot create a directory that collides with an existing file: "${i}"`);r=o;continue}r=Jp(e,r,t),n.push(r)}return{createdNodeIds:n,directoryId:r}}function Jp(e,t,n){let r=K(e,t),i=e.snapshot.nodes.length;return e.snapshot.nodes.push({depthAndFlags:tf(nf(r)+1,0,1),nameId:n,parentId:t,subtreeNodeCount:1,visibleSubtreeCount:1}),e.snapshot.directories.set(i,zd()),Zp(e,t,i),e.collapseNewDirectoriesByDefault&&(e.collapsedDirectoryIds.add(i),e.hasCollapsedDirectoryOverrides=!0),e.activeNodeCount++,i}function Yp(e,t,n){let r=kf(e.snapshot.segmentTable,n),i=G(e,t);if(Vd(e.snapshot.nodes,i).has(r))throw Error(`Path already exists: "${gm(e,t,n)}"`);let a=K(e,t),o=e.snapshot.nodes.length;return e.snapshot.nodes.push({depthAndFlags:tf(nf(a)+1,0),nameId:r,parentId:t,subtreeNodeCount:1,visibleSubtreeCount:1}),Zp(e,t,o),e.activeNodeCount++,o}function Xp(e,t,n){let r=0,i=t.childIds.length;for(;r<i;){let a=r+i>>>1,o=t.childIds[a];if(o==null){i=a;continue}$p(e,n,o)<0?i=a:r=a+1}return r}function Zp(e,t,n){let r=G(e,t),i=K(e,n);Vd(e.snapshot.nodes,r).set(i.nameId,n),Kd(r,n,i.subtreeNodeCount,i.visibleSubtreeCount);let a=Xp(e,r,n);r.childIds.splice(a,0,n),Wd(r,a),Yd(e.snapshot.nodes,r)}function Qp(e,t,n,r){let i=G(e,t),a=Hd(i),o=a.get(n)??-1;Vd(e.snapshot.nodes,i).delete(r),a.delete(n);let s=e.snapshot.nodes[n];s!=null&&Kd(i,n,-s.subtreeNodeCount,-s.visibleSubtreeCount),o>=0&&(i.childIds.splice(o,1),Wd(i,o),Yd(e.snapshot.nodes,i))}function $p(e,t,n){let r=e.snapshot.options.sort;return r==="default"?em(e,t,n):r(tm(e,t),tm(e,n))}function em(e,t,n){let r=K(e,t),i=K(e,n),a=V(r);if(a!==V(i))return a?-1:1;let o=gf(Cf(e.snapshot.segmentTable,r.nameId),Cf(e.snapshot.segmentTable,i.nameId));if(o!==0)return o;let s=Af(e.snapshot.segmentTable,r.nameId),c=Af(e.snapshot.segmentTable,i.nameId);return s===c?t<n?-1:1:s<c?-1:1}function tm(e,t){let n=K(e,t),r=W(e,t),i=V(n),a=i?r.slice(0,-1):r;return{basename:Af(e.snapshot.segmentTable,n.nameId),depth:nf(n),isDirectory:i,path:r,segments:a.length===0?[]:a.split(`/`)}}function nm(e,t,n){let r=K(e,t),i=Wp(e,n);if(i!=null){let t=K(e,i);if(V(t))return{basename:Af(e.snapshot.segmentTable,r.nameId),existingNodeId:null,parentId:i};let a=Df(n).segments;return{basename:a[a.length-1]??``,existingNodeId:i,parentId:t.parentId}}let a=Df(n),o=a.segments[a.segments.length-1]??``,s=a.segments.slice(0,-1),c=s.length===0?e.snapshot.rootId:Gp(e,s,!0);if(c==null)throw Error(`Destination parent does not exist: "${n}"`);return{basename:o,existingNodeId:null,parentId:c}}function rm(e,t,n,r){if(n===`skip`)return`skip`;if(n===`error`)throw Error(`Destination already exists: "${W(e,t)}"`);let i=K(e,t);if(rf(i)!==r)throw Error(`replace collision requires the same source and destination kinds`);if(V(i)&&G(e,t).childIds.length>0)throw Error(`replace collision does not support non-empty directories`);let a=i.parentId,o=i.nameId;return im(e,t),Qp(e,a,t,o),am(e,a),Vp(e,a),`handled`}function im(e,t){let n=[],r=[{nodeId:t,visitedChildren:!1}];for(;r.length>0;){let t=r.pop();if(t==null)break;let i=K(e,t.nodeId);if(t.visitedChildren||!V(i)){V(i)&&e.snapshot.directories.delete(t.nodeId),of(i,4),e.pathCacheByNodeId.delete(t.nodeId),e.collapsedDirectoryIds.delete(t.nodeId)&&(e.hasCollapsedDirectoryOverrides=e.collapsedDirectoryIds.size>0),e.expandedDirectoryIds.delete(t.nodeId),sp(e,t.nodeId),e.activeNodeCount--,n.push(t.nodeId);continue}r.push({nodeId:t.nodeId,visitedChildren:!0});let a=G(e,t.nodeId);for(let e=a.childIds.length-1;e>=0;e--){let t=a.childIds[e];t!=null&&r.push({nodeId:t,visitedChildren:!1})}}return n}function am(e,t){let n=t;for(;n!=null;){let t=K(e,n);if(!V(t)||H(t,2)||G(e,n).childIds.length>0)return;of(t,1),n=t.parentId===n?null:t.parentId}}function om(e,t){let n=e.snapshot.rootId;for(let r of t){let t=e.snapshot.segmentTable.idByValue.get(r);if(t==null)break;let i=Vd(e.snapshot.nodes,G(e,n)).get(t);if(i==null||!V(K(e,i)))break;n=i}return n}function sm(e,t){let n=um(e,t);if(n==null)return null;let r=Np(e,n),i=K(e,r),a=n===r?null:Pp(e,n).map(t=>W(e,t));return JSON.stringify({flattenedSegmentPaths:a,hasChildren:G(e,r).childIds.length>0,path:W(e,r),terminalKind:rf(i)})}function cm(e,t){return lm([e],[t])}function lm(e,t){for(let n=0;n<e.length;n+=1){let r=e[n],i=t[n];if(r==null||i==null||r!==i)return!0}return!1}function um(e,t){let n=t;for(;n!=null;){let t=K(e,n);if(!V(t)||H(t,2))return null;if(!Qf(e,n,t))return n;n=t.parentId}return null}function dm(e,t){let n=K(e,t);if(sf(n,(t===e.snapshot.rootId?-1:nf(K(e,n.parentId)))+1),!V(n))return;let r=G(e,t);for(let t of r.childIds)dm(e,t)}function fm(e,t,n){let r=n;for(;r!=null;){if(r===t)return!0;let n=K(e,r);if(r===e.snapshot.rootId)return!1;r=n.parentId}return!1}function pm(e,t,n=K(e,t),r=!1){let i=e.instrumentation;if(i==null){hm(e,t,n,r);return}U(i,`store.recomputeNodeCounts`,()=>hm(e,t,n,r))}function mm(e,t){let n=t;for(;n!=null;){let t=K(e,n),r=t.subtreeNodeCount,i=t.visibleSubtreeCount;if(pm(e,n,t),n===e.snapshot.rootId)return;let a=t.subtreeNodeCount-r,o=t.visibleSubtreeCount-i,s=t.parentId;(a!==0||o!==0)&&Kd(G(e,s),n,a,o),n=s}}function hm(e,t,n,r){if(!V(n)){n.subtreeNodeCount=1,n.visibleSubtreeCount=1;return}let i=G(e,t);if(r){let t=e.instrumentation;t==null?Gd(e.snapshot.nodes,i):U(t,`store.recomputeNodeCounts.rebuildChildAggregates`,()=>Gd(e.snapshot.nodes,i))}let a=1+i.totalChildSubtreeNodeCount,o=i.totalChildVisibleSubtreeCount;if(n.subtreeNodeCount=a,H(n,2)){n.visibleSubtreeCount=o;return}n.visibleSubtreeCount=Mp(e,t)==null?Qf(e,t,n)?1+o:1:o}function gm(e,t,n){let r=W(e,t);return r.length===0?n:`${r}${n}`}function _m(e){return e!=null&&!H(e,4)}function vm(e,t){let n=e.snapshot.nodes[t];return!_m(n)||!V(n)||H(n,2)?null:n}function ym(e){let t=0;for(let[n,r]of e.pathCacheByNodeId)r.version===e.pathCacheVersion&&_m(e.snapshot.nodes[n])&&(t+=1);return t}function bm(e){return Math.max(0,e.valueById.length-1)}function xm(e){return{activeNodeCount:e.activeNodeCount,cachedPathEntryCount:ym(e),loadInfoEntryCount:e.directoryLoadInfoById.size,segmentCount:bm(e.snapshot.segmentTable),totalNodeSlotCount:Math.max(0,e.snapshot.nodes.length-1)}}function Sm(e,t,n,r){return{activeNodeCountAfter:r.activeNodeCount,activeNodeCountBefore:n.activeNodeCount,cachedPathEntryCountAfter:r.cachedPathEntryCount,cachedPathEntryCountBefore:n.cachedPathEntryCount,idsPreserved:t,loadInfoEntryCountAfter:r.loadInfoEntryCount,loadInfoEntryCountBefore:n.loadInfoEntryCount,mode:e,reclaimedCachedPathEntryCount:n.cachedPathEntryCount-r.cachedPathEntryCount,reclaimedLoadInfoEntryCount:n.loadInfoEntryCount-r.loadInfoEntryCount,reclaimedNodeSlotCount:n.totalNodeSlotCount-r.totalNodeSlotCount,reclaimedSegmentCount:n.segmentCount-r.segmentCount,segmentCountAfter:r.segmentCount,segmentCountBefore:n.segmentCount,totalNodeSlotCountAfter:r.totalNodeSlotCount,totalNodeSlotCountBefore:n.totalNodeSlotCount}}function Cm(e){let t=[],n=[];for(let n of e.collapsedDirectoryIds)vm(e,n)!=null&&t.push(W(e,n));for(let t of e.expandedDirectoryIds)vm(e,t)!=null&&n.push(W(e,t));return{collapsedPaths:t,expandedPaths:n}}function wm(e){let t=[];for(let[n,r]of e.directoryLoadInfoById)vm(e,n)!=null&&tp(e,n)!==`loaded`&&t.push({info:{activeAttemptId:null,errorMessage:r.errorMessage,nextAttemptId:r.nextAttemptId,state:r.state},path:W(e,n)});return t}function Tm(e,t){e.collapsedDirectoryIds.clear(),e.hasCollapsedDirectoryOverrides=!1,e.expandedDirectoryIds.clear();for(let n of t.expandedPaths){let t=Wp(e,n);t!=null&&$f(e,t,!0,K(e,t))}for(let n of t.collapsedPaths){let t=Wp(e,n);t!=null&&$f(e,t,!1,K(e,t))}}function Em(e,t){e.directoryLoadInfoById.clear();for(let n of t){let t=Wp(e,n.path);t!=null&&vm(e,t)!=null&&e.directoryLoadInfoById.set(t,{activeAttemptId:null,errorMessage:n.info.errorMessage,nextAttemptId:n.info.nextAttemptId,state:n.info.state})}}function Dm(e){e.pathCacheVersion+=1,e.pathCacheByNodeId.clear(),e.pathCacheByNodeId.set(e.snapshot.rootId,{path:``,version:e.pathCacheVersion})}function Om(e){let t=e.snapshot.segmentTable,n=Of();for(let r of e.snapshot.nodes)if(_m(r)){if(H(r,2)){r.nameId=0;continue}r.nameId=kf(n,Af(t,r.nameId))}e.snapshot.segmentTable=n}function km(e){for(let[t,n]of e.snapshot.directories){let r=e.snapshot.nodes[t];if(!_m(r)||!V(r)){e.snapshot.directories.delete(t);continue}let i=n.childIds.filter(n=>{let r=e.snapshot.nodes[n];return _m(r)&&r.parentId===t});n.childIds=i,n.childIdByNameId=new Map(i.map(t=>[K(e,t).nameId,t])),n.childPositionById=new Map(i.map((e,t)=>[e,t])),Gd(e.snapshot.nodes,n)}}function Am(e){let t=e.snapshot.nodes.length-1;for(;t>e.snapshot.rootId;){let n=e.snapshot.nodes[t];if(_m(n))break;--t}e.snapshot.nodes.length=t+1}function jm(e){let t=Cm(e),n=wm(e);U(e.instrumentation,`store.cleanup.stable.clearPathCaches`,()=>Dm(e)),U(e.instrumentation,`store.cleanup.stable.rebuildSegmentTable`,()=>Om(e)),U(e.instrumentation,`store.cleanup.stable.rebuildDirectoryIndexes`,()=>km(e)),U(e.instrumentation,`store.cleanup.stable.trimTrailingRemovedNodeSlots`,()=>Am(e)),U(e.instrumentation,`store.cleanup.stable.restoreExpansionOverrides`,()=>Tm(e,t)),U(e.instrumentation,`store.cleanup.stable.restoreDirectoryLoadInfos`,()=>Em(e,n)),U(e.instrumentation,`store.cleanup.stable.recomputeCounts`,()=>Hp(e,e.snapshot.rootId))}function Mm(e){let t=Cm(e),n=wm(e),r=U(e.instrumentation,`store.cleanup.aggressive.listPaths`,()=>Fp(e)),i=lf({...e.snapshot.options},e.instrumentation),a=U(e.instrumentation,`store.cleanup.aggressive.rebuildSnapshot`,()=>{let e=new qf(i);return e.appendPaths(r),e.finish()});e.snapshot=a,e.activeNodeCount=a.nodes.length-1,e.pathCacheByNodeId=new Map([[a.rootId,{path:``,version:0}]]),e.pathCacheVersion=0,U(e.instrumentation,`store.cleanup.aggressive.restoreExpansionOverrides`,()=>Tm(e,t)),U(e.instrumentation,`store.cleanup.aggressive.restoreDirectoryLoadInfos`,()=>Em(e,n)),U(e.instrumentation,`store.cleanup.aggressive.recomputeCounts`,()=>Hp(e,e.snapshot.rootId))}function Nm(e){for(let t of e.directoryLoadInfoById.values())if(t.state===`loading`&&t.activeAttemptId!=null)return!0;return!1}function Pm(e,t){let n=xm(e);t===`stable`?U(e.instrumentation,`store.cleanup.stable`,()=>jm(e)):U(e.instrumentation,`store.cleanup.aggressive`,()=>Mm(e));let r=xm(e);return Sm(t,t===`stable`,n,r)}var Fm=64;function Im(e,t){let n=t+2;if(n<=e.length)return e;let r=e.length;for(;r<n;)r*=2;let i=new Int32Array(r);return i.fill(-1),i.set(e),i}function q(e){return K(e,e.snapshot.rootId).visibleSubtreeCount}function Lm(e,t,n,r){let i=K(e,t.terminalNodeId),a=Math.max(1,i.visibleSubtreeCount);return Math.min(r-1,n+a-1)}function Rm(e,t,n,r){return{ancestorPaths:r,index:t.index,posInSet:t.posInSet,row:rh(e,t.cursor),setSize:t.setSize,subtreeEndIndex:Lm(e,t.cursor,t.index,n)}}function zm(e,t,n,r,i,a){let o=G(e,t),{childIndex:s,childVisibleIndex:c,localVisibleIndex:l}=qd(e.snapshot.nodes,o,n),u=o.childIds[s];if(u==null)throw Error(`Visible index ${String(n)} is out of range`);return Bm(e,u,l,r+c,i+1,s,o.childIds.length,a)}function Bm(e,t,n,r,i,a,o,s){if(!V(K(e,t))){if(n===0)return{ancestors:s,cursor:{headNodeId:t,terminalNodeId:t,visibleDepth:i},index:r,posInSet:a,setSize:o};throw Error(`Visible index ${String(n)} is out of range for file`)}let c=Zm(e,t,i);if(n===0)return{ancestors:s,cursor:c,index:r,posInSet:a,setSize:o};let l=K(e,c.terminalNodeId);if(!V(l)||!Qf(e,c.terminalNodeId,l))throw Error(`Visible index ${String(n)} is out of range for collapsed directory`);return zm(e,c.terminalNodeId,n-1,r+1,c.visibleDepth,[...s,{cursor:c,index:r,posInSet:a,setSize:o}])}function Vm(e,t){let n=q(e);if(t<0||t>=n)return null;let r=zm(e,e.snapshot.rootId,t,0,-1,[]),i=r.ancestors.map(t=>W(e,t.cursor.terminalNodeId)),a=null;return{ancestorPaths:i,get ancestorRows(){if(a!=null)return a;let t=[],i=[];for(let a of r.ancestors){let r=Rm(e,a,n,[...i]);t.push(r),i.push(r.row.path)}return a=t,a},index:r.index,posInSet:r.posInSet,row:rh(e,r.cursor),setSize:r.setSize,subtreeEndIndex:Lm(e,r.cursor,r.index,n)}}function Hm(e,t,n){let r=e.instrumentation,i=q(e);if(i<=0||n<t)return[];let a=Math.max(0,Math.min(t,i-1)),o=Math.max(a,Math.min(n,i-1));if(r==null){if(a===0)return nh(e,o+1);let t=[],n=Jm(e,a);for(let r=a;r<=o&&n!=null;r++){let r=rh(e,n);t.push(r),n=$m(e,n)}return t}let s=[],c=0,l=0,u=U(r,`store.getVisibleSlice.selectFirstRow`,()=>Jm(e,a));for(let t=a;t<=o&&u!=null;t++){let t=U(r,`store.getVisibleSlice.materializeRow`,()=>rh(e,u));s.push(t),t.isFlattened&&(c++,l+=t.flattenedSegments?.length??0),u=U(r,`store.getVisibleSlice.advanceCursor`,()=>$m(e,u))}return df(r,`workload.visibleRowsRead`,s.length),df(r,`workload.flattenedRowsRead`,c),df(r,`workload.flattenedSegmentsRead`,l),s}function Um(e,t=q(e)){let n=e.instrumentation;return n==null?th(e,t):U(n,`store.getVisibleTreeProjection`,()=>th(e,t))}function Wm(e){return eh(Um(e))}function Gm(e,t){let n=Wp(e,t);if(n==null||n===e.snapshot.rootId||V(K(e,n))&&Np(e,n)!==n)return null;let r=0,i=n,{nodes:a,rootId:o}=e.snapshot;for(;i!==o;){let t=K(e,i).parentId,n=G(e,t),s=Hd(n).get(i);if(s==null)throw Error(`Child ${String(i)} was not found in its parent index`);if(r+=Jd(a,n,s),t!==o){let n=K(e,t),a=Mp(e,t);if(!Qf(e,t,n)&&a!==i)return null;Np(e,t)===t&&(r+=1)}i=t}return r}function Km(e,t){let n=Wp(e,t);if(n==null)throw Error(`Path does not exist: "${t}"`);let r=K(e,n);if(!V(r))throw Error(`Path is not a directory: "${t}"`);return Qf(e,n,r)?null:($f(e,n,!0,r),Vp(e,n),fp({affectedAncestorIds:Up(e,n),affectedNodeIds:[n],path:t,projectionChanged:!0}))}function qm(e,t){let n=Wp(e,t);if(n==null)throw Error(`Path does not exist: "${t}"`);let r=K(e,n);if(!V(r))throw Error(`Path is not a directory: "${t}"`);return Qf(e,n,r)?($f(e,n,!1,r),Vp(e,n),pp({affectedAncestorIds:Up(e,n),affectedNodeIds:[n],path:t,projectionChanged:!0})):null}function Jm(e,t){return t<0||t>=q(e)?null:Ym(e,e.snapshot.rootId,t,-1)}function Ym(e,t,n,r){let i=G(e,t),a=e.instrumentation,{childIndex:o,localVisibleIndex:s}=a==null?qd(e.snapshot.nodes,i,n):U(a,`store.getVisibleSlice.selectChildIndex`,()=>qd(e.snapshot.nodes,i,n)),c=i.childIds[o];if(c!=null)return Xm(e,c,s,r+1);throw Error(`Visible index ${String(n)} is out of range`)}function Xm(e,t,n,r){if(!V(K(e,t))){if(n===0)return{headNodeId:t,terminalNodeId:t,visibleDepth:r};throw Error(`Visible index ${String(n)} is out of range for file`)}let i=Zm(e,t,r);if(n===0)return i;let a=K(e,i.terminalNodeId);if(!V(a)||!Qf(e,i.terminalNodeId,a))throw Error(`Visible index ${String(n)} is out of range for collapsed directory`);return Ym(e,i.terminalNodeId,n-1,i.visibleDepth)}function Zm(e,t,n){return V(K(e,t))?e.instrumentation==null?{headNodeId:t,terminalNodeId:Np(e,t),visibleDepth:n}:{headNodeId:t,terminalNodeId:U(e.instrumentation,`store.getVisibleSlice.flatten.resolveTerminalDirectory`,()=>Np(e,t)),visibleDepth:n}:{headNodeId:t,terminalNodeId:t,visibleDepth:n}}function Qm(e,t){let n=K(e,t);if(!V(n))return!0;let r=n.parentId;return r===e.snapshot.rootId||Mp(e,r)!==t}function $m(e,t){let n=K(e,t.terminalNodeId);if(V(n)){let r=G(e,t.terminalNodeId);if(Qf(e,t.terminalNodeId,n)&&r.childIds.length>0){let n=r.childIds[0];return n==null?null:Xm(e,n,0,t.visibleDepth+1)}}let r=t.terminalNodeId,i=t.visibleDepth;for(;;){let t=K(e,r);if(r===e.snapshot.rootId)return null;let n=t.parentId,a=G(e,n),o=Hd(a).get(r)??-1;if(o<0)throw Error(`Child ${String(r)} was not found in its parent index`);let s=a.childIds[o+1]??null;if(s!=null)return Xm(e,s,0,i);Qm(e,r)&&i--,r=n}}function eh(e){let t=e.paths.length,n=Array(t);for(let r=0;r<t;r+=1){let t=e.getParentIndex(r);n[r]={index:r,parentPath:t>=0?e.paths[t]??null:null,path:e.paths[r]??``,posInSet:e.posInSetByIndex[r]??0,setSize:e.setSizeByIndex[r]??0}}return{getParentIndex:e.getParentIndex,rows:n,get visibleIndexByPath(){return e.visibleIndexByPath}}}function th(e,t){let n=Array(t),r=new Int32Array(t),i=new Int32Array(t),a=new Int32Array(t),o=new Int32Array(Fm);o.fill(-1);let s=0,{nodes:c,directories:l,segmentTable:u}=e.snapshot,d=[[l.get(e.snapshot.rootId),0,-1,``]],f=e.snapshot.options.flattenEmptyDirectories,p=e.pathCacheByNodeId,m=e.pathCacheVersion,h=u.valueById;for(;d.length>0&&s<t;){let t=d[d.length-1],u=t[0];if(t[1]>=u.childIds.length){d.pop();continue}let g=t[1],_=u.childIds[t[1]++],v=c[_],y=t[2]+1,b=t[3];o=Im(o,y);let x,S=_;if(V(v))S=f?Np(e,_):_,x=S===_?`${b}${h[v.nameId]}/`:W(e,S);else{let e=p.get(_);x=e!=null&&e.version===m?e.path:`${b}${h[v.nameId]}`}r[s]=o[y],n[s]=x,i[s]=g,a[s]=u.childIds.length,o[y+1]=s,s+=1;let C=c[S];C!=null&&V(C)&&Qf(e,S,C)&&d.push([l.get(S),0,y,x])}s<t&&(n.length=s);let g=r.subarray(0,s),_=i.subarray(0,s),v=a.subarray(0,s),y=null;return{getParentIndex(e){return e<0||e>=s?-1:g[e]??-1},paths:n,posInSetByIndex:_,setSizeByIndex:v,get visibleIndexByPath(){if(y==null){y=new Map;for(let e=0;e<s;e+=1)y.set(n[e]??``,e)}return y}}}function nh(e,t){let n=Array(t),r=0,{nodes:i,directories:a,segmentTable:o}=e.snapshot,s=[[a.get(e.snapshot.rootId),0,-1]],c=o.valueById,l=e.snapshot.options.flattenEmptyDirectories,u=e.pathCacheByNodeId,d=e.pathCacheVersion;for(;s.length>0&&r<t;){let t=s[s.length-1],o=t[0];if(t[1]>=o.childIds.length){s.pop();continue}let f=o.childIds[t[1]++],p=i[f],m=t[2]+1;if(!V(p)){let t=u.get(f);n[r++]={depth:m,flattenedSegments:void 0,hasChildren:!1,id:f,isExpanded:!1,isFlattened:!1,isLoading:!1,kind:`file`,loadState:void 0,name:c[p.nameId],path:t!=null&&t.version===d?t.path:W(e,f)};continue}let h=l?Np(e,f):f,g={headNodeId:f,terminalNodeId:h,visibleDepth:m};n[r++]=rh(e,g);let _=i[h];_!=null&&V(_)&&Qf(e,h,_)&&s.push([a.get(h),0,m])}return r<t&&(n.length=r),n}function rh(e,t){let n=K(e,t.terminalNodeId),r=V(n)?ih(e,t):null,i=W(e,t.terminalNodeId),a=Af(e.snapshot.segmentTable,n.nameId),o=V(n)&&G(e,t.terminalNodeId).childIds.length>0,s=t.headNodeId!==t.terminalNodeId,c=e.instrumentation,l=s?c==null?Pp(e,t.headNodeId).map(n=>{let r=K(e,n);return{isTerminal:n===t.terminalNodeId,name:Af(e.snapshot.segmentTable,r.nameId),nodeId:n,path:W(e,n)}}):U(c,`store.getVisibleSlice.flatten.collectSegments`,()=>Pp(e,t.headNodeId).map(n=>{let r=K(e,n);return{isTerminal:n===t.terminalNodeId,name:Af(e.snapshot.segmentTable,r.nameId),nodeId:n,path:W(e,n)}})):void 0;return{depth:t.visibleDepth,flattenedSegments:l,hasChildren:o,id:t.terminalNodeId,isExpanded:V(n)&&Qf(e,t.terminalNodeId,n),isFlattened:s,isLoading:r===`loading`,kind:V(n)?`directory`:`file`,loadState:r==null||r===`loaded`?void 0:r,name:a,path:i}}function ih(e,t){if(t.headNodeId===t.terminalNodeId)return tp(e,t.terminalNodeId);let n=Pp(e,t.headNodeId),r=!1,i=!1;for(let t of n){let n=tp(e,t);if(n===`loading`)return`loading`;if(n===`error`){i=!0;continue}n===`unloaded`&&(r=!0)}return i?`error`:r?`unloaded`:`loaded`}var ah=8;function oh(e){let{nodes:t,directories:n,rootId:r,options:i}=e,a=t.length,o=new Int32Array(a),s=new Int32Array(a),c=new Int32Array(a),l=new Int32Array(a),u=new Int32Array(a),d=new Int32Array(a),f=new Int32Array(a);for(let e=0;e<a;e+=1){let n=t[e];n!=null&&(o[e]=n.parentId,s[e]=n.nameId,c[e]=n.depthAndFlags,l[e]=n.subtreeNodeCount,u[e]=n.visibleSubtreeCount)}let p=0;for(let e of n.values())p+=e.childIds.length;let m=new Int32Array(p),h=0;for(let[e,t]of n){let n=t.childIds;d[e]=h,f[e]=n.length;for(let e=0;e<n.length;e+=1)m[h]=n[e],h+=1}return{nodeCount:a,rootId:r,flattenEmptyDirectories:i.flattenEmptyDirectories===!0,parentId:o,nameId:s,depthAndFlags:c,subtreeNodeCount:l,visibleSubtreeCount:u,childStart:d,childCount:f,childIdsFlat:m}}function sh(e){let{nodeCount:t,rootId:n,flattenEmptyDirectories:r,depthAndFlags:i,subtreeNodeCount:a,visibleSubtreeCount:o,childStart:s,childCount:c,childIdsFlat:l}=e;for(let e=t-1;e>=1;--e){if((i[e]&ah)===0)continue;let t=s[e],n=c[e],u=0,d=0;for(let e=0;e<n;e+=1){let n=l[t+e];u+=a[n],d+=o[n]}a[e]=1+u;let f;f=r&&n===1?(i[l[t]]&ah)===0?1+d:d:1+d,o[e]=f}let u=s[n],d=c[n],f=0,p=0;for(let e=0;e<d;e+=1){let t=l[u+e];f+=a[t],p+=o[t]}a[n]=1+f,o[n]=p}function ch(e){let{directories:t,nodes:n,options:r,rootId:i,presortedDirectoryNodeIds:a}=e.snapshot,o=r.flattenEmptyDirectories===!0,s=e=>{let r=n[e];if(r==null||!V(r))return;let i=t.get(e);if(i==null)throw Error(`Unknown directory child index for node ${String(e)}`);let a=i.childIds,s=a.length,c=0,l=0;for(let e=0;e<s;e++){let t=a[e];if(t==null)continue;let r=n[t];c+=r.subtreeNodeCount,l+=r.visibleSubtreeCount}i.totalChildSubtreeNodeCount=c,i.totalChildVisibleSubtreeCount=l,s>=128&&Yd(n,i),r.subtreeNodeCount=1+c;let u;if(o&&s===1){let e=n[a[0]];u=e!=null&&V(e)?l:1+l}else u=1+l;r.visibleSubtreeCount=u};if(a!=null)for(let e=a.length-1;e>=0;e--)s(a[e]);else for(let e=n.length-1;e>=1;e--)s(e);let c=n[i],l=t.get(i);if(c==null||l==null)return;let u=l.childIds,d=0,f=0;for(let e=0;e<u.length;e++){let t=u[e];if(t==null)continue;let r=n[t];d+=r.subtreeNodeCount,f+=r.visibleSubtreeCount}l.totalChildSubtreeNodeCount=d,l.totalChildVisibleSubtreeCount=f,Yd(n,l),c.subtreeNodeCount=1+d,c.visibleSubtreeCount=f}function lh(e){let{directories:t,nodes:n,rootId:r}=e.snapshot,i=oh(e.snapshot);sh(i);let a=i.subtreeNodeCount,o=i.visibleSubtreeCount;for(let e=0;e<n.length;e+=1){let t=n[e];t!=null&&(t.subtreeNodeCount=a[e],t.visibleSubtreeCount=o[e])}for(let[e,i]of t){let t=i.childIds,a=t.length,o=0,s=0;for(let e=0;e<a;e++){let r=t[e];if(r==null)continue;let i=n[r];o+=i.subtreeNodeCount,s+=i.visibleSubtreeCount}i.totalChildSubtreeNodeCount=o,i.totalChildVisibleSubtreeCount=s,(e===r||a>=128)&&Yd(n,i)}}function uh(e){return e.initialExpansion===`open`&&(e.initialExpandedPaths==null||e.initialExpandedPaths.length===0)}var dh=class e{#e;constructor(e={}){let t=uf(e),n=U(t,`store.builder.create`,()=>new qf(e));if(e.preparedInput!=null){let t=Wf(e.preparedInput);t==null?n.appendPreparedPaths(Uf(e.preparedInput),!1):n.appendPresortedPaths(t,Gf(e.preparedInput))}else{let r=e.paths??[];e.presorted===!0?n.appendPaths(r):n.appendPreparedPaths(U(t,`store.preparePathEntries`,()=>Kf(r,e)))}let r=U(t,`store.builder.finish`,()=>n.finish({skipSubtreeCountPass:!0})),i=U(t,`store.state.detectAllDirectoriesExpanded`,()=>(e.initialExpansion??`closed`)===`closed`&&n.didMatchAllInitialExpandedPaths());this.#e=U(t,`store.state.create`,()=>Jf(r,i?`open`:e.initialExpansion??`closed`,t)),i&&(this.#e.collapseNewDirectoriesByDefault=!0);let a=i?this.#e.snapshot.directories.size-1:U(t,`store.state.initializeExpandedPaths`,()=>this.initializeExpandedPaths(e.initialExpandedPaths));i||uh(e)||(e.initialExpansion??`closed`)===`closed`&&a===this.#e.snapshot.directories.size-1||(e.initialExpandedPaths?.length??0)>0&&U(t,`store.state.checkAllDirectoriesExpanded`,()=>this.hasAllDirectoriesExpanded())?e.useSoaCountSweep===!0?U(t,`store.state.initializeOpenVisibleCountsViaSoa`,()=>lh(this.#e)):U(t,`store.state.initializeOpenVisibleCounts`,()=>ch(this.#e)):U(t,`store.state.recomputeCounts`,()=>Hp(this.#e,this.#e.snapshot.rootId))}static preparePaths(e,t={}){return Bf(e,t)}static prepareInput(e,t={}){return Vf(e,t)}static preparePresortedInput(e){return Hf(e)}list(e){return U(this.#e.instrumentation,`store.list`,()=>Fp(this.#e,e))}add(e){U(this.#e.instrumentation,`store.add`,()=>{let t=q(this.#e);Sp(this.#e,bp(this.#e,t,Ip(this.#e,e)))})}remove(e,t={}){U(this.#e.instrumentation,`store.remove`,()=>{let n=q(this.#e);Sp(this.#e,bp(this.#e,n,Lp(this.#e,e,t)))})}move(e,t,n={}){U(this.#e.instrumentation,`store.move`,()=>{let r=q(this.#e),i=Rp(this.#e,e,t,n);i!=null&&Sp(this.#e,bp(this.#e,r,i))})}batch(e){xp(this.#e,()=>{if(typeof e==`function`){e(this);return}for(let t of e)switch(t.type){case`add`:this.add(t.path);break;case`remove`:this.remove(t.path,{recursive:t.recursive});break;case`move`:this.move(t.from,t.to,{collision:t.collision});break}})}getVisibleCount(){return U(this.#e.instrumentation,`store.getVisibleCount`,()=>q(this.#e))}getVisibleSlice(e,t){return U(this.#e.instrumentation,`store.getVisibleSlice`,()=>Hm(this.#e,e,t))}getVisibleRowContext(e){return U(this.#e.instrumentation,`store.getVisibleRowContext`,()=>Vm(this.#e,e))}getVisibleTreeProjection(){return Wm(this.#e)}getVisibleTreeProjectionData(e){return Um(this.#e,e)}getVisibleIndex(e){return U(this.#e.instrumentation,`store.getVisibleIndex`,()=>Gm(this.#e,e))}getPathInfo(e){return U(this.#e.instrumentation,`store.getPathInfo`,()=>{let t=Wp(this.#e,e);if(t==null)return null;let n=K(this.#e,t);return{depth:nf(n),kind:V(n)?`directory`:`file`,path:W(this.#e,t)}})}isExpanded(e){return U(this.#e.instrumentation,`store.isExpanded`,()=>{let t=this.requireDirectoryNodeId(e),n=K(this.#e,t);return Qf(this.#e,t,n)})}expand(e){U(this.#e.instrumentation,`store.expand`,()=>{let t=q(this.#e),n=Km(this.#e,e);n!=null&&Sp(this.#e,bp(this.#e,t,n))})}collapse(e){U(this.#e.instrumentation,`store.collapse`,()=>{let t=q(this.#e),n=qm(this.#e,e);n!=null&&Sp(this.#e,bp(this.#e,t,n))})}on(e,t){return cp(this.#e,e,t)}getDirectoryLoadState(e){let t=this.requireDirectoryNodeId(e);return tp(this.#e,t)}markDirectoryUnloaded(e){U(this.#e.instrumentation,`store.markDirectoryUnloaded`,()=>{let t=this.requireDirectoryNodeId(e);if(G(this.#e,t).childIds.length>0)throw Error(`Cannot mark a directory with known children as unloaded: "${e}"`);let n=q(this.#e);rp(this.#e,t),Sp(this.#e,bp(this.#e,n,mp({affectedAncestorIds:Up(this.#e,t),affectedNodeIds:[t],path:e,projectionChanged:this.isDirectoryProjectionVisible(t)})))})}beginChildLoad(e){return U(this.#e.instrumentation,`store.beginChildLoad`,()=>{let t=this.requireDirectoryNodeId(e),n=q(this.#e),r=np(this.#e,t);return Sp(this.#e,bp(this.#e,n,hp({affectedAncestorIds:Up(this.#e,t),affectedNodeIds:[t],attemptId:r.attemptId,path:e,projectionChanged:this.isDirectoryProjectionVisible(t),reused:r.reused}))),r})}applyChildPatch(e,t){return U(this.#e.instrumentation,`store.applyChildPatch`,()=>{let n=this.resolveActiveDirectoryNodeId(e.nodeId);if(n==null||tp(this.#e,n)!==`loading`||!ap(this.#e,n,e.attemptId))return!1;let r=W(this.#e,n);this.validateChildPatch(r,t);let i=q(this.#e),a=[];for(let e of t.operations){fh(r,e);let t=q(this.#e);switch(e.type){case`add`:a.push(bp(this.#e,t,Ip(this.#e,e.path)));break;case`remove`:a.push(bp(this.#e,t,Lp(this.#e,e.path,{recursive:e.recursive})));break;case`move`:{let n=Rp(this.#e,e.from,e.to,{collision:e.collision});n!=null&&a.push(bp(this.#e,t,n));break}}}let o=a.some(e=>e.projectionChanged)||this.isDirectoryProjectionVisible(n);return Sp(this.#e,bp(this.#e,i,gp({affectedAncestorIds:Up(this.#e,n),affectedNodeIds:[n],attemptId:e.attemptId,childEvents:a,path:W(this.#e,n),projectionChanged:o}))),!0})}completeChildLoad(e){return U(this.#e.instrumentation,`store.completeChildLoad`,()=>{let t=this.resolveActiveDirectoryNodeId(e.nodeId);if(t==null)return!1;let n=q(this.#e),r=ip(this.#e,t,e.attemptId);return Sp(this.#e,bp(this.#e,n,_p({affectedAncestorIds:Up(this.#e,t),affectedNodeIds:[t],attemptId:e.attemptId,path:W(this.#e,t),projectionChanged:this.isDirectoryProjectionVisible(t),stale:!r}))),r})}failChildLoad(e,t){return U(this.#e.instrumentation,`store.failChildLoad`,()=>{let n=this.resolveActiveDirectoryNodeId(e.nodeId);if(n==null)return!1;let r=q(this.#e),i=op(this.#e,n,e.attemptId,t);return Sp(this.#e,bp(this.#e,r,vp({affectedAncestorIds:Up(this.#e,n),affectedNodeIds:[n],attemptId:e.attemptId,errorMessage:t,path:W(this.#e,n),projectionChanged:this.isDirectoryProjectionVisible(n),stale:!i}))),i})}cleanup(e={}){return U(this.#e.instrumentation,`store.cleanup`,()=>{if(this.#e.transactionStack.length>0)throw Error(`Cleanup cannot run during an open batch or transaction.`);if(Nm(this.#e))throw Error(`Cleanup cannot run while directory loads are active.`);let t=q(this.#e),n=Pm(this.#e,e.mode??`stable`);return Sp(this.#e,bp(this.#e,t,yp({...n,affectedAncestorIds:[],affectedNodeIds:[],projectionChanged:n.idsPreserved===!1}))),n})}getNodeCount(){return this.#e.activeNodeCount}initializeExpandedPaths(e){if(e==null||e.length===0)return 0;let t=0,n=[],r=[],i=0,a=null,o=this.#e.snapshot.segmentTable,s=o.valueById,c=this.#e.snapshot.nodes,l=new Map;for(let u of e){a!=null&&u<a&&(a=null,i=0,n.length=0,r.length=0);let e=u.length>0&&u.charCodeAt(u.length-1)===47?u.length-1:u.length;if(e===0){a=u,i=e,n.length=0,r.length=0;continue}let d=0,f=0;if(a!=null){let t=Math.min(e,i),n=!0;for(let e=0;e<t;e+=1){let t=u.charCodeAt(e);if(t!==a.charCodeAt(e)){n=!1;break}t===47&&(d+=1,f=e+1)}n&&(t===i&&e>t&&u.charCodeAt(t)===47?(d+=1,f=t+1):t===e&&i>t&&a.charCodeAt(t)===47&&(d+=1,f=e+1)),d=Math.min(d,r.length)}let p=d===0?this.#e.snapshot.rootId:r[d-1]??this.#e.snapshot.rootId,m=d,h=!0,g=f;for(;g<=e;){let t=u.indexOf(`/`,g),i=t===-1||t>e?e:t,a=u.slice(g,i),f=G(this.#e,p).childIds,_=m===d?n[m]??0:0,v=_,y,b=l.get(a)??mf(a);l.set(a,b);let x=(e,t)=>{for(v=e;v<t;v+=1){let e=f[v],t=c[e],n=s[t.nameId];if(n===a)return y=e,!0;let r=gf(Cf(o,t.nameId),b);if(r>0||r===0&&n>a)return!1}return!1};if(!x(_,f.length)&&_>0&&x(0,_),y===void 0){h=!1;break}if(!V(K(this.#e,y))){h=!1;break}if(n[m]=v,r[m]=y,p=y,m+=1,i===e)break;g=i+1}if(a=u,i=e,n.length=m,r.length=m,!h){a=null,i=0,n.length=0,r.length=0;continue}for(let e=d;e<m;e+=1){let n=r[e];if(n==null)continue;let i=K(this.#e,n);Qf(this.#e,n,i)||($f(this.#e,n,!0,i),t+=1)}}return t}hasAllDirectoriesExpanded(){for(let e of this.#e.snapshot.directories.keys()){if(e===this.#e.snapshot.rootId)continue;let t=K(this.#e,e);if(!Qf(this.#e,e,t))return!1}return!0}requireDirectoryNodeId(e){let t=Wp(this.#e,e);if(t==null)throw Error(`Path does not exist: "${e}"`);if(!V(K(this.#e,t)))throw Error(`Path is not a directory: "${e}"`);return t}resolveActiveDirectoryNodeId(e){try{if(!V(K(this.#e,e)))throw Error(`Node is not a directory: ${String(e)}`);return e}catch{return null}}isDirectoryProjectionVisible(e){let t=e;for(;t!==this.#e.snapshot.rootId;){let e=K(this.#e,t).parentId;if(e!==this.#e.snapshot.rootId){let n=K(this.#e,e),r=Mp(this.#e,e);if(!Qf(this.#e,e,n)&&r!==t)return!1}t=e}return!0}validateChildPatch(t,n){new e({paths:this.list(t),presorted:!0,sort:this.#e.snapshot.options.sort}).batch(n.operations)}};function fh(e,t){switch(t.type){case`add`:case`remove`:if(!t.path.startsWith(e)||t.path===e)throw Error(`Child patch operation must stay within ${e}: "${t.path}"`);break;case`move`:if(!t.from.startsWith(e)||!t.to.startsWith(e)||t.from===e||t.to===e)throw Error(`Child patch move must stay within ${e}: "${t.from}" -> "${t.to}"`)}}function ph(e,t={}){return dh.prepareInput(e,t)}var mh={compact:{itemHeight:24,factor:.8},default:{itemHeight:30,factor:1},relaxed:{itemHeight:36,factor:1.2}};function hh(e,t){if(typeof e==`number`)return{itemHeight:t??mh.default.itemHeight,factor:e};let n=mh[e??`default`];return{itemHeight:t??n.itemHeight,factor:n.factor}}var gh=mh.default.itemHeight,_h=`@layer base {
|
|
5553
5553
|
:host {
|
|
5554
5554
|
--trees-accent: var(--trees-accent-override, #009fff);
|
|
5555
5555
|
--trees-fg: var(--trees-fg-override, var(--trees-theme-sidebar-fg, light-dark(#6c6c71, #adadb1)));
|
|
@@ -6641,13 +6641,13 @@ slicc-dock-tree .dock-tree__preview--active {
|
|
|
6641
6641
|
}
|
|
6642
6642
|
|
|
6643
6643
|
@layer theme, unsafe;
|
|
6644
|
-
`,
|
|
6644
|
+
`,vh=`@layer base, unsafe;`;function yh(e){return`${vh}
|
|
6645
6645
|
@layer base {
|
|
6646
6646
|
${e}
|
|
6647
|
-
}`}function
|
|
6647
|
+
}`}function bh(e){return`${vh}
|
|
6648
6648
|
@layer unsafe {
|
|
6649
6649
|
${e}
|
|
6650
|
-
}`}var lg=new WeakMap;function ug(e){let t=lg.get(e);if(t!=null)return t;let n=document.createElement(`div`);n.setAttribute(uf,`true`);let r=document.createElement(`div`);r.style.position=`relative`,r.style.height=`200%`,n.appendChild(r),e.appendChild(n);let i=Math.max(n.offsetWidth-n.clientWidth,0);return n.remove(),lg.set(e,i),i}function dg(e,t){if(!e.isConnected)return;let n=ug(t);if(n==null)return;let r=t.querySelector(`style[${df}]`),i=r instanceof HTMLStyleElement?r:document.createElement(`style`);r instanceof HTMLStyleElement||(i.setAttribute(df,``),t.appendChild(i)),i.textContent=`:host { ${ff}: ${n}px; }`}var fg;function pg(e){if(typeof CSSStyleSheet<`u`&&typeof CSSStyleSheet.prototype.replaceSync==`function`&&`adoptedStyleSheets`in e){fg??(fg=new CSSStyleSheet,fg.replaceSync(sg(ag)));let t=!1;try{e.adoptedStyleSheets=[fg],t=!0}catch{}if(t){e.querySelector(`style[${cf}]`)?.remove();return}}if(e.querySelector(`style[data-file-tree-style]`)==null){let t=document.createElement(`style`);t.setAttribute(cf,``),t.textContent=sg(ag),e.prepend(t)}}function mg(e,t){hg(e,t),pg(t),dg(e,t)}function hg(e,t){let n=e.querySelector(`template[shadowrootmode="open"], template[data-file-tree-shadowrootmode="open"]`);n instanceof HTMLTemplateElement&&(t.childNodes.length>0||(t.appendChild(n.content.cloneNode(!0)),n.hasAttribute(`shadowrootmode`)&&n.remove()))}if(typeof HTMLElement<`u`&&customElements.get(`file-tree-container`)==null){class e extends HTMLElement{constructor(){super()}connectedCallback(){let e=this.shadowRoot??this.attachShadow({mode:`open`});mg(this,e)}}if(customElements.define(sf,e),typeof document<`u`)for(let e of Array.from(document.querySelectorAll(sf)))e instanceof HTMLElement&&mg(e,e.shadowRoot??e.attachShadow({mode:`open`}))}var gg=e=>e.startsWith(`f::`)?e.slice(3):e;function _g(e){let t=e.lastIndexOf(`/`);return t<0?{parentPath:``,baseName:e}:{parentPath:e.slice(0,t),baseName:e.slice(t+1)}}function vg(e,t){return e===``?t:`${e}/${t}`}function yg({files:e,path:t,isFolder:n,nextBasename:r}){let i=gg(t),a=r.trim();if(a.length===0)return{error:`Name cannot be empty.`};if(a.includes(`/`))return{error:`Name cannot include "/".`};let{parentPath:o,baseName:s}=_g(i);if(a===s)return{nextFiles:e,sourcePath:i,destinationPath:i,isFolder:n};let c=vg(o,a),l=Array(e.length),u=new Set;if(!n){let t=`${c}/`,r=!1;for(let n=0;n<e.length;n++){let a=e[n];if(a!==i&&a.startsWith(t))return{error:`"${c}" already exists.`};let o=a===i?c:a;if(u.has(o))return{error:`"${c}" already exists.`};u.add(o),l[n]=o,a===i&&(r=!0)}return r?{nextFiles:l,sourcePath:i,destinationPath:c,isFolder:n}:{error:`Could not find the selected file to rename.`}}let d=`${i}/`,f=`${c}/`,p=0;for(let t=0;t<e.length;t++){let n=e[t],r=n===i||n.startsWith(d);if(!r&&(n===c||n.startsWith(f)))return{error:`"${c}" already exists.`};let a=r?`${c}${n.slice(i.length)}`:n;if(u.has(a))return{error:`"${c}" already exists.`};u.add(a),l[t]=a,r&&p++}return p===0?{error:`Could not find the selected folder to rename.`}:{nextFiles:l,sourcePath:i,destinationPath:c,isFolder:n}}function bg(e){return e.endsWith(`/`)}function xg(e){let t=e.endsWith(`/`)?e.slice(0,-1):e,n=t.lastIndexOf(`/`),r=n<0?t:t.slice(n+1);return e.endsWith(`/`)?`${r}/`:r}function Sg(e){let t=[],n=new Set;for(let r of e)n.has(r)||(n.add(r),t.push(r));let r=new Set;for(let e of t.toSorted((e,t)=>e.length===t.length?e.localeCompare(t):e.length-t.length)){let t=(e.endsWith(`/`)?e.slice(0,-1):e).split(`/`),n=!1;for(let e=0;e<t.length-1;e+=1){let i=`${t.slice(0,e+1).join(`/`)}/`;if(r.has(i)){n=!0;break}}n||r.add(e)}return t.filter(e=>r.has(e))}function Cg(e,t){return t.includes(e)?Sg(t):[e]}function wg(e,t){return e===t?!0:e==null||t==null?!1:e.kind===t.kind&&e.directoryPath===t.directoryPath&&e.flattenedSegmentPath===t.flattenedSegmentPath&&e.hoveredPath===t.hoveredPath}function Tg(e,t){return{draggedPaths:e,target:t}}function Eg(e,t){if(t.kind!==`directory`||t.directoryPath==null)return!1;for(let n of e)if(bg(n)&&(t.directoryPath===n||t.directoryPath.startsWith(n)))return!0;return!1}function Dg(e,t){return t.kind===`root`||t.directoryPath==null?xg(e):t.directoryPath}function Og(e,t){let n=e.map(e=>{let n=Dg(e,t);return n===e?null:{from:e,to:n,type:`move`}}).filter(e=>e!=null);return n.length===0?null:{operations:n,result:{draggedPaths:e,operation:n.length===1?`move`:`batch`,target:t}}}function kg(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return!1;return!0}function Ag(e,t,n){let{paths:r,preparedInput:i}=e;if(i==null){if(r==null)throw Error(`FileTree requires paths or preparedInput`);return{paths:r,preparedInput:void 0}}let a=i.paths;if(r==null)return{paths:a,preparedInput:i};if(!kg($h.preparePaths(r,n==null?{}:{sort:n}),a))throw Error(`FileTree ${t} received paths and preparedInput for different path lists`);return{paths:a,preparedInput:i}}function jg(e){return e.operation===`add`||e.operation===`remove`||e.operation===`move`||e.operation===`batch`}function Mg(e,t,n){if(e===t)return n;let r=t.endsWith(`/`)?t:`${t}/`;return e.startsWith(r)?`${n.endsWith(`/`)?n:`${n}/`}${e.slice(r.length)}`:e}function Ng(e,t){if(e===t)return!0;let n=t.endsWith(`/`)?t:`${t}/`;return e.startsWith(n)}function Pg(e,t,n=!1){if(e==null)return null;switch(t.operation){case`add`:case`expand`:case`collapse`:case`mark-directory-unloaded`:case`begin-child-load`:case`apply-child-patch`:case`complete-child-load`:case`fail-child-load`:case`cleanup`:return e;case`remove`:return Ng(e,t.path)?n?e:null:e;case`move`:return Mg(e,t.from,t.to);case`batch`:{let r=e;for(let e of t.events)if(r=Pg(r,e,n),r==null)return null;return r}}}function Fg(e){return{canonicalChanged:e.canonicalChanged,projectionChanged:e.projectionChanged,visibleCountDelta:e.visibleCountDelta}}function Ig(e){switch(e.operation){case`add`:return{...Fg(e),operation:`add`,path:e.path};case`remove`:return{...Fg(e),operation:`remove`,path:e.path,recursive:e.recursive};case`move`:return{...Fg(e),from:e.from,operation:`move`,to:e.to}}}function Lg(e){return{...Fg(e),events:e.events.filter(e=>e.operation===`add`||e.operation===`remove`||e.operation===`move`).map(e=>Ig(e)),operation:`batch`}}function Rg(e){switch(e.operation){case`add`:case`remove`:case`move`:return Ig(e);case`batch`:return Lg(e);default:return null}}function zg(e,t){if(e.size!==t.length)return!1;for(let n of t)if(!e.has(n))return!1;return!0}function Bg(e){let t=e.endsWith(`/`)?e.slice(0,-1):e;if(t.length===0)return[];let n=t.split(`/`);return n.slice(0,-1).map((e,t)=>`${n.slice(0,t+1).join(`/`)}/`)}function Vg(e){return Bg(e).at(-1)??null}function Hg(e,t){return t==null?e:e.startsWith(t)?e.slice(t.length):e}function Ug(e){return e.endsWith(`/`)}var Wg=e=>e.toLowerCase();function Gg(e){let t=e.endsWith(`/`)?e.slice(0,-1):e,n=t.lastIndexOf(`/`);return n<0?t:t.slice(n+1)}function Kg(e){return e.endsWith(`/`)?e.slice(0,-1):e}function qg(e,t){return t&&!e.endsWith(`/`)?`${e}/`:e}var Jg=e=>{let t=e.trim();return t.length===0?``:(t.includes(`\\`)?t.replaceAll(`\\`,`/`):t).toLowerCase()},Yg=Symbol(`FILE_TREE_RENAME_VIEW`),Xg=512,Zg=512;function Qg(e){return e===`top`||e===`center`?e:`nearest`}function $g(e,t,n){if(e===0)return-1;if(n!=null){let e=t(n);if(e!=null)return e;let r=Bg(n);for(let e=r.length-1;e>=0;--e){let n=r[e];if(n==null)continue;let i=t(n);if(i!=null)return i}}return 0}function e_(e,t,n){if(e.paths.length===0)return{focusedIndex:-1,getParentIndex:e.getParentIndex,paths:e.paths,posInSetByIndex:e.posInSetByIndex,setSizeByIndex:e.setSizeByIndex};if(t==null)return{focusedIndex:0,getParentIndex:e.getParentIndex,paths:e.paths,posInSetByIndex:e.posInSetByIndex,setSizeByIndex:e.setSizeByIndex};let r=n??(t=>e.visibleIndexByPath.get(t)??null);return{focusedIndex:$g(e.paths.length,r,t),getParentIndex:e.getParentIndex,paths:e.paths,posInSetByIndex:e.posInSetByIndex,setSizeByIndex:e.setSizeByIndex}}var t_=class e{static{Object.defineProperty(e.prototype,Yg,{configurable:!0,value(){return{cancel:()=>{this.#q()},commit:()=>{this.#J()},getPath:()=>this.#T,getValue:()=>this.#E,isActive:()=>this.#T!=null,setValue:e=>{this.#Y(e)}}},writable:!0})}#e;#t=new Set;#n=new Map;#r=null;#i=null;#a=new Map;#o=new Map;#s=-1;#c=null;#l=!1;#u=e=>-1;#d=new Map;#f=null;#p=null;#m=null;#h=null;#g=null;#_;#v;#y;#b=[];#x=new Int32Array;#S=new Int32Array;#C=void 0;#w=!1;#T=null;#E=``;#D=!1;#O=new Set;#k=[];#A;#j=null;#M=null;#N=null;#P=null;#F=null;#I=null;#L=null;#R=0;#z=null;#B=new Set;#V=0;#H;#U=0;#W=!1;#G=0;#K;constructor(e){let{dragAndDrop:t,fileTreeSearchMode:n,initialSearchQuery:r,initialSelectedPaths:i,renaming:a,onSearchChange:o,paths:s,preparedInput:c,...l}=e,u=Ag({paths:s,preparedInput:c},`constructor`,l.sort);this.#e=l,t!=null&&t!==!1&&(this.#r=t===!0?{}:t),this.#w=a!=null&&a!==!1,a!=null&&a!==!1&&a!==!0&&(this.#C=a.canRename,this.#v=a.onError,this.#_=a.onRename),this.#y=o,this.#A=n??`hide-non-matches`,this.#H=this.#le(u.paths,u.preparedInput);let d=i?.map(e=>this.#Ne(e)).filter(e=>e!=null)??[],f=d.at(-1)??null;d.length>0&&(this.#B=new Set(d),this.#z=f,this.#V=1),this.#je(f,!1),r!=null&&this.#Te(r,!1),this.#K=this.#Re()}destroy(){this.#K?.(),this.#K=null,this.#n.clear(),this.#t.clear(),this.#d.clear(),this.#i=null,this.#he()}focusFirstItem(){this.#be().length>0&&this.#Fe(0)}focusLastItem(){this.#G<=0||(this.#Ie(),this.#Fe(this.#G-1))}focusNextItem(){this.#Ae(1)}focusParentItem(){if(this.#c==null)return;let e=Vg(this.#c);if(e==null)return;let t=this.#Z(e);t>=0&&this.#Fe(t)}focusPath(e){let t=this.#H.getPathInfo(e)?.path??null;if(t==null)return;this.#Ie();let n=this.#Z(t);n>=0&&this.#Fe(n)}scrollToPath(e,t){let n=this.#H.getPathInfo(e)?.path??null;if(n==null)return;this.#Ie();let r=this.#xe(n);r<0||this.#Me(r)!=null&&(t?.focus!==!1&&this.#Fe(r,!1),this.#L={id:this.#R+=1,offset:Qg(t?.offset),visibleIndex:r},this.#De())}focusMountedPathFromInput(e){let t=this.#H.getPathInfo(e)?.path??null;if(t==null)return;let n=this.#Z(t);n>=0&&this.#Fe(n)}focusNearestPath(e){let t=this.resolveNearestVisiblePath(e);if(t==null)return null;let n=this.#Z(t);return n>=0?(this.#Fe(n),this.#be()[n]??t):null}focusPreviousItem(){this.#Ae(-1)}getFocusedIndex(){return this.#s}getFocusedItem(){return this.#c==null?null:this.#Q(this.#c)}getFocusedPath(){return this.#c}getScrollRequest(){return this.#L}clearScrollRequest(e){this.#L?.id===e&&(this.#L=null)}resolveNearestVisiblePath(e){let t=this.#be();if(this.#G===0)return null;if(e==null)return this.#c??t[0]??null;let n=this.#H.getPathInfo(e)?.path??e,r=this.#Z(n);return r>=0?t[r]??n:this.#X(n)??this.#c??t[0]??null}getSelectedPaths(){return[...this.#B]}getSelectionVersion(){return this.#V}getVisibleCount(){return this.#G}getVisibleRows(e,t){if(t<e||this.#G===0)return[];let n=Math.max(0,e),r=Math.min(this.#G-1,t);if(r<n)return[];let i=r-n+1;if(this.#F==null&&!this.#l&&r>=this.#b.length&&i<=Zg){let e=[];for(let t=n;t<=r;t+=1){let n=this.#H.getVisibleRowContext(t);if(n==null)break;e.push(this.#ee(n))}return e}if(!this.#l&&r>=this.#b.length&&this.#Ie(),this.#F!=null){let e=Array.from({length:r-n+1},(e,t)=>this.#Se(n+t)),t=new Map,i=e[0]??-1,a=i;for(let n=1;n<=e.length;n+=1){let r=e[n];if(r!=null&&r===a+1){a=r;continue}if(i>=0&&this.#H.getVisibleSlice(i,a).forEach((e,n)=>{t.set(i+n,e)}),r==null){i=-1,a=-1;continue}i=r,a=r}return Array.from({length:r-n+1},(e,r)=>{let i=n+r,a=this.#Se(i),o=t.get(a),s=this.#b[a];if(o==null||s==null)throw Error(`Missing projection row for filtered visible index ${String(i)}`);return this.#$(o,i,a,{ancestorPaths:this.#re(a),path:s})})}return this.#H.getVisibleSlice(n,r).map((e,t)=>{let r=n+t,i=this.#b[r];if(i==null)throw Error(`Missing projection path for visible index ${String(r)}`);return this.#$(e,r,r,{ancestorPaths:this.#re(r),path:i})})}getStickyRowCandidates(e,t){if(this.#F!=null)return null;if(this.#G===0||e<=0||t<=0)return[];let n=[];for(let r=0;r<this.#G;r+=1){let i=e+r*t,a=Math.min(this.#G-1,Math.floor(i/t)),o=this.#te(a,r)??(a>0?this.#te(a-1,r):void 0);if(o==null)break;n.push({row:this.#ee(o),subtreeEndIndex:o.subtreeEndIndex})}return n}getItem(e){let t=this.#H.getPathInfo(e);return t==null?null:this.#Q(t.path,t)}resolveMountedDirectoryPathFromInput(e){let t=this.#H.getPathInfo(e);return t?.kind===`directory`?t.path:null}toggleMountedDirectoryFromInput(e){let t=this.resolveMountedDirectoryPathFromInput(e);t!=null&&this.#ze(t)}selectAllVisiblePaths(){this.#Ie();let e=[...this.#be()];this.#ae(e,this.#c??this.#z)}selectOnlyPath(e){let t=this.#Ne(e);t!=null&&this.#ae([t],t)}selectOnlyMountedPathFromInput(e){this.#ae([e],e)}selectPath(e){let t=this.#Ne(e);t==null||this.#B.has(t)||this.#ae([...this.#B,t])}deselectPath(e){let t=this.#Ne(e);t==null||!this.#B.has(t)||this.#ae([...this.#B].filter(e=>e!==t))}toggleFocusedSelection(){this.#c!=null&&this.togglePathSelectionFromInput(this.#c)}togglePathSelection(e){let t=this.#Ne(e);if(t!=null){if(this.#B.has(t)){this.deselectPath(t);return}this.selectPath(t)}}togglePathSelectionFromInput(e){let t=this.#Ne(e);if(t!=null){if(this.#B.has(t)){this.#ae([...this.#B].filter(e=>e!==t),t);return}this.#ae([...this.#B,t],t)}}selectPathRange(e,t){let n=this.#Ne(e);if(n==null)return;this.#Ie();let r=this.#z,i=r==null?-1:this.#Ce(r),a=this.#Ce(n);if(i===-1||a===-1){let e=t?[...this.#B,n]:[n];this.#ae(e,n);return}let[o,s]=i<=a?[i,a]:[a,i],c=this.#be().slice(o,s+1),l=t?[...this.#B,...c]:c;this.#ae(l,r)}extendSelectionFromFocused(e){if(this.#c==null)return;let t=this.#s;if(t===-1)return;let n=Math.min(this.#G-1,Math.max(0,t+e));if(n===t)return;!this.#l&&n>=this.#b.length&&this.#Ie();let r=this.#be(),i=r[t]??null,a=r[n]??null;if(i==null||a==null)return;let o=new Set(this.#B);o.has(i)&&o.has(a)?o.delete(i):o.add(a),this.#ae([...o],this.#z??i,!1),this.#Fe(n)}getDragAndDropConfig(){return this.#r}isDragAndDropEnabled(){return this.#r!=null}getDragSession(){return this.#i==null?null:{draggedPaths:[...this.#i.draggedPaths],primaryPath:this.#i.primaryPath,target:this.#i.target==null?null:{...this.#i.target}}}startDrag(e){if(this.#r==null)return!1;let t=this.#Ne(e);if(t==null||this.#M!=null&&this.#M.length>0)return!1;let n=this.getSelectedPaths(),r=Cg(t,n);return this.#r.canDrag?.(r)!==!1&&(n.includes(t)||this.#ae([t],t,!1),this.#Pe(t),this.#i={draggedPaths:r,primaryPath:t,target:null},this.#De(),!0)}setDragTarget(e){let t=this.#i;if(t==null)return;let n=e;if(n!=null){let e=Tg(t.draggedPaths,n);(Eg(t.draggedPaths,n)||this.#r?.canDrop?.(e)===!1)&&(n=null)}wg(t.target,n)||(this.#i={...t,target:n},this.#De())}cancelDrag(){this.#i!=null&&(this.#i=null,this.#De())}completeDrag(){let e=this.#i;if(e==null)return!1;this.#i=null;let t=e.target==null?null:{...e.target};if(t==null)return this.#De(),!1;let n=Tg(e.draggedPaths,t);if(Eg(e.draggedPaths,t)||this.#r?.canDrop?.(n)===!1)return this.#De(),!1;let r=Og(e.draggedPaths,t);if(r==null)return this.#De(),!1;try{if(r.operations.length===1){let e=r.operations[0];if(e==null||e.type!==`move`)throw Error(`Expected a single move operation for one-item drops`);this.#H.move(e.from,e.to,{collision:e.collision})}else this.#ce(r.operations),this.#H.batch(r.operations)}catch(e){return this.#De(),this.#r?.onDropError?.(e instanceof Error?e.message:String(e),n),!1}return this.#r?.onDropComplete?.(r.result),!0}subscribe(e){return this.#t.add(e),e(),()=>{this.#t.delete(e)}}add(e){this.#H.add(e)}remove(e,t={}){this.#H.remove(e,t)}move(e,t,n={}){this.#H.move(e,t,n)}batch(e){this.#H.batch(e)}onMutation(e,t){let n=e,r=t,i=this.#n.get(n);return i??(i=new Set,this.#n.set(n,i)),i.add(r),()=>{let e=this.#n.get(n);e?.delete(r),e?.size===0&&this.#n.delete(n)}}setSearch(e){this.#Te(e,!0)}openSearch(e=``){this.#Te(e,!0)}closeSearch(){this.#Te(null,!0)}isSearchOpen(){return this.#M!==null}getSearchValue(){return this.#M??``}getSearchMatchingPaths(){return this.#k}focusNextSearchMatch(){this.#we(1)}focusPreviousSearchMatch(){this.#we(-1)}startRenaming(e=this.#c??``,t={}){if(!this.#w)return!1;let n=this.#H.getPathInfo(e);if(n==null)return!1;let r=n.path,i=Ug(r),a=Kg(r);if(this.#C?.({isFolder:i,path:a})===!1)return!1;for(let e of Bg(r))this.#H.isExpanded(e)||this.#H.expand(e);return this.#ae([r],r,!1),this.#M!=null&&(this.#Te(null,!1),this.#y?.(this.#M)),this.#Pe(r),this.#T=r,this.#E=Gg(r),this.#D=t.removeIfCanceled??!1,this.#De(),!0}#q(){if(this.#T==null)return;let e=this.#T,t=this.#D;if(this.#T=null,this.#E=``,this.#D=!1,t){this.remove(e,Ug(e)?{recursive:!0}:void 0);return}this.#Pe(e),this.#De()}#J(){let e=this.#T;if(e==null)return;if(this.#D&&this.#E.trim().length===0){this.#T=null,this.#E=``,this.#D=!1,this.remove(e,Ug(e)?{recursive:!0}:void 0);return}let t=Ug(e),n=yg({files:this.#H.list(),isFolder:t,nextBasename:this.#E,path:Kg(e)});if(this.#T=null,this.#E=``,this.#D=!1,`error`in n){this.#Pe(e),this.#v?.(n.error),this.#De();return}if(n.sourcePath===n.destinationPath){this.#Pe(e),this.#De();return}this.#_?.({destinationPath:n.destinationPath,isFolder:n.isFolder,sourcePath:n.sourcePath}),this.move(qg(n.sourcePath,t),qg(n.destinationPath,t))}#Y(e){this.#T!=null&&this.#E!==e&&(this.#E=e,this.#De())}resetPaths(e,t={}){let n=!Array.isArray(e),r=n?void 0:e,i=n?e:t,a=this.#H.list().length,o=this.#G,s=Ag({paths:r,preparedInput:i.preparedInput},`resetPaths`,this.#e.sort),c=this.#le(s.paths,s.preparedInput,i.initialExpandedPaths),l=this.#c,u=this.#T,d=this.getSelectedPaths(),f=this.#z;this.#K?.(),this.#H=c,this.#d.clear(),this.#he();let p=d.map(e=>c.getPathInfo(e)?.path??null).filter(e=>e!=null),m=!zg(this.#B,p);this.#B=new Set(p),m&&(this.#V+=1),this.#z=f==null?null:c.getPathInfo(f)?.path??null,this.#T=u==null?null:c.getPathInfo(u)?.path??null,this.#T??(this.#E=``,this.#D=!1),this.#je(l,l!=null||p.length>0||this.#z!=null),this.#K=this.#Re(),this.#De(),this.#Oe({canonicalChanged:!0,operation:`reset`,pathCountAfter:s.paths.length,pathCountBefore:a,projectionChanged:!0,usedPreparedInput:i.preparedInput!=null,visibleCountDelta:this.#G-o})}#X(e){this.#Ie();let t=Vg(e),n=Hg(e,t),r=null,i=null;for(let e of this.#be()){if(Vg(e)!==t)continue;let a=Hg(e,t);if(a<n){r=e;continue}if(a>n){i=e;break}}return r??i}#Z(e){let t=this.#Ce(e);if(t!==-1)return t;let n=Bg(e);for(let e=n.length-1;e>=0;--e){let t=n[e];if(t==null)continue;let r=this.#Ce(t);if(r!==-1)return r}return this.#be().length>0?0:-1}#Q(e,t){let n=this.#d.get(e);if(n!=null)return n;let r=t??this.#H.getPathInfo(e);if(r==null)return null;let i=r.kind===`directory`?this.#oe(r.path):this.#se(r.path);return this.#d.set(r.path,i),i}#$(e,t,n,r){return{ancestorPaths:r.ancestorPaths,depth:e.depth,flattenedSegments:e.flattenedSegments?.map(e=>({isTerminal:e.isTerminal,name:e.name,path:e.path})),hasChildren:e.hasChildren,index:t,isExpanded:e.isExpanded,isFlattened:e.isFlattened,isFocused:r.path===this.#c,isSelected:this.#B.has(r.path),kind:e.kind,level:e.depth,name:e.name,path:r.path,posInSet:r.posInSet??this.#x[n]??0,setSize:r.setSize??this.#S[n]??0}}#ee(e){return this.#$(e.row,e.index,e.index,{ancestorPaths:e.ancestorPaths,path:e.row.path,posInSet:e.posInSet,setSize:e.setSize})}#te(e,t){let n=this.#H.getVisibleRowContext(e);return n==null?void 0:n.ancestorRows[t]??(t===n.ancestorRows.length&&n.row.kind===`directory`&&n.row.isExpanded?n:void 0)}#ne(e){let t=this.#a.get(e);if(t!=null)return t;let n=this.#u(e),r=n<0?[]:[...this.#ne(n),n];return this.#a.set(e,r),r}#re(e){let t=this.#o.get(e);if(t!=null)return t;let n=this.#ne(e).map(e=>this.#b[e]??``).filter(e=>e!==``);return this.#o.set(e,n),n}#ie(e){this.#H.collapse(e)}#ae(e,t=this.#z,n=!0){let r=[...new Set(e)],i=!zg(this.#B,r),a=this.#z!==t;!i&&!a||(this.#B=new Set(r),this.#z=t,i&&(this.#V+=1),n&&this.#De())}#oe(e){return{collapse:()=>{this.#ie(e)},deselect:()=>{this.deselectPath(e)},expand:()=>{this.#ke(e)},focus:()=>{this.focusPath(e)},getPath:()=>e,isDirectory:()=>!0,isExpanded:()=>this.#H.isExpanded(e),isFocused:()=>this.#c===e,isSelected:()=>this.#B.has(e),select:()=>{this.selectPath(e)},toggleSelect:()=>{this.togglePathSelection(e)},toggle:()=>{this.#ze(e)}}}#se(e){return{deselect:()=>{this.deselectPath(e)},focus:()=>{this.focusPath(e)},getPath:()=>e,isDirectory:()=>!1,isFocused:()=>this.#c===e,isSelected:()=>this.#B.has(e),select:()=>{this.selectPath(e)},toggleSelect:()=>{this.togglePathSelection(e)}}}#ce(e){let t=this.#H.list();this.#le(t).batch(e)}#le(e,t,n){return new $h({...this.#e,paths:e,preparedInput:t??void 0,...n===void 0?{}:{initialExpandedPaths:n}})}#ue(){return this.#h??=this.#H.list(),this.#h}#de(){if(this.#m!=null)return this.#m;let e=new Set;for(let t of this.#ue()){e.add(t);for(let n of Bg(t))e.add(n)}return this.#m=[...e].sort(),this.#m}#fe(){return this.#g??=this.#ue().map(Wg),this.#g}#pe(){return this.#f??=this.#de().filter(e=>e.endsWith(`/`)),this.#f}#me(){return this.#p??=this.#pe().map(Wg),this.#p}#he(){this.#f=null,this.#p=null,this.#m=null,this.#h=null,this.#g=null}#ge(){return this.#pe().filter(e=>this.#H.isExpanded(e))}#_e(e){let t=new Set(this.#j??[]);if(e)for(let e of this.#B)for(let n of Bg(e))t.add(n);this.#ve(t)}#ve(e){this.#W=!0;try{for(let t of this.#pe()){let n=e.has(t),r=this.#H.isExpanded(t);n&&!r?this.#H.expand(t):!n&&r&&this.#H.collapse(t)}}finally{this.#W=!1}}#ye(){if(this.#M==null||this.#M.length===0){this.#k=[],this.#F=null,this.#I=null,this.#P=null,this.#G=this.#U;return}let e=this.#b;if(this.#k=e.filter(e=>this.#O.has(e)),this.#A!==`hide-non-matches`||this.#O.size===0){this.#F=null,this.#I=null,this.#P=null,this.#G=this.#U;return}let t=[],n=[],r=new Map;for(let[i,a]of e.entries())this.#N?.has(a)===!0&&(r.set(a,n.length),t.push(i),n.push(a));this.#F=t,this.#I=n,this.#P=r,this.#G=n.length}#be(){return this.#I??this.#b}#xe(e){return this.#I==null?this.#H.getVisibleIndex(e)??-1:this.#P?.get(e)??-1}#Se(e){return this.#F?.[e]??e}#Ce(e){return this.#P?.get(e)??this.#H.getVisibleIndex(e)??-1}#we(e){let t=this.#k;if(t.length===0)return;let n=this.#c,r=n==null?-1:t.indexOf(n),i=t[r<0?e>0?0:t.length-1:Math.min(t.length-1,Math.max(0,r+e))];i!=null&&this.focusPath(i)}#Te(e,t){let n=e==null?null:Jg(e),r=this.#M;if(r!==n){if(r==null&&n!=null&&(this.#j=this.#ge()),this.#M=n,n==null)this.#_e(!0),this.#j=null,this.#O.clear(),this.#N=null,this.#je(this.#c,!0);else if(n.length===0)this.#_e(!1),this.#O.clear(),this.#N=null,this.#je(this.#c,!0);else{let e=this.#Ee();this.#je(e,!0)}t&&(this.#y?.(this.#M),this.#De())}}#Ee(){if(this.#M==null||this.#M.length===0)return this.#O.clear(),this.#c;let e=this.#M,t=this.#ue(),n=this.#fe(),r=[],i=new Set,a=null;for(let o=0;o<t.length;o+=1){if(!n[o].includes(e))continue;let s=t[o];r.push(s),i.add(s),a??=s}let o=this.#pe(),s=this.#me();for(let t=0;t<o.length;t+=1){if(!s[t].includes(e))continue;let n=o[t];i.has(n)||(r.push(n),i.add(n),a??=n)}this.#O=i;let c=this.#A===`hide-non-matches`&&r.length>0?new Set:null;this.#N=c;let l=this.#A===`expand-matches`?new Set(this.#j??[]):new Set;for(let e of r){c?.add(e),e.endsWith(`/`)&&l.add(e);for(let t of Bg(e))l.add(t),c?.add(t)}return this.#ve(l),a??this.#c}#De(){for(let e of this.#t)e()}#Oe(e){this.#n.get(e.operation)?.forEach(t=>{t(e)}),this.#n.get(`*`)?.forEach(t=>{t(e)})}#ke(e){for(let t of Bg(e))this.#H.isExpanded(t)||this.#H.expand(t);this.#H.isExpanded(e)||this.#H.expand(e)}#Ae(e){let t=this.#G;if(t===0)return;let n=this.#s===-1?0:this.#s,r=Math.min(t-1,Math.max(0,n+e));(r!==n||this.#s===-1)&&(!this.#l&&this.#F==null&&r>=this.#b.length&&this.#Ie(),this.#Fe(r))}#je(e,t=!0){let n=this.#H.getVisibleCount();this.#U=n;let r=e_(this.#H.getVisibleTreeProjectionData(t?void 0:Math.min(n,Xg)),e,t?e=>this.#H.getVisibleIndex(e):void 0);this.#a.clear(),this.#o.clear(),this.#l=r.paths.length>=n,this.#u=r.getParentIndex,this.#b=r.paths,this.#x=r.posInSetByIndex,this.#S=r.setSizeByIndex,this.#ye(),this.#s=e==null?this.#be().length>0?0:-1:this.#Z(e),this.#c=this.#s<0?null:this.#Me(this.#s)}#Me(e){return this.#be()[e]??(this.#F==null?this.#H.getVisibleRowContext(e)?.row.path??null:null)}#Ne(e){return this.#H.getPathInfo(e)?.path??null}#Pe(e){if(e==null)return;let t=this.#Z(e);t>=0&&this.#Fe(t,!1)}#Fe(e,t=!0){let n=this.#Me(e);n!=null&&(this.#s!==e||this.#c!==n)&&(this.#s=e,this.#c=n,t&&this.#De())}#Ie(){this.#l||this.#je(this.#c,!0)}#Le(e){let t=Pg(this.#T,e);t==null&&this.#T!=null&&(this.#E=``),this.#T=t;let n=Pg(this.#c,e,!0),r=[...this.#B].map(t=>Pg(t,e)).filter(e=>e!=null).map(e=>this.#H.getPathInfo(e)?.path??null).filter(e=>e!=null),i=Pg(this.#z,e),a=i==null?null:this.#H.getPathInfo(i)?.path??null,o=[...new Set(r)];return zg(this.#B,o)||(this.#B=new Set(o),this.#V+=1),this.#z=a,n}#Re(){return this.#H.on(`*`,e=>{if(this.#W)return;e.canonicalChanged&&(this.#d.clear(),this.#he()),this.#i!=null&&jg(e)&&(this.#i=null);let t=jg(e)?this.#Le(e):this.#c,n=this.#M!=null&&this.#M.length>0?this.#Ee():this.#M===``?this.#c:t,r=this.#M!=null||e.operation!==`expand`&&e.operation!==`collapse`;this.#je(n,r),this.#De();let i=Rg(e);i!=null&&this.#Oe(i)})}#ze(e){if(this.#H.isExpanded(e)){this.#ie(e);return}this.#ke(e)}},n_=e=>{if(e==null||e.length===0)return`0`;let t=`${e.length}`;for(let n of e)t+=`\0${n.path}\0${n.status}`;return t};function r_(e){let t=e.endsWith(`/`),n=``,r=-1;for(let t=0;t<=e.length;t+=1){if(e[t]!==`/`&&t!==e.length){r===-1&&(r=t);continue}r!==-1&&(n!==``&&(n+=`/`),n+=e.slice(r,t),r=-1)}return n===``?null:{isDirectory:t,path:n}}function i_(e){let t=e.endsWith(`/`)?e.slice(0,-1):e;if(t.length===0)return[];let n=[],r=0;for(;;){let e=t.indexOf(`/`,r);if(e===-1)break;n.push(t.slice(0,e+1)),r=e+1}return n}function a_(e,t){return t?`${e}/`:e}function o_(e,t=null){let n=n_(e==null?void 0:[...e]);if(n===`0`)return null;if(t?.signature===n)return t;let r=new Map,i=new Set,a=new Set,o=new Map;for(let t of e??[]){let e=c_(t);e!=null&&d_({canonicalPath:e.canonicalPath,changeCountByDirectoryPath:o,directoriesWithChanges:i,ignoredDirectoryPaths:a,isDirectory:e.isDirectory,status:t.status,statusByPath:r})}return r.size===0?null:{changeCountByDirectoryPath:o,directoriesWithChanges:i,ignoredDirectoryPaths:a,signature:n,statusByPath:r}}function s_(e,t){let n=t?.remove??[],r=t?.set??[];if(n.length===0&&r.length===0)return e;let i=new Map(e?.statusByPath),a=new Set(e?.directoriesWithChanges),o=new Set(e?.ignoredDirectoryPaths),s=new Map(e?.changeCountByDirectoryPath),c=!1;for(let e of n){let t=l_(e);t!=null&&(c=u_({canonicalPath:t.canonicalPath,changeCountByDirectoryPath:s,directoriesWithChanges:a,ignoredDirectoryPaths:o,statusByPath:i})||c)}for(let e of r){let t=c_(e);t!=null&&(c=d_({canonicalPath:t.canonicalPath,changeCountByDirectoryPath:s,directoriesWithChanges:a,ignoredDirectoryPaths:o,isDirectory:t.isDirectory,status:e.status,statusByPath:i})||c)}return c?i.size===0?null:{changeCountByDirectoryPath:s,directoriesWithChanges:a,ignoredDirectoryPaths:o,signature:m_(i),statusByPath:i}:e}function c_(e){return l_(e.path)}function l_(e){let t=r_(e);if(t!=null)return{canonicalPath:a_(t.path,t.isDirectory),isDirectory:t.isDirectory}}function u_({canonicalPath:e,changeCountByDirectoryPath:t,directoriesWithChanges:n,ignoredDirectoryPaths:r,statusByPath:i}){let a=i.get(e);return a!=null&&(i.delete(e),a===`ignored`&&e.endsWith(`/`)&&r.delete(e),p_(t,n,e),!0)}function d_({canonicalPath:e,changeCountByDirectoryPath:t,directoriesWithChanges:n,ignoredDirectoryPaths:r,isDirectory:i,status:a,statusByPath:o}){let s=o.get(e);return s!==a&&(s??f_(t,n,e),o.set(e,a),a===`ignored`&&i?r.add(e):i&&r.delete(e),!0)}function f_(e,t,n){for(let r of i_(n))e.set(r,(e.get(r)??0)+1),t.add(r)}function p_(e,t,n){for(let r of i_(n)){let n=(e.get(r)??0)-1;n>0?e.set(r,n):(e.delete(r),t.delete(r))}}function m_(e){let t=`${e.size}`;for(let[n,r]of e)t+=`\0${n}\0${r}`;return t}var K,h_,g_,__,v_,y_,b_,x_,S_,C_,w_={},T_=[],E_=Array.isArray,D_=T_.slice,O_=Object.assign;function k_(e){e&&e.parentNode&&e.remove()}function A_(e,t,n){var r,i,a,o={};for(a in t)a==`key`?r=t[a]:a==`ref`&&typeof e!=`function`?i=t[a]:o[a]=t[a];return arguments.length>2&&(o.children=arguments.length>3?D_.call(arguments,2):n),j_(e,o,r,i,null)}function j_(e,t,n,r,i){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++h_,__i:-1,__u:0};return i==null&&K.vnode!=null&&K.vnode(a),a}function M_(e){return e.children}function N_(e,t){this.props=e,this.context=t,this.__g=0}function P_(e,t){if(t==null)return e.__?P_(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type==`function`?P_(e):null}function F_(e){var t,n;if((e=e.__)!=null&&e.__c!=null){for(e.__e=null,t=0;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null){e.__e=n.__e;break}return F_(e)}}function I_(e){(8&e.__g||!(e.__g|=8)||!g_.push(e)||v_++)&&__==K.debounceRendering||((__=K.debounceRendering)||queueMicrotask)(L_)}function L_(){for(var e,t,n,r,i,a,o,s,c=1;g_.length;)g_.length>c&&g_.sort(y_),e=g_.shift(),c=g_.length,8&e.__g&&(n=void 0,i=(r=(t=e).__v).__e,a=[],o=[],(s=t.__P)&&((n=O_({},r)).__v=r.__v+1,K.vnode&&K.vnode(n),G_(s,n,r,t.__n,s.namespaceURI,32&r.__u?[i]:null,a,i??P_(r),!!(32&r.__u),o,s.ownerDocument),n.__v=r.__v,n.__.__k[n.__i]=n,q_(a,n,o),n.__e!=i&&F_(n)));v_=0}function R_(e,t,n,r,i,a,o,s,c,l,u,d){var f,p,m,h,g,_,v,y=r&&r.__k||T_,b=t.length;for(c=z_(n,t,y,c,b),f=0;f<b;f++)(m=n.__k[f])!=null&&(p=m.__i==-1?w_:y[m.__i]||w_,m.__i=f,_=G_(e,m,p,i,a,o,s,c,l,u,d),h=m.__e,m.ref&&p.ref!=m.ref&&(p.ref&&X_(p.ref,null,m),u.push(m.ref,m.__c||h,m)),g==null&&h!=null&&(g=h),(v=!!(4&m.__u))||p.__k===m.__k?c=B_(m,c,e,v):typeof m.type==`function`&&_!==void 0?c=_:h&&(c=h.nextSibling),m.__u&=-7);return n.__e=g,c}function z_(e,t,n,r,i){var a,o,s,c,l,u=n.length,d=u,f=0;for(e.__k=Array(i),a=0;a<i;a++)(o=t[a])!=null&&typeof o!=`boolean`&&typeof o!=`function`?(c=a+f,(o=e.__k[a]=typeof o==`string`||typeof o==`number`||typeof o==`bigint`||o.constructor==String?j_(null,o,null,null,null):E_(o)?j_(M_,{children:o},null,null,null):o.constructor==null&&o.__b>0?j_(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):o).__=e,o.__b=e.__b+1,s=null,(l=o.__i=V_(o,n,c,d))!=-1&&(d--,(s=n[l])&&(s.__u|=2)),s==null||s.__v==null?(l==-1&&(i>u?f--:i<u&&f++),typeof o.type!=`function`&&(o.__u|=4)):l!=c&&(l==c-1?f--:l==c+1?f++:(l>c?f--:f++,o.__u|=4))):e.__k[a]=null;if(d)for(a=0;a<u;a++)(s=n[a])!=null&&!(2&s.__u)&&(s.__e==r&&(r=P_(s)),Z_(s,s));return r}function B_(e,t,n,r){var i,a;if(typeof e.type==`function`){for(i=e.__k,a=0;i&&a<i.length;a++)i[a]&&(i[a].__=e,t=B_(i[a],t,n,r));return t}e.__e!=t&&(r&&(t&&e.type&&!t.parentNode&&(t=P_(e)),n.insertBefore(e.__e,t||null)),t=e.__e);do t&&=t.nextSibling;while(t!=null&&t.nodeType==8);return t}function V_(e,t,n,r){var i,a,o,s=e.key,c=e.type,l=t[n],u=l!=null&&!(2&l.__u);if(l===null&&e.key==null||u&&s==l.key&&c==l.type)return n;if(r>+!!u){for(i=n-1,a=n+1;i>=0||a<t.length;)if((l=t[o=i>=0?i--:a++])!=null&&!(2&l.__u)&&s==l.key&&c==l.type)return o}return-1}function H_(e,t,n){t[0]==`-`?e.setProperty(t,n??``):e[t]=n??``}function U_(e,t,n,r,i){var a;n:if(t==`style`){if(typeof n==`string`)e.style.cssText=n;else{if(typeof r==`string`&&(e.style.cssText=r=``),r)for(t in r)n&&t in n||H_(e.style,t,``);if(n)for(t in n)r&&n[t]==r[t]||H_(e.style,t,n[t])}}else if(t[0]==`o`&&t[1]==`n`)a=t!=(t=t.replace(b_,`$1`)),(t=t.slice(2))[0].toLowerCase()!=t[0]&&(t=t.toLowerCase()),e.__l||={},e.__l[t+a]=n,n?r?n.l=r.l:(n.l=x_,e.addEventListener(t,a?C_:S_,a)):e.removeEventListener(t,a?C_:S_,a);else{if(i==`http://www.w3.org/2000/svg`)t=t.replace(/xlink(H|:h)/,`h`).replace(/sName$/,`s`);else if(t!=`width`&&t!=`height`&&t!=`href`&&t!=`list`&&t!=`form`&&t!=`tabIndex`&&t!=`download`&&t!=`rowSpan`&&t!=`colSpan`&&t!=`role`&&t!=`popover`&&t in e)try{e[t]=n??``;break n}catch{}typeof n==`function`||(n==null||!1===n&&t[4]!=`-`?e.removeAttribute(t):e.setAttribute(t,t==`popover`&&n==1?``:n))}}function W_(e){return function(t){if(this.__l){var n=this.__l[t.type+e];if(t.u==null)t.u=x_++;else if(t.u<n.l)return;return n(K.event?K.event(t):t)}}}function G_(e,t,n,r,i,a,o,s,c,l,u){var d,f,p,m,h,g,_,v,y,b,x,S,C,w,ee,T,te,ne,re,ie,ae,E=t.type;if(t.constructor!=null)return null;128&n.__u&&(c=!!(32&n.__u),n.__c.__z&&(s=t.__e=n.__e=(a=n.__c.__z)[0],n.__c.__z=null)),(d=K.__b)&&d(t);n:if(typeof E==`function`)try{if(v=t.props,y=`prototype`in E&&E.prototype.render,b=(d=E.contextType)&&r[d.__c],x=d?b?b.props.value:d.__:r,n.__c?2&(f=t.__c=n.__c).__g&&(f.__g|=1,_=!0):(y?t.__c=f=new E(v,x):(t.__c=f=new N_(v,x),f.constructor=E,f.render=Q_),b&&b.sub(f),f.props=v,f.state||(f.state={}),f.context=x,f.__n=r,p=!0,f.__g|=8,f.__h=[],f._sb=[]),y&&f.__s==null&&(f.__s=f.state),y&&E.getDerivedStateFromProps!=null&&(f.__s==f.state&&(f.__s=O_({},f.__s)),O_(f.__s,E.getDerivedStateFromProps(v,f.__s))),m=f.props,h=f.state,f.__v=t,p)y&&E.getDerivedStateFromProps==null&&f.componentWillMount!=null&&f.componentWillMount(),y&&f.componentDidMount!=null&&f.__h.push(f.componentDidMount);else{if(y&&E.getDerivedStateFromProps==null&&v!==m&&f.componentWillReceiveProps!=null&&f.componentWillReceiveProps(v,x),!(4&f.__g)&&f.shouldComponentUpdate!=null&&!1===f.shouldComponentUpdate(v,f.__s,x)||t.__v==n.__v){for(t.__v!=n.__v&&(f.props=v,f.state=f.__s,f.__g&=-9),t.__e=n.__e,t.__k=n.__k,t.__k.some(function(e){e&&(e.__=t)}),S=0;S<f._sb.length;S++)f.__h.push(f._sb[S]);f._sb=[],f.__h.length&&o.push(f);break n}f.componentWillUpdate!=null&&f.componentWillUpdate(v,f.__s,x),y&&f.componentDidUpdate!=null&&f.__h.push(function(){f.componentDidUpdate(m,h,g)})}if(f.context=x,f.props=v,f.__P=e,f.__g&=-5,C=K.__r,w=0,y){for(f.state=f.__s,f.__g&=-9,C&&C(t),d=f.render(f.props,f.state,f.context),ee=0;ee<f._sb.length;ee++)f.__h.push(f._sb[ee]);f._sb=[]}else do f.__g&=-9,C&&C(t),d=f.render(f.props,f.state,f.context),f.state=f.__s;while(8&f.__g&&++w<25);f.state=f.__s,f.getChildContext!=null&&(r=O_({},r,f.getChildContext())),y&&!p&&f.getSnapshotBeforeUpdate!=null&&(g=f.getSnapshotBeforeUpdate(m,h)),T=d,d!=null&&d.type===M_&&d.key==null&&(T=J_(d.props.children)),s=R_(e,E_(T)?T:[T],t,n,r,i,a,o,s,c,l,u),t.__u&=-161,f.__h.length&&o.push(f),_&&(f.__g&=-4)}catch(e){if(t.__v=null,c||a!=null){if(e.then){for(te=0,ne=!1,t.__u|=c?160:128,t.__c.__z=[],re=0;re<a.length;re++)(ie=a[re])==null||ne||(ie.nodeType==8&&ie.data==`$s`?(te>0&&t.__c.__z.push(ie),te++,a[re]=null):ie.nodeType==8&&ie.data==`/$s`?(--te>0&&t.__c.__z.push(ie),ne=te===0,s=a[re],a[re]=null):te>0&&(t.__c.__z.push(ie),a[re]=null));if(!ne){for(;s&&s.nodeType==8&&s.nextSibling;)s=s.nextSibling;a[a.indexOf(s)]=null,t.__c.__z=[s]}t.__e=s}else{for(ae=a.length;ae--;)k_(a[ae]);K_(t)}}else t.__e=n.__e,t.__k=n.__k,e.then||K_(t);K.__e(e,t,n)}else s=t.__e=Y_(n.__e,t,n,r,i,a,o,c,l,u);return(d=K.diffed)&&d(t),128&t.__u?void 0:s}function K_(e){e&&e.__c&&(e.__c.__g|=4),e&&e.__k&&e.__k.forEach(K_)}function q_(e,t,n){for(var r=0;r<n.length;r++)X_(n[r],n[++r],n[++r]);K.__c&&K.__c(t,e),e.some(function(t){try{e=t.__h,t.__h=[],e.some(function(e){e.call(t)})}catch(e){K.__e(e,t.__v)}})}function J_(e){return typeof e!=`object`||!e||e.__b&&e.__b>0?e:E_(e)?e.map(J_):O_({},e)}function Y_(e,t,n,r,i,a,o,s,c,l){var u,d,f,p,m,h,g,_,v=n.props,y=t.props,b=t.type;if(b==`svg`?i=`http://www.w3.org/2000/svg`:b==`math`?i=`http://www.w3.org/1998/Math/MathML`:i||=`http://www.w3.org/1999/xhtml`,a!=null){for(u=0;u<a.length;u++)if((m=a[u])&&`setAttribute`in m==!!b&&(b?m.localName==b:m.nodeType==3)){e=m,a[u]=null;break}}if(e==null){if(b==null)return l.createTextNode(y);e=l.createElementNS(i,b,y.is&&y),s&&=(K.__m&&K.__m(t,a),!1),a=null}if(b==null)v===y||s&&e.data==y||(e.data=y);else{if(a&&=D_.call(e.childNodes),v=n.props||w_,!s&&a!=null)for(v={},u=0;u<e.attributes.length;u++)v[(m=e.attributes[u]).name]=m.value;for(u in v)if(m=v[u],u!=`children`){if(u==`dangerouslySetInnerHTML`)f=m;else if(!(u in y)){if(u==`value`&&`defaultValue`in y||u==`checked`&&`defaultChecked`in y)continue;U_(e,u,null,m,i)}}for(u in _=1&n.__u,y)m=y[u],u==`children`?p=m:u==`dangerouslySetInnerHTML`?d=m:u==`value`?h=m:u==`checked`?g=m:s&&typeof m!=`function`||v[u]===m&&!_||U_(e,u,m,v[u],i);if(d)s||f&&(d.__html==f.__html||d.__html==e.innerHTML)||(e.innerHTML=d.__html),t.__k=[];else if(f&&(e.innerHTML=``),R_(b==`template`?e.content:e,E_(p)?p:[p],t,n,r,b==`foreignObject`?`http://www.w3.org/1999/xhtml`:i,a,o,a?a[0]:n.__k&&P_(n,0),s,c,l),a!=null)for(u=a.length;u--;)k_(a[u]);s||(u=`value`,b==`progress`&&h==null?e.removeAttribute(`value`):h==null||h===e[u]&&(b!==`progress`||h)||U_(e,u,h,v[u],i),u=`checked`,g!=null&&g!=e[u]&&U_(e,u,g,v[u],i))}return e}function X_(e,t,n){try{if(typeof e==`function`){var r=typeof e.__u==`function`;r&&e.__u(),r&&t==null||(e.__u=e(t))}else e.current=t}catch(e){K.__e(e,n)}}function Z_(e,t,n){var r,i;if(K.unmount&&K.unmount(e),(r=e.ref)&&(r.current&&r.current!=e.__e||X_(r,null,t)),(r=e.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(e){K.__e(e,t)}r.__P=null}if(r=e.__k)for(i=0;i<r.length;i++)r[i]&&Z_(r[i],t,n||typeof e.type!=`function`);n||k_(e.__e),e.__e&&e.__e.__l&&(e.__e.__l=null),e.__e=e.__c=e.__=null}function Q_(e,t,n){return this.constructor(e,n)}function $_(e,t){var n,r,i,a;t==document&&(t=document.documentElement),K.__&&K.__(e,t),r=(n=!!(e&&32&e.__u))?null:t.__k,e=t.__k=A_(M_,null,[e]),i=[],a=[],G_(t,e,r||w_,w_,t.namespaceURI,r?null:t.firstChild?D_.call(t.childNodes):null,i,r?r.__e:t.firstChild,n,a,t.ownerDocument),q_(i,e,a)}function ev(e,t){e.__u|=32,$_(e,t)}K={__e:function(e,t,n,r){for(var i,a,o;t=t.__;)if((i=t.__c)&&!(1&i.__g)){i.__g|=4;try{if((a=i.constructor)&&a.getDerivedStateFromError!=null&&(i.setState(a.getDerivedStateFromError(e)),o=8&i.__g),i.componentDidCatch!=null&&(i.componentDidCatch(e,r||{}),o=8&i.__g),o)return void(i.__g|=2)}catch(t){e=t}}throw v_=0,e}},h_=0,N_.prototype.setState=function(e,t){var n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=O_({},this.state);typeof e==`function`&&(e=e(O_({},n),this.props)),e&&O_(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),I_(this))},N_.prototype.forceUpdate=function(e){this.__v&&(this.__g|=4,e&&this.__h.push(e),I_(this))},N_.prototype.render=M_,g_=[],v_=0,y_=function(e,t){return e.__v.__b-t.__v.__b},b_=/(PointerCapture)$|Capture$/i,x_=0,S_=W_(!1),C_=W_(!0);var tv=0;Array.isArray;function q(e,t,n,r,i,a){t||={};var o,s,c=t;if(`ref`in c&&typeof e!=`function`)for(s in c={},t)s==`ref`?o=t[s]:c[s]=t[s];var l={type:e,props:c,key:n,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--tv,__i:-1,__u:0,__source:i,__self:a};return K.vnode&&K.vnode(l),l}var nv=16,rv=16,iv={};function av({name:e,remappedFrom:t,token:n,width:r,height:i,viewBox:a,label:o,alignCapitals:s=!1}){"use no memo";let c=`#${e.replace(/^#/,``)}`,{width:l,height:u,viewBox:d}=iv[e]??{width:nv,height:rv},f=r??l,p=i??u,m=a??d??`0 0 ${l} ${u}`;return q(`svg`,{"data-icon-name":t??e,"data-icon-token":n,"data-align-capitals":s,...o==null?{"aria-hidden":!0}:{"aria-label":o,role:`img`},viewBox:m,width:f,height:p,children:q(`use`,{href:c})})}var ov=e=>e!==void 0&&/\s/.test(e),sv=(e,t)=>{let n=t=>ov(e[t-1])||ov(e[t]);if(!n(t))return t;for(let r=1;r<e.length;r++){let i=t-r;if(i>0&&!n(i))return i;let a=t+r;if(a<e.length&&!n(a))return a}return t},cv=e=>sv(e,Math.ceil(e.length/2)),lv=e=>{if(e.length<2)return[e,``];let t=cv(e);return[e.slice(0,t),e.slice(t)]},uv=e=>{if(e.length<4)return[e,``];let t=e.lastIndexOf(`.`)+1,n=e.length-t>10,r=t>=1&&!n?t:cv(e);return[e.slice(0,r),e.slice(r)]},dv=e=>{if(e.length<4)return[e,``];let t=e.lastIndexOf(`/`)+1,n=e.length-t>25,r=t>=1&&!n?t:Math.ceil(e.length/2);return[e.slice(0,r),e.slice(r)]},fv=(e,{splitIndex:t}={})=>{if(typeof t!=`number`){let t=Math.ceil(e.length/2);return[e.slice(0,t),e.slice(t)]}return[e.slice(0,t),e.slice(t)]},pv=(e,{splitOffset:t}={})=>{if(typeof t!=`number`||t<=0||t>=e.length){let t=Math.ceil(e.length/2);return[e.slice(0,t),e.slice(t)]}let n=e.length-t;return[e.slice(0,n),e.slice(n)]},mv=(e,{splitOffset:t}={})=>{if(typeof t!=`number`||t<=0||t>=e.length){let t=Math.ceil(e.length/2);return[e.slice(0,t),e.slice(t)]}let n=t;return[e.slice(0,n),e.slice(n)]};function hv({children:e,marker:t,variant:n=`default`}){"use no memo";return q(`div`,{"aria-hidden":!0,"data-truncate-marker-cell":!0,children:q(`div`,{"data-truncate-marker":!0,children:typeof t==`function`?t({children:e}):n===`fade`?q(`span`,{"data-truncate-fade":!0}):t})})}function gv(e){"use no memo";let{mode:t,children:n}=e;return q(`div`,{children:[q(`div`,{"data-truncate-content":`visible`,children:t===`fruncate`?q(`span`,{children:n}):n}),q(`div`,{"data-truncate-content":`overflow`,"aria-hidden":!0,children:t===`fruncate`?q(`span`,{children:n}):n})]})}function _v({children:e,mode:t=`truncate`,marker:n=`…`,variant:r=`default`,...i}){"use no memo";let a=q(gv,{mode:t,children:e},`content`),o=q(hv,{marker:n,mode:t,variant:r},`marker`),s=q(`div`,{"data-truncate-fill":!0},`fill`);return q(`div`,{"data-truncate-container":t,"data-truncate-variant":r,...i,children:q(`div`,{"data-truncate-grid":!0,children:t===`truncate`?[a,o]:[o,a,s]})})}function vv({children:e,...t}){"use no memo";return q(_v,{mode:`truncate`,...t,children:e})}function yv({children:e,...t}){"use no memo";return q(_v,{mode:`fruncate`,...t,children:e})}function bv({children:e,contents:t,priority:n=`end`,split:r=`center`,minimumLength:i=12,className:a,style:o,...s}){"use no memo";let c=null,l=null;if(Array.isArray(t)){if(t.length!==2)return console.error(`MiddleTruncate: contents must be an array of two items`),null;c=q(vv,{...s,children:t[0]}),l=q(yv,{...s,children:t[1]})}else{if(typeof e!=`string`)return console.error(`MiddleTruncate: children must be a string`),null;if(e.length===0)return q(`div`,{className:a,style:o});if(e.length<i)return q(n===`end`?yv:vv,{...s,className:a,style:o,children:e});let t=null,u=null,d=null;if(typeof r==`string`)r===`center`?t=lv:r===`extension`?t=uv:r===`leaf-path`&&(t=dv);else if(typeof r==`number`)t=fv,u=r;else if(Array.isArray(r)){let[e,n]=r;d=n,e===`last`?t=pv:e===`first`&&(t=mv)}else typeof r==`function`&&(t=r);t??=lv;let[f,p]=t(e,{priority:n,variant:s.variant,splitIndex:typeof u==`number`?u:void 0,splitOffset:typeof d==`number`?d:void 0}),m=f.length>=p.length,h=n===`equal`&&!m,g=n===`equal`&&m,_={},v={};h&&(_.marker=``),g&&(v.marker=``),c=q(vv,{...s,..._,children:f}),l=q(yv,{...s,...v,children:p})}return q(`div`,{"data-truncate-group-container":`middle`,className:a,style:o,children:[q(`div`,{"data-truncate-segment-priority":n===`start`||n===`equal`?`1`:`2`,children:c}),q(`div`,{"data-truncate-segment-priority":n===`end`||n===`equal`?`1`:`2`,children:l})]})}var xv={endIndex:-1,startIndex:-1};function Sv(e,t,n){return Math.min(Math.max(e,t),n)}function Cv(e,t){return e<0||t<e?xv:{endIndex:t,startIndex:e}}function wv(e){return e.startIndex<0||e.endIndex<e.startIndex}function Tv(e,t){return wv(e)?0:(e.endIndex-e.startIndex+1)*t}function Ev(e,t,n){if(t<=0)return-1;let r=t*n;return e<=0?0:e>=r?t:Math.floor(e/n)}function Dv(e,t,n){return t<=0||e<=0?-1:e>=t*n?t-1:Math.ceil(e/n)-1}function Ov(e){let t=new Map;return e.forEach((e,n)=>{if(e.kind!==`directory`||!e.isExpanded)return;let r=e.ancestorPaths.length,i=t.get(r);if(i==null){t.set(r,[n]);return}i.push(n)}),t}function kv(e,t){let n=0,r=e.length-1,i=-1;for(;n<=r;){let a=Math.floor((n+r)/2),o=e[a];if(o==null)break;if(o<=t){i=a,n=a+1;continue}r=a-1}return i}function Av(e){let t=new Map,n=[];for(let r=0;r<e.length;r+=1){let i=e[r];if(i==null)continue;let a=i.kind===`directory`&&i.isExpanded?[...i.ancestorPaths,i.path]:i.ancestorPaths,o=0;for(;o<n.length&&o<a.length&&n[o]===a[o];)o+=1;for(let e=n.length-1;e>=o;--e){let i=n[e];i!=null&&t.set(i,r-1)}n.length=o;for(let e=o;e<a.length;e+=1){let t=a[e];t!=null&&n.push(t)}}let r=e.length-1;for(let e of n)t.set(e,r);return t}function jv(e,t,n){if(e.length===0||t<=0)return[];let r=Av(e),i=Ov(e),a=[];for(let r=0;r<e.length;r+=1){let o=i.get(r);if(o==null||o.length===0)break;let s=t+r*n,c=kv(o,Math.min(e.length-1,Math.floor(s/n))),l=null;for(;c>=0;){let t=o[c],n=t==null?null:e[t]??null;if(n!=null&&(r===0||n.ancestorPaths[r-1]===a[r-1]?.path)){l=n;break}--c}if(l==null)break;a.push(l)}return a.map((i,a)=>{let o=a*n,s=(r.get(i.path)??e.length-1)+1;if(s>=e.length)return{row:i,top:o};let c=s*n-t;return{row:i,top:Math.min(o,c-n)}}).filter(e=>e.top+n>0)}function Mv(e,t){let n=t.totalRowCount??e.length,r=n*t.itemHeight,i=Math.max(0,t.viewportHeight),a=Math.max(0,Math.floor(t.overscan)),o=Math.max(0,r-i),s=Sv(t.scrollTop,0,o),c=t.stickyRows??jv(e,s,t.itemHeight),l=c.reduce((e,n)=>Math.max(e,n.top+t.itemHeight),0),u=Math.min(r,s+l),d=Math.max(0,i-l),f=Math.max(0,r-u),p=Ev(s,n,t.itemHeight),m=Ev(u,n,t.itemHeight),h=l<=0||p<0||p>=n?-1:p,g=h===-1?-1:Math.min(n-1,m-1),_=h===-1||g<h?0:g-h+1,v=d<=0||m>=n?xv:Cv(m,Dv(u+d,n,t.itemHeight)),y=g+1,b=wv(v)?xv:Cv(Math.max(y,v.startIndex-a),Math.min(n-1,v.endIndex+a)),x=Tv(b,t.itemHeight);return{occlusion:{firstOccludedIndex:h,lastOccludedIndex:g,occludedCount:_},physical:{itemHeight:t.itemHeight,maxScrollTop:o,overscan:a,scrollTop:s,totalHeight:r,totalRowCount:n,viewportHeight:i},projected:{contentHeight:f,paneHeight:d,paneTop:u},sticky:{height:l,rows:c},visible:v,window:{endIndex:b.endIndex,height:x,offsetTop:wv(b)?0:b.startIndex*t.itemHeight,startIndex:b.startIndex}}}var Nv={added:`A`,deleted:`D`,ignored:null,modified:`M`,renamed:`R`,untracked:`U`},Pv={added:`Git status: added`,deleted:`Git status: deleted`,ignored:`Git status: ignored`,modified:`Git status: modified`,renamed:`Git status: renamed`,untracked:`Git status: untracked`},Fv=`Contains git status items`;function Iv(e){return e.current?!0:(e.current=!0,!1)}function Lv(e){let{currentScrollTop:t,focusedIndex:n,itemHeight:r,topInset:i=0,viewportHeight:a}=e;if(n<0)return null;let o=Math.max(0,i),s=n*r,c=s+r;if(s<t+o){let e=Math.max(0,s-o);return e===t?null:e}if(c>t+a){let e=c-a;return e===t?null:e}return null}function Rv(e){let{currentScrollTop:t,focusedIndex:n,itemHeight:r,offset:i,topInset:a=0,totalHeight:o,viewportHeight:s}=e;if(i===`nearest`)return Lv({currentScrollTop:t,focusedIndex:n,itemHeight:r,topInset:a,viewportHeight:s});if(n<0)return null;let c=Math.max(0,a),l=n*r,u=Math.max(0,s-c),d=i===`center`?c+Math.max(0,(u-r)/2):c,f=Math.max(0,o-s),p=Math.max(0,Math.min(l-d,f));return p===t?null:p}function zv(e){let{currentScrollTop:t,focusedIndex:n,itemHeight:r,targetViewportOffset:i,totalHeight:a,viewportHeight:o}=e;if(n<0)return null;let s=Math.max(0,i),c=n*r,l=c+r,u=t+s,d=t+o;if(c>=u&&l<=d)return null;let f=Math.max(0,a-o),p=Math.max(0,Math.min(c-s,f));return p===t?null:p}function Bv(e){if(e==null||!e.isConnected||e===document.body||e===document.documentElement)return!1;e.focus({preventScroll:!0});let t=e.getRootNode();return t instanceof ShadowRoot?t.activeElement===e:document.activeElement===e}function Vv(e){let t=e.getRootNode();if(t instanceof ShadowRoot){let e=t.activeElement;return e instanceof HTMLElement?e:null}let n=document.activeElement;return n instanceof HTMLElement&&e.contains(n)?n:null}function Hv(e,t){if(e==null)return t;let n=e.getBoundingClientRect().height;return n>0?n:e.clientHeight>0?e.clientHeight:t}function Uv(e,t){return e!=null&&e>0?e:t}function Wv(e){let t=e.borderBoxSize,n=Array.isArray(t)?t[0]:t;return n!=null&&Number.isFinite(n.blockSize)&&n.blockSize>0?n.blockSize:e.contentRect.height>0?e.contentRect.height:null}function Gv(e,t,n,r,i=0){let a=Lv({currentScrollTop:e.scrollTop,focusedIndex:t,itemHeight:n,topInset:i,viewportHeight:r});return a!=null&&(e.scrollTop=a,!0)}function Kv(e,t,n,r,i,a,o=0){let s=Rv({currentScrollTop:e.scrollTop,focusedIndex:t,itemHeight:n,offset:a,topInset:o,totalHeight:i,viewportHeight:r});return s!=null&&(e.scrollTop=s,!0)}function qv(e,t,n,r,i,a){let o=zv({currentScrollTop:e.scrollTop,focusedIndex:t,itemHeight:n,targetViewportOffset:a,totalHeight:i,viewportHeight:r});return o!=null&&(e.scrollTop=o,!0)}function Jv(e,t,n,r){return n.end<n.start?null:e<n.start?-t:e>n.end?r:null}function Yv(e){let{renamingPath:t,previousRenamingPath:n,hasRenderedInput:r}=e;return t==null?`reset`:r?n===t?`ignore`:`focus-input`:`reveal-canonical`}function Xv({ariaLabel:e,isFlattened:t=!1,ref:n,value:r,onBlur:i,onInput:a}){return q(`input`,{ref:n,"data-item-rename-input":!0,...t?{"data-item-flattened-rename-input":!0}:{},"aria-label":e,value:r,onBlur:i,onInput:a,onClick:e=>e.stopPropagation(),onMouseDown:e=>e.stopPropagation(),onPointerDown:e=>e.stopPropagation()})}function Zv(e){let{row:t,mode:n,targetPath:r,ariaLabel:i,domId:a,isParked:o,itemHeight:s,features:c,state:l,extraStyle:u}=e,d=n===`sticky`,f=t.ancestorPaths.at(-1)??``,p={};return l.isFocusRinged&&(p[`data-item-focused`]=!0),t.isSelected&&(p[`data-item-selected`]=!0),l.isContextHovered&&(p[`data-item-context-hover`]=`true`),l.isDragTarget&&(p[`data-item-drag-target`]=!0),l.isDragging&&(p[`data-item-dragging`]=!0),l.effectiveGitStatus!=null&&(p[`data-item-git-status`]=l.effectiveGitStatus),l.containsGitChange&&(p[`data-item-contains-git-change`]=`true`),{"aria-expanded":!d&&t.kind===`directory`?t.isExpanded:void 0,"aria-haspopup":c.contextMenuEnabled?`menu`:void 0,"aria-label":i,"aria-level":d?void 0:t.level+1,"aria-posinset":d?void 0:t.posInSet+1,"aria-selected":d?void 0:t.isSelected?`true`:`false`,"aria-setsize":d?void 0:t.setSize,"data-file-tree-sticky-path":d?r:void 0,"data-file-tree-sticky-row":d?`true`:void 0,"data-item-context-menu-button-visibility":c.actionLaneEnabled?c.contextMenuButtonVisibility:void 0,"data-item-context-menu-trigger-mode":c.contextMenuEnabled?c.contextMenuTriggerMode:void 0,"data-item-has-context-menu-action-lane":c.actionLaneEnabled?`true`:void 0,"data-item-has-git-lane":c.gitLaneActive?`true`:void 0,"data-item-parent-path":f.length>0?f:void 0,"data-item-parked":o?`true`:void 0,"data-item-path":r,"data-item-type":t.kind===`directory`?`folder`:`file`,"data-type":`item`,id:d?void 0:a,role:d?void 0:`treeitem`,style:{minHeight:`${s}px`,...u},tabIndex:!d&&t.isFocused?0:-1,...p}}function Qv(e){let{event:t,mode:n,isSearchOpen:r,isDirectory:i}=e,a=t.ctrlKey||t.metaKey,o=t.shiftKey||a,s=t.shiftKey?{additive:a,kind:`range`}:a?{kind:`toggle`}:{kind:`single`};return{closeSearch:r,revealCanonical:n===`sticky`,selection:s,toggleDirectory:!o&&i}}var $v,ey,ty,ny,ry=Object.is,iy=0,ay=[],oy=K,sy=oy.__b,cy=oy.__r,ly=oy.diffed,uy=oy.__c,dy=oy.unmount,fy=oy.__;function py(e,t){oy.__h&&oy.__h(ey,e,iy||t),iy=0;var n=ey.__H||(ey.__H={__:[],__h:[]});return e>=n.__.length&&n.__.push({}),n.__[e]}function my(e){return iy=1,hy(Ey,e)}function hy(e,t,n){var r=py($v++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):Ey(void 0,t),function(e){var t=r.__N?r.__N[0]:r.__[0],n=r.t(t,e);ry(t,n)||(r.__N=[n,r.__[1]],r.__c.setState({}))}],r.__c=ey,!ey.__f)){var i=function(e,t,n){if(!r.__c.__H)return!0;var i=r.__c.__H.__.filter(function(e){return!!e.__c});if(i.every(function(e){return!e.__N}))return!a||a.call(this,e,t,n);var o=r.__c.props!==e;return i.forEach(function(e){if(e.__N){var t=e.__[0];e.__=e.__N,e.__N=void 0,ry(t,e.__[0])||(o=!0)}}),a&&a.call(this,e,t,n)||o};ey.__f=!0;var a=ey.shouldComponentUpdate,o=ey.componentWillUpdate;ey.componentWillUpdate=function(e,t,n){if(4&this.__g){var r=a;a=void 0,i(e,t,n),a=r}o&&o.call(this,e,t,n)},ey.shouldComponentUpdate=i}return r.__N||r.__}function gy(e,t){var n=py($v++,3);!oy.__s&&Ty(n.__H,t)&&(n.__=e,n.u=t,ey.__H.__h.push(n))}function _y(e,t){var n=py($v++,4);!oy.__s&&Ty(n.__H,t)&&(n.__=e,n.u=t,ey.__h.push(n))}function J(e){return iy=5,vy(function(){return{current:e}},[])}function vy(e,t){var n=py($v++,7);return Ty(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function yy(e,t){return iy=8,vy(function(){return e},t)}function by(){for(var e;e=ay.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Cy),e.__H.__h.forEach(wy),e.__H.__h=[]}catch(t){e.__H.__h=[],oy.__e(t,e.__v)}}oy.__b=function(e){ey=null,sy&&sy(e)},oy.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),fy&&fy(e,t)},oy.__r=function(e){cy&&cy(e),$v=0;var t=(ey=e.__c).__H;t&&(ty===ey?(t.__h=[],ey.__h=[],t.__.forEach(function(e){e.__N&&(e.__=e.__N),e.u=e.__N=void 0})):(t.__h.forEach(Cy),t.__h.forEach(wy),t.__h=[],$v=0)),ty=ey},oy.diffed=function(e){ly&&ly(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(ay.push(t)!==1&&ny===oy.requestAnimationFrame||((ny=oy.requestAnimationFrame)||Sy)(by)),t.__H.__.forEach(function(e){e.u&&(e.__H=e.u),e.u=void 0})),ty=ey=null},oy.__c=function(e,t){t.some(function(e){try{e.__h.forEach(Cy),e.__h=e.__h.filter(function(e){return!e.__||wy(e)})}catch(n){t.some(function(e){e.__h&&=[]}),t=[],oy.__e(n,e.__v)}}),uy&&uy(e,t)},oy.unmount=function(e){dy&&dy(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(e){try{Cy(e)}catch(e){t=e}}),n.__H=void 0,t&&oy.__e(t,n.__v))};var xy=typeof requestAnimationFrame==`function`;function Sy(e){var t,n=function(){clearTimeout(r),xy&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,35);xy&&(t=requestAnimationFrame(n))}function Cy(e){var t=ey,n=e.__c;typeof n==`function`&&(e.__c=void 0,n()),ey=t}function wy(e){var t=ey;e.__c=e.__(),ey=t}function Ty(e,t){return!e||e.length!==t.length||t.some(function(t,n){return!ry(t,e[n])})}function Ey(e,t){return typeof t==`function`?t(e):t}function Dy(e,t=null,n=null){"use no memo";let r=e.flattenedSegments;return r==null||r.length===0?t??e.name:q(`span`,{"data-item-flattened-subitems":!0,children:r.map((e,i)=>{let a=i===r.length-1;return q(M_,{children:[q(`span`,{"data-item-flattened-subitem":e.path,"data-item-flattened-subitem-drag-target":n===e.path?`true`:void 0,children:a&&t!=null?t:q(vv,{children:e.name})}),i<r.length-1?` / `:``]},e.path)})})}function Oy(e){return e.isFlattened?e.flattenedSegments?.findLast(e=>e.isTerminal)?.path??e.path:e.path}function ky(e){let t=e.flattenedSegments;return t==null||t.length===0?e.name:t.map(e=>e.name).join(` / `)}function Ay(e,t,n,r){return e.map((e,i)=>{let a=i*n,o=e.subtreeEndIndex+1;if(o>=r)return{row:e.row,top:a};let s=o*n-t;return{row:e.row,top:Math.min(a,s-n)}}).filter(e=>e.top+n>0)}function jy({controller:e,itemHeight:t,overscan:n,scrollTop:r,stickyFolders:i,viewportHeight:a}){let o=e.getVisibleCount(),s=i&&o>0?e.getStickyRowCandidates(r,t):[],c=s==null&&i&&o>0?e.getVisibleRows(0,o-1):[],l=Mv(c,{itemHeight:t,overscan:n,scrollTop:r,stickyRows:s==null?void 0:Ay(s,r,t,o),totalRowCount:o,viewportHeight:a}),u=i&&r<=0&&o>0?e.getStickyRowCandidates(1,t):[],d=u!=null&&r<=0?Ay(u,1,t,o):i&&r<=0&&c.length>0?jv(c,1,t):l.sticky.rows;return{overlayHeight:d.reduce((e,n)=>Math.max(e,n.top+t),0),overlayRows:d,snapshot:l,visibleRows:c}}var My=400,Ny=40,Py=18;function Fy(e,t,n){let r=e,i=document.elementFromPoint?.bind(document)??null,a=r.elementFromPoint?.(t,n)??i?.(t,n)??null;return e instanceof ShadowRoot&&(a==null||!e.contains(a))?Iy(e,t,n):a instanceof HTMLElement?a:null}function Iy(e,t,n){let r=Array.from(e.querySelectorAll(`[data-type="item"], [data-item-flattened-subitem]`));for(let e=r.length-1;e>=0;e--){let i=r[e],a=i.getBoundingClientRect();if(t>=a.left&&t<=a.right&&n>=a.top&&n<=a.bottom)return i}return null}function Ly(e){let t=e?.closest?.(`[data-type="item"]`);if(!(t instanceof HTMLElement))return null;let n=t.dataset.itemPath??null;if(n==null)return null;let r=e?.closest?.(`[data-item-flattened-subitem]`),i=r instanceof HTMLElement?r.getAttribute(`data-item-flattened-subitem`)??null:null;if(i!=null&&i.endsWith(`/`))return{directoryPath:i,flattenedSegmentPath:i,hoveredPath:n,kind:`directory`};if(t.dataset.itemType===`folder`)return{directoryPath:n,flattenedSegmentPath:null,hoveredPath:n,kind:`directory`};let a=t.dataset.itemParentPath??null;return a==null||a.length===0?{directoryPath:null,flattenedSegmentPath:null,hoveredPath:n,kind:`root`}:{directoryPath:a,flattenedSegmentPath:null,hoveredPath:n,kind:`directory`}}function Ry(e){let t=e.cloneNode(!0);return t.removeAttribute(`id`),t.dataset.fileTreeDragPreview=`true`,t.setAttribute(`aria-hidden`,`true`),t.tabIndex=-1,Object.assign(t.style,{boxShadow:`0 4px 12px rgba(0, 0, 0, 0.15)`,left:`0px`,margin:`0`,pointerEvents:`none`,position:`fixed`,top:`0px`,willChange:`transform`,zIndex:`10000`}),t}function zy(){return navigator.vendor!==`Apple Computer, Inc.`}function By(e,t){let n=e-t.top;if(n<Ny)return-Math.ceil((Ny-Math.max(0,n))/Ny*Py);let r=t.bottom-e;return r<Ny?Math.ceil((Ny-Math.max(0,r))/Ny*Py):0}function Vy(e,t){if(e!=null){let t=Nv[e];return t==null?null:{text:t,title:Pv[e]}}return t?{icon:{name:`file-tree-icon-dot`,width:6,height:6},title:Fv}:null}function Hy(e,t,n){if(t==null||t.size===0)return null;let r=[];for(let i=e.length-1;i>=0;--i){let a=e[i],o=n.get(a);if(o!=null){for(let e of r)n.set(e,o);return o?`ignored`:null}if(t.has(a)){n.set(a,!0);for(let e of r)n.set(e,!0);return`ignored`}r.push(a)}for(let e of r)n.set(e,!1);return null}function Uy(e){return e!=null&&`toggle`in e}function Wy(e){return e.code===`Space`||e.key===` `||e.key===`Spacebar`}function Gy(e){return e.key.length===1&&/^[\p{L}\p{N}]$/u.test(e.key)&&!e.ctrlKey&&!e.metaKey&&!e.altKey}function Ky(e){return e==null?``:`[data-item-section="spacing-item"][data-ancestor-path="${e.replaceAll(`\\`,`\\\\`).replaceAll(`"`,`\\"`)}"] { opacity: 1; }`}function qy(e){return e.shiftKey&&e.key===`F10`||e.key===`ContextMenu`}function Jy(e,t){return t&&qy(e)||(e.ctrlKey||e.metaKey)&&Wy(e)?!0:e.key===`ArrowDown`||e.key===`ArrowLeft`||e.key===`ArrowRight`||e.key===`ArrowUp`}var Yy=new Set([`ArrowDown`,`ArrowLeft`,`ArrowRight`,`ArrowUp`,`End`,`Home`,`PageDown`,`PageUp`]);function Xy(e){for(let t of e.composedPath())if(t instanceof HTMLElement&&(t.dataset.fileTreeContextMenuRoot===`true`||t.dataset.type===`context-menu-anchor`||t.dataset.type===`context-menu-trigger`||t.getAttribute(`slot`)===`context-menu`))return!0;return!1}function Zy(e){return{bottom:e.bottom,height:e.height,left:e.left,right:e.right,top:e.top,width:e.width,x:e.x,y:e.y}}function Qy(e,t){return{bottom:t,height:0,left:e,right:e,top:t,width:0,x:e,y:t}}function $y(e,t){if(e==null)return t.offsetTop;let n=t.getBoundingClientRect(),r=e.getBoundingClientRect();return n.top-r.top}function eb(e,t,n){if(n==null){e.delete(t);return}e.set(t,n)}function tb(e,t,n){if(e==null)return null;let r=t.get(e)??null;if(r!=null)return r;let i=n.get(e)??null;return i?.dataset.itemParked===`true`?null:i}function nb(e){if(e==null)return[];let t=[];for(let n of e.querySelectorAll(`button[data-file-tree-sticky-row="true"]`)){if(!(n instanceof HTMLElement))continue;let e=n.dataset.fileTreeStickyPath;e!=null&&t.push(e)}return t}function rb(e,t){if(e==null||t==null)return null;for(let n of e.querySelectorAll(`button[data-item-focused="true"][data-item-parked="true"]`))if(n instanceof HTMLElement&&n.dataset.itemPath===t)return n;return null}function ib(e,t,n,r,i,a,o){let s=Math.max(0,a-i),c=t?.getBoundingClientRect()??null,l=c==null||n==null?null:n.getBoundingClientRect().top-c.top,u=rb(e,r),d=c==null||u==null?null:u.getBoundingClientRect().top-c.top;return Math.max(0,Math.min(d??Math.max(l??0,s),Math.max(0,o-i)))}function ab(e,t){return{kind:e.kind,name:ky(e),path:t}}function ob(e){return e==null?void 0:`${e}__tree`}function sb(e,t,n){if(e!=null)return`${e}__focused-item-${encodeURIComponent(t)}${n?`__parked`:``}`}function cb(e){return e===`file-tree-icon-chevron`||e===`file-tree-icon-dot`||e===`file-tree-icon-file`||e===`file-tree-icon-lock`}function lb(e,t){if(e==null)return null;if(`text`in e)return e.parts==null?q(`span`,{title:e.title,children:e.text}):q(`span`,{title:e.title,children:e.parts.map((e,t)=>q(`span`,{style:{color:e.color},children:e.text},t))});let n=typeof e.icon==`string`?cb(e.icon)?t(e.icon):{name:e.icon}:cb(e.icon.name)?(()=>{let n=t(e.icon.name),{name:r,...i}=e.icon;return{...n,...i}})():e.icon;return q(`span`,{title:e.title,children:q(av,{...n})})}function ub(e){e!=null&&Bv(e.querySelector([`button:not([disabled])`,`[href]`,`input:not([disabled])`,`select:not([disabled])`,`textarea:not([disabled])`,`[tabindex]:not([tabindex="-1"])`].join(`, `))??e)}function db(e,t,{actionLaneEnabled:n=!1,customDecoration:r=null,decorationLaneEnabled:i=!1,dragTargetFlattenedSegmentPath:a=null,gitDecoration:o=null,gitLaneActive:s=!1,renameInput:c=null,showDecorativeActionAffordance:l=!1}={}){let u=Oy(e);return q(M_,{children:[e.depth>0?q(`div`,{"data-item-section":`spacing`,children:Array.from({length:e.depth}).map((t,n)=>q(`div`,{"data-item-section":`spacing-item`,"data-ancestor-path":e.ancestorPaths[n]},n))}):null,q(`div`,{"data-item-section":`icon`,children:e.kind===`directory`?q(av,{...t(`file-tree-icon-chevron`)}):q(av,{...t(`file-tree-icon-file`,u)})}),q(`div`,{"data-item-section":`content`,children:e.isFlattened?Dy(e,c,a):c??q(bv,{minimumLength:5,split:`extension`,children:e.name})}),i?q(`div`,{"data-item-section":`decoration`,children:r==null?null:lb(r,t)}):null,s?q(`div`,{"data-item-section":`git`,children:lb(o,t)}):null,n?q(`div`,{"data-item-section":`action`,children:l?q(`span`,{"aria-hidden":`true`,"data-item-action-affordance":`decorative`,children:q(av,{...t(`file-tree-icon-ellipsis`)})}):null}):null]})}function fb(e,t,n,r={}){let{controller:i,renameView:a,visualFocusPath:o,contextHoverPath:s,draggedPathSet:c,dragTarget:l,dragAndDropEnabled:u,shouldSuppressContextMenu:d,handleRowDragStart:f,handleRowDragEnd:p,handleRowTouchStart:m,instanceId:h,itemHeight:g,gitStatusByPath:_,ignoredGitDirectories:v,ignoredInheritanceCache:y,directoriesWithGitChanges:b,gitLaneActive:x,contextMenuEnabled:S,contextMenuTriggerMode:C,contextMenuButtonTriggerEnabled:w,contextMenuButtonVisibility:ee,contextMenuRightClickEnabled:T,registerRenameInput:te,registerButton:ne,resolveIcon:re,renderDecorationForRow:ie,openContextMenuForRow:ae,onRowClick:E,onKeyDown:oe}=e,D=Oy(t),{isParked:se=!1,mode:ce=`flow`,style:le}=r,ue=ce===`sticky`,O=_?.get(D)??null??Hy(t.ancestorPaths,v,y),de=t.kind===`directory`&&(b?.has(D)??!1),fe=ie(t,D),pe=Vy(O,de),me=S&&w,he=fe!=null||x||me,ge=me&&ee===`always`,_e=a.getPath()===D,k=_e?a.getValue():``,ve=ue||!_e?null:q(Xv,{ref:te,ariaLabel:`Rename ${ky(t)}`,isFlattened:t.isFlattened,value:k,onBlur:()=>{a.commit()},onInput:e=>{a.setValue(e.currentTarget.value)}}),A=db(t,re,{actionLaneEnabled:me,customDecoration:fe,decorationLaneEnabled:he,dragTargetFlattenedSegmentPath:l?.flattenedSegmentPath??null,gitDecoration:pe,gitLaneActive:x,renameInput:ve,showDecorativeActionAffordance:ge}),ye={...Zv({ariaLabel:ky(t),domId:t.isFocused?sb(h,D,se):void 0,extraStyle:le,features:{actionLaneEnabled:me,contextMenuButtonVisibility:me?ee:null,contextMenuEnabled:S,contextMenuTriggerMode:S?C:null,gitLaneActive:x},isParked:se,itemHeight:g,mode:ce,row:t,state:{containsGitChange:de,effectiveGitStatus:O,isContextHovered:s===D,isDragTarget:l?.kind===`directory`&&l.directoryPath===D,isDragging:c?.has(D)===!0,isFocusRinged:t.isFocused&&o===D},targetPath:D}),key:n,onContextMenu:S||u?e=>{if(d()){e.preventDefault();return}S&&(e.preventDefault(),T&&(i.focusMountedPathFromInput(D),ae(t,D,{anchorRect:Qy(e.clientX,e.clientY),source:`right-click`})))}:void 0,onFocus:ue?void 0:()=>{i.focusMountedPathFromInput(D)},onKeyDown:ue?void 0:oe,ref:e=>{ne(D,e)}};return!ue&&_e?q(`div`,{...ye,children:A}):q(`button`,{...ye,type:`button`,draggable:u&&!se,onDragEnd:u&&!se?p:void 0,onDragStart:u&&!se?e=>{f(e,t,D)}:void 0,onMouseDown:e=>{if(ue){e.preventDefault();return}i.isSearchOpen()&&e.preventDefault()},onTouchStart:u&&!se?e=>{m(e,t,D)}:void 0,onClick:e=>{E(e,t,D,ce)},children:A})}function pb(e,t,n){return t.end<t.start?[]:e.controller.getVisibleRows(t.start,t.end).filter(e=>!n.has(Oy(e))).map((n,r)=>fb(e,n,t.start+r))}function mb({composition:e,controller:t,gitStatusByPath:n,ignoredGitDirectories:r,directoriesWithGitChanges:i,icons:a,instanceId:o,itemHeight:s=ig,overscan:c=10,renamingEnabled:l=!1,renderRowDecoration:u,searchBlurBehavior:d=`close`,searchEnabled:f=!1,searchFakeFocus:p=!1,slotHost:m,stickyFolders:h=!1,initialViewportHeight:g=420}){"use no memo";let _=J(null),v=J(null),y=J(!1),b=J(null),x=J(null),S=J(null),C=J(null),w=J(null),ee=J(new Map),T=J(new Map),te=J(()=>{}),ne=J(null),re=J(0),ie=J(!1),ae=J(null);ae.current!==t&&(ie.current=!1,ae.current=t);let E=J(!1),oe=J(null),D=J(null),se=J(!1),ce=J(null),le=J(null),ue=J(null),O=J(null),de=J(null),fe=J(null),pe=J(null),me=J(null),he=J(!1),ge=J(null),_e=J(null),k=J(null),ve=J(null),A=vy(()=>new Map,[]),[,ye]=my(0),j=J(!1),[be,xe]=my(null),[Se,Ce]=my(null),[we,Te]=my(null),[Ee,De]=my(null),[Oe,ke]=my(0),[M,Ae]=my(null),je=J(M);je.current=M;let Me=J(null),Ne=J(null),Pe=J(null),Fe=J(null),Ie=J(null),Le=J(!1),Re=()=>{Ne.current=null,Pe.current=null,Fe.current=null},ze=(e,t)=>{Ne.current=e,Pe.current=null,Fe.current=t==null?null:{path:e,scrollTop:t}},Be=(e,t)=>{Ne.current=null,Pe.current={path:e,viewportOffset:t},Fe.current=null},Ve=J(d===`retain`&&t.isSearchOpen()),[He,Ue]=my(p);gy(()=>{p||Ue(!1)},[p]);let We=J(!1),Ge=yy(()=>{We.current=!0,Ue(e=>e&&!1)},[]),[Ke,qe]=my(()=>jy({controller:t,itemHeight:s,overscan:c,scrollTop:0,stickyFolders:h,viewportHeight:g})),[Je,Ye]=my(!1);gy(()=>{Ye(!0)},[]);let Xe=e?.contextMenu?.enabled===!0||e?.contextMenu?.render!=null||e?.contextMenu?.onOpen!=null||e?.contextMenu?.onClose!=null,Ze=e?.contextMenu?.triggerMode??(Xe?`right-click`:`both`),Qe=Ze===`both`||Ze===`button`,$e=e?.contextMenu?.buttonVisibility??`when-needed`,et=Ze===`both`||Ze===`right-click`;_y(()=>{let e=S.current;if(e==null)return;let t=e=>{if(!(e instanceof CustomEvent))return;let t=e.detail?.path??null;Ie.current=t,Ce(t),De(t==null?null:`pointer`)},n=e=>{e instanceof CustomEvent&&(Le.current=e.detail?.disabled===!0)};return e.addEventListener(`file-tree-debug-set-context-menu-trigger`,t),e.addEventListener(`file-tree-debug-set-scroll-suppression`,n),()=>{e.removeEventListener(`file-tree-debug-set-context-menu-trigger`,t),e.removeEventListener(`file-tree-debug-set-scroll-suppression`,n)}},[]);let tt=yy((e,t)=>{eb(ee.current,e,t)},[]),nt=yy((e,t)=>{eb(T.current,e,t)},[]),rt=yy(e=>{x.current=e},[]),it=yy(e=>tb(e,T.current,ee.current),[]),at=n!=null||r!=null||i!=null,{resolveIcon:ot}=vy(()=>Sf(a),[a]),st=t[Yg](),ct=st.getPath(),N=ct!=null,P=t.isSearchOpen(),F=t.getSearchValue(),I=t.getFocusedPath(),L=t.getFocusedIndex(),lt=t.getScrollRequest(),ut=t.isDragAndDropEnabled(),dt=t.getDragSession(),ft=vy(()=>dt==null?null:new Set(dt.draggedPaths),[dt]),pt=dt?.target??null,mt=dt?.primaryPath??null,ht=ob(o),{overlayHeight:gt,overlayRows:_t,snapshot:R,visibleRows:vt}=Ke,yt=R.physical.viewportHeight,bt=vy(()=>({end:R.window.endIndex,start:R.window.startIndex}),[R.window.endIndex,R.window.startIndex]),xt=_t,St=R.sticky.rows,Ct=R.physical.totalHeight,wt=R.sticky.height,Tt=vy(()=>new Set(St.map(e=>Oy(e.row))),[St]),Et=L>=0&&L>=bt.start&&L<=bt.end,Dt=yy((e,t)=>u?.({item:ab(e,t),row:e})??null,[u]),Ot=yy(e=>Bv(e==null?null:ee.current.get(e)??null)?!0:Bv(S.current),[]),kt=yy(e=>{Ot(t.focusNearestPath(e))},[t,Ot]),At=J(kt);At.current=kt;let jt=J(!0),Mt=J(()=>{}),Nt=yy((t=!0)=>{let n=je.current;n!=null&&(jt.current=jt.current&&t,Ae(null),e?.contextMenu?.onClose?.(),jt.current&&kt(n.path))},[e?.contextMenu,kt]);Mt.current=Nt;let Pt=yy(e=>{let t=e==null?null:$y(S.current,e);Te(e=>e===t?e:t)},[]),Ft=yy((e,n,r)=>{let i=t.getItem(n);if(i==null)return;let a=it(n);if(a?.dataset.fileTreeStickyRow===`true`){let e=C.current;ze(n,e?.scrollTop??null),E.current=!0,xe(e=>e===n?e:n)}i.focus(),Pt(a),jt.current=!0,Ae({anchorRect:r?.anchorRect??null,item:ab(e,n),path:n,source:r?.source??`keyboard`})},[t,it,Pt]),It=yy(e=>{if(l){if(t.isSearchOpen()){let e=C.current,t=Hv(e,yt);ce.current=L<0||e==null?null:Math.max(0,Math.min(L*s-e.scrollTop,Math.max(0,t-s))),se.current=!0}t.startRenaming(e)!==!1&&(De(`focus`),ye(e=>e+1))}},[t,L,s,l,yt]),Lt=yy((e,{restoreTreeFocus:n=!0,targetOffset:r=`live-overlay`}={})=>{let i=C.current;if(i==null)return!1;t.focusPath(e);let a=t.getFocusedIndex();if(a<0)return!1;let o=t.getVisibleRows(a,a)[0]??null;if(o==null)return!1;let l=Hv(i,yt),u=t.getVisibleCount()*s,d=r===`sticky-parents`?o.ancestorPaths.length*s:jy({controller:t,itemHeight:s,overscan:c,scrollTop:i.scrollTop,stickyFolders:h,viewportHeight:l}).snapshot.sticky.height;return E.current=!0,qv(i,a,s,l,u,d),te.current(),Me.current=n?e:null,!0},[t,s,c,yt,h]),Rt=()=>y.current===!0||ve.current!=null||he.current===!0,zt=e=>typeof window.requestAnimationFrame==`function`?window.requestAnimationFrame(()=>{e()}):window.setTimeout(e,16),Bt=e=>{if(e!=null){if(typeof window.cancelAnimationFrame==`function`){window.cancelAnimationFrame(e);return}window.clearTimeout(e)}},Vt=()=>{O.current!=null&&(clearTimeout(O.current),O.current=null),ue.current=null},Ht=()=>{fe.current?.remove(),fe.current=null},Ut=()=>{Bt(le.current),le.current=null,de.current=null},Wt=e=>{let t=S.current?.getRootNode();if(t instanceof ShadowRoot){t.append(e);return}document.body.append(e)},Gt=()=>{me.current?.(),me.current=null,ve.current!=null&&(clearTimeout(ve.current),ve.current=null),he.current=!1,ge.current=null,k.current=null,_e.current!=null&&(_e.current.setAttribute(`draggable`,`true`),_e.current.style.removeProperty(`touch-action`),_e.current=null),Ht(),Vt(),Ut(),pe.current=null},Kt=(e,n)=>{let r=S.current?.getRootNode(),i=Ly(Fy(r instanceof ShadowRoot?r:document,e,n));return t.setDragTarget(i),t.getDragSession()?.target??null},qt=e=>{let n=t.getDragAndDropConfig()?.openOnDropDelay??800;if(e==null||e.kind!==`directory`||e.directoryPath==null||n<=0){Vt();return}let r=t.getItem(e.directoryPath),i=Uy(r)?r:null;if(i==null||i.isExpanded()){Vt();return}let a=`${e.directoryPath}::${e.flattenedSegmentPath??``}`;ue.current!==a&&(Vt(),ue.current=a,O.current=setTimeout(()=>{let n=t.getDragSession()?.target;n?.kind===`directory`&&n.directoryPath===e.directoryPath&&n.flattenedSegmentPath===e.flattenedSegmentPath&&i.expand()},n))},Jt=()=>{le.current=null;let e=de.current,n=C.current;if(e==null||n==null||t.getDragSession()==null)return;let r=n.getBoundingClientRect(),i=By(e.clientY,r);if(i===0)return;let a=Math.max(0,n.scrollHeight-n.clientHeight),o=Math.max(0,Math.min(a,n.scrollTop+i));o!==n.scrollTop&&(n.scrollTop=o,te.current()),qt(Kt(e.clientX,e.clientY)),le.current=zt(Jt)},Yt=(e,t)=>{de.current={clientX:e,clientY:t},le.current??=zt(Jt)},Xt=(e,n,r)=>{let i=e.currentTarget;if(i!=null){if(Gt(),Ht(),Vt(),Ut(),t.startDrag(r)===!1){e.preventDefault();return}if(pe.current=n,e.dataTransfer!=null&&(e.dataTransfer.effectAllowed=`move`,e.dataTransfer.dropEffect=`move`,e.dataTransfer.setData(`text/plain`,r),zy())){let t=Ry(i),n=i.getBoundingClientRect();Object.assign(t.style,{height:`${n.height}px`,opacity:`0.85`,transform:`translate3d(-9999px, 0px, 0)`,width:`${n.width}px`}),Wt(t),fe.current=t,e.dataTransfer.setDragImage(t,Math.max(0,e.clientX-n.left),Math.max(0,e.clientY-n.top))}}},Zt=()=>{Ht(),Vt(),Ut(),pe.current=null,t.cancelDrag()},Qt=(e,n,r)=>{if(ve.current!=null||he.current)return;let i=e.touches[0],a=e.currentTarget;if(i==null||a==null)return;k.current={clientX:i.clientX,clientY:i.clientY},_e.current=a,a.setAttribute(`draggable`,`false`);let o=(e={})=>{let t=e.restoreNativeDraggable??!he.current;ve.current!=null&&(clearTimeout(ve.current),ve.current=null),document.removeEventListener(`touchmove`,s),document.removeEventListener(`touchend`,c),document.removeEventListener(`touchcancel`,c),me.current===o&&(me.current=null),t&&(a.setAttribute(`draggable`,`true`),_e.current===a&&(_e.current=null),k.current=null)},s=e=>{let t=e.touches[0],n=k.current;if(t==null||n==null)return;let r=t.clientX-n.clientX,i=t.clientY-n.clientY;r*r+i*i<=100||o()},c=()=>{o()};document.addEventListener(`touchmove`,s,{passive:!0}),document.addEventListener(`touchend`,c),document.addEventListener(`touchcancel`,c),me.current=o,ve.current=setTimeout(()=>{if(o({restoreNativeDraggable:!1}),t.startDrag(r)===!1){a.setAttribute(`draggable`,`true`),_e.current===a&&(_e.current=null),k.current=null;return}he.current=!0,_e.current=a,a.setAttribute(`draggable`,`false`),a.style.setProperty(`touch-action`,`none`),pe.current=n;let e=a.getBoundingClientRect(),s=Ry(a);Object.assign(s.style,{height:`${e.height}px`,opacity:`0.85`,transform:`translate3d(${e.left}px, ${e.top}px, 0)`,width:`${e.width}px`}),Wt(s),fe.current=s,ge.current={x:i.clientX-e.left,y:i.clientY-e.top};let c=e=>{let t=e.touches[0];if(t==null)return;e.preventDefault();let n=ge.current;n!=null&&fe.current!=null&&(fe.current.style.transform=`translate3d(${t.clientX-n.x}px, ${t.clientY-n.y}px, 0)`),qt(Kt(t.clientX,t.clientY)),Yt(t.clientX,t.clientY)},l=e=>{let n=e.changedTouches[0];n!=null&&Kt(n.clientX,n.clientY),t.completeDrag(),Gt()},u=()=>{t.cancelDrag(),Gt()};me.current=()=>{document.removeEventListener(`touchmove`,c),document.removeEventListener(`touchend`,l),document.removeEventListener(`touchcancel`,u)},document.addEventListener(`touchmove`,c,{passive:!1}),document.addEventListener(`touchend`,l),document.addEventListener(`touchcancel`,u)},My)},$t=e=>{if(M!=null){if(e.key===`Escape`){Nt(),e.preventDefault(),e.stopPropagation();return}Yy.has(e.key)&&(e.preventDefault(),e.stopPropagation());return}if(st.isActive()){if(e.isComposing||e.keyCode===229)return;if(e.key===`Escape`)st.cancel();else if(e.key===`Enter`)st.commit();else return;De(`focus`),ye(e=>e+1),e.preventDefault(),e.stopPropagation();return}if(l&&e.key===`F2`){It(I??void 0),e.preventDefault(),e.stopPropagation();return}if(P){if(e.key===`Escape`)se.current=!1,ce.current=null,t.closeSearch();else if(e.key===`Enter`){let e=t.getFocusedPath();e!=null&&t.selectOnlyPath(e);let n=C.current,r=Hv(n,yt);ce.current=L<0||n==null?null:Math.max(0,Math.min(L*s-n.scrollTop,Math.max(0,r-s))),se.current=!0,t.closeSearch()}else if(e.key===`ArrowDown`)t.focusNextSearchMatch();else if(e.key===`ArrowUp`)t.focusPreviousSearchMatch();else return;De(`focus`),ye(e=>e+1),e.preventDefault(),e.stopPropagation();return}if(f&&Gy(e)){t.openSearch(e.key),ye(e=>e+1),e.preventDefault(),e.stopPropagation();return}let n=Xe&&qy(e),r=Jy(e,Xe),i=r&&S.current!=null?Vv(S.current):null,a=r?new Set(nb(S.current)):new Set,o=i?.dataset.fileTreeStickyPath??null,c=i?.dataset.fileTreeStickyRow===`true`&&o!=null;if(c&&o!==I&&a.has(o)){let e=C.current;ze(o,e?.scrollTop??null),t.focusPath(o)}let u=t.getFocusedPath(),d=t.getFocusedIndex(),p=t.getFocusedItem();if(p==null)return;let m=Uy(p)?p:null,h=u!=null&&(Tt.has(u)||c&&o===u&&a.has(u)),g=e.key===`ArrowDown`||e.key===`ArrowUp`||e.key===`ArrowRight`&&m!=null&&m.isExpanded(),_=e.key===`ArrowLeft`&&h&&m!=null&&m.isExpanded(),v=C.current,y=!0;if(e.shiftKey&&e.key===`ArrowDown`)t.extendSelectionFromFocused(1);else if(e.shiftKey&&e.key===`ArrowUp`)t.extendSelectionFromFocused(-1);else if(n&&u!=null&&d>=0){let e=t.getVisibleRows(d,d)[0]??null,n=tb(u,T.current,ee.current);e==null||n==null?y=!1:Ft(e,u)}else if((e.ctrlKey||e.metaKey)&&Wy(e))t.toggleFocusedSelection();else if((e.ctrlKey||e.metaKey)&&e.key.toLowerCase()===`a`)t.selectAllVisiblePaths();else switch(e.key){case`ArrowDown`:t.focusNextItem();break;case`ArrowUp`:t.focusPreviousItem();break;case`ArrowRight`:m==null||m.isExpanded()?t.focusNextItem():m.expand();break;case`ArrowLeft`:m!=null&&m.isExpanded()?m.collapse():t.focusParentItem();break;case`Home`:t.focusFirstItem();break;case`End`:t.focusLastItem();break;default:y=!1}if(!y)return;De(`focus`);let b=t.getFocusedPath(),x=b!=null&&(Tt.has(b)||a.has(b)),w=g&&b!==u,te=n&&c&&o===u&&b===u;if((h||te)&&b!=null&&(w&&x||te))ze(b,v?.scrollTop??null),E.current=!0,xe(e=>e===b?e:b);else{let t=e.key===`ArrowUp`&&h&&b!==u;b!=null&&(t||_&&b===u)?(Be(b,ib(S.current,v,i,u,s,wt,yt)),E.current=!0,xe(e=>e===b?e:b)):Re()}ye(e=>e+1),e.preventDefault(),e.stopPropagation()};_y(()=>{if(!(!f||!P)){if(Ve.current){Ve.current=!1;return}Bv(w.current)}},[P,f]),_y(()=>{let e=x.current;switch(Yv({hasRenderedInput:e!=null,previousRenamingPath:D.current,renamingPath:ct})){case`reset`:D.current=null;return;case`reveal-canonical`:ct!=null&&Lt(ct,{restoreTreeFocus:!1,targetOffset:`live-overlay`});return;case`ignore`:return;case`focus-input`:e!=null&&(Me.current=null,D.current=ct,Bv(e),e.select());return}},[bt.end,bt.start,ct,Lt,Tt]),_y(()=>{let e=S.current;if(e==null)return;let t=null,n=()=>{t!=null&&(clearTimeout(t),t=null)},r=()=>{let t=Vv(e)?.dataset.itemPath??null;xe(e=>e===t?e:t)},i=()=>{n(),E.current=!0,r()},a=i=>{let a=i.relatedTarget;if(a==null){n(),t=setTimeout(()=>{if(t=null,Vv(e)!=null){r();return}E.current=!1,xe(null)},0);return}if(!(a instanceof Node)||!e.contains(a)){n(),E.current=!1,xe(null);return}let o=a instanceof HTMLElement?a.dataset.itemPath??null:null;xe(e=>e===o?e:o)};return e.addEventListener(`focusin`,i),e.addEventListener(`focusout`,a),()=>{n(),e.removeEventListener(`focusin`,i),e.removeEventListener(`focusout`,a)}},[]),_y(()=>{let e=S.current;e!=null&&(R.physical.scrollTop<=0?e.dataset.scrollAtTop=`true`:delete e.dataset.scrollAtTop)},[R.physical.scrollTop]),_y(()=>{let e=null,n=C.current,r=b.current,i=S.current;if(n==null)return;ne.current=Hv(n,g);let a=()=>{let e=t.getVisibleCount(),r=Uv(ne.current,g),i=Math.max(0,e*s-r);n.scrollTop>i&&(n.scrollTop=i),qe(jy({controller:t,itemHeight:s,overscan:c,scrollTop:Math.min(n.scrollTop,i),stickyFolders:h,viewportHeight:r}))};if(!ie.current){ie.current=!0;let e=t.getFocusedIndex();if(e>=0){let r=Uv(ne.current,g),i=t.getVisibleRows(e,e)[0]??null;Gv(n,e,s,r,h&&i!=null?Math.max(0,Math.min(i.ancestorPaths.length*s,Math.max(0,r-s))):0)}}te.current=a;let o=t.subscribe(()=>{Iv(j)&&ye(e=>e+1),a()}),l=()=>{Le.current!==!0&&(r!=null&&(r.dataset.isScrolling??=``),i!=null&&(i.dataset.isScrolling??=``),y.current=!0,e!=null&&clearTimeout(e),e=setTimeout(()=>{r!=null&&delete r.dataset.isScrolling,i!=null&&delete i.dataset.isScrolling,y.current=!1,ke(e=>e+1),e=null},50))},u=null,d=()=>{i!=null&&delete i.dataset.overlayReveal,u!=null&&(clearTimeout(u),u=null)},f=()=>{i!=null&&Le.current!==!0&&(n.scrollTop>0||(i.dataset.overlayReveal=`true`,u!=null&&clearTimeout(u),u=setTimeout(()=>{d()},200)))},p=()=>{if(a(),n.scrollTop>0&&d(),je.current!=null&&y.current&&Mt.current(),Le.current===!0){y.current=!1;return}Ce(e=>e==null?e:null),l()},m=()=>{l(),f()},_=new Set([`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`,`PageUp`,`PageDown`,`Home`,`End`,` `,`Spacebar`]),v=e=>{_.has(e.key)&&m()};n.addEventListener(`scroll`,p,{passive:!0}),n.addEventListener(`wheel`,m,{passive:!0}),n.addEventListener(`touchmove`,m,{passive:!0}),n.addEventListener(`keydown`,v);let x=typeof ResizeObserver<`u`?new ResizeObserver(e=>{ne.current=(e[0]==null?null:Wv(e[0]))??Hv(n,g),a()}):null;return x?.observe(n),()=>{te.current=()=>{},o(),n.removeEventListener(`scroll`,p),n.removeEventListener(`wheel`,m),n.removeEventListener(`touchmove`,m),n.removeEventListener(`keydown`,v),e!=null&&clearTimeout(e),u!=null&&clearTimeout(u),r!=null&&delete r.dataset.isScrolling,i!=null&&(delete i.dataset.isScrolling,delete i.dataset.overlayReveal),y.current=!1,ne.current=null,x?.disconnect()}},[t,g,s,c,h]),_y(()=>{Xe||M==null||Nt(!1)},[Nt,Xe,M]);let en=vy(()=>M==null?null:`${M.path}::${M.source}`,[M]);_y(()=>{if(en==null){m?.clearSlotContent(mf);return}let t=je.current;if(t==null)return;let n=v.current??_.current;if(n==null)return;let r={anchorElement:n,anchorRect:t.anchorRect??Zy(n.getBoundingClientRect()),close:e=>{Mt.current(e?.restoreFocus??!0)},restoreFocus:()=>{jt.current&&At.current(je.current?.path??null)}},i=e?.contextMenu?.render?.(t.item,r)??null;return m?.setSlotContent(mf,i),e?.contextMenu?.onOpen?.(t.item,r),ub(i),queueMicrotask(()=>{i==null||!i.isConnected||document.activeElement===i&&ub(i)}),()=>{m?.clearSlotContent(mf)}},[en,e?.contextMenu,m]),_y(()=>{M!=null&&t.getItem(M.path)==null&&Nt()},[Nt,M,t]),_y(()=>{if(M==null)return;let e=S.current?.getRootNode(),t=e instanceof ShadowRoot?e.host:S.current,n=e=>{let n=e.target;n instanceof Node&&(Xy(e)||_.current?.contains(n)!==!0&&t?.contains(n)!==!0&&Nt())},r=e=>{e.key===`Escape`&&(e.preventDefault(),e.stopPropagation(),Nt())};return document.addEventListener(`mousedown`,n,!0),document.addEventListener(`keydown`,r,!0),()=>{document.removeEventListener(`mousedown`,n,!0),document.removeEventListener(`keydown`,r,!0)}},[Nt,M]),_y(()=>{let e=C.current,n=S.current;if(e==null||n==null){oe.current=I;return}let r=I==null?null:ee.current.get(I)??null,i=Vv(n),a=i?.dataset.itemPath??null,o=N&&x.current===i,c=f&&w.current===i,l=se.current&&!P,u=ce.current??0,d=Me.current,p=Ne.current,m=Pe.current,g=Fe.current,_=i!=null,v=E.current||_,y=oe.current!==I,b=p!=null&&p===I&&I!=null,T=!1,ne=!1;if(lt!=null&<.id!==re.current){re.current=lt.id;let n=lt.visibleIndex,r=t.getVisibleRows(n,n)[0]??null;if(r!=null){let t=h?Math.max(0,Math.min(r.ancestorPaths.length*s,Math.max(0,yt-s))):wt;T=!0,ne=Kv(e,n,s,yt,Ct,lt.offset,t)}t.clearScrollRequest(lt.id)}let ie=!T&&l&&qv(e,L,s,yt,Ct,u),ae=!T&&d!=null&&d===I&&qv(e,L,s,yt,Ct,wt),D=!T&&m!=null&&m.path===I&&qv(e,L,s,yt,Ct,m.viewportOffset),le=!T&&g!=null&&g.path===I&&e.scrollTop!==g.scrollTop;if(le&&(e.scrollTop=g.scrollTop),(le||ne||ae||D||ie||v&&y&&d!==I&&!b&&Gv(e,L,s,yt,wt))&&te.current(),T){oe.current=I;return}if(!v){oe.current=I;return}if(o){oe.current=I;return}if(c&&!l){oe.current=I;return}if(r==null){l&&L>=0&&(qv(e,L,s,yt,Ct,u),te.current()),oe.current=I;return}(y||l||d===I||p===I||m?.path===I||g?.path===I||a==null||a!==I)&&(Bv(r),d===I&&(Me.current=null),p===I&&(Ne.current=null),m?.path===I&&(Pe.current=null),g?.path===I&&(Fe.current=null),se.current=!1,ce.current=null),oe.current=I},[t,L,I,Et,s,N,P,bt,yt,f,lt,h,wt,Ct,vt]);let tn=L>=0&&L>=R.visible.startIndex&&L<=R.visible.endIndex,nn=I!=null&&xt.some(e=>Oy(e.row)===I),rn=tn||nn,an=Qe&&E.current===!0&&rn?I:null,on=Ee===`pointer`?Se:null,sn=M?.path??Ie.current??on??an??Se,cn=M?.source===`right-click`;_y(()=>{y.current&&M==null||Pt(it(sn))},[M,it,bt,yt,Oe,xt,sn,Pt,vt]);let ln=yy(e=>{if(y.current||Xy(e))return;let t=e.target;if(!(t instanceof HTMLElement)||t.closest?.(`[data-type="context-menu-trigger"]`)!=null)return;let n=t.closest?.(`[data-file-tree-sticky-row="true"]`),r=t.closest?.(`[data-type="item"]`),i=n instanceof HTMLElement?n.dataset.fileTreeStickyPath??null:r instanceof HTMLElement?r.dataset.itemPath??null:null;i!=null&&De(e=>e===`pointer`?e:`pointer`),Ce(e=>e===i?e:i)},[]),un=yy(()=>{Ce(null)},[]);_y(()=>{if(!ut)return;let e=()=>{Gt(),t.cancelDrag()};return window.addEventListener(`dragend`,e),()=>{window.removeEventListener(`dragend`,e),Gt(),t.cancelDrag()}},[t,ut]);let dn=e=>{if(!ut||t.getDragSession()==null||he.current)return;let n=Ly(e.target instanceof HTMLElement?e.target:null);t.setDragTarget(n),qt(t.getDragSession()?.target??null),Yt(e.clientX,e.clientY),e.dataTransfer!=null&&(e.dataTransfer.dropEffect=`move`),e.preventDefault()},fn=e=>{if(!ut||t.getDragSession()==null||he.current)return;let n=e.relatedTarget;n instanceof Node&&S.current?.contains(n)===!0||(Vt(),Ut(),t.setDragTarget(null))},pn=e=>{!ut||t.getDragSession()==null||he.current||(e.preventDefault(),Kt(e.clientX,e.clientY),t.completeDrag(),Ht(),Vt(),Ut(),pe.current=null)},mn=R.window.height,hn=R.window.offsetTop,gn=Math.min(0,yt-mn),_n=Math.min(0,yt-mn-wt),vn=be===I||se.current,yn=I!=null&&vn&&!Et&&L>=0?vt[L]??t.getVisibleRows(L,L)[0]??null:null,bn=yn==null?null:Jv(L,s,bt,mn),xn=pe.current,Sn=mt!=null&&xn!=null&&xn.path===mt&&xn.index>=bt.start&&xn.index<=bt.end,Cn=mt!=null&&xn!=null&&xn.path===mt&&!Sn&&xn.path!==yn?.path?xn:null,wn=Cn==null?null:Jv(Cn.index,s,bt,mn),Tn=Ky((L>=0?vt[L]??t.getVisibleRows(L,L)[0]??null:null)?.ancestorPaths.at(-1)??null),En=P&&I!=null?sb(o,I,!Et):void 0,Dn=M?.path??(P?I:be),On=M?.path??Se,kn=it(sn),An=Xe&&Qe&&!cn&&!N&&kn!=null&&we!=null&&sn!=null,jn=Xe&&(An||M!=null),Mn=M?.anchorRect,Nn=Mn==null&&kn!=null&&we!=null&&(M!=null||An)?we:null,Pn=Mn==null?Nn==null?void 0:{top:`${Nn}px`}:{left:`${Mn.left}px`,position:`fixed`,right:`auto`,top:`${Mn.top}px`},Fn=cn?{opacity:`0`}:void 0,In=yy((e,n,r,i)=>{let a=Qv({event:{ctrlKey:e.ctrlKey,metaKey:e.metaKey,shiftKey:e.shiftKey},isDirectory:n.kind===`directory`,isSearchOpen:P,mode:i}),o=a.toggleDirectory&&n.kind===`directory`,s=o?t.resolveMountedDirectoryPathFromInput(r):null;if(o&&s==null)return;let c=s??r;switch(a.selection.kind){case`range`:t.selectPathRange(c,a.selection.additive);break;case`toggle`:t.togglePathSelectionFromInput(c);break;case`single`:t.selectOnlyMountedPathFromInput(c)}let l=e.currentTarget instanceof HTMLElement?e.currentTarget:null,u=n.index>=R.visible.startIndex&&n.index<=R.visible.endIndex,d=i===`flow`&&u&&l!=null&&l.dataset.itemParked!==`true`;t.focusMountedPathFromInput(c),d&&(E.current=!0,xe(e=>e===c?e:c),De(`focus`)),o&&t.toggleMountedDirectoryFromInput(c),a.closeSearch&&t.closeSearch(),a.revealCanonical&&Lt(c,{targetOffset:`sticky-parents`})},[t,P,R.visible.endIndex,R.visible.startIndex,Lt]),Ln=()=>{if(y.current||!Qe||sn==null||kn==null)return;let e=t.getItem(sn);e!=null&&(Pt(kn),jt.current=!0,Ae({anchorRect:null,item:{kind:e.isDirectory()?`directory`:`file`,name:kn.getAttribute(`aria-label`)??sn,path:e.getPath()},path:e.getPath(),source:`button`}))},Rn={contextHoverPath:On,contextMenuButtonTriggerEnabled:Qe,contextMenuButtonVisibility:$e,contextMenuEnabled:Xe,contextMenuRightClickEnabled:et,contextMenuTriggerMode:Ze,controller:t,directoriesWithGitChanges:i,dragAndDropEnabled:ut,draggedPathSet:ft,dragTarget:pt,gitLaneActive:at,gitStatusByPath:n,handleRowDragEnd:Zt,handleRowDragStart:Xt,handleRowTouchStart:Qt,ignoredGitDirectories:r,ignoredInheritanceCache:A,instanceId:o,itemHeight:s,onKeyDown:$t,onRowClick:In,openContextMenuForRow:Ft,registerButton:tt,registerRenameInput:rt,renameView:st,renderDecorationForRow:Dt,resolveIcon:ot,shouldSuppressContextMenu:Rt,visualFocusPath:Dn},zn={...Rn,registerButton:nt};return q(`div`,{ref:S,id:ht,"data-file-tree-context-menu-button-visibility":Xe&&Qe?$e:void 0,"data-file-tree-context-menu-trigger-mode":Xe?Ze:void 0,"data-file-tree-has-context-menu-action-lane":Xe&&Qe?`true`:void 0,"data-file-tree-has-git-lane":at?`true`:void 0,"data-file-tree-virtualized-root":`true`,onDragLeave:ut?fn:void 0,onDragOver:ut?dn:void 0,onDrop:ut?pn:void 0,onKeyDown:$t,onPointerLeave:Xe?un:void 0,onPointerOver:Xe?ln:void 0,role:`tree`,tabIndex:-1,style:{outline:`none`,position:`relative`},children:[q(`style`,{"data-file-tree-guide-style":`true`,dangerouslySetInnerHTML:{__html:Tn}}),q(`slot`,{name:pf,"data-type":`header-slot`}),f?q(`div`,{"data-file-tree-search-container":!0,"data-open":P?`true`:`false`,children:q(`input`,{ref:w,"aria-activedescendant":En,"aria-controls":ht,placeholder:`Search…`,"data-file-tree-search-input":!0,"data-file-tree-search-input-fake-focus":He?`true`:void 0,value:F,onBlur:()=>{d===`retain`&&!We.current||t.closeSearch()},onFocus:Ge,onPointerDown:Ge,onInput:e=>{Ge();let n=e.currentTarget;t.setSearch(n.value)}})}):null,q(`div`,{ref:C,"data-file-tree-virtualized-scroll":`true`,children:[h&&Je&&xt.length>0?q(`div`,{"aria-hidden":`true`,"data-file-tree-sticky-overlay":`true`,children:q(`div`,{"data-file-tree-sticky-overlay-content":`true`,style:{height:`${gt}px`},children:xt.map((e,t)=>fb(zn,e.row,`sticky:${Oy(e.row)}`,{mode:`sticky`,style:{left:`0`,position:`absolute`,right:`0`,top:`${e.top}px`,zIndex:`${xt.length-t}`}}))})}):null,q(`div`,{ref:b,"data-file-tree-virtualized-list":`true`,style:{height:`${Ct}px`},children:[q(`div`,{"data-file-tree-virtualized-sticky-offset":`true`,"aria-hidden":`true`,style:{height:`${hn}px`}}),q(`div`,{"data-file-tree-virtualized-sticky":`true`,style:{height:`${mn}px`,top:`${gn}px`,bottom:`${_n}px`},children:[pb(Rn,bt,Tt),yn!=null&&bn!=null?fb(Rn,yn,`parked:${yn.path}`,{isParked:!0,style:{left:`0`,opacity:`0`,pointerEvents:mt===yn.path?`none`:void 0,position:`absolute`,right:`0`,top:`${bn}px`}}):null,Cn!=null&&wn!=null?fb(Rn,Cn,`parked-drag:${Cn.path}`,{isParked:!0,style:{left:`0`,opacity:`0`,pointerEvents:`none`,position:`absolute`,right:`0`,top:`${wn}px`}}):null]})]})]}),Xe?q(`div`,{ref:_,"data-type":`context-menu-anchor`,"data-visible":jn?`true`:`false`,style:Pn,children:[q(`button`,{ref:v,type:`button`,"data-type":hf,"aria-label":`Options`,"aria-haspopup":`menu`,"aria-expanded":M==null?`false`:`true`,"data-visible":An?`true`:`false`,onMouseDown:e=>{e.preventDefault()},onClick:e=>{if(e.preventDefault(),e.stopPropagation(),M!=null){Nt();return}Ln()},tabIndex:-1,style:Fn,children:q(av,{...ot(`file-tree-icon-ellipsis`)})}),M==null?null:q(`slot`,{name:mf})]}):null,M==null?null:q(`div`,{"data-type":`context-menu-wash`,"aria-hidden":`true`,onMouseDownCapture:e=>{e.preventDefault(),Nt()},onTouchStartCapture:e=>{e.preventDefault(),e.stopPropagation(),Nt()},onTouchMoveCapture:e=>{e.preventDefault(),e.stopPropagation()},onWheelCapture:e=>{e.preventDefault(),e.stopPropagation()}})]})}var hb={hydrateRoot:(e,t)=>{ev(A_(mb,t),e)},renderRoot:(e,t)=>{$_(A_(mb,t),e)},unmountRoot:e=>{$_(null,e)}};function gb(e,t){hb.renderRoot(e,t)}function _b(e,t){hb.hydrateRoot(e,t)}function vb(e){hb.unmountRoot(e)}var yb=class{#e=new Map;#t=null;clearAll(){for(let e of this.#e.values())e.remove();this.#e.clear()}clearSlotContent(e){let t=this.#n(e);t!=null&&(t.remove(),this.#e.delete(e))}setHost(e){if(this.#t=e,e!=null){this.#i(e);for(let[e,t]of this.#e)this.#r(e,t)}}setSlotContent(e,t){let n=this.#n(e);if(n===t){t!=null&&(this.#e.set(e,t),this.#r(e,t));return}if(n?.remove(),t==null){this.#e.delete(e);return}this.#e.set(e,t),this.#r(e,t)}setSlotHtml(e,t){let n=t?.trim()??``;if(n.length===0){this.setSlotContent(e,null);return}let r=this.#n(e);if(r!=null&&r.innerHTML===n){this.#e.set(e,r),this.#r(e,r);return}let i=document.createElement(`div`);i.innerHTML=n,this.setSlotContent(e,i)}#n(e){let t=this.#e.get(e)??null;if(t!=null)return t;let n=this.#t;if(n==null)return null;for(let t of Array.from(n.children))if(t instanceof HTMLElement&&t.dataset.fileTreeManagedSlot===e)return t;return null}#r(e,t){t.slot=e,t.dataset.fileTreeManagedSlot=e,this.#t!=null&&t.parentNode!==this.#t&&this.#t.appendChild(t)}#i(e){for(let t of Array.from(e.children)){if(!(t instanceof HTMLElement))continue;let e=t.dataset.fileTreeManagedSlot;e==null||this.#e.has(e)||this.#e.set(e,t)}}};Array.isArray;var bb=0;function xb(e){return e!=null&&e.length>0?e:(bb+=1,`pst_ft_${bb}`)}function Sb({initialVisibleRowCount:e,itemHeight:t}){return e==null?420:Math.max(0,e)*(t??ig)}function Cb(e){if(typeof document>`u`)return;let t=document.createElement(`div`);t.innerHTML=e;let n=t.querySelector(`svg`);return n instanceof SVGElement?n:void 0}function wb(e){return e.querySelector(`#file-tree-icon-chevron`)instanceof SVGElement&&e.querySelector(`#file-tree-icon-file`)instanceof SVGElement&&e.querySelector(`#file-tree-icon-dot`)instanceof SVGElement&&e.querySelector(`#file-tree-icon-lock`)instanceof SVGElement}function Tb(e){return Array.from(e.children).filter(e=>e instanceof SVGElement)}var Eb=class{static LoadedCustomComponent=!0;#e;#t;#n;#r;#i;#a;#o;#s;#c;#l=new yb;#u;#d;#f;#p;#m;#h;#g;#_;#v;#y=null;#b;#x=!1;#S=!1;constructor(e){let{composition:t,density:n,fileTreeSearchMode:r,gitStatus:i,id:a,initialSearchQuery:o,icons:s,itemHeight:c,onSearchChange:l,onSelectionChange:u,overscan:d,renderRowDecoration:f,renaming:p,search:m,searchBlurBehavior:h,searchFakeFocus:g,stickyFolders:_,unsafeCSS:v,initialVisibleRowCount:y,...b}=e;this.#e=t,this.#n=xb(a),this.#p=o_(i),this.#m=s,this.#h=v,this.#r=u,this.#i=f,this.#a=p!=null&&p!==!1,this.#o=h,this.#s=m===!0,this.#c=g===!0,this.#u=rg(n,c),this.#d={itemHeight:this.#u.itemHeight,overscan:d,stickyFolders:_,initialVisibleRowCount:y},this.#t=new t_({...b,fileTreeSearchMode:r,initialSearchQuery:o,onSearchChange:l,renaming:p}),this.#v=this.#t.getSelectionVersion(),this.#y=this.#r==null?null:this.subscribe(()=>{this.#D()})}unmount(){this.#b!=null&&(vb(this.#b),delete this.#b.dataset.fileTreeVirtualizedWrapper,this.#b=void 0),this.#l.clearAll(),this.#l.setHost(null),this.#f!=null&&(delete this.#f.dataset.fileTreeVirtualized,this.#I(this.#f),this.#f=void 0)}cleanUp(){this.unmount(),this.#y?.(),this.#y=null,this.#t.destroy()}getFileTreeContainer(){return this.#f}getItem(e){return this.#t.getItem(e)}getFocusedItem(){return this.#t.getFocusedItem()}getFocusedPath(){return this.#t.getFocusedPath()}getFocusedIndex(){return this.#t.getFocusedIndex()}getVisibleCount(){return this.#t.getVisibleCount()}getVisibleRows(e,t){return this.#t.getVisibleRows(e,t)}getSelectedPaths(){return this.#t.getSelectedPaths()}getComposition(){return this.#e}getItemHeight(){return this.#u.itemHeight}getDensityFactor(){return this.#u.factor}subscribe(e){let t=!1;return this.#t.subscribe(()=>{if(!t){t=!0;return}e()})}focusPath(e){this.#t.focusPath(e)}focusFirstItem(){this.#t.focusFirstItem()}focusLastItem(){this.#t.focusLastItem()}focusNextItem(){this.#t.focusNextItem()}focusPreviousItem(){this.#t.focusPreviousItem()}focusParentItem(){this.#t.focusParentItem()}scrollToPath(e,t){this.#t.scrollToPath(e,t)}focusNearestPath(e){return this.#t.focusNearestPath(e)}add(e){this.#t.add(e)}batch(e){this.#t.batch(e)}applyGitStatusPatch(e){let t=s_(this.#p,e);if(t===this.#p)return;this.#p=t;let n=this.#T();n!=null&&gb(n.wrapper,this.#w())}move(e,t,n){this.#t.move(e,t,n)}onMutation(e,t){return this.#t.onMutation(e,t)}setSearch(e){this.#t.setSearch(e)}openSearch(e){this.#t.openSearch(e)}closeSearch(){this.#t.closeSearch()}isSearchOpen(){return this.#t.isSearchOpen()}getSearchValue(){return this.#t.getSearchValue()}getSearchMatchingPaths(){return this.#t.getSearchMatchingPaths()}focusNextSearchMatch(){this.#t.focusNextSearchMatch()}focusPreviousSearchMatch(){this.#t.focusPreviousSearchMatch()}startRenaming(e,t){return this.#t.startRenaming(e,t)}remove(e,t){this.#t.remove(e,t)}resetPaths(e,t){Array.isArray(e)?this.#t.resetPaths(e,t):this.#t.resetPaths(e)}setComposition(e){this.#e=e;let t=this.#T();t!=null&&(this.#O(),gb(t.wrapper,this.#w()))}setGitStatus(e){let t=o_(e,this.#p);if(t===this.#p)return;this.#p=t;let n=this.#T();n!=null&&gb(n.wrapper,this.#w())}setIcons(e){this.#m=e;let t=this.#T();t!=null&&(this.#E(t.host,t.wrapper),gb(t.wrapper,this.#w()))}hydrate({fileTreeContainer:e}){let t=this.#P(e),n=this.#N(t);this.#O(),_b(n,this.#w())}render({containerWrapper:e,fileTreeContainer:t}){let n=this.#P(t??this.#f,e),r=this.#N(n);this.#O(),gb(r,this.#w())}#C(){return{initialViewportHeight:Sb({initialVisibleRowCount:this.#d.initialVisibleRowCount,itemHeight:this.#d.itemHeight}),itemHeight:this.#d.itemHeight,overscan:this.#d.overscan,stickyFolders:this.#d.stickyFolders}}#w(){return{composition:this.#e,controller:this.#t,gitStatusByPath:this.#p?.statusByPath,ignoredGitDirectories:this.#p?.ignoredDirectoryPaths,directoriesWithGitChanges:this.#p?.directoriesWithChanges,icons:this.#m,instanceId:this.#n,renamingEnabled:this.#a,renderRowDecoration:this.#i,searchBlurBehavior:this.#o,searchEnabled:this.#s,searchFakeFocus:this.#c,slotHost:this.#l,...this.#C()}}#T(){let e=this.#f,t=this.#b;return e==null||t==null?null:{host:e,wrapper:t}}#E(e,t){let n=e.shadowRoot;n!=null&&(this.#k(n),this.#A(n)),this.#j(t)}#D(){let e=this.#r;if(e==null)return;let t=this.#t.getSelectionVersion();t!==this.#v&&(this.#v=t,e(this.#t.getSelectedPaths()))}#O(){let e=this.#e?.header?.render;if(e!=null){this.#l.setSlotContent(pf,e());return}this.#l.setSlotHtml(pf,this.#e?.header?.html??null)}#k(e){let t=Tb(e).find(e=>wb(e)),n=Cb(nf(_f(this.#m).set));n!=null&&(t==null||t.outerHTML!==n.outerHTML)&&(t==null?e.prepend(n):t.replaceWith(n))}#A(e){let t=Tb(e),n=t.find(e=>wb(e)),r=t.filter(e=>e!==n),i=_f(this.#m).spriteSheet?.trim()??``;if(i.length===0){for(let e of r)e.remove();return}let a=Cb(i);if(a==null){for(let e of r)e.remove();return}if(r.length!==1||r[0].outerHTML!==a.outerHTML){for(let e of r)e.remove();e.appendChild(a)}}#j(e){let t=_f(this.#m);t.colored&&af(t.set)?e.dataset.fileTreeColoredIcons=`true`:delete e.dataset.fileTreeColoredIcons}#M(e){let t=e.querySelector(`style[${lf}]`);if(this.#g==null&&t instanceof HTMLStyleElement&&(this.#g=t),this.#h==null||this.#h===``){this.#g?.remove(),this.#g=void 0,this.#_=void 0;return}(this.#g?.parentNode!==e||this.#_!==this.#h)&&(this.#g??=document.createElement(`style`),this.#g.setAttribute(lf,``),this.#g.parentNode!==e&&e.appendChild(this.#g),this.#g.textContent=cg(this.#h),this.#_=this.#h)}#N(e){if(this.#b!=null)return this.#b;let t=e.shadowRoot;if(t==null)throw Error(`FileTree requires a shadow root`);let n=Array.from(t.children).filter(e=>e instanceof HTMLDivElement&&typeof e.dataset.fileTreeId==`string`&&e.dataset.fileTreeId.length>0),r=n.find(e=>e.dataset.fileTreeId===this.#n)??n[0];return r!=null&&(this.#n=r.dataset.fileTreeId??this.#n),this.#b=r??document.createElement(`div`),this.#b.dataset.fileTreeId=this.#n,this.#b.dataset.fileTreeVirtualizedWrapper=`true`,this.#E(e,this.#b),this.#b.parentNode!==t&&t.appendChild(this.#b),this.#b}#P(e,t){let n=e??this.#f??document.createElement(`file-tree-container`);t!=null&&n.parentNode!==t&&t.appendChild(n);let r=n.shadowRoot??n.attachShadow({mode:`open`});return mg(n,r),this.#M(r),n.dataset.fileTreeVirtualized=`true`,n.style.display=`flex`,this.#F(n),this.#l.setHost(n),this.#f=n,n}#F(e){e.style.getPropertyValue(`--trees-item-height`)===``&&(e.style.setProperty(`--trees-item-height`,`${String(this.#u.itemHeight)}px`),this.#x=!0),e.style.getPropertyValue(`--trees-density-override`)===``&&(e.style.setProperty(`--trees-density-override`,String(this.#u.factor)),this.#S=!0)}#I(e){this.#x&&=(e.style.removeProperty(`--trees-item-height`),!1),this.#S&&=(e.style.removeProperty(`--trees-density-override`),!1)}},Db=`
|
|
6650
|
+
}`}var xh=new WeakMap;function Sh(e){let t=xh.get(e);if(t!=null)return t;let n=document.createElement(`div`);n.setAttribute(Cd,`true`);let r=document.createElement(`div`);r.style.position=`relative`,r.style.height=`200%`,n.appendChild(r),e.appendChild(n);let i=Math.max(n.offsetWidth-n.clientWidth,0);return n.remove(),xh.set(e,i),i}function Ch(e,t){if(!e.isConnected)return;let n=Sh(t);if(n==null)return;let r=t.querySelector(`style[${wd}]`),i=r instanceof HTMLStyleElement?r:document.createElement(`style`);r instanceof HTMLStyleElement||(i.setAttribute(wd,``),t.appendChild(i)),i.textContent=`:host { ${Td}: ${n}px; }`}var wh;function Th(e){if(typeof CSSStyleSheet<`u`&&typeof CSSStyleSheet.prototype.replaceSync==`function`&&`adoptedStyleSheets`in e){wh??(wh=new CSSStyleSheet,wh.replaceSync(yh(_h)));let t=!1;try{e.adoptedStyleSheets=[wh],t=!0}catch{}if(t){e.querySelector(`style[${xd}]`)?.remove();return}}if(e.querySelector(`style[data-file-tree-style]`)==null){let t=document.createElement(`style`);t.setAttribute(xd,``),t.textContent=yh(_h),e.prepend(t)}}function Eh(e,t){Dh(e,t),Th(t),Ch(e,t)}function Dh(e,t){let n=e.querySelector(`template[shadowrootmode="open"], template[data-file-tree-shadowrootmode="open"]`);n instanceof HTMLTemplateElement&&(t.childNodes.length>0||(t.appendChild(n.content.cloneNode(!0)),n.hasAttribute(`shadowrootmode`)&&n.remove()))}if(typeof HTMLElement<`u`&&customElements.get(`file-tree-container`)==null){class e extends HTMLElement{constructor(){super()}connectedCallback(){let e=this.shadowRoot??this.attachShadow({mode:`open`});Eh(this,e)}}if(customElements.define(bd,e),typeof document<`u`)for(let e of Array.from(document.querySelectorAll(bd)))e instanceof HTMLElement&&Eh(e,e.shadowRoot??e.attachShadow({mode:`open`}))}var Oh=e=>e.startsWith(`f::`)?e.slice(3):e;function kh(e){let t=e.lastIndexOf(`/`);return t<0?{parentPath:``,baseName:e}:{parentPath:e.slice(0,t),baseName:e.slice(t+1)}}function Ah(e,t){return e===``?t:`${e}/${t}`}function jh({files:e,path:t,isFolder:n,nextBasename:r}){let i=Oh(t),a=r.trim();if(a.length===0)return{error:`Name cannot be empty.`};if(a.includes(`/`))return{error:`Name cannot include "/".`};let{parentPath:o,baseName:s}=kh(i);if(a===s)return{nextFiles:e,sourcePath:i,destinationPath:i,isFolder:n};let c=Ah(o,a),l=Array(e.length),u=new Set;if(!n){let t=`${c}/`,r=!1;for(let n=0;n<e.length;n++){let a=e[n];if(a!==i&&a.startsWith(t))return{error:`"${c}" already exists.`};let o=a===i?c:a;if(u.has(o))return{error:`"${c}" already exists.`};u.add(o),l[n]=o,a===i&&(r=!0)}return r?{nextFiles:l,sourcePath:i,destinationPath:c,isFolder:n}:{error:`Could not find the selected file to rename.`}}let d=`${i}/`,f=`${c}/`,p=0;for(let t=0;t<e.length;t++){let n=e[t],r=n===i||n.startsWith(d);if(!r&&(n===c||n.startsWith(f)))return{error:`"${c}" already exists.`};let a=r?`${c}${n.slice(i.length)}`:n;if(u.has(a))return{error:`"${c}" already exists.`};u.add(a),l[t]=a,r&&p++}return p===0?{error:`Could not find the selected folder to rename.`}:{nextFiles:l,sourcePath:i,destinationPath:c,isFolder:n}}function Mh(e){return e.endsWith(`/`)}function Nh(e){let t=e.endsWith(`/`)?e.slice(0,-1):e,n=t.lastIndexOf(`/`),r=n<0?t:t.slice(n+1);return e.endsWith(`/`)?`${r}/`:r}function Ph(e){let t=[],n=new Set;for(let r of e)n.has(r)||(n.add(r),t.push(r));let r=new Set;for(let e of t.toSorted((e,t)=>e.length===t.length?e.localeCompare(t):e.length-t.length)){let t=(e.endsWith(`/`)?e.slice(0,-1):e).split(`/`),n=!1;for(let e=0;e<t.length-1;e+=1){let i=`${t.slice(0,e+1).join(`/`)}/`;if(r.has(i)){n=!0;break}}n||r.add(e)}return t.filter(e=>r.has(e))}function Fh(e,t){return t.includes(e)?Ph(t):[e]}function Ih(e,t){return e===t?!0:e==null||t==null?!1:e.kind===t.kind&&e.directoryPath===t.directoryPath&&e.flattenedSegmentPath===t.flattenedSegmentPath&&e.hoveredPath===t.hoveredPath}function Lh(e,t){return{draggedPaths:e,target:t}}function Rh(e,t){if(t.kind!==`directory`||t.directoryPath==null)return!1;for(let n of e)if(Mh(n)&&(t.directoryPath===n||t.directoryPath.startsWith(n)))return!0;return!1}function zh(e,t){return t.kind===`root`||t.directoryPath==null?Nh(e):t.directoryPath}function Bh(e,t){let n=e.map(e=>{let n=zh(e,t);return n===e?null:{from:e,to:n,type:`move`}}).filter(e=>e!=null);return n.length===0?null:{operations:n,result:{draggedPaths:e,operation:n.length===1?`move`:`batch`,target:t}}}function Vh(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return!1;return!0}function Hh(e,t,n){let{paths:r,preparedInput:i}=e;if(i==null){if(r==null)throw Error(`FileTree requires paths or preparedInput`);return{paths:r,preparedInput:void 0}}let a=i.paths;if(r==null)return{paths:a,preparedInput:i};if(!Vh(dh.preparePaths(r,n==null?{}:{sort:n}),a))throw Error(`FileTree ${t} received paths and preparedInput for different path lists`);return{paths:a,preparedInput:i}}function Uh(e){return e.operation===`add`||e.operation===`remove`||e.operation===`move`||e.operation===`batch`}function Wh(e,t,n){if(e===t)return n;let r=t.endsWith(`/`)?t:`${t}/`;return e.startsWith(r)?`${n.endsWith(`/`)?n:`${n}/`}${e.slice(r.length)}`:e}function Gh(e,t){if(e===t)return!0;let n=t.endsWith(`/`)?t:`${t}/`;return e.startsWith(n)}function Kh(e,t,n=!1){if(e==null)return null;switch(t.operation){case`add`:case`expand`:case`collapse`:case`mark-directory-unloaded`:case`begin-child-load`:case`apply-child-patch`:case`complete-child-load`:case`fail-child-load`:case`cleanup`:return e;case`remove`:return Gh(e,t.path)?n?e:null:e;case`move`:return Wh(e,t.from,t.to);case`batch`:{let r=e;for(let e of t.events)if(r=Kh(r,e,n),r==null)return null;return r}}}function qh(e){return{canonicalChanged:e.canonicalChanged,projectionChanged:e.projectionChanged,visibleCountDelta:e.visibleCountDelta}}function Jh(e){switch(e.operation){case`add`:return{...qh(e),operation:`add`,path:e.path};case`remove`:return{...qh(e),operation:`remove`,path:e.path,recursive:e.recursive};case`move`:return{...qh(e),from:e.from,operation:`move`,to:e.to}}}function Yh(e){return{...qh(e),events:e.events.filter(e=>e.operation===`add`||e.operation===`remove`||e.operation===`move`).map(e=>Jh(e)),operation:`batch`}}function Xh(e){switch(e.operation){case`add`:case`remove`:case`move`:return Jh(e);case`batch`:return Yh(e);default:return null}}function Zh(e,t){if(e.size!==t.length)return!1;for(let n of t)if(!e.has(n))return!1;return!0}function Qh(e){let t=e.endsWith(`/`)?e.slice(0,-1):e;if(t.length===0)return[];let n=t.split(`/`);return n.slice(0,-1).map((e,t)=>`${n.slice(0,t+1).join(`/`)}/`)}function $h(e){return Qh(e).at(-1)??null}function eg(e,t){return t==null?e:e.startsWith(t)?e.slice(t.length):e}function tg(e){return e.endsWith(`/`)}var ng=e=>e.toLowerCase();function rg(e){let t=e.endsWith(`/`)?e.slice(0,-1):e,n=t.lastIndexOf(`/`);return n<0?t:t.slice(n+1)}function ig(e){return e.endsWith(`/`)?e.slice(0,-1):e}function ag(e,t){return t&&!e.endsWith(`/`)?`${e}/`:e}var og=e=>{let t=e.trim();return t.length===0?``:(t.includes(`\\`)?t.replaceAll(`\\`,`/`):t).toLowerCase()},sg=Symbol(`FILE_TREE_RENAME_VIEW`),cg=512,lg=512;function ug(e){return e===`top`||e===`center`?e:`nearest`}function dg(e,t,n){if(e===0)return-1;if(n!=null){let e=t(n);if(e!=null)return e;let r=Qh(n);for(let e=r.length-1;e>=0;--e){let n=r[e];if(n==null)continue;let i=t(n);if(i!=null)return i}}return 0}function fg(e,t,n){if(e.paths.length===0)return{focusedIndex:-1,getParentIndex:e.getParentIndex,paths:e.paths,posInSetByIndex:e.posInSetByIndex,setSizeByIndex:e.setSizeByIndex};if(t==null)return{focusedIndex:0,getParentIndex:e.getParentIndex,paths:e.paths,posInSetByIndex:e.posInSetByIndex,setSizeByIndex:e.setSizeByIndex};let r=n??(t=>e.visibleIndexByPath.get(t)??null);return{focusedIndex:dg(e.paths.length,r,t),getParentIndex:e.getParentIndex,paths:e.paths,posInSetByIndex:e.posInSetByIndex,setSizeByIndex:e.setSizeByIndex}}var pg=class e{static{Object.defineProperty(e.prototype,sg,{configurable:!0,value(){return{cancel:()=>{this.#q()},commit:()=>{this.#J()},getPath:()=>this.#T,getValue:()=>this.#E,isActive:()=>this.#T!=null,setValue:e=>{this.#Y(e)}}},writable:!0})}#e;#t=new Set;#n=new Map;#r=null;#i=null;#a=new Map;#o=new Map;#s=-1;#c=null;#l=!1;#u=e=>-1;#d=new Map;#f=null;#p=null;#m=null;#h=null;#g=null;#_;#v;#y;#b=[];#x=new Int32Array;#S=new Int32Array;#C=void 0;#w=!1;#T=null;#E=``;#D=!1;#O=new Set;#k=[];#A;#j=null;#M=null;#N=null;#P=null;#F=null;#I=null;#L=null;#R=0;#z=null;#B=new Set;#V=0;#H;#U=0;#W=!1;#G=0;#K;constructor(e){let{dragAndDrop:t,fileTreeSearchMode:n,initialSearchQuery:r,initialSelectedPaths:i,renaming:a,onSearchChange:o,paths:s,preparedInput:c,...l}=e,u=Hh({paths:s,preparedInput:c},`constructor`,l.sort);this.#e=l,t!=null&&t!==!1&&(this.#r=t===!0?{}:t),this.#w=a!=null&&a!==!1,a!=null&&a!==!1&&a!==!0&&(this.#C=a.canRename,this.#v=a.onError,this.#_=a.onRename),this.#y=o,this.#A=n??`hide-non-matches`,this.#H=this.#le(u.paths,u.preparedInput);let d=i?.map(e=>this.#Ne(e)).filter(e=>e!=null)??[],f=d.at(-1)??null;d.length>0&&(this.#B=new Set(d),this.#z=f,this.#V=1),this.#je(f,!1),r!=null&&this.#Te(r,!1),this.#K=this.#Re()}destroy(){this.#K?.(),this.#K=null,this.#n.clear(),this.#t.clear(),this.#d.clear(),this.#i=null,this.#he()}focusFirstItem(){this.#be().length>0&&this.#Fe(0)}focusLastItem(){this.#G<=0||(this.#Ie(),this.#Fe(this.#G-1))}focusNextItem(){this.#Ae(1)}focusParentItem(){if(this.#c==null)return;let e=$h(this.#c);if(e==null)return;let t=this.#Z(e);t>=0&&this.#Fe(t)}focusPath(e){let t=this.#H.getPathInfo(e)?.path??null;if(t==null)return;this.#Ie();let n=this.#Z(t);n>=0&&this.#Fe(n)}scrollToPath(e,t){let n=this.#H.getPathInfo(e)?.path??null;if(n==null)return;this.#Ie();let r=this.#xe(n);r<0||this.#Me(r)!=null&&(t?.focus!==!1&&this.#Fe(r,!1),this.#L={id:this.#R+=1,offset:ug(t?.offset),visibleIndex:r},this.#De())}focusMountedPathFromInput(e){let t=this.#H.getPathInfo(e)?.path??null;if(t==null)return;let n=this.#Z(t);n>=0&&this.#Fe(n)}focusNearestPath(e){let t=this.resolveNearestVisiblePath(e);if(t==null)return null;let n=this.#Z(t);return n>=0?(this.#Fe(n),this.#be()[n]??t):null}focusPreviousItem(){this.#Ae(-1)}getFocusedIndex(){return this.#s}getFocusedItem(){return this.#c==null?null:this.#Q(this.#c)}getFocusedPath(){return this.#c}getScrollRequest(){return this.#L}clearScrollRequest(e){this.#L?.id===e&&(this.#L=null)}resolveNearestVisiblePath(e){let t=this.#be();if(this.#G===0)return null;if(e==null)return this.#c??t[0]??null;let n=this.#H.getPathInfo(e)?.path??e,r=this.#Z(n);return r>=0?t[r]??n:this.#X(n)??this.#c??t[0]??null}getSelectedPaths(){return[...this.#B]}getSelectionVersion(){return this.#V}getVisibleCount(){return this.#G}getVisibleRows(e,t){if(t<e||this.#G===0)return[];let n=Math.max(0,e),r=Math.min(this.#G-1,t);if(r<n)return[];let i=r-n+1;if(this.#F==null&&!this.#l&&r>=this.#b.length&&i<=lg){let e=[];for(let t=n;t<=r;t+=1){let n=this.#H.getVisibleRowContext(t);if(n==null)break;e.push(this.#ee(n))}return e}if(!this.#l&&r>=this.#b.length&&this.#Ie(),this.#F!=null){let e=Array.from({length:r-n+1},(e,t)=>this.#Se(n+t)),t=new Map,i=e[0]??-1,a=i;for(let n=1;n<=e.length;n+=1){let r=e[n];if(r!=null&&r===a+1){a=r;continue}if(i>=0&&this.#H.getVisibleSlice(i,a).forEach((e,n)=>{t.set(i+n,e)}),r==null){i=-1,a=-1;continue}i=r,a=r}return Array.from({length:r-n+1},(e,r)=>{let i=n+r,a=this.#Se(i),o=t.get(a),s=this.#b[a];if(o==null||s==null)throw Error(`Missing projection row for filtered visible index ${String(i)}`);return this.#$(o,i,a,{ancestorPaths:this.#re(a),path:s})})}return this.#H.getVisibleSlice(n,r).map((e,t)=>{let r=n+t,i=this.#b[r];if(i==null)throw Error(`Missing projection path for visible index ${String(r)}`);return this.#$(e,r,r,{ancestorPaths:this.#re(r),path:i})})}getStickyRowCandidates(e,t){if(this.#F!=null)return null;if(this.#G===0||e<=0||t<=0)return[];let n=[];for(let r=0;r<this.#G;r+=1){let i=e+r*t,a=Math.min(this.#G-1,Math.floor(i/t)),o=this.#te(a,r)??(a>0?this.#te(a-1,r):void 0);if(o==null)break;n.push({row:this.#ee(o),subtreeEndIndex:o.subtreeEndIndex})}return n}getItem(e){let t=this.#H.getPathInfo(e);return t==null?null:this.#Q(t.path,t)}resolveMountedDirectoryPathFromInput(e){let t=this.#H.getPathInfo(e);return t?.kind===`directory`?t.path:null}toggleMountedDirectoryFromInput(e){let t=this.resolveMountedDirectoryPathFromInput(e);t!=null&&this.#ze(t)}selectAllVisiblePaths(){this.#Ie();let e=[...this.#be()];this.#ae(e,this.#c??this.#z)}selectOnlyPath(e){let t=this.#Ne(e);t!=null&&this.#ae([t],t)}selectOnlyMountedPathFromInput(e){this.#ae([e],e)}selectPath(e){let t=this.#Ne(e);t==null||this.#B.has(t)||this.#ae([...this.#B,t])}deselectPath(e){let t=this.#Ne(e);t==null||!this.#B.has(t)||this.#ae([...this.#B].filter(e=>e!==t))}toggleFocusedSelection(){this.#c!=null&&this.togglePathSelectionFromInput(this.#c)}togglePathSelection(e){let t=this.#Ne(e);if(t!=null){if(this.#B.has(t)){this.deselectPath(t);return}this.selectPath(t)}}togglePathSelectionFromInput(e){let t=this.#Ne(e);if(t!=null){if(this.#B.has(t)){this.#ae([...this.#B].filter(e=>e!==t),t);return}this.#ae([...this.#B,t],t)}}selectPathRange(e,t){let n=this.#Ne(e);if(n==null)return;this.#Ie();let r=this.#z,i=r==null?-1:this.#Ce(r),a=this.#Ce(n);if(i===-1||a===-1){let e=t?[...this.#B,n]:[n];this.#ae(e,n);return}let[o,s]=i<=a?[i,a]:[a,i],c=this.#be().slice(o,s+1),l=t?[...this.#B,...c]:c;this.#ae(l,r)}extendSelectionFromFocused(e){if(this.#c==null)return;let t=this.#s;if(t===-1)return;let n=Math.min(this.#G-1,Math.max(0,t+e));if(n===t)return;!this.#l&&n>=this.#b.length&&this.#Ie();let r=this.#be(),i=r[t]??null,a=r[n]??null;if(i==null||a==null)return;let o=new Set(this.#B);o.has(i)&&o.has(a)?o.delete(i):o.add(a),this.#ae([...o],this.#z??i,!1),this.#Fe(n)}getDragAndDropConfig(){return this.#r}isDragAndDropEnabled(){return this.#r!=null}getDragSession(){return this.#i==null?null:{draggedPaths:[...this.#i.draggedPaths],primaryPath:this.#i.primaryPath,target:this.#i.target==null?null:{...this.#i.target}}}startDrag(e){if(this.#r==null)return!1;let t=this.#Ne(e);if(t==null||this.#M!=null&&this.#M.length>0)return!1;let n=this.getSelectedPaths(),r=Fh(t,n);return this.#r.canDrag?.(r)!==!1&&(n.includes(t)||this.#ae([t],t,!1),this.#Pe(t),this.#i={draggedPaths:r,primaryPath:t,target:null},this.#De(),!0)}setDragTarget(e){let t=this.#i;if(t==null)return;let n=e;if(n!=null){let e=Lh(t.draggedPaths,n);(Rh(t.draggedPaths,n)||this.#r?.canDrop?.(e)===!1)&&(n=null)}Ih(t.target,n)||(this.#i={...t,target:n},this.#De())}cancelDrag(){this.#i!=null&&(this.#i=null,this.#De())}completeDrag(){let e=this.#i;if(e==null)return!1;this.#i=null;let t=e.target==null?null:{...e.target};if(t==null)return this.#De(),!1;let n=Lh(e.draggedPaths,t);if(Rh(e.draggedPaths,t)||this.#r?.canDrop?.(n)===!1)return this.#De(),!1;let r=Bh(e.draggedPaths,t);if(r==null)return this.#De(),!1;try{if(r.operations.length===1){let e=r.operations[0];if(e==null||e.type!==`move`)throw Error(`Expected a single move operation for one-item drops`);this.#H.move(e.from,e.to,{collision:e.collision})}else this.#ce(r.operations),this.#H.batch(r.operations)}catch(e){return this.#De(),this.#r?.onDropError?.(e instanceof Error?e.message:String(e),n),!1}return this.#r?.onDropComplete?.(r.result),!0}subscribe(e){return this.#t.add(e),e(),()=>{this.#t.delete(e)}}add(e){this.#H.add(e)}remove(e,t={}){this.#H.remove(e,t)}move(e,t,n={}){this.#H.move(e,t,n)}batch(e){this.#H.batch(e)}onMutation(e,t){let n=e,r=t,i=this.#n.get(n);return i??(i=new Set,this.#n.set(n,i)),i.add(r),()=>{let e=this.#n.get(n);e?.delete(r),e?.size===0&&this.#n.delete(n)}}setSearch(e){this.#Te(e,!0)}openSearch(e=``){this.#Te(e,!0)}closeSearch(){this.#Te(null,!0)}isSearchOpen(){return this.#M!==null}getSearchValue(){return this.#M??``}getSearchMatchingPaths(){return this.#k}focusNextSearchMatch(){this.#we(1)}focusPreviousSearchMatch(){this.#we(-1)}startRenaming(e=this.#c??``,t={}){if(!this.#w)return!1;let n=this.#H.getPathInfo(e);if(n==null)return!1;let r=n.path,i=tg(r),a=ig(r);if(this.#C?.({isFolder:i,path:a})===!1)return!1;for(let e of Qh(r))this.#H.isExpanded(e)||this.#H.expand(e);return this.#ae([r],r,!1),this.#M!=null&&(this.#Te(null,!1),this.#y?.(this.#M)),this.#Pe(r),this.#T=r,this.#E=rg(r),this.#D=t.removeIfCanceled??!1,this.#De(),!0}#q(){if(this.#T==null)return;let e=this.#T,t=this.#D;if(this.#T=null,this.#E=``,this.#D=!1,t){this.remove(e,tg(e)?{recursive:!0}:void 0);return}this.#Pe(e),this.#De()}#J(){let e=this.#T;if(e==null)return;if(this.#D&&this.#E.trim().length===0){this.#T=null,this.#E=``,this.#D=!1,this.remove(e,tg(e)?{recursive:!0}:void 0);return}let t=tg(e),n=jh({files:this.#H.list(),isFolder:t,nextBasename:this.#E,path:ig(e)});if(this.#T=null,this.#E=``,this.#D=!1,`error`in n){this.#Pe(e),this.#v?.(n.error),this.#De();return}if(n.sourcePath===n.destinationPath){this.#Pe(e),this.#De();return}this.#_?.({destinationPath:n.destinationPath,isFolder:n.isFolder,sourcePath:n.sourcePath}),this.move(ag(n.sourcePath,t),ag(n.destinationPath,t))}#Y(e){this.#T!=null&&this.#E!==e&&(this.#E=e,this.#De())}resetPaths(e,t={}){let n=!Array.isArray(e),r=n?void 0:e,i=n?e:t,a=this.#H.list().length,o=this.#G,s=Hh({paths:r,preparedInput:i.preparedInput},`resetPaths`,this.#e.sort),c=this.#le(s.paths,s.preparedInput,i.initialExpandedPaths),l=this.#c,u=this.#T,d=this.getSelectedPaths(),f=this.#z;this.#K?.(),this.#H=c,this.#d.clear(),this.#he();let p=d.map(e=>c.getPathInfo(e)?.path??null).filter(e=>e!=null),m=!Zh(this.#B,p);this.#B=new Set(p),m&&(this.#V+=1),this.#z=f==null?null:c.getPathInfo(f)?.path??null,this.#T=u==null?null:c.getPathInfo(u)?.path??null,this.#T??(this.#E=``,this.#D=!1),this.#je(l,l!=null||p.length>0||this.#z!=null),this.#K=this.#Re(),this.#De(),this.#Oe({canonicalChanged:!0,operation:`reset`,pathCountAfter:s.paths.length,pathCountBefore:a,projectionChanged:!0,usedPreparedInput:i.preparedInput!=null,visibleCountDelta:this.#G-o})}#X(e){this.#Ie();let t=$h(e),n=eg(e,t),r=null,i=null;for(let e of this.#be()){if($h(e)!==t)continue;let a=eg(e,t);if(a<n){r=e;continue}if(a>n){i=e;break}}return r??i}#Z(e){let t=this.#Ce(e);if(t!==-1)return t;let n=Qh(e);for(let e=n.length-1;e>=0;--e){let t=n[e];if(t==null)continue;let r=this.#Ce(t);if(r!==-1)return r}return this.#be().length>0?0:-1}#Q(e,t){let n=this.#d.get(e);if(n!=null)return n;let r=t??this.#H.getPathInfo(e);if(r==null)return null;let i=r.kind===`directory`?this.#oe(r.path):this.#se(r.path);return this.#d.set(r.path,i),i}#$(e,t,n,r){return{ancestorPaths:r.ancestorPaths,depth:e.depth,flattenedSegments:e.flattenedSegments?.map(e=>({isTerminal:e.isTerminal,name:e.name,path:e.path})),hasChildren:e.hasChildren,index:t,isExpanded:e.isExpanded,isFlattened:e.isFlattened,isFocused:r.path===this.#c,isSelected:this.#B.has(r.path),kind:e.kind,level:e.depth,name:e.name,path:r.path,posInSet:r.posInSet??this.#x[n]??0,setSize:r.setSize??this.#S[n]??0}}#ee(e){return this.#$(e.row,e.index,e.index,{ancestorPaths:e.ancestorPaths,path:e.row.path,posInSet:e.posInSet,setSize:e.setSize})}#te(e,t){let n=this.#H.getVisibleRowContext(e);return n==null?void 0:n.ancestorRows[t]??(t===n.ancestorRows.length&&n.row.kind===`directory`&&n.row.isExpanded?n:void 0)}#ne(e){let t=this.#a.get(e);if(t!=null)return t;let n=this.#u(e),r=n<0?[]:[...this.#ne(n),n];return this.#a.set(e,r),r}#re(e){let t=this.#o.get(e);if(t!=null)return t;let n=this.#ne(e).map(e=>this.#b[e]??``).filter(e=>e!==``);return this.#o.set(e,n),n}#ie(e){this.#H.collapse(e)}#ae(e,t=this.#z,n=!0){let r=[...new Set(e)],i=!Zh(this.#B,r),a=this.#z!==t;!i&&!a||(this.#B=new Set(r),this.#z=t,i&&(this.#V+=1),n&&this.#De())}#oe(e){return{collapse:()=>{this.#ie(e)},deselect:()=>{this.deselectPath(e)},expand:()=>{this.#ke(e)},focus:()=>{this.focusPath(e)},getPath:()=>e,isDirectory:()=>!0,isExpanded:()=>this.#H.isExpanded(e),isFocused:()=>this.#c===e,isSelected:()=>this.#B.has(e),select:()=>{this.selectPath(e)},toggleSelect:()=>{this.togglePathSelection(e)},toggle:()=>{this.#ze(e)}}}#se(e){return{deselect:()=>{this.deselectPath(e)},focus:()=>{this.focusPath(e)},getPath:()=>e,isDirectory:()=>!1,isFocused:()=>this.#c===e,isSelected:()=>this.#B.has(e),select:()=>{this.selectPath(e)},toggleSelect:()=>{this.togglePathSelection(e)}}}#ce(e){let t=this.#H.list();this.#le(t).batch(e)}#le(e,t,n){return new dh({...this.#e,paths:e,preparedInput:t??void 0,...n===void 0?{}:{initialExpandedPaths:n}})}#ue(){return this.#h??=this.#H.list(),this.#h}#de(){if(this.#m!=null)return this.#m;let e=new Set;for(let t of this.#ue()){e.add(t);for(let n of Qh(t))e.add(n)}return this.#m=[...e].sort(),this.#m}#fe(){return this.#g??=this.#ue().map(ng),this.#g}#pe(){return this.#f??=this.#de().filter(e=>e.endsWith(`/`)),this.#f}#me(){return this.#p??=this.#pe().map(ng),this.#p}#he(){this.#f=null,this.#p=null,this.#m=null,this.#h=null,this.#g=null}#ge(){return this.#pe().filter(e=>this.#H.isExpanded(e))}#_e(e){let t=new Set(this.#j??[]);if(e)for(let e of this.#B)for(let n of Qh(e))t.add(n);this.#ve(t)}#ve(e){this.#W=!0;try{for(let t of this.#pe()){let n=e.has(t),r=this.#H.isExpanded(t);n&&!r?this.#H.expand(t):!n&&r&&this.#H.collapse(t)}}finally{this.#W=!1}}#ye(){if(this.#M==null||this.#M.length===0){this.#k=[],this.#F=null,this.#I=null,this.#P=null,this.#G=this.#U;return}let e=this.#b;if(this.#k=e.filter(e=>this.#O.has(e)),this.#A!==`hide-non-matches`||this.#O.size===0){this.#F=null,this.#I=null,this.#P=null,this.#G=this.#U;return}let t=[],n=[],r=new Map;for(let[i,a]of e.entries())this.#N?.has(a)===!0&&(r.set(a,n.length),t.push(i),n.push(a));this.#F=t,this.#I=n,this.#P=r,this.#G=n.length}#be(){return this.#I??this.#b}#xe(e){return this.#I==null?this.#H.getVisibleIndex(e)??-1:this.#P?.get(e)??-1}#Se(e){return this.#F?.[e]??e}#Ce(e){return this.#P?.get(e)??this.#H.getVisibleIndex(e)??-1}#we(e){let t=this.#k;if(t.length===0)return;let n=this.#c,r=n==null?-1:t.indexOf(n),i=t[r<0?e>0?0:t.length-1:Math.min(t.length-1,Math.max(0,r+e))];i!=null&&this.focusPath(i)}#Te(e,t){let n=e==null?null:og(e),r=this.#M;if(r!==n){if(r==null&&n!=null&&(this.#j=this.#ge()),this.#M=n,n==null)this.#_e(!0),this.#j=null,this.#O.clear(),this.#N=null,this.#je(this.#c,!0);else if(n.length===0)this.#_e(!1),this.#O.clear(),this.#N=null,this.#je(this.#c,!0);else{let e=this.#Ee();this.#je(e,!0)}t&&(this.#y?.(this.#M),this.#De())}}#Ee(){if(this.#M==null||this.#M.length===0)return this.#O.clear(),this.#c;let e=this.#M,t=this.#ue(),n=this.#fe(),r=[],i=new Set,a=null;for(let o=0;o<t.length;o+=1){if(!n[o].includes(e))continue;let s=t[o];r.push(s),i.add(s),a??=s}let o=this.#pe(),s=this.#me();for(let t=0;t<o.length;t+=1){if(!s[t].includes(e))continue;let n=o[t];i.has(n)||(r.push(n),i.add(n),a??=n)}this.#O=i;let c=this.#A===`hide-non-matches`&&r.length>0?new Set:null;this.#N=c;let l=this.#A===`expand-matches`?new Set(this.#j??[]):new Set;for(let e of r){c?.add(e),e.endsWith(`/`)&&l.add(e);for(let t of Qh(e))l.add(t),c?.add(t)}return this.#ve(l),a??this.#c}#De(){for(let e of this.#t)e()}#Oe(e){this.#n.get(e.operation)?.forEach(t=>{t(e)}),this.#n.get(`*`)?.forEach(t=>{t(e)})}#ke(e){for(let t of Qh(e))this.#H.isExpanded(t)||this.#H.expand(t);this.#H.isExpanded(e)||this.#H.expand(e)}#Ae(e){let t=this.#G;if(t===0)return;let n=this.#s===-1?0:this.#s,r=Math.min(t-1,Math.max(0,n+e));(r!==n||this.#s===-1)&&(!this.#l&&this.#F==null&&r>=this.#b.length&&this.#Ie(),this.#Fe(r))}#je(e,t=!0){let n=this.#H.getVisibleCount();this.#U=n;let r=fg(this.#H.getVisibleTreeProjectionData(t?void 0:Math.min(n,cg)),e,t?e=>this.#H.getVisibleIndex(e):void 0);this.#a.clear(),this.#o.clear(),this.#l=r.paths.length>=n,this.#u=r.getParentIndex,this.#b=r.paths,this.#x=r.posInSetByIndex,this.#S=r.setSizeByIndex,this.#ye(),this.#s=e==null?this.#be().length>0?0:-1:this.#Z(e),this.#c=this.#s<0?null:this.#Me(this.#s)}#Me(e){return this.#be()[e]??(this.#F==null?this.#H.getVisibleRowContext(e)?.row.path??null:null)}#Ne(e){return this.#H.getPathInfo(e)?.path??null}#Pe(e){if(e==null)return;let t=this.#Z(e);t>=0&&this.#Fe(t,!1)}#Fe(e,t=!0){let n=this.#Me(e);n!=null&&(this.#s!==e||this.#c!==n)&&(this.#s=e,this.#c=n,t&&this.#De())}#Ie(){this.#l||this.#je(this.#c,!0)}#Le(e){let t=Kh(this.#T,e);t==null&&this.#T!=null&&(this.#E=``),this.#T=t;let n=Kh(this.#c,e,!0),r=[...this.#B].map(t=>Kh(t,e)).filter(e=>e!=null).map(e=>this.#H.getPathInfo(e)?.path??null).filter(e=>e!=null),i=Kh(this.#z,e),a=i==null?null:this.#H.getPathInfo(i)?.path??null,o=[...new Set(r)];return Zh(this.#B,o)||(this.#B=new Set(o),this.#V+=1),this.#z=a,n}#Re(){return this.#H.on(`*`,e=>{if(this.#W)return;e.canonicalChanged&&(this.#d.clear(),this.#he()),this.#i!=null&&Uh(e)&&(this.#i=null);let t=Uh(e)?this.#Le(e):this.#c,n=this.#M!=null&&this.#M.length>0?this.#Ee():this.#M===``?this.#c:t,r=this.#M!=null||e.operation!==`expand`&&e.operation!==`collapse`;this.#je(n,r),this.#De();let i=Xh(e);i!=null&&this.#Oe(i)})}#ze(e){if(this.#H.isExpanded(e)){this.#ie(e);return}this.#ke(e)}},mg=e=>{if(e==null||e.length===0)return`0`;let t=`${e.length}`;for(let n of e)t+=`\0${n.path}\0${n.status}`;return t};function hg(e){let t=e.endsWith(`/`),n=``,r=-1;for(let t=0;t<=e.length;t+=1){if(e[t]!==`/`&&t!==e.length){r===-1&&(r=t);continue}r!==-1&&(n!==``&&(n+=`/`),n+=e.slice(r,t),r=-1)}return n===``?null:{isDirectory:t,path:n}}function gg(e){let t=e.endsWith(`/`)?e.slice(0,-1):e;if(t.length===0)return[];let n=[],r=0;for(;;){let e=t.indexOf(`/`,r);if(e===-1)break;n.push(t.slice(0,e+1)),r=e+1}return n}function _g(e,t){return t?`${e}/`:e}function vg(e,t=null){let n=mg(e==null?void 0:[...e]);if(n===`0`)return null;if(t?.signature===n)return t;let r=new Map,i=new Set,a=new Set,o=new Map;for(let t of e??[]){let e=bg(t);e!=null&&Cg({canonicalPath:e.canonicalPath,changeCountByDirectoryPath:o,directoriesWithChanges:i,ignoredDirectoryPaths:a,isDirectory:e.isDirectory,status:t.status,statusByPath:r})}return r.size===0?null:{changeCountByDirectoryPath:o,directoriesWithChanges:i,ignoredDirectoryPaths:a,signature:n,statusByPath:r}}function yg(e,t){let n=t?.remove??[],r=t?.set??[];if(n.length===0&&r.length===0)return e;let i=new Map(e?.statusByPath),a=new Set(e?.directoriesWithChanges),o=new Set(e?.ignoredDirectoryPaths),s=new Map(e?.changeCountByDirectoryPath),c=!1;for(let e of n){let t=xg(e);t!=null&&(c=Sg({canonicalPath:t.canonicalPath,changeCountByDirectoryPath:s,directoriesWithChanges:a,ignoredDirectoryPaths:o,statusByPath:i})||c)}for(let e of r){let t=bg(e);t!=null&&(c=Cg({canonicalPath:t.canonicalPath,changeCountByDirectoryPath:s,directoriesWithChanges:a,ignoredDirectoryPaths:o,isDirectory:t.isDirectory,status:e.status,statusByPath:i})||c)}return c?i.size===0?null:{changeCountByDirectoryPath:s,directoriesWithChanges:a,ignoredDirectoryPaths:o,signature:Eg(i),statusByPath:i}:e}function bg(e){return xg(e.path)}function xg(e){let t=hg(e);if(t!=null)return{canonicalPath:_g(t.path,t.isDirectory),isDirectory:t.isDirectory}}function Sg({canonicalPath:e,changeCountByDirectoryPath:t,directoriesWithChanges:n,ignoredDirectoryPaths:r,statusByPath:i}){let a=i.get(e);return a!=null&&(i.delete(e),a===`ignored`&&e.endsWith(`/`)&&r.delete(e),Tg(t,n,e),!0)}function Cg({canonicalPath:e,changeCountByDirectoryPath:t,directoriesWithChanges:n,ignoredDirectoryPaths:r,isDirectory:i,status:a,statusByPath:o}){let s=o.get(e);return s!==a&&(s??wg(t,n,e),o.set(e,a),a===`ignored`&&i?r.add(e):i&&r.delete(e),!0)}function wg(e,t,n){for(let r of gg(n))e.set(r,(e.get(r)??0)+1),t.add(r)}function Tg(e,t,n){for(let r of gg(n)){let n=(e.get(r)??0)-1;n>0?e.set(r,n):(e.delete(r),t.delete(r))}}function Eg(e){let t=`${e.size}`;for(let[n,r]of e)t+=`\0${n}\0${r}`;return t}var J,Dg,Og,kg,Ag,jg,Mg,Ng,Pg,Fg,Ig={},Lg=[],Rg=Array.isArray,zg=Lg.slice,Bg=Object.assign;function Vg(e){e&&e.parentNode&&e.remove()}function Hg(e,t,n){var r,i,a,o={};for(a in t)a==`key`?r=t[a]:a==`ref`&&typeof e!=`function`?i=t[a]:o[a]=t[a];return arguments.length>2&&(o.children=arguments.length>3?zg.call(arguments,2):n),Ug(e,o,r,i,null)}function Ug(e,t,n,r,i){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++Dg,__i:-1,__u:0};return i==null&&J.vnode!=null&&J.vnode(a),a}function Wg(e){return e.children}function Gg(e,t){this.props=e,this.context=t,this.__g=0}function Kg(e,t){if(t==null)return e.__?Kg(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type==`function`?Kg(e):null}function qg(e){var t,n;if((e=e.__)!=null&&e.__c!=null){for(e.__e=null,t=0;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null){e.__e=n.__e;break}return qg(e)}}function Jg(e){(8&e.__g||!(e.__g|=8)||!Og.push(e)||Ag++)&&kg==J.debounceRendering||((kg=J.debounceRendering)||queueMicrotask)(Yg)}function Yg(){for(var e,t,n,r,i,a,o,s,c=1;Og.length;)Og.length>c&&Og.sort(jg),e=Og.shift(),c=Og.length,8&e.__g&&(n=void 0,i=(r=(t=e).__v).__e,a=[],o=[],(s=t.__P)&&((n=Bg({},r)).__v=r.__v+1,J.vnode&&J.vnode(n),r_(s,n,r,t.__n,s.namespaceURI,32&r.__u?[i]:null,a,i??Kg(r),!!(32&r.__u),o,s.ownerDocument),n.__v=r.__v,n.__.__k[n.__i]=n,a_(a,n,o),n.__e!=i&&qg(n)));Ag=0}function Xg(e,t,n,r,i,a,o,s,c,l,u,d){var f,p,m,h,g,_,v,y=r&&r.__k||Lg,b=t.length;for(c=Zg(n,t,y,c,b),f=0;f<b;f++)(m=n.__k[f])!=null&&(p=m.__i==-1?Ig:y[m.__i]||Ig,m.__i=f,_=r_(e,m,p,i,a,o,s,c,l,u,d),h=m.__e,m.ref&&p.ref!=m.ref&&(p.ref&&c_(p.ref,null,m),u.push(m.ref,m.__c||h,m)),g==null&&h!=null&&(g=h),(v=!!(4&m.__u))||p.__k===m.__k?c=Qg(m,c,e,v):typeof m.type==`function`&&_!==void 0?c=_:h&&(c=h.nextSibling),m.__u&=-7);return n.__e=g,c}function Zg(e,t,n,r,i){var a,o,s,c,l,u=n.length,d=u,f=0;for(e.__k=Array(i),a=0;a<i;a++)(o=t[a])!=null&&typeof o!=`boolean`&&typeof o!=`function`?(c=a+f,(o=e.__k[a]=typeof o==`string`||typeof o==`number`||typeof o==`bigint`||o.constructor==String?Ug(null,o,null,null,null):Rg(o)?Ug(Wg,{children:o},null,null,null):o.constructor==null&&o.__b>0?Ug(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):o).__=e,o.__b=e.__b+1,s=null,(l=o.__i=$g(o,n,c,d))!=-1&&(d--,(s=n[l])&&(s.__u|=2)),s==null||s.__v==null?(l==-1&&(i>u?f--:i<u&&f++),typeof o.type!=`function`&&(o.__u|=4)):l!=c&&(l==c-1?f--:l==c+1?f++:(l>c?f--:f++,o.__u|=4))):e.__k[a]=null;if(d)for(a=0;a<u;a++)(s=n[a])!=null&&!(2&s.__u)&&(s.__e==r&&(r=Kg(s)),l_(s,s));return r}function Qg(e,t,n,r){var i,a;if(typeof e.type==`function`){for(i=e.__k,a=0;i&&a<i.length;a++)i[a]&&(i[a].__=e,t=Qg(i[a],t,n,r));return t}e.__e!=t&&(r&&(t&&e.type&&!t.parentNode&&(t=Kg(e)),n.insertBefore(e.__e,t||null)),t=e.__e);do t&&=t.nextSibling;while(t!=null&&t.nodeType==8);return t}function $g(e,t,n,r){var i,a,o,s=e.key,c=e.type,l=t[n],u=l!=null&&!(2&l.__u);if(l===null&&e.key==null||u&&s==l.key&&c==l.type)return n;if(r>+!!u){for(i=n-1,a=n+1;i>=0||a<t.length;)if((l=t[o=i>=0?i--:a++])!=null&&!(2&l.__u)&&s==l.key&&c==l.type)return o}return-1}function e_(e,t,n){t[0]==`-`?e.setProperty(t,n??``):e[t]=n??``}function t_(e,t,n,r,i){var a;n:if(t==`style`){if(typeof n==`string`)e.style.cssText=n;else{if(typeof r==`string`&&(e.style.cssText=r=``),r)for(t in r)n&&t in n||e_(e.style,t,``);if(n)for(t in n)r&&n[t]==r[t]||e_(e.style,t,n[t])}}else if(t[0]==`o`&&t[1]==`n`)a=t!=(t=t.replace(Mg,`$1`)),(t=t.slice(2))[0].toLowerCase()!=t[0]&&(t=t.toLowerCase()),e.__l||={},e.__l[t+a]=n,n?r?n.l=r.l:(n.l=Ng,e.addEventListener(t,a?Fg:Pg,a)):e.removeEventListener(t,a?Fg:Pg,a);else{if(i==`http://www.w3.org/2000/svg`)t=t.replace(/xlink(H|:h)/,`h`).replace(/sName$/,`s`);else if(t!=`width`&&t!=`height`&&t!=`href`&&t!=`list`&&t!=`form`&&t!=`tabIndex`&&t!=`download`&&t!=`rowSpan`&&t!=`colSpan`&&t!=`role`&&t!=`popover`&&t in e)try{e[t]=n??``;break n}catch{}typeof n==`function`||(n==null||!1===n&&t[4]!=`-`?e.removeAttribute(t):e.setAttribute(t,t==`popover`&&n==1?``:n))}}function n_(e){return function(t){if(this.__l){var n=this.__l[t.type+e];if(t.u==null)t.u=Ng++;else if(t.u<n.l)return;return n(J.event?J.event(t):t)}}}function r_(e,t,n,r,i,a,o,s,c,l,u){var d,f,p,m,h,g,_,v,y,b,x,S,C,ee,te,w,T,E,ne,re,ie,D=t.type;if(t.constructor!=null)return null;128&n.__u&&(c=!!(32&n.__u),n.__c.__z&&(s=t.__e=n.__e=(a=n.__c.__z)[0],n.__c.__z=null)),(d=J.__b)&&d(t);n:if(typeof D==`function`)try{if(v=t.props,y=`prototype`in D&&D.prototype.render,b=(d=D.contextType)&&r[d.__c],x=d?b?b.props.value:d.__:r,n.__c?2&(f=t.__c=n.__c).__g&&(f.__g|=1,_=!0):(y?t.__c=f=new D(v,x):(t.__c=f=new Gg(v,x),f.constructor=D,f.render=u_),b&&b.sub(f),f.props=v,f.state||(f.state={}),f.context=x,f.__n=r,p=!0,f.__g|=8,f.__h=[],f._sb=[]),y&&f.__s==null&&(f.__s=f.state),y&&D.getDerivedStateFromProps!=null&&(f.__s==f.state&&(f.__s=Bg({},f.__s)),Bg(f.__s,D.getDerivedStateFromProps(v,f.__s))),m=f.props,h=f.state,f.__v=t,p)y&&D.getDerivedStateFromProps==null&&f.componentWillMount!=null&&f.componentWillMount(),y&&f.componentDidMount!=null&&f.__h.push(f.componentDidMount);else{if(y&&D.getDerivedStateFromProps==null&&v!==m&&f.componentWillReceiveProps!=null&&f.componentWillReceiveProps(v,x),!(4&f.__g)&&f.shouldComponentUpdate!=null&&!1===f.shouldComponentUpdate(v,f.__s,x)||t.__v==n.__v){for(t.__v!=n.__v&&(f.props=v,f.state=f.__s,f.__g&=-9),t.__e=n.__e,t.__k=n.__k,t.__k.some(function(e){e&&(e.__=t)}),S=0;S<f._sb.length;S++)f.__h.push(f._sb[S]);f._sb=[],f.__h.length&&o.push(f);break n}f.componentWillUpdate!=null&&f.componentWillUpdate(v,f.__s,x),y&&f.componentDidUpdate!=null&&f.__h.push(function(){f.componentDidUpdate(m,h,g)})}if(f.context=x,f.props=v,f.__P=e,f.__g&=-5,C=J.__r,ee=0,y){for(f.state=f.__s,f.__g&=-9,C&&C(t),d=f.render(f.props,f.state,f.context),te=0;te<f._sb.length;te++)f.__h.push(f._sb[te]);f._sb=[]}else do f.__g&=-9,C&&C(t),d=f.render(f.props,f.state,f.context),f.state=f.__s;while(8&f.__g&&++ee<25);f.state=f.__s,f.getChildContext!=null&&(r=Bg({},r,f.getChildContext())),y&&!p&&f.getSnapshotBeforeUpdate!=null&&(g=f.getSnapshotBeforeUpdate(m,h)),w=d,d!=null&&d.type===Wg&&d.key==null&&(w=o_(d.props.children)),s=Xg(e,Rg(w)?w:[w],t,n,r,i,a,o,s,c,l,u),t.__u&=-161,f.__h.length&&o.push(f),_&&(f.__g&=-4)}catch(e){if(t.__v=null,c||a!=null){if(e.then){for(T=0,E=!1,t.__u|=c?160:128,t.__c.__z=[],ne=0;ne<a.length;ne++)(re=a[ne])==null||E||(re.nodeType==8&&re.data==`$s`?(T>0&&t.__c.__z.push(re),T++,a[ne]=null):re.nodeType==8&&re.data==`/$s`?(--T>0&&t.__c.__z.push(re),E=T===0,s=a[ne],a[ne]=null):T>0&&(t.__c.__z.push(re),a[ne]=null));if(!E){for(;s&&s.nodeType==8&&s.nextSibling;)s=s.nextSibling;a[a.indexOf(s)]=null,t.__c.__z=[s]}t.__e=s}else{for(ie=a.length;ie--;)Vg(a[ie]);i_(t)}}else t.__e=n.__e,t.__k=n.__k,e.then||i_(t);J.__e(e,t,n)}else s=t.__e=s_(n.__e,t,n,r,i,a,o,c,l,u);return(d=J.diffed)&&d(t),128&t.__u?void 0:s}function i_(e){e&&e.__c&&(e.__c.__g|=4),e&&e.__k&&e.__k.forEach(i_)}function a_(e,t,n){for(var r=0;r<n.length;r++)c_(n[r],n[++r],n[++r]);J.__c&&J.__c(t,e),e.some(function(t){try{e=t.__h,t.__h=[],e.some(function(e){e.call(t)})}catch(e){J.__e(e,t.__v)}})}function o_(e){return typeof e!=`object`||!e||e.__b&&e.__b>0?e:Rg(e)?e.map(o_):Bg({},e)}function s_(e,t,n,r,i,a,o,s,c,l){var u,d,f,p,m,h,g,_,v=n.props,y=t.props,b=t.type;if(b==`svg`?i=`http://www.w3.org/2000/svg`:b==`math`?i=`http://www.w3.org/1998/Math/MathML`:i||=`http://www.w3.org/1999/xhtml`,a!=null){for(u=0;u<a.length;u++)if((m=a[u])&&`setAttribute`in m==!!b&&(b?m.localName==b:m.nodeType==3)){e=m,a[u]=null;break}}if(e==null){if(b==null)return l.createTextNode(y);e=l.createElementNS(i,b,y.is&&y),s&&=(J.__m&&J.__m(t,a),!1),a=null}if(b==null)v===y||s&&e.data==y||(e.data=y);else{if(a&&=zg.call(e.childNodes),v=n.props||Ig,!s&&a!=null)for(v={},u=0;u<e.attributes.length;u++)v[(m=e.attributes[u]).name]=m.value;for(u in v)if(m=v[u],u!=`children`){if(u==`dangerouslySetInnerHTML`)f=m;else if(!(u in y)){if(u==`value`&&`defaultValue`in y||u==`checked`&&`defaultChecked`in y)continue;t_(e,u,null,m,i)}}for(u in _=1&n.__u,y)m=y[u],u==`children`?p=m:u==`dangerouslySetInnerHTML`?d=m:u==`value`?h=m:u==`checked`?g=m:s&&typeof m!=`function`||v[u]===m&&!_||t_(e,u,m,v[u],i);if(d)s||f&&(d.__html==f.__html||d.__html==e.innerHTML)||(e.innerHTML=d.__html),t.__k=[];else if(f&&(e.innerHTML=``),Xg(b==`template`?e.content:e,Rg(p)?p:[p],t,n,r,b==`foreignObject`?`http://www.w3.org/1999/xhtml`:i,a,o,a?a[0]:n.__k&&Kg(n,0),s,c,l),a!=null)for(u=a.length;u--;)Vg(a[u]);s||(u=`value`,b==`progress`&&h==null?e.removeAttribute(`value`):h==null||h===e[u]&&(b!==`progress`||h)||t_(e,u,h,v[u],i),u=`checked`,g!=null&&g!=e[u]&&t_(e,u,g,v[u],i))}return e}function c_(e,t,n){try{if(typeof e==`function`){var r=typeof e.__u==`function`;r&&e.__u(),r&&t==null||(e.__u=e(t))}else e.current=t}catch(e){J.__e(e,n)}}function l_(e,t,n){var r,i;if(J.unmount&&J.unmount(e),(r=e.ref)&&(r.current&&r.current!=e.__e||c_(r,null,t)),(r=e.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(e){J.__e(e,t)}r.__P=null}if(r=e.__k)for(i=0;i<r.length;i++)r[i]&&l_(r[i],t,n||typeof e.type!=`function`);n||Vg(e.__e),e.__e&&e.__e.__l&&(e.__e.__l=null),e.__e=e.__c=e.__=null}function u_(e,t,n){return this.constructor(e,n)}function d_(e,t){var n,r,i,a;t==document&&(t=document.documentElement),J.__&&J.__(e,t),r=(n=!!(e&&32&e.__u))?null:t.__k,e=t.__k=Hg(Wg,null,[e]),i=[],a=[],r_(t,e,r||Ig,Ig,t.namespaceURI,r?null:t.firstChild?zg.call(t.childNodes):null,i,r?r.__e:t.firstChild,n,a,t.ownerDocument),a_(i,e,a)}function f_(e,t){e.__u|=32,d_(e,t)}J={__e:function(e,t,n,r){for(var i,a,o;t=t.__;)if((i=t.__c)&&!(1&i.__g)){i.__g|=4;try{if((a=i.constructor)&&a.getDerivedStateFromError!=null&&(i.setState(a.getDerivedStateFromError(e)),o=8&i.__g),i.componentDidCatch!=null&&(i.componentDidCatch(e,r||{}),o=8&i.__g),o)return void(i.__g|=2)}catch(t){e=t}}throw Ag=0,e}},Dg=0,Gg.prototype.setState=function(e,t){var n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=Bg({},this.state);typeof e==`function`&&(e=e(Bg({},n),this.props)),e&&Bg(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),Jg(this))},Gg.prototype.forceUpdate=function(e){this.__v&&(this.__g|=4,e&&this.__h.push(e),Jg(this))},Gg.prototype.render=Wg,Og=[],Ag=0,jg=function(e,t){return e.__v.__b-t.__v.__b},Mg=/(PointerCapture)$|Capture$/i,Ng=0,Pg=n_(!1),Fg=n_(!0);var p_=0;Array.isArray;function Y(e,t,n,r,i,a){t||={};var o,s,c=t;if(`ref`in c&&typeof e!=`function`)for(s in c={},t)s==`ref`?o=t[s]:c[s]=t[s];var l={type:e,props:c,key:n,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--p_,__i:-1,__u:0,__source:i,__self:a};return J.vnode&&J.vnode(l),l}var m_=16,h_=16,g_={};function __({name:e,remappedFrom:t,token:n,width:r,height:i,viewBox:a,label:o,alignCapitals:s=!1}){"use no memo";let c=`#${e.replace(/^#/,``)}`,{width:l,height:u,viewBox:d}=g_[e]??{width:m_,height:h_},f=r??l,p=i??u,m=a??d??`0 0 ${l} ${u}`;return Y(`svg`,{"data-icon-name":t??e,"data-icon-token":n,"data-align-capitals":s,...o==null?{"aria-hidden":!0}:{"aria-label":o,role:`img`},viewBox:m,width:f,height:p,children:Y(`use`,{href:c})})}var v_=e=>e!==void 0&&/\s/.test(e),y_=(e,t)=>{let n=t=>v_(e[t-1])||v_(e[t]);if(!n(t))return t;for(let r=1;r<e.length;r++){let i=t-r;if(i>0&&!n(i))return i;let a=t+r;if(a<e.length&&!n(a))return a}return t},b_=e=>y_(e,Math.ceil(e.length/2)),x_=e=>{if(e.length<2)return[e,``];let t=b_(e);return[e.slice(0,t),e.slice(t)]},S_=e=>{if(e.length<4)return[e,``];let t=e.lastIndexOf(`.`)+1,n=e.length-t>10,r=t>=1&&!n?t:b_(e);return[e.slice(0,r),e.slice(r)]},C_=e=>{if(e.length<4)return[e,``];let t=e.lastIndexOf(`/`)+1,n=e.length-t>25,r=t>=1&&!n?t:Math.ceil(e.length/2);return[e.slice(0,r),e.slice(r)]},w_=(e,{splitIndex:t}={})=>{if(typeof t!=`number`){let t=Math.ceil(e.length/2);return[e.slice(0,t),e.slice(t)]}return[e.slice(0,t),e.slice(t)]},T_=(e,{splitOffset:t}={})=>{if(typeof t!=`number`||t<=0||t>=e.length){let t=Math.ceil(e.length/2);return[e.slice(0,t),e.slice(t)]}let n=e.length-t;return[e.slice(0,n),e.slice(n)]},E_=(e,{splitOffset:t}={})=>{if(typeof t!=`number`||t<=0||t>=e.length){let t=Math.ceil(e.length/2);return[e.slice(0,t),e.slice(t)]}let n=t;return[e.slice(0,n),e.slice(n)]};function D_({children:e,marker:t,variant:n=`default`}){"use no memo";return Y(`div`,{"aria-hidden":!0,"data-truncate-marker-cell":!0,children:Y(`div`,{"data-truncate-marker":!0,children:typeof t==`function`?t({children:e}):n===`fade`?Y(`span`,{"data-truncate-fade":!0}):t})})}function O_(e){"use no memo";let{mode:t,children:n}=e;return Y(`div`,{children:[Y(`div`,{"data-truncate-content":`visible`,children:t===`fruncate`?Y(`span`,{children:n}):n}),Y(`div`,{"data-truncate-content":`overflow`,"aria-hidden":!0,children:t===`fruncate`?Y(`span`,{children:n}):n})]})}function k_({children:e,mode:t=`truncate`,marker:n=`…`,variant:r=`default`,...i}){"use no memo";let a=Y(O_,{mode:t,children:e},`content`),o=Y(D_,{marker:n,mode:t,variant:r},`marker`),s=Y(`div`,{"data-truncate-fill":!0},`fill`);return Y(`div`,{"data-truncate-container":t,"data-truncate-variant":r,...i,children:Y(`div`,{"data-truncate-grid":!0,children:t===`truncate`?[a,o]:[o,a,s]})})}function A_({children:e,...t}){"use no memo";return Y(k_,{mode:`truncate`,...t,children:e})}function j_({children:e,...t}){"use no memo";return Y(k_,{mode:`fruncate`,...t,children:e})}function M_({children:e,contents:t,priority:n=`end`,split:r=`center`,minimumLength:i=12,className:a,style:o,...s}){"use no memo";let c=null,l=null;if(Array.isArray(t)){if(t.length!==2)return console.error(`MiddleTruncate: contents must be an array of two items`),null;c=Y(A_,{...s,children:t[0]}),l=Y(j_,{...s,children:t[1]})}else{if(typeof e!=`string`)return console.error(`MiddleTruncate: children must be a string`),null;if(e.length===0)return Y(`div`,{className:a,style:o});if(e.length<i)return Y(n===`end`?j_:A_,{...s,className:a,style:o,children:e});let t=null,u=null,d=null;if(typeof r==`string`)r===`center`?t=x_:r===`extension`?t=S_:r===`leaf-path`&&(t=C_);else if(typeof r==`number`)t=w_,u=r;else if(Array.isArray(r)){let[e,n]=r;d=n,e===`last`?t=T_:e===`first`&&(t=E_)}else typeof r==`function`&&(t=r);t??=x_;let[f,p]=t(e,{priority:n,variant:s.variant,splitIndex:typeof u==`number`?u:void 0,splitOffset:typeof d==`number`?d:void 0}),m=f.length>=p.length,h=n===`equal`&&!m,g=n===`equal`&&m,_={},v={};h&&(_.marker=``),g&&(v.marker=``),c=Y(A_,{...s,..._,children:f}),l=Y(j_,{...s,...v,children:p})}return Y(`div`,{"data-truncate-group-container":`middle`,className:a,style:o,children:[Y(`div`,{"data-truncate-segment-priority":n===`start`||n===`equal`?`1`:`2`,children:c}),Y(`div`,{"data-truncate-segment-priority":n===`end`||n===`equal`?`1`:`2`,children:l})]})}var N_={endIndex:-1,startIndex:-1};function P_(e,t,n){return Math.min(Math.max(e,t),n)}function F_(e,t){return e<0||t<e?N_:{endIndex:t,startIndex:e}}function I_(e){return e.startIndex<0||e.endIndex<e.startIndex}function L_(e,t){return I_(e)?0:(e.endIndex-e.startIndex+1)*t}function R_(e,t,n){if(t<=0)return-1;let r=t*n;return e<=0?0:e>=r?t:Math.floor(e/n)}function z_(e,t,n){return t<=0||e<=0?-1:e>=t*n?t-1:Math.ceil(e/n)-1}function B_(e){let t=new Map;return e.forEach((e,n)=>{if(e.kind!==`directory`||!e.isExpanded)return;let r=e.ancestorPaths.length,i=t.get(r);if(i==null){t.set(r,[n]);return}i.push(n)}),t}function V_(e,t){let n=0,r=e.length-1,i=-1;for(;n<=r;){let a=Math.floor((n+r)/2),o=e[a];if(o==null)break;if(o<=t){i=a,n=a+1;continue}r=a-1}return i}function H_(e){let t=new Map,n=[];for(let r=0;r<e.length;r+=1){let i=e[r];if(i==null)continue;let a=i.kind===`directory`&&i.isExpanded?[...i.ancestorPaths,i.path]:i.ancestorPaths,o=0;for(;o<n.length&&o<a.length&&n[o]===a[o];)o+=1;for(let e=n.length-1;e>=o;--e){let i=n[e];i!=null&&t.set(i,r-1)}n.length=o;for(let e=o;e<a.length;e+=1){let t=a[e];t!=null&&n.push(t)}}let r=e.length-1;for(let e of n)t.set(e,r);return t}function U_(e,t,n){if(e.length===0||t<=0)return[];let r=H_(e),i=B_(e),a=[];for(let r=0;r<e.length;r+=1){let o=i.get(r);if(o==null||o.length===0)break;let s=t+r*n,c=V_(o,Math.min(e.length-1,Math.floor(s/n))),l=null;for(;c>=0;){let t=o[c],n=t==null?null:e[t]??null;if(n!=null&&(r===0||n.ancestorPaths[r-1]===a[r-1]?.path)){l=n;break}--c}if(l==null)break;a.push(l)}return a.map((i,a)=>{let o=a*n,s=(r.get(i.path)??e.length-1)+1;if(s>=e.length)return{row:i,top:o};let c=s*n-t;return{row:i,top:Math.min(o,c-n)}}).filter(e=>e.top+n>0)}function W_(e,t){let n=t.totalRowCount??e.length,r=n*t.itemHeight,i=Math.max(0,t.viewportHeight),a=Math.max(0,Math.floor(t.overscan)),o=Math.max(0,r-i),s=P_(t.scrollTop,0,o),c=t.stickyRows??U_(e,s,t.itemHeight),l=c.reduce((e,n)=>Math.max(e,n.top+t.itemHeight),0),u=Math.min(r,s+l),d=Math.max(0,i-l),f=Math.max(0,r-u),p=R_(s,n,t.itemHeight),m=R_(u,n,t.itemHeight),h=l<=0||p<0||p>=n?-1:p,g=h===-1?-1:Math.min(n-1,m-1),_=h===-1||g<h?0:g-h+1,v=d<=0||m>=n?N_:F_(m,z_(u+d,n,t.itemHeight)),y=g+1,b=I_(v)?N_:F_(Math.max(y,v.startIndex-a),Math.min(n-1,v.endIndex+a)),x=L_(b,t.itemHeight);return{occlusion:{firstOccludedIndex:h,lastOccludedIndex:g,occludedCount:_},physical:{itemHeight:t.itemHeight,maxScrollTop:o,overscan:a,scrollTop:s,totalHeight:r,totalRowCount:n,viewportHeight:i},projected:{contentHeight:f,paneHeight:d,paneTop:u},sticky:{height:l,rows:c},visible:v,window:{endIndex:b.endIndex,height:x,offsetTop:I_(b)?0:b.startIndex*t.itemHeight,startIndex:b.startIndex}}}var G_={added:`A`,deleted:`D`,ignored:null,modified:`M`,renamed:`R`,untracked:`U`},K_={added:`Git status: added`,deleted:`Git status: deleted`,ignored:`Git status: ignored`,modified:`Git status: modified`,renamed:`Git status: renamed`,untracked:`Git status: untracked`},q_=`Contains git status items`;function J_(e){return e.current?!0:(e.current=!0,!1)}function Y_(e){let{currentScrollTop:t,focusedIndex:n,itemHeight:r,topInset:i=0,viewportHeight:a}=e;if(n<0)return null;let o=Math.max(0,i),s=n*r,c=s+r;if(s<t+o){let e=Math.max(0,s-o);return e===t?null:e}if(c>t+a){let e=c-a;return e===t?null:e}return null}function X_(e){let{currentScrollTop:t,focusedIndex:n,itemHeight:r,offset:i,topInset:a=0,totalHeight:o,viewportHeight:s}=e;if(i===`nearest`)return Y_({currentScrollTop:t,focusedIndex:n,itemHeight:r,topInset:a,viewportHeight:s});if(n<0)return null;let c=Math.max(0,a),l=n*r,u=Math.max(0,s-c),d=i===`center`?c+Math.max(0,(u-r)/2):c,f=Math.max(0,o-s),p=Math.max(0,Math.min(l-d,f));return p===t?null:p}function Z_(e){let{currentScrollTop:t,focusedIndex:n,itemHeight:r,targetViewportOffset:i,totalHeight:a,viewportHeight:o}=e;if(n<0)return null;let s=Math.max(0,i),c=n*r,l=c+r,u=t+s,d=t+o;if(c>=u&&l<=d)return null;let f=Math.max(0,a-o),p=Math.max(0,Math.min(c-s,f));return p===t?null:p}function Q_(e){if(e==null||!e.isConnected||e===document.body||e===document.documentElement)return!1;e.focus({preventScroll:!0});let t=e.getRootNode();return t instanceof ShadowRoot?t.activeElement===e:document.activeElement===e}function $_(e){let t=e.getRootNode();if(t instanceof ShadowRoot){let e=t.activeElement;return e instanceof HTMLElement?e:null}let n=document.activeElement;return n instanceof HTMLElement&&e.contains(n)?n:null}function ev(e,t){if(e==null)return t;let n=e.getBoundingClientRect().height;return n>0?n:e.clientHeight>0?e.clientHeight:t}function tv(e,t){return e!=null&&e>0?e:t}function nv(e){let t=e.borderBoxSize,n=Array.isArray(t)?t[0]:t;return n!=null&&Number.isFinite(n.blockSize)&&n.blockSize>0?n.blockSize:e.contentRect.height>0?e.contentRect.height:null}function rv(e,t,n,r,i=0){let a=Y_({currentScrollTop:e.scrollTop,focusedIndex:t,itemHeight:n,topInset:i,viewportHeight:r});return a!=null&&(e.scrollTop=a,!0)}function iv(e,t,n,r,i,a,o=0){let s=X_({currentScrollTop:e.scrollTop,focusedIndex:t,itemHeight:n,offset:a,topInset:o,totalHeight:i,viewportHeight:r});return s!=null&&(e.scrollTop=s,!0)}function av(e,t,n,r,i,a){let o=Z_({currentScrollTop:e.scrollTop,focusedIndex:t,itemHeight:n,targetViewportOffset:a,totalHeight:i,viewportHeight:r});return o!=null&&(e.scrollTop=o,!0)}function ov(e,t,n,r){return n.end<n.start?null:e<n.start?-t:e>n.end?r:null}function sv(e){let{renamingPath:t,previousRenamingPath:n,hasRenderedInput:r}=e;return t==null?`reset`:r?n===t?`ignore`:`focus-input`:`reveal-canonical`}function cv({ariaLabel:e,isFlattened:t=!1,ref:n,value:r,onBlur:i,onInput:a}){return Y(`input`,{ref:n,"data-item-rename-input":!0,...t?{"data-item-flattened-rename-input":!0}:{},"aria-label":e,value:r,onBlur:i,onInput:a,onClick:e=>e.stopPropagation(),onMouseDown:e=>e.stopPropagation(),onPointerDown:e=>e.stopPropagation()})}function lv(e){let{row:t,mode:n,targetPath:r,ariaLabel:i,domId:a,isParked:o,itemHeight:s,features:c,state:l,extraStyle:u}=e,d=n===`sticky`,f=t.ancestorPaths.at(-1)??``,p={};return l.isFocusRinged&&(p[`data-item-focused`]=!0),t.isSelected&&(p[`data-item-selected`]=!0),l.isContextHovered&&(p[`data-item-context-hover`]=`true`),l.isDragTarget&&(p[`data-item-drag-target`]=!0),l.isDragging&&(p[`data-item-dragging`]=!0),l.effectiveGitStatus!=null&&(p[`data-item-git-status`]=l.effectiveGitStatus),l.containsGitChange&&(p[`data-item-contains-git-change`]=`true`),{"aria-expanded":!d&&t.kind===`directory`?t.isExpanded:void 0,"aria-haspopup":c.contextMenuEnabled?`menu`:void 0,"aria-label":i,"aria-level":d?void 0:t.level+1,"aria-posinset":d?void 0:t.posInSet+1,"aria-selected":d?void 0:t.isSelected?`true`:`false`,"aria-setsize":d?void 0:t.setSize,"data-file-tree-sticky-path":d?r:void 0,"data-file-tree-sticky-row":d?`true`:void 0,"data-item-context-menu-button-visibility":c.actionLaneEnabled?c.contextMenuButtonVisibility:void 0,"data-item-context-menu-trigger-mode":c.contextMenuEnabled?c.contextMenuTriggerMode:void 0,"data-item-has-context-menu-action-lane":c.actionLaneEnabled?`true`:void 0,"data-item-has-git-lane":c.gitLaneActive?`true`:void 0,"data-item-parent-path":f.length>0?f:void 0,"data-item-parked":o?`true`:void 0,"data-item-path":r,"data-item-type":t.kind===`directory`?`folder`:`file`,"data-type":`item`,id:d?void 0:a,role:d?void 0:`treeitem`,style:{minHeight:`${s}px`,...u},tabIndex:!d&&t.isFocused?0:-1,...p}}function uv(e){let{event:t,mode:n,isSearchOpen:r,isDirectory:i}=e,a=t.ctrlKey||t.metaKey,o=t.shiftKey||a,s=t.shiftKey?{additive:a,kind:`range`}:a?{kind:`toggle`}:{kind:`single`};return{closeSearch:r,revealCanonical:n===`sticky`,selection:s,toggleDirectory:!o&&i}}var dv,X,fv,pv,mv=Object.is,hv=0,gv=[],Z=J,_v=Z.__b,vv=Z.__r,yv=Z.diffed,bv=Z.__c,xv=Z.unmount,Sv=Z.__;function Cv(e,t){Z.__h&&Z.__h(X,e,hv||t),hv=0;var n=X.__H||(X.__H={__:[],__h:[]});return e>=n.__.length&&n.__.push({}),n.__[e]}function wv(e){return hv=1,Tv(Fv,e)}function Tv(e,t,n){var r=Cv(dv++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):Fv(void 0,t),function(e){var t=r.__N?r.__N[0]:r.__[0],n=r.t(t,e);mv(t,n)||(r.__N=[n,r.__[1]],r.__c.setState({}))}],r.__c=X,!X.__f)){var i=function(e,t,n){if(!r.__c.__H)return!0;var i=r.__c.__H.__.filter(function(e){return!!e.__c});if(i.every(function(e){return!e.__N}))return!a||a.call(this,e,t,n);var o=r.__c.props!==e;return i.forEach(function(e){if(e.__N){var t=e.__[0];e.__=e.__N,e.__N=void 0,mv(t,e.__[0])||(o=!0)}}),a&&a.call(this,e,t,n)||o};X.__f=!0;var a=X.shouldComponentUpdate,o=X.componentWillUpdate;X.componentWillUpdate=function(e,t,n){if(4&this.__g){var r=a;a=void 0,i(e,t,n),a=r}o&&o.call(this,e,t,n)},X.shouldComponentUpdate=i}return r.__N||r.__}function Ev(e,t){var n=Cv(dv++,3);!Z.__s&&Pv(n.__H,t)&&(n.__=e,n.u=t,X.__H.__h.push(n))}function Dv(e,t){var n=Cv(dv++,4);!Z.__s&&Pv(n.__H,t)&&(n.__=e,n.u=t,X.__h.push(n))}function Q(e){return hv=5,Ov(function(){return{current:e}},[])}function Ov(e,t){var n=Cv(dv++,7);return Pv(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function $(e,t){return hv=8,Ov(function(){return e},t)}function kv(){for(var e;e=gv.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(Mv),e.__H.__h.forEach(Nv),e.__H.__h=[]}catch(t){e.__H.__h=[],Z.__e(t,e.__v)}}Z.__b=function(e){X=null,_v&&_v(e)},Z.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),Sv&&Sv(e,t)},Z.__r=function(e){vv&&vv(e),dv=0;var t=(X=e.__c).__H;t&&(fv===X?(t.__h=[],X.__h=[],t.__.forEach(function(e){e.__N&&(e.__=e.__N),e.u=e.__N=void 0})):(t.__h.forEach(Mv),t.__h.forEach(Nv),t.__h=[],dv=0)),fv=X},Z.diffed=function(e){yv&&yv(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(gv.push(t)!==1&&pv===Z.requestAnimationFrame||((pv=Z.requestAnimationFrame)||jv)(kv)),t.__H.__.forEach(function(e){e.u&&(e.__H=e.u),e.u=void 0})),fv=X=null},Z.__c=function(e,t){t.some(function(e){try{e.__h.forEach(Mv),e.__h=e.__h.filter(function(e){return!e.__||Nv(e)})}catch(n){t.some(function(e){e.__h&&=[]}),t=[],Z.__e(n,e.__v)}}),bv&&bv(e,t)},Z.unmount=function(e){xv&&xv(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(e){try{Mv(e)}catch(e){t=e}}),n.__H=void 0,t&&Z.__e(t,n.__v))};var Av=typeof requestAnimationFrame==`function`;function jv(e){var t,n=function(){clearTimeout(r),Av&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,35);Av&&(t=requestAnimationFrame(n))}function Mv(e){var t=X,n=e.__c;typeof n==`function`&&(e.__c=void 0,n()),X=t}function Nv(e){var t=X;e.__c=e.__(),X=t}function Pv(e,t){return!e||e.length!==t.length||t.some(function(t,n){return!mv(t,e[n])})}function Fv(e,t){return typeof t==`function`?t(e):t}function Iv(e,t=null,n=null){"use no memo";let r=e.flattenedSegments;return r==null||r.length===0?t??e.name:Y(`span`,{"data-item-flattened-subitems":!0,children:r.map((e,i)=>{let a=i===r.length-1;return Y(Wg,{children:[Y(`span`,{"data-item-flattened-subitem":e.path,"data-item-flattened-subitem-drag-target":n===e.path?`true`:void 0,children:a&&t!=null?t:Y(A_,{children:e.name})}),i<r.length-1?` / `:``]},e.path)})})}function Lv(e){return e.isFlattened?e.flattenedSegments?.findLast(e=>e.isTerminal)?.path??e.path:e.path}function Rv(e){let t=e.flattenedSegments;return t==null||t.length===0?e.name:t.map(e=>e.name).join(` / `)}function zv(e,t,n,r){return e.map((e,i)=>{let a=i*n,o=e.subtreeEndIndex+1;if(o>=r)return{row:e.row,top:a};let s=o*n-t;return{row:e.row,top:Math.min(a,s-n)}}).filter(e=>e.top+n>0)}function Bv({controller:e,itemHeight:t,overscan:n,scrollTop:r,stickyFolders:i,viewportHeight:a}){let o=e.getVisibleCount(),s=i&&o>0?e.getStickyRowCandidates(r,t):[],c=s==null&&i&&o>0?e.getVisibleRows(0,o-1):[],l=W_(c,{itemHeight:t,overscan:n,scrollTop:r,stickyRows:s==null?void 0:zv(s,r,t,o),totalRowCount:o,viewportHeight:a}),u=i&&r<=0&&o>0?e.getStickyRowCandidates(1,t):[],d=u!=null&&r<=0?zv(u,1,t,o):i&&r<=0&&c.length>0?U_(c,1,t):l.sticky.rows;return{overlayHeight:d.reduce((e,n)=>Math.max(e,n.top+t),0),overlayRows:d,snapshot:l,visibleRows:c}}var Vv=400,Hv=40,Uv=18;function Wv(e,t,n){let r=e,i=document.elementFromPoint?.bind(document)??null,a=r.elementFromPoint?.(t,n)??i?.(t,n)??null;return e instanceof ShadowRoot&&(a==null||!e.contains(a))?Gv(e,t,n):a instanceof HTMLElement?a:null}function Gv(e,t,n){let r=Array.from(e.querySelectorAll(`[data-type="item"], [data-item-flattened-subitem]`));for(let e=r.length-1;e>=0;e--){let i=r[e],a=i.getBoundingClientRect();if(t>=a.left&&t<=a.right&&n>=a.top&&n<=a.bottom)return i}return null}function Kv(e){let t=e?.closest?.(`[data-type="item"]`);if(!(t instanceof HTMLElement))return null;let n=t.dataset.itemPath??null;if(n==null)return null;let r=e?.closest?.(`[data-item-flattened-subitem]`),i=r instanceof HTMLElement?r.getAttribute(`data-item-flattened-subitem`)??null:null;if(i!=null&&i.endsWith(`/`))return{directoryPath:i,flattenedSegmentPath:i,hoveredPath:n,kind:`directory`};if(t.dataset.itemType===`folder`)return{directoryPath:n,flattenedSegmentPath:null,hoveredPath:n,kind:`directory`};let a=t.dataset.itemParentPath??null;return a==null||a.length===0?{directoryPath:null,flattenedSegmentPath:null,hoveredPath:n,kind:`root`}:{directoryPath:a,flattenedSegmentPath:null,hoveredPath:n,kind:`directory`}}function qv(e){let t=e.cloneNode(!0);return t.removeAttribute(`id`),t.dataset.fileTreeDragPreview=`true`,t.setAttribute(`aria-hidden`,`true`),t.tabIndex=-1,Object.assign(t.style,{boxShadow:`0 4px 12px rgba(0, 0, 0, 0.15)`,left:`0px`,margin:`0`,pointerEvents:`none`,position:`fixed`,top:`0px`,willChange:`transform`,zIndex:`10000`}),t}function Jv(){return navigator.vendor!==`Apple Computer, Inc.`}function Yv(e,t){let n=e-t.top;if(n<Hv)return-Math.ceil((Hv-Math.max(0,n))/Hv*Uv);let r=t.bottom-e;return r<Hv?Math.ceil((Hv-Math.max(0,r))/Hv*Uv):0}function Xv(e,t){if(e!=null){let t=G_[e];return t==null?null:{text:t,title:K_[e]}}return t?{icon:{name:`file-tree-icon-dot`,width:6,height:6},title:q_}:null}function Zv(e,t,n){if(t==null||t.size===0)return null;let r=[];for(let i=e.length-1;i>=0;--i){let a=e[i],o=n.get(a);if(o!=null){for(let e of r)n.set(e,o);return o?`ignored`:null}if(t.has(a)){n.set(a,!0);for(let e of r)n.set(e,!0);return`ignored`}r.push(a)}for(let e of r)n.set(e,!1);return null}function Qv(e){return e!=null&&`toggle`in e}function $v(e){return e.code===`Space`||e.key===` `||e.key===`Spacebar`}function ey(e){return e.key.length===1&&/^[\p{L}\p{N}]$/u.test(e.key)&&!e.ctrlKey&&!e.metaKey&&!e.altKey}function ty(e){return e==null?``:`[data-item-section="spacing-item"][data-ancestor-path="${e.replaceAll(`\\`,`\\\\`).replaceAll(`"`,`\\"`)}"] { opacity: 1; }`}function ny(e){return e.shiftKey&&e.key===`F10`||e.key===`ContextMenu`}function ry(e,t){return t&&ny(e)||(e.ctrlKey||e.metaKey)&&$v(e)?!0:e.key===`ArrowDown`||e.key===`ArrowLeft`||e.key===`ArrowRight`||e.key===`ArrowUp`}var iy=new Set([`ArrowDown`,`ArrowLeft`,`ArrowRight`,`ArrowUp`,`End`,`Home`,`PageDown`,`PageUp`]);function ay(e){for(let t of e.composedPath())if(t instanceof HTMLElement&&(t.dataset.fileTreeContextMenuRoot===`true`||t.dataset.type===`context-menu-anchor`||t.dataset.type===`context-menu-trigger`||t.getAttribute(`slot`)===`context-menu`))return!0;return!1}function oy(e){return{bottom:e.bottom,height:e.height,left:e.left,right:e.right,top:e.top,width:e.width,x:e.x,y:e.y}}function sy(e,t){return{bottom:t,height:0,left:e,right:e,top:t,width:0,x:e,y:t}}function cy(e,t){if(e==null)return t.offsetTop;let n=t.getBoundingClientRect(),r=e.getBoundingClientRect();return n.top-r.top}function ly(e,t,n){if(n==null){e.delete(t);return}e.set(t,n)}function uy(e,t,n){if(e==null)return null;let r=t.get(e)??null;if(r!=null)return r;let i=n.get(e)??null;return i?.dataset.itemParked===`true`?null:i}function dy(e){if(e==null)return[];let t=[];for(let n of e.querySelectorAll(`button[data-file-tree-sticky-row="true"]`)){if(!(n instanceof HTMLElement))continue;let e=n.dataset.fileTreeStickyPath;e!=null&&t.push(e)}return t}function fy(e,t){if(e==null||t==null)return null;for(let n of e.querySelectorAll(`button[data-item-focused="true"][data-item-parked="true"]`))if(n instanceof HTMLElement&&n.dataset.itemPath===t)return n;return null}function py(e,t,n,r,i,a,o){let s=Math.max(0,a-i),c=t?.getBoundingClientRect()??null,l=c==null||n==null?null:n.getBoundingClientRect().top-c.top,u=fy(e,r),d=c==null||u==null?null:u.getBoundingClientRect().top-c.top;return Math.max(0,Math.min(d??Math.max(l??0,s),Math.max(0,o-i)))}function my(e,t){return{kind:e.kind,name:Rv(e),path:t}}function hy(e){return e==null?void 0:`${e}__tree`}function gy(e,t,n){if(e!=null)return`${e}__focused-item-${encodeURIComponent(t)}${n?`__parked`:``}`}function _y(e){return e===`file-tree-icon-chevron`||e===`file-tree-icon-dot`||e===`file-tree-icon-file`||e===`file-tree-icon-lock`}function vy(e,t){if(e==null)return null;if(`text`in e)return e.parts==null?Y(`span`,{title:e.title,children:e.text}):Y(`span`,{title:e.title,children:e.parts.map((e,t)=>Y(`span`,{style:{color:e.color},children:e.text},t))});let n=typeof e.icon==`string`?_y(e.icon)?t(e.icon):{name:e.icon}:_y(e.icon.name)?(()=>{let n=t(e.icon.name),{name:r,...i}=e.icon;return{...n,...i}})():e.icon;return Y(`span`,{title:e.title,children:Y(__,{...n})})}function yy(e){e!=null&&Q_(e.querySelector([`button:not([disabled])`,`[href]`,`input:not([disabled])`,`select:not([disabled])`,`textarea:not([disabled])`,`[tabindex]:not([tabindex="-1"])`].join(`, `))??e)}function by(e,t,{actionLaneEnabled:n=!1,customDecoration:r=null,decorationLaneEnabled:i=!1,dragTargetFlattenedSegmentPath:a=null,gitDecoration:o=null,gitLaneActive:s=!1,renameInput:c=null,showDecorativeActionAffordance:l=!1}={}){let u=Lv(e);return Y(Wg,{children:[e.depth>0?Y(`div`,{"data-item-section":`spacing`,children:Array.from({length:e.depth}).map((t,n)=>Y(`div`,{"data-item-section":`spacing-item`,"data-ancestor-path":e.ancestorPaths[n]},n))}):null,Y(`div`,{"data-item-section":`icon`,children:e.kind===`directory`?Y(__,{...t(`file-tree-icon-chevron`)}):Y(__,{...t(`file-tree-icon-file`,u)})}),Y(`div`,{"data-item-section":`content`,children:e.isFlattened?Iv(e,c,a):c??Y(M_,{minimumLength:5,split:`extension`,children:e.name})}),i?Y(`div`,{"data-item-section":`decoration`,children:r==null?null:vy(r,t)}):null,s?Y(`div`,{"data-item-section":`git`,children:vy(o,t)}):null,n?Y(`div`,{"data-item-section":`action`,children:l?Y(`span`,{"aria-hidden":`true`,"data-item-action-affordance":`decorative`,children:Y(__,{...t(`file-tree-icon-ellipsis`)})}):null}):null]})}function xy(e,t,n,r={}){let{controller:i,renameView:a,visualFocusPath:o,contextHoverPath:s,draggedPathSet:c,dragTarget:l,dragAndDropEnabled:u,shouldSuppressContextMenu:d,handleRowDragStart:f,handleRowDragEnd:p,handleRowTouchStart:m,instanceId:h,itemHeight:g,gitStatusByPath:_,ignoredGitDirectories:v,ignoredInheritanceCache:y,directoriesWithGitChanges:b,gitLaneActive:x,contextMenuEnabled:S,contextMenuTriggerMode:C,contextMenuButtonTriggerEnabled:ee,contextMenuButtonVisibility:te,contextMenuRightClickEnabled:w,registerRenameInput:T,registerButton:E,resolveIcon:ne,renderDecorationForRow:re,openContextMenuForRow:ie,onRowClick:D,onKeyDown:ae}=e,O=Lv(t),{isParked:oe=!1,mode:se=`flow`,style:ce}=r,le=se===`sticky`,ue=_?.get(O)??null??Zv(t.ancestorPaths,v,y),de=t.kind===`directory`&&(b?.has(O)??!1),fe=re(t,O),pe=Xv(ue,de),me=S&&ee,k=fe!=null||x||me,he=me&&te===`always`,ge=a.getPath()===O,_e=ge?a.getValue():``,ve=le||!ge?null:Y(cv,{ref:T,ariaLabel:`Rename ${Rv(t)}`,isFlattened:t.isFlattened,value:_e,onBlur:()=>{a.commit()},onInput:e=>{a.setValue(e.currentTarget.value)}}),ye=by(t,ne,{actionLaneEnabled:me,customDecoration:fe,decorationLaneEnabled:k,dragTargetFlattenedSegmentPath:l?.flattenedSegmentPath??null,gitDecoration:pe,gitLaneActive:x,renameInput:ve,showDecorativeActionAffordance:he}),be={...lv({ariaLabel:Rv(t),domId:t.isFocused?gy(h,O,oe):void 0,extraStyle:ce,features:{actionLaneEnabled:me,contextMenuButtonVisibility:me?te:null,contextMenuEnabled:S,contextMenuTriggerMode:S?C:null,gitLaneActive:x},isParked:oe,itemHeight:g,mode:se,row:t,state:{containsGitChange:de,effectiveGitStatus:ue,isContextHovered:s===O,isDragTarget:l?.kind===`directory`&&l.directoryPath===O,isDragging:c?.has(O)===!0,isFocusRinged:t.isFocused&&o===O},targetPath:O}),key:n,onContextMenu:S||u?e=>{if(d()){e.preventDefault();return}S&&(e.preventDefault(),w&&(i.focusMountedPathFromInput(O),ie(t,O,{anchorRect:sy(e.clientX,e.clientY),source:`right-click`})))}:void 0,onFocus:le?void 0:()=>{i.focusMountedPathFromInput(O)},onKeyDown:le?void 0:ae,ref:e=>{E(O,e)}};return!le&&ge?Y(`div`,{...be,children:ye}):Y(`button`,{...be,type:`button`,draggable:u&&!oe,onDragEnd:u&&!oe?p:void 0,onDragStart:u&&!oe?e=>{f(e,t,O)}:void 0,onMouseDown:e=>{if(le){e.preventDefault();return}i.isSearchOpen()&&e.preventDefault()},onTouchStart:u&&!oe?e=>{m(e,t,O)}:void 0,onClick:e=>{D(e,t,O,se)},children:ye})}function Sy(e,t,n){return t.end<t.start?[]:e.controller.getVisibleRows(t.start,t.end).filter(e=>!n.has(Lv(e))).map((n,r)=>xy(e,n,t.start+r))}function Cy({composition:e,controller:t,gitStatusByPath:n,ignoredGitDirectories:r,directoriesWithGitChanges:i,icons:a,instanceId:o,itemHeight:s=gh,overscan:c=10,renamingEnabled:l=!1,renderRowDecoration:u,searchBlurBehavior:d=`close`,searchEnabled:f=!1,searchFakeFocus:p=!1,slotHost:m,stickyFolders:h=!1,initialViewportHeight:g=420}){"use no memo";let _=Q(null),v=Q(null),y=Q(!1),b=Q(null),x=Q(null),S=Q(null),C=Q(null),ee=Q(null),te=Q(new Map),w=Q(new Map),T=Q(()=>{}),E=Q(null),ne=Q(0),re=Q(!1),ie=Q(null);ie.current!==t&&(re.current=!1,ie.current=t);let D=Q(!1),ae=Q(null),O=Q(null),oe=Q(!1),se=Q(null),ce=Q(null),le=Q(null),ue=Q(null),de=Q(null),fe=Q(null),pe=Q(null),me=Q(null),k=Q(!1),he=Q(null),ge=Q(null),_e=Q(null),ve=Q(null),ye=Ov(()=>new Map,[]),[,be]=wv(0),xe=Q(!1),[Se,Ce]=wv(null),[we,Te]=wv(null),[A,Ee]=wv(null),[j,M]=wv(null),[De,Oe]=wv(0),[N,ke]=wv(null),Ae=Q(N);Ae.current=N;let je=Q(null),Me=Q(null),Ne=Q(null),Pe=Q(null),Fe=Q(null),Ie=Q(!1),Le=()=>{Me.current=null,Ne.current=null,Pe.current=null},Re=(e,t)=>{Me.current=e,Ne.current=null,Pe.current=t==null?null:{path:e,scrollTop:t}},ze=(e,t)=>{Me.current=null,Ne.current={path:e,viewportOffset:t},Pe.current=null},Be=Q(d===`retain`&&t.isSearchOpen()),[Ve,He]=wv(p);Ev(()=>{p||He(!1)},[p]);let Ue=Q(!1),We=$(()=>{Ue.current=!0,He(e=>e&&!1)},[]),[Ge,Ke]=wv(()=>Bv({controller:t,itemHeight:s,overscan:c,scrollTop:0,stickyFolders:h,viewportHeight:g})),[qe,Je]=wv(!1);Ev(()=>{Je(!0)},[]);let P=e?.contextMenu?.enabled===!0||e?.contextMenu?.render!=null||e?.contextMenu?.onOpen!=null||e?.contextMenu?.onClose!=null,Ye=e?.contextMenu?.triggerMode??(P?`right-click`:`both`),Xe=Ye===`both`||Ye===`button`,Ze=e?.contextMenu?.buttonVisibility??`when-needed`,Qe=Ye===`both`||Ye===`right-click`;Dv(()=>{let e=S.current;if(e==null)return;let t=e=>{if(!(e instanceof CustomEvent))return;let t=e.detail?.path??null;Fe.current=t,Te(t),M(t==null?null:`pointer`)},n=e=>{e instanceof CustomEvent&&(Ie.current=e.detail?.disabled===!0)};return e.addEventListener(`file-tree-debug-set-context-menu-trigger`,t),e.addEventListener(`file-tree-debug-set-scroll-suppression`,n),()=>{e.removeEventListener(`file-tree-debug-set-context-menu-trigger`,t),e.removeEventListener(`file-tree-debug-set-scroll-suppression`,n)}},[]);let $e=$((e,t)=>{ly(te.current,e,t)},[]),et=$((e,t)=>{ly(w.current,e,t)},[]),tt=$(e=>{x.current=e},[]),nt=$(e=>uy(e,w.current,te.current),[]),rt=n!=null||r!=null||i!=null,{resolveIcon:it}=Ov(()=>Fd(a),[a]),at=t[sg](),ot=at.getPath(),st=ot!=null,ct=t.isSearchOpen(),lt=t.getSearchValue(),F=t.getFocusedPath(),I=t.getFocusedIndex(),ut=t.getScrollRequest(),dt=t.isDragAndDropEnabled(),ft=t.getDragSession(),pt=Ov(()=>ft==null?null:new Set(ft.draggedPaths),[ft]),mt=ft?.target??null,ht=ft?.primaryPath??null,gt=hy(o),{overlayHeight:_t,overlayRows:vt,snapshot:L,visibleRows:yt}=Ge,R=L.physical.viewportHeight,bt=Ov(()=>({end:L.window.endIndex,start:L.window.startIndex}),[L.window.endIndex,L.window.startIndex]),xt=vt,St=L.sticky.rows,Ct=L.physical.totalHeight,wt=L.sticky.height,Tt=Ov(()=>new Set(St.map(e=>Lv(e.row))),[St]),Et=I>=0&&I>=bt.start&&I<=bt.end,Dt=$((e,t)=>u?.({item:my(e,t),row:e})??null,[u]),Ot=$(e=>Q_(e==null?null:te.current.get(e)??null)?!0:Q_(S.current),[]),kt=$(e=>{Ot(t.focusNearestPath(e))},[t,Ot]),At=Q(kt);At.current=kt;let jt=Q(!0),Mt=Q(()=>{}),Nt=$((t=!0)=>{let n=Ae.current;n!=null&&(jt.current=jt.current&&t,ke(null),e?.contextMenu?.onClose?.(),jt.current&&kt(n.path))},[e?.contextMenu,kt]);Mt.current=Nt;let Pt=$(e=>{let t=e==null?null:cy(S.current,e);Ee(e=>e===t?e:t)},[]),Ft=$((e,n,r)=>{let i=t.getItem(n);if(i==null)return;let a=nt(n);if(a?.dataset.fileTreeStickyRow===`true`){let e=C.current;Re(n,e?.scrollTop??null),D.current=!0,Ce(e=>e===n?e:n)}i.focus(),Pt(a),jt.current=!0,ke({anchorRect:r?.anchorRect??null,item:my(e,n),path:n,source:r?.source??`keyboard`})},[t,nt,Pt]),It=$(e=>{if(l){if(t.isSearchOpen()){let e=C.current,t=ev(e,R);se.current=I<0||e==null?null:Math.max(0,Math.min(I*s-e.scrollTop,Math.max(0,t-s))),oe.current=!0}t.startRenaming(e)!==!1&&(M(`focus`),be(e=>e+1))}},[t,I,s,l,R]),Lt=$((e,{restoreTreeFocus:n=!0,targetOffset:r=`live-overlay`}={})=>{let i=C.current;if(i==null)return!1;t.focusPath(e);let a=t.getFocusedIndex();if(a<0)return!1;let o=t.getVisibleRows(a,a)[0]??null;if(o==null)return!1;let l=ev(i,R),u=t.getVisibleCount()*s,d=r===`sticky-parents`?o.ancestorPaths.length*s:Bv({controller:t,itemHeight:s,overscan:c,scrollTop:i.scrollTop,stickyFolders:h,viewportHeight:l}).snapshot.sticky.height;return D.current=!0,av(i,a,s,l,u,d),T.current(),je.current=n?e:null,!0},[t,s,c,R,h]),Rt=()=>y.current===!0||ve.current!=null||k.current===!0,zt=e=>typeof window.requestAnimationFrame==`function`?window.requestAnimationFrame(()=>{e()}):window.setTimeout(e,16),Bt=e=>{if(e!=null){if(typeof window.cancelAnimationFrame==`function`){window.cancelAnimationFrame(e);return}window.clearTimeout(e)}},Vt=()=>{ue.current!=null&&(clearTimeout(ue.current),ue.current=null),le.current=null},Ht=()=>{fe.current?.remove(),fe.current=null},Ut=()=>{Bt(ce.current),ce.current=null,de.current=null},Wt=e=>{let t=S.current?.getRootNode();if(t instanceof ShadowRoot){t.append(e);return}document.body.append(e)},Gt=()=>{me.current?.(),me.current=null,ve.current!=null&&(clearTimeout(ve.current),ve.current=null),k.current=!1,he.current=null,_e.current=null,ge.current!=null&&(ge.current.setAttribute(`draggable`,`true`),ge.current.style.removeProperty(`touch-action`),ge.current=null),Ht(),Vt(),Ut(),pe.current=null},Kt=(e,n)=>{let r=S.current?.getRootNode(),i=Kv(Wv(r instanceof ShadowRoot?r:document,e,n));return t.setDragTarget(i),t.getDragSession()?.target??null},qt=e=>{let n=t.getDragAndDropConfig()?.openOnDropDelay??800;if(e==null||e.kind!==`directory`||e.directoryPath==null||n<=0){Vt();return}let r=t.getItem(e.directoryPath),i=Qv(r)?r:null;if(i==null||i.isExpanded()){Vt();return}let a=`${e.directoryPath}::${e.flattenedSegmentPath??``}`;le.current!==a&&(Vt(),le.current=a,ue.current=setTimeout(()=>{let n=t.getDragSession()?.target;n?.kind===`directory`&&n.directoryPath===e.directoryPath&&n.flattenedSegmentPath===e.flattenedSegmentPath&&i.expand()},n))},Jt=()=>{ce.current=null;let e=de.current,n=C.current;if(e==null||n==null||t.getDragSession()==null)return;let r=n.getBoundingClientRect(),i=Yv(e.clientY,r);if(i===0)return;let a=Math.max(0,n.scrollHeight-n.clientHeight),o=Math.max(0,Math.min(a,n.scrollTop+i));o!==n.scrollTop&&(n.scrollTop=o,T.current()),qt(Kt(e.clientX,e.clientY)),ce.current=zt(Jt)},Yt=(e,t)=>{de.current={clientX:e,clientY:t},ce.current??=zt(Jt)},Xt=(e,n,r)=>{let i=e.currentTarget;if(i!=null){if(Gt(),Ht(),Vt(),Ut(),t.startDrag(r)===!1){e.preventDefault();return}if(pe.current=n,e.dataTransfer!=null&&(e.dataTransfer.effectAllowed=`move`,e.dataTransfer.dropEffect=`move`,e.dataTransfer.setData(`text/plain`,r),Jv())){let t=qv(i),n=i.getBoundingClientRect();Object.assign(t.style,{height:`${n.height}px`,opacity:`0.85`,transform:`translate3d(-9999px, 0px, 0)`,width:`${n.width}px`}),Wt(t),fe.current=t,e.dataTransfer.setDragImage(t,Math.max(0,e.clientX-n.left),Math.max(0,e.clientY-n.top))}}},Zt=()=>{Ht(),Vt(),Ut(),pe.current=null,t.cancelDrag()},Qt=(e,n,r)=>{if(ve.current!=null||k.current)return;let i=e.touches[0],a=e.currentTarget;if(i==null||a==null)return;_e.current={clientX:i.clientX,clientY:i.clientY},ge.current=a,a.setAttribute(`draggable`,`false`);let o=(e={})=>{let t=e.restoreNativeDraggable??!k.current;ve.current!=null&&(clearTimeout(ve.current),ve.current=null),document.removeEventListener(`touchmove`,s),document.removeEventListener(`touchend`,c),document.removeEventListener(`touchcancel`,c),me.current===o&&(me.current=null),t&&(a.setAttribute(`draggable`,`true`),ge.current===a&&(ge.current=null),_e.current=null)},s=e=>{let t=e.touches[0],n=_e.current;if(t==null||n==null)return;let r=t.clientX-n.clientX,i=t.clientY-n.clientY;r*r+i*i<=100||o()},c=()=>{o()};document.addEventListener(`touchmove`,s,{passive:!0}),document.addEventListener(`touchend`,c),document.addEventListener(`touchcancel`,c),me.current=o,ve.current=setTimeout(()=>{if(o({restoreNativeDraggable:!1}),t.startDrag(r)===!1){a.setAttribute(`draggable`,`true`),ge.current===a&&(ge.current=null),_e.current=null;return}k.current=!0,ge.current=a,a.setAttribute(`draggable`,`false`),a.style.setProperty(`touch-action`,`none`),pe.current=n;let e=a.getBoundingClientRect(),s=qv(a);Object.assign(s.style,{height:`${e.height}px`,opacity:`0.85`,transform:`translate3d(${e.left}px, ${e.top}px, 0)`,width:`${e.width}px`}),Wt(s),fe.current=s,he.current={x:i.clientX-e.left,y:i.clientY-e.top};let c=e=>{let t=e.touches[0];if(t==null)return;e.preventDefault();let n=he.current;n!=null&&fe.current!=null&&(fe.current.style.transform=`translate3d(${t.clientX-n.x}px, ${t.clientY-n.y}px, 0)`),qt(Kt(t.clientX,t.clientY)),Yt(t.clientX,t.clientY)},l=e=>{let n=e.changedTouches[0];n!=null&&Kt(n.clientX,n.clientY),t.completeDrag(),Gt()},u=()=>{t.cancelDrag(),Gt()};me.current=()=>{document.removeEventListener(`touchmove`,c),document.removeEventListener(`touchend`,l),document.removeEventListener(`touchcancel`,u)},document.addEventListener(`touchmove`,c,{passive:!1}),document.addEventListener(`touchend`,l),document.addEventListener(`touchcancel`,u)},Vv)},$t=e=>{if(N!=null){if(e.key===`Escape`){Nt(),e.preventDefault(),e.stopPropagation();return}iy.has(e.key)&&(e.preventDefault(),e.stopPropagation());return}if(at.isActive()){if(e.isComposing||e.keyCode===229)return;if(e.key===`Escape`)at.cancel();else if(e.key===`Enter`)at.commit();else return;M(`focus`),be(e=>e+1),e.preventDefault(),e.stopPropagation();return}if(l&&e.key===`F2`){It(F??void 0),e.preventDefault(),e.stopPropagation();return}if(ct){if(e.key===`Escape`)oe.current=!1,se.current=null,t.closeSearch();else if(e.key===`Enter`){let e=t.getFocusedPath();e!=null&&t.selectOnlyPath(e);let n=C.current,r=ev(n,R);se.current=I<0||n==null?null:Math.max(0,Math.min(I*s-n.scrollTop,Math.max(0,r-s))),oe.current=!0,t.closeSearch()}else if(e.key===`ArrowDown`)t.focusNextSearchMatch();else if(e.key===`ArrowUp`)t.focusPreviousSearchMatch();else return;M(`focus`),be(e=>e+1),e.preventDefault(),e.stopPropagation();return}if(f&&ey(e)){t.openSearch(e.key),be(e=>e+1),e.preventDefault(),e.stopPropagation();return}let n=P&&ny(e),r=ry(e,P),i=r&&S.current!=null?$_(S.current):null,a=r?new Set(dy(S.current)):new Set,o=i?.dataset.fileTreeStickyPath??null,c=i?.dataset.fileTreeStickyRow===`true`&&o!=null;if(c&&o!==F&&a.has(o)){let e=C.current;Re(o,e?.scrollTop??null),t.focusPath(o)}let u=t.getFocusedPath(),d=t.getFocusedIndex(),p=t.getFocusedItem();if(p==null)return;let m=Qv(p)?p:null,h=u!=null&&(Tt.has(u)||c&&o===u&&a.has(u)),g=e.key===`ArrowDown`||e.key===`ArrowUp`||e.key===`ArrowRight`&&m!=null&&m.isExpanded(),_=e.key===`ArrowLeft`&&h&&m!=null&&m.isExpanded(),v=C.current,y=!0;if(e.shiftKey&&e.key===`ArrowDown`)t.extendSelectionFromFocused(1);else if(e.shiftKey&&e.key===`ArrowUp`)t.extendSelectionFromFocused(-1);else if(n&&u!=null&&d>=0){let e=t.getVisibleRows(d,d)[0]??null,n=uy(u,w.current,te.current);e==null||n==null?y=!1:Ft(e,u)}else if((e.ctrlKey||e.metaKey)&&$v(e))t.toggleFocusedSelection();else if((e.ctrlKey||e.metaKey)&&e.key.toLowerCase()===`a`)t.selectAllVisiblePaths();else switch(e.key){case`ArrowDown`:t.focusNextItem();break;case`ArrowUp`:t.focusPreviousItem();break;case`ArrowRight`:m==null||m.isExpanded()?t.focusNextItem():m.expand();break;case`ArrowLeft`:m!=null&&m.isExpanded()?m.collapse():t.focusParentItem();break;case`Home`:t.focusFirstItem();break;case`End`:t.focusLastItem();break;default:y=!1}if(!y)return;M(`focus`);let b=t.getFocusedPath(),x=b!=null&&(Tt.has(b)||a.has(b)),ee=g&&b!==u,T=n&&c&&o===u&&b===u;if((h||T)&&b!=null&&(ee&&x||T))Re(b,v?.scrollTop??null),D.current=!0,Ce(e=>e===b?e:b);else{let t=e.key===`ArrowUp`&&h&&b!==u;b!=null&&(t||_&&b===u)?(ze(b,py(S.current,v,i,u,s,wt,R)),D.current=!0,Ce(e=>e===b?e:b)):Le()}be(e=>e+1),e.preventDefault(),e.stopPropagation()};Dv(()=>{if(!(!f||!ct)){if(Be.current){Be.current=!1;return}Q_(ee.current)}},[ct,f]),Dv(()=>{let e=x.current;switch(sv({hasRenderedInput:e!=null,previousRenamingPath:O.current,renamingPath:ot})){case`reset`:O.current=null;return;case`reveal-canonical`:ot!=null&&Lt(ot,{restoreTreeFocus:!1,targetOffset:`live-overlay`});return;case`ignore`:return;case`focus-input`:e!=null&&(je.current=null,O.current=ot,Q_(e),e.select());return}},[bt.end,bt.start,ot,Lt,Tt]),Dv(()=>{let e=S.current;if(e==null)return;let t=null,n=()=>{t!=null&&(clearTimeout(t),t=null)},r=()=>{let t=$_(e)?.dataset.itemPath??null;Ce(e=>e===t?e:t)},i=()=>{n(),D.current=!0,r()},a=i=>{let a=i.relatedTarget;if(a==null){n(),t=setTimeout(()=>{if(t=null,$_(e)!=null){r();return}D.current=!1,Ce(null)},0);return}if(!(a instanceof Node)||!e.contains(a)){n(),D.current=!1,Ce(null);return}let o=a instanceof HTMLElement?a.dataset.itemPath??null:null;Ce(e=>e===o?e:o)};return e.addEventListener(`focusin`,i),e.addEventListener(`focusout`,a),()=>{n(),e.removeEventListener(`focusin`,i),e.removeEventListener(`focusout`,a)}},[]),Dv(()=>{let e=S.current;e!=null&&(L.physical.scrollTop<=0?e.dataset.scrollAtTop=`true`:delete e.dataset.scrollAtTop)},[L.physical.scrollTop]),Dv(()=>{let e=null,n=C.current,r=b.current,i=S.current;if(n==null)return;E.current=ev(n,g);let a=()=>{let e=t.getVisibleCount(),r=tv(E.current,g),i=Math.max(0,e*s-r);n.scrollTop>i&&(n.scrollTop=i),Ke(Bv({controller:t,itemHeight:s,overscan:c,scrollTop:Math.min(n.scrollTop,i),stickyFolders:h,viewportHeight:r}))};if(!re.current){re.current=!0;let e=t.getFocusedIndex();if(e>=0){let r=tv(E.current,g),i=t.getVisibleRows(e,e)[0]??null;rv(n,e,s,r,h&&i!=null?Math.max(0,Math.min(i.ancestorPaths.length*s,Math.max(0,r-s))):0)}}T.current=a;let o=t.subscribe(()=>{J_(xe)&&be(e=>e+1),a()}),l=()=>{Ie.current!==!0&&(r!=null&&(r.dataset.isScrolling??=``),i!=null&&(i.dataset.isScrolling??=``),y.current=!0,e!=null&&clearTimeout(e),e=setTimeout(()=>{r!=null&&delete r.dataset.isScrolling,i!=null&&delete i.dataset.isScrolling,y.current=!1,Oe(e=>e+1),e=null},50))},u=null,d=()=>{i!=null&&delete i.dataset.overlayReveal,u!=null&&(clearTimeout(u),u=null)},f=()=>{i!=null&&Ie.current!==!0&&(n.scrollTop>0||(i.dataset.overlayReveal=`true`,u!=null&&clearTimeout(u),u=setTimeout(()=>{d()},200)))},p=()=>{if(a(),n.scrollTop>0&&d(),Ae.current!=null&&y.current&&Mt.current(),Ie.current===!0){y.current=!1;return}Te(e=>e==null?e:null),l()},m=()=>{l(),f()},_=new Set([`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`,`PageUp`,`PageDown`,`Home`,`End`,` `,`Spacebar`]),v=e=>{_.has(e.key)&&m()};n.addEventListener(`scroll`,p,{passive:!0}),n.addEventListener(`wheel`,m,{passive:!0}),n.addEventListener(`touchmove`,m,{passive:!0}),n.addEventListener(`keydown`,v);let x=typeof ResizeObserver<`u`?new ResizeObserver(e=>{E.current=(e[0]==null?null:nv(e[0]))??ev(n,g),a()}):null;return x?.observe(n),()=>{T.current=()=>{},o(),n.removeEventListener(`scroll`,p),n.removeEventListener(`wheel`,m),n.removeEventListener(`touchmove`,m),n.removeEventListener(`keydown`,v),e!=null&&clearTimeout(e),u!=null&&clearTimeout(u),r!=null&&delete r.dataset.isScrolling,i!=null&&(delete i.dataset.isScrolling,delete i.dataset.overlayReveal),y.current=!1,E.current=null,x?.disconnect()}},[t,g,s,c,h]),Dv(()=>{P||N==null||Nt(!1)},[Nt,P,N]);let en=Ov(()=>N==null?null:`${N.path}::${N.source}`,[N]);Dv(()=>{if(en==null){m?.clearSlotContent(Dd);return}let t=Ae.current;if(t==null)return;let n=v.current??_.current;if(n==null)return;let r={anchorElement:n,anchorRect:t.anchorRect??oy(n.getBoundingClientRect()),close:e=>{Mt.current(e?.restoreFocus??!0)},restoreFocus:()=>{jt.current&&At.current(Ae.current?.path??null)}},i=e?.contextMenu?.render?.(t.item,r)??null;return m?.setSlotContent(Dd,i),e?.contextMenu?.onOpen?.(t.item,r),yy(i),queueMicrotask(()=>{i==null||!i.isConnected||document.activeElement===i&&yy(i)}),()=>{m?.clearSlotContent(Dd)}},[en,e?.contextMenu,m]),Dv(()=>{N!=null&&t.getItem(N.path)==null&&Nt()},[Nt,N,t]),Dv(()=>{if(N==null)return;let e=S.current?.getRootNode(),t=e instanceof ShadowRoot?e.host:S.current,n=e=>{let n=e.target;n instanceof Node&&(ay(e)||_.current?.contains(n)!==!0&&t?.contains(n)!==!0&&Nt())},r=e=>{e.key===`Escape`&&(e.preventDefault(),e.stopPropagation(),Nt())};return document.addEventListener(`mousedown`,n,!0),document.addEventListener(`keydown`,r,!0),()=>{document.removeEventListener(`mousedown`,n,!0),document.removeEventListener(`keydown`,r,!0)}},[Nt,N]),Dv(()=>{let e=C.current,n=S.current;if(e==null||n==null){ae.current=F;return}let r=F==null?null:te.current.get(F)??null,i=$_(n),a=i?.dataset.itemPath??null,o=st&&x.current===i,c=f&&ee.current===i,l=oe.current&&!ct,u=se.current??0,d=je.current,p=Me.current,m=Ne.current,g=Pe.current,_=i!=null,v=D.current||_,y=ae.current!==F,b=p!=null&&p===F&&F!=null,w=!1,E=!1;if(ut!=null&&ut.id!==ne.current){ne.current=ut.id;let n=ut.visibleIndex,r=t.getVisibleRows(n,n)[0]??null;if(r!=null){let t=h?Math.max(0,Math.min(r.ancestorPaths.length*s,Math.max(0,R-s))):wt;w=!0,E=iv(e,n,s,R,Ct,ut.offset,t)}t.clearScrollRequest(ut.id)}let re=!w&&l&&av(e,I,s,R,Ct,u),ie=!w&&d!=null&&d===F&&av(e,I,s,R,Ct,wt),O=!w&&m!=null&&m.path===F&&av(e,I,s,R,Ct,m.viewportOffset),ce=!w&&g!=null&&g.path===F&&e.scrollTop!==g.scrollTop;if(ce&&(e.scrollTop=g.scrollTop),(ce||E||ie||O||re||v&&y&&d!==F&&!b&&rv(e,I,s,R,wt))&&T.current(),w){ae.current=F;return}if(!v){ae.current=F;return}if(o){ae.current=F;return}if(c&&!l){ae.current=F;return}if(r==null){l&&I>=0&&(av(e,I,s,R,Ct,u),T.current()),ae.current=F;return}(y||l||d===F||p===F||m?.path===F||g?.path===F||a==null||a!==F)&&(Q_(r),d===F&&(je.current=null),p===F&&(Me.current=null),m?.path===F&&(Ne.current=null),g?.path===F&&(Pe.current=null),oe.current=!1,se.current=null),ae.current=F},[t,I,F,Et,s,st,ct,bt,R,f,ut,h,wt,Ct,yt]);let tn=I>=0&&I>=L.visible.startIndex&&I<=L.visible.endIndex,nn=F!=null&&xt.some(e=>Lv(e.row)===F),rn=tn||nn,an=Xe&&D.current===!0&&rn?F:null,on=j===`pointer`?we:null,sn=N?.path??Fe.current??on??an??we,cn=N?.source===`right-click`;Dv(()=>{y.current&&N==null||Pt(nt(sn))},[N,nt,bt,R,De,xt,sn,Pt,yt]);let ln=$(e=>{if(y.current||ay(e))return;let t=e.target;if(!(t instanceof HTMLElement)||t.closest?.(`[data-type="context-menu-trigger"]`)!=null)return;let n=t.closest?.(`[data-file-tree-sticky-row="true"]`),r=t.closest?.(`[data-type="item"]`),i=n instanceof HTMLElement?n.dataset.fileTreeStickyPath??null:r instanceof HTMLElement?r.dataset.itemPath??null:null;i!=null&&M(e=>e===`pointer`?e:`pointer`),Te(e=>e===i?e:i)},[]),un=$(()=>{Te(null)},[]);Dv(()=>{if(!dt)return;let e=()=>{Gt(),t.cancelDrag()};return window.addEventListener(`dragend`,e),()=>{window.removeEventListener(`dragend`,e),Gt(),t.cancelDrag()}},[t,dt]);let dn=e=>{if(!dt||t.getDragSession()==null||k.current)return;let n=Kv(e.target instanceof HTMLElement?e.target:null);t.setDragTarget(n),qt(t.getDragSession()?.target??null),Yt(e.clientX,e.clientY),e.dataTransfer!=null&&(e.dataTransfer.dropEffect=`move`),e.preventDefault()},fn=e=>{if(!dt||t.getDragSession()==null||k.current)return;let n=e.relatedTarget;n instanceof Node&&S.current?.contains(n)===!0||(Vt(),Ut(),t.setDragTarget(null))},pn=e=>{!dt||t.getDragSession()==null||k.current||(e.preventDefault(),Kt(e.clientX,e.clientY),t.completeDrag(),Ht(),Vt(),Ut(),pe.current=null)},mn=L.window.height,hn=L.window.offsetTop,gn=Math.min(0,R-mn),_n=Math.min(0,R-mn-wt),vn=Se===F||oe.current,yn=F!=null&&vn&&!Et&&I>=0?yt[I]??t.getVisibleRows(I,I)[0]??null:null,bn=yn==null?null:ov(I,s,bt,mn),xn=pe.current,Sn=ht!=null&&xn!=null&&xn.path===ht&&xn.index>=bt.start&&xn.index<=bt.end,Cn=ht!=null&&xn!=null&&xn.path===ht&&!Sn&&xn.path!==yn?.path?xn:null,wn=Cn==null?null:ov(Cn.index,s,bt,mn),Tn=ty((I>=0?yt[I]??t.getVisibleRows(I,I)[0]??null:null)?.ancestorPaths.at(-1)??null),En=ct&&F!=null?gy(o,F,!Et):void 0,Dn=N?.path??(ct?F:Se),On=N?.path??we,kn=nt(sn),An=P&&Xe&&!cn&&!st&&kn!=null&&A!=null&&sn!=null,jn=P&&(An||N!=null),Mn=N?.anchorRect,Nn=Mn==null&&kn!=null&&A!=null&&(N!=null||An)?A:null,Pn=Mn==null?Nn==null?void 0:{top:`${Nn}px`}:{left:`${Mn.left}px`,position:`fixed`,right:`auto`,top:`${Mn.top}px`},Fn=cn?{opacity:`0`}:void 0,In=$((e,n,r,i)=>{let a=uv({event:{ctrlKey:e.ctrlKey,metaKey:e.metaKey,shiftKey:e.shiftKey},isDirectory:n.kind===`directory`,isSearchOpen:ct,mode:i}),o=a.toggleDirectory&&n.kind===`directory`,s=o?t.resolveMountedDirectoryPathFromInput(r):null;if(o&&s==null)return;let c=s??r;switch(a.selection.kind){case`range`:t.selectPathRange(c,a.selection.additive);break;case`toggle`:t.togglePathSelectionFromInput(c);break;case`single`:t.selectOnlyMountedPathFromInput(c)}let l=e.currentTarget instanceof HTMLElement?e.currentTarget:null,u=n.index>=L.visible.startIndex&&n.index<=L.visible.endIndex,d=i===`flow`&&u&&l!=null&&l.dataset.itemParked!==`true`;t.focusMountedPathFromInput(c),d&&(D.current=!0,Ce(e=>e===c?e:c),M(`focus`)),o&&t.toggleMountedDirectoryFromInput(c),a.closeSearch&&t.closeSearch(),a.revealCanonical&&Lt(c,{targetOffset:`sticky-parents`})},[t,ct,L.visible.endIndex,L.visible.startIndex,Lt]),Ln=()=>{if(y.current||!Xe||sn==null||kn==null)return;let e=t.getItem(sn);e!=null&&(Pt(kn),jt.current=!0,ke({anchorRect:null,item:{kind:e.isDirectory()?`directory`:`file`,name:kn.getAttribute(`aria-label`)??sn,path:e.getPath()},path:e.getPath(),source:`button`}))},Rn={contextHoverPath:On,contextMenuButtonTriggerEnabled:Xe,contextMenuButtonVisibility:Ze,contextMenuEnabled:P,contextMenuRightClickEnabled:Qe,contextMenuTriggerMode:Ye,controller:t,directoriesWithGitChanges:i,dragAndDropEnabled:dt,draggedPathSet:pt,dragTarget:mt,gitLaneActive:rt,gitStatusByPath:n,handleRowDragEnd:Zt,handleRowDragStart:Xt,handleRowTouchStart:Qt,ignoredGitDirectories:r,ignoredInheritanceCache:ye,instanceId:o,itemHeight:s,onKeyDown:$t,onRowClick:In,openContextMenuForRow:Ft,registerButton:$e,registerRenameInput:tt,renameView:at,renderDecorationForRow:Dt,resolveIcon:it,shouldSuppressContextMenu:Rt,visualFocusPath:Dn},zn={...Rn,registerButton:et};return Y(`div`,{ref:S,id:gt,"data-file-tree-context-menu-button-visibility":P&&Xe?Ze:void 0,"data-file-tree-context-menu-trigger-mode":P?Ye:void 0,"data-file-tree-has-context-menu-action-lane":P&&Xe?`true`:void 0,"data-file-tree-has-git-lane":rt?`true`:void 0,"data-file-tree-virtualized-root":`true`,onDragLeave:dt?fn:void 0,onDragOver:dt?dn:void 0,onDrop:dt?pn:void 0,onKeyDown:$t,onPointerLeave:P?un:void 0,onPointerOver:P?ln:void 0,role:`tree`,tabIndex:-1,style:{outline:`none`,position:`relative`},children:[Y(`style`,{"data-file-tree-guide-style":`true`,dangerouslySetInnerHTML:{__html:Tn}}),Y(`slot`,{name:Ed,"data-type":`header-slot`}),f?Y(`div`,{"data-file-tree-search-container":!0,"data-open":ct?`true`:`false`,children:Y(`input`,{ref:ee,"aria-activedescendant":En,"aria-controls":gt,placeholder:`Search…`,"data-file-tree-search-input":!0,"data-file-tree-search-input-fake-focus":Ve?`true`:void 0,value:lt,onBlur:()=>{d===`retain`&&!Ue.current||t.closeSearch()},onFocus:We,onPointerDown:We,onInput:e=>{We();let n=e.currentTarget;t.setSearch(n.value)}})}):null,Y(`div`,{ref:C,"data-file-tree-virtualized-scroll":`true`,children:[h&&qe&&xt.length>0?Y(`div`,{"aria-hidden":`true`,"data-file-tree-sticky-overlay":`true`,children:Y(`div`,{"data-file-tree-sticky-overlay-content":`true`,style:{height:`${_t}px`},children:xt.map((e,t)=>xy(zn,e.row,`sticky:${Lv(e.row)}`,{mode:`sticky`,style:{left:`0`,position:`absolute`,right:`0`,top:`${e.top}px`,zIndex:`${xt.length-t}`}}))})}):null,Y(`div`,{ref:b,"data-file-tree-virtualized-list":`true`,style:{height:`${Ct}px`},children:[Y(`div`,{"data-file-tree-virtualized-sticky-offset":`true`,"aria-hidden":`true`,style:{height:`${hn}px`}}),Y(`div`,{"data-file-tree-virtualized-sticky":`true`,style:{height:`${mn}px`,top:`${gn}px`,bottom:`${_n}px`},children:[Sy(Rn,bt,Tt),yn!=null&&bn!=null?xy(Rn,yn,`parked:${yn.path}`,{isParked:!0,style:{left:`0`,opacity:`0`,pointerEvents:ht===yn.path?`none`:void 0,position:`absolute`,right:`0`,top:`${bn}px`}}):null,Cn!=null&&wn!=null?xy(Rn,Cn,`parked-drag:${Cn.path}`,{isParked:!0,style:{left:`0`,opacity:`0`,pointerEvents:`none`,position:`absolute`,right:`0`,top:`${wn}px`}}):null]})]})]}),P?Y(`div`,{ref:_,"data-type":`context-menu-anchor`,"data-visible":jn?`true`:`false`,style:Pn,children:[Y(`button`,{ref:v,type:`button`,"data-type":Od,"aria-label":`Options`,"aria-haspopup":`menu`,"aria-expanded":N==null?`false`:`true`,"data-visible":An?`true`:`false`,onMouseDown:e=>{e.preventDefault()},onClick:e=>{if(e.preventDefault(),e.stopPropagation(),N!=null){Nt();return}Ln()},tabIndex:-1,style:Fn,children:Y(__,{...it(`file-tree-icon-ellipsis`)})}),N==null?null:Y(`slot`,{name:Dd})]}):null,N==null?null:Y(`div`,{"data-type":`context-menu-wash`,"aria-hidden":`true`,onMouseDownCapture:e=>{e.preventDefault(),Nt()},onTouchStartCapture:e=>{e.preventDefault(),e.stopPropagation(),Nt()},onTouchMoveCapture:e=>{e.preventDefault(),e.stopPropagation()},onWheelCapture:e=>{e.preventDefault(),e.stopPropagation()}})]})}var wy={hydrateRoot:(e,t)=>{f_(Hg(Cy,t),e)},renderRoot:(e,t)=>{d_(Hg(Cy,t),e)},unmountRoot:e=>{d_(null,e)}};function Ty(e,t){wy.renderRoot(e,t)}function Ey(e,t){wy.hydrateRoot(e,t)}function Dy(e){wy.unmountRoot(e)}var Oy=class{#e=new Map;#t=null;clearAll(){for(let e of this.#e.values())e.remove();this.#e.clear()}clearSlotContent(e){let t=this.#n(e);t!=null&&(t.remove(),this.#e.delete(e))}setHost(e){if(this.#t=e,e!=null){this.#i(e);for(let[e,t]of this.#e)this.#r(e,t)}}setSlotContent(e,t){let n=this.#n(e);if(n===t){t!=null&&(this.#e.set(e,t),this.#r(e,t));return}if(n?.remove(),t==null){this.#e.delete(e);return}this.#e.set(e,t),this.#r(e,t)}setSlotHtml(e,t){let n=t?.trim()??``;if(n.length===0){this.setSlotContent(e,null);return}let r=this.#n(e);if(r!=null&&r.innerHTML===n){this.#e.set(e,r),this.#r(e,r);return}let i=document.createElement(`div`);i.innerHTML=n,this.setSlotContent(e,i)}#n(e){let t=this.#e.get(e)??null;if(t!=null)return t;let n=this.#t;if(n==null)return null;for(let t of Array.from(n.children))if(t instanceof HTMLElement&&t.dataset.fileTreeManagedSlot===e)return t;return null}#r(e,t){t.slot=e,t.dataset.fileTreeManagedSlot=e,this.#t!=null&&t.parentNode!==this.#t&&this.#t.appendChild(t)}#i(e){for(let t of Array.from(e.children)){if(!(t instanceof HTMLElement))continue;let e=t.dataset.fileTreeManagedSlot;e==null||this.#e.has(e)||this.#e.set(e,t)}}};Array.isArray;var ky=0;function Ay(e){return e!=null&&e.length>0?e:(ky+=1,`pst_ft_${ky}`)}function jy({initialVisibleRowCount:e,itemHeight:t}){return e==null?420:Math.max(0,e)*(t??gh)}function My(e){if(typeof document>`u`)return;let t=document.createElement(`div`);t.innerHTML=e;let n=t.querySelector(`svg`);return n instanceof SVGElement?n:void 0}function Ny(e){return e.querySelector(`#file-tree-icon-chevron`)instanceof SVGElement&&e.querySelector(`#file-tree-icon-file`)instanceof SVGElement&&e.querySelector(`#file-tree-icon-dot`)instanceof SVGElement&&e.querySelector(`#file-tree-icon-lock`)instanceof SVGElement}function Py(e){return Array.from(e.children).filter(e=>e instanceof SVGElement)}var Fy=class{static LoadedCustomComponent=!0;#e;#t;#n;#r;#i;#a;#o;#s;#c;#l=new Oy;#u;#d;#f;#p;#m;#h;#g;#_;#v;#y=null;#b;#x=!1;#S=!1;constructor(e){let{composition:t,density:n,fileTreeSearchMode:r,gitStatus:i,id:a,initialSearchQuery:o,icons:s,itemHeight:c,onSearchChange:l,onSelectionChange:u,overscan:d,renderRowDecoration:f,renaming:p,search:m,searchBlurBehavior:h,searchFakeFocus:g,stickyFolders:_,unsafeCSS:v,initialVisibleRowCount:y,...b}=e;this.#e=t,this.#n=Ay(a),this.#p=vg(i),this.#m=s,this.#h=v,this.#r=u,this.#i=f,this.#a=p!=null&&p!==!1,this.#o=h,this.#s=m===!0,this.#c=g===!0,this.#u=hh(n,c),this.#d={itemHeight:this.#u.itemHeight,overscan:d,stickyFolders:_,initialVisibleRowCount:y},this.#t=new pg({...b,fileTreeSearchMode:r,initialSearchQuery:o,onSearchChange:l,renaming:p}),this.#v=this.#t.getSelectionVersion(),this.#y=this.#r==null?null:this.subscribe(()=>{this.#D()})}unmount(){this.#b!=null&&(Dy(this.#b),delete this.#b.dataset.fileTreeVirtualizedWrapper,this.#b=void 0),this.#l.clearAll(),this.#l.setHost(null),this.#f!=null&&(delete this.#f.dataset.fileTreeVirtualized,this.#I(this.#f),this.#f=void 0)}cleanUp(){this.unmount(),this.#y?.(),this.#y=null,this.#t.destroy()}getFileTreeContainer(){return this.#f}getItem(e){return this.#t.getItem(e)}getFocusedItem(){return this.#t.getFocusedItem()}getFocusedPath(){return this.#t.getFocusedPath()}getFocusedIndex(){return this.#t.getFocusedIndex()}getVisibleCount(){return this.#t.getVisibleCount()}getVisibleRows(e,t){return this.#t.getVisibleRows(e,t)}getSelectedPaths(){return this.#t.getSelectedPaths()}getComposition(){return this.#e}getItemHeight(){return this.#u.itemHeight}getDensityFactor(){return this.#u.factor}subscribe(e){let t=!1;return this.#t.subscribe(()=>{if(!t){t=!0;return}e()})}focusPath(e){this.#t.focusPath(e)}focusFirstItem(){this.#t.focusFirstItem()}focusLastItem(){this.#t.focusLastItem()}focusNextItem(){this.#t.focusNextItem()}focusPreviousItem(){this.#t.focusPreviousItem()}focusParentItem(){this.#t.focusParentItem()}scrollToPath(e,t){this.#t.scrollToPath(e,t)}focusNearestPath(e){return this.#t.focusNearestPath(e)}add(e){this.#t.add(e)}batch(e){this.#t.batch(e)}applyGitStatusPatch(e){let t=yg(this.#p,e);if(t===this.#p)return;this.#p=t;let n=this.#T();n!=null&&Ty(n.wrapper,this.#w())}move(e,t,n){this.#t.move(e,t,n)}onMutation(e,t){return this.#t.onMutation(e,t)}setSearch(e){this.#t.setSearch(e)}openSearch(e){this.#t.openSearch(e)}closeSearch(){this.#t.closeSearch()}isSearchOpen(){return this.#t.isSearchOpen()}getSearchValue(){return this.#t.getSearchValue()}getSearchMatchingPaths(){return this.#t.getSearchMatchingPaths()}focusNextSearchMatch(){this.#t.focusNextSearchMatch()}focusPreviousSearchMatch(){this.#t.focusPreviousSearchMatch()}startRenaming(e,t){return this.#t.startRenaming(e,t)}remove(e,t){this.#t.remove(e,t)}resetPaths(e,t){Array.isArray(e)?this.#t.resetPaths(e,t):this.#t.resetPaths(e)}setComposition(e){this.#e=e;let t=this.#T();t!=null&&(this.#O(),Ty(t.wrapper,this.#w()))}setGitStatus(e){let t=vg(e,this.#p);if(t===this.#p)return;this.#p=t;let n=this.#T();n!=null&&Ty(n.wrapper,this.#w())}setIcons(e){this.#m=e;let t=this.#T();t!=null&&(this.#E(t.host,t.wrapper),Ty(t.wrapper,this.#w()))}hydrate({fileTreeContainer:e}){let t=this.#P(e),n=this.#N(t);this.#O(),Ey(n,this.#w())}render({containerWrapper:e,fileTreeContainer:t}){let n=this.#P(t??this.#f,e),r=this.#N(n);this.#O(),Ty(r,this.#w())}#C(){return{initialViewportHeight:jy({initialVisibleRowCount:this.#d.initialVisibleRowCount,itemHeight:this.#d.itemHeight}),itemHeight:this.#d.itemHeight,overscan:this.#d.overscan,stickyFolders:this.#d.stickyFolders}}#w(){return{composition:this.#e,controller:this.#t,gitStatusByPath:this.#p?.statusByPath,ignoredGitDirectories:this.#p?.ignoredDirectoryPaths,directoriesWithGitChanges:this.#p?.directoriesWithChanges,icons:this.#m,instanceId:this.#n,renamingEnabled:this.#a,renderRowDecoration:this.#i,searchBlurBehavior:this.#o,searchEnabled:this.#s,searchFakeFocus:this.#c,slotHost:this.#l,...this.#C()}}#T(){let e=this.#f,t=this.#b;return e==null||t==null?null:{host:e,wrapper:t}}#E(e,t){let n=e.shadowRoot;n!=null&&(this.#k(n),this.#A(n)),this.#j(t)}#D(){let e=this.#r;if(e==null)return;let t=this.#t.getSelectionVersion();t!==this.#v&&(this.#v=t,e(this.#t.getSelectedPaths()))}#O(){let e=this.#e?.header?.render;if(e!=null){this.#l.setSlotContent(Ed,e());return}this.#l.setSlotHtml(Ed,this.#e?.header?.html??null)}#k(e){let t=Py(e).find(e=>Ny(e)),n=My(gd(Ad(this.#m).set));n!=null&&(t==null||t.outerHTML!==n.outerHTML)&&(t==null?e.prepend(n):t.replaceWith(n))}#A(e){let t=Py(e),n=t.find(e=>Ny(e)),r=t.filter(e=>e!==n),i=Ad(this.#m).spriteSheet?.trim()??``;if(i.length===0){for(let e of r)e.remove();return}let a=My(i);if(a==null){for(let e of r)e.remove();return}if(r.length!==1||r[0].outerHTML!==a.outerHTML){for(let e of r)e.remove();e.appendChild(a)}}#j(e){let t=Ad(this.#m);t.colored&&vd(t.set)?e.dataset.fileTreeColoredIcons=`true`:delete e.dataset.fileTreeColoredIcons}#M(e){let t=e.querySelector(`style[${Sd}]`);if(this.#g==null&&t instanceof HTMLStyleElement&&(this.#g=t),this.#h==null||this.#h===``){this.#g?.remove(),this.#g=void 0,this.#_=void 0;return}(this.#g?.parentNode!==e||this.#_!==this.#h)&&(this.#g??=document.createElement(`style`),this.#g.setAttribute(Sd,``),this.#g.parentNode!==e&&e.appendChild(this.#g),this.#g.textContent=bh(this.#h),this.#_=this.#h)}#N(e){if(this.#b!=null)return this.#b;let t=e.shadowRoot;if(t==null)throw Error(`FileTree requires a shadow root`);let n=Array.from(t.children).filter(e=>e instanceof HTMLDivElement&&typeof e.dataset.fileTreeId==`string`&&e.dataset.fileTreeId.length>0),r=n.find(e=>e.dataset.fileTreeId===this.#n)??n[0];return r!=null&&(this.#n=r.dataset.fileTreeId??this.#n),this.#b=r??document.createElement(`div`),this.#b.dataset.fileTreeId=this.#n,this.#b.dataset.fileTreeVirtualizedWrapper=`true`,this.#E(e,this.#b),this.#b.parentNode!==t&&t.appendChild(this.#b),this.#b}#P(e,t){let n=e??this.#f??document.createElement(`file-tree-container`);t!=null&&n.parentNode!==t&&t.appendChild(n);let r=n.shadowRoot??n.attachShadow({mode:`open`});return Eh(n,r),this.#M(r),n.dataset.fileTreeVirtualized=`true`,n.style.display=`flex`,this.#F(n),this.#l.setHost(n),this.#f=n,n}#F(e){e.style.getPropertyValue(`--trees-item-height`)===``&&(e.style.setProperty(`--trees-item-height`,`${String(this.#u.itemHeight)}px`),this.#x=!0),e.style.getPropertyValue(`--trees-density-override`)===``&&(e.style.setProperty(`--trees-density-override`,String(this.#u.factor)),this.#S=!0)}#I(e){this.#x&&=(e.style.removeProperty(`--trees-item-height`),!1),this.#S&&=(e.style.removeProperty(`--trees-density-override`),!1)}},Iy=`
|
|
6651
6651
|
:host {
|
|
6652
6652
|
--file-tree-font-family: var(--ui, system-ui, sans-serif);
|
|
6653
6653
|
--file-tree-font-size: 12.5px;
|
|
@@ -6663,7 +6663,7 @@ slicc-dock-tree .dock-tree__preview--active {
|
|
|
6663
6663
|
--file-tree-git-deleted-color: var(--rose, #d1242f);
|
|
6664
6664
|
--file-tree-git-untracked-color: var(--txt-3, #717171);
|
|
6665
6665
|
}
|
|
6666
|
-
`,
|
|
6666
|
+
`,Ly=`
|
|
6667
6667
|
slicc-file-tree {
|
|
6668
6668
|
display: block;
|
|
6669
6669
|
box-sizing: border-box;
|
|
@@ -6676,7 +6676,7 @@ slicc-file-tree {
|
|
|
6676
6676
|
font-family: var(--ui);
|
|
6677
6677
|
font-size: 13px;
|
|
6678
6678
|
}
|
|
6679
|
-
`,
|
|
6679
|
+
`,Ry=`slicc-file-tree-style`;function zy(e){if(e.getElementById(Ry))return;let t=e.createElement(`style`);t.id=Ry,t.textContent=Ly,(e.head??e.documentElement).appendChild(t)}function By(e){return e?.isDirectory()?e:null}function Vy(e){return e.replace(/^\/+/,``)}function Hy(e){return e<1024?`${e}B`:e<1048576?`${Math.round(e/1024)}K`:e<1073741824?`${(e/1048576).toFixed(1)}M`:`${(e/1073741824).toFixed(1)}G`}function Uy(e){let t=[],n=new Map,r=[],i=e=>{for(let a of e){if(a.kind===`group`)continue;let e=Vy(a.id);if(a.kind===`dir`){n.set(e,{id:a.id,path:a.path??a.id,kind:`directory`}),a.open&&r.push(e),a.children.length===0?t.push(e):i(a.children);continue}t.push(e),n.set(e,{id:a.id,path:a.path??a.label,kind:`file`,...a.size===void 0?{}:{size:a.size}})}};return i(e),{paths:t,meta:n,initiallyOpen:r}}A(`slicc-file-tree`,class extends HTMLElement{#e=[];#t=new Map;#n=null;#r=null;#i=[];#a=null;#o=!1;#s=null;#c=null;static get observedAttributes(){return[`selected`]}connectedCallback(){zy(this.ownerDocument),this.#r||(this.#r=document.createElement(`div`),this.#r.style.cssText=`display:flex;flex-direction:column;height:100%;min-height:0;`,this.appendChild(this.#r)),this.#f()}disconnectedCallback(){this.#n?.unmount(),this.#n=null,this.#c=null}attributeChangedCallback(e,t,n){e===`selected`&&n!==this.#a&&(this.#a=n,this.#d())}get items(){return this.#e.slice()}set items(e){this.#e=Array.isArray(e)?e.slice():[],this.#f()}get gitStatus(){return this.#i.slice()}set gitStatus(e){this.#i=Array.isArray(e)?e.slice():[],this.#f()}get selected(){return this.#a}set selected(e){e===null?this.removeAttribute(`selected`):this.setAttribute(`selected`,e)}selectFile(e){let t=this.#t.get(Vy(e));if(t){this.#o=!0;try{this.selected=e}finally{this.#o=!1}this.#d(),this.#l(`file-select`,{id:e,path:t.path})}}visibleIds(){let e=this.#n;if(!e)return[];let t=e.getVisibleCount();return t===0?[]:e.getVisibleRows(0,t).map(e=>this.#t.get(e.path.replace(/\/$/,``))?.id).filter(e=>typeof e==`string`)}toggleDir(e){let t=By(this.#n?.getItem(Vy(e)));t&&(t.toggle(),this.#l(`dir-toggle`,{id:e,open:t.isExpanded()}))}isDirOpen(e){return By(this.#n?.getItem(Vy(e)))?.isExpanded()===!0}previewFile(e){let t=this.#t.get(Vy(e));t?.kind===`file`&&this.#l(`file-preview`,{id:e,path:t.path})}#l(e,t){this.dispatchEvent(new CustomEvent(e,{detail:t,bubbles:!0,composed:!0}))}#u(){let e=this.#n;if(!e)return;let t=e.getVisibleCount();if(t===0)return;let n=e.getVisibleRows(0,t);this.#s=n.filter(e=>e.isExpanded).map(e=>e.path)}#d(){let e=this.#a;if(!(!e||!this.#n)){this.#o=!0;try{this.#n.getItem(Vy(e))?.select()}finally{this.#o=!1}}}#f(){if(!this.isConnected||!this.#r)return;let{paths:e,meta:t,initiallyOpen:n}=Uy(this.#e);this.#t=t,this.#u();let r=this.#s??n;if(this.#n&&e.length>0){this.#n.resetPaths({preparedInput:ph(e),initialExpandedPaths:r}),this.#n.setGitStatus(this.#i),this.#p();return}if(this.#n?.unmount(),this.#r.replaceChildren(),this.#c=null,e.length===0){this.#n=null;return}let i=new Fy({preparedInput:ph(e),gitStatus:this.#i,search:!0,initialVisibleRowCount:40,renaming:!1,dragAndDrop:!1,unsafeCSS:Iy,initialExpandedPaths:r,...this.#a?{initialSelectedPaths:[Vy(this.#a)]}:{},onSelectionChange:e=>{if(this.#o)return;let t=e[0];if(t===void 0)return;let n=this.#t.get(t);n&&(this.#a=n.id,this.setAttribute(`selected`,n.id),this.#l(`file-select`,{id:n.id,path:n.path}))},renderRowDecoration:({row:e})=>{let t=this.#t.get(e.path);return!t||t.size===void 0?null:{text:Hy(t.size)}},composition:{contextMenu:{enabled:!0,triggerMode:`both`,buttonVisibility:`when-needed`,onOpen:(e,t)=>{let n=this.#t.get(e.path);t.close({restoreFocus:!1}),this.#l(`file-overflow`,{id:n?.id??e.path,path:n?.path??e.path,anchor:t.anchorElement,kind:e.kind})}}}});i.render({containerWrapper:this.#r}),this.#n=i,this.#p()}#p(){let e=this.#n?.getFileTreeContainer();if(!e||e===this.#c)return;this.#c=e;let t=()=>{let e=this.#n?.getFocusedPath()??this.#n?.getSelectedPaths()[0],t=e==null?null:this.#t.get(e);t&&this.previewFile(t.id)};e.addEventListener(`dblclick`,t),e.addEventListener(`keydown`,e=>{e.key===`Enter`&&t()})}});var Wy=`
|
|
6680
6680
|
slicc-surface {
|
|
6681
6681
|
position: absolute;
|
|
6682
6682
|
inset: 0;
|
|
@@ -6708,7 +6708,7 @@ slicc-surface:fullscreen {
|
|
|
6708
6708
|
background: var(--canvas, #fff);
|
|
6709
6709
|
position: fixed;
|
|
6710
6710
|
}
|
|
6711
|
-
`,
|
|
6711
|
+
`,Gy=`slicc-surface-style`;function Ky(e){if(e.getElementById(Gy))return;let t=e.createElement(`style`);t.id=Gy,t.textContent=Wy,(e.head??e.documentElement).appendChild(t)}function qy(e){return e===`block`||e===`column`?e:`flex`}A(`slicc-surface`,class extends HTMLElement{static observedAttributes=[`surface-id`,`active`,`layout`];connectedCallback(){Ky(this.ownerDocument),this.#e()}attributeChangedCallback(e,t,n){this.isConnected&&(e===`surface-id`?this.#e():e===`active`&&t!==n&&this.dispatchEvent(new CustomEvent(`surface-toggle`,{bubbles:!0,composed:!0,detail:{surfaceId:this.surfaceId,active:this.active,layout:this.layout}})))}get surfaceId(){return this.getAttribute(`surface-id`)}set surfaceId(e){e==null?this.removeAttribute(`surface-id`):this.setAttribute(`surface-id`,e)}get active(){return this.hasAttribute(`active`)}set active(e){this.toggleAttribute(`active`,e)}get layout(){return qy(this.getAttribute(`layout`))}set layout(e){this.setAttribute(`layout`,qy(e))}#e(){let e=this.surfaceId;e==null?delete this.dataset.s:this.dataset.s=e}});var Jy=`/**
|
|
6712
6712
|
* Copyright (c) 2014 The xterm.js authors. All rights reserved.
|
|
6713
6713
|
* Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
|
|
6714
6714
|
* https://github.com/chjj/term.js
|
|
@@ -6993,7 +6993,7 @@ slicc-surface:fullscreen {
|
|
|
6993
6993
|
.xterm .xterm-scrollable-element > .shadow.top.left {
|
|
6994
6994
|
box-shadow: var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset;
|
|
6995
6995
|
}
|
|
6996
|
-
`,
|
|
6996
|
+
`,Yy={background:`#0c0c0e`,foreground:`#e7e7ea`,cursor:`#e7e7ea`,cursorAccent:`#0c0c0e`,selectionBackground:`#8b5cf64d`,selectionForeground:`#ffffff`,black:`#0c0c0e`,red:`#f43f5e`,green:`#5bd17b`,yellow:`#f59e0b`,blue:`#3b82f6`,magenta:`#8b5cf6`,cyan:`#06b6d4`,white:`#e7e7ea`,brightBlack:`#8a8a93`,brightRed:`#fb7185`,brightGreen:`#86efac`,brightYellow:`#fbbf24`,brightBlue:`#60a5fa`,brightMagenta:`#a78bfa`,brightCyan:`#22d3ee`,brightWhite:`#ffffff`},Xy=`
|
|
6997
6997
|
:host {
|
|
6998
6998
|
display: flex;
|
|
6999
6999
|
flex-direction: column;
|
|
@@ -7034,7 +7034,7 @@ slicc-surface:fullscreen {
|
|
|
7034
7034
|
/* xterm.js wants its container to size the canvas; let it fill. */
|
|
7035
7035
|
.host .xterm { height: 100%; }
|
|
7036
7036
|
.host .xterm-viewport { overflow-y: auto; }
|
|
7037
|
-
`,
|
|
7037
|
+
`,Zy=null;function Qy(){return Zy||=[M(Jy),M(Xy)],Zy}var $y=class extends HTMLElement{static observedAttributes=[`label`,`hide-header`];#e;#t=null;#n=null;#r=null;#i=null;#a=[];#o=!1;constructor(){super(),this.#e=this.attachShadow({mode:`open`})}connectedCallback(){this.#o=!1,this.#s(),this.#c()}disconnectedCallback(){this.#l()}attributeChangedCallback(e){if(this.isConnected&&e===`label`){let e=this.#e.querySelector(`.title`);e&&(e.textContent=this.label)}}get label(){return this.getAttribute(`label`)??`Terminal`}set label(e){e==null?this.removeAttribute(`label`):this.setAttribute(`label`,e)}get hideHeader(){return this.hasAttribute(`hide-header`)}set hideHeader(e){this.toggleAttribute(`hide-header`,e)}get terminal(){return this.#n}write(e){this.#n?this.#n.write(e):this.#a.push(e)}writeln(e){this.#n?this.#n.writeln(e):this.#a.push(`${e}\r\n`)}clear(){this.#n?this.#n.clear():this.#a.length=0}focus(){this.#n?.focus()}fit(){this.#r?.fit()}#s(){if(this.#t)return;this.#e.adoptedStyleSheets=Qy();let e=j(`div`,{class:`hd`,part:`header`},n(`terminal`,{size:14}),j(`span`,{class:`title`},this.label),j(`span`,{class:`spacer`})),t=j(`div`,{class:`host`,part:`host`});this.#e.replaceChildren(e,t),this.#t=t}async#c(){if(this.#n||this.#o)return;let[{Terminal:e},{FitAddon:n}]=await Promise.all([t(()=>import(`./xterm-C3BHN0de.js`),[]),t(()=>import(`./addon-fit-DIOBYJe3.js`),[])]);if(this.#o||!this.#t)return;let r=new e({cursorBlink:!eb(),fontSize:12,lineHeight:1.25,fontFamily:`'IBM Plex Mono', 'Source Code Pro', 'JetBrains Mono', ui-monospace, monospace`,theme:Yy,convertEol:!0,scrollback:2e3}),i=new n;if(r.loadAddon(i),r.open(this.#t),r.onData(e=>{this.dispatchEvent(new CustomEvent(`terminal-data`,{detail:e,bubbles:!0,composed:!0}))}),this.#n=r,this.#r=i,i.fit(),this.#a.length){for(let e of this.#a)r.write(e);this.#a.length=0}typeof ResizeObserver==`function`&&(this.#i=new ResizeObserver(()=>this.#r?.fit()),this.#i.observe(this.#t))}#l(){this.#o=!0,this.#i?.disconnect(),this.#i=null,this.#n?.dispose(),this.#n=null,this.#r=null,this.#a.length=0}};function eb(){return typeof matchMedia==`function`&&matchMedia(`(prefers-reduced-motion: reduce)`).matches}A(`slicc-terminal`,$y);var tb=`slicc_monitor_collapsed`;function nb(){try{let e=localStorage.getItem(tb);return new Set(e?JSON.parse(e):[])}catch{return new Set}}function rb(e){try{localStorage.setItem(tb,JSON.stringify([...e]))}catch{}}var ib=`
|
|
7038
7038
|
slicc-monitor {
|
|
7039
7039
|
display: block;
|
|
7040
7040
|
box-sizing: border-box;
|
|
@@ -7611,134 +7611,4 @@ slicc-monitor {
|
|
|
7611
7611
|
.monitor-row,
|
|
7612
7612
|
.monitor-btn { transition-duration: 0.01ms; }
|
|
7613
7613
|
}
|
|
7614
|
-
`,Xb=`slicc-monitor-style`;function Zb(e){if(e.getElementById(Xb))return;let t=e.createElement(`style`);t.id=Xb,t.textContent=Yb,(e.head??e.documentElement).appendChild(t)}var Qb={error:3,warn:2,active:1,idle:0},$b={active:`circle-check`,warn:`triangle-alert`,error:`octagon-x`,idle:`circle`},ex={active:`Healthy`,warn:`Attention`,error:`Failing`,idle:`Idle`};function tx(e){return e.status?e.status:e.error?`error`:e.active?`active`:`idle`}function nx(e){if(e.status)return e.status;let t=`idle`;for(let n of e.rows){let e=tx(n);Qb[e]>Qb[t]&&(t=e)}return t}function rx(e){return F(`span`,{class:`monitor-glyph monitor-glyph--${e}`},m($b[e],{size:14}))}var ix={rose:`var(--rose)`,cyan:`var(--cyan)`,violet:`var(--violet)`,amber:`var(--amber)`,waffle:`var(--waffle)`,green:`var(--green)`};function ax(e){return e?ix[e]:`var(--ctx)`}var ox=`http://www.w3.org/2000/svg`;function sx(e,t){let n=document.createElementNS(ox,e);for(let[e,r]of Object.entries(t))n.setAttribute(e,String(r));return n}var cx=2,lx=cx/2,ux=4,dx=5;function fx(e,t,n){let r=e.points,i=r.map(e=>e.value),a=Math.min(...i),o=Math.max(...i)-a||1,s=t-lx,c=Math.max(0,t-2),l=r[r.length-1].at,u=e.windowMs>0?e.windowMs:1,d=l-r[0].at>0;return r.map((e,t)=>({x:d?Math.max(lx,s-Math.min(1,(l-e.at)/u)*c):lx+t/(r.length-1)*c,y:n-dx-(e.value-a)/o*(n-10)}))}function px(e,t,n,r){let i=fx(e,n,r),a=i.map(e=>`${e.x.toFixed(1)},${e.y.toFixed(1)}`).join(` `),o=i[i.length-1],s=i[0],c=sx(`svg`,{width:n,height:r,viewBox:`0 0 ${n} ${r}`,"aria-hidden":`true`});return c.append(sx(`polygon`,{points:`${a} ${o.x.toFixed(1)},${r} ${s.x.toFixed(1)},${r}`,fill:t,"fill-opacity":`0.1`}),sx(`polyline`,{points:a,fill:`none`,stroke:t,"stroke-width":String(cx),"stroke-linejoin":`round`,"stroke-linecap":`round`}),sx(`circle`,{cx:o.x.toFixed(1),cy:o.y.toFixed(1),r:String(ux),fill:t,stroke:`var(--canvas)`,"stroke-width":String(cx)})),c}var mx={hero:{w:300,h:56},tile:{w:132,h:34}};function hx(e,t,n,r){let i=F(`div`,{class:`monitor-tile__plot`}),a=0,o=r=>{let o=Math.round(r);o<=0||o===a||(a=o,i.replaceChildren(px(e,t,o,n.h)))};if(o(n.w),typeof ResizeObserver==`function`){let e=new ResizeObserver(e=>{for(let t of e)o(t.contentRect.width)});e.observe(i),r.push(e)}return i}function gx(e,t){let n=ax(e.accent);return e.series&&e.series.points.length>1?hx(e.series,n,e.hero?mx.hero:mx.tile,t):typeof e.ratio==`number`?F(`div`,{class:`monitor-tile__plot`},F(`span`,{class:`monitor-meter`,style:`--monitor-hue:${n}`},F(`span`,{class:`monitor-meter__track`},yx(e.ratio)),xx(e.markers))):null}function _x(e){return Math.max(0,Math.min(1,e))}function vx(e){return`${(_x(e)*100).toFixed(1)}%`}function yx(e){return F(`span`,{class:`monitor-meter__fill`,style:`width:${vx(e)}`})}function bx(e){return e.label??`${Math.round(_x(e.ratio)*100)}%`}function xx(e){if(!e||e.length===0)return null;let t=[...e].sort((e,t)=>e.ratio-t.ratio);return F(`span`,{class:`monitor-meter__marks`,role:`img`,"aria-label":[...t].reverse().map(bx).join(`, `)},...t.map(e=>F(`span`,{class:`monitor-meter__mark`,"data-mark":e.id,style:`left:${vx(e.ratio)};--mark-color:${e.color}`,title:e.label??null,"aria-hidden":`true`})))}function Sx(e,t){let n=F(`section`,{class:`monitor-tile${e.hero?` monitor-tile--hero`:``}`,"data-vital":e.id});return P(n,[F(`span`,{class:`monitor-tile__label`},e.label),F(`div`,{class:`monitor-tile__figure`},F(`span`,{class:`monitor-tile__value`},e.value),e.unit?F(`span`,{class:`monitor-tile__unit`},e.unit):null),e.delta?F(`span`,{class:`monitor-tile__delta`},e.delta):null,gx(e,t),e.foot?F(`span`,{class:`monitor-tile__foot`},e.foot):null]),n}function Cx(e,t){return F(`div`,{class:`monitor-vitals`},...e.map(e=>Sx(e,t)))}function wx(e){return F(`li`,{class:`monitor-alert`,"data-severity":e.severity,"data-alert":e.id},F(`span`,{class:`monitor-alert__icon monitor-glyph--${e.severity}`},m(e.icon??$b[e.severity===`error`?`error`:`warn`],{size:16})),F(`span`,{class:`monitor-alert__copy`},F(`span`,{class:`monitor-alert__title`},e.title),e.detail?F(`span`,{class:`monitor-alert__detail`},e.detail):null),e.age?F(`span`,{class:`monitor-alert__age`},e.age):null)}function Tx(){return F(`div`,{class:`monitor-clear`,role:`status`},rx(`active`),F(`span`,{class:`monitor-clear__title`},`All clear`),F(`span`,{class:`monitor-clear__text`},`Nothing is stalled, expired, or failing.`))}function Ex(e){let t=e.some(e=>e.severity===`error`)?`error`:e.length>0?`warn`:`ok`;return F(`section`,{class:`monitor-block`,"data-block":`attention`},F(`div`,{class:`monitor-block__head`},F(`h3`,{class:`monitor-block__title`},`Needs attention`),F(`span`,{class:`monitor-pill monitor-pill--${t}`},String(e.length))),e.length===0?Tx():F(`ul`,{class:`monitor-alerts`},...e.map(wx)))}function Dx(e){let t=tx(e),n=F(`span`,{class:`monitor-child__headline`},F(`span`,{class:`monitor-child__name`},e.name));for(let t of e.badges??[])n.appendChild(F(`span`,{class:`monitor-badge`},t));let r=F(`span`,{class:`monitor-child__copy`},n);return e.sublabel&&r.appendChild(F(`span`,{class:`monitor-child__sublabel`},e.sublabel)),F(`li`,{class:`monitor-child`,"data-status":t,style:`padding-left:${28+(e.depth??0)*18}px`},rx(t),r,F(`span`,{class:`monitor-child__meta`},e.meta))}function Ox(e){return F(`div`,{class:`monitor-empty`,role:`status`},F(`span`,{class:`monitor-empty__title`},`No ${e.label.toLocaleLowerCase()} yet`),F(`span`,{class:`monitor-empty__text`},e.emptyText??`${e.label} will appear here when available.`))}function kx(e,t,n,r,i){let a=nx(e),o=a===`warn`||a===`error`,s=n.has(e.id)?!0:!t.has(e.id)&&o&&e.rows.length>0,c=F(`ul`,{class:`monitor-children`,id:i});e.rows.length===0?c.replaceChildren(Ox(e)):c.append(...e.rows.map(Dx)),s||c.setAttribute(`hidden`,``);let l=F(`button`,{class:`monitor-row`,type:`button`},F(`span`,{class:`monitor-row__chev`,"aria-hidden":`true`},m(s?`chevron-down`:`chevron-right`,{size:15})),F(`span`,{class:`monitor-row__icon`},m(e.icon??`box`,{size:16})),F(`span`,{class:`monitor-row__name`},e.label),F(`span`,{class:`monitor-row__summary`},e.meta??`${e.count}`),F(`span`,{class:`monitor-row__state monitor-glyph--${a}`},rx(a),ex[a]));return l.setAttribute(`aria-expanded`,String(s)),l.setAttribute(`aria-controls`,i),l.addEventListener(`click`,()=>r(e.id,s)),F(`div`,{class:`monitor-group`,"data-section":e.id,"data-status":a,"data-accent":e.accent??`neutral`},l,c)}var Ax=[`pid`,`ppid`,`state`,`started`,`elapsed`,`scoop`,`command`],jx=new Set([`R`,`S`]);function Mx(e,t){if(t===`state`)return F(`td`,{class:`monitor-td monitor-td--state`},F(`span`,{class:`monitor-statcell`},F(`span`,{class:`monitor-stat-tag monitor-stat-tag--${e.state}`},e.state),F(`span`,{class:`monitor-stat-word`},e.status)));let n=e[t];return F(`td`,{class:`monitor-td monitor-td--${t}`},n==null?`—`:String(n))}function Nx(e){return F(`tr`,{class:`monitor-tr`,"data-pid":String(e.pid),"data-live":String(jx.has(e.state))},...Ax.map(t=>Mx(e,t)))}function Px(e,t,n){return[...e].sort((e,r)=>{let i=e[t],a=r[t],o=typeof i==`number`&&typeof a==`number`?i-a:String(i??``).localeCompare(String(a??``));return n?-o:o})}function Fx(e,t){return F(`tr`,null,...Ax.map(n=>{let r=e.sort===n,i=F(`th`,{class:`monitor-th monitor-td--${n}`,scope:`col`},F(`span`,{class:`monitor-th__label`},n.toUpperCase()),r?m(e.descending?`chevron-down`:`chevron-up`,{size:12}):null);return i.setAttribute(`aria-sort`,r?e.descending?`descending`:`ascending`:`none`),i.addEventListener(`click`,()=>{e.descending=e.sort===n&&!e.descending,e.sort=n,t()}),i}))}function Ix(e,t){return!t||e.command.toLowerCase().includes(t)||(e.scoop??``).toLowerCase().includes(t)||String(e.pid).includes(t)}function Lx(e){let t={sort:`pid`,descending:!1,query:``},n=F(`input`,{class:`monitor-input`,type:`search`,"aria-label":`Filter processes`,placeholder:`Filter command, scoop, or pid…`}),r=F(`thead`),i=F(`tbody`),a=F(`span`,{class:`monitor-block__hint`}),o=()=>{let n=Px(e.rows,t.sort,t.descending).filter(e=>Ix(e,t.query));if(r.replaceChildren(Fx(t,o)),n.length===0){let e=F(`td`,{class:`monitor-td monitor-empty-cell`,colspan:Ax.length});e.textContent=t.query?`No live process matches “${t.query}”.`:`No processes running.`,i.replaceChildren(F(`tr`,{class:`monitor-tr`},e))}else i.replaceChildren(...n.map(Nx));let s=e.terminated>0?` · ${e.terminated.toLocaleString()} exited this session`:``;a.replaceChildren(document.createTextNode(`${e.rows.length} live${s}`))};return n.addEventListener(`input`,()=>{t.query=n.value.trim().toLowerCase(),o()}),o(),F(`section`,{class:`monitor-block`,"data-block":`processes`},F(`div`,{class:`monitor-block__head`},F(`h3`,{class:`monitor-block__title`},`Processes`),a),F(`div`,{class:`monitor-toolbar`},n),F(`div`,{class:`monitor-tablewrap`},F(`table`,{class:`monitor-table`},r,i)))}function Rx(e){return{...e,rows:e.rows.map(e=>({...e,badges:e.badges?.slice()}))}}var zx=0;N(`slicc-monitor`,class extends HTMLElement{#e={};#t=new Set;#n=new Set;#r=!1;#i=++zx;#a=[];connectedCallback(){Zb(this.ownerDocument),this.#r||=(this.#t=qb(),!0),this.#u()}disconnectedCallback(){this.#o()}#o(){for(let e of this.#a)e.disconnect();this.#a=[]}get model(){return{...this.#e,vitals:this.#e.vitals?.map(e=>({...e,series:e.series?{...e.series,points:e.series.points.map(e=>({...e}))}:e.series,markers:e.markers?e.markers.map(e=>({...e})):e.markers})),alerts:this.#e.alerts?.map(e=>({...e})),sections:this.#e.sections?.map(Rx),processes:this.#e.processes?{...this.#e.processes,rows:this.#e.processes.rows.map(e=>({...e}))}:this.#e.processes}}set model(e){this.#e=e??{},this.isConnected&&this.#u()}get sections(){return(this.#e.sections??[]).map(Rx)}set sections(e){this.#e={...this.#e,sections:Array.isArray(e)?e.map(Rx):[]},this.isConnected&&this.#u()}#s(){let e=F(`button`,{class:`monitor-btn`,type:`button`,"aria-label":`Re-sync monitor data`},m(`refresh-cw`,{size:14}),F(`span`,null,`Re-sync`));return e.addEventListener(`click`,()=>{this.dispatchEvent(new CustomEvent(`slicc-monitor-refresh`,{bubbles:!0,composed:!0}))}),F(`header`,{class:`monitor-head`},F(`span`,{class:`monitor-head__mark`},m(`activity`,{size:18})),F(`div`,{class:`monitor-head__copy`},F(`h2`,{class:`monitor-head__title`},`Live monitor`),F(`p`,{class:`monitor-head__sub`},this.#e.updated??`Streaming`)),e)}#c(e){let t=F(`div`,{class:`monitor-groups`});for(let n of e){let e=n.id.replace(/[^a-z0-9_-]/gi,`-`);t.appendChild(kx(n,this.#t,this.#n,(e,t)=>this.#l(e,t),`monitor-${this.#i}-${e}`))}return F(`section`,{class:`monitor-block`,"data-block":`topology`},F(`div`,{class:`monitor-block__head`},F(`h3`,{class:`monitor-block__title`},`Topology`),F(`span`,{class:`monitor-block__hint`},`healthy groups stay collapsed`)),t)}#l(e,t){t?(this.#n.delete(e),this.#t.add(e)):(this.#t.delete(e),this.#n.add(e)),Jb(this.#t),this.#u()}#u(){let{vitals:e=[],alerts:t,sections:n=[],processes:r}=this.#e;this.#o();let i=F(`div`,{class:`monitor`});P(i,[this.#s(),e.length>0?Cx(e,this.#a):null,t?Ex(t):null,n.length>0?this.#c(n):null,r?Lx(r):null]),this.replaceChildren(i)}});var Bx=e({CHAT_SURFACE_ID:()=>_u,DEFAULT_LAUNCHER_CORNER:()=>je,DEFAULT_LAUNCHER_FOLLOWER_STATUS:()=>Pe,HOLD_TO_ENABLE_MS:()=>Gn,LAUNCHER_FOLLOWER_STATUS_ATTR:()=>Fe,LAYOUT_SCHEMA_VERSION:()=>1,MACHINE_WRITTEN_MEMORY_PATH:()=>MACHINE_WRITTEN_MEMORY_PATH,PANEL_MARKER_ATTR:()=>Co,REDACTED_REAL_WORLD_MEMORY_PATH:()=>REDACTED_REAL_WORLD_MEMORY_PATH,SYNTHETIC_MEMORY_PATH:()=>SYNTHETIC_MEMORY_PATH,SliccImagePreview:()=>Rn,TOKENS_CSS:()=>iu,ensureGlobalTokens:()=>ou,followSystemTheme:()=>cu,setTheme:()=>su}),Vx=`wcui-panel-host`,Hx=`wcui-trusted-layer`,Ux=[`.${Vx}{position:absolute;inset:0;isolation:isolate;`,`display:flex;flex-direction:column;min-width:0;min-height:0;}`,`.${Hx}{position:absolute;inset:0;pointer-events:none;`,`display:flex;flex-direction:column;}`,`.${Hx}>*{pointer-events:auto;}`].join(``);function Wx(e=document){let t=e.createElement(`div`);t.className=Vx;let n=e.createElement(`div`);return n.className=Hx,n.setAttribute(`data-slicc-trusted`,``),{panelHost:t,trustedLayer:n}}function Gx(e,t=document){let n=t.querySelector(`.${Hx}`);if(!n)throw Error(`trusted layer not found — approval chrome must not fall back to document.body (it would be occludable by a panel; see trusted-layer.ts)`);n.appendChild(e)}var Kx=`#b07823`,qx=[`#06b6d4`,`#8b5cf6`,`#f59e0b`,`#10b981`,`#3b82f6`,`#ef4444`];function Jx(e){if(e.isRoot)return Kx;let t=0;for(let n of e.name)t=t*31+n.charCodeAt(0)>>>0;return qx[t%qx.length]}var Yx=new Uint8Array([137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,0,1,0,0,0,1,8,4,0,0,0,181,28,12,2,0,0,0,11,73,68,65,84,120,218,99,100,96,0,0,0,6,0,2,48,129,208,47,0,0,0,0,73,69,78,68,174,66,96,130]);function Xx(e){let t=``;for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return typeof btoa==`function`?btoa(t):Buffer.from(t,`binary`).toString(`base64`)}var Zx=new Date(`2024-01-01T10:00:00`).getTime();function Y(e){return Zx+e*6e4}var Qx=`ui-fixture`;function $x(){return[{id:`fx-user-1`,role:`user`,content:`Hey sliccy — can you summarize what this fixture covers?`,timestamp:Y(0)},{id:`fx-assistant-1`,role:`assistant`,content:`Sure! This session walks through every chat UI variant I know about. You'll see user and assistant bubbles, tool calls in every status, the six lick channels, a delegation, queued messages, and a streaming tail at the end so you can inspect the live state.`,timestamp:Y(.2)}]}function eS(){return[{id:`fx-user-2`,role:`user`,content:`Show me some **markdown** — headings, lists, code, a blockquote.`,timestamp:Y(1)},{id:`fx-user-attachment`,role:`user`,content:`Use these attachments as visual and text context.`,timestamp:Y(1.1),attachments:[{id:`fx-att-image`,name:`dot.png`,mimeType:`image/png`,size:Yx.byteLength,kind:`image`,data:Xx(Yx)},{id:`fx-att-text`,name:`notes.txt`,mimeType:`text/plain`,size:21,kind:`text`,text:`Fixture attachment text`}]},{id:`fx-assistant-2`,role:`assistant`,content:"## Rich content sample,,Here is a short list:,,- `renderAssistantMessageContent` handles GFM markdown,- Code blocks get syntax highlighting,- Inline `code` uses the mono token,,A fenced code block:,,```ts,import { createChatFixture } from './chat-fixture.js';,,const msgs = createChatFixture();,console.log(msgs.length);,```,,> Blockquotes should feel quieter than regular text.,,And a nested ordered list:,,1. First step,2. Second step, 1. Sub-step A, 2. Sub-step B,3. Third step".split(`,`).join(`
|
|
7615
|
-
`),timestamp:Y(1.3)}]}function tS(){return[{id:`fx-assistant-3`,role:`assistant`,content:`Let me check a few things before I answer.`,timestamp:Y(2),toolCalls:[{id:`fx-tc-read`,name:`read_file`,input:{path:`/workspace/README.md`},result:`# Sample README
|
|
7616
|
-
|
|
7617
|
-
This is the contents that read_file returned.`},{id:`fx-tc-bash`,name:`bash`,input:{command:`ls -la /workspace`},result:`total 24
|
|
7618
|
-
drwxr-xr-x 4 user user 4096 Jan 01 10:00 .
|
|
7619
|
-
drwxr-xr-x 6 user user 4096 Jan 01 10:00 ..
|
|
7620
|
-
-rw-r--r-- 1 user user 187 Jan 01 10:00 README.md
|
|
7621
|
-
drwxr-xr-x 2 user user 4096 Jan 01 10:00 src`},{id:`fx-tc-err`,name:`edit_file`,input:{path:`/workspace/missing.ts`,old_str:`x`,new_str:`y`},result:`ENOENT: no such file or directory, open "/workspace/missing.ts"`,isError:!0},{id:`fx-tc-run`,name:`bash`,input:{command:`npm run test -- --coverage`}},{id:`fx-tc-shot`,name:`bash`,input:{command:`playwright-cli screenshot`},result:`Screenshot saved to /tmp/shot.png`,_screenshotDataUrl:`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=`}]}]}function nS(){return[{id:`fx-assistant-scoop-mgmt`,role:`assistant`,content:`Spinning up the scoops I need and handing out the work.`,timestamp:Y(3),toolCalls:[{id:`fx-tc-list-scoops`,name:`list_scoops`,input:{},result:`Registered scoops:
|
|
7622
|
-
- sliccy (cone) [CONE] — ready (since Jan 1, 9:58 AM)
|
|
7623
|
-
- Hero Block (hero-block-scoop) — ready (since Jan 1, 9:59 AM)
|
|
7624
|
-
- Install Doc Writer (install-doc-writer-scoop) — idle`},{id:`fx-tc-scoop-scoop`,name:`scoop_scoop`,input:{name:`Release Notes`,model:`claude-sonnet-4-6`,prompt:`Draft release notes for v0.3.2 using the merged PR titles from the last 7 days.`,visiblePaths:[`/workspace/`,`/shared/releases/`],writablePaths:[`/scoops/release-notes-scoop/`,`/shared/releases/`]},result:`Scoop "Release Notes" created as "release-notes-scoop" and task sent. It is now working on it.`},{id:`fx-tc-scoop-scoop-err`,name:`scoop_scoop`,input:{name:`Release Notes`},result:`Failed to create scoop: a scoop named "release-notes-scoop" already exists.`,isError:!0},{id:`fx-tc-feed`,name:`feed_scoop`,input:{scoop_name:`hero-block-scoop`,prompt:`Update the hero block to use the new gradient background defined in /shared/tokens/brand.css. Preserve the existing copy. Run the snapshot tests when done.`},result:`Task sent to hero-block-scoop. You will be notified when it completes.`},{id:`fx-tc-send`,name:`send_message`,input:{text:`Checkpoint: finished the CSS token pass, starting on the test snapshots.`,sender:`hero-block-scoop`},result:`Message sent.`},{id:`fx-tc-drop`,name:`drop_scoop`,input:{scoop_name:`install-doc-writer-scoop`},result:`Scoop "Install Doc Writer" (install-doc-writer-scoop) has been dropped.`},{id:`fx-tc-memory`,name:`update_global_memory`,input:{content:`# Global Memory
|
|
7625
|
-
|
|
7626
|
-
- Brand colors now live in /shared/tokens/brand.css
|
|
7627
|
-
- Release notes ship on Wednesdays
|
|
7628
|
-
`},result:`Global memory updated successfully.`}]}]}function rS(){return[{id:`fx-delegation-1`,role:`user`,content:"**[Instructions from sliccy]**\n\nRead `/workspace/README.md` and extract the install steps into `/shared/install.md`.",timestamp:Y(4),source:`delegation`,channel:`delegation`},{id:`fx-assistant-delegated`,role:`assistant`,content:"Extracted the install steps. Wrote them to `/shared/install.md`. The section covers prerequisites, npm install, and the dev server launch.",timestamp:Y(4.4),source:`cone`}]}function iS(){return[{id:`fx-lick-webhook`,role:`user`,content:"[Webhook Event: github-push]\n```json\n"+JSON.stringify({ref:`refs/heads/main`,repository:{full_name:`example/repo`},head_commit:{message:`fix(ui): tighten button contrast in dark mode`}},null,2)+"\n```",timestamp:Y(6),source:`lick`,channel:`webhook`},{id:`fx-lick-preview`,role:`user`,content:`Preview tab connected from https://demo.sliccy.now`,timestamp:Y(6.3),source:`lick`,channel:`preview`},{id:`fx-lick-preview-event`,role:`user`,content:"[Preview event: cta-clicked] from tab (preview:tok--sec:conn-42)\n```json\n"+JSON.stringify({name:`cta-clicked`,detail:{button:`signup`}},null,2)+"\n```",timestamp:Y(6.6),source:`lick`,channel:`webhook`},{id:`fx-lick-cron`,role:`user`,content:"[Cron Event: daily-digest]\n```json\n"+JSON.stringify({time:new Date(Y(8)).toISOString()},null,2)+"\n```",timestamp:Y(8),source:`lick`,channel:`cron`},{id:`fx-lick-sprinkle`,role:`user`,content:"[Sprinkle Event: welcome]\n```json\n"+JSON.stringify({action:`onboarding-complete`,data:{mountWorkspace:!0}},null,2)+"\n```",timestamp:Y(10),source:`lick`,channel:`sprinkle`},{id:`fx-lick-fswatch`,role:`user`,content:"[File Watch Event: src-watch]\n```json\n"+JSON.stringify({changes:[{type:`modified`,path:`/workspace/src/app.ts`},{type:`created`,path:`/workspace/src/utils.ts`}]},null,2)+"\n```",timestamp:Y(12),source:`lick`,channel:`fswatch`},{id:`fx-lick-navigate`,role:`user`,content:`[Navigate Event: ${c}/handoff?handoff=demo]\n\`\`\`json\n`+JSON.stringify({url:`${c}/handoff?handoff=demo`,verb:`handoff`,target:`${c}/handoff?handoff=demo`,instruction:`demo`,title:`Handoff`},null,2)+"\n```",timestamp:Y(14),source:`lick`,channel:`navigate`},{id:`fx-lick-session-reload`,role:`user`,content:`[Session Reload: mount-recovery]
|
|
7629
|
-
|
|
7630
|
-
A previously-mounted directory needs to be reauthorized:
|
|
7631
|
-
|
|
7632
|
-
- \`/mnt/workspace\` (was \`workspace/\`)`,timestamp:Y(16),source:`lick`,channel:`session-reload`},{id:`fx-lick-upgrade`,role:`user`,content:`[Upgrade Event: 0.4.1→0.5.0]
|
|
7633
|
-
|
|
7634
|
-
SLICC was upgraded from \`0.4.1\` to \`0.5.0\`.
|
|
7635
|
-
Released: 2026-04-15T12:00:00Z
|
|
7636
|
-
|
|
7637
|
-
Use the **upgrade** skill (\`/workspace/skills/upgrade/SKILL.md\`) to:
|
|
7638
|
-
- Show the user the changelog between these tags from GitHub
|
|
7639
|
-
- Offer to merge new bundled vfs-root content into their workspace (three-way merge: bundled snapshot vs user's VFS, reconciled with the GitHub tag-to-tag diff).`,timestamp:Y(17),source:`lick`,channel:`upgrade`},{id:`fx-lick-sudo-request`,role:`user`,content:`[Scoop Access Request: tight-sandbox-scoop]
|
|
7640
|
-
Lick ID: lick-1700000000000-req42
|
|
7641
|
-
Kind: write
|
|
7642
|
-
Detail: /workspace/build/output.txt
|
|
7643
|
-
Suggested pattern: /workspace/build/**
|
|
7644
|
-
|
|
7645
|
-
Use the lick_confirm tool with lick_id="lick-1700000000000-req42" to approve (or always-approve with a pattern), or lick_dismiss with lick_id="lick-1700000000000-req42" to deny.`,timestamp:Y(17.5),source:`lick`,channel:`sudo-request`,lickId:`lick-1700000000000-req42`,lickState:`pending`},{id:`fx-lick-sudo-confirmed`,role:`user`,content:`[Scoop Access Request: release-notes-scoop]
|
|
7646
|
-
Lick ID: lick-1700000000001-req43
|
|
7647
|
-
Kind: command
|
|
7648
|
-
Detail: git push origin main
|
|
7649
|
-
Suggested pattern: git push*
|
|
7650
|
-
|
|
7651
|
-
Use the lick_confirm tool with lick_id="lick-1700000000001-req43" to approve (or always-approve with a pattern), or lick_dismiss with lick_id="lick-1700000000001-req43" to deny.`,timestamp:Y(17.7),source:`lick`,channel:`sudo-request`,lickId:`lick-1700000000001-req43`,lickState:`confirmed`},{id:`fx-lick-sudo-dismissed`,role:`user`,content:`[Scoop Access Request: scratch-scoop]
|
|
7652
|
-
Lick ID: lick-1700000000002-req44
|
|
7653
|
-
Kind: read
|
|
7654
|
-
Detail: /shared/secrets/api-key.txt
|
|
7655
|
-
Suggested pattern: /shared/secrets/**
|
|
7656
|
-
|
|
7657
|
-
Use the lick_confirm tool with lick_id="lick-1700000000002-req44" to approve (or always-approve with a pattern), or lick_dismiss with lick_id="lick-1700000000002-req44" to deny.`,timestamp:Y(17.9),source:`lick`,channel:`sudo-request`,lickId:`lick-1700000000002-req44`,lickState:`dismissed`}]}function aS(){return[{id:`fx-queued-1`,role:`user`,content:`Also double-check the install.md formatting after you finish.`,timestamp:Y(18),queued:!0}]}function oS(){return[{id:`fx-assistant-streaming`,role:`assistant`,content:`Great, running the coverage suite now. I'll report back as soon as it `,timestamp:Y(20),isStreaming:!0,toolCalls:[{id:`fx-tc-streaming`,name:`bash`,input:{command:`npm run test -- --coverage`}}]}]}function sS(){return[...$x(),...eS(),...tS(),...nS(),...rS(),...iS(),...aS(),...oS()]}var cS=new Set([`so`,`in`,`at`,`is`,`it`,`as`,`be`,`do`,`go`,`me`,`my`,`no`,`of`,`on`,`or`,`to`,`up`,`us`,`we`,`am`,`an`,`by`,`if`,`ok`]),lS=new Set([`com`,`org`,`net`,`io`,`dev`,`ai`,`app`,`co`,`gov`,`edu`,`ly`,`tv`,`xyz`,`cloud`,`computer`,`software`]),uS=new Set([`Makefile`,`Dockerfile`,`Justfile`,`Rakefile`,`Gemfile`,`Procfile`,`Brewfile`,`Vagrantfile`,`CODEOWNERS`,`LICENSE`,`README`,`CHANGELOG`,`AGENTS`]),dS=/(?:^|[\s(['"`<>,;=|])((?:~\/|\.{1,2}\/|\/)?(?:[\w.-]+\/)*[\w-][\w.-]*\.[A-Za-z0-9]{1,12})((?::\d+){0,2})/g,fS=RegExp(`(?:^|[\\s(['"\`<>,;=|])((?:~\\/|\\.{1,2}\\/|\\/)?(?:[\\w.-]+\\/)*(?:${[...uS].join(`|`)}))\\b`,`g`),pS=/[.,;:!?)\]}'"`>]+$/;function mS(e){let t=e.includes(`/`),n=e.slice(e.lastIndexOf(`/`)+1),r=n.lastIndexOf(`.`);if(r<=0)return t||uS.has(n);let i=n.slice(0,r),a=n.slice(r+1).toLowerCase();return a.length===0||/^\d+$/.test(a)||/^[\d.]+$/.test(i)&&!t?!1:t?!0:!(cS.has(a)||lS.has(a)||n.includes(`..`))}function hS(e){let t=[],n=[],r=(e,t)=>n.some(([n,r])=>e<r&&t>n),i=(i,a)=>{i.lastIndex=0;let o=i.exec(e);for(;o!==null;){let s=o[0],c=o[1]??``,l=a?o[2]??``:``,u=s.length-c.length-l.length,d=o.index+u,f=c,p=f.replace(pS,``);p.length>0&&(f=p);let m=d+f.length+l.length;if(f.length>0&&mS(f)&&!r(d,m)){let r=/^:(\d+)/.exec(l);t.push({raw:e.slice(d,m),path:f,...r?{line:Number(r[1])}:{},start:d,end:m}),n.push([d,m])}i.lastIndex=Math.max(i.lastIndex-1,o.index+1),o=i.exec(e)}};return i(dS,!0),i(fS,!1),t.sort((e,t)=>e.start-t.start)}var gS=`data-file-paths`,_S=24,vS=4e3,yS=8,bS=/\b[a-z][a-z0-9+.-]*:\/\/\S+/gi;function xS(e,t,n){if(n.length>=_S)return;if(typeof e==`string`){n.push(e.length>vS?e.slice(0,vS):e);return}if(t>=2||typeof e!=`object`||!e)return;let r=Array.isArray(e)?e:Object.values(e);for(let e of r)xS(e,t+1,n)}function SS(e){let t=[];xS(e.input,0,t);let n=[],r=new Set;for(let e of t){let t=e.replace(bS,` `);for(let e of hS(t))if(e.path.includes(`/`)&&!r.has(e.path)&&(r.add(e.path),n.push(e.path),n.length>=yS))return n}return n}function CS(e){return e.length>0?JSON.stringify(e):null}function wS(e){if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`string`):[]}catch{return[]}}var TS=`\x1B`,ES=[`#0c0c0e`,`#f43f5e`,`#5bd17b`,`#f59e0b`,`#3b82f6`,`#8b5cf6`,`#06b6d4`,`#e7e7ea`],DS=[`#8a8a93`,`#fb7185`,`#86efac`,`#fbbf24`,`#60a5fa`,`#a78bfa`,`#22d3ee`,`#ffffff`],OS=[0,95,135,175,215,255];function kS(){return{bold:!1,dim:!1,italic:!1,underline:!1,fg:null,bg:null}}function AS(e){return!e.bold&&!e.dim&&!e.italic&&!e.underline&&e.fg===null&&e.bg===null}function jS(e){return Math.max(0,Math.min(255,Math.round(e)))}function MS(e){if(e<0)return null;if(e<16)return[...ES,...DS][e]??null;if(e<232){let t=e-16;return`rgb(${OS[Math.floor(t/36)]}, ${OS[Math.floor(t%36/6)]}, ${OS[t%6]})`}if(e<=255){let t=8+(e-232)*10;return`rgb(${t}, ${t}, ${t})`}return null}function NS(e,t){let n=e[t+1];if(n===5){let n=MS(e[t+2]??NaN);return n?{color:n,next:t+2}:null}if(n===2){let[n,r,i]=[e[t+2],e[t+3],e[t+4]];return[n,r,i].some(e=>typeof e!=`number`||Number.isNaN(e))?null:{color:`rgb(${jS(n)}, ${jS(r)}, ${jS(i)})`,next:t+4}}return null}var PS={0:e=>Object.assign(e,kS()),1:e=>{e.bold=!0},2:e=>{e.dim=!0},3:e=>{e.italic=!0},4:e=>{e.underline=!0},22:e=>{e.bold=e.dim=!1},23:e=>{e.italic=!1},24:e=>{e.underline=!1},39:e=>{e.fg=null},49:e=>{e.bg=null}};function FS(e,t){if(t>=30&&t<=37)e.fg=ES[t-30];else if(t>=40&&t<=47)e.bg=ES[t-40];else if(t>=90&&t<=97)e.fg=DS[t-90];else if(t>=100&&t<=107)e.bg=DS[t-100];else return!1;return!0}function IS(e,t){let n=(t===``?`0`:t).split(`;`).map(e=>e===``?0:parseInt(e,10));for(let t=0;t<n.length;t++){let r=n[t];if(Number.isNaN(r))continue;let i=PS[r];if(i)i(e);else if(r===38||r===48){let i=NS(n,t);i&&(r===38?e.fg=i.color:e.bg=i.color,t=i.next)}else FS(e,r)}}function LS(e,t){if(AS(t))return document.createTextNode(e);let n=document.createElement(`span`);n.textContent=e;let r=n.style;return t.fg&&(r.color=t.fg),t.bg&&(r.backgroundColor=t.bg),t.bold&&(r.fontWeight=`bold`),t.dim&&(r.opacity=`0.6`),t.italic&&(r.fontStyle=`italic`),t.underline&&(r.textDecoration=`underline`),n}function RS(e,t){let n=e.length,r=e[t+1];if(r===`[`){let r=t+2;for(;r<n&&e.charCodeAt(r)>=48&&e.charCodeAt(r)<=63;)r++;for(;r<n&&e.charCodeAt(r)>=32&&e.charCodeAt(r)<=47;)r++;return r<n&&e[r]===`m`?{next:r+1,sgr:e.slice(t+2,r)}:{next:r<n?r+1:n,sgr:null}}if(r===`]`){let r=t+2;for(;r<n&&e.charCodeAt(r)!==7&&(e[r]!==TS||e[r+1]!==`\\`);)r++;return{next:r<n&&e[r]===TS?r+2:r+1,sgr:null}}let i=t+1;for(;i<n&&e.charCodeAt(i)>=32&&e.charCodeAt(i)<=47;)i++;return{next:i<n?i+1:n,sgr:null}}function zS(e){if(!e.includes(TS))return document.createTextNode(e);let t=document.createDocumentFragment(),n=kS(),r=``,i=()=>{r&&t.appendChild(LS(r,n)),r=``},a=e.length,o=0;for(;o<a;){if(e[o]!==TS){r+=e[o],o++;continue}let{next:t,sgr:a}=RS(e,o);a!==null&&(i(),IS(n,a)),o=t}return i(),t}function BS(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function VS(e){if(Array.isArray(e))return e}function HS(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t!==0)for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function US(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
7658
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function WS(e,t){return VS(e)||HS(e,t)||GS(e,t)||US()}function GS(e,t){if(e){if(typeof e==`string`)return BS(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?BS(e,t):void 0}}var KS=Object.entries,qS=Object.setPrototypeOf,JS=Object.isFrozen,YS=Object.getPrototypeOf,XS=Object.getOwnPropertyDescriptor,ZS=Object.freeze,QS=Object.seal,$S=Object.create,eC=typeof Reflect<`u`&&Reflect,tC=eC.apply,nC=eC.construct;ZS||=function(e){return e},QS||=function(e){return e},tC||=function(e,t){var n=[...arguments].slice(2);return e.apply(t,n)},nC||=function(e){return new e(...[...arguments].slice(1))};var rC=CC(Array.prototype.forEach),iC=CC(Array.prototype.lastIndexOf),aC=CC(Array.prototype.pop),oC=CC(Array.prototype.push),sC=CC(Array.prototype.splice),cC=Array.isArray,lC=CC(String.prototype.toLowerCase),uC=CC(String.prototype.toString),dC=CC(String.prototype.match),fC=CC(String.prototype.replace),pC=CC(String.prototype.indexOf),mC=CC(String.prototype.trim),hC=CC(Number.prototype.toString),gC=CC(Boolean.prototype.toString),_C=typeof BigInt>`u`?null:CC(BigInt.prototype.toString),vC=typeof Symbol>`u`?null:CC(Symbol.prototype.toString),yC=CC(Object.prototype.hasOwnProperty),bC=CC(Object.prototype.toString),xC=CC(RegExp.prototype.test),SC=wC(TypeError);function CC(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);var n=[...arguments].slice(1);return tC(e,t,n)}}function wC(e){return function(){return nC(e,[...arguments])}}function X(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:lC;if(qS&&qS(e,null),!cC(t))return e;let r=t.length;for(;r--;){let i=t[r];if(typeof i==`string`){let e=n(i);e!==i&&(JS(t)||(t[r]=e),i=e)}e[i]=!0}return e}function TC(e){for(let t=0;t<e.length;t++)yC(e,t)||(e[t]=null);return e}function EC(e){let t=$S(null);for(let r of KS(e)){var n=WS(r,2);let i=n[0],a=n[1];yC(e,i)&&(t[i]=cC(a)?TC(a):a&&typeof a==`object`&&a.constructor===Object?EC(a):a)}return t}function DC(e){switch(typeof e){case`string`:return e;case`number`:return hC(e);case`boolean`:return gC(e);case`bigint`:return _C?_C(e):`0`;case`symbol`:return vC?vC(e):`Symbol()`;case`undefined`:return bC(e);case`function`:case`object`:{if(e===null)return bC(e);let t=e,n=OC(t,`toString`);if(typeof n==`function`){let e=n(t);return typeof e==`string`?e:bC(e)}return bC(e)}default:return bC(e)}}function OC(e,t){for(;e!==null;){let n=XS(e,t);if(n){if(n.get)return CC(n.get);if(typeof n.value==`function`)return CC(n.value)}e=YS(e)}function n(){return null}return n}function kC(e){try{return xC(e,``),!0}catch{return!1}}var AC=ZS(`a.abbr.acronym.address.area.article.aside.audio.b.bdi.bdo.big.blink.blockquote.body.br.button.canvas.caption.center.cite.code.col.colgroup.content.data.datalist.dd.decorator.del.details.dfn.dialog.dir.div.dl.dt.element.em.fieldset.figcaption.figure.font.footer.form.h1.h2.h3.h4.h5.h6.head.header.hgroup.hr.html.i.img.input.ins.kbd.label.legend.li.main.map.mark.marquee.menu.menuitem.meter.nav.nobr.ol.optgroup.option.output.p.picture.pre.progress.q.rp.rt.ruby.s.samp.search.section.select.shadow.slot.small.source.spacer.span.strike.strong.style.sub.summary.sup.table.tbody.td.template.textarea.tfoot.th.thead.time.tr.track.tt.u.ul.var.video.wbr`.split(`.`)),jC=ZS(`svg.a.altglyph.altglyphdef.altglyphitem.animatecolor.animatemotion.animatetransform.circle.clippath.defs.desc.ellipse.enterkeyhint.exportparts.filter.font.g.glyph.glyphref.hkern.image.inputmode.line.lineargradient.marker.mask.metadata.mpath.part.path.pattern.polygon.polyline.radialgradient.rect.stop.style.switch.symbol.text.textpath.title.tref.tspan.view.vkern`.split(`.`)),MC=ZS([`feBlend`,`feColorMatrix`,`feComponentTransfer`,`feComposite`,`feConvolveMatrix`,`feDiffuseLighting`,`feDisplacementMap`,`feDistantLight`,`feDropShadow`,`feFlood`,`feFuncA`,`feFuncB`,`feFuncG`,`feFuncR`,`feGaussianBlur`,`feImage`,`feMerge`,`feMergeNode`,`feMorphology`,`feOffset`,`fePointLight`,`feSpecularLighting`,`feSpotLight`,`feTile`,`feTurbulence`]),NC=ZS([`animate`,`color-profile`,`cursor`,`discard`,`font-face`,`font-face-format`,`font-face-name`,`font-face-src`,`font-face-uri`,`foreignobject`,`hatch`,`hatchpath`,`mesh`,`meshgradient`,`meshpatch`,`meshrow`,`missing-glyph`,`script`,`set`,`solidcolor`,`unknown`,`use`]),PC=ZS(`math.menclose.merror.mfenced.mfrac.mglyph.mi.mlabeledtr.mmultiscripts.mn.mo.mover.mpadded.mphantom.mroot.mrow.ms.mspace.msqrt.mstyle.msub.msup.msubsup.mtable.mtd.mtext.mtr.munder.munderover.mprescripts`.split(`.`)),FC=ZS([`maction`,`maligngroup`,`malignmark`,`mlongdiv`,`mscarries`,`mscarry`,`msgroup`,`mstack`,`msline`,`msrow`,`semantics`,`annotation`,`annotation-xml`,`mprescripts`,`none`]),IC=ZS([`#text`]),LC=ZS(`accept.action.align.alt.autocapitalize.autocomplete.autopictureinpicture.autoplay.background.bgcolor.border.capture.cellpadding.cellspacing.checked.cite.class.clear.color.cols.colspan.command.commandfor.controls.controlslist.coords.crossorigin.datetime.decoding.default.dir.disabled.disablepictureinpicture.disableremoteplayback.download.draggable.enctype.enterkeyhint.exportparts.face.for.headers.height.hidden.high.href.hreflang.id.inert.inputmode.integrity.ismap.kind.label.lang.list.loading.loop.low.max.maxlength.media.method.min.minlength.multiple.muted.name.nonce.noshade.novalidate.nowrap.open.optimum.part.pattern.placeholder.playsinline.popover.popovertarget.popovertargetaction.poster.preload.pubdate.radiogroup.readonly.rel.required.rev.reversed.role.rows.rowspan.spellcheck.scope.selected.shape.size.sizes.slot.span.srclang.start.src.srcset.step.style.summary.tabindex.title.translate.type.usemap.valign.value.width.wrap.xmlns`.split(`.`)),RC=ZS(`accent-height.accumulate.additive.alignment-baseline.amplitude.ascent.attributename.attributetype.azimuth.basefrequency.baseline-shift.begin.bias.by.class.clip.clippathunits.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.cx.cy.d.dx.dy.diffuseconstant.direction.display.divisor.dominant-baseline.dur.edgemode.elevation.end.exponent.fill.fill-opacity.fill-rule.filter.filterunits.flood-color.flood-opacity.font-family.font-size.font-size-adjust.font-stretch.font-style.font-variant.font-weight.fx.fy.g1.g2.glyph-name.glyphref.gradientunits.gradienttransform.height.href.id.image-rendering.in.in2.intercept.k.k1.k2.k3.k4.kerning.keypoints.keysplines.keytimes.lang.lengthadjust.letter-spacing.kernelmatrix.kernelunitlength.lighting-color.local.marker-end.marker-mid.marker-start.markerheight.markerunits.markerwidth.maskcontentunits.maskunits.max.mask.mask-type.media.method.mode.min.name.numoctaves.offset.operator.opacity.order.orient.orientation.origin.overflow.paint-order.path.pathlength.patterncontentunits.patterntransform.patternunits.pointer-events.points.preservealpha.preserveaspectratio.primitiveunits.r.rx.ry.radius.refx.refy.repeatcount.repeatdur.restart.result.rotate.scale.seed.shape-rendering.slope.specularconstant.specularexponent.spreadmethod.startoffset.stddeviation.stitchtiles.stop-color.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke.stroke-width.style.surfacescale.systemlanguage.tabindex.tablevalues.targetx.targety.transform.transform-origin.text-anchor.text-decoration.text-orientation.text-rendering.textlength.type.u1.u2.unicode.values.vector-effect.viewbox.visibility.version.vert-adv-y.vert-origin-x.vert-origin-y.width.word-spacing.wrap.writing-mode.xchannelselector.ychannelselector.x.x1.x2.xmlns.y.y1.y2.z.zoomandpan`.split(`.`)),zC=ZS(`accent.accentunder.align.bevelled.close.columnalign.columnlines.columnspacing.columnspan.denomalign.depth.dir.display.displaystyle.encoding.fence.frame.height.href.id.largeop.length.linethickness.lquote.lspace.mathbackground.mathcolor.mathsize.mathvariant.maxsize.minsize.movablelimits.notation.numalign.open.rowalign.rowlines.rowspacing.rowspan.rspace.rquote.scriptlevel.scriptminsize.scriptsizemultiplier.selection.separator.separators.stretchy.subscriptshift.supscriptshift.symmetric.voffset.width.xmlns`.split(`.`)),BC=ZS([`xlink:href`,`xml:id`,`xlink:title`,`xml:space`,`xmlns:xlink`]),VC=QS(/{{[\w\W]*|^[\w\W]*}}/g),HC=QS(/<%[\w\W]*|^[\w\W]*%>/g),UC=QS(/\${[\w\W]*/g),WC=QS(/^data-[\-\w.\u00B7-\uFFFF]+$/),GC=QS(/^aria-[\-\w]+$/),KC=QS(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),qC=QS(/^(?:\w+script|data):/i),JC=QS(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),YC=QS(/^html$/i),XC=QS(/^[a-z][.\w]*(-[.\w]+)+$/i),ZC=QS(/<[/\w!]/g),QC=QS(/<[/\w]/g),$C=QS(/<\/no(script|embed|frames)/i),ew=QS(/\/>/i),tw={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},nw=[`style`,`script`,`xmp`,`iframe`,`noembed`,`noframes`,`plaintext`,`noscript`],rw=ZS(X({},nw)),iw=function(){let e={};return rC(nw,t=>{e[t]=QS(RegExp(`</`+t+`(?=[\\t\\n\\f\\r />])`,`i`))}),ZS(e)}(),aw=function(){return typeof window>`u`?null:window},ow=function(e,t){if(typeof e!=`object`||typeof e.createPolicy!=`function`)return null;let n=null,r=`data-tt-policy-suffix`;t&&t.hasAttribute(r)&&(n=t.getAttribute(r));let i=`dompurify`+(n?`#`+n:``);try{return e.createPolicy(i,{createHTML(e){return e},createScriptURL(e){return e}})}catch{return console.warn(`TrustedTypes policy `+i+` could not be created.`),null}},sw=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},cw=function(e,t,n,r){return yC(e,t)&&cC(e[t])?X(r.base?EC(r.base):{},e[t],r.transform):n},lw=function(e,t,n){let r=yC(e,t)?e[t]:void 0;return r&&typeof r==`object`?EC(r):n()};function uw(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:aw(),t=e=>uw(e);if(t.version=`3.4.14`,t.removed=[],!e||!e.document||e.document.nodeType!==tw.document||!e.Element)return t.isSupported=!1,t;let n=e.document,r=n,i=r.currentScript;e.DocumentFragment;let a=e.HTMLTemplateElement,o=e.Node,s=e.Element,c=e.NodeFilter;e.NamedNodeMap===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;let l=e.DOMParser,u=e.trustedTypes,d=s.prototype,f=OC(d,`cloneNode`),p=OC(d,`remove`),m=OC(d,`nextSibling`),h=OC(d,`childNodes`),g=OC(d,`parentNode`),_=OC(d,`shadowRoot`),v=OC(d,`attributes`),y=o&&o.prototype?OC(o.prototype,`nodeType`):null,b=o&&o.prototype?OC(o.prototype,`nodeName`):null,x=o&&o.prototype?OC(o.prototype,`ownerDocument`):null,S=function(e){return y?y(e):e.nodeType},C=function(e){return b?b(e):e.nodeName};if(typeof a==`function`){let e=n.createElement(`template`);e.content&&e.content.ownerDocument&&(n=e.content.ownerDocument)}let w,ee=``,T,te=!1,ne=0,re=function(){if(ne>0)throw SC(`A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.`)},ie=function(e){re(),ne++;try{return w.createHTML(e)}finally{ne--}},ae=function(e){re(),ne++;try{return w.createScriptURL(e)}finally{ne--}},E=function(){return te||=(T=ow(u,i),!0),T},oe=n,D=oe.implementation,se=oe.createNodeIterator,ce=oe.createDocumentFragment,le=oe.getElementsByTagName,ue=r.importNode,O=sw();t.isSupported=typeof KS==`function`&&typeof g==`function`&&D&&D.createHTMLDocument!==void 0;let de=VC,fe=HC,pe=UC,me=WC,he=GC,ge=qC,_e=JC,k=XC,ve=KC,A=null,ye=X({},[...AC,...jC,...MC,...PC,...IC]),j=null,be=X({},[...LC,...RC,...zC,...BC]),xe=Object.seal($S(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Se=null,Ce=null,we=Object.seal($S(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),Te=!0,Ee=!0,De=!1,Oe=!0,ke=!1,M=!0,Ae=!1,je=!1,Me=null,Ne=null,Pe=!1,Fe=!1,Ie=!1,Le=!1,Re=!0,ze=!1,Be=`user-content-`,Ve=!0,He=!1,Ue={},We=null,Ge=X({},`annotation-xml.audio.colgroup.desc.foreignobject.head.iframe.math.mi.mn.mo.ms.mtext.noembed.noframes.noscript.plaintext.script.selectedcontent.style.svg.template.thead.title.video.xmp`.split(`.`)),Ke=null,qe=X({},[`audio`,`video`,`img`,`source`,`image`,`track`]),Je=null,Ye=X({},[`alt`,`class`,`for`,`id`,`label`,`name`,`pattern`,`placeholder`,`role`,`summary`,`title`,`value`,`style`,`xmlns`]),Xe=`http://www.w3.org/1998/Math/MathML`,Ze=`http://www.w3.org/2000/svg`,Qe=`http://www.w3.org/1999/xhtml`,$e=Qe,et=!1,tt=null,nt=X({},[Xe,Ze,Qe],uC),rt=ZS([`mi`,`mo`,`mn`,`ms`,`mtext`]),it=X({},rt),at=ZS([`annotation-xml`]),ot=X({},at),st=X({},[`title`,`style`,`font`,`a`,`script`]),ct=null,N=[`application/xhtml+xml`,`text/html`],P=null,F=null,I=n.createElement(`form`),L=function(e){return e instanceof RegExp||e instanceof Function},lt=function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(F&&F===e)return;(!e||typeof e!=`object`)&&(e={}),e=EC(e),ct=N.indexOf(e.PARSER_MEDIA_TYPE)===-1?`text/html`:e.PARSER_MEDIA_TYPE,P=ct===`application/xhtml+xml`?uC:lC,A=cw(e,`ALLOWED_TAGS`,ye,{transform:P}),j=cw(e,`ALLOWED_ATTR`,be,{transform:P}),tt=cw(e,`ALLOWED_NAMESPACES`,nt,{transform:uC}),Je=cw(e,`ADD_URI_SAFE_ATTR`,Ye,{transform:P,base:Ye}),Ke=cw(e,`ADD_DATA_URI_TAGS`,qe,{transform:P,base:qe}),We=cw(e,`FORBID_CONTENTS`,Ge,{transform:P}),Se=cw(e,`FORBID_TAGS`,EC({}),{transform:P}),Ce=cw(e,`FORBID_ATTR`,EC({}),{transform:P}),Ue=yC(e,`USE_PROFILES`)?e.USE_PROFILES&&typeof e.USE_PROFILES==`object`?EC(e.USE_PROFILES):e.USE_PROFILES:!1,Te=e.ALLOW_ARIA_ATTR!==!1,Ee=e.ALLOW_DATA_ATTR!==!1,De=e.ALLOW_UNKNOWN_PROTOCOLS||!1,Oe=e.ALLOW_SELF_CLOSE_IN_ATTR!==!1,ke=e.SAFE_FOR_TEMPLATES||!1,M=e.SAFE_FOR_XML!==!1,Ae=e.WHOLE_DOCUMENT||!1,Fe=e.RETURN_DOM||!1,Ie=e.RETURN_DOM_FRAGMENT||!1,Le=e.RETURN_TRUSTED_TYPE||!1,Pe=e.FORCE_BODY||!1,Re=e.SANITIZE_DOM!==!1,ze=e.SANITIZE_NAMED_PROPS||!1,Ve=e.KEEP_CONTENT!==!1,He=e.IN_PLACE||!1,ve=kC(e.ALLOWED_URI_REGEXP)?e.ALLOWED_URI_REGEXP:KC,$e=typeof e.NAMESPACE==`string`?e.NAMESPACE:Qe,it=lw(e,`MATHML_TEXT_INTEGRATION_POINTS`,()=>X({},rt)),ot=lw(e,`HTML_INTEGRATION_POINTS`,()=>X({},at));let t=lw(e,`CUSTOM_ELEMENT_HANDLING`,()=>$S(null));if(xe=$S(null),yC(t,`tagNameCheck`)&&L(t.tagNameCheck)&&(xe.tagNameCheck=t.tagNameCheck),yC(t,`attributeNameCheck`)&&L(t.attributeNameCheck)&&(xe.attributeNameCheck=t.attributeNameCheck),yC(t,`allowCustomizedBuiltInElements`)&&typeof t.allowCustomizedBuiltInElements==`boolean`&&(xe.allowCustomizedBuiltInElements=t.allowCustomizedBuiltInElements),QS(xe),ke&&(Ee=!1),Ie&&(Fe=!0),Ue&&(A=X({},IC),j=$S(null),Ue.html===!0&&(X(A,AC),X(j,LC)),Ue.svg===!0&&(X(A,jC),X(j,RC),X(j,BC)),Ue.svgFilters===!0&&(X(A,MC),X(j,RC),X(j,BC)),Ue.mathMl===!0&&(X(A,PC),X(j,zC),X(j,BC))),we.tagCheck=null,we.attributeCheck=null,yC(e,`ADD_TAGS`)&&(typeof e.ADD_TAGS==`function`?we.tagCheck=e.ADD_TAGS:cC(e.ADD_TAGS)&&(A===ye&&(A=EC(A)),X(A,e.ADD_TAGS,P))),yC(e,`ADD_ATTR`)&&(typeof e.ADD_ATTR==`function`?we.attributeCheck=e.ADD_ATTR:cC(e.ADD_ATTR)&&(j===be&&(j=EC(j)),X(j,e.ADD_ATTR,P))),yC(e,`ADD_FORBID_CONTENTS`)&&cC(e.ADD_FORBID_CONTENTS)&&(We===Ge&&(We=EC(We)),X(We,e.ADD_FORBID_CONTENTS,P)),Ve&&(A[`#text`]=!0),Ae&&X(A,[`html`,`head`,`body`]),A.table&&(X(A,[`tbody`]),delete Se.tbody),e.TRUSTED_TYPES_POLICY){if(typeof e.TRUSTED_TYPES_POLICY.createHTML!=`function`)throw SC(`TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.`);if(typeof e.TRUSTED_TYPES_POLICY.createScriptURL!=`function`)throw SC(`TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.`);let t=w;w=e.TRUSTED_TYPES_POLICY;try{ee=ie(``)}catch(e){throw w=t,e}}else e.TRUSTED_TYPES_POLICY===null?(w=void 0,ee=``):(w===void 0&&(w=E()),w&&typeof ee==`string`&&(ee=ie(``)));ZS&&ZS(e),F=e},ut=X({},[...jC,...MC,...NC]),dt=X({},[...PC,...FC]),ft=function(e,t,n){return t.namespaceURI===Qe?e===`svg`:t.namespaceURI===Xe?e===`svg`&&(n===`annotation-xml`||it[n]):!!ut[e]},pt=function(e,t,n){return t.namespaceURI===Qe?e===`math`:t.namespaceURI===Ze?e===`math`&&ot[n]:!!dt[e]},mt=function(e,t,n){return t.namespaceURI===Ze&&!ot[n]||t.namespaceURI===Xe&&!it[n]?!1:!dt[e]&&(st[e]||!ut[e])},ht=function(e){let t=g(e);(!t||!t.tagName)&&(t={namespaceURI:$e,tagName:`template`});let n=lC(e.tagName),r=lC(t.tagName);return tt[e.namespaceURI]?e.namespaceURI===Ze?ft(n,t,r):e.namespaceURI===Xe?pt(n,t,r):e.namespaceURI===Qe?mt(n,t,r):!!(ct===`application/xhtml+xml`&&tt[e.namespaceURI]):!1},gt=function(e){oC(t.removed,{element:e});try{g(e).removeChild(e)}catch{if(p(e),!g(e))throw SC(`a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place`)}},_t=function(e,t,n){try{e.removeAttributeNode(t)}catch{try{e.removeAttribute(n)}catch{}}},R=function(e){bt(e);let t=h(e);if(t){let e=[];rC(t,t=>{oC(e,t)}),rC(e,e=>{try{p(e)}catch{}})}let n=v(e);if(n)for(let t=n.length-1;t>=0;--t){let r=n[t],i=r&&r.name;typeof i==`string`&&_t(e,r,i)}},vt=function(e,n,r){if(!r)try{r=n.getAttributeNode(e)}catch{r=null}oC(t.removed,{attribute:r||null,from:n});try{r?n.removeAttributeNode(r):n.removeAttribute(e)}catch{try{n.removeAttribute(e)}catch{}}if(e===`is`){if(Fe||Ie)try{gt(n)}catch{}else try{n.setAttribute(e,``)}catch{}}},yt=function(e){let t=v(e);if(t)for(let n=t.length-1;n>=0;--n){let r=t[n],i=r&&r.name;typeof i!=`string`||j[P(i)]||_t(e,r,i)}},bt=function(e){let t=[e];for(;t.length>0;){let e=t.pop();S(e)===tw.element&&yt(e);let n=h(e);if(n)for(let e=n.length-1;e>=0;--e)t.push(n[e])}},xt=function(e,t){return M?e===`patchsrc`||e===`for`&&t!==`label`&&t!==`output`:!1},St=function(e){if(!M)return;let t=[e];for(;t.length>0;){let e=t.pop(),n=S(e);if(n===tw.processingInstruction||n===tw.comment&&xC(QC,e.data)){try{p(e)}catch{}continue}if(n===tw.element){let t=e,n=P(C(e));try{t.hasAttribute&&t.hasAttribute(`patchsrc`)&&t.removeAttribute(`patchsrc`),t.hasAttribute&&t.hasAttribute(`for`)&&xt(`for`,n)&&t.removeAttribute(`for`)}catch{}}let r=h(e);if(r)for(let e=r.length-1;e>=0;--e)t.push(r[e])}},Ct=function(e){let t=null,r=null;if(Pe)e=`<remove></remove>`+e;else{let t=dC(e,/^[\r\n\t ]+/);r=t&&t[0]}ct===`application/xhtml+xml`&&$e===Qe&&(e=`<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>`+e+`</body></html>`);let i=w?ie(e):e;if($e===Qe)try{t=new l().parseFromString(i,ct)}catch{}if(!t||!t.documentElement){t=D.createDocument($e,`template`,null);try{t.documentElement.innerHTML=et?ee:i}catch{}}let a=t.body||t.documentElement;return e&&r&&a.insertBefore(n.createTextNode(r),a.childNodes[0]||null),$e===Qe?le.call(t,Ae?`html`:`body`)[0]:Ae?t.documentElement:a},wt=function(e){let t=x?x(e):e.ownerDocument;return se.call(t||e,e,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},Tt=function(e){return e=fC(e,de,` `),e=fC(e,fe,` `),e=fC(e,pe,` `),e},Et=function(e){e.normalize();let t=x?x(e):e.ownerDocument,n=se.call(t||e,e,c.SHOW_TEXT|c.SHOW_COMMENT|c.SHOW_CDATA_SECTION|c.SHOW_PROCESSING_INSTRUCTION,null),r=n.nextNode();for(;r;)r.data=Tt(r.data),r=n.nextNode();let i=e.querySelectorAll?.call(e,`template`);i&&rC(i,e=>{Ot(e.content)&&Et(e.content)})},Dt=function(e){let t=b?b(e):null;return typeof t!=`string`||P(t)!==`form`?!1:typeof e.nodeName!=`string`||typeof e.textContent!=`string`||typeof e.removeChild!=`function`||e.attributes!==v(e)||typeof e.removeAttribute!=`function`||typeof e.setAttribute!=`function`||typeof e.namespaceURI!=`string`||typeof e.insertBefore!=`function`||typeof e.hasChildNodes!=`function`||e.nodeType!==y(e)||e.childNodes!==h(e)},Ot=function(e){if(!y||typeof e!=`object`||!e)return!1;try{return y(e)===tw.documentFragment}catch{return!1}},kt=function(e){if(!y||typeof e!=`object`||!e)return!1;try{return typeof y(e)==`number`}catch{return!1}};function At(e,n,r){e.length!==0&&rC(e,e=>{e.call(t,n,r,F)})}let jt=function(e,t){return!!(M&&e.hasChildNodes()&&!kt(e.firstElementChild)&&xC(ZC,e.textContent)&&xC(ZC,e.innerHTML)||M&&e.namespaceURI===Qe&&rw[t]&&(kt(e.firstElementChild)||typeof e.textContent==`string`&&xC(iw[t],e.textContent))||e.nodeType===tw.processingInstruction||M&&e.nodeType===tw.comment&&xC(QC,e.data))},Mt=function(e,t){return e instanceof RegExp?xC(e,t):e instanceof Function&&!!e(t,...[...arguments].slice(2))},Nt=function(e,t,n){if(!Se[t]&&zt(t)&&Mt(xe.tagNameCheck,t))return!1;if(Ve&&!We[t]){let t=g(e),r=h(e);if(r&&t){let i=r.length;for(let a=i-1;a>=0;--a){let i=e===n?f(r[a],!0):r[a];t.insertBefore(i,m(e))}}}return gt(e),!0},Pt=function(e,t,n,r){return e.length===0?t:t===n||t===r?EC(t):t},Ft=function(e,t){return e===t||g(e)!==null?!1:(He&&bt(e),!0)},It=function(e,n){if(At(O.beforeSanitizeElements,e,null),Ft(e,n))return!0;if(Dt(e))return gt(e),!0;let r=P(C(e));if(A=Pt(O.uponSanitizeElement,A,ye,Me),At(O.uponSanitizeElement,e,{tagName:r,allowedTags:A}),Ft(e,n))return!0;if(jt(e,r))return gt(e),!0;if(Se[r]||!(we.tagCheck instanceof Function&&we.tagCheck(r))&&!A[r]){let t=Nt(e,r,n);return t===!1&&At(O.afterSanitizeElements,e,null),t}if(S(e)===tw.element&&!ht(e)||(r===`noscript`||r===`noembed`||r===`noframes`)&&xC($C,e.innerHTML))return gt(e),!0;if(ke&&e.nodeType===tw.text){let n=Tt(e.textContent);e.textContent!==n&&(oC(t.removed,{element:e.cloneNode()}),e.textContent=n)}return At(O.afterSanitizeElements,e,null),!1},Lt=function(e,t,r){if(Ce[t]||xt(t,e)||Re&&(t===`id`||t===`name`)&&(r in n||r in I))return!1;let i=j[t]||we.attributeCheck instanceof Function&&we.attributeCheck(t,e);return Ee&&xC(me,t)||Te&&xC(he,t)?!0:i?Je[t]||xC(ve,fC(r,_e,``))||(t===`src`||t===`xlink:href`||t===`href`)&&e!==`script`&&pC(r,`data:`)===0&&Ke[e]||De&&!xC(ge,fC(r,_e,``))?!0:!r:zt(e)&&Mt(xe.tagNameCheck,e)&&Mt(xe.attributeNameCheck,t,e)||t===`is`&&xe.allowCustomizedBuiltInElements&&Mt(xe.tagNameCheck,r)},Rt=X({},[`annotation-xml`,`color-profile`,`font-face`,`font-face-format`,`font-face-name`,`font-face-src`,`font-face-uri`,`missing-glyph`]),zt=function(e){return!Rt[lC(e)]&&xC(k,e)},Bt=function(e,t,n,r){if(w&&typeof u==`object`&&typeof u.getAttributeType==`function`&&!n)switch(u.getAttributeType(e,t)){case`TrustedHTML`:return ie(r);case`TrustedScriptURL`:return ae(r)}return r},Vt=function(e,n,r,i){try{r?e.setAttributeNS(r,n,i):e.setAttribute(n,i),Dt(e)?gt(e):aC(t.removed)}catch{vt(n,e)}},Ht=function(e){At(O.beforeSanitizeAttributes,e,null);let t=e.attributes;if(!t||Dt(e))return;j=Pt(O.uponSanitizeAttribute,j,be,Ne);let n={attrName:``,attrValue:``,keepAttr:!0,allowedAttributes:j,forceKeepAttr:void 0},r=t.length,i=P(e.nodeName);for(;r--;){let a=t[r],o=a.name,s=a.namespaceURI,c=a.value,l=P(o),u=c,d=o===`value`?u:mC(u);if(n.attrName=l,n.attrValue=d,n.keepAttr=!0,n.forceKeepAttr=void 0,At(O.uponSanitizeAttribute,e,n),d=n.attrValue,ze&&(l===`id`||l===`name`)&&pC(d,Be)!==0&&(vt(o,e,a),d=Be+d),M&&xC(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,d)){vt(o,e,a);continue}if(l===`attributename`&&dC(d,`href`)){vt(o,e,a);continue}if(!n.forceKeepAttr){if(!n.keepAttr){vt(o,e,a);continue}if(!Oe&&xC(ew,d)){vt(o,e,a);continue}if(ke&&(d=Tt(d)),!Lt(i,l,d)){vt(o,e,a);continue}d=Bt(i,l,s,d),d!==u&&Vt(e,o,s,d)}}At(O.afterSanitizeAttributes,e,null)},Ut=function(e){let t=null,n=wt(e);for(At(O.beforeSanitizeShadowDOM,e,null);t=n.nextNode();)if(At(O.uponSanitizeShadowNode,t,null),It(t,e),Ht(t),Ot(t.content)&&Ut(t.content),S(t)===tw.element){let e=_(t);Ot(e)&&(Wt(e),Ut(e))}At(O.afterSanitizeShadowDOM,e,null)},Wt=function(e){let t=[{node:e,shadow:null}];for(;t.length>0;){let e=t.pop();if(e.shadow){Ut(e.shadow);continue}let n=e.node,r=S(n)===tw.element,i=h(n);if(i)for(let e=i.length-1;e>=0;--e)t.push({node:i[e],shadow:null});if(r){let e=b?b(n):null;if(typeof e==`string`&&P(e)===`template`){let e=n.content;Ot(e)&&t.push({node:e,shadow:null})}}if(r){let e=_(n);Ot(e)&&t.push({node:null,shadow:e},{node:e,shadow:null})}}};return t.sanitize=function(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=null,a=null,o=null,s=null;if(et=!e,et&&(e=`<!-->`),typeof e!=`string`&&!kt(e)&&(e=DC(e),typeof e!=`string`))throw SC(`dirty is not a string, aborting`);if(!t.isSupported)return e;je?(A=Me,j=Ne):lt(n),(O.uponSanitizeElement.length>0||O.uponSanitizeAttribute.length>0)&&(A=EC(A)),O.uponSanitizeAttribute.length>0&&(j=EC(j)),t.removed=[];let c=He&&typeof e!=`string`&&kt(e);if(c){St(e);let t=C(e);if(typeof t==`string`){let n=P(t);if(!A[n]||Se[n])throw R(e),SC(`root node is forbidden and cannot be sanitized in-place`)}if(Dt(e))throw R(e),SC(`root node is clobbered and cannot be sanitized in-place`);try{Wt(e)}catch(t){throw R(e),t}}else if(kt(e))i=Ct(`<!---->`),a=i.ownerDocument.importNode(e,!0),a.nodeType===tw.element&&a.nodeName===`BODY`||a.nodeName===`HTML`?i=a:i.appendChild(a),Wt(a);else{if(!Fe&&!ke&&!Ae&&e.indexOf(`<`)===-1)return w&&Le?ie(e):e;if(i=Ct(e),!i)return Fe?null:Le?ee:``}i&&Pe&>(i.firstChild);let l=c?e:i;try{let e=wt(l);for(;o=e.nextNode();)It(o,l),Ht(o),Ot(o.content)&&Ut(o.content)}catch(n){throw c&&(R(e),rC(t.removed,e=>{e.element&&bt(e.element)})),n}if(c)return rC(t.removed,e=>{e.element&&bt(e.element)}),ke&&Et(e),e;if(Fe){if(ke&&Et(i),Ie)for(s=ce.call(i.ownerDocument);i.firstChild;)s.appendChild(i.firstChild);else s=i;return(j.shadowroot||j.shadowrootmode)&&(s=ue.call(r,s,!0)),s}let u=Ae?i.outerHTML:i.innerHTML;return Ae&&A[`!doctype`]&&i.ownerDocument&&i.ownerDocument.doctype&&i.ownerDocument.doctype.name&&xC(YC,i.ownerDocument.doctype.name)&&(u=`<!DOCTYPE `+i.ownerDocument.doctype.name+`>
|
|
7659
|
-
`+u),ke&&(u=Tt(u)),w&&Le?ie(u):u},t.setConfig=function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};lt(e),je=!0,Me=A,Ne=j},t.clearConfig=function(){F=null,je=!1,Me=null,Ne=null,w=T,ee=``},t.isValidAttribute=function(e,t,n){F||lt({});let r=P(e),i=P(t);return Lt(r,i,n)},t.addHook=function(e,t){typeof t==`function`&&yC(O,e)&&oC(O[e],t)},t.removeHook=function(e,t){if(yC(O,e)){if(t!==void 0){let n=iC(O[e],t);return n===-1?void 0:sC(O[e],n,1)[0]}return aC(O[e])}},t.removeHooks=function(e){yC(O,e)&&(O[e]=[])},t.removeAllHooks=function(){O=sw()},t}var dw=uw(),fw=dw.sanitize.bind(dw);dw.isSupported,dw.addHook.bind(dw),dw.removeHook.bind(dw),dw.removeHooks.bind(dw),dw.removeAllHooks.bind(dw),dw.setConfig.bind(dw),dw.clearConfig.bind(dw),dw.isValidAttribute.bind(dw),dw.version,dw.removed;function pw(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var mw=pw();function hw(e){mw=e}var gw={exec:()=>null};function _w(e){let t=[];return n=>{let r=Math.max(0,Math.min(3,n-1)),i=t[r];return i||(i=e(r),t[r]=i),i}}function Z(e,t=``){let n=typeof e==`string`?e:e.source,r={replace:(e,t)=>{let i=typeof t==`string`?t:t.source;return i=i.replace(yw.caret,`$1`),n=n.replace(e,i),r},getRegex:()=>new RegExp(n,t)};return r}var vw=((e=``)=>{try{return!!RegExp(`(?<=1)(?<!1)`+e)}catch{return!1}})(),yw={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:_w(e=>RegExp(`^ {0,${e}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)),hrRegex:_w(e=>RegExp(`^ {0,${e}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`)),fencesBeginRegex:_w(e=>RegExp(`^ {0,${e}}(?:\`\`\`|~~~)`)),headingBeginRegex:_w(e=>RegExp(`^ {0,${e}}#`)),htmlBeginRegex:_w(e=>RegExp(`^ {0,${e}}<(?:[a-z].*>|!--)`,`i`)),blockquoteBeginRegex:_w(e=>RegExp(`^ {0,${e}}>`))},bw=/^(?:[ \t]*(?:\n|$))+/,xw=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Sw=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Cw=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,ww=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Tw=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,Ew=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Dw=Z(Ew).replace(/bull/g,Tw).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}(?:\s|$)/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,``).getRegex(),Ow=Z(Ew).replace(/bull/g,Tw).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}(?:\s|$)/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),kw=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table|[ \t]+\n)[^\n]+)*)/,Aw=/^[^\n]+/,jw=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,Mw=Z(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace(`label`,jw).replace(`title`,/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Nw=Z(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g,Tw).getRegex(),Pw=`address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul`,Fw=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,Iw=Z(`^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n*|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>[^\\n]*\\n*|$)|<![A-Z][\\s\\S]*?(?:>[^\\n]*\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>[^\\n]*\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))`,`i`).replace(`comment`,Fw).replace(`tag`,Pw).replace(`attribute`,/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Lw=e=>Z(kw).replace(`hr`,Cw).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace(`list`,e).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,Pw).getRegex(),Rw=Lw(/ {0,3}(?:[*+-]|1[.)])[ \t]+[^ \t\n]/),zw=Lw(/ {0,3}(?:[*+-]|\d{1,9}[.)])(?:[ \t]|\n|$)/),Bw={blockquote:Z(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace(`paragraph`,zw).getRegex(),code:xw,def:Mw,fences:Sw,heading:ww,hr:Cw,html:Iw,lheading:Dw,list:Nw,newline:bw,paragraph:Rw,table:gw,text:Aw},Vw=Z(`^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)`).replace(`hr`,Cw).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`blockquote`,` {0,3}>`).replace(`code`,`(?: {4}| {0,3} )[^\\n]`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,Pw).getRegex(),Hw={...Bw,lheading:Ow,table:Vw,paragraph:Z(kw).replace(`hr`,Cw).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`table`,Vw).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,Pw).getRegex()},Uw={...Bw,html:Z(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace(`comment`,Fw).replace(/tag/g,`(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b`).getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:gw,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:Z(kw).replace(`hr`,Cw).replace(`heading`,` *#{1,6} *[^
|
|
7660
|
-
]`).replace(`lheading`,Dw).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`|fences`,``).replace(`|list`,``).replace(`|html`,``).replace(`|tag`,``).getRegex()},Ww=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Gw=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Kw=/^( {2,}|\\)\n(?!\s*$)/,qw=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,Jw=/[\p{P}\p{S}]/u,Yw=/[\s\p{P}\p{S}]/u,Xw=/[^\s\p{P}\p{S}]/u,Zw=Z(/^((?![*_])punctSpace)/,`u`).replace(/punctSpace/g,Yw).getRegex(),Qw=/[\p{Pi}\p{Ps}"']/u,$w=/(?!~)[\p{P}\p{S}]/u,eT=/(?!~)[\s\p{P}\p{S}]/u,tT=/(?:[^\s\p{P}\p{S}]|~)/u,nT=Z(/link|precode-code|html/,`g`).replace(`link`,/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace(`precode-`,vw?"(?<!`)()":"(^^|[^`])").replace(`code`,/(?<b>`+)[^`]+\k<b>(?!`)/).replace(`html`,/<(?! )[^<>]*?>/).getRegex(),rT=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,iT=Z(rT,`u`).replace(/punct/g,Jw).getRegex(),aT=Z(rT,`u`).replace(/punct/g,$w).getRegex(),oT=Z(/^(?:\*+(?:((?!\*)(?!openQuote)punct)|([^\s*]))?)|^_+(?:((?!_)(?!openQuote)punct)|([^\s_]))?/,`u`).replace(/openQuote/g,Qw).replace(/punct/g,Jw).getRegex(),sT=`^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)`,cT=Z(sT,`gu`).replace(/notPunctSpace/g,Xw).replace(/punctSpace/g,Yw).replace(/punct/g,Jw).getRegex(),lT=Z(sT,`gu`).replace(/notPunctSpace/g,tT).replace(/punctSpace/g,eT).replace(/punct/g,$w).getRegex(),uT=Z(`^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)[\\s](\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|(?:(?!\\*)punct|notPunctSpace)(\\*+)(?!\\*)(?=notPunctSpace)`,`gu`).replace(/notPunctSpace/g,Xw).replace(/punctSpace/g,Yw).replace(/punct/g,Jw).getRegex(),dT=Z(`^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)`,`gu`).replace(/notPunctSpace/g,Xw).replace(/punctSpace/g,Yw).replace(/punct/g,Jw).getRegex(),fT=Z(`^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)[\\s](_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)|(?:(?!_)punct|notPunctSpace)(_+)(?!_)(?=notPunctSpace)`,`gu`).replace(/notPunctSpace/g,Xw).replace(/punctSpace/g,Yw).replace(/punct/g,Jw).getRegex(),pT=Z(/^~~?(?:((?!~)punct)|[^\s~])/,`u`).replace(/punct/g,Jw).getRegex(),mT=Z(`^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)`,`gu`).replace(/notPunctSpace/g,Xw).replace(/punctSpace/g,Yw).replace(/punct/g,Jw).getRegex(),hT=Z(/\\(punct)/,`gu`).replace(/punct/g,Jw).getRegex(),gT=Z(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace(`scheme`,/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace(`email`,/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),_T=Z(Fw).replace(`(?:-->|$)`,`-->`).getRegex(),vT=Z(`^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>`).replace(`comment`,_T).replace(`attribute`,/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),yT=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,bT=Z(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace(`label`,yT).replace(`href`,/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]+|(?=\))/).replace(`title`,/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),xT=Z(/^!?\[(label)\]\[(ref)\]/).replace(`label`,yT).replace(`ref`,jw).getRegex(),ST=Z(/^!?\[(ref)\](?:\[\])?/).replace(`ref`,jw).getRegex(),CT=Z(`reflink|nolink(?!\\()`,`g`).replace(`reflink`,xT).replace(`nolink`,ST).getRegex(),wT=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,TT={_backpedal:gw,anyPunctuation:hT,autolink:gT,blockSkip:nT,br:Kw,code:Gw,del:gw,delLDelim:gw,delRDelim:gw,emStrongLDelim:iT,emStrongRDelimAst:cT,emStrongRDelimUnd:dT,escape:Ww,link:bT,nolink:ST,punctuation:Zw,reflink:xT,reflinkSearch:CT,tag:vT,text:qw,url:gw},ET={...TT,emStrongLDelim:oT,emStrongRDelimAst:uT,emStrongRDelimUnd:fT,link:Z(/^!?\[(label)\]\((.*?)\)/).replace(`label`,yT).getRegex(),reflink:Z(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace(`label`,yT).getRegex()},DT={...TT,emStrongRDelimAst:lT,emStrongLDelim:aT,delLDelim:pT,delRDelim:mT,url:Z(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace(`protocol`,wT).replace(`email`,/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:Z(/^(`+|~+|[^`~])(?:(?=[`~])|(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace(`protocol`,wT).getRegex()},OT={...DT,br:Z(Kw).replace(`{2,}`,`*`).getRegex(),text:Z(DT.text).replace(`\\b_`,`\\b_| {2,}\\n`).replace(/\{2,\}/g,`*`).getRegex()},kT={normal:Bw,gfm:Hw,pedantic:Uw},AT={normal:TT,gfm:DT,breaks:OT,pedantic:ET},jT={"&":`&`,"<":`<`,">":`>`,'"':`"`,"'":`'`},MT=e=>jT[e];function NT(e,t){if(t){if(yw.escapeTest.test(e))return e.replace(yw.escapeReplace,MT)}else if(yw.escapeTestNoEncode.test(e))return e.replace(yw.escapeReplaceNoEncode,MT);return e}function PT(e){try{e=encodeURI(e).replace(yw.percentDecode,`%`)}catch{return null}return e}function FT(e,t){let n=e.replace(yw.findPipe,(e,t,n)=>{let r=!1,i=t;for(;--i>=0&&n[i]===`\\`;)r=!r;return r?`|`:` |`}).split(yw.splitPipe),r=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),t){if(n.length>t)n.splice(t);else for(;n.length<t;)n.push(``)}for(;r<n.length;r++)n[r]=n[r].trim().replace(yw.slashPipe,`|`);return n}function IT(e,t,n){let r=e.length;if(r===0)return``;let i=0;for(;i<r;){let a=e.charAt(r-i-1);if(a===t&&!n)i++;else if(a!==t&&n)i++;else break}return e.slice(0,r-i)}function LT(e){let t=e.split(`
|
|
7661
|
-
`),n=t.length-1;for(;n>=0&&yw.blankLine.test(t[n]);)n--;return t.length-n<=2?e:t.slice(0,n+1).join(`
|
|
7662
|
-
`)}function RT(e,t){if(e.indexOf(t[1])===-1)return-1;let n=0;for(let r=0;r<e.length;r++)if(e[r]===`\\`)r++;else if(e[r]===t[0])n++;else if(e[r]===t[1]&&(n--,n<0))return r;return n>0?-2:-1}function zT(e,t=0){let n=t,r=``;for(let t of e)if(t===` `){let e=4-n%4;r+=` `.repeat(e),n+=e}else r+=t,n++;return r}function BT(e,t,n,r,i){let a=t.href,o=t.title||null,s=e[1].replace(i.other.outputLinkReplace,`$1`),c=e[0].charAt(0)===`!`;r.state.inLink=!0;let l=r.state.linkEmitted,u=r.state.inRawBlock;r.state.linkEmitted=!1;let d=r.inlineTokens(s),f=r.state.linkEmitted;if(r.state.linkEmitted=l,r.state.inLink=!1,!c){if(f){r.state.inRawBlock=u;return}r.state.linkEmitted=!0}return{type:c?`image`:`link`,raw:n,href:a,title:o,text:s,tokens:d}}function VT(e,t,n){let r=e.match(n.other.indentCodeCompensation);if(r===null)return t;let i=r[1];return t.split(`
|
|
7663
|
-
`).map(e=>{let t=e.match(n.other.beginningSpace);if(t===null)return e;let[r]=t;return r.length>=i.length?e.slice(i.length):e}).join(`
|
|
7664
|
-
`)}var HT=class{options;rules;lexer;constructor(e){this.options=e||mw}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:`space`,raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let e=this.options.pedantic?t[0]:LT(t[0]);return{type:`code`,raw:e,codeBlockStyle:`indented`,text:e.replace(this.rules.other.codeRemoveIndent,``)}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let e=t[0],n=VT(e,t[3]||``,this.rules);return{type:`code`,raw:e,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,`$1`):t[2],text:n}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let e=t[2].trim();if(this.rules.other.endingHash.test(e)){let t=IT(e,`#`);(this.options.pedantic||!t||this.rules.other.endingSpaceChar.test(t))&&(e=t.trim())}return{type:`heading`,raw:IT(t[0],`
|
|
7665
|
-
`),depth:t[1].length,text:e,tokens:this.lexer.inline(e)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:`hr`,raw:IT(t[0],`
|
|
7666
|
-
`)}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let e=IT(t[0],`
|
|
7667
|
-
`).split(`
|
|
7668
|
-
`),n=``,r=``,i=[];for(;e.length>0;){let t=!1,a=[],o;for(o=0;o<e.length;o++)if(this.rules.other.blockquoteStart.test(e[o]))a.push(e[o]),t=!0;else if(!t)a.push(e[o]);else break;e=e.slice(o);let s=a.join(`
|
|
7669
|
-
`),c=s.replace(this.rules.other.blockquoteSetextReplace,`
|
|
7670
|
-
$1`).replace(this.rules.other.blockquoteSetextReplace2,``);n=n?`${n}
|
|
7671
|
-
${s}`:s,r=r?`${r}
|
|
7672
|
-
${c}`:c;let l=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(c,i,!0),this.lexer.state.top=l,e.length===0)break;let u=i.at(-1);if(u?.type===`code`)break;if(u?.type===`blockquote`){let t=u,a=e.join(`
|
|
7673
|
-
`),o=t.raw+`
|
|
7674
|
-
`+a.replace(this.rules.other.blockquoteSetextReplace2,``),s=this.blockquote(o);i[i.length-1]=s,n=`${n}
|
|
7675
|
-
${a}`,r=r.substring(0,r.length-t.text.length)+s.text;break}if(u?.type===`list`){let t=u,a=t.raw+`
|
|
7676
|
-
`+e.join(`
|
|
7677
|
-
`),o=this.list(a);i[i.length-1]=o,n=n.substring(0,n.length-u.raw.length)+o.raw,r=r.substring(0,r.length-t.raw.length)+o.raw,e=a.substring(i.at(-1).raw.length).split(`
|
|
7678
|
-
`);continue}}return{type:`blockquote`,raw:n,tokens:i,text:r}}}list(e){let t=this.rules.block.list.exec(e);if(t){let n=t[1].trim(),r=n.length>1,i={type:`list`,raw:``,ordered:r,start:r?+n.slice(0,-1):``,loose:!1,items:[]};n=r?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=r?n:`[*+-]`);let a=this.rules.other.listItemRegex(n),o=!1;for(;e;){let n=!1,r=``,s=``;if(!(t=a.exec(e))||this.rules.block.hr.test(e))break;r=t[0],e=e.substring(r.length);let c=zT(t[2].split(`
|
|
7679
|
-
`,1)[0],t[1].length),l=e.split(`
|
|
7680
|
-
`,1)[0],u=!c.trim(),d=0;if(this.options.pedantic?(d=2,s=c.trimStart()):u?d=t[1].length+1:(d=c.search(this.rules.other.nonSpaceChar),d=d>4?1:d,s=c.slice(d),d+=t[1].length),u&&this.rules.other.blankLine.test(l)&&(r+=l+`
|
|
7681
|
-
`,e=e.substring(l.length+1),n=!0),!n){let t=this.rules.other.nextBulletRegex(d),n=this.rules.other.hrRegex(d),i=this.rules.other.fencesBeginRegex(d),a=this.rules.other.headingBeginRegex(d),o=this.rules.other.htmlBeginRegex(d),f=this.rules.other.blockquoteBeginRegex(d);for(;e;){let p=e.split(`
|
|
7682
|
-
`,1)[0],m;if(l=p,this.options.pedantic?(l=l.replace(this.rules.other.listReplaceNesting,` `),m=l):m=l.replace(this.rules.other.tabCharGlobal,` `),i.test(l)||a.test(l)||o.test(l)||f.test(l)||t.test(l)||n.test(l))break;if(m.search(this.rules.other.nonSpaceChar)>=d||!l.trim())s+=`
|
|
7683
|
-
`+m.slice(d);else{if(u||c.replace(this.rules.other.tabCharGlobal,` `).search(this.rules.other.nonSpaceChar)>=4||i.test(c)||a.test(c)||n.test(c))break;s+=`
|
|
7684
|
-
`+l}u=!l.trim(),r+=p+`
|
|
7685
|
-
`,e=e.substring(p.length+1),c=m.slice(d)}}i.loose||(o?i.loose=!0:this.rules.other.doubleBlankLine.test(r)&&(o=!0)),i.items.push({type:`list_item`,raw:r,task:!!this.options.gfm&&this.rules.other.listIsTask.test(s),loose:!1,text:s,tokens:[]}),i.raw+=r}let s=i.items.at(-1);if(s)s.raw=s.raw.trimEnd(),s.text=s.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let e of i.items)if(this.lexer.state.top=!1,e.tokens=this.lexer.blockTokens(e.text,[]),!i.loose){let t=e.tokens.filter(e=>e.type===`space`);i.loose=t.length>0&&t.some(e=>this.rules.other.anyLine.test(e.raw))}for(let e of i.items){let t=e.tokens[0];if(e.task&&(t?.type===`text`||t?.type===`paragraph`)){e.text=e.text.replace(this.rules.other.listReplaceTask,``),t.raw=t.raw.replace(this.rules.other.listReplaceTask,``),t.text=t.text.replace(this.rules.other.listReplaceTask,``);for(let e=this.lexer.inlineQueue.length-1;e>=0;e--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[e].src)){this.lexer.inlineQueue[e].src=this.lexer.inlineQueue[e].src.replace(this.rules.other.listReplaceTask,``);break}let n=this.rules.other.listTaskCheckbox.exec(e.raw);if(n){let t={type:`checkbox`,raw:n[0]+` `,checked:n[0]!==`[ ]`};e.checked=t.checked,i.loose?e.tokens[0]&&[`paragraph`,`text`].includes(e.tokens[0].type)&&`tokens`in e.tokens[0]&&e.tokens[0].tokens?(e.tokens[0].raw=t.raw+e.tokens[0].raw,e.tokens[0].text=t.raw+e.tokens[0].text,e.tokens[0].tokens.unshift(t)):e.tokens.unshift({type:`paragraph`,raw:t.raw,text:t.raw,tokens:[t]}):e.tokens.unshift(t)}}else e.task&&=!1}if(i.loose)for(let e of i.items){e.loose=!0;for(let t of e.tokens)t.type===`text`&&(t.type=`paragraph`)}return i}}html(e){let t=this.rules.block.html.exec(e);if(t){let e=LT(t[0]);return{type:`html`,block:!0,raw:e,pre:t[1]===`pre`||t[1]===`script`||t[1]===`style`,text:e}}}def(e){let t=this.rules.block.def.exec(e);if(t){let e=t[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal,` `),n=t[2]?t[2].replace(this.rules.other.hrefBrackets,`$1`).replace(this.rules.inline.anyPunctuation,`$1`):``,r=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,`$1`):t[3];return{type:`def`,tag:e,raw:IT(t[0],`
|
|
7686
|
-
`),href:n,title:r}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!this.rules.other.tableDelimiter.test(t[2]))return;let n=FT(t[1]),r=t[2].replace(this.rules.other.tableAlignChars,``).split(`|`),i=t[3]?.trim()?t[3].replace(this.rules.other.tableRowBlankLine,``).split(`
|
|
7687
|
-
`):[],a={type:`table`,raw:IT(t[0],`
|
|
7688
|
-
`),header:[],align:[],rows:[]};if(n.length===r.length){for(let e of r)this.rules.other.tableAlignRight.test(e)?a.align.push(`right`):this.rules.other.tableAlignCenter.test(e)?a.align.push(`center`):this.rules.other.tableAlignLeft.test(e)?a.align.push(`left`):a.align.push(null);for(let e=0;e<n.length;e++)a.header.push({text:n[e],tokens:this.lexer.inline(n[e]),header:!0,align:a.align[e]});for(let e of i)a.rows.push(FT(e,a.header.length).map((e,t)=>({text:e,tokens:this.lexer.inline(e),header:!1,align:a.align[t]})));return a}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t){let e=t[1].trim();return{type:`heading`,raw:IT(t[0],`
|
|
7689
|
-
`),depth:t[2].charAt(0)===`=`?1:2,text:e,tokens:this.lexer.inline(e)}}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let e=t[1].charAt(t[1].length-1)===`
|
|
7690
|
-
`?t[1].slice(0,-1):t[1];return{type:`paragraph`,raw:t[0],text:e,tokens:this.lexer.inline(e)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:`text`,raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:`escape`,raw:t[0],text:t[1]}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:`html`,raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let e=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(e)){if(!this.rules.other.endAngleBracket.test(e))return;let t=IT(e.slice(0,-1),`\\`);if((e.length-t.length)%2==0)return}else{let e=RT(t[2],`()`);if(e===-2)return;if(e>-1){let n=(t[0].indexOf(`!`)===0?5:4)+t[1].length+e;t[2]=t[2].substring(0,e),t[0]=t[0].substring(0,n).trim(),t[3]=``}}let n=t[2],r=``;if(this.options.pedantic){let e=this.rules.other.pedanticHrefTitle.exec(n);e&&(n=e[1],r=e[3])}else r=t[3]?t[3].slice(1,-1):``;return n=n.trim(),this.rules.other.startAngleBracket.test(n)&&(n=this.options.pedantic&&!this.rules.other.endAngleBracket.test(e)?n.slice(1):n.slice(1,-1)),BT(t,{href:n&&n.replace(this.rules.inline.anyPunctuation,`$1`),title:r&&r.replace(this.rules.inline.anyPunctuation,`$1`)},t[0],this.lexer,this.rules)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){let e=t[(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal,` `).toLowerCase()];if(!e){let e=n[0].charAt(0);return{type:`text`,raw:e,text:e}}return BT(n,e,n[0],this.lexer,this.rules)}}emStrong(e,t,n=``){let r=this.rules.inline.emStrongLDelim.exec(e);if(!(!r||!r[1]&&!r[2]&&!r[3]&&!r[4]||r[4]&&n.match(this.rules.other.unicodeAlphaNumeric))&&(!(r[1]||r[3])||!n||this.rules.inline.punctuation.exec(n))){let i=[...r[0]].length-1,a,o,s=i,c=0,l=r[0][0],u=n===l,d=l===`*`?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(d.lastIndex=0,t=t.slice(-1*e.length+i);(r=d.exec(t))!==null;){if(a=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!a)continue;if(o=[...a].length,r[3]||r[4]){s+=o;continue}if(r[5]||r[6]){if(i%3&&!((i+o)%3)){c+=o;continue}if(u)break}if(s-=o,s>0)continue;o=Math.min(o,o+s+c);let t=[...r[0]][0].length,n=e.slice(0,i+r.index+t+o);if(Math.min(i,o)%2){let e=n.slice(1,-1);return{type:`em`,raw:n,text:e,tokens:this.lexer.inlineTokens(e)}}let l=n.slice(2,-2);return{type:`strong`,raw:n,text:l,tokens:this.lexer.inlineTokens(l)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let e=t[2].replace(this.rules.other.newLineCharGlobal,` `),n=this.rules.other.nonSpaceChar.test(e),r=this.rules.other.startingSpaceChar.test(e)&&this.rules.other.endingSpaceChar.test(e);return n&&r&&(e=e.substring(1,e.length-1)),{type:`codespan`,raw:t[0],text:e}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:`br`,raw:t[0]}}del(e,t,n=``){let r=this.rules.inline.delLDelim.exec(e);if(r&&(!r[1]||!n||this.rules.inline.punctuation.exec(n))){let n=[...r[0]].length-1,i,a,o=n,s=this.rules.inline.delRDelim;for(s.lastIndex=0,t=t.slice(-1*e.length+n);(r=s.exec(t))!==null;){if(i=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!i||(a=[...i].length,a!==n))continue;if(r[3]||r[4]){o+=a;continue}if(o-=a,o>0)continue;a=Math.min(a,a+o);let t=[...r[0]][0].length,s=e.slice(0,n+r.index+t+a),c=s.slice(n,-n);return{type:`del`,raw:s,text:c,tokens:this.lexer.inlineTokens(c)}}}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let e,n;return t[2]===`@`?(e=t[1],n=`mailto:`+e):(e=t[1],n=e),{type:`link`,raw:t[0],text:e,href:n,tokens:[{type:`text`,raw:e,text:e}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let e,n;if(t[2]===`@`)e=t[0],n=`mailto:`+e;else{let r;do r=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??``;while(r!==t[0]);e=t[0],n=t[1]===`www.`?`http://`+t[0]:t[0]}return{type:`link`,raw:t[0],text:e,href:n,tokens:[{type:`text`,raw:e,text:e}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let e=this.lexer.state.inRawBlock;return{type:`text`,raw:t[0],text:t[0],escaped:e}}}},UT=class e{tokens;options;state;inlineQueue;tokenizer;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||mw,this.options.tokenizer=this.options.tokenizer||new HT,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,linkEmitted:!1,top:!0};let t={other:yw,block:kT.normal,inline:AT.normal};this.options.pedantic?(t.block=kT.pedantic,t.inline=AT.pedantic):this.options.gfm&&(t.block=kT.gfm,t.inline=this.options.breaks?AT.breaks:AT.gfm),this.tokenizer.rules=t}static get rules(){return{block:kT,inline:AT}}static lex(t,n){return new e(n).lex(t)}static lexInline(t,n){return new e(n).inlineTokens(t)}lex(e){e=e.replace(yw.carriageReturn,`
|
|
7691
|
-
`),this.blockTokens(e,this.tokens);for(let e=0;e<this.inlineQueue.length;e++){let t=this.inlineQueue[e];this.inlineTokens(t.src,t.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[],n=!1){this.tokenizer.lexer=this,this.options.pedantic&&(e=e.replace(yw.tabCharGlobal,` `).replace(yw.spaceLine,``));let r=1/0;for(;e;){if(e.length<r)r=e.length;else{this.infiniteLoopError(e.charCodeAt(0));break}let i;if(this.options.extensions?.block?.some(n=>(i=n.call({lexer:this},e,t))?(e=e.substring(i.raw.length),t.push(i),!0):!1))continue;if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length);let n=t.at(-1);i.raw.length===1&&n!==void 0?n.raw+=`
|
|
7692
|
-
`:t.push(i);continue}if(i=this.tokenizer.code(e)){e=e.substring(i.raw.length);let n=t.at(-1);n?.type===`paragraph`||n?.type===`text`?(n.raw+=(n.raw.endsWith(`
|
|
7693
|
-
`)?``:`
|
|
7694
|
-
`)+i.raw,n.text+=`
|
|
7695
|
-
`+i.text,this.inlineQueue.at(-1).src=n.text):t.push(i);continue}if(i=this.tokenizer.fences(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.heading(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.hr(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.blockquote(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.list(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.html(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.def(e)){e=e.substring(i.raw.length);let n=t.at(-1);n?.type===`paragraph`||n?.type===`text`?(n.raw+=(n.raw.endsWith(`
|
|
7696
|
-
`)?``:`
|
|
7697
|
-
`)+i.raw,n.text+=`
|
|
7698
|
-
`+i.raw,this.inlineQueue.at(-1).src=n.text):this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title},t.push(i));continue}if(i=this.tokenizer.table(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.lheading(e)){e=e.substring(i.raw.length),t.push(i);continue}let a=e;if(this.options.extensions?.startBlock){let t=1/0,n=e.slice(1),r;this.options.extensions.startBlock.forEach(e=>{r=e.call({lexer:this},n),typeof r==`number`&&r>=0&&(t=Math.min(t,r))}),t<1/0&&t>=0&&(a=e.substring(0,t+1))}if(this.state.top&&(i=this.tokenizer.paragraph(a))){let r=t.at(-1);n&&r?.type===`paragraph`?(r.raw+=(r.raw.endsWith(`
|
|
7699
|
-
`)?``:`
|
|
7700
|
-
`)+i.raw,r.text+=`
|
|
7701
|
-
`+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=r.text):t.push(i),n=a.length!==e.length,e=e.substring(i.raw.length);continue}if(i=this.tokenizer.text(e)){e=e.substring(i.raw.length);let n=t.at(-1);n?.type===`text`?(n.raw+=(n.raw.endsWith(`
|
|
7702
|
-
`)?``:`
|
|
7703
|
-
`)+i.raw,n.text+=`
|
|
7704
|
-
`+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=n.text):t.push(i);continue}if(e){this.infiniteLoopError(e.charCodeAt(0));break}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}linkInText(e){if(!e.includes(`[`))return!1;let t=this.tokenizer.rules.inline.link;for(let n of e.matchAll(this.tokenizer.rules.inline.blockSkip))if(t.test(n[0])&&e.charAt(n.index-1)!==`!`)return!0;for(let t of e.matchAll(this.tokenizer.rules.inline.reflinkSearch)){let e=t[0],n=e.lastIndexOf(`[`);if(!(e.charAt(0)===`!`||!Object.hasOwn(this.tokens.links,e.slice(n+1,-1)))&&!(n>1&&this.linkInText(e.slice(1,n-1))))return!0}return!1}inlineTokens(e,t=[]){this.tokenizer.lexer=this;let n=e;if(this.tokens.links&&e.includes(`[`)){let e=this.tokenizer.rules.inline.reflinkSearch,t=n=>{let r=n.lastIndexOf(`[`);if(!Object.hasOwn(this.tokens.links,n.slice(r+1,-1)))return n;if(r>1&&n.charAt(0)!==`!`){let i=n.slice(1,r-1);if(this.linkInText(i))return`[`+i.replace(e,t)+`][`+`a`.repeat(n.length-r-2)+`]`}return`[`+`a`.repeat(n.length-2)+`]`};n=n.replace(e,t)}n=n.replace(this.tokenizer.rules.inline.anyPunctuation,e=>`+`.repeat(e.length)),n=n.replace(this.tokenizer.rules.inline.blockSkip,(e,t,n)=>{let r=n?n.length:0;return e.slice(0,r)+`[`+`a`.repeat(e.length-r-2)+`]`}),n=this.options.hooks?.emStrongMask?.call({lexer:this},n)??n;let r=!1,i=``,a=1/0;for(;e;){if(e.length<a)a=e.length;else{this.infiniteLoopError(e.charCodeAt(0));break}r||(i=``),r=!1;let o;if(this.options.extensions?.inline?.some(n=>(o=n.call({lexer:this},e,t))?(e=e.substring(o.raw.length),t.push(o),!0):!1))continue;if(o=this.tokenizer.escape(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.tag(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.link(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(o.raw.length);let n=t.at(-1);o.type===`text`&&n?.type===`text`?(n.raw+=o.raw,n.text+=o.text):t.push(o);continue}if(o=this.tokenizer.emStrong(e,n,i)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.codespan(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.br(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.del(e,n,i)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.autolink(e)){e=e.substring(o.raw.length),t.push(o);continue}if(!this.state.inLink&&(o=this.tokenizer.url(e))){e=e.substring(o.raw.length),t.push(o);continue}let s=e;if(this.options.extensions?.startInline){let t=1/0,n=e.slice(1),r;this.options.extensions.startInline.forEach(e=>{r=e.call({lexer:this},n),typeof r==`number`&&r>=0&&(t=Math.min(t,r))}),t<1/0&&t>=0&&(s=e.substring(0,t+1))}if(o=this.tokenizer.inlineText(s)){e=e.substring(o.raw.length),o.raw.slice(-1)!==`_`&&(i=o.raw.slice(-1)),r=!0;let n=t.at(-1);n?.type===`text`?(n.raw+=o.raw,n.text+=o.text):t.push(o);continue}if(e){this.infiniteLoopError(e.charCodeAt(0));break}}return t}infiniteLoopError(e){let t=`Infinite loop on byte: `+e;if(this.options.silent)console.error(t);else throw Error(t)}},WT=class{options;parser;constructor(e){this.options=e||mw}space(e){return``}code({text:e,lang:t,escaped:n}){let r=(t||``).match(yw.notSpaceStart)?.[0],i=e.replace(yw.endingNewline,``)+`
|
|
7705
|
-
`;return r?`<pre><code class="language-`+NT(r)+`">`+(n?i:NT(i,!0))+`</code></pre>
|
|
7706
|
-
`:`<pre><code>`+(n?i:NT(i,!0))+`</code></pre>
|
|
7707
|
-
`}blockquote({tokens:e}){return`<blockquote>
|
|
7708
|
-
${this.parser.parse(e)}</blockquote>
|
|
7709
|
-
`}html({text:e}){return e}def(e){return``}heading({tokens:e,depth:t}){return`<h${t}>${this.parser.parseInline(e)}</h${t}>
|
|
7710
|
-
`}hr(e){return`<hr>
|
|
7711
|
-
`}list(e){let t=e.ordered,n=e.start,r=``;for(let t=0;t<e.items.length;t++){let n=e.items[t];r+=this.listitem(n)}let i=t?`ol`:`ul`,a=t&&n!==1?` start="`+n+`"`:``;return`<`+i+a+`>
|
|
7712
|
-
`+r+`</`+i+`>
|
|
7713
|
-
`}listitem(e){return`<li>${this.parser.parse(e.tokens)}</li>
|
|
7714
|
-
`}checkbox({checked:e}){return`<input `+(e?`checked="" `:``)+`disabled="" type="checkbox"> `}paragraph({tokens:e}){return`<p>${this.parser.parseInline(e)}</p>
|
|
7715
|
-
`}table(e){let t=``,n=``;for(let t=0;t<e.header.length;t++)n+=this.tablecell(e.header[t]);t+=this.tablerow({text:n});let r=``;for(let t=0;t<e.rows.length;t++){let i=e.rows[t];n=``;for(let e=0;e<i.length;e++)n+=this.tablecell(i[e]);r+=this.tablerow({text:n})}return r&&=`<tbody>${r}</tbody>`,`<table>
|
|
7716
|
-
<thead>
|
|
7717
|
-
`+t+`</thead>
|
|
7718
|
-
`+r+`</table>
|
|
7719
|
-
`}tablerow({text:e}){return`<tr>
|
|
7720
|
-
${e}</tr>
|
|
7721
|
-
`}tablecell(e){let t=this.parser.parseInline(e.tokens),n=e.header?`th`:`td`;return(e.align?`<${n} align="${e.align}">`:`<${n}>`)+t+`</${n}>
|
|
7722
|
-
`}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${NT(e,!0)}</code>`}br(e){return`<br>`}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,tokens:n}){let r=this.parser.parseInline(n),i=PT(e);if(i===null)return r;e=i;let a=`<a href="`+e+`"`;return t&&(a+=` title="`+NT(t)+`"`),a+=`>`+r+`</a>`,a}image({href:e,title:t,text:n,tokens:r}){r&&(n=this.parser.parseInline(r,this.parser.textRenderer));let i=PT(e);if(i===null)return NT(n);e=i;let a=`<img src="${e}" alt="${NT(n)}"`;return t&&(a+=` title="${NT(t)}"`),a+=`>`,a}text(e){return`tokens`in e&&e.tokens?this.parser.parseInline(e.tokens):`escaped`in e&&e.escaped?e.text:NT(e.text)}},GT=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return``+e}image({text:e}){return``+e}br(){return``}checkbox({raw:e}){return e}},KT=class e{options;renderer;textRenderer;constructor(e){this.options=e||mw,this.options.renderer=this.options.renderer||new WT,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new GT}static parse(t,n){return new e(n).parse(t)}static parseInline(t,n){return new e(n).parseInline(t)}parse(e){this.renderer.parser=this;let t=``;for(let n=0;n<e.length;n++){let r=e[n];if(this.options.extensions?.renderers?.[r.type]){let e=r,n=this.options.extensions.renderers[e.type].call({parser:this},e);if(n!==!1||![`space`,`hr`,`heading`,`code`,`table`,`blockquote`,`list`,`checkbox`,`html`,`def`,`paragraph`,`text`].includes(e.type)){t+=n||``;continue}}let i=r;switch(i.type){case`space`:t+=this.renderer.space(i);break;case`hr`:t+=this.renderer.hr(i);break;case`heading`:t+=this.renderer.heading(i);break;case`code`:t+=this.renderer.code(i);break;case`table`:t+=this.renderer.table(i);break;case`blockquote`:t+=this.renderer.blockquote(i);break;case`list`:t+=this.renderer.list(i);break;case`checkbox`:t+=this.renderer.checkbox(i);break;case`html`:t+=this.renderer.html(i);break;case`def`:t+=this.renderer.def(i);break;case`paragraph`:t+=this.renderer.paragraph(i);break;case`text`:t+=this.renderer.text(i);break;default:{let e=`Token with "`+i.type+`" type was not found.`;if(this.options.silent)return console.error(e),``;throw Error(e)}}}return t}parseInline(e,t=this.renderer){this.renderer.parser=this;let n=``;for(let r=0;r<e.length;r++){let i=e[r];if(this.options.extensions?.renderers?.[i.type]){let e=this.options.extensions.renderers[i.type].call({parser:this},i);if(e!==!1||![`escape`,`html`,`link`,`image`,`checkbox`,`strong`,`em`,`codespan`,`br`,`del`,`text`].includes(i.type)){n+=e||``;continue}}let a=i;switch(a.type){case`escape`:n+=t.text(a);break;case`html`:n+=t.html(a);break;case`link`:n+=t.link(a);break;case`image`:n+=t.image(a);break;case`checkbox`:n+=t.checkbox(a);break;case`strong`:n+=t.strong(a);break;case`em`:n+=t.em(a);break;case`codespan`:n+=t.codespan(a);break;case`br`:n+=t.br(a);break;case`del`:n+=t.del(a);break;case`text`:n+=t.text(a);break;default:{let e=`Token with "`+a.type+`" type was not found.`;if(this.options.silent)return console.error(e),``;throw Error(e)}}}return n}},qT=class{options;block;constructor(e){this.options=e||mw}static passThroughHooks=new Set([`preprocess`,`postprocess`,`processAllTokens`,`emStrongMask`]);static passThroughHooksRespectAsync=new Set([`preprocess`,`postprocess`,`processAllTokens`]);preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}emStrongMask(e){return e}provideLexer(e=this.block){return e?UT.lex:UT.lexInline}provideParser(e=this.block){return e?KT.parse:KT.parseInline}},JT=class{defaults=pw();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=KT;Renderer=WT;TextRenderer=GT;Lexer=UT;Tokenizer=HT;Hooks=qT;constructor(...e){this.use(...e)}walkTokens(e,t){let n=[];for(let r of e)switch(n=n.concat(t.call(this,r)),r.type){case`table`:{let e=r;for(let r of e.header)n=n.concat(this.walkTokens(r.tokens,t));for(let r of e.rows)for(let e of r)n=n.concat(this.walkTokens(e.tokens,t));break}case`list`:{let e=r;n=n.concat(this.walkTokens(e.items,t));break}default:{let e=r;this.defaults.extensions?.childTokens?.[e.type]?this.defaults.extensions.childTokens[e.type].forEach(r=>{let i=e[r].flat(1/0);n=n.concat(this.walkTokens(i,t))}):e.tokens&&(n=n.concat(this.walkTokens(e.tokens,t)))}}return n}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(e=>{let n={...e};if(n.async=this.defaults.async||n.async||!1,e.extensions&&(e.extensions.forEach(e=>{if(!e.name)throw Error(`extension name required`);if(`renderer`in e){let n=t.renderers[e.name];n?t.renderers[e.name]=function(...t){let r=e.renderer.apply(this,t);return r===!1&&(r=n.apply(this,t)),r}:t.renderers[e.name]=e.renderer}if(`tokenizer`in e){if(!e.level||e.level!==`block`&&e.level!==`inline`)throw Error(`extension level must be 'block' or 'inline'`);let n=t[e.level];n?n.unshift(e.tokenizer):t[e.level]=[e.tokenizer],e.start&&(e.level===`block`?t.startBlock?t.startBlock.push(e.start):t.startBlock=[e.start]:e.level===`inline`&&(t.startInline?t.startInline.push(e.start):t.startInline=[e.start]))}`childTokens`in e&&e.childTokens&&(t.childTokens[e.name]=e.childTokens)}),n.extensions=t),e.renderer){let t=this.defaults.renderer||new WT(this.defaults);for(let n in e.renderer){if(!(n in t))throw Error(`renderer '${n}' does not exist`);if([`options`,`parser`].includes(n))continue;let r=n,i=e.renderer[r],a=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n||``}}n.renderer=t}if(e.tokenizer){let t=this.defaults.tokenizer||new HT(this.defaults);for(let n in e.tokenizer){if(!(n in t))throw Error(`tokenizer '${n}' does not exist`);if([`options`,`rules`,`lexer`].includes(n))continue;let r=n,i=e.tokenizer[r],a=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n}}n.tokenizer=t}if(e.hooks){let t=this.defaults.hooks||new qT;for(let n in e.hooks){if(!(n in t))throw Error(`hook '${n}' does not exist`);if([`options`,`block`].includes(n))continue;let r=n,i=e.hooks[r],a=t[r];t[r]=qT.passThroughHooks.has(n)?e=>{if(this.defaults.async&&qT.passThroughHooksRespectAsync.has(n))return(async()=>{let n=await i.call(t,e);return a.call(t,n)})();let r=i.call(t,e);return a.call(t,r)}:(...e)=>{if(this.defaults.async)return(async()=>{let n=await i.apply(t,e);return n===!1&&(n=await a.apply(t,e)),n})();let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n}}n.hooks=t}if(e.walkTokens){let t=this.defaults.walkTokens,r=e.walkTokens;n.walkTokens=function(e){let n=[];return n.push(r.call(this,e)),t&&(n=n.concat(t.call(this,e))),n}}this.defaults={...this.defaults,...n}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return UT.lex(e,t??this.defaults)}parser(e,t){return KT.parse(e,t??this.defaults)}parseMarkdown(e){return(t,n)=>{let r={...n},i={...this.defaults,...r},a=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&r.async===!1)return a(Error(`marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise.`));if(typeof t>`u`||t===null)return a(Error(`marked(): input parameter is undefined or null`));if(typeof t!=`string`)return a(Error(`marked(): input parameter is of type `+Object.prototype.toString.call(t)+`, string expected`));if(i.hooks&&(i.hooks.options=i,i.hooks.block=e),i.async)return(async()=>{let n=i.hooks?await i.hooks.preprocess(t):t,r=await(i.hooks?await i.hooks.provideLexer(e):e?UT.lex:UT.lexInline)(n,i),a=i.hooks?await i.hooks.processAllTokens(r):r;i.walkTokens&&await Promise.all(this.walkTokens(a,i.walkTokens));let o=await(i.hooks?await i.hooks.provideParser(e):e?KT.parse:KT.parseInline)(a,i);return i.hooks?await i.hooks.postprocess(o):o})().catch(a);try{i.hooks&&(t=i.hooks.preprocess(t));let n=(i.hooks?i.hooks.provideLexer(e):e?UT.lex:UT.lexInline)(t,i);i.hooks&&(n=i.hooks.processAllTokens(n)),i.walkTokens&&this.walkTokens(n,i.walkTokens);let r=(i.hooks?i.hooks.provideParser(e):e?KT.parse:KT.parseInline)(n,i);return i.hooks&&(r=i.hooks.postprocess(r)),r}catch(e){return a(e)}}}onError(e,t){return n=>{if(n.message+=`
|
|
7723
|
-
Please report this to https://github.com/markedjs/marked.`,e){let e=`<p>An error occurred:</p><pre>`+NT(n.message+``,!0)+`</pre>`;return t?Promise.resolve(e):e}if(t)return Promise.reject(n);throw n}}},YT=new JT;function Q(e,t){return YT.parse(e,t)}Q.options=Q.setOptions=function(e){return YT.setOptions(e),Q.defaults=YT.defaults,hw(Q.defaults),Q},Q.getDefaults=pw,Q.defaults=mw;function XT(...e){return YT.use(...e),Q.defaults=YT.defaults,hw(Q.defaults),Q}Q.use=XT,Q.walkTokens=function(e,t){return YT.walkTokens(e,t)},Q.parseInline=YT.parseInline,Q.Parser=KT,Q.parser=KT.parse,Q.Renderer=WT,Q.TextRenderer=GT,Q.Lexer=UT,Q.lexer=UT.lex,Q.Tokenizer=HT,Q.Hooks=qT,Q.parse=Q,Q.options,Q.setOptions,Q.walkTokens,Q.parseInline,KT.parse,UT.lex;function ZT(e,t){let n=T(e);return t===`shtml`||([`js`,`javascript`,`ts`,`typescript`,`jsx`,`tsx`].includes(t)?n=$T(n):t===`json`?n=eE(n):[`bash`,`sh`,`shell`,`zsh`].includes(t)&&(n=tE(n))),n}function QT(e){let t=[];return{html:e.replace(/<span class="tok-(?:comment|string)">[\s\S]*?<\/span>/g,e=>{let n=String.fromCharCode(57344+t.length);return t.push(e),n}),restore:e=>e.replace(/[\ue000-\uf8ff]/g,e=>{let n=e.charCodeAt(0)-57344;return t[n]??e})}}function $T(e){e=e.replace(/(\/\/[^\n]*)/g,`<span class="tok-comment">$1</span>`),e=e.replace(/(\/\*[\s\S]*?\*\/)/g,`<span class="tok-comment">$1</span>`),e=e.replace(/("[^&]*?"|'[^&]*?'|`[^`]*?`)/g,`<span class="tok-string">$1</span>`);let t=QT(e);return e=t.html,e=e.replace(RegExp(`\\b(${`const.let.var.function.return.if.else.for.while.class.extends.import.export.from.default.new.this.async.await.try.catch.throw.typeof.instanceof.interface.type.enum.implements.abstract.public.private.protected.readonly.static.void.null.undefined.true.false`.split(`.`).join(`|`)})\\b`,`g`),`<span class="tok-keyword">$1</span>`),e=e.replace(/\b(\d+\.?\d*)\b/g,`<span class="tok-number">$1</span>`),e=e.replace(/\b([a-zA-Z_$][\w$]*)\s*(?=\()/g,`<span class="tok-fn">$1</span>`),t.restore(e)}function eE(e){return e=e.replace(/("[^&]*?")\s*:/g,`<span class="tok-keyword">$1</span>:`),e=e.replace(/:\s*("[^&]*?")/g,`: <span class="tok-string">$1</span>`),e=e.replace(/\b(\d+\.?\d*)\b/g,`<span class="tok-number">$1</span>`),e=e.replace(/\b(true|false|null)\b/g,`<span class="tok-keyword">$1</span>`),e}function tE(e){return e=e.replace(/(#[^\n]*)/g,`<span class="tok-comment">$1</span>`),e=e.replace(/("[^&]*?"|'[^&]*?')/g,`<span class="tok-string">$1</span>`),e=e.replace(RegExp(`\\b(${[`if`,`then`,`else`,`fi`,`for`,`do`,`done`,`while`,`case`,`esac`,`echo`,`export`,`cd`,`ls`,`mkdir`,`rm`,`cp`,`mv`,`cat`,`grep`,`npm`,`node`,`git`].join(`|`)})\\b`,`g`),`<span class="tok-keyword">$1</span>`),e}var nE=new JT({gfm:!0,breaks:!0,async:!1,renderer:{code({text:e,lang:t}){let n=t??``,r=ZT(e,n);return`<pre><code${n?` class="language-${T(n)}"`:``}>${r}</code></pre>\n`},link({href:e,title:t,tokens:n}){let r=e??``;if(r.startsWith(`javascript:`))return this.parser.parseInline(n);let i=t?` title="${T(t)}"`:``,a=this.parser.parseInline(n);return`<a href="${T(r)}"${i} target="_blank" rel="noopener noreferrer">${a}</a>`},image({href:e,title:t,text:n}){let r=e??``,i=n?` alt="${T(n)}"`:``,a=t?` title="${T(t)}"`:``;return`<img src="${T(r)}"${i}${a}>`}}}),rE={ALLOWED_TAGS:`a.b.i.em.strong.p.br.code.pre.ul.ol.li.h1.h2.h3.h4.h5.h6.table.thead.tbody.tr.th.td.del.blockquote.hr.img.span.div.details.summary.input`.split(`.`),ALLOWED_ATTR:[`href`,`src`,`alt`,`title`,`class`,`target`,`rel`,`type`,`checked`,`disabled`],ALLOW_DATA_ATTR:!1};function iE(e){return fw(e,rE)}function aE(e){return e.replace(/<a\s([^>]*?)>/g,(e,t)=>{let n=t;return/(^|\s)target\s*=/i.test(n)?n=n.replace(/(^|\s)target\s*=\s*(['"])[^'"]*\2/gi,`$1target="_blank"`):n+=` target="_blank"`,/(^|\s)rel\s*=/i.test(n)?n=n.replace(/(^|\s)rel\s*=\s*(['"])[^'"]*\2/gi,`$1rel="noopener noreferrer"`):n+=` rel="noopener noreferrer"`,`<a ${n}>`})}var oE=/<p><strong>Error:<\/strong>\s*([\s\S]*?)<\/p>/g,sE=/<pre><code class="language-shtml">[\s\S]*?<\/code><\/pre>/g,cE=`<div class="msg__dip-pending" role="status" aria-live="polite" aria-label="Pouring a dip"><span class="msg__dip-pending-label">Pouring a dip…</span><span class="msg__dip-pending-status" aria-hidden="true"></span></div>`;function lE(e){return aE(iE(nE.parse(e)))}function uE(e){return e.replace(oE,(e,t)=>`<div class="msg__error" role="alert"><div class="msg__error-label">Error</div><div class="msg__error-body">${t}</div></div>`)}function dE(e){return e.replace(sE,cE)}function fE(e){return lE(e)}function pE(e,t=!1){let n=uE(lE(x(e)));return t&&(n=dE(n)),n}w();var mE=new Set,hE=/^\[([^:\]]+):\s*([^\]]+)\]\s*\n?/,gE=/^\[([^\]]+)\]\s*/;function _E(e){let t=hE.exec(e)??gE.exec(e);return t?e.slice(t[0].length):e}function vE(e){if(typeof e!=`string`||e.length===0)return null;let t=C(e);if(t)return t;let n=hE.exec(e);if(n){let e=n[1].trim().toLowerCase().replace(/\s+event$/,``).replace(/\s+/g,`-`);if(ne(e))return e}return null}var yE=/^\[@([^\]\s]+) (?:completed|idle|sudo-request)\]/;function bE(e){return e.replace(/-scoop$/,``)}function xE(e,t={}){let n=document.createElement(e);for(let[e,r]of Object.entries(t))n.setAttribute(e,r);return n}function SE(e){let t=e.split(`
|
|
7724
|
-
`,1)[0]??``;return t.length>80?`${t.slice(0,79)}…`:t}function CE(e){return/^https?:\/\//i.test(e)}function wE(e){return/"verb"\s*:\s*"([^"\\]+)"/.exec(e)?.[1]??null}function TE(e,t,n,r){if(r)return r;let i=n?.[2]?.trim();if(!i)return t??`event`;if(t===`navigate`){let t=wE(e);if(t)return t;if(CE(i))return`navigate`}if(t===`discovery`&&CE(i))try{return new URL(i).hostname}catch{return`discovery`}return SE(i)}function EE(e,t){if(typeof e!=`object`||!e)return``;let n=e[t];return typeof n==`string`?n:``}function DE(e){return e.split(`/`).filter(Boolean).pop()??e}function OE(e){return typeof e==`string`?e:EE(e,`command`)}function kE(e){for(let t of e.trim().split(/\s+/))if(!(t===`sudo`||/^[A-Za-z_][A-Za-z0-9_]*=/.test(t)))return t.split(`/`).pop()??t;return``}var AE=new Set([`cd`,`echo`,`export`,`pwd`,`true`,`:`,`set`]);function jE(e){let t=e.split(/&&|\|\||[;|\n]/),n=null;for(let e of t){let t=kE(e);if(!t)continue;let r=AE.has(t)?1:Object.hasOwn(ME,t)?3:2;(!n||r>n.score)&&(n={program:t,score:r})}return n?.program??``}var ME={git:`git-branch`,gh:`git-pull-request`,ls:`folder-open`,cat:`file-text`,head:`file-text`,tail:`file-text`,cd:`corner-down-right`,pwd:`map-pin`,mkdir:`folder-plus`,rm:`trash-2`,mv:`move`,cp:`copy`,grep:`search`,rg:`search`,find:`search`,curl:`globe`,wget:`globe`,open:`external-link`,"tab-new":`app-window`,"playwright-cli":`app-window`,playwright:`app-window`,npm:`package`,npx:`package`,node:`hexagon`,python3:`code`,python:`code`,echo:`quote`,say:`volume-2`,afplay:`music`,screencapture:`camera`,ffmpeg:`film`,convert:`image`,pdftk:`file-text`,sqlite3:`database`,serve:`server`,tsc:`braces`,test:`flask-conical`,biome:`paintbrush`,esbuild:`zap`,webhook:`webhook`,crontask:`clock`,fswatch:`eye`,workflow:`workflow`,mount:`hard-drive`,usb:`usb`,serial:`cable`,hid:`keyboard`,esptool:`cpu`,agent:`bot`,mcp:`plug`,host:`radio`,ps:`activity`,kill:`octagon-x`,secret:`key-round`,"oauth-token":`key-round`,sed:`scissors`,awk:`filter`,diff:`git-compare`,pbcopy:`clipboard-copy`,pbpaste:`clipboard-paste`},NE={read_file:`file-text`,write_file:`file-plus`,edit_file:`file-pen`,send_message:`message-circle`,list_scoops:`ice-cream-cone`,scoop_scoop:`ice-cream-cone`,feed_scoop:`utensils`,drop_scoop:`trash-2`,scoop_mute:`bell-off`,scoop_unmute:`bell-ring`,scoop_wait:`hourglass`,update_global_memory:`brain`,lick_confirm:`shield-check`,lick_dismiss:`shield-x`,sudo_request:`shield-question`,list_sudo_requests:`list-checks`};function PE(e){if(e.name===`bash`){let t=jE(OE(e.input)),n=Object.hasOwn(ME,t)?ME[t]:`terminal`;return h(n)?n:`terminal`}let t=Object.hasOwn(NE,e.name)?NE[e.name]:`wrench`;return h(t)?t:`wrench`}function FE(e){let t=EE(e.input,`path`)||EE(e.input,`file_path`);switch(e.name){case`bash`:return`Use Sliccy's computer`;case`read_file`:return t?`Read ${DE(t)}`:`Read a file`;case`write_file`:return t?`Write ${DE(t)}`:`Write a file`;case`edit_file`:return t?`Edit ${DE(t)}`:`Edit a file`;case`send_message`:return`Send a message to Sliccy`;case`list_scoops`:return`Check on the scoops`;case`scoop_scoop`:{let t=EE(e.input,`name`);return t?`Scoop up "${t}"`:`Scoop a new scoop`}case`feed_scoop`:{let t=EE(e.input,`name`)||EE(e.input,`scoop`);return t?`Feed the ${t} scoop`:`Feed a scoop`}case`drop_scoop`:{let t=EE(e.input,`name`)||EE(e.input,`scoop`);return t?`Drop the ${t} scoop`:`Drop a scoop`}case`scoop_mute`:{let t=EE(e.input,`name`)||EE(e.input,`scoop`);return t?`Mute the ${t} scoop`:`Mute a scoop`}case`scoop_unmute`:{let t=EE(e.input,`name`)||EE(e.input,`scoop`);return t?`Unmute the ${t} scoop`:`Unmute a scoop`}case`scoop_wait`:return`Wait for the scoops`;case`update_global_memory`:return`Update the shared memory`;case`lick_confirm`:return`Grant the scoop access`;case`lick_dismiss`:return`Hold the scoop back`;case`sudo_request`:{let t=EE(e.input,`kind`);return t?`Ask for ${t} access`:`Ask for more access`}case`list_sudo_requests`:return`Check access requests`;default:{let t=e.name.replace(/[_-]+/g,` `).trim();return t.charAt(0).toUpperCase()+t.slice(1)}}}var IE=4e3,LE=4;function RE(e){return e.length>IE?`${e.slice(0,IE)}…`:e}var zE=`slicc-wcmsg-style`,BE=[`slicc-action-row .slicc-act__body:has(> .wcmsg-bash){background:#141414;`,`border-color:#2a2a2a;color:#f2f2f2;}`,`.wcmsg-bash{white-space:pre-wrap;}`,`.wcmsg-bash .wcmsg-cmd{color:#9ad17e;}`,`.wcmsg-bash .wcmsg-out{color:#f2f2f2;}`,`.wcmsg-tool-image{display:block;max-width:100%;max-height:480px;width:auto;height:auto;`,`object-fit:contain;margin:8px 0;border-radius:6px;}`,`.wcmsg-image-overflow{margin-top:6px;opacity:.7;}`,`.wcmsg-path{color:var(--txt-3);margin-bottom:4px;}`,`slicc-action-row[data-progress] .slicc-act__ic{`,`background:linear-gradient(to top,`,`var(--slicc-progress-ink,var(--accent)) calc(var(--slicc-progress,0)*100%),`,`color-mix(in srgb,var(--slicc-progress-ink,var(--accent)) 30%,transparent) 0);}`,`slicc-action-row[data-progress="indeterminate"] .slicc-act__ic{`,`animation:wcmsg-progress-breathe 1.6s ease-in-out infinite;}`,`@keyframes wcmsg-progress-breathe{0%,100%{opacity:.45}50%{opacity:1}}`,`.wcmsg-dots{margin-left:auto;display:inline-flex;gap:4px;align-items:center;`,`color:var(--txt-3);font-variant-numeric:tabular-nums;}`,`.wcmsg-dots__dot{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.25;}`,`.wcmsg-dots__dot.is-done{opacity:1;}`,`.wcmsg-dots__dot.is-active{opacity:1;animation:wcmsg-progress-blink 1s ease-in-out infinite;}`,`.wcmsg-dots--indeterminate .wcmsg-dots__dot{animation:wcmsg-progress-blink 1.2s ease-in-out infinite;}`,`.wcmsg-dots--indeterminate .wcmsg-dots__dot:nth-child(2){animation-delay:.2s}`,`.wcmsg-dots--indeterminate .wcmsg-dots__dot:nth-child(3){animation-delay:.4s}`,`@keyframes wcmsg-progress-blink{0%,100%{opacity:1}50%{opacity:.25}}`,`slicc-action-row[data-progress] .slicc-act__head .slicc-act__badge{display:none;}`,`slicc-tool-cluster[data-progress] .wcmsg-dots{margin-left:auto;}`,`slicc-tool-cluster[data-progress] .slicc-cluster__count{margin-left:8px;}`,`slicc-action-row[data-progress] .slicc-act__body{position:relative;overflow:hidden;}`,`slicc-action-row[data-progress] .slicc-act__body::before{content:"";position:absolute;`,`top:0;left:0;height:3px;width:calc(var(--slicc-progress,0)*100%);`,`background:var(--slicc-progress-ink,var(--accent));transition:width .25s linear;z-index:1;}`,`slicc-action-row[data-progress] .slicc-act__body:has(> .wcmsg-bash)::before{background:#9ad17e;}`,`slicc-action-row[data-progress="indeterminate"] .slicc-act__body::before{width:30%;`,`animation:wcmsg-progress-slide 1.2s ease-in-out infinite;}`,`@keyframes wcmsg-progress-slide{0%{transform:translateX(-100%)}100%{transform:translateX(340%)}}`,`@media (prefers-reduced-motion:reduce){.wcmsg-dots__dot,`,`slicc-action-row[data-progress] .slicc-act__ic,`,`slicc-action-row[data-progress] .slicc-act__body::before{animation:none!important;}}`].join(``);function VE(){if(document.getElementById(zE))return;let e=document.createElement(`style`);e.id=zE,e.textContent=BE,document.head.appendChild(e)}function HE(e){let t=Math.max(0,Math.round(e/1e3));if(t<60)return`${t}s`;let n=Math.floor(t/60);return n<60?`${n}m${String(t%60).padStart(2,`0`)}s`:`${Math.floor(n/60)}h${String(n%60).padStart(2,`0`)}m`}function UE(e){if(!Number.isFinite(e)||e<0)return``;if(e<1e3)return`${Math.round(e)} B`;let t=[`kB`,`MB`,`GB`,`TB`],n=e/1e3,r=0;for(;n>=1e3&&r<t.length-1;)n/=1e3,r+=1;return`${n<10?n.toFixed(1):Math.round(n)} ${t[r]}`}var WE=`data-progress`,GE=`wcmsg-dots`,KE=3;function qE(e,t){let n=[];e.total!==void 0&&e.unit===`iterations`&&n.push(`${e.done??0}/${e.total}`),n.push(e.label);let r=[];return t===void 0?e.unit===`bytes`&&e.done&&r.push(UE(e.done)):r.push(`${Math.round(t*100)}%`),e.etaMs!==void 0&&e.etaMs>0&&r.push(`~${HE(e.etaMs)} left`),r.length?`${n.join(` · `)} — ${r.join(`, `)}`:n.join(` · `)}var JE={head:`slicc-act__head`,chev:`slicc-act__chev`,dotsBefore:`.slicc-act__chev`,iconFill:!0},YE={head:`slicc-cluster__head`,chev:`slicc-cluster__chev`,dotsBefore:`.slicc-cluster__count`,iconFill:!1};function XE(e,t,n){VE();let r=e.querySelector(`:scope > .${n.head}`),i=r?.querySelector(`:scope > .${GE}`)??null;if(!t||t.phase===`end`){e.removeAttribute(WE),e.style.removeProperty(`--slicc-progress`),e.removeAttribute(`title`),i?.remove();return}let a=typeof t.fraction==`number`&&Number.isFinite(t.fraction),o=a?Math.min(1,Math.max(0,t.fraction)):void 0;if(e.setAttribute(WE,a?`determinate`:`indeterminate`),n.iconFill?e.style.setProperty(`--slicc-progress`,o===void 0?`0`:String(o)):e.style.removeProperty(`--slicc-progress`),e.setAttribute(`title`,qE(t,o)),!r)return;let s=i;if(!s){s=xE(`span`,{class:GE,role:`progressbar`,"aria-label":t.label});for(let e=0;e<KE;e++)s.append(xE(`span`,{class:`wcmsg-dots__dot`}));let e=r.querySelector(`:scope > ${n.dotsBefore}`);e?r.insertBefore(s,e):r.append(s)}s.classList.toggle(`${GE}--indeterminate`,o===void 0),o===void 0?s.removeAttribute(`aria-valuenow`):(s.setAttribute(`aria-valuemin`,`0`),s.setAttribute(`aria-valuemax`,`100`),s.setAttribute(`aria-valuenow`,String(Math.round(o*100))));let c=o===void 0?-1:Math.min(2,Math.floor(o*KE));s.querySelectorAll(`.wcmsg-dots__dot`).forEach((e,t)=>{e.classList.toggle(`is-done`,o!==void 0&&(t<c||o>=1)),e.classList.toggle(`is-active`,o!==void 0&&o<1&&t===c)})}function ZE(e,t){XE(e,t,JE)}function QE(e,t){XE(e,t,YE)}function $E(e){let t=e.length;if(t===0)return null;let n=e.filter(e=>e.done).length;if(n===t)return null;let r=e.filter(e=>!e.done&&typeof e.fraction==`number`&&Number.isFinite(e.fraction)).reduce((e,t)=>e+Math.min(1,Math.max(0,t.fraction)),0);return{id:`cluster`,label:`${n} of ${t} done`,fraction:Math.min(1,(n+r)/t),done:n,total:t,unit:`iterations`,phase:`update`}}function eD(e){let t=(zS(e).textContent??``).split(/\r?\n/).reverse().find(e=>e.trim().length>0)?.trim();return t?SE(t):null}function tD(e,t){let n=l(t),r=n.reduce((e,t)=>e+Number(t.type===`image`),0),i=0,a=null;for(let t of n){if(t.type===`text`){e.append(zS(RE(t.text))),a=eD(t.text)??a;continue}if(i>=LE)continue;let n=document.createElement(`img`);n.className=`wcmsg-tool-image`,n.src=t.dataUrl,n.alt=a??`Tool result image`,n.loading=`lazy`,n.addEventListener(`error`,()=>n.replaceWith(zS(RE(t.marker))),{once:!0}),e.append(n),i++}if(r>i){let t=xE(`div`,{class:`wcmsg-image-overflow`});t.textContent=`+${r-i} more images`,e.append(t)}}function nD(e){let t=OE(e.input),n=kE(t),r=`slicc-bash-renderer-${n}`;if(n&&customElements.get(r)){let n=document.createElement(r);return n.setAttribute(`slot`,`body`),n.setAttribute(`command`,t),n.command=t,n.output=e.result??``,n}let i=xE(`div`,{slot:`body`,class:`wcmsg-bash`}),a=xE(`div`,{class:`wcmsg-cmd`});if(a.textContent=`$ ${RE(t)}`,i.append(a),e.result){let t=xE(`div`,{class:`wcmsg-out`});tD(t,e.result),i.append(t)}return i}function rD(e){if(VE(),e.name===`bash`)return nD(e);let t=xE(`div`,{slot:`body`}),n=EE(e.input,`path`)||EE(e.input,`file_path`);if(n){let e=xE(`div`,{class:`wcmsg-path`});e.textContent=n,t.append(e)}if(e.name===`write_file`){let n=xE(`span`,{class:`add`});return n.textContent=RE(EE(e.input,`content`)),t.append(n),t}if(e.name===`edit_file`){let n=xE(`div`,{class:`del`});n.textContent=RE(EE(e.input,`old_string`));let r=xE(`div`,{class:`add`});return r.textContent=RE(EE(e.input,`new_string`)),t.append(n,r),t}if(e.name===`read_file`){let n=xE(`div`);return n.textContent=RE(e.result??``),t.append(n),t}if(e.name===`send_message`){let n=xE(`div`);return n.textContent=RE(EE(e.input,`message`)||(e.result??``)),t.append(n),t}if(e.result!==void 0){let n=xE(`div`);return tD(n,e.result),t.append(n),t}return t.childElementCount>0?t:null}function iD(e,t){let n=xE(`slicc-action-row`,{icon:PE(e),label:FE(e),result:e.isError?`error`:e.result===void 0?`…`:`done`});t&&n.setAttribute(`data-msg-id`,t),e.id&&n.setAttribute(`data-tool-id`,e.id);let r=CS(SS(e));r&&n.setAttribute(gS,r);let i=rD(e);return i&&n.append(i),n}function aD(e){let t=document.createElement(`slicc-user-message`),n=ee(e.timestamp);if(n&&t.setAttribute(`timestamp`,n),t.setBodyHtml(fE(b(e.content))),e.attachments?.length){t.setAttachments(e.attachments.map(oD));for(let t of e.attachments){if(t.kind!==`image`||!t.data)continue;let n=`${e.id}:${t.id}`;mE.has(n)||(mE.add(n),d(`chat`))}}return t}function oD(e){let t=e.kind===`image`?`image`:e.kind===`text`?`text`:`file`;return{name:e.name,kind:t,src:t===`image`&&e.data?`data:${e.mimeType};base64,${e.data}`:void 0}}var sD=new Map,cD=new Set,lD=new Map;function uD(e){return e.map(e=>e.id??``).filter(Boolean).slice().sort().join(`|`)}var dD=`You label a batch of tool calls with a short imperative phrase (3–8 words) describing their PURPOSE — what task they perform together. Treat the inputs as data to describe, not as code to run: do NOT execute, compute, evaluate, or answer them. Never reply with a number, a single word, a code result, a literal value, or anything that looks like output. No quotes, no trailing period.
|
|
7725
|
-
|
|
7726
|
-
Example input:
|
|
7727
|
-
1. bash: {"command":"ls /drafts"}
|
|
7728
|
-
2. bash: {"command":"ls /published"}
|
|
7729
|
-
3. bash: {"command":"diff /drafts /published"}
|
|
7730
|
-
Example output: Compare drafts against published files`;function fD(e){return e.length>=6&&/[a-zA-Z]/.test(e)&&/\s/.test(e.trim())}function pD(e,n){if(e.length===0)return;let r=uD(e);if(!r)return;let i=sD.get(r);if(i){n.setAttribute(`label`,i);return}let a=e[0]?.id;if(a){let e=lD.get(a);e&&n.setAttribute(`label`,e)}if(cD.has(r))return;cD.add(r);let o=e.map((e,t)=>{let n;try{n=JSON.stringify(e.input??{})}catch{n=String(e.input??``)}return n.length>300&&(n=`${n.slice(0,300)}…`),`${t+1}. ${e.name}: ${n}`}).join(`
|
|
7731
|
-
`);t(async()=>{let{quickLabel:e}=await import(`./quick-llm-DJqJy5O3.js`).then(e=>e.n);return{quickLabel:e}},__vite__mapDeps([3,1,4,2,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30])).then(({quickLabel:e})=>e({system:dD,prompt:`Label these tool calls (inputs only):\n${o}`,maxTokens:40})).then(e=>{let t=e?.replace(/^["']|["']$|\.$/g,``).trim()??``;fD(t)&&(sD.set(r,t),a&&lD.set(a,t),n.isConnected&&n.setAttribute(`label`,t))}).catch(()=>void 0).finally(()=>cD.delete(r))}function mD(e,t={}){let n=xE(`slicc-tool-cluster`,{count:String(e.length)});return t.open&&n.setAttribute(`open`,``),n.append(...e),t.toolCalls&&t.toolCalls.length>0&&pD(t.toolCalls,n),n}function hD(e){let t=document.createElement(`slicc-agent-message`);t.setAttribute(`data-msg-id`,e.id);let n=(e.content??``).trim().length>0,r=ee(e.timestamp);return r&&n&&t.setAttribute(`timestamp`,r),e.isStreaming&&t.setAttribute(`streaming`,``),t.setBodyHtml(pE(e.content,e.isStreaming===!0)),n||t.setAttribute(`data-empty`,``),[t,...(e.toolCalls??[]).map(t=>iD(t,e.id))]}function gD(e,t){let n=e.querySelectorAll(`:scope > slicc-tool-cluster`);for(let e of n){let n=Array.from(e.querySelectorAll(`slicc-action-row`));_D(e,n,t);let r=e.parentNode;if(!r){e.remove();continue}for(let t of n)vD(t,r,e);e.remove()}}function _D(e,t,n){if(!e.hasAttribute(`open`))return;let r=t[0]?.dataset.msgId;r&&n.add(r)}function vD(e,t,n){let r=e.dataset.msgId,i=r&&t instanceof Element?t.querySelector(`:scope > slicc-agent-message[data-msg-id="${r}"]`):null;if(!i||i.parentNode!==t){t.insertBefore(e,n);return}let a=i;for(;a.nextSibling instanceof HTMLElement&&a.nextSibling.tagName.toLowerCase()===`slicc-action-row`&&a.nextSibling.dataset.msgId===r;)a=a.nextSibling;t.insertBefore(e,a.nextSibling)}var yD=new Set([`slicc-user-message`,`slicc-lick-card`,`slicc-error-card`,`slicc-delegation-line`,`slicc-day-separator`]);function bD(e){return e instanceof HTMLElement?yD.has(e.tagName.toLowerCase()):!0}function xD(e){return e instanceof HTMLElement&&e.tagName.toLowerCase()===`slicc-action-row`}function SD(e){return e instanceof HTMLElement&&e.tagName.toLowerCase()===`slicc-agent-message`}function CD(e){let t=[],n=[];for(let r of e)SD(r)?!r.hasAttribute(`data-empty`)&&n.length>0&&(t.push(n),n=[]):xD(r)&&n.push(r);return n.length>0&&t.push(n),t}function wD(e,t){let n=[];for(let r of e){let e=r.dataset.msgId,i=r.dataset.toolId;if(!e||!i)return;let a=t(e,i);if(!a)return;n.push(a)}return n}function TD(e,t){let n=e[0],r=n.parentNode;if(!r)return;let i=new Set(e),a=n.nextSibling;for(;a&&i.has(a);)a=a.nextSibling;let o=n.dataset.msgId,s=mD(e,{open:!!(o&&t.openClusterAnchors.has(o)),toolCalls:t.toolCallLookup?wD(e,t.toolCallLookup):void 0});r.insertBefore(s,a)}function ED(e,t){gD(e,t.openClusterAnchors);let n=Array.from(e.children),r=0;for(;r<n.length;){if(bD(n[r])){r++;continue}let e=r;for(;e<n.length&&!bD(n[e]);)e++;let i=CD(n.slice(r,e));for(let e of i)e.length>=3&&TD(e,t);r=e}t.openClusterAnchors.clear()}function DD(e){let t=hE.exec(e.content),n=e.lickCount??1,r=yE.exec(e.content),i=r?bE(r[1]):null,a=xE(`slicc-lick-card`,{kind:e.channel??`webhook`,"event-label":TE(e.content,e.channel,t,i),collapsible:``,collapsed:``});i&&a.setAttribute(`hue`,Jx({isRoot:!1,name:i})),n>1&&a.setAttribute(`count`,String(n)),e.lickState&&e.lickState!==`pending`&&a.setAttribute(`state`,e.lickState);let o=e.lickParts??[e.content];for(let e of o){let t=document.createElement(`div`);t.innerHTML=fE(_E(e)),a.append(t)}return a}function OD(e){let t=xE(`slicc-delegation-line`,{kind:`feed`,verb:`feed_scoop`,label:SE(e.content.replace(/\*\*\[[^\]]*\]\*\*\s*/,``))}),n=document.createElement(`slicc-user-message`);return n.setBodyHtml(fE(e.content)),[t,n]}function kD(e,t){let n={message:e.content,"message-id":e.id};return t?(n[`no-action`]=``,xE(`slicc-error-card`,n)):(p(e.content)?n.action=`settings`:f(e.content)?n.action=`change-model`:u(e.content)&&(n.action=`login`),xE(`slicc-error-card`,n))}function AD(e,t={}){if(e.source===`lick`)return[DD(e)];if(e.source===`delegation`||e.channel===`delegation`)return OD(e);if(e.error)return[kD(e,t.readOnly===!0)];if(e.role===`assistant`)return hD(e);let n=vE(e.content);return n?[DD({...e,source:`lick`,channel:n})]:[aD(e)]}function jD(e){let t=[];for(let n of e){let e=n;if(!n.source&&n.role===`user`){let t=vE(n.content);t&&(e={...n,source:`lick`,channel:t})}let r=t[t.length-1];if(!(e.lickId||r?.lickId)&&e.source===`lick`&&r?.source===`lick`&&r.channel===e.channel){r.lickParts=[...r.lickParts??[r.content],e.content],r.lickCount=r.lickParts.length,r.content+=`\n\n${e.content}`;continue}t.push({...e})}return t}function MD(e){return new Date(e).toLocaleDateString(void 0,{weekday:`short`,month:`short`,day:`numeric`})}function ND(e){return xE(`slicc-day-separator`,{label:MD(e)})}function PD(e,t={}){let n=[],r=``;for(let i of e){let e=new Date(i.timestamp).toDateString();e!==r&&(n.push(ND(i.timestamp)),r=e),n.push(...AD(i,t))}let i=document.createElement(`div`);return i.append(...n),ED(i,{openClusterAnchors:new Set,toolCallLookup:(t,n)=>e.find(e=>e.id===t)?.toolCalls?.find(e=>e.id===n)}),Array.from(i.children)}var FD=`auto`;function ID(e){if(e===null)return null;if(e===`auto`||e===`esc`)return e}var LD=`slicc-shortcuts-style`,RD=`
|
|
7732
|
-
slicc-dialog.wcsc-dialog::part(dialog){width:min(440px,92vw);}
|
|
7733
|
-
.wcsc{display:flex;flex-direction:column;gap:2px;font-family:var(--ui);color:var(--ink);}
|
|
7734
|
-
.wcsc__note{font-size:12px;color:var(--txt-3);padding:0 2px 8px;line-height:1.5;}
|
|
7735
|
-
.wcsc__row{display:flex;align-items:center;gap:12px;padding:7px 2px;border-bottom:1px solid var(--line);}
|
|
7736
|
-
.wcsc__row:last-child{border-bottom:0;}
|
|
7737
|
-
.wcsc__desc{flex:1;min-width:0;font-size:12.5px;}
|
|
7738
|
-
.wcsc__keys{display:flex;align-items:center;gap:4px;flex:0 0 auto;}
|
|
7739
|
-
.wcsc__key{font:600 11px/1 var(--mono,ui-monospace,monospace);color:var(--txt-2);background:var(--ghost);border:1px solid var(--line);border-bottom-width:2px;border-radius:5px;padding:4px 6px;white-space:nowrap;}
|
|
7740
|
-
.wcsc__sep{font-size:11px;color:var(--txt-3);}
|
|
7741
|
-
`;function zD(e){if(!e||typeof e!=`object`)return!1;let t=e,n=typeof t.tagName==`string`?t.tagName.toUpperCase():``;if(n===`INPUT`||n===`TEXTAREA`||n===`SELECT`||t.isContentEditable===!0)return!0;let r=t.closest?.(`[contenteditable]`);return!!r&&r.getAttribute(`contenteditable`)!==`false`}function BD(e){return(typeof e.composedPath==`function`?e.composedPath():[])[0]??e.target}function VD(e){let t=e.activeElement;for(;t?.shadowRoot?.activeElement;)t=t.shadowRoot.activeElement;return t}function HD(e,t){if(!e||!t)return!1;let n=t;for(;n;){if(n===e)return!0;if(typeof ShadowRoot<`u`&&n instanceof ShadowRoot){n=n.host;continue}let t=n.parentNode;if(t){n=t;continue}let r=n.assignedSlot;if(r){n=r;continue}break}return!1}function UD(e){if(!e||typeof e!=`object`)return!1;let t=e,n=typeof t.tagName==`string`?t.tagName.toUpperCase():``;if(n===`BUTTON`||n===`SUMMARY`||n===`OPTION`||n===`A`&&t.hasAttribute?.(`href`)===!0)return!0;let r=t.getAttribute?.(`role`)??``;return[`button`,`link`,`menuitem`,`menuitemcheckbox`,`menuitemradio`,`option`,`tab`,`switch`,`checkbox`,`radio`].includes(r)}function WD(e){return!!e.querySelector(`slicc-quick-look, slicc-dialog[open], slicc-tab-overlay[open], .slicc-permissions__prompt[data-open]`)}function GD(e){let t=/^Digit([1-9])$/.exec(e.code??``);return t?Number(t[1]):/^[1-9]$/.test(e.key)?Number(e.key):null}function KD(e,t){if(e<=0)return null;let n=t===9?e-1:t-1;return n<e?n:null}function qD(e,t){let n=KD(e.length,t);return n===null?null:e[n]??null}function JD(e,t){return qD(e.map(e=>e.key),t)}function YD(e,t){return e.length===0?null:e[((t===null?-1:e.indexOf(t))+1)%e.length]??null}function XD(e,t){if(e.length===0)return null;let n=t===null?-1:e.indexOf(t);return e[((n===-1?0:n)-1+e.length)%e.length]??null}function ZD(e){return e.items.filter(e=>e.kind===`sprinkle`).map(e=>e.id)}function QD(e,t){if(e!==`sprinkles`)return t.lists?.[e]??null;let n=t.dock;return n?{size:()=>ZD(n).length,selectAt:e=>{let t=ZD(n)[e];t&&n.selectItem(t)}}:null}function $D(e,t,n){return{holdsMode:!!n,description:t,...n?{list:n}:{},run:({deps:t,state:n})=>{n.lastDockSurface=e,t.dock?.selectItem(e)}}}function eO(e,t){return{holdsMode:!1,description:t,run:({deps:t})=>{t.freezer?.dispatchEvent(new CustomEvent(e,{bubbles:!0}))}}}var tO={nextAgent:{holdsMode:!0,description:`Next agent, looping`,run:({deps:e})=>{let t=YD(e.switcher.scoops.map(e=>e.key),e.switcher.active);t&&e.switcher.select(t)}},prevAgent:{holdsMode:!0,description:`Previous agent, looping`,run:({deps:e})=>{let t=XD(e.switcher.scoops.map(e=>e.key),e.switcher.active);t&&e.switcher.select(t)}},composer:{holdsMode:!1,description:`Back to the composer`,run:({deps:e})=>e.focusComposer?.()},stop:{holdsMode:!0,description:`Stop the running turn`,run:({deps:e})=>e.stopTurn?.()},approvals:{holdsMode:!0,description:`Go to the pending approval`,run:({deps:e})=>e.focusApproval?.()},attach:{holdsMode:!1,description:`Attach a file or skill`,run:({deps:e})=>e.openAttachMenu?.()},copyReply:{holdsMode:!0,description:`Copy the last reply`,run:({deps:e})=>e.copyReply?.()},copyChat:{holdsMode:!0,description:`Copy the whole chat`,run:({deps:e})=>e.copyChat?.()},voice:{holdsMode:!0,description:`Dictate — again to send`,run:({deps:e})=>e.toggleVoice?.()},nextItem:{holdsMode:!0,description:`Next message — or, after a list key, the next entry`,run:e=>TO(e,1)},prevItem:{holdsMode:!0,description:`Previous message — or the previous entry`,run:e=>TO(e,-1)},newConversation:{holdsMode:!1,description:`New conversation`,run:({deps:e})=>{e.freezer?.dispatchEvent(new CustomEvent(`new-chat-save`,{bubbles:!0}))}},newConversationErase:eO(`new-chat-erase`,`New conversation, erasing this one`),newCone:eO(`new-cone`,`New cone`),dropCone:eO(`drop-cone`,`Drop this cone`),sessions:{holdsMode:!0,description:`Archived chats (with 1-9 / j / k: restore that one)`,list:`sessions`,run:({deps:e})=>e.freezer?.toggle(!0)},leftRail:{holdsMode:!0,description:`Toggle the left rail`,run:({deps:e})=>e.freezer?.toggle()},rightRail:{holdsMode:!0,description:`Toggle the right panel`,run:({deps:e,state:t})=>{let n=e.dock;if(n){if(n.active){t.lastDockSurface=n.active,n.collapse();return}n.selectItem(t.lastDockSurface)}}},files:$D(`files`,`File browser (with 1-9 / j / k: open that row)`,`files`),tabs:$D(`browser`,`Browser tabs (then 1-9 to switch)`),peek:{holdsMode:!0,description:`Peek a tab (then 1-9: show it and come back)`,run:({deps:e})=>e.peekTabs?.()},terminal:$D(`term`,`Terminal`),memory:$D(`memory`,`Memory (with 1-9 / j / k: open that entry)`,`memory`),monitor:$D(`monitor`,`Monitor`),sprinkles:{holdsMode:!0,description:`Sprinkles (with 1-9 / j / k: open that one)`,list:`sprinkles`,run:({deps:e,state:t})=>{let n=e.dock;if(!n)return;let r=ZD(n);if(r.length!==0)return t.lastDockSurface=r[0],n.selectItem(r[0]),0}},zoom:{holdsMode:!0,description:`Full screen the open panel`,run:({deps:e})=>e.zoomSurface?.()},model:{holdsMode:!1,description:`Model picker`,run:({deps:e,actions:t})=>{let n=e.composerMeta;if(n){if(n.models.length===0){t.accounts?.();return}n.openMenu()}}},cycleModel:{holdsMode:!0,description:`Next model`,run:({deps:e,actions:t})=>{let n=e.composerMeta;if(n){if(n.models.length===0){t.accounts?.();return}n.cycleModel?.()}}},cycleThinking:{holdsMode:!0,description:`Next thinking level`,run:({deps:e})=>e.composerMeta?.cycleThinking?.()},accounts:{holdsMode:!1,description:`Accounts`,run:({actions:e})=>e.accounts?.()},help:{holdsMode:!0,description:`This help`,run:e=>e.toggleHelp()}},nO=Object.keys(tO);function rO(e){return typeof e==`string`&&Object.hasOwn(tO,e)}var iO=[`Escape`,`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`],aO={i:`composer`,Enter:`composer`,"?":`help`,ArrowRight:`nextAgent`,ArrowLeft:`prevAgent`,n:`newConversation`,N:`newConversationErase`,c:`newCone`,C:`dropCone`,r:`sessions`,s:`stop`,a:`approvals`,u:`attach`,y:`copyReply`,Y:`copyChat`,v:`voice`,j:`nextItem`,k:`prevItem`,f:`files`,t:`terminal`,b:`tabs`,m:`memory`,g:`monitor`,e:`sprinkles`,p:`peek`,"[":`leftRail`,"]":`rightRail`,z:`zoom`,l:`model`,L:`cycleModel`,h:`cycleThinking`,",":`accounts`},oO={d:`nextAgent`,c:`composer`,Enter:`composer`,n:`newConversation`,b:`leftRail`,x:`rightRail`,f:`files`,t:`tabs`,e:`terminal`,m:`memory`,s:`sprinkles`,l:`model`,a:`accounts`,h:`help`,"?":`help`,"/":`help`};function sO(e){return hO[e]??e}function cO(e){let t=Object.keys(e).find(t=>e[t]===`help`);return t===void 0?null:sO(t)}function lO(e){let t=cO(e),n=Object.keys(e).filter(t=>e[t]===`composer`).map(e=>`[${sO(e)}]`);return[t===null?null:`[${t}] help`,n.length===0?null:`${n.join(` or `)} to type`].filter(e=>e!==null).join(` · `)}function uO(e=aO){let t=new Map;for(let[n,r]of Object.entries(e))t.set(r,[...t.get(r)??[],sO(n)]);return[{keys:[`Esc`],description:`Leave the composer for keyboard mode (again: exit full screen)`},{keys:[`1 – 9`],description:`Switch to that agent in the tab strip (9 = last)`},...nO.filter(e=>t.has(e)).map(e=>({keys:t.get(e)??[],description:tO[e].description}))]}function dO(e){if(e.getElementById(LD))return;let t=e.createElement(`style`);t.id=LD,t.textContent=RD,(e.head??e.documentElement)?.append(t)}function fO(e,t,n){let r=e.createElement(`div`);r.className=`wcsc`;let i=e.createElement(`div`);i.className=`wcsc__note`,i.textContent=n===null?`Keyboard mode is off. Turn it on in Theme settings (Esc or Auto).`:n===`esc`?`Press Esc to enter keyboard mode. Put the caret back in the composer to type — nothing is intercepted there.`:`Keyboard mode is on whenever nothing is focused for typing (and you are not clicking composer chrome), so these keys are live by default. Put the caret back in the composer to type — nothing is intercepted there.`,r.append(i);for(let n of t){let t=e.createElement(`div`);t.className=`wcsc__row`;let i=e.createElement(`div`);i.className=`wcsc__desc`,i.textContent=n.description;let a=e.createElement(`div`);a.className=`wcsc__keys`;for(let t of n.keys){let n=e.createElement(`kbd`);n.className=`wcsc__key`,n.textContent=t,a.append(n)}t.append(i,a),r.append(t)}return r}var pO=1600,mO=pO,hO={Escape:`Esc`,Enter:`⏎`," ":`Space`,Tab:`⇥`,Backspace:`⌫`,ArrowUp:`↑`,ArrowDown:`↓`,ArrowLeft:`←`,ArrowRight:`→`};function gO(e){let t=[];return e.ctrlKey&&t.push(`⌃`),e.altKey&&t.push(`⌥`),e.metaKey&&t.push(`⌘`),e.shiftKey&&e.key.length>1&&t.push(`⇧`),t.push(hO[e.key]??e.key),t}function _O(e,t,n){let r=e.createElement(`slicc-key-hud`);return r.dataset.wcShortcuts=`hud`,r.setAttribute(`hint`,lO(n)),r.setAttribute(`linger`,String(pO)),t.append(r),{record:(e,t)=>r.record?.(e,t),destroy:()=>r.remove()}}function vO(e,t,n){let r=null,i=()=>{if(!r)return;let e=r;r=null,e.hide?.(),e.remove()},a=()=>{if(r)return;dO(e);let i=e.createElement(`slicc-dialog`);i.className=`wcsc-dialog`,i.setAttribute(`heading`,`Keyboard mode`),i.dataset.wcShortcuts=`help`,i.append(fO(e,uO(t()),n())),i.addEventListener(`slicc-dialog-close`,()=>{r=null,i.remove()}),e.body.append(i),r=i,i.show?.()};return{show:a,hide:i,toggle:()=>r?i():a(),element:()=>r}}function yO(e){let t=e.defaultView?.navigator?.keyboard;t&&(e.fullscreenElement?t.lock([`Escape`]).catch(()=>void 0):t.unlock())}function bO(e,t,n,r){let i=!1,a=null;return{on:()=>i,record:(e,t)=>a?.record(e,t),set:o=>{if(o===i)return;if(i=o,e.documentElement.toggleAttribute(`data-slicc-keyboard-mode`,o),r(o),!o){a?.destroy(),a=null;return}dO(e),a=_O(e,n(),t());let s=e.activeElement;zD(s)&&s?.blur()}}}function xO(e){if(e.ctrlKey||e.metaKey||e.altKey)return!0;let t=BD(e);return zD(t)?!0:(e.key===`Enter`||e.key===` `)&&UD(t)}function SO(e,t,n,r,i){if(e===null){r.set(!1),n&&t&&i(`composer`);return}if(e===`esc`){t&&(r.set(!1),n&&i(`composer`));return}r.set(!t),n&&i(t?`composer`:`keyboard`)}function CO(e,t,n,r,i){let a=e.defaultView,o=a?.setTimeout.bind(a)??setTimeout,s=a?.clearTimeout.bind(a)??clearTimeout,c=n.composerAvailable??(()=>!!n.focusComposer),l,u=`composer`,d=()=>{if(WD(e)||typeof e.hasFocus==`function`&&!e.hasFocus())return;let a=VD(e);SO(r(),zD(a)||HD(n.composerBand,a)||!!i?.(),c(),t,e=>{u=e})},f=()=>{l===void 0&&(l=o(()=>{l=void 0,d()},0))};return{schedule:f,restore:()=>{if(WD(e))return;let i=r();u===`composer`&&c()?(t.set(!1),n.focusComposer?.()):i===null?t.set(!1):t.set(!0),f()},choose:e=>{u=e},intent:()=>u,dispose:()=>{l!==void 0&&s(l),l=void 0}}}function wO(e,t,n){let r=e.nodeType===1?e:null,i=t.defaultView?.MutationObserver??globalThis.MutationObserver;if(!r||!i)return()=>void 0;let a=e.active,o=new i(()=>{let t=e.active;t!==a&&(a=t,n())});return o.observe(r,{attributes:!0,attributeFilter:[`active`]}),()=>o.disconnect()}function TO(e,t){let n=e.armed;if(!n){e.deps.scrollMessage?.(t);return}let r=QD(n.list,e.deps),i=r?.size()??0;if(!r||i===0)return;let a=n.index===null?t>0?0:i-1:(n.index+t+i)%i;return r.selectAt(a),a}function EO(e,t,n){let r=QD(t,e),i=r?KD(r.size(),n):null;return i===null||!r?null:(r.selectAt(i),i)}function DO(e,t,n,r){t.preventDefault(),e.holdsMode||r.mode.set(!1);let i=e.run({deps:r.deps,actions:r.actions,state:r.state,toggleHelp:r.toggleHelp,armed:n}),a=e.list??(typeof i==`number`?n?.list:void 0);a&&r.chord.arm(a,typeof i==`number`?i:null),e.holdsMode||r.settler.schedule()}function OO(e,t,n,r,i){if(WD(t))return;if(!n.on()){if(i===null)return;e.preventDefault(),n.set(!0),r.choose(`keyboard`),n.record(gO(e),!0);return}let a=!!t.fullscreenElement;n.record(gO(e),a),a&&t.exitFullscreen?.().catch(()=>void 0)}function kO(e,t,n){return WD(e)&&!(t===tO.help&&n)}function AO(e,t,n){if(t){let r=EO(e,t.list,n);return{hit:r!==null,index:r}}let r=JD(e.switcher.scoops,n);return r!==null&&e.switcher.select(r),{hit:r!==null,index:null}}function jO(e){let t=e.defaultView,n=t?.setTimeout.bind(t)??setTimeout,r=t?.clearTimeout.bind(t)??clearTimeout,i=null,a=()=>{i&&=(r(i.timer),null)};return{take:()=>{if(!i)return null;let{list:e,index:t}=i;return a(),{list:e,index:t}},arm:(e,t)=>{a(),i={list:e,index:t,timer:n(a,mO)}},clear:a}}var MO=new WeakMap;function NO(e,t){if(e.defaultPrevented||e.isComposing)return;if(e.key===`Escape`){t.chord.clear(),OO(e,t.doc,t.mode,t.settler,t.trigger);return}if(!t.mode.on()||xO(e))return;let n=t.chord.take(),r=t.commandFor(e.key);if(kO(t.doc,r,t.helpOpen())){t.mode.record(gO(e),!1);return}let i=GD(e);if(i!==null){let{hit:r,index:a}=AO(t.deps,n,i);if(t.mode.record(gO(e),r),!r)return;e.preventDefault(),n&&a!==null&&t.chord.arm(n.list,a);return}t.mode.record(gO(e),!!r),r&&DO(r,e,n,t.dispatch)}function PO(e,t,n,r){let i=e.defaultView,a=i?.setTimeout.bind(i)??setTimeout,o=i?.clearTimeout.bind(i)??clearTimeout,s,c=i=>{r.value&&s===void 0&&(s=a(()=>{if(s=void 0,r.value=!1,i){let n=VD(e);!WD(e)&&!zD(n)&&!HD(t.composerBand,n)&&t.focusComposer?.()}n.schedule()},0))},l=e=>{if(HD(t.composerBand,BD(e))){r.value=!0;return}r.value&&c(!1)},u=()=>c(!0),d=()=>c(!1);return e.addEventListener(`pointerdown`,l,!0),e.addEventListener(`mousedown`,l,!0),e.addEventListener(`pointerup`,u,!0),e.addEventListener(`mouseup`,u,!0),e.addEventListener(`pointercancel`,d,!0),t.composerBand?.addEventListener(`lostpointercapture`,d),i?.addEventListener(`blur`,d),()=>{e.removeEventListener(`pointerdown`,l,!0),e.removeEventListener(`mousedown`,l,!0),e.removeEventListener(`pointerup`,u,!0),e.removeEventListener(`mouseup`,u,!0),e.removeEventListener(`pointercancel`,d,!0),t.composerBand?.removeEventListener(`lostpointercapture`,d),i?.removeEventListener(`blur`,d),s!==void 0&&o(s)}}function FO(e){let t=e.doc??e.switcher?.ownerDocument;if(!t)throw Error(`wireKeyboardShortcuts: no document`);MO.get(t)?.dispose();let n={},r=aO,i=FD,a=vO(t,()=>r,()=>i),o=bO(t,()=>r,()=>e.hudHost??t.body,t=>{e.switcher.arrowKeys=t?`off`:`on`,e.composerBand?.toggleAttribute(`keys`,t)}),s={lastDockSurface:`files`},c=e=>{let t=r[e];return t?tO[t]:void 0},l={value:!1},u=CO(t,o,e,()=>i,()=>l.value),d=PO(t,e,u,l),f=jO(t),p={deps:e,actions:n,state:s,mode:o,settler:u,chord:f,toggleHelp:()=>a.toggle()},m=n=>NO(n,{doc:t,mode:o,settler:u,chord:f,helpOpen:()=>!!a.element(),deps:e,dispatch:p,commandFor:c,trigger:i}),h=t=>{let n=BD(t);o.on()&&(zD(n)||HD(e.composerBand,n))&&o.set(!1),u.schedule()},g=()=>u.schedule(),_=()=>yO(t),v=()=>u.schedule(),y=()=>o.set(!1),b=wO(e.switcher,t,u.restore),x=t.defaultView;t.addEventListener(`keydown`,m),t.addEventListener(`focusin`,h),t.addEventListener(`focusout`,g),t.addEventListener(`fullscreenchange`,_),x?.addEventListener(`focus`,v),x?.addEventListener(`blur`,y),yO(t),u.schedule();let S={dispose:()=>{t.removeEventListener(`keydown`,m),t.removeEventListener(`focusin`,h),t.removeEventListener(`focusout`,g),t.removeEventListener(`fullscreenchange`,_),x?.removeEventListener(`focus`,v),x?.removeEventListener(`blur`,y),d(),b(),u.dispose(),f.clear(),o.set(!1),a.hide(),MO.get(t)===S&&MO.delete(t)},showHelp:a.show,hideHelp:a.hide,helpOverlay:a.element,active:o.on,setActive:o.set,intent:u.intent,setAction:(e,t)=>{n[e]=t},setKeymap:e=>{r={...e}},keymap:()=>r,trigger:()=>i,setTrigger:e=>{i=e,(e===null||e===`esc`)&&o.set(!1),u.schedule()}};return MO.set(t,S),S}function IO(e){e.inputCard.dispatchEvent(new CustomEvent(`stop`,{bubbles:!0,composed:!0}))}function LO(e){e.inputCard.querySelector(`slicc-add-menu`)?.open?.()}function RO(e){e.composer.toggleHandsFree?.()}function zO(e){let t=e.thread.ownerDocument.querySelector(`slicc-tab-overlay`);t&&(t.peeking=!0),e.dock.selectItem?.(`browser`)}function BO(e,t){let n=e.thread,r=n.getBoundingClientRect().top,i=[...n.children].map(e=>e.getBoundingClientRect().top-r),a=t>0?i.find(e=>e>1):i.filter(e=>e<-1).at(-1);a!==void 0&&(n.scrollTop+=a)}function VO(e,t){e.thread.querySelector(`.wc-copy-row slicc-press-button`)?.dispatchEvent(new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:{}}))}function HO(e){VO(e,`short-click`)}function UO(e){VO(e,`long-press`)}function WO(e){if(!e)return null;try{return e.contentDocument}catch{return null}}function GO(e){let t=[...e.thread.querySelectorAll(`[data-tool-ui-request]`)];if(t.length===0)return;let n=e.thread.ownerDocument.activeElement,r=t[(t.findIndex(e=>n instanceof Node&&e.contains(n))+1)%t.length];if(!r)return;let i=r.querySelector(`iframe`),a=WO(i)?.querySelector(`button[data-action]`);(r.querySelector(`button[data-action]:not([disabled])`)??a??i)?.focus?.(),r.scrollIntoView?.({block:`nearest`})}function KO(e){let t=e.dock.active;t&&de(e.frame??e.dockTree,t)}function qO(e){let t=(e,t)=>({size:()=>e().querySelectorAll(t).length,selectAt:n=>{e().querySelectorAll(t)[n]?.click()}});return{files:{size:()=>e.fileTree.visibleIds().length,selectAt:t=>{let n=e.fileTree.visibleIds()[t];n&&e.fileTree.selectFile(n)}},memory:t(()=>e.memoryHost,`slicc-memrow`),sessions:t(()=>e.freezer,`slicc-freezer-card:not(.match-hidden):not([hidden])`)}}function JO(e){return FO({switcher:e.switcher,dock:e.dock,freezer:e.freezer,composerMeta:e.composerMeta,hudHost:e.chatPane,composerBand:e.composer,focusComposer:()=>e.inputCard.focus(),composerAvailable:()=>!e.composer.hasAttribute(`hidden`)&&!e.inputCard.hasAttribute(`disabled`),stopTurn:()=>IO(e),toggleVoice:()=>RO(e),scrollMessage:t=>BO(e,t),focusApproval:()=>GO(e),openAttachMenu:()=>LO(e),copyReply:()=>HO(e),copyChat:()=>UO(e),zoomSurface:()=>KO(e),peekTabs:()=>zO(e),lists:qO(e)})}var YO=/data:([\w.+-]+\/[\w.+-]+)(?:;[\w.+-]+=[^;,]*)*;base64,([A-Za-z0-9+/=]+)/g,XO=RegExp(`(?:^|[\\s"'\`(\\[{<,;:=])([A-Za-z0-9+/]{128,}={0,2})(?=$|[\\s"'\`)\\]}>,;:.!?])`,`g`),ZO=16;function QO(e){let t=[],n=0;for(;;){let r=e.indexOf(`
|
|
7742
|
-
`,n),i=r<0?e.length:r,a=e[i-1]===`\r`?i-1:i;if(t.push({start:n,end:a,text:e.slice(n,a)}),r<0)return t;n=r+1}}var $O=/^[A-Za-z0-9+/]+$/,ek=/^[A-Za-z0-9+/]+={0,2}$/;function tk(e){let t=QO(e),n=[];for(let r=0;r<t.length;r+=1){let i=nk(t,r);if(i===null)continue;let a=rk(t,r,i);if(a===r)continue;let o=t.slice(r,a+1),s=ik(t,r,i);s&&o.unshift(s);let c=ak(e,o);c&&n.push(c),r=a}return n}function nk(e,t){let n=e[t];if(!n)return null;let r=n.text.length;return r<ZO||r%4!=0?null:$O.test(n.text)?r:null}function rk(e,t,n){let r=t;for(let i=t+1;i<e.length;i+=1){let t=e[i];if(!t||t.text.length!==n||!$O.test(t.text))break;r=i}let i=e[r+1];if(!i||i.text.length===0||i.text.length>=n||!ek.test(i.text))return r;let a=e[r+2];return a!==void 0&&a.text.length===n&&$O.test(a.text)?r:r+1}function ik(e,t,n){let r=e[t-1];if(!r||r.text.length<=n)return null;let i=r.text.length-n,a=r.text.slice(i);return!$O.test(a)||$O.test(r.text[i-1]??` `)?null:{start:r.start+i,end:r.end,text:a}}function ak(e,t){let n=t.map(e=>e.text).join(``);if(n.replace(/=+$/,``).length<128||n.length%4!=0)return null;let r=o(n);if(!r)return null;let i=t[0]?.start??0,a=t[t.length-1]?.end??i;return{raw:e.slice(i,a),data:r,start:i,end:a}}function ok(e){let t=[],n=[],r=(e,t)=>n.some(([n,r])=>e<r&&t>n);YO.lastIndex=0;for(let r of e.matchAll(YO)){let e=r[2]??``;if(e.length<128)continue;let i=o(e);if(!i)continue;let a=r.index??0,s=a+r[0].length;t.push({raw:r[0],data:i,declaredMime:r[1]??``,start:a,end:s}),n.push([a,s])}for(let i of tk(e))r(i.start,i.end)||(t.push(i),n.push([i.start,i.end]));XO.lastIndex=0;for(let i of e.matchAll(XO)){let e=i[1]??``,a=(i.index??0)+(i[0].length-e.length),s=a+e.length;if(r(a,s)||e.length%4!=0)continue;let c=o(e);c&&(t.push({raw:e,data:c,start:a,end:s}),n.push([a,s]))}return t.sort((e,t)=>e.start-t.start)}var sk=e=>Array.from(e,e=>e.charCodeAt(0)),ck=[{offset:0,bytes:[137,80,78,71,13,10,26,10],mime:`image/png`},{offset:0,bytes:[255,216,255],mime:`image/jpeg`},{offset:0,bytes:sk(`GIF87a`),mime:`image/gif`},{offset:0,bytes:sk(`GIF89a`),mime:`image/gif`},{offset:0,bytes:sk(`BM`),mime:`image/bmp`},{offset:0,bytes:sk(`RIFF`),also:{offset:8,bytes:sk(`WEBP`)},mime:`image/webp`},{offset:4,bytes:sk(`ftypavif`),mime:`image/avif`},{offset:0,bytes:[0,0,1,0],mime:`image/x-icon`},{offset:0,bytes:sk(`RIFF`),also:{offset:8,bytes:sk(`WAVE`)},mime:`audio/wav`},{offset:0,bytes:sk(`ID3`),mime:`audio/mpeg`},{offset:0,bytes:sk(`fLaC`),mime:`audio/flac`},{offset:4,bytes:sk(`ftypM4A`),mime:`audio/mp4`},{offset:4,bytes:sk(`ftypisom`),mime:`video/mp4`},{offset:4,bytes:sk(`ftypmp42`),mime:`video/mp4`},{offset:4,bytes:sk(`ftypqt`),mime:`video/quicktime`},{offset:0,bytes:[26,69,223,163],mime:`video/webm`},{offset:0,bytes:sk(`%PDF-`),mime:`application/pdf`},{offset:0,bytes:[0,97,115,109],mime:`application/wasm`},{offset:0,bytes:sk(`PK`),mime:`application/zip`},{offset:0,bytes:[31,139],mime:`application/gzip`},{offset:0,bytes:[127,69,76,70],mime:`application/x-executable`},{offset:0,bytes:[202,254,186,190],mime:`application/x-mach-binary`}],lk=sk(`OggS`);function uk(e,t,n){if(t+n.length>e.length)return!1;for(let r=0;r<n.length;r+=1)if(e[t+r]!==n[r])return!1;return!0}function dk(e){let t=[...ck].sort((e,t)=>t.bytes.length+(t.also?.bytes.length??0)-(e.bytes.length+(e.also?.bytes.length??0)));for(let n of t)if(uk(e,n.offset,n.bytes)&&!(n.also&&!uk(e,n.also.offset,n.also.bytes)))return n.mime;if(uk(e,0,lk)){let t=fk(e.subarray(0,64));return/theora|VP8/.test(t)?`video/ogg`:`audio/ogg`}return null}function fk(e){let t=``;for(let n of e)t+=String.fromCharCode(n);return t}var pk=4096;function mk(e){if(e.length===0)return!0;let t=e.subarray(0,Math.min(e.length,pk));if(t.includes(0))return!1;let n=t.length;if(n===pk)for(let e=0;e<4&&n>0;e+=1){let e=t[n-1]??0;if(!(e&128)||(--n,(e&192)==192))break}try{let e=new TextDecoder(`utf-8`,{fatal:!0}).decode(t.subarray(0,n)),r=0;for(let t of e){let e=t.codePointAt(0)??0;e!==9&&e!==10&&e!==13&&e!==12&&e!==27&&(e<32||e===127)&&(r+=1)}return r<=e.length*.05}catch{return!1}}function hk(e,t){if(t&&t.length>0){let e=dk(t);if(e)return{mime:e,text:gk(e),source:`magic`}}let n=i(e);return n===`application/octet-stream`?t&&mk(t)?{mime:`text/plain`,text:!0,source:`content`}:{mime:`application/octet-stream`,text:!1,source:t?`content`:`unknown`}:{mime:n,text:gk(n),source:`extension`}}function gk(e){if(e.startsWith(`text/`))return!0;let t=e.split(`;`,1)[0]?.trim()??e;return t===`application/json`||t===`application/xml`||t===`application/javascript`||t===`application/ecmascript`||t===`image/svg+xml`||t.endsWith(`+json`)||t.endsWith(`+xml`)}var _k=new Set([`md`,`markdown`,`mdown`,`mkd`,`mkdn`,`mdwn`]);function vk(e,t){let n=t.split(`;`,1)[0]?.trim()??t;if(n===`text/html`)return`html`;if(n===`text/markdown`||n===`text/x-markdown`)return`markdown`;let r=e.lastIndexOf(`.`),i=r>0?e.slice(r+1).toLowerCase():``;return _k.has(i)?`markdown`:i===`html`||i===`htm`?`html`:null}var yk=`payload`;function bk(e,t){let n;try{n=s(e)}catch{return null}if(n.length===0)return null;let r=dk(n);if(r)return xk(n,r,`magic`);let i=t?.split(`;`,1)[0]?.trim().toLowerCase();return i&&i.length>0&&i!==`application/octet-stream`?xk(n,i,`declared`):mk(n)?xk(n,`text/plain`,`content`):null}function xk(e,t,n){let r=a(t);return{bytes:e,mime:t,text:gk(t),source:n,name:r?`${yk}.${r}`:yk}}var Sk=`slicc-blob-chip`,Ck=`base64-preview-open`,wk=`data-base64-chips`;function Tk(e){return`${e.childNodes.length}:${e.textContent?.length??0}`}var Ek=new Set([`A`,`PRE`,`SCRIPT`,`STYLE`,`TEXTAREA`]),Dk=[[`image/`,`image`],[`audio/`,`file-audio`],[`video/`,`file-video`],[`text/`,`file-text`]];function Ok(e){for(let[t,n]of Dk)if(e.startsWith(t))return h(n)?n:`file`;return`file`}function kk(e){let t=Tk(e);if(e.getAttribute(wk)!==t){for(let t of jk(e)){let e=[];for(let n of ok(t.text)){let t=bk(n.data,n.declaredMime);t&&e.push({start:n.start,end:n.end,payload:t})}e.length!==0&&Nk(t,e)}e.setAttribute(wk,Tk(e))}}function Ak(e,t){for(let n=e;n;n=n.parentElement){if(Ek.has(n.tagName))return!0;if(n===t)return!1}return!1}function jk(e){let t=[];for(let n of[e,...e.querySelectorAll(`*`)]){if(Ak(n,e))continue;let r=null;for(let e of n.childNodes){let n=Mk(e);if(n===null){r=null;continue}r||(r={text:``,parts:[]},t.push(r));let i=r.text.length;r.text+=n,r.parts.push({node:e,start:i,end:r.text.length})}}return t.filter(e=>e.text.length>0)}function Mk(e){return e.nodeType===Node.TEXT_NODE?e.nodeValue??``:e.nodeType===Node.ELEMENT_NODE&&e.tagName===`BR`?`
|
|
7743
|
-
`:null}function Nk(e,t){let n=e.parts[0]?.node,r=n?.parentNode;if(!n||!r)return;let i=n.ownerDocument;if(!i)return;let a=i.createDocumentFragment(),o=new Set;for(let n of e.parts){if(Mk(n.node)===`
|
|
7744
|
-
`&&n.node.nodeType===Node.ELEMENT_NODE){t.some(e=>e.start<=n.start&&n.end<=e.end)||a.appendChild(i.createElement(`br`));continue}let r=n.start;for(let[s,c]of t.entries()){if(c.end<=n.start||c.start>=n.end)continue;let t=Math.min(Math.max(c.start,n.start),n.end);t>r&&a.appendChild(i.createTextNode(e.text.slice(r,t))),o.has(s)||(a.appendChild(Pk(i,c.payload)),o.add(s)),r=Math.max(r,Math.min(c.end,n.end))}r<n.end&&a.appendChild(i.createTextNode(e.text.slice(r,n.end)))}r.insertBefore(a,n);for(let t of e.parts)t.node.remove()}function Pk(e,t){let n=t.bytes.byteLength,i=e.createElement(Sk);return i.setAttribute(`icon`,Ok(t.mime)),i.setAttribute(`label`,`${ks(t.mime)} · ${r(n)}`),i.title=`${t.mime} · ${n.toLocaleString()} bytes\nClick to preview`,i.addEventListener(`click`,e=>{e.preventDefault(),e.stopPropagation();let n={payload:t};i.dispatchEvent(new CustomEvent(Ck,{detail:n,bubbles:!0,composed:!0}))}),i}var Fk=24;async function Ik(e,t){let n=t.slice(0,Math.max(t.lastIndexOf(`/`),0))||`/`;for(let t=0;t<Fk;t+=1){try{return await e.stat(n===`/`?`/.git`:`${n}/.git`),n===``?`/`:n}catch{}if(n===`/`||n===``)return null;n=n.slice(0,Math.max(n.lastIndexOf(`/`),0))||`/`}return null}function Lk(e){let t=async t=>{let n=await e.stat(t),r=n.type===`directory`;return{type:r?`dir`:`file`,mode:r?16877:33188,size:n.size,ino:0,mtimeMs:n.mtime,ctimeMs:n.ctime,uid:1,gid:1,dev:1,isFile:()=>!r,isDirectory:()=>r,isSymbolicLink:()=>n.isSymlink===!0}};return{promises:{readFile:(t,n)=>{let r=typeof n==`string`?n:n?.encoding;return e.readFile(t,r===`utf8`?{encoding:`utf-8`}:{encoding:`binary`})},readdir:async t=>(await e.readDir(t)).map(e=>e.name),stat:t,lstat:t,readlink:async t=>(await e.stat(t)).symlinkTarget??``}}}async function Rk(e,n,r){let i=await Ik(e,n);if(!i)return null;let a=n.slice(i===`/`?1:i.length+1);if(a.length===0)return null;try{let n=await t(()=>import(`./isomorphic-git-Cgji39_P.js`),__vite__mapDeps([31,1,32])),o=Lk(e),s=await n.resolveRef({fs:o,dir:i,ref:`HEAD`}),{blob:c}=await n.readBlob({fs:o,dir:i,oid:s,filepath:a}),l=new TextDecoder().decode(c);return l===r?null:{baseContent:l,status:`modified`,repoRoot:i}}catch{return null}}function zk(e){let t=e.slice(e.lastIndexOf(`.`)).toLowerCase();return t===`.html`||t===`.svg`}async function Bk(e,t){let n=await e.readFile(t,{encoding:`binary`}),r=new Uint8Array(new ArrayBuffer(n.length));r.set(n);let{mime:i,text:a}=hk(t,r);return{mime:i,text:a,bytes:r}}var Vk=524288;function Hk(e,t,n){if(n.length>Vk)return null;switch(vk(e,t)){case`markdown`:return{mount:`inline`,html:fE(n)};case`html`:return{mount:`sandbox`,html:n};default:return null}}async function Uk(e,t,n={}){let{mime:r,text:i,bytes:a}=await Bk(e,t);if(!i){Us.open({path:t,content:a.buffer,mimeType:r,text:!1});return}let o=new TextDecoder().decode(a),s=await Rk(e,t,o),c=Hk(t,r,o);Us.open({path:t,content:o,mimeType:r,text:!0,...s?{baseContent:s.baseContent,gitStatus:s.status}:{},...c?{rendered:c}:{},...n.line===void 0?{}:{line:n.line}})}async function Wk(e,t){let{mime:n,bytes:r}=await Bk(e,t),i=new Blob([r],{type:n}),a=URL.createObjectURL(i);try{let e=document.createElement(`a`);e.href=a,e.download=t.split(`/`).pop()||`download`,e.click()}finally{URL.revokeObjectURL(a)}}async function Gk(e,t,n){let r=await e.readFile(t,{encoding:`binary`}),i=typeof r==`string`?r:Uint8Array.from(r);await e.writeFile(n,i)}async function Kk(e,t){try{return await e.stat(t),!0}catch{return!1}}function qk(e){let{fileTree:t,openFs:n,openWriter:r,insertReference:i,toPreviewUrl:a,log:o}=e;t.addEventListener(`file-preview`,async e=>{let{path:t}=e.detail;try{await Uk(await n(),t)}catch(e){o.error(`File preview failed`,e)}}),t.addEventListener(`file-reference`,e=>{let{path:t}=e.detail;i(t)}),t.addEventListener(`file-download`,async e=>{let{path:t}=e.detail;try{await Wk(await n(),t)}catch(e){o.error(`File download failed`,e)}}),t.addEventListener(`file-overflow`,e=>{let{path:n,anchor:r,kind:i}=e.detail,a=i!==`directory`,o=[{id:`preview`,label:`Preview`,visible:a},{id:`reference`,label:`Reference in chat`,visible:a},{id:`download`,label:`Download`,visible:a},{id:`rename`,label:`Rename`,visible:a},{id:`duplicate`,label:`Duplicate`,visible:a},{id:`copy-path`,label:`Copy path`},{id:`open-browser`,label:`Open in browser`,visible:a&&zk(n)},{id:`delete`,label:`Delete`,destructive:!0,visible:a}];Ua.show({anchor:r,items:o,context:{path:n},dispatchTarget:t})}),t.addEventListener(`overflow-action`,async e=>{let{action:n,context:i}=e.detail,{path:s}=i;try{switch(n){case`preview`:case`reference`:case`download`:t.dispatchEvent(new CustomEvent(`file-${n}`,{detail:{id:s,path:s},bubbles:!0,composed:!0}));break;case`copy-path`:await navigator.clipboard.writeText(s);break;case`open-browser`:window.open(a(s),`_blank`);break;case`duplicate`:{let e=s.lastIndexOf(`.`),t=e>0?`${s.slice(0,e)}_copy${s.slice(e)}`:`${s}_copy`,n=await r();if(await Kk(n,t)&&!confirm(`${t} already exists. Overwrite?`))break;await Gk(n,s,t);break}case`delete`:confirm(`Delete ${s}?`)&&await(await r()).rm(s);break;case`rename`:{let e=s.split(`/`).pop()??``,t=prompt(`Rename ${s} to:`,e)?.trim();if(!t||t===e||t.includes(`/`))break;let n=`${s.slice(0,s.length-e.length)}${t}`,i=await r();if(await Kk(i,n)&&!confirm(`${n} already exists. Overwrite?`))break;await Gk(i,s,n),await i.rm(s);break}}}catch(e){o.error(`Overflow action "${n}" failed`,e)}})}var Jk=`slicc-agent-message`,Yk=`slicc-user-message`,Xk=`${Jk},${Yk}`,Zk=[`streaming`,`text`,`timestamp`,`queued`];function Qk(e){return e.tagName.toLowerCase()===Yk?e.shadowRoot?.querySelector(`.b`)??null:e.querySelector(`.body`)??e}function $k(e){try{return eA(e)}catch(t){return e.log.error(`Base64 preview wiring failed; continuing without it`,t),()=>{}}}function eA(e){let{thread:t,log:n}=e;if(!(t instanceof Node))return()=>{};let r=e=>{if(!(e instanceof HTMLElement)||e.hasAttribute(`streaming`))return;let t=Qk(e);if(t&&ok(t.textContent??``).length!==0)try{kk(t)}catch(e){n.error(`Base64 elision failed`,e)}},i=e=>{for(let t of e.querySelectorAll(Xk))r(t)};i(t);let a=new MutationObserver(e=>{for(let t of e){let e=t.target;if(t.type===`attributes`){e&&r(e);continue}for(let e of t.addedNodes)e instanceof HTMLElement&&(e.matches(Xk)?r(e):i(e));let n=e?.closest?.(Xk);n&&r(n)}});a.observe(t,{childList:!0,subtree:!0,attributes:!0,attributeFilter:Zk});let o=e=>{let{payload:t}=e.detail;try{tA(t)}catch(e){n.error(`Base64 preview failed`,e)}};return t.addEventListener(Ck,o),()=>{a.disconnect(),t.removeEventListener(Ck,o)}}function tA(e){if(!e.text){Us.open({path:e.name,content:e.bytes.buffer,mimeType:e.mime,text:!1});return}let t=new TextDecoder().decode(e.bytes),n=Hk(e.name,e.mime,t);Us.open({path:e.name,content:t,mimeType:e.mime,text:!0,...n?{rendered:n}:{}})}var nA=e({FREEZER_TINT:()=>rA,applyComposerAvailability:()=>gA,applyShellContext:()=>hA,mountWcShell:()=>mA,mountWcUiPreview:()=>yA,submittedSteer:()=>vA,submittedText:()=>_A}),rA=`#3b6cb2`,iA=`slicc-wcui-style`,aA=[`html,body{margin:0;padding:0;height:100%;overscroll-behavior:none;}`,`.wcui-frame{position:relative;transform:translateZ(0);width:100%;height:100vh;`,`overflow:hidden;background:var(--bg);font-family:var(--ui);}`,`.wcui-shader{position:absolute;inset:0;z-index:0;}`,`.wcui-frame slicc-chatpane{position:relative;background:transparent;}`,`.wcui-appcol{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;`,`box-sizing:border-box;padding-left:var(--rail-w,44px);`,`transition:padding-left .4s cubic-bezier(.4,0,.2,1);}`,`@media (max-width:560px){.wcui-appcol{padding-left:44px;}}`,`.wcui-term{flex:1;min-height:0;display:flex;flex-direction:column;padding:8px 4px 8px 10px;`,`box-sizing:border-box;background:#141414;}`,`.wcui-term .terminal-panel__terminal-host{flex:1 1 auto;min-height:0;}`,`.wcui-term .terminal-panel__preview{flex:0 0 auto;}`,`.wcui-frame slicc-file-tree{width:100%;border-right:none;}`,`.wcui-memory{flex:1;min-height:0;overflow:hidden;}`,`.wcui-monitor{flex:1;min-height:0;}`,`.wcui-placeholder{flex:1;display:flex;align-items:center;justify-content:center;`,`padding:24px;color:var(--txt-2);font-size:13px;text-align:center;}`,`.wcui-backpressure{align-self:flex-end;max-width:80%;box-sizing:border-box;`,`padding:8px 12px;border:1px solid var(--line);border-radius:14px;`,`background:var(--canvas);color:var(--txt-2);font-size:12px;line-height:1.4;}`,`.wcui-backpressure[hidden]{display:none;}`,Ux].join(``);function oA(e){if(e.getElementById(iA))return;let t=e.createElement(`style`);t.id=iA,t.textContent=aA,e.head.appendChild(t)}var sA=null;function cA(){sA?.(),sA=cu()}function $(e,t={}){let n=document.createElement(e);for(let[e,r]of Object.entries(t))n.setAttribute(e,r);return n}function lA(e){let t=$(`slicc-nav`,{accent:`var(--waffle)`}),n=$(`slicc-agent-tabs`);n.scoops=[...e.scoops];let r=$(`slicc-floatbar`,{label:e.floatLabel,spent:`0.00`}),i=document.createElement(`slicc-avatar-menu`);return i.append($(`slicc-avatar`,{name:`SLICC`})),t.append(n,r,i),{nav:t,switcher:n,floatbar:r,avatarMenu:i}}function uA(e){let t=$(`slicc-composer`),n=$(`div`,{class:`wcui-backpressure`,role:`status`,"aria-live":`polite`,hidden:``}),r=$(`slicc-queued-stack`);r.style.position=`relative`,r.style.zIndex=`0`,r.style.marginBottom=`-32px`,r.style.minHeight=`76px`;let i=$(`slicc-input-card`,{placeholder:e.placeholder});i.style.position=`relative`,i.style.zIndex=`1`;let a=$(`slicc-composer-meta`,{model:`Preview`,thinking:`off`});return t.append(n,r,i,a),{composer:t,inputCard:i,composerMeta:a,queuedStack:r,lickBackpressureNotice:n}}function dA(){let e=$(`slicc-dock-tree`),t=$(`slicc-surface`,{"surface-id":`files`,layout:`flex`}),n=$(`slicc-file-tree`);t.append(n);let r=$(`slicc-surface`,{"surface-id":`term`,layout:`flex`}),i=$(`div`,{class:`wcui-term`});r.append(i);let a=$(`slicc-surface`,{"surface-id":`memory`,layout:`flex`}),o=$(`slicc-memory-panel`,{class:`wcui-memory`});a.append(o);let s=$(`slicc-surface`,{"surface-id":`monitor`,layout:`flex`}),c=$(`slicc-monitor`,{class:`wcui-monitor`});s.append(c);let l=$(`slicc-surface`,{"surface-id":`browser`,layout:`flex`}),u=$(`div`,{class:`wcui-placeholder`});return u.textContent=`The tab switcher runs on the leader. This float has no browser of its own to show — ask the leader to open, focus, or close tabs through chat.`,l.append(u),e.append(t,r,a,s,l),{dockTree:e,tree:n,termSurface:i,memoryHost:o,monitor:c}}function fA(e,t){e.addEventListener(`slicc-dock-select`,e=>{let n=e.detail?.id;!n||t.has(n)})}function pA(e,t){e.addEventListener(`pointerdown`,e=>{let n=(e.target?.closest?.(`slicc-dock-item`))?.getAttribute(`item-id`);!n?.startsWith(`sprinkle:`)||!t.tilesMovable||t.beginExternalDrag(n,e.pointerId)})}function mA(e,t){ou(document),oA(document),cA();let r=$(`div`,{class:`wcui-frame`}),i=$(`slicc-shader`,{mode:`cone`,class:`wcui-shader`}),a=$(`slicc-freezer`);a.append($(`slicc-freezer-new`));let o=$(`div`,{class:`wcui-appcol`}),s=t.urlState?{"url-state":``}:{},c=$(`slicc-shell`,s),l=$(`slicc-chatpane`),u=$(`slicc-chat-thread`,{context:`cone`,accent:`var(--waffle)`,...s});u.append(...PD(t.messages));let{composer:d,inputCard:f,composerMeta:p,queuedStack:m,lickBackpressureNotice:h}=uA(t);l.append(u,d);let{dockTree:g,tree:_,termSurface:v,memoryHost:y,monitor:b}=dA(),x=$(`slicc-surface`,{"surface-id":`chat`,layout:`flex`});x.append(l),g.append(x);let S=g;S.setPinned([`chat`]),S.placeSurface(`chat`,`left`);let C=$(`slicc-dock`,{"system-tools":``});c.append(g,C);let w=new Set;fA(C,w),pA(C,g),a.addEventListener(`freezer-toggle`,e=>{let t=e.detail?.open===!0;o.style.setProperty(`--rail-w`,t?`260px`:`44px`)});let ee=0;u.addEventListener(`scroll`,()=>{ee||=requestAnimationFrame(()=>{ee=0,i.setAttribute(`scroll`,String(Math.round(u.scrollTop)))})},{passive:!0});let{nav:T,switcher:te,floatbar:ne,avatarMenu:re}=lA(t);o.append(T,c);let ie=JO({switcher:te,dock:C,freezer:a,composerMeta:p,composer:d,chatPane:l,inputCard:f,thread:u,frame:r,dockTree:g,fileTree:_,memoryHost:y}),{panelHost:ae,trustedLayer:E}=Wx(document);return ae.append(i,a,o),r.append(ae,E),e.replaceChildren(r),$k({thread:u,log:n(`base64-preview`)}),{frame:r,panelHost:ae,trustedLayer:E,shader:i,chatPane:l,thread:u,composer:d,inputCard:f,composerMeta:p,queuedStack:m,lickBackpressureNotice:h,switcher:te,floatbar:ne,shell:c,dockTree:g,dock:C,freezer:a,fileTree:_,termSurface:v,memoryHost:y,monitor:b,avatarMenu:re,shortcuts:ie,overlaySurfaces:w}}function hA(e,t){let{shader:n,frame:r,freezer:i}=e;t.kind===`cone`?(n.removeAttribute(`tint`),r.style.removeProperty(`--ctx`),i.removeAttribute(`ctx`),n.setAttribute(`mode`,`cone`)):t.kind===`scoop`?(n.setAttribute(`tint`,t.accent),r.style.setProperty(`--ctx`,t.accent),i.removeAttribute(`ctx`),n.setAttribute(`mode`,`scoop`)):(n.setAttribute(`mode`,`freezer`),n.setAttribute(`tint`,rA),r.style.setProperty(`--ctx`,rA),i.setAttribute(`ctx`,``))}function gA(e,t){e.composer.toggleAttribute(`hidden`,t),t&&e.inputCard.setAttribute(`disabled`,``)}function _A(e){return e.detail?.value}function vA(e){return e.detail?.steer===!0}function yA(e){let t=mA(e,{messages:sS(),scoops:[{key:`cone`,type:`cone`,color:`#b07823`,label:`sliccy`,eyes:`open`,state:`working`},{key:Qx,type:`scoop`,color:`#06b6d4`,label:Qx,eyes:`open`,state:`broken`}],floatLabel:`standalone · preview`,placeholder:`Preview harness — submissions echo into the thread…`});t.fileTree.items=[{kind:`dir`,id:`/workspace`,label:`workspace`,open:!0,children:[{kind:`file`,id:`/workspace/CLAUDE.md`,label:`CLAUDE.md`,size:3200}]},{kind:`dir`,id:`/shared`,label:`shared`,open:!0,children:[{kind:`file`,id:`/shared/CLAUDE.md`,label:`CLAUDE.md`,size:1800}]}],t.switcher.setAttribute(`attention`,`cone`),t.inputCard.addEventListener(`submit`,e=>{let n=_A(e)?.trim();if(!n)return;let r={id:`wc-echo-${t.thread.childElementCount}`,role:`user`,content:n,timestamp:Date.now()};t.thread.append(...AD(r))})}export{Bx as A,le as B,gD as C,hS as D,wS as E,be as F,T as G,se as H,Oe as I,j as L,co as M,pe as N,Jx as O,fe as P,Se as R,ED as S,gS as T,ce as U,oe as V,ne as W,QE as _,vA as a,ND as b,Uk as c,FD as d,iO as f,$E as g,ID as h,mA as i,Ro as j,Gx as k,qk as l,rO as m,gA as n,_A as o,oO as p,hA as r,nA as s,rA as t,aO as u,ZE as v,fE as w,AD as x,jD as y,de as z};
|
|
7614
|
+
`,ab=`slicc-monitor-style`;function ob(e){if(e.getElementById(ab))return;let t=e.createElement(`style`);t.id=ab,t.textContent=ib,(e.head??e.documentElement).appendChild(t)}var sb={error:3,warn:2,active:1,idle:0},cb={active:`circle-check`,warn:`triangle-alert`,error:`octagon-x`,idle:`circle`},lb={active:`Healthy`,warn:`Attention`,error:`Failing`,idle:`Idle`};function ub(e){return e.status?e.status:e.error?`error`:e.active?`active`:`idle`}function db(e){if(e.status)return e.status;let t=`idle`;for(let n of e.rows){let e=ub(n);sb[e]>sb[t]&&(t=e)}return t}function fb(e){return j(`span`,{class:`monitor-glyph monitor-glyph--${e}`},n(cb[e],{size:14}))}var pb={rose:`var(--rose)`,cyan:`var(--cyan)`,violet:`var(--violet)`,amber:`var(--amber)`,waffle:`var(--waffle)`,green:`var(--green)`};function mb(e){return e?pb[e]:`var(--ctx)`}var hb=`http://www.w3.org/2000/svg`;function gb(e,t){let n=document.createElementNS(hb,e);for(let[e,r]of Object.entries(t))n.setAttribute(e,String(r));return n}var _b=2,vb=_b/2,yb=4,bb=5;function xb(e,t,n){let r=e.points,i=r.map(e=>e.value),a=Math.min(...i),o=Math.max(...i)-a||1,s=t-vb,c=Math.max(0,t-2),l=r[r.length-1].at,u=e.windowMs>0?e.windowMs:1,d=l-r[0].at>0;return r.map((e,t)=>({x:d?Math.max(vb,s-Math.min(1,(l-e.at)/u)*c):vb+t/(r.length-1)*c,y:n-bb-(e.value-a)/o*(n-10)}))}function Sb(e,t,n,r){let i=xb(e,n,r),a=i.map(e=>`${e.x.toFixed(1)},${e.y.toFixed(1)}`).join(` `),o=i[i.length-1],s=i[0],c=gb(`svg`,{width:n,height:r,viewBox:`0 0 ${n} ${r}`,"aria-hidden":`true`});return c.append(gb(`polygon`,{points:`${a} ${o.x.toFixed(1)},${r} ${s.x.toFixed(1)},${r}`,fill:t,"fill-opacity":`0.1`}),gb(`polyline`,{points:a,fill:`none`,stroke:t,"stroke-width":String(_b),"stroke-linejoin":`round`,"stroke-linecap":`round`}),gb(`circle`,{cx:o.x.toFixed(1),cy:o.y.toFixed(1),r:String(yb),fill:t,stroke:`var(--canvas)`,"stroke-width":String(_b)})),c}var Cb={hero:{w:300,h:56},tile:{w:132,h:34}};function wb(e,t,n,r){let i=j(`div`,{class:`monitor-tile__plot`}),a=0,o=r=>{let o=Math.round(r);o<=0||o===a||(a=o,i.replaceChildren(Sb(e,t,o,n.h)))};if(o(n.w),typeof ResizeObserver==`function`){let e=new ResizeObserver(e=>{for(let t of e)o(t.contentRect.width)});e.observe(i),r.push(e)}return i}function Tb(e,t){let n=mb(e.accent);return e.series&&e.series.points.length>1?wb(e.series,n,e.hero?Cb.hero:Cb.tile,t):typeof e.ratio==`number`?j(`div`,{class:`monitor-tile__plot`},j(`span`,{class:`monitor-meter`,style:`--monitor-hue:${n}`},j(`span`,{class:`monitor-meter__track`},Ob(e.ratio)),Ab(e.markers))):null}function Eb(e){return Math.max(0,Math.min(1,e))}function Db(e){return`${(Eb(e)*100).toFixed(1)}%`}function Ob(e){return j(`span`,{class:`monitor-meter__fill`,style:`width:${Db(e)}`})}function kb(e){return e.label??`${Math.round(Eb(e.ratio)*100)}%`}function Ab(e){if(!e||e.length===0)return null;let t=[...e].sort((e,t)=>e.ratio-t.ratio);return j(`span`,{class:`monitor-meter__marks`,role:`img`,"aria-label":[...t].reverse().map(kb).join(`, `)},...t.map(e=>j(`span`,{class:`monitor-meter__mark`,"data-mark":e.id,style:`left:${Db(e.ratio)};--mark-color:${e.color}`,title:e.label??null,"aria-hidden":`true`})))}function jb(e,t){let n=j(`section`,{class:`monitor-tile${e.hero?` monitor-tile--hero`:``}`,"data-vital":e.id});return Ee(n,[j(`span`,{class:`monitor-tile__label`},e.label),j(`div`,{class:`monitor-tile__figure`},j(`span`,{class:`monitor-tile__value`},e.value),e.unit?j(`span`,{class:`monitor-tile__unit`},e.unit):null),e.delta?j(`span`,{class:`monitor-tile__delta`},e.delta):null,Tb(e,t),e.foot?j(`span`,{class:`monitor-tile__foot`},e.foot):null]),n}function Mb(e,t){return j(`div`,{class:`monitor-vitals`},...e.map(e=>jb(e,t)))}function Nb(e){return j(`li`,{class:`monitor-alert`,"data-severity":e.severity,"data-alert":e.id},j(`span`,{class:`monitor-alert__icon monitor-glyph--${e.severity}`},n(e.icon??cb[e.severity===`error`?`error`:`warn`],{size:16})),j(`span`,{class:`monitor-alert__copy`},j(`span`,{class:`monitor-alert__title`},e.title),e.detail?j(`span`,{class:`monitor-alert__detail`},e.detail):null),e.age?j(`span`,{class:`monitor-alert__age`},e.age):null)}function Pb(){return j(`div`,{class:`monitor-clear`,role:`status`},fb(`active`),j(`span`,{class:`monitor-clear__title`},`All clear`),j(`span`,{class:`monitor-clear__text`},`Nothing is stalled, expired, or failing.`))}function Fb(e){let t=e.some(e=>e.severity===`error`)?`error`:e.length>0?`warn`:`ok`;return j(`section`,{class:`monitor-block`,"data-block":`attention`},j(`div`,{class:`monitor-block__head`},j(`h3`,{class:`monitor-block__title`},`Needs attention`),j(`span`,{class:`monitor-pill monitor-pill--${t}`},String(e.length))),e.length===0?Pb():j(`ul`,{class:`monitor-alerts`},...e.map(Nb)))}function Ib(e){let t=ub(e),n=j(`span`,{class:`monitor-child__headline`},j(`span`,{class:`monitor-child__name`},e.name));for(let t of e.badges??[])n.appendChild(j(`span`,{class:`monitor-badge`},t));let r=j(`span`,{class:`monitor-child__copy`},n);return e.sublabel&&r.appendChild(j(`span`,{class:`monitor-child__sublabel`},e.sublabel)),j(`li`,{class:`monitor-child`,"data-status":t,style:`padding-left:${28+(e.depth??0)*18}px`},fb(t),r,j(`span`,{class:`monitor-child__meta`},e.meta))}function Lb(e){return j(`div`,{class:`monitor-empty`,role:`status`},j(`span`,{class:`monitor-empty__title`},`No ${e.label.toLocaleLowerCase()} yet`),j(`span`,{class:`monitor-empty__text`},e.emptyText??`${e.label} will appear here when available.`))}function Rb(e,t,r,i,a){let o=db(e),s=o===`warn`||o===`error`,c=r.has(e.id)?!0:!t.has(e.id)&&s&&e.rows.length>0,l=j(`ul`,{class:`monitor-children`,id:a});e.rows.length===0?l.replaceChildren(Lb(e)):l.append(...e.rows.map(Ib)),c||l.setAttribute(`hidden`,``);let u=j(`button`,{class:`monitor-row`,type:`button`},j(`span`,{class:`monitor-row__chev`,"aria-hidden":`true`},n(c?`chevron-down`:`chevron-right`,{size:15})),j(`span`,{class:`monitor-row__icon`},n(e.icon??`box`,{size:16})),j(`span`,{class:`monitor-row__name`},e.label),j(`span`,{class:`monitor-row__summary`},e.meta??`${e.count}`),j(`span`,{class:`monitor-row__state monitor-glyph--${o}`},fb(o),lb[o]));return u.setAttribute(`aria-expanded`,String(c)),u.setAttribute(`aria-controls`,a),u.addEventListener(`click`,()=>i(e.id,c)),j(`div`,{class:`monitor-group`,"data-section":e.id,"data-status":o,"data-accent":e.accent??`neutral`},u,l)}var zb=[`pid`,`ppid`,`state`,`started`,`elapsed`,`scoop`,`command`],Bb=new Set([`R`,`S`]);function Vb(e,t){if(t===`state`)return j(`td`,{class:`monitor-td monitor-td--state`},j(`span`,{class:`monitor-statcell`},j(`span`,{class:`monitor-stat-tag monitor-stat-tag--${e.state}`},e.state),j(`span`,{class:`monitor-stat-word`},e.status)));let n=e[t];return j(`td`,{class:`monitor-td monitor-td--${t}`},n==null?`—`:String(n))}function Hb(e){return j(`tr`,{class:`monitor-tr`,"data-pid":String(e.pid),"data-live":String(Bb.has(e.state))},...zb.map(t=>Vb(e,t)))}function Ub(e,t,n){return[...e].sort((e,r)=>{let i=e[t],a=r[t],o=typeof i==`number`&&typeof a==`number`?i-a:String(i??``).localeCompare(String(a??``));return n?-o:o})}function Wb(e,t){return j(`tr`,null,...zb.map(r=>{let i=e.sort===r,a=j(`th`,{class:`monitor-th monitor-td--${r}`,scope:`col`},j(`span`,{class:`monitor-th__label`},r.toUpperCase()),i?n(e.descending?`chevron-down`:`chevron-up`,{size:12}):null);return a.setAttribute(`aria-sort`,i?e.descending?`descending`:`ascending`:`none`),a.addEventListener(`click`,()=>{e.descending=e.sort===r&&!e.descending,e.sort=r,t()}),a}))}function Gb(e,t){return!t||e.command.toLowerCase().includes(t)||(e.scoop??``).toLowerCase().includes(t)||String(e.pid).includes(t)}function Kb(e){let t={sort:`pid`,descending:!1,query:``},n=j(`input`,{class:`monitor-input`,type:`search`,"aria-label":`Filter processes`,placeholder:`Filter command, scoop, or pid…`}),r=j(`thead`),i=j(`tbody`),a=j(`span`,{class:`monitor-block__hint`}),o=()=>{let n=Ub(e.rows,t.sort,t.descending).filter(e=>Gb(e,t.query));if(r.replaceChildren(Wb(t,o)),n.length===0){let e=j(`td`,{class:`monitor-td monitor-empty-cell`,colspan:zb.length});e.textContent=t.query?`No live process matches “${t.query}”.`:`No processes running.`,i.replaceChildren(j(`tr`,{class:`monitor-tr`},e))}else i.replaceChildren(...n.map(Hb));let s=e.terminated>0?` · ${e.terminated.toLocaleString()} exited this session`:``;a.replaceChildren(document.createTextNode(`${e.rows.length} live${s}`))};return n.addEventListener(`input`,()=>{t.query=n.value.trim().toLowerCase(),o()}),o(),j(`section`,{class:`monitor-block`,"data-block":`processes`},j(`div`,{class:`monitor-block__head`},j(`h3`,{class:`monitor-block__title`},`Processes`),a),j(`div`,{class:`monitor-toolbar`},n),j(`div`,{class:`monitor-tablewrap`},j(`table`,{class:`monitor-table`},r,i)))}function qb(e){return{...e,rows:e.rows.map(e=>({...e,badges:e.badges?.slice()}))}}var Jb=0;A(`slicc-monitor`,class extends HTMLElement{#e={};#t=new Set;#n=new Set;#r=!1;#i=++Jb;#a=[];connectedCallback(){ob(this.ownerDocument),this.#r||=(this.#t=nb(),!0),this.#u()}disconnectedCallback(){this.#o()}#o(){for(let e of this.#a)e.disconnect();this.#a=[]}get model(){return{...this.#e,vitals:this.#e.vitals?.map(e=>({...e,series:e.series?{...e.series,points:e.series.points.map(e=>({...e}))}:e.series,markers:e.markers?e.markers.map(e=>({...e})):e.markers})),alerts:this.#e.alerts?.map(e=>({...e})),sections:this.#e.sections?.map(qb),processes:this.#e.processes?{...this.#e.processes,rows:this.#e.processes.rows.map(e=>({...e}))}:this.#e.processes}}set model(e){this.#e=e??{},this.isConnected&&this.#u()}get sections(){return(this.#e.sections??[]).map(qb)}set sections(e){this.#e={...this.#e,sections:Array.isArray(e)?e.map(qb):[]},this.isConnected&&this.#u()}#s(){let e=j(`button`,{class:`monitor-btn`,type:`button`,"aria-label":`Re-sync monitor data`},n(`refresh-cw`,{size:14}),j(`span`,null,`Re-sync`));return e.addEventListener(`click`,()=>{this.dispatchEvent(new CustomEvent(`slicc-monitor-refresh`,{bubbles:!0,composed:!0}))}),j(`header`,{class:`monitor-head`},j(`span`,{class:`monitor-head__mark`},n(`activity`,{size:18})),j(`div`,{class:`monitor-head__copy`},j(`h2`,{class:`monitor-head__title`},`Live monitor`),j(`p`,{class:`monitor-head__sub`},this.#e.updated??`Streaming`)),e)}#c(e){let t=j(`div`,{class:`monitor-groups`});for(let n of e){let e=n.id.replace(/[^a-z0-9_-]/gi,`-`);t.appendChild(Rb(n,this.#t,this.#n,(e,t)=>this.#l(e,t),`monitor-${this.#i}-${e}`))}return j(`section`,{class:`monitor-block`,"data-block":`topology`},j(`div`,{class:`monitor-block__head`},j(`h3`,{class:`monitor-block__title`},`Topology`),j(`span`,{class:`monitor-block__hint`},`healthy groups stay collapsed`)),t)}#l(e,t){t?(this.#n.delete(e),this.#t.add(e)):(this.#t.delete(e),this.#n.add(e)),rb(this.#t),this.#u()}#u(){let{vitals:e=[],alerts:t,sections:n=[],processes:r}=this.#e;this.#o();let i=j(`div`,{class:`monitor`});Ee(i,[this.#s(),e.length>0?Mb(e,this.#a):null,t?Fb(t):null,n.length>0?this.#c(n):null,r?Kb(r):null]),this.replaceChildren(i)}});var Yb=e({CHAT_SURFACE_ID:()=>jl,DEFAULT_LAUNCHER_CORNER:()=>ee,DEFAULT_LAUNCHER_FOLLOWER_STATUS:()=>T,HOLD_TO_ENABLE_MS:()=>an,LAUNCHER_FOLLOWER_STATUS_ATTR:()=>E,LAYOUT_SCHEMA_VERSION:()=>1,MACHINE_WRITTEN_MEMORY_PATH:()=>MACHINE_WRITTEN_MEMORY_PATH,PANEL_MARKER_ATTR:()=>Ia,REDACTED_REAL_WORLD_MEMORY_PATH:()=>REDACTED_REAL_WORLD_MEMORY_PATH,SYNTHETIC_MEMORY_PATH:()=>SYNTHETIC_MEMORY_PATH,SliccImagePreview:()=>Zt,TOKENS_CSS:()=>vl,ensureGlobalTokens:()=>bl,followSystemTheme:()=>Sl,setTheme:()=>xl});export{Uo as a,ra as c,rs as i,bl as n,Za as o,Sl as r,Sa as s,Yb as t};
|