sliccy 5.81.0 → 5.81.1

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 (80) hide show
  1. package/dist/node-server/_shared/tray-sync-protocol.d.ts +83 -0
  2. package/dist/node-server/_shared/tray-sync-protocol.d.ts.map +1 -1
  3. package/dist/node-server/_shared/tray-sync-protocol.js +80 -0
  4. package/dist/node-server/_shared/tray-sync-protocol.js.map +1 -1
  5. package/dist/ui/assets/{account-store-xYSvTVDf.js → account-store-BGknIvF5.js} +1 -1
  6. package/dist/ui/assets/{account-store-CnsbdqGs.js → account-store-_zdp6mzD.js} +1 -1
  7. package/dist/ui/assets/{adobe-DNxWyVGn.js → adobe-CL5sTQ_M.js} +1 -1
  8. package/dist/ui/assets/{adobe-BMAAqjBy.js → adobe-nq2KBpbI.js} +1 -1
  9. package/dist/ui/assets/{apps-NBeed6Ba.js → apps-DeoB4e-v.js} +1 -1
  10. package/dist/ui/assets/{azure-openai-DOUb-32X.js → azure-openai-BOgm7XaD.js} +1 -1
  11. package/dist/ui/assets/{azure-openai-Ce8fr_I0.js → azure-openai-D4MYaEIK.js} +1 -1
  12. package/dist/ui/assets/{cdp-sNqqsD81.js → cdp-BvZO3XX0.js} +1 -1
  13. package/dist/ui/assets/{cerebras-BrRsvEp8.js → cerebras-CQZCD5wC.js} +1 -1
  14. package/dist/ui/assets/{cerebras-q7yoL9Vx.js → cerebras-D7hzizPp.js} +1 -1
  15. package/dist/ui/assets/{connect-surface-Dmv8Gx1q.js → connect-surface-DDgO-Z8P.js} +1 -1
  16. package/dist/ui/assets/{fs-9Edvps3G.js → fs-5Ejpgldb.js} +1 -1
  17. package/dist/ui/assets/{fs-EsjNTaH2.js → fs-C9QA_c_z.js} +2 -2
  18. package/dist/ui/assets/{github-BcSJUL60.js → github-BVefDVjv.js} +2 -2
  19. package/dist/ui/assets/{github-DQoq6iX2.js → github-BwAaz5UC.js} +1 -1
  20. package/dist/ui/assets/{github-copilot-C1KCtETc.js → github-copilot-CV9PN65Y.js} +1 -1
  21. package/dist/ui/assets/{github-copilot-Cgio0dCX.js → github-copilot-Yi2xfmi8.js} +1 -1
  22. package/dist/ui/assets/{kernel-worker-D5D_WHJd.js → kernel-worker-DG7f3ZBl.js} +19 -19
  23. package/dist/ui/assets/{local-llm-CGHf33Kw.js → local-llm-3Zbqv28d.js} +1 -1
  24. package/dist/ui/assets/{local-llm-B0OzumsB.js → local-llm-8K484-vc.js} +1 -1
  25. package/dist/ui/assets/{main-zZ6eY8Da.js → main-DjTYc_U7.js} +3 -3
  26. package/dist/ui/assets/main-cherry-CQ53lnqT.js +1 -0
  27. package/dist/ui/assets/{mount-DoqzFEXd.js → mount-Bd4wvNY6.js} +1 -1
  28. package/dist/ui/assets/{mount-CzMCUvO9.js → mount-DJZqkYJr.js} +2 -2
  29. package/dist/ui/assets/{mount-recovery-DfnGC5I_.js → mount-recovery-BNRi3wQa.js} +1 -1
  30. package/dist/ui/assets/{new-session-DyRo1Eco.js → new-session-DtgGa9Jn.js} +2 -2
  31. package/dist/ui/assets/{oauth-bootstrap-0qrIoobl.js → oauth-bootstrap-BTNEOCbX.js} +2 -2
  32. package/dist/ui/assets/{openai-codex-C9UQImqi.js → openai-codex-Ceag_oEb.js} +1 -1
  33. package/dist/ui/assets/{openai-codex-C9OyU8o1.js → openai-codex-YeOErHbk.js} +1 -1
  34. package/dist/ui/assets/{openrouter-CHKHn-ev.js → openrouter-B2SCfJLK.js} +1 -1
  35. package/dist/ui/assets/{openrouter-iDab93ad.js → openrouter-CSC0slYV.js} +1 -1
  36. package/dist/ui/assets/{openrouter-oauth-DWf-w6qg.js → openrouter-oauth-NmkNQ74_.js} +1 -1
  37. package/dist/ui/assets/{openrouter-oauth-CsR1cUVM.js → openrouter-oauth-rLhm7A5Z.js} +1 -1
  38. package/dist/ui/assets/page-follower-tray-M1U7Y86m.js +5 -0
  39. package/dist/ui/assets/{panel-rpc-handlers-CFrx4Jlf.js → panel-rpc-handlers-DYrmbjcN.js} +2 -2
  40. package/dist/ui/assets/{provider-rUMPurIq.js → provider-Bxo4n6ky.js} +1 -1
  41. package/dist/ui/assets/{provider-BPmBmwlg.js → provider-DshCPlSg.js} +2 -2
  42. package/dist/ui/assets/{provider-settings-C1qOrG_P.js → provider-settings-DPkJU6NX.js} +1 -1
  43. package/dist/ui/assets/{provider-settings-CwC3s4dq.js → provider-settings-u0GThJ1y.js} +1 -1
  44. package/dist/ui/assets/provider-store-access-BNLkotR2.js +1 -0
  45. package/dist/ui/assets/{provider-store-access-B5rTgp4f.js → provider-store-access-DXnBoOud.js} +2 -2
  46. package/dist/ui/assets/{providers-BPbl6SNP.js → providers-Ka6IRp3Z.js} +2 -2
  47. package/dist/ui/assets/{providers-DVjwJG_9.js → providers-a_z4Ov56.js} +1 -1
  48. package/dist/ui/assets/{quick-llm-C5hHS8bY.js → quick-llm-BA77ecRu.js} +1 -1
  49. package/dist/ui/assets/{remote-cdp-transport-CG3TFBoT.js → remote-cdp-transport-BWNdvwP2.js} +1 -1
  50. package/dist/ui/assets/{session-freezer-C0C2eaUY.js → session-freezer-CDyixR_6.js} +2 -2
  51. package/dist/ui/assets/{setup-standalone-prelude-CX-1Pjyi.js → setup-standalone-prelude-CfCDqksx.js} +2 -2
  52. package/dist/ui/assets/{setup-sudo-Bi_zFnHj.js → setup-sudo-CkEb3BGh.js} +2 -2
  53. package/dist/ui/assets/{skills-TglFyJbX.js → skills-CMN9LOUh.js} +1 -1
  54. package/dist/ui/assets/{store-HG-MJkvn.js → store-B2nD1hT0.js} +1 -1
  55. package/dist/ui/assets/{sudo-E-zH05fN.js → sudo-C2AvYMgs.js} +1 -1
  56. package/dist/ui/assets/tray-sync-protocol-DdoErB3E.js +1 -0
  57. package/dist/ui/assets/{upgrade-detection-4Q-TH5DV.js → upgrade-detection-C1jt7UkZ.js} +1 -1
  58. package/dist/ui/assets/{wc-browser-DunWpcR7.js → wc-browser-BQYjgdk8.js} +1 -1
  59. package/dist/ui/assets/{wc-extension-D4WIw7lS.js → wc-extension-LNNkWJwb.js} +2 -2
  60. package/dist/ui/assets/wc-follower-IyROTJv8.js +17 -0
  61. package/dist/ui/assets/{wc-live-Cr_lzQLV.js → wc-live-DS2c8ilA.js} +3 -3
  62. package/dist/ui/assets/{wc-nav-BcK44lTt.js → wc-nav-RS_Lngin.js} +2 -2
  63. package/dist/ui/assets/{wc-onboarding-duye_WQQ.js → wc-onboarding-B7-HkOV1.js} +2 -2
  64. package/dist/ui/assets/{wc-placeholder-D-3-3ZU1.js → wc-placeholder-C04yLy2C.js} +2 -2
  65. package/dist/ui/assets/{wc-settings-BwrldiA6.js → wc-settings-X6JHmU1P.js} +2 -2
  66. package/dist/ui/assets/{wc-shell-B8DYS8PU.js → wc-shell-DyN3sJGs.js} +21 -21
  67. package/dist/ui/assets/{wc-sprinkles-CanUjHHv.js → wc-sprinkles-DsowbFTY.js} +2 -2
  68. package/dist/ui/assets/wc-tray-BAjyH9tL.js +2 -0
  69. package/dist/ui/assets/{xai-grok-0kE9sJMd.js → xai-grok-DUYwY6AL.js} +1 -1
  70. package/dist/ui/assets/{xai-grok-DvaumQw1.js → xai-grok-uMtVbnbe.js} +1 -1
  71. package/dist/ui/index.html +6 -6
  72. package/dist/ui/llm-proxy-sw.js +1 -1
  73. package/dist/ui/packages/webapp/index.html +6 -6
  74. package/package.json +1 -1
  75. package/dist/ui/assets/main-cherry-BcFQ7E1u.js +0 -1
  76. package/dist/ui/assets/page-follower-tray-BrSvgCHw.js +0 -5
  77. package/dist/ui/assets/provider-store-access-B3IZTIJV.js +0 -1
  78. package/dist/ui/assets/tray-sync-protocol-D44N11jm.js +0 -1
  79. package/dist/ui/assets/wc-follower-DlLSncVW.js +0 -17
  80. package/dist/ui/assets/wc-tray-DhZqWqgp.js +0 -2
@@ -1,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/quick-llm-C5hHS8bY.js","assets/rolldown-runtime-aKtaBQYM.js","assets/account-store-xYSvTVDf.js","assets/preload-helper-Czpn1I53.js","assets/compat-aVSWLlYQ.js","assets/models-Bnh9VDA1.js","assets/event-stream-qbAZIAKV.js","assets/provider-env-D37PhSJu.js","assets/__vite-browser-external-SwrSgYTf.js","assets/openrouter.models-DS1_VkCm.js","assets/context-compaction-_UkD06XB.js","assets/logger-DDBAeTLF.js","assets/src-DoFhVmQT.js","assets/proxied-fetch-CfcFb0B0.js","assets/base64-DpPqYZJF.js","assets/runtime-env-DH4NDw4t.js","assets/fetch-body-D2PwksUW.js","assets/secret-topology-Baeul5rD.js","assets/secrets-bridge-client-CLRo0NLf.js","assets/port-bridge-client-DdolH4cw.js","assets/tool-ui-DfXu6quJ.js","assets/providers-BPbl6SNP.js","assets/panel-rpc-DmJSNs0I.js","assets/bedrock-camp-CVignIdH.js","assets/transform-messages-wECJwtH0.js","assets/llm-session-id-bZQs6gBN.js","assets/icons-C5g936Qd.js"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/quick-llm-BA77ecRu.js","assets/rolldown-runtime-aKtaBQYM.js","assets/account-store-BGknIvF5.js","assets/preload-helper-Czpn1I53.js","assets/compat-aVSWLlYQ.js","assets/models-Bnh9VDA1.js","assets/event-stream-qbAZIAKV.js","assets/provider-env-D37PhSJu.js","assets/__vite-browser-external-SwrSgYTf.js","assets/openrouter.models-DS1_VkCm.js","assets/context-compaction-_UkD06XB.js","assets/logger-DDBAeTLF.js","assets/src-DoFhVmQT.js","assets/proxied-fetch-CfcFb0B0.js","assets/base64-DpPqYZJF.js","assets/runtime-env-DH4NDw4t.js","assets/fetch-body-D2PwksUW.js","assets/secret-topology-Baeul5rD.js","assets/secrets-bridge-client-CLRo0NLf.js","assets/port-bridge-client-DdolH4cw.js","assets/tool-ui-DfXu6quJ.js","assets/providers-Ka6IRp3Z.js","assets/panel-rpc-DmJSNs0I.js","assets/bedrock-camp-CVignIdH.js","assets/transform-messages-wECJwtH0.js","assets/llm-session-id-bZQs6gBN.js","assets/icons-C5g936Qd.js"])))=>i.map(i=>d[i]);
2
2
  import{t as e}from"./preload-helper-Czpn1I53.js";import{a as t}from"./dictation-priming-DGpw1lUV.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-C5hHS8bY.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]))).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-BA77ecRu.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]))).quickLabel)({system:i,prompt:`Recent conversation:\n${n}`,maxTokens:40,signal:t.signal});t.signal?.aborted||t.currentValue.length>0||t.setPlaceholder(r&&r.length>0?r:t.defaultPlaceholder)}function c(e,t,n){t===n?(e.removeAttribute(`suggestion`),e.setAttribute(`placeholder`,t)):e.setAttribute(`suggestion`,t)}function l(e){let t=null;return()=>{e.inputCard.hasAttribute(`disabled`)||(t?.abort(),t=new AbortController,s({messages:e.getMessages(),currentValue:e.inputCard.value??``,setPlaceholder:t=>c(e.inputCard,t,e.defaultPlaceholder),defaultPlaceholder:e.defaultPlaceholder,signal:t.signal}).catch(()=>void 0))}}export{l as createPlaceholderRefresher};
@@ -1,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/oauth-service-Dk3L2UWh.js","assets/preload-helper-Czpn1I53.js","assets/proxied-fetch-CfcFb0B0.js","assets/rolldown-runtime-aKtaBQYM.js","assets/base64-DpPqYZJF.js","assets/src-DoFhVmQT.js","assets/runtime-env-DH4NDw4t.js","assets/fetch-body-D2PwksUW.js","assets/panel-rpc-DmJSNs0I.js","assets/wc-permissions-registry-Blyunq37.js","assets/provider-settings-C1qOrG_P.js","assets/account-store-xYSvTVDf.js","assets/compat-aVSWLlYQ.js","assets/models-Bnh9VDA1.js","assets/event-stream-qbAZIAKV.js","assets/provider-env-D37PhSJu.js","assets/__vite-browser-external-SwrSgYTf.js","assets/openrouter.models-DS1_VkCm.js","assets/context-compaction-_UkD06XB.js","assets/logger-DDBAeTLF.js","assets/secret-topology-Baeul5rD.js","assets/secrets-bridge-client-CLRo0NLf.js","assets/port-bridge-client-DdolH4cw.js","assets/tool-ui-DfXu6quJ.js","assets/providers-BPbl6SNP.js","assets/bedrock-camp-CVignIdH.js","assets/transform-messages-wECJwtH0.js","assets/tray-runtime-config-9kTxza5l.js","assets/messages-BD4p8GuF.js","assets/tray-follower-status-5SqDRLX8.js","assets/clipboard-DuHpK59o.js","assets/telemetry-Dxrv_mDE.js","assets/tray-join-url-BIvzbiFR.js"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/oauth-service-Dk3L2UWh.js","assets/preload-helper-Czpn1I53.js","assets/proxied-fetch-CfcFb0B0.js","assets/rolldown-runtime-aKtaBQYM.js","assets/base64-DpPqYZJF.js","assets/src-DoFhVmQT.js","assets/runtime-env-DH4NDw4t.js","assets/fetch-body-D2PwksUW.js","assets/panel-rpc-DmJSNs0I.js","assets/wc-permissions-registry-Blyunq37.js","assets/provider-settings-DPkJU6NX.js","assets/account-store-BGknIvF5.js","assets/compat-aVSWLlYQ.js","assets/models-Bnh9VDA1.js","assets/event-stream-qbAZIAKV.js","assets/provider-env-D37PhSJu.js","assets/__vite-browser-external-SwrSgYTf.js","assets/openrouter.models-DS1_VkCm.js","assets/context-compaction-_UkD06XB.js","assets/logger-DDBAeTLF.js","assets/secret-topology-Baeul5rD.js","assets/secrets-bridge-client-CLRo0NLf.js","assets/port-bridge-client-DdolH4cw.js","assets/tool-ui-DfXu6quJ.js","assets/providers-Ka6IRp3Z.js","assets/bedrock-camp-CVignIdH.js","assets/transform-messages-wECJwtH0.js","assets/tray-runtime-config-9kTxza5l.js","assets/messages-BD4p8GuF.js","assets/tray-follower-status-5SqDRLX8.js","assets/clipboard-DuHpK59o.js","assets/telemetry-Dxrv_mDE.js","assets/tray-join-url-BIvzbiFR.js"])))=>i.map(i=>d[i]);
2
2
  import{t as e}from"./preload-helper-Czpn1I53.js";import{a as t,c as n,d as r,f as i,i as a,l as o,m as s,o as c,s as l,t as u,u as d}from"./theme-engine-jfuTMXZM.js";import{t as f}from"./theme-C8b_iQ_9.js";import{n as p,t as m}from"./discovery-preference-C0L_79z7.js";import{i as h,n as g}from"./timestamp-preference-DgrTvVNx.js";var _={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`]},v=`slicc-wc-settings-style`,y=`
3
3
  /* Width is owned by the dialog card (via ::part) — a min-width on the body
4
4
  used to overflow the card's content box and clip the row borders. */
@@ -48,4 +48,4 @@ slicc-dialog.wcset-dialog::part(dialog){width:min(520px,92vw);}
48
48
  .wcset__toggle-row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--canvas);}
49
49
  .wcset__toggle-row label{font-size:13px;font-weight:500;color:var(--ink);}
50
50
  .wcset__toggle-row input[type="checkbox"]{width:16px;height:16px;accent-color:var(--ctx);}
51
- `;function b(e){if(e.getElementById(v))return;let t=e.createElement(`style`);t.id=v,t.textContent=y,e.head.appendChild(t)}function x(e,t){let n=document.createElement(`div`);return n.className=e,t!==void 0&&(n.textContent=t),n}function S(e,t,n){let r=document.createElement(`button`);return r.type=`button`,r.className=e,r.textContent=t,r.addEventListener(`click`,n),r}function C(e){return e?e.length<=8?`••••`:`${e.slice(0,4)}…${e.slice(-4)}`:``}function w(e){let t;return t=e.loggedOut?e.userName?`Logged out — was ${e.userName}`:`Logged out`:e.userName?e.userName:e.accessToken?`Logged in`:C(e.apiKey),e.baseUrl?`${t} • ${e.baseUrl}`:t}async function T(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-Dk3L2UWh.js`);return{createInterceptingOAuthLauncherForCurrentRuntime:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9])),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-Dk3L2UWh.js`);return{createOAuthLauncher:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9]));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 E(e,t,n){let{ps:r,log:i,setStatus:a,renderList:o}=n,s=x(`wcset__row`),c=x(`wcset__info`);if(c.append(x(`wcset__name`,t.name),x(`wcset__detail`,w(e))),s.append(c),t.isOAuth){let t=e.loggedOut===!0;s.append(S(`wcset__btn`,t?`Log in`:`Log out`,()=>{t?T(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(S(`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 D(e){let{ps:t,setStatus:n}=e,r=x(`wcset__add`);r.append(x(`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=x(`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(S(`wcset__btn wcset__btn--primary`,`Login with ${a.name}`,()=>{T(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(S(`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 O(){let e=x(`wcset__add`);e.append(x(`wcset__section-label`,`Chat`));let t=x(`wcset__toggle-row`),n=document.createElement(`label`);n.textContent=`Show timestamps`;let r=document.createElement(`input`);return r.type=`checkbox`,r.checked=g(),r.addEventListener(`change`,()=>h(r.checked)),t.append(n,r),e.append(t),e}function k(){let e=x(`wcset__add`);e.append(x(`wcset__section-label`,`Browsing`));let t=x(`wcset__toggle-row`),n=document.createElement(`label`);n.textContent=`Autodiscover agentic resources`;let r=document.createElement(`input`);return r.type=`checkbox`,r.checked=m(),r.addEventListener(`change`,()=>p(r.checked)),t.append(n,r),e.append(t),e}function A(e){let c=x(`wcset__appearance`);c.append(x(`wcset__section-label`,`Appearance`));let u=n(),p=x(`wcset__preset-grid`),m=document.createElement(`div`);m.className=`wcset__preset-swatch${u?``:` wcset__preset-swatch--active`}`,m.innerHTML=[`#161618`,`#1f1f22`,`#f59e0b`].map(e=>`<div class="wcset__preset-swatch__stripe" style="background:${e}"></div>`).join(``)+`<div class="wcset__preset-name">Default</div>`,m.addEventListener(`click`,()=>{a(),f(),v()}),p.append(m);for(let e of s){let t=document.createElement(`div`);t.className=`wcset__preset-swatch${u===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`,()=>{i(e.id),f(),v()}),p.append(t)}c.append(p);let h=o().filter(e=>e.id!==`__preview`);if(h.length>0){let e=x(`wcset__custom-themes`);e.append(x(`wcset__section-label`,`My Themes`));for(let n of h){let r=x(`wcset__custom-row`),a=x(`wcset__custom-row__name`,n.name);u===n.id&&(a.style.fontWeight=`700`),r.append(a),r.append(S(`wcset__btn`,`Use`,()=>{i(n.id),f(),v()})),r.append(S(`wcset__btn`,`Edit`,()=>{y(n)})),r.append(S(`wcset__btn`,`Export`,()=>{let e=new Blob([l(n)],{type:`application/json`}),t=URL.createObjectURL(e),r=document.createElement(`a`);r.href=t,r.download=`${n.name.toLowerCase().replace(/\s+/g,`-`)}.slicc-theme.json`,r.click(),URL.revokeObjectURL(t)})),r.append(S(`wcset__btn wcset__btn--danger`,`×`,()=>{t(n.id),f(),v()})),e.append(r)}c.append(e)}let g=x(``);g.style.cssText=`display:flex;gap:8px;`,g.append(S(`wcset__btn wcset__btn--primary`,`+ Create Custom Theme`,()=>{y(null)})),g.append(S(`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=d(t);r(n),e.setStatus(`Imported "${n.name}".`),v()}catch(t){e.setStatus(`Import failed: ${t instanceof Error?t.message:String(t)}`,!0)}})}),t.click()})),c.append(g);let _=x(``);c.append(_);function v(){let t=c.parentElement;if(!t)return;let n=A(e);t.replaceChild(n,c)}function y(t){_.replaceChildren(L(t,e,v))}return c}function j(e,t,n,r){let i=[],a=c(e,t);for(let[e,t]of Object.entries(_)){i.push(x(`wcset__section-label`,e));let o=x(`wcset__advanced-grid`);for(let e of t){let t=x(`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 M(e,t,n,r,i){let a=[];for(let[r,o]of[[`background`,`Background`],[`text`,`Text`],[`accent`,`Links & buttons`]]){let s=x(`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(x(`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=x(`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 N(e,t){let n=x(`wcset__builder-row`),r=document.createElement(`label`);r.textContent=`Base`;let i=x(`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 P(e,t){let n=x(``);return n.style.cssText=`display:flex;gap:8px;margin-top:8px;`,n.append(S(`wcset__btn wcset__btn--primary`,`Save`,e)),n.append(S(`wcset__btn`,`Cancel`,t)),n}function F(e){return{userBubble:{background:e.bubbleBg,text:e.bubbleText},nav:{background:e.navBg},composer:{background:e.composerBg}}}function I(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 L(e,n,o){let s=x(`wcset__builder`),l=e?.base??`dark`,d=e?.disableShader??!1,p=!1,m={background:e?.tokens[`--s2-gray-25`]||(l===`dark`?`#1a1a1a`:`#ffffff`),surface:``,text:e?.tokens[`--s2-content-default`]||e?.tokens[`--s2-gray-900`]||(l===`dark`?`#e8e8e8`:`#131313`),accent:e?.tokens[`--s2-accent`]||`#3562ff`,border:``,success:`#2d9d78`,error:`#e34850`},h={background:1,text:1,accent:1},g=I(e,l),_={},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=l===`dark`;m.surface=u(m.background,e?.1:-.08),m.border=u(m.background,e?.15:-.12),m.success=`#2d9d78`,m.error=`#e34850`}function S(){b();let e={...c(m,l),..._};for(let[t,n]of Object.entries(h))if(n<1&&m[t]){let r=m[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}`)}r({id:`__preview`,name:`Preview`,base:l,tokens:e,disableShader:d,components:F(g)}),i(`__preview`),f()}function C(){s.replaceChildren();let u=x(`wcset__builder-row`),w=document.createElement(`label`);w.textContent=`Name`,u.append(w,v),s.append(u),s.append(N(l,e=>{l=e,C(),S()}));let T={disabled:d};for(let e of M(m,h,T,g,()=>{d=T.disabled,S()}))s.append(e);let E=document.createElement(`button`);if(E.className=`wcset__advanced-toggle`,E.textContent=p?`Hide advanced`:`Show advanced`,E.addEventListener(`click`,()=>{p=!p,C()}),s.append(E),p)for(let e of j(m,l,_,S))s.append(e);s.append(P(()=>{let a=v.value.trim();if(!a){n.setStatus(`Name is required.`,!0);return}b();let s={...c(m,l),..._},u=e?.id??y(),p={id:u,name:a,base:l,tokens:s,disableShader:d,components:F(g)};t(`__preview`),r(p),i(u),f(),n.setStatus(`Saved "${a}".`),o()},()=>{t(`__preview`),e?i(e.id):a(),f(),o()}))}return C(),S(),s}async function R(t){let n=await e(()=>import(`./provider-settings-C1qOrG_P.js`).then(e=>e.t),__vite__mapDeps([10,3,11,1,12,13,14,15,16,17,18,19,5,2,4,6,7,20,21,22,23,24,8,25,26,27,28,29,30,31,32]));b(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=x(`wcset`),o=x(`wcset__list`),s=x(`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=x(``),f={ps:n,log:t,setStatus:c,renderList:()=>{u(),o.replaceChildren();let e=n.getAccounts();if(e.length===0)o.append(x(`wcset__empty`,`No accounts configured.`));else for(let t of e)o.append(E(t,n.getProviderConfig(t.providerId),f));d.replaceChildren(D(f))}};f.renderList(),a.append(o,d,s),i.append(a);let p=S(`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 z(e){return b(document),t(`__preview`),new Promise(r=>{let o=document.createElement(`slicc-dialog`);o.classList.add(`wcset-dialog`),o.setAttribute(`heading`,`Theme`);let s=x(`wcset`),c=x(`wcset__status`),l=A({ps:null,log:e,setStatus:(e,t=!1)=>{c.textContent=e,c.toggleAttribute(`data-error`,t)},renderList:()=>{}}),u=O(),d=k();s.append(l,u,d,c),o.append(s);let p=S(`wcset__btn wcset__btn--primary`,`Done`,()=>{o.hide?.()});p.setAttribute(`slot`,`footer`),o.append(p);let m=n();o.addEventListener(`slicc-dialog-close`,()=>{n()===`__preview`&&(t(`__preview`),m&&m!==`__preview`?i(m):a(),f()),o.remove(),r()}),document.body.append(o),o.show?.()})}export{z as showThemeSettings,R as showWcSettings};
51
+ `;function b(e){if(e.getElementById(v))return;let t=e.createElement(`style`);t.id=v,t.textContent=y,e.head.appendChild(t)}function x(e,t){let n=document.createElement(`div`);return n.className=e,t!==void 0&&(n.textContent=t),n}function S(e,t,n){let r=document.createElement(`button`);return r.type=`button`,r.className=e,r.textContent=t,r.addEventListener(`click`,n),r}function C(e){return e?e.length<=8?`••••`:`${e.slice(0,4)}…${e.slice(-4)}`:``}function w(e){let t;return t=e.loggedOut?e.userName?`Logged out — was ${e.userName}`:`Logged out`:e.userName?e.userName:e.accessToken?`Logged in`:C(e.apiKey),e.baseUrl?`${t} • ${e.baseUrl}`:t}async function T(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-Dk3L2UWh.js`);return{createInterceptingOAuthLauncherForCurrentRuntime:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9])),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-Dk3L2UWh.js`);return{createOAuthLauncher:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9]));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 E(e,t,n){let{ps:r,log:i,setStatus:a,renderList:o}=n,s=x(`wcset__row`),c=x(`wcset__info`);if(c.append(x(`wcset__name`,t.name),x(`wcset__detail`,w(e))),s.append(c),t.isOAuth){let t=e.loggedOut===!0;s.append(S(`wcset__btn`,t?`Log in`:`Log out`,()=>{t?T(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(S(`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 D(e){let{ps:t,setStatus:n}=e,r=x(`wcset__add`);r.append(x(`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=x(`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(S(`wcset__btn wcset__btn--primary`,`Login with ${a.name}`,()=>{T(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(S(`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 O(){let e=x(`wcset__add`);e.append(x(`wcset__section-label`,`Chat`));let t=x(`wcset__toggle-row`),n=document.createElement(`label`);n.textContent=`Show timestamps`;let r=document.createElement(`input`);return r.type=`checkbox`,r.checked=g(),r.addEventListener(`change`,()=>h(r.checked)),t.append(n,r),e.append(t),e}function k(){let e=x(`wcset__add`);e.append(x(`wcset__section-label`,`Browsing`));let t=x(`wcset__toggle-row`),n=document.createElement(`label`);n.textContent=`Autodiscover agentic resources`;let r=document.createElement(`input`);return r.type=`checkbox`,r.checked=m(),r.addEventListener(`change`,()=>p(r.checked)),t.append(n,r),e.append(t),e}function A(e){let c=x(`wcset__appearance`);c.append(x(`wcset__section-label`,`Appearance`));let u=n(),p=x(`wcset__preset-grid`),m=document.createElement(`div`);m.className=`wcset__preset-swatch${u?``:` wcset__preset-swatch--active`}`,m.innerHTML=[`#161618`,`#1f1f22`,`#f59e0b`].map(e=>`<div class="wcset__preset-swatch__stripe" style="background:${e}"></div>`).join(``)+`<div class="wcset__preset-name">Default</div>`,m.addEventListener(`click`,()=>{a(),f(),v()}),p.append(m);for(let e of s){let t=document.createElement(`div`);t.className=`wcset__preset-swatch${u===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`,()=>{i(e.id),f(),v()}),p.append(t)}c.append(p);let h=o().filter(e=>e.id!==`__preview`);if(h.length>0){let e=x(`wcset__custom-themes`);e.append(x(`wcset__section-label`,`My Themes`));for(let n of h){let r=x(`wcset__custom-row`),a=x(`wcset__custom-row__name`,n.name);u===n.id&&(a.style.fontWeight=`700`),r.append(a),r.append(S(`wcset__btn`,`Use`,()=>{i(n.id),f(),v()})),r.append(S(`wcset__btn`,`Edit`,()=>{y(n)})),r.append(S(`wcset__btn`,`Export`,()=>{let e=new Blob([l(n)],{type:`application/json`}),t=URL.createObjectURL(e),r=document.createElement(`a`);r.href=t,r.download=`${n.name.toLowerCase().replace(/\s+/g,`-`)}.slicc-theme.json`,r.click(),URL.revokeObjectURL(t)})),r.append(S(`wcset__btn wcset__btn--danger`,`×`,()=>{t(n.id),f(),v()})),e.append(r)}c.append(e)}let g=x(``);g.style.cssText=`display:flex;gap:8px;`,g.append(S(`wcset__btn wcset__btn--primary`,`+ Create Custom Theme`,()=>{y(null)})),g.append(S(`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=d(t);r(n),e.setStatus(`Imported "${n.name}".`),v()}catch(t){e.setStatus(`Import failed: ${t instanceof Error?t.message:String(t)}`,!0)}})}),t.click()})),c.append(g);let _=x(``);c.append(_);function v(){let t=c.parentElement;if(!t)return;let n=A(e);t.replaceChild(n,c)}function y(t){_.replaceChildren(L(t,e,v))}return c}function j(e,t,n,r){let i=[],a=c(e,t);for(let[e,t]of Object.entries(_)){i.push(x(`wcset__section-label`,e));let o=x(`wcset__advanced-grid`);for(let e of t){let t=x(`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 M(e,t,n,r,i){let a=[];for(let[r,o]of[[`background`,`Background`],[`text`,`Text`],[`accent`,`Links & buttons`]]){let s=x(`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(x(`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=x(`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 N(e,t){let n=x(`wcset__builder-row`),r=document.createElement(`label`);r.textContent=`Base`;let i=x(`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 P(e,t){let n=x(``);return n.style.cssText=`display:flex;gap:8px;margin-top:8px;`,n.append(S(`wcset__btn wcset__btn--primary`,`Save`,e)),n.append(S(`wcset__btn`,`Cancel`,t)),n}function F(e){return{userBubble:{background:e.bubbleBg,text:e.bubbleText},nav:{background:e.navBg},composer:{background:e.composerBg}}}function I(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 L(e,n,o){let s=x(`wcset__builder`),l=e?.base??`dark`,d=e?.disableShader??!1,p=!1,m={background:e?.tokens[`--s2-gray-25`]||(l===`dark`?`#1a1a1a`:`#ffffff`),surface:``,text:e?.tokens[`--s2-content-default`]||e?.tokens[`--s2-gray-900`]||(l===`dark`?`#e8e8e8`:`#131313`),accent:e?.tokens[`--s2-accent`]||`#3562ff`,border:``,success:`#2d9d78`,error:`#e34850`},h={background:1,text:1,accent:1},g=I(e,l),_={},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=l===`dark`;m.surface=u(m.background,e?.1:-.08),m.border=u(m.background,e?.15:-.12),m.success=`#2d9d78`,m.error=`#e34850`}function S(){b();let e={...c(m,l),..._};for(let[t,n]of Object.entries(h))if(n<1&&m[t]){let r=m[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}`)}r({id:`__preview`,name:`Preview`,base:l,tokens:e,disableShader:d,components:F(g)}),i(`__preview`),f()}function C(){s.replaceChildren();let u=x(`wcset__builder-row`),w=document.createElement(`label`);w.textContent=`Name`,u.append(w,v),s.append(u),s.append(N(l,e=>{l=e,C(),S()}));let T={disabled:d};for(let e of M(m,h,T,g,()=>{d=T.disabled,S()}))s.append(e);let E=document.createElement(`button`);if(E.className=`wcset__advanced-toggle`,E.textContent=p?`Hide advanced`:`Show advanced`,E.addEventListener(`click`,()=>{p=!p,C()}),s.append(E),p)for(let e of j(m,l,_,S))s.append(e);s.append(P(()=>{let a=v.value.trim();if(!a){n.setStatus(`Name is required.`,!0);return}b();let s={...c(m,l),..._},u=e?.id??y(),p={id:u,name:a,base:l,tokens:s,disableShader:d,components:F(g)};t(`__preview`),r(p),i(u),f(),n.setStatus(`Saved "${a}".`),o()},()=>{t(`__preview`),e?i(e.id):a(),f(),o()}))}return C(),S(),s}async function R(t){let n=await e(()=>import(`./provider-settings-DPkJU6NX.js`).then(e=>e.t),__vite__mapDeps([10,3,11,1,12,13,14,15,16,17,18,19,5,2,4,6,7,20,21,22,23,24,8,25,26,27,28,29,30,31,32]));b(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=x(`wcset`),o=x(`wcset__list`),s=x(`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=x(``),f={ps:n,log:t,setStatus:c,renderList:()=>{u(),o.replaceChildren();let e=n.getAccounts();if(e.length===0)o.append(x(`wcset__empty`,`No accounts configured.`));else for(let t of e)o.append(E(t,n.getProviderConfig(t.providerId),f));d.replaceChildren(D(f))}};f.renderList(),a.append(o,d,s),i.append(a);let p=S(`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 z(e){return b(document),t(`__preview`),new Promise(r=>{let o=document.createElement(`slicc-dialog`);o.classList.add(`wcset-dialog`),o.setAttribute(`heading`,`Theme`);let s=x(`wcset`),c=x(`wcset__status`),l=A({ps:null,log:e,setStatus:(e,t=!1)=>{c.textContent=e,c.toggleAttribute(`data-error`,t)},renderList:()=>{}}),u=O(),d=k();s.append(l,u,d,c),o.append(s);let p=S(`wcset__btn wcset__btn--primary`,`Done`,()=>{o.hide?.()});p.setAttribute(`slot`,`footer`),o.append(p);let m=n();o.addEventListener(`slicc-dialog-close`,()=>{n()===`__preview`&&(t(`__preview`),m&&m!==`__preview`?i(m):a(),f()),o.remove(),r()}),document.body.append(o),o.show?.()})}export{z as showThemeSettings,R as showWcSettings};