sliccy 6.248.13 → 6.248.15

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 (199) hide show
  1. package/dist/ui/.vite/manifest.json +473 -473
  2. package/dist/ui/assets/{account-store-D4Humqb-.js → account-store-C8ku_32k.js} +2 -2
  3. package/dist/ui/assets/{account-store-AloIt5Ss.js → account-store-CLrcVXc0.js} +1 -1
  4. package/dist/ui/assets/{adobe-COzZgYMJ.js → adobe-Cpi2aE-H.js} +1 -1
  5. package/dist/ui/assets/{adobe-DzPNN5WH.js → adobe-ZF88lAqt.js} +2 -2
  6. package/dist/ui/assets/{agent-panels-C7WGWk6D.js → agent-panels-BeptN8xj.js} +1 -1
  7. package/dist/ui/assets/{almost-bash-shell-headless--HYnQClo.js → almost-bash-shell-headless-BVria6dz.js} +12 -12
  8. package/dist/ui/assets/{anthropic-messages-BPiITV7m.js → anthropic-messages-pITcoTin.js} +3 -3
  9. package/dist/ui/assets/{apply-layout-C4DLtjYf.js → apply-layout-mZoFZ7NI.js} +1 -1
  10. package/dist/ui/assets/{azure-openai-DCtV7Fk7.js → azure-openai-BuzUN1Zv.js} +1 -1
  11. package/dist/ui/assets/{azure-openai-qBC0T6wP.js → azure-openai-D8taz7yq.js} +1 -1
  12. package/dist/ui/assets/{azure-openai-responses-CYEKOLNU.js → azure-openai-responses-BzfTIQxM.js} +1 -1
  13. package/dist/ui/assets/{backend-hostfs-C_GQqMGj.js → backend-hostfs-BlwgXw0-.js} +1 -1
  14. package/dist/ui/assets/{bedrock-camp-BRe8SyVL.js → bedrock-camp-Drg4mDwe.js} +1 -1
  15. package/dist/ui/assets/{capability-ChjrBUX1.js → capability-COwjFLjM.js} +2 -2
  16. package/dist/ui/assets/{cdp-CCSeAKYa.js → cdp-BECQB1rP.js} +1 -1
  17. package/dist/ui/assets/{cerebras-D05pSaD3.js → cerebras-DZZFW27U.js} +1 -1
  18. package/dist/ui/assets/{cerebras-BlBAjiPm.js → cerebras-DfDfqh_L.js} +1 -1
  19. package/dist/ui/assets/{classifier-shared-2vXBXYjG.js → classifier-shared-1BfNmzbv.js} +1 -1
  20. package/dist/ui/assets/{cloudflare-workers-ai-system-one-gkmS2Nb_.js → cloudflare-workers-ai-system-one-CYstFSnj.js} +1 -1
  21. package/dist/ui/assets/{compat-d34y6SaJ.js → compat-TaBTsXFP.js} +2 -2
  22. package/dist/ui/assets/{composer-speech-ZEQzpxXl.js → composer-speech-B1kWFuju.js} +1 -1
  23. package/dist/ui/assets/{connect-surface-DVe7YnEx.js → connect-surface-CXFbDGll.js} +1 -1
  24. package/dist/ui/assets/{core-DfJhnyZb.js → core-kdG72Y8N.js} +1 -1
  25. package/dist/ui/assets/{directed-approval-DpSG1Fn9.js → directed-approval-LQT_TPqz.js} +1 -1
  26. package/dist/ui/assets/{discovery-preference-DZcZKow3.js → discovery-preference-C-pw_A76.js} +1 -1
  27. package/dist/ui/assets/{dist-BZDZf9iZ.js → dist-AEgtkPbB.js} +1 -1
  28. package/dist/ui/assets/{dist-sPwgAbDH.js → dist-BOzr2Ip-.js} +1 -1
  29. package/dist/ui/assets/{dist-C3U_YVHW.js → dist-CKtiDzqm.js} +1 -1
  30. package/dist/ui/assets/{dist-Dxh_321I.js → dist-Cr80TbAt.js} +1 -1
  31. package/dist/ui/assets/{dist-Bkks4gfH.js → dist-DMTrP4j6.js} +1 -1
  32. package/dist/ui/assets/{dist-CTibI9AZ.js → dist-EaD2nXS1.js} +1 -1
  33. package/dist/ui/assets/{emscripten-vfs-hook-rbqoLuA5.js → emscripten-vfs-hook-CnPmEK30.js} +1 -1
  34. package/dist/ui/assets/{env-api-keys-Ds64PXJ4.js → env-api-keys-Cfrk_k8Z.js} +1 -1
  35. package/dist/ui/assets/esp8266-mbfP83qK.js +1 -0
  36. package/dist/ui/assets/{esptool-operations-CndxwE1S.js → esptool-operations-CTZQdeQU.js} +2 -2
  37. package/dist/ui/assets/{float-topology-PI5i_WsZ.js → float-topology-DJxhvO9u.js} +1 -1
  38. package/dist/ui/assets/{follower-navigate-watcher-B3g-lkMJ.js → follower-navigate-watcher-BThbqvla.js} +1 -1
  39. package/dist/ui/assets/{frozen-archive-writer-D6ckorva.js → frozen-archive-writer-BTbtadrW.js} +1 -1
  40. package/dist/ui/assets/{frozen-archive-writer-ClcpBoUl.js → frozen-archive-writer-CUzf7C3s.js} +1 -1
  41. package/dist/ui/assets/{frozen-session-delete-_74oIhfQ.js → frozen-session-delete-CyRcONHk.js} +1 -1
  42. package/dist/ui/assets/{frozen-session-identity-DW7M6tap.js → frozen-session-identity-BCGVU2K1.js} +1 -1
  43. package/dist/ui/assets/{frozen-session-identity-DRez4L_k.js → frozen-session-identity-DVcpz2HB.js} +1 -1
  44. package/dist/ui/assets/{fs-CQpIxK2e.js → fs-DSnZb1DK.js} +2 -2
  45. package/dist/ui/assets/{gelatiere-unit-DY9kFx7W.js → gelatiere-unit-CLfqVD6U.js} +1 -1
  46. package/dist/ui/assets/{github-BAVQKGLM.js → github--CcFgkAY.js} +2 -2
  47. package/dist/ui/assets/{github-seYRLByd.js → github-ChxmjcJc.js} +1 -1
  48. package/dist/ui/assets/{github-copilot-NuiVJlRe.js → github-copilot-Bt2MljG0.js} +1 -1
  49. package/dist/ui/assets/{github-copilot-B2ui266i.js → github-copilot-DRF3abOV.js} +1 -1
  50. package/dist/ui/assets/{google-generative-ai-y59nuAoz.js → google-generative-ai-_4RGA5R9.js} +1 -1
  51. package/dist/ui/assets/{google-shared-BixQtMJk.js → google-shared-BmjkwexI.js} +1 -1
  52. package/dist/ui/assets/{google-vertex-BuV_pgMi.js → google-vertex-CCT-gmBZ.js} +1 -1
  53. package/dist/ui/assets/{hear-LEawuxbU.js → hear-BGGOzrLe.js} +1 -1
  54. package/dist/ui/assets/icons-CPOTRcvO.js +1 -0
  55. package/dist/ui/assets/{js-realm-worker-BQ2E7b6Z.js → js-realm-worker-Qikr6DIj.js} +2 -2
  56. package/dist/ui/assets/{jsh-executor-BA7Owezg.js → jsh-executor-Cduj8RKN.js} +3 -3
  57. package/dist/ui/assets/{kernel-worker-Bl7wfxQy.js → kernel-worker-DKhuL-SB.js} +8 -8
  58. package/dist/ui/assets/{kokoro-g58mp2Gg.js → kokoro-BZ2oL9at.js} +1 -1
  59. package/dist/ui/assets/{legacy-api-aliases-DZ7QKXPR.js → legacy-api-aliases-BqXqjuwj.js} +1 -1
  60. package/dist/ui/assets/{legacy-styles-CbYwED5J.js → legacy-styles-CGcVbQni.js} +1 -1
  61. package/dist/ui/assets/{lick-ws-bridge-BIajXq6B.js → lick-ws-bridge-Bgd2UUqy.js} +1 -1
  62. package/dist/ui/assets/{lick-ws-bridge-BEHNQbo5.js → lick-ws-bridge-Cy-M-w5Q.js} +1 -1
  63. package/dist/ui/assets/{live-session-curation-BJVU7yfS.js → live-session-curation-DKF46wEh.js} +1 -1
  64. package/dist/ui/assets/{live-session-curation-C8cnTFuk.js → live-session-curation-w6IDH4Wx.js} +1 -1
  65. package/dist/ui/assets/{live-session-snapshot-DB7ATVqO.js → live-session-snapshot-DCT_jWTD.js} +1 -1
  66. package/dist/ui/assets/{local-llm-Dxm6T0ph.js → local-llm-BzQlnS5L.js} +1 -1
  67. package/dist/ui/assets/{local-llm-B72jeBdJ.js → local-llm-DUc-GBj9.js} +1 -1
  68. package/dist/ui/assets/{main-pG2z7nDr.js → main-CWx8ZbOh.js} +3 -3
  69. package/dist/ui/assets/{main-cherry-Cndxk3tr.js → main-cherry-qefabkXK.js} +1 -1
  70. package/dist/ui/assets/{mcp-command-R_syvmA2.js → mcp-command-BMbHOLse.js} +10 -10
  71. package/dist/ui/assets/{memory-curation-seam-xAt4_ZGt.js → memory-curation-seam-DqgqK6CR.js} +1 -1
  72. package/dist/ui/assets/{memory-health-N-Qft3RQ.js → memory-health-CyDp9rny.js} +1 -1
  73. package/dist/ui/assets/{memory-write-execute-CcPwzxh2.js → memory-write-execute-mLtLK-OJ.js} +1 -1
  74. package/dist/ui/assets/{merge-folded-cost-into-frozen-D5QzQftk.js → merge-folded-cost-into-frozen-VpR7-OO_.js} +1 -1
  75. package/dist/ui/assets/{mistral-conversations-BbeDfELF.js → mistral-conversations-BTfu6zaw.js} +1 -1
  76. package/dist/ui/assets/{models-K_BYbYJy.js → models-DuCVW_cU.js} +1 -1
  77. package/dist/ui/assets/{mount-Cvx8MHrJ.js → mount-iiKbRe20.js} +1 -1
  78. package/dist/ui/assets/{new-session-CzmqZfEw.js → new-session-pyHdj7ky.js} +2 -2
  79. package/dist/ui/assets/{node.browser-D-KuY2NZ.js → node.browser-POTNsJTJ.js} +1 -1
  80. package/dist/ui/assets/{oauth-bootstrap-BgBpgpMH.js → oauth-bootstrap-4_xLQ_sb.js} +2 -2
  81. package/dist/ui/assets/{oauth-service-C9_em2OO.js → oauth-service-BTbFz00g.js} +1 -1
  82. package/dist/ui/assets/{onboarding-orchestrator-B0EOdDeN.js → onboarding-orchestrator-CjdNWdMC.js} +1 -1
  83. package/dist/ui/assets/{openai-codex-CBBCnX5G.js → openai-codex-4_vQIXxb.js} +1 -1
  84. package/dist/ui/assets/{openai-codex-responses-CsoNnMnP.js → openai-codex-responses-BQf_Un8s.js} +1 -1
  85. package/dist/ui/assets/{openai-codex-BuzdyFkb.js → openai-codex-uQMjU0_s.js} +1 -1
  86. package/dist/ui/assets/{openai-completions-CwpTiqkV.js → openai-completions-UyX4inUN.js} +1 -1
  87. package/dist/ui/assets/{openai-decisions-C2a995aZ.js → openai-decisions-6D6eupBk.js} +1 -1
  88. package/dist/ui/assets/{openai-responses-CXxDIIaJ.js → openai-responses-Bn1YXtN4.js} +1 -1
  89. package/dist/ui/assets/{openai-responses-shared-Df32ziOu.js → openai-responses-shared-CHC7SqmI.js} +1 -1
  90. package/dist/ui/assets/{openrouter-CajNnUyi.js → openrouter-DneJqayx.js} +1 -1
  91. package/dist/ui/assets/{openrouter-yrPyWZSZ.js → openrouter-TLjYxLOJ.js} +1 -1
  92. package/dist/ui/assets/{openrouter-free-CoKNk8Q9.js → openrouter-free-C9Ks_BoF.js} +1 -1
  93. package/dist/ui/assets/{openrouter-free-DvQSB466.js → openrouter-free-QijswzXp.js} +1 -1
  94. package/dist/ui/assets/{openrouter-oauth-Cwnv6aaR.js → openrouter-oauth-C3NFC0lq.js} +1 -1
  95. package/dist/ui/assets/{openrouter-oauth-Dm2bFG2r.js → openrouter-oauth-CWRFCzx3.js} +1 -1
  96. package/dist/ui/assets/{opfs-mount-DqwXxpJI.js → opfs-mount-DHQkCQyR.js} +1 -1
  97. package/dist/ui/assets/{page-approval-service-BV4pp4cE.js → page-approval-service-1D_bhphG.js} +1 -1
  98. package/dist/ui/assets/{panel-rpc-handlers-0Asc887-.js → panel-rpc-handlers-DJTIyg19.js} +2 -2
  99. package/dist/ui/assets/{panelize-shell-CYWV616_.js → panelize-shell-KnM6qBOd.js} +1 -1
  100. package/dist/ui/assets/{pi-edit-execution-DUHiH3Ek.js → pi-edit-execution-KjYZMQ1M.js} +1 -1
  101. package/dist/ui/assets/{pi-transcript-context-M0uAa_Rs.js → pi-transcript-context-BD-rasES.js} +1 -1
  102. package/dist/ui/assets/preload-helper-BLdHbfdN.js +1 -0
  103. package/dist/ui/assets/{provider-gVV-Tw2o.js → provider-BUOENNXd.js} +1 -1
  104. package/dist/ui/assets/{provider-DQEpec-V.js → provider-C6GKyGbH.js} +2 -2
  105. package/dist/ui/assets/{provider-settings-HdIWRUQi.js → provider-settings-DiWaVtMa.js} +1 -1
  106. package/dist/ui/assets/provider-store-access-BLah3TfA.js +1 -0
  107. package/dist/ui/assets/provider-store-access-DK9jcMFs.js +1 -0
  108. package/dist/ui/assets/{providers-BPtyhTCJ.js → providers-D98KfVHw.js} +2 -2
  109. package/dist/ui/assets/{providers-BqUoo02I.js → providers-DQDxShvT.js} +1 -1
  110. package/dist/ui/assets/{proxied-fetch-Co-YYDT9.js → proxied-fetch-Dcpb4ieV.js} +1 -1
  111. package/dist/ui/assets/{proxied-fetch-raw-C_Y--MLW.js → proxied-fetch-raw-DFOSVEWz.js} +1 -1
  112. package/dist/ui/assets/{quick-llm-DKIeT-Bm.js → quick-llm-BpqDA4jj.js} +1 -1
  113. package/dist/ui/assets/{realm-inprocess-I1Oa37_B.js → realm-inprocess-DB9T1J06.js} +2 -2
  114. package/dist/ui/assets/{realm-unhandled-rejections-5totJ0nZ.js → realm-unhandled-rejections--yhMR2JG.js} +1 -1
  115. package/dist/ui/assets/{realm-unhandled-rejections-Vf408gQs.js → realm-unhandled-rejections-C-dWyWFT.js} +1 -1
  116. package/dist/ui/assets/{recovery-screen-d6N9mctq.js → recovery-screen-DxmS11pP.js} +1 -1
  117. package/dist/ui/assets/{remote-terminal-view-B8EZ4je-.js → remote-terminal-view-CKT9I4xa.js} +3 -3
  118. package/dist/ui/assets/{rest-ops-Bu4Fgr3O.js → rest-ops-DUxY6dMv.js} +1 -1
  119. package/dist/ui/assets/{restore-YHJZnRoZ.js → restore-DBVHFRDn.js} +1 -1
  120. package/dist/ui/assets/{run-Ds5q8C_n.js → run-B2qNRdiQ.js} +2 -2
  121. package/dist/ui/assets/{run-qBD2W0pE.js → run-D6GtWFc7.js} +1 -1
  122. package/dist/ui/assets/{run-QN9mmLnD.js → run-DWu38u8c.js} +1 -1
  123. package/dist/ui/assets/{run-jEnj-WXZ.js → run-DxF2t6YH.js} +2 -2
  124. package/dist/ui/assets/{secret-env-Da2LI-Wl.js → secret-env-BDj2iVgu.js} +1 -1
  125. package/dist/ui/assets/secret-topology-CcM8VDVI.js +1 -0
  126. package/dist/ui/assets/{serve-command-ClUJJ3EB.js → serve-command-Cj91wHBd.js} +2 -2
  127. package/dist/ui/assets/{serve-runtime-WdVepvEi.js → serve-runtime-C6U19az5.js} +1 -1
  128. package/dist/ui/assets/{session-command-memory-CQnSNVmV.js → session-command-memory-DTJrpKQG.js} +2 -2
  129. package/dist/ui/assets/{session-jsonl-BGHEGuWx.js → session-jsonl-CUGtVDjz.js} +1 -1
  130. package/dist/ui/assets/{session-jsonl-BjBaj5ud.js → session-jsonl-PBSNVf5N.js} +1 -1
  131. package/dist/ui/assets/{session-search-index-DFWu63Zi.js → session-search-index-BmWzdxol.js} +1 -1
  132. package/dist/ui/assets/{setup-feature-flags-remote-CUbaBhWB.js → setup-feature-flags-remote-Dcyvcm1c.js} +1 -1
  133. package/dist/ui/assets/{setup-model-catalog-CykSe_Dx.js → setup-model-catalog-9sIjZkxM.js} +1 -1
  134. package/dist/ui/assets/{setup-sprinkle-exec-IU4qWikH.js → setup-sprinkle-exec-CdgElwNt.js} +1 -1
  135. package/dist/ui/assets/{silent-renew-backoff-BMr_pGCU.js → silent-renew-backoff-B9OHOzRe.js} +1 -1
  136. package/dist/ui/assets/{slicc-diff-D8v8ZLu9.js → slicc-diff-BfQJcIZe.js} +1 -1
  137. package/dist/ui/assets/{slicc-editor-CEzmoAZr.js → slicc-editor-CasndIRU.js} +3 -3
  138. package/dist/ui/assets/slicc-editor-tCvqLLxb.js +1 -0
  139. package/dist/ui/assets/slicc-version-QFUwKumj.js +1 -0
  140. package/dist/ui/assets/{soundscape-Blo80kkF.js → soundscape-BotaZrDR.js} +1 -1
  141. package/dist/ui/assets/{speak-DYYfW_FH.js → speak-DHpjynd6.js} +3 -3
  142. package/dist/ui/assets/{sprinkle-manager-6IcFnb1j.js → sprinkle-manager-8dcg9Iza.js} +1 -1
  143. package/dist/ui/assets/{sprinkle-renderer-BnGOcTUx.js → sprinkle-renderer-D0vfMqnl.js} +3 -3
  144. package/dist/ui/assets/{sudo-cs2WnTRn.js → sudo-CNQ60foM.js} +1 -1
  145. package/dist/ui/assets/{supervisor-BULFrqrk.js → supervisor-CPH3uat9.js} +1 -1
  146. package/dist/ui/assets/{sync-dialog-MmcHaZwh.js → sync-dialog-DcHJ8wDd.js} +1 -1
  147. package/dist/ui/assets/{system-one-shared-DLgt2600.js → system-one-shared-sVc-bQkc.js} +1 -1
  148. package/dist/ui/assets/{telemetry-BqfutULb.js → telemetry-kqkj0A7x.js} +1 -1
  149. package/dist/ui/assets/{transform-messages-Bx3wQh2R.js → transform-messages-HTSSP3zz.js} +1 -1
  150. package/dist/ui/assets/{transformers-env-Fm5j4giD.js → transformers-env-C4aTP2JX.js} +1 -1
  151. package/dist/ui/assets/{transformers.web-BR6ghS6P.js → transformers.web-C5VLk0m7.js} +1 -1
  152. package/dist/ui/assets/{tray-leader-CFIVvD5G.js → tray-leader-BO7RLnAz.js} +1 -1
  153. package/dist/ui/assets/{tray-leave-runtime-BSxSDTw5.js → tray-leave-runtime-DrPHvVi6.js} +1 -1
  154. package/dist/ui/assets/{tray-sidecar-DQqVkAjk.js → tray-sidecar-BF8y2nH9.js} +1 -1
  155. package/dist/ui/assets/{typesafe-system-one-CXEHNzQF.js → typesafe-system-one-BdxxnbQu.js} +1 -1
  156. package/dist/ui/assets/{upgrade-detection-MAFg6kZz.js → upgrade-detection-DYeqLwkQ.js} +1 -1
  157. package/dist/ui/assets/{usb-operations-Ccb6x34d.js → usb-operations-DvSWlz_Y.js} +1 -1
  158. package/dist/ui/assets/{voice-reply-Bum2oQcA.js → voice-reply-DVgxPsp4.js} +1 -1
  159. package/dist/ui/assets/{warm-wterm-C7ml3_29.js → warm-wterm-snqvCS0-.js} +1 -1
  160. package/dist/ui/assets/{wc-attach-BJHnH6pd.js → wc-attach-DtB955Cg.js} +3 -3
  161. package/dist/ui/assets/{wc-browser-sNhsHdWm.js → wc-browser-5eX1yDaM.js} +1 -1
  162. package/dist/ui/assets/{wc-computers-CWg9NiMK.js → wc-computers-BQe7QGA5.js} +1 -1
  163. package/dist/ui/assets/{wc-detached-DZvftcPT.js → wc-detached-B448Oceh.js} +1 -1
  164. package/dist/ui/assets/{wc-extension-BaYtWo4q.js → wc-extension-DcxJvbXQ.js} +2 -2
  165. package/dist/ui/assets/{wc-follower-C3skKl26.js → wc-follower-C4HBJRkp.js} +3 -3
  166. package/dist/ui/assets/{wc-follower-oauth-iJKLKYov.js → wc-follower-oauth-DWB_1KrV.js} +1 -1
  167. package/dist/ui/assets/{wc-gelatiere-DaysrnKa.js → wc-gelatiere-DNuoJgyp.js} +1 -1
  168. package/dist/ui/assets/{wc-live-DEo-6NQK.js → wc-live-BMXg1cW0.js} +5 -5
  169. package/dist/ui/assets/{wc-nav-DqmL5N5I.js → wc-nav-C4cQdKiF.js} +2 -2
  170. package/dist/ui/assets/{wc-onboarding-Dg7G2Ykz.js → wc-onboarding-CsrFGEQ2.js} +2 -2
  171. package/dist/ui/assets/{wc-permissions-wBb5q-ot.js → wc-permissions-DMVzE1os.js} +3 -3
  172. package/dist/ui/assets/{wc-permissions-providers-r97Cs0CM.js → wc-permissions-providers-CzfeTK0C.js} +1 -1
  173. package/dist/ui/assets/{wc-placeholder-Dcqr3sQ2.js → wc-placeholder-BSqm7GOK.js} +3 -3
  174. package/dist/ui/assets/{wc-secret-request-DLngmY78.js → wc-secret-request-BMp1_Dqa.js} +1 -1
  175. package/dist/ui/assets/{wc-settings-DhxNLvFd.js → wc-settings-D_rtZFP8.js} +3 -3
  176. package/dist/ui/assets/{wc-shell-RF_bfAGN.js → wc-shell-CbiYuC-u.js} +6 -6
  177. package/dist/ui/assets/{wc-shortcut-config-Cr8zuZad.js → wc-shortcut-config-Dit9NqHJ.js} +1 -1
  178. package/dist/ui/assets/{wc-sprinkles-DyMWm1jp.js → wc-sprinkles-CRU3Bd1x.js} +2 -2
  179. package/dist/ui/assets/{wc-transcript-export-DVyU4B6b.js → wc-transcript-export-CCBgVRIb.js} +2 -2
  180. package/dist/ui/assets/{wc-tray-BjkHiwAE.js → wc-tray-DMpwCD-i.js} +4 -4
  181. package/dist/ui/assets/welcome-detection-CMa9jsjd.js +1 -0
  182. package/dist/ui/assets/{whisper-session-nBcuStI7.js → whisper-session-DOG-n_Gl.js} +2 -2
  183. package/dist/ui/assets/{xai-grok-B0VdJo2K.js → xai-grok-BwRAMV0b.js} +1 -1
  184. package/dist/ui/assets/{xai-grok-B-1EsChx.js → xai-grok-D-s6Eti2.js} +1 -1
  185. package/dist/ui/index.html +12 -12
  186. package/dist/ui/lucide-icons.js +362 -359
  187. package/dist/ui/packages/webapp/index.html +12 -12
  188. package/dist/ui/slicc-diff.js +1 -1
  189. package/dist/ui/slicc-editor.js +1 -1
  190. package/package.json +2 -2
  191. package/dist/ui/assets/esp8266-6UF0nYRf.js +0 -1
  192. package/dist/ui/assets/icons-BUdZEBvI.js +0 -1
  193. package/dist/ui/assets/preload-helper-DjzSQ1t3.js +0 -1
  194. package/dist/ui/assets/provider-store-access-BG9uc1UB.js +0 -1
  195. package/dist/ui/assets/provider-store-access-CkviLtwb.js +0 -1
  196. package/dist/ui/assets/secret-topology-B-7q9k0Q.js +0 -1
  197. package/dist/ui/assets/slicc-editor-CnQU3MQS.js +0 -1
  198. package/dist/ui/assets/slicc-version-D_fWoQ7a.js +0 -1
  199. package/dist/ui/assets/welcome-detection-ZKXELBPe.js +0 -1
@@ -1,4 +1,4 @@
1
- import{t as e}from"./logger-DDBAeTLF.js";import{F as t,H as n,J as r,K as i,M as a,U as o,V as s,W as c,Y as l,q as u}from"./wc-shell-RF_bfAGN.js";import"./virtual-device-paths-D45tpPP6.js";import{r as d}from"./icons-BUdZEBvI.js";import{setLayoutApplier as f}from"./layout-apply-registry-Cw730jao.js";var p=e(`add-panel-menu`),m=`slicc-add-panel-menu-style`,h=[`.slicc-addpanel{position:relative;}`,`.slicc-addpanel__btn{width:26px;height:26px;display:grid;place-items:center;`,`border:1px solid var(--line);border-radius:7px;background:var(--canvas);`,`color:var(--txt-2);cursor:pointer;padding:0;font-size:15px;line-height:1;}`,`.slicc-addpanel__btn:hover{background:var(--ghost);color:var(--ink);}`,`.slicc-addpanel__menu{position:absolute;top:32px;right:0;min-width:230px;`,`max-height:70vh;overflow:auto;background:var(--canvas);border:1px solid var(--line);`,`border-radius:10px;box-shadow:var(--shadow-pane);padding:6px;display:none;`,`font-family:var(--ui);font-size:12.5px;}`,`.slicc-addpanel__menu[open]{display:block;}`,`.slicc-addpanel__group{padding:6px 8px 2px;color:var(--txt-3);font-size:10.5px;`,`text-transform:uppercase;letter-spacing:.04em;}`,`.slicc-addpanel__item{width:100%;display:flex;align-items:center;gap:8px;`,`padding:6px 8px;border:none;background:none;border-radius:6px;cursor:pointer;`,`color:var(--ink);text-align:left;font:inherit;}`,`.slicc-addpanel__item:hover{background:var(--ghost);}`,`.slicc-addpanel__check{width:12px;flex:0 0 12px;color:var(--accent);}`,`.slicc-addpanel__sep{height:1px;background:var(--line);margin:5px 4px;}`,`.slicc-addpanel__item{position:relative;}`,`.slicc-addpanel__del{margin-left:auto;flex:0 0 auto;display:grid;place-items:center;`,`width:18px;height:18px;padding:0;border:none;border-radius:4px;background:transparent;`,`color:var(--ink);opacity:0;cursor:pointer;}`,`.slicc-addpanel__item:hover .slicc-addpanel__del{opacity:0.65;}`,`.slicc-addpanel__del:hover{opacity:1;background:var(--ghost);}`,`.slicc-addpanel__del:focus-visible{opacity:1;}`].join(``),g=typeof globalThis.prompt==`function`?globalThis.prompt.bind(globalThis):void 0;function ee(e){let t=e.trim().toLowerCase().replace(/[^a-z0-9._-]+/g,`-`).replace(/^[-.]+|[-.]+$/g,``).slice(0,64);return t.length>0?t:null}function te(e){if(e.getElementById(m))return;let t=e.createElement(`style`);t.id=m,t.textContent=h,(e.head??e.documentElement).appendChild(t)}function _(e){te(document);let t=document.createElement(`div`);t.className=`slicc-addpanel`;let n=document.createElement(`button`);n.type=`button`,n.className=`slicc-addpanel__btn`,n.title=`Panels and layouts`,n.setAttribute(`aria-label`,`Panels and layouts`);let r=new DOMParser().parseFromString(d(`layout-dashboard`,{size:14}),`image/svg+xml`).documentElement;n.appendChild(r);let a=document.createElement(`div`);a.className=`slicc-addpanel__menu`,a.setAttribute(`role`,`menu`);let o=(e,t,n)=>{let r=document.createElement(`button`);r.type=`button`,r.className=`slicc-addpanel__item`,r.setAttribute(`role`,`menuitem`);let i=document.createElement(`span`);i.className=`slicc-addpanel__check`,i.textContent=t?`✓`:``;let a=document.createElement(`span`);return a.textContent=e,r.append(i,a),r.addEventListener(`click`,()=>{n(),m()}),r},s=t=>{let n=o(t,!1,()=>e.onLoadLayout(t)),r=document.createElement(`button`);return r.type=`button`,r.className=`slicc-addpanel__del`,r.title=`Delete "${t}"`,r.setAttribute(`aria-label`,`Delete layout ${t}`),r.appendChild(new DOMParser().parseFromString(d(`trash-2`,{size:11}),`image/svg+xml`).documentElement),r.addEventListener(`click`,n=>{n.stopPropagation(),e.onDeleteLayout(t),m()}),n.appendChild(r),n};function c(){let t=e.promptForName??g;if(!t){p.warn(`cannot save a layout: no prompt available`);return}let n=t(`Save this layout as:`,e.layout.getLayout().id);if(n===null)return;let r=ee(n);if(!r){p.warn(`layout not saved: the name reduced to nothing`,{raw:n});return}e.onSaveLayout(r)}let l=e=>{let t=document.createElement(`div`);return t.className=`slicc-addpanel__group`,t.textContent=e,t};async function f(){let t=new Set(e.layout.getPlacedPanelIds()),n=[],r={},u=i();for(let e of u)(r[e.origin]??=[]).push(e);for(let[i,a]of[[`builtin`,`Panels`],[`sprinkle`,`Sprinkles`],[`agent`,`Made by SLICC`]]){let s=r[i];if(s?.length){n.push(l(a));for(let r of s){let i=t.has(r.meta.id);n.push(o(r.meta.title,i,()=>e.onToggle(r.meta.id,!i)))}}}try{let{saved:t,presets:r}=await e.listLayoutNames(),i=document.createElement(`div`);i.className=`slicc-addpanel__sep`,n.push(i,l(`Layouts`));for(let e of t)n.push(s(e));for(let t of r)n.push(o(t,!1,()=>e.onLoadLayout(t)));n.push(o(`Save layout as…`,!1,c))}catch(e){p.warn(`could not list layouts for the menu`,{error:e})}a.replaceChildren(...n)}function m(){a.removeAttribute(`open`),document.removeEventListener(`pointerdown`,h,!0)}let h=e=>{t.contains(e.target)||m()};return n.addEventListener(`click`,()=>{if(a.hasAttribute(`open`)){m();return}f().then(()=>{a.setAttribute(`open`,``),document.addEventListener(`pointerdown`,h,!0)})}),u.addEventListener(`panel-registry-change`,()=>{a.hasAttribute(`open`)&&f()}),t.append(n,a),t}var v={chat:`chat`,sessionsRail:`sessions-rail`,dockRail:`dock-rail`,scoopSwitcher:`scoop-switcher`,floatbar:`floatbar`,files:`files`,term:`term`,memory:`memory`,monitor:`monitor`,browser:`browser`},y={[v.chat]:{id:v.chat,title:`Chat`,icon:`message-circle`,minWidth:320,preferredSize:3},[v.sessionsRail]:{id:v.sessionsRail,title:`Sessions`,icon:`history`,preferredSize:`44px`},[v.dockRail]:{id:v.dockRail,title:`Dock`,icon:`layout-grid`,preferredSize:`48px`},[v.scoopSwitcher]:{id:v.scoopSwitcher,title:`Scoops`,icon:`users`},[v.floatbar]:{id:v.floatbar,title:`Runtime`,icon:`activity`},[v.files]:{id:v.files,title:`Files`,icon:`folder`,minWidth:220},[v.term]:{id:v.term,title:`Terminal`,icon:`square-terminal`},[v.memory]:{id:v.memory,title:`Memory`,icon:`brain`},[v.monitor]:{id:v.monitor,title:`Monitor`,icon:`activity`},[v.browser]:{id:v.browser,title:`Browser`,icon:`globe`}};function b(e,t){let n=document.createElement(`slicc-panel`);n.setAttribute(`panel-id`,e);let r=y[e];return r?.title&&n.setAttribute(`aria-label`,r.title),n.appendChild(t),n}function x(){for(let e of Object.values(y))r({meta:e,source:{kind:`element`,tag:`slicc-panel`},origin:`builtin`})}function ne(e){if(!e?.startsWith(`sprinkle:`))return null;let t=e.slice(9);return t.length>0?t:null}function S(){return{when:{maxWidth:700},docks:[],zones:{center:[v.chat]},floating:[]}}function C(){return[{edge:`top`,size:`36px`,panels:[v.scoopSwitcher,v.floatbar],locked:!0},{edge:`left`,size:`44px`,panels:[v.sessionsRail],locked:!0},{edge:`right`,size:`48px`,panels:[v.dockRail],locked:!0}]}var w={version:1,id:`default`,title:`Default`,base:{docks:C(),zones:{center:[v.chat]}},variants:[S()]},T={default:w};function E(e){return T[e]??null}function D(){return Object.keys(T)}e(`sudo:sudoers`);var O=`/etc/slicc/layouts`;[`NOPASSWD Read /tmp`,`NOPASSWD Read /tmp/**`,`NOPASSWD Write /tmp`,`NOPASSWD Write /tmp/**`].join(`
1
+ import{t as e}from"./logger-DDBAeTLF.js";import{F as t,H as n,J as r,K as i,M as a,U as o,V as s,W as c,Y as l,q as u}from"./wc-shell-CbiYuC-u.js";import"./virtual-device-paths-D45tpPP6.js";import{r as d}from"./icons-CPOTRcvO.js";import{setLayoutApplier as f}from"./layout-apply-registry-Cw730jao.js";var p=e(`add-panel-menu`),m=`slicc-add-panel-menu-style`,h=[`.slicc-addpanel{position:relative;}`,`.slicc-addpanel__btn{width:26px;height:26px;display:grid;place-items:center;`,`border:1px solid var(--line);border-radius:7px;background:var(--canvas);`,`color:var(--txt-2);cursor:pointer;padding:0;font-size:15px;line-height:1;}`,`.slicc-addpanel__btn:hover{background:var(--ghost);color:var(--ink);}`,`.slicc-addpanel__menu{position:absolute;top:32px;right:0;min-width:230px;`,`max-height:70vh;overflow:auto;background:var(--canvas);border:1px solid var(--line);`,`border-radius:10px;box-shadow:var(--shadow-pane);padding:6px;display:none;`,`font-family:var(--ui);font-size:12.5px;}`,`.slicc-addpanel__menu[open]{display:block;}`,`.slicc-addpanel__group{padding:6px 8px 2px;color:var(--txt-3);font-size:10.5px;`,`text-transform:uppercase;letter-spacing:.04em;}`,`.slicc-addpanel__item{width:100%;display:flex;align-items:center;gap:8px;`,`padding:6px 8px;border:none;background:none;border-radius:6px;cursor:pointer;`,`color:var(--ink);text-align:left;font:inherit;}`,`.slicc-addpanel__item:hover{background:var(--ghost);}`,`.slicc-addpanel__check{width:12px;flex:0 0 12px;color:var(--accent);}`,`.slicc-addpanel__sep{height:1px;background:var(--line);margin:5px 4px;}`,`.slicc-addpanel__item{position:relative;}`,`.slicc-addpanel__del{margin-left:auto;flex:0 0 auto;display:grid;place-items:center;`,`width:18px;height:18px;padding:0;border:none;border-radius:4px;background:transparent;`,`color:var(--ink);opacity:0;cursor:pointer;}`,`.slicc-addpanel__item:hover .slicc-addpanel__del{opacity:0.65;}`,`.slicc-addpanel__del:hover{opacity:1;background:var(--ghost);}`,`.slicc-addpanel__del:focus-visible{opacity:1;}`].join(``),g=typeof globalThis.prompt==`function`?globalThis.prompt.bind(globalThis):void 0;function ee(e){let t=e.trim().toLowerCase().replace(/[^a-z0-9._-]+/g,`-`).replace(/^[-.]+|[-.]+$/g,``).slice(0,64);return t.length>0?t:null}function te(e){if(e.getElementById(m))return;let t=e.createElement(`style`);t.id=m,t.textContent=h,(e.head??e.documentElement).appendChild(t)}function _(e){te(document);let t=document.createElement(`div`);t.className=`slicc-addpanel`;let n=document.createElement(`button`);n.type=`button`,n.className=`slicc-addpanel__btn`,n.title=`Panels and layouts`,n.setAttribute(`aria-label`,`Panels and layouts`);let r=new DOMParser().parseFromString(d(`layout-dashboard`,{size:14}),`image/svg+xml`).documentElement;n.appendChild(r);let a=document.createElement(`div`);a.className=`slicc-addpanel__menu`,a.setAttribute(`role`,`menu`);let o=(e,t,n)=>{let r=document.createElement(`button`);r.type=`button`,r.className=`slicc-addpanel__item`,r.setAttribute(`role`,`menuitem`);let i=document.createElement(`span`);i.className=`slicc-addpanel__check`,i.textContent=t?`✓`:``;let a=document.createElement(`span`);return a.textContent=e,r.append(i,a),r.addEventListener(`click`,()=>{n(),m()}),r},s=t=>{let n=o(t,!1,()=>e.onLoadLayout(t)),r=document.createElement(`button`);return r.type=`button`,r.className=`slicc-addpanel__del`,r.title=`Delete "${t}"`,r.setAttribute(`aria-label`,`Delete layout ${t}`),r.appendChild(new DOMParser().parseFromString(d(`trash-2`,{size:11}),`image/svg+xml`).documentElement),r.addEventListener(`click`,n=>{n.stopPropagation(),e.onDeleteLayout(t),m()}),n.appendChild(r),n};function c(){let t=e.promptForName??g;if(!t){p.warn(`cannot save a layout: no prompt available`);return}let n=t(`Save this layout as:`,e.layout.getLayout().id);if(n===null)return;let r=ee(n);if(!r){p.warn(`layout not saved: the name reduced to nothing`,{raw:n});return}e.onSaveLayout(r)}let l=e=>{let t=document.createElement(`div`);return t.className=`slicc-addpanel__group`,t.textContent=e,t};async function f(){let t=new Set(e.layout.getPlacedPanelIds()),n=[],r={},u=i();for(let e of u)(r[e.origin]??=[]).push(e);for(let[i,a]of[[`builtin`,`Panels`],[`sprinkle`,`Sprinkles`],[`agent`,`Made by SLICC`]]){let s=r[i];if(s?.length){n.push(l(a));for(let r of s){let i=t.has(r.meta.id);n.push(o(r.meta.title,i,()=>e.onToggle(r.meta.id,!i)))}}}try{let{saved:t,presets:r}=await e.listLayoutNames(),i=document.createElement(`div`);i.className=`slicc-addpanel__sep`,n.push(i,l(`Layouts`));for(let e of t)n.push(s(e));for(let t of r)n.push(o(t,!1,()=>e.onLoadLayout(t)));n.push(o(`Save layout as…`,!1,c))}catch(e){p.warn(`could not list layouts for the menu`,{error:e})}a.replaceChildren(...n)}function m(){a.removeAttribute(`open`),document.removeEventListener(`pointerdown`,h,!0)}let h=e=>{t.contains(e.target)||m()};return n.addEventListener(`click`,()=>{if(a.hasAttribute(`open`)){m();return}f().then(()=>{a.setAttribute(`open`,``),document.addEventListener(`pointerdown`,h,!0)})}),u.addEventListener(`panel-registry-change`,()=>{a.hasAttribute(`open`)&&f()}),t.append(n,a),t}var v={chat:`chat`,sessionsRail:`sessions-rail`,dockRail:`dock-rail`,scoopSwitcher:`scoop-switcher`,floatbar:`floatbar`,files:`files`,term:`term`,memory:`memory`,monitor:`monitor`,browser:`browser`},y={[v.chat]:{id:v.chat,title:`Chat`,icon:`message-circle`,minWidth:320,preferredSize:3},[v.sessionsRail]:{id:v.sessionsRail,title:`Sessions`,icon:`history`,preferredSize:`44px`},[v.dockRail]:{id:v.dockRail,title:`Dock`,icon:`layout-grid`,preferredSize:`48px`},[v.scoopSwitcher]:{id:v.scoopSwitcher,title:`Scoops`,icon:`users`},[v.floatbar]:{id:v.floatbar,title:`Runtime`,icon:`activity`},[v.files]:{id:v.files,title:`Files`,icon:`folder`,minWidth:220},[v.term]:{id:v.term,title:`Terminal`,icon:`square-terminal`},[v.memory]:{id:v.memory,title:`Memory`,icon:`brain`},[v.monitor]:{id:v.monitor,title:`Monitor`,icon:`activity`},[v.browser]:{id:v.browser,title:`Browser`,icon:`globe`}};function b(e,t){let n=document.createElement(`slicc-panel`);n.setAttribute(`panel-id`,e);let r=y[e];return r?.title&&n.setAttribute(`aria-label`,r.title),n.appendChild(t),n}function x(){for(let e of Object.values(y))r({meta:e,source:{kind:`element`,tag:`slicc-panel`},origin:`builtin`})}function ne(e){if(!e?.startsWith(`sprinkle:`))return null;let t=e.slice(9);return t.length>0?t:null}function S(){return{when:{maxWidth:700},docks:[],zones:{center:[v.chat]},floating:[]}}function C(){return[{edge:`top`,size:`36px`,panels:[v.scoopSwitcher,v.floatbar],locked:!0},{edge:`left`,size:`44px`,panels:[v.sessionsRail],locked:!0},{edge:`right`,size:`48px`,panels:[v.dockRail],locked:!0}]}var w={version:1,id:`default`,title:`Default`,base:{docks:C(),zones:{center:[v.chat]}},variants:[S()]},T={default:w};function E(e){return T[e]??null}function D(){return Object.keys(T)}e(`sudo:sudoers`);var O=`/etc/slicc/layouts`;[`NOPASSWD Read /tmp`,`NOPASSWD Read /tmp/**`,`NOPASSWD Write /tmp`,`NOPASSWD Write /tmp/**`].join(`
2
2
  `);var k=e(`layout-store`),A=`/workspace/layouts`,j=[A,O];function M(e,t){return`${t?.protected?O:A}/${e}.json`}async function N(e,t){try{if(!await e.exists(t))return null;let r=await e.readFile(t),i=n(JSON.parse(typeof r==`string`?r:String(r)));return`error`in i?(k.warn(`invalid layout document — ignoring`,{path:t,error:i.error}),null):i}catch(e){return k.warn(`failed to read layout`,{path:t,error:e instanceof Error?e.message:e}),null}}async function P(e,t,n){let r=n?.name??t.id,i=n?.protected?O:A,a=`${i}/${r}.json`;return await e.exists(i)||await e.mkdir(i,{recursive:!0}),await e.writeFile(a,`${JSON.stringify(t,null,2)}\n`),k.info(`layout saved`,{path:a}),a}async function F(e,t,n){let r=M(t,n);return await e.exists(r)?(await e.rm(r),!0):!1}async function I(e){let t=[],n=new Set;for(let r of j){let i;try{if(!await e.exists(r))continue;i=(await e.readDir(r)).filter(e=>e.type===`file`).map(e=>e.name)}catch(e){k.warn(`failed to list layout dir`,{dir:r,error:e});continue}for(let a of i){if(!a.endsWith(`.json`))continue;let i=a.slice(0,-5);if(n.has(i))continue;let o=`${r}/${a}`,s=await N(e,o);s&&(n.add(i),t.push({name:i,path:o,doc:s,protected:r===O}))}}return t}async function L(e,t){for(let n of j){let r=`${n}/${t}.json`,i=await N(e,r);if(i)return{name:t,path:r,doc:i,protected:n===O}}return null}function R(e,n,r){let i=e.getLayout(),a=t(i,e.environment());if(r){let e=a.zones??c(a.center??null);o(e,n)?a.zones||(a.zones=e,a.center=null):(a.zones=s(e,n,`right`),a.center=null)}i.panels={...i.panels,[n]:{...i.panels?.[n],visible:r}},e.setLayout(i)}var z=e(`apply-layout-doc`);function B(e){return{applied:!1,error:`layout ${e} needs a filesystem (unavailable here)`}}function V(e){return[`load`,`save`,`delete`,`docs`,`panels`,`show`,`hide`].includes(e.kind)}async function H(e,t){let n=e.fs?await L(e.fs,t):null;if(n)return e.layout.setLayout(n.doc),{applied:!0,output:`loaded layout "${t}" from ${n.path}`};let r=E(t);return r?(e.layout.setLayout(r),{applied:!0,output:`loaded preset "${t}"`}):{applied:!1,error:`unknown layout "${t}" — try: ${D().join(`, `)}`}}async function U(e,t,n){if(!e.fs)return B(`save`);let r={...e.layout.getLayout(),id:t};try{return{applied:!0,output:`saved layout to ${await P(e.fs,r,{name:t,protected:n})}`}}catch(e){let r=e instanceof Error?e.message:String(e);return z.warn(`layout save failed`,{name:t,protected:n,error:r}),{applied:!1,error:`could not save "${t}": ${r}`}}}async function W(e){let t=e.fs?await I(e.fs):[],n=[];if(t.length>0){n.push(`saved layouts:`);for(let e of t)n.push(` ${e.name}${e.protected?` (protected)`:``} ${e.path}`)}n.push(`presets: ${D().join(`, `)}`);let r=e.layout.getLayout();return n.push(`current: ${r.id}`),{applied:!0,output:n.join(`
3
3
  `)}}function G(e){let t=new Set(e.layout.getPlacedPanelIds()),n={builtin:[],sprinkle:[],agent:[]};for(let e of i()){let r=t.has(e.meta.id)?`*`:` `;(n[e.origin]??=[]).push(` ${r} ${e.meta.id} ${e.meta.title}`)}let r=[];for(let[e,t]of Object.entries(n))t.length!==0&&(r.push(`${e}:`),r.push(...t));return r.push(`(* = currently placed)`),{applied:!0,output:r.join(`
4
4
  `)}}function K(e,t,n){return R(e.layout,t,n),{applied:!0}}async function q(e,t){switch(t.kind){case`load`:return H(e,t.name);case`save`:return U(e,t.name,t.protected);case`delete`:return e.fs?await F(e.fs,t.name)||await F(e.fs,t.name,{protected:!0})?{applied:!0,output:`deleted layout "${t.name}"`}:{applied:!1,error:`no saved layout named "${t.name}"`}:B(`delete`);case`docs`:return W(e);case`panels`:return G(e);case`show`:return K(e,t.panelId,!0);case`hide`:return K(e,t.panelId,!1)}}var J=e(`panelize-shell`),Y=`slicc-panelize-style`,X=[`.wcui-avatar-strip{position:absolute;top:0;right:0;height:var(--barh,36px);`,`display:flex;align-items:center;gap:12px;padding:0 9px 0 14px;box-sizing:border-box;`,`pointer-events:auto;z-index:1;}`,`.wcui-frame slicc-layout{position:relative;z-index:1;}`,`slicc-layout .slicc-layout__dock--left,slicc-layout .slicc-layout__dock--right{flex:0 0 auto;}`,`slicc-layout .slicc-layout__dock--top,slicc-layout .slicc-layout__dock--bottom{flex:0 0 auto;}`,`slicc-layout .slicc-layout__dock--left{flex:0 0 auto!important;width:auto!important;}`,`slicc-layout .slicc-layout__dock--right{flex:0 0 auto!important;width:auto!important;}`,`slicc-panel[panel-id="sessions-rail"],slicc-panel[panel-id="dock-rail"]{`,`flex:0 0 auto;height:100%;align-self:stretch;overflow:hidden;}`,`slicc-panel[panel-id="dock-rail"]{width:48px;}`,`slicc-panel[panel-id="sessions-rail"]{width:auto;}`,`slicc-panel[panel-id="sessions-rail"]>*,slicc-panel[panel-id="dock-rail"]>*{`,`height:100%;flex:1 1 auto;min-height:0;}`,`slicc-panel[panel-id="scoop-switcher"],slicc-panel[panel-id="floatbar"]{`,`height:var(--barh,36px);min-height:var(--barh,36px);max-height:var(--barh,36px);}`,`slicc-panel[panel-id="chat"] slicc-chatpane{flex:1 1 0;width:100%;min-height:0;}`,`slicc-panel[panel-id="chat"] slicc-chat-thread{flex:1 1 0;min-height:0;overflow-y:auto;}`,`slicc-panel[panel-id="chat"] slicc-composer{flex:0 0 auto;}`,`slicc-panel[panel-id="scoop-switcher"]{flex:0 0 auto;justify-content:center;padding-left:14px;}`,`slicc-panel[panel-id="floatbar"]{flex:1 1 auto;align-items:center;justify-content:flex-end;`,`padding-right:var(--avatar-strip-w, 96px);}`,`slicc-panel[panel-id="scoop-switcher"],slicc-panel[panel-id="floatbar"]{flex-direction:row;}`,`slicc-panel[panel-id="term"][presentation="floating"]{`,`background:var(--term-bg,#0c0c0e);border-color:var(--term-border,#232329);`,`box-shadow:rgba(0,0,0,.35) 0 14px 36px -12px,rgba(0,0,0,.2) 0 4px 10px -4px;}`].join(``);function re(e){if(e.getElementById(Y))return;let t=e.createElement(`style`);t.id=Y,t.textContent=X,(e.head??e.documentElement).appendChild(t)}function Z(e){e.setAttribute(`active`,``),e.style.display=`flex`,e.style.flexDirection=`column`,e.style.position=`relative`,e.style.inset=`auto`,e.style.flex=`1 1 auto`,e.style.minHeight=`0`}var ie=new Set([v.files,v.term,v.memory,v.monitor,v.browser]);function ae(e,t,n,r){let i=(e,i)=>{let a=e.detail?.id;a&&ie.has(a)&&(n.has(a)||(e.stopImmediatePropagation(),R(t,a,i),i?r?.onToolPanelActivate?.(a):r?.onToolPanelDeactivate?.(a)))};e.addEventListener(`slicc-dock-select`,e=>i(e,!0),!0),e.addEventListener(`slicc-dock-collapse`,e=>i(e,!1),!0)}function oe(e,t){return{hostSprinkleSurface:(n,i)=>{let a=b(n,i);Z(i),t.set(n,a),e.appendChild(a),r({meta:{id:n,title:ne(n)??n},source:{kind:`element`,tag:`slicc-panel`},origin:`sprinkle`}),R(e,n,!0),J.info(`sprinkle panel hosted`,{surfaceId:n})},removeSprinkleSurface:n=>{t.get(n)?.remove(),t.delete(n),l(n);let r=e.getLayout();r.panels={...r.panels,[n]:{visible:!1}},e.setLayout(r)}}}var Q=`slicc-panel-layout:default`;function se(e,t){e.addEventListener(`slicc-layout-change`,t=>{let n=t.detail?.reason;if(n===`rearrange`||n===`resize`)try{localStorage.setItem(Q,JSON.stringify(e.getLayout()))}catch{}});let r=null;try{let e=localStorage.getItem(Q);if(e){let t=n(JSON.parse(e));`error`in t?J.warn(`stored layout rejected — using the default`,{error:t.error}):r=t}}catch(e){J.warn(`stored layout unreadable — using the default`,e)}e.setLayout(r??t)}var $=null;function ce(){return $}function le(e,t=w,n,r){if(e.frame.dataset.sliccPanelized===`1`)return J.warn(`panelizeShell called twice — ignoring the second call`),null;re(document),x();let i=n,o=document.createElement(`slicc-layout`),s=new Map,c=(e,t)=>{if(!t)return;let n=b(e,t);s.set(e,n),o.appendChild(n)};e.freezer.setAttribute(`docked`,``),e.frame.querySelector(`.wcui-appcol`)?.style.setProperty(`--rail-w`,`0px`),c(v.scoopSwitcher,e.switcher),c(v.floatbar,e.floatbar),c(v.sessionsRail,e.freezer),c(v.dockRail,e.dock),c(v.chat,e.chatPane);for(let t of[v.files,v.term,v.memory,v.monitor,v.browser]){let n=e.dockTree.querySelector(`slicc-surface[surface-id="${t}"]`);n instanceof HTMLElement&&(Z(n),c(t,n))}let l=document.createElement(`div`);l.className=`wcui-avatar-strip`,l.appendChild(_({layout:o,onToggle:(e,t)=>{q({layout:o,fs:i},{kind:t?`show`:`hide`,panelId:e})},onLoadLayout:e=>{q({layout:o,fs:i},{kind:`load`,name:e})},onSaveLayout:e=>{q({layout:o,fs:i},{kind:`save`,name:e,protected:!1}).then(t=>{t.error?J.warn(`layout save failed`,{name:e,error:t.error}):J.info(`layout saved`,{name:e,output:t.output})})},onDeleteLayout:e=>{q({layout:o,fs:i},{kind:`delete`,name:e})},listLayoutNames:async()=>({saved:i?(await I(i)).map(e=>e.name):[],presets:D()})})),l.appendChild(e.avatarMenu),a(l,document),e.shell.replaceWith(o),e.frame.querySelector(`slicc-nav`)?.remove(),se(o,t),ae(e.dock,o,e.overlaySurfaces,r),f(e=>V(e)?q({layout:o,fs:i},e):{applied:!1,error:`"${e.kind}" targets the old dock-tree; with panels use: load, save, show, hide, docs, panels`}),e.frame.dataset.sliccPanelized=`1`,J.info(`shell panelized`,{panels:s.size,layout:t.id});let u={layout:o,avatarStrip:l,panels:s,attachFs:e=>{i=e,J.info(`layout store attached`)},...oe(o,s)};return $=u,u}export{Q as PANEL_LAYOUT_STORAGE_KEY,ce as getPanelizedShell,le as panelizeShell};
@@ -1,4 +1,4 @@
1
- import{n as e,t}from"./path-utils-DNJG-zQf.js";import{t as n}from"./types-D8gIX-W-.js";import"./fs-TeRSVyvv.js";import"./libesm-DITXs-kz.js";import{t as r}from"./kernel-worker-Bl7wfxQy.js";function i(e){return e.startsWith(``)?{bom:``,text:e.slice(1)}:{bom:``,text:e}}function a(e){let t=e.indexOf(`\r
1
+ import{n as e,t}from"./path-utils-DNJG-zQf.js";import{t as n}from"./types-D8gIX-W-.js";import"./fs-TeRSVyvv.js";import"./libesm-DITXs-kz.js";import{t as r}from"./kernel-worker-DKhuL-SB.js";function i(e){return e.startsWith(``)?{bom:``,text:e.slice(1)}:{bom:``,text:e}}function a(e){let t=e.indexOf(`\r
2
2
  `),n=e.indexOf(`
3
3
  `);return n===-1||t===-1?`
4
4
  `:t<n?`\r
@@ -1 +1 @@
1
- import{c as e,d as t,s as n}from"./models-K_BYbYJy.js";function r(e){return`systemPrompt`in e||`tools`in e?t(e):e}function i(t){return`systemPrompt`in t||`tools`in t?t:{systemPrompt:n(t.messages),tools:e(t.messages),messages:t.messages.filter(e=>e.role!==`system`)}}export{r as n,i as t};
1
+ import{c as e,d as t,s as n}from"./models-DuCVW_cU.js";function r(e){return`systemPrompt`in e||`tools`in e?t(e):e}function i(t){return`systemPrompt`in t||`tools`in t?t:{systemPrompt:n(t.messages),tools:e(t.messages),messages:t.messages.filter(e=>e.role!==`system`)}}export{r as n,i as t};
@@ -0,0 +1 @@
1
+ var e=function(e){return`/`+e},t={},n=function(e){return e.pathname.endsWith(`.css`)},r=function(e,t,n){if(t in e)return e[t];let r=n();if(!r){e[t]=void 0;return}let i=r.then(()=>{e[t]=void 0},n=>{throw e[t]=void 0,n});return e[t]=i,i},i=function(i,a,o){let s=Promise.resolve();if(a&&a.length>0){let i,c=document.querySelector(`meta[property=csp-nonce]`),l=c?.nonce||c?.getAttribute(`nonce`);function u(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function d(e){return import.meta.resolve?new URL(import.meta.resolve(e)):new URL(e,import.meta.url)}s=u(a.map(a=>{a=e(a,o);let s=d(a),c=n(s);return r(t,s.href,()=>{if(i===void 0){i={all:new Set,styles:new Set};let e=document.getElementsByTagName(`link`);for(let t=e.length-1;t>=0;t--){let n=e[t];i.all.add(n.href),n.rel===`stylesheet`&&i.styles.add(n.href)}}if((c?i.styles:i.all).has(s.href))return;let e=document.createElement(`link`);if(e.rel=c?`stylesheet`:`modulepreload`,c||(e.as=`script`),e.crossOrigin=``,e.href=s.href,l&&e.setAttribute(`nonce`,l),document.head.appendChild(e),c)return new Promise((t,n)=>{e.addEventListener(`load`,t),e.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${s}`)))})})}).filter(e=>e!==void 0))}function c(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return s.then(e=>{for(let t of e||[])t.status===`rejected`&&c(t.reason);return i().catch(c)})};export{i as t};
@@ -1 +1 @@
1
- import{t as e}from"./logger-Cx6Y120U.js";import{_ as t,l as n,r}from"./account-store-AloIt5Ss.js";import{i,s as a,t as o}from"./providers-BqUoo02I.js";import{n as s}from"./float-topology-87nCRxRw.js";import{discoverAuth as c,refreshAccessToken as l,runAuthFlow as u}from"./oauth-DWLyu8Zt.js";import{n as d}from"./store-Bja6jtj2.js";import{t as f}from"./mcp-command-R_syvmA2.js";const p=e(`mcp-provider`);function m(){return typeof globalThis<`u`&&globalThis.indexedDB!==void 0}function h(e){return`mcp:${e}`}const g=/* @__PURE__ */ new Map,_=/* @__PURE__ */ new Set;async function v(e){if(e)return e;let{createProxiedFetch:t}=await import(`./proxied-fetch-1DfC_94U.js`).then(e=>e.o),n=t();return async(e,t)=>{let r=await n(e,{method:t?.method,headers:t?.headers,body:t?.body}),i=new TextDecoder().decode(r.body);return{ok:r.status>=200&&r.status<300,status:r.status,statusText:r.statusText,text:async()=>i,json:async()=>JSON.parse(i),headers:{get:e=>r.headers[e.toLowerCase()]??null}}}}async function y(e){let t=g.get(h(e.name));if(t)return t;let n=await v(e.fetchImpl),r=await c(e.serverUrl,void 0,n);return g.set(h(e.name),r),r}function b(e){let i=h(e.name),a=(()=>{try{return new URL(e.serverUrl).host}catch{return``}})();return{id:i,name:`MCP: ${e.name}`,description:`MCP server at ${e.serverUrl}`,requiresApiKey:!1,requiresBaseUrl:!1,isOAuth:!0,oauthTokenDomains:a?[a]:[],getModelIds:()=>[],onOAuthLogin:async(n,r)=>{let a=e.launcher??n,o=await v(e.fetchImpl),c=await y(e),l=await u({asMetadata:c,clientId:e.auth.clientId,scope:e.auth.scope,redirectUri:e.auth.redirectUri??await f(s()),launcher:a,fetchImpl:o});await t({providerId:i,accessToken:l.accessToken,refreshToken:l.refreshToken,tokenExpiresAt:l.expiresAt,scopes:l.scope}),r()},onSilentRenew:async()=>{if(!n(i))return null;let a=r().find(e=>e.providerId===i),o=a?.refreshToken;if(!o)return p.info(`No refresh token for MCP provider, skipping silent renewal`,{id:i}),null;try{let n=await y(e),r=n.grantTypes??[];if(r.length>0&&!r.includes(`refresh_token`))return p.info(`AS does not advertise refresh_token grant; skipping silent renewal`,{id:i}),null;let s=await v(e.fetchImpl),c=await l({tokenEndpoint:n.tokenEndpoint,clientId:e.auth.clientId,refreshToken:o,scope:e.auth.scope,fetchImpl:s});return await t({providerId:i,accessToken:c.accessToken,refreshToken:c.refreshToken??o,tokenExpiresAt:c.expiresAt,scopes:c.scope??a.scopes}),c.accessToken}catch(e){return p.warn(`MCP silent renewal failed`,{id:i,error:e instanceof Error?e.message:String(e)}),null}}}}function x(e){let t=h(e.name);if(_.has(t))return;let n=b(e);i(n),_.add(t),p.debug(`Registered MCP provider`,{id:t})}async function S(e,t={}){let n=h(e);if(_.has(n)&&o(n))return!0;if(!m())return!1;let r=await d(e);return r?(x({name:e,serverUrl:r.serverUrl,auth:r.auth,...t}),!0):!1}async function C(){if(!m())return[];let{readMcpAuthEntries:e}=await import(`./provider-store-access-BG9uc1UB.js`),t=await e(),n=[];for(let e of t)x({name:e.name,serverUrl:e.serverUrl,auth:e.auth}),n.push(h(e.name));return n}function w(e){let t=h(e);return _.delete(t),g.delete(t),a(t)}export{C as ensureAllMcpProvidersRegistered,S as ensureMcpProviderRegistered,x as registerMcpProvider,w as removeMcpProvider};
1
+ import{t as e}from"./logger-Cx6Y120U.js";import{_ as t,l as n,r}from"./account-store-CLrcVXc0.js";import{i,s as a,t as o}from"./providers-DQDxShvT.js";import{n as s}from"./float-topology-87nCRxRw.js";import{discoverAuth as c,refreshAccessToken as l,runAuthFlow as u}from"./oauth-DWLyu8Zt.js";import{n as d}from"./store-Bja6jtj2.js";import{t as f}from"./mcp-command-BMbHOLse.js";const p=e(`mcp-provider`);function m(){return typeof globalThis<`u`&&globalThis.indexedDB!==void 0}function h(e){return`mcp:${e}`}const g=/* @__PURE__ */ new Map,_=/* @__PURE__ */ new Set;async function v(e){if(e)return e;let{createProxiedFetch:t}=await import(`./proxied-fetch-1DfC_94U.js`).then(e=>e.o),n=t();return async(e,t)=>{let r=await n(e,{method:t?.method,headers:t?.headers,body:t?.body}),i=new TextDecoder().decode(r.body);return{ok:r.status>=200&&r.status<300,status:r.status,statusText:r.statusText,text:async()=>i,json:async()=>JSON.parse(i),headers:{get:e=>r.headers[e.toLowerCase()]??null}}}}async function y(e){let t=g.get(h(e.name));if(t)return t;let n=await v(e.fetchImpl),r=await c(e.serverUrl,void 0,n);return g.set(h(e.name),r),r}function b(e){let i=h(e.name),a=(()=>{try{return new URL(e.serverUrl).host}catch{return``}})();return{id:i,name:`MCP: ${e.name}`,description:`MCP server at ${e.serverUrl}`,requiresApiKey:!1,requiresBaseUrl:!1,isOAuth:!0,oauthTokenDomains:a?[a]:[],getModelIds:()=>[],onOAuthLogin:async(n,r)=>{let a=e.launcher??n,o=await v(e.fetchImpl),c=await y(e),l=await u({asMetadata:c,clientId:e.auth.clientId,scope:e.auth.scope,redirectUri:e.auth.redirectUri??await f(s()),launcher:a,fetchImpl:o});await t({providerId:i,accessToken:l.accessToken,refreshToken:l.refreshToken,tokenExpiresAt:l.expiresAt,scopes:l.scope}),r()},onSilentRenew:async()=>{if(!n(i))return null;let a=r().find(e=>e.providerId===i),o=a?.refreshToken;if(!o)return p.info(`No refresh token for MCP provider, skipping silent renewal`,{id:i}),null;try{let n=await y(e),r=n.grantTypes??[];if(r.length>0&&!r.includes(`refresh_token`))return p.info(`AS does not advertise refresh_token grant; skipping silent renewal`,{id:i}),null;let s=await v(e.fetchImpl),c=await l({tokenEndpoint:n.tokenEndpoint,clientId:e.auth.clientId,refreshToken:o,scope:e.auth.scope,fetchImpl:s});return await t({providerId:i,accessToken:c.accessToken,refreshToken:c.refreshToken??o,tokenExpiresAt:c.expiresAt,scopes:c.scope??a.scopes}),c.accessToken}catch(e){return p.warn(`MCP silent renewal failed`,{id:i,error:e instanceof Error?e.message:String(e)}),null}}}}function x(e){let t=h(e.name);if(_.has(t))return;let n=b(e);i(n),_.add(t),p.debug(`Registered MCP provider`,{id:t})}async function S(e,t={}){let n=h(e);if(_.has(n)&&o(n))return!0;if(!m())return!1;let r=await d(e);return r?(x({name:e,serverUrl:r.serverUrl,auth:r.auth,...t}),!0):!1}async function C(){if(!m())return[];let{readMcpAuthEntries:e}=await import(`./provider-store-access-BLah3TfA.js`),t=await e(),n=[];for(let e of t)x({name:e.name,serverUrl:e.serverUrl,auth:e.auth}),n.push(h(e.name));return n}function w(e){let t=h(e);return _.delete(t),g.delete(t),a(t)}export{C as ensureAllMcpProvidersRegistered,S as ensureMcpProviderRegistered,x as registerMcpProvider,w as removeMcpProvider};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/fs-CQpIxK2e.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/preload-helper-DjzSQ1t3.js","assets/logger-DDBAeTLF.js","assets/same-file-identity-OexpsaSD.js","assets/types-D8gIX-W-.js","assets/path-utils-DNJG-zQf.js","assets/bounded-walk-BjxKWNqp.js","assets/virtual-device-paths-D45tpPP6.js","assets/mount-table-store-dY2IfQ5S.js","assets/proxied-fetch-Co-YYDT9.js","assets/base64-ELzoYfwP.js","assets/proxy-error-BSFYY7jj.js","assets/api-endpoint-DuEQRZ4g.js","assets/runtime-env-Dlaokqg1.js","assets/oauth-service-C9_em2OO.js","assets/panel-rpc-accessor-B4BfPLSo.js","assets/permissions-surface-registry-CilCRwhh.js"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./preload-helper-DjzSQ1t3.js";import{t}from"./logger-DDBAeTLF.js";import{C as n,K as r,u as i}from"./account-store-D4Humqb-.js";import{n as a}from"./float-topology-PI5i_WsZ.js";import{i as o}from"./providers-BPtyhTCJ.js";import{t as s}from"./global-db-CbuLl-zx.js";import{n as c,r as l,t as u}from"./bridge-token-required-DMk2va9k.js";import{n as d,r as f,t as p}from"./pkce-hGf_TEnP.js";import{t as m}from"./types-D8gIX-W-.js";var h=t(`mcp-store`),g=`/workspace/.mcp/servers.json`,_=1,v=null,y=null;async function b(){return v||=await e(()=>import(`./fs-CQpIxK2e.js`).then(e=>e.t),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9])),v}async function x(e){if(e)return e;if(y&&y.dbName===`slicc-fs-global`)return y.instance;let{VirtualFS:t}=await b(),n=await t.create({dbName:s});return y={instance:n,dbName:s},n}function S(){return{version:_,servers:{}}}function C(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function w(e){if(!C(e))return null;let t={...e};return typeof t.url==`string`?(delete t.sessionId,t):null}function T(e){if(!C(e))return S();let t=e,n=typeof t.version==`number`?t.version:_,r={};if(C(t.servers))for(let[e,n]of Object.entries(t.servers)){let t=w(n);t&&(r[e]=t)}return{version:n,servers:r}}async function E(e){try{let t=await(await x(e)).readFile(g,{encoding:`utf-8`});try{return T(JSON.parse(t))}catch(e){return h.warn(`servers.json is not valid JSON; treating as empty`,{error:e instanceof Error?e.message:String(e)}),S()}}catch(e){if(e instanceof m&&e.code===`ENOENT`)return S();throw e}}async function D(e){return(await E(e)).servers}async function O(){let e=await D(),t=[];for(let[n,r]of Object.entries(e))r?.url&&r.auth?.clientId&&t.push({name:n,serverUrl:r.url,auth:r.auth});return t}var k=t(`mcp-oauth`);function A(e,t){let{discoveryPath:n,prmUrl:r,prmReason:i,asmUrl:a,asmReason:o}=t;if(!e)throw Error(n===`asm-origin-fallback`?`MCP OAuth discovery failed. PRM (${r}): ${i}. ASM fallback (${a}): ${o}.`:`ASM fetch failed: ${o} (${a})`);if(!(e.authorization_endpoint&&e.token_endpoint))throw Error(n===`asm-origin-fallback`?`MCP OAuth discovery failed. PRM (${r}): ${i}. ASM fallback (${a}) is missing required endpoints (authorization_endpoint, token_endpoint).`:`ASM at ${a} is missing required endpoints`)}async function j(e,t,n){let r=new URL(e).origin,i=t??`${r}/.well-known/oauth-protected-resource`,a=null,o=null;k.debug(`Fetching PRM`,{prmUrl:i});try{let e=await n(i,{headers:{Accept:`application/json`}});if(!e.ok)o=`${e.status} ${e.statusText}`;else{let t=await e.json();!t.authorization_servers||t.authorization_servers.length===0?o=`lists no authorization_servers`:a=t}}catch(e){o=e instanceof Error?e.message:String(e)}let s,c,l;a?.authorization_servers&&a.authorization_servers.length>0?(s=a.authorization_servers[0].replace(/\/+$/,``),c=`${s}/.well-known/oauth-authorization-server`,l=`prm`,k.debug(`Discovery via PRM`,{prmUrl:i,asmUrl:c})):(s=r,c=`${r}/.well-known/oauth-authorization-server`,l=`asm-origin-fallback`,k.debug(`PRM unavailable; falling back to ASM at server origin`,{prmUrl:i,prmReason:o,asmUrl:c}));let u=null,d=null;k.debug(`Fetching ASM`,{asmUrl:c});try{let e=await n(c,{headers:{Accept:`application/json`}});e.ok?u=await e.json():d=`${e.status} ${e.statusText}`}catch(e){d=e instanceof Error?e.message:String(e)}return A(u,{discoveryPath:l,prmUrl:i,prmReason:o,asmUrl:c,asmReason:d}),{issuer:u.issuer||s,authorizationEndpoint:u.authorization_endpoint,tokenEndpoint:u.token_endpoint,registrationEndpoint:u.registration_endpoint,supportedScopes:u.scopes_supported??a?.scopes_supported,codeChallengeMethods:u.code_challenge_methods_supported,grantTypes:u.grant_types_supported,discoveryPath:l}}function M(e){return!e||e.length===0||e.includes(`S256`)?`S256`:e.includes(`plain`)?`plain`:`S256`}async function N(e){let t=d();return e===`plain`?{codeVerifier:t,codeChallenge:t,method:e}:{codeVerifier:t,codeChallenge:await p(t),method:e}}function P(e){try{let t=new URL(e);return{code:t.searchParams.get(`code`),state:t.searchParams.get(`state`)}}catch{return{code:null,state:null}}}async function F(e){let t=await N(M(e.asMetadata.codeChallengeMethods)),n=f(),r=new URLSearchParams({response_type:`code`,client_id:e.clientId,redirect_uri:e.redirectUri,code_challenge:t.codeChallenge,code_challenge_method:t.method,state:n});e.scope&&r.set(`scope`,e.scope);let i=`${e.asMetadata.authorizationEndpoint}?${r.toString()}`,a=await e.launcher(i);if(!a)throw Error(`MCP OAuth flow cancelled or timed out`);let{code:o,state:s}=P(a);if(!o)throw Error("MCP OAuth redirect missing `code` parameter");if(s!==n)throw Error(`MCP OAuth state mismatch — possible CSRF`);return L({tokenEndpoint:e.asMetadata.tokenEndpoint,clientId:e.clientId,code:o,codeVerifier:t.codeVerifier,redirectUri:e.redirectUri,fetchImpl:e.fetchImpl})}function I(e){if(e.error||!e.access_token)throw Error(`Token endpoint error: ${e.error??`no_access_token`}${e.error_description?` — ${e.error_description}`:``}`);return{accessToken:e.access_token,refreshToken:e.refresh_token,expiresAt:e.expires_in?Date.now()+e.expires_in*1e3:void 0,scope:e.scope,tokenType:e.token_type}}async function L(e){let t=new URLSearchParams({grant_type:`authorization_code`,code:e.code,redirect_uri:e.redirectUri,client_id:e.clientId,code_verifier:e.codeVerifier}).toString(),n=await e.fetchImpl(e.tokenEndpoint,{method:`POST`,headers:{"Content-Type":`application/x-www-form-urlencoded`,Accept:`application/json`},body:t}),r=await n.json();if(!n.ok&&!r.access_token)throw Error(`Token exchange failed: ${n.status} ${n.statusText}${r.error?` (${r.error})`:``}`);return I(r)}async function R(e){if(c())throw new u;let t=new URLSearchParams({grant_type:`refresh_token`,refresh_token:e.refreshToken,client_id:e.clientId});e.scope&&t.set(`scope`,e.scope);let n=await e.fetchImpl(e.tokenEndpoint,{method:`POST`,headers:{"Content-Type":`application/x-www-form-urlencoded`,Accept:`application/json`},body:t.toString()}),r=await n.json();if(l(n.status,JSON.stringify(r)))throw new u;if(!n.ok&&!r.access_token)throw Error(`Token refresh failed: ${n.status} ${n.statusText}${r.error?` (${r.error})`:``}`);return I(r)}var z=`/auth/mcp-callback`;async function B(t){if(t===`extension-direct`){let e=chrome;return e.identity?.getRedirectURL?.(`mcp-callback`)??`https://${e.runtime?.id??``}.chromiumapp.org/mcp-callback`}if(t===`node-rest`){let{getLocalApiBaseUrl:t}=await e(async()=>{let{getLocalApiBaseUrl:e}=await import(`./proxied-fetch-Co-YYDT9.js`).then(e=>e.i);return{getLocalApiBaseUrl:e}},__vite__mapDeps([10,1,2,11,12,13,14])),n=t();if(n)return`${n}/auth/callback`}let{getOAuthPageOrigin:n}=await e(async()=>{let{getOAuthPageOrigin:e}=await import(`./oauth-service-C9_em2OO.js`);return{getOAuthPageOrigin:e}},__vite__mapDeps([15,2,10,1,11,12,13,14,16,17])),{origin:r}=await n();return`${r}${t===`extension-delegate`?z:`/auth/callback`}`}var V=t(`mcp-provider`),H=`mcp:`;function U(){return typeof globalThis<`u`&&globalThis.indexedDB!==void 0}function W(e){return`${H}${e}`}var G=new Map,K=new Set;async function q(t){if(t)return t;let{createProxiedFetch:n}=await e(async()=>{let{createProxiedFetch:e}=await import(`./proxied-fetch-Co-YYDT9.js`).then(e=>e.i);return{createProxiedFetch:e}},__vite__mapDeps([10,1,2,11,12,13,14])),r=n();return async(e,t)=>{let n=await r(e,{method:t?.method,headers:t?.headers,body:t?.body}),i=new TextDecoder().decode(n.body);return{ok:n.status>=200&&n.status<300,status:n.status,statusText:n.statusText,text:async()=>i,json:async()=>JSON.parse(i),headers:{get:e=>n.headers[e.toLowerCase()]??null}}}}async function J(e){let t=G.get(W(e.name));if(t)return t;let n=await q(e.fetchImpl),r=await j(e.serverUrl,void 0,n);return G.set(W(e.name),r),r}function Y(e){let t=W(e.name),o=(()=>{try{return new URL(e.serverUrl).host}catch{return``}})();return{id:t,name:`MCP: ${e.name}`,description:`MCP server at ${e.serverUrl}`,requiresApiKey:!1,requiresBaseUrl:!1,isOAuth:!0,oauthTokenDomains:o?[o]:[],getModelIds:()=>[],onOAuthLogin:async(n,i)=>{let o=e.launcher??n,s=await q(e.fetchImpl),c=await F({asMetadata:await J(e),clientId:e.auth.clientId,scope:e.auth.scope,redirectUri:e.auth.redirectUri??await B(a()),launcher:o,fetchImpl:s});await r({providerId:t,accessToken:c.accessToken,refreshToken:c.refreshToken,tokenExpiresAt:c.expiresAt,scopes:c.scope}),i()},onSilentRenew:async()=>{if(!n(t))return null;let a=i().find(e=>e.providerId===t),o=a?.refreshToken;if(!o)return V.info(`No refresh token for MCP provider, skipping silent renewal`,{id:t}),null;try{let n=await J(e),i=n.grantTypes??[];if(i.length>0&&!i.includes(`refresh_token`))return V.info(`AS does not advertise refresh_token grant; skipping silent renewal`,{id:t}),null;let s=await q(e.fetchImpl),c=await R({tokenEndpoint:n.tokenEndpoint,clientId:e.auth.clientId,refreshToken:o,scope:e.auth.scope,fetchImpl:s});return await r({providerId:t,accessToken:c.accessToken,refreshToken:c.refreshToken??o,tokenExpiresAt:c.expiresAt,scopes:c.scope??a.scopes}),c.accessToken}catch(e){return V.warn(`MCP silent renewal failed`,{id:t,error:e instanceof Error?e.message:String(e)}),null}}}}function X(e){let t=W(e.name);if(K.has(t))return;let n=Y(e);o(n),K.add(t),V.debug(`Registered MCP provider`,{id:t})}async function Z(){if(!U())return[];let{readMcpAuthEntries:t}=await e(async()=>{let{readMcpAuthEntries:e}=await import(`./provider-store-access-CkviLtwb.js`);return{readMcpAuthEntries:e}},[]),n=await t(),r=[];for(let e of n)X({name:e.name,serverUrl:e.serverUrl,auth:e.auth}),r.push(W(e.name));return r}export{Z as ensureAllMcpProvidersRegistered,O as t};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/fs-DSnZb1DK.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/preload-helper-BLdHbfdN.js","assets/logger-DDBAeTLF.js","assets/same-file-identity-OexpsaSD.js","assets/types-D8gIX-W-.js","assets/path-utils-DNJG-zQf.js","assets/bounded-walk-BjxKWNqp.js","assets/virtual-device-paths-D45tpPP6.js","assets/mount-table-store-dY2IfQ5S.js","assets/proxied-fetch-Dcpb4ieV.js","assets/base64-ELzoYfwP.js","assets/proxy-error-BSFYY7jj.js","assets/api-endpoint-DuEQRZ4g.js","assets/runtime-env-Dlaokqg1.js","assets/oauth-service-BTbFz00g.js","assets/panel-rpc-accessor-B4BfPLSo.js","assets/permissions-surface-registry-CilCRwhh.js"])))=>i.map(i=>d[i]);
2
+ import{t as e}from"./preload-helper-BLdHbfdN.js";import{t}from"./logger-DDBAeTLF.js";import{C as n,K as r,u as i}from"./account-store-C8ku_32k.js";import{n as a}from"./float-topology-DJxhvO9u.js";import{i as o}from"./providers-D98KfVHw.js";import{t as s}from"./global-db-CbuLl-zx.js";import{n as c,r as l,t as u}from"./bridge-token-required-DMk2va9k.js";import{n as d,r as f,t as p}from"./pkce-hGf_TEnP.js";import{t as m}from"./types-D8gIX-W-.js";var h=t(`mcp-store`),g=`/workspace/.mcp/servers.json`,_=1,v=null,y=null;async function b(){return v||=await e(()=>import(`./fs-DSnZb1DK.js`).then(e=>e.t),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9])),v}async function x(e){if(e)return e;if(y&&y.dbName===`slicc-fs-global`)return y.instance;let{VirtualFS:t}=await b(),n=await t.create({dbName:s});return y={instance:n,dbName:s},n}function S(){return{version:_,servers:{}}}function C(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function w(e){if(!C(e))return null;let t={...e};return typeof t.url==`string`?(delete t.sessionId,t):null}function T(e){if(!C(e))return S();let t=e,n=typeof t.version==`number`?t.version:_,r={};if(C(t.servers))for(let[e,n]of Object.entries(t.servers)){let t=w(n);t&&(r[e]=t)}return{version:n,servers:r}}async function E(e){try{let t=await(await x(e)).readFile(g,{encoding:`utf-8`});try{return T(JSON.parse(t))}catch(e){return h.warn(`servers.json is not valid JSON; treating as empty`,{error:e instanceof Error?e.message:String(e)}),S()}}catch(e){if(e instanceof m&&e.code===`ENOENT`)return S();throw e}}async function D(e){return(await E(e)).servers}async function O(){let e=await D(),t=[];for(let[n,r]of Object.entries(e))r?.url&&r.auth?.clientId&&t.push({name:n,serverUrl:r.url,auth:r.auth});return t}var k=t(`mcp-oauth`);function A(e,t){let{discoveryPath:n,prmUrl:r,prmReason:i,asmUrl:a,asmReason:o}=t;if(!e)throw Error(n===`asm-origin-fallback`?`MCP OAuth discovery failed. PRM (${r}): ${i}. ASM fallback (${a}): ${o}.`:`ASM fetch failed: ${o} (${a})`);if(!(e.authorization_endpoint&&e.token_endpoint))throw Error(n===`asm-origin-fallback`?`MCP OAuth discovery failed. PRM (${r}): ${i}. ASM fallback (${a}) is missing required endpoints (authorization_endpoint, token_endpoint).`:`ASM at ${a} is missing required endpoints`)}async function j(e,t,n){let r=new URL(e).origin,i=t??`${r}/.well-known/oauth-protected-resource`,a=null,o=null;k.debug(`Fetching PRM`,{prmUrl:i});try{let e=await n(i,{headers:{Accept:`application/json`}});if(!e.ok)o=`${e.status} ${e.statusText}`;else{let t=await e.json();!t.authorization_servers||t.authorization_servers.length===0?o=`lists no authorization_servers`:a=t}}catch(e){o=e instanceof Error?e.message:String(e)}let s,c,l;a?.authorization_servers&&a.authorization_servers.length>0?(s=a.authorization_servers[0].replace(/\/+$/,``),c=`${s}/.well-known/oauth-authorization-server`,l=`prm`,k.debug(`Discovery via PRM`,{prmUrl:i,asmUrl:c})):(s=r,c=`${r}/.well-known/oauth-authorization-server`,l=`asm-origin-fallback`,k.debug(`PRM unavailable; falling back to ASM at server origin`,{prmUrl:i,prmReason:o,asmUrl:c}));let u=null,d=null;k.debug(`Fetching ASM`,{asmUrl:c});try{let e=await n(c,{headers:{Accept:`application/json`}});e.ok?u=await e.json():d=`${e.status} ${e.statusText}`}catch(e){d=e instanceof Error?e.message:String(e)}return A(u,{discoveryPath:l,prmUrl:i,prmReason:o,asmUrl:c,asmReason:d}),{issuer:u.issuer||s,authorizationEndpoint:u.authorization_endpoint,tokenEndpoint:u.token_endpoint,registrationEndpoint:u.registration_endpoint,supportedScopes:u.scopes_supported??a?.scopes_supported,codeChallengeMethods:u.code_challenge_methods_supported,grantTypes:u.grant_types_supported,discoveryPath:l}}function M(e){return!e||e.length===0||e.includes(`S256`)?`S256`:e.includes(`plain`)?`plain`:`S256`}async function N(e){let t=d();return e===`plain`?{codeVerifier:t,codeChallenge:t,method:e}:{codeVerifier:t,codeChallenge:await p(t),method:e}}function P(e){try{let t=new URL(e);return{code:t.searchParams.get(`code`),state:t.searchParams.get(`state`)}}catch{return{code:null,state:null}}}async function F(e){let t=await N(M(e.asMetadata.codeChallengeMethods)),n=f(),r=new URLSearchParams({response_type:`code`,client_id:e.clientId,redirect_uri:e.redirectUri,code_challenge:t.codeChallenge,code_challenge_method:t.method,state:n});e.scope&&r.set(`scope`,e.scope);let i=`${e.asMetadata.authorizationEndpoint}?${r.toString()}`,a=await e.launcher(i);if(!a)throw Error(`MCP OAuth flow cancelled or timed out`);let{code:o,state:s}=P(a);if(!o)throw Error("MCP OAuth redirect missing `code` parameter");if(s!==n)throw Error(`MCP OAuth state mismatch — possible CSRF`);return L({tokenEndpoint:e.asMetadata.tokenEndpoint,clientId:e.clientId,code:o,codeVerifier:t.codeVerifier,redirectUri:e.redirectUri,fetchImpl:e.fetchImpl})}function I(e){if(e.error||!e.access_token)throw Error(`Token endpoint error: ${e.error??`no_access_token`}${e.error_description?` — ${e.error_description}`:``}`);return{accessToken:e.access_token,refreshToken:e.refresh_token,expiresAt:e.expires_in?Date.now()+e.expires_in*1e3:void 0,scope:e.scope,tokenType:e.token_type}}async function L(e){let t=new URLSearchParams({grant_type:`authorization_code`,code:e.code,redirect_uri:e.redirectUri,client_id:e.clientId,code_verifier:e.codeVerifier}).toString(),n=await e.fetchImpl(e.tokenEndpoint,{method:`POST`,headers:{"Content-Type":`application/x-www-form-urlencoded`,Accept:`application/json`},body:t}),r=await n.json();if(!n.ok&&!r.access_token)throw Error(`Token exchange failed: ${n.status} ${n.statusText}${r.error?` (${r.error})`:``}`);return I(r)}async function R(e){if(c())throw new u;let t=new URLSearchParams({grant_type:`refresh_token`,refresh_token:e.refreshToken,client_id:e.clientId});e.scope&&t.set(`scope`,e.scope);let n=await e.fetchImpl(e.tokenEndpoint,{method:`POST`,headers:{"Content-Type":`application/x-www-form-urlencoded`,Accept:`application/json`},body:t.toString()}),r=await n.json();if(l(n.status,JSON.stringify(r)))throw new u;if(!n.ok&&!r.access_token)throw Error(`Token refresh failed: ${n.status} ${n.statusText}${r.error?` (${r.error})`:``}`);return I(r)}var z=`/auth/mcp-callback`;async function B(t){if(t===`extension-direct`){let e=chrome;return e.identity?.getRedirectURL?.(`mcp-callback`)??`https://${e.runtime?.id??``}.chromiumapp.org/mcp-callback`}if(t===`node-rest`){let{getLocalApiBaseUrl:t}=await e(async()=>{let{getLocalApiBaseUrl:e}=await import(`./proxied-fetch-Dcpb4ieV.js`).then(e=>e.i);return{getLocalApiBaseUrl:e}},__vite__mapDeps([10,1,2,11,12,13,14])),n=t();if(n)return`${n}/auth/callback`}let{getOAuthPageOrigin:n}=await e(async()=>{let{getOAuthPageOrigin:e}=await import(`./oauth-service-BTbFz00g.js`);return{getOAuthPageOrigin:e}},__vite__mapDeps([15,2,10,1,11,12,13,14,16,17])),{origin:r}=await n();return`${r}${t===`extension-delegate`?z:`/auth/callback`}`}var V=t(`mcp-provider`),H=`mcp:`;function U(){return typeof globalThis<`u`&&globalThis.indexedDB!==void 0}function W(e){return`${H}${e}`}var G=new Map,K=new Set;async function q(t){if(t)return t;let{createProxiedFetch:n}=await e(async()=>{let{createProxiedFetch:e}=await import(`./proxied-fetch-Dcpb4ieV.js`).then(e=>e.i);return{createProxiedFetch:e}},__vite__mapDeps([10,1,2,11,12,13,14])),r=n();return async(e,t)=>{let n=await r(e,{method:t?.method,headers:t?.headers,body:t?.body}),i=new TextDecoder().decode(n.body);return{ok:n.status>=200&&n.status<300,status:n.status,statusText:n.statusText,text:async()=>i,json:async()=>JSON.parse(i),headers:{get:e=>n.headers[e.toLowerCase()]??null}}}}async function J(e){let t=G.get(W(e.name));if(t)return t;let n=await q(e.fetchImpl),r=await j(e.serverUrl,void 0,n);return G.set(W(e.name),r),r}function Y(e){let t=W(e.name),o=(()=>{try{return new URL(e.serverUrl).host}catch{return``}})();return{id:t,name:`MCP: ${e.name}`,description:`MCP server at ${e.serverUrl}`,requiresApiKey:!1,requiresBaseUrl:!1,isOAuth:!0,oauthTokenDomains:o?[o]:[],getModelIds:()=>[],onOAuthLogin:async(n,i)=>{let o=e.launcher??n,s=await q(e.fetchImpl),c=await F({asMetadata:await J(e),clientId:e.auth.clientId,scope:e.auth.scope,redirectUri:e.auth.redirectUri??await B(a()),launcher:o,fetchImpl:s});await r({providerId:t,accessToken:c.accessToken,refreshToken:c.refreshToken,tokenExpiresAt:c.expiresAt,scopes:c.scope}),i()},onSilentRenew:async()=>{if(!n(t))return null;let a=i().find(e=>e.providerId===t),o=a?.refreshToken;if(!o)return V.info(`No refresh token for MCP provider, skipping silent renewal`,{id:t}),null;try{let n=await J(e),i=n.grantTypes??[];if(i.length>0&&!i.includes(`refresh_token`))return V.info(`AS does not advertise refresh_token grant; skipping silent renewal`,{id:t}),null;let s=await q(e.fetchImpl),c=await R({tokenEndpoint:n.tokenEndpoint,clientId:e.auth.clientId,refreshToken:o,scope:e.auth.scope,fetchImpl:s});return await r({providerId:t,accessToken:c.accessToken,refreshToken:c.refreshToken??o,tokenExpiresAt:c.expiresAt,scopes:c.scope??a.scopes}),c.accessToken}catch(e){return V.warn(`MCP silent renewal failed`,{id:t,error:e instanceof Error?e.message:String(e)}),null}}}}function X(e){let t=W(e.name);if(K.has(t))return;let n=Y(e);o(n),K.add(t),V.debug(`Registered MCP provider`,{id:t})}async function Z(){if(!U())return[];let{readMcpAuthEntries:t}=await e(async()=>{let{readMcpAuthEntries:e}=await import(`./provider-store-access-DK9jcMFs.js`);return{readMcpAuthEntries:e}},[]),n=await t(),r=[];for(let e of n)X({name:e.name,serverUrl:e.serverUrl,auth:e.auth}),r.push(W(e.name));return r}export{Z as ensureAllMcpProvidersRegistered,O as t};
@@ -1 +1 @@
1
- import{n as e}from"./rolldown-runtime-DBVvNlSN.js";import{t}from"./logger-Cx6Y120U.js";import"./account-store-AloIt5Ss.js";import"./core-qVdZuDN0.js";import"./tray-runtime-config-BvQtvIxB.js";var n=/* @__PURE__ */ e({copyTextToClipboard:()=>r});async function r(e){if(!e)return!1;if(typeof navigator<`u`&&navigator.clipboard?.writeText)try{return await navigator.clipboard.writeText(e),!0}catch{}if(typeof document>`u`)return!1;try{let t=document.createElement(`textarea`);t.value=e,t.setAttribute(`readonly`,``),t.style.cssText=`position:fixed; opacity:0; pointer-events:none; left:-9999px;`,document.body.appendChild(t),t.select();let n=document.execCommand?.(`copy`)??!1;return document.body.removeChild(t),n}catch{return!1}}t(`provider-settings`);export{n as t};
1
+ import{n as e}from"./rolldown-runtime-DBVvNlSN.js";import{t}from"./logger-Cx6Y120U.js";import"./account-store-CLrcVXc0.js";import"./core-qVdZuDN0.js";import"./tray-runtime-config-BvQtvIxB.js";var n=/* @__PURE__ */ e({copyTextToClipboard:()=>r});async function r(e){if(!e)return!1;if(typeof navigator<`u`&&navigator.clipboard?.writeText)try{return await navigator.clipboard.writeText(e),!0}catch{}if(typeof document>`u`)return!1;try{let t=document.createElement(`textarea`);t.value=e,t.setAttribute(`readonly`,``),t.style.cssText=`position:fixed; opacity:0; pointer-events:none; left:-9999px;`,document.body.appendChild(t),t.select();let n=document.execCommand?.(`copy`)??!1;return document.body.removeChild(t),n}catch{return!1}}t(`provider-settings`);export{n as t};
@@ -0,0 +1 @@
1
+ import{t as e}from"./store-Bja6jtj2.js";import"./provider-BUOENNXd.js";export{e as readMcpAuthEntries};
@@ -0,0 +1 @@
1
+ import{t as e}from"./provider-C6GKyGbH.js";export{e as readMcpAuthEntries};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/azure-openai-DCtV7Fk7.js","assets/diagnostics-B-5VkVir.js","assets/models-K_BYbYJy.js","assets/preload-helper-DjzSQ1t3.js","assets/compat-d34y6SaJ.js","assets/env-api-keys-Ds64PXJ4.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/openrouter.models-C88RzzVZ.js","assets/azure-openai-config-D2vLg_Tc.js","assets/account-store-D4Humqb-.js","assets/logger-DDBAeTLF.js","assets/core-DfJhnyZb.js","assets/utf16-clip-CGL7omVm.js","assets/feature-flags-Lh2dvGiT.js","assets/proxied-fetch-Co-YYDT9.js","assets/base64-ELzoYfwP.js","assets/proxy-error-BSFYY7jj.js","assets/api-endpoint-DuEQRZ4g.js","assets/runtime-env-Dlaokqg1.js","assets/secret-topology-B-7q9k0Q.js","assets/float-topology-PI5i_WsZ.js","assets/secrets-bridge-client-D734Xx8G.js","assets/port-bridge-client-B-gpiOVR.js","assets/panel-rpc-accessor-B4BfPLSo.js","assets/image-markers-4eaAm9QS.js","assets/tool-ui-eSQ1g2I1.js","assets/stored-accounts-ChNHYF68.js","assets/bedrock-camp-compat-D6dUCn_T.js","assets/bedrock-camp-extra-models-COVvjLB5.js","assets/claude-model-version-3MWQoaco.js","assets/renamed-providers-DDe6My59.js","assets/transform-messages-Bx3wQh2R.js","assets/pi-transcript-context-M0uAa_Rs.js","assets/bedrock-camp-BRe8SyVL.js","assets/temperature-support-CQFa5vxR.js","assets/local-llm-B72jeBdJ.js","assets/legacy-api-aliases-DZ7QKXPR.js","assets/adobe-DzPNN5WH.js","assets/main-pG2z7nDr.js","assets/modulepreload-polyfill-P2Xu9kJm.js","assets/bridge-protocol-C52CnDIj.js","assets/telemetry-BqfutULb.js","assets/tray-follower-status-BAjnN7Ar.js","assets/clipboard-eqmn97SP.js","assets/anthropic-proxy-compat-CaymbdBf.js","assets/silent-renew-backoff-BMr_pGCU.js","assets/provider-budget-LCzMPlKv.js","assets/oauth-service-C9_em2OO.js","assets/permissions-surface-registry-CilCRwhh.js","assets/llm-session-id-bZQs6gBN.js","assets/cerebras-BlBAjiPm.js","assets/github-copilot-NuiVJlRe.js","assets/github-BAVQKGLM.js","assets/global-db-CbuLl-zx.js","assets/bridge-token-required-DMk2va9k.js","assets/openai-codex-BuzdyFkb.js","assets/pkce-hGf_TEnP.js","assets/openrouter-free-CoKNk8Q9.js","assets/openrouter-models-BAx3qulP.js","assets/openrouter-oauth-Dm2bFG2r.js","assets/openrouter-CajNnUyi.js","assets/xai-grok-B0VdJo2K.js","assets/xai-grok-errors-bnlIBeu-.js"])))=>i.map(i=>d[i]);
2
- import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helper-DjzSQ1t3.js";var n={include:[`*`],exclude:[`amazon-bedrock`,`xai`]},r=e({getRegisteredProviderConfig:()=>d,getRegisteredProviderIds:()=>f,registerProviderConfig:()=>p,registerProviders:()=>u,shouldIncludeProvider:()=>a}),i=Object.assign({"/packages/dev-tools/providers.build.json":n})[`/packages/dev-tools/providers.build.json`]??{include:[`*`],exclude:[]};function a(e){let{include:t,exclude:n}=i;return n.includes(`*`)||n.includes(e)?!1:!!(t.includes(`*`)||t.includes(e))}var o=Object.assign({"./built-in/azure-ai-foundry.ts":()=>t(()=>import(`./azure-ai-foundry-Bo0FAJyX.js`),[]),"./built-in/azure-openai.ts":()=>t(()=>import(`./azure-openai-DCtV7Fk7.js`),__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])),"./built-in/bedrock-camp-compat.ts":()=>t(()=>import(`./bedrock-camp-compat-D6dUCn_T.js`).then(e=>e.s),__vite__mapDeps([29,8])),"./built-in/bedrock-camp-extra-models.ts":()=>t(()=>import(`./bedrock-camp-extra-models-COVvjLB5.js`).then(e=>e.n),__vite__mapDeps([30,8,29])),"./built-in/bedrock-camp.ts":()=>t(()=>import(`./bedrock-camp-BRe8SyVL.js`),__vite__mapDeps([35,1,2,3,4,5,6,7,8,9,10,29,31,33,34,36])),"./built-in/local-llm.ts":()=>t(()=>import(`./local-llm-B72jeBdJ.js`),__vite__mapDeps([37,1,4,2,3,5,6,7,8,9,10,38,12,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,34]))}),s=Object.assign({"/packages/webapp/providers/adobe.ts":()=>t(()=>import(`./adobe-DzPNN5WH.js`),__vite__mapDeps([39,1,3,4,2,5,6,7,8,9,10,38,13,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,11,28,29,30,31,32,40,41,42,43,44,45,46,47,48,49,50,34,36,51])),"/packages/webapp/providers/cerebras.ts":()=>t(()=>import(`./cerebras-BlBAjiPm.js`),__vite__mapDeps([52,1,4,2,3,5,6,7,8,9,10,38,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,34])),"/packages/webapp/providers/github-copilot.ts":()=>t(()=>import(`./github-copilot-NuiVJlRe.js`),__vite__mapDeps([53,1,3,4,2,5,6,7,8,9,10,38,13,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,11,28,29,30,31,32,40,41,42,43,44,45,46])),"/packages/webapp/providers/github.ts":()=>t(()=>import(`./github-BAVQKGLM.js`),__vite__mapDeps([54,3,11,12,13,4,2,1,5,6,7,8,9,10,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,40,41,42,43,44,45,47,49,50,55,56])),"/packages/webapp/providers/openai-codex.ts":()=>t(()=>import(`./openai-codex-BuzdyFkb.js`),__vite__mapDeps([57,1,4,2,3,5,6,7,8,9,10,38,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,40,41,42,43,44,45,34,56,58])),"/packages/webapp/providers/openrouter-free.ts":()=>t(()=>import(`./openrouter-free-CoKNk8Q9.js`),__vite__mapDeps([59,1,4,2,3,5,6,7,8,9,10,38,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,40,41,42,43,44,45,34,60,61,58])),"/packages/webapp/providers/openrouter-models.ts":()=>t(()=>import(`./openrouter-models-BAx3qulP.js`),__vite__mapDeps([60,9])),"/packages/webapp/providers/openrouter-oauth.ts":()=>t(()=>import(`./openrouter-oauth-Dm2bFG2r.js`),__vite__mapDeps([61,11,3,12,13,4,2,1,5,6,7,8,9,10,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,40,41,42,43,44,45,58])),"/packages/webapp/providers/openrouter.ts":()=>t(()=>import(`./openrouter-CajNnUyi.js`),__vite__mapDeps([62,4,2,1,3,5,6,7,8,9,10,38,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,40,41,42,43,44,45,34,60,61,58])),"/packages/webapp/providers/xai-grok-errors.ts":()=>t(()=>import(`./xai-grok-errors-bnlIBeu-.js`),[]),"/packages/webapp/providers/xai-grok.ts":()=>t(()=>import(`./xai-grok-B0VdJo2K.js`),__vite__mapDeps([63,1,4,2,3,5,6,7,8,9,10,38,13,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,11,28,29,30,31,32,40,41,42,43,44,45,34,56,58,64]))}),c=new Map,l=null;function u(){return l===null&&(l=(async()=>{let e=await Promise.all(Object.values(o).map(e=>e()));for(let t of e)t.config&&a(t.config.id)&&(c.set(t.config.id,t.config),t.register?.());let t=await Promise.all(Object.values(s).map(e=>e()));for(let e of t)e.config&&(c.set(e.config.id,e.config),e.register?.())})()),l}function d(e){return c.get(e)}function f(){return[...c.keys()]}function p(e){c.set(e.id,e)}export{u as a,p as i,f as n,a as o,r,d as t};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/azure-openai-BuzUN1Zv.js","assets/diagnostics-B-5VkVir.js","assets/models-DuCVW_cU.js","assets/preload-helper-BLdHbfdN.js","assets/compat-TaBTsXFP.js","assets/env-api-keys-Cfrk_k8Z.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/openrouter.models-C88RzzVZ.js","assets/azure-openai-config-D2vLg_Tc.js","assets/account-store-C8ku_32k.js","assets/logger-DDBAeTLF.js","assets/core-kdG72Y8N.js","assets/utf16-clip-CGL7omVm.js","assets/feature-flags-Lh2dvGiT.js","assets/proxied-fetch-Dcpb4ieV.js","assets/base64-ELzoYfwP.js","assets/proxy-error-BSFYY7jj.js","assets/api-endpoint-DuEQRZ4g.js","assets/runtime-env-Dlaokqg1.js","assets/secret-topology-CcM8VDVI.js","assets/float-topology-DJxhvO9u.js","assets/secrets-bridge-client-D734Xx8G.js","assets/port-bridge-client-B-gpiOVR.js","assets/panel-rpc-accessor-B4BfPLSo.js","assets/image-markers-4eaAm9QS.js","assets/tool-ui-eSQ1g2I1.js","assets/stored-accounts-ChNHYF68.js","assets/bedrock-camp-compat-D6dUCn_T.js","assets/bedrock-camp-extra-models-COVvjLB5.js","assets/claude-model-version-3MWQoaco.js","assets/renamed-providers-DDe6My59.js","assets/transform-messages-HTSSP3zz.js","assets/pi-transcript-context-BD-rasES.js","assets/bedrock-camp-Drg4mDwe.js","assets/temperature-support-CQFa5vxR.js","assets/local-llm-DUc-GBj9.js","assets/legacy-api-aliases-BqXqjuwj.js","assets/adobe-ZF88lAqt.js","assets/main-CWx8ZbOh.js","assets/modulepreload-polyfill-P2Xu9kJm.js","assets/bridge-protocol-C52CnDIj.js","assets/telemetry-kqkj0A7x.js","assets/tray-follower-status-BAjnN7Ar.js","assets/clipboard-eqmn97SP.js","assets/anthropic-proxy-compat-CaymbdBf.js","assets/silent-renew-backoff-B9OHOzRe.js","assets/provider-budget-LCzMPlKv.js","assets/oauth-service-BTbFz00g.js","assets/permissions-surface-registry-CilCRwhh.js","assets/llm-session-id-bZQs6gBN.js","assets/cerebras-DfDfqh_L.js","assets/github-copilot-Bt2MljG0.js","assets/github--CcFgkAY.js","assets/global-db-CbuLl-zx.js","assets/bridge-token-required-DMk2va9k.js","assets/openai-codex-uQMjU0_s.js","assets/pkce-hGf_TEnP.js","assets/openrouter-free-C9Ks_BoF.js","assets/openrouter-models-BAx3qulP.js","assets/openrouter-oauth-CWRFCzx3.js","assets/openrouter-DneJqayx.js","assets/xai-grok-BwRAMV0b.js","assets/xai-grok-errors-bnlIBeu-.js"])))=>i.map(i=>d[i]);
2
+ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helper-BLdHbfdN.js";var n={include:[`*`],exclude:[`amazon-bedrock`,`xai`]},r=e({getRegisteredProviderConfig:()=>d,getRegisteredProviderIds:()=>f,registerProviderConfig:()=>p,registerProviders:()=>u,shouldIncludeProvider:()=>a}),i=Object.assign({"/packages/dev-tools/providers.build.json":n})[`/packages/dev-tools/providers.build.json`]??{include:[`*`],exclude:[]};function a(e){let{include:t,exclude:n}=i;return n.includes(`*`)||n.includes(e)?!1:!!(t.includes(`*`)||t.includes(e))}var o=Object.assign({"./built-in/azure-ai-foundry.ts":()=>t(()=>import(`./azure-ai-foundry-Bo0FAJyX.js`),[]),"./built-in/azure-openai.ts":()=>t(()=>import(`./azure-openai-BuzUN1Zv.js`),__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])),"./built-in/bedrock-camp-compat.ts":()=>t(()=>import(`./bedrock-camp-compat-D6dUCn_T.js`).then(e=>e.s),__vite__mapDeps([29,8])),"./built-in/bedrock-camp-extra-models.ts":()=>t(()=>import(`./bedrock-camp-extra-models-COVvjLB5.js`).then(e=>e.n),__vite__mapDeps([30,8,29])),"./built-in/bedrock-camp.ts":()=>t(()=>import(`./bedrock-camp-Drg4mDwe.js`),__vite__mapDeps([35,1,2,3,4,5,6,7,8,9,10,29,31,33,34,36])),"./built-in/local-llm.ts":()=>t(()=>import(`./local-llm-DUc-GBj9.js`),__vite__mapDeps([37,1,4,2,3,5,6,7,8,9,10,38,12,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,34]))}),s=Object.assign({"/packages/webapp/providers/adobe.ts":()=>t(()=>import(`./adobe-ZF88lAqt.js`),__vite__mapDeps([39,1,3,4,2,5,6,7,8,9,10,38,13,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,11,28,29,30,31,32,40,41,42,43,44,45,46,47,48,49,50,34,36,51])),"/packages/webapp/providers/cerebras.ts":()=>t(()=>import(`./cerebras-DfDfqh_L.js`),__vite__mapDeps([52,1,4,2,3,5,6,7,8,9,10,38,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,34])),"/packages/webapp/providers/github-copilot.ts":()=>t(()=>import(`./github-copilot-Bt2MljG0.js`),__vite__mapDeps([53,1,3,4,2,5,6,7,8,9,10,38,13,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,11,28,29,30,31,32,40,41,42,43,44,45,46])),"/packages/webapp/providers/github.ts":()=>t(()=>import(`./github--CcFgkAY.js`),__vite__mapDeps([54,3,11,12,13,4,2,1,5,6,7,8,9,10,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,40,41,42,43,44,45,47,49,50,55,56])),"/packages/webapp/providers/openai-codex.ts":()=>t(()=>import(`./openai-codex-uQMjU0_s.js`),__vite__mapDeps([57,1,4,2,3,5,6,7,8,9,10,38,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,40,41,42,43,44,45,34,56,58])),"/packages/webapp/providers/openrouter-free.ts":()=>t(()=>import(`./openrouter-free-C9Ks_BoF.js`),__vite__mapDeps([59,1,4,2,3,5,6,7,8,9,10,38,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,40,41,42,43,44,45,34,60,61,58])),"/packages/webapp/providers/openrouter-models.ts":()=>t(()=>import(`./openrouter-models-BAx3qulP.js`),__vite__mapDeps([60,9])),"/packages/webapp/providers/openrouter-oauth.ts":()=>t(()=>import(`./openrouter-oauth-CWRFCzx3.js`),__vite__mapDeps([61,11,3,12,13,4,2,1,5,6,7,8,9,10,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,40,41,42,43,44,45,58])),"/packages/webapp/providers/openrouter.ts":()=>t(()=>import(`./openrouter-DneJqayx.js`),__vite__mapDeps([62,4,2,1,3,5,6,7,8,9,10,38,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,40,41,42,43,44,45,34,60,61,58])),"/packages/webapp/providers/xai-grok-errors.ts":()=>t(()=>import(`./xai-grok-errors-bnlIBeu-.js`),[]),"/packages/webapp/providers/xai-grok.ts":()=>t(()=>import(`./xai-grok-BwRAMV0b.js`),__vite__mapDeps([63,1,4,2,3,5,6,7,8,9,10,38,13,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,11,28,29,30,31,32,40,41,42,43,44,45,34,56,58,64]))}),c=new Map,l=null;function u(){return l===null&&(l=(async()=>{let e=await Promise.all(Object.values(o).map(e=>e()));for(let t of e)t.config&&a(t.config.id)&&(c.set(t.config.id,t.config),t.register?.());let t=await Promise.all(Object.values(s).map(e=>e()));for(let e of t)e.config&&(c.set(e.config.id,e.config),e.register?.())})()),l}function d(e){return c.get(e)}function f(){return[...c.keys()]}function p(e){c.set(e.id,e)}export{u as a,p as i,f as n,a as o,r,d as t};
@@ -1 +1 @@
1
- import{n as e}from"./rolldown-runtime-DBVvNlSN.js";var t={include:[`*`],exclude:[`amazon-bedrock`,`xai`]},n=/* @__PURE__ */ e({allProviderConfigs:()=>u,getRegisteredProviderConfig:()=>d,getRegisteredProviderIds:()=>f,registerProviderConfig:()=>p,registerProviders:()=>l,shouldIncludeProvider:()=>i,unregisterProviderConfig:()=>m});const r=(/* @__PURE__ */ Object.assign({"/packages/dev-tools/providers.build.json":t}))[`/packages/dev-tools/providers.build.json`]??{include:[`*`],exclude:[]};function i(e){let{include:t,exclude:n}=r;return n.includes(`*`)||n.includes(e)?!1:!!(t.includes(`*`)||t.includes(e))}const a=/* #__PURE__ */ Object.assign({"./built-in/azure-ai-foundry.ts":()=>import(`./azure-ai-foundry-CzkPLAhp.js`),"./built-in/azure-openai.ts":()=>import(`./azure-openai-qBC0T6wP.js`),"./built-in/bedrock-camp-compat.ts":()=>import(`./bedrock-camp-compat-BMzeUHCf.js`).then(e=>e.s),"./built-in/bedrock-camp-extra-models.ts":()=>import(`./bedrock-camp-extra-models-DW8Mzq5o.js`).then(e=>e.n),"./built-in/bedrock-camp.ts":()=>import(`./bedrock-camp-D_6lMink.js`),"./built-in/local-llm.ts":()=>import(`./local-llm-Dxm6T0ph.js`).then(e=>e.n)}),o=/* #__PURE__ */ Object.assign({"/packages/webapp/providers/adobe.ts":()=>import(`./adobe-COzZgYMJ.js`),"/packages/webapp/providers/cerebras.ts":()=>import(`./cerebras-D05pSaD3.js`),"/packages/webapp/providers/github-copilot.ts":()=>import(`./github-copilot-B2ui266i.js`),"/packages/webapp/providers/github.ts":()=>import(`./github-seYRLByd.js`),"/packages/webapp/providers/openai-codex.ts":()=>import(`./openai-codex-CBBCnX5G.js`),"/packages/webapp/providers/openrouter-free.ts":()=>import(`./openrouter-free-DvQSB466.js`),"/packages/webapp/providers/openrouter-models.ts":()=>import(`./openrouter-models-BH7IBYKI.js`),"/packages/webapp/providers/openrouter-oauth.ts":()=>import(`./openrouter-oauth-Cwnv6aaR.js`),"/packages/webapp/providers/openrouter.ts":()=>import(`./openrouter-yrPyWZSZ.js`),"/packages/webapp/providers/xai-grok-errors.ts":()=>import(`./xai-grok-errors-ByEMMSoz.js`),"/packages/webapp/providers/xai-grok.ts":()=>import(`./xai-grok-B-1EsChx.js`)}),s=/* @__PURE__ */ new Map;let c=null;function l(){return c===null&&(c=(async()=>{let e=await Promise.all(Object.values(a).map(e=>e()));for(let t of e)t.config&&i(t.config.id)&&(s.set(t.config.id,t.config),t.register?.());let t=await Promise.all(Object.values(o).map(e=>e()));for(let e of t)e.config&&(s.set(e.config.id,e.config),e.register?.())})()),c}const u=s;function d(e){return s.get(e)}function f(){return[...s.keys()]}function p(e){s.set(e.id,e)}function m(e){return s.delete(e)}export{l as a,p as i,f as n,i as o,n as r,m as s,d as t};
1
+ import{n as e}from"./rolldown-runtime-DBVvNlSN.js";var t={include:[`*`],exclude:[`amazon-bedrock`,`xai`]},n=/* @__PURE__ */ e({allProviderConfigs:()=>u,getRegisteredProviderConfig:()=>d,getRegisteredProviderIds:()=>f,registerProviderConfig:()=>p,registerProviders:()=>l,shouldIncludeProvider:()=>i,unregisterProviderConfig:()=>m});const r=(/* @__PURE__ */ Object.assign({"/packages/dev-tools/providers.build.json":t}))[`/packages/dev-tools/providers.build.json`]??{include:[`*`],exclude:[]};function i(e){let{include:t,exclude:n}=r;return n.includes(`*`)||n.includes(e)?!1:!!(t.includes(`*`)||t.includes(e))}const a=/* #__PURE__ */ Object.assign({"./built-in/azure-ai-foundry.ts":()=>import(`./azure-ai-foundry-CzkPLAhp.js`),"./built-in/azure-openai.ts":()=>import(`./azure-openai-D8taz7yq.js`),"./built-in/bedrock-camp-compat.ts":()=>import(`./bedrock-camp-compat-BMzeUHCf.js`).then(e=>e.s),"./built-in/bedrock-camp-extra-models.ts":()=>import(`./bedrock-camp-extra-models-DW8Mzq5o.js`).then(e=>e.n),"./built-in/bedrock-camp.ts":()=>import(`./bedrock-camp-D_6lMink.js`),"./built-in/local-llm.ts":()=>import(`./local-llm-BzQlnS5L.js`).then(e=>e.n)}),o=/* #__PURE__ */ Object.assign({"/packages/webapp/providers/adobe.ts":()=>import(`./adobe-Cpi2aE-H.js`),"/packages/webapp/providers/cerebras.ts":()=>import(`./cerebras-DZZFW27U.js`),"/packages/webapp/providers/github-copilot.ts":()=>import(`./github-copilot-DRF3abOV.js`),"/packages/webapp/providers/github.ts":()=>import(`./github-ChxmjcJc.js`),"/packages/webapp/providers/openai-codex.ts":()=>import(`./openai-codex-4_vQIXxb.js`),"/packages/webapp/providers/openrouter-free.ts":()=>import(`./openrouter-free-QijswzXp.js`),"/packages/webapp/providers/openrouter-models.ts":()=>import(`./openrouter-models-BH7IBYKI.js`),"/packages/webapp/providers/openrouter-oauth.ts":()=>import(`./openrouter-oauth-C3NFC0lq.js`),"/packages/webapp/providers/openrouter.ts":()=>import(`./openrouter-TLjYxLOJ.js`),"/packages/webapp/providers/xai-grok-errors.ts":()=>import(`./xai-grok-errors-ByEMMSoz.js`),"/packages/webapp/providers/xai-grok.ts":()=>import(`./xai-grok-D-s6Eti2.js`)}),s=/* @__PURE__ */ new Map;let c=null;function l(){return c===null&&(c=(async()=>{let e=await Promise.all(Object.values(a).map(e=>e()));for(let t of e)t.config&&i(t.config.id)&&(s.set(t.config.id,t.config),t.register?.());let t=await Promise.all(Object.values(o).map(e=>e()));for(let e of t)e.config&&(s.set(e.config.id,e.config),e.register?.())})()),c}const u=s;function d(e){return s.get(e)}function f(){return[...s.keys()]}function p(e){s.set(e.id,e)}function m(e){return s.delete(e)}export{l as a,p as i,f as n,i as o,n as r,m as s,d as t};
@@ -1,2 +1,2 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/panel-rpc-sLZo8PD-.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/panel-rpc-accessor-B4BfPLSo.js"])))=>i.map(i=>d[i]);
2
- import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helper-DjzSQ1t3.js";import{r as n,t as r}from"./base64-ELzoYfwP.js";import{n as i,r as a,t as o}from"./proxy-error-BSFYY7jj.js";import{a as s,i as c,r as l,s as u,t as d}from"./api-endpoint-DuEQRZ4g.js";function f(e){if(!e)return{};let t={};for(let[n,r]of Object.entries(e)){let e=n.toLowerCase();e===`cookie`?t[`X-Proxy-Cookie`]=r:e===`origin`?t[`X-Proxy-Origin`]=r:e===`referer`?t[`X-Proxy-Referer`]=r:e.startsWith(`proxy-`)?t[`X-Proxy-${n}`]=r:t[n]=r}return t}function p(e){let t={};for(let[n,r]of Object.entries(e)){let e=n.toLowerCase();e===`x-proxy-set-cookie`?t[`set-cookie`]=r:e===`x-proxy-www-authenticate`?t[`www-authenticate`]=r:t[n]=r}return t}function m(e){if(e){if(e instanceof Headers){let t={};return e.forEach((e,n)=>{t[n]=e}),t}return e}}var h=new Map,g=new Map;function _(e,t){h.set(e,t),setTimeout(()=>h.delete(e),1e4)}function v(e,t){g.set(e,t),setTimeout(()=>g.delete(e),1e4)}new TextDecoder;function y(e){if(typeof e!=`string`)return e;for(let t=0;t<e.length;t++)if(e.charCodeAt(t)>255)return new TextEncoder().encode(e);let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t}var b=new Map;function x(e){return b.get(e)?.bytes??null}var S=e({BINARY_CACHE_BODY_CAP:()=>E,PROXY_CONTENT_LENGTH_HEADER:()=>P,REQUEST_BODY_CAP:()=>C,collectViaExtensionDelegate:()=>X,collectViaExtensionPort:()=>J,createProxiedFetch:()=>Z,decodeForbiddenResponseHeaders:()=>B,encodeForbiddenRequestHeaders:()=>z,getLocalApiBaseUrl:()=>s,getResponseBodyCap:()=>T,headersToRecord:()=>N,isTextContentType:()=>a,prepareRequestBody:()=>R,readResponseBody:()=>A,resolveExactRequestBody:()=>L,responseTooLargeError:()=>D}),C=33554432,w=536870912;function T(){return w}var E=33554432;function D(e,t,n=w){let r=Math.round(n/1048576),i=t===void 0?``:` (${t} bytes)`;return Error(`proxied-fetch: response body for ${e} exceeds the ${r} MiB download limit${i}; download it in ranges (curl -r) or from a native float`)}var O=new Set([101,103,204,205,304]);function k(){return u(`/api/fetch-proxy`)}async function A(e,t,n,r,i=w){let a=e.headers.get(`content-type`)??``,o=r??F(e.headers);if(o!==void 0&&o>i)throw await e.body?.cancel().catch(()=>void 0),D(t??e.url,o,i);let s=await M(e,t??e.url,n,o,i);return j(s,a,t),s}function j(e,t,n){if(a(t)||e.byteLength>33554432)return;if(n){v(n,e);return}let r=``;for(let t=0;t<e.length;t+=32768)r+=String.fromCharCode(...e.subarray(t,t+32768));_(r,e)}async function M(e,t,n,r,i=w){if(!e.body)return new Uint8Array(await e.arrayBuffer());let a=e.body.getReader(),o=r!==void 0&&r>0&&r<=i?new Uint8Array(r):null,s=[],c=0;for(;;){let{done:e,value:r}=await a.read();if(e)break;let l=r;if(o?c+l.byteLength<=o.byteLength?o.set(l,c):(s.push(o.subarray(0,c),l),o=null):s.push(l),c+=l.byteLength,c>i)throw await a.cancel().catch(()=>void 0),D(t,void 0,i);n?.(c)}return o?c===o.byteLength?o:o.slice(0,c):H(s)}var N=m,P=`x-proxy-content-length`;function F(e){let t=t=>e instanceof Headers?e.get(t):Object.entries(e).find(([e])=>e.toLowerCase()===t)?.[1]??null,n=t(`x-proxy-content-length`)??t(`content-length`);if(n==null||!/^\d+$/.test(n))return;let r=Number(n);return Number.isSafeInteger(r)&&r>=0?r:void 0}async function I(e,t,n){if(!e)return n();try{return await n()}finally{e.end(t)}}function L(e){return typeof e!=`string`||e===``?e:x(e)??e}function R(e,t){let n=L(e);if(n==null||n===``)return;if(typeof n!=`string`)return new Blob([n]);let r=Object.entries(t??{}).find(([e])=>e.toLowerCase()===`content-type`)?.[1]??``;if(r&&!a(r)){let e=y(n);return new Blob([e])}return n}var z=f,B=p,V=r;function H(e){let t=e.reduce((e,t)=>e+t.length,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function U(e,t,n){let r=new Headers;for(let[t,n]of Object.entries(e.headers))r.set(t,String(n));let i=O.has(e.status)?new Uint8Array:t;return j(i,r.get(`content-type`)??``,n),{status:e.status,statusText:e.statusText,headers:B(e.headers),body:i,url:n}}async function W(e){let t=N(e?.headers),r=e?.method??`GET`,i=e?.body?R(e.body,t):void 0,a=z(t),o,s=!1;if(i!==void 0){let e=i instanceof Uint8Array?i:new Uint8Array(await new Response(i).arrayBuffer());e.byteLength>33554432?s=!0:o=n(e)}return{method:r,transportHeaders:a,bodyBase64:o,requestBodyTooLarge:s}}function G(e){return e?.signal}function K(){return new DOMException(`The operation was aborted.`,`AbortError`)}async function q(e,t,n,r,i=w){let{method:a,transportHeaders:o,bodyBase64:s,requestBodyTooLarge:c}=await W(n),l=G(n);if(l?.aborted)throw K();let u=e();return new Promise((e,n)=>{let d=null,f=!1,p=0,m,h=[],g=e=>{f=!0,h.length=0,l?.removeEventListener(`abort`,_),n(e),u.disconnect()},_=()=>g(K());l?.addEventListener(`abort`,_,{once:!0});let v=e=>{if(d={status:e.status,statusText:e.statusText,headers:e.headers},m=F(e.headers),m!==void 0&&m>i){g(D(t,m,i));return}r?.start(t,m)},y=e=>{if(f)return;let n=V(e.dataBase64);if(p+=n.byteLength,p>i){g(D(t,void 0,i));return}h.push(n),r?.chunk(t,p,m)},b=()=>{if(!f){if(f=!0,l?.removeEventListener(`abort`,_),!d){n(Error(`fetch-proxy: response-end before response-head`));return}e({head:d,body:H(h).buffer}),u.disconnect()}};u.onMessage.addListener(e=>{let t=e;t.type===`response-head`?v(t):t.type===`response-chunk`?y(t):t.type===`response-end`?b():t.type===`response-error`&&g(Error(t.error))}),u.onDisconnect.addListener(()=>{f||n(Error(d?`fetch-proxy port disconnected mid-stream`:`fetch-proxy port disconnected before response`))}),u.postMessage({type:`request`,url:t,method:a,headers:o,bodyBase64:s,requestBodyTooLarge:c})})}function J(e,t,n,r){return q(()=>chrome.runtime.connect({name:`fetch-proxy.fetch`}),e,t,n,r)}async function Y(e,t,n,r){let{head:i,body:a}=await I(n,e,()=>J(e,t,n,r));return U(i,new Uint8Array(a),e)}async function X(e,t,n,r){let i=c();if(!i)throw Error(`proxied-fetch: no extension delegate id configured`);let a=chrome.runtime.connect;return q(()=>a(i,{name:`fetch-proxy.fetch`}),e,t,n,r)}function Z(e={}){let n=e.progress,r=()=>e.maxResponseBytes===void 0?w:Math.min(e.maxResponseBytes,w);return l()?(e,t)=>Y(e,t,n,r()):typeof chrome<`u`&&typeof chrome?.runtime?.connect==`function`&&c()?async(e,t)=>{let{head:i,body:a}=await I(n,e,()=>X(e,t,n,r()));return U(i,new Uint8Array(a),e)}:typeof chrome>`u`&&c()?async(e,i)=>{let{getPanelRpcClient:a}=await t(async()=>{let{getPanelRpcClient:e}=await import(`./panel-rpc-sLZo8PD-.js`).then(e=>e.n);return{getPanelRpcClient:e}},__vite__mapDeps([0,1,2])),o=a();if(!o)throw Error(`proxied-fetch: panel-RPC client unavailable in worker realm`);let s=i?.method??`GET`,c=N(i?.headers)??{},l=L(i?.body);n?.start(e,void 0);let{head:u,body:d}=await I(n,e,()=>o.call(`proxied-fetch`,{url:e,method:s,headers:c,body:l},{timeoutMs:12e4,signal:G(i)}));if(d.byteLength>r())throw D(e,d.byteLength,r());return U(u,new Uint8Array(d),e)}:async(e,t)=>{let a=t?.method??`GET`,s=z(N(t?.headers)),c=d({...s,"X-Target-URL":e}),l={method:a,headers:c,cache:`no-store`},u=t?.signal;if(u&&(l.signal=u),t?.body&&![`GET`,`HEAD`].includes(a)){let e=R(t.body,c);e instanceof Blob&&(c[`X-Slicc-Raw-Body`]=`1`),l.body=e}return I(n,e,async()=>{let t=await fetch(k(),l);if(o(t))throw Error(await i(t));let a=F(t.headers);n?.start(e,a);let s=await A(t,e,n?t=>n.chunk(e,t,a):void 0,a,r()),c={};t.headers.forEach((e,t)=>{c[t]=e});let u=B(c);return{status:t.status,statusText:t.statusText,headers:u,body:s,url:e}})}}export{y as a,S as i,Z as n,p as o,T as r,f as s,C as t};
2
+ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helper-BLdHbfdN.js";import{r as n,t as r}from"./base64-ELzoYfwP.js";import{n as i,r as a,t as o}from"./proxy-error-BSFYY7jj.js";import{a as s,i as c,r as l,s as u,t as d}from"./api-endpoint-DuEQRZ4g.js";function f(e){if(!e)return{};let t={};for(let[n,r]of Object.entries(e)){let e=n.toLowerCase();e===`cookie`?t[`X-Proxy-Cookie`]=r:e===`origin`?t[`X-Proxy-Origin`]=r:e===`referer`?t[`X-Proxy-Referer`]=r:e.startsWith(`proxy-`)?t[`X-Proxy-${n}`]=r:t[n]=r}return t}function p(e){let t={};for(let[n,r]of Object.entries(e)){let e=n.toLowerCase();e===`x-proxy-set-cookie`?t[`set-cookie`]=r:e===`x-proxy-www-authenticate`?t[`www-authenticate`]=r:t[n]=r}return t}function m(e){if(e){if(e instanceof Headers){let t={};return e.forEach((e,n)=>{t[n]=e}),t}return e}}var h=new Map,g=new Map;function _(e,t){h.set(e,t),setTimeout(()=>h.delete(e),1e4)}function v(e,t){g.set(e,t),setTimeout(()=>g.delete(e),1e4)}new TextDecoder;function y(e){if(typeof e!=`string`)return e;for(let t=0;t<e.length;t++)if(e.charCodeAt(t)>255)return new TextEncoder().encode(e);let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t}var b=new Map;function x(e){return b.get(e)?.bytes??null}var S=e({BINARY_CACHE_BODY_CAP:()=>E,PROXY_CONTENT_LENGTH_HEADER:()=>P,REQUEST_BODY_CAP:()=>C,collectViaExtensionDelegate:()=>X,collectViaExtensionPort:()=>J,createProxiedFetch:()=>Z,decodeForbiddenResponseHeaders:()=>B,encodeForbiddenRequestHeaders:()=>z,getLocalApiBaseUrl:()=>s,getResponseBodyCap:()=>T,headersToRecord:()=>N,isTextContentType:()=>a,prepareRequestBody:()=>R,readResponseBody:()=>A,resolveExactRequestBody:()=>L,responseTooLargeError:()=>D}),C=33554432,w=536870912;function T(){return w}var E=33554432;function D(e,t,n=w){let r=Math.round(n/1048576),i=t===void 0?``:` (${t} bytes)`;return Error(`proxied-fetch: response body for ${e} exceeds the ${r} MiB download limit${i}; download it in ranges (curl -r) or from a native float`)}var O=new Set([101,103,204,205,304]);function k(){return u(`/api/fetch-proxy`)}async function A(e,t,n,r,i=w){let a=e.headers.get(`content-type`)??``,o=r??F(e.headers);if(o!==void 0&&o>i)throw await e.body?.cancel().catch(()=>void 0),D(t??e.url,o,i);let s=await M(e,t??e.url,n,o,i);return j(s,a,t),s}function j(e,t,n){if(a(t)||e.byteLength>33554432)return;if(n){v(n,e);return}let r=``;for(let t=0;t<e.length;t+=32768)r+=String.fromCharCode(...e.subarray(t,t+32768));_(r,e)}async function M(e,t,n,r,i=w){if(!e.body)return new Uint8Array(await e.arrayBuffer());let a=e.body.getReader(),o=r!==void 0&&r>0&&r<=i?new Uint8Array(r):null,s=[],c=0;for(;;){let{done:e,value:r}=await a.read();if(e)break;let l=r;if(o?c+l.byteLength<=o.byteLength?o.set(l,c):(s.push(o.subarray(0,c),l),o=null):s.push(l),c+=l.byteLength,c>i)throw await a.cancel().catch(()=>void 0),D(t,void 0,i);n?.(c)}return o?c===o.byteLength?o:o.slice(0,c):H(s)}var N=m,P=`x-proxy-content-length`;function F(e){let t=t=>e instanceof Headers?e.get(t):Object.entries(e).find(([e])=>e.toLowerCase()===t)?.[1]??null,n=t(`x-proxy-content-length`)??t(`content-length`);if(n==null||!/^\d+$/.test(n))return;let r=Number(n);return Number.isSafeInteger(r)&&r>=0?r:void 0}async function I(e,t,n){if(!e)return n();try{return await n()}finally{e.end(t)}}function L(e){return typeof e!=`string`||e===``?e:x(e)??e}function R(e,t){let n=L(e);if(n==null||n===``)return;if(typeof n!=`string`)return new Blob([n]);let r=Object.entries(t??{}).find(([e])=>e.toLowerCase()===`content-type`)?.[1]??``;if(r&&!a(r)){let e=y(n);return new Blob([e])}return n}var z=f,B=p,V=r;function H(e){let t=e.reduce((e,t)=>e+t.length,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function U(e,t,n){let r=new Headers;for(let[t,n]of Object.entries(e.headers))r.set(t,String(n));let i=O.has(e.status)?new Uint8Array:t;return j(i,r.get(`content-type`)??``,n),{status:e.status,statusText:e.statusText,headers:B(e.headers),body:i,url:n}}async function W(e){let t=N(e?.headers),r=e?.method??`GET`,i=e?.body?R(e.body,t):void 0,a=z(t),o,s=!1;if(i!==void 0){let e=i instanceof Uint8Array?i:new Uint8Array(await new Response(i).arrayBuffer());e.byteLength>33554432?s=!0:o=n(e)}return{method:r,transportHeaders:a,bodyBase64:o,requestBodyTooLarge:s}}function G(e){return e?.signal}function K(){return new DOMException(`The operation was aborted.`,`AbortError`)}async function q(e,t,n,r,i=w){let{method:a,transportHeaders:o,bodyBase64:s,requestBodyTooLarge:c}=await W(n),l=G(n);if(l?.aborted)throw K();let u=e();return new Promise((e,n)=>{let d=null,f=!1,p=0,m,h=[],g=e=>{f=!0,h.length=0,l?.removeEventListener(`abort`,_),n(e),u.disconnect()},_=()=>g(K());l?.addEventListener(`abort`,_,{once:!0});let v=e=>{if(d={status:e.status,statusText:e.statusText,headers:e.headers},m=F(e.headers),m!==void 0&&m>i){g(D(t,m,i));return}r?.start(t,m)},y=e=>{if(f)return;let n=V(e.dataBase64);if(p+=n.byteLength,p>i){g(D(t,void 0,i));return}h.push(n),r?.chunk(t,p,m)},b=()=>{if(!f){if(f=!0,l?.removeEventListener(`abort`,_),!d){n(Error(`fetch-proxy: response-end before response-head`));return}e({head:d,body:H(h).buffer}),u.disconnect()}};u.onMessage.addListener(e=>{let t=e;t.type===`response-head`?v(t):t.type===`response-chunk`?y(t):t.type===`response-end`?b():t.type===`response-error`&&g(Error(t.error))}),u.onDisconnect.addListener(()=>{f||n(Error(d?`fetch-proxy port disconnected mid-stream`:`fetch-proxy port disconnected before response`))}),u.postMessage({type:`request`,url:t,method:a,headers:o,bodyBase64:s,requestBodyTooLarge:c})})}function J(e,t,n,r){return q(()=>chrome.runtime.connect({name:`fetch-proxy.fetch`}),e,t,n,r)}async function Y(e,t,n,r){let{head:i,body:a}=await I(n,e,()=>J(e,t,n,r));return U(i,new Uint8Array(a),e)}async function X(e,t,n,r){let i=c();if(!i)throw Error(`proxied-fetch: no extension delegate id configured`);let a=chrome.runtime.connect;return q(()=>a(i,{name:`fetch-proxy.fetch`}),e,t,n,r)}function Z(e={}){let n=e.progress,r=()=>e.maxResponseBytes===void 0?w:Math.min(e.maxResponseBytes,w);return l()?(e,t)=>Y(e,t,n,r()):typeof chrome<`u`&&typeof chrome?.runtime?.connect==`function`&&c()?async(e,t)=>{let{head:i,body:a}=await I(n,e,()=>X(e,t,n,r()));return U(i,new Uint8Array(a),e)}:typeof chrome>`u`&&c()?async(e,i)=>{let{getPanelRpcClient:a}=await t(async()=>{let{getPanelRpcClient:e}=await import(`./panel-rpc-sLZo8PD-.js`).then(e=>e.n);return{getPanelRpcClient:e}},__vite__mapDeps([0,1,2])),o=a();if(!o)throw Error(`proxied-fetch: panel-RPC client unavailable in worker realm`);let s=i?.method??`GET`,c=N(i?.headers)??{},l=L(i?.body);n?.start(e,void 0);let{head:u,body:d}=await I(n,e,()=>o.call(`proxied-fetch`,{url:e,method:s,headers:c,body:l},{timeoutMs:12e4,signal:G(i)}));if(d.byteLength>r())throw D(e,d.byteLength,r());return U(u,new Uint8Array(d),e)}:async(e,t)=>{let a=t?.method??`GET`,s=z(N(t?.headers)),c=d({...s,"X-Target-URL":e}),l={method:a,headers:c,cache:`no-store`},u=t?.signal;if(u&&(l.signal=u),t?.body&&![`GET`,`HEAD`].includes(a)){let e=R(t.body,c);e instanceof Blob&&(c[`X-Slicc-Raw-Body`]=`1`),l.body=e}return I(n,e,async()=>{let t=await fetch(k(),l);if(o(t))throw Error(await i(t));let a=F(t.headers);n?.start(e,a);let s=await A(t,e,n?t=>n.chunk(e,t,a):void 0,a,r()),c={};t.headers.forEach((e,t)=>{c[t]=e});let u=B(c);return{status:t.status,statusText:t.statusText,headers:u,body:s,url:e}})}}export{y as a,S as i,Z as n,p as o,T as r,f as s,C as t};
@@ -1,2 +1,2 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/panel-rpc-sLZo8PD-.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/panel-rpc-accessor-B4BfPLSo.js"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./preload-helper-DjzSQ1t3.js";import{i as t,n,t as r}from"./proxy-error-BSFYY7jj.js";import{i,r as a,s as o,t as s}from"./api-endpoint-DuEQRZ4g.js";import{n as c,t as l}from"./proxied-fetch-raw-types-BapqdEuh.js";import{c as u,i as d,l as f,n as p,o as m,probeRawPort as h,r as g,rawFetchViaPort as _,s as v,u as y}from"./proxied-fetch-raw-port-Dv7XYtb4.js";function b(e){let t=[],n=null,r=0,i=0,a=()=>(n??=e().then(e=>{t.push(e)}).finally(()=>{n=null}),n);return{stream:()=>{let e=++i;return new ReadableStream({async pull(n){for(;t.length===0;)await a();if(e!==i)return;let o=t[0];if(o==null){n.close();return}t.shift(),r+=o.byteLength,n.enqueue(o)}},{highWaterMark:0})},untouched:()=>r===0}}function x(e){let t=e.getReader();return async()=>{let{done:e,value:n}=await t.read();return e?null:n}}function S(e){if(!e.canStream)return!1;let n=u(e.headers);return n[`x-slicc-hmac-sign`]!==void 0||t(n[`content-type`]??``)?!1:e.bodyLength===void 0||e.bodyLength>=8388608}function C(){let e=!1;try{let t=new Request(`https://example.invalid/`,{body:new ReadableStream,method:`POST`,get duplex(){return e=!0,`half`}}).headers.has(`Content-Type`);return e&&!t}catch{return!1}}function w(e,t,n){return e instanceof TypeError&&t.untouched()&&!n?.aborted}async function T(e,t,n){let r=b(e);try{return await t(r.stream())}catch(e){if(!w(e,r,n))throw e;return await t(r.stream())}}function E(){if(typeof chrome>`u`||typeof chrome.runtime?.connect!=`function`)return null;if(a())return()=>chrome.runtime.connect({name:`fetch-proxy.fetch`});let e=i();if(!e)return null;let t=chrome.runtime.connect;return()=>t(e,{name:`fetch-proxy.fetch`})}var D={supported:!1,requestBodyStreaming:!1,maxRequestBodyBytes:0},O=3e5,k=5e3,A=new Map;function j(e){return{supported:!0,requestBodyStreaming:e.requestBodyStreaming,maxRequestBodyBytes:e.maxRequestBodyBytes}}async function M(e){let t;try{t=await fetch(e,{method:`POST`,headers:s({[g]:`1`}),cache:`no-store`})}catch{return{capabilities:D,keepMs:0}}let n=t.ok?f(await t.json().catch(()=>null)):null;if(n||await t.body?.cancel().catch(()=>void 0),!n)return{capabilities:D,keepMs:1/0};let r=j(n);return r.requestBodyStreaming&&=C(),{capabilities:r,keepMs:1/0}}async function N(e){let t=await h(e,k);return t===`silent`?{capabilities:D,keepMs:O}:{capabilities:t?j(t):D,keepMs:1/0}}async function P(){let{getPanelRpcClient:t}=await e(async()=>{let{getPanelRpcClient:e}=await import(`./panel-rpc-sLZo8PD-.js`).then(e=>e.n);return{getPanelRpcClient:e}},__vite__mapDeps([0,1,2])),n=t();if(!n)return{capabilities:D,keepMs:0};try{let e=await n.call(`raw-fetch-probe`,{},{timeoutMs:15e3});return{capabilities:e,keepMs:e.supported?1/0:O}}catch{return{capabilities:D,keepMs:0}}}function F(){if(c()){let e=o(`/api/fetch-proxy`);return{key:`bridge:${e}`,probe:()=>M(e)}}let e=E(),t=i()??`self`;return e?{key:`port:${t}`,probe:()=>N(e)}:{key:`worker:${t}`,probe:P}}function I(){let{key:e,probe:t}=F(),n=A.get(e);if(n&&n.expires>Date.now())return n.answer;let r=t().then(({capabilities:t,keepMs:n})=>(n===0?A.delete(e):A.set(e,{answer:r,expires:Date.now()+n}),t));return A.set(e,{answer:r,expires:1/0}),r}function L(){A.clear()}function R(e=`raw fetch: this bridge does not support raw mode; update node-server`){return new l(`unsupported`,501,e)}function z(e){return async(t,n)=>{if(!(await I()).supported)throw R(`raw fetch: this extension does not support raw mode; update it`);return e(t,n)}}function B(){return new DOMException(`The operation was aborted.`,`AbortError`)}function V(e){return new l(`request-body-too-large`,413,`raw fetch: request body exceeds the ${e} byte limit of this float`)}function H(e,t){return t?t.aborted?Promise.reject(B()):new Promise((n,r)=>{let i=()=>r(B());t.addEventListener(`abort`,i,{once:!0}),e.read().then(e=>{t.removeEventListener(`abort`,i),n(e)},e=>{t.removeEventListener(`abort`,i),r(e)})}):e.read()}async function U(e,t,n){if(e===void 0)return null;if(e instanceof Blob||e instanceof Uint8Array){let n=e instanceof Blob?e:new Blob([e]);if(n.size>t)throw V(t);return n}let r=e.getReader(),i=[],a=0;try{for(;;){let{done:e,value:o}=await H(r,n);if(e)break;if(a+=o.byteLength,a>t)throw V(t);i.push(o)}}catch(e){throw await r.cancel().catch(()=>void 0),e}return new Blob(i)}async function W(e){let t=await n(e);return e.status===413?new l(`request-body-too-large`,413,t):e.status===403?new l(`forbidden-secret`,403,t):e.status===400&&/X-Target-URL/i.test(t)?R():e.status===502?new l(`upstream`,502,t):new l(`bridge`,502,t)}async function G(e,t){if(!e.body)throw new l(`bridge`,502,`raw fetch: bridge sent no body`);let n=e.body.getReader(),r=new Uint8Array,i=null;try{for(;!i;){let{done:e,value:t}=await n.read();if(e)throw new l(`bridge`,502,`raw fetch: truncated response head`);let a=new Uint8Array(r.byteLength+t.byteLength);a.set(r),a.set(t,r.byteLength),r=a,i=m(r)}}catch(e){throw await n.cancel().catch(()=>void 0),e instanceof l?e:new l(`bridge`,502,e instanceof Error?e.message:String(e))}let{head:a,rest:o}=i;if(!y(t,a.status))return await n.cancel().catch(()=>void 0),{...a,body:null};let s=o.byteLength>0?o:null,c=new ReadableStream({async pull(e){if(s){e.enqueue(s),s=null;return}let t;try{t=await n.read()}catch(t){e.error(new l(`upstream`,502,`raw fetch: response body failed: ${t instanceof Error?t.message:String(t)}`));return}t.done?e.close():e.enqueue(t.value)},cancel(e){return n.cancel(e)}},{highWaterMark:0});return{...a,body:c}}async function K(e,t,n){let r=o(`/api/fetch-proxy`),i=t.body;if(!(i!==void 0&&S({headers:t.headers??[],bodyLength:i instanceof Uint8Array?i.byteLength:i instanceof Blob?i.size:t.bodyLength,canStream:n.requestBodyStreaming}))||i===void 0){let a=await U(i,n.maxRequestBodyBytes,t.signal);return fetch(r,a?{...e,body:a}:e)}return T(x(i instanceof Uint8Array?new Blob([i]).stream():i instanceof Blob?i.stream():i),t=>fetch(r,{...e,body:t,duplex:`half`}),t.signal)}function q(){return async(e,t={})=>{let n=t.method??`GET`,i=await I();if(!i.supported)throw R();let a={method:`POST`,headers:s({[d]:v({url:e,method:n,headers:t.headers??[]}),"Content-Type":`application/octet-stream`,"X-Slicc-Raw-Body":`1`}),cache:`no-store`};t.signal&&(a.signal=t.signal);let o;try{o=await K(a,t,i)}catch(e){throw t.signal?.aborted||e instanceof l?e:new l(`bridge`,502,`raw fetch: the bridge is unreachable: ${e instanceof Error?e.message:String(e)}`)}if(r(o))throw await W(o);if(!(o.headers.get(`content-type`)??``).startsWith(`application/vnd.slicc.raw-fetch`))throw await o.body?.cancel().catch(()=>void 0),R();return G(o,n)}}var J=6e5;function Y(e){if(e.ok)return e;let t=e;throw new l(t.code,t.status,t.error)}async function X(e,t,n,r){let i=(n instanceof ReadableStream?n:new Blob([n]).stream()).getReader(),a={timeoutMs:J,signal:r};for(;;){let{done:n,value:r}=await i.read();if(n)break;for(let n=0;n<r.byteLength;n+=p){let i=r.subarray(n,n+p);Y(await e.call(`raw-fetch-write`,{id:t,chunk:i},a))}}Y(await e.call(`raw-fetch-write`,{id:t,chunk:null},a))}function Z(){return async(t,n={})=>{let{getPanelRpcClient:r}=await e(async()=>{let{getPanelRpcClient:e}=await import(`./panel-rpc-sLZo8PD-.js`).then(e=>e.n);return{getPanelRpcClient:e}},__vite__mapDeps([0,1,2])),i=r();if(!i)throw new l(`unsupported`,501,`raw fetch: panel-RPC unavailable`);let a={timeoutMs:J,signal:n.signal},{id:o}=await i.call(`raw-fetch-open`,{url:t,method:n.method??`GET`,headers:n.headers??[],hasBody:n.body!==void 0,bodyLength:n.body instanceof Uint8Array?n.body.byteLength:n.body instanceof Blob?n.body.size:n.bodyLength},a),s=()=>void i.call(`raw-fetch-cancel`,{id:o}).catch(()=>void 0);n.signal?.addEventListener(`abort`,s,{once:!0}),n.body!==void 0&&X(i,o,n.body,n.signal).catch(s);let{head:c,hasBody:u}=Y(await i.call(`raw-fetch-head`,{id:o},a));if(!u)return{...c,body:null};let d=new ReadableStream({async pull(e){let{chunk:t}=Y(await i.call(`raw-fetch-read`,{id:o},a));t?e.enqueue(t):e.close()},cancel:s},{highWaterMark:0});return{...c,body:d}}}function Q(){if(c())return q();let e=E();return z(e?(t,n)=>_(e,t,n):Z())}export{l as RawFetchError,Q as createRawProxiedFetch,E as extensionPortConnector,I as getRawFetchCapabilities,L as resetRawFetchCapabilities,c as usesFetchProxyEndpoint};
2
+ import{t as e}from"./preload-helper-BLdHbfdN.js";import{i as t,n,t as r}from"./proxy-error-BSFYY7jj.js";import{i,r as a,s as o,t as s}from"./api-endpoint-DuEQRZ4g.js";import{n as c,t as l}from"./proxied-fetch-raw-types-BapqdEuh.js";import{c as u,i as d,l as f,n as p,o as m,probeRawPort as h,r as g,rawFetchViaPort as _,s as v,u as y}from"./proxied-fetch-raw-port-Dv7XYtb4.js";function b(e){let t=[],n=null,r=0,i=0,a=()=>(n??=e().then(e=>{t.push(e)}).finally(()=>{n=null}),n);return{stream:()=>{let e=++i;return new ReadableStream({async pull(n){for(;t.length===0;)await a();if(e!==i)return;let o=t[0];if(o==null){n.close();return}t.shift(),r+=o.byteLength,n.enqueue(o)}},{highWaterMark:0})},untouched:()=>r===0}}function x(e){let t=e.getReader();return async()=>{let{done:e,value:n}=await t.read();return e?null:n}}function S(e){if(!e.canStream)return!1;let n=u(e.headers);return n[`x-slicc-hmac-sign`]!==void 0||t(n[`content-type`]??``)?!1:e.bodyLength===void 0||e.bodyLength>=8388608}function C(){let e=!1;try{let t=new Request(`https://example.invalid/`,{body:new ReadableStream,method:`POST`,get duplex(){return e=!0,`half`}}).headers.has(`Content-Type`);return e&&!t}catch{return!1}}function w(e,t,n){return e instanceof TypeError&&t.untouched()&&!n?.aborted}async function T(e,t,n){let r=b(e);try{return await t(r.stream())}catch(e){if(!w(e,r,n))throw e;return await t(r.stream())}}function E(){if(typeof chrome>`u`||typeof chrome.runtime?.connect!=`function`)return null;if(a())return()=>chrome.runtime.connect({name:`fetch-proxy.fetch`});let e=i();if(!e)return null;let t=chrome.runtime.connect;return()=>t(e,{name:`fetch-proxy.fetch`})}var D={supported:!1,requestBodyStreaming:!1,maxRequestBodyBytes:0},O=3e5,k=5e3,A=new Map;function j(e){return{supported:!0,requestBodyStreaming:e.requestBodyStreaming,maxRequestBodyBytes:e.maxRequestBodyBytes}}async function M(e){let t;try{t=await fetch(e,{method:`POST`,headers:s({[g]:`1`}),cache:`no-store`})}catch{return{capabilities:D,keepMs:0}}let n=t.ok?f(await t.json().catch(()=>null)):null;if(n||await t.body?.cancel().catch(()=>void 0),!n)return{capabilities:D,keepMs:1/0};let r=j(n);return r.requestBodyStreaming&&=C(),{capabilities:r,keepMs:1/0}}async function N(e){let t=await h(e,k);return t===`silent`?{capabilities:D,keepMs:O}:{capabilities:t?j(t):D,keepMs:1/0}}async function P(){let{getPanelRpcClient:t}=await e(async()=>{let{getPanelRpcClient:e}=await import(`./panel-rpc-sLZo8PD-.js`).then(e=>e.n);return{getPanelRpcClient:e}},__vite__mapDeps([0,1,2])),n=t();if(!n)return{capabilities:D,keepMs:0};try{let e=await n.call(`raw-fetch-probe`,{},{timeoutMs:15e3});return{capabilities:e,keepMs:e.supported?1/0:O}}catch{return{capabilities:D,keepMs:0}}}function F(){if(c()){let e=o(`/api/fetch-proxy`);return{key:`bridge:${e}`,probe:()=>M(e)}}let e=E(),t=i()??`self`;return e?{key:`port:${t}`,probe:()=>N(e)}:{key:`worker:${t}`,probe:P}}function I(){let{key:e,probe:t}=F(),n=A.get(e);if(n&&n.expires>Date.now())return n.answer;let r=t().then(({capabilities:t,keepMs:n})=>(n===0?A.delete(e):A.set(e,{answer:r,expires:Date.now()+n}),t));return A.set(e,{answer:r,expires:1/0}),r}function L(){A.clear()}function R(e=`raw fetch: this bridge does not support raw mode; update node-server`){return new l(`unsupported`,501,e)}function z(e){return async(t,n)=>{if(!(await I()).supported)throw R(`raw fetch: this extension does not support raw mode; update it`);return e(t,n)}}function B(){return new DOMException(`The operation was aborted.`,`AbortError`)}function V(e){return new l(`request-body-too-large`,413,`raw fetch: request body exceeds the ${e} byte limit of this float`)}function H(e,t){return t?t.aborted?Promise.reject(B()):new Promise((n,r)=>{let i=()=>r(B());t.addEventListener(`abort`,i,{once:!0}),e.read().then(e=>{t.removeEventListener(`abort`,i),n(e)},e=>{t.removeEventListener(`abort`,i),r(e)})}):e.read()}async function U(e,t,n){if(e===void 0)return null;if(e instanceof Blob||e instanceof Uint8Array){let n=e instanceof Blob?e:new Blob([e]);if(n.size>t)throw V(t);return n}let r=e.getReader(),i=[],a=0;try{for(;;){let{done:e,value:o}=await H(r,n);if(e)break;if(a+=o.byteLength,a>t)throw V(t);i.push(o)}}catch(e){throw await r.cancel().catch(()=>void 0),e}return new Blob(i)}async function W(e){let t=await n(e);return e.status===413?new l(`request-body-too-large`,413,t):e.status===403?new l(`forbidden-secret`,403,t):e.status===400&&/X-Target-URL/i.test(t)?R():e.status===502?new l(`upstream`,502,t):new l(`bridge`,502,t)}async function G(e,t){if(!e.body)throw new l(`bridge`,502,`raw fetch: bridge sent no body`);let n=e.body.getReader(),r=new Uint8Array,i=null;try{for(;!i;){let{done:e,value:t}=await n.read();if(e)throw new l(`bridge`,502,`raw fetch: truncated response head`);let a=new Uint8Array(r.byteLength+t.byteLength);a.set(r),a.set(t,r.byteLength),r=a,i=m(r)}}catch(e){throw await n.cancel().catch(()=>void 0),e instanceof l?e:new l(`bridge`,502,e instanceof Error?e.message:String(e))}let{head:a,rest:o}=i;if(!y(t,a.status))return await n.cancel().catch(()=>void 0),{...a,body:null};let s=o.byteLength>0?o:null,c=new ReadableStream({async pull(e){if(s){e.enqueue(s),s=null;return}let t;try{t=await n.read()}catch(t){e.error(new l(`upstream`,502,`raw fetch: response body failed: ${t instanceof Error?t.message:String(t)}`));return}t.done?e.close():e.enqueue(t.value)},cancel(e){return n.cancel(e)}},{highWaterMark:0});return{...a,body:c}}async function K(e,t,n){let r=o(`/api/fetch-proxy`),i=t.body;if(!(i!==void 0&&S({headers:t.headers??[],bodyLength:i instanceof Uint8Array?i.byteLength:i instanceof Blob?i.size:t.bodyLength,canStream:n.requestBodyStreaming}))||i===void 0){let a=await U(i,n.maxRequestBodyBytes,t.signal);return fetch(r,a?{...e,body:a}:e)}return T(x(i instanceof Uint8Array?new Blob([i]).stream():i instanceof Blob?i.stream():i),t=>fetch(r,{...e,body:t,duplex:`half`}),t.signal)}function q(){return async(e,t={})=>{let n=t.method??`GET`,i=await I();if(!i.supported)throw R();let a={method:`POST`,headers:s({[d]:v({url:e,method:n,headers:t.headers??[]}),"Content-Type":`application/octet-stream`,"X-Slicc-Raw-Body":`1`}),cache:`no-store`};t.signal&&(a.signal=t.signal);let o;try{o=await K(a,t,i)}catch(e){throw t.signal?.aborted||e instanceof l?e:new l(`bridge`,502,`raw fetch: the bridge is unreachable: ${e instanceof Error?e.message:String(e)}`)}if(r(o))throw await W(o);if(!(o.headers.get(`content-type`)??``).startsWith(`application/vnd.slicc.raw-fetch`))throw await o.body?.cancel().catch(()=>void 0),R();return G(o,n)}}var J=6e5;function Y(e){if(e.ok)return e;let t=e;throw new l(t.code,t.status,t.error)}async function X(e,t,n,r){let i=(n instanceof ReadableStream?n:new Blob([n]).stream()).getReader(),a={timeoutMs:J,signal:r};for(;;){let{done:n,value:r}=await i.read();if(n)break;for(let n=0;n<r.byteLength;n+=p){let i=r.subarray(n,n+p);Y(await e.call(`raw-fetch-write`,{id:t,chunk:i},a))}}Y(await e.call(`raw-fetch-write`,{id:t,chunk:null},a))}function Z(){return async(t,n={})=>{let{getPanelRpcClient:r}=await e(async()=>{let{getPanelRpcClient:e}=await import(`./panel-rpc-sLZo8PD-.js`).then(e=>e.n);return{getPanelRpcClient:e}},__vite__mapDeps([0,1,2])),i=r();if(!i)throw new l(`unsupported`,501,`raw fetch: panel-RPC unavailable`);let a={timeoutMs:J,signal:n.signal},{id:o}=await i.call(`raw-fetch-open`,{url:t,method:n.method??`GET`,headers:n.headers??[],hasBody:n.body!==void 0,bodyLength:n.body instanceof Uint8Array?n.body.byteLength:n.body instanceof Blob?n.body.size:n.bodyLength},a),s=()=>void i.call(`raw-fetch-cancel`,{id:o}).catch(()=>void 0);n.signal?.addEventListener(`abort`,s,{once:!0}),n.body!==void 0&&X(i,o,n.body,n.signal).catch(s);let{head:c,hasBody:u}=Y(await i.call(`raw-fetch-head`,{id:o},a));if(!u)return{...c,body:null};let d=new ReadableStream({async pull(e){let{chunk:t}=Y(await i.call(`raw-fetch-read`,{id:o},a));t?e.enqueue(t):e.close()},cancel:s},{highWaterMark:0});return{...c,body:d}}}function Q(){if(c())return q();let e=E();return z(e?(t,n)=>_(e,t,n):Z())}export{l as RawFetchError,Q as createRawProxiedFetch,E as extensionPortConnector,I as getRawFetchCapabilities,L as resetRawFetchCapabilities,c as usesFetchProxyEndpoint};
@@ -1 +1 @@
1
- import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./compat-d34y6SaJ.js";import{t as n}from"./logger-DDBAeTLF.js";import{n as r}from"./utf16-clip-CGL7omVm.js";import{E as i,O as a,k as o,m as s}from"./account-store-D4Humqb-.js";import{t as c}from"./llm-session-id-bZQs6gBN.js";import{i as l,t as u}from"./icons-BUdZEBvI.js";var d=e({lucideIconNames:()=>g,pickLucideIcon:()=>_,quickLabel:()=>p}),f=n(`quick-llm`);async function p(e){let n=s();if(!n)return f.debug(`No API key for active provider — skipping`),null;let i=o(),c=a(),l;if(l=e.modelId?x(i,e.modelId)??x(i,c):v(i,c),!l)return f.debug(`No model available for provider`,{providerId:i}),null;let u=r(e.prompt),d=e.system===void 0?void 0:r(e.system),p={role:`user`,content:u,timestamp:Date.now()},m={};l.provider===`adobe`&&(m[`X-Session-Id`]=C());try{let r=(await t(l,{systemPrompt:d,messages:[p]},{apiKey:n,maxTokens:e.maxTokens??60,temperature:e.temperature??.3,signal:e.signal,headers:Object.keys(m).length>0?m:void 0})).content.filter(e=>e.type===`text`).map(e=>e.text).join(``).trim();return r.length>0?r:null}catch(e){return f.debug(`Quick label call failed`,{error:e instanceof Error?e.message:String(e)}),null}}var m=null;function h(e){return e.replace(/([A-Z]+)([A-Z][a-z])/g,`$1-$2`).replace(/([a-z0-9])([A-Z])/g,`$1-$2`).replace(/([A-Za-z])(\d)/g,`$1-$2`).toLowerCase()}function g(){return m||=Object.keys(l).map(h).sort(),m}async function _(e){let t=g(),n=await(e.labelFn??p)({system:`You pick ONE icon for a UI element. Respond with exactly one icon name from the provided list — lowercase, no quotes, no punctuation, nothing else.`,prompt:`Pick the single most fitting icon for: ${e.subject}\n\nValid icon names:\n${t.join(` `)}`,maxTokens:16,temperature:.2,signal:e.signal});if(!n)return null;let r=n.trim().toLowerCase().replace(/[^a-z0-9-]/g,``);return u(r)?r:null}function v(e,t){let n=i(e);if(n.length===0)return;let r=n.find(e=>e.id===t)??n[0],a=b(r.id),o=n.filter(e=>y(e,r,a));return o.length===0?r:(o.sort((e,t)=>(e.cost?.input??0)-(t.cost?.input??0)),o[0])}function y(e,t,n){if(e.id===t.id)return!1;let r=t.cost?.input??1/0;if((e.cost?.input??1/0)>=r)return!1;let i=e.id.toLowerCase();switch(n){case`claude`:return i.includes(`haiku`);case`gpt`:return/(^|-)mini(-|$)|(^|-)nano(-|$)/.test(i);case`gemini`:return i.includes(`flash`);case`grok`:return/(^|-)mini(-|$)|(^|-)fast(-|$)/.test(i);case`unknown`:return!0}}function b(e){let t=e.toLowerCase();return t.includes(`claude`)?`claude`:t.includes(`gemini`)?`gemini`:t.includes(`grok`)?`grok`:/^(gpt|o\d)/.test(t)?`gpt`:`unknown`}function x(e,t){return i(e).find(e=>e.id===t)}var S=`ui-quick-llm`;function C(){return c(S)}export{d as n,p as t};
1
+ import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./compat-TaBTsXFP.js";import{t as n}from"./logger-DDBAeTLF.js";import{n as r}from"./utf16-clip-CGL7omVm.js";import{E as i,O as a,k as o,m as s}from"./account-store-C8ku_32k.js";import{t as c}from"./llm-session-id-bZQs6gBN.js";import{i as l,t as u}from"./icons-CPOTRcvO.js";var d=e({lucideIconNames:()=>g,pickLucideIcon:()=>_,quickLabel:()=>p}),f=n(`quick-llm`);async function p(e){let n=s();if(!n)return f.debug(`No API key for active provider — skipping`),null;let i=o(),c=a(),l;if(l=e.modelId?x(i,e.modelId)??x(i,c):v(i,c),!l)return f.debug(`No model available for provider`,{providerId:i}),null;let u=r(e.prompt),d=e.system===void 0?void 0:r(e.system),p={role:`user`,content:u,timestamp:Date.now()},m={};l.provider===`adobe`&&(m[`X-Session-Id`]=C());try{let r=(await t(l,{systemPrompt:d,messages:[p]},{apiKey:n,maxTokens:e.maxTokens??60,temperature:e.temperature??.3,signal:e.signal,headers:Object.keys(m).length>0?m:void 0})).content.filter(e=>e.type===`text`).map(e=>e.text).join(``).trim();return r.length>0?r:null}catch(e){return f.debug(`Quick label call failed`,{error:e instanceof Error?e.message:String(e)}),null}}var m=null;function h(e){return e.replace(/([A-Z]+)([A-Z][a-z])/g,`$1-$2`).replace(/([a-z0-9])([A-Z])/g,`$1-$2`).replace(/([A-Za-z])(\d)/g,`$1-$2`).toLowerCase()}function g(){return m||=Object.keys(l).map(h).sort(),m}async function _(e){let t=g(),n=await(e.labelFn??p)({system:`You pick ONE icon for a UI element. Respond with exactly one icon name from the provided list — lowercase, no quotes, no punctuation, nothing else.`,prompt:`Pick the single most fitting icon for: ${e.subject}\n\nValid icon names:\n${t.join(` `)}`,maxTokens:16,temperature:.2,signal:e.signal});if(!n)return null;let r=n.trim().toLowerCase().replace(/[^a-z0-9-]/g,``);return u(r)?r:null}function v(e,t){let n=i(e);if(n.length===0)return;let r=n.find(e=>e.id===t)??n[0],a=b(r.id),o=n.filter(e=>y(e,r,a));return o.length===0?r:(o.sort((e,t)=>(e.cost?.input??0)-(t.cost?.input??0)),o[0])}function y(e,t,n){if(e.id===t.id)return!1;let r=t.cost?.input??1/0;if((e.cost?.input??1/0)>=r)return!1;let i=e.id.toLowerCase();switch(n){case`claude`:return i.includes(`haiku`);case`gpt`:return/(^|-)mini(-|$)|(^|-)nano(-|$)/.test(i);case`gemini`:return i.includes(`flash`);case`grok`:return/(^|-)mini(-|$)|(^|-)fast(-|$)/.test(i);case`unknown`:return!0}}function b(e){let t=e.toLowerCase();return t.includes(`claude`)?`claude`:t.includes(`gemini`)?`gemini`:t.includes(`grok`)?`grok`:/^(gpt|o\d)/.test(t)?`gpt`:`unknown`}function x(e,t){return i(e).find(e=>e.id===t)}var S=`ui-quick-llm`;function C(){return c(S)}export{d as n,p as t};