sliccy 6.248.3 → 6.248.4
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 +229 -204
- package/dist/ui/assets/{account-store-mjceqynz.js → account-store-CoiNHIE9.js} +1 -1
- package/dist/ui/assets/{account-store-DvMtuAxT.js → account-store-EUAU8ivx.js} +1 -1
- package/dist/ui/assets/{adobe-BwMu78zI.js → adobe-Cnyzs0z9.js} +1 -1
- package/dist/ui/assets/{adobe-BR5kagG4.js → adobe-bJrGAM6E.js} +1 -1
- package/dist/ui/assets/{agent-panels-CqdhYmst.js → agent-panels-DxCO1Hct.js} +1 -1
- package/dist/ui/assets/{almost-bash-shell-headless-Bapmhu3C.js → almost-bash-shell-headless-BMKZNLwu.js} +12 -12
- package/dist/ui/assets/{apply-layout-e_T1KE6y.js → apply-layout-BjLmZ8CX.js} +1 -1
- package/dist/ui/assets/{azure-openai-g4Xv5E--.js → azure-openai-C5kzBBrl.js} +1 -1
- package/dist/ui/assets/{azure-openai-BN148pwc.js → azure-openai-CgL7nikU.js} +1 -1
- package/dist/ui/assets/{cdp-BY2Mm1l_.js → cdp-DU50qKlQ.js} +1 -1
- package/dist/ui/assets/{cerebras-DFBA9Br9.js → cerebras-C4IlgrId.js} +1 -1
- package/dist/ui/assets/{cerebras-BxdukTUc.js → cerebras-Exx59PmI.js} +1 -1
- package/dist/ui/assets/{composer-speech--hKCVvOJ.js → composer-speech-CtvE78Rx.js} +1 -1
- package/dist/ui/assets/{connect-surface-BT8a8Ghs.js → connect-surface-Bvi30iYd.js} +1 -1
- package/dist/ui/assets/{directed-approval-DCBFB0cJ.js → directed-approval-CQVXF9kD.js} +1 -1
- package/dist/ui/assets/dist-CegW-G1M.js +1 -0
- package/dist/ui/assets/dist-kcvXs5tL.js +5 -0
- package/dist/ui/assets/{emscripten-vfs-hook-Dh5V1kuy.js → emscripten-vfs-hook-G9JRg26r.js} +1 -1
- package/dist/ui/assets/{frozen-archive-writer-AZqZX0be.js → frozen-archive-writer-DV7A8nNw.js} +1 -1
- package/dist/ui/assets/{frozen-archive-writer-D8Na80jS.js → frozen-archive-writer-DV8CfTGq.js} +1 -1
- package/dist/ui/assets/{frozen-session-delete-DgFaw8dO.js → frozen-session-delete-KNFPPuJe.js} +1 -1
- package/dist/ui/assets/{frozen-session-identity-V1cg6Y8X.js → frozen-session-identity-B46HFhaz.js} +1 -1
- package/dist/ui/assets/{frozen-session-identity-bvyrPA_v.js → frozen-session-identity-CF594WMJ.js} +1 -1
- package/dist/ui/assets/{gelatiere-unit-Cb4ufYMy.js → gelatiere-unit-BnExmaTM.js} +1 -1
- package/dist/ui/assets/{ghostty-vt-BeUP0ymd.wasm → ghostty-vt--DTGF19l.wasm} +0 -0
- package/dist/ui/assets/{github-D6ABE0-R.js → github-BrjjZAsX.js} +1 -1
- package/dist/ui/assets/{github-MjQRJghz.js → github-C6Rd03wJ.js} +1 -1
- package/dist/ui/assets/{github-copilot-DzbXKZtj.js → github-copilot-DqpGzQw_.js} +1 -1
- package/dist/ui/assets/{github-copilot-D6lNv_9-.js → github-copilot-_OyzohK5.js} +1 -1
- package/dist/ui/assets/{hear-AGuOYMWS.js → hear-BN5luL3S.js} +1 -1
- package/dist/ui/assets/{js-realm-worker-ChQxP0KX.js → js-realm-worker-DUoX2h5j.js} +2 -2
- package/dist/ui/assets/{jsh-executor-75tLym35.js → jsh-executor-B_ddQzto.js} +2 -2
- package/dist/ui/assets/{kernel-worker-BnbHshZp.js → kernel-worker-MybuXyBd.js} +8 -8
- package/dist/ui/assets/{lick-ws-bridge-6FEM7X9M.js → lick-ws-bridge-CPjy5dPn.js} +1 -1
- package/dist/ui/assets/{lick-ws-bridge-BPZTVU5Z.js → lick-ws-bridge-DEmDlxVR.js} +1 -1
- package/dist/ui/assets/{live-session-curation-BM7-y_ky.js → live-session-curation-C9AY4psl.js} +1 -1
- package/dist/ui/assets/{live-session-curation-Kj71P6dK.js → live-session-curation-ChkffqSA.js} +1 -1
- package/dist/ui/assets/{live-session-snapshot-DywJwCkI.js → live-session-snapshot-DwWIWtG9.js} +1 -1
- package/dist/ui/assets/{local-llm-_Vv5kgAi.js → local-llm-B-KVBQuy.js} +1 -1
- package/dist/ui/assets/{local-llm-CWvkEx1Y.js → local-llm-BI7bYfoc.js} +1 -1
- package/dist/ui/assets/{main-cherry-C242PEw0.js → main-cherry-CQgQpSib.js} +1 -1
- package/dist/ui/assets/{main-CraGyWI5.js → main-pp1LzVcX.js} +3 -3
- package/dist/ui/assets/{mcp-command-BabmvfAi.js → mcp-command-B779bOTK.js} +10 -10
- package/dist/ui/assets/{memory-curation-seam-ETLJrcCv.js → memory-curation-seam-ByPo8cGi.js} +1 -1
- package/dist/ui/assets/{memory-health-DS1GE6Db.js → memory-health-DcxlUrXc.js} +1 -1
- package/dist/ui/assets/{memory-write-execute-gi5xCQnL.js → memory-write-execute-CKI-9ZAP.js} +1 -1
- package/dist/ui/assets/{merge-folded-cost-into-frozen-B6zMyDMc.js → merge-folded-cost-into-frozen-DIYTak4p.js} +1 -1
- package/dist/ui/assets/{new-session-ERMxClkz.js → new-session-g_r_qcmc.js} +2 -2
- package/dist/ui/assets/{oauth-bootstrap-bG8L_Eoa.js → oauth-bootstrap-DreVl6g7.js} +2 -2
- package/dist/ui/assets/{onboarding-orchestrator-DHS8hPJJ.js → onboarding-orchestrator-C2EOhp34.js} +1 -1
- package/dist/ui/assets/{openai-codex-DKIssXwD.js → openai-codex-B8pw-NWl.js} +1 -1
- package/dist/ui/assets/{openai-codex-CGrqWES0.js → openai-codex-C4Tm1S2D.js} +1 -1
- package/dist/ui/assets/{openrouter-ZVV6FVqk.js → openrouter-B0EqwIn3.js} +1 -1
- package/dist/ui/assets/{openrouter-si1rvDmH.js → openrouter-CzQ8Mfh0.js} +1 -1
- package/dist/ui/assets/{openrouter-free-BL-82nwO.js → openrouter-free-Cl4RHvyD.js} +1 -1
- package/dist/ui/assets/{openrouter-free-TVKDr4Ci.js → openrouter-free-CpKJupv_.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-Do5xCmz5.js → openrouter-oauth-0yFjXvrc.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-C0BSjkp9.js → openrouter-oauth-BRahdbZ4.js} +1 -1
- package/dist/ui/assets/{panel-rpc-handlers-DoEdFmZH.js → panel-rpc-handlers-GkEWjrsh.js} +2 -2
- package/dist/ui/assets/{panelize-shell-BbOMOerL.js → panelize-shell-CtMH6CGD.js} +1 -1
- package/dist/ui/assets/{pi-edit-execution-sHOLEMOO.js → pi-edit-execution-ru_RSE31.js} +1 -1
- package/dist/ui/assets/{provider-BNzD2VCf.js → provider-Dm5ZNpu9.js} +1 -1
- package/dist/ui/assets/{provider-DTbC8IiQ.js → provider-qOOj0Bx4.js} +1 -1
- package/dist/ui/assets/{provider-settings-Hf5Vr2vr.js → provider-settings-Dts8qnq0.js} +1 -1
- package/dist/ui/assets/provider-store-access-C_mdEz_o.js +1 -0
- package/dist/ui/assets/provider-store-access-TfpqgcQb.js +1 -0
- package/dist/ui/assets/{providers-CH0N1Hn6.js → providers-CEBpTOtO.js} +2 -2
- package/dist/ui/assets/{providers-DXT44kfO.js → providers-IksVbHjy.js} +1 -1
- package/dist/ui/assets/{quick-llm-95xYFP4C.js → quick-llm-BKYqGAke.js} +1 -1
- package/dist/ui/assets/{realm-inprocess-BJztShpA.js → realm-inprocess-ZgBNrBFy.js} +2 -2
- package/dist/ui/assets/{realm-unhandled-rejections-DLGlX1JV.js → realm-unhandled-rejections-Dlau5E21.js} +1 -1
- package/dist/ui/assets/{realm-unhandled-rejections-VCxk3AmS.js → realm-unhandled-rejections-VXmx0XIB.js} +1 -1
- package/dist/ui/assets/{recovery-screen-C4ccpr6-.js → recovery-screen-NNWQWNqn.js} +1 -1
- package/dist/ui/assets/{remote-terminal-view-CbmgWziL.js → remote-terminal-view-oOTCkn_X.js} +2 -2
- package/dist/ui/assets/{restore-D14e8jg_.js → restore-zlhvIM6j.js} +1 -1
- package/dist/ui/assets/{run-CAghXwX-.js → run-BGO-UaQS.js} +1 -1
- package/dist/ui/assets/{run-Dt6bu0ib.js → run-BY-WnPWq.js} +2 -2
- package/dist/ui/assets/{run-BNk3oV9Y.js → run-DD-Zc-AI.js} +2 -2
- package/dist/ui/assets/{run-CctUty19.js → run-DfaMtqBW.js} +1 -1
- package/dist/ui/assets/{serve-command-CwZwH2sF.js → serve-command-Bkb8RYZg.js} +2 -2
- package/dist/ui/assets/{serve-runtime-CUY8Qryz.js → serve-runtime-BWUwkiqv.js} +1 -1
- package/dist/ui/assets/{session-command-memory-NpuNEURz.js → session-command-memory-nKG4sb28.js} +2 -2
- package/dist/ui/assets/{session-jsonl-D4p25wJo.js → session-jsonl-B5phOLgv.js} +1 -1
- package/dist/ui/assets/{session-jsonl-2Dg1Jgyg.js → session-jsonl-Ca8gi9Dg.js} +1 -1
- package/dist/ui/assets/{session-search-index-BjKWodVu.js → session-search-index-tweAFlvW.js} +1 -1
- package/dist/ui/assets/{setup-feature-flags-remote-CjVU1qOg.js → setup-feature-flags-remote-Bnrz-kqW.js} +1 -1
- package/dist/ui/assets/{setup-model-catalog-BdD735K3.js → setup-model-catalog-DPoX_vRY.js} +1 -1
- package/dist/ui/assets/{silent-renew-backoff-C5-VfSnD.js → silent-renew-backoff-CMGVLIXZ.js} +1 -1
- package/dist/ui/assets/slicc-version-D9VMviCR.js +1 -0
- package/dist/ui/assets/{soundscape-CQ9qZd-p.js → soundscape-DtFo8gPx.js} +1 -1
- package/dist/ui/assets/{speak-CSIK-Yvk.js → speak-BNqo53H8.js} +1 -1
- package/dist/ui/assets/{sprinkle-manager-Cn-J2bbA.js → sprinkle-manager-KZBan5ot.js} +1 -1
- package/dist/ui/assets/{sprinkle-renderer-BUkonV7E.js → sprinkle-renderer-GOx0t_KB.js} +1 -1
- package/dist/ui/assets/{sudo-EZzi8bkV.js → sudo-CfhS3XDc.js} +1 -1
- package/dist/ui/assets/{supervisor-CUgH4wzz.js → supervisor-DXke_KPH.js} +1 -1
- package/dist/ui/assets/{sync-dialog-D4gXHIgq.js → sync-dialog-B4XIyWlR.js} +1 -1
- package/dist/ui/assets/{transformers-env-Dm_MXKYG.js → transformers-env-C6_kFf6e.js} +1 -1
- package/dist/ui/assets/{tray-leader-BUSNq_Gl.js → tray-leader-CrSh1Fel.js} +1 -1
- package/dist/ui/assets/{tray-leave-runtime-DEwFa7lI.js → tray-leave-runtime-wJkN1AA0.js} +1 -1
- package/dist/ui/assets/{tray-sidecar-CKjdtBdU.js → tray-sidecar-DlOOGPQH.js} +1 -1
- package/dist/ui/assets/{upgrade-detection-DZ35XKwJ.js → upgrade-detection-Ct24ndl7.js} +1 -1
- package/dist/ui/assets/{voice-reply-CaYhBRdn.js → voice-reply-CxXL_kEA.js} +1 -1
- package/dist/ui/assets/warm-wterm-DQwmz7G4.js +1 -0
- package/dist/ui/assets/wasm-inline-DSUyFn1L.js +1 -0
- package/dist/ui/assets/{wc-attach-C9rxulO7.js → wc-attach-Cmjdm23i.js} +2 -2
- package/dist/ui/assets/{wc-browser-6Ul-SEOZ.js → wc-browser-SUzkjJTA.js} +1 -1
- package/dist/ui/assets/{wc-computers-sDur6b13.js → wc-computers-BrBtwbOb.js} +1 -1
- package/dist/ui/assets/{wc-detached-9ariBwmo.js → wc-detached-cVeDn3rP.js} +1 -1
- package/dist/ui/assets/{wc-extension-CaXN-GTk.js → wc-extension-VohpgpQG.js} +2 -2
- package/dist/ui/assets/{wc-follower-B1AULTlR.js → wc-follower-BfOmPsV0.js} +3 -3
- package/dist/ui/assets/{wc-follower-oauth-L5HBJRH7.js → wc-follower-oauth-Br9RPRQJ.js} +1 -1
- package/dist/ui/assets/{wc-gelatiere-CWTa_Fw1.js → wc-gelatiere-WQR5AxZ9.js} +1 -1
- package/dist/ui/assets/{wc-live-CBQLeEAN.js → wc-live-Bj38qUgj.js} +5 -5
- package/dist/ui/assets/{wc-nav-D-qT15R2.js → wc-nav-BHy21Jl4.js} +2 -2
- package/dist/ui/assets/{wc-onboarding-C30JW8KM.js → wc-onboarding-DooXTaWX.js} +2 -2
- package/dist/ui/assets/{wc-permissions-Do9-WSJc.js → wc-permissions-CUtqnNV2.js} +2 -2
- package/dist/ui/assets/{wc-placeholder-B67JnHl5.js → wc-placeholder-Ca_dzZDr.js} +3 -3
- package/dist/ui/assets/{wc-secret-request-BaJdvYlQ.js → wc-secret-request-CxHPy2MF.js} +1 -1
- package/dist/ui/assets/{wc-settings-D8XLxkCT.js → wc-settings-Bf68mx0s.js} +3 -3
- package/dist/ui/assets/{wc-shell-BOiMEPvK.js → wc-shell-C0Y0f1tt.js} +234 -20
- package/dist/ui/assets/{wc-shortcut-config-B9YZlZ95.js → wc-shortcut-config-CkCG_Ehd.js} +1 -1
- package/dist/ui/assets/{wc-sprinkles-PlC39bUS.js → wc-sprinkles-BlFVp_Zu.js} +2 -2
- package/dist/ui/assets/{wc-transcript-export-BLI_0Glp.js → wc-transcript-export-DWFK7w_9.js} +2 -2
- package/dist/ui/assets/{wc-tray-DWLWOtPX.js → wc-tray-BU_mkrQK.js} +4 -4
- package/dist/ui/assets/welcome-detection-3uAUZPVw.js +1 -0
- package/dist/ui/assets/{whisper-session-CoIpux2Q.js → whisper-session-7VWAVhAF.js} +2 -2
- package/dist/ui/assets/{xai-grok-B5uojC5R.js → xai-grok-6WPJsfyI.js} +1 -1
- package/dist/ui/assets/{xai-grok-Xb6FZ1vE.js → xai-grok-Cl-8KspF.js} +1 -1
- package/dist/ui/index.html +3 -3
- package/dist/ui/packages/webapp/index.html +3 -3
- package/package.json +1 -1
- package/dist/ui/assets/dist-CaUJj_g5.js +0 -1
- package/dist/ui/assets/dist-DBSQLDw2.js +0 -1
- package/dist/ui/assets/provider-store-access-BiWdVR9d.js +0 -1
- package/dist/ui/assets/provider-store-access-D3dRz2B4.js +0 -1
- package/dist/ui/assets/slicc-version-Cf9JtZVj.js +0 -1
- package/dist/ui/assets/welcome-detection-BXOFjfMt.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e}from"./slicc-version-
|
|
1
|
+
import{n as e}from"./slicc-version-D9VMviCR.js";import{c as t,l as n}from"./kernel-worker-MybuXyBd.js";const r=`slicc:last-seen-version`;function i(){let{version:t,releasedAt:n}=e();return{version:t,releasedAt:n}}async function a(){let e=await t(r);return e&&e.length>0?e:null}async function o(e){await n(r,e)}async function s(){let e=i(),t=await a();return t===null?(await o(e.version),{bundled:e,lastSeen:null,isUpgrade:!1}):t===e.version?{bundled:e,lastSeen:t,isUpgrade:!1}:{bundled:e,lastSeen:t,isUpgrade:!0}}async function c(e){await o(e)}export{s as detectUpgrade,a as getLastSeenVersion,c as recordVersionSeen};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./logger-DDBAeTLF.js";import{it as t,ot as n}from"./wc-shell-
|
|
1
|
+
import{t as e}from"./logger-DDBAeTLF.js";import{it as t,ot as n}from"./wc-shell-C0Y0f1tt.js";import{hasVoiceForLang as r,speak as i,speechTextFromMarkdown as a}from"./speak-BNqo53H8.js";var o=e(`speech:voice-reply`),s=0;function c(){s++}function l(){return s<=0?!1:(s--,!0)}async function u(e,s=i,c=r){let l=t(e);if(l&&!await c(l))return;let u=a(n(e));if(u)try{await s(l?{text:u,lang:l}:{text:u})}catch(e){o.warn(`spoken reply failed`,e)}}export{l as consumeVoiceSubmission,c as markVoiceSubmission,u as speakReplyMarkdown};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./preload-helper-Czpn1I53.js";async function t(){let{GhosttyCore:t}=await e(async()=>{let{GhosttyCore:e}=await import(`./dist-CegW-G1M.js`);return{GhosttyCore:e}},[]);(await t.load({foregroundColor:`#e8e8ed`,backgroundColor:`#0c0c0e`})).dispose()}export{t as warmWterm};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=`AGFzbQEAAAABSgxgBX9/f39/AGAEf39/fwF/YAABf2AAAGABfwF/YAF/AGADf39/AGACf38AYAR/f39/AGADf39/AX9gAn9/AX9gBn9/f39/fwF/A1taAgICAgIDAgIEBAICAgICBAQEBAICAgICAgICAgICAgICAgICAgICAgMCAgUEBAYHCAMAAQkKBwcFBwYIBQgGCgMDBgkHBwAHCQUGBwkHCAkEAAIBBAsLBwYHBAUBcAEJCQUDAQAdBgkBfwFBgIDAAAsH7QYyBm1lbW9yeQIADWdldEdyaWRTdHJpZGUAAApnZXRNYXhDb2xzAA4LZ2V0Q2VsbFNpemUAAQ5nZXREZWJ1Z0xvZ01heAACFGdldERlYnVnTG9nRW50cnlTaXplAAEQZ2V0RGVidWdMb2dDb3VudAADDmdldERlYnVnTG9nUHRyAAQNY2xlYXJSZXNwb25zZQAFDmdldFJlc3BvbnNlTGVuAAYOZ2V0UmVzcG9uc2VQdHIABxRnZXRTY3JvbGxiYWNrTGluZUxlbgAIEWdldFNjcm9sbGJhY2tMaW5lAAkbZ2V0U2Nyb2xsYmFja0Rpc2NhcmRlZENvdW50AAoSZ2V0U2Nyb2xsYmFja0NvdW50AAsZZ2V0SHlwZXJsaW5rUmVqZWN0ZWRDb3VudAAMEWdldEh5cGVybGlua0NvdW50AA0UZ2V0SHlwZXJsaW5rQ2FwYWNpdHkADgxnZXRMaW5rSWRMZW4ADwxnZXRMaW5rSWRQdHIAEA1nZXRMaW5rVXJpTGVuABENZ2V0TGlua1VyaVB0cgASDGdldEJlbGxDb3VudAATD2dldFRpdGxlQ2hhbmdlZAAUC2dldFRpdGxlTGVuABULZ2V0VGl0bGVQdHIAFhVnZXRLaXR0eUtleWJvYXJkRmxhZ3MAFx9nZXRTeW5jaHJvbml6ZWRPdXRwdXRHZW5lcmF0aW9uABgVZ2V0U3luY2hyb25pemVkT3V0cHV0ABkOZ2V0Rm9jdXNFdmVudHMAGhBnZXRNb3VzZUVuY29kaW5nABsLZ2V0TW91c2VTZ3IAHBBnZXRNb3VzZVRyYWNraW5nAB0RZ2V0VXNpbmdBbHRTY3JlZW4AHhFnZXRCcmFja2V0ZWRQYXN0ZQAfEGdldEN1cnNvcktleXNBcHAAIAdnZXRSb3dzACEHZ2V0Q29scwAi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gABFDQBBAC8B3JHAgAAOBAAZGQEZC0EALwHeueiAACIGQf8HSw0YIAZBADoAwczwgAAMGAtB7bowIQYDQCAGQe3CMEYNGCAGQdSRwIAAakEAOgAAIAZBAWohBgwACwtBACEGAkBBAC0AgpLAgAAiBw0AQQBBgIKACDYC4LnogABBAEEAOgC6vOiAAAwXCwNAIAZB/wFxIgkgB0H/AXFPDRcCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAlBAXQvAdyRwIAAIg0OMgABAgMEBRQGBwgUFBQUFBQUFBQUFBQJCgsMFA0ODxQUFBQUFBQUEBEUFBQUFBQUFBITFAtBAEGAgoAINgLgueiAAEEAQQA6ALq86IAADBsLQQBBAC0AurzogABBAXI6ALq86IAADBoLQQBBAC0AurzogABBAnI6ALq86IAADBkLQQBBAC0AurzogABBBHI6ALq86IAADBgLIAZBAWoiDUH/AXEiCSAHQf8BcUkNEEEALQC6vOiAACEHDBULQQBBAC0AurzogABBEHI6ALq86IAADBYLQQBBAC0AurzogABBIHI6ALq86IAADBULQQBBAC0AurzogABBwAByOgC6vOiAAAwUC0EAQQAtALq86IAAQYABcjoAurzogAAMEwtBAEEALQC6vOiAAEH8AXE6ALq86IAADBILQQBBAC0AurzogABB+wFxOgC6vOiAAAwRC0EAQQAtALq86IAAQfcBcToAurzogAAMEAtBAEEALQC6vOiAAEHvAXE6ALq86IAADA8LQQBBAC0AurzogABB3wFxOgC6vOiAAAwOC0EAQQAtALq86IAAQb8BcToAurzogAAMDQtBAEEALQC6vOiAAEH/AHE6ALq86IAADAwLIAZB4LnogAAQv4CAgABB/wFxIAZqIQYMCwtBAEGAAjsB4LnogAAMCgsgBkHiueiAABC/gICAAEH/AXEgBmohBgwJC0EAQYACOwHiueiAAAwICyANQWJqIg9B//8DcUEISQ0EIA1B+P8DcUEoRg0DIA1Bpn9qQf//A3FBCEkNAiANQZx/akH//wNxQQhJDQEgB0F/aiEGIAdB/wFxQX9qIQ0DQCANIAlGDQggCUGFksCAAGohByAJQQFqIg8hCSAHLQAARQ0HDAALC0EA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ACEBQQBBCDoAgJLAgABBAEEAOgCZlsCAAEEAQQA7Af6RwIAACyABDwsCQCAAQfABcUEgRw0AAkBBAC0AlpLAgAAiAkEBSw0AIAIgADoAlJLAgABBAEEALQCWksCAAEEBajoAlpLAgAALQQBBAzoAgJLAgABBAA8LAkAgAEFQakH/AXFBzgBLDQBBACAAOgCBksCAAEEAQQA6AICSwIAAQQQPCwJAIABB/wFxQR9LDQBBACAAOgCBksCAAEECDwtBAEEAOgCAksCAAEEAC4YBAAJAIABB//8DcUEALwHGtuiAAE8NACABQf//A3FBAC8BxLbogABB//8DcU8NAEEAKAKwtuiAAEEALwHAtuiAACAAQf//A3EiAGxBDGxqIAFB//8DcUEMbGoiASACKQIANwIAIAFBCGogAkEIaigCADYCAEEAKAK4tuiAACAAakEBOgAACwuRBAEBfyOAgICAAEGACGsiAiSAgICAAEGwtuiAACAAIAEQyoCAgAACQEHIBEUNAEHYkcCAAEEAQcgE/AsAC0EAIAE7Afq56IAAQQAgADsB/LnogABBAEEBOgDAzPCAAEEAQoCAgICAoICAATcB1rnogABBAEKAgoAINwLgueiAAEEAQgA3AJG66IAAQQBCADcAl7rogABBACABOwHwueiAAEEAQQE6AIi66IAAQQBBADsB3rnogABBAEEAOgC+zPCAAEEAQQA6AL3M8IAAQQBBADoAvMzwgABBAEEAOgC7zPCAAEEAQQA6ALq86IAAQQBBADYBsrzogABBAEEANgC1vOiAAEEAQQA2AIm66IAAQQBBADYAjLrogABBAEEAOwHuueiAAEEAQgA3Af656IAAQQBCgAI3AfK56IAAQQBBgAI7Aey56IAAQQBCADcAn7rogABBAEIANwCnuuiAAEEAQQA7AYa66IAAQQBBADoAkLrogABBAEEANgLoueiAAEEAQQA6ALm86IAAQQBBADYCyLbogABBAEEAOwHQtuiAAEEAQQA2AdK56IAAQQBBADYArrrogAACQEGACEUNACACQQBBgAj8CwALQQghAQJAA0AgAUH/B0sNASACIAFqQQE6AAAgAUEIaiEBDAALCwJAQYAIRQ0AQcHM8IAAIAJBgAj8CgAACyACQYAIaiSAgICAAAuFAgEHfwJAIAJB//8DcUUNACABQf//A3EgAEH//wNxTQ0AIAEgAGsiBCACQf//A3EiAiAEQf//A3EiBCACIARJGyIFa0H//wNxIQZBACECA0ACQCAGIAJHDQAgBSAAakH//wNxIQIDQCAAQf//A3EgAk8NA0GwtuiAACAAIAMQuoCAgAAgAEEBaiEADAALCyABIAJBf3NqIgdB//8DcSEEAkBBAC8BxLbogABBDGwiCEUNAEEAKAKwtuiAACIJQQAvAcC26IAAIgogBGxBDGxqIAkgCiAHIAVrQf//A3FsQQxsaiAI/AoAAAtBACgCuLbogAAgBGpBAToAACACQQFqIQIMAAsLC/ABAQR/I4CAgIAAQRBrIgAkgICAgAACQAJAAkBBAC8B5LnogABBAWoiAUH//wNxQQAvAfC56IAAIgJJDQBBAC8B7rnogAAhAUEALQCfuuiAAA0BIAFB//8DcQ0BQQAhAUEAKAKglsCAACIDRQ0BIANBACgCsLbogABBAC8B/LnogAAQvoCAgABBAC8B8LnogAAhAkEALwHuueiAACEBDAELQQAgATsB5LnogAAMAQsgAEGAAjYCDCAAQYACOwEIIABBIDYCBCAAQQAvAeK56IAAOwEKIAEgAkEBIABBBGoQvYCAgAALIABBEGokgICAgAALWAACQCADIAJJDQAgAEIANwIADwsgBEH/AXEhBAJAA0AgAiADRg0BAkAgASADai0AACAERw0AIABBAToABCAAIAM2AgAPCyADQQFqIQMMAAsLIABCADcCAAv1AgEFfyOAgICAAEEQayIEJICAgIAAAkACQCABIANHDQBBASEFIAFFDQEgAEEBIAEbIgYgAkEBIAMbIgdGDQECQCABQRBLDQACQCABQQRPDQAgAC0AACAHLQAARiAAIAFBf2oiA2otAAAgByADai0AAEZxIAAgAUEBdiIDai0AACAHIANqLQAARnEhBQwDC0EAIQMgBEEANgIAIAQgAUF8aiIFNgIEIAQgAUEBdkEMcSIANgIIIAQgBSAAazYCDEEAIQUCQANAIANBEEYNASAHIAQgA2ooAgAiAGooAAAgBiAAaigAAHMgBXIhBSADQQRqIQMMAAsLIAVFIQUMAgsgAUF/akECdkEBaiEAIAYhAyAHIQUCQANAIABBf2oiAEUNASAFKAAAIQIgAygAACEIIANBBGohAyAFQQRqIQUgCCACRw0CDAALCyAGIAFBfGoiA2ooAAAgByADaigAAEYhBQwBC0EAIQULIARBEGokgICAgAAgBQvdAQIFfwF+I4CAgIAAQRBrIgMkgICAgABBACEEAkADQAJAIAIgBEsNAEEAIQUMAgsgASAEaiEGAkACQCAAKAIMIgcgAiAEayIFaiAAKAIISw0AAkAgBUUNACAAKAIEIAdqIAYgBfwKAAALIAAgACgCDCAFajYCDAwBCyAAKAIAKAIAIQcgAyAFNgIEIAMgBjYCACADQQhqIAAgA0EBQQEgBxGAgICAAICAgIAAIAMpAwgiCEIgiKciBUH//wNxDQIgCKchBQsgBSAEaiEEDAALCyADQRBqJICAgIAAIAUL6wEBA38jgICAgABBMGsiAiSAgICAAEEAIQMCQANAIAFB5ABJDQEgAkEPaiADakEfaiABIAFB5ABuIgRB5ABsayIBIAFB/wFxQQpuIgFBCmxrQQh0IAFyQbDgAHI7AAAgA0F+aiEDIAQhAQwACwsCQAJAIAFBCUsNACACQQ9qIANqQSBqIAFBMHI6AAAgA0EgaiEBDAELIAJBD2ogA2pBH2ogASABQf8BcUEKbiIEQQpsa0EIdCAEckGw4AByOwAAIANBH2ohAQsgACACQQ9qIAFqQSEgAWsQtICAgAAhASACQTBqJICAgIAAIAELdgECfwJAQQAvAdK56IAAIgJBgBBGDQBBAC8B1LnogAAhAwJAIAFBwAAgAUHAAEkbIgFFDQAgA0EGdEG7vOiAAGogACAB/AoAAAtBACADQQFqQf8PcTsB1LnogAAgAyABOgC7vPCAAEEAIAJBAWo7AdK56IAACwviAQEBfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAFB//8DcSICQZh4ag4RAQsCAwsEBQsLCwsLCwsLBgcACwJAIAJB6XdqDgMICQoAC0GggMCAACEBIAJBL0cNCgwLC0GigMCAACEBDAoLQaSAwIAAIQEMCQtBpoDAgAAhAQwIC0GogMCAACEBDAcLQaqAwIAAIQEMBgtBrIDAgAAhAQwFC0GugMCAACEBDAQLQbCAwIAAIQEMAwtBsoDAgAAhAQwCC0G0gMCAACEBDAELQbaAwIAAIQELIAAgAS8AADsAAAv4BQEKfyOAgICAAEEQayIBJICAgIAAQQJBACAAQQFxIgIbIQNBA0EAIAIbIQRBBEEAIAIbIQVBAC0AgpLAgAAiBkEBIAZBAUsbQQF0IQdBACEGA0ACQAJAAkAgByAGRg0AIAFBDmogBkHckcCAAGovAQAiCBC3gICAACABLQAPDQEMAgsgAUEQaiSAgICAAA8LQQBBAC8B/rnogAAiCUEBIAEtAA5BD3EiCnRyIAlBfiAKd3EgAhs7Af656IAACwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAhBmHhqDhEBEgIDBAUGEhISEhISEhIHCAALAkACQAJAAkACQAJAIAhBemoOBwECFxcXFwMACwJAIAhB6XdqDgMOEQ8ACwJAIAhBAUYNACAIQRRGDQQgCEEZRg0FIAhBL0YNDiAIQdQPRg0QIAhB6g9GDRIMFwtBACACOgCFuuiAAAwWC0EAIAI6AIa66IAADBULQQAgAjoAiLrogAAMFAtBACACOgC9zPCAAAwTC0EAIAI6AIO66IAADBILQQAgAjoAwMzwgAAMEQtB6AchCCACDQ9BACEIQQAvAfi56IAAQegHRw0QDA8LQeoHIQggAg0NQQAhCEEALwH4ueiAAEHqB0cNDwwNC0HrByEIIAINC0EAIQhBAC8B+LnogABB6wdHDQ4MCwtBACACOgCCuuiAAAwNC0EAIAI6AIS66IAADAwLQQAgAzoAhLrogAAMCwtBACAEOgCEuuiAAAwKC0EAIAU6AIS66IAADAkLIABBABDHgICAAAwICyAAQQEQx4CAgAAMBwtBACACOgCAuuiAAAwGCyACDQEQwICAgAAMBQsCQCACRQ0AQQAtAIG66IAADQBBAEEAKALMtuiAAEEBajYCzLbogAALQQAgAjoAgbrogAAMBAsQwYCAgAAMAwtBACAIOwH4ueiAAAwCC0EAIAg7Afi56IAADAELQQAgCDsB+LnogAALIAZBAmohBgwACwvmAQECfyOAgICAAEEQayICJICAgIAAQQAhAyACQQA6AAsgAiABOgAJIAIgADoACCACQgA3AwAgAkEALQCCksCAACIBOgAKIAFBBCABQQRJG0EBdCEBAkADQCABIANGDQEgAiADaiADQdyRwIAAai8BADsBACADQQJqIQMMAAsLQQAtAL/M8IAAIgNBDGwiASACKQMANwHStuiAACABQdq26IAAaiACQQhqKAIANgEAQQAgA0EBakEfcToAv8zwgABBAEEAKALUkcCAAEEBaiIDQX8gAxs2AtSRwIAAIAJBEGokgICAgAALewEDfwJAIAFB//8DcSIDIAAvARZPDQBBACEEQQAhAQJAA0AgASAALwEUTw0BIAAoAgAgAC8BECADbEEMbGogBGoiBSACKQIANwIAIAVBCGogAkEIaigCADYCACAEQQxqIQQgAUEBaiEBDAALCyAAKAIIIANqQQE6AAALC9ACAQN/AkAgAEH//wNxIgRBAC8BxrbogABPDQAgAUH//wNxIgVBAC8BxLbogAAiACAFIABJGyEBAkAgBSACQf//A3EiBiAAIAYgAEkbIgZPDQAgAUEAKAKwtuiAAEEALwHAtuiAACAEbEEMbGoiBSABQQxsai0ACUUgAUH//wNxQQBHcWshASACQf//A3EgAE8NAAJAIAUgBkEMbGotAAkNACAGQQFqIQYMAQsgBiAFIAZBf2pB//8DcUEMbGotAAlBAkZqIQYLQQAgBkH//wNxIgAgAUH//wNxIgFrIgIgAiAASxshACABQQxsIQECQANAIABFDQFBACgCsLbogAAgBEEALwHAtuiAAGxBDGxqIAFqIgIgAykCADcCACACQQhqIANBCGooAgA2AgAgAUEMaiEBIABBf2ohAAwACwtBACgCuLbogAAgBGpBAToAAAsLaQEDf0EAIQEDQAJAAkAgAUHg3QBGDQAgACABaiICQQhqIgMvAQBFDQEgAigCACACQQRqKAIAEMWAgIAADAELIABBADYC6F0gAEIANwLgXQ8LIAJCADcCACADQQA2AgAgAUEMaiEBDAALC+wBAQV/AkAgAkH//wNxRQ0AIAFB//8DcSAAQf//A3FNDQAgAkH//wNxIgIgASAAa0H//wNxIgQgAiAESRshBSABQf//A3EhBiAAQf//A3EhAANAAkAgBSAAaiICIAZJDQADQCAAQf//A3EgAUH//wNxTw0DQbC26IAAIAAgAxC6gICAACAAQQFqIQAMAAsLAkBBAC8BxLbogABBDGwiBEUNAEEAKAKwtuiAACIHIABBAC8BwLbogAAiCGxBDGxqIAcgAiAIbEEMbGogBPwKAAALQQAoAri26IAAIABqQQE6AAAgAEEBaiEADAALCwuGAgEFfyOAgICAAEEQayIDJICAgIAAAkACQAJAIAAgACgC5F1BDGxqIgQvAQggAkH//wNxIgVJDQAgBCgCACEGDAELIANBBGogAkH//wNxIgUQxICAgAAgAy8BDA0BIAMoAgghByADKAIEIQYCQCAELwEIRQ0AIAQoAgAgBCgCBBDFgICAAAsgBCACOwEIIAQgBzYCBCAEIAY2AgALAkAgBUEMbCIFRQ0AIAYgASAF/AoAAAsgBCACOwEKIAAgACgC5F1BAWpB6AdwNgLkXQJAIAAoAuBdIgJB6AdPDQAgACACQQFqNgLgXQwBCyAAIAAoAuhdQQFqNgLoXQsgA0EQaiSAgICAAAvdAgEDf0EAIQICQCAAQQFqQf8BcSIDQQAtAIKSwIAAIgRPDQACQAJAAkAgA0EBdC8B3JHAgABBfmoOBAEDAwADCyAAQQJqQf8BcSIAIARPDQIgAEEBdC8B3JHAgAAhAEECIQIMAQsgAEEEakH/AXEiAyAETw0BIANBAXQvAdyRwIAAIQICQCAAQQJqQf8BcUEBdC8B3JHAgAAiAyAAQQNqQf8BcUEBdC8B3JHAgAAiAEcNACAAIAJB//8DcUcNAEEEIQICQCADQf8BcSIAQQhPDQBBECEADAILAkAgAEH4AU0NAEHnASEADAILIANBeGpB/wFxQQpuQegBaiIAQf8BIABB/wFJGyEADAELIANBBWxB/wBqQf//A3FB/wFuQSRsIABBBWxB/wBqQf//A3FB/wFuQQZsaiACQQVsQf8AakH//wNxQf8BbmpBEGohAEEEIQILIAEgADsBAAsgAguKAQEBf0EAQQAvAda56IAAOwHkueiAAEEAQQAvAdi56IAAOwHeueiAAEEAQQAoAdq56IAANgLgueiAAEEAQQAtALvM8IAAOgC6vOiAAEEAQQAtAJ+66IAAQQdsIgAoAJG66IAANgGyvOiAAEEAIABBlLrogABqKAAANgC1vOiAAEEAQQA6ALzM8IAAC38BAX9BAEEALwHkueiAADsB1rnogABBAEEALwHeueiAADsB2LnogABBAEEAKALgueiAADYB2rnogABBAEEALQC6vOiAADoAu8zwgABBAC0An7rogABBB2wiAEEAKAGyvOiAADYAkbrogAAgAEGUuuiAAGpBACgAtbzogAA2AAAL7gIBBX8CQCAAQf//A3FBAC8BxrbogABPDQAgAUH//wNxQQAvAcS26IAAQf//A3FPDQACQAJAAkACQAJAQQAoArC26IAAIgNBAC8BwLbogAAgAEH//wNxIgBsIgRBDGxqIgUgAUH//wNxIgZBDGxqIgctAAkOAwAFAQULIAZFDQEgBSABQX9qQf//A3FBDGxqIgEtAAlBAkcNASABIAIpAgA3AgAgAUEIaiACQQhqKAIANgIAQQAvAcC26IAAIABsIQRBACgCsLbogAAhAwwBCyAHIAIpAgA3AgAgB0EIaiACQQhqKAIANgIAIAFBAWoiAUH//wNxQQAvAcS26IAATw0CQQAoArC26IAAQQAvAcC26IAAIABsQQxsaiABQf//A3FBDGxqIgEtAAlFDQEMAgsgAyAEQQxsaiAGQQxsaiEBCyABIAIpAgA3AgAgAUEIaiACQQhqKAIANgIAC0EAKAK4tuiAACAAakEBOgAACwudAQEDfyOAgICAAEEQayIDJICAgIAAQQAhBAN/AkAgAkH//wNxIgUNACABQf8BcSECIANBC2pBf2ohBQJAA0AgBEUNASAAIAJqIAUgBGotAAA6AAAgAkEBaiECIARBf2ohBAwACwsgA0EQaiSAgICAACACDwsgA0ELaiAEaiACIAVBCm4iBUEKbGtBMHI6AAAgBEEBaiEEIAUhAgwACwvuAQMBfwF+AX8jgICAgABBIGsiAiSAgICAACACIAGtQgx+IgNCIIinIgRBAEc6ABwCQAJAAkAgBEUNAEKAgICAICEDDAELAkACQCADpyIEDQBC/P///w8hAwwBC0IAQoCAgIAgQQApA5iAwIAAIgOnIARBAkEAIANCIIinKAIAEYGAgIAAgICAgAAiBBsgBK2EIQMgBEUNAQsgAiABNgIUIAIgAz4CECACQQA7ARggAkEQaiEBDAELIAIgA0IgiD0BDCACQQRqIQELIAAgASkCADcCACAAQQhqIAFBCGooAgA2AgAgAkEgaiSAgICAAAsdAAJAIAFFDQAgASAAIAFBDGxBAiABEMaAgIAACwvQAQECfyOAgICAAEEQayIFJICAgIAAIAUgA0EfcToADwJAAkBBICACQQRqIgJBASADdCIDIAIgA0sbIgNBf2pnayICQf//A3FBfWoiBkENTw0AIAFCASACrIanakF8aiAGQQJ0IgMoAuTS8oAANgIAIAMgATYC5NLygAAMAQsgAUIBQSAgA0GDgARqQRB2QX9qZ2siA61C//8Dg4anQRB0akF8aiADQf//A3FBAnQiAygCmNPygAA2AgAgAyABNgKY0/KAAAsgBUEQaiSAgICAAAuEBQEBfwJAIABBAXFBAC0An7rogABGDQBBACgCrLbogAAiAkUNAAJAAkACQCAAQQFxRQ0AIAJBAC8B/LnogABBAC8B+rnogAAQyICAgABB//8DcQ0DQQBBAC0AvszwgAA6AIe66IAAQQBBAC8B5rnogAA7Aeq56IAAQQBBADsB5rnogAAgAUEBcUUNAUEAQQAvAeS56IAAOwH2ueiAAEEAQQAvAeK56IAAOwHsueiAAEEAQQAtALq86IAAOgCQuuiAAEEAQQAoAbK86IAANgCJuuiAAEEAQQAoALW86IAANgCMuuiAAEEAQQAoAd656IAAQRB3NgHyueiAAAwBCyACEMmAgIAAQQBBAC8B6rnogAA7Aea56IAAQQBBADoAn7rogAACQCABQQFxRQ0AQQBBAC8B8rnogAA7AeC56IAAQQBBAC8B7LnogAA7AeK56IAAQQBBAC0AkLrogAA6ALq86IAAQQBBACgAibrogAA2AbK86IAAQQBBACgAjLrogAA2ALW86IAAQQBBAC8B9rnogAAiAEEALwH6ueiAAEF/akH//wNxIgEgACABSRs7AeS56IAAQQBBAC8B9LnogAAiAEEALwH8ueiAAEF/akH//wNxIgEgACABSRs7Ad656IAAQQBBADoAvMzwgABBAEEALQCHuuiAADoAvszwgAALQQAhAANAIABBAC8B+rnogAAiAU8NAkEAKAK4tuiAACAAakEBOgAAIABBAWohAAwACwsgAhDJgICAAEGwtuiAAEEALwH8ueiAAEEALwH6ueiAABDKgICAAEEAQQE6AJ+66IAAQQAvAfq56IAAIQELQQAgATsB8LnogABBAEEAOwHuueiAAAsLuwMDCH8BfgF/I4CAgIAAQRBrIgMkgICAgAAgAC8BECIEIAFBgAgQzICAgAAhBSAALwESIgYgAkGABBDMgICAACEHAkACQCAEIAVB//8DcSICRw0AQQAhASAHQf//A3EgBkH//wNxRg0BCyADIAdB//8DcSIIIAJsEMSAgIAAIAMvAQgiAQ0AIAMoAgQhCSADKAIAIQoCQAJAQQANAEEAKQOYgMCAACILpyAIQQBBACALQiCIpygCABGBgICAAICAgIAAIgYNAQsgCiAJEMWAgIAAQQIhAQwBCwJAIAhFDQAgBkEBIAj8CwALIAJBDGwhDEEAIQEgCiECAkADQCABIAAvARZPDQECQCAALwEUQQxsIgRFDQAgAiAAKAIAIAEgAC8BEGxBDGxqIAT8CgAACyAGIAFqIAAoAgggAWotAAA6AAAgAiAMaiECIAFBAWohAQwACwsCQCAALwEQRQ0AIAAoAgAgACgCBBDFgICAACAAKAIIIAAoAgwQzYCAgAALIAAgBzsBEiAAIAU7ARAgACAINgIMIAAgBjYCCCAAIAk2AgQgACAKNgIAQQAhAQsgA0EQaiSAgICAACABC0QBBH9BACEBAkADQCABQRhGDQEgAUGwtuiAAGoiAi0AACEDIAIgACABaiIELQAAOgAAIAQgAzoAACABQQFqIQEMAAsLC10AAkAgACABIAIQyICAgABB//8DcQ0AIAAgAjsBFiAAIAE7ARRBACEBAkADQCABQf//A3EgAkH//wNxTw0BIAAgARDLgICAACABQQFqIQEgAC8BFiECDAALCw8LAAsSACAAIAFBuIDAgAAQuoCAgAALUwAgAEH//wNxIgBBASAAQQFLGyEAIAFB//8DcSEBIAJB//8DcSECAkADQCAAQf//A3EgAU8NASAAQQF0Qf7/A3EiACACIAAgAkkbIQAMAAsLIAALGgACQCABRQ0AIAEgACABQQAgARDGgICAAAsLDgAgAEKAgICA8AA3AgALBABBBAsEAEEAC6cCAgF+Bn9CACEFAkAgA0UNACADQX9qIQYgAiEHAkACQANAIAEoAgggASgCDCIIayEJIAEoAgQgCGohCiADQX9qIgNFDQECQCAHQQRqKAIAIgggCSAIIAlJGyILRQ0AIAogBygCACAL/AoAAAsgB0EIaiEHIAEgASgCDCALajYCDCAIIAlNDQAMAgsLIAIgBkEDdGoiBygCACELAkACQCAHKAIEIgcOAgMAAQsCQCAJRQ0AIAogCy0AACAJ/AsACyABIAEoAgwgCWo2AgwMAQsDQAJAIAcgCSAJIAdLGyIIRQ0AIAogCyAI/AoAAAsgASABKAIMIAhqNgIMIAogB2ohCiAJIAdJIQggCSAHayEJIAhFDQALC0KAgICAwAAhBQsgACAFNwIACwgAQbCS8oAAC5UCAQR/I4CAgIAAQRBrIgQkgICAgAAgBCACQR9xOgAPQQAhBQJAQX8gAUEEaiIGIAYgAUkbIgFBASACdCICIAEgAksbIgFBf2pnIgJFDQACQAJAQSAgAmsiAkH//wNxQX1qIgZBDU8NAEIBIAKtQv//A4OGpyEHIAZBAnQiAigC5NLygAAiAUUNASACQeTS8oAAaiAHIAFqQXxqKAIANgIAIAEhBQwCCyABQYOABGpBEHYQ1ICAgAAhBQwBCyACQbDS8oAAaiEBAkAgAigCsNLygAAiAkH//wNxDQBBARDUgICAACICRQ0BIAEgAiAHajYCACACIQUMAQsgASACIAdqNgIAIAIhBQsgBEEQaiSAgICAACAFC2QBAn9CAUEgIABBf2pnayIArUL//wODhqchAQJAIABB//8DcUECdCICKAKY0/KAACIARQ0AIAJBmNPygABqIAFBEHQgAGpBfGooAgA2AgAgAA8LQQAgAUAAIgBBEHQgAEF/RhsLHAAgAUEAIAQgBCACIAMgBCAEENaAgIAAQQFxGwvgAQECfyOAgICAAEEQayIGJICAgIAAIAYgA0EfcToAD0F/IARBBGoiByAHIARJGyIEQQEgA3QiAyAEIANLGyEEAkACQAJAIAJBBGoiAiADIAIgA0sbIgNBf2pnIgJBb2pBDEsNACAEQX9qZyIDDQFBACEDDAILQgFBICADQYOABGpBEHZBf2pna61C//8Dg4anQgFBICAEQYOABGpBEHZBf2pna61C//8Dg4anRiEDDAELQgFBICACa61C//8Dg4anQgFBICADa61C//8Dg4anRiEDCyAGQRBqJICAgIAAIAMLvQ0BDH8jgICAgABBEGsiAiSAgICAAEGABCABQf//A3EiA0EBIANBAUsbIgNBgAQgA0GABEkbIAFBgARLGyEEQQAvAfq56IAAIQUCQAJAQYAIIABB//8DcSIBQQEgAUEBSxsiAUGACCABQYAISRsgAEGACEsbIgZBAC8B/LnogAAiB0cNACAEIAVB//8DcUYNAQtBsLbogAAgBiAEEMiAgIAAQf//A3ENAAJAQQAtAJ+66IAARQ0AQQAoAqy26IAAIAYgBBDIgICAAEH//wNxDQELAkAgBiAHSSIIRQ0AIAQgBUH//wNxIgEgBCABSRshCSAGQQxsIQpBACELQQAhDANAIAwgCUYNASAKIQAgBiEBAkADQCAHIAFB//8DcUYNAUEAKAKwtuiAACALQQAvAcC26IAAbGogAGoiA0EAKQK4gMCAADcCACADQQhqQQAoAsCAwIAANgIAIABBDGohACABQQFqIQEMAAsLIAtBDGohCyAMQQFqIQwMAAsLAkAgBCAFQf//A3EiC08NAEEALwHkueiAACIBIARJIgANAEEAIAEgBGtBAWoiASAAGyEMAkBBAC0An7rogAANAEEAKAKglsCAAEUNACAGIAcgCBshACABQf//A3EhA0EAIQEDQCADIAFGDQFBsLbogAAgASAAENiAgIAAQQAoAqCWwIAAQQAoArC26IAAIAFBAC8BwLbogABsQQxsaiAAEL6AgIAAIAFBAWohAQwACwtBACAFIAxBuIDAgAAQvYCAgABBAEEAQQAvAeS56IAAIgEgDEH//wNxayIAIAAgAUsbOwHkueiAAAtBACEBQQAgBDsB+rnogABBACAGOwH8ueiAAEEAIAQ7Aca26IAAQQAgBjsBxLbogAACQCAEIAtNDQACQEEALQCfuuiAAA0AQQAhAUEAKAKglsCAACIARQ0AIAAoAuBdIgAgBCAFa0H//wNxIgMgACADSRsiCEUNAEEAIAUgCGogCEG4gMCAABCwgICAAEEAIQoCQANAIAogCEYNAUEAKAKglsCAACIBKALgXSIARQ0BIAEgAEF/ajYC4F0gASABKALkXUHnB2pB6AdwIgA2AuRdIApBf3MgCGoiDUH//wNxIQkgASAAQQxsaiELQQAhAQNAAkACQCABIAZGDQBBACgCsLbogABBAC8BwLbogAAgCWxBDGxqIAFBDGwiDGohA0G4gMCAACEAIAEgCy8BCk8NASACQQhqIAsoAgAgDGoiAEEIaigCADYCACACIAApAgA3AwAgAiEADAELQbC26IAAIA0gBhDYgICAAEEAKAK4tuiAACAJakEBOgAAIApBAWohCgwCCyADIAApAgA3AgAgA0EIaiAAQQhqKAIANgIAIAFBAWohAQwACwsLQQBBAC8B5LnogAAgCGo7AeS56IAAIAghAQsgASAFaiEBA0AgAUH//wNxIARPDQFBsLbogAAgARDLgICAACABQQFqIQEMAAsLAkAgBiAHTQ0AIAQgBUH//wNxIgEgBCABSRshDCAGIAdrIQkgB0EMbCEFQQAhC0EAIQcDQCAHIAxGDQEgCSEBIAUhAAJAA0AgAUUNAUEAKAKwtuiAACALQQAvAcC26IAAbGogAGoiA0EAKQK4gMCAADcCACADQQhqQQAoAsCAwIAANgIAIAFBf2ohASAAQQxqIQAMAAsLQQAoAri26IAAIAdqQQE6AAAgC0EMaiELIAdBAWohBwwACwtBACAEOwHwueiAAEEAQQA7Ae656IAAQQAhAQJAA0AgAUH//wNxIARPDQFBsLbogAAgAUEALwH8ueiAABDYgICAACABQQFqIQEMAAsLAkBBAC8B3rnogAAgBkkNAEEAIAZBf2o7Ad656IAACwJAQQAvAeS56IAAIARJDQBBACAEQX9qOwHkueiAAAtBACEBAkADQCAEIAFGDQFBACgCuLbogAAgAWpBAToAACABQQFqIQEMAAsLQQAtAJ+66IAARQ0AQQAoAqy26IAAIgsvARYhByALIAQ7ARYgCy8BFCEMIAsgBjsBFCAGIAxrQf//A3FBDGwhCSAMQQxsIQVBACEDA0AgAyAERg0BAkACQCADIAdJDQAgCyADEMuAgIAADAELAkAgBiAMTQ0AIAsoAgAgAyALLwEQbEEMbGogBWohASAJIQADQCAARQ0BIAFBCGpBACgCwIDAgAA2AgAgAUEAKQK4gMCAADcCACAAQXRqIQAgAUEMaiEBDAALCyALIAMgBhDYgICAACALKAIIIANqQQE6AAALIANBAWohAwwACwsgAkEQaiSAgICAAAuwAgEHfyABQf//A3EhA0EAIQFBACEEA0ACQAJAIAFB//8DcSIFIAJB//8DcSIGTw0AAkACQAJAIAAoAgAgAC8BECADbEEMbGoiByAFQQxsaiIILQAJDgMABAECCwJAIAVFDQAgByABQX9qQf//A3FBDGxqLQAJQQJGDQQLIAhBACkCuIDAgAA3AgAgCEEIakEAKALAgMCAADYCAEEBIQQMAwsCQAJAIAFBAWoiCUH//wNxIgUgBk8NACAHIAVBDGxqLQAJRQ0BCyAIQQApAriAwIAANwIAIAhBCGpBACgCwIDAgAA2AgBBASEEIAkhAQwECyABQQJqIQEMAwtBASEEIAhBCWpBAToAAAwBCwJAIARBAXFFDQAgACgCCCADakEBOgAACw8LIAFBAWohAQwACwv7CAENfyOAgICAAEHAujBrIgIkgICAgABBgAQgAUEBIAEbIAFBgARLGyEBQYAIIABBASAAGyAAQYAISxshAAJAAkBBAC0A2NPygABFDQAgACABEK+AgIAAAkBBAC8B7NPygABFDQBBACgC3NPygABBACgC4NPygAAQxYCAgABBACgC5NPygABBACgC6NPygAAQzYCAgAALQQBCADcC7NPygABBAEIANwLk0/KAAEEAQgA3AtzT8oAADAELIAJBsLowaiIDQgA3AwAgAkG4ujBqIgRCADcDACACQgA3A6i6MCACQai6MGogACABEMqAgIAAIAJBADoAl7owIAJBAToAlLowIAJBADoAmLowIAJBAToAnLowIAJBADoAnrowIAJBADoAoLowIAJBADoApLowIAJBADoAorowIAJBADoAo7owIAJBADoAobowIAJBADoAm7owIAJBADoAmrowAkBB3KQoRQ0AIAJBjJIIakEAQdykKPwLAAsgAkH4tjBqIAQpAwA3AgAgAkHwtjBqIAMpAwA3AgAgAiACKQOoujA3Aui2MAJAQZIDRQ0AIAJBgLcwakEAQZID/AsACyACQYeSCGpBADYAACACQQA2AYSSCCACLQCaujAhAyACLQCbujAhBCACLQCkujAhBSACLQCjujAhBiACLQCiujAhByACLQChujAhCCACLQCgujAhCSACLQCeujAhCiACLQCcujAhCwJAQYEQRQ0AIAJBgIAIakEAQYEQ/AsACyACLQCYujAhDCACLQCXujAhDSACLQCUujAhDgJAQYaoKEUNAEHUkcCAACACQYySCGpBhqgo/AoAAAtBACALOgCIuuiAAEEAIAo6AIa66IAAQQAgCToAhbrogABBACAIOgCDuuiAAEEAIAc6AIK66IAAQQAgBjoAgbrogABBACAFOgCAuuiAAEEAIAA7Afy56IAAQQAgATsB+rnogABBAEKAAjcB8rnogABBACABOwHwueiAAEEAQYACNgLsueiAAEEAQgA3AuS56IAAQQBBgAI7AeK56IAAQQBCgIKAiICAgIABNwHaueiAAEEAQQA6AIe66IAAQQBBADoAhLrogABBAEEAOwH+ueiAAEEAQgA3AJe66IAAQQBCADcAkbrogABBAEIANwCJuuiAAEEAIAQ6AJ+66IAAQQBCADcCoLrogABBAEIANwKouuiAAEEAQQA7AbC66IAAAkBBhwJFDQBBsrrogAAgAkGEkAhqQYcC/AoAAAtBACADOgC5vOiAAEEAQQA6ALq86IAAAkBBgZAIRQ0AQbu86IAA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AAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAA==`;export{e as WASM_BASE64};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/wc-shell-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/wc-shell-C0Y0f1tt.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/preload-helper-Czpn1I53.js","assets/logger-DDBAeTLF.js","assets/mime-types-D0xZwlMO.js","assets/base64-ELzoYfwP.js","assets/bridge-protocol-C52CnDIj.js","assets/account-store-EUAU8ivx.js","assets/core-DzRw0pz2.js","assets/compat-0YnuwvMn.js","assets/models-D9KYIFyv.js","assets/diagnostics-B-5VkVir.js","assets/env-api-keys-BMbk-OAv.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-C88RzzVZ.js","assets/azure-openai-config--zABV6W_.js","assets/utf16-clip-CGL7omVm.js","assets/feature-flags-DvsApnS-.js","assets/proxied-fetch-4VBgrEIu.js","assets/proxy-error-BSFYY7jj.js","assets/api-endpoint-DuEQRZ4g.js","assets/runtime-env-Dlaokqg1.js","assets/secret-topology-hMRoGGjt.js","assets/float-topology-C_iRKPQK.js","assets/secrets-bridge-client-D734Xx8G.js","assets/port-bridge-client-B-gpiOVR.js","assets/panel-rpc-accessor-B4BfPLSo.js","assets/image-markers-q8JQTtid.js","assets/tool-ui-eSQ1g2I1.js","assets/providers-CEBpTOtO.js","assets/stored-accounts-ChNHYF68.js","assets/bedrock-camp-compat-D6dUCn_T.js","assets/bedrock-camp-extra-models-COVvjLB5.js","assets/claude-model-version-3MWQoaco.js","assets/renamed-providers-DDe6My59.js","assets/same-file-identity-OexpsaSD.js","assets/telemetry-B0sKnLBU.js","assets/types-D8gIX-W-.js","assets/icons-BUdZEBvI.js","assets/wc-shell-WkeczD9x.css","assets/wc-secret-request-CxHPy2MF.js","assets/secret-request-registry-DrOMKR1H.js"])))=>i.map(i=>d[i]);
|
|
2
2
|
import{t as e}from"./preload-helper-Czpn1I53.js";import{r as t,t as n}from"./base64-ELzoYfwP.js";import{t as r}from"./permissions-surface-registry-CilCRwhh.js";var i=8,a=2e3,o=[`/workspace`,`/shared`,`/tmp`],s=8,c=new Set([`node_modules`,`.git`]),l=1e4,u=/\.(png|jpe?g|gif|webp|svg|avif)$/i,d=4194304,f=262144;function p(){return`att-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}function m(e){return{png:`image/png`,jpg:`image/jpeg`,jpeg:`image/jpeg`,gif:`image/gif`,webp:`image/webp`,svg:`image/svg+xml`,avif:`image/avif`,md:`text/markdown`,json:`application/json`}[e.toLowerCase().split(`.`).pop()??``]??`text/plain`}function h(e,n){let r={id:p(),name:e,size:n.length};if(u.test(e))return n.length>d?{...r,mimeType:m(e),kind:`image`,error:`image too large to inline`}:{...r,mimeType:m(e),kind:`image`,data:t(n)};let i={...r,mimeType:m(e),kind:`file`};return n.length>f?{...i,error:`file too large to inline`}:i}async function g(e){let t=new Uint8Array(await e.arrayBuffer()),n=h(e.name,t);return e.type?{...n,mimeType:e.type}:n}function _(e,t){let n=t.match(/^data:(image\/[^;]+);base64,(.+)$/);return n?{id:p(),name:e,mimeType:n[1],size:Math.floor(n[2].length*3/4),kind:`image`,data:n[2]}:null}var v=`/tmp/upload`,y=1568;async function b(e,t,n){await e.mkdir(v,{recursive:!0}).catch(()=>void 0);let r=`${v}/${Date.now()}-${t.replace(/[^A-Za-z0-9._-]+/g,`_`)}`;return await e.writeFile(r,n),r}async function x(e,t=y){let n=new Image;n.src=e;try{await n.decode()}catch{return e}let r=Math.min(1,t/Math.max(n.naturalWidth,n.naturalHeight,1));if(r>=1)return e;let i=document.createElement(`canvas`);return i.width=Math.round(n.naturalWidth*r),i.height=Math.round(n.naturalHeight*r),i.getContext(`2d`)?.drawImage(n,0,0,i.width,i.height),i.toDataURL(`image/jpeg`,.85)}async function S(e,t,r){let i=_(e,t);if(!i)return null;let a;return r&&i.data&&(a=await b(r,e,n(i.data)).catch(()=>void 0)),{..._(e,await x(t).catch(()=>t))??i,name:e,path:a}}async function C(e,t,n){if(!n)return null;let r=new Uint8Array(await t.arrayBuffer()),i=await b(n,e,r).catch(()=>void 0);return i?{id:p(),name:e,mimeType:t.type||`video/webm`,size:r.length,kind:`file`,path:i}:null}async function w(e){let t=[],n=o.map(e=>({dir:e,depth:0}));for(;n.length>0&&t.length<a;){let{dir:r,depth:i}=n.shift(),o;try{o=await e.readDir(r)}catch{continue}for(let e of o){let o=`${r}/${e.name}`;if(e.type===`directory`)i<s&&!c.has(e.name)&&n.push({dir:o,depth:i+1});else if(t.push(o),t.length>=a)break}}return t}function T(e){let t=null;return async n=>{let r=await e.openReader();(!t||Date.now()-t.at>l)&&(t={at:Date.now(),paths:await w(r)});let a=e=>n===``||e.toLowerCase().includes(n),o=t.paths.filter(e=>a(e)).slice(0,i).map(e=>({id:e,label:e.split(`/`).pop()??e,sub:e.slice(0,e.lastIndexOf(`/`))})),s=[];try{s=(await r.readDir(`/workspace/skills`)).filter(e=>e.type===`directory`&&a(e.name)).slice(0,i).map(e=>({id:e.name,label:e.name}))}catch{}let c=(await e.listConversations().catch(()=>[])).filter(e=>a(e.label)).slice(0,i);return[{kind:`file`,label:`Files`,icon:`file`,entries:o},{kind:`skill`,label:`Skills`,icon:`sparkles`,entries:s},{kind:`conversation`,label:`Conversations`,icon:`message-square`,entries:c}]}}var E=`slicc-wc-attach-style`,D=`
|
|
3
3
|
.wcatt{display:flex;flex-wrap:wrap;gap:6px;padding:8px 10px 0;font-family:var(--ui);}
|
|
4
4
|
.wcatt:empty{display:none;}
|
|
@@ -10,4 +10,4 @@ import{t as e}from"./preload-helper-Czpn1I53.js";import{r as t,t as n}from"./bas
|
|
|
10
10
|
.wcatt__x{appearance:none;background:none;border:none;cursor:pointer;color:var(--txt-3);
|
|
11
11
|
font:inherit;padding:0;line-height:1;}
|
|
12
12
|
.wcatt__x:hover{color:var(--ink);}
|
|
13
|
-
`,O=class{#e;#t=[];constructor(e){if(!document.getElementById(E)){let e=document.createElement(`style`);e.id=E,e.textContent=D,document.head.appendChild(e)}this.#e=document.createElement(`div`),this.#e.className=`wcatt`,e.prepend(this.#e)}get items(){return this.#t}add(e){this.#t.push(e),this.#n()}take(){let e=this.#t;return this.#t=[],this.#n(),e}#n(){this.#e.replaceChildren(...this.#t.map(e=>this.#r(e)))}#r(t){let n=document.createElement(`span`);if(n.className=`wcatt__chip`,t.kind===`image`&&t.data){let r=document.createElement(`img`);r.className=`wcatt__thumb`,r.src=`data:${t.mimeType};base64,${t.data}`,r.alt=t.name,r.addEventListener(`click`,()=>{e(async()=>{let{SliccImagePreview:e}=await import(`./wc-shell-
|
|
13
|
+
`,O=class{#e;#t=[];constructor(e){if(!document.getElementById(E)){let e=document.createElement(`style`);e.id=E,e.textContent=D,document.head.appendChild(e)}this.#e=document.createElement(`div`),this.#e.className=`wcatt`,e.prepend(this.#e)}get items(){return this.#t}add(e){this.#t.push(e),this.#n()}take(){let e=this.#t;return this.#t=[],this.#n(),e}#n(){this.#e.replaceChildren(...this.#t.map(e=>this.#r(e)))}#r(t){let n=document.createElement(`span`);if(n.className=`wcatt__chip`,t.kind===`image`&&t.data){let r=document.createElement(`img`);r.className=`wcatt__thumb`,r.src=`data:${t.mimeType};base64,${t.data}`,r.alt=t.name,r.addEventListener(`click`,()=>{e(async()=>{let{SliccImagePreview:e}=await import(`./wc-shell-C0Y0f1tt.js`).then(e=>e.N);return{SliccImagePreview:e}},__vite__mapDeps([0,1,2,3,4,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,31,32,33,34,35,36,37,38,39,40])).then(({SliccImagePreview:e})=>e.show(r.src,r))}),n.append(r)}let r=document.createElement(`span`);r.className=`wcatt__name`,r.textContent=t.name;let i=document.createElement(`button`);return i.type=`button`,i.className=`wcatt__x`,i.setAttribute(`aria-label`,`Remove ${t.name}`),i.textContent=`×`,i.addEventListener(`click`,()=>{this.#t=this.#t.filter(e=>e.id!==t.id),this.#n()}),n.append(r,i),n}};async function k(e){let t=document.createElement(`video`);t.srcObject=e,t.muted=!0;try{await t.play(),await new Promise(e=>requestAnimationFrame(()=>e(null)));let e=document.createElement(`canvas`);return e.width=t.videoWidth,e.height=t.videoHeight,e.width===0||e.height===0?null:(e.getContext(`2d`)?.drawImage(t,0,0),e.toDataURL(`image/png`))}finally{for(let t of e.getTracks())t.stop();t.srcObject=null}}async function A(){let e=r();if(e){let t=await e.request(`screenshare`,{constraints:{video:!0}});if(!t)return null;let n=t.stream;return k(n)}return k(await navigator.mediaDevices.getDisplayMedia({video:!0}))}async function j(e,t){let n=r();if(!n)return null;let i=await n.prompt({kinds:e,description:t,skipIfGranted:!0});for(let e of i.grants)if(e.kind===`camera`||e.kind===`microphone`||e.kind===`screenshare`)for(let t of e.stream.getTracks())t.stop();return i.status===`granted`}var M=`slicc_camera_device`,N=`slicc_microphone_device`,P=[`position:absolute`,`left:50%`,`right:auto`,`transform:translateX(-50%)`,`bottom:56px`,`width:calc(100% - 32px)`,`max-width:680px`,`z-index:3`].join(`;`);async function F(e,t){if(await j([`camera`,`microphone`],`Slicc is requesting access to your camera and microphone to capture a photo or video for this conversation.`)===!1)return null;let n=document.createElement(`slicc-composer-capture`),r=localStorage.getItem(M);r&&n.setAttribute(`preferred-device`,r);let i=localStorage.getItem(N);i&&n.setAttribute(`preferred-audio-device`,i),n.style.cssText=P,n.hidden=!0,n.addEventListener(`slicc-capture-device-change`,e=>{let t=e.detail;if(!t?.deviceId)return;let n=t.kind===`microphone`?N:M;localStorage.setItem(n,t.deviceId)}),e.append(n);try{return await n.open(t)}finally{n.remove()}}async function I(e,t,n){if(!e.dataUrl)return;let r=`photo-${Date.now()}.png`,i=await t.openWriter?.().catch(()=>null)??null,a=await S(r,e.dataUrl,i);a&&n.add(a)}async function L(e,t,n){if(!e.blob)return;let r=/webm/i.test(e.mimeType)?`webm`:`bin`,i=`video-${Date.now()}.${r}`,a=await t.openWriter?.().catch(()=>null)??null,o=await C(i,e.blob,a);o&&n.add(o)}async function R(e,t,n){if(e.mode===`photo`){if(!t.composer){let e=await z();if(!e)return;let r=await S(`photo-${Date.now()}.png`,e,await t.openWriter?.().catch(()=>null)??null);r&&n.add(r);return}let e=await F(t.composer,`photo`);if(!e)return;e.kind===`image`?await I(e,t,n):e.kind===`video`&&await L(e,t,n);return}let r=await A();if(!r)return;let i=await S(`screenshot-${Date.now()}.png`,r,await t.openWriter?.().catch(()=>null)??null);i&&n.add(i)}async function z(){if(await j([`camera`],`Slicc is requesting access to your camera to capture a photo for this conversation.`)===!1)return null;let e=document.createElement(`slicc-camera-dialog`),t=localStorage.getItem(M);t&&e.setAttribute(`preferred-device`,t),e.addEventListener(`slicc-camera-device-change`,e=>{let t=e.detail?.deviceId;t&&localStorage.setItem(M,t)}),document.body.append(e);try{return await e.open()}finally{e.remove()}}async function B(e,t,n){let r=await n.openWriter?.().catch(()=>null)??null,i=r?await b(r,e.name,t).catch(()=>void 0):void 0;return i?{...e,error:void 0,path:i}:e.kind===`image`?e:{...e,error:`could not be saved to the virtual filesystem`}}async function V(e,t,n){let r=await(await t()).readFile(e,{encoding:`binary`});return typeof r==`string`?(n.error(`VFS image pick returned text, not bytes — skipping the inline copy`,e),null):r}async function H(e,t,n){let r=0;try{r=(await(await n()).stat(e)).size}catch{}return{id:p(),name:t,mimeType:m(t),size:r,kind:`file`,path:e}}async function U(e,t,n,r){let i=e.split(`/`).pop()??e;if(u.test(i)){let a=await V(e,t,r);if(a){let t=h(i,a);n.add({...t,error:void 0,path:e});return}}n.add(await H(e,i,t))}function W(e,t){let n=t.value??t.getAttribute(`value`)??``,r=n&&!n.endsWith(` `)?` `:``;t.setAttribute(`value`,`${n}${r}${e}`)}function G(e,t){W(`Use the "${e}" skill: `,t)}async function K(t){let{requestSecretFromUser:n}=await e(async()=>{let{requestSecretFromUser:e}=await import(`./wc-secret-request-CxHPy2MF.js`);return{requestSecretFromUser:e}},__vite__mapDeps([41,3,0,1,2,4,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,31,32,33,34,35,36,37,38,39,40,42])),r=await n();if(!r.stored)return;let i=r.domains.join(`, `),a=r.persisted?`saved`:`this session only`;W(r.maskedValue?`I stored the secret ${r.name} (masked value ${r.maskedValue}, scope: ${i}, ${a}). Use the masked value — SLICC swaps in the real one at the network boundary. `:`I stored the secret ${r.name} (scope: ${i}, ${a}). Run \`secret get ${r.name}\` for its masked value. `,t.inputCard)}function q(e){return e?.name===`NotAllowedError`}async function J(e,t,n){if(e.kind===`upload`&&e.file instanceof File){let r=new Uint8Array(await e.file.arrayBuffer());n.add(await B(await g(e.file),r,t))}else e.kind===`capture`?await R(e,t,n):e.kind===`file`&&typeof e.id==`string`&&t.openReader?await U(e.id,t.openReader,n,t.log):e.kind===`secret`?await K(t):e.kind===`skill`&&typeof e.label==`string`?G(e.label,t.inputCard):e.kind===`conversation`&&typeof e.id==`string`&&t.freezer.dispatchEvent(new CustomEvent(`freezer-card-select`,{bubbles:!0,composed:!0,detail:{slug:e.id}}))}function Y(e){let{inputCard:t,log:n}=e,r=new O(t),i=t.querySelector(`slicc-add-menu`);return i&&(e.openReader?i.provider=T({openReader:e.openReader,listConversations:e.listConversations??(async()=>[])}):i.results=[],i.setAttribute(`global-drop`,``),e.noCamera&&i.setAttribute(`no-camera`,``),e.secretEntry&&i.setAttribute(`secret-action`,``)),t.addEventListener(`slicc-add`,t=>{let i=t.detail;i&&J(i,e,r).catch(e=>{q(e)||n.error(`WC add-menu action failed`,e)})}),t.addEventListener(`paste`,t=>{let i=t.clipboardData?.items;if(i)for(let a of Array.from(i)){if(!a.type.startsWith(`image/`))continue;let i=a.getAsFile();if(!i)continue;t.preventDefault();let o=(i.type.split(`/`)[1]||`png`).replace(/[^a-z0-9]/gi,``)||`png`,s=i.name?i:new File([i],`pasted-image.${o}`,{type:i.type});J({kind:`upload`,name:s.name,size:s.size,file:s},e,r).catch(e=>n.error(`Paste image failed`,e))}}),r}export{Y as wireWcAttach};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./slicc-app-url-BKHBBuTR.js";import{teleportTabOneWay as t}from"./tab-teleport-C8QSKgl0.js";import{bindComputerOverlay as n,mergeOverlayTabs as r,parseComputerOverlayId as i}from"./wc-computers-
|
|
1
|
+
import{t as e}from"./slicc-app-url-BKHBBuTR.js";import{teleportTabOneWay as t}from"./tab-teleport-C8QSKgl0.js";import{bindComputerOverlay as n,mergeOverlayTabs as r,parseComputerOverlayId as i}from"./wc-computers-BrBtwbOb.js";var a=5e3;function o(t){let{browser:n,log:r}=t,i=async()=>{try{let t=await n.listAllTargets(),r=t.find(e=>e.url===location.href);if(r)return r.targetId;let i=location?.origin?[location.origin]:void 0;return t.find(t=>e(t.url??``,{selfOrigins:i}))?.targetId??null}catch(e){return r.warn(`WC browser overlay: could not resolve the SLICC tab`,e),null}},o=null;return async e=>{let s=t.agentTarget(),c=await i();if(await t.activate(e)){if(!c){r.warn(`WC browser overlay: peek cannot find the SLICC tab; staying put`,{target:e});return}o&&clearTimeout(o),o=setTimeout(()=>{o=null,(async()=>{try{await n.bringTabToFront(c),s&&s!==c&&await n.selectTab(s)}catch(e){r.error(`WC browser overlay: peek return failed`,e)}})()},a)}}}function s(a){let{refs:s,browser:c,log:l}=a,u=document.createElement(`slicc-tab-overlay`);u.setAttribute(`heading`,`Browser · tabs & computers`),document.body.append(u),n(u,l);let d=0,f=null,p=async()=>{u.hasAttribute(`open`)||(f=c.getAttachedTargetId());let t=++d;u.show();let n;try{n=await c.listAllTargets()}catch(e){l.error(`WC browser overlay: listing tabs failed`,e),u.tabs=r([]);return}if(t!==d)return;let i=location?.origin?[location.origin]:void 0;n=n.filter(t=>!e(t.url??``,{selfOrigins:i})),u.tabs=r(n.map(e=>({id:e.targetId,title:e.title||e.url||e.targetId,url:e.url})));for(let e of n){if(t!==d||!u.hasAttribute(`open`))return;try{let n=await c.withTab(e.targetId,e=>e.screenshot({format:`jpeg`,quality:72,maxWidth:a.thumbWidth??Math.round(560*Math.min(devicePixelRatio||1,2)),foregroundFallback:!1}));if(t!==d)return;u.tabs=u.tabs.map(t=>t.id===e.targetId?{...t,screenshot:`data:image/jpeg;base64,${n}`}:t)}catch(t){l.warn(`WC browser overlay: thumbnail failed`,{target:e.targetId,err:t})}}};s.overlaySurfaces.add(`browser`),s.dock.addEventListener(`slicc-dock-select`,e=>{e.detail?.id===`browser`&&(p(),s.dock.collapse?.())});let m=async e=>{try{if(e.includes(`:`)){let n=await t(c,{sourceTargetId:e,destination:{kind:`leader`}});return l.info(`WC browser overlay: pulled remote tab to leader`,{source:e,target:n.targetId,degraded:n.degraded}),u.hide(),!0}return await c.bringTabToFront(e),u.hide(),!0}catch(e){return l.error(`WC browser overlay: tab activate failed`,e),!1}};u.addEventListener(`tab-activate`,e=>{let t=e.detail.id;i(t)||m(t)});let h=o({browser:c,log:l,activate:m,agentTarget:()=>f});return u.addEventListener(`tab-peek`,e=>{let t=e.detail.id;if(!i(t)){if(t.includes(`:`)){m(t);return}h(t).catch(e=>l.error(`WC browser overlay: peek failed`,e))}}),u.addEventListener(`tab-close`,e=>{let t=e.detail.id;i(t)||c.closePage(t).then(()=>p()).catch(e=>l.error(`WC browser overlay: tab close failed`,e))}),{overlay:u,refresh:p}}export{s as wireWcBrowser};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{L as e,R as t,j as n}from"./wc-shell-
|
|
1
|
+
import{L as e,R as t,j as n}from"./wc-shell-C0Y0f1tt.js";import{r}from"./base64-ELzoYfwP.js";import{t as i}from"./image-markers-q8JQTtid.js";import{r as a,t as o}from"./scale-B8PGb3fG.js";import{E as s,T as c,w as l}from"./wc-live-Bj38qUgj.js";function u(e){let t=c(e.bytes);return`data:${s(t)??e.mime};base64,${r(t)}`}var d=`computer:`,f=4,ee=768,p=2,m=480,te={debug(){},info(){},warn(){},error(){}},h=null;function g(e){return`${d}${e}`}function _(e){return e.startsWith(`computer:`)?e.slice(9):null}function v(e){let t=e.trim().split(/\s+/);for(let e=0;e<t.length;e++)if(t[e]===`-c`||t[e]===`--computer`)return t[e+1]??null;return null}function y(e){for(let t of e.split(`
|
|
2
2
|
`)){let e=t.trim();if(!e.startsWith(`target: `))continue;let n=e.slice(8).trim();if(n)return n}return null}function b(e,t,n){return n||(v(e)??y(t))}function x(e){for(let t of e.split(`
|
|
3
3
|
`)){let e=t.trim();if(!e.startsWith(`screen: `))continue;let n=e.slice(8).trim();if(n)return n}return null}function S(e){return i(e).find(e=>e.kind===`image`&&e.parsed)?.parsed?.dataUrl??null}function C(e){let t=x(e);if(t)return{kind:`path`,path:t};let n=S(e);return n?{kind:`data`,src:n}:null}function w(e){if(e.kind!==`ssh`)return e.title;let t=e.capabilities.inputAllowed?`input`:`view-only`;return`${e.title} [${t}]`}function T(e,t){return{id:g(e.id),title:w(e),url:e.kind,screenshot:t?u(t):void 0,kind:`computer`,live:e.state===`live`,softKeys:e.softKeys?.map(e=>({label:e.label,keysym:e.keysym}))}}function E(e,t=l().list()){let n=l(),r=e.filter(e=>e.kind!==`computer`),i=t.map(e=>T(e,n.lastFrame(e.id)));return[...r,...i]}function D(e){return h?(e?.log&&(h.deps.log=e.log),e?.openFs&&(h.deps.openFs=e.openFs),h):(h={deps:{log:e?.log??te,openFs:e?.openFs},bound:new Map,overlayUnsubs:[],overlayWatchIds:new Map,lightboxId:null,lightboxWatchToken:null,lightboxOrigin:null,lightboxLive:!1,preview:null,installed:!1},h)}function O(e,t){e.append(n(t))}function k(e){let t=e.target,n=e.detail,r=b(n.command??t.command??``,n.output??t.output??``,n.computerId??t.computerId),i=n.toolCallId||t.toolCallId,a={el:t,toolCallId:i,computerId:r,watchToken:null,loadGen:0,frozenKey:null};D().bound.set(t,a),t.addEventListener(`computer-row-unbind`,j),r&&(t.computerId=r),r&&i&&l().recordInvocation(r,i),N()}function A(e){if(e.computerId)return;let t=b(e.el.command??``,e.el.output??``,e.el.computerId);t&&(e.computerId=t,e.el.computerId=t,e.toolCallId&&l().recordInvocation(t,e.toolCallId))}function j(e){let t=e.target,n=h;if(!n)return;let r=n.bound.get(t);if(r){if(n.bound.delete(t),t.removeEventListener(`computer-row-unbind`,j),r.watchToken!==null&&r.computerId)try{l().unwatch(r.computerId,r.watchToken)}catch(e){n.deps.log.warn(`WC computers: unwatch on row unbind failed`,e)}N()}}function M(e){let t=e.target,n=h?.bound.get(t),r=e.detail?.src;r&&K(t.frameMode===`live`?n?.computerId??null:null,r,t)}function N(){let e=h;if(e)for(let t of e.bound.values())P(t)}function P(t){A(t);let n=l(),r=t.computerId?n.get(t.computerId):null,i=C(t.el.output??``),a=t.computerId?n.lastFrame(t.computerId):null,o=t.computerId?n.newestInvocation(t.computerId):null,s=!!t.computerId&&r?.state===`live`&&o===t.toolCallId,c=e({computerLive:r?.state===`live`,newestToolCallId:o,toolCallId:t.toolCallId,hasFrame:!!i,hasPushedFrame:!!a});t.el.frameMode=c,F(t,s);let d=t.el.output??``;if(c===`live`&&a){t.loadGen+=1,t.frozenKey=null,t.el.frameSrc=u(a);return}if(c===`frozen`){let e=I(d);if(t.frozenKey===e)return;t.frozenKey=e,t.loadGen+=1,R(t,d,t.loadGen);return}t.loadGen+=1,t.frozenKey=null,t.el.frameSrc=null}function F(e,t){if(!e.computerId)return;let n=l();t&&e.watchToken===null?e.watchToken=n.watch(e.computerId,p,m):!t&&e.watchToken!==null&&(n.unwatch(e.computerId,e.watchToken),e.watchToken=null)}function I(e){return`${x(e)??``}\n${S(e)??``}`}function L(e,t,n){return h?.bound.get(e.el)!==e||e.loadGen!==t||e.el.frameMode!==`frozen`?!1:I(e.el.output??``)===I(n)}async function R(e,t,n){let r=x(t),i=null;r&&(i=await z(r)),i||=S(t),L(e,n,t)&&(e.el.frameSrc=i)}async function z(e){let t=h?.deps.openFs;if(!t)return null;try{let n=await(await t()).readFile(e,{encoding:`binary`}),i=c(n);return`data:${s(i)??`image/jpeg`};base64,${r(i)}`}catch(t){return h?.deps.log.warn(`WC computers: frozen frame read failed`,{path:e,err:t}),null}}function B(e,t){let n=u(t),r=D();if(r.lightboxId===e){r.lightboxLive=!0;let e=V();U(r),e.isOpen?e.setSrc(n):e.open(n,r.lightboxOrigin??e)}N()}function V(){let e=D();if(e.preview?.isConnected)return e.preview;let t=document.createElement(`slicc-image-preview`);return t.setAttribute(`data-computer-live`,``),document.body.append(t),t.addEventListener(`slicc-image-preview-close`,()=>q()),t.addEventListener(`slicc-image-preview-input`,W),e.preview=t,t}function H(e){return e?!!l().get(e)?.capabilities.inputAllowed:!1}function U(e){let t=e.preview;t&&(t.drive=!!(e.lightboxLive&&H(e.lightboxId)))}function W(e){let t=h;if(!t?.lightboxId||!t.lightboxLive)return;let n=l().get(t.lightboxId);if(!n?.capabilities.inputAllowed)return;let r=e.detail;if(!r)return;let i=n.size??l().lastFrame(t.lightboxId);if(i)try{let e=G(r,i);e.length&&l().input(t.lightboxId,e)}catch(e){t.deps.log.warn(`WC computers: lightbox input failed`,e)}}function G(e,t){if(e.kind===`key`){let t=a(e);return t?[{type:`key`,keysym:t}]:[]}let n=o(e.x,e.y,{width:e.width,height:e.height},t);return e.kind===`scroll`?[{type:`scroll`,dx:e.dx,dy:e.dy,x:n.x,y:n.y}]:[{type:`click`,button:e.button,count:1,x:n.x,y:n.y}]}function K(e,t,n){let r=D(),i=l();e?(r.lightboxId&&r.lightboxId!==e&&r.lightboxWatchToken!==null&&(i.unwatch(r.lightboxId,r.lightboxWatchToken),r.lightboxWatchToken=null),(r.lightboxId!==e||r.lightboxWatchToken===null)&&(r.lightboxWatchToken=i.watch(e,f,ee),r.lightboxId=e)):r.lightboxWatchToken!==null&&r.lightboxId&&(i.unwatch(r.lightboxId,r.lightboxWatchToken),r.lightboxWatchToken=null,r.lightboxId=null),r.lightboxOrigin=n;let a=V(),o=e?i.lastFrame(e):null;r.lightboxLive=!!o,U(r);let s=o?u(o):t;s&&(a.isOpen?a.setSrc(s):a.open(s,n))}function q(){let e=h;if(e){if(e.lightboxWatchToken!==null&&e.lightboxId){try{l().unwatch(e.lightboxId,e.lightboxWatchToken)}catch(t){e.deps.log.warn(`WC computers: lightbox unwatch failed`,t)}e.lightboxWatchToken=null}e.lightboxId=null,e.lightboxOrigin=null,e.lightboxLive=!1,e.preview&&(e.preview.drive=!1)}}function J(e,t){return e.shadowRoot?.querySelector(`[data-tab-id="${CSS.escape(t)}"]`)??e}function Y(){let e=h;if(!e)return;let t=l();for(let[n,r]of[...e.overlayWatchIds]){try{t.unwatch(n,r)}catch{}e.overlayWatchIds.delete(n)}}function X(e){Q(e),e.hasAttribute(`open`)&&(e.tabs=E(e.tabs))}function Z(e,t,n){if(Q(e),!e.hasAttribute(`open`))return;let r=u(n);r&&e.patchTabScreenshot?.(g(t),r)||(e.tabs=E(e.tabs))}function Q(e){let t=D(),n=l(),r=e.hasAttribute(`open`)?n.list().map(e=>e.id):[],i=new Set(r);for(let[e,r]of[...t.overlayWatchIds])if(!i.has(e)){try{n.unwatch(e,r)}catch(e){t.deps.log.warn(`WC computers: overlay unwatch failed`,e)}t.overlayWatchIds.delete(e)}for(let e of r)if(!t.overlayWatchIds.has(e))try{t.overlayWatchIds.set(e,n.watch(e,p,m))}catch(e){t.deps.log.warn(`WC computers: overlay watch failed`,e)}}function ne(e){let n=D(e);if(t(O),n.installed)return $;n.installed=!0,document.addEventListener(`computer-row-bind`,k),document.addEventListener(`computer-row-unbind`,j),document.addEventListener(`computer-frame-click`,M);let r=l();return n.overlayUnsubs.push(r.onList(()=>N())),n.overlayUnsubs.push(r.onInvocations(()=>N())),n.overlayUnsubs.push(r.onFrame(B)),$}function re(e,t){let n=D(t?{log:t}:void 0),r=l(),i=t=>{let i=t.detail?.id,a=i?_(i):null;if(!a)return;let o=r.lastFrame(a),s=o?u(o):``;s||n.deps.log.warn(`WC computers: no frame yet for lightbox`,{id:a}),K(a,s,J(e,i))},a=e=>{let t=e.detail,i=t?.id?_(t.id):null;if(!(!i||!t.keysym))try{r.input(i,[{type:`key`,keysym:t.keysym}])}catch(e){n.deps.log.warn(`WC computers: softkey input failed`,e)}};e.addEventListener(`tab-activate`,i),e.addEventListener(`tab-peek`,i),e.addEventListener(`computer-softkey`,a);let o=()=>X(e);e.addEventListener(`overlay-close`,o);let s=new MutationObserver(()=>X(e));s.observe(e,{attributes:!0,attributeFilter:[`open`]});let c=r.onList(()=>X(e)),d=r.onFrame((t,n)=>Z(e,t,n));return X(e),()=>{e.removeEventListener(`tab-activate`,i),e.removeEventListener(`tab-peek`,i),e.removeEventListener(`computer-softkey`,a),e.removeEventListener(`overlay-close`,o),s.disconnect(),c(),d(),Y()}}function $(){let e=h;if(e){document.removeEventListener(`computer-row-bind`,k),document.removeEventListener(`computer-row-unbind`,j),document.removeEventListener(`computer-frame-click`,M);for(let t of e.overlayUnsubs)t();Y();for(let t of e.bound.values())if(t.watchToken!==null&&t.computerId)try{l().unwatch(t.computerId,t.watchToken)}catch{}if(e.lightboxWatchToken!==null&&e.lightboxId)try{l().unwatch(e.lightboxId,e.lightboxWatchToken)}catch{}e.preview?.remove(),h=null}}export{re as bindComputerOverlay,ne as installWcComputers,E as mergeOverlayTabs,_ as parseComputerOverlayId};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{O as e}from"./main-
|
|
1
|
+
import{O as e}from"./main-pp1LzVcX.js";var t=`slicc-detached-overlay`;function n(t){let{client:n,isDetachedSelf:r}=t;chrome.runtime.onMessage.addListener(t=>(!e(t)||t.source!==`service-worker`||t.payload.type!==`detached-active`||r||i(n),!1)),r&&chrome.runtime.sendMessage({source:`panel`,payload:{type:`detached-claim`}}).catch(()=>void 0)}function r(){chrome.runtime.sendMessage({source:`panel`,payload:{type:`detached-popout-request`}}).catch(e=>{console.warn(`[slicc] detached-popout-request failed`,e)})}function i(e){try{window.close()}catch{}e.setLocked(!0),a()}function a(){if(document.getElementById(t))return;let e=document.createElement(`div`);e.id=t,e.style.cssText=`position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;text-align:center;background:var(--canvas,#fff);color:var(--ink,#111);font:14px/1.5 var(--ui,system-ui)`;let n=document.createElement(`strong`);n.textContent=`SLICC is open in a detached window`;let r=document.createElement(`span`);r.textContent=`This panel yields while the detached window is active.`;let i=document.createElement(`button`);i.textContent=`Close this window`,i.style.cssText=`margin-top:8px;padding:8px 16px;border:none;border-radius:999px;cursor:pointer;background:var(--ink,#111);color:var(--canvas,#fff);font:600 13px var(--ui,system-ui)`,i.addEventListener(`click`,()=>window.close()),e.append(n,r,i),document.body.appendChild(e)}export{r as requestDetachedPopout,n as wireWcDetached};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/main-
|
|
2
|
-
import{t as e}from"./preload-helper-Czpn1I53.js";import{C as t,S as n,b as r,r as i,t as a,y as o}from"./wc-live-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/main-pp1LzVcX.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/modulepreload-polyfill-P2Xu9kJm.js","assets/preload-helper-Czpn1I53.js","assets/logger-DDBAeTLF.js","assets/core-DzRw0pz2.js","assets/compat-0YnuwvMn.js","assets/models-D9KYIFyv.js","assets/diagnostics-B-5VkVir.js","assets/env-api-keys-BMbk-OAv.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-C88RzzVZ.js","assets/azure-openai-config--zABV6W_.js","assets/utf16-clip-CGL7omVm.js","assets/feature-flags-DvsApnS-.js","assets/proxied-fetch-4VBgrEIu.js","assets/base64-ELzoYfwP.js","assets/proxy-error-BSFYY7jj.js","assets/api-endpoint-DuEQRZ4g.js","assets/runtime-env-Dlaokqg1.js","assets/secret-topology-hMRoGGjt.js","assets/float-topology-C_iRKPQK.js","assets/secrets-bridge-client-D734Xx8G.js","assets/port-bridge-client-B-gpiOVR.js","assets/panel-rpc-accessor-B4BfPLSo.js","assets/image-markers-q8JQTtid.js","assets/tool-ui-eSQ1g2I1.js","assets/bridge-protocol-C52CnDIj.js","assets/account-store-EUAU8ivx.js","assets/providers-CEBpTOtO.js","assets/stored-accounts-ChNHYF68.js","assets/bedrock-camp-compat-D6dUCn_T.js","assets/bedrock-camp-extra-models-COVvjLB5.js","assets/claude-model-version-3MWQoaco.js","assets/renamed-providers-DDe6My59.js","assets/telemetry-B0sKnLBU.js","assets/tray-follower-status-BAjnN7Ar.js","assets/clipboard-eqmn97SP.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{t as e}from"./preload-helper-Czpn1I53.js";import{C as t,S as n,b as r,r as i,t as a,y as o}from"./wc-live-Bj38qUgj.js";import{wireWcDetached as s}from"./wc-detached-cVeDn3rP.js";async function c(c,l,u=!1){let d;await i(c,l,{floatKind:`extension`,connect:e=>{d=new t(o(e.wiring));let i=n(d);return{client:r(e.wiring),host:i,workbench:(e,t)=>{a(e,d,t,i,l)}}}}),s({client:d,isDetachedSelf:u});let{setupSudoExtension:f}=await e(async()=>{let{setupSudoExtension:e}=await import(`./main-pp1LzVcX.js`).then(e=>e.c);return{setupSudoExtension:e}},__vite__mapDeps([0,1,2,3,4,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,31,32,33,34,35,36,37,38]));await f({log:l}),d.requestState(),l.info(`WC extension shell connected to offscreen engine`)}export{c as bootExtensionFloat};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/wc-shell-
|
|
2
|
-
import{t as e}from"./preload-helper-Czpn1I53.js";import{t}from"./logger-DDBAeTLF.js";import{a as n,n as r}from"./feature-flags-DvsApnS-.js";import{n as i}from"./transcript-export-DP-r8eDz.js";import{S as a,a as o,c as s,d as c,i as ee,n as te,r as ne,t as re,x as l}from"./wc-follower-oauth-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/wc-shell-C0Y0f1tt.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/preload-helper-Czpn1I53.js","assets/logger-DDBAeTLF.js","assets/mime-types-D0xZwlMO.js","assets/base64-ELzoYfwP.js","assets/bridge-protocol-C52CnDIj.js","assets/account-store-EUAU8ivx.js","assets/core-DzRw0pz2.js","assets/compat-0YnuwvMn.js","assets/models-D9KYIFyv.js","assets/diagnostics-B-5VkVir.js","assets/env-api-keys-BMbk-OAv.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-C88RzzVZ.js","assets/azure-openai-config--zABV6W_.js","assets/utf16-clip-CGL7omVm.js","assets/feature-flags-DvsApnS-.js","assets/proxied-fetch-4VBgrEIu.js","assets/proxy-error-BSFYY7jj.js","assets/api-endpoint-DuEQRZ4g.js","assets/runtime-env-Dlaokqg1.js","assets/secret-topology-hMRoGGjt.js","assets/float-topology-C_iRKPQK.js","assets/secrets-bridge-client-D734Xx8G.js","assets/port-bridge-client-B-gpiOVR.js","assets/panel-rpc-accessor-B4BfPLSo.js","assets/image-markers-q8JQTtid.js","assets/tool-ui-eSQ1g2I1.js","assets/providers-CEBpTOtO.js","assets/stored-accounts-ChNHYF68.js","assets/bedrock-camp-compat-D6dUCn_T.js","assets/bedrock-camp-extra-models-COVvjLB5.js","assets/claude-model-version-3MWQoaco.js","assets/renamed-providers-DDe6My59.js","assets/same-file-identity-OexpsaSD.js","assets/telemetry-B0sKnLBU.js","assets/types-D8gIX-W-.js","assets/icons-BUdZEBvI.js","assets/wc-shell-WkeczD9x.css","assets/panelize-shell-CtMH6CGD.js","assets/virtual-device-paths-D45tpPP6.js","assets/layout-apply-registry-Cw730jao.js","assets/wc-live-Bj38qUgj.js","assets/sprinkle-renderer-GOx0t_KB.js","assets/permissions-surface-registry-CilCRwhh.js","assets/hid-device-registry-B2R-0rNt.js","assets/serial-port-registry-CCqklAEr.js","assets/hid-operations-C97SZtrY.js","assets/usb-device-registry--JwKRTYp.js","assets/usb-operations-v1mGAdRY.js","assets/shared-DSEuryGJ.js","assets/theme-CwPIBqJE.js","assets/theme-engine-ZV7CeqWw.js","assets/slugify-BYJ6QVAt.js","assets/transcript-export-DP-r8eDz.js","assets/frozen-archive-writer-DV8CfTGq.js","assets/tray-follower-status-BAjnN7Ar.js","assets/main-pp1LzVcX.js","assets/modulepreload-polyfill-P2Xu9kJm.js","assets/clipboard-eqmn97SP.js","assets/src-BWaKqLvQ.js","assets/provider-budget-LCzMPlKv.js","assets/browser-Chc3wUwj.js","assets/tray-leader-CrSh1Fel.js","assets/record-DtD74Jn0.js","assets/descriptor-1ECGTjSt.js","assets/types-CFfBWsH5.js","assets/frozen-session-identity-CF594WMJ.js","assets/session-jsonl-B5phOLgv.js","assets/live-session-curation-ChkffqSA.js","assets/thinking-level-DCJktR5U.js","assets/wc-unit-context-D5liISq3.js","assets/legacy-styles-B3nS5QUo.js","assets/follower-navigate-watcher-C0CP4-Mn.js","assets/navigation-watcher-CPcnZL9l.js","assets/discovery-preference-D8GXCv8i.js","assets/wc-transcript-export-DWFK7w_9.js","assets/export-spool-CuNzzI8a.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{t as e}from"./preload-helper-Czpn1I53.js";import{t}from"./logger-DDBAeTLF.js";import{a as n,n as r}from"./feature-flags-DvsApnS-.js";import{n as i}from"./transcript-export-DP-r8eDz.js";import{S as a,a as o,c as s,d as c,i as ee,n as te,r as ne,t as re,x as l}from"./wc-follower-oauth-Br9RPRQJ.js";import{a as ie,t as ae}from"./tray-follower-status-BAjnN7Ar.js";import{C as oe,D as u,E as d,s as se,w as f,x as ce}from"./main-pp1LzVcX.js";import{m as le,r as ue,x as de}from"./wc-live-Bj38qUgj.js";import{n as fe}from"./theme-engine-ZV7CeqWw.js";import{c as pe,m as me,s as he,t as ge}from"./wc-unit-context-D5liISq3.js";import{WcSprinkleZone as _e}from"./wc-sprinkles-BlFVp_Zu.js";import{wireWcAttach as ve}from"./wc-attach-Cmjdm23i.js";import{installLeaderPermissionsSurface as ye}from"./wc-permissions-CUtqnNV2.js";var p=t(`follower-switch-out`);function be(e,t){t.stopFollower();try{t.storage.removeItem(d),e.workerBaseUrl===null?t.storage.removeItem(u):t.storage.setItem(u,e.workerBaseUrl)}catch(e){p.error(`follower switch-out: storage write failed — state may revert on reload`,{error:e instanceof Error?e.message:String(e)})}try{let e=t.getHref(),n=f(e);n!==e&&t.replaceHref(n)}catch(e){p.error(`follower switch-out: URL normalize failed — may re-enter follower on reload`,{error:e instanceof Error?e.message:String(e)})}t.reload()}var m=6;function xe(e){let{refs:t,getSync:n,getTargets:r,hasCdpBrowser:i,log:a}=e;if(t.overlaySurfaces.has(`browser`))return{overlay:document.createElement(`slicc-tab-overlay`),refresh:()=>{}};let o=document.createElement(`slicc-tab-overlay`);o.setAttribute(`heading`,`Browser · tabs in this tray`),o.setAttribute(`no-peek`,``),document.body.append(o);let s=()=>{o.tabs=r().map(e=>({id:e.targetId,title:e.title||e.url||e.targetId,url:e.url}))};return t.overlaySurfaces.add(`browser`),t.dock.addEventListener(`slicc-dock-select`,e=>{e.detail?.id===`browser`&&(s(),o.show(),t.dock.collapse?.())}),o.addEventListener(`tab-activate`,t=>{let r=t.detail.id,s=n(),c=s?.getLeaderProtocolVersion()??0;if(!(s&&i()&&c>=m)){let t=o.tabs.find(e=>e.id===r)?.url;if(!t){a.warn(`WC follower browser: no URL for tab`,{id:r});return}e.window.open(t,`_blank`,`noopener`)||a.warn(`WC follower browser: window.open was blocked`,{id:r}),o.hide();return}s.requestTabTeleport(r).then(e=>{a.info(`WC follower browser: leader teleported a tab here`,{source:r,targetId:e}),o.hide()}).catch(e=>{a.error(`WC follower browser: tab teleport failed`,e)})}),{overlay:o,refresh:s}}var h=new Set([`oauth-attempt`,`connect-attempt`,`device-code-decision`]);function Se(e){return h.has(e)}var g=`slicc-signin-redirect-style`,_=`wc-signin-redirect`,v=`${_}--welcome`,y=`
|
|
3
3
|
.${_}{display:flex;gap:10px;align-items:flex-start;margin:10px 12px;padding:12px 14px;
|
|
4
4
|
border:1px solid var(--line);border-radius:12px;background:var(--ghost);color:var(--ink);
|
|
5
5
|
font-family:var(--ui);font-size:13px;line-height:1.4;}
|
|
@@ -14,4 +14,4 @@ import{t as e}from"./preload-helper-Czpn1I53.js";import{t}from"./logger-DDBAeTLF
|
|
|
14
14
|
.${_}__x:hover{color:var(--ink);}
|
|
15
15
|
`;function b(e){if(e.getElementById(g))return;let t=e.createElement(`style`);t.id=g,t.textContent=y,e.head.appendChild(t)}function x(e,t){b(e);let n=e.createElement(`div`);n.className=_,n.setAttribute(`role`,`status`);let r=e.createElement(`div`);r.className=`${_}__body`;let i=e.createElement(`div`);i.className=`${_}__title`,i.textContent=t.title;let a=e.createElement(`div`);a.className=`${_}__sub`,a.textContent=t.sub,r.append(i,a);let o=e.createElement(`button`);if(o.type=`button`,o.className=`${_}__open`,o.textContent=t.buttonLabel,o.addEventListener(`click`,()=>t.onOpenTab()),n.append(r,o),t.dismissible){let t=e.createElement(`button`);t.type=`button`,t.className=`${_}__x`,t.setAttribute(`aria-label`,`Dismiss`),t.textContent=`×`,t.addEventListener(`click`,()=>n.remove()),n.append(t)}return n}function Ce(e,t){let n=e.ownerDocument;t.onOpenTab();let r=e.querySelector(`.${_}`);if(r)return r.scrollIntoView?.({block:`nearest`}),r;let i=x(n,{title:`Sign in from the SLICC tab`,sub:`The side panel can't complete a provider login — we've switched you to the main SLICC tab. Finish signing in there (Settings › Providers), then come back.`,buttonLabel:`Open SLICC tab`,onOpenTab:t.onOpenTab,dismissible:!0});return e.append(i),i.scrollIntoView?.({block:`nearest`}),i}function we(e,t){let n=x(e,{title:`Set up SLICC in the main tab`,sub:`SLICC needs a model connected before it can help. Open the main SLICC tab to finish setup and sign in, then come back to the side panel.`,buttonLabel:`Open SLICC tab`,onOpenTab:t.onOpenTab,dismissible:!1});return n.classList.add(v),n}var S=t(`wc-follower`),Te=`/shared/sprinkles/welcome/`,Ee=`/shared/sprinkles/suggestions/`;function De(e){return e===void 0||e===`active`?{kind:`active`}:e.trim()===``?null:{kind:`frozen`,sessionId:e}}function Oe(e,t){for(;e.firstChild;)e.removeChild(e.firstChild);let n=document.createElement(`div`);n.style.cssText=`padding:2rem;text-align:center;font-family:system-ui;`;let r=document.createElement(`h1`);r.style.color=`var(--s2-negative, #e34850)`,r.textContent=`Could not start follower`;let i=document.createElement(`p`);i.style.color=`var(--s2-content-tertiary, #717171)`,i.textContent=t,n.append(r,i),e.appendChild(n)}function ke(e,t,n,r,i){let a=e=>{let t=document.createElement(`div`);return t.className=`wcui-placeholder`,t.textContent=e,t};i.files?(e.style.display=`none`,e.parentElement?.append(a(`Files live on the leader. A follower mirrors the leader's chat, sprinkles, and browser tabs - not its filesystem.`))):e.closest(`slicc-surface`)?.remove(),i.terminal?t.append(a(`The shell runs on the leader. A follower has no local terminal - drive the session through chat.`)):t.closest(`slicc-surface`)?.remove(),i.memory?n.append(a(`Memory lives on the leader. A follower has no local memory store.`)):n.closest(`slicc-surface`)?.remove(),i.monitor?(r.style.display=`none`,r.parentElement?.append(a(`Monitor reads the leader's kernel state. A follower has no local kernel.`))):r.closest(`slicc-surface`)?.remove()}var C={terminal:!0,files:!0,memory:!0,browser:!0,modelPicker:!0,history:!0,nav:!0,monitor:!0,showTimestamps:!0};function Ae(e){let t=[];for(let[n,r]of[[`terminal`,`term`],[`files`,`files`],[`memory`,`memory`],[`browser`,`browser`],[`monitor`,`monitor`]])e[n]||t.push(`slicc-dock-item[data-t="${r}"]`);if(e.modelPicker||t.push(`slicc-composer-meta`),e.history||t.push(`slicc-freezer`),e.nav||t.push(`slicc-nav`),!e.terminal&&!e.files&&!e.memory&&!e.browser&&!e.monitor&&t.push(`slicc-dock .div`,`slicc-dock .grow`),t.length||!e.history){let n=document.createElement(`style`),r=t.length?`${t.join(`,
|
|
16
16
|
`)}{display:none!important;}`:``;e.history||(r+=`
|
|
17
|
-
.wcui-appcol{padding-left:0!important;}`),n.textContent=r,document.head.append(n)}}function w(e,t){return e&&!t}async function T(t,n,r){let[{parseLayoutDocument:i},{panelizeShell:a}]=await Promise.all([e(()=>import(`./wc-shell-BOiMEPvK.js`).then(e=>e.B),__vite__mapDeps([0,1,2,3,4,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,31,32,33,34,35,36,37,38,39,40])),e(()=>import(`./panelize-shell-BbOMOerL.js`),__vite__mapDeps([41,3,0,1,2,4,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,31,32,33,34,35,36,37,38,39,40,42,43]))]),o=i(n);if(`error`in o){r.warn(`follower: host-pushed layout failed validation — keeping the default`,{error:o.error});return}a(t.refs,o),r.info(`follower: applied host-pushed layout document`,{id:o.id,locked:o.locked===!0})}async function je(e,t,i){if(i&&t.cherryTransport?.flags)try{let e=JSON.parse(t.cherryTransport.flags);e&&typeof e==`object`&&!Array.isArray(e)&&r(e)}catch(e){S.warn(`follower: host-pushed flags were not valid JSON — ignoring`,e)}let a=n(`panel-layouts`);if(e.refs.dockTree.tilesMovable=a,i&&t.cherryTransport?.layout)try{let n=JSON.parse(t.cherryTransport.layout);n&&typeof n==`object`&&`base`in n?a?await T(e,n,S):S.warn(`follower: ignoring host-pushed layout — the panel-layouts flag is off`):e.refs.dockTree.setTree(n)}catch(e){S.warn(`follower: host-pushed layout was not valid JSON — keeping the default`,e)}}async function E(t,r,u){let d=u===`cherry`,f=d&&new URLSearchParams(window.location.search).get(`ui-only`)===`1`,p=window.location.ancestorOrigins?.[0],m=d&&(p?.startsWith(`chrome-extension://`)??!1),h;try{h=await se({runtimeMode:u,envBaseUrl:null,window,log:r})}catch(e){let n=e instanceof Error?e.message:String(e);S.error(`follower prelude failed`,{runtimeMode:u,error:n}),Oe(t,n);return}let g=d?h.cherryJoinUrl:ce(window.location.href,window.localStorage);if(!g){S.error(`follower mount with no join URL - falling back to live boot`);let{bootLeaderFloat:n}=await e(async()=>{let{bootLeaderFloat:e}=await import(`./wc-live-CBQLeEAN.js`).then(e=>e.n);return{bootLeaderFloat:e}},__vite__mapDeps([44,1,2,3,0,4,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,31,32,33,34,35,36,37,38,39,40,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73]));return n(t,r,`standalone`)}let _=d?`cherry`:m?`extension`:`standalone`,y,b,x,T=new Set,E=null,D=new te({onSilence:(e,t)=>{e===R()&&P.addAssistantMessage(ee(t,m))},onRejected:(e,t)=>{e!==null&&e===R()&&P.addAssistantMessage(ne(t))}});T.add(()=>D.noteLeaderActivity());let O=null,k=()=>h.cherryTransport?.emitSliccEventToHost(`slicc.open-leader-tab`),A=()=>{m&&Ce(y.refs.thread,{onOpenTab:k})},j=e=>{let t=e.querySelectorAll(`img[src^="${Te}"]`);return t.length!==0&&(t.forEach((t,n)=>{n===0&&!M?t.replaceWith(we(e.ownerDocument,{onOpenTab:k})):t.remove()}),!0)},M=!1,Me=e=>{let t=e.querySelectorAll(`img[src^="${Ee}"]`);if(t.length!==0){for(let e of t)e.remove();M=!0;for(let e of y.refs.thread.querySelectorAll(`.${v}`))e.remove()}},N=(await ue(t,r,{floatKind:_,connect:async t=>{y=t,d&&h.cherryTransport?.theme&&fe(h.cherryTransport.theme),await je(y,h,d);let n=d&&h.cherryTransport?.effortLevel;n?localStorage.setItem(`slicc_locked_effort_level`,n):localStorage.removeItem(`slicc_locked_effort_level`),b=d&&h.cherryTransport?{...C,...h.cherryTransport.features}:C,ke(y.refs.fileTree,y.refs.termSurface,y.refs.memoryHost,y.refs.monitor,b),Ae(b),e(async()=>{let{applyTimestampVisibility:e,initTimestampPreference:t}=await import(`./wc-shell-BOiMEPvK.js`).then(e=>e.Q);return{applyTimestampVisibility:e,initTimestampPreference:t}},__vite__mapDeps([0,1,2,3,4,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,31,32,33,34,35,36,37,38,39,40])).then(({applyTimestampVisibility:e,initTimestampPreference:t})=>{b.showTimestamps?t():e(!1)}),e(async()=>{let{loadDipStyles:e,loadSprinkleStyles:t}=await import(`./legacy-styles-B3nS5QUo.js`);return{loadDipStyles:e,loadSprinkleStyles:t}},__vite__mapDeps([74,2])).then(({loadDipStyles:e,loadSprinkleStyles:t})=>Promise.all([e(),t()])).catch(()=>void 0),x=new o({getSync:()=>J?.currentSync??null,onSend:(e,t)=>D.noteSent(e,t)});let r=de({getSync:()=>J?.currentSync??null,onAgentEvent:e=>(T.add(e),()=>T.delete(e)),onAgentError:e=>{S.warn(`follower send failed`,{error:e}),N.controller.addAssistantMessage(`_That message was not sent to the leader — ${e}_`)}}),i={...r,sendSprinkleLick:(e,t,n)=>{r.sendSprinkleLick(e,t,n);let i=t?.action;typeof i==`string`&&Se(i)&&A()},addressableUnitId:()=>V(),onMessageRendered:e=>{Me(e),m&&j(e)},onSelectionApplied:()=>{W(H,U),O?.onShownUnitChanged()},onSnapshotRendered:e=>{N.controller.setProcessing(e.some(e=>e.isStreaming))},ownsModelPill:!0,takeAttachments:()=>Pe.take()};return{client:x,host:i}}})).chat,P=N.controller;if(m)for(let e of[`slicc-error-open-settings`,`slicc-error-login`,`slicc-error-change-model`])y.refs.thread.addEventListener(e,()=>A());let F=`Connecting to leader…`,I=`Ask the leader, or describe a change…`,L=null,R=()=>y.getSelected()?.id??L,z=e=>e&&e.length>0?e:null,B=!1,V=()=>B?z(R()??x.selectedUnitId):null,Ne=()=>{let e=y.getSelected();return e?me(e):!1},H=!1,U=F,W=(e,t)=>{H=e,U=t;let n=e&&V()!==null;y.refs.inputCard.setAttribute(`placeholder`,e&&!n?F:t),n&&!Ne()?y.refs.inputCard.removeAttribute(`disabled`):y.refs.inputCard.setAttribute(`disabled`,``)};W(!1,F),ie(e=>{try{window.localStorage.setItem(l,JSON.stringify(e))}catch{}});try{window.localStorage.setItem(l,JSON.stringify(ae()))}catch{}f||y.refs.composer.setAttribute(`ptt`,``);let Pe=ve({inputCard:y.refs.inputCard,freezer:y.refs.freezer,composer:y.refs.composer,noCamera:f,log:S}),G=new _e(y.refs).callbacks(),K=e=>{if(L=e,!e)return;let t=x.currentUnits().find(t=>t.id===e);if(!t){y.watchUnit(e),W(H,U);return}if(y.getSelected()?.id!==t.id){y.selectScoop(t);return}W(H,U)},q=()=>{B=!1,x.resetSelection()};y.refs.switcher.connection=`disconnected`;let J,Y=null,Fe=()=>(Y||=ye({runtimeMode:u})?.element??null,Y),X=[],Ie=xe({refs:y.refs,getSync:()=>J.currentSync,getTargets:()=>X,hasCdpBrowser:()=>w(h.hasLocalCdpSurface,f),window,log:S});O=le({composerMeta:y.refs.composerMeta,getUnits:()=>x.currentUnits(),setModel:(e,t)=>{x.setModel(e,t).catch(()=>void 0)},getSync:()=>J.currentSync,getSelectedScoopJid:()=>R(),modelPickerEnabled:b.modelPicker,getLockedEffortLevel:()=>localStorage.getItem(`slicc_locked_effort_level`)}),x.subscribeList(()=>O?.onShownUnitChanged()),J=s(x.wrapOptions({joinUrl:g,runtime:d?a:`slicc-standalone`,advertisesCdpTargets:w(h.hasLocalCdpSurface,f),onTargetsUpdated:e=>{X=e,Ie.refresh()},...d||f?{}:{onOAuthPopupRequest:(e,t)=>re(e,t,{getPermissionsSurface:Fe,window})},browserAPI:h.browser,onSnapshot:(e,t)=>{B=!0,K(z(t))},onUserMessage:(e,t,n,r)=>P.addUserMessage(e,r),onOwnUserMessageEcho:(e,t)=>D.noteReceived(t,e),onUserMessageAck:e=>D.noteAck(e),onBiscottoMessageState:(e,t)=>{switch(D.noteLeaderActivity(),t){case`pending`:P.addAssistantMessage(`_Sent for review — waiting for the host._`);break;case`rejected`:P.addAssistantMessage(`_The host did not forward that message._`);break;case`unanswered`:P.addAssistantMessage(`_No one reviewed that message in time, so it was not forwarded._`)}},onStatus:(e,t)=>{D.noteLeaderActivity(t),c(t,R())&&P.setProcessing(e===`processing`)},setChatAgent:e=>{E?.(),E=e.onEvent(e=>{for(let t of T)t(e)})},onSudoApprovalRequest:async t=>{let{openSudoApprovalDialog:n}=await e(async()=>{let{openSudoApprovalDialog:e}=await import(`./wc-sudo-approval-C51zuN6a.js`);return{openSudoApprovalDialog:e}},[]),r=d?h.cherryTransport?.hostOrigin:void 0;return{decision:(await n({kind:t.kind,detail:t.detail,...t.suggestedPattern?{suggestedPattern:t.suggestedPattern}:{},...t.reason?{reason:t.reason}:{}},{allowAlways:!1,signal:t.signal,expiresAt:t.expiresAt,requester:t.requester??t.scoopName??(r?`via ${r}`:void 0)})).decision,attestation:`none`}},onConnectionChange:e=>{y.refs.switcher.connection=e?`connected`:`disconnected`,e||q(),e||D.noteLeaderActivity(),W(e,e?I:F),e||O?.reset(),d&&h.cherryTransport?.emitSliccEventToHost(e?`slicc.follower.ready`:`slicc.follower.disconnected`)},getSelectedScoopJid:()=>R(),onLeaderStalled:e=>{W(!e,e?`The leader is busy — hang on…`:I)},onGaveUp:e=>{S.error(`follower gave up reaching the leader`,{error:e}),y.refs.switcher.connection=`disconnected`,q(),W(!1,`Couldn't reach the leader. Reload to retry.`),O?.reset(),d&&h.cherryTransport?.emitSliccEventToHost(`slicc.follower.disconnected`)},...d?{}:{onJoinUrlChanged:e=>{S.info(`follower joinUrl superseded, persisting replacement`,{newJoinUrl:e}),oe(window.localStorage,e)}},addSprinkle:G.addSprinkle,removeSprinkle:G.removeSprinkle,onOpen:e=>{/^https?:\/\//.test(e)?window.open(e,`_blank`,`noopener`):S.warn(`follower sprinkle open() of a local path is unavailable`,{path:e})},onSelectScoop:e=>he(x.currentUnits(),e,y.getSelected()?.id,e=>y.selectScoop(e),()=>ge(y.refs.inputCard)),onSelectedScoop:()=>pe(x.currentUnits(),y.getSelected()?.id),onScoopsList:(e,t)=>{B=!0;let n=R();!n||!e.some(e=>e.jid===n)?K(z(t)):K(n),y.wiring.refreshScoops?.()},onModelsList:e=>O?.onModelsList(e),onModelState:e=>O?.onModelState(e),...d?{onCherrySliccEvent:(e,t)=>h.cherryTransport?.emitSliccEventToHost(e,t)}:{}}));for(let e of[`save`,`skip`,`erase`])y.refs.freezer.addEventListener(`new-chat-${e}`,()=>{x.forgetLocalSends(),J.currentSync?.requestNewSession(e)});n(`agentic-memory`)&&y.refs.freezer.querySelector(`slicc-freezer-new`)?.setAttribute(`no-skip`,``),y.refs.switcher.addEventListener(`slicc-scoop-select`,e=>{let t=e.detail?.key;t&&(L=t)}),d&&h.cherryTransport&&(h.cherryTransport.onHostEvent=(e,t)=>J.currentSync?.sendCherryHostEvent(e,t),h.cherryTransport.onExportRequest=(e,t,n,r)=>{let a=J.currentSync;if(!a)return Promise.reject(new i(`transfer-aborted`));let o=De(t);return o?a.requestTranscriptExport(o,n,r):Promise.reject(new i(`session-not-found`))});let Z=null;if(!d){let{startFollowerNavigateWatcher:t}=await e(async()=>{let{startFollowerNavigateWatcher:e}=await import(`./follower-navigate-watcher-C0CP4-Mn.js`);return{startFollowerNavigateWatcher:e}},__vite__mapDeps([75,3,76,6,19,1,2,5,20,21,22,77]));Z=t(h.realCdpTransport,()=>J.currentSync)}let Q=!1,$=()=>{y.refs.avatarMenu.items=[{kind:`separator`},...m?[{id:`focus-leader-tab`,label:`Bring leader to front`,icon:`external-link`}]:[],{id:`export-transcript`,label:Q?`Exporting…`:`Export transcript`,icon:`download`,disabled:Q||void 0},{id:`tray-stop`,label:`Disconnect from leader`,icon:`unplug`,danger:!0}]};$(),y.refs.avatarMenu.addEventListener(`slicc-avatar-action`,t=>{let n=t.detail?.id;if(n===`focus-leader-tab`){h.cherryTransport?.emitSliccEventToHost(`slicc.focus-leader-tab`);return}if(n===`tray-stop`){window.dispatchEvent(new CustomEvent(`slicc:tray-leave`,{detail:{workerBaseUrl:null}}));return}if(n===`export-transcript`&&!Q){Q=!0,$();let t=J.currentSync;if(!t){Q=!1,$();return}let n=new AbortController;t.requestTranscriptExport({kind:`active`},n.signal).then(async t=>{let{downloadTranscriptBlob:n}=await e(async()=>{let{downloadTranscriptBlob:e}=await import(`./wc-transcript-export-BLI_0Glp.js`);return{downloadTranscriptBlob:e}},__vite__mapDeps([78,2,56,79,62,1]));await n(t,`slicc-transcript-${new Date().toISOString().slice(0,10)}.zip`)}).catch(e=>{S.error(`follower transcript export failed`,{error:String(e)})}).finally(()=>{Q=!1,$()})}}),window.addEventListener(`slicc:tray-leave`,e=>{be({workerBaseUrl:(e.detail??{}).workerBaseUrl??null},{storage:window.localStorage,stopFollower:()=>{Z?.(),J.stop()},getHref:()=>window.location.href,replaceHref:e=>window.history.replaceState(null,``,e),reload:()=>window.location.reload()})}),S.info(`follower mounted`,{runtimeMode:u,isCherry:d})}export{E as bootFollowerFloat};
|
|
17
|
+
.wcui-appcol{padding-left:0!important;}`),n.textContent=r,document.head.append(n)}}function w(e,t){return e&&!t}async function T(t,n,r){let[{parseLayoutDocument:i},{panelizeShell:a}]=await Promise.all([e(()=>import(`./wc-shell-C0Y0f1tt.js`).then(e=>e.B),__vite__mapDeps([0,1,2,3,4,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,31,32,33,34,35,36,37,38,39,40])),e(()=>import(`./panelize-shell-CtMH6CGD.js`),__vite__mapDeps([41,3,0,1,2,4,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,31,32,33,34,35,36,37,38,39,40,42,43]))]),o=i(n);if(`error`in o){r.warn(`follower: host-pushed layout failed validation — keeping the default`,{error:o.error});return}a(t.refs,o),r.info(`follower: applied host-pushed layout document`,{id:o.id,locked:o.locked===!0})}async function je(e,t,i){if(i&&t.cherryTransport?.flags)try{let e=JSON.parse(t.cherryTransport.flags);e&&typeof e==`object`&&!Array.isArray(e)&&r(e)}catch(e){S.warn(`follower: host-pushed flags were not valid JSON — ignoring`,e)}let a=n(`panel-layouts`);if(e.refs.dockTree.tilesMovable=a,i&&t.cherryTransport?.layout)try{let n=JSON.parse(t.cherryTransport.layout);n&&typeof n==`object`&&`base`in n?a?await T(e,n,S):S.warn(`follower: ignoring host-pushed layout — the panel-layouts flag is off`):e.refs.dockTree.setTree(n)}catch(e){S.warn(`follower: host-pushed layout was not valid JSON — keeping the default`,e)}}async function E(t,r,u){let d=u===`cherry`,f=d&&new URLSearchParams(window.location.search).get(`ui-only`)===`1`,p=window.location.ancestorOrigins?.[0],m=d&&(p?.startsWith(`chrome-extension://`)??!1),h;try{h=await se({runtimeMode:u,envBaseUrl:null,window,log:r})}catch(e){let n=e instanceof Error?e.message:String(e);S.error(`follower prelude failed`,{runtimeMode:u,error:n}),Oe(t,n);return}let g=d?h.cherryJoinUrl:ce(window.location.href,window.localStorage);if(!g){S.error(`follower mount with no join URL - falling back to live boot`);let{bootLeaderFloat:n}=await e(async()=>{let{bootLeaderFloat:e}=await import(`./wc-live-Bj38qUgj.js`).then(e=>e.n);return{bootLeaderFloat:e}},__vite__mapDeps([44,1,2,3,0,4,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,31,32,33,34,35,36,37,38,39,40,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73]));return n(t,r,`standalone`)}let _=d?`cherry`:m?`extension`:`standalone`,y,b,x,T=new Set,E=null,D=new te({onSilence:(e,t)=>{e===R()&&P.addAssistantMessage(ee(t,m))},onRejected:(e,t)=>{e!==null&&e===R()&&P.addAssistantMessage(ne(t))}});T.add(()=>D.noteLeaderActivity());let O=null,k=()=>h.cherryTransport?.emitSliccEventToHost(`slicc.open-leader-tab`),A=()=>{m&&Ce(y.refs.thread,{onOpenTab:k})},j=e=>{let t=e.querySelectorAll(`img[src^="${Te}"]`);return t.length!==0&&(t.forEach((t,n)=>{n===0&&!M?t.replaceWith(we(e.ownerDocument,{onOpenTab:k})):t.remove()}),!0)},M=!1,Me=e=>{let t=e.querySelectorAll(`img[src^="${Ee}"]`);if(t.length!==0){for(let e of t)e.remove();M=!0;for(let e of y.refs.thread.querySelectorAll(`.${v}`))e.remove()}},N=(await ue(t,r,{floatKind:_,connect:async t=>{y=t,d&&h.cherryTransport?.theme&&fe(h.cherryTransport.theme),await je(y,h,d);let n=d&&h.cherryTransport?.effortLevel;n?localStorage.setItem(`slicc_locked_effort_level`,n):localStorage.removeItem(`slicc_locked_effort_level`),b=d&&h.cherryTransport?{...C,...h.cherryTransport.features}:C,ke(y.refs.fileTree,y.refs.termSurface,y.refs.memoryHost,y.refs.monitor,b),Ae(b),e(async()=>{let{applyTimestampVisibility:e,initTimestampPreference:t}=await import(`./wc-shell-C0Y0f1tt.js`).then(e=>e.Q);return{applyTimestampVisibility:e,initTimestampPreference:t}},__vite__mapDeps([0,1,2,3,4,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,31,32,33,34,35,36,37,38,39,40])).then(({applyTimestampVisibility:e,initTimestampPreference:t})=>{b.showTimestamps?t():e(!1)}),e(async()=>{let{loadDipStyles:e,loadSprinkleStyles:t}=await import(`./legacy-styles-B3nS5QUo.js`);return{loadDipStyles:e,loadSprinkleStyles:t}},__vite__mapDeps([74,2])).then(({loadDipStyles:e,loadSprinkleStyles:t})=>Promise.all([e(),t()])).catch(()=>void 0),x=new o({getSync:()=>J?.currentSync??null,onSend:(e,t)=>D.noteSent(e,t)});let r=de({getSync:()=>J?.currentSync??null,onAgentEvent:e=>(T.add(e),()=>T.delete(e)),onAgentError:e=>{S.warn(`follower send failed`,{error:e}),N.controller.addAssistantMessage(`_That message was not sent to the leader — ${e}_`)}}),i={...r,sendSprinkleLick:(e,t,n)=>{r.sendSprinkleLick(e,t,n);let i=t?.action;typeof i==`string`&&Se(i)&&A()},addressableUnitId:()=>V(),onMessageRendered:e=>{Me(e),m&&j(e)},onSelectionApplied:()=>{W(H,U),O?.onShownUnitChanged()},onSnapshotRendered:e=>{N.controller.setProcessing(e.some(e=>e.isStreaming))},ownsModelPill:!0,takeAttachments:()=>Pe.take()};return{client:x,host:i}}})).chat,P=N.controller;if(m)for(let e of[`slicc-error-open-settings`,`slicc-error-login`,`slicc-error-change-model`])y.refs.thread.addEventListener(e,()=>A());let F=`Connecting to leader…`,I=`Ask the leader, or describe a change…`,L=null,R=()=>y.getSelected()?.id??L,z=e=>e&&e.length>0?e:null,B=!1,V=()=>B?z(R()??x.selectedUnitId):null,Ne=()=>{let e=y.getSelected();return e?me(e):!1},H=!1,U=F,W=(e,t)=>{H=e,U=t;let n=e&&V()!==null;y.refs.inputCard.setAttribute(`placeholder`,e&&!n?F:t),n&&!Ne()?y.refs.inputCard.removeAttribute(`disabled`):y.refs.inputCard.setAttribute(`disabled`,``)};W(!1,F),ie(e=>{try{window.localStorage.setItem(l,JSON.stringify(e))}catch{}});try{window.localStorage.setItem(l,JSON.stringify(ae()))}catch{}f||y.refs.composer.setAttribute(`ptt`,``);let Pe=ve({inputCard:y.refs.inputCard,freezer:y.refs.freezer,composer:y.refs.composer,noCamera:f,log:S}),G=new _e(y.refs).callbacks(),K=e=>{if(L=e,!e)return;let t=x.currentUnits().find(t=>t.id===e);if(!t){y.watchUnit(e),W(H,U);return}if(y.getSelected()?.id!==t.id){y.selectScoop(t);return}W(H,U)},q=()=>{B=!1,x.resetSelection()};y.refs.switcher.connection=`disconnected`;let J,Y=null,Fe=()=>(Y||=ye({runtimeMode:u})?.element??null,Y),X=[],Ie=xe({refs:y.refs,getSync:()=>J.currentSync,getTargets:()=>X,hasCdpBrowser:()=>w(h.hasLocalCdpSurface,f),window,log:S});O=le({composerMeta:y.refs.composerMeta,getUnits:()=>x.currentUnits(),setModel:(e,t)=>{x.setModel(e,t).catch(()=>void 0)},getSync:()=>J.currentSync,getSelectedScoopJid:()=>R(),modelPickerEnabled:b.modelPicker,getLockedEffortLevel:()=>localStorage.getItem(`slicc_locked_effort_level`)}),x.subscribeList(()=>O?.onShownUnitChanged()),J=s(x.wrapOptions({joinUrl:g,runtime:d?a:`slicc-standalone`,advertisesCdpTargets:w(h.hasLocalCdpSurface,f),onTargetsUpdated:e=>{X=e,Ie.refresh()},...d||f?{}:{onOAuthPopupRequest:(e,t)=>re(e,t,{getPermissionsSurface:Fe,window})},browserAPI:h.browser,onSnapshot:(e,t)=>{B=!0,K(z(t))},onUserMessage:(e,t,n,r)=>P.addUserMessage(e,r),onOwnUserMessageEcho:(e,t)=>D.noteReceived(t,e),onUserMessageAck:e=>D.noteAck(e),onBiscottoMessageState:(e,t)=>{switch(D.noteLeaderActivity(),t){case`pending`:P.addAssistantMessage(`_Sent for review — waiting for the host._`);break;case`rejected`:P.addAssistantMessage(`_The host did not forward that message._`);break;case`unanswered`:P.addAssistantMessage(`_No one reviewed that message in time, so it was not forwarded._`)}},onStatus:(e,t)=>{D.noteLeaderActivity(t),c(t,R())&&P.setProcessing(e===`processing`)},setChatAgent:e=>{E?.(),E=e.onEvent(e=>{for(let t of T)t(e)})},onSudoApprovalRequest:async t=>{let{openSudoApprovalDialog:n}=await e(async()=>{let{openSudoApprovalDialog:e}=await import(`./wc-sudo-approval-C51zuN6a.js`);return{openSudoApprovalDialog:e}},[]),r=d?h.cherryTransport?.hostOrigin:void 0;return{decision:(await n({kind:t.kind,detail:t.detail,...t.suggestedPattern?{suggestedPattern:t.suggestedPattern}:{},...t.reason?{reason:t.reason}:{}},{allowAlways:!1,signal:t.signal,expiresAt:t.expiresAt,requester:t.requester??t.scoopName??(r?`via ${r}`:void 0)})).decision,attestation:`none`}},onConnectionChange:e=>{y.refs.switcher.connection=e?`connected`:`disconnected`,e||q(),e||D.noteLeaderActivity(),W(e,e?I:F),e||O?.reset(),d&&h.cherryTransport?.emitSliccEventToHost(e?`slicc.follower.ready`:`slicc.follower.disconnected`)},getSelectedScoopJid:()=>R(),onLeaderStalled:e=>{W(!e,e?`The leader is busy — hang on…`:I)},onGaveUp:e=>{S.error(`follower gave up reaching the leader`,{error:e}),y.refs.switcher.connection=`disconnected`,q(),W(!1,`Couldn't reach the leader. Reload to retry.`),O?.reset(),d&&h.cherryTransport?.emitSliccEventToHost(`slicc.follower.disconnected`)},...d?{}:{onJoinUrlChanged:e=>{S.info(`follower joinUrl superseded, persisting replacement`,{newJoinUrl:e}),oe(window.localStorage,e)}},addSprinkle:G.addSprinkle,removeSprinkle:G.removeSprinkle,onOpen:e=>{/^https?:\/\//.test(e)?window.open(e,`_blank`,`noopener`):S.warn(`follower sprinkle open() of a local path is unavailable`,{path:e})},onSelectScoop:e=>he(x.currentUnits(),e,y.getSelected()?.id,e=>y.selectScoop(e),()=>ge(y.refs.inputCard)),onSelectedScoop:()=>pe(x.currentUnits(),y.getSelected()?.id),onScoopsList:(e,t)=>{B=!0;let n=R();!n||!e.some(e=>e.jid===n)?K(z(t)):K(n),y.wiring.refreshScoops?.()},onModelsList:e=>O?.onModelsList(e),onModelState:e=>O?.onModelState(e),...d?{onCherrySliccEvent:(e,t)=>h.cherryTransport?.emitSliccEventToHost(e,t)}:{}}));for(let e of[`save`,`skip`,`erase`])y.refs.freezer.addEventListener(`new-chat-${e}`,()=>{x.forgetLocalSends(),J.currentSync?.requestNewSession(e)});n(`agentic-memory`)&&y.refs.freezer.querySelector(`slicc-freezer-new`)?.setAttribute(`no-skip`,``),y.refs.switcher.addEventListener(`slicc-scoop-select`,e=>{let t=e.detail?.key;t&&(L=t)}),d&&h.cherryTransport&&(h.cherryTransport.onHostEvent=(e,t)=>J.currentSync?.sendCherryHostEvent(e,t),h.cherryTransport.onExportRequest=(e,t,n,r)=>{let a=J.currentSync;if(!a)return Promise.reject(new i(`transfer-aborted`));let o=De(t);return o?a.requestTranscriptExport(o,n,r):Promise.reject(new i(`session-not-found`))});let Z=null;if(!d){let{startFollowerNavigateWatcher:t}=await e(async()=>{let{startFollowerNavigateWatcher:e}=await import(`./follower-navigate-watcher-C0CP4-Mn.js`);return{startFollowerNavigateWatcher:e}},__vite__mapDeps([75,3,76,6,19,1,2,5,20,21,22,77]));Z=t(h.realCdpTransport,()=>J.currentSync)}let Q=!1,$=()=>{y.refs.avatarMenu.items=[{kind:`separator`},...m?[{id:`focus-leader-tab`,label:`Bring leader to front`,icon:`external-link`}]:[],{id:`export-transcript`,label:Q?`Exporting…`:`Export transcript`,icon:`download`,disabled:Q||void 0},{id:`tray-stop`,label:`Disconnect from leader`,icon:`unplug`,danger:!0}]};$(),y.refs.avatarMenu.addEventListener(`slicc-avatar-action`,t=>{let n=t.detail?.id;if(n===`focus-leader-tab`){h.cherryTransport?.emitSliccEventToHost(`slicc.focus-leader-tab`);return}if(n===`tray-stop`){window.dispatchEvent(new CustomEvent(`slicc:tray-leave`,{detail:{workerBaseUrl:null}}));return}if(n===`export-transcript`&&!Q){Q=!0,$();let t=J.currentSync;if(!t){Q=!1,$();return}let n=new AbortController;t.requestTranscriptExport({kind:`active`},n.signal).then(async t=>{let{downloadTranscriptBlob:n}=await e(async()=>{let{downloadTranscriptBlob:e}=await import(`./wc-transcript-export-DWFK7w_9.js`);return{downloadTranscriptBlob:e}},__vite__mapDeps([78,2,56,79,62,1]));await n(t,`slicc-transcript-${new Date().toISOString().slice(0,10)}.zip`)}).catch(e=>{S.error(`follower transcript export failed`,{error:String(e)})}).finally(()=>{Q=!1,$()})}}),window.addEventListener(`slicc:tray-leave`,e=>{be({workerBaseUrl:(e.detail??{}).workerBaseUrl??null},{storage:window.localStorage,stopFollower:()=>{Z?.(),J.stop()},getHref:()=>window.location.href,replaceHref:e=>window.history.replaceState(null,``,e),reload:()=>window.location.reload()})}),S.info(`follower mounted`,{runtimeMode:u,isCherry:d})}export{E as bootFollowerFloat};
|