sliccy 6.128.2 → 6.128.3

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.
Files changed (133) hide show
  1. package/dist/node-server/sudo/endpoint.d.ts +4 -2
  2. package/dist/node-server/sudo/endpoint.js +4 -2
  3. package/dist/node-server/sudo/types.d.ts +3 -1
  4. package/dist/node-server/sudo/types.js +3 -1
  5. package/dist/ui/.vite/manifest.json +255 -221
  6. package/dist/ui/assets/{account-store-QAWTf9es.js → account-store-DHbYljA2.js} +3 -3
  7. package/dist/ui/assets/{account-store-AnNFDy2P.js → account-store-D_vayktH.js} +1 -1
  8. package/dist/ui/assets/{adobe-BN1ZAXjw.js → adobe-DdaacmhV.js} +1 -1
  9. package/dist/ui/assets/{adobe-CwWmY478.js → adobe-DnxK1efn.js} +2 -2
  10. package/dist/ui/assets/{agent-bridge-DJBiO6eU.js → agent-bridge-CoRubAeG.js} +1 -1
  11. package/dist/ui/assets/{apply-layout-DRX2hbKF.js → apply-layout-4mwV9GLR.js} +1 -1
  12. package/dist/ui/assets/approval-decision-CS9Wwm5B.js +1 -0
  13. package/dist/ui/assets/{apps-BF0_egNy.js → apps-DenjJeRS.js} +1 -1
  14. package/dist/ui/assets/{azure-openai-Demqg5Qi.js → azure-openai-BkKwCp7A.js} +1 -1
  15. package/dist/ui/assets/{azure-openai-CBmQJEBL.js → azure-openai-CYjPJ1T2.js} +1 -1
  16. package/dist/ui/assets/boundary-Cp9c_bPu.js +1 -0
  17. package/dist/ui/assets/capability-BurSRZ-s.js +2 -0
  18. package/dist/ui/assets/{cerebras-DqE8lqTV.js → cerebras-1L1enTTR.js} +1 -1
  19. package/dist/ui/assets/{cerebras-B1cmQz2k.js → cerebras-2a1mcXqz.js} +1 -1
  20. package/dist/ui/assets/{composer-speech-o750u66j.js → composer-speech-B90r7re0.js} +1 -1
  21. package/dist/ui/assets/{connect-surface-12gDDi-P.js → connect-surface-TmZjUGmz.js} +1 -1
  22. package/dist/ui/assets/{directed-approval-B1e2ES3a.js → directed-approval-DC1X9nrH.js} +1 -1
  23. package/dist/ui/assets/{discovery-preference-rzSxl6g3.js → discovery-preference-CiKcjd83.js} +1 -1
  24. package/dist/ui/assets/{ensure-speech-assets-DGXbz9uT.js → ensure-speech-assets-hPZ8_uTN.js} +1 -1
  25. package/dist/ui/assets/extension-ops-B1o0wS2l.js +1 -0
  26. package/dist/ui/assets/{float-topology-B1E_mH1v.js → float-topology-D_ESvEeq.js} +1 -1
  27. package/dist/ui/assets/follower-navigate-watcher-n7yKTzhc.js +1 -0
  28. package/dist/ui/assets/{fs-CjjuhOp_.js → fs-9X4JYs3L.js} +2 -2
  29. package/dist/ui/assets/{fs-BIk-iv5m.js → fs-BZyvdsnD.js} +1 -1
  30. package/dist/ui/assets/{github-CW1YbGum.js → github-Cljo8hqs.js} +2 -2
  31. package/dist/ui/assets/{github-1KFQrsFp.js → github-CqaGcvrS.js} +1 -1
  32. package/dist/ui/assets/{github-copilot--XEHMOYM.js → github-copilot-BcPcJuP2.js} +1 -1
  33. package/dist/ui/assets/{github-copilot-C9FoWf5Q.js → github-copilot-DxCmBJ50.js} +1 -1
  34. package/dist/ui/assets/{github-install-DJwKDZ2X.js → github-install-B7qnuo-D.js} +1 -1
  35. package/dist/ui/assets/{github-zip-B1SOCvRU.js → github-zip-D10M2l2Q.js} +1 -1
  36. package/dist/ui/assets/{hear-B8lQZty5.js → hear-BIjL3g3l.js} +1 -1
  37. package/dist/ui/assets/{help-tl-9MNkV.js → help-CeOvIWCw.js} +1 -1
  38. package/dist/ui/assets/{host-command-C3f7bKlE.js → host-command-D0p9e1GO.js} +1 -1
  39. package/dist/ui/assets/{js-realm-worker-BIhTDwhB.js → js-realm-worker-BoFs2LPz.js} +1 -1
  40. package/dist/ui/assets/{kernel-worker-D6GE2eW6.js → kernel-worker-B01kQo95.js} +628 -628
  41. package/dist/ui/assets/{lick-ws-bridge-BgRQepmP.js → lick-ws-bridge-o9sDM3Nj.js} +1 -1
  42. package/dist/ui/assets/{local-llm-Bp3hYRkd.js → local-llm-D1poIP5e.js} +1 -1
  43. package/dist/ui/assets/{local-llm-wC4GLZz1.js → local-llm-DPYzKnTG.js} +1 -1
  44. package/dist/ui/assets/{main-wQEmvcig.js → main-C9GELlnI.js} +3 -3
  45. package/dist/ui/assets/{mount-v0iuE8_k.js → mount-Bi2hhpNg.js} +3 -3
  46. package/dist/ui/assets/{mount-CvJ9EIqL.js → mount-CW11t3UA.js} +1 -1
  47. package/dist/ui/assets/{mount-bridge-client-DWskyztE.js → mount-bridge-client-BeGKXIel.js} +1 -1
  48. package/dist/ui/assets/{mount-recovery-DMW71B2R.js → mount-recovery-CjFqj0Da.js} +1 -1
  49. package/dist/ui/assets/{new-session-CfKDiPZX.js → new-session-C-WBRIrt.js} +2 -2
  50. package/dist/ui/assets/{oauth-bootstrap-B-6P1ECI.js → oauth-bootstrap-pkEXFiOS.js} +2 -2
  51. package/dist/ui/assets/{oauth-service-BJMc4Gsx.js → oauth-service-BQ9OoA-h.js} +1 -1
  52. package/dist/ui/assets/{openai-codex-QpFfvitC.js → openai-codex-BiOTorTL.js} +1 -1
  53. package/dist/ui/assets/{openai-codex-BSkoVpsZ.js → openai-codex-BqvqH3T6.js} +1 -1
  54. package/dist/ui/assets/{openrouter-B10ZIJHb.js → openrouter-CjXLE2iq.js} +1 -1
  55. package/dist/ui/assets/{openrouter-DdMDMVvm.js → openrouter-Cpigxd0J.js} +1 -1
  56. package/dist/ui/assets/{openrouter-oauth-CYPTNmFd.js → openrouter-oauth-CgvCp40o.js} +1 -1
  57. package/dist/ui/assets/{openrouter-oauth-Z8D9Uexm.js → openrouter-oauth-ShjmiSH8.js} +1 -1
  58. package/dist/ui/assets/page-approval-service-BA_9yawH.js +1 -0
  59. package/dist/ui/assets/{panel-rpc-handlers-BiZ4asca.js → panel-rpc-handlers-B7e1aEcf.js} +2 -2
  60. package/dist/ui/assets/{port-bridge-client-CVZpTSrA.js → port-bridge-client-DX2fz9_b.js} +1 -1
  61. package/dist/ui/assets/{provider-5TDJo0ur.js → provider-BDyL5jJI.js} +2 -2
  62. package/dist/ui/assets/{provider-BgIyNZvR.js → provider-C2nYbvNz.js} +1 -1
  63. package/dist/ui/assets/{provider-settings-Bx1ls4Yh.js → provider-settings-CF_NGxAT.js} +1 -1
  64. package/dist/ui/assets/{provider-settings-BNDUj_a2.js → provider-settings-jCx4Vxo4.js} +2 -2
  65. package/dist/ui/assets/{provider-store-access-FCVeMJRb.js → provider-store-access-BhP8u3F-.js} +2 -2
  66. package/dist/ui/assets/provider-store-access-D2mVJKq_.js +1 -0
  67. package/dist/ui/assets/{providers-CMdt7NIp.js → providers-Ca2x4vLj.js} +2 -2
  68. package/dist/ui/assets/{providers-CFsw2G3b.js → providers-xCnb5fGu.js} +1 -1
  69. package/dist/ui/assets/proxied-fetch-DuC82T1c.js +2 -0
  70. package/dist/ui/assets/{quick-llm-u8uic8QB.js → quick-llm-kUXqAL2W.js} +1 -1
  71. package/dist/ui/assets/{recovery-screen-CZYT7flO.js → recovery-screen-Cb2VYCpl.js} +1 -1
  72. package/dist/ui/assets/request-body-FFoHDB3I.js +1 -0
  73. package/dist/ui/assets/rest-ops-BFV8rlC4.js +1 -0
  74. package/dist/ui/assets/rest-ops-DKg-BuYw.js +1 -0
  75. package/dist/ui/assets/rest-paths-DJCfupdz.js +1 -0
  76. package/dist/ui/assets/{run-EHwjzgre.js → run-BZI9daLk.js} +2 -2
  77. package/dist/ui/assets/{run-BQKfwSke.js → run-CgzdzMSu.js} +1 -1
  78. package/dist/ui/assets/{secret-env-BKKHVcyt.js → secret-env-4sdtvoSr.js} +1 -1
  79. package/dist/ui/assets/secret-topology-D5sJYeG9.js +1 -0
  80. package/dist/ui/assets/{secrets-bridge-client-BCv_YZhX.js → secrets-bridge-client-aihv9k6e.js} +1 -1
  81. package/dist/ui/assets/{session-freezer-BGtUBp7O.js → session-freezer-DSg3JDOv.js} +3 -3
  82. package/dist/ui/assets/{setup-feature-flags-remote-l9KfTyYp.js → setup-feature-flags-remote-BY32MZTE.js} +1 -1
  83. package/dist/ui/assets/{setup-standalone-prelude-CRyLSjRK.js → setup-standalone-prelude-BWotrF8e.js} +2 -2
  84. package/dist/ui/assets/setup-sudo-B5v8rRy7.js +2 -0
  85. package/dist/ui/assets/{skills-BiYtev0K.js → skills-Be5Sp0Wx.js} +1 -1
  86. package/dist/ui/assets/slicc-version-_h0PDmNb.js +1 -0
  87. package/dist/ui/assets/{snapshot-BVDkGgv2.js → snapshot-B_yBc53d.js} +1 -1
  88. package/dist/ui/assets/{snapshot-features-_gfLx1rZ.js → snapshot-features-CjKrxdwS.js} +1 -1
  89. package/dist/ui/assets/{speak-BCIaxflW.js → speak-D8vfanJ1.js} +1 -1
  90. package/dist/ui/assets/{state-B1fUKJq0.js → state-BO9yXFgE.js} +1 -1
  91. package/dist/ui/assets/{store-IrYUKEu1.js → store-Bq7lQD7k.js} +1 -1
  92. package/dist/ui/assets/{store-UM5Ipvg3.js → store-CQOWln1l.js} +1 -1
  93. package/dist/ui/assets/sudo-nKgKeoDS.js +5 -0
  94. package/dist/ui/assets/{transformers-env-BvDjQzHU.js → transformers-env-De3lhfut.js} +1 -1
  95. package/dist/ui/assets/tray-leader-C4W6t_QT.js +1 -0
  96. package/dist/ui/assets/{tray-leave-runtime-ze84Lgj4.js → tray-leave-runtime-wtoD861i.js} +1 -1
  97. package/dist/ui/assets/{tray-runtime-config-D-kNf-DT.js → tray-runtime-config-GI-8c29v.js} +1 -1
  98. package/dist/ui/assets/{tray-sidecar-BEMiR0yy.js → tray-sidecar-BX6Kd_4j.js} +1 -1
  99. package/dist/ui/assets/types-BfwydWt7.js +1 -0
  100. package/dist/ui/assets/{upgrade-detection-BhBRUFIl.js → upgrade-detection-BmxK4pvi.js} +1 -1
  101. package/dist/ui/assets/{voice-reply-D8de58Jp.js → voice-reply-C-njgXqT.js} +1 -1
  102. package/dist/ui/assets/{wc-extension-BLA8yGsG.js → wc-extension-BlHGPkn2.js} +2 -2
  103. package/dist/ui/assets/{wc-float-label-_S5TsF66.js → wc-float-label-DCnN6-DZ.js} +1 -1
  104. package/dist/ui/assets/{wc-floatbar-online-BRZloJeW.js → wc-floatbar-online-BRk6j7Xu.js} +1 -1
  105. package/dist/ui/assets/{wc-follower-tRbhAiRk.js → wc-follower-CC-Swosx.js} +3 -3
  106. package/dist/ui/assets/{wc-live-Cgl26Lem.js → wc-live-BQ8I05Qw.js} +4 -4
  107. package/dist/ui/assets/{wc-nav-DrRK17dw.js → wc-nav-Bqukg52H.js} +2 -2
  108. package/dist/ui/assets/{wc-onboarding-Be_O8bmO.js → wc-onboarding-B5ghNdT_.js} +2 -2
  109. package/dist/ui/assets/{wc-placeholder-DtI6L3KZ.js → wc-placeholder-CwZpLC5l.js} +2 -2
  110. package/dist/ui/assets/{wc-settings-DzKLh6wd.js → wc-settings-Brf082oj.js} +3 -3
  111. package/dist/ui/assets/{wc-shell-C6Pg0Q54.js → wc-shell-BHUfS2He.js} +2 -2
  112. package/dist/ui/assets/{wc-sprinkles-D6ytPwhq.js → wc-sprinkles-CyuMh0DO.js} +2 -2
  113. package/dist/ui/assets/{wc-tray-DtpbV4Hy.js → wc-tray-CMMbxpkp.js} +4 -4
  114. package/dist/ui/assets/{whisper-session-is7cka6b.js → whisper-session-D86jO6RQ.js} +2 -2
  115. package/dist/ui/assets/{xai-grok-Cd-DzyGd.js → xai-grok-CY7TyXgl.js} +1 -1
  116. package/dist/ui/assets/{xai-grok--gX-Nc6Q.js → xai-grok-Df8M2c4x.js} +1 -1
  117. package/dist/ui/index.html +12 -12
  118. package/dist/ui/packages/webapp/index.html +12 -12
  119. package/package.json +1 -1
  120. package/dist/ui/assets/boundary-BBU8IvQr.js +0 -1
  121. package/dist/ui/assets/extension-ops-4CHxluMA.js +0 -1
  122. package/dist/ui/assets/follower-navigate-watcher-CMpGLDLi.js +0 -1
  123. package/dist/ui/assets/page-approval-service-BVBSKskj.js +0 -1
  124. package/dist/ui/assets/provider-store-access-CruwM-j5.js +0 -1
  125. package/dist/ui/assets/proxied-fetch-DC4o4pmp.js +0 -2
  126. package/dist/ui/assets/request-body-DJomJP6T.js +0 -1
  127. package/dist/ui/assets/rest-ops-PnqziEjh.js +0 -1
  128. package/dist/ui/assets/secret-topology-CVgFEYzE.js +0 -1
  129. package/dist/ui/assets/setup-sudo-CYrdyJH7.js +0 -2
  130. package/dist/ui/assets/slicc-version-3d67O-JT.js +0 -1
  131. package/dist/ui/assets/sudo-CteiAvdB.js +0 -5
  132. package/dist/ui/assets/tray-leader-CqidEcFq.js +0 -1
  133. package/dist/ui/assets/types-Db38aZfh.js +0 -1
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/provider-settings-BNDUj_a2.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/account-store-QAWTf9es.js","assets/preload-helper-Czpn1I53.js","assets/claude-model-version-BJLrDjmH.js","assets/models-BSkXF4T6.js","assets/diagnostics-DN_idNHx.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-B-zmcypy.js","assets/libesm-BypnjKEL.js","assets/logger-DDBAeTLF.js","assets/src-CAWTvdAa.js","assets/proxied-fetch-DC4o4pmp.js","assets/base64-DJRlyqZu.js","assets/fetch-body-D2PwksUW.js","assets/api-endpoint-CWeRbcY3.js","assets/runtime-env-Dlaokqg1.js","assets/float-topology-B1E_mH1v.js","assets/runtime-env-E-i2SW1s.js","assets/secret-topology-CVgFEYzE.js","assets/secrets-bridge-client-BCv_YZhX.js","assets/port-bridge-client-CVZpTSrA.js","assets/image-markers-CxJ9ZBgw.js","assets/tool-ui-eSQ1g2I1.js","assets/providers-CMdt7NIp.js","assets/panel-rpc-B3MSVImO.js","assets/bedrock-camp-compat-CgBMwna8.js","assets/tray-runtime-config-D-kNf-DT.js","assets/messages-BD4p8GuF.js","assets/telemetry-BVzuNdvW.js","assets/runtime-env-CgsZ7LTp.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-DzKLh6wd.js","assets/feature-flags-DaSRRz0w.js","assets/theme-engine-By4GU_Wc.js","assets/theme-CXRqxpw6.js","assets/discovery-preference-rzSxl6g3.js","assets/timestamp-preference-sKwBl5I8.js","assets/legacy-styles-B3nS5QUo.js","assets/sync-dialog-Dc1-z8ys.js","assets/icons-BJsliYCh.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{l as n,t as r}from"./tray-runtime-config-D-kNf-DT.js";import"./runtime-env-CgsZ7LTp.js";import{r as i}from"./feature-flags-DaSRRz0w.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{r as c}from"./tray-leader-CqidEcFq.js";import{o as l}from"./record-DOq72weu.js";import{a as u}from"./wc-unit-context-DOZ0CCmn.js";import{l as d,n as f,r as p,u as m}from"./host-command-C3f7bKlE.js";function h(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 g(e){return e.flatMap(e=>e.models.map(t=>({name:t.name??t.id,provider:e.providerName,id:`${e.providerId}:${t.id}`})))}function _(e,t,n){try{let r=t();e.setAttribute(`model`,r.name??r.id),n&&(e.selectedModelId=n())}catch{}}function v(e,t){let n=[{id:`settings`,label:`Account settings…`,icon:`settings`},{id:`theme`,label:`Theme settings…`,icon:`palette`},...t?[{id:`shortcuts`,label:`Keyboard mode`,icon:`keyboard`}]:[],{id:`export-transcript`,label:`Export transcript`,icon:`download`,disabled:e||void 0}];return i(`experimental-settings`)&&n.push({id:`experimental-settings`,label:`Experimental features…`,icon:`flask-conical`}),n}function y(e,t){return()=>{e.models=g(t()),m()}}function b(e,t,n){return()=>_(e,t,()=>{let e=t();return`${n()}:${e.id}`})}function x(e,t,n){return()=>{let r=h(t()),i=e.avatarMenu.querySelector(`slicc-avatar`),a=e.inputCard.querySelector(`slicc-send-button`);if(r){i?.removeAttribute(`initials`),i?.setAttribute(`name`,r.name),r.avatarUrl&&(i?.setAttribute(`src`,r.avatarUrl),a?.setAttribute(`src`,r.avatarUrl)),e.avatarMenu.user={name:r.name,provider:r.provider};return}i?.removeAttribute(`name`),i?.removeAttribute(`src`),i?.removeAttribute(`initials`),a?.removeAttribute(`src`),e.avatarMenu.user={name:`SLICC`,provider:n?`extension`:`standalone`}}}async function S(n){let{refs:r,client:i,log:o,onExportTranscript:l}=n,{getAllAvailableModels:u,getAccounts:d,getSelectedProvider:f,resolveCurrentModel:p}=await e(async()=>{let{getAllAvailableModels:e,getAccounts:t,getSelectedProvider:n,resolveCurrentModel:r}=await import(`./provider-settings-BNDUj_a2.js`).then(e=>e.t);return{getAllAvailableModels:e,getAccounts:t,getSelectedProvider:n,resolveCurrentModel:r}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34])),m=y(r.composerMeta,u),h=b(r.composerMeta,p,f);m();let g=null;await N(r,i,n.workUnits,()=>{let e=g;g=null,e!=null&&r.thread?.dispatchEvent(new CustomEvent(`slicc-error-retry`,{detail:{messageId:e},bubbles:!0,composed:!0}))});let _=t(),S=x(r,d,_);S();let O=()=>{if(_)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},P=new URLSearchParams(window.location.search).has(`detached`),I=()=>_&&!P?[{id:`popout`,label:`Pop out into a tab`,icon:`external-link`}]:[],L=!1,R=()=>{r.avatarMenu.items=[...v(L,!!n.shortcuts),...I(),...O()]};R(),r.avatarMenu.addEventListener(`slicc-avatar-menu-toggle`,e=>{e.detail?.open&&R()});let z=C(o,m,S,()=>i.updateModel());n.shortcuts?.setAction(`accounts`,z);let B=w(o,T(n)),V=E(o);D(r,o),r.avatarMenu.addEventListener(`slicc-avatar-action`,t=>{let r=t.detail?.id;if(r&&k(r,o)){R();return}if(r===`popout`){e(async()=>{let{requestDetachedPopout:e}=await import(`./wc-detached-B3WCbbZT.js`);return{requestDetachedPopout:e}},__vite__mapDeps([35,29])).then(({requestDetachedPopout:e})=>e()).catch(e=>o.error(`detached popout request failed`,e));return}r===`shortcuts`&&n.shortcuts?.showHelp(),r===`settings`&&z(),r===`theme`&&B(),r===`experimental-settings`&&V(),r===`export-transcript`&&l&&(L=!0,R(),l().finally(()=>{L=!1,R()}))}),r.composerMeta.addEventListener(`add-ai`,z),A(r,z),j({refs:r,log:o,openSettings:z,setPendingReplayMessageId:e=>{g=e}}),await M({refs:r,log:o,openSettings:z,refreshModels:m,applyIdentity:S,client:i}),await F({refreshModels:m,refreshModelPill:h,applyIdentity:S,client:i})}function C(t,n,r,i){return()=>{e(async()=>{let{showWcSettings:e}=await import(`./wc-settings-DzKLh6wd.js`);return{showWcSettings:e}},__vite__mapDeps([36,3,37,38,1,11,39,40,13,14,12,15,16,17,41])).then(({showWcSettings:e})=>e(t)).then(()=>{n(),r(),i()}).catch(e=>t.error(`WC settings dialog failed`,e))}}function w(t,n){return()=>{e(async()=>{let{showThemeSettings:e}=await import(`./wc-settings-DzKLh6wd.js`);return{showThemeSettings:e}},__vite__mapDeps([36,3,37,38,1,11,39,40,13,14,12,15,16,17,41])).then(({showThemeSettings:e})=>e(t,n?{getTrigger:n.getTrigger,setTrigger:n.setTrigger,persistTrigger:n.persistTrigger}:void 0)).catch(e=>t.error(`Theme settings dialog failed`,e))}}function T(e){let t=e.shortcuts;if(t)return{getTrigger:()=>t.trigger(),setTrigger:e=>t.setTrigger(e),persistTrigger:e.persistKeyboardTrigger}}function E(t){return()=>{e(async()=>{let{showExperimentalSettings:e}=await import(`./wc-settings-DzKLh6wd.js`);return{showExperimentalSettings:e}},__vite__mapDeps([36,3,37,38,1,11,39,40,13,14,12,15,16,17,41])).then(({showExperimentalSettings:e})=>e(t)).catch(e=>t.error(`Experimental settings dialog failed`,e))}}function D(e,t){e.floatbar.addEventListener(`slicc-followers-click`,()=>{O(t,{copy:!1,initialTab:`status`})})}function O(t,n){let r=c().session?.joinUrl;r&&(n.copy&&o(r).catch(()=>void 0),e(async()=>{let{loadLegacyDialogStyles:e}=await import(`./legacy-styles-B3nS5QUo.js`);return{loadLegacyDialogStyles:e}},__vite__mapDeps([42,3])).then(({loadLegacyDialogStyles:e})=>e()).then(async()=>{let{showSyncEnabledDialog:t}=await e(async()=>{let{showSyncEnabledDialog:e}=await import(`./sync-dialog-Dc1-z8ys.js`);return{showSyncEnabledDialog:e}},__vite__mapDeps([43,12,33,1,44,45]));t({joinUrl:r,copied:n.copy,initialTab:n.initialTab,followers:f(),onReset:p()??null})}).catch(e=>t.error(`sync dialog failed`,e)))}function k(e,t){return e===`tray-enable`?(n({locationHref:window.location.href,storage:window.localStorage,envBaseUrl:null,defaultWorkerBaseUrl:r}).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`?(O(t,{copy:!0}),!0):e===`tray-stop`&&(window.dispatchEvent(new CustomEvent(`slicc:tray-leave`,{detail:{workerBaseUrl:null}})),!0)}function A(e,t){e.thread?.addEventListener(`slicc-error-open-settings`,t),window.addEventListener(`slicc:open-settings-from-panel`,()=>t())}function j(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 M(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-BNDUj_a2.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,33,34]));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 N(t,n,r,i){let{resolveModelById:a,resolveCurrentModel:o,setSelectedModelId:s}=await e(async()=>{let{resolveModelById:e,resolveCurrentModel:t,setSelectedModelId:n}=await import(`./provider-settings-BNDUj_a2.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,33,34])),c=e=>{let t=e.indexOf(`:`);return t>0?e.slice(t+1):e},l=e=>{try{let n=e?a(c(e)):o();t.composerMeta.toggleAttribute(`no-thinking`,n.reasoning!==!0)}catch{}};l(),t.composerMeta.addEventListener(`model-change`,e=>{let t=e.detail,a=t?.id;a&&t?.source!==`follower`&&(s(a),l(a),P(n,r,a),i?.())})}async function P(e,t,n,r=d){let i=l(n);if(!i)return!1;let a=e.selectedScoopJid,o=a?e.getScoop(a)??null:null,s=u(e.getScoops(),o);if(!s)return!1;let c=await t.setModel(s.jid,i);return c&&r(),c===!0}async function F(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-BNDUj_a2.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,33,34]));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{S as wireWcNav};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/provider-settings-jCx4Vxo4.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/account-store-DHbYljA2.js","assets/preload-helper-Czpn1I53.js","assets/claude-model-version-BJLrDjmH.js","assets/models-BSkXF4T6.js","assets/diagnostics-DN_idNHx.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-B-zmcypy.js","assets/libesm-BypnjKEL.js","assets/logger-DDBAeTLF.js","assets/src-CAWTvdAa.js","assets/proxied-fetch-DuC82T1c.js","assets/base64-DJRlyqZu.js","assets/fetch-body-D2PwksUW.js","assets/api-endpoint-CWeRbcY3.js","assets/runtime-env-Dlaokqg1.js","assets/float-topology-D_ESvEeq.js","assets/runtime-env-E-i2SW1s.js","assets/secret-topology-D5sJYeG9.js","assets/secrets-bridge-client-aihv9k6e.js","assets/port-bridge-client-DX2fz9_b.js","assets/image-markers-CxJ9ZBgw.js","assets/tool-ui-eSQ1g2I1.js","assets/providers-Ca2x4vLj.js","assets/panel-rpc-B3MSVImO.js","assets/bedrock-camp-compat-CgBMwna8.js","assets/tray-runtime-config-GI-8c29v.js","assets/messages-BD4p8GuF.js","assets/telemetry-BVzuNdvW.js","assets/runtime-env-CgsZ7LTp.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-Brf082oj.js","assets/feature-flags-DaSRRz0w.js","assets/theme-engine-By4GU_Wc.js","assets/theme-CXRqxpw6.js","assets/discovery-preference-CiKcjd83.js","assets/timestamp-preference-sKwBl5I8.js","assets/legacy-styles-B3nS5QUo.js","assets/sync-dialog-Dc1-z8ys.js","assets/icons-BJsliYCh.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{l as n,t as r}from"./tray-runtime-config-GI-8c29v.js";import"./runtime-env-CgsZ7LTp.js";import{r as i}from"./feature-flags-DaSRRz0w.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{r as c}from"./tray-leader-C4W6t_QT.js";import{o as l}from"./record-DOq72weu.js";import{a as u}from"./wc-unit-context-DOZ0CCmn.js";import{l as d,n as f,r as p,u as m}from"./host-command-D0p9e1GO.js";function h(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 g(e){return e.flatMap(e=>e.models.map(t=>({name:t.name??t.id,provider:e.providerName,id:`${e.providerId}:${t.id}`})))}function _(e,t,n){try{let r=t();e.setAttribute(`model`,r.name??r.id),n&&(e.selectedModelId=n())}catch{}}function v(e,t){let n=[{id:`settings`,label:`Account settings…`,icon:`settings`},{id:`theme`,label:`Theme settings…`,icon:`palette`},...t?[{id:`shortcuts`,label:`Keyboard mode`,icon:`keyboard`}]:[],{id:`export-transcript`,label:`Export transcript`,icon:`download`,disabled:e||void 0}];return i(`experimental-settings`)&&n.push({id:`experimental-settings`,label:`Experimental features…`,icon:`flask-conical`}),n}function y(e,t){return()=>{e.models=g(t()),m()}}function b(e,t,n){return()=>_(e,t,()=>{let e=t();return`${n()}:${e.id}`})}function x(e,t,n){return()=>{let r=h(t()),i=e.avatarMenu.querySelector(`slicc-avatar`),a=e.inputCard.querySelector(`slicc-send-button`);if(r){i?.removeAttribute(`initials`),i?.setAttribute(`name`,r.name),r.avatarUrl&&(i?.setAttribute(`src`,r.avatarUrl),a?.setAttribute(`src`,r.avatarUrl)),e.avatarMenu.user={name:r.name,provider:r.provider};return}i?.removeAttribute(`name`),i?.removeAttribute(`src`),i?.removeAttribute(`initials`),a?.removeAttribute(`src`),e.avatarMenu.user={name:`SLICC`,provider:n?`extension`:`standalone`}}}async function S(n){let{refs:r,client:i,log:o,onExportTranscript:l}=n,{getAllAvailableModels:u,getAccounts:d,getSelectedProvider:f,resolveCurrentModel:p}=await e(async()=>{let{getAllAvailableModels:e,getAccounts:t,getSelectedProvider:n,resolveCurrentModel:r}=await import(`./provider-settings-jCx4Vxo4.js`).then(e=>e.t);return{getAllAvailableModels:e,getAccounts:t,getSelectedProvider:n,resolveCurrentModel:r}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34])),m=y(r.composerMeta,u),h=b(r.composerMeta,p,f);m();let g=null;await N(r,i,n.workUnits,()=>{let e=g;g=null,e!=null&&r.thread?.dispatchEvent(new CustomEvent(`slicc-error-retry`,{detail:{messageId:e},bubbles:!0,composed:!0}))});let _=t(),S=x(r,d,_);S();let O=()=>{if(_)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},P=new URLSearchParams(window.location.search).has(`detached`),I=()=>_&&!P?[{id:`popout`,label:`Pop out into a tab`,icon:`external-link`}]:[],L=!1,R=()=>{r.avatarMenu.items=[...v(L,!!n.shortcuts),...I(),...O()]};R(),r.avatarMenu.addEventListener(`slicc-avatar-menu-toggle`,e=>{e.detail?.open&&R()});let z=C(o,m,S,()=>i.updateModel());n.shortcuts?.setAction(`accounts`,z);let B=w(o,T(n)),V=E(o);D(r,o),r.avatarMenu.addEventListener(`slicc-avatar-action`,t=>{let r=t.detail?.id;if(r&&k(r,o)){R();return}if(r===`popout`){e(async()=>{let{requestDetachedPopout:e}=await import(`./wc-detached-B3WCbbZT.js`);return{requestDetachedPopout:e}},__vite__mapDeps([35,29])).then(({requestDetachedPopout:e})=>e()).catch(e=>o.error(`detached popout request failed`,e));return}r===`shortcuts`&&n.shortcuts?.showHelp(),r===`settings`&&z(),r===`theme`&&B(),r===`experimental-settings`&&V(),r===`export-transcript`&&l&&(L=!0,R(),l().finally(()=>{L=!1,R()}))}),r.composerMeta.addEventListener(`add-ai`,z),A(r,z),j({refs:r,log:o,openSettings:z,setPendingReplayMessageId:e=>{g=e}}),await M({refs:r,log:o,openSettings:z,refreshModels:m,applyIdentity:S,client:i}),await F({refreshModels:m,refreshModelPill:h,applyIdentity:S,client:i})}function C(t,n,r,i){return()=>{e(async()=>{let{showWcSettings:e}=await import(`./wc-settings-Brf082oj.js`);return{showWcSettings:e}},__vite__mapDeps([36,3,37,38,1,11,39,40,13,14,12,15,16,17,41])).then(({showWcSettings:e})=>e(t)).then(()=>{n(),r(),i()}).catch(e=>t.error(`WC settings dialog failed`,e))}}function w(t,n){return()=>{e(async()=>{let{showThemeSettings:e}=await import(`./wc-settings-Brf082oj.js`);return{showThemeSettings:e}},__vite__mapDeps([36,3,37,38,1,11,39,40,13,14,12,15,16,17,41])).then(({showThemeSettings:e})=>e(t,n?{getTrigger:n.getTrigger,setTrigger:n.setTrigger,persistTrigger:n.persistTrigger}:void 0)).catch(e=>t.error(`Theme settings dialog failed`,e))}}function T(e){let t=e.shortcuts;if(t)return{getTrigger:()=>t.trigger(),setTrigger:e=>t.setTrigger(e),persistTrigger:e.persistKeyboardTrigger}}function E(t){return()=>{e(async()=>{let{showExperimentalSettings:e}=await import(`./wc-settings-Brf082oj.js`);return{showExperimentalSettings:e}},__vite__mapDeps([36,3,37,38,1,11,39,40,13,14,12,15,16,17,41])).then(({showExperimentalSettings:e})=>e(t)).catch(e=>t.error(`Experimental settings dialog failed`,e))}}function D(e,t){e.floatbar.addEventListener(`slicc-followers-click`,()=>{O(t,{copy:!1,initialTab:`status`})})}function O(t,n){let r=c().session?.joinUrl;r&&(n.copy&&o(r).catch(()=>void 0),e(async()=>{let{loadLegacyDialogStyles:e}=await import(`./legacy-styles-B3nS5QUo.js`);return{loadLegacyDialogStyles:e}},__vite__mapDeps([42,3])).then(({loadLegacyDialogStyles:e})=>e()).then(async()=>{let{showSyncEnabledDialog:t}=await e(async()=>{let{showSyncEnabledDialog:e}=await import(`./sync-dialog-Dc1-z8ys.js`);return{showSyncEnabledDialog:e}},__vite__mapDeps([43,12,33,1,44,45]));t({joinUrl:r,copied:n.copy,initialTab:n.initialTab,followers:f(),onReset:p()??null})}).catch(e=>t.error(`sync dialog failed`,e)))}function k(e,t){return e===`tray-enable`?(n({locationHref:window.location.href,storage:window.localStorage,envBaseUrl:null,defaultWorkerBaseUrl:r}).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`?(O(t,{copy:!0}),!0):e===`tray-stop`&&(window.dispatchEvent(new CustomEvent(`slicc:tray-leave`,{detail:{workerBaseUrl:null}})),!0)}function A(e,t){e.thread?.addEventListener(`slicc-error-open-settings`,t),window.addEventListener(`slicc:open-settings-from-panel`,()=>t())}function j(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 M(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-jCx4Vxo4.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,33,34]));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 N(t,n,r,i){let{resolveModelById:a,resolveCurrentModel:o,setSelectedModelId:s}=await e(async()=>{let{resolveModelById:e,resolveCurrentModel:t,setSelectedModelId:n}=await import(`./provider-settings-jCx4Vxo4.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,33,34])),c=e=>{let t=e.indexOf(`:`);return t>0?e.slice(t+1):e},l=e=>{try{let n=e?a(c(e)):o();t.composerMeta.toggleAttribute(`no-thinking`,n.reasoning!==!0)}catch{}};l(),t.composerMeta.addEventListener(`model-change`,e=>{let t=e.detail,a=t?.id;a&&t?.source!==`follower`&&(s(a),l(a),P(n,r,a),i?.())})}async function P(e,t,n,r=d){let i=l(n);if(!i)return!1;let a=e.selectedScoopJid,o=a?e.getScoop(a)??null:null,s=u(e.getScoops(),o);if(!s)return!1;let c=await t.setModel(s.jid,i);return c&&r(),c===!0}async function F(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-jCx4Vxo4.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,33,34]));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{S as wireWcNav};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/onboarding-orchestrator-DMRkkEry.js","assets/logger-DDBAeTLF.js","assets/welcome-detection-Ddf03FcG.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/record-DOq72weu.js","assets/oauth-service-BJMc4Gsx.js","assets/preload-helper-Czpn1I53.js","assets/proxied-fetch-DC4o4pmp.js","assets/base64-DJRlyqZu.js","assets/src-CAWTvdAa.js","assets/fetch-body-D2PwksUW.js","assets/api-endpoint-CWeRbcY3.js","assets/runtime-env-Dlaokqg1.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-BNDUj_a2.js","assets/account-store-QAWTf9es.js","assets/claude-model-version-BJLrDjmH.js","assets/models-BSkXF4T6.js","assets/diagnostics-DN_idNHx.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-B-zmcypy.js","assets/libesm-BypnjKEL.js","assets/float-topology-B1E_mH1v.js","assets/secret-topology-CVgFEYzE.js","assets/secrets-bridge-client-BCv_YZhX.js","assets/port-bridge-client-CVZpTSrA.js","assets/image-markers-CxJ9ZBgw.js","assets/tool-ui-eSQ1g2I1.js","assets/providers-CMdt7NIp.js","assets/bedrock-camp-compat-CgBMwna8.js","assets/tray-runtime-config-D-kNf-DT.js","assets/messages-BD4p8GuF.js","assets/telemetry-BVzuNdvW.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{o as t}from"./tray-runtime-config-D-kNf-DT.js";import{t as n}from"./welcome-detection-Ddf03FcG.js";import{t as r}from"./dip-CwdsfUhQ.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-DMRkkEry.js`);return{OnboardingOrchestrator:e}},__vite__mapDeps([0,1,2,3,4])),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-BJMc4Gsx.js`);return{createInterceptingOAuthLauncherForCurrentRuntime:e}},__vite__mapDeps([5,6,7,3,8,9,10,11,12,13,14,15,16])),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-BJMc4Gsx.js`);return{createOAuthLauncher:e}},__vite__mapDeps([5,6,7,3,8,9,10,11,12,13,14,15,16])),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-Ddf03FcG.js`).then(e=>e.r);return{hasOnboardingFinalLickInHistory:e}},__vite__mapDeps([2,3,1,4]));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-BNDUj_a2.js`).then(e=>e.t);return{getSelectedModelId:e,getProviderConfig:t,getProviderModels:n}},__vite__mapDeps([17,3,18,6,19,20,21,22,23,24,25,1,9,7,8,10,11,12,26,14,27,28,29,30,31,32,15,33,34,35,36,13,37,38,39])),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-BNDUj_a2.js`).then(e=>e.t),__vite__mapDeps([17,3,18,6,19,20,21,22,23,24,25,1,9,7,8,10,11,12,26,14,27,28,29,30,31,32,15,33,34,35,36,13,37,38,39])),{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-DMRkkEry.js","assets/logger-DDBAeTLF.js","assets/welcome-detection-Ddf03FcG.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/record-DOq72weu.js","assets/oauth-service-BQ9OoA-h.js","assets/preload-helper-Czpn1I53.js","assets/proxied-fetch-DuC82T1c.js","assets/base64-DJRlyqZu.js","assets/src-CAWTvdAa.js","assets/fetch-body-D2PwksUW.js","assets/api-endpoint-CWeRbcY3.js","assets/runtime-env-Dlaokqg1.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-jCx4Vxo4.js","assets/account-store-DHbYljA2.js","assets/claude-model-version-BJLrDjmH.js","assets/models-BSkXF4T6.js","assets/diagnostics-DN_idNHx.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-B-zmcypy.js","assets/libesm-BypnjKEL.js","assets/float-topology-D_ESvEeq.js","assets/secret-topology-D5sJYeG9.js","assets/secrets-bridge-client-aihv9k6e.js","assets/port-bridge-client-DX2fz9_b.js","assets/image-markers-CxJ9ZBgw.js","assets/tool-ui-eSQ1g2I1.js","assets/providers-Ca2x4vLj.js","assets/bedrock-camp-compat-CgBMwna8.js","assets/tray-runtime-config-GI-8c29v.js","assets/messages-BD4p8GuF.js","assets/telemetry-BVzuNdvW.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{o as t}from"./tray-runtime-config-GI-8c29v.js";import{t as n}from"./welcome-detection-Ddf03FcG.js";import{t as r}from"./dip-CwdsfUhQ.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-DMRkkEry.js`);return{OnboardingOrchestrator:e}},__vite__mapDeps([0,1,2,3,4])),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-BQ9OoA-h.js`);return{createInterceptingOAuthLauncherForCurrentRuntime:e}},__vite__mapDeps([5,6,7,3,8,9,10,11,12,13,14,15,16])),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-BQ9OoA-h.js`);return{createOAuthLauncher:e}},__vite__mapDeps([5,6,7,3,8,9,10,11,12,13,14,15,16])),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-Ddf03FcG.js`).then(e=>e.r);return{hasOnboardingFinalLickInHistory:e}},__vite__mapDeps([2,3,1,4]));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-jCx4Vxo4.js`).then(e=>e.t);return{getSelectedModelId:e,getProviderConfig:t,getProviderModels:n}},__vite__mapDeps([17,3,18,6,19,20,21,22,23,24,25,1,9,7,8,10,11,12,26,14,27,28,29,30,31,32,15,33,34,35,36,13,37,38,39])),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-jCx4Vxo4.js`).then(e=>e.t),__vite__mapDeps([17,3,18,6,19,20,21,22,23,24,25,1,9,7,8,10,11,12,26,14,27,28,29,30,31,32,15,33,34,35,36,13,37,38,39])),{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-u8uic8QB.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/account-store-QAWTf9es.js","assets/preload-helper-Czpn1I53.js","assets/claude-model-version-BJLrDjmH.js","assets/models-BSkXF4T6.js","assets/diagnostics-DN_idNHx.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-B-zmcypy.js","assets/libesm-BypnjKEL.js","assets/logger-DDBAeTLF.js","assets/src-CAWTvdAa.js","assets/proxied-fetch-DC4o4pmp.js","assets/base64-DJRlyqZu.js","assets/fetch-body-D2PwksUW.js","assets/api-endpoint-CWeRbcY3.js","assets/runtime-env-Dlaokqg1.js","assets/float-topology-B1E_mH1v.js","assets/runtime-env-E-i2SW1s.js","assets/secret-topology-CVgFEYzE.js","assets/secrets-bridge-client-BCv_YZhX.js","assets/port-bridge-client-CVZpTSrA.js","assets/image-markers-CxJ9ZBgw.js","assets/tool-ui-eSQ1g2I1.js","assets/providers-CMdt7NIp.js","assets/panel-rpc-B3MSVImO.js","assets/bedrock-camp-compat-CgBMwna8.js","assets/llm-session-id-bZQs6gBN.js","assets/icons-BJsliYCh.js"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/quick-llm-kUXqAL2W.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/account-store-DHbYljA2.js","assets/preload-helper-Czpn1I53.js","assets/claude-model-version-BJLrDjmH.js","assets/models-BSkXF4T6.js","assets/diagnostics-DN_idNHx.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-B-zmcypy.js","assets/libesm-BypnjKEL.js","assets/logger-DDBAeTLF.js","assets/src-CAWTvdAa.js","assets/proxied-fetch-DuC82T1c.js","assets/base64-DJRlyqZu.js","assets/fetch-body-D2PwksUW.js","assets/api-endpoint-CWeRbcY3.js","assets/runtime-env-Dlaokqg1.js","assets/float-topology-D_ESvEeq.js","assets/runtime-env-E-i2SW1s.js","assets/secret-topology-D5sJYeG9.js","assets/secrets-bridge-client-aihv9k6e.js","assets/port-bridge-client-DX2fz9_b.js","assets/image-markers-CxJ9ZBgw.js","assets/tool-ui-eSQ1g2I1.js","assets/providers-Ca2x4vLj.js","assets/panel-rpc-B3MSVImO.js","assets/bedrock-camp-compat-CgBMwna8.js","assets/llm-session-id-bZQs6gBN.js","assets/icons-BJsliYCh.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-u8uic8QB.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,28,29]))).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};
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-kUXqAL2W.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,28,29]))).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,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/oauth-service-BJMc4Gsx.js","assets/preload-helper-Czpn1I53.js","assets/proxied-fetch-DC4o4pmp.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/base64-DJRlyqZu.js","assets/src-CAWTvdAa.js","assets/fetch-body-D2PwksUW.js","assets/api-endpoint-CWeRbcY3.js","assets/runtime-env-Dlaokqg1.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-BNDUj_a2.js","assets/account-store-QAWTf9es.js","assets/claude-model-version-BJLrDjmH.js","assets/models-BSkXF4T6.js","assets/diagnostics-DN_idNHx.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-B-zmcypy.js","assets/libesm-BypnjKEL.js","assets/logger-DDBAeTLF.js","assets/float-topology-B1E_mH1v.js","assets/secret-topology-CVgFEYzE.js","assets/secrets-bridge-client-BCv_YZhX.js","assets/port-bridge-client-CVZpTSrA.js","assets/image-markers-CxJ9ZBgw.js","assets/tool-ui-eSQ1g2I1.js","assets/providers-CMdt7NIp.js","assets/bedrock-camp-compat-CgBMwna8.js","assets/tray-runtime-config-D-kNf-DT.js","assets/messages-BD4p8GuF.js","assets/telemetry-BVzuNdvW.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{a as t,i as n,r}from"./feature-flags-DaSRRz0w.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-rzSxl6g3.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=`
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/oauth-service-BQ9OoA-h.js","assets/preload-helper-Czpn1I53.js","assets/proxied-fetch-DuC82T1c.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/base64-DJRlyqZu.js","assets/src-CAWTvdAa.js","assets/fetch-body-D2PwksUW.js","assets/api-endpoint-CWeRbcY3.js","assets/runtime-env-Dlaokqg1.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-jCx4Vxo4.js","assets/account-store-DHbYljA2.js","assets/claude-model-version-BJLrDjmH.js","assets/models-BSkXF4T6.js","assets/diagnostics-DN_idNHx.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-B-zmcypy.js","assets/libesm-BypnjKEL.js","assets/logger-DDBAeTLF.js","assets/float-topology-D_ESvEeq.js","assets/secret-topology-D5sJYeG9.js","assets/secrets-bridge-client-aihv9k6e.js","assets/port-bridge-client-DX2fz9_b.js","assets/image-markers-CxJ9ZBgw.js","assets/tool-ui-eSQ1g2I1.js","assets/providers-Ca2x4vLj.js","assets/bedrock-camp-compat-CgBMwna8.js","assets/tray-runtime-config-GI-8c29v.js","assets/messages-BD4p8GuF.js","assets/telemetry-BVzuNdvW.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{a as t,i as n,r}from"./feature-flags-DaSRRz0w.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-CiKcjd83.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. */
5
5
  slicc-dialog.wcset-dialog::part(dialog){width:min(520px,92vw);}
@@ -56,4 +56,4 @@ slicc-dialog.wcset-dialog::part(dialog){width:min(520px,92vw);}
56
56
  .wcset__radio-row__body{flex:1;min-width:0;}
57
57
  .wcset__radio-row__title{font-size:12.5px;font-weight:600;}
58
58
  .wcset__radio-row__detail{font-size:11px;color:var(--txt-3);margin-top:2px;line-height:1.4;}
59
- `;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-BJMc4Gsx.js`);return{createInterceptingOAuthLauncherForCurrentRuntime:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12])),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-BJMc4Gsx.js`);return{createOAuthLauncher:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12]));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,t,n){let r=w(`wcset__add`);r.append(w(`wcset__section-label`,`Keyboard mode`));let i=w(`wcset__radio-list`),a=[{value:`auto`,title:`Auto`,detail:`On whenever you are not typing — click outside the composer to command.`},{value:`esc`,title:`Esc`,detail:`Press Esc to enter. Blurring the composer does not turn it on.`},{value:null,title:`Off`,detail:`Keyboard mode disabled. Shortcuts stay unavailable until you pick Auto or Esc.`}],o=e.getTrigger();for(let r of a){let a=document.createElement(`label`);a.className=`wcset__radio-row`;let s=document.createElement(`input`);s.type=`radio`,s.name=`wcset-keyboard-trigger`,s.value=r.value===null?`off`:r.value,s.checked=o===r.value,s.addEventListener(`change`,()=>{if(!s.checked)return;let i=r.value;e.setTrigger(i),t(`Saved.`),e.persistTrigger?.(i).catch(e=>{n.error(`Could not persist keyboard trigger`,e),t(`Applied for this session; could not write /etc/slicc/keys.json.`,!0)})});let c=w(`wcset__radio-row__body`);c.append(w(`wcset__radio-row__title`,r.title),w(`wcset__radio-row__detail`,r.detail)),a.append(s,c),i.append(a)}return r.append(i),r}function P(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 F(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=F(e);n.replaceChild(r,t)}function y(t){_.replaceChildren(H(t,e,v))}return t}function I(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 L(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 R(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 z(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 B(e){return{userBubble:{background:e.bubbleBg,text:e.bubbleText},nav:{background:e.navBg},composer:{background:e.composerBg}}}function V(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 H(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=V(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:B(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(R(a,e=>{a=e,S(),x()}));let T={disabled:l};for(let e of L(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 I(f,a,_,x))r.append(e);r.append(z(()=>{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:B(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 U(t){let n=await e(()=>import(`./provider-settings-BNDUj_a2.js`).then(e=>e.t),__vite__mapDeps([13,3,14,1,15,16,17,18,19,20,21,22,5,2,4,6,7,8,23,10,24,25,26,27,28,29,11,30,31,32,33,9,34,35,36]));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 W(e,t){return C(document),i(`__preview`),new Promise(n=>{let r=document.createElement(`slicc-dialog`);r.classList.add(`wcset-dialog`),r.setAttribute(`heading`,`Theme`);let o=w(`wcset`),l=w(`wcset__status`),u=(e,t=!1)=>{l.textContent=e,l.toggleAttribute(`data-error`,t)},d=F({ps:null,log:e,setStatus:u,renderList:()=>{}}),f=j(),p=M();o.append(d,f,p),t&&o.append(N(t,u,e)),o.append(l),r.append(o);let m=T(`wcset__btn wcset__btn--primary`,`Done`,()=>{r.hide?.()});m.setAttribute(`slot`,`footer`),r.append(m);let g=a();r.addEventListener(`slicc-dialog-close`,()=>{a()===`__preview`&&(i(`__preview`),g&&g!==`__preview`?s(g):c(),h()),r.remove(),n()}),document.body.append(r),r.show?.()})}async function G(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(P({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{G as showExperimentalSettings,W as showThemeSettings,U as showWcSettings};
59
+ `;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-BQ9OoA-h.js`);return{createInterceptingOAuthLauncherForCurrentRuntime:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12])),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-BQ9OoA-h.js`);return{createOAuthLauncher:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12]));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,t,n){let r=w(`wcset__add`);r.append(w(`wcset__section-label`,`Keyboard mode`));let i=w(`wcset__radio-list`),a=[{value:`auto`,title:`Auto`,detail:`On whenever you are not typing — click outside the composer to command.`},{value:`esc`,title:`Esc`,detail:`Press Esc to enter. Blurring the composer does not turn it on.`},{value:null,title:`Off`,detail:`Keyboard mode disabled. Shortcuts stay unavailable until you pick Auto or Esc.`}],o=e.getTrigger();for(let r of a){let a=document.createElement(`label`);a.className=`wcset__radio-row`;let s=document.createElement(`input`);s.type=`radio`,s.name=`wcset-keyboard-trigger`,s.value=r.value===null?`off`:r.value,s.checked=o===r.value,s.addEventListener(`change`,()=>{if(!s.checked)return;let i=r.value;e.setTrigger(i),t(`Saved.`),e.persistTrigger?.(i).catch(e=>{n.error(`Could not persist keyboard trigger`,e),t(`Applied for this session; could not write /etc/slicc/keys.json.`,!0)})});let c=w(`wcset__radio-row__body`);c.append(w(`wcset__radio-row__title`,r.title),w(`wcset__radio-row__detail`,r.detail)),a.append(s,c),i.append(a)}return r.append(i),r}function P(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 F(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=F(e);n.replaceChild(r,t)}function y(t){_.replaceChildren(H(t,e,v))}return t}function I(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 L(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 R(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 z(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 B(e){return{userBubble:{background:e.bubbleBg,text:e.bubbleText},nav:{background:e.navBg},composer:{background:e.composerBg}}}function V(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 H(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=V(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:B(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(R(a,e=>{a=e,S(),x()}));let T={disabled:l};for(let e of L(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 I(f,a,_,x))r.append(e);r.append(z(()=>{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:B(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 U(t){let n=await e(()=>import(`./provider-settings-jCx4Vxo4.js`).then(e=>e.t),__vite__mapDeps([13,3,14,1,15,16,17,18,19,20,21,22,5,2,4,6,7,8,23,10,24,25,26,27,28,29,11,30,31,32,33,9,34,35,36]));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 W(e,t){return C(document),i(`__preview`),new Promise(n=>{let r=document.createElement(`slicc-dialog`);r.classList.add(`wcset-dialog`),r.setAttribute(`heading`,`Theme`);let o=w(`wcset`),l=w(`wcset__status`),u=(e,t=!1)=>{l.textContent=e,l.toggleAttribute(`data-error`,t)},d=F({ps:null,log:e,setStatus:u,renderList:()=>{}}),f=j(),p=M();o.append(d,f,p),t&&o.append(N(t,u,e)),o.append(l),r.append(o);let m=T(`wcset__btn wcset__btn--primary`,`Done`,()=>{r.hide?.()});m.setAttribute(`slot`,`footer`),r.append(m);let g=a();r.addEventListener(`slicc-dialog-close`,()=>{a()===`__preview`&&(i(`__preview`),g&&g!==`__preview`?s(g):c(),h()),r.remove(),n()}),document.body.append(r),r.show?.()})}async function G(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(P({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{G as showExperimentalSettings,W as showThemeSettings,U as showWcSettings};
@@ -1,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/quick-llm-u8uic8QB.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/account-store-QAWTf9es.js","assets/preload-helper-Czpn1I53.js","assets/claude-model-version-BJLrDjmH.js","assets/models-BSkXF4T6.js","assets/diagnostics-DN_idNHx.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-B-zmcypy.js","assets/libesm-BypnjKEL.js","assets/logger-DDBAeTLF.js","assets/src-CAWTvdAa.js","assets/proxied-fetch-DC4o4pmp.js","assets/base64-DJRlyqZu.js","assets/fetch-body-D2PwksUW.js","assets/api-endpoint-CWeRbcY3.js","assets/runtime-env-Dlaokqg1.js","assets/float-topology-B1E_mH1v.js","assets/runtime-env-E-i2SW1s.js","assets/secret-topology-CVgFEYzE.js","assets/secrets-bridge-client-BCv_YZhX.js","assets/port-bridge-client-CVZpTSrA.js","assets/image-markers-CxJ9ZBgw.js","assets/tool-ui-eSQ1g2I1.js","assets/providers-CMdt7NIp.js","assets/panel-rpc-B3MSVImO.js","assets/bedrock-camp-compat-CgBMwna8.js","assets/llm-session-id-bZQs6gBN.js","assets/icons-BJsliYCh.js","assets/isomorphic-git-Cgji39_P.js","assets/safe-buffer-iah92gQe.js"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/quick-llm-kUXqAL2W.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/account-store-DHbYljA2.js","assets/preload-helper-Czpn1I53.js","assets/claude-model-version-BJLrDjmH.js","assets/models-BSkXF4T6.js","assets/diagnostics-DN_idNHx.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-B-zmcypy.js","assets/libesm-BypnjKEL.js","assets/logger-DDBAeTLF.js","assets/src-CAWTvdAa.js","assets/proxied-fetch-DuC82T1c.js","assets/base64-DJRlyqZu.js","assets/fetch-body-D2PwksUW.js","assets/api-endpoint-CWeRbcY3.js","assets/runtime-env-Dlaokqg1.js","assets/float-topology-D_ESvEeq.js","assets/runtime-env-E-i2SW1s.js","assets/secret-topology-D5sJYeG9.js","assets/secrets-bridge-client-aihv9k6e.js","assets/port-bridge-client-DX2fz9_b.js","assets/image-markers-CxJ9ZBgw.js","assets/tool-ui-eSQ1g2I1.js","assets/providers-Ca2x4vLj.js","assets/panel-rpc-B3MSVImO.js","assets/bedrock-camp-compat-CgBMwna8.js","assets/llm-session-id-bZQs6gBN.js","assets/icons-BJsliYCh.js","assets/isomorphic-git-Cgji39_P.js","assets/safe-buffer-iah92gQe.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{t as n}from"./logger-DDBAeTLF.js";import{n as r,t as i}from"./agent-message-to-chat-DZhrVcVe.js";import{n as a,t as o}from"./mime-types-k2E6ulyv.js";import{n as s,t as c}from"./base64-DJRlyqZu.js";import{l}from"./src-CAWTvdAa.js";import{t as u}from"./image-markers-CxJ9ZBgw.js";import{c as d,i as f,l as p,u as m}from"./telemetry-BVzuNdvW.js";import{t as h}from"./icons-BJsliYCh.js";import{a as g,o as ee}from"./dictation-priming-CNllGgNq.js";import{r as te,t as _}from"./timestamp-preference-sKwBl5I8.js";import{a as ne,c as re,i as v,n as ie,r as y}from"./src-CC79QyGZ.js";import{t as b}from"./surface-fullscreen-4YjALjE7.js";import{n as ae,t as oe}from"./trusted-layer-ghPA1ENf.js";import{s as se}from"./wc-shortcuts-BWBA9QlD.js";function x(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`).replace(/'/g,`&#39;`)}var ce=new Set([`webhook`,`cron`,`sprinkle`,`fswatch`,`session-reload`,`navigate`,`discovery`,`upgrade`,`workflow`,`bash`,`preview`,`scoop-notify`,`scoop-idle`,`scoop-wait`,`sudo-request`]);function le(e){return e!=null&&ce.has(e)}var ue=`#b07823`,de=[`#06b6d4`,`#8b5cf6`,`#f59e0b`,`#10b981`,`#3b82f6`,`#ef4444`];function fe(e){if(e.isRoot)return ue;let t=0;for(let n of e.name)t=t*31+n.charCodeAt(0)>>>0;return de[t%de.length]}var pe=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 me(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 he=new Date(`2024-01-01T10:00:00`).getTime();function S(e){return he+e*6e4}var C=`ui-fixture`;function ge(){return[{id:`fx-user-1`,role:`user`,content:`Hey sliccy — can you summarize what this fixture covers?`,timestamp:S(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:S(.2)}]}function _e(){return[{id:`fx-user-2`,role:`user`,content:`Show me some **markdown** — headings, lists, code, a blockquote.`,timestamp:S(1)},{id:`fx-user-attachment`,role:`user`,content:`Use these attachments as visual and text context.`,timestamp:S(1.1),attachments:[{id:`fx-att-image`,name:`dot.png`,mimeType:`image/png`,size:pe.byteLength,kind:`image`,data:me(pe)},{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:S(1.3)}]}function ve(){return[{id:`fx-assistant-3`,role:`assistant`,content:`Let me check a few things before I answer.`,timestamp:S(2),toolCalls:[{id:`fx-tc-read`,name:`read_file`,input:{path:`/workspace/README.md`},result:`# Sample README
4
4
 
@@ -116,7 +116,7 @@ Example input:
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 aa(e){return e.length>=6&&/[a-zA-Z]/.test(e)&&/\s/.test(e.trim())}function oa(e,n){if(e.length===0)return;let r=ra(e);if(!r)return;let i=ea.get(r);if(i){n.setAttribute(`label`,i);return}let a=e[0]?.id;if(a){let e=na.get(a);e&&n.setAttribute(`label`,e)}if(ta.has(r))return;ta.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-u8uic8QB.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,28,29])).then(({quickLabel:e})=>e({system:ia,prompt:`Label these tool calls (inputs only):\n${o}`,maxTokens:40})).then(e=>{let t=e?.replace(/^["']|["']$|\.$/g,``).trim()??``;aa(t)&&(ea.set(r,t),a&&na.set(a,t),n.isConnected&&n.setAttribute(`label`,t))}).catch(()=>void 0).finally(()=>ta.delete(r))}function sa(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&&oa(t.toolCalls,n),n}function ca(e){let t=document.createElement(`slicc-agent-message`);t.setAttribute(`data-msg-id`,e.id);let n=(e.content??``).trim().length>0,r=_(e.timestamp);return r&&n&&t.setAttribute(`timestamp`,r),e.isStreaming&&t.setAttribute(`streaming`,``),t.setBodyHtml(ci(e.content,e.isStreaming===!0)),n||t.setAttribute(`data-empty`,``),[t,...(e.toolCalls??[]).map(t=>Zi(t,e.id))]}function la(e,t){let n=e.querySelectorAll(`:scope > slicc-tool-cluster`);for(let e of n){let n=Array.from(e.querySelectorAll(`slicc-action-row`));ua(e,n,t);let r=e.parentNode;if(!r){e.remove();continue}for(let t of n)da(t,r,e);e.remove()}}function ua(e,t,n){if(!e.hasAttribute(`open`))return;let r=t[0]?.dataset.msgId;r&&n.add(r)}function da(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 fa=new Set([`slicc-user-message`,`slicc-lick-card`,`slicc-error-card`,`slicc-delegation-line`,`slicc-day-separator`]);function pa(e){return e instanceof HTMLElement?fa.has(e.tagName.toLowerCase()):!0}function ma(e){return e instanceof HTMLElement&&e.tagName.toLowerCase()===`slicc-action-row`}function ha(e){return e instanceof HTMLElement&&e.tagName.toLowerCase()===`slicc-agent-message`}function ga(e){let t=[],n=[];for(let r of e)ha(r)?!r.hasAttribute(`data-empty`)&&n.length>0&&(t.push(n),n=[]):ma(r)&&n.push(r);return n.length>0&&t.push(n),t}function _a(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 va(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=sa(e,{open:!!(o&&t.openClusterAnchors.has(o)),toolCalls:t.toolCallLookup?_a(e,t.toolCallLookup):void 0});r.insertBefore(s,a)}function ya(e,t){la(e,t.openClusterAnchors);let n=Array.from(e.children),r=0;for(;r<n.length;){if(pa(n[r])){r++;continue}let e=r;for(;e<n.length&&!pa(n[e]);)e++;let i=ga(n.slice(r,e));for(let e of i)e.length>=3&&va(e,t);r=e}t.openClusterAnchors.clear()}function ba(e){let t=ui.exec(e.content),n=e.lickCount??1,r=mi.exec(e.content),i=r?hi(r[1]):null,a=X(`slicc-lick-card`,{kind:e.channel??`webhook`,"event-label":yi(e.content,e.channel,t,i),collapsible:``,collapsed:``});i&&a.setAttribute(`hue`,fe({isRoot:!1,name:i})),n>1&&a.setAttribute(`count`,String(n)),e.lickState&&e.lickState!==`pending`&&a.setAttribute(`state`,e.lickState);let o=e.lickParts??[e.content];for(let e of o){let t=document.createElement(`div`);t.innerHTML=si(fi(e)),a.append(t)}return a}function xa(e){let t=X(`slicc-delegation-line`,{kind:`feed`,verb:`feed_scoop`,label:gi(e.content.replace(/\*\*\[[^\]]*\]\*\*\s*/,``))}),n=document.createElement(`slicc-user-message`);return n.setBodyHtml(si(e.content)),[t,n]}function Sa(e,t){let n={message:e.content,"message-id":e.id};return t?(n[`no-action`]=``,X(`slicc-error-card`,n)):(m(e.content)?n.action=`settings`:p(e.content)?n.action=`change-model`:d(e.content)&&(n.action=`login`),X(`slicc-error-card`,n))}function Ca(e,t={}){if(e.source===`lick`)return[ba(e)];if(e.source===`delegation`||e.channel===`delegation`)return xa(e);if(e.error)return[Sa(e,t.readOnly===!0)];if(e.role===`assistant`)return ca(e);let n=pi(e.content);return n?[ba({...e,source:`lick`,channel:n})]:[Qi(e)]}function wa(e){let t=[];for(let n of e){let e=n;if(!n.source&&n.role===`user`){let t=pi(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 Ta(e){return new Date(e).toLocaleDateString(void 0,{weekday:`short`,month:`short`,day:`numeric`})}function Ea(e){return X(`slicc-day-separator`,{label:Ta(e)})}function Da(e,t={}){let n=[],r=``;for(let i of e){let e=new Date(i.timestamp).toDateString();e!==r&&(n.push(Ea(i.timestamp)),r=e),n.push(...Ca(i,t))}let i=document.createElement(`div`);return i.append(...n),ya(i,{openClusterAnchors:new Set,toolCallLookup:(t,n)=>e.find(e=>e.id===t)?.toolCalls?.find(e=>e.id===n)}),Array.from(i.children)}function Oa(e){e.inputCard.dispatchEvent(new CustomEvent(`stop`,{bubbles:!0,composed:!0}))}function ka(e){e.inputCard.querySelector(`slicc-add-menu`)?.open?.()}function Aa(e){e.composer.toggleHandsFree?.()}function ja(e){let t=e.thread.ownerDocument.querySelector(`slicc-tab-overlay`);t&&(t.peeking=!0),e.dock.selectItem?.(`browser`)}function Ma(e,t){let n=e.thread,r=n.getBoundingClientRect().top,i=[...n.children].map(e=>e.getBoundingClientRect().top-r),a=t>0?i.find(e=>e>1):i.filter(e=>e<-1).at(-1);a!==void 0&&(n.scrollTop+=a)}function Na(e,t){e.thread.querySelector(`.wc-copy-row slicc-press-button`)?.dispatchEvent(new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:{}}))}function Pa(e){Na(e,`short-click`)}function Fa(e){Na(e,`long-press`)}function Ia(e){if(!e)return null;try{return e.contentDocument}catch{return null}}function La(e){let t=[...e.thread.querySelectorAll(`[data-tool-ui-request]`)];if(t.length===0)return;let n=e.thread.ownerDocument.activeElement,r=t[(t.findIndex(e=>n instanceof Node&&e.contains(n))+1)%t.length];if(!r)return;let i=r.querySelector(`iframe`),a=Ia(i)?.querySelector(`button[data-action]`);(r.querySelector(`button[data-action]:not([disabled])`)??a??i)?.focus?.(),r.scrollIntoView?.({block:`nearest`})}function Ra(e){let t=e.dock.active;t&&b(e.frame??e.dockTree,t)}function za(e){let t=(e,t)=>({size:()=>e().querySelectorAll(t).length,selectAt:n=>{e().querySelectorAll(t)[n]?.click()}});return{files:{size:()=>e.fileTree.visibleIds().length,selectAt:t=>{let n=e.fileTree.visibleIds()[t];n&&e.fileTree.selectFile(n)}},memory:t(()=>e.memoryHost,`slicc-memrow`),sessions:t(()=>e.freezer,`slicc-freezer-card:not(.match-hidden):not([hidden])`)}}function Ba(e){return se({switcher:e.switcher,dock:e.dock,freezer:e.freezer,composerMeta:e.composerMeta,hudHost:e.chatPane,composerBand:e.composer,focusComposer:()=>e.inputCard.focus(),composerAvailable:()=>!e.composer.hasAttribute(`hidden`)&&!e.inputCard.hasAttribute(`disabled`),stopTurn:()=>Oa(e),toggleVoice:()=>Aa(e),scrollMessage:t=>Ma(e,t),focusApproval:()=>La(e),openAttachMenu:()=>ka(e),copyReply:()=>Pa(e),copyChat:()=>Fa(e),zoomSurface:()=>Ra(e),peekTabs:()=>ja(e),lists:za(e)})}var Va=/data:([\w.+-]+\/[\w.+-]+)(?:;[\w.+-]+=[^;,]*)*;base64,([A-Za-z0-9+/=]+)/g,Ha=RegExp(`(?:^|[\\s"'\`(\\[{<,;:=])([A-Za-z0-9+/]{128,}={0,2})(?=$|[\\s"'\`)\\]}>,;:.!?])`,`g`),Ua=16;function Wa(e){let t=[],n=0;for(;;){let r=e.indexOf(`
119
+ `);t(async()=>{let{quickLabel:e}=await import(`./quick-llm-kUXqAL2W.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,28,29])).then(({quickLabel:e})=>e({system:ia,prompt:`Label these tool calls (inputs only):\n${o}`,maxTokens:40})).then(e=>{let t=e?.replace(/^["']|["']$|\.$/g,``).trim()??``;aa(t)&&(ea.set(r,t),a&&na.set(a,t),n.isConnected&&n.setAttribute(`label`,t))}).catch(()=>void 0).finally(()=>ta.delete(r))}function sa(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&&oa(t.toolCalls,n),n}function ca(e){let t=document.createElement(`slicc-agent-message`);t.setAttribute(`data-msg-id`,e.id);let n=(e.content??``).trim().length>0,r=_(e.timestamp);return r&&n&&t.setAttribute(`timestamp`,r),e.isStreaming&&t.setAttribute(`streaming`,``),t.setBodyHtml(ci(e.content,e.isStreaming===!0)),n||t.setAttribute(`data-empty`,``),[t,...(e.toolCalls??[]).map(t=>Zi(t,e.id))]}function la(e,t){let n=e.querySelectorAll(`:scope > slicc-tool-cluster`);for(let e of n){let n=Array.from(e.querySelectorAll(`slicc-action-row`));ua(e,n,t);let r=e.parentNode;if(!r){e.remove();continue}for(let t of n)da(t,r,e);e.remove()}}function ua(e,t,n){if(!e.hasAttribute(`open`))return;let r=t[0]?.dataset.msgId;r&&n.add(r)}function da(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 fa=new Set([`slicc-user-message`,`slicc-lick-card`,`slicc-error-card`,`slicc-delegation-line`,`slicc-day-separator`]);function pa(e){return e instanceof HTMLElement?fa.has(e.tagName.toLowerCase()):!0}function ma(e){return e instanceof HTMLElement&&e.tagName.toLowerCase()===`slicc-action-row`}function ha(e){return e instanceof HTMLElement&&e.tagName.toLowerCase()===`slicc-agent-message`}function ga(e){let t=[],n=[];for(let r of e)ha(r)?!r.hasAttribute(`data-empty`)&&n.length>0&&(t.push(n),n=[]):ma(r)&&n.push(r);return n.length>0&&t.push(n),t}function _a(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 va(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=sa(e,{open:!!(o&&t.openClusterAnchors.has(o)),toolCalls:t.toolCallLookup?_a(e,t.toolCallLookup):void 0});r.insertBefore(s,a)}function ya(e,t){la(e,t.openClusterAnchors);let n=Array.from(e.children),r=0;for(;r<n.length;){if(pa(n[r])){r++;continue}let e=r;for(;e<n.length&&!pa(n[e]);)e++;let i=ga(n.slice(r,e));for(let e of i)e.length>=3&&va(e,t);r=e}t.openClusterAnchors.clear()}function ba(e){let t=ui.exec(e.content),n=e.lickCount??1,r=mi.exec(e.content),i=r?hi(r[1]):null,a=X(`slicc-lick-card`,{kind:e.channel??`webhook`,"event-label":yi(e.content,e.channel,t,i),collapsible:``,collapsed:``});i&&a.setAttribute(`hue`,fe({isRoot:!1,name:i})),n>1&&a.setAttribute(`count`,String(n)),e.lickState&&e.lickState!==`pending`&&a.setAttribute(`state`,e.lickState);let o=e.lickParts??[e.content];for(let e of o){let t=document.createElement(`div`);t.innerHTML=si(fi(e)),a.append(t)}return a}function xa(e){let t=X(`slicc-delegation-line`,{kind:`feed`,verb:`feed_scoop`,label:gi(e.content.replace(/\*\*\[[^\]]*\]\*\*\s*/,``))}),n=document.createElement(`slicc-user-message`);return n.setBodyHtml(si(e.content)),[t,n]}function Sa(e,t){let n={message:e.content,"message-id":e.id};return t?(n[`no-action`]=``,X(`slicc-error-card`,n)):(m(e.content)?n.action=`settings`:p(e.content)?n.action=`change-model`:d(e.content)&&(n.action=`login`),X(`slicc-error-card`,n))}function Ca(e,t={}){if(e.source===`lick`)return[ba(e)];if(e.source===`delegation`||e.channel===`delegation`)return xa(e);if(e.error)return[Sa(e,t.readOnly===!0)];if(e.role===`assistant`)return ca(e);let n=pi(e.content);return n?[ba({...e,source:`lick`,channel:n})]:[Qi(e)]}function wa(e){let t=[];for(let n of e){let e=n;if(!n.source&&n.role===`user`){let t=pi(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 Ta(e){return new Date(e).toLocaleDateString(void 0,{weekday:`short`,month:`short`,day:`numeric`})}function Ea(e){return X(`slicc-day-separator`,{label:Ta(e)})}function Da(e,t={}){let n=[],r=``;for(let i of e){let e=new Date(i.timestamp).toDateString();e!==r&&(n.push(Ea(i.timestamp)),r=e),n.push(...Ca(i,t))}let i=document.createElement(`div`);return i.append(...n),ya(i,{openClusterAnchors:new Set,toolCallLookup:(t,n)=>e.find(e=>e.id===t)?.toolCalls?.find(e=>e.id===n)}),Array.from(i.children)}function Oa(e){e.inputCard.dispatchEvent(new CustomEvent(`stop`,{bubbles:!0,composed:!0}))}function ka(e){e.inputCard.querySelector(`slicc-add-menu`)?.open?.()}function Aa(e){e.composer.toggleHandsFree?.()}function ja(e){let t=e.thread.ownerDocument.querySelector(`slicc-tab-overlay`);t&&(t.peeking=!0),e.dock.selectItem?.(`browser`)}function Ma(e,t){let n=e.thread,r=n.getBoundingClientRect().top,i=[...n.children].map(e=>e.getBoundingClientRect().top-r),a=t>0?i.find(e=>e>1):i.filter(e=>e<-1).at(-1);a!==void 0&&(n.scrollTop+=a)}function Na(e,t){e.thread.querySelector(`.wc-copy-row slicc-press-button`)?.dispatchEvent(new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:{}}))}function Pa(e){Na(e,`short-click`)}function Fa(e){Na(e,`long-press`)}function Ia(e){if(!e)return null;try{return e.contentDocument}catch{return null}}function La(e){let t=[...e.thread.querySelectorAll(`[data-tool-ui-request]`)];if(t.length===0)return;let n=e.thread.ownerDocument.activeElement,r=t[(t.findIndex(e=>n instanceof Node&&e.contains(n))+1)%t.length];if(!r)return;let i=r.querySelector(`iframe`),a=Ia(i)?.querySelector(`button[data-action]`);(r.querySelector(`button[data-action]:not([disabled])`)??a??i)?.focus?.(),r.scrollIntoView?.({block:`nearest`})}function Ra(e){let t=e.dock.active;t&&b(e.frame??e.dockTree,t)}function za(e){let t=(e,t)=>({size:()=>e().querySelectorAll(t).length,selectAt:n=>{e().querySelectorAll(t)[n]?.click()}});return{files:{size:()=>e.fileTree.visibleIds().length,selectAt:t=>{let n=e.fileTree.visibleIds()[t];n&&e.fileTree.selectFile(n)}},memory:t(()=>e.memoryHost,`slicc-memrow`),sessions:t(()=>e.freezer,`slicc-freezer-card:not(.match-hidden):not([hidden])`)}}function Ba(e){return se({switcher:e.switcher,dock:e.dock,freezer:e.freezer,composerMeta:e.composerMeta,hudHost:e.chatPane,composerBand:e.composer,focusComposer:()=>e.inputCard.focus(),composerAvailable:()=>!e.composer.hasAttribute(`hidden`)&&!e.inputCard.hasAttribute(`disabled`),stopTurn:()=>Oa(e),toggleVoice:()=>Aa(e),scrollMessage:t=>Ma(e,t),focusApproval:()=>La(e),openAttachMenu:()=>ka(e),copyReply:()=>Pa(e),copyChat:()=>Fa(e),zoomSurface:()=>Ra(e),peekTabs:()=>ja(e),lists:za(e)})}var Va=/data:([\w.+-]+\/[\w.+-]+)(?:;[\w.+-]+=[^;,]*)*;base64,([A-Za-z0-9+/=]+)/g,Ha=RegExp(`(?:^|[\\s"'\`(\\[{<,;:=])([A-Za-z0-9+/]{128,}={0,2})(?=$|[\\s"'\`)\\]}>,;:.!?])`,`g`),Ua=16;function Wa(e){let t=[],n=0;for(;;){let r=e.indexOf(`
120
120
  `,n),i=r<0?e.length:r,a=e[i-1]===`\r`?i-1:i;if(t.push({start:n,end:a,text:e.slice(n,a)}),r<0)return t;n=r+1}}var Ga=/^[A-Za-z0-9+/]+$/,Ka=/^[A-Za-z0-9+/]+={0,2}$/;function qa(e){let t=Wa(e),n=[];for(let r=0;r<t.length;r+=1){let i=Ja(t,r);if(i===null)continue;let a=Ya(t,r,i);if(a===r)continue;let o=t.slice(r,a+1),s=Xa(t,r,i);s&&o.unshift(s);let c=Za(e,o);c&&n.push(c),r=a}return n}function Ja(e,t){let n=e[t];if(!n)return null;let r=n.text.length;return r<Ua||r%4!=0?null:Ga.test(n.text)?r:null}function Ya(e,t,n){let r=t;for(let i=t+1;i<e.length;i+=1){let t=e[i];if(!t||t.text.length!==n||!Ga.test(t.text))break;r=i}let i=e[r+1];if(!i||i.text.length===0||i.text.length>=n||!Ka.test(i.text))return r;let a=e[r+2];return a!==void 0&&a.text.length===n&&Ga.test(a.text)?r:r+1}function Xa(e,t,n){let r=e[t-1];if(!r||r.text.length<=n)return null;let i=r.text.length-n,a=r.text.slice(i);return!Ga.test(a)||Ga.test(r.text[i-1]??` `)?null:{start:r.start+i,end:r.end,text:a}}function Za(e,t){let n=t.map(e=>e.text).join(``);if(n.replace(/=+$/,``).length<128||n.length%4!=0)return null;let r=s(n);if(!r)return null;let i=t[0]?.start??0,a=t[t.length-1]?.end??i;return{raw:e.slice(i,a),data:r,start:i,end:a}}function Qa(e){let t=[],n=[],r=(e,t)=>n.some(([n,r])=>e<r&&t>n);Va.lastIndex=0;for(let r of e.matchAll(Va)){let e=r[2]??``;if(e.length<128)continue;let i=s(e);if(!i)continue;let a=r.index??0,o=a+r[0].length;t.push({raw:r[0],data:i,declaredMime:r[1]??``,start:a,end:o}),n.push([a,o])}for(let i of qa(e))r(i.start,i.end)||(t.push(i),n.push([i.start,i.end]));Ha.lastIndex=0;for(let i of e.matchAll(Ha)){let e=i[1]??``,a=(i.index??0)+(i[0].length-e.length),o=a+e.length;if(r(a,o)||e.length%4!=0)continue;let c=s(e);c&&(t.push({raw:e,data:c,start:a,end:o}),n.push([a,o]))}return t.sort((e,t)=>e.start-t.start)}var Q=e=>Array.from(e,e=>e.charCodeAt(0)),$a=[{offset:0,bytes:[137,80,78,71,13,10,26,10],mime:`image/png`},{offset:0,bytes:[255,216,255],mime:`image/jpeg`},{offset:0,bytes:Q(`GIF87a`),mime:`image/gif`},{offset:0,bytes:Q(`GIF89a`),mime:`image/gif`},{offset:0,bytes:Q(`BM`),mime:`image/bmp`},{offset:0,bytes:Q(`RIFF`),also:{offset:8,bytes:Q(`WEBP`)},mime:`image/webp`},{offset:4,bytes:Q(`ftypavif`),mime:`image/avif`},{offset:0,bytes:[0,0,1,0],mime:`image/x-icon`},{offset:0,bytes:Q(`RIFF`),also:{offset:8,bytes:Q(`WAVE`)},mime:`audio/wav`},{offset:0,bytes:Q(`ID3`),mime:`audio/mpeg`},{offset:0,bytes:Q(`fLaC`),mime:`audio/flac`},{offset:4,bytes:Q(`ftypM4A`),mime:`audio/mp4`},{offset:4,bytes:Q(`ftypisom`),mime:`video/mp4`},{offset:4,bytes:Q(`ftypmp42`),mime:`video/mp4`},{offset:4,bytes:Q(`ftypqt`),mime:`video/quicktime`},{offset:0,bytes:[26,69,223,163],mime:`video/webm`},{offset:0,bytes:Q(`%PDF-`),mime:`application/pdf`},{offset:0,bytes:[0,97,115,109],mime:`application/wasm`},{offset:0,bytes:Q(`PK`),mime:`application/zip`},{offset:0,bytes:[31,139],mime:`application/gzip`},{offset:0,bytes:[127,69,76,70],mime:`application/x-executable`},{offset:0,bytes:[202,254,186,190],mime:`application/x-mach-binary`}],eo=Q(`OggS`);function to(e,t,n){if(t+n.length>e.length)return!1;for(let r=0;r<n.length;r+=1)if(e[t+r]!==n[r])return!1;return!0}function no(e){let t=[...$a].sort((e,t)=>t.bytes.length+(t.also?.bytes.length??0)-(e.bytes.length+(e.also?.bytes.length??0)));for(let n of t)if(to(e,n.offset,n.bytes)&&!(n.also&&!to(e,n.also.offset,n.also.bytes)))return n.mime;if(to(e,0,eo)){let t=ro(e.subarray(0,64));return/theora|VP8/.test(t)?`video/ogg`:`audio/ogg`}return null}function ro(e){let t=``;for(let n of e)t+=String.fromCharCode(n);return t}var io=4096;function ao(e){if(e.length===0)return!0;let t=e.subarray(0,Math.min(e.length,io));if(t.includes(0))return!1;let n=t.length;if(n===io)for(let e=0;e<4&&n>0;e+=1){let e=t[n-1]??0;if(!(e&128)||(--n,(e&192)==192))break}try{let e=new TextDecoder(`utf-8`,{fatal:!0}).decode(t.subarray(0,n)),r=0;for(let t of e){let e=t.codePointAt(0)??0;e!==9&&e!==10&&e!==13&&e!==12&&e!==27&&(e<32||e===127)&&(r+=1)}return r<=e.length*.05}catch{return!1}}function oo(e,t){if(t&&t.length>0){let e=no(t);if(e)return{mime:e,text:so(e),source:`magic`}}let n=a(e);return n===`application/octet-stream`?t&&ao(t)?{mime:`text/plain`,text:!0,source:`content`}:{mime:`application/octet-stream`,text:!1,source:t?`content`:`unknown`}:{mime:n,text:so(n),source:`extension`}}function so(e){if(e.startsWith(`text/`))return!0;let t=e.split(`;`,1)[0]?.trim()??e;return t===`application/json`||t===`application/xml`||t===`application/javascript`||t===`application/ecmascript`||t===`image/svg+xml`||t.endsWith(`+json`)||t.endsWith(`+xml`)}var co=new Set([`md`,`markdown`,`mdown`,`mkd`,`mkdn`,`mdwn`]);function lo(e,t){let n=t.split(`;`,1)[0]?.trim()??t;if(n===`text/html`)return`html`;if(n===`text/markdown`||n===`text/x-markdown`)return`markdown`;let r=e.lastIndexOf(`.`),i=r>0?e.slice(r+1).toLowerCase():``;return co.has(i)?`markdown`:i===`html`||i===`htm`?`html`:null}var uo=`payload`;function fo(e,t){let n;try{n=c(e)}catch{return null}if(n.length===0)return null;let r=no(n);if(r)return po(n,r,`magic`);let i=t?.split(`;`,1)[0]?.trim().toLowerCase();return i&&i.length>0&&i!==`application/octet-stream`?po(n,i,`declared`):ao(n)?po(n,`text/plain`,`content`):null}function po(e,t,n){let r=o(t);return{bytes:e,mime:t,text:so(t),source:n,name:r?`${uo}.${r}`:uo}}var mo=`slicc-blob-chip`,ho=`base64-preview-open`,go=`data-base64-chips`;function _o(e){return`${e.childNodes.length}:${e.textContent?.length??0}`}var vo=new Set([`A`,`PRE`,`SCRIPT`,`STYLE`,`TEXTAREA`]),yo=[[`image/`,`image`],[`audio/`,`file-audio`],[`video/`,`file-video`],[`text/`,`file-text`]];function bo(e){for(let[t,n]of yo)if(e.startsWith(t))return h(n)?n:`file`;return`file`}function xo(e){let t=_o(e);if(e.getAttribute(go)!==t){for(let t of Co(e)){let e=[];for(let n of Qa(t.text)){let t=fo(n.data,n.declaredMime);t&&e.push({start:n.start,end:n.end,payload:t})}e.length!==0&&To(t,e)}e.setAttribute(go,_o(e))}}function So(e,t){for(let n=e;n;n=n.parentElement){if(vo.has(n.tagName))return!0;if(n===t)return!1}return!1}function Co(e){let t=[];for(let n of[e,...e.querySelectorAll(`*`)]){if(So(n,e))continue;let r=null;for(let e of n.childNodes){let n=wo(e);if(n===null){r=null;continue}r||(r={text:``,parts:[]},t.push(r));let i=r.text.length;r.text+=n,r.parts.push({node:e,start:i,end:r.text.length})}}return t.filter(e=>e.text.length>0)}function wo(e){return e.nodeType===Node.TEXT_NODE?e.nodeValue??``:e.nodeType===Node.ELEMENT_NODE&&e.tagName===`BR`?`
121
121
  `:null}function To(e,t){let n=e.parts[0]?.node,r=n?.parentNode;if(!n||!r)return;let i=n.ownerDocument;if(!i)return;let a=i.createDocumentFragment(),o=new Set;for(let n of e.parts){if(wo(n.node)===`
122
122
  `&&n.node.nodeType===Node.ELEMENT_NODE){t.some(e=>e.start<=n.start&&n.end<=e.end)||a.appendChild(i.createElement(`br`));continue}let r=n.start;for(let[s,c]of t.entries()){if(c.end<=n.start||c.start>=n.end)continue;let t=Math.min(Math.max(c.start,n.start),n.end);t>r&&a.appendChild(i.createTextNode(e.text.slice(r,t))),o.has(s)||(a.appendChild(Eo(i,c.payload)),o.add(s)),r=Math.max(r,Math.min(c.end,n.end))}r<n.end&&a.appendChild(i.createTextNode(e.text.slice(r,n.end)))}r.insertBefore(a,n);for(let t of e.parts)t.node.remove()}function Eo(e,t){let n=t.bytes.byteLength,i=e.createElement(mo);return i.setAttribute(`icon`,bo(t.mime)),i.setAttribute(`label`,`${ne(t.mime)} · ${r(n)}`),i.title=`${t.mime} · ${n.toLocaleString()} bytes\nClick to preview`,i.addEventListener(`click`,e=>{e.preventDefault(),e.stopPropagation();let n={payload:t};i.dispatchEvent(new CustomEvent(ho,{detail:n,bubbles:!0,composed:!0}))}),i}var Do=24;async function Oo(e,t){let n=t.slice(0,Math.max(t.lastIndexOf(`/`),0))||`/`;for(let t=0;t<Do;t+=1){try{return await e.stat(n===`/`?`/.git`:`${n}/.git`),n===``?`/`:n}catch{}if(n===`/`||n===``)return null;n=n.slice(0,Math.max(n.lastIndexOf(`/`),0))||`/`}return null}function ko(e){let t=async t=>{let n=await e.stat(t),r=n.type===`directory`;return{type:r?`dir`:`file`,mode:r?16877:33188,size:n.size,ino:0,mtimeMs:n.mtime,ctimeMs:n.ctime,uid:1,gid:1,dev:1,isFile:()=>!r,isDirectory:()=>r,isSymbolicLink:()=>n.isSymlink===!0}};return{promises:{readFile:(t,n)=>{let r=typeof n==`string`?n:n?.encoding;return e.readFile(t,r===`utf8`?{encoding:`utf-8`}:{encoding:`binary`})},readdir:async t=>(await e.readDir(t)).map(e=>e.name),stat:t,lstat:t,readlink:async t=>(await e.stat(t)).symlinkTarget??``}}}async function Ao(e,n,r){let i=await Oo(e,n);if(!i)return null;let a=n.slice(i===`/`?1:i.length+1);if(a.length===0)return null;try{let n=await t(()=>import(`./isomorphic-git-Cgji39_P.js`),__vite__mapDeps([30,1,31])),o=ko(e),s=await n.resolveRef({fs:o,dir:i,ref:`HEAD`}),{blob:c}=await n.readBlob({fs:o,dir:i,oid:s,filepath:a}),l=new TextDecoder().decode(c);return l===r?null:{baseContent:l,status:`modified`,repoRoot:i}}catch{return null}}function jo(e){let t=e.slice(e.lastIndexOf(`.`)).toLowerCase();return t===`.html`||t===`.svg`}async function Mo(e,t){let n=await e.readFile(t,{encoding:`binary`}),r=new Uint8Array(new ArrayBuffer(n.length));r.set(n);let{mime:i,text:a}=oo(t,r);return{mime:i,text:a,bytes:r}}var No=524288;function Po(e,t,n){if(n.length>No)return null;switch(lo(e,t)){case`markdown`:return{mount:`inline`,html:si(n)};case`html`:return{mount:`sandbox`,html:n};default:return null}}async function Fo(e,t,n={}){let{mime:r,text:i,bytes:a}=await Mo(e,t);if(!i){v.open({path:t,content:a.buffer,mimeType:r,text:!1});return}let o=new TextDecoder().decode(a),s=await Ao(e,t,o),c=Po(t,r,o);v.open({path:t,content:o,mimeType:r,text:!0,...s?{baseContent:s.baseContent,gitStatus:s.status}:{},...c?{rendered:c}:{},...n.line===void 0?{}:{line:n.line}})}async function Io(e,t){let{mime:n,bytes:r}=await Mo(e,t),i=new Blob([r],{type:n}),a=URL.createObjectURL(i);try{let e=document.createElement(`a`);e.href=a,e.download=t.split(`/`).pop()||`download`,e.click()}finally{URL.revokeObjectURL(a)}}async function Lo(e,t,n){let r=await e.readFile(t,{encoding:`binary`}),i=typeof r==`string`?r:Uint8Array.from(r);await e.writeFile(n,i)}async function Ro(e,t){try{return await e.stat(t),!0}catch{return!1}}function zo(e){let{fileTree:t,openFs:n,openWriter:r,insertReference:i,toPreviewUrl:a,log:o}=e;t.addEventListener(`file-preview`,async e=>{let{path:t}=e.detail;try{await Fo(await n(),t)}catch(e){o.error(`File preview failed`,e)}}),t.addEventListener(`file-reference`,e=>{let{path:t}=e.detail;i(t)}),t.addEventListener(`file-download`,async e=>{let{path:t}=e.detail;try{await Io(await n(),t)}catch(e){o.error(`File download failed`,e)}}),t.addEventListener(`file-overflow`,e=>{let{path:n,anchor:r,kind:i}=e.detail,a=i!==`directory`,o=[{id:`preview`,label:`Preview`,visible:a},{id:`reference`,label:`Reference in chat`,visible:a},{id:`download`,label:`Download`,visible:a},{id:`rename`,label:`Rename`,visible:a},{id:`duplicate`,label:`Duplicate`,visible:a},{id:`copy-path`,label:`Copy path`},{id:`open-browser`,label:`Open in browser`,visible:a&&jo(n)},{id:`delete`,label:`Delete`,destructive:!0,visible:a}];re.show({anchor:r,items:o,context:{path:n},dispatchTarget:t})}),t.addEventListener(`overflow-action`,async e=>{let{action:n,context:i}=e.detail,{path:s}=i;try{switch(n){case`preview`:case`reference`:case`download`:t.dispatchEvent(new CustomEvent(`file-${n}`,{detail:{id:s,path:s},bubbles:!0,composed:!0}));break;case`copy-path`:await navigator.clipboard.writeText(s);break;case`open-browser`:window.open(a(s),`_blank`);break;case`duplicate`:{let e=s.lastIndexOf(`.`),t=e>0?`${s.slice(0,e)}_copy${s.slice(e)}`:`${s}_copy`,n=await r();if(await Ro(n,t)&&!confirm(`${t} already exists. Overwrite?`))break;await Lo(n,s,t);break}case`delete`:confirm(`Delete ${s}?`)&&await(await r()).rm(s);break;case`rename`:{let e=s.split(`/`).pop()??``,t=prompt(`Rename ${s} to:`,e)?.trim();if(!t||t===e||t.includes(`/`))break;let n=`${s.slice(0,s.length-e.length)}${t}`,i=await r();if(await Ro(i,n)&&!confirm(`${n} already exists. Overwrite?`))break;await Lo(i,s,n),await i.rm(s);break}}}catch(e){o.error(`Overflow action "${n}" failed`,e)}})}var Bo=`slicc-agent-message`,Vo=`slicc-user-message`,Ho=`${Bo},${Vo}`,Uo=[`streaming`,`text`,`timestamp`,`queued`];function Wo(e){return e.tagName.toLowerCase()===Vo?e.shadowRoot?.querySelector(`.b`)??null:e.querySelector(`.body`)??e}function Go(e){try{return Ko(e)}catch(t){return e.log.error(`Base64 preview wiring failed; continuing without it`,t),()=>{}}}function Ko(e){let{thread:t,log:n}=e;if(!(t instanceof Node))return()=>{};let r=e=>{if(!(e instanceof HTMLElement)||e.hasAttribute(`streaming`))return;let t=Wo(e);if(t&&Qa(t.textContent??``).length!==0)try{xo(t)}catch(e){n.error(`Base64 elision failed`,e)}},i=e=>{for(let t of e.querySelectorAll(Ho))r(t)};i(t);let a=new MutationObserver(e=>{for(let t of e){let e=t.target;if(t.type===`attributes`){e&&r(e);continue}for(let e of t.addedNodes)e instanceof HTMLElement&&(e.matches(Ho)?r(e):i(e));let n=e?.closest?.(Ho);n&&r(n)}});a.observe(t,{childList:!0,subtree:!0,attributes:!0,attributeFilter:Uo});let o=e=>{let{payload:t}=e.detail;try{qo(t)}catch(e){n.error(`Base64 preview failed`,e)}};return t.addEventListener(ho,o),()=>{a.disconnect(),t.removeEventListener(ho,o)}}function qo(e){if(!e.text){v.open({path:e.name,content:e.bytes.buffer,mimeType:e.mime,text:!1});return}let t=new TextDecoder().decode(e.bytes),n=Po(e.name,e.mime,t);v.open({path:e.name,content:t,mimeType:e.mime,text:!0,...n?{rendered:n}:{}})}var Jo=e({FREEZER_TINT:()=>Yo,applyComposerAvailability:()=>cs,applyShellContext:()=>ss,mountWcShell:()=>os,mountWcUiPreview:()=>ds,submittedSteer:()=>us,submittedText:()=>ls}),Yo=`#3b6cb2`,Xo=`slicc-wcui-style`,Zo=[`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;}`,oe].join(``);function Qo(e){if(e.getElementById(Xo))return;let t=e.createElement(`style`);t.id=Xo,t.textContent=Zo,e.head.appendChild(t)}var $o=null;function es(){$o?.(),$o=y()}function $(e,t={}){let n=document.createElement(e);for(let[e,r]of Object.entries(t))n.setAttribute(e,r);return n}function ts(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 ns(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 rs(){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 is(e,t){e.addEventListener(`slicc-dock-select`,e=>{let n=e.detail?.id;!n||t.has(n)})}function as(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 os(e,t){ie(document),Qo(document),es();let r=$(`div`,{class:`wcui-frame`}),i=$(`slicc-shader`,{mode:`cone`,class:`wcui-shader`}),a=$(`slicc-freezer`);a.append($(`slicc-freezer-new`));let o=$(`div`,{class:`wcui-appcol`}),s=t.urlState?{"url-state":``}:{},c=$(`slicc-shell`,s),l=$(`slicc-chatpane`),u=$(`slicc-chat-thread`,{context:`cone`,accent:`var(--waffle)`,...s});u.append(...Da(t.messages));let{composer:d,inputCard:f,composerMeta:p,queuedStack:m,lickBackpressureNotice:h}=ns(t);l.append(u,d);let{dockTree:g,tree:ee,termSurface:te,memoryHost:_,monitor:ne}=rs(),re=$(`slicc-surface`,{"surface-id":`chat`,layout:`flex`});re.append(l),g.append(re);let v=g;v.setPinned([`chat`]),v.placeSurface(`chat`,`left`);let y=$(`slicc-dock`,{"system-tools":``});c.append(g,y);let b=new Set;is(y,b),as(y,g),a.addEventListener(`freezer-toggle`,e=>{let t=e.detail?.open===!0;o.style.setProperty(`--rail-w`,t?`260px`:`44px`)});let oe=0;u.addEventListener(`scroll`,()=>{oe||=requestAnimationFrame(()=>{oe=0,i.setAttribute(`scroll`,String(Math.round(u.scrollTop)))})},{passive:!0});let{nav:se,switcher:x,floatbar:ce,avatarMenu:le}=ts(t);o.append(se,c);let ue=Ba({switcher:x,dock:y,freezer:a,composerMeta:p,composer:d,chatPane:l,inputCard:f,thread:u,frame:r,dockTree:g,fileTree:ee,memoryHost:_}),{panelHost:de,trustedLayer:fe}=ae(document);return de.append(i,a,o),r.append(de,fe),e.replaceChildren(r),Go({thread:u,log:n(`base64-preview`)}),{frame:r,panelHost:de,trustedLayer:fe,shader:i,chatPane:l,thread:u,composer:d,inputCard:f,composerMeta:p,queuedStack:m,lickBackpressureNotice:h,switcher:x,floatbar:ce,shell:c,dockTree:g,dock:y,freezer:a,fileTree:ee,termSurface:te,memoryHost:_,monitor:ne,avatarMenu:le,shortcuts:ue,overlaySurfaces:b}}function ss(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`,Yo),r.style.setProperty(`--ctx`,Yo),i.setAttribute(`ctx`,``))}function cs(e,t){e.composer.toggleAttribute(`hidden`,t),t&&e.inputCard.setAttribute(`disabled`,``)}function ls(e){return e.detail?.value}function us(e){return e.detail?.steer===!0}function ds(e){let t=os(e,{messages:we(),scoops:[{key:`cone`,type:`cone`,color:`#b07823`,label:`sliccy`,eyes:`open`,state:`working`},{key:C,type:`scoop`,color:`#06b6d4`,label:C,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=ls(e)?.trim();if(!n)return;let r={id:`wc-echo-${t.thread.childElementCount}`,role:`user`,content:n,timestamp:Date.now()};t.thread.append(...Ca(r))})}export{le as C,fe as S,la as _,us as a,Le as b,Fo as c,Gi as d,Wi as f,ya as g,Ca as h,os as i,zo as l,Ea as m,cs as n,ls as o,wa as p,ss as r,Jo as s,Yo as t,Ki as u,si as v,x as w,D as x,ke as y};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/legacy-styles-B3nS5QUo.js","assets/preload-helper-Czpn1I53.js","assets/sprinkle-manager-u_CMOEiM.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/bounded-walk-BjxKWNqp.js","assets/path-utils-DNJG-zQf.js","assets/sprinkle-renderer-1C1DNVyK.js","assets/theme-CXRqxpw6.js","assets/theme-engine-By4GU_Wc.js","assets/sprinkle-bridge-D4YmJlZ6.js","assets/hid-device-registry-B2R-0rNt.js","assets/serial-port-registry-CCqklAEr.js","assets/usb-operations-BBXJ4GF8.js","assets/usb-device-registry-CRsCisej.js","assets/shared-2T6O01rS.js","assets/mime-types-k2E6ulyv.js","assets/fetch-body-D2PwksUW.js","assets/sprinkle-instances-B8n7h-oP.js","assets/setup-sprinkle-exec-BX_Qq-Su.js","assets/dip-CwdsfUhQ.js","assets/permissions-surface-registry-CilCRwhh.js","assets/quick-llm-u8uic8QB.js","assets/account-store-QAWTf9es.js","assets/claude-model-version-BJLrDjmH.js","assets/models-BSkXF4T6.js","assets/diagnostics-DN_idNHx.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-B-zmcypy.js","assets/libesm-BypnjKEL.js","assets/proxied-fetch-DC4o4pmp.js","assets/base64-DJRlyqZu.js","assets/api-endpoint-CWeRbcY3.js","assets/float-topology-B1E_mH1v.js","assets/secret-topology-CVgFEYzE.js","assets/secrets-bridge-client-BCv_YZhX.js","assets/port-bridge-client-CVZpTSrA.js","assets/image-markers-CxJ9ZBgw.js","assets/tool-ui-eSQ1g2I1.js","assets/providers-CMdt7NIp.js","assets/bedrock-camp-compat-CgBMwna8.js","assets/llm-session-id-bZQs6gBN.js","assets/icons-BJsliYCh.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{t as n}from"./surface-fullscreen-4YjALjE7.js";import{t as r}from"./wc-unit-context-DOZ0CCmn.js";var i=`sprinkle:`,a=`slicc-sprinkle-icons`;function o(){try{let e=localStorage.getItem(a);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 s(e){try{let t=new Set(e),n=Object.fromEntries(Object.entries(o()).filter(([e])=>t.has(e)));localStorage.setItem(a,JSON.stringify(n))}catch{}}function c(e,t){try{localStorage.setItem(a,JSON.stringify({...o(),[e]:t}))}catch{}}function l(e){return typeof e==`string`&&/^[a-z0-9]+(-[a-z0-9]+)*$/.test(e)}function u(e){return`${i}${e}`}function d(e){return e?.startsWith(i)?e.slice(9):null}var f=`chat`,p=new Set([`files`,`term`,`memory`,`monitor`]),m=`right`,h=m;function g(e){return p.has(e)}var _=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(u(e),h)}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)}g(t)&&this.#a.onToolPanelActivate?.(t)}moveSurfaceToZone(e,t){this.#o()?.moveSurfaceToZone(e,t)}removeSurface(e){this.#o()?.removeSurface(e),g(e)&&this.#a.onToolPanelDeactivate?.(e)}setSurfaceSize(e,t){return this.#o()?.setSurfaceSize(e,t)??!1}seedDockItems(e){let t=o(),n=!1;for(let r of e)this.#t.has(r)||(this.#r.add(r),this.#t.set(r,{id:u(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=u(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(h,i)}#c(e,t){let n=u(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(u(e))}#u(e,t,n){this.#r.delete(e);let r=this.#d(e,n);this.#t.set(e,{id:u(e),icon:r,label:t,kind:`sprinkle`}),this.#p()}#d(e,t){return l(t)?t:o()[e]??`sparkles`}#f(e){this.#n.has(e)||(this.#t.delete(e),this.#p())}#p(){this.#e.dock.items=[...this.#t.values()]}},v=180;function y(e){e.dock.addEventListener(`slicc-dock-longpress`,t=>{let r=t.detail?.id;if(!r||d(r)===null&&!g(r))return;let i=t=>{n(e.frame??e.dockTree,r)||t<=0||requestAnimationFrame(()=>i(t-1))};i(v)})}async function b(n){let{refs:i,client:a,fs:o,instanceId:c,onAttachImage:l,onToolPanelActivate:u,onToolPanelDeactivate:f,hostSprinkleSurface:p,removeSprinkleSurface:h,log:v}=n,b=new _(i,{onToolPanelActivate:u,onToolPanelDeactivate:f,hostSprinkleSurface:p,removeSprinkleSurface:h}),{loadSprinkleStyles:S}=await e(async()=>{let{loadSprinkleStyles:e}=await import(`./legacy-styles-B3nS5QUo.js`);return{loadSprinkleStyles:e}},__vite__mapDeps([0,1]));await S();let{SprinkleManager:C,readKnownSprinkleNames:w}=await e(async()=>{let{SprinkleManager:e,readKnownSprinkleNames:t}=await import(`./sprinkle-manager-u_CMOEiM.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,23,24]));b.seedDockItems(w());let{installSprinkleManagerHandlerOverChannel:T}=await e(async()=>{let{installSprinkleManagerHandlerOverChannel:e}=await import(`./sprinkle-bridge-channel-Clwu-X1e.js`);return{installSprinkleManagerHandlerOverChannel:e}},[]),{createSprinkleExecHandler:E}=await e(async()=>{let{createSprinkleExecHandler:e}=await import(`./setup-sprinkle-exec-BX_Qq-Su.js`);return{createSprinkleExecHandler:e}},__vite__mapDeps([25,1])),{setDipExecHandler:D}=await e(async()=>{let{setDipExecHandler:e}=await import(`./dip-CwdsfUhQ.js`).then(e=>e.n);return{setDipExecHandler:e}},__vite__mapDeps([26,10,1,5,6,7,8,27,17,18,19,20,13,14,15,3,16,21,22,23])),O=t(),k=E(a),A=new C(o,e=>{e.type===`sprinkle`&&e.sprinkleName&&a.sendSprinkleLick(e.sprinkleName,e.body,e.targetScoop)},b.callbacks(),()=>{let e=r(a.getScoops());e&&a.stopScoop(e.jid)},{...O?{autoOpenBehavior:`attention`}:{},inlineSprinkles:new Set([`welcome`]),execHandler:k,onAttachImage:l??(()=>{})});if(window.__slicc_sprinkleManager=A,D(k),c!==void 0){let e=T(A,{instanceId:c});window.addEventListener(`beforeunload`,()=>e(),{once:!0})}else if(O){let{handleSprinkleOp:t}=await e(async()=>{let{handleSprinkleOp:e}=await import(`./sprinkle-op-handler-Cb1pl8Ok.js`);return{handleSprinkleOp:e}},[]);a.setSprinkleOpHandler(e=>{let{id:n,op:r,name:i,data:a,target:o}=e;t(A,n,r,i,a,o)})}i.dock.addEventListener(`slicc-dock-select`,e=>{let t=e.detail?.id,n=d(t);if(n){A.activate(n).catch(e=>v.error(`WC sprinkle activate failed`,e));return}t&&g(t)&&b.placeSurface(m,t)}),i.dock.addEventListener(`slicc-dock-collapse`,e=>{let t=e.detail?.id;if(!t)return;if(g(t)){b.removeSurface(t);return}let n=d(t);n&&A.minimize(n)}),y(i);let j=!1,M=async()=>{if(await A.refresh(),A.available().length>0){b.dropUnconfirmedSeeds();let t=A.available().map(e=>e.name),{pruneKnownSprinkleNames:n}=await e(async()=>{let{pruneKnownSprinkleNames:e}=await import(`./sprinkle-manager-u_CMOEiM.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,23,24]));n(t),s(t)}await A.restoreOpenSprinkles().catch(e=>{v.warn(`WC shell: failed to restore open sprinkles`,e)}),j||(j=!0,e(async()=>{let{pickLucideIcon:e}=await import(`./quick-llm-u8uic8QB.js`).then(e=>e.n);return{pickLucideIcon:e}},__vite__mapDeps([28,10,29,1,30,31,32,33,34,35,36,3,8,37,38,23,39,5,40,7,41,42,43,44,45,46,9,47,48,49])).then(({pickLucideIcon:e})=>x(b,A.available(),t=>e({subject:t}))).catch(()=>void 0).finally(()=>{j=!1}))};return M().catch(e=>v.warn(`WC shell: initial sprinkle resync failed`,e)),{manager:A,zone:b,resync:M}}async function x(e,t,n){let r=new Set(e.defaultIconNames()),i=o();for(let a of t){if(!r.has(a.name)||l(a.icon))continue;let t=i[a.name];if(t){e.updateDockIcon(a.name,t);continue}let o=await n(`"${a.title}" — a SLICC sprinkle panel (${a.name})`);o&&(c(a.name,o),e.updateDockIcon(a.name,o))}}export{f as CHAT_SURFACE_ID,_ as WcSprinkleZone,b as wireWcSprinkles};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/legacy-styles-B3nS5QUo.js","assets/preload-helper-Czpn1I53.js","assets/sprinkle-manager-u_CMOEiM.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/bounded-walk-BjxKWNqp.js","assets/path-utils-DNJG-zQf.js","assets/sprinkle-renderer-1C1DNVyK.js","assets/theme-CXRqxpw6.js","assets/theme-engine-By4GU_Wc.js","assets/sprinkle-bridge-D4YmJlZ6.js","assets/hid-device-registry-B2R-0rNt.js","assets/serial-port-registry-CCqklAEr.js","assets/usb-operations-BBXJ4GF8.js","assets/usb-device-registry-CRsCisej.js","assets/shared-2T6O01rS.js","assets/mime-types-k2E6ulyv.js","assets/fetch-body-D2PwksUW.js","assets/sprinkle-instances-B8n7h-oP.js","assets/setup-sprinkle-exec-BX_Qq-Su.js","assets/dip-CwdsfUhQ.js","assets/permissions-surface-registry-CilCRwhh.js","assets/quick-llm-kUXqAL2W.js","assets/account-store-DHbYljA2.js","assets/claude-model-version-BJLrDjmH.js","assets/models-BSkXF4T6.js","assets/diagnostics-DN_idNHx.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-B-zmcypy.js","assets/libesm-BypnjKEL.js","assets/proxied-fetch-DuC82T1c.js","assets/base64-DJRlyqZu.js","assets/api-endpoint-CWeRbcY3.js","assets/float-topology-D_ESvEeq.js","assets/secret-topology-D5sJYeG9.js","assets/secrets-bridge-client-aihv9k6e.js","assets/port-bridge-client-DX2fz9_b.js","assets/image-markers-CxJ9ZBgw.js","assets/tool-ui-eSQ1g2I1.js","assets/providers-Ca2x4vLj.js","assets/bedrock-camp-compat-CgBMwna8.js","assets/llm-session-id-bZQs6gBN.js","assets/icons-BJsliYCh.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{t as n}from"./surface-fullscreen-4YjALjE7.js";import{t as r}from"./wc-unit-context-DOZ0CCmn.js";var i=`sprinkle:`,a=`slicc-sprinkle-icons`;function o(){try{let e=localStorage.getItem(a);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 s(e){try{let t=new Set(e),n=Object.fromEntries(Object.entries(o()).filter(([e])=>t.has(e)));localStorage.setItem(a,JSON.stringify(n))}catch{}}function c(e,t){try{localStorage.setItem(a,JSON.stringify({...o(),[e]:t}))}catch{}}function l(e){return typeof e==`string`&&/^[a-z0-9]+(-[a-z0-9]+)*$/.test(e)}function u(e){return`${i}${e}`}function d(e){return e?.startsWith(i)?e.slice(9):null}var f=`chat`,p=new Set([`files`,`term`,`memory`,`monitor`]),m=`right`,h=m;function g(e){return p.has(e)}var _=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(u(e),h)}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)}g(t)&&this.#a.onToolPanelActivate?.(t)}moveSurfaceToZone(e,t){this.#o()?.moveSurfaceToZone(e,t)}removeSurface(e){this.#o()?.removeSurface(e),g(e)&&this.#a.onToolPanelDeactivate?.(e)}setSurfaceSize(e,t){return this.#o()?.setSurfaceSize(e,t)??!1}seedDockItems(e){let t=o(),n=!1;for(let r of e)this.#t.has(r)||(this.#r.add(r),this.#t.set(r,{id:u(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=u(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(h,i)}#c(e,t){let n=u(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(u(e))}#u(e,t,n){this.#r.delete(e);let r=this.#d(e,n);this.#t.set(e,{id:u(e),icon:r,label:t,kind:`sprinkle`}),this.#p()}#d(e,t){return l(t)?t:o()[e]??`sparkles`}#f(e){this.#n.has(e)||(this.#t.delete(e),this.#p())}#p(){this.#e.dock.items=[...this.#t.values()]}},v=180;function y(e){e.dock.addEventListener(`slicc-dock-longpress`,t=>{let r=t.detail?.id;if(!r||d(r)===null&&!g(r))return;let i=t=>{n(e.frame??e.dockTree,r)||t<=0||requestAnimationFrame(()=>i(t-1))};i(v)})}async function b(n){let{refs:i,client:a,fs:o,instanceId:c,onAttachImage:l,onToolPanelActivate:u,onToolPanelDeactivate:f,hostSprinkleSurface:p,removeSprinkleSurface:h,log:v}=n,b=new _(i,{onToolPanelActivate:u,onToolPanelDeactivate:f,hostSprinkleSurface:p,removeSprinkleSurface:h}),{loadSprinkleStyles:S}=await e(async()=>{let{loadSprinkleStyles:e}=await import(`./legacy-styles-B3nS5QUo.js`);return{loadSprinkleStyles:e}},__vite__mapDeps([0,1]));await S();let{SprinkleManager:C,readKnownSprinkleNames:w}=await e(async()=>{let{SprinkleManager:e,readKnownSprinkleNames:t}=await import(`./sprinkle-manager-u_CMOEiM.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,23,24]));b.seedDockItems(w());let{installSprinkleManagerHandlerOverChannel:T}=await e(async()=>{let{installSprinkleManagerHandlerOverChannel:e}=await import(`./sprinkle-bridge-channel-Clwu-X1e.js`);return{installSprinkleManagerHandlerOverChannel:e}},[]),{createSprinkleExecHandler:E}=await e(async()=>{let{createSprinkleExecHandler:e}=await import(`./setup-sprinkle-exec-BX_Qq-Su.js`);return{createSprinkleExecHandler:e}},__vite__mapDeps([25,1])),{setDipExecHandler:D}=await e(async()=>{let{setDipExecHandler:e}=await import(`./dip-CwdsfUhQ.js`).then(e=>e.n);return{setDipExecHandler:e}},__vite__mapDeps([26,10,1,5,6,7,8,27,17,18,19,20,13,14,15,3,16,21,22,23])),O=t(),k=E(a),A=new C(o,e=>{e.type===`sprinkle`&&e.sprinkleName&&a.sendSprinkleLick(e.sprinkleName,e.body,e.targetScoop)},b.callbacks(),()=>{let e=r(a.getScoops());e&&a.stopScoop(e.jid)},{...O?{autoOpenBehavior:`attention`}:{},inlineSprinkles:new Set([`welcome`]),execHandler:k,onAttachImage:l??(()=>{})});if(window.__slicc_sprinkleManager=A,D(k),c!==void 0){let e=T(A,{instanceId:c});window.addEventListener(`beforeunload`,()=>e(),{once:!0})}else if(O){let{handleSprinkleOp:t}=await e(async()=>{let{handleSprinkleOp:e}=await import(`./sprinkle-op-handler-Cb1pl8Ok.js`);return{handleSprinkleOp:e}},[]);a.setSprinkleOpHandler(e=>{let{id:n,op:r,name:i,data:a,target:o}=e;t(A,n,r,i,a,o)})}i.dock.addEventListener(`slicc-dock-select`,e=>{let t=e.detail?.id,n=d(t);if(n){A.activate(n).catch(e=>v.error(`WC sprinkle activate failed`,e));return}t&&g(t)&&b.placeSurface(m,t)}),i.dock.addEventListener(`slicc-dock-collapse`,e=>{let t=e.detail?.id;if(!t)return;if(g(t)){b.removeSurface(t);return}let n=d(t);n&&A.minimize(n)}),y(i);let j=!1,M=async()=>{if(await A.refresh(),A.available().length>0){b.dropUnconfirmedSeeds();let t=A.available().map(e=>e.name),{pruneKnownSprinkleNames:n}=await e(async()=>{let{pruneKnownSprinkleNames:e}=await import(`./sprinkle-manager-u_CMOEiM.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,23,24]));n(t),s(t)}await A.restoreOpenSprinkles().catch(e=>{v.warn(`WC shell: failed to restore open sprinkles`,e)}),j||(j=!0,e(async()=>{let{pickLucideIcon:e}=await import(`./quick-llm-kUXqAL2W.js`).then(e=>e.n);return{pickLucideIcon:e}},__vite__mapDeps([28,10,29,1,30,31,32,33,34,35,36,3,8,37,38,23,39,5,40,7,41,42,43,44,45,46,9,47,48,49])).then(({pickLucideIcon:e})=>x(b,A.available(),t=>e({subject:t}))).catch(()=>void 0).finally(()=>{j=!1}))};return M().catch(e=>v.warn(`WC shell: initial sprinkle resync failed`,e)),{manager:A,zone:b,resync:M}}async function x(e,t,n){let r=new Set(e.defaultIconNames()),i=o();for(let a of t){if(!r.has(a.name)||l(a.icon))continue;let t=i[a.name];if(t){e.updateDockIcon(a.name,t);continue}let o=await n(`"${a.title}" — a SLICC sprinkle panel (${a.name})`);o&&(c(a.name,o),e.updateDockIcon(a.name,o))}}export{f as CHAT_SURFACE_ID,_ as WcSprinkleZone,b as wireWcSprinkles};