sliccy 6.232.3 → 6.233.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/node-server/chrome-launch.d.ts +2 -0
- package/dist/node-server/chrome-launch.js +11 -1
- package/dist/node-server/index.js +1 -0
- package/dist/ui/.vite/manifest.json +282 -278
- package/dist/ui/assets/{SKILL-DfQfFV0B.js → SKILL-BcBnRJhU.js} +1 -1
- package/dist/ui/assets/{SKILL-CDWYTQKl.js → SKILL-BsfbaE8W.js} +1 -1
- package/dist/ui/assets/SKILL-Dk6kide7.js +1 -0
- package/dist/ui/assets/account-store-BGptY10e.js +1 -0
- package/dist/ui/assets/account-store-DiRMol3Q.js +2 -0
- package/dist/ui/assets/adobe-0-GN_JoC.js +2 -0
- package/dist/ui/assets/adobe-C5m6iBnw.js +1 -0
- package/dist/ui/assets/agent-help-B-gfDDn0.js +103 -0
- package/dist/ui/assets/agent-images-DaBj3QYk.js +3 -0
- package/dist/ui/assets/{agent-panels-cs_l6Y3W.js → agent-panels-DSSejQNd.js} +1 -1
- package/dist/ui/assets/{agent-tools-BzWhYeEw.js → agent-tools-WbCq5rUh.js} +1 -1
- package/dist/ui/assets/{almost-bash-shell-headless-B82NrHyV.js → almost-bash-shell-headless-DokddEN1.js} +91 -175
- package/dist/ui/assets/{apply-layout-DHjJQg3o.js → apply-layout-BnGFAeHm.js} +1 -1
- package/dist/ui/assets/{apps-CsJCa1W4.js → apps-CyIXX0a_.js} +1 -1
- package/dist/ui/assets/{azure-openai-DBSL3940.js → azure-openai-DXS5rPbd.js} +1 -1
- package/dist/ui/assets/{azure-openai-0xShokH8.js → azure-openai-PyZ816ly.js} +1 -1
- package/dist/ui/assets/{backend-hostfs-DAjlRr0I.js → backend-hostfs-DmMZ1Vnt.js} +1 -1
- package/dist/ui/assets/{capability-BsxMoeMg.js → capability-6V-AYPSJ.js} +2 -2
- package/dist/ui/assets/{cdp-bOHrUn4t.js → cdp-BppspuSz.js} +1 -1
- package/dist/ui/assets/{cerebras-Sczc8yWr.js → cerebras-BeROsc2d.js} +1 -1
- package/dist/ui/assets/{cerebras-CJtdoZMJ.js → cerebras-CVnpQN6i.js} +1 -1
- package/dist/ui/assets/{client-DWx5wn8j.js → client-D5zdJCVT.js} +1 -1
- package/dist/ui/assets/{codemode-tool-BH0jhnKf.js → codemode-tool-FcP24sWd.js} +1 -1
- package/dist/ui/assets/{composer-speech-Dt5JE2sh.js → composer-speech-HZyA7vHh.js} +1 -1
- package/dist/ui/assets/{connect-surface-BO_rHeDZ.js → connect-surface-is2QooP6.js} +1 -1
- package/dist/ui/assets/{connection-manager-E3P4E4Le.js → connection-manager-D0LxHiWb.js} +1 -1
- package/dist/ui/assets/core-C1m4D34S.js +36 -0
- package/dist/ui/assets/{core-4boN-CgI.js → core-Cx9N3lmn.js} +1 -1
- package/dist/ui/assets/{cost-command-C_1fldSP.js → cost-command-BUgEVZCe.js} +8 -1
- package/dist/ui/assets/{directed-approval-Dig9vgFX.js → directed-approval-BL1_1yFr.js} +1 -1
- package/dist/ui/assets/{discovery-preference-D1cUzn0M.js → discovery-preference-D8GXCv8i.js} +1 -1
- package/dist/ui/assets/emscripten-vfs-hook-D1Wo4S_o.js +1 -0
- package/dist/ui/assets/{emscripten-vfs-hook-BJh0QvlC.js → emscripten-vfs-hook-D4rVkB6b.js} +1 -1
- package/dist/ui/assets/{ensure-speech-assets-BQperrcM.js → ensure-speech-assets-CB-6d53s.js} +1 -1
- package/dist/ui/assets/{extension-ops-Ded2__AC.js → extension-ops-OtrqWANJ.js} +1 -1
- package/dist/ui/assets/{float-topology-DIH6ujZe.js → float-topology-COIC4j_U.js} +1 -1
- package/dist/ui/assets/{float-topology-C9GjBEv-.js → float-topology-C_iRKPQK.js} +1 -1
- package/dist/ui/assets/{follower-navigate-watcher-T4oXQ4JA.js → follower-navigate-watcher-C0CP4-Mn.js} +1 -1
- package/dist/ui/assets/{frozen-archive-writer-DHfEFu3h.js → frozen-archive-writer-BAghzZbz.js} +1 -1
- package/dist/ui/assets/{fs-cmFfSwcb.js → fs-BUK-3Ws8.js} +2 -2
- package/dist/ui/assets/{fs-B7XQ_lrb.js → fs-CKSBDyCr.js} +1 -1
- package/dist/ui/assets/{gelatiere-unit-BQsQGJpu.js → gelatiere-unit-C4o5SngU.js} +1 -1
- package/dist/ui/assets/{github-Di3NkZKj.js → github-B4luVkMa.js} +2 -2
- package/dist/ui/assets/{github-a773Oj_3.js → github-BMfosoS8.js} +1 -1
- package/dist/ui/assets/{github-auth-ByvUzIEk.js → github-auth-CSG4xZUZ.js} +1 -1
- package/dist/ui/assets/{github-copilot-DhPt4wWn.js → github-copilot-BiPH9OJc.js} +1 -1
- package/dist/ui/assets/{github-copilot-BoeL-U7E.js → github-copilot-C6LhWXPC.js} +1 -1
- package/dist/ui/assets/{github-install-BNLZv80o.js → github-install-HX3c8n0G.js} +1 -1
- package/dist/ui/assets/{github-zip-CoNuW2sf.js → github-zip-CUIsX5nN.js} +1 -1
- package/dist/ui/assets/{go-driver-2ebSfg2I.js → go-driver-DTOA90JI.js} +1 -1
- package/dist/ui/assets/{guest-tool-gate-B3vJ2BGb.js → guest-tool-gate-CXdRgkkb.js} +1 -1
- package/dist/ui/assets/{hear-Cfl4YI74.js → hear-BU1G_yVs.js} +1 -1
- package/dist/ui/assets/{help-BMAczBRn.js → help-aKSKYJF6.js} +1 -1
- package/dist/ui/assets/host-command-CwRNpVLr.js +28 -0
- package/dist/ui/assets/image-processor-BlI3KRoz.js +1 -0
- package/dist/ui/assets/{installer-xdxoxN0e.js → installer-CbjJjnwg.js} +1 -1
- package/dist/ui/assets/{interrupted-work-recovery-6m6BONfO.js → interrupted-work-recovery-DSX617ic.js} +1 -1
- package/dist/ui/assets/{ipk-mamba-uom-JjRn.js → ipk-mamba-BRxsK-p_.js} +1 -1
- package/dist/ui/assets/{js-realm-worker-CD271tMz.js → js-realm-worker-BYIiw840.js} +3 -3
- package/dist/ui/assets/{jsh-executor-DBwez91k.js → jsh-executor-f9UQQAJH.js} +2 -2
- package/dist/ui/assets/jsh-runtime-extensions-vA6JAYXY.js +1 -0
- package/dist/ui/assets/{kernel-worker-DOWZJuXM.js → kernel-worker-9lMint5X.js} +59 -59
- package/dist/ui/assets/{lick-ws-bridge-4IBz0Msz.js → lick-ws-bridge-Da6ciGE3.js} +1 -1
- package/dist/ui/assets/{lick-ws-bridge-DQyoaYVX.js → lick-ws-bridge-HjQu1maH.js} +1 -1
- package/dist/ui/assets/{live-session-curation-ix1TPxM_.js → live-session-curation-CTwh1ml7.js} +1 -1
- package/dist/ui/assets/{live-session-snapshot-DnyhcCE6.js → live-session-snapshot-M1JFgsYL.js} +1 -1
- package/dist/ui/assets/live-vfs-fs-DgvdNXkS.js +1 -0
- package/dist/ui/assets/{local-llm-Q3t4kvLW.js → local-llm-B5MTvDcM.js} +1 -1
- package/dist/ui/assets/{local-llm-D5Ox2xst.js → local-llm-ByQE3h0R.js} +1 -1
- package/dist/ui/assets/main-Bu5EcQ93.js +22 -0
- package/dist/ui/assets/{main-cherry-e40IJV67.js → main-cherry-J5K4fq0A.js} +1 -1
- package/dist/ui/assets/{mcp-command-Bz_9ImDN.js → mcp-command-Cr-uabpd.js} +13 -13
- package/dist/ui/assets/{memory-curation-seam-80E0snGz.js → memory-curation-seam-D8IdKYZq.js} +1 -1
- package/dist/ui/assets/{memory-health-X7Z2HJgc.js → memory-health-CpYOFVO8.js} +1 -1
- package/dist/ui/assets/{memory-write-execute-CYpqPN9a.js → memory-write-execute-h9V1nD_3.js} +1 -1
- package/dist/ui/assets/{merge-folded-cost-into-frozen-DDVN7W9t.js → merge-folded-cost-into-frozen-DGSytgu9.js} +1 -1
- package/dist/ui/assets/{mount-CxIbhZc_.js → mount-BdStwj8s.js} +2 -3
- package/dist/ui/assets/{mount-Cdhbsamk.js → mount-DROut-7D.js} +1 -1
- package/dist/ui/assets/{mount-bridge-client-DEndUe7m.js → mount-bridge-client-DEvjkZ1N.js} +1 -1
- package/dist/ui/assets/{mount-bridge-client-DZrU_hNA.js → mount-bridge-client-DTSknauQ.js} +1 -1
- package/dist/ui/assets/new-session-BQRH4q6V.js +2 -0
- package/dist/ui/assets/oauth-bootstrap-BWTJ-MnR.js +2 -0
- package/dist/ui/assets/oauth-service-GpUOM3Aw.js +1 -0
- package/dist/ui/assets/oauth-service-MWzqRq2q.js +1 -0
- package/dist/ui/assets/{onboarding-orchestrator-BLrUNStK.js → onboarding-orchestrator-DJBNgmTb.js} +1 -1
- package/dist/ui/assets/{openai-codex-CePEMrS9.js → openai-codex-8SwwSHXG.js} +1 -1
- package/dist/ui/assets/{openai-codex-DEnFvLaq.js → openai-codex-CM1P6Cz7.js} +1 -1
- package/dist/ui/assets/{openrouter-C6Drz4Po.js → openrouter-C1-T42sa.js} +1 -1
- package/dist/ui/assets/{openrouter-CMbDityB.js → openrouter-CtJep7AD.js} +1 -1
- package/dist/ui/assets/{openrouter-free-DPrVNMiX.js → openrouter-free-D5_NwI3F.js} +1 -1
- package/dist/ui/assets/{openrouter-free-jZRQi4fS.js → openrouter-free-Dn1SR1my.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-DXfymZ6D.js → openrouter-oauth-BBFeemXH.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-BSKVr_20.js → openrouter-oauth-BP-y86gf.js} +1 -1
- package/dist/ui/assets/{opfs-mount-WSgDUNOX.js → opfs-mount-B745o1Vc.js} +1 -1
- package/dist/ui/assets/{page-approval-service-BbEv1dSc.js → page-approval-service-ja6kjLj8.js} +1 -1
- package/dist/ui/assets/panel-rpc-CR9k3qWE.js +1 -0
- package/dist/ui/assets/panel-rpc-accessor-B4BfPLSo.js +1 -0
- package/dist/ui/assets/panel-rpc-handlers-xhUd9DiV.js +2 -0
- package/dist/ui/assets/panel-rpc-sLZo8PD-.js +1 -0
- package/dist/ui/assets/{panelize-shell-C3g06QW7.js → panelize-shell-Bq22FVKD.js} +1 -1
- package/dist/ui/assets/{pi-edit-execution-DckrFCfi.js → pi-edit-execution-gtCS0kee.js} +1 -1
- package/dist/ui/assets/port-bridge-client-B-gpiOVR.js +1 -0
- package/dist/ui/assets/port-bridge-client-DAxhsvxm.js +1 -0
- package/dist/ui/assets/process-worker-v_IRtyyq.js +3 -0
- package/dist/ui/assets/{provider-BIKN9l0j.js → provider-DckNx7km.js} +2 -2
- package/dist/ui/assets/{provider-BDvld8wH.js → provider-ToQ_7wAn.js} +1 -1
- package/dist/ui/assets/{provider-settings-7gXmbpeE.js → provider-settings-D8mMRRmg.js} +1 -1
- package/dist/ui/assets/provider-store-access-CUeWZULe.js +1 -0
- package/dist/ui/assets/provider-store-access-DCRy_R8r.js +1 -0
- package/dist/ui/assets/providers-BAKMBUX7.js +2 -0
- package/dist/ui/assets/{providers-BSPfSjHX.js → providers-CvqwjkUB.js} +1 -1
- package/dist/ui/assets/{proxied-fetch-Cplb-Tee.js → proxied-fetch-4VBgrEIu.js} +2 -2
- package/dist/ui/assets/{proxied-fetch-CoZ8jHud.js → proxied-fetch-F-dCBEfh.js} +1 -1
- package/dist/ui/assets/proxied-fetch-raw-DQ0-xn2O.js +2 -0
- package/dist/ui/assets/{proxied-fetch-raw-Cb_C44Cy.js → proxied-fetch-raw-DfWAMMUJ.js} +1 -1
- package/dist/ui/assets/{py-live-vfs-BY0JeFky.js → py-live-vfs-CPGqrKx-.js} +1 -1
- package/dist/ui/assets/{py-live-vfs-JNkDkEB1.js → py-live-vfs-CUwZTYN6.js} +1 -1
- package/dist/ui/assets/{py-realm-worker-DpNkD8fW.js → py-realm-worker-BoJbWJja.js} +1 -1
- package/dist/ui/assets/{quick-llm-B8_chMUu.js → quick-llm-DTjkRv5O.js} +1 -1
- package/dist/ui/assets/{realm-inprocess-DGI1SPvf.js → realm-inprocess-BuDDW7XG.js} +3 -3
- package/dist/ui/assets/{realm-unhandled-rejections-CeQ49yI4.js → realm-unhandled-rejections-BFldJQ3o.js} +1 -1
- package/dist/ui/assets/{realm-unhandled-rejections-UooDX3DO.js → realm-unhandled-rejections-D9cNYqKO.js} +1 -1
- package/dist/ui/assets/{recovery-screen-DkW3-R4h.js → recovery-screen-DM7KfT4C.js} +1 -1
- package/dist/ui/assets/{remote-terminal-view-D5iSX82V.js → remote-terminal-view-BKdENaQD.js} +2 -2
- package/dist/ui/assets/{require-guards-BX-XDJnh.js → require-guards-DnafTLJr.js} +1 -1
- package/dist/ui/assets/{rest-ops-d6LSiWDZ.js → rest-ops-B7gv04VP.js} +1 -1
- package/dist/ui/assets/{rest-ops-DyAkn44S.js → rest-ops-j0P6ql7f.js} +1 -1
- package/dist/ui/assets/{restore-Cz3KzZZ7.js → restore-DkI2mzPD.js} +1 -1
- package/dist/ui/assets/{run-DKc_-F3f.js → run-2dqnHZde.js} +1 -1
- package/dist/ui/assets/{run-CB6rAQZ1.js → run-BAmXlRlW.js} +1 -1
- package/dist/ui/assets/{run-cvQKad0O.js → run-BRFnmkzR.js} +1 -1
- package/dist/ui/assets/{run-D6sdPJoQ.js → run-BYyvGPll.js} +4 -4
- package/dist/ui/assets/{run-Cl3auc8D.js → run-CUYkRfoU.js} +2 -2
- package/dist/ui/assets/{run-BvTkhul6.js → run-D6LxdCnL.js} +1 -1
- package/dist/ui/assets/{run-COcBu8_4.js → run-DH5HX1KA.js} +1 -1
- package/dist/ui/assets/run-DP50TUcp.js +18 -0
- package/dist/ui/assets/{run-DyYNRU6R.js → run-DPyr8Wk2.js} +1 -1
- package/dist/ui/assets/{run-ijndQJol.js → run-DZZd9Xb1.js} +3 -3
- package/dist/ui/assets/{run-B6qzuQBC.js → run-chEfqfQu.js} +1 -1
- package/dist/ui/assets/{screen-DVI9ujIL.js → screen-_l91vr17.js} +1 -1
- package/dist/ui/assets/{screencapture-run-DRiSGUJ9.js → screencapture-run-DXkhPPQJ.js} +1 -1
- package/dist/ui/assets/{script-catalog-CqkljCRS.js → script-catalog-WaCMvXY3.js} +1 -1
- package/dist/ui/assets/{secret-env-DQjPh_hw.js → secret-env-z9SReONx.js} +1 -1
- package/dist/ui/assets/secret-topology-hMRoGGjt.js +1 -0
- package/dist/ui/assets/{secrets-bridge-client-CWv2_nw7.js → secrets-bridge-client-D734Xx8G.js} +1 -1
- package/dist/ui/assets/{secrets-bridge-client-EgBSROu5.js → secrets-bridge-client-GOCzDscb.js} +1 -1
- package/dist/ui/assets/{session-command-memory-Dqd2Y1nf.js → session-command-memory-D4uJebvK.js} +2 -2
- package/dist/ui/assets/{session-jsonl-D0vuq6c1.js → session-jsonl-CYHALwzZ.js} +1 -1
- package/dist/ui/assets/{session-jsonl-BFDqAk2L.js → session-jsonl-DJeZaEAN.js} +1 -1
- package/dist/ui/assets/{session-search-index-CJRorVYP.js → session-search-index-C9BSuBgf.js} +1 -1
- package/dist/ui/assets/{setup-feature-flags-remote-CWxbzwGB.js → setup-feature-flags-remote-B28utkza.js} +1 -1
- package/dist/ui/assets/{setup-model-catalog-CPpt1RYm.js → setup-model-catalog-D0KPq5D5.js} +1 -1
- package/dist/ui/assets/signed-fetch-DeDG40wV.js +1 -0
- package/dist/ui/assets/{silent-renew-backoff-D19EWo5j.js → silent-renew-backoff-CQhFgetu.js} +1 -1
- package/dist/ui/assets/slicc-version-CrbHwbo8.js +1 -0
- package/dist/ui/assets/snapshot-D6YGbggk.js +5 -0
- package/dist/ui/assets/{snapshot-features-HNBCRjfP.js → snapshot-features-Dw5v6SoZ.js} +1 -1
- package/dist/ui/assets/{soundscape-mtqG6Pmf.js → soundscape-CTffv_5Z.js} +1 -1
- package/dist/ui/assets/{speak-BOCxjk3p.js → speak-jCD0mSEW.js} +1 -1
- package/dist/ui/assets/sprinkle-manager-Y-YVEibf.js +1 -0
- package/dist/ui/assets/{sprinkle-renderer-DKK-prCv.js → sprinkle-renderer-CwX9FsqP.js} +1 -1
- package/dist/ui/assets/{ssh-_x-LG4bh.js → ssh-BWPgnSgg.js} +1 -1
- package/dist/ui/assets/state-Tykh4Vum.js +42 -0
- package/dist/ui/assets/{store-DL87lgMq.js → store-Mw1jky9b.js} +1 -1
- package/dist/ui/assets/{store-CVYChuZI.js → store-wiEGJ_43.js} +1 -1
- package/dist/ui/assets/stored-accounts-ChNHYF68.js +1 -0
- package/dist/ui/assets/stored-accounts-Cx83FZwe.js +1 -0
- package/dist/ui/assets/structured-output-tool-BrnZ-LJ8.js +1 -0
- package/dist/ui/assets/{sudo-C14r7p-e.js → sudo-C_rw_yTP.js} +3 -3
- package/dist/ui/assets/{sudo-fs-mI-V4QkM.js → sudo-fs-D88yRk1b.js} +1 -1
- package/dist/ui/assets/sudo-refusal-DVwTXFRE.js +1 -0
- package/dist/ui/assets/{supervisor-CRki_wn9.js → supervisor-DpgpPBmC.js} +1 -1
- package/dist/ui/assets/{sync-dialog-BMLUDjd4.js → sync-dialog-CupzPdES.js} +1 -1
- package/dist/ui/assets/{transformers-env-C0z5rcqN.js → transformers-env-YtNL0QDY.js} +1 -1
- package/dist/ui/assets/{tray-leader-BdvK7KWc.js → tray-leader-DXDclF_5.js} +1 -1
- package/dist/ui/assets/{tray-leave-runtime-Chumo3x-.js → tray-leave-runtime-VOHZS65W.js} +1 -1
- package/dist/ui/assets/{tray-runtime-config-ConrTcOf.js → tray-runtime-config-CBx5P3dS.js} +1 -1
- package/dist/ui/assets/{tray-sidecar-gXArrwO5.js → tray-sidecar-96t7GtIU.js} +1 -1
- package/dist/ui/assets/{turn-journal-Fz2l3QO4.js → turn-journal-EgGBqAjY.js} +1 -1
- package/dist/ui/assets/{upgrade-detection-Bl00km0Z.js → upgrade-detection-A_vnZ-VL.js} +1 -1
- package/dist/ui/assets/{upskill-lick-skip-DTxpkXaG.js → upskill-lick-skip-u8HuNUy0.js} +1 -1
- package/dist/ui/assets/{voice-reply-LXLV67Nm.js → voice-reply-BlnWgLQN.js} +1 -1
- package/dist/ui/assets/{wasi-runtime-Bc01Bdaa.js → wasi-runtime-Wx_rcXbK.js} +2 -2
- package/dist/ui/assets/{wasm-programs-DPZtEzCA.js → wasm-programs-Bd5YaoqY.js} +1 -1
- package/dist/ui/assets/wc-attach-BD99mw1C.js +13 -0
- package/dist/ui/assets/{wc-browser-C3BrDOs9.js → wc-browser-ibm_kzUA.js} +1 -1
- package/dist/ui/assets/{wc-computers-5ZseiRnv.js → wc-computers-KrtriEYD.js} +1 -1
- package/dist/ui/assets/{wc-detached-DK9sSKZr.js → wc-detached-DW6GEnzV.js} +1 -1
- package/dist/ui/assets/wc-extension-dbdfxaHn.js +2 -0
- package/dist/ui/assets/wc-follower-CY0Omxnm.js +17 -0
- package/dist/ui/assets/{wc-follower-oauth-g_NJ62P_.js → wc-follower-oauth-obhVV1ID.js} +1 -1
- package/dist/ui/assets/{wc-gelatiere-C_kV3iUh.js → wc-gelatiere-BlK8fV98.js} +1 -1
- package/dist/ui/assets/{wc-live-CN_PjeIo.js → wc-live-WP25Nrx4.js} +6 -6
- package/dist/ui/assets/wc-nav-BA8Cj8Lu.js +2 -0
- package/dist/ui/assets/{wc-onboarding-BJrwUBcv.js → wc-onboarding-g_I2jf5C.js} +2 -2
- package/dist/ui/assets/{wc-permissions-D-mQCivR.js → wc-permissions-C_Q050u-.js} +2 -2
- package/dist/ui/assets/wc-placeholder-DaIZj3ba.js +4 -0
- package/dist/ui/assets/{wc-secret-request-BJXcNpDs.js → wc-secret-request-lw7JW61R.js} +1 -1
- package/dist/ui/assets/{wc-settings-DOYvmcRg.js → wc-settings-g5B5-OSw.js} +3 -3
- package/dist/ui/assets/{wc-shell-B6woD-e6.js → wc-shell-DrGgyuS_.js} +5 -5
- package/dist/ui/assets/{wc-shortcut-config-BUM7oKUu.js → wc-shortcut-config-C3GIv71k.js} +1 -1
- package/dist/ui/assets/wc-sprinkles-Dh8yXR2X.js +2 -0
- package/dist/ui/assets/{wc-transcript-export-RedJl591.js → wc-transcript-export-Dw-bOyW2.js} +2 -2
- package/dist/ui/assets/{wc-tray-BxsYHBdR.js → wc-tray-DJNwevYd.js} +4 -4
- package/dist/ui/assets/welcome-detection-CU3MtuFw.js +1 -0
- package/dist/ui/assets/whisper-session-Bkc60xQi.js +2 -0
- package/dist/ui/assets/{xai-grok-CAnhMyf-.js → xai-grok-BvqSa-5b.js} +1 -1
- package/dist/ui/assets/{xai-grok-Ch54hmZJ.js → xai-grok-DFQUduEg.js} +1 -1
- package/dist/ui/index.html +11 -10
- package/dist/ui/packages/webapp/index.html +11 -10
- package/package.json +1 -1
- package/dist/ui/assets/SKILL-B4YYagrM.js +0 -1
- package/dist/ui/assets/account-store-CfWRzPpT.js +0 -2
- package/dist/ui/assets/account-store-bUzcsJR2.js +0 -1
- package/dist/ui/assets/adobe-CugR6QpI.js +0 -2
- package/dist/ui/assets/adobe-ytXYifQq.js +0 -1
- package/dist/ui/assets/approval-timeout-CeQbGMnv.js +0 -1
- package/dist/ui/assets/core-ButDwsf2.js +0 -36
- package/dist/ui/assets/emscripten-vfs-hook-c6XYWLDN.js +0 -1
- package/dist/ui/assets/host-command-Dn-Z4AbC.js +0 -28
- package/dist/ui/assets/jsh-runtime-extensions-DiQ9SvKe.js +0 -1
- package/dist/ui/assets/live-vfs-fs-Y4sN9OvN.js +0 -1
- package/dist/ui/assets/main-D9hbfd93.js +0 -22
- package/dist/ui/assets/new-session-CKsA3Osa.js +0 -2
- package/dist/ui/assets/oauth-bootstrap-B7RkQZg-.js +0 -2
- package/dist/ui/assets/oauth-service-B-vKfxAF.js +0 -1
- package/dist/ui/assets/oauth-service-Bx_Dy3GC.js +0 -1
- package/dist/ui/assets/panel-rpc-D3EPRnmw.js +0 -1
- package/dist/ui/assets/panel-rpc-DW7W4w6_.js +0 -1
- package/dist/ui/assets/panel-rpc-handlers-D8o2EggL.js +0 -2
- package/dist/ui/assets/port-bridge-client-BmVU5J9w.js +0 -1
- package/dist/ui/assets/port-bridge-client-D_erEovW.js +0 -2
- package/dist/ui/assets/process-worker-BKgTk6Wd.js +0 -3
- package/dist/ui/assets/provider-store-access-B3yjrPLi.js +0 -1
- package/dist/ui/assets/provider-store-access-Bq7yMlLd.js +0 -1
- package/dist/ui/assets/providers-Qqp-ZEtv.js +0 -2
- package/dist/ui/assets/proxied-fetch-raw-Di1Dm8fV.js +0 -2
- package/dist/ui/assets/run-Cu1hr00X.js +0 -18
- package/dist/ui/assets/secret-topology-Dm_PZRZx.js +0 -1
- package/dist/ui/assets/signed-fetch-AA2u7LJq.js +0 -1
- package/dist/ui/assets/slicc-version-BjIQb9Hz.js +0 -1
- package/dist/ui/assets/snapshot-DLO8RkOr.js +0 -5
- package/dist/ui/assets/sprinkle-manager-UKlMkzSm.js +0 -1
- package/dist/ui/assets/state-B892uW3H.js +0 -42
- package/dist/ui/assets/structured-output-tool-BDaIhclx.js +0 -1
- package/dist/ui/assets/wc-attach-ChUPT4oB.js +0 -13
- package/dist/ui/assets/wc-extension-BC5R5cd7.js +0 -2
- package/dist/ui/assets/wc-follower-Dn9JVmb_.js +0 -17
- package/dist/ui/assets/wc-nav-DqpOaNr_.js +0 -2
- package/dist/ui/assets/wc-placeholder-D2NGiBVr.js +0 -4
- package/dist/ui/assets/wc-sprinkles-Q2JU6sSY.js +0 -2
- package/dist/ui/assets/welcome-detection-CrnFBTZe.js +0 -1
- package/dist/ui/assets/whisper-session-BaYhywEf.js +0 -2
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/secrets-bridge-client-D734Xx8G.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/port-bridge-client-B-gpiOVR.js","assets/logger-DDBAeTLF.js","assets/api-endpoint-DuEQRZ4g.js","assets/runtime-env-Dlaokqg1.js","assets/panel-rpc-accessor-B4BfPLSo.js","assets/mount-bridge-client-DTSknauQ.js","assets/types-D8gIX-W-.js","assets/page-approval-service-ja6kjLj8.js","assets/float-topology-C_iRKPQK.js","assets/proxied-fetch-4VBgrEIu.js","assets/preload-helper-Czpn1I53.js","assets/base64-ELzoYfwP.js","assets/proxy-error-BSFYY7jj.js","assets/types-DSxCdZw6.js","assets/esptool-operations-CiccBbBW.js","assets/rom-eeWiO07Z.js","assets/usb-claim-broker-Dacw2Z3M.js","assets/usb-device-registry--JwKRTYp.js","assets/providers-BAKMBUX7.js","assets/speak-jCD0mSEW.js","assets/speech-assets-bridge-CFYafE89.js","assets/transformers-env-YtNL0QDY.js","assets/wc-shell-DrGgyuS_.js","assets/mime-types-D0xZwlMO.js","assets/bridge-protocol-C52CnDIj.js","assets/account-store-DiRMol3Q.js","assets/core-Cx9N3lmn.js","assets/compat-BAGLwgqY.js","assets/models-Xc0Gclrk.js","assets/diagnostics-Cag7MsZI.js","assets/env-api-keys-BXRkymgV.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-DHpsqCCC.js","assets/libesm-BypnjKEL.js","assets/feature-flags-DvsApnS-.js","assets/secret-topology-hMRoGGjt.js","assets/image-markers-q8JQTtid.js","assets/tool-ui-eSQ1g2I1.js","assets/stored-accounts-ChNHYF68.js","assets/bedrock-camp-compat-B1oHsbyo.js","assets/bedrock-camp-extra-models-BYrxX19D.js","assets/claude-model-version-DZmbk9E2.js","assets/telemetry-B0sKnLBU.js","assets/same-file-identity-DuEcSmPX.js","assets/icons-2DY2vYOc.js","assets/wc-shell-WkeczD9x.css","assets/shared-DSEuryGJ.js","assets/hear-BU1G_yVs.js","assets/permissions-surface-registry-CilCRwhh.js","assets/whisper-session-Bkc60xQi.js","assets/mount-picker-popup-qcWGbpG5.js","assets/picker-popup-sQtXmfAo.js","assets/proxied-fetch-raw-DQ0-xn2O.js","assets/proxied-fetch-raw-types-BapqdEuh.js","assets/proxied-fetch-raw-port-Dv7XYtb4.js","assets/theme-engine-ZV7CeqWw.js","assets/tab-8LaHojfd.js","assets/slicc-app-url-BKHBBuTR.js","assets/scale-D09IlqOK.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{t as e}from"./preload-helper-Czpn1I53.js";import{c as t,o as n,s as r}from"./feature-flags-DvsApnS-.js";import{f as i,q as a}from"./account-store-DiRMol3Q.js";import"./proxied-fetch-4VBgrEIu.js";import{s as o,t as s}from"./api-endpoint-DuEQRZ4g.js";import{t as c}from"./proxied-fetch-raw-types-BapqdEuh.js";import"./main-Bu5EcQ93.js";import{n as l,r as u}from"./hid-device-registry-B2R-0rNt.js";import{a as d,i as f}from"./serial-port-registry-CCqklAEr.js";import{_ as p,a as m,c as ee,d as te,f as ne,g as re,h as ie,i as ae,l as oe,m as se,n as ce,o as le,p as ue,r as de,s as fe,t as pe,u as me,v as he}from"./hid-operations-C97SZtrY.js";import{a as ge,i as _e}from"./usb-device-registry--JwKRTYp.js";import{a as ve,c as ye,d as be,f as xe,g as Se,h as Ce,i as h,l as g,m as _,n as v,o as y,p as b,r as x,s as S,t as C,u as w}from"./usb-operations-v1mGAdRY.js";function T(){return{"secrets-bridge":async({type:t,payload:n})=>{let{callSecretsBridge:r}=await e(async()=>{let{callSecretsBridge:e}=await import(`./secrets-bridge-client-D734Xx8G.js`).then(e=>e.t);return{callSecretsBridge:e}},__vite__mapDeps([0,1,2,3,4,5,6]));return{response:await r(t,n)}}}}function E(){return{"mount-sign-and-forward":async({type:t,envelope:n})=>{let{callMountBridge:r}=await e(async()=>{let{callMountBridge:e}=await import(`./mount-bridge-client-DTSknauQ.js`);return{callMountBridge:e}},__vite__mapDeps([7,2,3,4,5,6,8]));return{response:await r(t,n)}}}}function D(){return{"sudo-request":async({request:t,mode:n})=>{let{resolveSudoApprovalInPage:r}=await e(async()=>{let{resolveSudoApprovalInPage:e}=await import(`./page-approval-service-ja6kjLj8.js`);return{resolveSudoApprovalInPage:e}},__vite__mapDeps([9,3,10,11,1,12,13,14,4,5,15]));return r(t,n??`resolve`)}}}function O(){return{"secret-request":async t=>{let{getSecretRequestSurface:n}=await e(async()=>{let{getSecretRequestSurface:e}=await import(`./secret-request-registry-DrOMKR1H.js`);return{getSecretRequestSurface:e}},[]),r=n();return r?r(t):{stored:!1,reason:`unavailable`}}}}function k(){return{"proxied-fetch":async({url:t,method:n,headers:r,body:i})=>{let{collectViaExtensionDelegate:a}=await e(async()=>{let{collectViaExtensionDelegate:e}=await import(`./proxied-fetch-4VBgrEIu.js`).then(e=>e.i);return{collectViaExtensionDelegate:e}},__vite__mapDeps([11,1,12,13,14,4,5])),{head:o,body:s}=await a(t,{method:n,headers:r,body:i});return{head:o,body:s}}}}function A(){return navigator.userActivation?.isActive??!0}var we={usb:`use a USB device`,hid:`use a HID device`,serial:`use a serial port`,screenshare:`share a screen`};async function j(e,t,n){let r=e();if(!r)throw Error(`${t} request: the chooser needs a click, and no permission prompt is open`);let i=await r.prompt({kinds:[t],description:`A command in the terminal asks to ${we[t]}.`,requestOptions:{[t]:n}}),a=i.status===`granted`?i.grants.find(e=>e.kind===t):void 0;if(!a){let e=i.message?`: ${i.message}`:``;throw Error(`${t} request: ${i.reason??i.status}${e}`)}return a}function Te(e,t){return A()?e:{getDevices:()=>e.getDevices(),requestDevice:async({filters:e})=>(await j(t,`usb`,{filters:e})).device}}function Ee(e,t){return A()?e:{getDevices:()=>e.getDevices(),requestDevice:async({filters:e})=>(await j(t,`hid`,{filters:e})).devices}}function De(e,t){return A()?e:{getPorts:()=>e.getPorts(),requestPort:async e=>(await j(t,`serial`,{filters:e?.filters??[]})).port}}function Oe(e){return A()?e=>navigator.mediaDevices.getDisplayMedia(e):async t=>(await j(e,`screenshare`,{constraints:t})).stream}function ke(e){Ne(e.emitEvent);let t=()=>e.getPermissionsSurface?.()??null;return{"usb-list":async()=>({devices:await g(M(),F())}),"usb-request":async({filters:e})=>({device:await xe(M(),Te(F(),t),e)}),"usb-device-info":({handle:e})=>({device:S(M(),e)}),"usb-open":async({handle:e})=>(await w(M(),e),{done:!0}),"usb-close":async({handle:e,owner:t,force:n})=>(await h(M(),e,{owner:t,force:n}),{done:!0}),"usb-select-configuration":async({handle:e,configurationValue:t})=>(await _(M(),e,t),{done:!0}),"usb-claim-interface":async({handle:e,interfaceNumber:t,owner:n,wait:r})=>(await v(M(),e,t,{owner:n,wait:r}),{done:!0}),"usb-release-interface":async({handle:e,interfaceNumber:t,owner:n})=>(await be(M(),e,t,{owner:n}),{done:!0}),"usb-cancel-claim-wait":async({handle:e,interfaceNumber:t,owner:n})=>(await C(M(),e,t,n??`usb`),{done:!0}),"usb-drop-owner":async({owner:e})=>(await ye(M(),e),{done:!0}),"usb-control-transfer-in":async({handle:e,setup:t,length:n})=>ve(M(),e,t,n),"usb-control-transfer-out":async({handle:e,setup:t,bytes:n})=>y(M(),e,t,n),"usb-transfer-in":async({handle:e,endpointNumber:t,length:n})=>Ce(M(),e,t,n),"usb-transfer-out":async({handle:e,endpointNumber:t,bytes:n})=>Se(M(),e,t,n),"usb-reset":async({handle:e,owner:t,force:n})=>(await b(M(),e,{owner:t,force:n}),{done:!0}),"usb-clear-halt":async({handle:e,direction:t,endpointNumber:n})=>(await x(M(),e,t,n),{done:!0})}}function Ae(e,t){let n=()=>e.getPermissionsSurface?.()??null;return{"hid-list":async()=>({devices:await de(I(),L())}),"hid-request":async({filters:e})=>({devices:await le(I(),Ee(L(),n),e)}),"hid-device-info":({handle:e})=>({device:ce(I(),e)}),"hid-open":async({handle:e})=>(await ae(I(),e),{done:!0}),"hid-close":async({handle:e})=>(await pe(I(),e),{done:!0}),"hid-send-report":async({handle:e,reportId:t,bytes:n})=>(await ee(I(),e,t,n),{done:!0}),"hid-send-feature-report":async({handle:e,reportId:t,bytes:n})=>(await fe(I(),e,t,n),{done:!0}),"hid-receive-feature-report":async({handle:e,reportId:t})=>m(I(),e,t),"hid-subscribe-input-reports":async({handle:n})=>{t.get(n)?.();let r=await oe(I(),n,t=>{e.emitEvent?.(`hid-input-report`,{handle:n,reportId:t.reportId,bytes:t.bytes})});return t.set(n,r),{done:!0}},"hid-unsubscribe-input-reports":({handle:e})=>(t.get(e)?.(),t.delete(e),{done:!0})}}function je(e={}){let t=()=>e.getPermissionsSurface?.()??null;return{"serial-list":async()=>({devices:await ue(R(),z())}),"serial-request":async({filters:e})=>({device:await re(R(),De(z(),t),e)}),"serial-device-info":({handle:e})=>({device:te(R(),e)}),"serial-open":async({handle:e,options:t})=>(await se(R(),e,t),{done:!0}),"serial-close":async({handle:e})=>(await me(R(),e),{done:!0}),"serial-read":async({handle:e,maxBytes:t,until:n,timeoutMs:r})=>{let i=await ie(R(),e,{maxBytes:t,until:n?new Uint8Array(n):void 0,timeoutMs:r});return{bytes:i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)}},"serial-write":async({handle:e,bytes:t})=>({bytesWritten:await he(R(),e,new Uint8Array(t))}),"serial-get-signals":async({handle:e})=>({signals:await ne(R(),e)}),"serial-set-signals":async({handle:e,signals:t})=>(await p(R(),e,t),{done:!0})}}function Me(t){return{"esptool-chip-info":async({handle:n,baudRate:r})=>(await e(()=>import(`./esptool-operations-CiccBbBW.js`),__vite__mapDeps([16,1,12,17]))).esptoolChipInfo(R(),n,r,e=>t.emitEvent?.(`esptool-progress`,{handle:n,line:e})),"esptool-read-mac":async({handle:n,baudRate:r})=>(await e(()=>import(`./esptool-operations-CiccBbBW.js`),__vite__mapDeps([16,1,12,17]))).esptoolReadMac(R(),n,r,e=>t.emitEvent?.(`esptool-progress`,{handle:n,line:e})),"esptool-erase-flash":async({handle:n,baudRate:r})=>(await(await e(()=>import(`./esptool-operations-CiccBbBW.js`),__vite__mapDeps([16,1,12,17]))).esptoolEraseFlash(R(),n,r,e=>t.emitEvent?.(`esptool-progress`,{handle:n,line:e})),{done:!0}),"esptool-flash":async({handle:n,baudRate:r,eraseAll:i,segments:a})=>(await(await e(()=>import(`./esptool-operations-CiccBbBW.js`),__vite__mapDeps([16,1,12,17]))).esptoolFlash(R(),n,r,i,a.map(e=>({address:e.address,data:new Uint8Array(e.bytes)})),e=>t.emitEvent?.(`esptool-progress`,{handle:n,line:e})),{done:!0}),"esptool-read-flash":async({handle:n,baudRate:r,address:i,size:a})=>{let o=await(await e(()=>import(`./esptool-operations-CiccBbBW.js`),__vite__mapDeps([16,1,12,17]))).esptoolReadFlash(R(),n,r,i,a,e=>t.emitEvent?.(`esptool-progress`,{handle:n,line:e}));return{bytes:o.buffer.slice(o.byteOffset,o.byteOffset+o.byteLength)}},"esptool-read-reg":async({handle:n,baudRate:r,address:i})=>(await e(()=>import(`./esptool-operations-CiccBbBW.js`),__vite__mapDeps([16,1,12,17]))).esptoolReadReg(R(),n,r,i,e=>t.emitEvent?.(`esptool-progress`,{handle:n,line:e})),"esptool-flash-id":async({handle:n,baudRate:r})=>(await e(()=>import(`./esptool-operations-CiccBbBW.js`),__vite__mapDeps([16,1,12,17]))).esptoolFlashId(R(),n,r,e=>t.emitEvent?.(`esptool-progress`,{handle:n,line:e})),"esptool-erase-region":async({handle:n,baudRate:r,address:i,size:a})=>(await(await e(()=>import(`./esptool-operations-CiccBbBW.js`),__vite__mapDeps([16,1,12,17]))).esptoolEraseRegion(R(),n,r,i,a,e=>t.emitEvent?.(`esptool-progress`,{handle:n,line:e})),{done:!0}),"esptool-run":async({handle:n,baudRate:r})=>(await(await e(()=>import(`./esptool-operations-CiccBbBW.js`),__vite__mapDeps([16,1,12,17]))).esptoolRun(R(),n,r,e=>t.emitEvent?.(`esptool-progress`,{handle:n,line:e})),{done:!0})}}function M(){return ge()}var N=null,P;function Ne(t){P=t,!(N||!t)&&e(()=>import(`./usb-claim-broker-Dacw2Z3M.js`).then(e=>{N||=e.addClaimListener(M(),e=>{P?.(`usb-claim-event`,e)})}),__vite__mapDeps([18,19,1]))}function F(){let e=_e();if(!e)throw Error(`WebUSB is unavailable in this browser`);return e}function I(){return u()}function L(){let e=l();if(!e)throw Error(`WebHID is unavailable in this browser`);return e}function R(){return d()}function z(){let e=f();if(!e)throw Error(`Web Serial is unavailable in this browser`);return e}function Pe(t){return{"tray-reset":async()=>{if(!t.resetTray)throw Error(`host reset: no active tray session to reset`);return await t.resetTray()},"tray-webhook-rotate":async()=>{if(!t.rotateWebhook)throw Error(`webhook rotate: no active leader tray`);return await t.rotateWebhook()},"tray-webhook-revoke":async e=>{if(!t.revokeWebhook)throw Error(`webhook delete: no active leader tray`);return await t.revokeWebhook(e.webhookId),{ok:!0}},"tray-open-preview":async e=>{if(!t.mintPreview)throw Error(`serve: no active leader tray; cannot mint preview`);return await t.mintPreview(e)},"tray-revoke-preview":async e=>{if(!t.revokePreview)throw Error(`serve: no active leader tray; cannot revoke preview`);return await t.revokePreview(e)},"tray-list-previews":async()=>{if(!t.listPreviews)throw Error(`serve: no active leader tray; cannot list previews`);return await t.listPreviews()},"tray-mint-biscotto":async e=>{if(!t.mintBiscotto)throw Error(`biscotto: no active leader tray; cannot mint a seat`);return await t.mintBiscotto(e)},"tray-revoke-biscotto":async e=>{if(!t.revokeBiscotto)throw Error(`biscotto revoke: no active leader tray; cannot revoke a seat`);return await t.revokeBiscotto(e)},"tray-list-biscotti":async()=>{if(!t.listBiscotti)throw Error(`biscotti: no active leader tray; cannot list seats`);return await t.listBiscotti()},"tray-preview-logs":async({previewToken:e})=>{if(!t.getPreviewLifecycleRecords)throw Error(`serve --logs: no active leader tray; cannot read preview logs`);return t.getPreviewLifecycleRecords(e)},"tray-preview-truncate":async({previewToken:e})=>{if(!t.truncatePreviewLifecycleRecords)throw Error(`serve --truncate: no active leader tray; cannot truncate preview logs`);return t.truncatePreviewLifecycleRecords(e)},"tray-leave":async({workerBaseUrl:e,requestId:n})=>{if(!t.leaveTray)throw Error(`host leave: tray leave is not available in this environment`);return await t.leaveTray({workerBaseUrl:e,requestId:n})},"tray-join":async({joinUrl:e,requestId:n})=>{if(!t.joinTray)throw Error(`host join: tray join is not available in this environment`);return await t.joinTray({joinUrl:e,requestId:n})},"cherry-emit":async({runtimeId:e,name:n,detail:r})=>{if(!t.emitCherrySliccEvent)throw Error(`cherry-emit: not available in this environment`);return{delivered:t.emitCherrySliccEvent(e,n,r)}},"tray-exec":async e=>{if(!t.execOnRemote)throw Error(`ssh: no active leader tray in this environment`);return await t.execOnRemote(e)},"tray-exec-signal":({execToken:e})=>(t.signalRemoteExec?.({execToken:e}),{ok:!0}),"tray-computer-native":async e=>{if(!t.computerNative)throw Error(`computer native: no active leader tray in this environment`);return await t.computerNative(e)},"oauth-extras-set":({providerId:e,domains:t})=>(a(e,t),{storeAfter:i()}),"silent-renew":async({providerId:t})=>{let{getRegisteredProviderConfig:n}=await e(async()=>{let{getRegisteredProviderConfig:e}=await import(`./providers-BAKMBUX7.js`).then(e=>e.r);return{getRegisteredProviderConfig:e}},__vite__mapDeps([20,1,12])),r=n(t);return r?.onSilentRenew?{accessToken:await r.onSilentRenew()}:{accessToken:null}},"save-oauth-accounts":({accountsJson:e})=>(localStorage.setItem(`slicc_accounts`,e),{storedJson:localStorage.getItem(`slicc_accounts`)??e})}}async function Fe(e,t){if((typeof navigator<`u`?navigator.userActivation:void 0)?.isActive===!0)return B(window.open(e,`_blank`,`width=500,height=700,popup=yes`));let n=t?.()??null;if(n){let t=await Ie(n,e);return t===void 0?null:B(t)}return B(window.open(e,`_blank`,`width=500,height=700,popup=yes`))}function B(e){return new Promise(t=>{let n=!1,r=null,i=()=>{n||(n=!0,window.removeEventListener(`message`,a),clearTimeout(c),r&&clearInterval(r))},a=n=>{if(n.data?.type!==`oauth-callback`||n.origin!==window.location.origin||e&&n.source!==e)return;if(i(),n.data.error){console.error(`[panel-rpc:oauth-popup] OAuth error:`,n.data.error),t(null);return}let r=n.data.redirectUrl;(typeof r==`string`||r==null)&&t(r??null)};window.addEventListener(`message`,a),r=setInterval(async()=>{if(!n)try{let e=await fetch(o(`/api/oauth-result`),{headers:s()});if(e.status===204||!e.ok)return;let r=await e.json();if(n)return;if(i(),r.error){console.error(`[panel-rpc:oauth-popup] Server relay OAuth error:`,r.error),t(null);return}t(r.redirectUrl??null)}catch(e){console.warn(`[panel-rpc:oauth-popup] Poll failed:`,e instanceof Error?e.message:String(e))}},1e3);let c=setTimeout(()=>{i();try{e?.close()}catch{}t(null)},12e4)})}async function Ie(e,t){let n=await e.prompt({kinds:[`popup`],description:`Continue to sign in. A new window will open to the provider.`,grantLabel:`Continue`,requestOptions:{popup:{url:t}}});if(n.status!==`granted`)return;let r=n.grants.find(e=>e.kind===`popup`);return r&&r.kind===`popup`?r.window:null}async function Le(t,n){let{captureDisplayMedia:r,sessionCaptureRequest:i}=await e(async()=>{let{captureDisplayMedia:e,sessionCaptureRequest:t}=await import(`./screencapture-media-BxRLHqjA.js`);return{captureDisplayMedia:e,sessionCaptureRequest:t}},[]),{mimeType:a,quality:o,mode:s,durationMs:c,audio:l,session:u,handle:d,maxWidth:f}=n,p=await r(s===`session`?i({session:u,handle:d,mimeType:a,quality:o,durationMs:c,maxWidth:f}):s===`video`?{mode:`video`,mimeType:a,durationMs:c??5e3,audio:!!l}:{mode:`image`,mimeType:a,quality:o},Oe(t));return{bytes:p.bytes.buffer.slice(p.bytes.byteOffset,p.bytes.byteOffset+p.bytes.byteLength),width:p.width,height:p.height,mimeType:p.mimeType,nativeWidth:p.nativeWidth,nativeHeight:p.nativeHeight,...p.durationMs===void 0?{}:{durationMs:p.durationMs},...p.handle===void 0?{}:{handle:p.handle}}}function Re(t={}){let n=()=>t.getPermissionsSurface?.()??null;return{"page-info":()=>({origin:window.location.origin,href:window.location.href,title:document.title||``}),screencapture:e=>Le(n,e),"speak-text":async({text:t,lang:n,voice:r,rate:i,pitch:a,volume:o})=>{let{speak:s}=await e(async()=>{let{speak:e}=await import(`./speak-jCD0mSEW.js`);return{speak:e}},__vite__mapDeps([21,12,3,5,22,23,24,1,25,13,26,27,28,29,30,31,32,33,34,35,36,37,11,14,4,38,10,0,2,6,39,40,20,41,42,43,44,45,8,46,47,48,49]));return await s({text:t,lang:n,voice:r,rate:i,pitch:a,volume:o}),{done:!0}},"list-voices":async()=>{let{kokoroVoicesIfReady:t}=await e(async()=>{let{kokoroVoicesIfReady:e}=await import(`./speak-jCD0mSEW.js`);return{kokoroVoicesIfReady:e}},__vite__mapDeps([21,12,3,5,22,23,24,1,25,13,26,27,28,29,30,31,32,33,34,35,36,37,11,14,4,38,10,0,2,6,39,40,20,41,42,43,44,45,8,46,47,48,49])),n=t().map(e=>({name:e.id,lang:e.lang,default:!1,onDevice:e.onDevice}));if(typeof speechSynthesis>`u`){if(n.length>0)return{voices:n};throw Error(`speechSynthesis is unavailable in this page`)}let r=speechSynthesis.getVoices();if(r.length>0)return{voices:[...n,...r.map(W)]};let i=await new Promise(e=>{let t=()=>{speechSynthesis.removeEventListener(`voiceschanged`,t),e(speechSynthesis.getVoices())};speechSynthesis.addEventListener(`voiceschanged`,t),setTimeout(()=>{speechSynthesis.removeEventListener(`voiceschanged`,t),e(speechSynthesis.getVoices())},1e3)});return{voices:[...n,...i.map(W)]}},"speak-status":async()=>{let{kokoroStatus:t}=await e(async()=>{let{kokoroStatus:e}=await import(`./speak-jCD0mSEW.js`);return{kokoroStatus:e}},__vite__mapDeps([21,12,3,5,22,23,24,1,25,13,26,27,28,29,30,31,32,33,34,35,36,37,11,14,4,38,10,0,2,6,39,40,20,41,42,43,44,45,8,46,47,48,49]));return t()},"speak-warmup":async()=>{let{kokoroWarmup:t}=await e(async()=>{let{kokoroWarmup:e}=await import(`./speak-jCD0mSEW.js`);return{kokoroWarmup:e}},__vite__mapDeps([21,12,3,5,22,23,24,1,25,13,26,27,28,29,30,31,32,33,34,35,36,37,11,14,4,38,10,0,2,6,39,40,20,41,42,43,44,45,8,46,47,48,49]));return t()},"synthesize-to-wav":async({text:t,lang:n,voice:r,rate:i})=>{let{synthesizeToWav:a}=await e(async()=>{let{synthesizeToWav:e}=await import(`./speak-jCD0mSEW.js`);return{synthesizeToWav:e}},__vite__mapDeps([21,12,3,5,22,23,24,1,25,13,26,27,28,29,30,31,32,33,34,35,36,37,11,14,4,38,10,0,2,6,39,40,20,41,42,43,44,45,8,46,47,48,49])),o=await a({text:t,...n===void 0?{}:{lang:n},...r===void 0?{}:{voice:r},...i===void 0?{}:{rate:i}});return{bytes:o.buffer.slice(o.byteOffset,o.byteOffset+o.byteLength)}},"play-audio":async({bytes:e,volume:t})=>{if(typeof AudioContext>`u`)throw Error(`Web Audio API is unavailable in this page`);let n=new AudioContext;try{let r=await n.decodeAudioData(e.slice(0)),i=n.createBufferSource();if(i.buffer=r,t!==void 0){let e=n.createGain();e.gain.value=Math.max(0,Math.min(1,t)),i.connect(e),e.connect(n.destination)}else i.connect(n.destination);await new Promise(e=>{i.onended=()=>e(),i.start()})}finally{try{await n.close()}catch{}}return{done:!0}},"play-chime":async({tone:e})=>{let t={success:[880,1320],error:[440,220],notify:[660,660]},[n,r]=t[e??`notify`]??t.notify;if(typeof AudioContext>`u`)throw Error(`Web Audio API is unavailable in this page`);let i=new AudioContext;try{let e=i.currentTime;for(let[t,a]of[n,r].entries()){let n=i.createOscillator();n.type=`sine`,n.frequency.value=a;let r=i.createGain();r.gain.setValueAtTime(1e-4,e+t*.18),r.gain.exponentialRampToValueAtTime(.2,e+t*.18+.02),r.gain.exponentialRampToValueAtTime(1e-4,e+t*.18+.18),n.connect(r),r.connect(i.destination),n.start(e+t*.18),n.stop(e+t*.18+.2)}await new Promise(e=>setTimeout(e,450))}finally{try{await i.close()}catch{}}return{done:!0}}}}function ze(e={}){return{"clipboard-read-text":async()=>{if(!navigator.clipboard?.readText)throw Error(`clipboard API unavailable`);return{text:await navigator.clipboard.readText()}},"clipboard-write-text":async({text:e})=>{if(!navigator.clipboard?.writeText)throw Error(`clipboard API unavailable`);return await G(),await navigator.clipboard.writeText(e),{done:!0}},"clipboard-write-image":async({bytes:e,mimeType:t})=>{if(!navigator.clipboard?.write||typeof ClipboardItem>`u`)throw Error(`clipboard image API unavailable`);let n,r=new Blob([e],{type:t});return n=t===`image/png`?r:await Ge(r),await G(),await navigator.clipboard.write([new ClipboardItem({"image/png":n})]),{done:!0}},"window-open":async({url:e,target:t,features:n})=>({opened:window.open(e,t??`_blank`,n??`noopener,noreferrer`)!==null}),"oauth-popup":async({url:t})=>{let n=await e.delegateOAuthLogin?.(t);return n?.delegated?{redirectUrl:n.redirectUrl,error:n.error}:{redirectUrl:await Fe(t,e.getPermissionsSurface)}},"oauth-route":async()=>({delegate:await e.shouldDelegateOAuth?.()===!0}),"capture-camera":async e=>await Ue(e),"enumerate-media-devices":async()=>{if(!navigator.mediaDevices?.enumerateDevices)throw Error(`enumerateDevices is not supported in this browser`);let e=await navigator.mediaDevices.enumerateDevices(),t=e=>({deviceId:e.deviceId,label:e.label||``,...e.groupId?{groupId:e.groupId}:{}});return{videoinputs:e.filter(e=>e.kind===`videoinput`).map(t),audioinputs:e.filter(e=>e.kind===`audioinput`).map(t)}}}}function Be(){return{"hear-capture":async t=>{let{hearCapture:n}=await e(async()=>{let{hearCapture:e}=await import(`./hear-BU1G_yVs.js`);return{hearCapture:e}},__vite__mapDeps([50,3,51,52,12,23,24,1,25,13,26,27,28,29,30,31,32,33,34,35,36,37,11,14,4,5,38,10,0,2,6,39,40,20,41,42,43,44,45,8,46,47,48,49]));return await n(t??{})},"hear-transcribe":async({bytes:t,lang:n})=>{let{hearTranscribe:r}=await e(async()=>{let{hearTranscribe:e}=await import(`./hear-BU1G_yVs.js`);return{hearTranscribe:e}},__vite__mapDeps([50,3,51,52,12,23,24,1,25,13,26,27,28,29,30,31,32,33,34,35,36,37,11,14,4,5,38,10,0,2,6,39,40,20,41,42,43,44,45,8,46,47,48,49]));return await r(t,n)},"hear-status":async()=>{let{hearStatus:t}=await e(async()=>{let{hearStatus:e}=await import(`./hear-BU1G_yVs.js`);return{hearStatus:e}},__vite__mapDeps([50,3,51,52,12,23,24,1,25,13,26,27,28,29,30,31,32,33,34,35,36,37,11,14,4,5,38,10,0,2,6,39,40,20,41,42,43,44,45,8,46,47,48,49]));return t()},"hear-warmup":async()=>{let{hearWarmup:t}=await e(async()=>{let{hearWarmup:e}=await import(`./hear-BU1G_yVs.js`);return{hearWarmup:e}},__vite__mapDeps([50,3,51,52,12,23,24,1,25,13,26,27,28,29,30,31,32,33,34,35,36,37,11,14,4,5,38,10,0,2,6,39,40,20,41,42,43,44,45,8,46,47,48,49]));return t()}}}var V=null,H;function Ve(t){H=t,!(V||!t)&&e(()=>import(`./screencapture-media-BxRLHqjA.js`).then(e=>{V||=e.displaySessions.onEnded(t=>{H?.(e.SCREENCAPTURE_SESSION_ENDED_CHANNEL,{handle:t})})}),[])}var He=1500;async function Ue(e){if(!navigator.mediaDevices?.getUserMedia)throw Error(`getUserMedia is not supported in this browser`);let t=e.mode===`photo`||e.captureVideo!==!1,n=!!e.captureAudio&&e.mode===`video`;if(!t&&!n)throw Error(`camera capture: at least one of video or audio must be requested`);let r=await We({wantVideo:t,videoDeviceId:t?await U(e.deviceId,`videoinput`):void 0,audioDeviceId:n?await U(e.audioDeviceId,`audioinput`):void 0,wantAudio:n,width:e.width,height:e.height,frameRate:e.frameRate,exact:!!e.exactSize});try{let n=null,i=0,a=0;if(t){n=document.createElement(`video`),n.srcObject=r,n.muted=!0,n.playsInline=!0;let e=n;await new Promise((t,n)=>{e.onloadedmetadata=()=>e.play().then(()=>t()).catch(n),e.onerror=()=>n(Error(`Failed to load camera stream`))}),await new Promise(e=>requestAnimationFrame(()=>e())),await new Promise(e=>requestAnimationFrame(()=>e())),i=e.videoWidth,a=e.videoHeight}if(e.mode===`photo`){if(!n)throw Error(`photo capture requires a video track`);let t=e.warmupMs??He;t>0&&await new Promise(e=>setTimeout(e,t));let r=document.createElement(`canvas`);r.width=i,r.height=a;let o=r.getContext(`2d`);if(!o)throw Error(`Failed to get canvas context`);o.drawImage(n,0,0,i,a);let s=await new Promise((t,n)=>{r.toBlob(e=>e?t(e):n(Error(`Failed to encode photo`)),e.mimeType,e.quality)});return{bytes:await s.arrayBuffer(),mimeType:s.type||e.mimeType,width:i,height:a}}let o=Math.max(100,Math.min(e.durationMs??5e3,6e4)),s=typeof MediaRecorder<`u`&&MediaRecorder.isTypeSupported(e.mimeType)?e.mimeType:`video/webm`,c=new MediaRecorder(r,{mimeType:s}),l=[];c.ondataavailable=e=>{e.data&&e.data.size>0&&l.push(e.data)};let u=new Promise(e=>{c.onstop=()=>e()});c.start(),await new Promise(e=>setTimeout(e,o)),c.stop(),await u;let d=new Blob(l,{type:s});return{bytes:await d.arrayBuffer(),mimeType:d.type||s,width:i,height:a,durationMs:o}}finally{r.getTracks().forEach(e=>{e.stop()})}}async function U(e,t){if(e===void 0||e===``)return;if(!/^\d+$/.test(e))return e;if(!navigator.mediaDevices?.enumerateDevices)return;let n=parseInt(e,10);return(await navigator.mediaDevices.enumerateDevices()).filter(e=>e.kind===t)[n]?.deviceId}async function We(e){let t=t=>{if(!e.wantVideo)return!1;let n={};return e.videoDeviceId&&(n.deviceId={exact:e.videoDeviceId}),e.width&&(n.width=t===`exact`?{exact:e.width}:{ideal:e.width}),e.height&&(n.height=t===`exact`?{exact:e.height}:{ideal:e.height}),e.frameRate&&(n.frameRate=t===`exact`?{exact:e.frameRate}:{ideal:e.frameRate}),Object.keys(n).length>0?n:!0},n=()=>e.wantAudio?!e.audioDeviceId||{deviceId:{exact:e.audioDeviceId}}:!1;try{return await navigator.mediaDevices.getUserMedia({video:t(e.exact?`exact`:`ideal`),audio:n()})}catch(r){let i=r?.name;if(!e.exact||i!==`OverconstrainedError`&&i!==`NotReadableError`)throw r;return console.warn(`panel-rpc:capture-camera: exact ${e.width??`?`}x${e.height??`?`}@${e.frameRate??`?`} unmet, falling back to ideal`),await navigator.mediaDevices.getUserMedia({video:t(`ideal`),audio:n()})}}function W(e){return{name:e.name,lang:e.lang,default:e.default,onDevice:!1}}async function Ge(e){let t=URL.createObjectURL(e);try{let e=new Image;await new Promise((n,r)=>{e.onload=()=>n(),e.onerror=()=>r(Error(`Failed to load image for clipboard conversion`)),e.src=t});let n=document.createElement(`canvas`);n.width=e.naturalWidth,n.height=e.naturalHeight;let r=n.getContext(`2d`);if(!r)throw Error(`Failed to get canvas context`);return r.drawImage(e,0,0),await new Promise((e,t)=>{n.toBlob(n=>n?e(n):t(Error(`PNG re-encode failed`)),`image/png`)})}finally{URL.revokeObjectURL(t)}}async function G(e=3e5){typeof document>`u`||typeof document.hasFocus==`function`&&(document.hasFocus()||await new Promise((t,n)=>{let r=()=>{window.removeEventListener(`focus`,i),document.removeEventListener(`visibilitychange`,a),clearTimeout(o)},i=()=>{document.hasFocus()&&(r(),t())},a=()=>{document.visibilityState===`visible`&&document.hasFocus()&&(r(),t())},o=setTimeout(()=>{r(),n(Error(`timed out waiting for window focus`))},e);window.addEventListener(`focus`,i),document.addEventListener(`visibilitychange`,a)}))}function Ke(e){let t=new Map,n=()=>{if(!e.sliccSidecar)throw Error(`slicc: sidecar attachments are not available in this environment`);return e.sliccSidecar},r=async(e,r)=>{let i=n(),a=new AbortController;t.set(e,a);try{return await r(i,a.signal)}finally{t.delete(e)}};return{"slicc-attach":async({joinUrl:e,name:t,connectTimeoutMs:r})=>await n().attach({joinUrl:e,name:t,connectTimeoutMs:r}),"slicc-detach":({name:e})=>({detached:n().detach(e)}),"slicc-list":()=>({attachments:n().list()}),"slicc-prompt":async({name:e,text:t,runToken:n,steer:i,timeoutMs:a})=>await r(n,async(n,r)=>await n.prompt(e,t,{steer:i,timeoutMs:a,signal:r})),"slicc-exec":async({name:e,command:t,runToken:n,cwd:i,env:a,timeoutMs:o,stdin:s})=>await r(n,async(n,r)=>await n.exec(e,t,{cwd:i,env:a,timeoutMs:o,stdin:s,signal:r})),"slicc-watch":async({name:e,runToken:t,durationMs:n,scoopJid:i,untilIdle:a})=>await r(t,async(t,r)=>await t.watch(e,{durationMs:n,scoopJid:i,untilIdle:a,signal:r})),"slicc-cancel":({runToken:e})=>(t.get(e)?.abort(),{ok:!0})}}function qe(e){return{"list-remote-targets":async()=>e.listRemoteTargets?{targets:(await e.listRemoteTargets()).filter(e=>e.targetId.includes(`:`)).map(e=>({targetId:e.targetId,title:e.title,url:e.url}))}:{targets:[]},"remote-cdp-send":async({runtimeId:t,localTargetId:n,method:r,params:i,sessionId:a,timeout:o})=>{if(!e.remoteCdp)throw Error(`remote-cdp bridge not available`);return e.remoteCdp.send({runtimeId:t,localTargetId:n,method:r,params:i,sessionId:a,timeout:o})},"remote-cdp-subscribe":async({runtimeId:t,localTargetId:n,event:r})=>{if(!e.remoteCdp)throw Error(`remote-cdp bridge not available`);return e.remoteCdp.subscribe({runtimeId:t,localTargetId:n,event:r})},"remote-cdp-unsubscribe":async({runtimeId:t,localTargetId:n,event:r})=>{if(!e.remoteCdp)throw Error(`remote-cdp bridge not available`);return e.remoteCdp.unsubscribe({runtimeId:t,localTargetId:n,event:r})},"remote-cdp-detach":async({runtimeId:t,localTargetId:n})=>{if(!e.remoteCdp)throw Error(`remote-cdp bridge not available`);return e.remoteCdp.detach({runtimeId:t,localTargetId:n})},"remote-open-tab":async({runtimeId:t,url:n})=>{if(!e.remoteCdp)throw Error(`remote-cdp bridge not available`);return e.remoteCdp.openTab({runtimeId:t,url:n})}}}function Je(e,t){return t===void 0?e.length>0&&e.every(e=>e===`camera`||e===`microphone`):t}function Ye(t){return{"permission-request":async n=>{let r=t.getPermissionsSurface?.()??null;if(!r)throw Error(`permission-request: permission surface unavailable`);let i=await r.prompt({kinds:n.kinds,description:n.description,heading:n.heading,grantLabel:n.grantLabel,cancelLabel:n.cancelLabel,skipIfGranted:Je(n.kinds,n.skipIfGranted)});if(i.status!==`granted`){let e=i.message?`: ${i.message}`:``;throw Error(`permission-request: ${i.reason??i.status}${e}`)}let a=[];for(let t of i.grants)switch(t.kind){case`usb`:{let e=M().register(t.device);a.push({kind:`usb`,handle:e});break}case`hid`:{let e=I().register(t.device);a.push({kind:`hid`,handle:e});break}case`serial`:{let e=R().register(t.port);a.push({kind:`serial`,handle:e});break}case`filesystem`:{let{storePendingHandle:n}=await e(async()=>{let{storePendingHandle:e}=await import(`./mount-picker-popup-qcWGbpG5.js`);return{storePendingHandle:e}},__vite__mapDeps([53,3,54,5])),r=`pendingMount:rpc-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`;await n(r,t.handle),a.push({kind:`filesystem`,idbKey:r,dirName:t.handle.name});break}case`camera`:case`microphone`:case`screenshare`:for(let e of t.stream.getTracks())e.stop();a.push({kind:t.kind,ok:!0})}return{grants:a}}}}var K=3e5,Xe=class{pending=null;waiter=null;stream=new ReadableStream({pull:async e=>{for(;!this.pending;)await new Promise(e=>{this.waiter=e});let{chunk:t,taken:n}=this.pending;this.pending=null,t?e.enqueue(t):e.close(),n()}},{highWaterMark:0});write(e){return new Promise(t=>{this.pending={chunk:e,taken:t};let n=this.waiter;this.waiter=null,n?.()})}},q=new Map;function J(e){return e instanceof c?{ok:!1,code:e.code,status:e.status,error:e.message}:{ok:!1,code:`bridge`,status:502,error:e instanceof Error?e.message:String(e)}}var Y=()=>({ok:!1,code:`bridge`,status:502,error:`raw fetch: unknown or finished session`});function X(e){let t=q.get(e);t&&(q.delete(e),clearTimeout(t.idle),t.abort.abort(),t.reader?.cancel().catch(()=>void 0))}function Z(e){let t=q.get(e);if(t)return clearTimeout(t.idle),t.idle=setTimeout(()=>X(e),K),t}function Ze(e){return e.response.then(()=>new Promise(()=>{}))}function Qe(){return{"raw-fetch-probe":async t=>{let{getRawFetchCapabilities:n}=await e(async()=>{let{getRawFetchCapabilities:e}=await import(`./proxied-fetch-raw-DQ0-xn2O.js`);return{getRawFetchCapabilities:e}},__vite__mapDeps([55,12,14,4,5,56,57,13]));return n()},"raw-fetch-open":async({url:t,method:n,headers:r,hasBody:i,bodyLength:a})=>{let[{extensionPortConnector:o},{rawFetchViaPort:s}]=await Promise.all([e(()=>import(`./proxied-fetch-raw-DQ0-xn2O.js`),__vite__mapDeps([55,12,14,4,5,56,57,13])),e(()=>import(`./proxied-fetch-raw-port-Dv7XYtb4.js`),__vite__mapDeps([57,13,56,4,5]))]),c=o();if(!c)throw Error(`raw fetch: no extension Port in this realm`);let l=crypto.randomUUID(),u=i?new Xe:null,d=new AbortController,f=s(c,t,{method:n,headers:r,body:u?.stream,bodyLength:a,signal:d.signal});return f.catch(()=>void 0),q.set(l,{upload:u,response:f,reader:null,abort:d,idle:setTimeout(()=>X(l),K)}),{id:l}},"raw-fetch-write":async({id:e,chunk:t})=>{let n=Z(e);if(!n?.upload)return Y();try{return await Promise.race([n.upload.write(t),Ze(n)]),{ok:!0}}catch(t){return X(e),J(t)}},"raw-fetch-head":async({id:e})=>{let t=Z(e);if(!t)return Y();try{let{body:n,...r}=await t.response;return t.reader=n?.getReader()??null,n||X(e),{ok:!0,head:r,hasBody:n!==null}}catch(t){return X(e),J(t)}},"raw-fetch-read":async({id:e})=>{let t=Z(e);if(!t?.reader)return Y();try{let{done:n,value:r}=await t.reader.read();return n&&X(e),{ok:!0,chunk:n?null:r}}catch(t){return X(e),J(t)}},"raw-fetch-cancel":async({id:e})=>(X(e),{ok:!0})}}function $e(e){let t=n().find(t=>t.id===e);return t?t.id:null}function Q(){return{"feature-flag-set":({id:e,value:n})=>{let i=$e(e);if(!i)throw Error(`unknown flag ${e}`);if(t(i,n),r()[i]!==n)throw Error(`flag ${e} cannot be overridden on this float`);return{overridesJson:localStorage.getItem(`slicc_feature_flags`)??`{}`}}}}function et(){return{"theme-apply":async({themeJson:t,action:n})=>{let{importTheme:r,saveCustomTheme:i,setActiveTheme:a,clearActiveTheme:o,applyThemeOverrides:s}=await e(async()=>{let{importTheme:e,saveCustomTheme:t,setActiveTheme:n,clearActiveTheme:r,applyThemeOverrides:i}=await import(`./theme-engine-ZV7CeqWw.js`).then(e=>e._);return{importTheme:e,saveCustomTheme:t,setActiveTheme:n,clearActiveTheme:r,applyThemeOverrides:i}},__vite__mapDeps([58,1,3]));if(n===`reset`)return o(),s(),{applied:null};if(t){let e=r(t);return i(e),a(e.id),s(),{applied:e.id}}return{applied:null}}}}function tt(){return{"layout-apply":async t=>{let{getLayoutApplier:n}=await e(async()=>{let{getLayoutApplier:e}=await import(`./layout-apply-registry-Cw730jao.js`);return{getLayoutApplier:e}},[]),r=n();return r?await r(t)??{applied:!0}:{applied:!1,error:`no layout is mounted`}}}}function $(){let e=globalThis;if(!e.__slicc_browser)throw Error(`no browser API on this page`);return e.__slicc_browser}function nt(){return{"computer-tab-screenshot":async t=>{let{screenshotTab:n}=await e(async()=>{let{screenshotTab:e}=await import(`./tab-8LaHojfd.js`);return{screenshotTab:e}},__vite__mapDeps([59,60,26,61]));return n($(),t.targetId,{maxWidth:t.maxWidth,format:t.format})},"computer-tab-input":async t=>{let{inputTab:n}=await e(async()=>{let{inputTab:e}=await import(`./tab-8LaHojfd.js`);return{inputTab:e}},__vite__mapDeps([59,60,26,61]));return await n($(),t.targetId,t.events),{ok:!0}}}}function rt(e={}){let t=new Map;return Ve(e.emitEvent),{...Re(e),...ze(e),...Be(),...Pe(e),...Ke(e),...ke(e),...Ae(e,t),...je(e),...Me(e),...qe(e),...Ye(e),...k(),...Qe(),...D(),...O(),...T(),...E(),...et(),...tt(),...Q(),...nt()}}export{rt as createStandalonePanelRpcHandlers};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./panel-rpc-accessor-B4BfPLSo.js";var n=e({COMPUTER_NATIVE_FRAME_CHANNEL:()=>a,PANEL_RPC_DEFAULT_TIMEOUT_MS:()=>PANEL_RPC_DEFAULT_TIMEOUT_MS,createPanelRpcEventEmitter:()=>o,getPanelRpcClient:()=>t,installPanelRpcHandler:()=>s,panelRpcChannelName:()=>i}),r=`slicc-panel-rpc`;function i(e){return e?`${r}:${e}`:r}var a=`computer-native-frame`;function o(e={}){if(typeof BroadcastChannel!=`function`)return{emit:()=>{},dispose:()=>{}};let t=new BroadcastChannel(i(e.instanceId));return{emit(e,n){let r={type:`panel-rpc-event`,channel:e,payload:n};try{t.postMessage(r)}catch(t){console.warn(`panel-rpc: failed to emit event '${e}':`,t instanceof Error?t.message:String(t))}},dispose(){try{t.close()}catch{}}}}function s(e){if(typeof BroadcastChannel!=`function`)return()=>{};let t=new BroadcastChannel(i(e.instanceId)),n=(e,n,r)=>{let i={type:`panel-rpc-response`,id:e};r===void 0?i.result=n:i.error=r;try{t.postMessage(i)}catch(t){let n=t instanceof Error?t.message:String(t);console.warn(`panel-rpc: failed to post response for id=${e}: ${n}`)}},r=async t=>{let r=t.data;if(r?.type!==`panel-rpc-request`)return;let i=e.handlers[r.op];if(!i){n(r.id,void 0,`panel-rpc: no handler for op '${r.op}'`);return}try{let e=await i(r.payload);n(r.id,e)}catch(e){n(r.id,void 0,e instanceof Error?e.message:String(e))}};return t.addEventListener(`message`,r),()=>{t.removeEventListener(`message`,r);try{t.close()}catch{}}}export{n,i as t};
|
|
@@ -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-
|
|
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-DrGgyuS_.js";import"./virtual-device-paths-D45tpPP6.js";import{r as d}from"./icons-2DY2vYOc.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,2 +1,2 @@
|
|
|
1
|
-
import{n as e,t}from"./context-CrZ58_Xy.js";import{a as n,n as r,t as i}from"./path-utils-DNJG-zQf.js";import{t as a}from"./types-D8gIX-W-.js";import"./fs-
|
|
1
|
+
import{n as e,t}from"./context-CrZ58_Xy.js";import{a as n,n as r,t as i}from"./path-utils-DNJG-zQf.js";import{t as a}from"./types-D8gIX-W-.js";import"./fs-CKSBDyCr.js";import{t as o}from"./kernel-worker-9lMint5X.js";let s;function c(){return s??=import(`./edit-dC5128uh.js`).then(({createEditTool:e})=>e()),s}function l(e){return{ok:!0,value:e}}function u(e){return{ok:!1,error:e}}var d=class extends Error{code;path;constructor(e,t,n,r){super(t,r===void 0?void 0:{cause:r}),this.code=e,this.path=n,this.name=`FileError`}},f=class extends Error{code=`shell_unavailable`;constructor(e){super(e),this.name=`ExecutionError`}};function p(e){if(!(e instanceof a))return`unknown`;switch(e.code){case`ENOENT`:return`not_found`;case`EACCES`:return`permission_denied`;case`ENOTDIR`:return`not_directory`;case`EISDIR`:return`is_directory`;case`EINVAL`:case`ELOOP`:return`invalid`;default:return`unknown`}}function m(e,t){if(e instanceof d)return e;let n=e instanceof Error?e:Error(String(e));return new d(p(e),n.message,t,n)}function h(e,t){return e?.aborted?u(new d(`aborted`,`aborted`,t)):null}var g=class{fs;cwd;constructor(e,t){this.fs=e,this.cwd=t}async absolutePath(e,t){return h(t.abortSignal,e)||l(r(e.startsWith(`/`)?e:i(this.cwd,e)))}async canonicalPath(e,t){let n=await this.absolutePath(e,t);if(!n.ok)return n;try{return l(await this.fs.realpath(n.value))}catch(e){return u(m(e,n.value))}}async fileInfo(e,t){let r=await this.absolutePath(e,t);if(!r.ok)return r;try{let e=await this.fs.lstat(r.value);return l({name:n(r.value).base,path:r.value,kind:e.type,size:e.size,mtimeMs:e.mtime})}catch(e){return u(m(e,r.value))}}async readTextFile(e,t){let n=await this.absolutePath(e,t);if(!n.ok)return n;try{let e=await this.fs.readTextFile(n.value);return h(t.abortSignal,n.value)??l(e)}catch(e){return u(m(e,n.value))}}async writeFile(e,t,n){let r=await this.absolutePath(e,n);if(!r.ok)return r;try{if(await this.fs.writeFile(r.value,t),typeof t==`string`){let e=await o(this.fs,r.value,t);if(e)return u(new d(`unknown`,e,r.value))}return h(n.abortSignal,r.value)??l(void 0)}catch(e){return u(m(e,r.value))}}unsupported(e,t){return u(new d(`not_supported`,`${e} is unavailable to the edit tool`,t))}async joinPath(e){return l(i(...e))}async readTextLines(n,r){let i=await this.readTextFile(n,r?.abortSignal?e(r.abortSignal,t):t);if(!i.ok)return i;let a=i.value.split(/\r?\n/);return l(r?.maxLines===void 0?a:a.slice(0,r.maxLines))}async readBinaryFile(e){return this.unsupported(`readBinaryFile`,e)}async appendFile(e){return this.unsupported(`appendFile`,e)}async renameFile(e){return this.unsupported(`renameFile`,e)}async listDir(e){return this.unsupported(`listDir`,e)}async exists(e){return this.unsupported(`exists`,e)}async createDir(e){return this.unsupported(`createDir`,e)}async remove(e){return this.unsupported(`remove`,e)}async createTempDir(){return this.unsupported(`createTempDir`)}async createTempFile(){return this.unsupported(`createTempFile`)}async exec(){return u(new f(`Shell is unavailable to the edit tool`))}async cleanup(){}};const _=new WeakMap;function v(e,t){let n=_.get(e);n||_.set(e,n=new Map);let r=n.get(t);return r||n.set(t,r=new g(e,t)),r}async function y(n,r,i,a){return{content:(await(await c()).execute(`slicc-edit`,i,()=>{},{env:v(n,r)},{invocationId:`slicc-edit`,operationId:`slicc-edit`,turnId:`slicc-edit`,getMemo:async()=>void 0,setMemo:async()=>{}},a?e(a,t):t)).content.filter(e=>e.type===`text`).map(e=>e.text).join(`
|
|
2
2
|
`)}}export{y as executePiEdit};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./logger-DDBAeTLF.js";import{i as t}from"./api-endpoint-DuEQRZ4g.js";import{t as n}from"./panel-rpc-accessor-B4BfPLSo.js";function r(r){let i=e(r.logNamespace),a=null,o=1,s=new Map;function c(e){let t=e;if(typeof t?.id!=`number`)return;let n=s.get(t.id);n&&(s.delete(t.id),clearTimeout(n.timer),n.resolve(t.response))}function l(){a=null;for(let[,e]of s)clearTimeout(e.timer),e.reject(r.makeError(`${r.portName} port disconnected`));s.clear(),i.debug(`${r.portName} port disconnected; pending cleared, will reconnect`)}function u(){if(a)return a;let e=t();if(!e)return i.warn(`cannot open ${r.portName} port: no extension delegate id`),null;if(typeof chrome>`u`||typeof chrome?.runtime?.connect!=`function`)return i.warn(`cannot open ${r.portName} port: chrome.runtime.connect unavailable`),null;let n=chrome.runtime.connect,o=n(e,{name:r.portName});return o.onMessage.addListener(c),o.onDisconnect.addListener(l),a=o,o}function d(e){return r.onUnavailable===`resolve-undefined`?Promise.resolve(void 0):Promise.reject(r.makeError(e))}function f(e){return new Promise((t,n)=>{let c=u();if(!c){d(`${r.portName} transport unavailable`).then(t,n);return}let l=o++,f=setTimeout(()=>{s.delete(l)&&(i.warn(`${r.portName} call timed out`),d(`${r.portName} call timed out`).then(t,n))},r.timeoutMs);s.set(l,{resolve:t,reject:n,timer:f});try{c.postMessage({id:l,...r.toPortMessage(e)})}catch(e){s.delete(l),clearTimeout(f),a=null,n(r.makeError(e instanceof Error?e.message:String(e)))}})}async function p(e){let t=n();return t?(await t.call(r.panelRpcOp,r.toPanelRpcPayload(e),{timeoutMs:r.timeoutMs})).response:(i.warn(`cannot bridge ${r.portName} call: panel-RPC client unavailable`),d(`${r.portName} transport: panel-RPC client unavailable`))}return e=>typeof chrome>`u`&&t()?p(e):f(e)}export{r as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./logger-LESFN7Hj.js";import{t}from"./panel-rpc-accessor-B4BfPLSo.js";import{a as n}from"./api-endpoint-D8lUKmPu.js";function r(r){let i=e(r.logNamespace),a=null,o=1,s=new Map;function c(e){let t=e;if(typeof t?.id!=`number`)return;let n=s.get(t.id);n&&(s.delete(t.id),clearTimeout(n.timer),n.resolve(t.response))}function l(){a=null;for(let[,e]of s)clearTimeout(e.timer),e.reject(r.makeError(`${r.portName} port disconnected`));s.clear(),i.debug(`${r.portName} port disconnected; pending cleared, will reconnect`)}function u(){if(a)return a;let e=n();if(!e)return i.warn(`cannot open ${r.portName} port: no extension delegate id`),null;if(typeof chrome>`u`||typeof chrome?.runtime?.connect!=`function`)return i.warn(`cannot open ${r.portName} port: chrome.runtime.connect unavailable`),null;let t=chrome.runtime.connect,o=t(e,{name:r.portName});return o.onMessage.addListener(c),o.onDisconnect.addListener(l),a=o,o}function d(e){return r.onUnavailable===`resolve-undefined`?Promise.resolve(void 0):Promise.reject(r.makeError(e))}function f(e){return new Promise((t,n)=>{let c=u();if(!c){d(`${r.portName} transport unavailable`).then(t,n);return}let l=o++,f=setTimeout(()=>{s.delete(l)&&(i.warn(`${r.portName} call timed out`),d(`${r.portName} call timed out`).then(t,n))},r.timeoutMs);s.set(l,{resolve:t,reject:n,timer:f});try{c.postMessage({id:l,...r.toPortMessage(e)})}catch(e){s.delete(l),clearTimeout(f),a=null,n(r.makeError(e instanceof Error?e.message:String(e)))}})}async function p(e){let n=t();return n?(await n.call(r.panelRpcOp,r.toPanelRpcPayload(e),{timeoutMs:r.timeoutMs})).response:(i.warn(`cannot bridge ${r.portName} call: panel-RPC client unavailable`),d(`${r.portName} transport: panel-RPC client unavailable`))}return e=>typeof chrome>`u`&&n()?p(e):f(e)}export{r as t};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const e={EACCES:2,EBADF:8,EBUSY:10,EEXIST:20,EINVAL:28,EIO:29,EISDIR:31,ELOOP:32,ENAMETOOLONG:37,ENOENT:44,ENOSPC:51,ENOSYS:52,ENOTDIR:54,ENOTEMPTY:55,EPERM:63,EROFS:69,ETIMEDOUT:73,EXDEV:75},t=4095;function n(t,n){if(n?.errno!==void 0&&n instanceof t.ErrnoError)return n;let r=n?.code,i=typeof r==`string`?e[r]??29:29;return new t.ErrnoError(i)}function r(e){let t=[],n=e;for(;n!==n.mount.root;)t.push(n.name),n=n.parent;let r=e.mount.opts.root.replace(/\/+$/,``);return t.length===0?r||`/`:`${r}/${t.reverse().join(`/`)}`}function i(e){let t=3735928559,n=1103547991;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r);t=Math.imul(t^i,2654435761),n=Math.imul(n^i,1597334677)}return t=Math.imul(t^t>>>16,2246822507)^Math.imul(n^n>>>13,3266489909),n=Math.imul(n^n>>>16,2246822507)^Math.imul(t^t>>>13,3266489909),4294967296*(2097151&n)+(t>>>0)||1}function a(e){let n=e.isSymbolicLink?40960:e.isDirectory?16384:32768,r=e.isDirectory||e.isSymbolicLink?511:438;return n|((e.mode??r)&t||r)}function o(e){if(e!=null)return e instanceof Date?e.getTime():e}function s(t,i){let o=e=>e.mount.opts.bridge;function s(e){try{return e()}catch(e){throw n(t,e)}}function c(t){try{s(t)}catch(t){if(t.errno!==e.ENOSYS)throw t}}function l(e){return{...e?{stat:e}:{},len:0,loaded:!1,dirty:!1,openCount:0}}function u(e,n,r){let o=t.createNode(e,n,a(r),0);return o.node_ops=i.node,o.stream_ops=i.stream,o.live=l(r),o}function d(e){if(e.live.orphan)return{...e.live.stat,size:e.live.len};if(!e.live.stat){let t=s(()=>o(e).lstat(r(e)));e.live.stat=t,e.mode=a(t)}return e.live.stat}function f(e,t){let n=r(e);return n===`/`?`/${t}`:`${n}/${t}`}function p(e){let t=e.live;if(t.loaded)return;let n=s(()=>o(e).readFile(r(e)));t.data=n,t.len=n.length,t.loaded=!0}function m(e,t){let n=e.live,r=n.data??new Uint8Array;if(r.length>=t)return r;let i=new Uint8Array(Math.max(t,r.length*2,256));return i.set(r.subarray(0,n.len)),n.data=i,i}function h(e){let t=e.live;if(!t.dirty||!t.data||t.orphan)return;let n=t.data.slice(0,t.len);s(()=>o(e).writeFile(r(e),n)),t.dirty=!1,t.stat=void 0}function g(e,t){let n=e.live;if(n.openCount>0){t>0?p(e):n.loaded=!0;let r=m(e,t);t>n.len&&r.fill(0,n.len,t),n.len=t,n.dirty=!0;return}let i=r(e),a=new Uint8Array(t);if(t>0){let n=s(()=>o(e).readFile(i));a.set(n.subarray(0,Math.min(t,n.length)))}s(()=>o(e).writeFile(i,a)),n.stat=void 0}return{Fs:t,bridgeOf:o,call:s,metadataCall:c,makeNode:u,statOf:d,childPath:f,ensureLoaded:p,ensureCapacity:m,flushNode:h,truncate:g}}function c(n){let{Fs:a,bridgeOf:s,call:c,metadataCall:l,makeNode:u,statOf:d,childPath:f,flushNode:p,truncate:m}=n,{ensureLoaded:h}=n;return{getattr(e){let t=d(e),n=e.live,o=a.isDir(e.mode)?4096:n.loaded?n.len:t.size,s=new Date(t.mtimeMs??0);return{dev:1,ino:t.ino??i(r(e)),mode:e.mode,nlink:1,uid:0,gid:0,rdev:0,size:o,atime:s,mtime:s,ctime:s,blksize:4096,blocks:Math.ceil(o/4096)}},setattr(e,n){if(e.live.orphan){n.mode!==void 0&&n.mode!==null&&(e.mode=e.mode&-4096|n.mode&t),n.size!==void 0&&n.size!==null&&m(e,n.size);return}let i=r(e);if(n.mode!==void 0&&n.mode!==null){let r=n.mode&t;r!==(e.mode&t)&&(l(()=>s(e).chmod(i,r)),e.mode=e.mode&-4096|r)}n.size!==void 0&&n.size!==null&&a.isFile(e.mode)&&m(e,n.size);let c=o(n.mtime)??n.timestamp;if(c!==void 0){let t=o(n.atime)??c;p(e),l(()=>s(e).utimes(i,t,c))}e.live.stat=void 0},lookup(e,t){let n=c(()=>s(e).lstat(f(e,t)));return u(e,t,n)},mknod(t,n,r){let i=f(t,n);if(a.isDir(r)){c(()=>s(t).mkdir(i));let e=r&4077;e!==493&&l(()=>s(t).chmod(i,e))}else if(a.isFile(r))c(()=>s(t).writeFile(i,new Uint8Array));else throw new a.ErrnoError(e.EPERM);let o=u(t,n,{isFile:a.isFile(r),isDirectory:a.isDir(r),isSymbolicLink:!1,size:0,mode:r,mtimeMs:Date.now()});return o.live.stat=void 0,o},rename(e,t,n){let i=r(e),o=f(t,n);p(e),c(()=>s(e).rename(i,o));try{let r=a.lookupNode?.(t,n);r&&r!==e&&a.hashRemoveNode?.(r)}catch{}e.name=n,e.live.stat=void 0},unlink(e,t){let n;try{let r=a.lookupNode?.(e,t);r&&r.live?.openCount>0&&a.isFile(r.mode)&&(n=r)}catch{}n&&(d(n),h(n)),c(()=>s(e).unlink(f(e,t))),n&&(n.live.orphan=!0)},rmdir(e,t){c(()=>s(e).rmdir(f(e,t)))},readdir(e){return[`.`,`..`,...c(()=>s(e).readdir(r(e)))]},symlink(e,t,n){let r=f(e,t);return c(()=>s(e).symlink(n,r)),u(e,t,{isFile:!1,isDirectory:!1,isSymbolicLink:!0,size:n.length})},readlink(t){if(!a.isLink(t.mode))throw new a.ErrnoError(e.EINVAL);return c(()=>s(t).readlink(r(t)))}}}function l(t){let{Fs:n,statOf:r,ensureLoaded:i,ensureCapacity:a,flushNode:o}=t;return{open(e){n.isFile(e.node.mode)&&e.node.live.openCount++},dup(e){n.isFile(e.node.mode)&&e.node.live.openCount++},close(e){let t=e.node;if(!n.isFile(t.mode))return;let r=t.live;if(r.openCount=Math.max(0,r.openCount-1),!(r.openCount>0))try{o(t)}finally{r.data=void 0,r.len=0,r.loaded=!1}},read(t,r,a,o,s){let c=t.node;if(n.isDir(c.mode))throw new n.ErrnoError(e.EISDIR);i(c);let l=c.live;if(s>=l.len||o<=0)return 0;let u=Math.min(o,l.len-s);return new Uint8Array(r.buffer,r.byteOffset+a,u).set(l.data.subarray(s,s+u)),u},write(t,r,o,s,c){let l=t.node;if(n.isDir(l.mode))throw new n.ErrnoError(e.EISDIR);if(s<=0)return 0;i(l);let u=l.live,d=c+s,f=a(l,d);return c>u.len&&f.fill(0,u.len,c),f.set(new Uint8Array(r.buffer,r.byteOffset+o,s),c),u.len=Math.max(u.len,d),u.dirty=!0,s},llseek(t,i,a){let o=i;if(a===1)o+=t.position;else if(a===2&&n.isFile(t.node.mode)){let e=t.node.live;o+=e.loaded?e.len:r(t.node).size}if(o<0)throw new n.ErrnoError(e.EINVAL);return o},fsync(e){o(e.node)}}}function u(t){let n=new Set,r={},i=s(t,r),a=c(i),o=l(i);return r.node=a,r.stream=o,{mounts:n,node_ops:a,stream_ops:o,mount(r){let a=i.call(()=>r.opts.bridge.stat(r.opts.root));if(!a.isDirectory)throw new t.ErrnoError(e.ENOTDIR);let o=i.makeNode(null,`/`,a);return n.add(r),o}}}function d(e,t){return!!t&&e.mounts.has(t.mount)}function f(e,t){for(let i of e.nameTable??[])for(let a=i;a;a=a.name_next??null)if(!(!d(t,a)||!a.live.dirty||!a.live.data))try{let e=a.live.data.slice(0,a.live.len);a.mount.opts.bridge.writeFile(r(a),e),a.live.dirty=!1}catch(t){throw n(e,t)}}function p(e,t){let n=e.nameTable??[],r=[];for(let e of n)for(let n=e;n;n=n.name_next??null){if(!d(t,n))continue;let e=n.live;e.stat=void 0,e.openCount===0?n!==n.mount.root&&r.push(n):e.loaded&&!e.dirty&&(e.data=void 0,e.len=0,e.loaded=!1)}if(e.hashRemoveNode)for(let t of r)e.hashRemoveNode(t)}function m(e){let t=[...new Set(e.map(e=>e.replace(/\/+$/,``)||`/`))].sort();return t.filter(e=>!t.some(t=>t!==e&&(t===`/`||e.startsWith(`${t}/`))))}function h(e){if(e instanceof Error)return e.message;let t=e?.errno;return typeof t==`number`?`errno ${t}`:String(e)}function g(e,t,n,r){if(typeof e.filesystems!=`object`||!e.filesystems)throw Error(`the module was linked without filesystem support, so the VFS cannot be mounted (link it with -sFORCE_FILESYSTEM=1)`);let i=e.filesystems.SLICC_LIVE_FS??u(e);e.filesystems.SLICC_LIVE_FS=i;let a=[];for(let o of m(n))if(o!==`/`)try{e.mkdirTree(o),e.mount(i,{root:o,bridge:t},o),a.push(o)}catch(e){r(`live VFS mount of ${o} failed: ${h(e)}`)}return{plugin:i,mounted:a}}function _(e,t){return Object.assign(Error(`${e}: ${t}`),{code:e})}function v(e,t){let n=e.getMutations();for(let e of n.deleted)t.rm(e);for(let e of n.created)e.isDirectory?t.mkdir(e.path):t.writeFile(e.path,e.content);for(let e of n.modified)t.writeFile(e.path,e.content);e.resetBaseline()}const y=new Set([`dev`,`proc`]),b=[`/usr`,`/bin`],ee=[`writeFile`,`mkdir`,`rm`,`rename`,`unlink`,`rmdir`,`symlink`,`chmod`,`utimes`];function te(e,t){let n={...e};for(let r of ee){let i=e[r];n[r]=(...n)=>{t.wasUsed()&&v(t,e);try{i.apply(e,n)}finally{t.invalidate()}}}return n}function ne(e,t){let n;try{n=e.readdir(`/`)}catch(e){return t(`cannot list the VFS root, nothing mounted: ${String(e)}`),[]}let r=n.filter(e=>e&&!e.includes(`/`)&&!y.has(e)).map(e=>`/${e}`);for(let e of b)r.includes(e)||r.push(e);let i=[];for(let t of r)try{e.stat(t).isDirectory&&i.push(t)}catch{}return i}function re(e,t,n={}){let{bridge:r,syncFs:i,warn:a}=t;i.wasUsed()&&v(i,r);let{plugin:o,mounted:s}=g(e,te(r,i),ne(r,a),a);try{e.chdir(n.cwd??t.cwd)}catch(e){a(`cannot chdir to ${n.cwd??t.cwd}: ${String(e)}`)}return{mounted:s,flush:()=>f(e,o),invalidate:()=>p(e,o)}}function x(e){if(!e||e===`/`)return`/`;e.startsWith(`/`)||(e=`/`+e);let t=e.split(`/`),n=[];for(let e of t)e!==``&&e!==`.`&&(e===`..`?n.pop():n.push(e));return`/`+n.join(`/`)}function S(e){let t=x(e);if(t===`/`)return`/`;let n=t.lastIndexOf(`/`);return n===0?`/`:t.slice(0,n)}function C(e){return Object.assign(Error(`ENOENT: no such file or directory, '${e}'`),{code:`ENOENT`})}function w(e){return Object.assign(Error(`ENOSYNC: file too large for sync access, '${e}' — use async readFile() instead`),{code:`ENOSYNC`})}function ie(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}var ae=class{tree=new Map;initialPaths=new Set;initialContent=new Map;initialKind=new Map;mkdtempCounter=0;tombstones=new Set;removedDirs=new Set;touched=!1;constructor(e){this.loadSnapshot(e)}loadSnapshot(e){this.tree=new Map,this.tombstones=new Set,this.removedDirs=new Set,this.initialPaths=new Set,this.initialContent=new Map,this.initialKind=new Map,this.tree.set(`/`,{content:new Uint8Array,isDirectory:!0}),this.initialPaths.add(`/`),this.initialKind.set(`/`,`directory`);for(let t of e.entries){let e=x(t.path);this.tree.set(e,{content:t.content,isDirectory:t.isDirectory,isSymbolicLink:t.isSymbolicLink,symlinkTarget:t.symlinkTarget,truncated:t.truncated,size:t.size,...t.partial?{partial:!0}:{}}),this.initialPaths.add(e),this.initialKind.set(e,this.entryKind(t)),!t.isDirectory&&!t.isSymbolicLink&&this.initialContent.set(e,t.content)}for(let t of e.entries){let e=S(x(t.path));for(;e!==`/`&&!this.tree.has(e);)this.tree.set(e,{content:new Uint8Array,isDirectory:!0}),this.initialPaths.add(e),this.initialKind.set(e,`directory`),e=S(e)}}wasUsed(){return this.touched}applySnapshot(e){this.loadSnapshot(e)}applySnapshotPreservingMutations(e){let t=this.getMutations();this.loadSnapshot(e);for(let e of t.deleted){if(this.tree.get(e)?.isDirectory){let t=e===`/`?`/`:e+`/`;for(let n of Array.from(this.tree.keys()))n!==e&&n.startsWith(t)&&this.tree.delete(n)}this.tree.delete(e)}for(let e of t.created)this.ensureParentDirs(e.path),this.tree.set(e.path,{content:e.content,isDirectory:e.isDirectory,isSymbolicLink:e.isSymbolicLink,symlinkTarget:e.symlinkTarget});for(let e of t.modified)this.ensureParentDirs(e.path),this.tree.set(e.path,{content:e.content,isDirectory:!1})}invalidate(){this.loadSnapshot({entries:[]})}resetBaseline(){this.initialPaths=new Set,this.initialContent=new Map,this.initialKind=new Map;for(let[e,t]of this.tree.entries())this.initialPaths.add(e),this.initialKind.set(e,this.entryKind(t)),!t.isDirectory&&!t.isSymbolicLink&&this.initialContent.set(e,t.content)}entryKind(e){return e.isSymbolicLink?`symlink`:e.isDirectory?`directory`:`file`}resolveEntry(e,t=!1){let n=x(e),r=n.split(`/`).filter(Boolean),i=[],a=new Set,o=0;if(r.length===0){let e=this.tree.get(`/`);return e?{path:`/`,entry:e}:void 0}for(;r.length>0;){let e=r.shift(),s=`/${[...i,e].join(`/`)}`,c=this.tree.get(s);if(!c)return;let l=r.length===0;if(c.isSymbolicLink&&!(t&&l)){if(a.has(s)||o++===40)throw Object.assign(Error(`ELOOP: too many symbolic links, '${n}'`),{code:`ELOOP`});a.add(s);let e=c.symlinkTarget??``;r=[...x(e.startsWith(`/`)?e:`${S(s)}/${e}`).split(`/`).filter(Boolean),...r],i=[];continue}if(!l&&!c.isDirectory)return;if(i.push(e),l)return{path:s,entry:c}}}ensureParentDirs(e){let t=S(e);t!==`/`&&(this.tree.has(t)||this.mkdir(t,!0,!0))}isPartial(e){return this.tree.get(x(e))?.partial===!0}hasPartialWithin(e){let t=x(e),n=t===`/`?`/`:`${t}/`;for(let[e,r]of this.tree)if(r.partial&&(e===t||e.startsWith(n)))return!0;return!1}commitWrite(e,t){this.writeFile(e,t);let n=x(e);for(this.initialContent.set(n,t);n!==`/`;){let e=this.tree.get(n);e&&(this.initialPaths.add(n),this.initialKind.set(n,this.entryKind(e))),n=S(n)}}readFile(e){this.touched=!0;let t=x(e),n=this.resolveEntry(t)?.entry;if(!n||n.isDirectory)throw C(t);if(n.truncated)throw w(t);return n.content}writeFile(e,t){this.touched=!0;let n=x(e);this.ensureParentDirs(n),this.tree.set(n,{content:t,isDirectory:!1}),this.tombstones.delete(n),this.removedDirs.delete(n)}exists(e){this.touched=!0;let t=x(e);return this.tree.has(t)}stat(e){this.touched=!0;let t=x(e),n=this.resolveEntry(t);if(!n)throw C(t);return this.toStat(n.entry)}lstat(e){this.touched=!0;let t=x(e),n=this.resolveEntry(t,!0);if(!n)throw C(t);return this.toStat(n.entry)}toStat(e){return{isFile:!e.isDirectory&&!e.isSymbolicLink,isDirectory:e.isDirectory,isSymbolicLink:e.isSymbolicLink===!0,size:e.isDirectory?0:e.size??e.content.byteLength}}readdir(e){this.touched=!0;let t=x(e),n=this.resolveEntry(t);if(!n?.entry.isDirectory)throw C(t);let r=n.path===`/`?`/`:n.path+`/`,i=new Set;for(let e of this.tree.keys()){if(e===t||e===`/`||!e.startsWith(r))continue;let n=e.slice(r.length).split(`/`)[0];n&&i.add(n)}return Array.from(i)}mkdir(e,t,n=!1){this.touched=!0;let r=x(e);if(this.tree.has(r)){if(this.tree.get(r).isDirectory)return;throw Object.assign(Error(`EEXIST: file already exists, '${r}'`),{code:`EEXIST`})}let i=S(r);if(i!==`/`&&!this.tree.has(i)){if(!t)throw C(r);this.mkdir(i,!0,n)}this.tree.set(r,{content:new Uint8Array,isDirectory:!0,...n?{partial:!0}:{}}),this.tombstones.delete(r),this.removedDirs.delete(r)}rm(e,t){this.touched=!0;let n=x(e),r=this.tree.get(n);if(!r)throw C(n);if(r.isDirectory&&!r.isSymbolicLink){let e=n===`/`?`/`:n+`/`,r=Array.from(this.tree.keys()).filter(t=>t!==n&&t.startsWith(e));if(r.length>0&&!t)throw Object.assign(Error(`ENOTEMPTY: directory not empty, '${n}'`),{code:`ENOTEMPTY`});for(let e of r)this.tree.delete(e),this.tombstones.add(e);t&&this.removedDirs.add(n)}this.tree.delete(n),this.tombstones.add(n)}copyFile(e,t){this.touched=!0;let n=x(e),r=this.tree.get(n);if(!r||r.isDirectory)throw C(n);if(r.truncated)throw w(n);let i=x(t);this.ensureParentDirs(i),this.tree.set(i,{content:r.content.slice(),isDirectory:!1}),this.tombstones.delete(i),this.removedDirs.delete(i)}rename(e,t){this.touched=!0;let n=x(e),r=this.tree.get(n);if(!r)throw C(n);let i=x(t);if(r.isDirectory){let e=n===`/`?`/`:n+`/`,t=Array.from(this.tree.keys()).filter(t=>t!==n&&t.startsWith(e));this.ensureParentDirs(i),this.tree.set(i,r),this.tree.delete(n);for(let e of t){let t=this.tree.get(e),r=i+e.slice(n.length);this.tree.set(r,t),this.tree.delete(e)}this.tombstones.add(n),this.removedDirs.add(n),this.tombstones.delete(i),this.removedDirs.delete(i);return}this.ensureParentDirs(i),this.tree.set(i,r),this.tree.delete(n),this.tombstones.add(n),this.tombstones.delete(i),this.removedDirs.delete(i)}unlink(e){this.touched=!0;let t=x(e),n=this.tree.get(t);if(!n)throw C(t);if(n.isDirectory&&!n.isSymbolicLink)throw Object.assign(Error(`EISDIR: illegal operation on a directory, unlink '${t}'`),{code:`EISDIR`});this.tree.delete(t),this.tombstones.add(t)}markRemoved(e,t=!1){this.touched=!0;let n=x(e);this.tombstones.add(n),t&&this.removedDirs.add(n)}isTombstoned(e){let t=x(e);if(this.tombstones.has(t))return!0;for(let e of this.removedDirs)if(t===e||t.startsWith(`${e}/`))return!0;return!1}mkdtemp(e){this.touched=!0;for(let t=0;t<100;t++){let t=`_${String(this.mkdtempCounter).padStart(6,`0`)}`;this.mkdtempCounter++;let n=x(e+t);if(!this.tree.has(n))return this.mkdir(n,!0),n}throw Error(`mkdtemp: failed to create unique directory after 100 attempts`)}getMutations(){let e=[],t=[],n=[];for(let[r,i]of this.tree.entries()){if(r===`/`)continue;if(!this.initialPaths.has(r)){e.push({path:r,content:i.content,isDirectory:i.isDirectory,isSymbolicLink:i.isSymbolicLink,symlinkTarget:i.symlinkTarget});continue}let a=this.initialKind.get(r);if(a!==void 0&&a!==this.entryKind(i)){n.push(r),e.push({path:r,content:i.content,isDirectory:i.isDirectory,isSymbolicLink:i.isSymbolicLink,symlinkTarget:i.symlinkTarget});continue}if(!i.isDirectory&&!i.isSymbolicLink){let e=this.initialContent.get(r);e&&!ie(e,i.content)&&t.push({path:r,content:i.content})}}for(let e of this.initialPaths)e!==`/`&&(this.tree.has(e)||n.push(e));return{created:e,modified:t,deleted:n}}};function T(e){let t=e;return!t||typeof t.isFile!=`boolean`||typeof t.isDirectory!=`boolean`||typeof t.size!=`number`?null:{isFile:t.isFile,isDirectory:t.isDirectory,isSymbolicLink:t.isSymbolicLink,size:t.size,...typeof t.mode==`number`?{mode:t.mode}:{},...typeof t.mtimeMs==`number`?{mtimeMs:t.mtimeMs}:{},...typeof t.ino==`number`?{ino:t.ino}:{}}}new TextEncoder;const oe=new TextDecoder;function se(e,t){switch(e){case 1:return{ok:!0,kind:`bytes`,bytes:t};case 3:return{ok:!0,kind:`void`};case 2:try{return{ok:!0,kind:`json`,json:JSON.parse(oe.decode(t))}}catch{return{ok:!1,errno:`EIO`,message:`sync-sab: malformed json payload`}}case 4:try{let e=JSON.parse(oe.decode(t)),n=typeof e.errno==`string`&&/^E[A-Z]+$/.test(e.errno)?e.errno:`EIO`;return{ok:!1,errno:n,message:String(e.message??n)}}catch{return{ok:!1,errno:`EIO`,message:`sync-sab: malformed errno payload`}}default:return{ok:!1,errno:`EIO`,message:`sync-sab: unknown status ${e}`}}}function ce(e){if(e.byteLength<4160)throw Error(`sync-sab: buffer too small (${e.byteLength} < 4160)`);return{header:new Int32Array(e,0,16),window:new Uint8Array(e,64)}}function E(e,t,n={}){let{header:r,window:i}=ce(e),a=n.wait??((e,t,n,r)=>Atomics.wait(e,t,n,r)),o=n.now??(()=>performance.now()),s=0;function c(e,t,n){for(;;){let i=t-o();if(i<=0)throw _(`ETIMEDOUT`,n);if(a(r,0,1,i),Atomics.load(r,0)===2&&Atomics.load(r,1)===e)return;Atomics.load(r,0)===2&&Atomics.store(r,0,1)}}return{call(e,n,a){let l=++s,u=o()+n,d=null,f=0,p=0;try{for(;;){Atomics.store(r,0,1);let n=p===0?{type:`sync-sab-req`,id:l,req:e}:{type:`sync-sab-next`,id:l,offset:p};try{t.postMessage(n)}catch{throw _(`EIO`,a)}c(l,u,a);let o=Atomics.load(r,3),s=Atomics.load(r,4);if(Atomics.load(r,5)!==p||s<0||o<0||p+s>o)throw _(`EIO`,a);if(d===null&&(f=Atomics.load(r,2),d=new Uint8Array(o)),d.set(i.subarray(0,s),p),p+=s,p>=o)break;if(s===0)throw _(`EIO`,a)}}finally{Atomics.store(r,0,0)}return se(f,d)}}}function D(e,t){return _(e,`sync-sab bridge, '${t}'`)}function O(e,t={}){let n=t.timeoutMs??25e3;function r(t,r){let i=e.call(t,n,`sync-sab bridge, '${r}'`);if(!i.ok)throw D(i.errno,r);return i}function i(e,t){let n=r(e,t);if(n.ok&&n.kind===`bytes`)return n.bytes;throw D(`EIO`,t)}function a(e,t){let n=r(e,t);if(n.ok&&n.kind===`json`)return n.json;throw D(`EIO`,t)}return{readFile:e=>i({op:`read`,path:e},e),writeFile:(e,t)=>{r({op:`write`,path:e,body:t},e)},stat:e=>{let t=T(a({op:`stat`,path:e},e));if(!t)throw D(`EIO`,e);return t},lstat:e=>{let t=T(a({op:`lstat`,path:e},e));if(!t)throw D(`EIO`,e);return t},readdir:e=>{let t=a({op:`readdir`,path:e},e);if(!Array.isArray(t)||!t.every(e=>typeof e==`string`))throw D(`EIO`,e);return t},readdirStat:e=>{let t=a({op:`readdir-stat`,path:e},e);if(!Array.isArray(t))throw D(`EIO`,e);return t.map(t=>{if(!Array.isArray(t)||typeof t[0]!=`string`)throw D(`EIO`,e);if(t[1]===null)return[t[0],null];let n=T(t[1]);if(!n)throw D(`EIO`,e);return[t[0],n]})},exists:e=>{let t=a({op:`exists`,path:e},e);if(typeof t!=`boolean`)throw D(`EIO`,e);return t},mkdir:e=>{r({op:`mkdir`,path:e},e)},rm:e=>{r({op:`rm`,path:e},e)},rename:(e,t)=>{r({op:`rename`,path:e,arg2:t},e)},unlink:e=>{r({op:`unlink`,path:e},e)},rmdir:e=>{r({op:`rmdir`,path:e},e)},symlink:(e,t)=>{r({op:`symlink`,path:t,arg2:e},t)},readlink:e=>{let t=a({op:`readlink`,path:e},e);if(typeof t!=`string`)throw D(`EIO`,e);return t},chmod:(e,t)=>{r({op:`chmod`,path:e,mode:t},e)},utimes:(e,t,n)=>{r({op:`utimes`,path:e,atimeMs:t,mtimeMs:n},e)}}}const le={EACCES:2,EADDRINUSE:3,EADDRNOTAVAIL:4,EAFNOSUPPORT:5,EAGAIN:6,ECONNREFUSED:14,EINPROGRESS:26,EISCONN:30,ENETUNREACH:40,ENOTCONN:53,ENOTSOCK:57,EPROTONOSUPPORT:66,EOPNOTSUPP:138,EBADF:8,ECHILD:12,EINTR:27,EINVAL:28,EIO:29,EMFILE:33,ENOENT:44,ENOSYS:52,ENOTTY:59,ENXIO:60,EPERM:63,EPIPE:64,ESPIPE:70,ESRCH:71};function k(e){return le[e]??29}const A=2048,j=49663,M=/^\/dev\/(?:ptmx|pts\/(\d+))$/;function N(e){return M.test(e)}function ue(e){let t=M.exec(e)?.[1],n=new Date;return{dev:22,ino:t===void 0?2:3+Number(t),mode:t===void 0?8630:8592,nlink:1,uid:1e3,gid:1e3,rdev:t===void 0?1282:34816|Number(t),size:0,blksize:4096,blocks:0,atime:n,mtime:n,ctime:n}}var P=class extends Error{status;constructor(e){super(`exit ${e}`),this.status=e}},F=class extends Error{code;constructor(e){super(e),this.code=e}};function I(e){return e.sliccKernelSocket===!0&&!!(e.flags&2048)}var de=class{Fs;sys;options;refs=new Map;socketRoot;sockets=0;constructor(e,t,n={}){this.Fs=e,this.sys=t,this.options=n}attach(e,t,n){this.refs.set(t,(this.refs.get(t)??0)+1),e.sliccKernelFd=t,e.stream_ops=this.ops(t,e.stream_ops),n??this.sys.isatty?.(t)??!1?e.tty=this.ttyOps(t):delete e.tty}nameTerminal(e){let t=e.sliccKernelFd;if(!e.tty||t===void 0)return;let n=this.sys.ttyName?.(t);n&&this.nameStream(e,n)}nameStream(e,t){e.path=t,typeof this.Fs.stat==`function`&&(e.stream_ops={...e.stream_ops,getattr:()=>this.Fs.stat?.(t)??{}})}ttyOps(e){return{ops:{ioctl_tcgets:()=>this.call(()=>this.sys.tcgets?.(e)),ioctl_tcsets:(t,n,r)=>this.call(()=>(this.sys.tcsets?.(e,r),0)),ioctl_tiocgwinsz:()=>this.call(()=>this.sys.winsize?.(e)??[24,80]),fsync:()=>{}}}}attachFile(e,t){this.attach(e,t,!1),e.sliccKernelFile=!0,e.stream_ops={...e.stream_ops,llseek:(e,n,r)=>this.call(()=>this.sys.seek(t,n,r)),fsync:()=>this.call(()=>(this.sys.flush(t),0))}}useControllingTerminal(){if(typeof this.Fs.open!=`function`)return;this.usePtyPaths();let e=this.Fs.open.bind(this.Fs);this.Fs.open=(t,n,r)=>{let i=this.openPty(e,t,n,r);if(i)return i;let a=e(t,n,r);if(!a.tty)return a;if(a.path===`/dev/tty`&&this.sys.openTty){let e;try{e=this.call(()=>this.sys.openTty?.())}catch(e){throw this.Fs.closeStream(a.fd),e}return this.attach(a,e,!0),a}let o;try{o=a.path?this.openNamedTerminal(a.path):void 0}catch(e){throw this.Fs.closeStream(a.fd),e}if(o!==void 0)return this.attach(a,o,!0),a;let s=this.stdioTerminal();return s!==void 0&&this.attach(a,s,!0),a}}openPty(e,t,n,r){let i=/^\/dev\/pts\/(\d+)$/.exec(t);if(t!==`/dev/ptmx`&&!i)return;let{openPty:a,openPts:o}=this.sys;if(!a||!o)return;let s=this.call(()=>i?o(Number(i[1]),!!(n&256)):a()),c;try{c=e(`/dev/null`,n&-705,r)}catch(e){throw this.sys.close(s),e}return this.attach(c,s,!0),this.nameStream(c,t),c}usePtyPaths(){let e=this.Fs;for(let t of[`chown`,`lchown`,`chmod`,`lchmod`]){let n=e[t];typeof n==`function`&&(e[t]=(t,...r)=>N(t)?this.existingPty(t):n.call(e,t,...r))}for(let t of[`stat`,`lstat`]){let n=e[t];typeof n==`function`&&(e[t]=(t,...r)=>N(t)?(this.existingPty(t),ue(t)):n.call(e,t,...r))}}existingPty(e){let t=M.exec(e)?.[1];if(!(t===void 0?this.sys.openPty!==void 0:this.sys.ptyNumbers?.().includes(Number(t))??!1))throw new this.Fs.ErrnoError(k(`ENOENT`))}openNamedTerminal(e){let{openTty:t}=this.sys;if(t)try{return t.call(this.sys,e)}catch(e){return e instanceof F&&e.code===`ENXIO`?void 0:this.call(()=>{throw e})}}stdioTerminal(){for(let e of[0,1,2]){let t=this.Fs.getStream(e);if(t?.sliccKernelFd!==void 0&&t.tty)return t.sliccKernelFd}}attachSocket(e,t){this.attach(e,t,!1),e.sliccKernelSocket=!0}socketStream(e){let t=this.Fs;if(!t.mount||!t.createNode||!t.createStream){let t=this.Fs.open(`/dev/null`,2);return t.flags=e,t}this.socketRoot??=t.mount({mount:()=>t.createNode(null,`/`,16895,0)},{},null);let n=++this.sockets,r=t.createNode(this.socketRoot,`socket:${n}`,j,0),i=new Date,a={dev:0,ino:n,mode:j,nlink:1,uid:0,gid:0,rdev:0,size:0},o={atime:i,mtime:i,ctime:i,blksize:4096,blocks:0};return r.node_ops={getattr:()=>({...a,...o})},t.createStream({node:r,flags:e,seekable:!1,position:0,stream_ops:{}})}usePipes(e){let t=e.createPipe.bind(e);e.createPipe=()=>{let[e,n]=this.call(()=>this.sys.pipe()),r;try{r=t()}catch(t){for(let t of[e,n])try{this.sys.close(t)}catch{}throw t}return this.attach(this.Fs.getStream(r.readable_fd),e,!1),this.attach(this.Fs.getStream(r.writable_fd),n,!1),r}}restarting(e){for(;;)try{return e()}catch(e){if(!(e instanceof F&&e.code===`EINTR`&&this.options.restartable?.()))throw e}}call(e){try{return e()}catch(e){throw e instanceof F?new this.Fs.ErrnoError(k(e.code)):e}}ops(e,t){return{...t,llseek:()=>this.call(()=>{throw new F(`ESPIPE`)}),read:(t,n,r,i)=>this.call(()=>{let a=I(t)?{nonblock:!0}:void 0,o=this.restarting(()=>this.sys.read(e,i,a));return n.set(o,r),o.length}),write:(t,n,r,i)=>{try{let a=n.slice(r,r+i),o=I(t)?{nonblock:!0}:void 0;return this.restarting(()=>this.sys.write(e,a,o))}catch(e){if(e instanceof F&&e.code===`EPIPE`&&!this.options.sigpipe?.())throw new P(141);return this.call(()=>{throw e})}},fsync:()=>0,poll:()=>{let t=this.call(()=>this.sys.poll(e)),n=0;return t.readable&&(n|=65),t.writable&&(n|=260),t.hangup&&(n|=t.readable?16:8),n},dup:n=>{t.dup?.(n),this.refs.set(e,(this.refs.get(e)??0)+1)},close:n=>{try{t.close?.(n)}catch{}let r=(this.refs.get(e)??1)-1;if(r>0){this.refs.set(e,r);return}this.refs.delete(e);try{this.sys.close(e)}catch{}}}}};function L(e){return e.ok?0:-k(e.errno)}function R(e){return e.ok?e.kind===`json`&&typeof e.json==`number`?e.json:-k(`EIO`):-k(e.errno)}function fe(e,t){let n=[],r=new Uint8Array(65536);try{for(let i=e.read(t,r,0,r.length);i>0;)n.push(r.slice(0,i)),i=e.read(t,r,0,r.length)}catch{}let i=new Uint8Array(n.reduce((e,t)=>e+t.length,0)),a=0;for(let e of n)i.set(e,a),a+=e.length;return i}function z(e,t,n,r,i){let a=t=>e.getStream(t)?.sliccKernelFd,o=n.map(a),s=r.map(a),c=t.call({op:`fd-select`,read:o,write:s,timeoutMs:i},1/0,`select`);if(!c.ok)return-k(c.errno);let l=c.kind===`json`?c.json:{read:[],write:[]};return{read:n.filter((e,t)=>l.read.includes(o[t])),write:r.filter((e,t)=>l.write.includes(s[t]))}}function pe(e,t,n){let r=t=>{let n=e.getStream(t);return n?n.stream_ops.poll?n.stream_ops.poll(n):5:32};return{read:t.filter(e=>r(e)&57),write:n.filter(e=>r(e)&44)}}function me(e){let{transport:t,Fs:n}=e,r=new Map,i=(e,n)=>t.call(e,1/0,n),a=(e,t,r)=>{let i=e>=0?n.getStream(e):null;return i?(r?.(i),i.sliccKernelFd===void 0?i.path===`/dev/null`?{none:!0}:t===0?{input:fe(n,i)}:{capture:!0}:{fd:i.sliccKernelFd}):{none:!0}},o=(n,r,i=0)=>{let a={op:`proc-wait`,pid:n,nohang:r,...i&2?{untraced:!0}:{},...i&8?{continued:!0}:{}},o=t.call(a,1/0,`proc-wait ${n}`);for(;!o.ok&&o.errno===`EINTR`&&e.restartable?.();)o=t.call(a,1/0,`proc-wait ${n}`);if(!o.ok)return-k(o.errno);let s=o.kind===`json`?o.json:[0,0];return s[0]>0&&e.afterChild(),[s[0],s[1]]},s=(e,r,i)=>{let a=t.call({op:`proc-captured`,pid:e,slot:r},1/0,`proc-captured ${e}`),o=n.getStream(i);a.ok&&a.kind===`bytes`&&a.bytes.length>0&&o&&n.write(o,a.bytes,0,a.bytes.length)};return{spawn(i,c,l,u,d,f){e.beforeSpawn();let p=e.stdioPromoter?.(),m=[0,1,2].map(e=>a(d[e]??-1,e,p)),h=e.inherit?.(f)??[],g=t.call({op:`proc-spawn`,file:i,argv:c,env:l??e.env,cwd:u??n.cwd(),stdio:m,...h.length>0?{inherit:h}:{}},1/0,`proc-spawn ${i}`);if(!g.ok)return-k(g.errno);let _=g.kind===`json`?g.json:0,v=[1,2].filter(e=>`capture`in m[e]);if(v.length===0)return _;let y=o(_,!1);if(typeof y==`number`)return y;for(let e of v)s(_,e,d[e]);return r.set(_,y[1]),_},fork(r){e.beforeSpawn();let i=e.describeFork(),a=t.call({op:`proc-fork`,state:{...r,streams:i,cwd:n.cwd()}},1/0,`proc-fork`);return a.ok?a.kind===`json`?a.json:-k(`EIO`):-k(a.errno)},select(e,r,i){let a=e=>n.getStream(e)?.sliccKernelFd,o=e=>a(e)===void 0;if(![...e,...r].some(o))return z(n,t,e,r,i);let s=i<0?1/0:Date.now()+i,c=e.filter(e=>!o(e)),l=r.filter(e=>!o(e));for(;;){let i=pe(n,e.filter(o),r.filter(o)),a=i.read.length>0||i.write.length>0?0:Math.min(20,Math.max(0,s-Date.now())),u=z(n,t,c,l,a);if(typeof u==`number`)return u;let d={read:[...i.read,...u.read],write:[...i.write,...u.write]};if(d.read.length>0||d.write.length>0||Date.now()>=s)return d}},execWait(n){let r=t.call({op:`proc-exec`,pid:n},1/0,`exec ${n}`);return r.ok?(e.afterChild(),r.kind===`json`?r.json[1]:0):-k(r.errno)},pause(){return L(i({op:`sig-pause`},`pause`))},kill(t,n){return t===e.pid?(n!==0&&e.raise?.(n),0):L(i({op:`proc-kill`,pid:t,sig:n},`kill ${t}`))},setpgid:(e,t)=>L(i({op:`proc-setpgid`,pid:e,pgid:t},`setpgid`)),setsid:()=>R(i({op:`proc-setsid`},`setsid`)),getpgid:e=>R(i({op:`proc-getpgid`,pid:e},`getpgid`)),getsid:e=>R(i({op:`proc-getsid`,pid:e},`getsid`)),tcgetpgrp(e){let t=n.getStream(e)?.sliccKernelFd;return t===void 0?-k(`ENOTTY`):R(i({op:`tty-pgrp-get`,fd:t},`tcgetpgrp`))},tcsetpgrp(e,t){let r=n.getStream(e)?.sliccKernelFd;return r===void 0?-k(`ENOTTY`):L(i({op:`tty-pgrp-set`,fd:r,pgrp:t},`tcsetpgrp`))},wait(e,t,n){let i=e>0?r.has(e)?e:void 0:r.keys().next().value;if(i!==void 0){let e=r.get(i);return r.delete(i),[i,e]}return o(e,t,n)}}}function he(e){let t=e?.code;if(typeof t==`string`)return-k(t);throw e}function ge(e,t){return(n,r,i)=>{let a=r>>>0;if(a!==2147767344&&a!==1074025521&&a!==21518&&a!==21524&&a!==21536)return e(n,r,i);let o=t.fs()?.getStream(n)?.sliccKernelFd;if(o===void 0)return e(n,r,i);let s=t.heap();if(!s)return-k(`EFAULT`);let c=(s[i>>2]??0)>>>0;try{return _e(a,o,c,s,t.kernel)}catch(e){return he(e)}}}function _e(e,t,n,r,i){switch(e){case 2147767344:return r[n>>2]=i.ptyNumber(t),0;case 1074025521:return i.ptyLock(t,(r[n>>2]??0)!==0),0;case 21518:return i.setControllingTerminal(t),0;case 21536:return i.setPacketMode(t,(r[n>>2]??0)!==0),0;default:{let e=r[n>>2]??0;return i.setWinsize(t,e&65535,e>>>16&65535),0}}}const B=524288;function V(e){return e.sliccCloexec===!0}function H(e,t){t?e.sliccCloexec=!0:delete e.sliccCloexec}const U=new WeakSet;function W(e){if(!U.has(e)){if(U.add(e),typeof e.dupStream==`function`){let t=e.dupStream.bind(e);e.dupStream=(e,n)=>{let r=t(e,n);return H(r,!1),r}}if(typeof e.open==`function`){let t=e.open.bind(e);e.open=(e,n,r)=>{let i=typeof n==`number`&&!!(n&524288),a=t(e,i?n&-524289:n,r);return H(a,i),a}}}}function G(e){return(t,n)=>{let r=e.fs()?.getStream(t);r&&H(r,n)}}function ve(e,t){let n=G(t);return(r,i,a)=>{if(i===1030){let t=e(r,0,a);return t>=0&&n(t,!0),t}if(i===3){let t=e(r,i,a);return t<0?t:t&-524289}if(i!==1&&i!==2)return e(r,i,a);let o=t.fs()?.getStream(r);if(!o)return-k(`EBADF`);if(i===1)return+!!V(o);let s=t.heap()?.[a>>2];return s===void 0?-k(`EINVAL`):(H(o,!!(s&1)),0)}}function ye(e,t){let n=G(t);return(r,i)=>{let a=e(r,i&-524289),o=t.heap();return a===0&&i&524288&&o&&(n(o[r>>2],!0),n(o[(r>>2)+1],!0)),a}}function K(e,t,n){let r=G(n);return(...n)=>{let i=!!((n[t]??0)&B);i&&(n[t]=n[t]&-524289);let a=e(...n);return a>=0&&r(a,i),a}}const q={fcntl:`__syscall_fcntl64`,pipe2:`__syscall_pipe2`,dup3:`__syscall_dup3`,socket:`__syscall_socket`,accept4:`__syscall_accept4`,ioctl:`__syscall_ioctl`};function be(e){let{pty:t}=e;return{fcntl:t=>ve(t,e),pipe2:t=>ye(t,e),dup3:t=>K(t,2,e),socket:t=>K(t,1,e),accept4:t=>K(t,3,e),...t?{ioctl:n=>ge(n,{fs:e.fs,heap:e.heap,kernel:t})}:{}}}function xe(e,t,n){let r=Object.keys(q);return r.find(t=>e[t]!==void 0&&e[t]===n)||(typeof n==`function`?r.find(n=>e[n]!==void 0&&q[n]===t):void 0)}function Se(e,t,n){if(!t)return;let r=be(n),i=new Set;for(let n of Object.values(e))if(!(!n||typeof n!=`object`||i.has(n))){i.add(n);for(let[e,i]of Object.entries(n)){let a=xe(t,e,i),o=a&&r[a];o&&(n[e]=o(i))}}}function Ce(e,t){let n=e=>e instanceof WebAssembly.Memory,r=Object.values(e.exports).find(n);if(r)return r;for(let e of Object.values(t)){let t=Object.values(e??{}).find(n);if(t)return t}}function we(e,t){let n=[];for(let r of`${e.startsWith(`/`)?``:t}/${e}`.split(`/`))r!==``&&r!==`.`&&(r===`..`?n.pop():n.push(r));let r=`/${n.join(`/`)}`,i=[`/dev/stdin`,`/dev/stdout`,`/dev/stderr`].indexOf(r);if(i>=0)return i;let a=/^\/(?:dev|proc\/self)\/fd\/(\d+)$/.exec(r);return a?Number(a[1]):void 0}function J(e,t){let n=new Date;return{dev:1,ino:t,mode:e,nlink:1,uid:0,gid:0,rdev:0,size:0,atime:n,mtime:n,ctime:n,blksize:4096,blocks:0}}function Te(e){let t;try{t=e.lookupPath?.(`/proc/self/fd`,{follow:!0})?.node}catch{return}let n=t?.node_ops,r=n?.lookup;!t||!r||n.getattr||(t.node_ops={...n,getattr:()=>J(16749,1),lookup:(e,t)=>{let n=r(e,t);return n.node_ops={...n.node_ops,getattr:()=>J(41408,n.id??0)},n}})}function Ee(e){if(typeof e.open!=`function`)return;try{e.symlink?.(`/proc/self/fd`,`/dev/fd`)}catch{}Te(e);let t=t=>typeof t==`string`?we(t,e.cwd()):void 0,n=t=>{let n=e.getStream(t);if(!n)throw new e.ErrnoError(k(`EBADF`));return n},r=e.open.bind(e);e.open=(i,a,o)=>{let s=t(i);if(s===void 0)return r(i,a,o);let c=e.dupStream(n(s),-1);return H(c,typeof a==`number`&&!!(a&524288)),c};let{stat:i,fstat:a}=e;typeof i==`function`&&typeof a==`function`&&(e.stat=(r,o)=>{let s=o?void 0:t(r);return s===void 0?i.call(e,r,o):(n(s),a.call(e,s))})}const Y=`/dev/slicc-fd`;function De(e,t){let n=t.node;return n.live!==void 0&&e.isFile(n.mode)}function Oe(e){let t=e.node.live;if(t?.orphan)return t.data?.slice(0,t.len??t.data.length)??new Uint8Array}function X(e,t,n,r){let i=new Map;return a=>{if(a.sliccKernelFd!==void 0||!De(e,a))return;let o=i.get(a.shared);if(o===void 0){let e=Oe(a);o=t.openVfs(r(a),a.flags,a.position,e===void 0?void 0:{contents:e,orphan:!0}),i.set(a.shared,o)}n.attachFile(a,o)}}function ke(e,t,n,r){let i=X(e,t,n,r),a=[];for(let t of e.streams)if(t){if(i(t),t.sliccKernelFd!==void 0)a.push(Ae(t,t.sliccKernelFd));else if(t.path){let e=t.flags|(V(t)?B:0);a.push({fd:t.fd,path:t.path,flags:e})}}return a}function Ae(e,t){let n=V(e)?{cloexec:!0}:{};if(e.sliccKernelSocket)return{fd:e.fd,kernel:t,kind:`socket`,flags:e.flags,...n};let r=e.sliccKernelFile?`file`:e.tty?`tty`:`stream`;return{fd:e.fd,kernel:t,kind:r,...n}}function je(e,t,n,r,i=[]){let a=new Map;for(let t of e.streams)t&&a.set(t.fd,{stream:t,cloexec:V(t)});for(let[e,t]of i){if(e<=2)continue;let n=t>=0?a.get(t):void 0;n?a.set(e,{stream:n.stream,cloexec:!1}):a.delete(e)}let o=new Map;for(let[e,{stream:t,cloexec:n}]of a)e>2&&!n&&o.set(e,t);let s=X(e,t,n,r),c=[];for(let[e,t]of o){if(s(t),t.sliccKernelFd===void 0)continue;let n=t.sliccKernelSocket?{flags:t.flags}:{};c.push({fd:e,kernel:t.sliccKernelFd,...n})}return c}function Z(e,t,n){if(t.fd===n)return t;let r=e.dupStream(t,n);return e.closeStream(t.fd),r}function Me(e,t,n){return n.kind===`socket`?t.socketStream(n.flags??2):n.kind===`tty`?e.open(`/dev/tty`,2):n.kind===`stream`?e.open(`/dev/null`,2):(e.mkdirTree(Y),e.open(`${Y}/${n.fd}`,66))}let Ne=1073741824;const Pe=new WeakMap;function Fe(e,t,n){let r=Pe.get(t);r||Pe.set(t,r=new Map);let i=r.get(n);i===void 0&&r.set(n,i=Ne++);let a=e.node,o=i;e.stream_ops={...e.stream_ops,getattr:()=>({...a.node_ops?.getattr?.(a),mode:4480,ino:o,size:0})}}function Ie(e,t,n){let r=Z(e,Me(e,t,n),n.fd);return n.kind===`file`?t.attachFile(r,n.kernel):n.kind===`socket`?t.attachSocket(r,n.kernel):t.attach(r,n.kernel,n.kind===`tty`),n.kind===`tty`&&t.nameTerminal(r),n.kind===`stream`&&Fe(r,t,n.desc===void 0?`k${n.kernel}`:`d${n.desc}`),H(r,n.cloexec===!0),r}function Le(e,t,n){for(let t of e.streams)t&&e.closeStream(t.fd);for(let r of n)try{`kernel`in r?Ie(e,t,r):H(Z(e,e.open(r.path,r.flags&-705),r.fd),!!(r.flags&B))}catch{}}const Q={HUP:1,INT:2,QUIT:3,ILL:4,TRAP:5,ABRT:6,BUS:7,FPE:8,KILL:9,USR1:10,SEGV:11,USR2:12,PIPE:13,ALRM:14,TERM:15,STKFLT:16,CHLD:17,CONT:18,STOP:19,TSTP:20,TTIN:21,TTOU:22,URG:23,XCPU:24,XFSZ:25,VTALRM:26,PROF:27,WINCH:28,POLL:29,PWR:30,SYS:31};Q.CHLD,Q.URG,Q.WINCH,Q.STOP,Q.TSTP,Q.TTIN,Q.TTOU;function Re(e){return 1<<e}function ze(e){let t=[];for(let n=1;n<=31;n++)e&Re(n)&&t.push(n);return t}Q.INT,Q.TERM,Q.KILL,Q.STOP,Q.CONT;var Be=class{raw;header;hooks;reported={caught:0,ignored:0};restart=0;lastDelivered=0;depth=0;reporting=!1;constructor(e,t,n){this.raw=e,this.header=t,this.hooks=n}transport(){return{call:(e,t,n)=>{this.report(),this.depth++;try{let r=this.raw.call(e,t,n);return this.deliver(),r}finally{this.depth--}}}}restartable(){return this.lastDelivered!==0&&(this.lastDelivered&~this.restart)===0}report(){if(this.reporting)return;this.reporting=!0;let e;try{e=this.hooks.masks()}catch{e=null}finally{this.reporting=!1}if(!e)return;this.restart=e.restart;let{caught:t,ignored:n}=e;(t!==this.reported.caught||n!==this.reported.ignored)&&(this.reported={caught:t,ignored:n},this.raw.call({op:`sig-mask`,caught:t,ignored:n},1/0,`sig-mask`))}deliver(){let e=Atomics.exchange(this.header,8,0);this.depth<=1&&(this.lastDelivered=e);for(let t of ze(e))this.hooks.raise(t)}};function Ve(e){if(e instanceof F)return-k(e.code);let t=e?.errno;if(typeof t==`number`)return-t;throw e}function He(e,t){if(t.family!==`unix`||!t.path||t.path.startsWith(`\0`))return;let n=e,r;try{r=e.open(t.path,193,493)}catch(e){throw e?.errno===k(`EEXIST`)?new F(`EADDRINUSE`):e}return e.close?e.close(r):e.closeStream(r.fd),{remove:()=>n.unlink?.(t.path)}}function Ue(e){let{transport:t,Fs:n,sys:r,streams:i}=e,a=e=>{let n=t.call(e,1/0,e.op);if(!n.ok)throw new F(n.errno);return n},o=e=>{let t=a(e);return t.ok&&t.kind===`json`?t.json:void 0},s=e=>(a(e),0),c=t=>{for(;;)try{return t()}catch(t){if(!(t instanceof F&&t.code===`EINTR`&&e.restartable?.()))return Ve(t)}},l=e=>{let t=n.getStream(e);if(!t)throw new F(`EBADF`);if(!t.sliccKernelSocket||t.sliccKernelFd===void 0)throw new F(`ENOTSOCK`);return t},u=e=>l(e).sliccKernelFd,d=(e,t,n=!1)=>{let a;try{a=i.socketStream(2|(t?A:0))}catch(t){throw r.close(e),t}return i.attachSocket(a,e),H(a,n),a.fd};return{socket:(e,t,n)=>c(()=>d(o({op:`sock-open`,domain:e}),t,n)),socketpair:(e,t,i)=>c(()=>{let[a,s]=o({op:`sock-pair`,domain:e}),c;try{c=d(a,t,i)}catch(e){throw r.close(s),e}try{return[c,d(s,t,i)]}catch(e){let t=n.getStream(c);throw t&&t.stream_ops.close?.(t),n.closeStream(c),e}}),bind:(e,t)=>c(()=>{let r=He(n,t);try{return s({op:`sock-bind`,fd:u(e),addr:t})}catch(e){throw r?.remove(),e}}),listen:(e,t)=>c(()=>s({op:`sock-listen`,fd:u(e),backlog:t})),accept:(e,t,n)=>c(()=>{let r=l(e),i={op:`sock-accept`,fd:r.sliccKernelFd,nonblock:!!(r.flags&A)},a=o(i);return{fd:d(a.fd,t,n),peer:a.peer}}),connect:(e,t)=>c(()=>{let n=l(e),r=!!(n.flags&A);return s({op:`sock-connect`,fd:n.sliccKernelFd,addr:t,nonblock:r})}),shutdown:(e,t)=>c(()=>s({op:`sock-shutdown`,fd:u(e),how:t})),name:(e,t)=>c(()=>o({op:`sock-name`,fd:u(e),peer:t})),getopt:(e,t,n)=>c(()=>({value:o({op:`sock-getopt`,fd:u(e),level:t,name:n})})),setopt:(e,t,n,r)=>c(()=>s({op:`sock-setopt`,fd:u(e),level:t,name:n,value:r})),send:(t,n,i)=>c(()=>{let a=l(t),o=i.dontwait===!0||!!(a.flags&2048);try{return r.write(a.sliccKernelFd,n,{nonblock:o})}catch(t){throw t instanceof F&&t.code===`EPIPE`&&!i.nosignal&&!e.sigpipe?.()?new P(141):t}}),recv:(e,t,n)=>c(()=>{let i=l(e),a=n.dontwait===!0||!!(i.flags&2048);return r.read(i.sliccKernelFd,t,{nonblock:a,peek:n.peek===!0})})}}function We(e){let{stat:t,fstat:n}=e,r=e=>({...e,uid:1e3,gid:1e3});typeof t==`function`&&(e.stat=(n,i)=>r(t.call(e,n,i))),typeof n==`function`&&(e.fstat=t=>r(n.call(e,t)))}function Ge(e){let t=(t,n)=>{let r=e.call(t,1/0,n);if(!r.ok)throw new F(r.errno);return r},n=e=>e.ok&&e.kind===`json`?e.json:void 0;return{read(e,n,r){let i={...r?.nonblock?{nonblock:!0}:{},...r?.peek?{peek:!0}:{}},a=t({op:`fd-read`,fd:e,max:n,...i},`fd-read ${e}`);return a.ok&&a.kind===`bytes`?a.bytes:new Uint8Array},write(e,r,i){let a={op:`fd-write`,fd:e,body:r,...i?.nonblock?{nonblock:!0}:{}},o=n(t(a,`fd-write ${e}`));return typeof o==`number`?o:r.length},close(e){t({op:`fd-close`,fd:e},`fd-close ${e}`)},pipe(){return n(t({op:`fd-pipe`},`fd-pipe`))},poll(e){return n(t({op:`fd-poll`,fd:e},`fd-poll ${e}`))},openVfs(e,r,i,a){return n(t({op:`fd-open-vfs`,path:e,flags:r,position:i,...a?.contents===void 0?{}:{contents:a.contents},...a?.orphan?{orphan:!0}:{},...a?.truncate?{truncate:!0}:{},...a?.create?{create:!0}:{}},`fd-open-vfs ${e}`))},seek(e,r,i){return n(t({op:`fd-seek`,fd:e,offset:r,whence:i},`fd-seek ${e}`))},flush(e){t({op:`fd-flush`,fd:e},`fd-flush ${e}`)},pread(e,n,r){let i=t({op:`fd-pread`,fd:e,max:n,offset:r},`fd-pread ${e}`);return i.ok&&i.kind===`bytes`?i.bytes:new Uint8Array},isatty(e){return n(t({op:`fd-info`,fd:e},`fd-info ${e}`))?.tty===!0},ttyName(e){return n(t({op:`fd-info`,fd:e},`fd-info ${e}`))?.name},openTty(e){return n(t(e===void 0?{op:`fd-open-tty`}:{op:`fd-open-tty`,name:e},`fd-open-tty ${e??``}`))},tcgets(e){return n(t({op:`tty-get`,fd:e},`tty-get ${e}`))},tcsets(e,n){t({op:`tty-set`,fd:e,termios:n},`tty-set ${e}`)},winsize(e){return n(t({op:`tty-winsz`,fd:e},`tty-winsz ${e}`))},openPty(){return n(t({op:`pty-open`},`pty-open`))},openPts(e,r){return n(t({op:`pty-slave-open`,n:e,noctty:r},`pty-slave-open ${e}`))},ptyNumbers(){return n(t({op:`pty-list`},`pty-list`))},ptyNumber(e){return n(t({op:`pty-number`,fd:e},`pty-number ${e}`))},ptyLock(e,n){t({op:`pty-lock`,fd:e,lock:n},`pty-lock ${e}`)},setControllingTerminal(e){t({op:`pty-ctty`,fd:e},`pty-ctty ${e}`)},setPacketMode(e,n){t({op:`pty-packet`,fd:e,on:n},`pty-packet ${e}`)},setWinsize(e,n,r){t({op:`pty-winsz-set`,fd:e,rows:n,cols:r},`pty-winsz-set ${e}`)}}}function Ke(e,t,n){Ie(e,t,{...n,kernel:n.fd})}function qe(e,t){for(let n of[0,1,2]){let r=e.getStream(n);r&&(t.attach(r,n),t.nameTerminal(r))}}function Je(e){return e.startsWith(`#!`)?e.slice(e.indexOf(`
|
|
2
|
+
`)+1):e}const Ye=[`if (typeof ENV !== 'undefined') Object.assign(ENV, Module.sliccEnv);`,`const __sliccTake = (name, value) => {`,` const own = Object.getOwnPropertyDescriptor(Module, name);`,` if (own && 'value' in own && own.value != null) return;`,` Object.defineProperty(Module, name, { value, writable: true, configurable: true, enumerable: true });`,`};`,`if (typeof FS !== 'undefined') __sliccTake('FS', FS);`,`if (typeof callMain === 'function') __sliccTake('callMain', callMain);`,`if (typeof sliccRunMain === 'function') __sliccTake('sliccRunMain', sliccRunMain);`,`if (typeof sliccForkChild === 'function') __sliccTake('sliccForkChild', sliccForkChild);`,`if (typeof PIPEFS !== 'undefined') __sliccTake('PIPEFS', PIPEFS);`,`Module.sliccSyscalls ??= {`,` fcntl: typeof ___syscall_fcntl64 === 'function' ? ___syscall_fcntl64 : undefined,`,` pipe2: typeof ___syscall_pipe2 === 'function' ? ___syscall_pipe2 : undefined,`,` dup3: typeof ___syscall_dup3 === 'function' ? ___syscall_dup3 : undefined,`,` socket: typeof ___syscall_socket === 'function' ? ___syscall_socket : undefined,`,` accept4: typeof ___syscall_accept4 === 'function' ? ___syscall_accept4 : undefined,`,` ioctl: typeof ___syscall_ioctl === 'function' ? ___syscall_ioctl : undefined,`,`};`,`const __sliccUp = () =>`,` (typeof runtimeInitialized === 'undefined' || runtimeInitialized) &&`,` !(typeof runtimeExited !== 'undefined' && runtimeExited) &&`,` !(typeof ABORT !== 'undefined' && ABORT);`,`Module.sliccSigpipe ??= () => (__sliccUp() && typeof _slicc_sigpipe === 'function' ? _slicc_sigpipe() : -1);`,`Module.sliccSigMask ??= (w) => (__sliccUp() && typeof _slicc_sig_mask === 'function' ? _slicc_sig_mask(w) : -1);`,`Module.sliccRaise ??= (sig) => { if (__sliccUp() && typeof _slicc_raise === 'function') _slicc_raise(sig); };`,`if (typeof SliccFork !== 'undefined' && !SliccFork.balancesKeepalive && typeof runtimeKeepalivePop === 'function') {`,` let __sliccForking = SliccFork.forking === true;`,` Object.defineProperty(SliccFork, 'forking', {`,` get: () => __sliccForking,`,` set: (on) => { if (__sliccForking && !on) runtimeKeepalivePop(); __sliccForking = on; },`,` configurable: true,`,` });`,`}`].join(`
|
|
3
|
+
`);function $(e,t){let n=Object.getOwnPropertyDescriptor(e,t);return n&&`value`in n?n.value:void 0}const Xe=(e,t)=>{let n;try{n=Function(`Module`,`${Je(e)}\n;${Ye}`)}catch(e){throw e instanceof EvalError?Error(Ze):e}n(t)},Ze=`the wasm realm evaluates the program's Emscripten glue, and this page's CSP forbids eval (no 'unsafe-eval')`;function Qe(e){let t=e.sliccSigMask,n=t?.(0)??-1;return!t||n===-1?null:{caught:n,ignored:t(1),restart:t(2)}}async function $e(e,t,n={}){let i=new Be(E(e.sab,t),new Int32Array(e.sab,0,16),{masks:()=>Qe(p),raise:e=>p.sliccRaise?.(e)}),a=i.transport(),o=Ge(a),s=new TextEncoder,c=e=>t=>o.write(e,s.encode(`${t}\n`)),l,u,d,f=new Promise((e,t)=>{l=e,u=t}),p={noInitialRun:!0,thisProgram:e.argv0,sliccPid:e.pid,...e.ppid===void 0?{}:{sliccPpid:e.ppid},sliccEnv:e.env,print:c(1),printErr:c(2),instantiateWasm(t,n){return Promise.resolve().then(()=>(Se(t,$(p,`sliccSyscalls`),{fs:()=>$(p,`FS`),heap:()=>d?new Int32Array(d.buffer):void 0,pty:o}),WebAssembly.instantiate(e.program.module,t))).then(r=>{d=Ce(r,t),n(r,e.program.module)},u),{}},preRun:[t=>{if(!et(t))return;let n=t.FS;W(n);try{n.mkdirTree(e.cwd),n.chdir(e.cwd)}catch{}}],onRuntimeInitialized:()=>l()};(n.evaluate??Xe)(e.program.glue,p),await f;let m=p;if(!et(m))return tt(m,e);let h=re(m.FS,{bridge:O(a),syncFs:new ae({entries:[]}),cwd:e.cwd,warn:n.warn??c(2)},{cwd:e.cwd}),g=()=>m.sliccSigpipe?.()===1,_=()=>i.restartable(),v=new de(m.FS,o,{sigpipe:g,restartable:_});if(W(m.FS),e.fork)Le(m.FS,v,e.fork.streams??[]);else{qe(m.FS,v);for(let t of e.fds??[])Ke(m.FS,v,t)}let y=$(m,`PIPEFS`);y&&v.usePipes(y),v.useControllingTerminal(),Ee(m.FS),We(m.FS);let b=e=>r(e.node);m.sliccKernel=me({transport:a,Fs:m.FS,env:e.env,beforeSpawn:()=>h.flush(),afterChild:()=>h.invalidate(),pid:e.pid,raise:e=>m.sliccRaise?.(e),restartable:_,describeFork:()=>ke(m.FS,o,v,b),inherit:e=>je(m.FS,o,v,b,e),stdioPromoter:()=>X(m.FS,o,v,b)}),m.sliccKernel.net=Ue({transport:a,Fs:m.FS,sys:o,streams:v,sigpipe:g,restartable:_});try{return nt(m,e)}finally{h.flush()}}function et(e){return typeof $(e,`FS`)?.getStream==`function`}function tt(e,t){if(t.fork)throw Error(`${t.argv0} cannot resume a fork: it has no filesystem`);return nt(e,t)}function nt(e,t){try{if(t.fork){if(!e.sliccForkChild)throw Error(`${t.argv0} cannot resume a fork`);return e.sliccForkChild({...t.fork,pid:t.pid})??0}return(e.sliccRunMain??e.callMain)(t.args)??0}catch(e){let t=e?.status;if(typeof t!=`number`)throw e;return t}}const rt=`wasm-process-exit`,it=`wasm-process-error`,at=`wasm-thread-spawn`,ot=`wasm-thread-exit`,st=()=>import(`./wasi-runtime-Wx_rcXbK.js`);function ct(e,t={}){let n=t.wasi??st,r=t.emscripten??$e,i=t=>e.postMessage({type:it,message:t instanceof Error?t.stack??t.message:String(t)});return t=>{let a=t?.type;if(a===`wasm-thread-init`){n().then(n=>n.runWasiThread(t,e)).catch(i);return}if(a!==`wasm-process-init`)return;let o=t;(o.program.abi===`wasi`?n().then(t=>t.runWasiProcess(o,e)):r(o,e)).then(t=>e.postMessage({type:rt,code:t}),i)}}const lt=ct({postMessage:e=>self.postMessage(e)});self.addEventListener(`message`,e=>lt(e.data));export{Ge as a,Re as c,E as d,at as i,F as l,rt as n,Be as o,ot as r,Q as s,it as t,O as u};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/fs-
|
|
2
|
-
import{t as e}from"./preload-helper-Czpn1I53.js";import{t}from"./logger-DDBAeTLF.js";import{
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/fs-BUK-3Ws8.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/preload-helper-Czpn1I53.js","assets/logger-DDBAeTLF.js","assets/types-D8gIX-W-.js","assets/path-utils-DNJG-zQf.js","assets/bounded-walk-BjxKWNqp.js","assets/virtual-device-paths-D45tpPP6.js","assets/same-file-identity-DuEcSmPX.js","assets/mount-table-store-dY2IfQ5S.js","assets/proxied-fetch-4VBgrEIu.js","assets/base64-ELzoYfwP.js","assets/proxy-error-BSFYY7jj.js","assets/api-endpoint-DuEQRZ4g.js","assets/runtime-env-Dlaokqg1.js","assets/oauth-service-GpUOM3Aw.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-Czpn1I53.js";import{t}from"./logger-DDBAeTLF.js";import{C as n,W as r,u as i}from"./account-store-DiRMol3Q.js";import{n as a}from"./float-topology-C_iRKPQK.js";import{i as o}from"./providers-BAKMBUX7.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-BUK-3Ws8.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-4VBgrEIu.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-GpUOM3Aw.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-4VBgrEIu.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-CUeWZULe.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{t as e}from"./logger-LESFN7Hj.js";import{_ as t,l as n,r}from"./account-store-
|
|
1
|
+
import{t as e}from"./logger-LESFN7Hj.js";import{_ as t,l as n,r}from"./account-store-BGptY10e.js";import{i,s as a,t as o}from"./providers-CvqwjkUB.js";import{n as s}from"./float-topology-COIC4j_U.js";import{discoverAuth as c,refreshAccessToken as l,runAuthFlow as u}from"./oauth-D20BEoY6.js";import{n as d}from"./store-wiEGJ_43.js";import{t as f}from"./mcp-command-Cr-uabpd.js";const p=e(`mcp-provider`);function m(){return typeof globalThis<`u`&&globalThis.indexedDB!==void 0}function h(e){return`mcp:${e}`}const g=new Map,_=new Set;async function v(e){if(e)return e;let{createProxiedFetch:t}=await import(`./proxied-fetch-F-dCBEfh.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-DCRy_R8r.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 +1 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./logger-LESFN7Hj.js";import"./account-store-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./logger-LESFN7Hj.js";import"./account-store-BGptY10e.js";import"./core-C1m4D34S.js";import"./tray-runtime-config-CBx5P3dS.js";var n=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"./provider-DckNx7km.js";export{e as readMcpAuthEntries};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./store-wiEGJ_43.js";import"./provider-ToQ_7wAn.js";export{e as readMcpAuthEntries};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/azure-openai-DXS5rPbd.js","assets/diagnostics-Cag7MsZI.js","assets/models-Xc0Gclrk.js","assets/preload-helper-Czpn1I53.js","assets/compat-BAGLwgqY.js","assets/env-api-keys-BXRkymgV.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/openrouter.models-DHpsqCCC.js","assets/account-store-DiRMol3Q.js","assets/core-Cx9N3lmn.js","assets/libesm-BypnjKEL.js","assets/logger-DDBAeTLF.js","assets/feature-flags-DvsApnS-.js","assets/proxied-fetch-4VBgrEIu.js","assets/base64-ELzoYfwP.js","assets/proxy-error-BSFYY7jj.js","assets/api-endpoint-DuEQRZ4g.js","assets/runtime-env-Dlaokqg1.js","assets/secret-topology-hMRoGGjt.js","assets/float-topology-C_iRKPQK.js","assets/secrets-bridge-client-D734Xx8G.js","assets/port-bridge-client-B-gpiOVR.js","assets/panel-rpc-accessor-B4BfPLSo.js","assets/image-markers-q8JQTtid.js","assets/tool-ui-eSQ1g2I1.js","assets/stored-accounts-ChNHYF68.js","assets/bedrock-camp-compat-B1oHsbyo.js","assets/bedrock-camp-extra-models-BYrxX19D.js","assets/claude-model-version-DZmbk9E2.js","assets/transform-messages-k2mfzJwY.js","assets/pi-transcript-context-miZCMig3.js","assets/bedrock-camp-CWYBPsp_.js","assets/temperature-support-DhoZT6gU.js","assets/local-llm-B5MTvDcM.js","assets/legacy-api-aliases-BjgG1CsY.js","assets/adobe-0-GN_JoC.js","assets/main-Bu5EcQ93.js","assets/modulepreload-polyfill-P2Xu9kJm.js","assets/bridge-protocol-C52CnDIj.js","assets/telemetry-B0sKnLBU.js","assets/tray-follower-status-BAjnN7Ar.js","assets/clipboard-eqmn97SP.js","assets/silent-renew-backoff-CQhFgetu.js","assets/provider-budget-LCzMPlKv.js","assets/oauth-service-GpUOM3Aw.js","assets/permissions-surface-registry-CilCRwhh.js","assets/llm-session-id-bZQs6gBN.js","assets/cerebras-CVnpQN6i.js","assets/github-copilot-C6LhWXPC.js","assets/github-B4luVkMa.js","assets/global-db-CbuLl-zx.js","assets/bridge-token-required-DMk2va9k.js","assets/openai-codex-CM1P6Cz7.js","assets/pkce-hGf_TEnP.js","assets/openrouter-free-D5_NwI3F.js","assets/openrouter-models-DawLtPaY.js","assets/openrouter-oauth-BBFeemXH.js","assets/openrouter-CtJep7AD.js","assets/xai-grok-DFQUduEg.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-Czpn1I53.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-DXS5rPbd.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])),"./built-in/bedrock-camp-compat.ts":()=>t(()=>import(`./bedrock-camp-compat-B1oHsbyo.js`).then(e=>e.o),__vite__mapDeps([28,8])),"./built-in/bedrock-camp-extra-models.ts":()=>t(()=>import(`./bedrock-camp-extra-models-BYrxX19D.js`).then(e=>e.n),__vite__mapDeps([29,8,28])),"./built-in/bedrock-camp.ts":()=>t(()=>import(`./bedrock-camp-CWYBPsp_.js`),__vite__mapDeps([33,1,2,3,4,5,6,7,8,9,28,30,31,32,34])),"./built-in/local-llm.ts":()=>t(()=>import(`./local-llm-B5MTvDcM.js`),__vite__mapDeps([35,1,4,2,3,5,6,7,8,9,36,13,10,11,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,32]))}),s=Object.assign({"/packages/webapp/providers/adobe.ts":()=>t(()=>import(`./adobe-0-GN_JoC.js`),__vite__mapDeps([37,11,8,4,2,1,3,5,6,7,9,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,36,10,27,28,29,30,38,39,40,41,42,43,44,45,46,47,32,34,48])),"/packages/webapp/providers/cerebras.ts":()=>t(()=>import(`./cerebras-CVnpQN6i.js`),__vite__mapDeps([49,1,4,2,3,5,6,7,8,9,36,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,32])),"/packages/webapp/providers/github-copilot.ts":()=>t(()=>import(`./github-copilot-C6LhWXPC.js`),__vite__mapDeps([50,11,8,4,2,1,3,5,6,7,9,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,36,10,27,28,29,30,38,39,40,41,42,43])),"/packages/webapp/providers/github.ts":()=>t(()=>import(`./github-B4luVkMa.js`),__vite__mapDeps([51,3,10,11,8,4,2,1,5,6,7,9,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,38,39,40,41,42,43,44,46,47,52,53])),"/packages/webapp/providers/openai-codex.ts":()=>t(()=>import(`./openai-codex-CM1P6Cz7.js`),__vite__mapDeps([54,1,4,2,3,5,6,7,8,9,36,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,38,39,40,41,42,43,32,53,55])),"/packages/webapp/providers/openrouter-free.ts":()=>t(()=>import(`./openrouter-free-D5_NwI3F.js`),__vite__mapDeps([56,1,4,2,3,5,6,7,8,9,36,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,38,39,40,41,42,43,32,57,58,55])),"/packages/webapp/providers/openrouter-models.ts":()=>t(()=>import(`./openrouter-models-DawLtPaY.js`),__vite__mapDeps([57,9])),"/packages/webapp/providers/openrouter-oauth.ts":()=>t(()=>import(`./openrouter-oauth-BBFeemXH.js`),__vite__mapDeps([58,10,11,8,4,2,1,3,5,6,7,9,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,38,39,40,41,42,43,55])),"/packages/webapp/providers/openrouter.ts":()=>t(()=>import(`./openrouter-CtJep7AD.js`),__vite__mapDeps([59,4,2,1,3,5,6,7,8,9,36,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,38,39,40,41,42,43,32,57,58,55])),"/packages/webapp/providers/xai-grok-errors.ts":()=>t(()=>import(`./xai-grok-errors-bnlIBeu-.js`),[]),"/packages/webapp/providers/xai-grok.ts":()=>t(()=>import(`./xai-grok-DFQUduEg.js`),__vite__mapDeps([60,11,8,4,2,1,3,5,6,7,9,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,36,10,27,28,29,30,38,39,40,41,42,43,32,53,55,61]))}),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-Dd_uD5pT.js";var t={include:[`*`],exclude:[`amazon-bedrock`,`xai`]},n=e({allProviderConfigs:()=>u,getRegisteredProviderConfig:()=>d,getRegisteredProviderIds:()=>f,registerProviderConfig:()=>p,registerProviders:()=>l,shouldIncludeProvider:()=>i,unregisterProviderConfig:()=>m});const r=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=Object.assign({"./built-in/azure-ai-foundry.ts":()=>import(`./azure-ai-foundry-CzkPLAhp.js`),"./built-in/azure-openai.ts":()=>import(`./azure-openai-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";var t={include:[`*`],exclude:[`amazon-bedrock`,`xai`]},n=e({allProviderConfigs:()=>u,getRegisteredProviderConfig:()=>d,getRegisteredProviderIds:()=>f,registerProviderConfig:()=>p,registerProviders:()=>l,shouldIncludeProvider:()=>i,unregisterProviderConfig:()=>m});const r=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=Object.assign({"./built-in/azure-ai-foundry.ts":()=>import(`./azure-ai-foundry-CzkPLAhp.js`),"./built-in/azure-openai.ts":()=>import(`./azure-openai-PyZ816ly.js`),"./built-in/bedrock-camp-compat.ts":()=>import(`./bedrock-camp-compat-ByR2ly4i.js`).then(e=>e.o),"./built-in/bedrock-camp-extra-models.ts":()=>import(`./bedrock-camp-extra-models-DIuCBjcJ.js`).then(e=>e.n),"./built-in/bedrock-camp.ts":()=>import(`./bedrock-camp-CBP41h6t.js`),"./built-in/local-llm.ts":()=>import(`./local-llm-ByQE3h0R.js`).then(e=>e.n)}),o=Object.assign({"/packages/webapp/providers/adobe.ts":()=>import(`./adobe-C5m6iBnw.js`),"/packages/webapp/providers/cerebras.ts":()=>import(`./cerebras-BeROsc2d.js`),"/packages/webapp/providers/github-copilot.ts":()=>import(`./github-copilot-BiPH9OJc.js`),"/packages/webapp/providers/github.ts":()=>import(`./github-BMfosoS8.js`),"/packages/webapp/providers/openai-codex.ts":()=>import(`./openai-codex-8SwwSHXG.js`),"/packages/webapp/providers/openrouter-free.ts":()=>import(`./openrouter-free-Dn1SR1my.js`),"/packages/webapp/providers/openrouter-models.ts":()=>import(`./openrouter-models-RwlwKz0P.js`),"/packages/webapp/providers/openrouter-oauth.ts":()=>import(`./openrouter-oauth-BP-y86gf.js`),"/packages/webapp/providers/openrouter.ts":()=>import(`./openrouter-C1-T42sa.js`),"/packages/webapp/providers/xai-grok-errors.ts":()=>import(`./xai-grok-errors-ByEMMSoz.js`),"/packages/webapp/providers/xai-grok.ts":()=>import(`./xai-grok-BvqSa-5b.js`)}),s=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
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/panel-rpc-
|
|
2
|
-
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./preload-helper-Czpn1I53.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-
|
|
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-Czpn1I53.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 +1 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t,t as n}from"./base64-BPBW1Gzr.js";import{t as r}from"./content-type-c5DAvCWD.js";import{n as i,t as a}from"./binary-cache-bSOhqXB1.js";import{r as o}from"./fetch-body-CuwTaJC_.js";import{a as s,c,d as l,i as u,l as d,n as f,o as p,r as m,s as h,t as g,u as _}from"./api-endpoint-D8lUKmPu.js";import{i as ee,n as v,r as y,t as b}from"./proxy-error-BVzVNPvv.js";function x(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 S(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 te(e){if(e){if(e instanceof Headers){let t={};return e.forEach((e,n)=>{t[n]=e}),t}return e}}function ne(e){if(!e)return;if(e instanceof Headers){let t={};return e.forEach((e,n)=>{t[n]=e}),Object.keys(t).length===0?void 0:t}if(Array.isArray(e)){let t={};for(let[n,r]of e)t[n]=r;return Object.keys(t).length===0?void 0:t}let t={...e};return Object.keys(t).length===0?void 0:t}const C=8388608,w=new Map;let T=0;const E=new Set;function D(e){let t=w.get(e);t&&(clearTimeout(t.timer),w.delete(e),T-=t.bytes.byteLength)}function re(e){for(let t of e)if(t>=128)return!0;return!1}function ie(e){let t=new Uint8Array(e.byteLength),n=0;for(let r of e)r!==10&&r!==13&&(t[n++]=r);return t.slice(0,n)}function ae(e,t){O(e,t);let n=e.replace(/[\r\n]/g,``);n!==e&&O(n,ie(t))}function oe(e,t){if(e.byteLength!==t.byteLength)return!1;for(let n=0;n<e.byteLength;n++)if(e[n]!==t[n])return!1;return!0}function O(e,t){if(t.byteLength===0||t.byteLength>C||!re(t)||E.has(e))return;let n=w.get(e);if(n&&!oe(n.bytes,t)){D(e),E.add(e);return}D(e);for(let e of w.keys()){if(T+t.byteLength<=C)break;D(e)}w.set(e,{bytes:t,timer:setTimeout(()=>D(e),1e4)}),T+=t.byteLength}function se(e){return w.get(e)?.bytes??null}function ce(){for(let e of[...w.keys()])D(e);E.clear()}var le=e({BINARY_CACHE_BODY_CAP:()=>de,PROXY_CONTENT_LENGTH_HEADER:()=>me,REQUEST_BODY_CAP:()=>k,RawFetchError:()=>y,apiHeaders:()=>g,assertLocalBridgeAcceptsToken:()=>f,collectViaExtensionDelegate:()=>Q,collectViaExtensionPort:()=>Z,createProxiedFetch:()=>$,createProxiedStreamingFetch:()=>be,decodeForbiddenResponseHeaders:()=>G,encodeForbiddenRequestHeaders:()=>W,getBridgeToken:()=>m,getChromeExtensionRealm:()=>u,getExtensionDelegateId:()=>s,getLocalApiBaseUrl:()=>p,getRawFetchCapabilities:()=>I,getResponseBodyCap:()=>M,headersToRecord:()=>z,isTextContentType:()=>r,prepareRequestBody:()=>U,readResponseBody:()=>L,resetRawFetchCapabilities:()=>fe,resolveApiUrl:()=>h,resolveExactRequestBody:()=>H,responseTooLargeError:()=>N,setBridgeToken:()=>c,setChromeExtensionRealm:()=>d,setExtensionDelegateId:()=>_,setLocalApiBaseUrl:()=>l,setResponseBodyCap:()=>ue});const k=33554432,A=536870912;let j=A;function ue(e){j=e===null?A:e}function M(){return j}const de=33554432;function N(e,t,n=j){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`)}const P=new Set([101,103,204,205,304]);function F(){return h(`/api/fetch-proxy`)}async function I(){return(await import(`./proxied-fetch-raw-Cb_C44Cy.js`)).getRawFetchCapabilities()}async function fe(){(await import(`./proxied-fetch-raw-Cb_C44Cy.js`)).resetRawFetchCapabilities()}async function L(e,t,n,r,i=j){let a=e.headers.get(`content-type`)??``,o=r??B(e.headers);if(o!==void 0&&o>i)throw await e.body?.cancel().catch(()=>void 0),N(t??e.url,o,i);let s=await pe(e,t??e.url,n,o,i);return R(s,a,t),s}function R(e,t,n){if(r(t)||e.byteLength>33554432)return;if(n){i(n,e);return}let o=``;for(let t=0;t<e.length;t+=32768)o+=String.fromCharCode(...e.subarray(t,t+32768));a(o,e)}async function pe(e,t,n,r,i=j){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),N(t,void 0,i);n?.(c)}return o?c===o.byteLength?o:o.slice(0,c):K(s)}const z=te,me=`x-proxy-content-length`;function B(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 V(e,t,n){if(!e)return n();try{return await n()}finally{e.end(t)}}function H(e){return typeof e!=`string`||e===``?e:se(e)??e}function U(e,t){let n=H(e);if(n==null||n===``)return;if(typeof n!=`string`)return new Blob([n]);let i=Object.entries(t??{}).find(([e])=>e.toLowerCase()===`content-type`)?.[1]??``;if(i&&!r(i)){let e=o(n);return new Blob([e])}return n}const W=x,G=S,he=n;function K(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 q(e,t,n){let r=new Headers;for(let[t,n]of Object.entries(e.headers))r.set(t,String(n));let i=P.has(e.status)?new Uint8Array:t;return R(i,r.get(`content-type`)??``,n),{status:e.status,statusText:e.statusText,headers:G(e.headers),body:i,url:n}}async function ge(e){let n=z(e?.headers),r=e?.method??`GET`,i=e?.body?U(e.body,n):void 0,a=W(n),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=t(e)}return{method:r,transportHeaders:a,bodyBase64:o,requestBodyTooLarge:s}}function J(e){return e?.signal}function Y(){return new DOMException(`The operation was aborted.`,`AbortError`)}async function X(e,t,n,r,i=j){let{method:a,transportHeaders:o,bodyBase64:s,requestBodyTooLarge:c}=await ge(n),l=J(n);if(l?.aborted)throw Y();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(Y());l?.addEventListener(`abort`,_,{once:!0});let ee=e=>{if(d={status:e.status,statusText:e.statusText,headers:e.headers},m=B(e.headers),m!==void 0&&m>i){g(N(t,m,i));return}r?.start(t,m)},v=e=>{if(f)return;let n=he(e.dataBase64);if(p+=n.byteLength,p>i){g(N(t,void 0,i));return}h.push(n),r?.chunk(t,p,m)},y=()=>{if(!f){if(f=!0,l?.removeEventListener(`abort`,_),!d){n(Error(`fetch-proxy: response-end before response-head`));return}e({head:d,body:K(h).buffer}),u.disconnect()}};u.onMessage.addListener(e=>{let t=e;t.type===`response-head`?ee(t):t.type===`response-chunk`?v(t):t.type===`response-end`?y():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 Z(e,t,n,r){return X(()=>chrome.runtime.connect({name:`fetch-proxy.fetch`}),e,t,n,r)}async function _e(e,t,n,r){let{head:i,body:a}=await V(n,e,()=>Z(e,t,n,r));return q(i,new Uint8Array(a),e)}async function Q(e,t,n,r){let i=s();if(!i)throw Error(`proxied-fetch: no extension delegate id configured`);let a=chrome.runtime.connect;return X(()=>a(i,{name:`fetch-proxy.fetch`}),e,t,n,r)}async function*ve(e){e.byteLength>0&&(yield e)}function ye(e,t,n,r){let i=!1,a=()=>{i||(i=!0,r?.end(t))},o=async()=>{await e.body?.cancel().catch(()=>void 0),a()};if(P.has(e.status)||!e.body)return o(),{body:ve(new Uint8Array),cancel:o};let s=e.body;async function*c(){let e=s.getReader(),i=!1;try{let a=0;for(;;){let{done:i,value:o}=await e.read();if(i)break;a+=o.byteLength,r?.chunk(t,a,n),yield o}i=!0}finally{i||await e.cancel().catch(()=>void 0),a()}}return{body:c(),cancel:o}}function be(e={}){return e.mode===`raw`?async(e,t)=>{let{createRawProxiedFetch:n}=await import(`./proxied-fetch-raw-Cb_C44Cy.js`);return n()(e,t)}:xe(e)}function xe(e){let t=e.progress;if(!ee()){let t=$(e);return async(e,n)=>{let r=await t(e,n);return{status:r.status,statusText:r.statusText,headers:r.headers,url:r.url,contentLength:r.body.byteLength,body:ve(r.body),cancel:async()=>void 0}}}return async(e,n)=>{let r=W(z(n?.headers)),i={method:n?.method??`GET`,headers:g({...r,"X-Target-URL":e}),cache:`no-store`},a=J(n);a&&(i.signal=a);let o=await fetch(F(),i);if(b(o))throw Error(await v(o));let s={};o.headers.forEach((e,t)=>{s[t]=e});let c=B(o.headers);return t?.start(e,c),{status:o.status,statusText:o.statusText,headers:G(s),url:e,contentLength:c,...ye(o,e,c,t)}}}function $(e={}){let t=e.progress,n=()=>e.maxResponseBytes===void 0?j:Math.min(e.maxResponseBytes,j);return u()?(e,r)=>_e(e,r,t,n()):typeof chrome<`u`&&typeof chrome?.runtime?.connect==`function`&&s()?async(e,r)=>{let{head:i,body:a}=await V(t,e,()=>Q(e,r,t,n()));return q(i,new Uint8Array(a),e)}:typeof chrome>`u`&&s()?async(e,r)=>{let{getPanelRpcClient:i}=await import(`./panel-rpc-DW7W4w6_.js`).then(e=>e.a),a=i();if(!a)throw Error(`proxied-fetch: panel-RPC client unavailable in worker realm`);let o=r?.method??`GET`,s=z(r?.headers)??{},c=H(r?.body);t?.start(e,void 0);let{head:l,body:u}=await V(t,e,()=>a.call(`proxied-fetch`,{url:e,method:o,headers:s,body:c},{timeoutMs:12e4,signal:J(r)}));if(u.byteLength>n())throw N(e,u.byteLength,n());return q(l,new Uint8Array(u),e)}:async(e,r)=>{let i=r?.method??`GET`,a=z(r?.headers),o=W(a),s=g({...o,"X-Target-URL":e}),c={method:i,headers:s,cache:`no-store`},l=r?.signal;if(l&&(c.signal=l),r?.body&&![`GET`,`HEAD`].includes(i)){let e=U(r.body,s);e instanceof Blob&&(s[`X-Slicc-Raw-Body`]=`1`),c.body=e}return V(t,e,async()=>{let r=await fetch(F(),c);if(b(r))throw Error(await v(r));let i=B(r.headers);t?.start(e,i);let a=await L(r,e,t?n=>t.chunk(e,n,i):void 0,i,n()),o={};r.headers.forEach((e,t)=>{o[t]=e});let s=G(o);return{status:r.status,statusText:r.statusText,headers:s,body:a,url:e}})}}export{M as a,ae as c,ne as d,I as i,S as l,$ as n,le as o,be as r,ce as s,k as t,x as u};
|
|
1
|
+
import{n as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t,t as n}from"./base64-BPBW1Gzr.js";import{t as r}from"./content-type-c5DAvCWD.js";import{n as i,t as a}from"./binary-cache-bSOhqXB1.js";import{r as o}from"./fetch-body-CuwTaJC_.js";import{a as s,c,d as l,i as u,l as d,n as f,o as p,r as m,s as h,t as g,u as _}from"./api-endpoint-D8lUKmPu.js";import{i as ee,n as v,r as y,t as b}from"./proxy-error-BVzVNPvv.js";function x(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 S(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 te(e){if(e){if(e instanceof Headers){let t={};return e.forEach((e,n)=>{t[n]=e}),t}return e}}function ne(e){if(!e)return;if(e instanceof Headers){let t={};return e.forEach((e,n)=>{t[n]=e}),Object.keys(t).length===0?void 0:t}if(Array.isArray(e)){let t={};for(let[n,r]of e)t[n]=r;return Object.keys(t).length===0?void 0:t}let t={...e};return Object.keys(t).length===0?void 0:t}const C=8388608,w=new Map;let T=0;const E=new Set;function D(e){let t=w.get(e);t&&(clearTimeout(t.timer),w.delete(e),T-=t.bytes.byteLength)}function re(e){for(let t of e)if(t>=128)return!0;return!1}function ie(e){let t=new Uint8Array(e.byteLength),n=0;for(let r of e)r!==10&&r!==13&&(t[n++]=r);return t.slice(0,n)}function ae(e,t){O(e,t);let n=e.replace(/[\r\n]/g,``);n!==e&&O(n,ie(t))}function oe(e,t){if(e.byteLength!==t.byteLength)return!1;for(let n=0;n<e.byteLength;n++)if(e[n]!==t[n])return!1;return!0}function O(e,t){if(t.byteLength===0||t.byteLength>C||!re(t)||E.has(e))return;let n=w.get(e);if(n&&!oe(n.bytes,t)){D(e),E.add(e);return}D(e);for(let e of w.keys()){if(T+t.byteLength<=C)break;D(e)}w.set(e,{bytes:t,timer:setTimeout(()=>D(e),1e4)}),T+=t.byteLength}function se(e){return w.get(e)?.bytes??null}function ce(){for(let e of[...w.keys()])D(e);E.clear()}var le=e({BINARY_CACHE_BODY_CAP:()=>de,PROXY_CONTENT_LENGTH_HEADER:()=>me,REQUEST_BODY_CAP:()=>k,RawFetchError:()=>y,apiHeaders:()=>g,assertLocalBridgeAcceptsToken:()=>f,collectViaExtensionDelegate:()=>Q,collectViaExtensionPort:()=>Z,createProxiedFetch:()=>$,createProxiedStreamingFetch:()=>be,decodeForbiddenResponseHeaders:()=>G,encodeForbiddenRequestHeaders:()=>W,getBridgeToken:()=>m,getChromeExtensionRealm:()=>u,getExtensionDelegateId:()=>s,getLocalApiBaseUrl:()=>p,getRawFetchCapabilities:()=>I,getResponseBodyCap:()=>M,headersToRecord:()=>z,isTextContentType:()=>r,prepareRequestBody:()=>U,readResponseBody:()=>L,resetRawFetchCapabilities:()=>fe,resolveApiUrl:()=>h,resolveExactRequestBody:()=>H,responseTooLargeError:()=>N,setBridgeToken:()=>c,setChromeExtensionRealm:()=>d,setExtensionDelegateId:()=>_,setLocalApiBaseUrl:()=>l,setResponseBodyCap:()=>ue});const k=33554432,A=536870912;let j=A;function ue(e){j=e===null?A:e}function M(){return j}const de=33554432;function N(e,t,n=j){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`)}const P=new Set([101,103,204,205,304]);function F(){return h(`/api/fetch-proxy`)}async function I(){return(await import(`./proxied-fetch-raw-DfWAMMUJ.js`)).getRawFetchCapabilities()}async function fe(){(await import(`./proxied-fetch-raw-DfWAMMUJ.js`)).resetRawFetchCapabilities()}async function L(e,t,n,r,i=j){let a=e.headers.get(`content-type`)??``,o=r??B(e.headers);if(o!==void 0&&o>i)throw await e.body?.cancel().catch(()=>void 0),N(t??e.url,o,i);let s=await pe(e,t??e.url,n,o,i);return R(s,a,t),s}function R(e,t,n){if(r(t)||e.byteLength>33554432)return;if(n){i(n,e);return}let o=``;for(let t=0;t<e.length;t+=32768)o+=String.fromCharCode(...e.subarray(t,t+32768));a(o,e)}async function pe(e,t,n,r,i=j){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),N(t,void 0,i);n?.(c)}return o?c===o.byteLength?o:o.slice(0,c):K(s)}const z=te,me=`x-proxy-content-length`;function B(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 V(e,t,n){if(!e)return n();try{return await n()}finally{e.end(t)}}function H(e){return typeof e!=`string`||e===``?e:se(e)??e}function U(e,t){let n=H(e);if(n==null||n===``)return;if(typeof n!=`string`)return new Blob([n]);let i=Object.entries(t??{}).find(([e])=>e.toLowerCase()===`content-type`)?.[1]??``;if(i&&!r(i)){let e=o(n);return new Blob([e])}return n}const W=x,G=S,he=n;function K(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 q(e,t,n){let r=new Headers;for(let[t,n]of Object.entries(e.headers))r.set(t,String(n));let i=P.has(e.status)?new Uint8Array:t;return R(i,r.get(`content-type`)??``,n),{status:e.status,statusText:e.statusText,headers:G(e.headers),body:i,url:n}}async function ge(e){let n=z(e?.headers),r=e?.method??`GET`,i=e?.body?U(e.body,n):void 0,a=W(n),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=t(e)}return{method:r,transportHeaders:a,bodyBase64:o,requestBodyTooLarge:s}}function J(e){return e?.signal}function Y(){return new DOMException(`The operation was aborted.`,`AbortError`)}async function X(e,t,n,r,i=j){let{method:a,transportHeaders:o,bodyBase64:s,requestBodyTooLarge:c}=await ge(n),l=J(n);if(l?.aborted)throw Y();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(Y());l?.addEventListener(`abort`,_,{once:!0});let ee=e=>{if(d={status:e.status,statusText:e.statusText,headers:e.headers},m=B(e.headers),m!==void 0&&m>i){g(N(t,m,i));return}r?.start(t,m)},v=e=>{if(f)return;let n=he(e.dataBase64);if(p+=n.byteLength,p>i){g(N(t,void 0,i));return}h.push(n),r?.chunk(t,p,m)},y=()=>{if(!f){if(f=!0,l?.removeEventListener(`abort`,_),!d){n(Error(`fetch-proxy: response-end before response-head`));return}e({head:d,body:K(h).buffer}),u.disconnect()}};u.onMessage.addListener(e=>{let t=e;t.type===`response-head`?ee(t):t.type===`response-chunk`?v(t):t.type===`response-end`?y():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 Z(e,t,n,r){return X(()=>chrome.runtime.connect({name:`fetch-proxy.fetch`}),e,t,n,r)}async function _e(e,t,n,r){let{head:i,body:a}=await V(n,e,()=>Z(e,t,n,r));return q(i,new Uint8Array(a),e)}async function Q(e,t,n,r){let i=s();if(!i)throw Error(`proxied-fetch: no extension delegate id configured`);let a=chrome.runtime.connect;return X(()=>a(i,{name:`fetch-proxy.fetch`}),e,t,n,r)}async function*ve(e){e.byteLength>0&&(yield e)}function ye(e,t,n,r){let i=!1,a=()=>{i||(i=!0,r?.end(t))},o=async()=>{await e.body?.cancel().catch(()=>void 0),a()};if(P.has(e.status)||!e.body)return o(),{body:ve(new Uint8Array),cancel:o};let s=e.body;async function*c(){let e=s.getReader(),i=!1;try{let a=0;for(;;){let{done:i,value:o}=await e.read();if(i)break;a+=o.byteLength,r?.chunk(t,a,n),yield o}i=!0}finally{i||await e.cancel().catch(()=>void 0),a()}}return{body:c(),cancel:o}}function be(e={}){return e.mode===`raw`?async(e,t)=>{let{createRawProxiedFetch:n}=await import(`./proxied-fetch-raw-DfWAMMUJ.js`);return n()(e,t)}:xe(e)}function xe(e){let t=e.progress;if(!ee()){let t=$(e);return async(e,n)=>{let r=await t(e,n);return{status:r.status,statusText:r.statusText,headers:r.headers,url:r.url,contentLength:r.body.byteLength,body:ve(r.body),cancel:async()=>void 0}}}return async(e,n)=>{let r=W(z(n?.headers)),i={method:n?.method??`GET`,headers:g({...r,"X-Target-URL":e}),cache:`no-store`},a=J(n);a&&(i.signal=a);let o=await fetch(F(),i);if(b(o))throw Error(await v(o));let s={};o.headers.forEach((e,t)=>{s[t]=e});let c=B(o.headers);return t?.start(e,c),{status:o.status,statusText:o.statusText,headers:G(s),url:e,contentLength:c,...ye(o,e,c,t)}}}function $(e={}){let t=e.progress,n=()=>e.maxResponseBytes===void 0?j:Math.min(e.maxResponseBytes,j);return u()?(e,r)=>_e(e,r,t,n()):typeof chrome<`u`&&typeof chrome?.runtime?.connect==`function`&&s()?async(e,r)=>{let{head:i,body:a}=await V(t,e,()=>Q(e,r,t,n()));return q(i,new Uint8Array(a),e)}:typeof chrome>`u`&&s()?async(e,r)=>{let{getPanelRpcClient:i}=await import(`./panel-rpc-CR9k3qWE.js`).then(e=>e.r),a=i();if(!a)throw Error(`proxied-fetch: panel-RPC client unavailable in worker realm`);let o=r?.method??`GET`,s=z(r?.headers)??{},c=H(r?.body);t?.start(e,void 0);let{head:l,body:u}=await V(t,e,()=>a.call(`proxied-fetch`,{url:e,method:o,headers:s,body:c},{timeoutMs:12e4,signal:J(r)}));if(u.byteLength>n())throw N(e,u.byteLength,n());return q(l,new Uint8Array(u),e)}:async(e,r)=>{let i=r?.method??`GET`,a=z(r?.headers),o=W(a),s=g({...o,"X-Target-URL":e}),c={method:i,headers:s,cache:`no-store`},l=r?.signal;if(l&&(c.signal=l),r?.body&&![`GET`,`HEAD`].includes(i)){let e=U(r.body,s);e instanceof Blob&&(s[`X-Slicc-Raw-Body`]=`1`),c.body=e}return V(t,e,async()=>{let r=await fetch(F(),c);if(b(r))throw Error(await v(r));let i=B(r.headers);t?.start(e,i);let a=await L(r,e,t?n=>t.chunk(e,n,i):void 0,i,n()),o={};r.headers.forEach((e,t)=>{o[t]=e});let s=G(o);return{status:r.status,statusText:r.statusText,headers:s,body:a,url:e}})}}export{M as a,ae as c,ne as d,I as i,S as l,$ as n,le as o,be as r,ce as s,k as t,x as u};
|
|
@@ -0,0 +1,2 @@
|
|
|
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-Czpn1I53.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};
|