sliccy 5.0.0 → 5.1.0
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/assets/{account-store-rEr_WCiZ.js → account-store-BX9GfGpy.js} +2 -2
- package/dist/ui/assets/{account-store-CeSn6D5H.js → account-store-__nJFJuH.js} +2 -2
- package/dist/ui/assets/{adobe-CaPkrk12.js → adobe-B1R3D4ax.js} +1 -1
- package/dist/ui/assets/{adobe-oauth-state-Ct_9pMfk.js → adobe-oauth-state-DiYFIv7k.js} +1 -1
- package/dist/ui/assets/{adobe-C-0IO_h7.js → adobe-t7lv-7rP.js} +1 -1
- package/dist/ui/assets/{agent-message-to-chat-BjwD-qSr.js → agent-message-to-chat-DLGwDl9R.js} +1 -1
- package/dist/ui/assets/{apps-DcaNdhLo.js → apps-BRuyTGDt.js} +1 -1
- package/dist/ui/assets/{azure-openai-Cd_zNvrH.js → azure-openai-BuCmBh8o.js} +1 -1
- package/dist/ui/assets/{azure-openai-Ck-Mz-fA.js → azure-openai-DyRw2ox_.js} +1 -1
- package/dist/ui/assets/{browser-ukv9lM61.js → browser-D0vICVpZ.js} +50 -45
- package/dist/ui/assets/{cdp-z9uzg44m.js → cdp-Ds3-0d7E.js} +2 -2
- package/dist/ui/assets/{connect-surface-BHwPGe-M.js → connect-surface-CTakCrLA.js} +1 -1
- package/dist/ui/assets/dip-DPIo9DJ6.js +1 -0
- package/dist/ui/assets/{dist-CngoSKj5.js → dist-B-NrvOrF.js} +1 -1
- package/dist/ui/assets/{dist-Ci080vMX.js → dist-DA8XNg-Y.js} +1 -1
- package/dist/ui/assets/{ensure-speech-assets-BCU8IdGW.js → ensure-speech-assets-DfuH4JcH.js} +1 -1
- package/dist/ui/assets/esp8266-DBIA5vli.js +1 -0
- package/dist/ui/assets/{esptool-operations-neFaXd8_.js → esptool-operations-BB4rdljh.js} +2 -2
- package/dist/ui/assets/follower-navigate-watcher-CnHWEu_l.js +1 -0
- package/dist/ui/assets/{fs-BjT1eFTD.js → fs-BB_SAbwd.js} +2 -2
- package/dist/ui/assets/{fs-D-HMqXVP.js → fs-CifG7P-Y.js} +1 -1
- package/dist/ui/assets/{github-D9t7xSl1.js → github-CY23tpOQ.js} +2 -2
- package/dist/ui/assets/{github-CAePhIbS.js → github-aGqhwptW.js} +1 -1
- package/dist/ui/assets/{github-copilot-CIvumkNp.js → github-copilot-BkNOwYnI.js} +1 -1
- package/dist/ui/assets/{github-copilot-CBjlNHA-.js → github-copilot-R68yFv1B.js} +1 -1
- package/dist/ui/assets/handoff-link-ywwq4k0t.js +1 -0
- package/dist/ui/assets/{hear-DlTGQBhm.js → hear-KVAlB2u3.js} +1 -1
- package/dist/ui/assets/{kernel-worker-YTlCGWHk.js → kernel-worker-D4No74Rn.js} +1103 -1094
- package/dist/ui/assets/{kokoro-engine-Cwt0vpZc.js → kokoro-engine-B4NSL__G.js} +1 -1
- package/dist/ui/assets/{lick-ws-bridge-D5EC6geF.js → lick-ws-bridge-Cu_XNsz1.js} +1 -1
- package/dist/ui/assets/{local-llm-CVuUH-FR.js → local-llm-QFAiSycD.js} +1 -1
- package/dist/ui/assets/main-Los951iC.js +24 -0
- package/dist/ui/assets/{main-cherry-BRV9Q0tu.js → main-cherry-CpYPaCCM.js} +1 -1
- package/dist/ui/assets/{mount-Q0JajjqW.js → mount-CH65QvHP.js} +1 -1
- package/dist/ui/assets/{mount-BqN1qscB.js → mount-Cip4yCuf.js} +2 -2
- package/dist/ui/assets/navigation-watcher-BxAAD5To.js +1 -0
- package/dist/ui/assets/new-session-FPsFIQIp.js +2 -0
- package/dist/ui/assets/{oauth-bootstrap-Bsf5hex-.js → oauth-bootstrap-h_UbHxpr.js} +2 -2
- package/dist/ui/assets/{openai-codex-BsdKIPSM.js → openai-codex-Drx-sWx6.js} +1 -1
- package/dist/ui/assets/{openai-codex-Czv94Ma4.js → openai-codex-qKO3SnGT.js} +1 -1
- package/dist/ui/assets/page-follower-tray-eyqLk3No.js +4 -0
- package/dist/ui/assets/{panel-rpc-handlers-DAQb1krb.js → panel-rpc-handlers-DDn16E6S.js} +1 -1
- package/dist/ui/assets/{provider-DLxi6mrk.js → provider-BDEQqYu6.js} +1 -1
- package/dist/ui/assets/{provider-DCpkR_Qg.js → provider-Bk5tR4W8.js} +2 -2
- package/dist/ui/assets/provider-store-access-BArZuESx.js +1 -0
- package/dist/ui/assets/provider-store-access-DzzBbuY1.js +1 -0
- package/dist/ui/assets/{providers-DJP5gGuq.js → providers-echBmlIf.js} +1 -1
- package/dist/ui/assets/{quick-llm-BcoHwyQn.js → quick-llm-0pwkjMlK.js} +1 -1
- package/dist/ui/assets/{remote-terminal-view-Qv9yhXQm.js → remote-terminal-view-DMnqOfIb.js} +1 -1
- package/dist/ui/assets/session-freezer-CehY1SFW.js +1 -0
- package/dist/ui/assets/{speak-DSQu3MNf.js → speak-XL1dWoHM.js} +1 -1
- package/dist/ui/assets/{sprinkle-manager-CF1Tm9ux.js → sprinkle-manager-UbZsrwBz.js} +1 -1
- package/dist/ui/assets/{store-BaxQOlne.js → store-CVZ6ZIji.js} +1 -1
- package/dist/ui/assets/{sudo-zd7NVwiq.js → sudo-BDZXheEy.js} +1 -1
- package/dist/ui/assets/{transformers-env-BTGVMAtZ.js → transformers-env-B6C1TC4q.js} +1 -1
- package/dist/ui/assets/{tray-leave-runtime-CnI2i9ms.js → tray-leave-runtime-Co8XC8tK.js} +1 -1
- package/dist/ui/assets/{upgrade-detection-BI-uYXbr.js → upgrade-detection-D4OMdch4.js} +1 -1
- package/dist/ui/assets/{wc-attach-M_i0c5wx.js → wc-attach-CkKgwT4V.js} +2 -2
- package/dist/ui/assets/{wc-detached-Ba7UK8gf.js → wc-detached-CzW2c8mL.js} +1 -1
- package/dist/ui/assets/{wc-extension-Bp34NH6Q.js → wc-extension-C48rbDns.js} +2 -2
- package/dist/ui/assets/wc-follower-Ch4ryyJH.js +2 -0
- package/dist/ui/assets/{wc-live-DOXieP5u.js → wc-live-BmYXRpZq.js} +16 -16
- package/dist/ui/assets/{wc-nav-CR54-w22.js → wc-nav-CVU90Xz2.js} +2 -2
- package/dist/ui/assets/{wc-onboarding-1HOilLVc.js → wc-onboarding-COda-Pq8.js} +2 -2
- package/dist/ui/assets/{wc-permissions-mVh0SOdZ.js → wc-permissions-Wqap3kzM.js} +2 -2
- package/dist/ui/assets/{wc-placeholder-BkzKHPa-.js → wc-placeholder-9oJom_IG.js} +3 -3
- package/dist/ui/assets/{wc-settings-RrQsJKwK.js → wc-settings-BbinzQiG.js} +2 -2
- package/dist/ui/assets/{wc-shell-F5Wp6J-I.js → wc-shell-BcXdkTTf.js} +4 -4
- package/dist/ui/assets/{wc-sprinkles-k6cLXsFx.js → wc-sprinkles-1eY8GtQO.js} +2 -2
- package/dist/ui/assets/wc-tray-DtDqIPiy.js +2 -0
- package/dist/ui/assets/{whisper-engine-D-mBGSOg.js → whisper-engine-wTAqjv33.js} +1 -1
- package/dist/ui/assets/{xai-grok-CzzsjmSz.js → xai-grok-BkSvCOYm.js} +1 -1
- package/dist/ui/assets/{xai-grok-BwWScA_U.js → xai-grok-D5if0nkQ.js} +1 -1
- package/dist/ui/electron-overlay-entry.js +14 -14
- package/dist/ui/index.html +2 -2
- package/dist/ui/packages/webapp/index.html +2 -2
- package/package.json +1 -1
- package/dist/ui/assets/dip-7QqevBKp.js +0 -1
- package/dist/ui/assets/esp8266-DmQ_hpdd.js +0 -1
- package/dist/ui/assets/main-D1QY7_Z4.js +0 -24
- package/dist/ui/assets/new-session-D6GL01oR.js +0 -2
- package/dist/ui/assets/provider-store-access-Dcrp0Diw.js +0 -1
- package/dist/ui/assets/provider-store-access-Yo_qZb2h.js +0 -1
- package/dist/ui/assets/session-freezer-BhC1zshT.js +0 -1
- package/dist/ui/assets/wc-tray-DWJypzjx.js +0 -5
|
@@ -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-BcXdkTTf.js","assets/chunk-aKtaBQYM.js","assets/preload-helper-zJ_50EbN.js","assets/icons-BU6llBsN.js","assets/main-Los951iC.js","assets/modulepreload-polyfill-Dezn_h7o.js","assets/account-store-__nJFJuH.js","assets/dist-BmWy99kl.js","assets/event-stream-BJI_nGaK.js","assets/json-parse-BUunmmNl.js","assets/__vite-browser-external-C7iut881.js","assets/context-compaction-CFWyOzX1.js","assets/logger-DDBAeTLF.js","assets/src-DlEHAkLd.js","assets/proxied-fetch-CKDBmEMl.js","assets/fetch-body-D2PwksUW.js","assets/secret-topology-bwXIzzAK.js","assets/secrets-bridge-client-BSipj-5f.js","assets/panel-rpc-DqT2FG7c.js","assets/bedrock-camp-9-QEmC9Z.js","assets/transform-messages-DzB_lMo-.js","assets/tool-ui-DfXu6quJ.js","assets/clipboard-DgFtRQbq.js","assets/soundscape-cues-5_sT5Un6.js","assets/speech-CqQdPtyQ.js","assets/wc-shell-WkeczD9x.css"])))=>i.map(i=>d[i]);
|
|
2
2
|
import{t as e}from"./preload-helper-zJ_50EbN.js";import{t}from"./wc-permissions-registry-CR1rTd2H.js";var n=8,r=2e3,i=[`/workspace`,`/shared`,`/tmp`],a=8,o=new Set([`node_modules`,`.git`]),s=1e4,c=/\.(png|jpe?g|gif|webp|svg|avif)$/i,l=4*1024*1024,u=256*1024;function d(){return`att-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}function f(e){let t=``,n=32768;for(let r=0;r<e.length;r+=n)t+=String.fromCharCode(...e.subarray(r,r+n));return btoa(t)}function p(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 m(e,t){let n={id:d(),name:e,size:t.length};if(c.test(e))return t.length>l?{...n,mimeType:p(e),kind:`image`,error:`image too large to inline`}:{...n,mimeType:p(e),kind:`image`,data:f(t)};let r={...n,mimeType:p(e),kind:`file`};return t.length>u?{...r,error:`file too large to inline`}:r}async function h(e){let t=new Uint8Array(await e.arrayBuffer()),n=m(e.name,t);return e.type?{...n,mimeType:e.type}:n}function g(e,t){let n=t.match(/^data:(image\/[^;]+);base64,(.+)$/);return n?{id:d(),name:e,mimeType:n[1],size:Math.floor(n[2].length*3/4),kind:`image`,data:n[2]}:null}var _=`/tmp/upload`,v=1568;function y(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}async function b(e,t,n){await e.mkdir(_,{recursive:!0}).catch(()=>void 0);let r=`${_}/${Date.now()}-${t.replace(/[^A-Za-z0-9._-]+/g,`_`)}`;return await e.writeFile(r,n),r}async function x(e,t=v){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,n){let r=g(e,t);if(!r)return null;let i;return n&&r.data&&(i=await b(n,e,y(r.data)).catch(()=>void 0)),{...g(e,await x(t).catch(()=>t))??r,name:e,path:i}}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:d(),name:e,mimeType:t.type||`video/webm`,size:r.length,kind:`file`,path:i}:null}async function w(e){let t=[],n=i.map(e=>({dir:e,depth:0}));for(;n.length>0&&t.length<r;){let{dir:i,depth:s}=n.shift(),c;try{c=await e.readDir(i)}catch{continue}for(let e of c){let c=`${i}/${e.name}`;if(e.type===`directory`)s<a&&!o.has(e.name)&&n.push({dir:c,depth:s+1});else if(t.push(c),t.length>=r)break}}return t}function T(e){let t=null;return async r=>{let i=await e.openReader();(!t||Date.now()-t.at>s)&&(t={at:Date.now(),paths:await w(i)});let a=e=>r===``||e.toLowerCase().includes(r),o=t.paths.filter(e=>a(e)).slice(0,n).map(e=>({id:e,label:e.split(`/`).pop()??e,sub:e.slice(0,e.lastIndexOf(`/`))})),c=[];try{c=(await i.readDir(`/workspace/skills`)).filter(e=>e.type===`directory`&&a(e.name)).slice(0,n).map(e=>({id:e.name,label:e.name}))}catch{}let l=(await e.listConversations().catch(()=>[])).filter(e=>a(e.label)).slice(0,n);return[{kind:`file`,label:`Files`,icon:`file`,entries:o},{kind:`skill`,label:`Skills`,icon:`sparkles`,entries:c},{kind:`conversation`,label:`Conversations`,icon:`message-square`,entries:l}]}}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-zJ_50EbN.js";import{t}from"./wc-permissions-
|
|
|
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-BcXdkTTf.js`).then(e=>e.f);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])).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=t();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,n){let r=t();if(!r)return null;let i=await r.prompt({kinds:e,description:n});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=e.split(`/`).pop()??e;if(c.test(r)){let i=await(await t.openReader()).readFile(e),a=m(r,typeof i==`string`?new TextEncoder().encode(i):i);n.add({...a,error:void 0,path:e});return}let i=0;try{i=(await(await t.openReader()).stat(e)).size}catch{}n.add({id:d(),name:r,mimeType:p(r),size:i,kind:`file`,path:e})}function H(e,t){let n=t.value??t.getAttribute(`value`)??``,r=n&&!n.endsWith(` `)?` `:``;t.setAttribute(`value`,`${n}${r}Use the "${e}" skill: `)}async function U(e,t,n){if(e.kind===`upload`&&e.file instanceof File){let r=new Uint8Array(await e.file.arrayBuffer());n.add(await B(await h(e.file),r,t))}else e.kind===`capture`?await R(e,t,n):e.kind===`file`&&typeof e.id==`string`?await V(e.id,t,n):e.kind===`skill`&&typeof e.label==`string`?H(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 W(e){let{inputCard:t,log:n}=e,r=new O(t),i=t.querySelector(`slicc-add-menu`);return i&&(i.provider=T({openReader:e.openReader,listConversations:e.listConversations}),i.setAttribute(`global-drop`,``)),t.addEventListener(`slicc-add`,t=>{let i=t.detail;i&&U(i,e,r).catch(e=>n.error(`WC add-menu action failed`,e))}),r}export{W as wireWcAttach};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{x as e}from"./main-Los951iC.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-zJ_50EbN.js";import{wireWcDetached as t}from"./wc-detached-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/main-Los951iC.js","assets/chunk-aKtaBQYM.js","assets/modulepreload-polyfill-Dezn_h7o.js","assets/preload-helper-zJ_50EbN.js","assets/account-store-__nJFJuH.js","assets/dist-BmWy99kl.js","assets/event-stream-BJI_nGaK.js","assets/json-parse-BUunmmNl.js","assets/__vite-browser-external-C7iut881.js","assets/context-compaction-CFWyOzX1.js","assets/logger-DDBAeTLF.js","assets/src-DlEHAkLd.js","assets/proxied-fetch-CKDBmEMl.js","assets/fetch-body-D2PwksUW.js","assets/secret-topology-bwXIzzAK.js","assets/secrets-bridge-client-BSipj-5f.js","assets/panel-rpc-DqT2FG7c.js","assets/bedrock-camp-9-QEmC9Z.js","assets/transform-messages-DzB_lMo-.js","assets/tool-ui-DfXu6quJ.js","assets/clipboard-DgFtRQbq.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{t as e}from"./preload-helper-zJ_50EbN.js";import{wireWcDetached as t}from"./wc-detached-CzW2c8mL.js";import{attachWcClient as n,createWcLiveCallbacks as r,n as i,prepareWcShell as a}from"./wc-live-BmYXRpZq.js";async function o(o,s,c=!1){let l=a(o,`extension · wc`),u=new i(r(l.wiring));n(l,u,s),t({client:u,isDetachedSelf:c});let{setupSudoExtension:d}=await e(async()=>{let{setupSudoExtension:e}=await import(`./main-Los951iC.js`).then(e=>e.d);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]));await d({log:s}),u.requestState(),s.info(`WC extension shell connected to offscreen engine`)}export{o as mountWcUiExtension};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/wc-live-BmYXRpZq.js","assets/preload-helper-zJ_50EbN.js","assets/account-store-__nJFJuH.js","assets/chunk-aKtaBQYM.js","assets/dist-BmWy99kl.js","assets/event-stream-BJI_nGaK.js","assets/json-parse-BUunmmNl.js","assets/__vite-browser-external-C7iut881.js","assets/context-compaction-CFWyOzX1.js","assets/logger-DDBAeTLF.js","assets/src-DlEHAkLd.js","assets/proxied-fetch-CKDBmEMl.js","assets/fetch-body-D2PwksUW.js","assets/secret-topology-bwXIzzAK.js","assets/secrets-bridge-client-BSipj-5f.js","assets/panel-rpc-DqT2FG7c.js","assets/bedrock-camp-9-QEmC9Z.js","assets/transform-messages-DzB_lMo-.js","assets/tool-ui-DfXu6quJ.js","assets/wc-shell-BcXdkTTf.js","assets/icons-BU6llBsN.js","assets/main-Los951iC.js","assets/modulepreload-polyfill-Dezn_h7o.js","assets/clipboard-DgFtRQbq.js","assets/soundscape-cues-5_sT5Un6.js","assets/speech-CqQdPtyQ.js","assets/wc-shell-WkeczD9x.css","assets/hid-device-registry-D2LsJCRr.js","assets/usb-operations-CkcrNzZw.js","assets/serial-port-registry-Bc4wlwED.js","assets/usb-device-registry-BP58Vi0S.js","assets/sprinkle-bridge-Du2dCM8G.js","assets/shared-Bn9ltvMZ.js","assets/mime-types-ugOWOUZ9.js","assets/path-utils-DU6QhF_k.js","assets/sprinkle-renderer-GiRRbdBx.js","assets/theme-BBwuyzvz.js","assets/wc-permissions-registry-CR1rTd2H.js","assets/follower-navigate-watcher-CnHWEu_l.js","assets/navigation-watcher-BxAAD5To.js","assets/handoff-link-ywwq4k0t.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{t as e}from"./preload-helper-zJ_50EbN.js";import{t}from"./logger-DDBAeTLF.js";import{b as n,m as r,p as i,u as a,v as o}from"./main-Los951iC.js";import{n as s}from"./remote-cdp-transport-Cf0sDZ5N.js";import{i as c}from"./wc-shell-BcXdkTTf.js";import{prepareWcShell as l,t as u}from"./wc-live-BmYXRpZq.js";import{t as d}from"./page-follower-tray-eyqLk3No.js";import{WcSprinkleZone as f}from"./wc-sprinkles-1eY8GtQO.js";var p=t(`follower-switch-out`);function m(e,t){t.stopFollower();try{t.storage.removeItem(i),e.workerBaseUrl===null?t.storage.removeItem(r):t.storage.setItem(r,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(),r=n(e);r!==e&&t.replaceHref(r)}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 h=t(`wc-follower`),g={sendMessage:()=>{},onEvent:()=>()=>{},stop:()=>{}};function _(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 v(e,t,n){let r=e=>{let t=document.createElement(`div`);return t.className=`wcui-placeholder`,t.textContent=e,t};e.style.display=`none`,e.parentElement?.append(r(`Files live on the leader. A follower mirrors the leader’s chat, sprinkles, and browser tabs — not its filesystem.`)),t.append(r(`The shell runs on the leader. A follower has no local terminal — drive the session through chat.`)),n.append(r(`Memory lives on the leader. A follower has no local memory store.`))}async function y(t,n,r){let i=r===`cherry`,p;try{p=await a({runtimeMode:r,envBaseUrl:null,window,log:n})}catch(e){let n=e instanceof Error?e.message:String(e);h.error(`follower prelude failed`,{runtimeMode:r,error:n}),_(t,n);return}let y=i?p.cherryJoinUrl:o(window.location.href,window.localStorage);if(!y){h.error(`follower mount with no join URL — falling back to live boot`);let{mountWcUiLive:r}=await e(async()=>{let{mountWcUiLive:e}=await import(`./wc-live-BmYXRpZq.js`);return{mountWcUiLive: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]));return r(t,n,`standalone`)}let b=l(t,i?`cherry · follower`:`follower`);v(b.refs.fileTree,b.refs.termSurface,b.refs.memoryHost);let x=new u({thread:b.refs.thread,agent:g});b.setController(x);let S=`Connecting to leader…`,C=(e,t)=>{b.refs.inputCard.setAttribute(`placeholder`,t),e?b.refs.inputCard.removeAttribute(`disabled`):b.refs.inputCard.setAttribute(`disabled`,``)};C(!1,S),b.refs.inputCard.addEventListener(`submit`,e=>{let t=c(e);t&&x.sendUserMessage(t)});let w=new f(b.refs).callbacks(),T=d({joinUrl:y,runtime:i?s:`slicc-standalone`,browserAPI:p.browser,onSnapshot:e=>x.loadMessages(e),onUserMessage:(e,t,n,r)=>x.addUserMessage(e,r),onStatus:e=>x.setProcessing(e===`processing`),setChatAgent:e=>x.setAgent(e),onConnectionChange:e=>C(e,e?`Ask the leader, or describe a change…`:S),onGaveUp:e=>{h.error(`follower gave up reaching the leader`,{error:e}),C(!1,`Couldn't reach the leader. Reload to retry.`)},addSprinkle:w.addSprinkle,removeSprinkle:w.removeSprinkle,onOpen:e=>{/^https?:\/\//.test(e)?window.open(e,`_blank`,`noopener`):h.warn(`follower sprinkle open() of a local path is unavailable`,{path:e})},...i?{onCherrySliccEvent:(e,t)=>p.cherryTransport?.emitSliccEventToHost(e,t)}:{}});i&&p.cherryTransport&&(p.cherryTransport.onHostEvent=(e,t)=>T.currentSync?.sendCherryHostEvent(e,t));let E=null;if(!i){let{startFollowerNavigateWatcher:t}=await e(async()=>{let{startFollowerNavigateWatcher:e}=await import(`./follower-navigate-watcher-CnHWEu_l.js`);return{startFollowerNavigateWatcher:e}},__vite__mapDeps([38,39,9,40]));E=t(p.realCdpTransport,()=>T.currentSync)}b.refs.avatarMenu.items=[{kind:`separator`},{id:`tray-stop`,label:`Disconnect from leader`,icon:`unplug`,danger:!0}],b.refs.avatarMenu.addEventListener(`slicc-avatar-action`,e=>{e.detail?.id===`tray-stop`&&window.dispatchEvent(new CustomEvent(`slicc:tray-leave`,{detail:{workerBaseUrl:null}}))}),window.addEventListener(`slicc:tray-leave`,e=>{m({workerBaseUrl:(e.detail??{}).workerBaseUrl??null},{storage:window.localStorage,stopFollower:()=>{E?.(),T.stop()},getHref:()=>window.location.href,replaceHref:e=>window.history.replaceState(null,``,e),reload:()=>window.location.reload()})}),h.info(`follower mounted`,{runtimeMode:r,isCherry:i})}export{y as mountWcUiFollower};
|