sliccy 6.78.7 → 6.78.9
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/node-server/_shared/agent-wire-types.d.ts +11 -0
- package/dist/node-server/_shared/agent-wire-types.d.ts.map +1 -1
- package/dist/ui/.vite/manifest.json +117 -117
- package/dist/ui/assets/{account-store-IibHMZIq.js → account-store-CnsmJTiC.js} +1 -1
- package/dist/ui/assets/{account-store-CwH3gdM6.js → account-store-sCJNhEJc.js} +1 -1
- package/dist/ui/assets/{adobe-D1ETt7Cu.js → adobe-BmZlTIHV.js} +1 -1
- package/dist/ui/assets/{adobe-B3tKoHm5.js → adobe-DrbgepLs.js} +1 -1
- package/dist/ui/assets/{apply-layout-DzAPFklE.js → apply-layout-CyP8KFko.js} +1 -1
- package/dist/ui/assets/{apps-C_x3xuLi.js → apps-CzX14eUC.js} +1 -1
- package/dist/ui/assets/{azure-openai-Cn8VpkVX.js → azure-openai-Bki9lYxG.js} +1 -1
- package/dist/ui/assets/{azure-openai-DrY5hTU-.js → azure-openai-Ud9tVHmF.js} +1 -1
- package/dist/ui/assets/{cerebras-DdyVZr1X.js → cerebras-C7R1UdzZ.js} +1 -1
- package/dist/ui/assets/{cerebras-Ds6hEFKK.js → cerebras-Dtk6OzXP.js} +1 -1
- package/dist/ui/assets/{connect-surface-gm4aGjwZ.js → connect-surface-BxNJA7iv.js} +1 -1
- package/dist/ui/assets/{fs-BpwWRcYl.js → fs-6Kmk0J0E.js} +1 -1
- package/dist/ui/assets/{fs-DUv6LZMB.js → fs-kuooFNRE.js} +2 -2
- package/dist/ui/assets/{github-wZYTIibn.js → github-BdW2572J.js} +1 -1
- package/dist/ui/assets/{github-CphW-xnf.js → github-CLNkhiCe.js} +2 -2
- package/dist/ui/assets/{github-copilot-BrqyHDGO.js → github-copilot-BmhaqvG6.js} +1 -1
- package/dist/ui/assets/{github-copilot-DgTbRHVy.js → github-copilot-DbvzNw15.js} +1 -1
- package/dist/ui/assets/{github-install-BtSZmuSc.js → github-install-B1XZ8Myl.js} +1 -1
- package/dist/ui/assets/{github-zip-CkdRx9mJ.js → github-zip-pFpcWqVp.js} +1 -1
- package/dist/ui/assets/{js-realm-worker-Cz8c9rJo.js → js-realm-worker-CR-Kvat6.js} +1 -1
- package/dist/ui/assets/{kernel-worker-DKeFEv9J.js → kernel-worker-DFB7IiLN.js} +30 -30
- package/dist/ui/assets/{local-llm-BkSw5S_R.js → local-llm-DC0Lpcl1.js} +1 -1
- package/dist/ui/assets/{local-llm-D-Yd5DdC.js → local-llm-DfcGatXy.js} +1 -1
- package/dist/ui/assets/{main-mjOJwKpC.js → main-BpN2pv7r.js} +3 -3
- package/dist/ui/assets/{mount-BRDFTndd.js → mount-BDyX1V8B.js} +2 -2
- package/dist/ui/assets/{mount-BelJ5e7Q.js → mount-BXxN3ycW.js} +1 -1
- package/dist/ui/assets/{mount-recovery-CpVhpTg4.js → mount-recovery-MofiXGcy.js} +1 -1
- package/dist/ui/assets/{new-session-jM6TqGVu.js → new-session-Cuc0qoD9.js} +2 -2
- package/dist/ui/assets/{oauth-bootstrap-DaTpM5CJ.js → oauth-bootstrap-DIApEeYx.js} +2 -2
- package/dist/ui/assets/{openai-codex-CwzBQdtV.js → openai-codex-CDtrSgVp.js} +1 -1
- package/dist/ui/assets/{openai-codex-Cp4wZm_q.js → openai-codex-CVyivHps.js} +1 -1
- package/dist/ui/assets/{openrouter-VCMtZsQD.js → openrouter-BqkQBVxR.js} +1 -1
- package/dist/ui/assets/{openrouter-DUYGQbIf.js → openrouter-CefPwhVb.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-KsnkV4yM.js → openrouter-oauth-CpI40-W0.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-SIGMQc6P.js → openrouter-oauth-uMJh1SNZ.js} +1 -1
- package/dist/ui/assets/{panel-rpc-handlers-BUS5Ei4R.js → panel-rpc-handlers-B42iUktG.js} +2 -2
- package/dist/ui/assets/{provider-Blkrs91z.js → provider-BYEfdG12.js} +2 -2
- package/dist/ui/assets/{provider-3mlwNMUC.js → provider-DaDTUNcR.js} +1 -1
- package/dist/ui/assets/{provider-settings-BJ8Gpzt6.js → provider-settings-B6mT4Py7.js} +1 -1
- package/dist/ui/assets/{provider-settings-BUZuczTe.js → provider-settings-DWk4K5Ps.js} +1 -1
- package/dist/ui/assets/provider-store-access-BdIteQA6.js +1 -0
- package/dist/ui/assets/{provider-store-access-BENopjAh.js → provider-store-access-CEsHOKeq.js} +2 -2
- package/dist/ui/assets/{providers-0JphlTzq.js → providers-D88W3d8s.js} +1 -1
- package/dist/ui/assets/{providers-C0i65QFv.js → providers-DQj-gKPL.js} +2 -2
- package/dist/ui/assets/{quick-llm-BO5OaZ2-.js → quick-llm-BK48XMzf.js} +1 -1
- package/dist/ui/assets/{recovery-screen-B0g0f-7d.js → recovery-screen-C5oRhuSN.js} +1 -1
- package/dist/ui/assets/{redirect-uri-BGPRFabj.js → redirect-uri-BKiNDe8C.js} +1 -1
- package/dist/ui/assets/{session-freezer-gxhGpbbe.js → session-freezer-iEisdDxj.js} +3 -3
- package/dist/ui/assets/{setup-feature-flags-remote-hpekncb6.js → setup-feature-flags-remote-CPRkyJKl.js} +1 -1
- package/dist/ui/assets/{setup-standalone-prelude-10KJsmBu.js → setup-standalone-prelude-DBkjhg-_.js} +1 -1
- package/dist/ui/assets/{setup-sudo-BPtdZkPR.js → setup-sudo-HTeGV6Ga.js} +2 -2
- package/dist/ui/assets/{skills-DVerEKGV.js → skills-CZnGTVbc.js} +1 -1
- package/dist/ui/assets/slicc-version-DMvGNapT.js +1 -0
- package/dist/ui/assets/{store-BPlm2lGW.js → store-2igf_fH_.js} +1 -1
- package/dist/ui/assets/{store-BPT6DMx8.js → store-NwH8upFf.js} +1 -1
- package/dist/ui/assets/{sudo-C-xOIpT3.js → sudo-6xy4iEJ2.js} +1 -1
- package/dist/ui/assets/{upgrade-detection-CLQLYiLP.js → upgrade-detection-CtGCkZf7.js} +1 -1
- package/dist/ui/assets/{wc-extension-BVEJ4E3h.js → wc-extension-3n5EApcm.js} +2 -2
- package/dist/ui/assets/{wc-follower-A2jrpWN6.js → wc-follower-DUb5jymW.js} +3 -3
- package/dist/ui/assets/wc-live-CPk1IDWW.js +41 -0
- package/dist/ui/assets/{wc-nav-fFi174rc.js → wc-nav-Dj91i4kE.js} +2 -2
- package/dist/ui/assets/{wc-onboarding-B6dy32Bg.js → wc-onboarding-CyaDC8Bq.js} +2 -2
- package/dist/ui/assets/{wc-placeholder-BgKBEqNb.js → wc-placeholder-SkY0nxjc.js} +2 -2
- package/dist/ui/assets/{wc-settings-CTmoYtxd.js → wc-settings-B1lJEzMZ.js} +2 -2
- package/dist/ui/assets/{wc-shell-Cn5caApf.js → wc-shell-DQcUUMnI.js} +3 -3
- package/dist/ui/assets/{wc-sprinkles-KPvYG7Rj.js → wc-sprinkles-BdficAU2.js} +2 -2
- package/dist/ui/assets/{wc-tray-fiM2jVM9.js → wc-tray-BK__QVhn.js} +2 -2
- package/dist/ui/assets/{xai-grok-CrXtPuqB.js → xai-grok-Dj1EOyjU.js} +1 -1
- package/dist/ui/assets/{xai-grok-bz1D2Cqf.js → xai-grok-DotZmJWw.js} +1 -1
- package/dist/ui/index.html +6 -6
- package/dist/ui/packages/webapp/index.html +6 -6
- package/package.json +1 -1
- package/dist/ui/assets/provider-store-access-BCLvVLNh.js +0 -1
- package/dist/ui/assets/slicc-version-BAW9oaku.js +0 -1
- package/dist/ui/assets/wc-live-D5EYdIAP.js +0 -41
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/provider-settings-
|
|
2
|
-
import{t as e}from"./preload-helper-Czpn1I53.js";import{n as t}from"./runtime-env-Dlaokqg1.js";import"./runtime-env-CgsZ7LTp.js";import{r as n}from"./feature-flags-ByMXaIc4.js";import{f as r,t as i}from"./tray-runtime-config-CRGwg9SK.js";import{t as a}from"./tray-follower-status-BAjnN7Ar.js";import{n as o}from"./clipboard-eqmn97SP.js";import{t as s}from"./tray-join-url-BIvzbiFR.js";import{n as c}from"./tray-leader-DcRtwWl-.js";import{n as l,r as u}from"./host-command-BsHBnvjR.js";function d(e){let t=e.find(e=>e.userAvatar&&e.userName)??e.find(e=>e.userName);return t?.userName?{name:t.userName,avatarUrl:t.userAvatar,provider:t.providerId}:null}function f(e){return e.flatMap(e=>e.models.map(t=>({name:t.name??t.id,provider:e.providerName,id:`${e.providerId}:${t.id}`})))}function p(e,t){try{let n=t();e.setAttribute(`model`,n.name??n.id)}catch{}}function m(e){let t=[{id:`settings`,label:`Account settings…`,icon:`settings`},{id:`theme`,label:`Theme settings…`,icon:`palette`},{id:`export-transcript`,label:`Export transcript`,icon:`download`,disabled:e||void 0}];return n(`experimental-settings`)&&t.push({id:`experimental-settings`,label:`Experimental features…`,icon:`flask-conical`}),t}async function h(n){let{refs:r,client:i,log:o,onExportTranscript:l}=n,{getAllAvailableModels:u,getAccounts:h,resolveCurrentModel:b}=await e(async()=>{let{getAllAvailableModels:e,getAccounts:t,resolveCurrentModel:n}=await import(`./provider-settings-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/provider-settings-B6mT4Py7.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/account-store-sCJNhEJc.js","assets/preload-helper-Czpn1I53.js","assets/bedrock-camp-qpZqnqLa.js","assets/diagnostics-DN_idNHx.js","assets/transform-messages-N_eMsP2M.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-gbjkpjE_.js","assets/libesm-BI4UHVqp.js","assets/logger-DDBAeTLF.js","assets/src-CAWTvdAa.js","assets/proxied-fetch-B4g-4VbQ.js","assets/base64-DpPqYZJF.js","assets/runtime-env-Dlaokqg1.js","assets/fetch-body-D2PwksUW.js","assets/float-topology-BgioAcOd.js","assets/runtime-env-E-i2SW1s.js","assets/secret-topology-xLmXoozo.js","assets/secrets-bridge-client-cWDAnFqs.js","assets/port-bridge-client-BbVs1yhx.js","assets/image-markers-BXtVm4og.js","assets/tool-ui-DfXu6quJ.js","assets/providers-DQj-gKPL.js","assets/panel-rpc-B3MSVImO.js","assets/telemetry-BVzuNdvW.js","assets/runtime-env-CgsZ7LTp.js","assets/tray-runtime-config-CRGwg9SK.js","assets/messages-BD4p8GuF.js","assets/tray-follower-status-BAjnN7Ar.js","assets/clipboard-eqmn97SP.js","assets/tray-join-url-BIvzbiFR.js","assets/wc-detached-B3WCbbZT.js","assets/wc-settings-B1lJEzMZ.js","assets/feature-flags-ByMXaIc4.js","assets/theme-engine-By4GU_Wc.js","assets/theme-CXRqxpw6.js","assets/discovery-preference-fqUhjzeE.js","assets/timestamp-preference-sKwBl5I8.js","assets/legacy-styles-DcRu2WCJ.js","assets/sync-dialog-ACgl0n-p.js","assets/icons-ZLR7gmJ4.js","assets/follower-presentation-DqBw0YiV.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{t as e}from"./preload-helper-Czpn1I53.js";import{n as t}from"./runtime-env-Dlaokqg1.js";import"./runtime-env-CgsZ7LTp.js";import{r as n}from"./feature-flags-ByMXaIc4.js";import{f as r,t as i}from"./tray-runtime-config-CRGwg9SK.js";import{t as a}from"./tray-follower-status-BAjnN7Ar.js";import{n as o}from"./clipboard-eqmn97SP.js";import{t as s}from"./tray-join-url-BIvzbiFR.js";import{n as c}from"./tray-leader-DcRtwWl-.js";import{n as l,r as u}from"./host-command-BsHBnvjR.js";function d(e){let t=e.find(e=>e.userAvatar&&e.userName)??e.find(e=>e.userName);return t?.userName?{name:t.userName,avatarUrl:t.userAvatar,provider:t.providerId}:null}function f(e){return e.flatMap(e=>e.models.map(t=>({name:t.name??t.id,provider:e.providerName,id:`${e.providerId}:${t.id}`})))}function p(e,t){try{let n=t();e.setAttribute(`model`,n.name??n.id)}catch{}}function m(e){let t=[{id:`settings`,label:`Account settings…`,icon:`settings`},{id:`theme`,label:`Theme settings…`,icon:`palette`},{id:`export-transcript`,label:`Export transcript`,icon:`download`,disabled:e||void 0}];return n(`experimental-settings`)&&t.push({id:`experimental-settings`,label:`Experimental features…`,icon:`flask-conical`}),t}async function h(n){let{refs:r,client:i,log:o,onExportTranscript:l}=n,{getAllAvailableModels:u,getAccounts:h,resolveCurrentModel:b}=await e(async()=>{let{getAllAvailableModels:e,getAccounts:t,resolveCurrentModel:n}=await import(`./provider-settings-B6mT4Py7.js`).then(e=>e.t);return{getAllAvailableModels:e,getAccounts:t,resolveCurrentModel:n}},__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])),D=()=>{r.composerMeta.models=f(u())},O=()=>p(r.composerMeta,b);D();let k=null;await T(r,i,()=>{let e=k;k=null,e!=null&&r.thread?.dispatchEvent(new CustomEvent(`slicc-error-retry`,{detail:{messageId:e},bubbles:!0,composed:!0}))});let A=t(),j=()=>{let e=d(h()),t=r.avatarMenu.querySelector(`slicc-avatar`),n=r.inputCard.querySelector(`slicc-send-button`);e?(t?.removeAttribute(`initials`),t?.setAttribute(`name`,e.name),e.avatarUrl&&(t?.setAttribute(`src`,e.avatarUrl),n?.setAttribute(`src`,e.avatarUrl)),r.avatarMenu.user={name:e.name,provider:e.provider}):(t?.removeAttribute(`name`),t?.removeAttribute(`src`),t?.removeAttribute(`initials`),n?.removeAttribute(`src`),r.avatarMenu.user={name:`SLICC`,provider:A?`extension`:`standalone`})};j();let M=()=>{if(A)return[];let e=s(c(),a()),t=[{kind:`separator`}];return e.kind===`leader-offer`?t.push({id:`tray-enable`,label:e.label,icon:`radio`}):e.kind===`leader-copy`?(t.push({id:`tray-copy`,label:`Copy tray join URL`,icon:`link`}),t.push({id:`tray-stop`,label:`Stop multi-browser sync`,icon:`square`,danger:!0})):e.kind===`leader-pending`?(t.push({kind:`caption`,label:e.caption}),t.push({id:`tray-stop`,label:`Stop multi-browser sync`,icon:`square`,danger:!0})):(t.push({kind:`caption`,label:e.caption}),t.push({id:`tray-stop`,label:`Disconnect from leader`,icon:`unplug`,danger:!0})),t},N=new URLSearchParams(window.location.search).has(`detached`),P=()=>A&&!N?[{id:`popout`,label:`Pop out into a tab`,icon:`external-link`}]:[],F=!1,I=()=>{r.avatarMenu.items=[...m(F),...P(),...M()]};I(),r.avatarMenu.addEventListener(`slicc-avatar-menu-toggle`,e=>{e.detail?.open&&I()});let L=g(o,D,j,()=>i.updateModel()),R=_(o),z=v(o);y(r,o),r.avatarMenu.addEventListener(`slicc-avatar-action`,t=>{let n=t.detail?.id;if(n&&x(n,o)){I();return}if(n===`popout`){e(async()=>{let{requestDetachedPopout:e}=await import(`./wc-detached-B3WCbbZT.js`);return{requestDetachedPopout:e}},__vite__mapDeps([33,29])).then(({requestDetachedPopout:e})=>e()).catch(e=>o.error(`detached popout request failed`,e));return}n===`settings`&&L(),n===`theme`&&R(),n===`experimental-settings`&&z(),n===`export-transcript`&&l&&(F=!0,I(),l().finally(()=>{F=!1,I()}))}),r.composerMeta.addEventListener(`add-ai`,L),S(r,L),C({refs:r,log:o,openSettings:L,setPendingReplayMessageId:e=>{k=e}}),await w({refs:r,log:o,openSettings:L,refreshModels:D,applyIdentity:j,client:i}),await E({refreshModels:D,refreshModelPill:O,applyIdentity:j,client:i})}function g(t,n,r,i){return()=>{e(async()=>{let{showWcSettings:e}=await import(`./wc-settings-B1lJEzMZ.js`);return{showWcSettings:e}},__vite__mapDeps([34,3,35,36,1,11,37,38,13,14,12,15,16,39])).then(({showWcSettings:e})=>e(t)).then(()=>{n(),r(),i()}).catch(e=>t.error(`WC settings dialog failed`,e))}}function _(t){return()=>{e(async()=>{let{showThemeSettings:e}=await import(`./wc-settings-B1lJEzMZ.js`);return{showThemeSettings:e}},__vite__mapDeps([34,3,35,36,1,11,37,38,13,14,12,15,16,39])).then(({showThemeSettings:e})=>e(t)).catch(e=>t.error(`Theme settings dialog failed`,e))}}function v(t){return()=>{e(async()=>{let{showExperimentalSettings:e}=await import(`./wc-settings-B1lJEzMZ.js`);return{showExperimentalSettings:e}},__vite__mapDeps([34,3,35,36,1,11,37,38,13,14,12,15,16,39])).then(({showExperimentalSettings:e})=>e(t)).catch(e=>t.error(`Experimental settings dialog failed`,e))}}function y(e,t){e.floatbar.addEventListener(`slicc-followers-click`,()=>{b(t,{copy:!1,initialTab:`status`})})}function b(t,n){let r=c().session?.joinUrl;r&&(n.copy&&o(r).catch(()=>void 0),e(async()=>{let{loadLegacyDialogStyles:e}=await import(`./legacy-styles-DcRu2WCJ.js`);return{loadLegacyDialogStyles:e}},__vite__mapDeps([40,3])).then(({loadLegacyDialogStyles:e})=>e()).then(async()=>{let{showSyncEnabledDialog:t}=await e(async()=>{let{showSyncEnabledDialog:e}=await import(`./sync-dialog-ACgl0n-p.js`);return{showSyncEnabledDialog:e}},__vite__mapDeps([41,12,31,1,42,43]));t({joinUrl:r,copied:n.copy,initialTab:n.initialTab,followers:l(),onReset:u()??null})}).catch(e=>t.error(`sync dialog failed`,e)))}function x(e,t){return e===`tray-enable`?(r({locationHref:window.location.href,storage:window.localStorage,envBaseUrl:null,defaultWorkerBaseUrl:i}).then(e=>{if(!e)return t.error(`tray enable: no worker base URL resolvable`);window.dispatchEvent(new CustomEvent(`slicc:tray-leave`,{detail:{workerBaseUrl:e}}))}),!0):e===`tray-copy`?(b(t,{copy:!0}),!0):e===`tray-stop`&&(window.dispatchEvent(new CustomEvent(`slicc:tray-leave`,{detail:{workerBaseUrl:null}})),!0)}function S(e,t){e.thread?.addEventListener(`slicc-error-open-settings`,t),window.addEventListener(`slicc:open-settings-from-panel`,()=>t())}function C(e){let{refs:t,log:n,openSettings:r,setPendingReplayMessageId:i}=e;t.thread?.addEventListener(`slicc-error-change-model`,e=>{i(e.detail?.messageId??null);let a=t.composerMeta,o=a.models;if(Array.isArray(o)&&o.length===0){r();return}try{a.openMenu?.()}catch(e){n.error(`opening composer model picker failed`,e)}})}async function w(t){let{refs:n,log:r,openSettings:i,refreshModels:a,applyIdentity:o,client:s}=t,{getSelectedProvider:c,getProviderConfig:l,reloginOAuthAccount:u}=await e(async()=>{let{getSelectedProvider:e,getProviderConfig:t,reloginOAuthAccount:n}=await import(`./provider-settings-B6mT4Py7.js`).then(e=>e.t);return{getSelectedProvider:e,getProviderConfig:t,reloginOAuthAccount:n}},__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]));n.thread?.addEventListener(`slicc-error-login`,()=>{let e=c(),t=e?l(e):null;if(!t||!t.onOAuthLogin&&!t.onOAuthLoginIntercepted){i();return}u(t,()=>{a(),o(),s.updateModel()}).catch(e=>r.error(`re-login from error card failed`,e))})}async function T(t,n,r){let{resolveModelById:i,resolveCurrentModel:a,setSelectedModelId:o}=await e(async()=>{let{resolveModelById:e,resolveCurrentModel:t,setSelectedModelId:n}=await import(`./provider-settings-B6mT4Py7.js`).then(e=>e.t);return{resolveModelById:e,resolveCurrentModel:t,setSelectedModelId:n}},__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])),s=e=>{let t=e.indexOf(`:`);return t>0?e.slice(t+1):e},c=e=>{try{let n=e?i(s(e)):a();t.composerMeta.toggleAttribute(`no-thinking`,n.reasoning!==!0)}catch{}};c(),t.composerMeta.addEventListener(`model-change`,e=>{let t=e.detail?.id;t&&(o(t),c(t),n.updateModel(),r?.())})}async function E(t){let{refreshModels:n,refreshModelPill:r,applyIdentity:i,client:a}=t,{getAccounts:o,getProviderConfig:s}=await e(async()=>{let{getAccounts:e,getProviderConfig:t}=await import(`./provider-settings-B6mT4Py7.js`).then(e=>e.t);return{getAccounts:e,getProviderConfig: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]));window.addEventListener(`slicc:accounts-changed`,()=>{n(),r(),i(),a.updateModel();for(let e of o()){let t=s(e.providerId)?.refreshModels;t&&t().then(()=>{n(),r(),a.updateModel()}).catch(()=>void 0)}})}export{h as wireWcNav};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/onboarding-orchestrator-CfHysx6n.js","assets/logger-DDBAeTLF.js","assets/welcome-detection-sLx_L_gP.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/oauth-service-Cy5ngmcU.js","assets/preload-helper-Czpn1I53.js","assets/proxied-fetch-B4g-4VbQ.js","assets/base64-DpPqYZJF.js","assets/src-CAWTvdAa.js","assets/runtime-env-Dlaokqg1.js","assets/fetch-body-D2PwksUW.js","assets/runtime-env-CgsZ7LTp.js","assets/runtime-env-E-i2SW1s.js","assets/panel-rpc-B3MSVImO.js","assets/permissions-surface-registry-CilCRwhh.js","assets/provider-settings-
|
|
2
|
-
import{t as e}from"./preload-helper-Czpn1I53.js";import{c as t}from"./tray-runtime-config-CRGwg9SK.js";import{t as n}from"./welcome-detection-sLx_L_gP.js";import{t as r}from"./dip-B58NQGEQ.js";function i(e){let{vfs:r,storage:i,firedWelcomeActions:a,persistFiredWelcomeActions:o,getOrchestrator:s,log:c}=e;t(i)||n(r).then(e=>{if(e.isFirstRun){if(a.has(`first-run`)){c.debug(`Suppressing welcome re-fire: first-run already in dedup ledger`);return}a.add(`first-run`),o(a),s().handleFirstRun()}}).catch(e=>c.warn(`Welcome detection failed`,e))}function a(e){for(let t of[`slicc_accounts`,`selected-model`]){let n=localStorage.getItem(t);n!=null&&e.sendRaw({type:`local-storage-set`,key:t,value:n})}}function o(e,t,n,r){let i=n(e).filter(e=>!r(e.id)),a=t.defaultModelId?i.find(e=>e.id===t.defaultModelId):void 0,o=t.defaultModelId?i.find(e=>e.id.toLowerCase().includes(t.defaultModelId.toLowerCase())):void 0,s=a??o??i[0];return s?`${e}:${s.id}`:void 0}function s(e){let t=e.getAvailableProviders().filter(t=>e.providerOffersLlmModels(t)),n=t.map(t=>{let n=e.getProviderConfig(t);return{id:n.id,name:n.name??n.id,description:n.description,requiresApiKey:n.requiresApiKey??!0,requiresBaseUrl:n.requiresBaseUrl??!1,requiresDeployment:!!n.requiresDeployment,requiresApiVersion:!!n.requiresApiVersion,apiKeyPlaceholder:n.apiKeyPlaceholder??void 0,apiKeyEnvVar:n.apiKeyEnvVar??void 0,defaultBaseUrl:n.baseUrlPlaceholder??void 0,baseUrlDescription:n.baseUrlDescription??void 0,deploymentPlaceholder:n.deploymentPlaceholder??void 0,deploymentDescription:n.deploymentDescription??void 0,apiVersionDefault:n.apiVersionDefault??void 0,apiVersionDescription:n.apiVersionDescription??void 0,isOAuth:!!n.isOAuth}}).sort((e,t)=>e.name.localeCompare(t.name,void 0,{sensitivity:`base`})),r={};for(let n of t)try{r[n]=e.getProviderModels(n).filter(t=>!e.isModelHiddenFromPicker(t.id)).map(e=>({id:e.id,name:e.name}))}catch{r[n]=[]}return{providers:n,models:r}}async function c(t){let{OnboardingOrchestrator:n}=await e(async()=>{let{OnboardingOrchestrator:e}=await import(`./onboarding-orchestrator-CfHysx6n.js`);return{OnboardingOrchestrator:e}},__vite__mapDeps([0,1,2,3])),r=null;return{get:()=>r||(r=new n({fs:t.fs,postSystemMessage:t.postSystemMessage,postDipReference:t.postDipReference,getProviderCatalogue:()=>s(t.providers),saveAccount:(e,n,r,i,a)=>t.providers.addAccount(e,n,r,i,a),setSelectedModel:e=>t.providers.setSelectedModelId(e),resolveModelLabel:(e,n)=>{try{return t.providers.getProviderModels(e).find(e=>e.id===n)?.name??null}catch{return null}},broadcastToDip:e=>t.broadcastToDip(e),fireFinalLick:e=>t.onFireFinalLick(e),onAccountsChanged:t.onAccountsChanged?()=>t.onAccountsChanged?.():void 0,launchOAuth:async(e,n)=>await l(e,n??null,t)}),r),peek:()=>r,buildCatalogue:()=>s(t.providers)}}async function l(t,n,r){try{let i=r.providers.getProviderConfig(t);if(!i.isOAuth||!i.onOAuthLogin&&!i.onOAuthLoginIntercepted)return{ok:!1,message:`Provider does not support OAuth.`};if(i.requiresBaseUrl&&n&&r.providers.addAccount(t,``,n),i.onOAuthLoginIntercepted){let{createInterceptingOAuthLauncherForCurrentRuntime:t}=await e(async()=>{let{createInterceptingOAuthLauncherForCurrentRuntime:e}=await import(`./oauth-service-Cy5ngmcU.js`);return{createInterceptingOAuthLauncherForCurrentRuntime:e}},__vite__mapDeps([4,5,6,3,7,8,9,10,11,12,13,14])),n=await t();if(!n)return{ok:!1,message:`Intercepted OAuth requires the controlled-browser transport — open SLICC in standalone or extension mode.`};await i.onOAuthLoginIntercepted(n,()=>void 0,{presentDeviceCode:r.deviceCode.createSprinkleDeviceCodePrompter({broadcastToDip:e=>r.broadcastToDip(e)})})}else if(i.onOAuthLogin){let{createOAuthLauncher:t}=await e(async()=>{let{createOAuthLauncher:e}=await import(`./oauth-service-Cy5ngmcU.js`);return{createOAuthLauncher:e}},__vite__mapDeps([4,5,6,3,7,8,9,10,11,12,13,14])),n=t();await i.onOAuthLogin(n,()=>void 0)}return{ok:!0,model:o(t,i,r.providers.getProviderModels,r.providers.isModelHiddenFromPicker)}}catch(e){return{ok:!1,message:e instanceof Error?e.message:`OAuth login failed.`}}}var u=new Set([`first-run`,`onboarding-complete`,`onboarding-complete-with-provider`,`shortcut-migrate`]),d=`slicc:welcome-flow-fired`;function f(){try{let e=typeof localStorage<`u`?localStorage.getItem(d):null;if(!e)return new Set;let t=JSON.parse(e);return new Set(Array.isArray(t)?t.map(String):[])}catch{return new Set}}function p(e){try{if(typeof localStorage>`u`)return;localStorage.setItem(d,JSON.stringify([...e]))}catch{}}function m(e,t,n,r,i){if(u.has(e)&&t.has(e)){i.debug(`Suppressing duplicate welcome lick (${r})`,{action:e});return}u.has(e)&&(t.add(e),p(t)),n()}var h=new Set([`first-run`,`onboarding-complete`,`connect-ready`,`connect-attempt`,`oauth-attempt`,`device-code-decision`,`shortcut-migrate`]);function g(e){let{firedWelcomeActions:t,getAccounts:n,getProviderConfig:r,resolveDeviceCodeDecision:i,getOnboardingOrchestrator:a,applyPendingMount:o,fastForward:s,onShortcutMigrate:c,contextLabel:l,vfs:d,log:f}=e;return e=>{if(e.type!==`sprinkle`)return!1;let m=e.sprinkleName===`welcome`||e.sprinkleName===`inline`?e.body?.action:void 0;if(m&&u.has(m)){if(t.has(m))return f.debug(`Suppressing duplicate welcome lick (${l})`,{action:m}),!0;t.add(m),p(t)}if(!m||!h.has(m))return!1;let g=e.body;return S(m,g,{getAccounts:n,getProviderConfig:r,resolveDeviceCodeDecision:i,getOnboardingOrchestrator:a,applyPendingMount:o,fastForward:s,onShortcutMigrate:c,vfs:d,log:f})}}function _(e,t){let n=e[t];return typeof n==`string`&&n?n:null}function v(e,t){let n=t.getOnboardingOrchestrator(),r=e?.data??{};return r.mountWorkspace&&t.applyPendingMount&&t.applyPendingMount().catch(e=>t.log.warn(`Failed to mount workspace from onboarding`,e)),n.handleOnboardingComplete(r).catch(e=>t.log.warn(`OnboardingOrchestrator failed`,e)),!0}function y(e,t){let n=e?.data;return n&&t.getOnboardingOrchestrator().handleConnectAttempt({provider:String(n.provider??``),apiKey:String(n.apiKey??``),baseUrl:_(n,`baseUrl`),deployment:_(n,`deployment`),apiVersion:_(n,`apiVersion`),model:n.model==null?null:String(n.model)}).catch(e=>t.log.warn(`handleConnectAttempt failed`,e)),!0}function b(e,t){let n=e?.data;return n&&t.getOnboardingOrchestrator().handleOAuthAttempt({provider:String(n.provider??``),baseUrl:_(n,`baseUrl`)}).catch(e=>t.log.warn(`handleOAuthAttempt failed`,e)),!0}var x={"device-code-decision":(e,t)=>{let n=e?.data?.decision;return t.resolveDeviceCodeDecision(n===`cancel`?`cancel`:`continue`),!0},"first-run":(e,t)=>(t.getOnboardingOrchestrator().handleFirstRun(),!0),"onboarding-complete":v,"connect-ready":(e,t)=>C(t),"connect-attempt":y,"oauth-attempt":b,"shortcut-migrate":(e,t)=>(t.onShortcutMigrate(),!0)};function S(e,t,n){return x[e]?.(t,n)??!1}function C(e){let t=e.getAccounts();if(t.length===0)return e.getOnboardingOrchestrator().handleConnectReady(),!0;let n=t[0];return e.fastForward.broadcastAlreadyConnected(n.providerId),w(e.vfs,n.providerId,e.fastForward.fire).catch(t=>e.log.warn(`Failed to fire fast-forward final lick`,t)),!0}async function w(t,n,r){let{hasOnboardingFinalLickInHistory:i}=await e(async()=>{let{hasOnboardingFinalLickInHistory:e}=await import(`./welcome-detection-sLx_L_gP.js`).then(e=>e.r);return{hasOnboardingFinalLickInHistory:e}},__vite__mapDeps([2,3,1]));if(await i())return;let a=t?await T(t):{},{getSelectedModelId:o,getProviderConfig:s,getProviderModels:c}=await e(async()=>{let{getSelectedModelId:e,getProviderConfig:t,getProviderModels:n}=await import(`./provider-settings-BJ8Gpzt6.js`).then(e=>e.t);return{getSelectedModelId:e,getProviderConfig:t,getProviderModels:n}},__vite__mapDeps([15,3,16,5,17,18,19,20,21,22,23,1,8,6,7,9,10,24,12,25,26,27,28,29,30,13,31,11,32,33,34,35,36])),l=(()=>{try{return o()||null}catch{return null}})(),u=(()=>{if(!l)return null;try{return c(n).find(e=>e.id===l)?.name??l}catch{return l}})(),d=null;try{d=s(n).name??null}catch{}r({action:`onboarding-complete-with-provider`,data:{profile:a,provider:n,providerName:d,model:l,modelLabel:u,validation:`preexisting`}})}async function T(e){try{let t=await e.readDir(`/home`),n=null;for(let r of t){if(r.type!==`directory`)continue;let t=`/home/${r.name}/.welcome.json`;try{let r=(await e.stat(t)).mtime??0;if(n&&r<=n.mtime)continue;let i=await e.readFile(t,{encoding:`utf-8`}),a=JSON.parse(typeof i==`string`?i:new TextDecoder().decode(i));a&&typeof a==`object`&&(n={profile:a,mtime:r})}catch{}}return n?.profile??{}}catch{return{}}}function E(e){let{writer:t}=e;return{readFile:t.readFile.bind(t),writeFile:t.writeFile.bind(t),readDir:t.readDir.bind(t),stat:t.stat.bind(t),mkdir:t.mkdir.bind(t),exists:async e=>{try{return await t.stat(e),!0}catch{return!1}}}}async function D(t){let{client:n,getController:o,openVfs:s,log:l}=t,u=await e(()=>import(`./provider-settings-BJ8Gpzt6.js`).then(e=>e.t),__vite__mapDeps([15,3,16,5,17,18,19,20,21,22,23,1,8,6,7,9,10,24,12,25,26,27,28,29,30,13,31,11,32,33,34,35,36])),{createSprinkleDeviceCodePrompter:d,resolveDeviceCodeDecision:h}=await e(async()=>{let{createSprinkleDeviceCodePrompter:e,resolveDeviceCodeDecision:t}=await import(`./device-code-bridge-CbHxw098.js`);return{createSprinkleDeviceCodePrompter:e,resolveDeviceCodeDecision:t}},[]),_=E(await s()),v=f(),y=e=>{let t=o();t?t.addAssistantMessage(e):l.warn(`WC onboarding: no controller to post welcome line`)},b=await c({fs:_,log:l,providers:u,deviceCode:{createSprinkleDeviceCodePrompter:d},postSystemMessage:y,postDipReference:y,broadcastToDip:e=>r(e),onFireFinalLick:e=>{a(n),m(String(e?.action??``),v,()=>n.sendSprinkleLick(`welcome`,e),`orchestrator-wc`,l)},onAccountsChanged:()=>{try{typeof window<`u`&&window.dispatchEvent(new CustomEvent(`slicc:accounts-changed`))}catch(e){l.warn(`Failed to dispatch slicc:accounts-changed`,e)}}}),x=g({firedWelcomeActions:v,getAccounts:u.getAccounts,getProviderConfig:u.getProviderConfig,resolveDeviceCodeDecision:h,getOnboardingOrchestrator:()=>b.get(),fastForward:{fire:e=>{m(String(e.action??``),v,()=>n.sendSprinkleLick(`welcome`,e),`fast-forward-wc`,l)},broadcastAlreadyConnected:e=>{let t=(()=>{try{return u.getProviderConfig(e)?.name??null}catch{return null}})();r({type:`slicc-already-connected`,provider:e,note:t?`Already connected to ${t}.`:`Already connected.`})}},onShortcutMigrate:()=>{_.writeFile(`/shared/.welcomed`,`1`).catch(e=>l.warn(`Failed to persist welcome completion marker`,e))},contextLabel:`wc`,vfs:_,log:l});return i({vfs:_,storage:window.localStorage,firedWelcomeActions:v,persistFiredWelcomeActions:p,getOrchestrator:()=>b.get(),log:l}),{interceptWelcomeLick:x}}export{D as wireWcOnboarding};
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/onboarding-orchestrator-CfHysx6n.js","assets/logger-DDBAeTLF.js","assets/welcome-detection-sLx_L_gP.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/oauth-service-Cy5ngmcU.js","assets/preload-helper-Czpn1I53.js","assets/proxied-fetch-B4g-4VbQ.js","assets/base64-DpPqYZJF.js","assets/src-CAWTvdAa.js","assets/runtime-env-Dlaokqg1.js","assets/fetch-body-D2PwksUW.js","assets/runtime-env-CgsZ7LTp.js","assets/runtime-env-E-i2SW1s.js","assets/panel-rpc-B3MSVImO.js","assets/permissions-surface-registry-CilCRwhh.js","assets/provider-settings-B6mT4Py7.js","assets/account-store-sCJNhEJc.js","assets/bedrock-camp-qpZqnqLa.js","assets/diagnostics-DN_idNHx.js","assets/transform-messages-N_eMsP2M.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-gbjkpjE_.js","assets/libesm-BI4UHVqp.js","assets/float-topology-BgioAcOd.js","assets/secret-topology-xLmXoozo.js","assets/secrets-bridge-client-cWDAnFqs.js","assets/port-bridge-client-BbVs1yhx.js","assets/image-markers-BXtVm4og.js","assets/tool-ui-DfXu6quJ.js","assets/providers-DQj-gKPL.js","assets/telemetry-BVzuNdvW.js","assets/tray-runtime-config-CRGwg9SK.js","assets/messages-BD4p8GuF.js","assets/tray-follower-status-BAjnN7Ar.js","assets/clipboard-eqmn97SP.js","assets/tray-join-url-BIvzbiFR.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{t as e}from"./preload-helper-Czpn1I53.js";import{c as t}from"./tray-runtime-config-CRGwg9SK.js";import{t as n}from"./welcome-detection-sLx_L_gP.js";import{t as r}from"./dip-B58NQGEQ.js";function i(e){let{vfs:r,storage:i,firedWelcomeActions:a,persistFiredWelcomeActions:o,getOrchestrator:s,log:c}=e;t(i)||n(r).then(e=>{if(e.isFirstRun){if(a.has(`first-run`)){c.debug(`Suppressing welcome re-fire: first-run already in dedup ledger`);return}a.add(`first-run`),o(a),s().handleFirstRun()}}).catch(e=>c.warn(`Welcome detection failed`,e))}function a(e){for(let t of[`slicc_accounts`,`selected-model`]){let n=localStorage.getItem(t);n!=null&&e.sendRaw({type:`local-storage-set`,key:t,value:n})}}function o(e,t,n,r){let i=n(e).filter(e=>!r(e.id)),a=t.defaultModelId?i.find(e=>e.id===t.defaultModelId):void 0,o=t.defaultModelId?i.find(e=>e.id.toLowerCase().includes(t.defaultModelId.toLowerCase())):void 0,s=a??o??i[0];return s?`${e}:${s.id}`:void 0}function s(e){let t=e.getAvailableProviders().filter(t=>e.providerOffersLlmModels(t)),n=t.map(t=>{let n=e.getProviderConfig(t);return{id:n.id,name:n.name??n.id,description:n.description,requiresApiKey:n.requiresApiKey??!0,requiresBaseUrl:n.requiresBaseUrl??!1,requiresDeployment:!!n.requiresDeployment,requiresApiVersion:!!n.requiresApiVersion,apiKeyPlaceholder:n.apiKeyPlaceholder??void 0,apiKeyEnvVar:n.apiKeyEnvVar??void 0,defaultBaseUrl:n.baseUrlPlaceholder??void 0,baseUrlDescription:n.baseUrlDescription??void 0,deploymentPlaceholder:n.deploymentPlaceholder??void 0,deploymentDescription:n.deploymentDescription??void 0,apiVersionDefault:n.apiVersionDefault??void 0,apiVersionDescription:n.apiVersionDescription??void 0,isOAuth:!!n.isOAuth}}).sort((e,t)=>e.name.localeCompare(t.name,void 0,{sensitivity:`base`})),r={};for(let n of t)try{r[n]=e.getProviderModels(n).filter(t=>!e.isModelHiddenFromPicker(t.id)).map(e=>({id:e.id,name:e.name}))}catch{r[n]=[]}return{providers:n,models:r}}async function c(t){let{OnboardingOrchestrator:n}=await e(async()=>{let{OnboardingOrchestrator:e}=await import(`./onboarding-orchestrator-CfHysx6n.js`);return{OnboardingOrchestrator:e}},__vite__mapDeps([0,1,2,3])),r=null;return{get:()=>r||(r=new n({fs:t.fs,postSystemMessage:t.postSystemMessage,postDipReference:t.postDipReference,getProviderCatalogue:()=>s(t.providers),saveAccount:(e,n,r,i,a)=>t.providers.addAccount(e,n,r,i,a),setSelectedModel:e=>t.providers.setSelectedModelId(e),resolveModelLabel:(e,n)=>{try{return t.providers.getProviderModels(e).find(e=>e.id===n)?.name??null}catch{return null}},broadcastToDip:e=>t.broadcastToDip(e),fireFinalLick:e=>t.onFireFinalLick(e),onAccountsChanged:t.onAccountsChanged?()=>t.onAccountsChanged?.():void 0,launchOAuth:async(e,n)=>await l(e,n??null,t)}),r),peek:()=>r,buildCatalogue:()=>s(t.providers)}}async function l(t,n,r){try{let i=r.providers.getProviderConfig(t);if(!i.isOAuth||!i.onOAuthLogin&&!i.onOAuthLoginIntercepted)return{ok:!1,message:`Provider does not support OAuth.`};if(i.requiresBaseUrl&&n&&r.providers.addAccount(t,``,n),i.onOAuthLoginIntercepted){let{createInterceptingOAuthLauncherForCurrentRuntime:t}=await e(async()=>{let{createInterceptingOAuthLauncherForCurrentRuntime:e}=await import(`./oauth-service-Cy5ngmcU.js`);return{createInterceptingOAuthLauncherForCurrentRuntime:e}},__vite__mapDeps([4,5,6,3,7,8,9,10,11,12,13,14])),n=await t();if(!n)return{ok:!1,message:`Intercepted OAuth requires the controlled-browser transport — open SLICC in standalone or extension mode.`};await i.onOAuthLoginIntercepted(n,()=>void 0,{presentDeviceCode:r.deviceCode.createSprinkleDeviceCodePrompter({broadcastToDip:e=>r.broadcastToDip(e)})})}else if(i.onOAuthLogin){let{createOAuthLauncher:t}=await e(async()=>{let{createOAuthLauncher:e}=await import(`./oauth-service-Cy5ngmcU.js`);return{createOAuthLauncher:e}},__vite__mapDeps([4,5,6,3,7,8,9,10,11,12,13,14])),n=t();await i.onOAuthLogin(n,()=>void 0)}return{ok:!0,model:o(t,i,r.providers.getProviderModels,r.providers.isModelHiddenFromPicker)}}catch(e){return{ok:!1,message:e instanceof Error?e.message:`OAuth login failed.`}}}var u=new Set([`first-run`,`onboarding-complete`,`onboarding-complete-with-provider`,`shortcut-migrate`]),d=`slicc:welcome-flow-fired`;function f(){try{let e=typeof localStorage<`u`?localStorage.getItem(d):null;if(!e)return new Set;let t=JSON.parse(e);return new Set(Array.isArray(t)?t.map(String):[])}catch{return new Set}}function p(e){try{if(typeof localStorage>`u`)return;localStorage.setItem(d,JSON.stringify([...e]))}catch{}}function m(e,t,n,r,i){if(u.has(e)&&t.has(e)){i.debug(`Suppressing duplicate welcome lick (${r})`,{action:e});return}u.has(e)&&(t.add(e),p(t)),n()}var h=new Set([`first-run`,`onboarding-complete`,`connect-ready`,`connect-attempt`,`oauth-attempt`,`device-code-decision`,`shortcut-migrate`]);function g(e){let{firedWelcomeActions:t,getAccounts:n,getProviderConfig:r,resolveDeviceCodeDecision:i,getOnboardingOrchestrator:a,applyPendingMount:o,fastForward:s,onShortcutMigrate:c,contextLabel:l,vfs:d,log:f}=e;return e=>{if(e.type!==`sprinkle`)return!1;let m=e.sprinkleName===`welcome`||e.sprinkleName===`inline`?e.body?.action:void 0;if(m&&u.has(m)){if(t.has(m))return f.debug(`Suppressing duplicate welcome lick (${l})`,{action:m}),!0;t.add(m),p(t)}if(!m||!h.has(m))return!1;let g=e.body;return S(m,g,{getAccounts:n,getProviderConfig:r,resolveDeviceCodeDecision:i,getOnboardingOrchestrator:a,applyPendingMount:o,fastForward:s,onShortcutMigrate:c,vfs:d,log:f})}}function _(e,t){let n=e[t];return typeof n==`string`&&n?n:null}function v(e,t){let n=t.getOnboardingOrchestrator(),r=e?.data??{};return r.mountWorkspace&&t.applyPendingMount&&t.applyPendingMount().catch(e=>t.log.warn(`Failed to mount workspace from onboarding`,e)),n.handleOnboardingComplete(r).catch(e=>t.log.warn(`OnboardingOrchestrator failed`,e)),!0}function y(e,t){let n=e?.data;return n&&t.getOnboardingOrchestrator().handleConnectAttempt({provider:String(n.provider??``),apiKey:String(n.apiKey??``),baseUrl:_(n,`baseUrl`),deployment:_(n,`deployment`),apiVersion:_(n,`apiVersion`),model:n.model==null?null:String(n.model)}).catch(e=>t.log.warn(`handleConnectAttempt failed`,e)),!0}function b(e,t){let n=e?.data;return n&&t.getOnboardingOrchestrator().handleOAuthAttempt({provider:String(n.provider??``),baseUrl:_(n,`baseUrl`)}).catch(e=>t.log.warn(`handleOAuthAttempt failed`,e)),!0}var x={"device-code-decision":(e,t)=>{let n=e?.data?.decision;return t.resolveDeviceCodeDecision(n===`cancel`?`cancel`:`continue`),!0},"first-run":(e,t)=>(t.getOnboardingOrchestrator().handleFirstRun(),!0),"onboarding-complete":v,"connect-ready":(e,t)=>C(t),"connect-attempt":y,"oauth-attempt":b,"shortcut-migrate":(e,t)=>(t.onShortcutMigrate(),!0)};function S(e,t,n){return x[e]?.(t,n)??!1}function C(e){let t=e.getAccounts();if(t.length===0)return e.getOnboardingOrchestrator().handleConnectReady(),!0;let n=t[0];return e.fastForward.broadcastAlreadyConnected(n.providerId),w(e.vfs,n.providerId,e.fastForward.fire).catch(t=>e.log.warn(`Failed to fire fast-forward final lick`,t)),!0}async function w(t,n,r){let{hasOnboardingFinalLickInHistory:i}=await e(async()=>{let{hasOnboardingFinalLickInHistory:e}=await import(`./welcome-detection-sLx_L_gP.js`).then(e=>e.r);return{hasOnboardingFinalLickInHistory:e}},__vite__mapDeps([2,3,1]));if(await i())return;let a=t?await T(t):{},{getSelectedModelId:o,getProviderConfig:s,getProviderModels:c}=await e(async()=>{let{getSelectedModelId:e,getProviderConfig:t,getProviderModels:n}=await import(`./provider-settings-B6mT4Py7.js`).then(e=>e.t);return{getSelectedModelId:e,getProviderConfig:t,getProviderModels:n}},__vite__mapDeps([15,3,16,5,17,18,19,20,21,22,23,1,8,6,7,9,10,24,12,25,26,27,28,29,30,13,31,11,32,33,34,35,36])),l=(()=>{try{return o()||null}catch{return null}})(),u=(()=>{if(!l)return null;try{return c(n).find(e=>e.id===l)?.name??l}catch{return l}})(),d=null;try{d=s(n).name??null}catch{}r({action:`onboarding-complete-with-provider`,data:{profile:a,provider:n,providerName:d,model:l,modelLabel:u,validation:`preexisting`}})}async function T(e){try{let t=await e.readDir(`/home`),n=null;for(let r of t){if(r.type!==`directory`)continue;let t=`/home/${r.name}/.welcome.json`;try{let r=(await e.stat(t)).mtime??0;if(n&&r<=n.mtime)continue;let i=await e.readFile(t,{encoding:`utf-8`}),a=JSON.parse(typeof i==`string`?i:new TextDecoder().decode(i));a&&typeof a==`object`&&(n={profile:a,mtime:r})}catch{}}return n?.profile??{}}catch{return{}}}function E(e){let{writer:t}=e;return{readFile:t.readFile.bind(t),writeFile:t.writeFile.bind(t),readDir:t.readDir.bind(t),stat:t.stat.bind(t),mkdir:t.mkdir.bind(t),exists:async e=>{try{return await t.stat(e),!0}catch{return!1}}}}async function D(t){let{client:n,getController:o,openVfs:s,log:l}=t,u=await e(()=>import(`./provider-settings-B6mT4Py7.js`).then(e=>e.t),__vite__mapDeps([15,3,16,5,17,18,19,20,21,22,23,1,8,6,7,9,10,24,12,25,26,27,28,29,30,13,31,11,32,33,34,35,36])),{createSprinkleDeviceCodePrompter:d,resolveDeviceCodeDecision:h}=await e(async()=>{let{createSprinkleDeviceCodePrompter:e,resolveDeviceCodeDecision:t}=await import(`./device-code-bridge-CbHxw098.js`);return{createSprinkleDeviceCodePrompter:e,resolveDeviceCodeDecision:t}},[]),_=E(await s()),v=f(),y=e=>{let t=o();t?t.addAssistantMessage(e):l.warn(`WC onboarding: no controller to post welcome line`)},b=await c({fs:_,log:l,providers:u,deviceCode:{createSprinkleDeviceCodePrompter:d},postSystemMessage:y,postDipReference:y,broadcastToDip:e=>r(e),onFireFinalLick:e=>{a(n),m(String(e?.action??``),v,()=>n.sendSprinkleLick(`welcome`,e),`orchestrator-wc`,l)},onAccountsChanged:()=>{try{typeof window<`u`&&window.dispatchEvent(new CustomEvent(`slicc:accounts-changed`))}catch(e){l.warn(`Failed to dispatch slicc:accounts-changed`,e)}}}),x=g({firedWelcomeActions:v,getAccounts:u.getAccounts,getProviderConfig:u.getProviderConfig,resolveDeviceCodeDecision:h,getOnboardingOrchestrator:()=>b.get(),fastForward:{fire:e=>{m(String(e.action??``),v,()=>n.sendSprinkleLick(`welcome`,e),`fast-forward-wc`,l)},broadcastAlreadyConnected:e=>{let t=(()=>{try{return u.getProviderConfig(e)?.name??null}catch{return null}})();r({type:`slicc-already-connected`,provider:e,note:t?`Already connected to ${t}.`:`Already connected.`})}},onShortcutMigrate:()=>{_.writeFile(`/shared/.welcomed`,`1`).catch(e=>l.warn(`Failed to persist welcome completion marker`,e))},contextLabel:`wc`,vfs:_,log:l});return i({vfs:_,storage:window.localStorage,firedWelcomeActions:v,persistFiredWelcomeActions:p,getOrchestrator:()=>b.get(),log:l}),{interceptWelcomeLick:x}}export{D as wireWcOnboarding};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/quick-llm-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/quick-llm-BK48XMzf.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/account-store-sCJNhEJc.js","assets/preload-helper-Czpn1I53.js","assets/bedrock-camp-qpZqnqLa.js","assets/diagnostics-DN_idNHx.js","assets/transform-messages-N_eMsP2M.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-gbjkpjE_.js","assets/libesm-BI4UHVqp.js","assets/logger-DDBAeTLF.js","assets/src-CAWTvdAa.js","assets/proxied-fetch-B4g-4VbQ.js","assets/base64-DpPqYZJF.js","assets/runtime-env-Dlaokqg1.js","assets/fetch-body-D2PwksUW.js","assets/float-topology-BgioAcOd.js","assets/runtime-env-E-i2SW1s.js","assets/secret-topology-xLmXoozo.js","assets/secrets-bridge-client-cWDAnFqs.js","assets/port-bridge-client-BbVs1yhx.js","assets/image-markers-BXtVm4og.js","assets/tool-ui-DfXu6quJ.js","assets/providers-DQj-gKPL.js","assets/panel-rpc-B3MSVImO.js","assets/llm-session-id-bZQs6gBN.js","assets/icons-ZLR7gmJ4.js"])))=>i.map(i=>d[i]);
|
|
2
2
|
import{t as e}from"./preload-helper-Czpn1I53.js";import{a as t}from"./dictation-priming-CNllGgNq.js";var n=400,r=800,i=`You suggest the user's next prompt in a coding-agent chat. Based on the recent conversation, output ONE concrete follow-up the user might type next. Reply with just the prompt text — no quotes, no preamble, no list. Max 80 characters. If nothing useful comes to mind, reply exactly: What shall we build?`;function a(e,t){return e.length>t?`${e.slice(0,t)}…`:e}function o(e){let i=e.filter(e=>!e.isStreaming&&!e.queued&&e.source!==`lick`),o=[...i].reverse().find(e=>e.role===`assistant`),s=i.filter(e=>e.role===`user`).slice(-3);return!o||s.length===0?null:[...s.map(e=>`[user]: ${a(t(e.content),n)}`),`[assistant]: ${a(o.content,r)}`].join(`
|
|
3
3
|
|
|
4
|
-
`)}async function s(t){if(t.currentValue.length>0)return;let n=o(t.messages);if(!n){t.setPlaceholder(t.defaultPlaceholder);return}let r=await(t.quickLabelFn??(await e(async()=>{let{quickLabel:e}=await import(`./quick-llm-
|
|
4
|
+
`)}async function s(t){if(t.currentValue.length>0)return;let n=o(t.messages);if(!n){t.setPlaceholder(t.defaultPlaceholder);return}let r=await(t.quickLabelFn??(await e(async()=>{let{quickLabel:e}=await import(`./quick-llm-BK48XMzf.js`).then(e=>e.n);return{quickLabel: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]))).quickLabel)({system:i,prompt:`Recent conversation:\n${n}`,maxTokens:40,signal:t.signal});t.signal?.aborted||t.currentValue.length>0||t.setPlaceholder(r&&r.length>0?r:t.defaultPlaceholder)}function c(e,t,n){t===n?(e.removeAttribute(`suggestion`),e.setAttribute(`placeholder`,t)):e.setAttribute(`suggestion`,t)}function l(e){let t=null;return()=>{e.inputCard.hasAttribute(`disabled`)||(t?.abort(),t=new AbortController,s({messages:e.getMessages(),currentValue:e.inputCard.value??``,setPlaceholder:t=>c(e.inputCard,t,e.defaultPlaceholder),defaultPlaceholder:e.defaultPlaceholder,signal:t.signal}).catch(()=>void 0))}}export{l as createPlaceholderRefresher};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/oauth-service-Cy5ngmcU.js","assets/preload-helper-Czpn1I53.js","assets/proxied-fetch-B4g-4VbQ.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/base64-DpPqYZJF.js","assets/src-CAWTvdAa.js","assets/runtime-env-Dlaokqg1.js","assets/fetch-body-D2PwksUW.js","assets/runtime-env-CgsZ7LTp.js","assets/runtime-env-E-i2SW1s.js","assets/panel-rpc-B3MSVImO.js","assets/permissions-surface-registry-CilCRwhh.js","assets/provider-settings-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/oauth-service-Cy5ngmcU.js","assets/preload-helper-Czpn1I53.js","assets/proxied-fetch-B4g-4VbQ.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/base64-DpPqYZJF.js","assets/src-CAWTvdAa.js","assets/runtime-env-Dlaokqg1.js","assets/fetch-body-D2PwksUW.js","assets/runtime-env-CgsZ7LTp.js","assets/runtime-env-E-i2SW1s.js","assets/panel-rpc-B3MSVImO.js","assets/permissions-surface-registry-CilCRwhh.js","assets/provider-settings-B6mT4Py7.js","assets/account-store-sCJNhEJc.js","assets/bedrock-camp-qpZqnqLa.js","assets/diagnostics-DN_idNHx.js","assets/transform-messages-N_eMsP2M.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-gbjkpjE_.js","assets/libesm-BI4UHVqp.js","assets/logger-DDBAeTLF.js","assets/float-topology-BgioAcOd.js","assets/secret-topology-xLmXoozo.js","assets/secrets-bridge-client-cWDAnFqs.js","assets/port-bridge-client-BbVs1yhx.js","assets/image-markers-BXtVm4og.js","assets/tool-ui-DfXu6quJ.js","assets/providers-DQj-gKPL.js","assets/telemetry-BVzuNdvW.js","assets/tray-runtime-config-CRGwg9SK.js","assets/messages-BD4p8GuF.js","assets/tray-follower-status-BAjnN7Ar.js","assets/clipboard-eqmn97SP.js","assets/tray-join-url-BIvzbiFR.js"])))=>i.map(i=>d[i]);
|
|
2
2
|
import{t as e}from"./preload-helper-Czpn1I53.js";import{a as t,i as n,r}from"./feature-flags-ByMXaIc4.js";import{a as i,c as a,d as o,f as s,i as c,l,m as u,o as d,s as f,t as p,u as m}from"./theme-engine-By4GU_Wc.js";import{t as h}from"./theme-CXRqxpw6.js";import{n as g,t as _}from"./discovery-preference-fqUhjzeE.js";import{i as v,n as y}from"./timestamp-preference-sKwBl5I8.js";var b={surfaces:[`--s2-gray-25`,`--s2-gray-50`,`--s2-gray-75`,`--s2-gray-100`,`--s2-gray-200`,`--s2-bg-base`,`--s2-bg-layer-1`,`--s2-bg-layer-2`,`--s2-bg-elevated`,`--s2-bg-sunken`],text:[`--s2-gray-800`,`--s2-gray-900`,`--s2-gray-1000`,`--s2-content-default`,`--s2-content-secondary`,`--s2-content-tertiary`,`--s2-content-disabled`],accents:[`--slicc-cone`,`--slicc-scoop-blue`,`--slicc-scoop-purple`,`--slicc-scoop-teal`,`--slicc-accent`,`--s2-accent`,`--s2-accent-hover`,`--s2-accent-down`],semantic:[`--s2-negative`,`--s2-positive`,`--s2-informative`,`--s2-notice`],chrome:[`--s2-border-default`,`--s2-border-subtle`,`--s2-border-focus`,`--s2-shadow-elevated`,`--s2-shadow-container`]},x=`slicc-wc-settings-style`,S=`
|
|
3
3
|
/* Width is owned by the dialog card (via ::part) — a min-width on the body
|
|
4
4
|
used to overflow the card's content box and clip the row borders. */
|
|
@@ -48,4 +48,4 @@ slicc-dialog.wcset-dialog::part(dialog){width:min(520px,92vw);}
|
|
|
48
48
|
.wcset__toggle-row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--canvas);}
|
|
49
49
|
.wcset__toggle-row label{font-size:13px;font-weight:500;color:var(--ink);}
|
|
50
50
|
.wcset__toggle-row input[type="checkbox"]{width:16px;height:16px;accent-color:var(--ctx);}
|
|
51
|
-
`;function C(e){if(e.getElementById(x))return;let t=e.createElement(`style`);t.id=x,t.textContent=S,e.head.appendChild(t)}function w(e,t){let n=document.createElement(`div`);return n.className=e,t!==void 0&&(n.textContent=t),n}function T(e,t,n){let r=document.createElement(`button`);return r.type=`button`,r.className=e,r.textContent=t,r.addEventListener(`click`,n),r}function E(e){return e?e.length<=8?`••••`:`${e.slice(0,4)}…${e.slice(-4)}`:``}function D(e){let t;return t=e.loggedOut?e.userName?`Logged out — was ${e.userName}`:`Logged out`:e.userName?e.userName:e.accessToken?`Logged in`:E(e.apiKey),e.baseUrl?`${t} • ${e.baseUrl}`:t}async function O(t,n,r){let{ps:i,log:a,setStatus:o,renderList:s}=r,c=i.getProviderConfig(t),l=i.getAccounts().some(e=>e.providerId===t);if(c.requiresBaseUrl){if(!n.trim()&&!i.getBaseUrlForProvider(t)){o(`Base URL is required.`,!0);return}n.trim()&&i.addAccount(t,``,n.trim())}o(`Opening login window…`);let u=()=>{o(``),s()};try{if(c.onOAuthLoginIntercepted){let{createInterceptingOAuthLauncherForCurrentRuntime:t}=await e(async()=>{let{createInterceptingOAuthLauncherForCurrentRuntime:e}=await import(`./oauth-service-Cy5ngmcU.js`);return{createInterceptingOAuthLauncherForCurrentRuntime:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11])),n=await t();if(!n)throw Error(`No controlled-browser CDP transport available — open SLICC in standalone mode or the Chrome extension.`);await c.onOAuthLoginIntercepted(n,u)}else if(c.onOAuthLogin){let{createOAuthLauncher:t}=await e(async()=>{let{createOAuthLauncher:e}=await import(`./oauth-service-Cy5ngmcU.js`);return{createOAuthLauncher:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11]));await c.onOAuthLogin(t(),u)}else throw Error(`${c.name} does not support interactive login.`)}catch(e){l||await i.removeAccount(t).catch(()=>void 0),a.error(`WC settings OAuth login failed`,{providerId:t,err:e}),o(`Login failed: ${e instanceof Error?e.message:String(e)}`,!0)}}function k(e,t,n){let{ps:r,log:i,setStatus:a,renderList:o}=n,s=w(`wcset__row`),c=w(`wcset__info`);if(c.append(w(`wcset__name`,t.name),w(`wcset__detail`,D(e))),s.append(c),t.isOAuth){let t=e.loggedOut===!0;s.append(T(`wcset__btn`,t?`Log in`:`Log out`,()=>{t?O(e.providerId,``,n):r.logoutOAuthAccount(e.providerId).then(o).catch(t=>{i.error(`WC settings logout failed`,{providerId:e.providerId,err:t}),a(`Logout failed.`,!0)})}))}return s.append(T(`wcset__btn wcset__btn--danger`,`Remove`,()=>{r.removeAccount(e.providerId).then(o).catch(t=>{i.error(`WC settings remove failed`,{providerId:e.providerId,err:t}),a(`Remove failed.`,!0)})})),s}function A(e){let{ps:t,setStatus:n}=e,r=w(`wcset__add`);r.append(w(`wcset__label`,`Add account`));let i=document.createElement(`select`);i.className=`wcset__select`;let a=document.createElement(`option`);a.value=``,a.textContent=`Choose a provider…`,i.append(a);let o=new Set(t.getAccounts().map(e=>e.providerId)),s=t.getAvailableProviders().filter(e=>!o.has(e)&&t.providerOffersLlmModels(e)).sort((e,n)=>t.getProviderConfig(e).name.localeCompare(t.getProviderConfig(n).name));for(let e of s){let n=document.createElement(`option`);n.value=e,n.textContent=t.getProviderConfig(e).name,i.append(n)}r.append(i);let c=w(`wcset__controls`);return c.style.cssText=`display:flex;flex-direction:column;gap:8px;`,r.append(c),i.addEventListener(`change`,()=>{c.replaceChildren(),n(``);let r=i.value;if(!r)return;let a=t.getProviderConfig(r),o=document.createElement(`input`);if(o.className=`wcset__input`,o.placeholder=a.baseUrlPlaceholder??`Base URL`,o.value=t.getBaseUrlForProvider(r)??``,a.requiresBaseUrl&&c.append(o),a.isOAuth){c.append(T(`wcset__btn wcset__btn--primary`,`Login with ${a.name}`,()=>{O(r,o.value,e)}));return}let s=document.createElement(`input`);s.className=`wcset__input`,s.placeholder=a.deploymentPlaceholder??`Model IDs (comma-separated)`,s.value=t.getDeploymentForProvider(r)??``,a.requiresDeployment&&c.append(s);let l=document.createElement(`input`);l.className=`wcset__input`,l.type=`password`,l.placeholder=a.apiKeyPlaceholder??`API key`,l.setAttribute(`data-testid`,`wcset-api-key`),(a.requiresApiKey||a.optionalApiKey)&&c.append(l),c.append(T(`wcset__btn wcset__btn--primary`,`Save`,()=>{let i=l.value.trim();if(a.requiresApiKey&&!i){n(`An API key is required.`,!0),l.focus();return}if(a.requiresBaseUrl&&!o.value.trim()){n(`Base URL is required.`,!0),o.focus();return}if(a.requiresDeployment&&!s.value.trim()){n(`Model IDs are required.`,!0),s.focus();return}t.addAccount(r,i,o.value.trim()||void 0,s.value.trim()||void 0),l.value=``,n(`${a.name} connected.`),e.renderList()}))}),r}function j(){let e=w(`wcset__add`);e.append(w(`wcset__section-label`,`Chat`));let t=w(`wcset__toggle-row`),n=document.createElement(`label`);n.textContent=`Show timestamps`;let r=document.createElement(`input`);return r.type=`checkbox`,r.checked=y(),r.addEventListener(`change`,()=>v(r.checked)),t.append(n,r),e.append(t),e}function M(){let e=w(`wcset__add`);e.append(w(`wcset__section-label`,`Browsing`));let t=w(`wcset__toggle-row`),n=document.createElement(`label`);n.textContent=`Autodiscover agentic resources`;let r=document.createElement(`input`);return r.type=`checkbox`,r.checked=_(),r.addEventListener(`change`,()=>g(r.checked)),t.append(n,r),e.append(t),e}function N(e){let i=w(`wcset__list`),a=n().filter(e=>e.userToggleable);a.length===0&&i.append(w(`wcset__empty`,`No experimental features are available right now.`));for(let n of a){let a=w(`wcset__toggle-row`),o=w(`wcset__info`),s=document.createElement(`label`),c=document.createElement(`input`);c.id=`wcset-feature-${n.id}`,c.type=`checkbox`,c.checked=r(n.id),s.htmlFor=c.id,s.textContent=n.label,o.append(s,w(`wcset__detail`,n.description)),c.addEventListener(`change`,()=>{try{t(n.id,c.checked?`on`:`off`),c.checked=r(n.id),e.setStatus(`Saved.`)}catch(t){e.log.error(`Experimental settings update failed`,{flagId:n.id,err:t}),e.setStatus(`Unable to save this feature setting.`,!0)}}),a.append(o,c),i.append(a)}return i}function P(e){let t=w(`wcset__appearance`);t.append(w(`wcset__section-label`,`Appearance`));let n=a(),r=w(`wcset__preset-grid`),d=document.createElement(`div`);d.className=`wcset__preset-swatch${n?``:` wcset__preset-swatch--active`}`,d.innerHTML=[`#161618`,`#1f1f22`,`#f59e0b`].map(e=>`<div class="wcset__preset-swatch__stripe" style="background:${e}"></div>`).join(``)+`<div class="wcset__preset-name">Default</div>`,d.addEventListener(`click`,()=>{c(),h(),v()}),r.append(d);for(let e of u){let t=document.createElement(`div`);t.className=`wcset__preset-swatch${n===e.id?` wcset__preset-swatch--active`:``}`,t.innerHTML=`<div class="wcset__preset-swatch__stripe" style="background:${e.tokens[`--s2-gray-25`]||`#1a1a1a`}"></div><div class="wcset__preset-swatch__stripe" style="background:${e.tokens[`--s2-gray-100`]||`#2c2c2c`}"></div><div class="wcset__preset-swatch__stripe" style="background:${e.tokens[`--s2-accent`]||`#3562ff`}"></div><div class="wcset__preset-name">${e.name}</div>`,t.addEventListener(`click`,()=>{s(e.id),h(),v()}),r.append(t)}t.append(r);let p=l().filter(e=>e.id!==`__preview`);if(p.length>0){let e=w(`wcset__custom-themes`);e.append(w(`wcset__section-label`,`My Themes`));for(let t of p){let r=w(`wcset__custom-row`),a=w(`wcset__custom-row__name`,t.name);n===t.id&&(a.style.fontWeight=`700`),r.append(a),r.append(T(`wcset__btn`,`Use`,()=>{s(t.id),h(),v()})),r.append(T(`wcset__btn`,`Edit`,()=>{y(t)})),r.append(T(`wcset__btn`,`Export`,()=>{let e=new Blob([f(t)],{type:`application/json`}),n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=`${t.name.toLowerCase().replace(/\s+/g,`-`)}.slicc-theme.json`,r.click(),URL.revokeObjectURL(n)})),r.append(T(`wcset__btn wcset__btn--danger`,`×`,()=>{i(t.id),h(),v()})),e.append(r)}t.append(e)}let g=w(``);g.style.cssText=`display:flex;gap:8px;`,g.append(T(`wcset__btn wcset__btn--primary`,`+ Create Custom Theme`,()=>{y(null)})),g.append(T(`wcset__btn`,`Import Theme…`,()=>{let t=document.createElement(`input`);t.type=`file`,t.accept=`.json`,t.addEventListener(`change`,()=>{let n=t.files?.[0];n&&n.text().then(t=>{try{let n=m(t);o(n),e.setStatus(`Imported "${n.name}".`),v()}catch(t){e.setStatus(`Import failed: ${t instanceof Error?t.message:String(t)}`,!0)}})}),t.click()})),t.append(g);let _=w(``);t.append(_);function v(){let n=t.parentElement;if(!n)return;let r=P(e);n.replaceChild(r,t)}function y(t){_.replaceChildren(V(t,e,v))}return t}function F(e,t,n,r){let i=[],a=d(e,t);for(let[e,t]of Object.entries(b)){i.push(w(`wcset__section-label`,e));let o=w(`wcset__advanced-grid`);for(let e of t){let t=w(`wcset__advanced-token`),i=document.createElement(`input`);i.type=`color`;let s=n[e]||a[e]||`#000000`;i.value=s.startsWith(`#`)?s:`#000000`,i.addEventListener(`input`,()=>{n[e]=i.value,r()});let c=document.createElement(`span`);c.textContent=e.replace(`--s2-`,``).replace(`--slicc-`,``),t.append(i,c),o.append(t)}i.push(o)}return i}function I(e,t,n,r,i){let a=[];for(let[r,o]of[[`background`,`Background`],[`text`,`Text`],[`accent`,`Links & buttons`]]){let s=w(`wcset__builder-row`),c=document.createElement(`label`);c.textContent=o;let l=document.createElement(`input`);l.type=`color`,l.value=e[r],l.addEventListener(`input`,()=>{e[r]=l.value,i()});let u=document.createElement(`input`);if(u.type=`range`,u.min=`0`,u.max=`100`,u.value=String(Math.round((t[r]??1)*100)),u.style.cssText=`width:60px;margin-left:6px;`,u.title=`Opacity`,u.addEventListener(`input`,()=>{t[r]=Number(u.value)/100,i()}),s.append(c,l,u),r===`background`){let e=document.createElement(`input`);e.type=`checkbox`,e.checked=n.disabled,e.style.cssText=`width:auto;margin:0 0 0 8px;`,e.title=`Hide animated background`,e.addEventListener(`change`,()=>{n.disabled=e.checked,i()});let t=document.createElement(`span`);t.textContent=`Static`,t.style.cssText=`font-size:10px;color:var(--txt-3);`,s.append(e,t)}a.push(s)}a.push(w(`wcset__section-label`,`Components`));for(let[e,t]of[[`bubbleBg`,`User bubble bg`],[`bubbleText`,`User bubble text`],[`navBg`,`Nav bar`],[`composerBg`,`Input box`]]){let n=w(`wcset__builder-row`),o=document.createElement(`label`);o.textContent=t;let s=document.createElement(`input`);s.type=`color`,s.value=r[e]||`#000000`,s.addEventListener(`input`,()=>{r[e]=s.value,i()}),n.append(o,s),a.push(n)}return a}function L(e,t){let n=w(`wcset__builder-row`),r=document.createElement(`label`);r.textContent=`Base`;let i=w(`wcset__base-toggle`);for(let n of[`dark`,`light`]){let r=document.createElement(`button`);r.textContent=n.charAt(0).toUpperCase()+n.slice(1),r.className=e===n?`active`:``,r.addEventListener(`click`,()=>t(n)),i.append(r)}return n.append(r,i),n}function R(e,t){let n=w(``);return n.style.cssText=`display:flex;gap:8px;margin-top:8px;`,n.append(T(`wcset__btn wcset__btn--primary`,`Save`,e)),n.append(T(`wcset__btn`,`Cancel`,t)),n}function z(e){return{userBubble:{background:e.bubbleBg,text:e.bubbleText},nav:{background:e.navBg},composer:{background:e.composerBg}}}function B(e,t){let n=t===`dark`;return{bubbleBg:e?.components?.userBubble?.background||(n?`#f5f5f2`:`#0a0a0a`),bubbleText:e?.components?.userBubble?.text||(n?`#0a0a0a`:`#ffffff`),navBg:e?.components?.nav?.background||(n?`#161618`:`#ffffff`),composerBg:e?.components?.composer?.background||(n?`#161618`:`#ffffff`)}}function V(e,t,n){let r=w(`wcset__builder`),a=e?.base??`dark`,l=e?.disableShader??!1,u=!1,f={background:e?.tokens[`--s2-gray-25`]||(a===`dark`?`#1a1a1a`:`#ffffff`),surface:``,text:e?.tokens[`--s2-content-default`]||e?.tokens[`--s2-gray-900`]||(a===`dark`?`#e8e8e8`:`#131313`),accent:e?.tokens[`--s2-accent`]||`#3562ff`,border:``,success:`#2d9d78`,error:`#e34850`},m={background:1,text:1,accent:1},g=B(e,a),_={},v=document.createElement(`input`);v.className=`wcset__input`,v.placeholder=`Theme name`,v.value=e?.name??``;function y(){return v.value.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-|-$/g,``)||`custom-${Date.now()}`}function b(){let e=a===`dark`;f.surface=p(f.background,e?.1:-.08),f.border=p(f.background,e?.15:-.12),f.success=`#2d9d78`,f.error=`#e34850`}function x(){b();let e={...d(f,a),..._};for(let[t,n]of Object.entries(m))if(n<1&&f[t]){let r=f[t],i=Math.round(n*255).toString(16).padStart(2,`0`);for(let n of{background:[`--canvas`,`--s2-gray-25`,`--s2-bg-base`,`--shaderbg`],text:[`--ink`,`--s2-content-default`,`--s2-gray-900`],accent:[`--ctx`,`--waffle`,`--s2-accent`]}[t]||[])e[n]&&(e[n]=`${r}${i}`)}let t={id:`__preview`,name:`Preview`,base:a,tokens:e,disableShader:l,components:z(g)};o(t),s(`__preview`),h()}function S(){r.replaceChildren();let p=w(`wcset__builder-row`),C=document.createElement(`label`);C.textContent=`Name`,p.append(C,v),r.append(p),r.append(L(a,e=>{a=e,S(),x()}));let T={disabled:l};for(let e of I(f,m,T,g,()=>{l=T.disabled,x()}))r.append(e);let E=document.createElement(`button`);if(E.className=`wcset__advanced-toggle`,E.textContent=u?`Hide advanced`:`Show advanced`,E.addEventListener(`click`,()=>{u=!u,S()}),r.append(E),u)for(let e of F(f,a,_,x))r.append(e);r.append(R(()=>{let r=v.value.trim();if(!r){t.setStatus(`Name is required.`,!0);return}b();let c={...d(f,a),..._},u=e?.id??y(),p={id:u,name:r,base:a,tokens:c,disableShader:l,components:z(g)};i(`__preview`),o(p),s(u),h(),t.setStatus(`Saved "${r}".`),n()},()=>{i(`__preview`),e?s(e.id):c(),h(),n()}))}return S(),x(),r}async function H(t){let n=await e(()=>import(`./provider-settings-BJ8Gpzt6.js`).then(e=>e.t),__vite__mapDeps([12,3,13,1,14,15,16,17,18,19,20,21,5,2,4,6,7,22,9,23,24,25,26,27,28,10,29,8,30,31,32,33,34]));C(document);let r=JSON.stringify(n.getAccounts());return new Promise(e=>{let i=document.createElement(`slicc-dialog`);i.classList.add(`wcset-dialog`),i.setAttribute(`heading`,`Accounts`);let a=w(`wcset`),o=w(`wcset__list`),s=w(`wcset__status`),c=(e,t=!1)=>{s.textContent=e,s.toggleAttribute(`data-error`,t)},l=r,u=()=>{let e=JSON.stringify(n.getAccounts());e!==l&&(l=e,window.dispatchEvent(new CustomEvent(`slicc:accounts-changed`)))},d=w(``),f={ps:n,log:t,setStatus:c,renderList:()=>{u(),o.replaceChildren();let e=n.getAccounts();if(e.length===0)o.append(w(`wcset__empty`,`No accounts configured.`));else for(let t of e)o.append(k(t,n.getProviderConfig(t.providerId),f));d.replaceChildren(A(f))}};f.renderList(),a.append(o,d,s),i.append(a);let p=T(`wcset__btn wcset__btn--primary`,`Done`,()=>{i.hide?.()});p.setAttribute(`slot`,`footer`),i.append(p),i.addEventListener(`slicc-dialog-close`,()=>{i.remove(),e(JSON.stringify(n.getAccounts())!==r)}),document.body.append(i),i.show?.()})}async function U(e){return C(document),i(`__preview`),new Promise(t=>{let n=document.createElement(`slicc-dialog`);n.classList.add(`wcset-dialog`),n.setAttribute(`heading`,`Theme`);let r=w(`wcset`),o=w(`wcset__status`),l=P({ps:null,log:e,setStatus:(e,t=!1)=>{o.textContent=e,o.toggleAttribute(`data-error`,t)},renderList:()=>{}}),u=j(),d=M();r.append(l,u,d,o),n.append(r);let f=T(`wcset__btn wcset__btn--primary`,`Done`,()=>{n.hide?.()});f.setAttribute(`slot`,`footer`),n.append(f);let p=a();n.addEventListener(`slicc-dialog-close`,()=>{a()===`__preview`&&(i(`__preview`),p&&p!==`__preview`?s(p):c(),h()),n.remove(),t()}),document.body.append(n),n.show?.()})}async function W(e){if(r(`experimental-settings`))return C(document),new Promise(t=>{let n=document.createElement(`slicc-dialog`);n.classList.add(`wcset-dialog`),n.setAttribute(`heading`,`Experimental`);let r=w(`wcset`),i=w(`wcset__status`);r.append(N({log:e,setStatus:(e,t=!1)=>{i.textContent=e,i.toggleAttribute(`data-error`,t)}}),i),n.append(r);let a=T(`wcset__btn wcset__btn--primary`,`Done`,()=>{n.hide?.()});a.setAttribute(`slot`,`footer`),n.append(a),n.addEventListener(`slicc-dialog-close`,()=>{n.remove(),t()}),document.body.append(n),n.show?.()})}export{W as showExperimentalSettings,U as showThemeSettings,H as showWcSettings};
|
|
51
|
+
`;function C(e){if(e.getElementById(x))return;let t=e.createElement(`style`);t.id=x,t.textContent=S,e.head.appendChild(t)}function w(e,t){let n=document.createElement(`div`);return n.className=e,t!==void 0&&(n.textContent=t),n}function T(e,t,n){let r=document.createElement(`button`);return r.type=`button`,r.className=e,r.textContent=t,r.addEventListener(`click`,n),r}function E(e){return e?e.length<=8?`••••`:`${e.slice(0,4)}…${e.slice(-4)}`:``}function D(e){let t;return t=e.loggedOut?e.userName?`Logged out — was ${e.userName}`:`Logged out`:e.userName?e.userName:e.accessToken?`Logged in`:E(e.apiKey),e.baseUrl?`${t} • ${e.baseUrl}`:t}async function O(t,n,r){let{ps:i,log:a,setStatus:o,renderList:s}=r,c=i.getProviderConfig(t),l=i.getAccounts().some(e=>e.providerId===t);if(c.requiresBaseUrl){if(!n.trim()&&!i.getBaseUrlForProvider(t)){o(`Base URL is required.`,!0);return}n.trim()&&i.addAccount(t,``,n.trim())}o(`Opening login window…`);let u=()=>{o(``),s()};try{if(c.onOAuthLoginIntercepted){let{createInterceptingOAuthLauncherForCurrentRuntime:t}=await e(async()=>{let{createInterceptingOAuthLauncherForCurrentRuntime:e}=await import(`./oauth-service-Cy5ngmcU.js`);return{createInterceptingOAuthLauncherForCurrentRuntime:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11])),n=await t();if(!n)throw Error(`No controlled-browser CDP transport available — open SLICC in standalone mode or the Chrome extension.`);await c.onOAuthLoginIntercepted(n,u)}else if(c.onOAuthLogin){let{createOAuthLauncher:t}=await e(async()=>{let{createOAuthLauncher:e}=await import(`./oauth-service-Cy5ngmcU.js`);return{createOAuthLauncher:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11]));await c.onOAuthLogin(t(),u)}else throw Error(`${c.name} does not support interactive login.`)}catch(e){l||await i.removeAccount(t).catch(()=>void 0),a.error(`WC settings OAuth login failed`,{providerId:t,err:e}),o(`Login failed: ${e instanceof Error?e.message:String(e)}`,!0)}}function k(e,t,n){let{ps:r,log:i,setStatus:a,renderList:o}=n,s=w(`wcset__row`),c=w(`wcset__info`);if(c.append(w(`wcset__name`,t.name),w(`wcset__detail`,D(e))),s.append(c),t.isOAuth){let t=e.loggedOut===!0;s.append(T(`wcset__btn`,t?`Log in`:`Log out`,()=>{t?O(e.providerId,``,n):r.logoutOAuthAccount(e.providerId).then(o).catch(t=>{i.error(`WC settings logout failed`,{providerId:e.providerId,err:t}),a(`Logout failed.`,!0)})}))}return s.append(T(`wcset__btn wcset__btn--danger`,`Remove`,()=>{r.removeAccount(e.providerId).then(o).catch(t=>{i.error(`WC settings remove failed`,{providerId:e.providerId,err:t}),a(`Remove failed.`,!0)})})),s}function A(e){let{ps:t,setStatus:n}=e,r=w(`wcset__add`);r.append(w(`wcset__label`,`Add account`));let i=document.createElement(`select`);i.className=`wcset__select`;let a=document.createElement(`option`);a.value=``,a.textContent=`Choose a provider…`,i.append(a);let o=new Set(t.getAccounts().map(e=>e.providerId)),s=t.getAvailableProviders().filter(e=>!o.has(e)&&t.providerOffersLlmModels(e)).sort((e,n)=>t.getProviderConfig(e).name.localeCompare(t.getProviderConfig(n).name));for(let e of s){let n=document.createElement(`option`);n.value=e,n.textContent=t.getProviderConfig(e).name,i.append(n)}r.append(i);let c=w(`wcset__controls`);return c.style.cssText=`display:flex;flex-direction:column;gap:8px;`,r.append(c),i.addEventListener(`change`,()=>{c.replaceChildren(),n(``);let r=i.value;if(!r)return;let a=t.getProviderConfig(r),o=document.createElement(`input`);if(o.className=`wcset__input`,o.placeholder=a.baseUrlPlaceholder??`Base URL`,o.value=t.getBaseUrlForProvider(r)??``,a.requiresBaseUrl&&c.append(o),a.isOAuth){c.append(T(`wcset__btn wcset__btn--primary`,`Login with ${a.name}`,()=>{O(r,o.value,e)}));return}let s=document.createElement(`input`);s.className=`wcset__input`,s.placeholder=a.deploymentPlaceholder??`Model IDs (comma-separated)`,s.value=t.getDeploymentForProvider(r)??``,a.requiresDeployment&&c.append(s);let l=document.createElement(`input`);l.className=`wcset__input`,l.type=`password`,l.placeholder=a.apiKeyPlaceholder??`API key`,l.setAttribute(`data-testid`,`wcset-api-key`),(a.requiresApiKey||a.optionalApiKey)&&c.append(l),c.append(T(`wcset__btn wcset__btn--primary`,`Save`,()=>{let i=l.value.trim();if(a.requiresApiKey&&!i){n(`An API key is required.`,!0),l.focus();return}if(a.requiresBaseUrl&&!o.value.trim()){n(`Base URL is required.`,!0),o.focus();return}if(a.requiresDeployment&&!s.value.trim()){n(`Model IDs are required.`,!0),s.focus();return}t.addAccount(r,i,o.value.trim()||void 0,s.value.trim()||void 0),l.value=``,n(`${a.name} connected.`),e.renderList()}))}),r}function j(){let e=w(`wcset__add`);e.append(w(`wcset__section-label`,`Chat`));let t=w(`wcset__toggle-row`),n=document.createElement(`label`);n.textContent=`Show timestamps`;let r=document.createElement(`input`);return r.type=`checkbox`,r.checked=y(),r.addEventListener(`change`,()=>v(r.checked)),t.append(n,r),e.append(t),e}function M(){let e=w(`wcset__add`);e.append(w(`wcset__section-label`,`Browsing`));let t=w(`wcset__toggle-row`),n=document.createElement(`label`);n.textContent=`Autodiscover agentic resources`;let r=document.createElement(`input`);return r.type=`checkbox`,r.checked=_(),r.addEventListener(`change`,()=>g(r.checked)),t.append(n,r),e.append(t),e}function N(e){let i=w(`wcset__list`),a=n().filter(e=>e.userToggleable);a.length===0&&i.append(w(`wcset__empty`,`No experimental features are available right now.`));for(let n of a){let a=w(`wcset__toggle-row`),o=w(`wcset__info`),s=document.createElement(`label`),c=document.createElement(`input`);c.id=`wcset-feature-${n.id}`,c.type=`checkbox`,c.checked=r(n.id),s.htmlFor=c.id,s.textContent=n.label,o.append(s,w(`wcset__detail`,n.description)),c.addEventListener(`change`,()=>{try{t(n.id,c.checked?`on`:`off`),c.checked=r(n.id),e.setStatus(`Saved.`)}catch(t){e.log.error(`Experimental settings update failed`,{flagId:n.id,err:t}),e.setStatus(`Unable to save this feature setting.`,!0)}}),a.append(o,c),i.append(a)}return i}function P(e){let t=w(`wcset__appearance`);t.append(w(`wcset__section-label`,`Appearance`));let n=a(),r=w(`wcset__preset-grid`),d=document.createElement(`div`);d.className=`wcset__preset-swatch${n?``:` wcset__preset-swatch--active`}`,d.innerHTML=[`#161618`,`#1f1f22`,`#f59e0b`].map(e=>`<div class="wcset__preset-swatch__stripe" style="background:${e}"></div>`).join(``)+`<div class="wcset__preset-name">Default</div>`,d.addEventListener(`click`,()=>{c(),h(),v()}),r.append(d);for(let e of u){let t=document.createElement(`div`);t.className=`wcset__preset-swatch${n===e.id?` wcset__preset-swatch--active`:``}`,t.innerHTML=`<div class="wcset__preset-swatch__stripe" style="background:${e.tokens[`--s2-gray-25`]||`#1a1a1a`}"></div><div class="wcset__preset-swatch__stripe" style="background:${e.tokens[`--s2-gray-100`]||`#2c2c2c`}"></div><div class="wcset__preset-swatch__stripe" style="background:${e.tokens[`--s2-accent`]||`#3562ff`}"></div><div class="wcset__preset-name">${e.name}</div>`,t.addEventListener(`click`,()=>{s(e.id),h(),v()}),r.append(t)}t.append(r);let p=l().filter(e=>e.id!==`__preview`);if(p.length>0){let e=w(`wcset__custom-themes`);e.append(w(`wcset__section-label`,`My Themes`));for(let t of p){let r=w(`wcset__custom-row`),a=w(`wcset__custom-row__name`,t.name);n===t.id&&(a.style.fontWeight=`700`),r.append(a),r.append(T(`wcset__btn`,`Use`,()=>{s(t.id),h(),v()})),r.append(T(`wcset__btn`,`Edit`,()=>{y(t)})),r.append(T(`wcset__btn`,`Export`,()=>{let e=new Blob([f(t)],{type:`application/json`}),n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=`${t.name.toLowerCase().replace(/\s+/g,`-`)}.slicc-theme.json`,r.click(),URL.revokeObjectURL(n)})),r.append(T(`wcset__btn wcset__btn--danger`,`×`,()=>{i(t.id),h(),v()})),e.append(r)}t.append(e)}let g=w(``);g.style.cssText=`display:flex;gap:8px;`,g.append(T(`wcset__btn wcset__btn--primary`,`+ Create Custom Theme`,()=>{y(null)})),g.append(T(`wcset__btn`,`Import Theme…`,()=>{let t=document.createElement(`input`);t.type=`file`,t.accept=`.json`,t.addEventListener(`change`,()=>{let n=t.files?.[0];n&&n.text().then(t=>{try{let n=m(t);o(n),e.setStatus(`Imported "${n.name}".`),v()}catch(t){e.setStatus(`Import failed: ${t instanceof Error?t.message:String(t)}`,!0)}})}),t.click()})),t.append(g);let _=w(``);t.append(_);function v(){let n=t.parentElement;if(!n)return;let r=P(e);n.replaceChild(r,t)}function y(t){_.replaceChildren(V(t,e,v))}return t}function F(e,t,n,r){let i=[],a=d(e,t);for(let[e,t]of Object.entries(b)){i.push(w(`wcset__section-label`,e));let o=w(`wcset__advanced-grid`);for(let e of t){let t=w(`wcset__advanced-token`),i=document.createElement(`input`);i.type=`color`;let s=n[e]||a[e]||`#000000`;i.value=s.startsWith(`#`)?s:`#000000`,i.addEventListener(`input`,()=>{n[e]=i.value,r()});let c=document.createElement(`span`);c.textContent=e.replace(`--s2-`,``).replace(`--slicc-`,``),t.append(i,c),o.append(t)}i.push(o)}return i}function I(e,t,n,r,i){let a=[];for(let[r,o]of[[`background`,`Background`],[`text`,`Text`],[`accent`,`Links & buttons`]]){let s=w(`wcset__builder-row`),c=document.createElement(`label`);c.textContent=o;let l=document.createElement(`input`);l.type=`color`,l.value=e[r],l.addEventListener(`input`,()=>{e[r]=l.value,i()});let u=document.createElement(`input`);if(u.type=`range`,u.min=`0`,u.max=`100`,u.value=String(Math.round((t[r]??1)*100)),u.style.cssText=`width:60px;margin-left:6px;`,u.title=`Opacity`,u.addEventListener(`input`,()=>{t[r]=Number(u.value)/100,i()}),s.append(c,l,u),r===`background`){let e=document.createElement(`input`);e.type=`checkbox`,e.checked=n.disabled,e.style.cssText=`width:auto;margin:0 0 0 8px;`,e.title=`Hide animated background`,e.addEventListener(`change`,()=>{n.disabled=e.checked,i()});let t=document.createElement(`span`);t.textContent=`Static`,t.style.cssText=`font-size:10px;color:var(--txt-3);`,s.append(e,t)}a.push(s)}a.push(w(`wcset__section-label`,`Components`));for(let[e,t]of[[`bubbleBg`,`User bubble bg`],[`bubbleText`,`User bubble text`],[`navBg`,`Nav bar`],[`composerBg`,`Input box`]]){let n=w(`wcset__builder-row`),o=document.createElement(`label`);o.textContent=t;let s=document.createElement(`input`);s.type=`color`,s.value=r[e]||`#000000`,s.addEventListener(`input`,()=>{r[e]=s.value,i()}),n.append(o,s),a.push(n)}return a}function L(e,t){let n=w(`wcset__builder-row`),r=document.createElement(`label`);r.textContent=`Base`;let i=w(`wcset__base-toggle`);for(let n of[`dark`,`light`]){let r=document.createElement(`button`);r.textContent=n.charAt(0).toUpperCase()+n.slice(1),r.className=e===n?`active`:``,r.addEventListener(`click`,()=>t(n)),i.append(r)}return n.append(r,i),n}function R(e,t){let n=w(``);return n.style.cssText=`display:flex;gap:8px;margin-top:8px;`,n.append(T(`wcset__btn wcset__btn--primary`,`Save`,e)),n.append(T(`wcset__btn`,`Cancel`,t)),n}function z(e){return{userBubble:{background:e.bubbleBg,text:e.bubbleText},nav:{background:e.navBg},composer:{background:e.composerBg}}}function B(e,t){let n=t===`dark`;return{bubbleBg:e?.components?.userBubble?.background||(n?`#f5f5f2`:`#0a0a0a`),bubbleText:e?.components?.userBubble?.text||(n?`#0a0a0a`:`#ffffff`),navBg:e?.components?.nav?.background||(n?`#161618`:`#ffffff`),composerBg:e?.components?.composer?.background||(n?`#161618`:`#ffffff`)}}function V(e,t,n){let r=w(`wcset__builder`),a=e?.base??`dark`,l=e?.disableShader??!1,u=!1,f={background:e?.tokens[`--s2-gray-25`]||(a===`dark`?`#1a1a1a`:`#ffffff`),surface:``,text:e?.tokens[`--s2-content-default`]||e?.tokens[`--s2-gray-900`]||(a===`dark`?`#e8e8e8`:`#131313`),accent:e?.tokens[`--s2-accent`]||`#3562ff`,border:``,success:`#2d9d78`,error:`#e34850`},m={background:1,text:1,accent:1},g=B(e,a),_={},v=document.createElement(`input`);v.className=`wcset__input`,v.placeholder=`Theme name`,v.value=e?.name??``;function y(){return v.value.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-|-$/g,``)||`custom-${Date.now()}`}function b(){let e=a===`dark`;f.surface=p(f.background,e?.1:-.08),f.border=p(f.background,e?.15:-.12),f.success=`#2d9d78`,f.error=`#e34850`}function x(){b();let e={...d(f,a),..._};for(let[t,n]of Object.entries(m))if(n<1&&f[t]){let r=f[t],i=Math.round(n*255).toString(16).padStart(2,`0`);for(let n of{background:[`--canvas`,`--s2-gray-25`,`--s2-bg-base`,`--shaderbg`],text:[`--ink`,`--s2-content-default`,`--s2-gray-900`],accent:[`--ctx`,`--waffle`,`--s2-accent`]}[t]||[])e[n]&&(e[n]=`${r}${i}`)}let t={id:`__preview`,name:`Preview`,base:a,tokens:e,disableShader:l,components:z(g)};o(t),s(`__preview`),h()}function S(){r.replaceChildren();let p=w(`wcset__builder-row`),C=document.createElement(`label`);C.textContent=`Name`,p.append(C,v),r.append(p),r.append(L(a,e=>{a=e,S(),x()}));let T={disabled:l};for(let e of I(f,m,T,g,()=>{l=T.disabled,x()}))r.append(e);let E=document.createElement(`button`);if(E.className=`wcset__advanced-toggle`,E.textContent=u?`Hide advanced`:`Show advanced`,E.addEventListener(`click`,()=>{u=!u,S()}),r.append(E),u)for(let e of F(f,a,_,x))r.append(e);r.append(R(()=>{let r=v.value.trim();if(!r){t.setStatus(`Name is required.`,!0);return}b();let c={...d(f,a),..._},u=e?.id??y(),p={id:u,name:r,base:a,tokens:c,disableShader:l,components:z(g)};i(`__preview`),o(p),s(u),h(),t.setStatus(`Saved "${r}".`),n()},()=>{i(`__preview`),e?s(e.id):c(),h(),n()}))}return S(),x(),r}async function H(t){let n=await e(()=>import(`./provider-settings-B6mT4Py7.js`).then(e=>e.t),__vite__mapDeps([12,3,13,1,14,15,16,17,18,19,20,21,5,2,4,6,7,22,9,23,24,25,26,27,28,10,29,8,30,31,32,33,34]));C(document);let r=JSON.stringify(n.getAccounts());return new Promise(e=>{let i=document.createElement(`slicc-dialog`);i.classList.add(`wcset-dialog`),i.setAttribute(`heading`,`Accounts`);let a=w(`wcset`),o=w(`wcset__list`),s=w(`wcset__status`),c=(e,t=!1)=>{s.textContent=e,s.toggleAttribute(`data-error`,t)},l=r,u=()=>{let e=JSON.stringify(n.getAccounts());e!==l&&(l=e,window.dispatchEvent(new CustomEvent(`slicc:accounts-changed`)))},d=w(``),f={ps:n,log:t,setStatus:c,renderList:()=>{u(),o.replaceChildren();let e=n.getAccounts();if(e.length===0)o.append(w(`wcset__empty`,`No accounts configured.`));else for(let t of e)o.append(k(t,n.getProviderConfig(t.providerId),f));d.replaceChildren(A(f))}};f.renderList(),a.append(o,d,s),i.append(a);let p=T(`wcset__btn wcset__btn--primary`,`Done`,()=>{i.hide?.()});p.setAttribute(`slot`,`footer`),i.append(p),i.addEventListener(`slicc-dialog-close`,()=>{i.remove(),e(JSON.stringify(n.getAccounts())!==r)}),document.body.append(i),i.show?.()})}async function U(e){return C(document),i(`__preview`),new Promise(t=>{let n=document.createElement(`slicc-dialog`);n.classList.add(`wcset-dialog`),n.setAttribute(`heading`,`Theme`);let r=w(`wcset`),o=w(`wcset__status`),l=P({ps:null,log:e,setStatus:(e,t=!1)=>{o.textContent=e,o.toggleAttribute(`data-error`,t)},renderList:()=>{}}),u=j(),d=M();r.append(l,u,d,o),n.append(r);let f=T(`wcset__btn wcset__btn--primary`,`Done`,()=>{n.hide?.()});f.setAttribute(`slot`,`footer`),n.append(f);let p=a();n.addEventListener(`slicc-dialog-close`,()=>{a()===`__preview`&&(i(`__preview`),p&&p!==`__preview`?s(p):c(),h()),n.remove(),t()}),document.body.append(n),n.show?.()})}async function W(e){if(r(`experimental-settings`))return C(document),new Promise(t=>{let n=document.createElement(`slicc-dialog`);n.classList.add(`wcset-dialog`),n.setAttribute(`heading`,`Experimental`);let r=w(`wcset`),i=w(`wcset__status`);r.append(N({log:e,setStatus:(e,t=!1)=>{i.textContent=e,i.toggleAttribute(`data-error`,t)}}),i),n.append(r);let a=T(`wcset__btn wcset__btn--primary`,`Done`,()=>{n.hide?.()});a.setAttribute(`slot`,`footer`),n.append(a),n.addEventListener(`slicc-dialog-close`,()=>{n.remove(),t()}),document.body.append(n),n.show?.()})}export{W as showExperimentalSettings,U as showThemeSettings,H as showWcSettings};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/quick-llm-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/quick-llm-BK48XMzf.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/account-store-sCJNhEJc.js","assets/preload-helper-Czpn1I53.js","assets/bedrock-camp-qpZqnqLa.js","assets/diagnostics-DN_idNHx.js","assets/transform-messages-N_eMsP2M.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-gbjkpjE_.js","assets/libesm-BI4UHVqp.js","assets/logger-DDBAeTLF.js","assets/src-CAWTvdAa.js","assets/proxied-fetch-B4g-4VbQ.js","assets/base64-DpPqYZJF.js","assets/runtime-env-Dlaokqg1.js","assets/fetch-body-D2PwksUW.js","assets/float-topology-BgioAcOd.js","assets/runtime-env-E-i2SW1s.js","assets/secret-topology-xLmXoozo.js","assets/secrets-bridge-client-cWDAnFqs.js","assets/port-bridge-client-BbVs1yhx.js","assets/image-markers-BXtVm4og.js","assets/tool-ui-DfXu6quJ.js","assets/providers-DQj-gKPL.js","assets/panel-rpc-B3MSVImO.js","assets/llm-session-id-bZQs6gBN.js","assets/icons-ZLR7gmJ4.js"])))=>i.map(i=>d[i]);
|
|
2
2
|
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helper-Czpn1I53.js";import{l as n}from"./src-CAWTvdAa.js";import{t as r}from"./image-markers-BXtVm4og.js";import{c as i,i as a,l as o,u as s}from"./telemetry-BVzuNdvW.js";import{t as c}from"./html-B_Hg2WOy.js";import{t as l}from"./icons-ZLR7gmJ4.js";import{a as u,o as d}from"./dictation-priming-CNllGgNq.js";import{t as f}from"./agent-message-to-chat-_cvF5A5g.js";import{r as p,t as m}from"./timestamp-preference-sKwBl5I8.js";import{n as ee,r as h}from"./src-DDn9o2XK.js";import{n as te,t as ne}from"./trusted-layer-ghPA1ENf.js";import{t as g}from"./wc-scoop-color-CByZNEJo.js";var re=new Set([`webhook`,`cron`,`sprinkle`,`fswatch`,`session-reload`,`navigate`,`discovery`,`upgrade`,`workflow`,`bash`,`preview`,`scoop-notify`,`scoop-idle`,`scoop-wait`,`sudo-request`]);function ie(e){return e!=null&&re.has(e)}var _=new Uint8Array([137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,0,1,0,0,0,1,8,4,0,0,0,181,28,12,2,0,0,0,11,73,68,65,84,120,218,99,100,96,0,0,0,6,0,2,48,129,208,47,0,0,0,0,73,69,78,68,174,66,96,130]);function ae(e){let t=``;for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return typeof btoa==`function`?btoa(t):Buffer.from(t,`binary`).toString(`base64`)}var v=new Date(`2024-01-01T10:00:00`).getTime();function y(e){return v+e*6e4}var oe=`ui-fixture`;function se(){return[{id:`fx-user-1`,role:`user`,content:`Hey sliccy — can you summarize what this fixture covers?`,timestamp:y(0)},{id:`fx-assistant-1`,role:`assistant`,content:`Sure! This session walks through every chat UI variant I know about. You'll see user and assistant bubbles, tool calls in every status, the six lick channels, a delegation, queued messages, and a streaming tail at the end so you can inspect the live state.`,timestamp:y(.2)}]}function ce(){return[{id:`fx-user-2`,role:`user`,content:`Show me some **markdown** — headings, lists, code, a blockquote.`,timestamp:y(1)},{id:`fx-user-attachment`,role:`user`,content:`Use these attachments as visual and text context.`,timestamp:y(1.1),attachments:[{id:`fx-att-image`,name:`dot.png`,mimeType:`image/png`,size:_.byteLength,kind:`image`,data:ae(_)},{id:`fx-att-text`,name:`notes.txt`,mimeType:`text/plain`,size:21,kind:`text`,text:`Fixture attachment text`}]},{id:`fx-assistant-2`,role:`assistant`,content:"## Rich content sample,,Here is a short list:,,- `renderAssistantMessageContent` handles GFM markdown,- Code blocks get syntax highlighting,- Inline `code` uses the mono token,,A fenced code block:,,```ts,import { createChatFixture } from './chat-fixture.js';,,const msgs = createChatFixture();,console.log(msgs.length);,```,,> Blockquotes should feel quieter than regular text.,,And a nested ordered list:,,1. First step,2. Second step, 1. Sub-step A, 2. Sub-step B,3. Third step".split(`,`).join(`
|
|
3
3
|
`),timestamp:y(1.3)}]}function le(){return[{id:`fx-assistant-3`,role:`assistant`,content:`Let me check a few things before I answer.`,timestamp:y(2),toolCalls:[{id:`fx-tc-read`,name:`read_file`,input:{path:`/workspace/README.md`},result:`# Sample README
|
|
4
4
|
|
|
@@ -109,11 +109,11 @@ ${e}</tr>
|
|
|
109
109
|
`}tablecell(e){let t=this.parser.parseInline(e.tokens),n=e.header?`th`:`td`;return(e.align?`<${n} align="${e.align}">`:`<${n}>`)+t+`</${n}>
|
|
110
110
|
`}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${G(e,!0)}</code>`}br(e){return`<br>`}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,tokens:n}){let r=this.parser.parseInline(n),i=yr(e);if(i===null)return r;e=i;let a=`<a href="`+e+`"`;return t&&(a+=` title="`+G(t)+`"`),a+=`>`+r+`</a>`,a}image({href:e,title:t,text:n,tokens:r}){r&&(n=this.parser.parseInline(r,this.parser.textRenderer));let i=yr(e);if(i===null)return G(n);e=i;let a=`<img src="${e}" alt="${G(n)}"`;return t&&(a+=` title="${G(t)}"`),a+=`>`,a}text(e){return`tokens`in e&&e.tokens?this.parser.parseInline(e.tokens):`escaped`in e&&e.escaped?e.text:G(e.text)}},Or=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return``+e}image({text:e}){return``+e}br(){return``}checkbox({raw:e}){return e}},J=class e{options;renderer;textRenderer;constructor(e){this.options=e||R,this.options.renderer=this.options.renderer||new Dr,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new Or}static parse(t,n){return new e(n).parse(t)}static parseInline(t,n){return new e(n).parseInline(t)}parse(e){this.renderer.parser=this;let t=``;for(let n=0;n<e.length;n++){let r=e[n];if(this.options.extensions?.renderers?.[r.type]){let e=r,n=this.options.extensions.renderers[e.type].call({parser:this},e);if(n!==!1||![`space`,`hr`,`heading`,`code`,`table`,`blockquote`,`list`,`checkbox`,`html`,`def`,`paragraph`,`text`].includes(e.type)){t+=n||``;continue}}let i=r;switch(i.type){case`space`:t+=this.renderer.space(i);break;case`hr`:t+=this.renderer.hr(i);break;case`heading`:t+=this.renderer.heading(i);break;case`code`:t+=this.renderer.code(i);break;case`table`:t+=this.renderer.table(i);break;case`blockquote`:t+=this.renderer.blockquote(i);break;case`list`:t+=this.renderer.list(i);break;case`checkbox`:t+=this.renderer.checkbox(i);break;case`html`:t+=this.renderer.html(i);break;case`def`:t+=this.renderer.def(i);break;case`paragraph`:t+=this.renderer.paragraph(i);break;case`text`:t+=this.renderer.text(i);break;default:{let e=`Token with "`+i.type+`" type was not found.`;if(this.options.silent)return console.error(e),``;throw Error(e)}}}return t}parseInline(e,t=this.renderer){this.renderer.parser=this;let n=``;for(let r=0;r<e.length;r++){let i=e[r];if(this.options.extensions?.renderers?.[i.type]){let e=this.options.extensions.renderers[i.type].call({parser:this},i);if(e!==!1||![`escape`,`html`,`link`,`image`,`checkbox`,`strong`,`em`,`codespan`,`br`,`del`,`text`].includes(i.type)){n+=e||``;continue}}let a=i;switch(a.type){case`escape`:n+=t.text(a);break;case`html`:n+=t.html(a);break;case`link`:n+=t.link(a);break;case`image`:n+=t.image(a);break;case`checkbox`:n+=t.checkbox(a);break;case`strong`:n+=t.strong(a);break;case`em`:n+=t.em(a);break;case`codespan`:n+=t.codespan(a);break;case`br`:n+=t.br(a);break;case`del`:n+=t.del(a);break;case`text`:n+=t.text(a);break;default:{let e=`Token with "`+a.type+`" type was not found.`;if(this.options.silent)return console.error(e),``;throw Error(e)}}}return n}},kr=class{options;block;constructor(e){this.options=e||R}static passThroughHooks=new Set([`preprocess`,`postprocess`,`processAllTokens`,`emStrongMask`]);static passThroughHooksRespectAsync=new Set([`preprocess`,`postprocess`,`processAllTokens`]);preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}emStrongMask(e){return e}provideLexer(e=this.block){return e?q.lex:q.lexInline}provideParser(e=this.block){return e?J.parse:J.parseInline}},Ar=class{defaults=an();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=J;Renderer=Dr;TextRenderer=Or;Lexer=q;Tokenizer=Er;Hooks=kr;constructor(...e){this.use(...e)}walkTokens(e,t){let n=[];for(let r of e)switch(n=n.concat(t.call(this,r)),r.type){case`table`:{let e=r;for(let r of e.header)n=n.concat(this.walkTokens(r.tokens,t));for(let r of e.rows)for(let e of r)n=n.concat(this.walkTokens(e.tokens,t));break}case`list`:{let e=r;n=n.concat(this.walkTokens(e.items,t));break}default:{let e=r;this.defaults.extensions?.childTokens?.[e.type]?this.defaults.extensions.childTokens[e.type].forEach(r=>{let i=e[r].flat(1/0);n=n.concat(this.walkTokens(i,t))}):e.tokens&&(n=n.concat(this.walkTokens(e.tokens,t)))}}return n}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(e=>{let n={...e};if(n.async=this.defaults.async||n.async||!1,e.extensions&&(e.extensions.forEach(e=>{if(!e.name)throw Error(`extension name required`);if(`renderer`in e){let n=t.renderers[e.name];n?t.renderers[e.name]=function(...t){let r=e.renderer.apply(this,t);return r===!1&&(r=n.apply(this,t)),r}:t.renderers[e.name]=e.renderer}if(`tokenizer`in e){if(!e.level||e.level!==`block`&&e.level!==`inline`)throw Error(`extension level must be 'block' or 'inline'`);let n=t[e.level];n?n.unshift(e.tokenizer):t[e.level]=[e.tokenizer],e.start&&(e.level===`block`?t.startBlock?t.startBlock.push(e.start):t.startBlock=[e.start]:e.level===`inline`&&(t.startInline?t.startInline.push(e.start):t.startInline=[e.start]))}`childTokens`in e&&e.childTokens&&(t.childTokens[e.name]=e.childTokens)}),n.extensions=t),e.renderer){let t=this.defaults.renderer||new Dr(this.defaults);for(let n in e.renderer){if(!(n in t))throw Error(`renderer '${n}' does not exist`);if([`options`,`parser`].includes(n))continue;let r=n,i=e.renderer[r],a=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n||``}}n.renderer=t}if(e.tokenizer){let t=this.defaults.tokenizer||new Er(this.defaults);for(let n in e.tokenizer){if(!(n in t))throw Error(`tokenizer '${n}' does not exist`);if([`options`,`rules`,`lexer`].includes(n))continue;let r=n,i=e.tokenizer[r],a=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n}}n.tokenizer=t}if(e.hooks){let t=this.defaults.hooks||new kr;for(let n in e.hooks){if(!(n in t))throw Error(`hook '${n}' does not exist`);if([`options`,`block`].includes(n))continue;let r=n,i=e.hooks[r],a=t[r];t[r]=kr.passThroughHooks.has(n)?e=>{if(this.defaults.async&&kr.passThroughHooksRespectAsync.has(n))return(async()=>{let n=await i.call(t,e);return a.call(t,n)})();let r=i.call(t,e);return a.call(t,r)}:(...e)=>{if(this.defaults.async)return(async()=>{let n=await i.apply(t,e);return n===!1&&(n=await a.apply(t,e)),n})();let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n}}n.hooks=t}if(e.walkTokens){let t=this.defaults.walkTokens,r=e.walkTokens;n.walkTokens=function(e){let n=[];return n.push(r.call(this,e)),t&&(n=n.concat(t.call(this,e))),n}}this.defaults={...this.defaults,...n}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return q.lex(e,t??this.defaults)}parser(e,t){return J.parse(e,t??this.defaults)}parseMarkdown(e){return(t,n)=>{let r={...n},i={...this.defaults,...r},a=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&r.async===!1)return a(Error(`marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise.`));if(typeof t>`u`||t===null)return a(Error(`marked(): input parameter is undefined or null`));if(typeof t!=`string`)return a(Error(`marked(): input parameter is of type `+Object.prototype.toString.call(t)+`, string expected`));if(i.hooks&&(i.hooks.options=i,i.hooks.block=e),i.async)return(async()=>{let n=i.hooks?await i.hooks.preprocess(t):t,r=await(i.hooks?await i.hooks.provideLexer(e):e?q.lex:q.lexInline)(n,i),a=i.hooks?await i.hooks.processAllTokens(r):r;i.walkTokens&&await Promise.all(this.walkTokens(a,i.walkTokens));let o=await(i.hooks?await i.hooks.provideParser(e):e?J.parse:J.parseInline)(a,i);return i.hooks?await i.hooks.postprocess(o):o})().catch(a);try{i.hooks&&(t=i.hooks.preprocess(t));let n=(i.hooks?i.hooks.provideLexer(e):e?q.lex:q.lexInline)(t,i);i.hooks&&(n=i.hooks.processAllTokens(n)),i.walkTokens&&this.walkTokens(n,i.walkTokens);let r=(i.hooks?i.hooks.provideParser(e):e?J.parse:J.parseInline)(n,i);return i.hooks&&(r=i.hooks.postprocess(r)),r}catch(e){return a(e)}}}onError(e,t){return n=>{if(n.message+=`
|
|
111
111
|
Please report this to https://github.com/markedjs/marked.`,e){let e=`<p>An error occurred:</p><pre>`+G(n.message+``,!0)+`</pre>`;return t?Promise.resolve(e):e}if(t)return Promise.reject(n);throw n}}},jr=new Ar;function Y(e,t){return jr.parse(e,t)}Y.options=Y.setOptions=function(e){return jr.setOptions(e),Y.defaults=jr.defaults,on(Y.defaults),Y},Y.getDefaults=an,Y.defaults=R;function Mr(...e){return jr.use(...e),Y.defaults=jr.defaults,on(Y.defaults),Y}Y.use=Mr,Y.walkTokens=function(e,t){return jr.walkTokens(e,t)},Y.parseInline=jr.parseInline,Y.Parser=J,Y.parser=J.parse,Y.Renderer=Dr,Y.TextRenderer=Or,Y.Lexer=q,Y.lexer=q.lex,Y.Tokenizer=Er,Y.Hooks=kr,Y.parse=Y,Y.options,Y.setOptions,Y.walkTokens,Y.parseInline,J.parse,q.lex;function Nr(e,t){let n=c(e);return t===`shtml`||([`js`,`javascript`,`ts`,`typescript`,`jsx`,`tsx`].includes(t)?n=Fr(n):t===`json`?n=Ir(n):[`bash`,`sh`,`shell`,`zsh`].includes(t)&&(n=Lr(n))),n}function Pr(e){let t=[];return{html:e.replace(/<span class="tok-(?:comment|string)">[\s\S]*?<\/span>/g,e=>{let n=String.fromCharCode(57344+t.length);return t.push(e),n}),restore:e=>e.replace(/[\ue000-\uf8ff]/g,e=>{let n=e.charCodeAt(0)-57344;return t[n]??e})}}function Fr(e){e=e.replace(/(\/\/[^\n]*)/g,`<span class="tok-comment">$1</span>`),e=e.replace(/(\/\*[\s\S]*?\*\/)/g,`<span class="tok-comment">$1</span>`),e=e.replace(/("[^&]*?"|'[^&]*?'|`[^`]*?`)/g,`<span class="tok-string">$1</span>`);let t=Pr(e);return e=t.html,e=e.replace(RegExp(`\\b(${`const.let.var.function.return.if.else.for.while.class.extends.import.export.from.default.new.this.async.await.try.catch.throw.typeof.instanceof.interface.type.enum.implements.abstract.public.private.protected.readonly.static.void.null.undefined.true.false`.split(`.`).join(`|`)})\\b`,`g`),`<span class="tok-keyword">$1</span>`),e=e.replace(/\b(\d+\.?\d*)\b/g,`<span class="tok-number">$1</span>`),e=e.replace(/\b([a-zA-Z_$][\w$]*)\s*(?=\()/g,`<span class="tok-fn">$1</span>`),t.restore(e)}function Ir(e){return e=e.replace(/("[^&]*?")\s*:/g,`<span class="tok-keyword">$1</span>:`),e=e.replace(/:\s*("[^&]*?")/g,`: <span class="tok-string">$1</span>`),e=e.replace(/\b(\d+\.?\d*)\b/g,`<span class="tok-number">$1</span>`),e=e.replace(/\b(true|false|null)\b/g,`<span class="tok-keyword">$1</span>`),e}function Lr(e){return e=e.replace(/(#[^\n]*)/g,`<span class="tok-comment">$1</span>`),e=e.replace(/("[^&]*?"|'[^&]*?')/g,`<span class="tok-string">$1</span>`),e=e.replace(RegExp(`\\b(${[`if`,`then`,`else`,`fi`,`for`,`do`,`done`,`while`,`case`,`esac`,`echo`,`export`,`cd`,`ls`,`mkdir`,`rm`,`cp`,`mv`,`cat`,`grep`,`npm`,`node`,`git`].join(`|`)})\\b`,`g`),`<span class="tok-keyword">$1</span>`),e}var Rr=new Ar({gfm:!0,breaks:!0,async:!1,renderer:{code({text:e,lang:t}){let n=t??``,r=Nr(e,n);return`<pre><code${n?` class="language-${c(n)}"`:``}>${r}</code></pre>\n`},link({href:e,title:t,tokens:n}){let r=e??``;if(r.startsWith(`javascript:`))return this.parser.parseInline(n);let i=t?` title="${c(t)}"`:``,a=this.parser.parseInline(n);return`<a href="${c(r)}"${i} target="_blank" rel="noopener noreferrer">${a}</a>`},image({href:e,title:t,text:n}){let r=e??``,i=n?` alt="${c(n)}"`:``,a=t?` title="${c(t)}"`:``;return`<img src="${c(r)}"${i}${a}>`}}}),zr={ALLOWED_TAGS:`a.b.i.em.strong.p.br.code.pre.ul.ol.li.h1.h2.h3.h4.h5.h6.table.thead.tbody.tr.th.td.del.blockquote.hr.img.span.div.details.summary.input`.split(`.`),ALLOWED_ATTR:[`href`,`src`,`alt`,`title`,`class`,`target`,`rel`,`type`,`checked`,`disabled`],ALLOW_DATA_ATTR:!1};function Br(e){return rn(e,zr)}function Vr(e){return e.replace(/<a\s([^>]*?)>/g,(e,t)=>{let n=t;return/(^|\s)target\s*=/i.test(n)?n=n.replace(/(^|\s)target\s*=\s*(['"])[^'"]*\2/gi,`$1target="_blank"`):n+=` target="_blank"`,/(^|\s)rel\s*=/i.test(n)?n=n.replace(/(^|\s)rel\s*=\s*(['"])[^'"]*\2/gi,`$1rel="noopener noreferrer"`):n+=` rel="noopener noreferrer"`,`<a ${n}>`})}var Hr=/<p><strong>Error:<\/strong>\s*([\s\S]*?)<\/p>/g,Ur=/<pre><code class="language-shtml">[\s\S]*?<\/code><\/pre>/g,Wr=`<div class="msg__dip-pending" role="status" aria-live="polite" aria-label="Pouring a dip"><span class="msg__dip-pending-label">Pouring a dip…</span><span class="msg__dip-pending-status" aria-hidden="true"></span></div>`;function Gr(e){return Vr(Br(Rr.parse(e)))}function Kr(e){return e.replace(Hr,(e,t)=>`<div class="msg__error" role="alert"><div class="msg__error-label">Error</div><div class="msg__error-body">${t}</div></div>`)}function qr(e){return e.replace(Ur,Wr)}function Jr(e){return Gr(e)}function Yr(e,t=!1){let n=Kr(Gr(d(e)));return t&&(n=qr(n)),n}p();var Xr=new Set,Zr=/^\[([^:\]]+):\s*([^\]]+)\]\s*\n?/,Qr=/^\[([^\]]+)\]\s*/;function $r(e){let t=Zr.exec(e)??Qr.exec(e);return t?e.slice(t[0].length):e}function ei(e){if(typeof e!=`string`||e.length===0)return null;let t=f(e);if(t)return t;let n=Zr.exec(e);if(n){let e=n[1].trim().toLowerCase().replace(/\s+event$/,``).replace(/\s+/g,`-`);if(ie(e))return e}return null}var ti=/^\[@([^\]\s]+) (?:completed|idle|sudo-request)\]/;function ni(e){return e.replace(/-scoop$/,``)}function X(e,t={}){let n=document.createElement(e);for(let[e,r]of Object.entries(t))n.setAttribute(e,r);return n}function ri(e){let t=e.split(`
|
|
112
|
-
`,1)[0]??``;return t.length>80?`${t.slice(0,79)}…`:t}function Z(e,t){if(typeof e!=`object`||!e)return``;let n=e[t];return typeof n==`string`?n:``}function ii(e){return e.split(`/`).filter(Boolean).pop()??e}function ai(e){return typeof e==`string`?e:Z(e,`command`)}function oi(e){for(let t of e.trim().split(/\s+/))if(!(t===`sudo`||/^[A-Za-z_][A-Za-z0-9_]*=/.test(t)))return t.split(`/`).pop()??t;return``}var si=new Set([`cd`,`echo`,`export`,`pwd`,`true`,`:`,`set`]);function ci(e){let t=e.split(/&&|\|\||[;|\n]/),n=null;for(let e of t){let t=oi(e);if(!t)continue;let r=si.has(t)?1:Object.hasOwn(li,t)?3:2;(!n||r>n.score)&&(n={program:t,score:r})}return n?.program??``}var li={git:`git-branch`,gh:`git-pull-request`,ls:`folder-open`,cat:`file-text`,head:`file-text`,tail:`file-text`,cd:`corner-down-right`,pwd:`map-pin`,mkdir:`folder-plus`,rm:`trash-2`,mv:`move`,cp:`copy`,grep:`search`,rg:`search`,find:`search`,curl:`globe`,wget:`globe`,open:`external-link`,"tab-new":`app-window`,"playwright-cli":`app-window`,playwright:`app-window`,npm:`package`,npx:`package`,node:`hexagon`,python3:`code`,python:`code`,echo:`quote`,say:`volume-2`,afplay:`music`,screencapture:`camera`,ffmpeg:`film`,convert:`image`,pdftk:`file-text`,sqlite3:`database`,serve:`server`,tsc:`braces`,test:`flask-conical`,biome:`paintbrush`,esbuild:`zap`,webhook:`webhook`,crontask:`clock`,fswatch:`eye`,workflow:`workflow`,mount:`hard-drive`,usb:`usb`,serial:`cable`,hid:`keyboard`,esptool:`cpu`,agent:`bot`,mcp:`plug`,host:`radio`,ps:`activity`,kill:`octagon-x`,secret:`key-round`,"oauth-token":`key-round`,sed:`scissors`,awk:`filter`,diff:`git-compare`,pbcopy:`clipboard-copy`,pbpaste:`clipboard-paste`},ui={read_file:`file-text`,write_file:`file-plus`,edit_file:`file-pen`,send_message:`message-circle`,list_scoops:`ice-cream-cone`,scoop_scoop:`ice-cream-cone`,feed_scoop:`utensils`,drop_scoop:`trash-2`,scoop_mute:`bell-off`,scoop_unmute:`bell-ring`,scoop_wait:`hourglass`,update_global_memory:`brain`,lick_confirm:`shield-check`,lick_dismiss:`shield-x`,sudo_request:`shield-question`,list_sudo_requests:`list-checks`};function di(e){if(e.name===`bash`){let t=ci(ai(e.input)),n=Object.hasOwn(li,t)?li[t]:`terminal`;return l(n)?n:`terminal`}let t=Object.hasOwn(ui,e.name)?ui[e.name]:`wrench`;return l(t)?t:`wrench`}function fi(e){let t=Z(e.input,`path`)||Z(e.input,`file_path`);switch(e.name){case`bash`:return`Use Sliccy's computer`;case`read_file`:return t?`Read ${ii(t)}`:`Read a file`;case`write_file`:return t?`Write ${ii(t)}`:`Write a file`;case`edit_file`:return t?`Edit ${ii(t)}`:`Edit a file`;case`send_message`:return`Send a message to Sliccy`;case`list_scoops`:return`Check on the scoops`;case`scoop_scoop`:{let t=Z(e.input,`name`);return t?`Scoop up "${t}"`:`Scoop a new scoop`}case`feed_scoop`:{let t=Z(e.input,`name`)||Z(e.input,`scoop`);return t?`Feed the ${t} scoop`:`Feed a scoop`}case`drop_scoop`:{let t=Z(e.input,`name`)||Z(e.input,`scoop`);return t?`Drop the ${t} scoop`:`Drop a scoop`}case`scoop_mute`:{let t=Z(e.input,`name`)||Z(e.input,`scoop`);return t?`Mute the ${t} scoop`:`Mute a scoop`}case`scoop_unmute`:{let t=Z(e.input,`name`)||Z(e.input,`scoop`);return t?`Unmute the ${t} scoop`:`Unmute a scoop`}case`scoop_wait`:return`Wait for the scoops`;case`update_global_memory`:return`Update the shared memory`;case`lick_confirm`:return`Grant the scoop access`;case`lick_dismiss`:return`Hold the scoop back`;case`sudo_request`:{let t=Z(e.input,`kind`);return t?`Ask for ${t} access`:`Ask for more access`}case`list_sudo_requests`:return`Check access requests`;default:{let t=e.name.replace(/[_-]+/g,` `).trim();return t.charAt(0).toUpperCase()+t.slice(1)}}}var pi=4e3,mi=4;function Q(e){return e.length>pi?`${e.slice(0,pi)}…`:e}var hi=`slicc-wcmsg-style`,gi=[`slicc-action-row .slicc-act__body:has(> .wcmsg-bash){background:#141414;`,`border-color:#2a2a2a;color:#f2f2f2;}`,`.wcmsg-bash{white-space:pre-wrap;}`,`.wcmsg-bash .wcmsg-cmd{color:#9ad17e;}`,`.wcmsg-bash .wcmsg-out{color:#f2f2f2;}`,`.wcmsg-tool-image{display:block;max-width:100%;max-height:480px;width:auto;height:auto;`,`object-fit:contain;margin:8px 0;border-radius:6px;}`,`.wcmsg-image-overflow{margin-top:6px;opacity:.7;}`,`.wcmsg-path{color:var(--txt-3);margin-bottom:4px;}`,`slicc-action-row[data-progress] .slicc-act__ic,slicc-tool-cluster[data-progress] .slicc-cluster__ic{`,`background:linear-gradient(to top,`,`var(--slicc-progress-ink,var(--accent)) calc(var(--slicc-progress,0)*100%),`,`color-mix(in srgb,var(--slicc-progress-ink,var(--accent)) 30%,transparent) 0);}`,`slicc-action-row[data-progress="indeterminate"] .slicc-act__ic,`,`slicc-tool-cluster[data-progress="indeterminate"] .slicc-cluster__ic{`,`animation:wcmsg-progress-breathe 1.6s ease-in-out infinite;}`,`@keyframes wcmsg-progress-breathe{0%,100%{opacity:.45}50%{opacity:1}}`,`.wcmsg-dots{margin-left:auto;display:inline-flex;gap:4px;align-items:center;`,`color:var(--txt-3);font-variant-numeric:tabular-nums;}`,`.wcmsg-dots__dot{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.25;}`,`.wcmsg-dots__dot.is-done{opacity:1;}`,`.wcmsg-dots__dot.is-active{opacity:1;animation:wcmsg-progress-blink 1s ease-in-out infinite;}`,`.wcmsg-dots--indeterminate .wcmsg-dots__dot{animation:wcmsg-progress-blink 1.2s ease-in-out infinite;}`,`.wcmsg-dots--indeterminate .wcmsg-dots__dot:nth-child(2){animation-delay:.2s}`,`.wcmsg-dots--indeterminate .wcmsg-dots__dot:nth-child(3){animation-delay:.4s}`,`@keyframes wcmsg-progress-blink{0%,100%{opacity:1}50%{opacity:.25}}`,`slicc-action-row[data-progress] .slicc-act__head .slicc-act__badge{display:none;}`,`slicc-tool-cluster[data-progress] .wcmsg-dots{margin-left:auto;}`,`slicc-tool-cluster[data-progress] .slicc-cluster__count{margin-left:8px;}`,`slicc-action-row[data-progress] .slicc-act__body,slicc-tool-cluster[data-progress] .slicc-cluster__body{`,`position:relative;overflow:hidden;}`,`slicc-action-row[data-progress] .slicc-act__body::before,`,`slicc-tool-cluster[data-progress] .slicc-cluster__body::before{content:"";position:absolute;`,`top:0;left:0;height:3px;width:calc(var(--slicc-progress,0)*100%);`,`background:var(--slicc-progress-ink,var(--accent));transition:width .25s linear;z-index:1;}`,`slicc-action-row[data-progress] .slicc-act__body:has(> .wcmsg-bash)::before{background:#9ad17e;}`,`slicc-action-row[data-progress="indeterminate"] .slicc-act__body::before,`,`slicc-tool-cluster[data-progress="indeterminate"] .slicc-cluster__body::before{width:30%;`,`animation:wcmsg-progress-slide 1.2s ease-in-out infinite;}`,`@keyframes wcmsg-progress-slide{0%{transform:translateX(-100%)}100%{transform:translateX(340%)}}`,`@media (prefers-reduced-motion:reduce){.wcmsg-dots__dot,`,`slicc-action-row[data-progress] .slicc-act__ic,slicc-tool-cluster[data-progress] .slicc-cluster__ic,`,`slicc-action-row[data-progress] .slicc-act__body::before,`,`slicc-tool-cluster[data-progress] .slicc-cluster__body::before{animation:none!important;}}`].join(``);function _i(){if(document.getElementById(hi))return;let e=document.createElement(`style`);e.id=hi,e.textContent=gi,document.head.appendChild(e)}function vi(e){let t=Math.max(0,Math.round(e/1e3));if(t<60)return`${t}s`;let n=Math.floor(t/60);return n<60?`${n}m${String(t%60).padStart(2,`0`)}s`:`${Math.floor(n/60)}h${String(n%60).padStart(2,`0`)}m`}function yi(e){if(!Number.isFinite(e)||e<0)return``;if(e<1e3)return`${Math.round(e)} B`;let t=[`kB`,`MB`,`GB`,`TB`],n=e/1e3,r=0;for(;n>=1e3&&r<t.length-1;)n/=1e3,r+=1;return`${n<10?n.toFixed(1):Math.round(n)} ${t[r]}`}var bi=`data-progress`,xi=`wcmsg-dots`,Si=3;function Ci(e,t){let n=[];e.total!==void 0&&e.unit===`iterations`&&n.push(`${e.done??0}/${e.total}`),n.push(e.label);let r=[];return t===void 0?e.unit===`bytes`&&e.done&&r.push(yi(e.done)):r.push(`${Math.round(t*100)}%`),e.etaMs!==void 0&&e.etaMs>0&&r.push(`~${vi(e.etaMs)} left`),r.length?`${n.join(` · `)} — ${r.join(`, `)}`:n.join(` · `)}var wi={head:`slicc-act__head`,chev:`slicc-act__chev`,dotsBefore:`.slicc-act__chev`},Ti={head:`slicc-cluster__head`,chev:`slicc-cluster__chev`,dotsBefore:`.slicc-cluster__count`};function Ei(e,t,n){_i();let r=e.querySelector(`:scope > .${n.head}`),i=r?.querySelector(`:scope > .${xi}`)??null;if(!t||t.phase===`end`){e.removeAttribute(bi),e.style.removeProperty(`--slicc-progress`),e.removeAttribute(`title`),i?.remove();return}let a=typeof t.fraction==`number`&&Number.isFinite(t.fraction),o=a?Math.min(1,Math.max(0,t.fraction)):void 0;if(e.setAttribute(bi,a?`determinate`:`indeterminate`),e.style.setProperty(`--slicc-progress`,o===void 0?`0`:String(o)),e.setAttribute(`title`,Ci(t,o)),!r)return;let s=i;if(!s){s=X(`span`,{class:xi,role:`progressbar`,"aria-label":t.label});for(let e=0;e<Si;e++)s.append(X(`span`,{class:`wcmsg-dots__dot`}));let e=r.querySelector(`:scope > ${n.dotsBefore}`);e?r.insertBefore(s,e):r.append(s)}s.classList.toggle(`${xi}--indeterminate`,o===void 0),o===void 0?s.removeAttribute(`aria-valuenow`):(s.setAttribute(`aria-valuemin`,`0`),s.setAttribute(`aria-valuemax`,`100`),s.setAttribute(`aria-valuenow`,String(Math.round(o*100))));let c=o===void 0?-1:Math.min(2,Math.floor(o*Si));s.querySelectorAll(`.wcmsg-dots__dot`).forEach((e,t)=>{e.classList.toggle(`is-done`,o!==void 0&&(t<c||o>=1)),e.classList.toggle(`is-active`,o!==void 0&&o<1&&t===c)})}function Di(e,t){Ei(e,t,wi)}function Oi(e,t){Ei(e,t,Ti)}function ki(e){if(e.length===0)return null;let t=e.map(e=>e.fraction),n=t.every(e=>typeof e==`number`&&Number.isFinite(e))?t.reduce((e,t)=>e+t,0)/t.length:void 0,r=e.reduce((e,t)=>t.etaMs===void 0?e:e===void 0?t.etaMs:Math.max(e,t.etaMs),void 0);return{id:`cluster`,label:`${e.length} running`,fraction:n,etaMs:r,unit:`iterations`,phase:`update`}}function Ai(e){let t=(Be(e).textContent??``).split(/\r?\n/).reverse().find(e=>e.trim().length>0)?.trim();return t?ri(t):null}function ji(e,t){let n=r(t),i=n.reduce((e,t)=>e+Number(t.type===`image`),0),a=0,o=null;for(let t of n){if(t.type===`text`){e.append(Be(Q(t.text))),o=Ai(t.text)??o;continue}if(a>=mi)continue;let n=document.createElement(`img`);n.className=`wcmsg-tool-image`,n.src=t.dataUrl,n.alt=o??`Tool result image`,n.loading=`lazy`,n.addEventListener(`error`,()=>n.replaceWith(Be(Q(t.marker))),{once:!0}),e.append(n),a++}if(i>a){let t=X(`div`,{class:`wcmsg-image-overflow`});t.textContent=`+${i-a} more images`,e.append(t)}}function Mi(e){let t=ai(e.input),n=oi(t),r=`slicc-bash-renderer-${n}`;if(n&&customElements.get(r)){let n=document.createElement(r);return n.setAttribute(`slot`,`body`),n.setAttribute(`command`,t),n.command=t,n.output=e.result??``,n}let i=X(`div`,{slot:`body`,class:`wcmsg-bash`}),a=X(`div`,{class:`wcmsg-cmd`});if(a.textContent=`$ ${Q(t)}`,i.append(a),e.result){let t=X(`div`,{class:`wcmsg-out`});ji(t,e.result),i.append(t)}return i}function Ni(e){if(_i(),e.name===`bash`)return Mi(e);let t=X(`div`,{slot:`body`}),n=Z(e.input,`path`)||Z(e.input,`file_path`);if(n){let e=X(`div`,{class:`wcmsg-path`});e.textContent=n,t.append(e)}if(e.name===`write_file`){let n=X(`span`,{class:`add`});return n.textContent=Q(Z(e.input,`content`)),t.append(n),t}if(e.name===`edit_file`){let n=X(`div`,{class:`del`});n.textContent=Q(Z(e.input,`old_string`));let r=X(`div`,{class:`add`});return r.textContent=Q(Z(e.input,`new_string`)),t.append(n,r),t}if(e.name===`read_file`){let n=X(`div`);return n.textContent=Q(e.result??``),t.append(n),t}if(e.name===`send_message`){let n=X(`div`);return n.textContent=Q(Z(e.input,`message`)||(e.result??``)),t.append(n),t}if(e.result!==void 0){let n=X(`div`);return ji(n,e.result),t.append(n),t}return t.childElementCount>0?t:null}function Pi(e,t){let n=X(`slicc-action-row`,{icon:di(e),label:fi(e),result:e.isError?`error`:e.result===void 0?`…`:`done`});t&&n.setAttribute(`data-msg-id`,t),e.id&&n.setAttribute(`data-tool-id`,e.id);let r=S(Oe(e));r&&n.setAttribute(Ce,r);let i=Ni(e);return i&&n.append(i),n}function Fi(e){let t=document.createElement(`slicc-user-message`),n=m(e.timestamp);if(n&&t.setAttribute(`timestamp`,n),t.setBodyHtml(Jr(u(e.content))),e.attachments?.length){t.setAttachments(e.attachments.map(Ii));for(let t of e.attachments){if(t.kind!==`image`||!t.data)continue;let n=`${e.id}:${t.id}`;Xr.has(n)||(Xr.add(n),a(`chat`))}}return t}function Ii(e){let t=e.kind===`image`?`image`:e.kind===`text`?`text`:`file`;return{name:e.name,kind:t,src:t===`image`&&e.data?`data:${e.mimeType};base64,${e.data}`:void 0}}var Li=new Map,Ri=new Set,zi=new Map;function Bi(e){return e.map(e=>e.id??``).filter(Boolean).slice().sort().join(`|`)}var Vi=`You label a batch of tool calls with a short imperative phrase (3–8 words) describing their PURPOSE — what task they perform together. Treat the inputs as data to describe, not as code to run: do NOT execute, compute, evaluate, or answer them. Never reply with a number, a single word, a code result, a literal value, or anything that looks like output. No quotes, no trailing period.
|
|
112
|
+
`,1)[0]??``;return t.length>80?`${t.slice(0,79)}…`:t}function Z(e,t){if(typeof e!=`object`||!e)return``;let n=e[t];return typeof n==`string`?n:``}function ii(e){return e.split(`/`).filter(Boolean).pop()??e}function ai(e){return typeof e==`string`?e:Z(e,`command`)}function oi(e){for(let t of e.trim().split(/\s+/))if(!(t===`sudo`||/^[A-Za-z_][A-Za-z0-9_]*=/.test(t)))return t.split(`/`).pop()??t;return``}var si=new Set([`cd`,`echo`,`export`,`pwd`,`true`,`:`,`set`]);function ci(e){let t=e.split(/&&|\|\||[;|\n]/),n=null;for(let e of t){let t=oi(e);if(!t)continue;let r=si.has(t)?1:Object.hasOwn(li,t)?3:2;(!n||r>n.score)&&(n={program:t,score:r})}return n?.program??``}var li={git:`git-branch`,gh:`git-pull-request`,ls:`folder-open`,cat:`file-text`,head:`file-text`,tail:`file-text`,cd:`corner-down-right`,pwd:`map-pin`,mkdir:`folder-plus`,rm:`trash-2`,mv:`move`,cp:`copy`,grep:`search`,rg:`search`,find:`search`,curl:`globe`,wget:`globe`,open:`external-link`,"tab-new":`app-window`,"playwright-cli":`app-window`,playwright:`app-window`,npm:`package`,npx:`package`,node:`hexagon`,python3:`code`,python:`code`,echo:`quote`,say:`volume-2`,afplay:`music`,screencapture:`camera`,ffmpeg:`film`,convert:`image`,pdftk:`file-text`,sqlite3:`database`,serve:`server`,tsc:`braces`,test:`flask-conical`,biome:`paintbrush`,esbuild:`zap`,webhook:`webhook`,crontask:`clock`,fswatch:`eye`,workflow:`workflow`,mount:`hard-drive`,usb:`usb`,serial:`cable`,hid:`keyboard`,esptool:`cpu`,agent:`bot`,mcp:`plug`,host:`radio`,ps:`activity`,kill:`octagon-x`,secret:`key-round`,"oauth-token":`key-round`,sed:`scissors`,awk:`filter`,diff:`git-compare`,pbcopy:`clipboard-copy`,pbpaste:`clipboard-paste`},ui={read_file:`file-text`,write_file:`file-plus`,edit_file:`file-pen`,send_message:`message-circle`,list_scoops:`ice-cream-cone`,scoop_scoop:`ice-cream-cone`,feed_scoop:`utensils`,drop_scoop:`trash-2`,scoop_mute:`bell-off`,scoop_unmute:`bell-ring`,scoop_wait:`hourglass`,update_global_memory:`brain`,lick_confirm:`shield-check`,lick_dismiss:`shield-x`,sudo_request:`shield-question`,list_sudo_requests:`list-checks`};function di(e){if(e.name===`bash`){let t=ci(ai(e.input)),n=Object.hasOwn(li,t)?li[t]:`terminal`;return l(n)?n:`terminal`}let t=Object.hasOwn(ui,e.name)?ui[e.name]:`wrench`;return l(t)?t:`wrench`}function fi(e){let t=Z(e.input,`path`)||Z(e.input,`file_path`);switch(e.name){case`bash`:return`Use Sliccy's computer`;case`read_file`:return t?`Read ${ii(t)}`:`Read a file`;case`write_file`:return t?`Write ${ii(t)}`:`Write a file`;case`edit_file`:return t?`Edit ${ii(t)}`:`Edit a file`;case`send_message`:return`Send a message to Sliccy`;case`list_scoops`:return`Check on the scoops`;case`scoop_scoop`:{let t=Z(e.input,`name`);return t?`Scoop up "${t}"`:`Scoop a new scoop`}case`feed_scoop`:{let t=Z(e.input,`name`)||Z(e.input,`scoop`);return t?`Feed the ${t} scoop`:`Feed a scoop`}case`drop_scoop`:{let t=Z(e.input,`name`)||Z(e.input,`scoop`);return t?`Drop the ${t} scoop`:`Drop a scoop`}case`scoop_mute`:{let t=Z(e.input,`name`)||Z(e.input,`scoop`);return t?`Mute the ${t} scoop`:`Mute a scoop`}case`scoop_unmute`:{let t=Z(e.input,`name`)||Z(e.input,`scoop`);return t?`Unmute the ${t} scoop`:`Unmute a scoop`}case`scoop_wait`:return`Wait for the scoops`;case`update_global_memory`:return`Update the shared memory`;case`lick_confirm`:return`Grant the scoop access`;case`lick_dismiss`:return`Hold the scoop back`;case`sudo_request`:{let t=Z(e.input,`kind`);return t?`Ask for ${t} access`:`Ask for more access`}case`list_sudo_requests`:return`Check access requests`;default:{let t=e.name.replace(/[_-]+/g,` `).trim();return t.charAt(0).toUpperCase()+t.slice(1)}}}var pi=4e3,mi=4;function Q(e){return e.length>pi?`${e.slice(0,pi)}…`:e}var hi=`slicc-wcmsg-style`,gi=[`slicc-action-row .slicc-act__body:has(> .wcmsg-bash){background:#141414;`,`border-color:#2a2a2a;color:#f2f2f2;}`,`.wcmsg-bash{white-space:pre-wrap;}`,`.wcmsg-bash .wcmsg-cmd{color:#9ad17e;}`,`.wcmsg-bash .wcmsg-out{color:#f2f2f2;}`,`.wcmsg-tool-image{display:block;max-width:100%;max-height:480px;width:auto;height:auto;`,`object-fit:contain;margin:8px 0;border-radius:6px;}`,`.wcmsg-image-overflow{margin-top:6px;opacity:.7;}`,`.wcmsg-path{color:var(--txt-3);margin-bottom:4px;}`,`slicc-action-row[data-progress] .slicc-act__ic,slicc-tool-cluster[data-progress] .slicc-cluster__ic{`,`background:linear-gradient(to top,`,`var(--slicc-progress-ink,var(--accent)) calc(var(--slicc-progress,0)*100%),`,`color-mix(in srgb,var(--slicc-progress-ink,var(--accent)) 30%,transparent) 0);}`,`slicc-action-row[data-progress="indeterminate"] .slicc-act__ic,`,`slicc-tool-cluster[data-progress="indeterminate"] .slicc-cluster__ic{`,`animation:wcmsg-progress-breathe 1.6s ease-in-out infinite;}`,`@keyframes wcmsg-progress-breathe{0%,100%{opacity:.45}50%{opacity:1}}`,`.wcmsg-dots{margin-left:auto;display:inline-flex;gap:4px;align-items:center;`,`color:var(--txt-3);font-variant-numeric:tabular-nums;}`,`.wcmsg-dots__dot{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.25;}`,`.wcmsg-dots__dot.is-done{opacity:1;}`,`.wcmsg-dots__dot.is-active{opacity:1;animation:wcmsg-progress-blink 1s ease-in-out infinite;}`,`.wcmsg-dots--indeterminate .wcmsg-dots__dot{animation:wcmsg-progress-blink 1.2s ease-in-out infinite;}`,`.wcmsg-dots--indeterminate .wcmsg-dots__dot:nth-child(2){animation-delay:.2s}`,`.wcmsg-dots--indeterminate .wcmsg-dots__dot:nth-child(3){animation-delay:.4s}`,`@keyframes wcmsg-progress-blink{0%,100%{opacity:1}50%{opacity:.25}}`,`slicc-action-row[data-progress] .slicc-act__head .slicc-act__badge{display:none;}`,`slicc-tool-cluster[data-progress] .wcmsg-dots{margin-left:auto;}`,`slicc-tool-cluster[data-progress] .slicc-cluster__count{margin-left:8px;}`,`slicc-action-row[data-progress] .slicc-act__body{position:relative;overflow:hidden;}`,`slicc-action-row[data-progress] .slicc-act__body::before{content:"";position:absolute;`,`top:0;left:0;height:3px;width:calc(var(--slicc-progress,0)*100%);`,`background:var(--slicc-progress-ink,var(--accent));transition:width .25s linear;z-index:1;}`,`slicc-action-row[data-progress] .slicc-act__body:has(> .wcmsg-bash)::before{background:#9ad17e;}`,`slicc-action-row[data-progress="indeterminate"] .slicc-act__body::before{width:30%;`,`animation:wcmsg-progress-slide 1.2s ease-in-out infinite;}`,`@keyframes wcmsg-progress-slide{0%{transform:translateX(-100%)}100%{transform:translateX(340%)}}`,`@media (prefers-reduced-motion:reduce){.wcmsg-dots__dot,`,`slicc-action-row[data-progress] .slicc-act__ic,slicc-tool-cluster[data-progress] .slicc-cluster__ic,`,`slicc-action-row[data-progress] .slicc-act__body::before{animation:none!important;}}`].join(``);function _i(){if(document.getElementById(hi))return;let e=document.createElement(`style`);e.id=hi,e.textContent=gi,document.head.appendChild(e)}function vi(e){let t=Math.max(0,Math.round(e/1e3));if(t<60)return`${t}s`;let n=Math.floor(t/60);return n<60?`${n}m${String(t%60).padStart(2,`0`)}s`:`${Math.floor(n/60)}h${String(n%60).padStart(2,`0`)}m`}function yi(e){if(!Number.isFinite(e)||e<0)return``;if(e<1e3)return`${Math.round(e)} B`;let t=[`kB`,`MB`,`GB`,`TB`],n=e/1e3,r=0;for(;n>=1e3&&r<t.length-1;)n/=1e3,r+=1;return`${n<10?n.toFixed(1):Math.round(n)} ${t[r]}`}var bi=`data-progress`,xi=`wcmsg-dots`,Si=3;function Ci(e,t){let n=[];e.total!==void 0&&e.unit===`iterations`&&n.push(`${e.done??0}/${e.total}`),n.push(e.label);let r=[];return t===void 0?e.unit===`bytes`&&e.done&&r.push(yi(e.done)):r.push(`${Math.round(t*100)}%`),e.etaMs!==void 0&&e.etaMs>0&&r.push(`~${vi(e.etaMs)} left`),r.length?`${n.join(` · `)} — ${r.join(`, `)}`:n.join(` · `)}var wi={head:`slicc-act__head`,chev:`slicc-act__chev`,dotsBefore:`.slicc-act__chev`},Ti={head:`slicc-cluster__head`,chev:`slicc-cluster__chev`,dotsBefore:`.slicc-cluster__count`};function Ei(e,t,n){_i();let r=e.querySelector(`:scope > .${n.head}`),i=r?.querySelector(`:scope > .${xi}`)??null;if(!t||t.phase===`end`){e.removeAttribute(bi),e.style.removeProperty(`--slicc-progress`),e.removeAttribute(`title`),i?.remove();return}let a=typeof t.fraction==`number`&&Number.isFinite(t.fraction),o=a?Math.min(1,Math.max(0,t.fraction)):void 0;if(e.setAttribute(bi,a?`determinate`:`indeterminate`),e.style.setProperty(`--slicc-progress`,o===void 0?`0`:String(o)),e.setAttribute(`title`,Ci(t,o)),!r)return;let s=i;if(!s){s=X(`span`,{class:xi,role:`progressbar`,"aria-label":t.label});for(let e=0;e<Si;e++)s.append(X(`span`,{class:`wcmsg-dots__dot`}));let e=r.querySelector(`:scope > ${n.dotsBefore}`);e?r.insertBefore(s,e):r.append(s)}s.classList.toggle(`${xi}--indeterminate`,o===void 0),o===void 0?s.removeAttribute(`aria-valuenow`):(s.setAttribute(`aria-valuemin`,`0`),s.setAttribute(`aria-valuemax`,`100`),s.setAttribute(`aria-valuenow`,String(Math.round(o*100))));let c=o===void 0?-1:Math.min(2,Math.floor(o*Si));s.querySelectorAll(`.wcmsg-dots__dot`).forEach((e,t)=>{e.classList.toggle(`is-done`,o!==void 0&&(t<c||o>=1)),e.classList.toggle(`is-active`,o!==void 0&&o<1&&t===c)})}function Di(e,t){Ei(e,t,wi)}function Oi(e,t){Ei(e,t,Ti)}function ki(e){let t=e.length;if(t===0)return null;let n=e.filter(e=>e.done).length;if(n===t)return null;let r=e.filter(e=>!e.done&&typeof e.fraction==`number`&&Number.isFinite(e.fraction)).reduce((e,t)=>e+Math.min(1,Math.max(0,t.fraction)),0);return{id:`cluster`,label:`${n} of ${t} done`,fraction:Math.min(1,(n+r)/t),done:n,total:t,unit:`iterations`,phase:`update`}}function Ai(e){let t=(Be(e).textContent??``).split(/\r?\n/).reverse().find(e=>e.trim().length>0)?.trim();return t?ri(t):null}function ji(e,t){let n=r(t),i=n.reduce((e,t)=>e+Number(t.type===`image`),0),a=0,o=null;for(let t of n){if(t.type===`text`){e.append(Be(Q(t.text))),o=Ai(t.text)??o;continue}if(a>=mi)continue;let n=document.createElement(`img`);n.className=`wcmsg-tool-image`,n.src=t.dataUrl,n.alt=o??`Tool result image`,n.loading=`lazy`,n.addEventListener(`error`,()=>n.replaceWith(Be(Q(t.marker))),{once:!0}),e.append(n),a++}if(i>a){let t=X(`div`,{class:`wcmsg-image-overflow`});t.textContent=`+${i-a} more images`,e.append(t)}}function Mi(e){let t=ai(e.input),n=oi(t),r=`slicc-bash-renderer-${n}`;if(n&&customElements.get(r)){let n=document.createElement(r);return n.setAttribute(`slot`,`body`),n.setAttribute(`command`,t),n.command=t,n.output=e.result??``,n}let i=X(`div`,{slot:`body`,class:`wcmsg-bash`}),a=X(`div`,{class:`wcmsg-cmd`});if(a.textContent=`$ ${Q(t)}`,i.append(a),e.result){let t=X(`div`,{class:`wcmsg-out`});ji(t,e.result),i.append(t)}return i}function Ni(e){if(_i(),e.name===`bash`)return Mi(e);let t=X(`div`,{slot:`body`}),n=Z(e.input,`path`)||Z(e.input,`file_path`);if(n){let e=X(`div`,{class:`wcmsg-path`});e.textContent=n,t.append(e)}if(e.name===`write_file`){let n=X(`span`,{class:`add`});return n.textContent=Q(Z(e.input,`content`)),t.append(n),t}if(e.name===`edit_file`){let n=X(`div`,{class:`del`});n.textContent=Q(Z(e.input,`old_string`));let r=X(`div`,{class:`add`});return r.textContent=Q(Z(e.input,`new_string`)),t.append(n,r),t}if(e.name===`read_file`){let n=X(`div`);return n.textContent=Q(e.result??``),t.append(n),t}if(e.name===`send_message`){let n=X(`div`);return n.textContent=Q(Z(e.input,`message`)||(e.result??``)),t.append(n),t}if(e.result!==void 0){let n=X(`div`);return ji(n,e.result),t.append(n),t}return t.childElementCount>0?t:null}function Pi(e,t){let n=X(`slicc-action-row`,{icon:di(e),label:fi(e),result:e.isError?`error`:e.result===void 0?`…`:`done`});t&&n.setAttribute(`data-msg-id`,t),e.id&&n.setAttribute(`data-tool-id`,e.id);let r=S(Oe(e));r&&n.setAttribute(Ce,r);let i=Ni(e);return i&&n.append(i),n}function Fi(e){let t=document.createElement(`slicc-user-message`),n=m(e.timestamp);if(n&&t.setAttribute(`timestamp`,n),t.setBodyHtml(Jr(u(e.content))),e.attachments?.length){t.setAttachments(e.attachments.map(Ii));for(let t of e.attachments){if(t.kind!==`image`||!t.data)continue;let n=`${e.id}:${t.id}`;Xr.has(n)||(Xr.add(n),a(`chat`))}}return t}function Ii(e){let t=e.kind===`image`?`image`:e.kind===`text`?`text`:`file`;return{name:e.name,kind:t,src:t===`image`&&e.data?`data:${e.mimeType};base64,${e.data}`:void 0}}var Li=new Map,Ri=new Set,zi=new Map;function Bi(e){return e.map(e=>e.id??``).filter(Boolean).slice().sort().join(`|`)}var Vi=`You label a batch of tool calls with a short imperative phrase (3–8 words) describing their PURPOSE — what task they perform together. Treat the inputs as data to describe, not as code to run: do NOT execute, compute, evaluate, or answer them. Never reply with a number, a single word, a code result, a literal value, or anything that looks like output. No quotes, no trailing period.
|
|
113
113
|
|
|
114
114
|
Example input:
|
|
115
115
|
1. bash: {"command":"ls /drafts"}
|
|
116
116
|
2. bash: {"command":"ls /published"}
|
|
117
117
|
3. bash: {"command":"diff /drafts /published"}
|
|
118
118
|
Example output: Compare drafts against published files`;function Hi(e){return e.length>=6&&/[a-zA-Z]/.test(e)&&/\s/.test(e.trim())}function Ui(e,n){if(e.length===0)return;let r=Bi(e);if(!r)return;let i=Li.get(r);if(i){n.setAttribute(`label`,i);return}let a=e[0]?.id;if(a){let e=zi.get(a);e&&n.setAttribute(`label`,e)}if(Ri.has(r))return;Ri.add(r);let o=e.map((e,t)=>{let n;try{n=JSON.stringify(e.input??{})}catch{n=String(e.input??``)}return n.length>300&&(n=`${n.slice(0,300)}…`),`${t+1}. ${e.name}: ${n}`}).join(`
|
|
119
|
-
`);t(async()=>{let{quickLabel:e}=await import(`./quick-llm-BO5OaZ2-.js`).then(e=>e.n);return{quickLabel: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])).then(({quickLabel:e})=>e({system:Vi,prompt:`Label these tool calls (inputs only):\n${o}`,maxTokens:40})).then(e=>{let t=e?.replace(/^["']|["']$|\.$/g,``).trim()??``;Hi(t)&&(Li.set(r,t),a&&zi.set(a,t),n.isConnected&&n.setAttribute(`label`,t))}).catch(()=>void 0).finally(()=>Ri.delete(r))}function Wi(e,t={}){let n=X(`slicc-tool-cluster`,{count:String(e.length)});return t.open&&n.setAttribute(`open`,``),n.append(...e),t.toolCalls&&t.toolCalls.length>0&&Ui(t.toolCalls,n),n}function Gi(e){let t=document.createElement(`slicc-agent-message`);t.setAttribute(`data-msg-id`,e.id);let n=(e.content??``).trim().length>0,r=m(e.timestamp);return r&&n&&t.setAttribute(`timestamp`,r),e.isStreaming&&t.setAttribute(`streaming`,``),t.setBodyHtml(Yr(e.content,e.isStreaming===!0)),n||t.setAttribute(`data-empty`,``),[t,...(e.toolCalls??[]).map(t=>Pi(t,e.id))]}function Ki(e,t){let n=e.querySelectorAll(`:scope > slicc-tool-cluster`);for(let e of n){let n=Array.from(e.querySelectorAll(`slicc-action-row`));qi(e,n,t);let r=e.parentNode;if(!r){e.remove();continue}for(let t of n)Ji(t,r,e);e.remove()}}function qi(e,t,n){if(!e.hasAttribute(`open`))return;let r=t[0]?.dataset.msgId;if(!r)return;let i=t.length>0&&t.every(e=>e.dataset.msgId===r),a=e.parentElement?.querySelector(`slicc-agent-message[data-msg-id="${r}"]`);i&&a?.hasAttribute(`streaming`)===!0||n.add(r)}function Ji(e,t,n){let r=e.dataset.msgId,i=r&&t instanceof Element?t.querySelector(`:scope > slicc-agent-message[data-msg-id="${r}"]`):null;if(!i||i.parentNode!==t){t.insertBefore(e,n);return}let a=i;for(;a.nextSibling instanceof HTMLElement&&a.nextSibling.tagName.toLowerCase()===`slicc-action-row`&&a.nextSibling.dataset.msgId===r;)a=a.nextSibling;t.insertBefore(e,a.nextSibling)}var Yi=new Set([`slicc-user-message`,`slicc-lick-card`,`slicc-error-card`,`slicc-delegation-line`,`slicc-day-separator`]);function Xi(e){return e instanceof HTMLElement?Yi.has(e.tagName.toLowerCase()):!0}function Zi(e){return e instanceof HTMLElement&&e.tagName.toLowerCase()===`slicc-action-row`}function Qi(e){return e instanceof HTMLElement&&e.tagName.toLowerCase()===`slicc-agent-message`}function $i(e){let t=[],n=[];for(let r of e)Qi(r)?!r.hasAttribute(`data-empty`)&&n.length>0&&(t.push(n),n=[]):Zi(r)&&n.push(r);return n.length>0&&t.push(n),t}function ea(e,t){let n=t[0]?.dataset.msgId;return!n||!t.every(e=>e.dataset.msgId===n)?!1:e.querySelector(`slicc-agent-message[data-msg-id="${n}"]`)?.hasAttribute(`streaming`)===!0}function ta(e,t){let n=[];for(let r of e){let e=r.dataset.msgId,i=r.dataset.toolId;if(!e||!i)return;let a=t(e,i);if(!a)return;n.push(a)}return n}function na(e,t){let n=e[0],r=n.parentNode;if(!r)return;let i=new Set(e),a=n.nextSibling;for(;a&&i.has(a);)a=a.nextSibling;let o=n.dataset.msgId,s=Wi(e,{open:!!(o&&t.openClusterAnchors.has(o))||ea(r,e),toolCalls:t.toolCallLookup?ta(e,t.toolCallLookup):void 0});r.insertBefore(s,a)}function ra(e,t){Ki(e,t.openClusterAnchors);let n=Array.from(e.children),r=0;for(;r<n.length;){if(Xi(n[r])){r++;continue}let e=r;for(;e<n.length&&!Xi(n[e]);)e++;let i=$i(n.slice(r,e));for(let e of i)e.length>=3&&na(e,t);r=e}t.openClusterAnchors.clear()}function ia(e){let t=Zr.exec(e.content),n=e.lickCount??1,r=ti.exec(e.content),i=r?ni(r[1]):null,a=X(`slicc-lick-card`,{kind:e.channel??`webhook`,"event-label":i??t?.[2]??e.channel??`event`,collapsible:``,collapsed:``});i&&a.setAttribute(`hue`,g({isCone:!1,name:i})),n>1&&a.setAttribute(`count`,String(n)),e.lickState&&e.lickState!==`pending`&&a.setAttribute(`state`,e.lickState);let o=e.lickParts??[e.content];for(let e of o){let t=document.createElement(`div`);t.innerHTML=Jr($r(e)),a.append(t)}return a}function aa(e){let t=X(`slicc-delegation-line`,{kind:`feed`,verb:`feed_scoop`,label:ri(e.content.replace(/\*\*\[[^\]]*\]\*\*\s*/,``))}),n=document.createElement(`slicc-user-message`);return n.setBodyHtml(Jr(e.content)),[t,n]}function oa(e){let t={message:e.content,"message-id":e.id};return s(e.content)?t.action=`settings`:o(e.content)?t.action=`change-model`:i(e.content)&&(t.action=`login`),X(`slicc-error-card`,t)}function sa(e){if(e.source===`lick`)return[ia(e)];if(e.source===`delegation`||e.channel===`delegation`)return aa(e);if(e.error)return[oa(e)];if(e.role===`assistant`)return Gi(e);let t=ei(e.content);return t?[ia({...e,source:`lick`,channel:t})]:[Fi(e)]}function ca(e){let t=[];for(let n of e){let e=n;if(!n.source&&n.role===`user`){let t=ei(n.content);t&&(e={...n,source:`lick`,channel:t})}let r=t[t.length-1];if(!(e.lickId||r?.lickId)&&e.source===`lick`&&r?.source===`lick`&&r.channel===e.channel){r.lickParts=[...r.lickParts??[r.content],e.content],r.lickCount=r.lickParts.length,r.content+=`\n\n${e.content}`;continue}t.push({...e})}return t}function la(e){return new Date(e).toLocaleDateString(void 0,{weekday:`short`,month:`short`,day:`numeric`})}function ua(e){return X(`slicc-day-separator`,{label:la(e)})}function da(e){let t=[],n=``;for(let r of e){let e=new Date(r.timestamp).toDateString();e!==n&&(t.push(ua(r.timestamp)),n=e),t.push(...sa(r))}let r=document.createElement(`div`);return r.append(...t),ra(r,{openClusterAnchors:new Set,toolCallLookup:(t,n)=>e.find(e=>e.id===t)?.toolCalls?.find(e=>e.id===n)}),Array.from(r.children)}var fa=e({FREEZER_TINT:()=>pa,applyShellContext:()=>Ta,mountWcShell:()=>wa,mountWcUiPreview:()=>Oa,submittedSteer:()=>Da,submittedText:()=>Ea}),pa=`#3b6cb2`,ma=`slicc-wcui-style`,ha=[`html,body{margin:0;padding:0;height:100%;overscroll-behavior:none;}`,`.wcui-frame{position:relative;transform:translateZ(0);width:100%;height:100vh;`,`overflow:hidden;background:var(--bg);font-family:var(--ui);}`,`.wcui-shader{position:absolute;inset:0;z-index:0;}`,`.wcui-frame slicc-chatpane{position:relative;background:transparent;}`,`.wcui-appcol{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;`,`box-sizing:border-box;padding-left:var(--rail-w,44px);`,`transition:padding-left .4s cubic-bezier(.4,0,.2,1);}`,`@media (max-width:560px){.wcui-appcol{padding-left:44px;}}`,`.wcui-term{flex:1;min-height:0;display:flex;flex-direction:column;padding:8px 4px 8px 10px;`,`box-sizing:border-box;background:#141414;}`,`.wcui-term .terminal-panel__terminal-host{flex:1 1 auto;min-height:0;}`,`.wcui-term .terminal-panel__preview{flex:0 0 auto;}`,`.wcui-frame slicc-file-tree{width:100%;border-right:none;}`,`.wcui-memory{flex:1;min-height:0;overflow:hidden;}`,`.wcui-monitor{flex:1;min-height:0;}`,`.wcui-placeholder{flex:1;display:flex;align-items:center;justify-content:center;`,`padding:24px;color:var(--txt-2);font-size:13px;text-align:center;}`,`.wcui-backpressure{align-self:flex-end;max-width:80%;box-sizing:border-box;`,`padding:8px 12px;border:1px solid var(--line);border-radius:14px;`,`background:var(--canvas);color:var(--txt-2);font-size:12px;line-height:1.4;}`,`.wcui-backpressure[hidden]{display:none;}`,ne].join(``);function ga(e){if(e.getElementById(ma))return;let t=e.createElement(`style`);t.id=ma,t.textContent=ha,e.head.appendChild(t)}var _a=null;function va(){_a?.(),_a=h()}function $(e,t={}){let n=document.createElement(e);for(let[e,r]of Object.entries(t))n.setAttribute(e,r);return n}function ya(e){let t=$(`slicc-nav`,{accent:`var(--waffle)`}),n=$(`slicc-agent-tabs`);n.scoops=[...e.scoops];let r=$(`slicc-floatbar`,{label:e.floatLabel,spent:`0.00`}),i=document.createElement(`slicc-avatar-menu`);return i.append($(`slicc-avatar`,{name:`SLICC`})),t.append(n,r,i),{nav:t,switcher:n,floatbar:r,avatarMenu:i}}function ba(e){let t=$(`slicc-composer`),n=$(`div`,{class:`wcui-backpressure`,role:`status`,"aria-live":`polite`,hidden:``}),r=$(`slicc-queued-stack`);r.style.position=`relative`,r.style.zIndex=`0`,r.style.marginBottom=`-32px`,r.style.minHeight=`76px`;let i=$(`slicc-input-card`,{placeholder:e.placeholder});i.style.position=`relative`,i.style.zIndex=`1`;let a=$(`slicc-composer-meta`,{model:`Preview`,thinking:`off`});return t.append(n,r,i,a),{composer:t,inputCard:i,composerMeta:a,queuedStack:r,lickBackpressureNotice:n}}function xa(){let e=$(`slicc-dock-tree`),t=$(`slicc-surface`,{"surface-id":`files`,layout:`flex`}),n=$(`slicc-file-tree`);t.append(n);let r=$(`slicc-surface`,{"surface-id":`term`,layout:`flex`}),i=$(`div`,{class:`wcui-term`});r.append(i);let a=$(`slicc-surface`,{"surface-id":`memory`,layout:`flex`}),o=$(`slicc-memory-panel`,{class:`wcui-memory`});a.append(o);let s=$(`slicc-surface`,{"surface-id":`monitor`,layout:`flex`}),c=$(`slicc-monitor`,{class:`wcui-monitor`});s.append(c);let l=$(`slicc-surface`,{"surface-id":`browser`,layout:`flex`}),u=$(`div`,{class:`wcui-placeholder`});return u.textContent=`The tab switcher runs on the leader. This float has no browser of its own to show — ask the leader to open, focus, or close tabs through chat.`,l.append(u),e.append(t,r,a,s,l),{dockTree:e,tree:n,termSurface:i,memoryHost:o,monitor:c}}function Sa(e,t){e.addEventListener(`slicc-dock-select`,e=>{let n=e.detail?.id;!n||t.has(n)})}function Ca(e,t){e.addEventListener(`pointerdown`,e=>{let n=(e.target?.closest?.(`slicc-dock-item`))?.getAttribute(`item-id`);!n?.startsWith(`sprinkle:`)||!t.tilesMovable||t.beginExternalDrag(n,e.pointerId)})}function wa(e,t){ee(document),ga(document),va();let n=$(`div`,{class:`wcui-frame`}),r=$(`slicc-shader`,{mode:`cone`,class:`wcui-shader`}),i=$(`slicc-freezer`);i.append($(`slicc-freezer-new`));let a=$(`div`,{class:`wcui-appcol`}),o=t.urlState?{"url-state":``}:{},s=$(`slicc-shell`,o),c=$(`slicc-chatpane`),l=$(`slicc-chat-thread`,{context:`cone`,accent:`var(--waffle)`,...o});l.append(...da(t.messages));let{composer:u,inputCard:d,composerMeta:f,queuedStack:p,lickBackpressureNotice:m}=ba(t);c.append(l,u);let{dockTree:h,tree:ne,termSurface:g,memoryHost:re,monitor:ie}=xa(),_=$(`slicc-surface`,{"surface-id":`chat`,layout:`flex`});_.append(c),h.append(_);let ae=h;ae.setPinned([`chat`]),ae.placeSurface(`chat`,`left`);let v=$(`slicc-dock`,{"system-tools":``});s.append(h,v);let y=new Set;Sa(v,y),Ca(v,h),i.addEventListener(`freezer-toggle`,e=>{let t=e.detail?.open===!0;a.style.setProperty(`--rail-w`,t?`260px`:`44px`)});let oe=0;l.addEventListener(`scroll`,()=>{oe||=requestAnimationFrame(()=>{oe=0,r.setAttribute(`scroll`,String(Math.round(l.scrollTop)))})},{passive:!0});let{nav:se,switcher:ce,floatbar:le,avatarMenu:ue}=ya(t);a.append(se,s);let{panelHost:de,trustedLayer:fe}=te(document);return de.append(r,i,a),n.append(de,fe),e.replaceChildren(n),{frame:n,panelHost:de,trustedLayer:fe,shader:r,chatPane:c,thread:l,composer:u,inputCard:d,composerMeta:f,queuedStack:p,lickBackpressureNotice:m,switcher:ce,floatbar:le,shell:s,dockTree:h,dock:v,freezer:i,fileTree:ne,termSurface:g,memoryHost:re,monitor:ie,avatarMenu:ue,overlaySurfaces:y}}function Ta(e,t){let{shader:n,frame:r,freezer:i}=e;t.kind===`cone`?(n.removeAttribute(`tint`),r.style.removeProperty(`--ctx`),i.removeAttribute(`ctx`),n.setAttribute(`mode`,`cone`)):t.kind===`scoop`?(n.setAttribute(`tint`,t.accent),r.style.setProperty(`--ctx`,t.accent),i.removeAttribute(`ctx`),n.setAttribute(`mode`,`scoop`)):(n.setAttribute(`mode`,`freezer`),n.setAttribute(`tint`,pa),r.style.setProperty(`--ctx`,pa),i.setAttribute(`ctx`,``))}function Ea(e){return e.detail?.value}function Da(e){return e.detail?.steer===!0}function Oa(e){let t=wa(e,{messages:he(),scoops:[{key:`cone`,type:`cone`,color:`#b07823`,label:`sliccy`,eyes:`open`,state:`working`},{key:oe,type:`scoop`,color:`#06b6d4`,label:oe,eyes:`open`,state:`broken`}],floatLabel:`standalone · preview`,placeholder:`Preview harness — submissions echo into the thread…`});t.fileTree.items=[{kind:`dir`,id:`/workspace`,label:`workspace`,open:!0,children:[{kind:`file`,id:`/workspace/CLAUDE.md`,label:`CLAUDE.md`,size:3200}]},{kind:`dir`,id:`/shared`,label:`shared`,open:!0,children:[{kind:`file`,id:`/shared/CLAUDE.md`,label:`CLAUDE.md`,size:1800}]}],t.switcher.setAttribute(`attention`,`cone`),t.inputCard.addEventListener(`submit`,e=>{let n=Ea(e)?.trim();if(!n)return;let r={id:`wc-echo-${t.thread.childElementCount}`,role:`user`,content:n,timestamp:Date.now()};t.thread.append(...sa(r))})}export{ke as _,Ea as a,Oi as c,ua as d,sa as f,Ce as g,Jr as h,Da as i,Di as l,Ki as m,Ta as n,fa as o,ra as p,wa as r,ki as s,pa as t,ca as u,Se as v,ie as y};
|
|
119
|
+
`);t(async()=>{let{quickLabel:e}=await import(`./quick-llm-BK48XMzf.js`).then(e=>e.n);return{quickLabel: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])).then(({quickLabel:e})=>e({system:Vi,prompt:`Label these tool calls (inputs only):\n${o}`,maxTokens:40})).then(e=>{let t=e?.replace(/^["']|["']$|\.$/g,``).trim()??``;Hi(t)&&(Li.set(r,t),a&&zi.set(a,t),n.isConnected&&n.setAttribute(`label`,t))}).catch(()=>void 0).finally(()=>Ri.delete(r))}function Wi(e,t={}){let n=X(`slicc-tool-cluster`,{count:String(e.length)});return t.open&&n.setAttribute(`open`,``),n.append(...e),t.toolCalls&&t.toolCalls.length>0&&Ui(t.toolCalls,n),n}function Gi(e){let t=document.createElement(`slicc-agent-message`);t.setAttribute(`data-msg-id`,e.id);let n=(e.content??``).trim().length>0,r=m(e.timestamp);return r&&n&&t.setAttribute(`timestamp`,r),e.isStreaming&&t.setAttribute(`streaming`,``),t.setBodyHtml(Yr(e.content,e.isStreaming===!0)),n||t.setAttribute(`data-empty`,``),[t,...(e.toolCalls??[]).map(t=>Pi(t,e.id))]}function Ki(e,t){let n=e.querySelectorAll(`:scope > slicc-tool-cluster`);for(let e of n){let n=Array.from(e.querySelectorAll(`slicc-action-row`));qi(e,n,t);let r=e.parentNode;if(!r){e.remove();continue}for(let t of n)Ji(t,r,e);e.remove()}}function qi(e,t,n){if(!e.hasAttribute(`open`))return;let r=t[0]?.dataset.msgId;if(!r)return;let i=t.length>0&&t.every(e=>e.dataset.msgId===r),a=e.parentElement?.querySelector(`slicc-agent-message[data-msg-id="${r}"]`);i&&a?.hasAttribute(`streaming`)===!0||n.add(r)}function Ji(e,t,n){let r=e.dataset.msgId,i=r&&t instanceof Element?t.querySelector(`:scope > slicc-agent-message[data-msg-id="${r}"]`):null;if(!i||i.parentNode!==t){t.insertBefore(e,n);return}let a=i;for(;a.nextSibling instanceof HTMLElement&&a.nextSibling.tagName.toLowerCase()===`slicc-action-row`&&a.nextSibling.dataset.msgId===r;)a=a.nextSibling;t.insertBefore(e,a.nextSibling)}var Yi=new Set([`slicc-user-message`,`slicc-lick-card`,`slicc-error-card`,`slicc-delegation-line`,`slicc-day-separator`]);function Xi(e){return e instanceof HTMLElement?Yi.has(e.tagName.toLowerCase()):!0}function Zi(e){return e instanceof HTMLElement&&e.tagName.toLowerCase()===`slicc-action-row`}function Qi(e){return e instanceof HTMLElement&&e.tagName.toLowerCase()===`slicc-agent-message`}function $i(e){let t=[],n=[];for(let r of e)Qi(r)?!r.hasAttribute(`data-empty`)&&n.length>0&&(t.push(n),n=[]):Zi(r)&&n.push(r);return n.length>0&&t.push(n),t}function ea(e,t){let n=t[0]?.dataset.msgId;return!n||!t.every(e=>e.dataset.msgId===n)?!1:e.querySelector(`slicc-agent-message[data-msg-id="${n}"]`)?.hasAttribute(`streaming`)===!0}function ta(e,t){let n=[];for(let r of e){let e=r.dataset.msgId,i=r.dataset.toolId;if(!e||!i)return;let a=t(e,i);if(!a)return;n.push(a)}return n}function na(e,t){let n=e[0],r=n.parentNode;if(!r)return;let i=new Set(e),a=n.nextSibling;for(;a&&i.has(a);)a=a.nextSibling;let o=n.dataset.msgId,s=Wi(e,{open:!!(o&&t.openClusterAnchors.has(o))||ea(r,e),toolCalls:t.toolCallLookup?ta(e,t.toolCallLookup):void 0});r.insertBefore(s,a)}function ra(e,t){Ki(e,t.openClusterAnchors);let n=Array.from(e.children),r=0;for(;r<n.length;){if(Xi(n[r])){r++;continue}let e=r;for(;e<n.length&&!Xi(n[e]);)e++;let i=$i(n.slice(r,e));for(let e of i)e.length>=3&&na(e,t);r=e}t.openClusterAnchors.clear()}function ia(e){let t=Zr.exec(e.content),n=e.lickCount??1,r=ti.exec(e.content),i=r?ni(r[1]):null,a=X(`slicc-lick-card`,{kind:e.channel??`webhook`,"event-label":i??t?.[2]??e.channel??`event`,collapsible:``,collapsed:``});i&&a.setAttribute(`hue`,g({isCone:!1,name:i})),n>1&&a.setAttribute(`count`,String(n)),e.lickState&&e.lickState!==`pending`&&a.setAttribute(`state`,e.lickState);let o=e.lickParts??[e.content];for(let e of o){let t=document.createElement(`div`);t.innerHTML=Jr($r(e)),a.append(t)}return a}function aa(e){let t=X(`slicc-delegation-line`,{kind:`feed`,verb:`feed_scoop`,label:ri(e.content.replace(/\*\*\[[^\]]*\]\*\*\s*/,``))}),n=document.createElement(`slicc-user-message`);return n.setBodyHtml(Jr(e.content)),[t,n]}function oa(e){let t={message:e.content,"message-id":e.id};return s(e.content)?t.action=`settings`:o(e.content)?t.action=`change-model`:i(e.content)&&(t.action=`login`),X(`slicc-error-card`,t)}function sa(e){if(e.source===`lick`)return[ia(e)];if(e.source===`delegation`||e.channel===`delegation`)return aa(e);if(e.error)return[oa(e)];if(e.role===`assistant`)return Gi(e);let t=ei(e.content);return t?[ia({...e,source:`lick`,channel:t})]:[Fi(e)]}function ca(e){let t=[];for(let n of e){let e=n;if(!n.source&&n.role===`user`){let t=ei(n.content);t&&(e={...n,source:`lick`,channel:t})}let r=t[t.length-1];if(!(e.lickId||r?.lickId)&&e.source===`lick`&&r?.source===`lick`&&r.channel===e.channel){r.lickParts=[...r.lickParts??[r.content],e.content],r.lickCount=r.lickParts.length,r.content+=`\n\n${e.content}`;continue}t.push({...e})}return t}function la(e){return new Date(e).toLocaleDateString(void 0,{weekday:`short`,month:`short`,day:`numeric`})}function ua(e){return X(`slicc-day-separator`,{label:la(e)})}function da(e){let t=[],n=``;for(let r of e){let e=new Date(r.timestamp).toDateString();e!==n&&(t.push(ua(r.timestamp)),n=e),t.push(...sa(r))}let r=document.createElement(`div`);return r.append(...t),ra(r,{openClusterAnchors:new Set,toolCallLookup:(t,n)=>e.find(e=>e.id===t)?.toolCalls?.find(e=>e.id===n)}),Array.from(r.children)}var fa=e({FREEZER_TINT:()=>pa,applyShellContext:()=>Ta,mountWcShell:()=>wa,mountWcUiPreview:()=>Oa,submittedSteer:()=>Da,submittedText:()=>Ea}),pa=`#3b6cb2`,ma=`slicc-wcui-style`,ha=[`html,body{margin:0;padding:0;height:100%;overscroll-behavior:none;}`,`.wcui-frame{position:relative;transform:translateZ(0);width:100%;height:100vh;`,`overflow:hidden;background:var(--bg);font-family:var(--ui);}`,`.wcui-shader{position:absolute;inset:0;z-index:0;}`,`.wcui-frame slicc-chatpane{position:relative;background:transparent;}`,`.wcui-appcol{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;`,`box-sizing:border-box;padding-left:var(--rail-w,44px);`,`transition:padding-left .4s cubic-bezier(.4,0,.2,1);}`,`@media (max-width:560px){.wcui-appcol{padding-left:44px;}}`,`.wcui-term{flex:1;min-height:0;display:flex;flex-direction:column;padding:8px 4px 8px 10px;`,`box-sizing:border-box;background:#141414;}`,`.wcui-term .terminal-panel__terminal-host{flex:1 1 auto;min-height:0;}`,`.wcui-term .terminal-panel__preview{flex:0 0 auto;}`,`.wcui-frame slicc-file-tree{width:100%;border-right:none;}`,`.wcui-memory{flex:1;min-height:0;overflow:hidden;}`,`.wcui-monitor{flex:1;min-height:0;}`,`.wcui-placeholder{flex:1;display:flex;align-items:center;justify-content:center;`,`padding:24px;color:var(--txt-2);font-size:13px;text-align:center;}`,`.wcui-backpressure{align-self:flex-end;max-width:80%;box-sizing:border-box;`,`padding:8px 12px;border:1px solid var(--line);border-radius:14px;`,`background:var(--canvas);color:var(--txt-2);font-size:12px;line-height:1.4;}`,`.wcui-backpressure[hidden]{display:none;}`,ne].join(``);function ga(e){if(e.getElementById(ma))return;let t=e.createElement(`style`);t.id=ma,t.textContent=ha,e.head.appendChild(t)}var _a=null;function va(){_a?.(),_a=h()}function $(e,t={}){let n=document.createElement(e);for(let[e,r]of Object.entries(t))n.setAttribute(e,r);return n}function ya(e){let t=$(`slicc-nav`,{accent:`var(--waffle)`}),n=$(`slicc-agent-tabs`);n.scoops=[...e.scoops];let r=$(`slicc-floatbar`,{label:e.floatLabel,spent:`0.00`}),i=document.createElement(`slicc-avatar-menu`);return i.append($(`slicc-avatar`,{name:`SLICC`})),t.append(n,r,i),{nav:t,switcher:n,floatbar:r,avatarMenu:i}}function ba(e){let t=$(`slicc-composer`),n=$(`div`,{class:`wcui-backpressure`,role:`status`,"aria-live":`polite`,hidden:``}),r=$(`slicc-queued-stack`);r.style.position=`relative`,r.style.zIndex=`0`,r.style.marginBottom=`-32px`,r.style.minHeight=`76px`;let i=$(`slicc-input-card`,{placeholder:e.placeholder});i.style.position=`relative`,i.style.zIndex=`1`;let a=$(`slicc-composer-meta`,{model:`Preview`,thinking:`off`});return t.append(n,r,i,a),{composer:t,inputCard:i,composerMeta:a,queuedStack:r,lickBackpressureNotice:n}}function xa(){let e=$(`slicc-dock-tree`),t=$(`slicc-surface`,{"surface-id":`files`,layout:`flex`}),n=$(`slicc-file-tree`);t.append(n);let r=$(`slicc-surface`,{"surface-id":`term`,layout:`flex`}),i=$(`div`,{class:`wcui-term`});r.append(i);let a=$(`slicc-surface`,{"surface-id":`memory`,layout:`flex`}),o=$(`slicc-memory-panel`,{class:`wcui-memory`});a.append(o);let s=$(`slicc-surface`,{"surface-id":`monitor`,layout:`flex`}),c=$(`slicc-monitor`,{class:`wcui-monitor`});s.append(c);let l=$(`slicc-surface`,{"surface-id":`browser`,layout:`flex`}),u=$(`div`,{class:`wcui-placeholder`});return u.textContent=`The tab switcher runs on the leader. This float has no browser of its own to show — ask the leader to open, focus, or close tabs through chat.`,l.append(u),e.append(t,r,a,s,l),{dockTree:e,tree:n,termSurface:i,memoryHost:o,monitor:c}}function Sa(e,t){e.addEventListener(`slicc-dock-select`,e=>{let n=e.detail?.id;!n||t.has(n)})}function Ca(e,t){e.addEventListener(`pointerdown`,e=>{let n=(e.target?.closest?.(`slicc-dock-item`))?.getAttribute(`item-id`);!n?.startsWith(`sprinkle:`)||!t.tilesMovable||t.beginExternalDrag(n,e.pointerId)})}function wa(e,t){ee(document),ga(document),va();let n=$(`div`,{class:`wcui-frame`}),r=$(`slicc-shader`,{mode:`cone`,class:`wcui-shader`}),i=$(`slicc-freezer`);i.append($(`slicc-freezer-new`));let a=$(`div`,{class:`wcui-appcol`}),o=t.urlState?{"url-state":``}:{},s=$(`slicc-shell`,o),c=$(`slicc-chatpane`),l=$(`slicc-chat-thread`,{context:`cone`,accent:`var(--waffle)`,...o});l.append(...da(t.messages));let{composer:u,inputCard:d,composerMeta:f,queuedStack:p,lickBackpressureNotice:m}=ba(t);c.append(l,u);let{dockTree:h,tree:ne,termSurface:g,memoryHost:re,monitor:ie}=xa(),_=$(`slicc-surface`,{"surface-id":`chat`,layout:`flex`});_.append(c),h.append(_);let ae=h;ae.setPinned([`chat`]),ae.placeSurface(`chat`,`left`);let v=$(`slicc-dock`,{"system-tools":``});s.append(h,v);let y=new Set;Sa(v,y),Ca(v,h),i.addEventListener(`freezer-toggle`,e=>{let t=e.detail?.open===!0;a.style.setProperty(`--rail-w`,t?`260px`:`44px`)});let oe=0;l.addEventListener(`scroll`,()=>{oe||=requestAnimationFrame(()=>{oe=0,r.setAttribute(`scroll`,String(Math.round(l.scrollTop)))})},{passive:!0});let{nav:se,switcher:ce,floatbar:le,avatarMenu:ue}=ya(t);a.append(se,s);let{panelHost:de,trustedLayer:fe}=te(document);return de.append(r,i,a),n.append(de,fe),e.replaceChildren(n),{frame:n,panelHost:de,trustedLayer:fe,shader:r,chatPane:c,thread:l,composer:u,inputCard:d,composerMeta:f,queuedStack:p,lickBackpressureNotice:m,switcher:ce,floatbar:le,shell:s,dockTree:h,dock:v,freezer:i,fileTree:ne,termSurface:g,memoryHost:re,monitor:ie,avatarMenu:ue,overlaySurfaces:y}}function Ta(e,t){let{shader:n,frame:r,freezer:i}=e;t.kind===`cone`?(n.removeAttribute(`tint`),r.style.removeProperty(`--ctx`),i.removeAttribute(`ctx`),n.setAttribute(`mode`,`cone`)):t.kind===`scoop`?(n.setAttribute(`tint`,t.accent),r.style.setProperty(`--ctx`,t.accent),i.removeAttribute(`ctx`),n.setAttribute(`mode`,`scoop`)):(n.setAttribute(`mode`,`freezer`),n.setAttribute(`tint`,pa),r.style.setProperty(`--ctx`,pa),i.setAttribute(`ctx`,``))}function Ea(e){return e.detail?.value}function Da(e){return e.detail?.steer===!0}function Oa(e){let t=wa(e,{messages:he(),scoops:[{key:`cone`,type:`cone`,color:`#b07823`,label:`sliccy`,eyes:`open`,state:`working`},{key:oe,type:`scoop`,color:`#06b6d4`,label:oe,eyes:`open`,state:`broken`}],floatLabel:`standalone · preview`,placeholder:`Preview harness — submissions echo into the thread…`});t.fileTree.items=[{kind:`dir`,id:`/workspace`,label:`workspace`,open:!0,children:[{kind:`file`,id:`/workspace/CLAUDE.md`,label:`CLAUDE.md`,size:3200}]},{kind:`dir`,id:`/shared`,label:`shared`,open:!0,children:[{kind:`file`,id:`/shared/CLAUDE.md`,label:`CLAUDE.md`,size:1800}]}],t.switcher.setAttribute(`attention`,`cone`),t.inputCard.addEventListener(`submit`,e=>{let n=Ea(e)?.trim();if(!n)return;let r={id:`wc-echo-${t.thread.childElementCount}`,role:`user`,content:n,timestamp:Date.now()};t.thread.append(...sa(r))})}export{ke as _,Ea as a,Oi as c,ua as d,sa as f,Ce as g,Jr as h,Da as i,Di as l,Ki as m,Ta as n,fa as o,ra as p,wa as r,ki as s,pa as t,ca as u,Se as v,ie as y};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/legacy-styles-DcRu2WCJ.js","assets/preload-helper-Czpn1I53.js","assets/sprinkle-manager-EEbsd3wB.js","assets/logger-DDBAeTLF.js","assets/telemetry-BVzuNdvW.js","assets/runtime-env-Dlaokqg1.js","assets/runtime-env-CgsZ7LTp.js","assets/runtime-env-E-i2SW1s.js","assets/src-CAWTvdAa.js","assets/panel-rpc-B3MSVImO.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/sprinkle-renderer-D64E-W2o.js","assets/theme-CXRqxpw6.js","assets/theme-engine-By4GU_Wc.js","assets/sprinkle-bridge-CSfksHce.js","assets/hid-device-registry-B2R-0rNt.js","assets/serial-port-registry-B3LG5UIy.js","assets/usb-operations-Cgk-otz-.js","assets/usb-device-registry-CRsCisej.js","assets/shared-CddfUR6k.js","assets/mime-types-ugOWOUZ9.js","assets/fetch-body-D2PwksUW.js","assets/sprinkle-instances-B8n7h-oP.js","assets/setup-sprinkle-exec-BX_Qq-Su.js","assets/dip-B58NQGEQ.js","assets/permissions-surface-registry-CilCRwhh.js","assets/quick-llm-
|
|
2
|
-
import{t as e}from"./preload-helper-Czpn1I53.js";import{n as t}from"./runtime-env-Dlaokqg1.js";import"./runtime-env-CgsZ7LTp.js";var n=`sprinkle:`,r=`slicc-sprinkle-icons`;function i(){try{let e=localStorage.getItem(r);if(!e)return{};let t=JSON.parse(e);if(typeof t!=`object`||!t)return{};let n={};for(let[e,r]of Object.entries(t))typeof r==`string`&&(n[e]=r);return n}catch{return{}}}function a(e){try{let t=new Set(e),n=Object.fromEntries(Object.entries(i()).filter(([e])=>t.has(e)));localStorage.setItem(r,JSON.stringify(n))}catch{}}function o(e,t){try{localStorage.setItem(r,JSON.stringify({...i(),[e]:t}))}catch{}}function s(e){return typeof e==`string`&&/^[a-z0-9]+(-[a-z0-9]+)*$/.test(e)}function c(e){return`${n}${e}`}function l(e){return e?.startsWith(n)?e.slice(9):null}var u=`chat`,d=new Set([`files`,`term`,`memory`,`monitor`]),f=`right`,p=f;function m(e){return d.has(e)}var h=class{#e;#t=new Map;#n=new Map;#r=new Set;#i=[];#a;constructor(e,t={}){this.#e=e,this.#a=t}#o(){return this.#e.dockTree}applyLayout(e){let t=this.#o();t?.setTree(e);for(let e of this.#i)t?.placeSurface(c(e),p)}placeSurface(e,t){let n=this.#o();if(n&&!this.#a.hostSprinkleSurface)for(let e of n.getSurfaceIds())e!==t&&e!==`chat`&&this.removeSurface(e);if(n?.placeSurface(t,e),!this.#a.hostSprinkleSurface){let e=this.#e.dock;e&&(e.active=t)}m(t)&&this.#a.onToolPanelActivate?.(t)}moveSurfaceToZone(e,t){this.#o()?.moveSurfaceToZone(e,t)}removeSurface(e){this.#o()?.removeSurface(e),m(e)&&this.#a.onToolPanelDeactivate?.(e)}setSurfaceSize(e,t){return this.#o()?.setSurfaceSize(e,t)??!1}seedDockItems(e){let t=i(),n=!1;for(let r of e)this.#t.has(r)||(this.#r.add(r),this.#t.set(r,{id:c(r),icon:t[r]??`sparkles`,label:r,kind:`sprinkle`}),n=!0);n&&this.#p()}dropUnconfirmedSeeds(){let e=!1;for(let t of this.#r)this.#n.has(t)||(this.#t.delete(t),e=!0);this.#r.clear(),e&&this.#p()}callbacks(){return{addSprinkle:(e,t,n,r,i)=>this.#s(e,t,n,i),removeSprinkle:e=>this.#c(e,{keepDockItem:!1}),minimizeSprinkle:e=>this.#l(e),registerSprinkle:(e,t,n)=>this.#u(e,t,n?.icon),unregisterSprinkle:e=>this.#f(e),closeSprinkleContent:e=>this.#c(e,{keepDockItem:!0})}}updateDockIcon(e,t){let n=this.#t.get(e);!n||n.icon===t||(this.#t.set(e,{...n,icon:t}),this.#p())}defaultIconNames(){return[...this.#t.entries()].filter(([,e])=>e.icon===`sparkles`).map(([e])=>e)}isOpen(e){return this.#n.has(e)}#s(e,t,n,r){let i=c(e),a=this.#a.hostSprinkleSurface,o=this.#n.get(e),s=!o;if(o||(o=document.createElement(`slicc-surface`),o.setAttribute(`surface-id`,i),o.setAttribute(`layout`,`flex`),a||this.#e.dockTree?.append(o),this.#n.set(e,o)),o.replaceChildren(n),this.#u(e,t,r?.icon),this.#i.includes(e)||this.#i.push(e),a){s&&a(i,o);return}r?.attention||r?.background||this.placeSurface(p,i)}#c(e,t){let n=c(e);this.#n.get(e)?.remove(),this.#n.delete(e),t.keepDockItem||this.#t.delete(e);let r=this.#i.indexOf(e);if(r>=0&&this.#i.splice(r,1),this.#p(),this.#a.removeSprinkleSurface){this.#a.removeSprinkleSurface(n);return}this.#e.dockTree?.removeSurface(n)}#l(e){this.#e.dock.removeAttribute(`active`),!this.#a.hostSprinkleSurface&&this.removeSurface(c(e))}#u(e,t,n){this.#r.delete(e);let r=this.#d(e,n);this.#t.set(e,{id:c(e),icon:r,label:t,kind:`sprinkle`}),this.#p()}#d(e,t){return s(t)?t:i()[e]??`sparkles`}#f(e){this.#n.has(e)||(this.#t.delete(e),this.#p())}#p(){this.#e.dock.items=[...this.#t.values()]}},g=180;function _(e){e.dock.addEventListener(`slicc-dock-longpress`,t=>{let n=t.detail?.id;if(!n||l(n)===null)return;let r=n.replace(/\\/g,`\\\\`).replace(/"/g,`\\"`),i=t=>{let n=e.dockTree.querySelector(`[surface-id="${r}"]`);if(n&&!n.closest(`.dock-tree__parking`)){n.requestFullscreen?.()?.catch(()=>{});return}t<=0||requestAnimationFrame(()=>i(t-1))};i(g)})}async function v(n){let{refs:r,client:i,fs:o,instanceId:s,onAttachImage:c,onToolPanelActivate:u,onToolPanelDeactivate:d,hostSprinkleSurface:p,removeSprinkleSurface:g,log:v}=n,b=new h(r,{onToolPanelActivate:u,onToolPanelDeactivate:d,hostSprinkleSurface:p,removeSprinkleSurface:g}),{loadSprinkleStyles:x}=await e(async()=>{let{loadSprinkleStyles:e}=await import(`./legacy-styles-DcRu2WCJ.js`);return{loadSprinkleStyles:e}},__vite__mapDeps([0,1]));await x();let{SprinkleManager:S,readKnownSprinkleNames:C}=await e(async()=>{let{SprinkleManager:e,readKnownSprinkleNames:t}=await import(`./sprinkle-manager-EEbsd3wB.js`);return{SprinkleManager:e,readKnownSprinkleNames:t}},__vite__mapDeps([2,3,4,1,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));b.seedDockItems(C());let{installSprinkleManagerHandlerOverChannel:w}=await e(async()=>{let{installSprinkleManagerHandlerOverChannel:e}=await import(`./sprinkle-bridge-channel-Clwu-X1e.js`);return{installSprinkleManagerHandlerOverChannel:e}},[]),{createSprinkleExecHandler:T}=await e(async()=>{let{createSprinkleExecHandler:e}=await import(`./setup-sprinkle-exec-BX_Qq-Su.js`);return{createSprinkleExecHandler:e}},__vite__mapDeps([23,1])),{setDipExecHandler:E}=await e(async()=>{let{setDipExecHandler:e}=await import(`./dip-B58NQGEQ.js`).then(e=>e.n);return{setDipExecHandler:e}},__vite__mapDeps([24,10,1,5,6,7,8,25,15,16,17,18,11,12,13,3,14,19,20,21])),D=t(),O=T(i),k=new S(o,e=>{e.type===`sprinkle`&&e.sprinkleName&&i.sendSprinkleLick(e.sprinkleName,e.body,e.targetScoop)},b.callbacks(),()=>{let e=i.getScoops().find(e=>e.isCone);e&&i.stopScoop(e.jid)},{...D?{autoOpenBehavior:`attention`}:{},inlineSprinkles:new Set([`welcome`]),execHandler:O,onAttachImage:c??(()=>{})});if(window.__slicc_sprinkleManager=k,E(O),s!==void 0){let e=w(k,{instanceId:s});window.addEventListener(`beforeunload`,()=>e(),{once:!0})}else if(D){let{handleSprinkleOp:t}=await e(async()=>{let{handleSprinkleOp:e}=await import(`./sprinkle-op-handler-Cb1pl8Ok.js`);return{handleSprinkleOp:e}},[]);i.setSprinkleOpHandler(e=>{let{id:n,op:r,name:i,data:a,target:o}=e;t(k,n,r,i,a,o)})}r.dock.addEventListener(`slicc-dock-select`,e=>{let t=e.detail?.id,n=l(t);if(n){k.activate(n).catch(e=>v.error(`WC sprinkle activate failed`,e));return}t&&m(t)&&b.placeSurface(f,t)}),r.dock.addEventListener(`slicc-dock-collapse`,e=>{let t=e.detail?.id;if(!t)return;if(m(t)){b.removeSurface(t);return}let n=l(t);n&&k.minimize(n)}),_(r);let A=!1,j=async()=>{if(await k.refresh(),k.available().length>0){b.dropUnconfirmedSeeds();let t=k.available().map(e=>e.name),{pruneKnownSprinkleNames:n}=await e(async()=>{let{pruneKnownSprinkleNames:e}=await import(`./sprinkle-manager-EEbsd3wB.js`);return{pruneKnownSprinkleNames:e}},__vite__mapDeps([2,3,4,1,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));n(t),a(t)}await k.restoreOpenSprinkles().catch(e=>{v.warn(`WC shell: failed to restore open sprinkles`,e)}),A||(A=!0,e(async()=>{let{pickLucideIcon:e}=await import(`./quick-llm-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/legacy-styles-DcRu2WCJ.js","assets/preload-helper-Czpn1I53.js","assets/sprinkle-manager-EEbsd3wB.js","assets/logger-DDBAeTLF.js","assets/telemetry-BVzuNdvW.js","assets/runtime-env-Dlaokqg1.js","assets/runtime-env-CgsZ7LTp.js","assets/runtime-env-E-i2SW1s.js","assets/src-CAWTvdAa.js","assets/panel-rpc-B3MSVImO.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/sprinkle-renderer-D64E-W2o.js","assets/theme-CXRqxpw6.js","assets/theme-engine-By4GU_Wc.js","assets/sprinkle-bridge-CSfksHce.js","assets/hid-device-registry-B2R-0rNt.js","assets/serial-port-registry-B3LG5UIy.js","assets/usb-operations-Cgk-otz-.js","assets/usb-device-registry-CRsCisej.js","assets/shared-CddfUR6k.js","assets/mime-types-ugOWOUZ9.js","assets/fetch-body-D2PwksUW.js","assets/sprinkle-instances-B8n7h-oP.js","assets/setup-sprinkle-exec-BX_Qq-Su.js","assets/dip-B58NQGEQ.js","assets/permissions-surface-registry-CilCRwhh.js","assets/quick-llm-BK48XMzf.js","assets/account-store-sCJNhEJc.js","assets/bedrock-camp-qpZqnqLa.js","assets/diagnostics-DN_idNHx.js","assets/transform-messages-N_eMsP2M.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-gbjkpjE_.js","assets/libesm-BI4UHVqp.js","assets/proxied-fetch-B4g-4VbQ.js","assets/base64-DpPqYZJF.js","assets/float-topology-BgioAcOd.js","assets/secret-topology-xLmXoozo.js","assets/secrets-bridge-client-cWDAnFqs.js","assets/port-bridge-client-BbVs1yhx.js","assets/image-markers-BXtVm4og.js","assets/tool-ui-DfXu6quJ.js","assets/providers-DQj-gKPL.js","assets/llm-session-id-bZQs6gBN.js","assets/icons-ZLR7gmJ4.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{t as e}from"./preload-helper-Czpn1I53.js";import{n as t}from"./runtime-env-Dlaokqg1.js";import"./runtime-env-CgsZ7LTp.js";var n=`sprinkle:`,r=`slicc-sprinkle-icons`;function i(){try{let e=localStorage.getItem(r);if(!e)return{};let t=JSON.parse(e);if(typeof t!=`object`||!t)return{};let n={};for(let[e,r]of Object.entries(t))typeof r==`string`&&(n[e]=r);return n}catch{return{}}}function a(e){try{let t=new Set(e),n=Object.fromEntries(Object.entries(i()).filter(([e])=>t.has(e)));localStorage.setItem(r,JSON.stringify(n))}catch{}}function o(e,t){try{localStorage.setItem(r,JSON.stringify({...i(),[e]:t}))}catch{}}function s(e){return typeof e==`string`&&/^[a-z0-9]+(-[a-z0-9]+)*$/.test(e)}function c(e){return`${n}${e}`}function l(e){return e?.startsWith(n)?e.slice(9):null}var u=`chat`,d=new Set([`files`,`term`,`memory`,`monitor`]),f=`right`,p=f;function m(e){return d.has(e)}var h=class{#e;#t=new Map;#n=new Map;#r=new Set;#i=[];#a;constructor(e,t={}){this.#e=e,this.#a=t}#o(){return this.#e.dockTree}applyLayout(e){let t=this.#o();t?.setTree(e);for(let e of this.#i)t?.placeSurface(c(e),p)}placeSurface(e,t){let n=this.#o();if(n&&!this.#a.hostSprinkleSurface)for(let e of n.getSurfaceIds())e!==t&&e!==`chat`&&this.removeSurface(e);if(n?.placeSurface(t,e),!this.#a.hostSprinkleSurface){let e=this.#e.dock;e&&(e.active=t)}m(t)&&this.#a.onToolPanelActivate?.(t)}moveSurfaceToZone(e,t){this.#o()?.moveSurfaceToZone(e,t)}removeSurface(e){this.#o()?.removeSurface(e),m(e)&&this.#a.onToolPanelDeactivate?.(e)}setSurfaceSize(e,t){return this.#o()?.setSurfaceSize(e,t)??!1}seedDockItems(e){let t=i(),n=!1;for(let r of e)this.#t.has(r)||(this.#r.add(r),this.#t.set(r,{id:c(r),icon:t[r]??`sparkles`,label:r,kind:`sprinkle`}),n=!0);n&&this.#p()}dropUnconfirmedSeeds(){let e=!1;for(let t of this.#r)this.#n.has(t)||(this.#t.delete(t),e=!0);this.#r.clear(),e&&this.#p()}callbacks(){return{addSprinkle:(e,t,n,r,i)=>this.#s(e,t,n,i),removeSprinkle:e=>this.#c(e,{keepDockItem:!1}),minimizeSprinkle:e=>this.#l(e),registerSprinkle:(e,t,n)=>this.#u(e,t,n?.icon),unregisterSprinkle:e=>this.#f(e),closeSprinkleContent:e=>this.#c(e,{keepDockItem:!0})}}updateDockIcon(e,t){let n=this.#t.get(e);!n||n.icon===t||(this.#t.set(e,{...n,icon:t}),this.#p())}defaultIconNames(){return[...this.#t.entries()].filter(([,e])=>e.icon===`sparkles`).map(([e])=>e)}isOpen(e){return this.#n.has(e)}#s(e,t,n,r){let i=c(e),a=this.#a.hostSprinkleSurface,o=this.#n.get(e),s=!o;if(o||(o=document.createElement(`slicc-surface`),o.setAttribute(`surface-id`,i),o.setAttribute(`layout`,`flex`),a||this.#e.dockTree?.append(o),this.#n.set(e,o)),o.replaceChildren(n),this.#u(e,t,r?.icon),this.#i.includes(e)||this.#i.push(e),a){s&&a(i,o);return}r?.attention||r?.background||this.placeSurface(p,i)}#c(e,t){let n=c(e);this.#n.get(e)?.remove(),this.#n.delete(e),t.keepDockItem||this.#t.delete(e);let r=this.#i.indexOf(e);if(r>=0&&this.#i.splice(r,1),this.#p(),this.#a.removeSprinkleSurface){this.#a.removeSprinkleSurface(n);return}this.#e.dockTree?.removeSurface(n)}#l(e){this.#e.dock.removeAttribute(`active`),!this.#a.hostSprinkleSurface&&this.removeSurface(c(e))}#u(e,t,n){this.#r.delete(e);let r=this.#d(e,n);this.#t.set(e,{id:c(e),icon:r,label:t,kind:`sprinkle`}),this.#p()}#d(e,t){return s(t)?t:i()[e]??`sparkles`}#f(e){this.#n.has(e)||(this.#t.delete(e),this.#p())}#p(){this.#e.dock.items=[...this.#t.values()]}},g=180;function _(e){e.dock.addEventListener(`slicc-dock-longpress`,t=>{let n=t.detail?.id;if(!n||l(n)===null)return;let r=n.replace(/\\/g,`\\\\`).replace(/"/g,`\\"`),i=t=>{let n=e.dockTree.querySelector(`[surface-id="${r}"]`);if(n&&!n.closest(`.dock-tree__parking`)){n.requestFullscreen?.()?.catch(()=>{});return}t<=0||requestAnimationFrame(()=>i(t-1))};i(g)})}async function v(n){let{refs:r,client:i,fs:o,instanceId:s,onAttachImage:c,onToolPanelActivate:u,onToolPanelDeactivate:d,hostSprinkleSurface:p,removeSprinkleSurface:g,log:v}=n,b=new h(r,{onToolPanelActivate:u,onToolPanelDeactivate:d,hostSprinkleSurface:p,removeSprinkleSurface:g}),{loadSprinkleStyles:x}=await e(async()=>{let{loadSprinkleStyles:e}=await import(`./legacy-styles-DcRu2WCJ.js`);return{loadSprinkleStyles:e}},__vite__mapDeps([0,1]));await x();let{SprinkleManager:S,readKnownSprinkleNames:C}=await e(async()=>{let{SprinkleManager:e,readKnownSprinkleNames:t}=await import(`./sprinkle-manager-EEbsd3wB.js`);return{SprinkleManager:e,readKnownSprinkleNames:t}},__vite__mapDeps([2,3,4,1,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));b.seedDockItems(C());let{installSprinkleManagerHandlerOverChannel:w}=await e(async()=>{let{installSprinkleManagerHandlerOverChannel:e}=await import(`./sprinkle-bridge-channel-Clwu-X1e.js`);return{installSprinkleManagerHandlerOverChannel:e}},[]),{createSprinkleExecHandler:T}=await e(async()=>{let{createSprinkleExecHandler:e}=await import(`./setup-sprinkle-exec-BX_Qq-Su.js`);return{createSprinkleExecHandler:e}},__vite__mapDeps([23,1])),{setDipExecHandler:E}=await e(async()=>{let{setDipExecHandler:e}=await import(`./dip-B58NQGEQ.js`).then(e=>e.n);return{setDipExecHandler:e}},__vite__mapDeps([24,10,1,5,6,7,8,25,15,16,17,18,11,12,13,3,14,19,20,21])),D=t(),O=T(i),k=new S(o,e=>{e.type===`sprinkle`&&e.sprinkleName&&i.sendSprinkleLick(e.sprinkleName,e.body,e.targetScoop)},b.callbacks(),()=>{let e=i.getScoops().find(e=>e.isCone);e&&i.stopScoop(e.jid)},{...D?{autoOpenBehavior:`attention`}:{},inlineSprinkles:new Set([`welcome`]),execHandler:O,onAttachImage:c??(()=>{})});if(window.__slicc_sprinkleManager=k,E(O),s!==void 0){let e=w(k,{instanceId:s});window.addEventListener(`beforeunload`,()=>e(),{once:!0})}else if(D){let{handleSprinkleOp:t}=await e(async()=>{let{handleSprinkleOp:e}=await import(`./sprinkle-op-handler-Cb1pl8Ok.js`);return{handleSprinkleOp:e}},[]);i.setSprinkleOpHandler(e=>{let{id:n,op:r,name:i,data:a,target:o}=e;t(k,n,r,i,a,o)})}r.dock.addEventListener(`slicc-dock-select`,e=>{let t=e.detail?.id,n=l(t);if(n){k.activate(n).catch(e=>v.error(`WC sprinkle activate failed`,e));return}t&&m(t)&&b.placeSurface(f,t)}),r.dock.addEventListener(`slicc-dock-collapse`,e=>{let t=e.detail?.id;if(!t)return;if(m(t)){b.removeSurface(t);return}let n=l(t);n&&k.minimize(n)}),_(r);let A=!1,j=async()=>{if(await k.refresh(),k.available().length>0){b.dropUnconfirmedSeeds();let t=k.available().map(e=>e.name),{pruneKnownSprinkleNames:n}=await e(async()=>{let{pruneKnownSprinkleNames:e}=await import(`./sprinkle-manager-EEbsd3wB.js`);return{pruneKnownSprinkleNames:e}},__vite__mapDeps([2,3,4,1,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22]));n(t),a(t)}await k.restoreOpenSprinkles().catch(e=>{v.warn(`WC shell: failed to restore open sprinkles`,e)}),A||(A=!0,e(async()=>{let{pickLucideIcon:e}=await import(`./quick-llm-BK48XMzf.js`).then(e=>e.n);return{pickLucideIcon:e}},__vite__mapDeps([26,10,27,1,28,29,30,31,32,33,34,3,8,35,36,5,21,37,7,38,39,40,41,42,43,9,44,45])).then(({pickLucideIcon:e})=>y(b,k.available(),t=>e({subject:t}))).catch(()=>void 0).finally(()=>{A=!1}))};return j().catch(e=>v.warn(`WC shell: initial sprinkle resync failed`,e)),{manager:k,zone:b,resync:j}}async function y(e,t,n){let r=new Set(e.defaultIconNames()),a=i();for(let i of t){if(!r.has(i.name)||s(i.icon))continue;let t=a[i.name];if(t){e.updateDockIcon(i.name,t);continue}let c=await n(`"${i.title}" — a SLICC sprinkle panel (${i.name})`);c&&(o(i.name,c),e.updateDockIcon(i.name,c))}}export{u as CHAT_SURFACE_ID,h as WcSprinkleZone,v as wireWcSprinkles};
|