sliccy 6.210.0 → 6.210.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/dist/ui/.vite/manifest.json +182 -182
- package/dist/ui/assets/{account-store-DgfR_tf2.js → account-store-BXs7YUd1.js} +1 -1
- package/dist/ui/assets/{account-store-ByX1Dt0d.js → account-store-Bj2sWuL9.js} +1 -1
- package/dist/ui/assets/{adobe-DxaC2zCR.js → adobe-DtoNpFL2.js} +1 -1
- package/dist/ui/assets/{adobe-R_y7Dfut.js → adobe-F-IKKOJO.js} +1 -1
- package/dist/ui/assets/{agent-panels-C_PSIfT1.js → agent-panels-CVsqg2-h.js} +1 -1
- package/dist/ui/assets/{almost-bash-shell-headless-Ccu3_Uhw.js → almost-bash-shell-headless-CH7VDHBB.js} +38 -38
- package/dist/ui/assets/{apply-layout-OKdF-hhc.js → apply-layout-FFHCB9bO.js} +1 -1
- package/dist/ui/assets/{apps-JHYPOU64.js → apps-BJzl3RZW.js} +1 -1
- package/dist/ui/assets/{azure-openai-DXBUUMQQ.js → azure-openai-BLEG5MlZ.js} +1 -1
- package/dist/ui/assets/{azure-openai-BVUK3KXE.js → azure-openai-CpRQdIQb.js} +1 -1
- package/dist/ui/assets/{backend-hostfs-88hAlDb5.js → backend-hostfs-DZyH5GFZ.js} +1 -1
- package/dist/ui/assets/{bsh-watchdog-xbXqblUt.js → bsh-watchdog-CqfihC2k.js} +1 -1
- package/dist/ui/assets/{bunny-probe-Y6RN8nEm.js → bunny-probe-ZpG6E7n2.js} +1 -1
- package/dist/ui/assets/{bunny-run-C4HFX6FX.js → bunny-run-ysVsr1mX.js} +1 -1
- package/dist/ui/assets/{cdp-DjJWaZz6.js → cdp-DwsDXLhg.js} +1 -1
- package/dist/ui/assets/{cerebras-Cd6zKgza.js → cerebras-CnpcT2_8.js} +1 -1
- package/dist/ui/assets/{cerebras-BJZYfn89.js → cerebras-gnXcXmk7.js} +1 -1
- package/dist/ui/assets/{composer-speech-CJc-2k5O.js → composer-speech-BURN-dPW.js} +1 -1
- package/dist/ui/assets/{connect-surface-DPvoPj55.js → connect-surface-D0BfSkwe.js} +1 -1
- package/dist/ui/assets/{core-VO3EvqHP.js → core-Dj0t7hQO.js} +1 -1
- package/dist/ui/assets/{directed-approval-DLUTxlNM.js → directed-approval-BWqIdB9e.js} +1 -1
- package/dist/ui/assets/{emscripten-vfs-hook-DaUD5bwd.js → emscripten-vfs-hook-Boy5xq-Z.js} +1 -1
- package/dist/ui/assets/{ensure-speech-assets-DcFMkg1m.js → ensure-speech-assets-CzLCdx9h.js} +1 -1
- package/dist/ui/assets/{esbuild-wasm-BqY5rzxc.js → esbuild-wasm-C-mKofIl.js} +1 -1
- package/dist/ui/assets/{fast-path-vLRu2cHH.js → fast-path-hOi08xeS.js} +1 -1
- package/dist/ui/assets/{ffmpeg-wasm-NIvl0oHG.js → ffmpeg-wasm-DsXD0tX2.js} +1 -1
- package/dist/ui/assets/{frozen-archive-writer-Ct9GJG54.js → frozen-archive-writer-o7ImcSbe.js} +1 -1
- package/dist/ui/assets/{fs-rBjZTyof.js → fs-BaM5oYgh.js} +2 -2
- package/dist/ui/assets/{fs-B3WU3yr9.js → fs-C7Qh7l0E.js} +1 -1
- package/dist/ui/assets/{gelatiere-store-cZnVaRlS.js → gelatiere-store-BkPyZ5mV.js} +1 -1
- package/dist/ui/assets/{gelatiere-unit-CLZPrZzv.js → gelatiere-unit-BYlMZ2v4.js} +1 -1
- package/dist/ui/assets/{github-BW1eM6J3.js → github-D0VXVUSM.js} +2 -2
- package/dist/ui/assets/{github-Cq1sNS_K.js → github-N-Ega4Po.js} +1 -1
- package/dist/ui/assets/{github-auth-O6zGPogb.js → github-auth-DvbRhyIc.js} +1 -1
- package/dist/ui/assets/{github-copilot-1kPf7awr.js → github-copilot-C2Lk0xfw.js} +1 -1
- package/dist/ui/assets/{github-copilot-CUJZELWh.js → github-copilot-CCvuY9BS.js} +1 -1
- package/dist/ui/assets/{github-install-CXBoYKYM.js → github-install-DPTw6LV_.js} +1 -1
- package/dist/ui/assets/{github-zip-DHBvTUIf.js → github-zip-Bbft7vZj.js} +1 -1
- package/dist/ui/assets/{guest-tool-gate-BzUxTS0o.js → guest-tool-gate-C3mMUKtL.js} +1 -1
- package/dist/ui/assets/{hear-BVHHBpIb.js → hear-l_e8vu4Q.js} +1 -1
- package/dist/ui/assets/{help-BYCrQyQm.js → help-C5uNreTt.js} +1 -1
- package/dist/ui/assets/{installer-pOTEH6_f.js → installer-BidZuNnC.js} +1 -1
- package/dist/ui/assets/{interrupted-work-recovery-DkaikSRv.js → interrupted-work-recovery-D5TFE2JG.js} +1 -1
- package/dist/ui/assets/{ipk-mamba-13yN29Fi.js → ipk-mamba-CvGbcFF_.js} +1 -1
- package/dist/ui/assets/{js-realm-worker-OZbA_gYe.js → js-realm-worker-BFJHUvlI.js} +2 -2
- package/dist/ui/assets/{jsh-executor-DZO1HSOR.js → jsh-executor-B4ySdjop.js} +2 -2
- package/dist/ui/assets/{kernel-worker-B9c7Iv6C.js → kernel-worker-BzcdrkzF.js} +9 -9
- package/dist/ui/assets/{lick-ws-bridge-TTmDE5-3.js → lick-ws-bridge-B248zI2U.js} +1 -1
- package/dist/ui/assets/{lick-ws-bridge-DjeZVXRW.js → lick-ws-bridge-CodIkT51.js} +1 -1
- package/dist/ui/assets/{live-session-curation-hidMwgql.js → live-session-curation-vrJYxCgm.js} +1 -1
- package/dist/ui/assets/{live-session-snapshot-STfu1AIh.js → live-session-snapshot-lJ3w4rOH.js} +1 -1
- package/dist/ui/assets/{local-llm-B8dhTls8.js → local-llm-dkgrXktX.js} +1 -1
- package/dist/ui/assets/{local-llm-D0k2uDUi.js → local-llm-vgDCJvkZ.js} +1 -1
- package/dist/ui/assets/{magick-wasm-DjyHtD1t.js → magick-wasm-qrxQJP5k.js} +1 -1
- package/dist/ui/assets/{main-Ylszjlde.js → main-CXeU8DQz.js} +3 -3
- package/dist/ui/assets/{main-cherry-C-bsI9l6.js → main-cherry-sfCt3gLL.js} +1 -1
- package/dist/ui/assets/{memory-curation-seam-B7hMTwGX.js → memory-curation-seam-T4WRfl1n.js} +1 -1
- package/dist/ui/assets/{memory-health-as7mEPc6.js → memory-health-EXXqHw1x.js} +1 -1
- package/dist/ui/assets/{memory-write-execute-DaCQKUN-.js → memory-write-execute-DIYIwJKg.js} +1 -1
- package/dist/ui/assets/{merge-folded-cost-into-frozen-D-2Ph0GN.js → merge-folded-cost-into-frozen-bDakT1WR.js} +1 -1
- package/dist/ui/assets/{mount-BByFpMAL.js → mount-BABm_hJd.js} +3 -3
- package/dist/ui/assets/{mount-BYEvANlb.js → mount-C7dlV4rl.js} +1 -1
- package/dist/ui/assets/{new-session-BXB2Cf7y.js → new-session-D2rtUiOZ.js} +2 -2
- package/dist/ui/assets/{oauth-bootstrap-DeA2SKlj.js → oauth-bootstrap-3P5XkiLD.js} +2 -2
- package/dist/ui/assets/{onboarding-orchestrator-ByFpaN7_.js → onboarding-orchestrator-CYP3TBxO.js} +1 -1
- package/dist/ui/assets/{openai-codex-CCo3ZmW2.js → openai-codex-CUa5FPoQ.js} +1 -1
- package/dist/ui/assets/{openai-codex-CgYrmMUk.js → openai-codex-DvxYitk6.js} +1 -1
- package/dist/ui/assets/{openrouter-97wg-v_R.js → openrouter-Btmqh3ZY.js} +1 -1
- package/dist/ui/assets/{openrouter-CKicFuSH.js → openrouter-BxUHkfTR.js} +1 -1
- package/dist/ui/assets/{openrouter-free-B5IsIaNO.js → openrouter-free-BCIYdkt3.js} +1 -1
- package/dist/ui/assets/{openrouter-free-B9XNv61G.js → openrouter-free-nn_h_WC_.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-BwMN3x2M.js → openrouter-oauth-8cwBPqX7.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-B7xNpdYW.js → openrouter-oauth-Bba1qXT3.js} +1 -1
- package/dist/ui/assets/{opfs-mount-DpaBHmd-.js → opfs-mount-DbON63F4.js} +1 -1
- package/dist/ui/assets/{panel-rpc-handlers-BbazEhj0.js → panel-rpc-handlers-aqHjP3Jn.js} +2 -2
- package/dist/ui/assets/{panelize-shell-jWC6JaCw.js → panelize-shell-CjtBTrHH.js} +1 -1
- package/dist/ui/assets/{pi-edit-execution-D79zjNpH.js → pi-edit-execution-DFk-ThoQ.js} +1 -1
- package/dist/ui/assets/{provider-SsZ1z43S.js → provider-B7Epu3fA.js} +2 -2
- package/dist/ui/assets/{provider-CCQRZg4A.js → provider-DFROVc_U.js} +1 -1
- package/dist/ui/assets/{provider-settings-CZLKq2oa.js → provider-settings-WmZqlEWG.js} +1 -1
- package/dist/ui/assets/provider-store-access-XxfYiVq-.js +1 -0
- package/dist/ui/assets/provider-store-access-bqTWCaz8.js +1 -0
- package/dist/ui/assets/{providers-xwZovvsP.js → providers-CUOgmyqw.js} +2 -2
- package/dist/ui/assets/{providers-TV6NIsPL.js → providers-CnFwVWZQ.js} +1 -1
- package/dist/ui/assets/{quick-llm-CruFRi7n.js → quick-llm-TyBh96Nl.js} +1 -1
- package/dist/ui/assets/{realm-inprocess-CKEpOeay.js → realm-inprocess-DtJhD5Fl.js} +2 -2
- package/dist/ui/assets/{realm-unhandled-rejections-Ab7EMcr4.js → realm-unhandled-rejections-DgtQR_nu.js} +1 -1
- package/dist/ui/assets/{realm-unhandled-rejections-DrdoJZTU.js → realm-unhandled-rejections-vs4_4-j5.js} +1 -1
- package/dist/ui/assets/{recovery-screen-BHZNLcMl.js → recovery-screen-DCebt00Y.js} +1 -1
- package/dist/ui/assets/{remote-terminal-view-B83V8Qzf.js → remote-terminal-view-hFKpOJq6.js} +4 -3
- package/dist/ui/assets/{require-guards-Dor7ByR7.js → require-guards-Bo27pPOL.js} +1 -1
- package/dist/ui/assets/{restore-D5Y9NVvF.js → restore-zcvXidEG.js} +1 -1
- package/dist/ui/assets/run-2WVtdZpl.js +8 -0
- package/dist/ui/assets/{run-gr518xGk.js → run-BV9MB7ra.js} +1 -1
- package/dist/ui/assets/{run-B1CbbbHn.js → run-C2DCKniQ.js} +1 -1
- package/dist/ui/assets/{run-DWA1_d1u.js → run-CS2W694M.js} +2 -2
- package/dist/ui/assets/{run-OtfZUGcj.js → run-Cd_VCcVf.js} +2 -2
- package/dist/ui/assets/{run-DkflycnX.js → run-CuBHWlsa.js} +2 -2
- package/dist/ui/assets/{run-D3Yam1R4.js → run-D_M6FYKF.js} +2 -2
- package/dist/ui/assets/{run-Dp-YY09r.js → run-DjxRQ23G.js} +1 -1
- package/dist/ui/assets/{run-BKqRP8Pt.js → run-Q7BN7qk3.js} +2 -2
- package/dist/ui/assets/{run-yvQfuwPq.js → run-UiQipOb7.js} +1 -1
- package/dist/ui/assets/{screencapture-run-CJF_k55t.js → screencapture-run-CBm4TDjf.js} +1 -1
- package/dist/ui/assets/{session-command-memory-Di_ppNKR.js → session-command-memory-CcaZsaLQ.js} +2 -2
- package/dist/ui/assets/{session-jsonl-sT2AW-s9.js → session-jsonl-BmGkCWUz.js} +1 -1
- package/dist/ui/assets/{session-jsonl-BDKaDkEF.js → session-jsonl-DmxnjLdx.js} +1 -1
- package/dist/ui/assets/{session-search-index-BD311OX5.js → session-search-index-KJ0_eoRM.js} +1 -1
- package/dist/ui/assets/{setup-feature-flags-remote-C0Sedip7.js → setup-feature-flags-remote-C803V0VC.js} +1 -1
- package/dist/ui/assets/{setup-model-catalog-BFF0xdNS.js → setup-model-catalog-bxrNmkOq.js} +1 -1
- package/dist/ui/assets/{shared-Bi8EHIOr.js → shared-De1sMYMX.js} +4 -4
- package/dist/ui/assets/{signed-fetch-BnBm1LRC.js → signed-fetch-CK_GPwxJ.js} +1 -1
- package/dist/ui/assets/{silent-renew-backoff-Zup94X9e.js → silent-renew-backoff-CWJs245J.js} +1 -1
- package/dist/ui/assets/slicc-version-Da6sXKjo.js +1 -0
- package/dist/ui/assets/{snapshot-C-rMXS0v.js → snapshot-CcXAgR24.js} +1 -1
- package/dist/ui/assets/{snapshot-features-BGJFBLV3.js → snapshot-features-Bb6rt3T9.js} +1 -1
- package/dist/ui/assets/{soundscape-DPMkpYDE.js → soundscape-DWkIHoSH.js} +1 -1
- package/dist/ui/assets/{speak-DUcCnV6D.js → speak-bIrefGJW.js} +1 -1
- package/dist/ui/assets/{sprinkle-manager-BnLfND_U.js → sprinkle-manager-HaLL6TAH.js} +1 -1
- package/dist/ui/assets/{sprinkle-renderer-Daaqfzq4.js → sprinkle-renderer-CH7z9LWi.js} +1 -1
- package/dist/ui/assets/{src-tqB6XcSU.js → src-ngGdoF7q.js} +12 -12
- package/dist/ui/assets/{ssh-D2rNItRY.js → ssh-HG-JzaxD.js} +1 -1
- package/dist/ui/assets/{state-DuLjW_a4.js → state-y36olpuJ.js} +1 -1
- package/dist/ui/assets/{store-BXNUAqDB.js → store-DI5uS3CV.js} +1 -1
- package/dist/ui/assets/{store-HjKkYqua.js → store-Dy2vvTSi.js} +1 -1
- package/dist/ui/assets/{sudo-B65OoUDr.js → sudo-7nF2-79o.js} +1 -1
- package/dist/ui/assets/{supervisor-CEzUkfGl.js → supervisor-CEG_pawR.js} +1 -1
- package/dist/ui/assets/{sync-dialog-DWj_c3Ea.js → sync-dialog-B28jW7rW.js} +1 -1
- package/dist/ui/assets/{transformers-env-BjXj92XS.js → transformers-env-G9ZvPj4i.js} +1 -1
- package/dist/ui/assets/{tray-leader-Cf1nSAit.js → tray-leader-CxQceUY8.js} +1 -1
- package/dist/ui/assets/{tray-leave-runtime-BoHLFXbM.js → tray-leave-runtime-B7ePnPKy.js} +1 -1
- package/dist/ui/assets/{tray-sidecar-C7Cc8eNz.js → tray-sidecar-BlpsBLlK.js} +1 -1
- package/dist/ui/assets/{turn-journal-C1eVrq7Y.js → turn-journal-aW8ez41d.js} +1 -1
- package/dist/ui/assets/{upgrade-detection-YgD-QcYW.js → upgrade-detection-BpdjDhSG.js} +1 -1
- package/dist/ui/assets/{upskill-lick-skip-BeQH8zNC.js → upskill-lick-skip-DLAifByM.js} +1 -1
- package/dist/ui/assets/{voice-reply-QkeBs58G.js → voice-reply-DERl1Bi0.js} +1 -1
- package/dist/ui/assets/{wc-attach-BVDYvHNr.js → wc-attach-DTYFvNFe.js} +2 -2
- package/dist/ui/assets/{wc-browser-Dyx8RrLZ.js → wc-browser-CfT_4eXt.js} +1 -1
- package/dist/ui/assets/{wc-computers-CY0ywrNG.js → wc-computers-CZzSDuty.js} +1 -1
- package/dist/ui/assets/{wc-detached-DWzA5mFf.js → wc-detached-C-E9uOpQ.js} +1 -1
- package/dist/ui/assets/{wc-extension-v381y0tj.js → wc-extension-dtGYhAVK.js} +2 -2
- package/dist/ui/assets/{wc-follower-BKeKPCgx.js → wc-follower-gU-qxutC.js} +3 -3
- package/dist/ui/assets/{wc-follower-oauth-jDvLJ5_W.js → wc-follower-oauth-BGkJQhXu.js} +1 -1
- package/dist/ui/assets/{wc-gelatiere-BuN5Z24F.js → wc-gelatiere-Bwy-mfMy.js} +1 -1
- package/dist/ui/assets/{wc-live-BY93WkXA.js → wc-live-DOg7ifPs.js} +5 -5
- package/dist/ui/assets/{wc-nav-DhCoJ7Ga.js → wc-nav-Dwr_mhPy.js} +2 -2
- package/dist/ui/assets/{wc-onboarding-B1XwN74x.js → wc-onboarding-BE9A-Amw.js} +2 -2
- package/dist/ui/assets/{wc-permissions-DAesjSSK.js → wc-permissions-BloJ3nhv.js} +2 -2
- package/dist/ui/assets/{wc-placeholder-oCOmyAX6.js → wc-placeholder-C4vxqDp9.js} +3 -3
- package/dist/ui/assets/{wc-secret-request-hrqZov3u.js → wc-secret-request-BgFU3Vv4.js} +1 -1
- package/dist/ui/assets/{wc-settings-6XtcwxYz.js → wc-settings-D4tUKiOo.js} +3 -3
- package/dist/ui/assets/{wc-shell-B4HSSzcL.js → wc-shell-DWs7UK-n.js} +3 -3
- package/dist/ui/assets/{wc-shortcut-config-BJZuY_qb.js → wc-shortcut-config-DVN2gtoP.js} +1 -1
- package/dist/ui/assets/{wc-sprinkles-CDlry7Bq.js → wc-sprinkles-DKpkBiOU.js} +2 -2
- package/dist/ui/assets/{wc-transcript-export-su4AiYik.js → wc-transcript-export-BIr7xQ8r.js} +2 -2
- package/dist/ui/assets/{wc-tray-DjO5tw9f.js → wc-tray-CPoilaMn.js} +4 -4
- package/dist/ui/assets/welcome-detection-B8xTkXMq.js +1 -0
- package/dist/ui/assets/{whisper-session-3nC_uMHL.js → whisper-session-CjnOyfPM.js} +2 -2
- package/dist/ui/assets/{xai-grok-CYP2lVaC.js → xai-grok-CKBHF5WO.js} +1 -1
- package/dist/ui/assets/{xai-grok-Cfyo0OTy.js → xai-grok-CsjlfFq3.js} +1 -1
- package/dist/ui/index.html +3 -3
- package/dist/ui/packages/webapp/index.html +3 -3
- package/package.json +1 -1
- package/dist/ui/assets/provider-store-access-DBSmvoO2.js +0 -1
- package/dist/ui/assets/provider-store-access-_IyYl-Xo.js +0 -1
- package/dist/ui/assets/run-Bx861p9q.js +0 -7
- package/dist/ui/assets/slicc-version-klgPNoH5.js +0 -1
- package/dist/ui/assets/welcome-detection-CMSBlwRb.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e}from"./wc-onboarding-BE9A-Amw.js";export{e as hasOnboardingFinalLickInHistory};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/speak-
|
|
2
|
-
import{t as e}from"./preload-helper-Czpn1I53.js";import{t}from"./logger-DDBAeTLF.js";import{a as n,n as r,o as i,r as a,t as o}from"./transformers-env-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/speak-bIrefGJW.js","assets/preload-helper-Czpn1I53.js","assets/logger-DDBAeTLF.js","assets/runtime-env-Dlaokqg1.js","assets/speech-assets-bridge-CFYafE89.js","assets/transformers-env-G9ZvPj4i.js","assets/wc-shell-DWs7UK-n.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/mime-types-D0xZwlMO.js","assets/base64-ELzoYfwP.js","assets/bridge-protocol-C52CnDIj.js","assets/account-store-Bj2sWuL9.js","assets/core-D8SLLGdB.js","assets/compat-Dy2zIWAW.js","assets/models-YdybRRvT.js","assets/diagnostics-DN_idNHx.js","assets/provider-env-CTOcDKrQ.js","assets/__vite-browser-external-5eBdwsFd.js","assets/openrouter.models-B-zmcypy.js","assets/libesm-BypnjKEL.js","assets/feature-flags-DvsApnS-.js","assets/proxied-fetch-DiXk_XGs.js","assets/fetch-body-1l9I58Vk.js","assets/api-endpoint-DuEQRZ4g.js","assets/secret-topology-CZv6A9HW.js","assets/float-topology-B0_dG7En.js","assets/secrets-bridge-client-B_CG-HIg.js","assets/port-bridge-client-BiWcfZSc.js","assets/image-markers-q8JQTtid.js","assets/tool-ui-eSQ1g2I1.js","assets/providers-CUOgmyqw.js","assets/panel-rpc-D3EPRnmw.js","assets/bedrock-camp-compat-C64_Hwco.js","assets/bedrock-camp-extra-models-D9acqHGZ.js","assets/claude-model-version-DZmbk9E2.js","assets/telemetry-CKoAhRMv.js","assets/types-D8gIX-W-.js","assets/same-file-identity-DuEcSmPX.js","assets/icons-dEBJiC8z.js","assets/wc-shell-WkeczD9x.css","assets/shared-BDXQKitm.js","assets/transformers.web-BBJR2ai3.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{t as e}from"./preload-helper-Czpn1I53.js";import{t}from"./logger-DDBAeTLF.js";import{a as n,n as r,o as i,r as a,t as o}from"./transformers-env-G9ZvPj4i.js";var s=t(`speech:whisper`),c=null,l=`idle`,u=null,d=new Set;function f(){return l}function p(){return u}function m(e){return e&&d.add(e),c||=(l=`loading`,g().then(e=>(l=`ready`,h(),e),e=>{throw l=`failed`,c=null,s.error(`whisper load failed`,e),e})),c}function h(){e(async()=>{let{kokoroWarmup:e}=await import(`./speak-bIrefGJW.js`);return{kokoroWarmup:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40])).then(({kokoroWarmup:e})=>e()).catch(e=>s.warn(`kokoro warmup (chained after whisper) failed`,e))}async function g(){let{pipeline:t,env:c}=await e(async()=>{let{pipeline:e,env:t}=await import(`./transformers.web-BBJR2ai3.js`);return{pipeline:e,env:t}},__vite__mapDeps([41,7,1]));r(c),await o(n),await a();let l=i(),f=e=>{if(e?.file){if(e.status===`progress`)l.update(e.file,e.loaded??0,e.total??0);else if(e.status===`done`)l.complete(e.file);else return;u=l.snapshot();for(let e of d)e(u)}},p=async e=>await t(`automatic-speech-recognition`,n,{device:e,dtype:e===`webgpu`?`fp32`:`q8`,progress_callback:f}),m=typeof navigator<`u`&&`gpu`in navigator,h;if(m)try{h=await p(`webgpu`)}catch(e){s.warn(`whisper webgpu init failed; retrying on wasm`,e),h=await p(`wasm`)}else h=await p(`wasm`);return s.info(`whisper ready`,{model:n,device:m?`webgpu`:`wasm`}),{async transcribe(e,t){let n=performance.now(),r=await h(e,{chunk_length_s:30,task:`transcribe`,...t?.language?{language:t.language}:{}}),i=Array.isArray(r)?r.map(e=>e.text??``).join(` `):r.text??``;return s.info(`whisper transcribe`,{elapsedMs:Math.round(performance.now()-n),audioSeconds:Math.round(e.length/160)/100,numThreads:c.backends?.onnx?.wasm?.numThreads,device:m?`webgpu`:`wasm`}),i.trim()}}}var _=16e3;async function v(e){if(typeof AudioContext>`u`||typeof OfflineAudioContext>`u`)throw Error(`audio decoding requires a window/page realm (AudioContext unavailable)`);let t=new AudioContext,n;try{n=await t.decodeAudioData(e.slice(0))}finally{await t.close().catch(()=>{})}let r=Math.max(1,Math.ceil(n.duration*_)),i=new OfflineAudioContext(1,r,_),a=i.createBufferSource();return a.buffer=n,a.connect(i.destination),a.start(),(await i.startRendering()).getChannelData(0).slice(0)}var y=t(`speech:whisper-session`),b=2e3,x=500,S=5e3,C=3e4,w=(e,t,n)=>new Promise((r,i)=>{let a=setTimeout(()=>i(Error(`${n} timed out after ${t}ms`)),t);e.then(e=>{clearTimeout(a),r(e)},e=>{clearTimeout(a),i(e)})});function T(e){return e?.split(`-`)[0]?.toLowerCase()||void 0}async function E(e,t){let n;if(t.stream)n=t.stream;else{if(!navigator.mediaDevices?.getUserMedia)throw Error(`microphone capture unavailable in this realm`);n=await navigator.mediaDevices.getUserMedia({audio:t.deviceId&&t.deviceId!=="default"?{deviceId:{exact:t.deviceId}}:!0})}let r=new MediaRecorder(n),i=[],a=T(t.lang),o=!1,s=!1;r.ondataavailable=e=>{e.data.size>0&&i.push(e.data)};let c=async()=>{if(i.length===0)return``;let t=await v(await new Blob(i,{type:r.mimeType||`audio/webm`}).arrayBuffer());return e.transcribe(t,{language:a})},l=Promise.resolve(``),u=()=>{let e=l.catch(()=>``).then(()=>c());return l=e.catch(()=>``),e},d=setInterval(()=>{o||s||i.length===0||(o=!0,u().then(e=>{!s&&e&&t.onPartial?.(e)}).catch(e=>{y.warn(`partial transcription failed`,e)}).finally(()=>{o=!1}))},b),f=()=>{if(clearInterval(d),r.state!==`inactive`)try{r.stop()}catch{}for(let e of n.getTracks())e.stop()},p=()=>new Promise(e=>{if(r.state===`inactive`){e();return}r.onstop=()=>e();try{r.stop()}catch{e()}});return r.start(x),{async stop(){if(s)return``;s=!0,clearInterval(d);try{await w(p(),S,`recorder flush`);for(let e of n.getTracks())e.stop();return await w(u(),C,`transcription`)}catch(e){for(let e of n.getTracks())e.stop();let r=e instanceof Error?e.message:String(e);return t.onError?.(`transcription failed: ${r}`),``}},cancel(){s||(s=!0,f())}}}export{p as a,m as i,T as n,f as o,v as r,E as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./core-D8SLLGdB.js";import{a as t}from"./diagnostics-DN_idNHx.js";import{a as n}from"./compat-Dy2zIWAW.js";import{c as r,i,r as a,s as o}from"./legacy-api-aliases-DoI0tM7F.js";import{K as s,f as c}from"./account-store-
|
|
1
|
+
import{a as e}from"./core-D8SLLGdB.js";import{a as t}from"./diagnostics-DN_idNHx.js";import{a as n}from"./compat-Dy2zIWAW.js";import{c as r,i,r as a,s as o}from"./legacy-api-aliases-DoI0tM7F.js";import{K as s,f as c}from"./account-store-Bj2sWuL9.js";import"./main-CXeU8DQz.js";import{n as l,r as u}from"./bridge-token-required-DMk2va9k.js";import{n as d,r as f,t as p}from"./pkce-hGf_TEnP.js";import{XaiErrorCode as m,XaiOAuthError as h}from"./xai-grok-errors-bnlIBeu-.js";var g=`https://cli-chat-proxy.grok.com/v1/billing?format=credits`,_=8e3,v=65536,y=1e3;function b(e){return typeof e==`object`&&!!e}function x(e){if(!b(e))return null;let t=b(e.config)?e.config:e,n=t.creditUsagePercent;if(typeof n!=`number`||!Number.isFinite(n))return null;let r=Math.min(y,Math.max(0,n)),i=b(t.currentPeriod)?t.currentPeriod:{},a=i.type,o=typeof a==`string`?a.replace(`USAGE_PERIOD_TYPE_`,``).toLowerCase():``,s=i.end??t.billingPeriodEnd,c=typeof s==`string`&&Number.isFinite(Date.parse(s))?s:void 0;return{percent:r,status:`ok`,window:o&&o!==`unspecified`?o:`billing`,...c?{resetsAt:c}:{}}}async function S(e,t,n={}){let r=new AbortController,i=setTimeout(()=>r.abort(),n.timeoutMs??_);try{let n=await t(g,{headers:{Authorization:`Bearer ${e}`},signal:r.signal}),{status:i}=n;if(i===404||i===501)return null;if(!n.ok)throw Error(`xAI Grok usage: ${i===401||i===403?`re-login required`:`failed`} (${i})`);let a=await n.text();if(a.length>v)return null;try{return x(JSON.parse(a))}catch{return null}}finally{clearTimeout(i)}}var C=`xai-grok`,w=`https://auth.x.ai`,T=`${w}/oauth2/authorize`,E=`${w}/oauth2/token`,D=`b1a00492-073a-47ea-816f-4c329264a828`,O=`openid profile email offline_access grok-cli:access api:access`,k=`http://127.0.0.1:56121/callback`,A=`http://127.0.0.1:56121/*`,j=`https://api.x.ai/v1`,M=`grok-4.7`,N=`${C}-openai`;function P(e){if(e.some(e=>e.id===M))return e;let t=e.find(e=>e.id===`grok-4.6`)??e.find(e=>e.api===`openai-responses`)??e[0];return t?[{...t,id:M,name:`Grok 4.7`,api:`openai-responses`,reasoning:!0,input:[`text`,`image`],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:5e5,thinkingLevelMap:{off:null,minimal:null,low:`low`,medium:`medium`,high:`high`,xhigh:`xhigh`,max:null}},...e]:e}function F(){return P(e(`xai`))}function I(e){return{id:e.id,name:e.name,api:`openai`,reasoning:e.reasoning,input:e.input,context_window:e.contextWindow,max_tokens:e.maxTokens,compat:e.compat,thinkingLevelMap:e.thinkingLevelMap,cost:e.cost}}function L(e){let t=F(),n=t.find(t=>t.id===e.id);if(!n&&(console.warn(`xAI model "${e.id}" is no longer in the pi-ai catalog; falling back to default "${M}"`),n=t.find(e=>e.id===M),!n))throw Error(`xAI default model "${M}" is not registered by pi-ai`);if(n.api!==`openai-responses`&&n.api!==`openai-completions`)throw Error(`Unsupported pi-ai API "${n.api}" for xAI model "${e.id}"`);return{...e,...n,baseUrl:j}}async function R(e,t){let n=new URLSearchParams({grant_type:`authorization_code`,code:e,redirect_uri:k,client_id:D,code_verifier:t}),r=await fetch(E,{method:`POST`,headers:{"Content-Type":`application/x-www-form-urlencoded`},body:n});if(!r.ok)throw new h(`xAI token exchange failed: ${r.status} ${await r.text()}`,m.TOKEN_EXCHANGE_FAILED);let i=await r.json();if(!i.access_token)throw new h(`xAI token exchange did not return access_token.`,m.TOKEN_EXCHANGE_INVALID);return i}async function z(e){if(l())return null;try{let t=new URLSearchParams({grant_type:`refresh_token`,refresh_token:e,client_id:D}),n=await fetch(E,{method:`POST`,headers:{"Content-Type":`application/x-www-form-urlencoded`},body:t});if(!n.ok){let e=await n.text();return u(n.status,e)||console.error(`[xai-grok] refresh failed:`,n.status,e),null}return await n.json()}catch(e){return console.error(`[xai-grok] refresh error:`,e instanceof Error?e.message:String(e)),null}}function B(){return c().find(e=>e.providerId===C)}async function V(){let e=B();if(!e?.accessToken)throw new h("Not signed in to xAI Grok — run /login or `oauth-token xai-grok`",m.AUTH_MISSING,!0);let t=e.tokenExpiresAt??0;if(t&&Date.now()+6e4<t)return e.accessToken;if(e.refreshToken){let t=await z(e.refreshToken);if(t?.access_token)return await s({providerId:C,accessToken:t.access_token,refreshToken:t.refresh_token??e.refreshToken,tokenExpiresAt:Date.now()+(t.expires_in??21600)*1e3,scopes:t.scope??e.scopes}),t.access_token}return e.accessToken}async function H(){if(!B()?.accessToken)throw Error(`xAI Grok budget: not signed in`);return S(await V(),fetch)}function U(e,t){return{type:`error`,reason:`error`,error:{role:`assistant`,content:[],api:N,provider:C,model:e.id,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:`error`,errorMessage:t instanceof Error?t.message:String(t),timestamp:Date.now()}}}function W(e,t){return t?{...e??{},"x-grok-conv-id":t}:e}function G(e){console.error(`[xai-grok] Stream error:`,e instanceof Error?e.message:String(e))}async function K(e,t,n,r){try{let o=await V(),s=r.sessionId,c=L(t),l={...r,apiKey:o,headers:W(r.headers,s)},u=c.api===`openai-responses`?i(c,n,l):a(c,n,l);for await(let t of u)e.push(t);e.end()}catch(n){G(n),e.push(U(t,n)),e.end()}}async function q(e,t,n,i){try{let a=await V(),s=i?.sessionId,c=L(t),l={...i,apiKey:a,headers:W(i?.headers,s)},u=c.api===`openai-responses`?r(c,n,l):o(c,n,l);for await(let t of u)e.push(t);e.end()}catch(n){G(n),e.push(U(t,n)),e.end()}}var J=(e,n,r={})=>{let i=t();return K(i,e,n,r).catch(G),i},Y=(e,n,r)=>{let i=t();return q(i,e,n,r).catch(G),i},X={id:C,name:`xAI Grok (SuperGrok OAuth)`,description:`Grok via xAI OAuth — uses your SuperGrok subscription, no API key needed. Default model is Grok 4.7.`,requiresApiKey:!1,requiresBaseUrl:!1,isOAuth:!0,defaultModelId:M,oauthTokenDomains:[`api.x.ai`,`*.x.ai`,`auth.x.ai`,`accounts.x.ai`,`cli-chat-proxy.grok.com`],getModelIds:()=>F().map(I),getBudgetUsage:H,onOAuthLoginIntercepted:async(e,t,n)=>{let r=d(),i=await p(r),a=f(),o=f(),c=new URL(T);c.searchParams.set(`response_type`,`code`),c.searchParams.set(`client_id`,D),c.searchParams.set(`redirect_uri`,k),c.searchParams.set(`scope`,n?.scopes??O),c.searchParams.set(`code_challenge`,i),c.searchParams.set(`code_challenge_method`,`S256`),c.searchParams.set(`state`,a),c.searchParams.set(`nonce`,o),c.searchParams.set(`plan`,`generic`),c.searchParams.set(`referrer`,`slicc`);let l=await e({authorizeUrl:c.toString(),redirectUriPattern:A,onCapture:`close`});if(!l)throw new h(`xAI OAuth login was cancelled or timed out`,m.CALLBACK_TIMEOUT);let u=new URL(l),g=u.searchParams.get(`code`),_=u.searchParams.get(`state`);if(!g)throw new h(`xAI OAuth redirect did not include a code`,m.CODE_MISSING);if(_!==a)throw new h(`xAI OAuth state mismatch — possible CSRF, aborting`,m.STATE_MISMATCH);let v=await R(g,r);await s({providerId:C,accessToken:v.access_token,refreshToken:v.refresh_token,tokenExpiresAt:Date.now()+(v.expires_in??21600)*1e3,baseUrl:j,scopes:v.scope}),t()},onOAuthLogout:async()=>{await s({providerId:C,accessToken:``})},onSilentRenew:async()=>{let e=B();if(!e?.refreshToken)return null;let t=await z(e.refreshToken);return t?.access_token?(await s({providerId:C,accessToken:t.access_token,refreshToken:t.refresh_token??e.refreshToken,tokenExpiresAt:Date.now()+(t.expires_in??21600)*1e3,scopes:t.scope??e.scopes}),t.access_token):null}};function Z(){n({api:N,stream:J,streamSimple:Y})}export{m as XaiErrorCode,h as XaiOAuthError,X as config,Z as register};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as e,r as t}from"./account-store-
|
|
1
|
+
import{_ as e,r as t}from"./account-store-BXs7YUd1.js";import{a as n}from"./diagnostics-DN_idNHx.js";import{a as r}from"./compat-uEPf6-XW.js";import{s as i}from"./core-Dj0t7hQO.js";import{c as a,i as o,r as s,s as c}from"./legacy-api-aliases-jKEvBgOL.js";import"./provider-settings-WmZqlEWG.js";import{n as l,r as u}from"./bridge-token-required-BYgoMwr7.js";import{n as d,r as f,t as p}from"./pkce-hGf_TEnP.js";import{XaiErrorCode as m,XaiOAuthError as h}from"./xai-grok-errors-ByEMMSoz.js";function g(e){return typeof e==`object`&&!!e}function _(e){if(!g(e))return null;let t=g(e.config)?e.config:e,n=t.creditUsagePercent;if(typeof n!=`number`||!Number.isFinite(n))return null;let r=Math.min(1e3,Math.max(0,n)),i=g(t.currentPeriod)?t.currentPeriod:{},a=i.type,o=typeof a==`string`?a.replace(`USAGE_PERIOD_TYPE_`,``).toLowerCase():``,s=i.end??t.billingPeriodEnd,c=typeof s==`string`&&Number.isFinite(Date.parse(s))?s:void 0;return{percent:r,status:`ok`,window:o&&o!==`unspecified`?o:`billing`,...c?{resetsAt:c}:{}}}async function v(e,t,n={}){let r=new AbortController,i=setTimeout(()=>r.abort(),n.timeoutMs??8e3);try{let n=await t(`https://cli-chat-proxy.grok.com/v1/billing?format=credits`,{headers:{Authorization:`Bearer ${e}`},signal:r.signal}),{status:i}=n;if(i===404||i===501)return null;if(!n.ok)throw Error(`xAI Grok usage: ${i===401||i===403?`re-login required`:`failed`} (${i})`);let a=await n.text();if(a.length>65536)return null;try{return _(JSON.parse(a))}catch{return null}}finally{clearTimeout(i)}}const y=`xai-grok`,b=`https://auth.x.ai`,x=`${b}/oauth2/authorize`,S=`${b}/oauth2/token`,C=`b1a00492-073a-47ea-816f-4c329264a828`,w=`http://127.0.0.1:56121/callback`,T=`https://api.x.ai/v1`,E=`grok-4.7`,D=`${y}-openai`;function O(e){if(e.some(e=>e.id===E))return e;let t=e.find(e=>e.id===`grok-4.6`)??e.find(e=>e.api===`openai-responses`)??e[0];return t?[{...t,id:E,name:`Grok 4.7`,api:`openai-responses`,reasoning:!0,input:[`text`,`image`],cost:{input:2,output:6,cacheRead:.5,cacheWrite:0},contextWindow:5e5,maxTokens:5e5,thinkingLevelMap:{off:null,minimal:null,low:`low`,medium:`medium`,high:`high`,xhigh:`xhigh`,max:null}},...e]:e}function k(){return O(i(`xai`))}function A(e){return{id:e.id,name:e.name,api:`openai`,reasoning:e.reasoning,input:e.input,context_window:e.contextWindow,max_tokens:e.maxTokens,compat:e.compat,thinkingLevelMap:e.thinkingLevelMap,cost:e.cost}}function j(e){let t=k(),n=t.find(t=>t.id===e.id);if(!n&&(console.warn(`xAI model "${e.id}" is no longer in the pi-ai catalog; falling back to default "${E}"`),n=t.find(e=>e.id===E),!n))throw Error(`xAI default model "${E}" is not registered by pi-ai`);if(n.api!==`openai-responses`&&n.api!==`openai-completions`)throw Error(`Unsupported pi-ai API "${n.api}" for xAI model "${e.id}"`);return{...e,...n,baseUrl:T}}async function M(e,t){let n=new URLSearchParams({grant_type:`authorization_code`,code:e,redirect_uri:w,client_id:C,code_verifier:t}),r=await fetch(S,{method:`POST`,headers:{"Content-Type":`application/x-www-form-urlencoded`},body:n});if(!r.ok)throw new h(`xAI token exchange failed: ${r.status} ${await r.text()}`,m.TOKEN_EXCHANGE_FAILED);let i=await r.json();if(!i.access_token)throw new h(`xAI token exchange did not return access_token.`,m.TOKEN_EXCHANGE_INVALID);return i}async function N(e){if(l())return null;try{let t=new URLSearchParams({grant_type:`refresh_token`,refresh_token:e,client_id:C}),n=await fetch(S,{method:`POST`,headers:{"Content-Type":`application/x-www-form-urlencoded`},body:t});if(!n.ok){let e=await n.text();return u(n.status,e)||console.error(`[xai-grok] refresh failed:`,n.status,e),null}return await n.json()}catch(e){return console.error(`[xai-grok] refresh error:`,e instanceof Error?e.message:String(e)),null}}function P(){return t().find(e=>e.providerId===y)}async function F(){let t=P();if(!t?.accessToken)throw new h("Not signed in to xAI Grok — run /login or `oauth-token xai-grok`",m.AUTH_MISSING,!0);let n=t.tokenExpiresAt??0;if(n&&Date.now()+6e4<n)return t.accessToken;if(t.refreshToken){let n=await N(t.refreshToken);if(n?.access_token)return await e({providerId:y,accessToken:n.access_token,refreshToken:n.refresh_token??t.refreshToken,tokenExpiresAt:Date.now()+(n.expires_in??21600)*1e3,scopes:n.scope??t.scopes}),n.access_token}return t.accessToken}async function I(){if(!P()?.accessToken)throw Error(`xAI Grok budget: not signed in`);return v(await F(),fetch)}function L(e,t){return{type:`error`,reason:`error`,error:{role:`assistant`,content:[],api:D,provider:y,model:e.id,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:`error`,errorMessage:t instanceof Error?t.message:String(t),timestamp:Date.now()}}}function R(e,t){return t?{...e??{},"x-grok-conv-id":t}:e}function z(e){console.error(`[xai-grok] Stream error:`,e instanceof Error?e.message:String(e))}async function B(e,t,n,r){try{let i=await F(),a=r.sessionId,c=j(t),l={...r,apiKey:i,headers:R(r.headers,a)},u=c.api===`openai-responses`?o(c,n,l):s(c,n,l);for await(let t of u)e.push(t);e.end()}catch(n){z(n),e.push(L(t,n)),e.end()}}async function V(e,t,n,r){try{let i=await F(),o=r?.sessionId,s=j(t),l={...r,apiKey:i,headers:R(r?.headers,o)},u=s.api===`openai-responses`?a(s,n,l):c(s,n,l);for await(let t of u)e.push(t);e.end()}catch(n){z(n),e.push(L(t,n)),e.end()}}const H=(e,t,r={})=>{let i=n();return B(i,e,t,r).catch(z),i},U=(e,t,r)=>{let i=n();return V(i,e,t,r).catch(z),i},W={id:y,name:`xAI Grok (SuperGrok OAuth)`,description:`Grok via xAI OAuth — uses your SuperGrok subscription, no API key needed. Default model is Grok 4.7.`,requiresApiKey:!1,requiresBaseUrl:!1,isOAuth:!0,defaultModelId:E,oauthTokenDomains:[`api.x.ai`,`*.x.ai`,`auth.x.ai`,`accounts.x.ai`,`cli-chat-proxy.grok.com`],getModelIds:()=>k().map(A),getBudgetUsage:I,onOAuthLoginIntercepted:async(t,n,r)=>{let i=d(),a=await p(i),o=f(),s=f(),c=new URL(x);c.searchParams.set(`response_type`,`code`),c.searchParams.set(`client_id`,C),c.searchParams.set(`redirect_uri`,w),c.searchParams.set(`scope`,r?.scopes??`openid profile email offline_access grok-cli:access api:access`),c.searchParams.set(`code_challenge`,a),c.searchParams.set(`code_challenge_method`,`S256`),c.searchParams.set(`state`,o),c.searchParams.set(`nonce`,s),c.searchParams.set(`plan`,`generic`),c.searchParams.set(`referrer`,`slicc`);let l=await t({authorizeUrl:c.toString(),redirectUriPattern:`http://127.0.0.1:56121/*`,onCapture:`close`});if(!l)throw new h(`xAI OAuth login was cancelled or timed out`,m.CALLBACK_TIMEOUT);let u=new URL(l),g=u.searchParams.get(`code`),_=u.searchParams.get(`state`);if(!g)throw new h(`xAI OAuth redirect did not include a code`,m.CODE_MISSING);if(_!==o)throw new h(`xAI OAuth state mismatch — possible CSRF, aborting`,m.STATE_MISMATCH);let v=await M(g,i);await e({providerId:y,accessToken:v.access_token,refreshToken:v.refresh_token,tokenExpiresAt:Date.now()+(v.expires_in??21600)*1e3,baseUrl:T,scopes:v.scope}),n()},onOAuthLogout:async()=>{await e({providerId:y,accessToken:``})},onSilentRenew:async()=>{let t=P();if(!t?.refreshToken)return null;let n=await N(t.refreshToken);return n?.access_token?(await e({providerId:y,accessToken:n.access_token,refreshToken:n.refresh_token??t.refreshToken,tokenExpiresAt:Date.now()+(n.expires_in??21600)*1e3,scopes:n.scope??t.scopes}),n.access_token):null}};function G(){r({api:D,stream:H,streamSimple:U})}export{m as XaiErrorCode,h as XaiOAuthError,W as config,G as register};
|
package/dist/ui/index.html
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<title>slicc</title>
|
|
7
7
|
<link rel="icon" type="image/png" href="/logos/sliccy-color-1scoops-32x32.png" />
|
|
8
|
-
<script type="module" crossorigin src="/assets/main-
|
|
8
|
+
<script type="module" crossorigin src="/assets/main-CXeU8DQz.js"></script>
|
|
9
9
|
<link rel="modulepreload" crossorigin href="/assets/rolldown-runtime-Dd_uD5pT.js">
|
|
10
10
|
<link rel="modulepreload" crossorigin href="/assets/modulepreload-polyfill-P2Xu9kJm.js">
|
|
11
11
|
<link rel="modulepreload" crossorigin href="/assets/diagnostics-DN_idNHx.js">
|
|
@@ -31,12 +31,12 @@
|
|
|
31
31
|
<link rel="modulepreload" crossorigin href="/assets/tool-ui-eSQ1g2I1.js">
|
|
32
32
|
<link rel="modulepreload" crossorigin href="/assets/core-D8SLLGdB.js">
|
|
33
33
|
<link rel="modulepreload" crossorigin href="/assets/bridge-protocol-C52CnDIj.js">
|
|
34
|
-
<link rel="modulepreload" crossorigin href="/assets/providers-
|
|
34
|
+
<link rel="modulepreload" crossorigin href="/assets/providers-CUOgmyqw.js">
|
|
35
35
|
<link rel="modulepreload" crossorigin href="/assets/panel-rpc-D3EPRnmw.js">
|
|
36
36
|
<link rel="modulepreload" crossorigin href="/assets/bedrock-camp-compat-C64_Hwco.js">
|
|
37
37
|
<link rel="modulepreload" crossorigin href="/assets/bedrock-camp-extra-models-D9acqHGZ.js">
|
|
38
38
|
<link rel="modulepreload" crossorigin href="/assets/claude-model-version-DZmbk9E2.js">
|
|
39
|
-
<link rel="modulepreload" crossorigin href="/assets/account-store-
|
|
39
|
+
<link rel="modulepreload" crossorigin href="/assets/account-store-Bj2sWuL9.js">
|
|
40
40
|
<link rel="modulepreload" crossorigin href="/assets/telemetry-CKoAhRMv.js">
|
|
41
41
|
<link rel="modulepreload" crossorigin href="/assets/tray-follower-status-BAjnN7Ar.js">
|
|
42
42
|
<link rel="modulepreload" crossorigin href="/assets/clipboard-eqmn97SP.js">
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<title>slicc</title>
|
|
7
7
|
<link rel="icon" type="image/png" href="/logos/sliccy-color-1scoops-32x32.png" />
|
|
8
|
-
<script type="module" crossorigin src="/assets/main-
|
|
8
|
+
<script type="module" crossorigin src="/assets/main-CXeU8DQz.js"></script>
|
|
9
9
|
<link rel="modulepreload" crossorigin href="/assets/rolldown-runtime-Dd_uD5pT.js">
|
|
10
10
|
<link rel="modulepreload" crossorigin href="/assets/modulepreload-polyfill-P2Xu9kJm.js">
|
|
11
11
|
<link rel="modulepreload" crossorigin href="/assets/diagnostics-DN_idNHx.js">
|
|
@@ -31,12 +31,12 @@
|
|
|
31
31
|
<link rel="modulepreload" crossorigin href="/assets/tool-ui-eSQ1g2I1.js">
|
|
32
32
|
<link rel="modulepreload" crossorigin href="/assets/core-D8SLLGdB.js">
|
|
33
33
|
<link rel="modulepreload" crossorigin href="/assets/bridge-protocol-C52CnDIj.js">
|
|
34
|
-
<link rel="modulepreload" crossorigin href="/assets/providers-
|
|
34
|
+
<link rel="modulepreload" crossorigin href="/assets/providers-CUOgmyqw.js">
|
|
35
35
|
<link rel="modulepreload" crossorigin href="/assets/panel-rpc-D3EPRnmw.js">
|
|
36
36
|
<link rel="modulepreload" crossorigin href="/assets/bedrock-camp-compat-C64_Hwco.js">
|
|
37
37
|
<link rel="modulepreload" crossorigin href="/assets/bedrock-camp-extra-models-D9acqHGZ.js">
|
|
38
38
|
<link rel="modulepreload" crossorigin href="/assets/claude-model-version-DZmbk9E2.js">
|
|
39
|
-
<link rel="modulepreload" crossorigin href="/assets/account-store-
|
|
39
|
+
<link rel="modulepreload" crossorigin href="/assets/account-store-Bj2sWuL9.js">
|
|
40
40
|
<link rel="modulepreload" crossorigin href="/assets/telemetry-CKoAhRMv.js">
|
|
41
41
|
<link rel="modulepreload" crossorigin href="/assets/tray-follower-status-BAjnN7Ar.js">
|
|
42
42
|
<link rel="modulepreload" crossorigin href="/assets/clipboard-eqmn97SP.js">
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./provider-SsZ1z43S.js";export{e as readMcpAuthEntries};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./store-BXNUAqDB.js";import"./provider-CCQRZg4A.js";export{e as readMcpAuthEntries};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import{a as e,c as t,d as n,f as r,g as i,l as a,m as o,n as s,o as c,p as l,s as u,t as d,u as f}from"./stdio-tty-uIuGda2o.js";import{r as p}from"./global-prefix-DqCuANmV.js";import{r as m}from"./wasm-programs-CsoF9Lrt.js";import{t as h}from"./wasm-compiler-Ct7QZURL.js";import{S as g,w as ee,x as _}from"./sync-exec-dispatch-BwrIjhDd.js";import{t as v}from"./sync-sab-wire-D_d0fd3b.js";import{t as te}from"./sync-sab-responder-Bfd9S0pw.js";import{i as ne}from"./just-bash-compat-B-SPHuh_.js";const re=String.raw`printf '\033]7777;%s\007' "$?"`,y={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},ie=new Set([y.CHLD,y.URG,y.WINCH]),b=new Set([y.STOP,y.TSTP,y.TTIN,y.TTOU]);function x(e){return e===y.CONT?`continue`:b.has(e)?`stop`:ie.has(e)?`ignore`:`terminate`}function ae(e){return Number.isInteger(e)&&e>=1&&e<=31}function S(e){return 1<<e}const C={SIGINT:y.INT,SIGTERM:y.TERM,SIGKILL:y.KILL,SIGSTOP:y.STOP,SIGCONT:y.CONT},w=16384;function oe(){let e=Array(32).fill(0);return Object.assign(e,{0:3,1:28,2:127,3:21}),Object.assign(e,{4:4,6:1,8:17,9:19,10:26}),Object.assign(e,{12:18,13:15,14:23,15:22}),{c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:e}}const T=new TextEncoder;function E(e){return(e&192)==128}var D=class{screen;signal;termios=oe();cols=80;rows=24;readable=[];line=[];waiters=[];constructor(e,t){this.screen=e,this.signal=t}receive(e){for(let t of e)this.key(t);this.wake()}resize(e,t){this.setSize(e,t),this.signal(y.WINCH)}setSize(e,t){this.cols=e,this.rows=t}tcgets(){return{...this.termios,c_cc:[...this.termios.c_cc]}}tcsets(e){let t=this.canonical;this.termios={...e,c_cc:[...e.c_cc]},t&&!this.canonical&&this.line.length>0&&(this.readable.push(Uint8Array.from(this.line)),this.line=[],this.wake())}winsize(){return[this.rows,this.cols]}file(){return new u({read:(e,t)=>this.read(e,t),write:async e=>(this.output(e),e.length),poll:()=>({readable:this.readable.length>0,writable:!0,hangup:!1}),changed:e=>this.changed(e),close:()=>{},tty:this})}get canonical(){return!!(this.termios.c_lflag&2)}cc(e){return this.termios.c_cc[e]??0}key(e){let{c_iflag:t,c_lflag:n}=this.termios,r=e===13&&t&256?10:e;if(!(n&1&&this.signalKey(r))){if(!this.canonical){this.readable.push(Uint8Array.of(r)),n&8&&this.echo(r);return}this.edit(r)}}signalKey(e){let t=e===this.cc(0)?y.INT:e===this.cc(1)?y.QUIT:e===this.cc(10)?y.TSTP:0;return!t||e===0?!1:(this.termios.c_lflag&8&&this.echo(e),this.termios.c_lflag&128||(this.line=[],this.readable=[]),this.signal(t),!0)}edit(e){let t=!!(this.termios.c_lflag&8);e===this.cc(2)||e===8?this.rubOut(this.lastCharLength()):e===this.cc(3)?this.rubOut(this.line.length):e===this.cc(14)?this.rubOut(this.lastWordLength()):e===this.cc(4)?(this.readable.push(this.line.length>0?Uint8Array.from(this.line):null),this.line=[]):e===10?(this.line.push(e),t&&this.output(T.encode(`
|
|
2
|
-
`)),this.readable.push(Uint8Array.from(this.line)),this.line=[]):(this.line.push(e),t&&this.echo(e))}lastWordLength(){let e=this.line.length;for(;e>0&&this.line[e-1]===32;)e--;for(;e>0&&this.line[e-1]!==32;)e--;return this.line.length-e}lastCharLength(){let{line:e}=this,t=Math.min(1,e.length);if(this.termios.c_iflag&w)for(;t<e.length&&E(e[e.length-t]??0);)t++;return t}rubOut(e){let t=this.line.splice(this.line.length-e,e),n=this.termios.c_iflag&w?t.filter(e=>!E(e)).length:t.length;n>0&&this.termios.c_lflag&8&&this.output(T.encode(`\b \b`.repeat(n)),!1)}echo(e){if(e<32&&e!==10&&e!==9&&this.termios.c_lflag&512){this.output(Uint8Array.of(94,e+64),!1);return}this.output(Uint8Array.of(e))}output(e,t=!0){let{c_oflag:n}=this.termios;if(!t||!(n&1&&n&4)||!e.includes(10)){this.screen.write(e);return}let r=[];for(let t of e)t===10&&r.push(13),r.push(t);this.screen.write(Uint8Array.from(r))}async read(e,t){for(;this.readable.length===0;)await this.changed(t);let n=this.readable[0];if(n===null)return this.readable.shift(),new Uint8Array;if(n===void 0)return new Uint8Array;let r=[],i=0;for(;this.readable.length>0&&i<e;){let t=this.readable[0];if(t==null)break;let n=t.subarray(0,e-i);if(r.push(n),i+=n.length,n.length<t.length?this.readable[0]=t.subarray(n.length):this.readable.shift(),this.canonical)break}let a=new Uint8Array(i),o=0;for(let e of r)a.set(e,o),o+=e.length;return a}changed(e){return e?.aborted?Promise.reject(new c(`EINTR`)):new Promise((t,n)=>{let r=()=>{this.waiters=this.waiters.filter(e=>e!==i),n(new c(`EINTR`))},i=()=>{e?.removeEventListener(`abort`,r),t()};this.waiters.push(i),e?.addEventListener(`abort`,r,{once:!0})})}wake(){let e=this.waiters;this.waiters=[];for(let t of e)t()}},O=class extends Error{code;constructor(e){super(e),this.code=e}};function k(e){let t=()=>{};return{promise:new Promise((n,r)=>{t=()=>r(new c(`EINTR`)),e?.aborted?t():e?.addEventListener(`abort`,t,{once:!0})}),done:()=>e?.removeEventListener(`abort`,t)}}function se(e){return(e&255)<<8|127}function ce(e,t){return t?t&127:(e&255)<<8}function le(e){let t=new Uint8Array(e.reduce((e,t)=>e+t.length,0)),n=0;for(let r of e)t.set(r,n),n+=r.length;return t}var ue=class{parentFds;spawner;forker;children=new Map;leftovers=new Map;onChildState;stateChanged=[];watchers=new Map;constructor(e,t,n){this.parentFds=e,this.spawner=t,this.forker=n}async fork(e){if(!this.forker)throw new O(`ENOSYS`);return this.track(e,this.parentFds.fork(),new Map,this.forker)}async spawn(t,n,r=[]){if(!this.spawner)throw new O(`ENOSYS`);let i=new e,a=new Map;try{for(let[e,t]of n.entries())i.installAt(e,this.openSlot(t,e,a));for(let{fd:e,kernel:t,flags:n}of r)e<=2||(i.installAt(e,this.parentFds.get(t).retain()),n!==void 0&&i.setStatusFlags(e,n))}catch(e){throw await i.closeAll(),e}return this.track(t,i,a,this.spawner)}async track(e,t,n,r){let i;try{i=await r(e,t)}catch(e){throw await t.closeAll(),e}let a={exited:i.exited,termsig:i.termsig,captured:n};return i.exited.then(e=>{a.code=e,this.watchers.delete(i.pid),this.onChildState?.()}),i.onState?.((e,t)=>{a.stopReport=e===`stopped`?t:void 0,a.continueReport=e===`continued`,this.watchers.get(i.pid)?.(e,t);let n=this.stateChanged;this.stateChanged=[];for(let e of n)e();this.onChildState?.()}),this.children.set(i.pid,a),i.pid}watch(e,t){this.children.has(e)&&this.watchers.set(e,t)}openSlot(e,n,r){if(`fd`in e)return this.parentFds.get(e.fd).retain();if(`input`in e)return t(e.input);if(`capture`in e){let e=[];return r.set(n,e),l(t=>e.push(t))}return f()}async wait(e,t,n,r={}){let i;try{for(;;){let a=this.candidates(e,r);if(a.length===0)throw new c(`ECHILD`);let o=a.find(([,e])=>e.code!==void 0);if(o)return this.reap(o[0],o[1].code);let s=this.stateReport(a,r);if(s)return s;if(t)return[0,0];i??=k(n),await this.nextChange(a,r,i.promise)}}finally{i?.done()}}candidates(e,t){let n=[...this.children];if(e>0)return n.filter(([t])=>t===e);let r=t.inGroup;return e===-1||!r?n:n.filter(([e])=>r(e))}async nextChange(e,t,n){let r,i=new Promise(e=>r=e),a=t.untraced||t.continued;a&&r&&this.stateChanged.push(r);try{await Promise.race([...e.map(([,e])=>e.exited),...a?[i]:[],n])}finally{this.stateChanged=this.stateChanged.filter(e=>e!==r)}}stateReport(e,t){for(let[n,r]of e){if(t.untraced&&r.stopReport!==void 0){let e=r.stopReport;return r.stopReport=void 0,[n,se(e)]}if(t.continued&&r.continueReport)return r.continueReport=!1,[n,65535]}return null}reap(e,t){let n=this.children.get(e);return this.children.delete(e),n&&n.captured.size>0&&this.leftovers.set(e,n.captured),[e,ce(t,n?.termsig?.())]}captured(e,t){let n=this.leftovers.get(e),r=n?.get(t);return!n||!r?new Uint8Array:(n.delete(t),n.size===0&&this.leftovers.delete(e),le(r))}};function de(e,t,n){return{read:t.filter(t=>{let n=r(e.get(t).file);return n.readable||n.hangup}),write:n.filter(t=>{let n=r(e.get(t).file);return n.writable||n.hangup})}}function fe(e){let t=()=>{};return{promise:new Promise((n,r)=>{t=()=>r(new c(`EINTR`)),e.aborted?t():e.addEventListener(`abort`,t,{once:!0})}),done:()=>e.removeEventListener(`abort`,t)}}async function pe(e,t,n,r,i){let a=r<0?1/0:Date.now()+r,o=fe(i);o.promise.catch(()=>{});try{return await me(e,t,n,a,o.promise)}finally{o.done()}}async function me(e,t,n,r,i){for(;;){let a=de(e,t,n);if(a.read.length>0||a.write.length>0||Date.now()>=r)return a;let o=new AbortController,s=[...new Set([...t,...n])].flatMap(t=>{let n=e.get(t).file;return n.changed===void 0?[]:[n.changed(o.signal).catch(()=>void 0)]}),c,l=r===1/0?[]:[new Promise(e=>c=setTimeout(e,r-Date.now()))];try{await Promise.race([...s,...l,i])}finally{o.abort(),clearTimeout(c)}}}const A=32768;function j(e){return/^127\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(e)}async function M(e){try{return await e()}catch(e){throw e instanceof i?new c(e.code):e}}var he=class{waiters=[];wait(e){return e?.aborted?Promise.reject(new c(`EINTR`)):new Promise((t,n)=>{let r=()=>{this.waiters=this.waiters.filter(e=>e!==i),n(new c(`EINTR`))},i=()=>{e?.removeEventListener(`abort`,r),t()};this.waiters.push(i),e?.addEventListener(`abort`,r,{once:!0})})}wake(){let e=this.waiters;this.waiters=[];for(let t of e)t()}};function N(e,t){let n=new o,r=new o;for(let e of[n,r])e.openRead(),e.openWrite();e.attach({rx:r,tx:n}),t.attach({rx:n,tx:r})}var P=class e{net;domain;state=`open`;local;peer;link;readShut=!1;writeShut=!1;queue=[];backlog=0;bound=!1;changes=new he;options=new Map;constructor(e,t){this.net=e,this.domain=t}attach(e){this.link=e,this.state=`connected`,this.changes.wake()}get listening(){return this.state===`listening`}connection(){if(!this.link||this.state!==`connected`)throw new c(`ENOTCONN`);return this.link}async read(e,t){let{rx:n}=this.connection();return this.readShut||e<=0?new Uint8Array:M(()=>n.read(e,t))}async peek(e,t){let{rx:n}=this.connection();return this.readShut||e<=0?new Uint8Array:M(()=>n.peek(e,t))}async write(e,t){let{tx:n}=this.connection();if(this.writeShut)throw new c(`EPIPE`);return M(()=>n.write(e,t))}poll(){if(this.state===`listening`)return{readable:this.queue.length>0,writable:!1,hangup:!1};if(this.state!==`connected`||!this.link)return{readable:!1,writable:!1,hangup:!0};let{rx:e,tx:t}=this.link;return{readable:this.readShut||e.readReady,writable:this.writeShut||t.writeReady,hangup:e.writersGone&&t.readersGone}}changed(e){let t=this.changes.wait(e);if(this.state!==`connected`||!this.link)return t;let n=[t,this.link.rx.changed(e),this.link.tx.changed(e)];for(let e of n)e.catch(()=>void 0);return M(()=>Promise.race(n))}bind(e){if(this.state!==`open`||this.local)throw new c(`EINVAL`);if(e.family!==this.domain)throw new c(`EAFNOSUPPORT`);this.local=this.net.bind(this,e),this.bound=!0}listen(e){if(this.state===`connected`)throw new c(`EISCONN`);if(this.state!==`open`&&this.state!==`listening`)throw new c(`EINVAL`);if(!this.local){if(this.domain===`unix`)throw new c(`EINVAL`);this.bind({family:`inet`,host:`0.0.0.0`,port:0})}this.backlog=Math.min(Math.max(e,1),4096),this.state=`listening`}async accept(e,t=!1){for(;;){if(this.state!==`listening`)throw new c(`EINVAL`);let n=this.queue.shift();if(n)return n;if(t)throw new c(`EAGAIN`);await this.changes.wait(e)}}offer(e){return this.state!==`listening`||this.queue.length>=this.backlog?!1:(this.queue.push(e),this.changes.wake(),!0)}connect(t){if(this.state===`connected`)throw new c(`EISCONN`);if(this.state!==`open`)throw new c(`EINVAL`);if(t.family!==this.domain)throw new c(`EAFNOSUPPORT`);let n=this.net.target(t);this.local||(t.family===`inet`?(this.local=this.net.bind(this,{family:`inet`,host:`127.0.0.1`,port:0}),this.bound=!0):this.local={family:`unix`,path:``});let r=new e(this.net,this.domain);if(r.local=t.family===`inet`?{...t,host:F(t.host)}:t,r.peer=this.local,this.peer=r.local,N(this,r),!n.offer(r))throw this.unlink(),r.close(),new c(`ECONNREFUSED`)}unlink(){let e=this.link;e&&(e.rx.closeRead(),e.tx.closeWrite()),this.link=void 0,this.peer=void 0,this.state=`open`}shutdown(e){let{rx:t,tx:n}=this.connection();if(e!==0&&e!==1&&e!==2)throw new c(`EINVAL`);e!==1&&!this.readShut&&(this.readShut=!0,t.closeRead()),e!==0&&!this.writeShut&&(this.writeShut=!0,n.closeWrite()),this.changes.wake()}getOption(e,t){if(e===1)switch(t){case 3:return 1;case 4:return 0;case 30:return+(this.state===`listening`);case 39:return this.domain===`inet`?2:1;case 7:case 8:return this.options.get(`${e}:${t}`)??65536}return this.options.get(`${e}:${t}`)??0}setOption(e,t,n){this.options.set(`${e}:${t}`,n)}close(){let e=this.state;if(this.state=`closed`,e===`listening`)for(let e of this.queue.splice(0))e.close();this.link&&(this.readShut||this.link.rx.closeRead(),this.writeShut||this.link.tx.closeWrite(),this.readShut=!0,this.writeShut=!0),this.bound&&this.local&&this.net.release(this.local,this),this.bound=!1,this.changes.wake()}static pair(t,n){let r=new e(t,n),i=new e(t,n);return r.local=i.local=r.peer=i.peer=n===`inet`?{family:`inet`,host:`127.0.0.1`,port:0}:{family:`unix`,path:``},N(r,i),[r,i]}};function F(e){return e===`0.0.0.0`?`127.0.0.1`:e}function I(e){return e.family===`inet`?`inet:${e.port}`:`unix:${e.path}`}var L=class{bound=new Map;nextEphemeral=A;socket(e){return new P(this,e)}listen(e,t=128){let n=this.socket(e.family);return n.bind(e),n.listen(t),n}connect(e){let t=this.socket(e.family);return t.connect(e),t}bind(e,t){if(t.family===`unix`){if(t.path===``)throw new c(`EINVAL`)}else if(t.host!==`0.0.0.0`&&!j(t.host))throw new c(`EADDRNOTAVAIL`);let n=t.family===`inet`&&t.port===0?{...t,port:this.ephemeral()}:t,r=I(n);if(this.bound.has(r))throw new c(`EADDRINUSE`);return this.bound.set(r,e),n}release(e,t){let n=I(e);this.bound.get(n)===t&&this.bound.delete(n)}target(e){if(e.family===`inet`&&!j(F(e.host)))throw new c(`ENETUNREACH`);let t=this.bound.get(I(e));if(!t?.listening)throw new c(`ECONNREFUSED`);return t}ephemeral(){for(let e=0;e<28232;e++){let e=this.nextEphemeral;if(this.nextEphemeral=e===60999?A:e+1,!this.bound.has(`inet:${e}`))return e}throw new c(`EADDRINUSE`)}};const R=new Map;function ge(e){let t=R.get(e);return t||(t=new L,R.set(e,t)),t}function _e(e){return e?`${e.kind}:${e.scoopJid??``}`:`local`}const ve=[`sock-open`,`sock-pair`,`sock-bind`,`sock-listen`,`sock-accept`,`sock-connect`,`sock-shutdown`,`sock-name`,`sock-getopt`,`sock-setopt`];function z(e,t){let n=e.get(t).file;if(!(n instanceof P))throw new c(`ENOTSOCK`);return n}const B=e=>e===void 0?{ok:!0,kind:`void`}:{ok:!0,kind:`json`,json:e};async function ye(e,t){let{fds:n,net:r}=t;switch(e.op){case`sock-open`:return B(n.install(new u(r.socket(e.domain)),3));case`sock-pair`:{let[t,i]=P.pair(r,e.domain),a=n.install(new u(t),3);try{return B([a,n.install(new u(i),3)])}catch(e){throw await Promise.resolve(n.close(a)),e}}case`sock-bind`:return z(n,e.fd).bind(e.addr),B();case`sock-listen`:return z(n,e.fd).listen(e.backlog),B();case`sock-accept`:return B(await xe(t,e.fd,e.nonblock));case`sock-connect`:if(z(n,e.fd).connect(e.addr),e.nonblock)throw new c(`EINPROGRESS`);return B();case`sock-shutdown`:return z(n,e.fd).shutdown(e.how),B();case`sock-name`:{let t=z(n,e.fd),r=e.peer?t.peer:t.local;if(e.peer&&!r)throw new c(`ENOTCONN`);return B(r??be(t.domain))}case`sock-getopt`:return B(z(n,e.fd).getOption(e.level,e.name));case`sock-setopt`:return z(n,e.fd).setOption(e.level,e.name,e.value),B()}}function be(e){return e===`inet`?{family:`inet`,host:`0.0.0.0`,port:0}:{family:`unix`,path:``}}async function xe(e,t,n){let i=z(e.fds,t),a=!n&&!r(i).readable,o=await i.accept(a?e.blocking():void 0,n);return{fd:e.fds.install(new u(o),3),peer:o.peer}}function Se(e,t){let n=t.flags&3,r=n!==1,i=n===1||n===2,a=t.contents===void 0?t.orphan?new Uint8Array:void 0:new Uint8Array(t.contents),o=a?.length??0,s=!1,l=t.position,d=Promise.resolve(),f=e=>{let t=d.then(e);return d=t.catch(()=>void 0),t},p=async()=>{if(!a){try{a=await e.readFileBuffer(t.path)}catch{a=new Uint8Array}o=a.length}return a},m=e=>{let t=a??new Uint8Array;if(t.length>=e)return t;let n=new Uint8Array(Math.max(e,t.length*2,256));return n.set(t.subarray(0,o)),a=n,n},h=async()=>{!s||!a||t.orphan||(s=!1,await e.writeFile(t.path,a.slice(0,o)))};return new u({read:r?e=>f(async()=>{let t=await p(),n=Math.max(0,Math.min(e,o-l)),r=t.slice(l,l+n);return l+=n,r}):void 0,write:i?e=>f(async()=>{await p(),t.flags&1024&&(l=o);let n=m(l+e.length);return l>o&&n.fill(0,o,l),n.set(e,l),l+=e.length,o=Math.max(o,l),s=!0,e.length}):void 0,seek:(e,t)=>f(async()=>{let n=0;if(t===1)n=l;else if(t===2)await p(),n=o;else if(t!==0)throw new c(`EINVAL`);if(n+e<0)throw new c(`EINVAL`);return l=n+e,l}),flush:()=>f(h),close:()=>f(h)})}const Ce=new Set([`proc-setpgid`,`proc-getpgid`,`proc-getsid`,`proc-setsid`]);function we(e){return Ce.has(e.op)}function Te(e){return e.op.startsWith(`sock-`)}function Ee(e){return e.op.startsWith(`fd-`)}function De(e){return e.op.startsWith(`tty-`)}const Oe=new Set([`fd-read`,`fd-write`,`fd-close`,`fd-pipe`,`fd-poll`,`fd-open-vfs`,`fd-seek`,`fd-select`,`fd-info`,`tty-get`,`tty-set`,`tty-winsz`,`fd-flush`,`proc-spawn`,`proc-wait`,`proc-captured`,`proc-fork`,`proc-kill`,`proc-exec`,`proc-setpgid`,`proc-getpgid`,`proc-getsid`,`proc-setsid`,`tty-pgrp-get`,`tty-pgrp-set`,`sig-mask`,...ve]);function ke(e){let t=e.op;return typeof t==`string`&&Oe.has(t)}var Ae=class{pid;fds;options;exited=!1;children;caught=0;ignored=0;interrupt=new AbortController;execChild;execTermsig;stopped=0;stops=0;resumed=Promise.resolve();wake=()=>{};stateListeners=[];net;constructor(e,t,n={}){this.pid=e,this.fds=t,this.options=n,this.children=new ue(t,n.spawner,n.forker),this.children.onChildState=()=>this.signal(y.CHLD)}signal(e){if(this.execChild!==void 0)return Promise.resolve(this.options.kill?.(this.execChild,e)).catch(()=>void 0),e===y.KILL?`terminate`:`forward`;if(e===y.KILL)return`terminate`;if(e===y.CONT&&this.cont(),e===y.STOP)return this.stop(e);let t=S(e);if(this.ignored&t)return`ignore`;if(!(this.caught&t)){let t=x(e);return t===`stop`?this.stop(e):t}this.options.onPending?.(e);let n=this.interrupt;return this.interrupt=new AbortController,n.abort(),`deliver`}onState(e){this.stateListeners.push(e)}stop(e){if(this.stopped)return`stop`;this.stopped=e,this.stops++,this.resumed=new Promise(e=>this.wake=e);let t=this.interrupt;this.interrupt=new AbortController,t.abort();for(let t of this.stateListeners)t(`stopped`,e);return`stop`}cont(){if(this.stopped){this.stopped=0,this.wake();for(let e of this.stateListeners)e(`continued`,y.CONT)}}async syscall(e){for(;;){await this.resumed;let t=this.stops,n=await this.dispatch(e);if(!(!n.ok&&n.errno===`EINTR`&&this.stops!==t&&!this.options.hasPending?.()))return await this.resumed,n}}async dispatch(e){try{return Ee(e)?await this.fdSyscall(e):De(e)?this.ttySyscall(e):we(e)?this.jobSyscall(e):Te(e)?await this.socketSyscall(e):await this.procSyscall(e)}catch(e){if(e instanceof c||e instanceof O)return{ok:!1,errno:e.code,message:e.code};throw e}}blockingSignal(){if(this.options.hasPending?.())throw new c(`EINTR`);return this.interrupt.signal}async read(e){let t=this.fds.get(e.fd).file,n=e.peek?t.peek:t.read;if(!n)throw new c(e.peek&&t.read?`EOPNOTSUPP`:`EBADF`);if(t.tty&&this.checkForeground(t.tty),e.max<=0)return new Uint8Array;let i=r(t).readable;if(!i&&e.nonblock)throw new c(`EAGAIN`);let a=i?this.interrupt.signal:this.blockingSignal();return n.call(t,Math.max(0,Math.min(e.max,1048576)),a)}async write(e,t,n=!1){let i=this.fds.get(e).file;if(!i.write)throw new c(`EBADF`);if(!r(i).writable){if(n)throw new c(`EAGAIN`);return i.write(t,this.blockingSignal())}return n?i.write(t,AbortSignal.abort()):i.write(t,this.options.hasPending?.()?AbortSignal.abort():this.interrupt.signal)}async fdSyscall(e){switch(e.op){case`fd-read`:return{ok:!0,kind:`bytes`,bytes:await this.read(e)};case`fd-write`:return{ok:!0,kind:`json`,json:await this.write(e.fd,e.body,e.nonblock)};case`fd-close`:return await Promise.resolve(this.fds.close(e.fd)),{ok:!0,kind:`void`};case`fd-pipe`:{let e=n(),t=this.fds.install(e.read,3),r;try{r=this.fds.install(e.write,3)}catch(e){throw await Promise.resolve(this.fds.close(t)),e}return{ok:!0,kind:`json`,json:[t,r]}}case`fd-poll`:return{ok:!0,kind:`json`,json:r(this.fds.get(e.fd).file)};case`fd-open-vfs`:{if(!this.options.fs)throw new O(`ENOSYS`);let t=Se(this.options.fs,{path:e.path,flags:e.flags,position:e.position,...e.contents===void 0?{}:{contents:e.contents},...e.orphan?{orphan:!0}:{}});return{ok:!0,kind:`json`,json:this.fds.install(t,3)}}case`fd-info`:return{ok:!0,kind:`json`,json:{tty:this.fds.get(e.fd).file.tty!==void 0}};case`fd-select`:{let{read:t,write:n,timeoutMs:r}=e,i=this.blockingSignal();return{ok:!0,kind:`json`,json:await pe(this.fds,t,n,r,i)}}case`fd-seek`:{let t=this.fds.get(e.fd).file;if(!t.seek)throw new c(`ESPIPE`);return{ok:!0,kind:`json`,json:await t.seek(e.offset,e.whence)}}case`fd-flush`:{let t=this.fds.get(e.fd).file;return t.flush&&await t.flush(),{ok:!0,kind:`void`}}}}ttySyscall(e){let t=this.tty(e.fd),n=this.options.jobs;switch(e.op){case`tty-get`:return{ok:!0,kind:`json`,json:t.tcgets()};case`tty-set`:return t.tcsets(e.termios),{ok:!0,kind:`void`};case`tty-winsz`:return{ok:!0,kind:`json`,json:t.winsize()};case`tty-pgrp-get`:return{ok:!0,kind:`json`,json:n?n.tcgetpgrp(t,this.sid()):this.pid};case`tty-pgrp-set`:if(n)n.tcsetpgrp(this.pid,t,e.pgrp);else if(e.pgrp!==this.pid)throw new c(`EPERM`);return{ok:!0,kind:`void`}}}checkForeground(e){let t=this.options.jobs;if(!t)return;let n=this.pgid();if(t.tcgetpgrp(e,this.sid())!==n)throw this.ignored&S(y.TTIN)?new c(`EIO`):(t.killGroup(n,y.TTIN),new c(`EINTR`))}waitGroup(e){let t=this.options.jobs;if(!t||e>0||e===-1)return;let n=e===0?this.pgid():-e;return e=>(t.pgidOf(e)??this.pgid())===n}pgid(){return this.options.jobs?.getpgid(this.pid,0)??this.pid}sid(){return this.options.jobs?.getsid(this.pid,0)??this.pid}jobSyscall(e){let t=this.options.jobs,n=e=>{if(e!==0&&e!==this.pid)throw new c(`ESRCH`);return this.pid};switch(e.op){case`proc-setpgid`:if(t)t.setpgid(this.pid,e.pid,e.pgid);else if(n(e.pid)!==(e.pgid||this.pid))throw new c(`EPERM`);return{ok:!0,kind:`void`};case`proc-getpgid`:return{ok:!0,kind:`json`,json:t?.getpgid(this.pid,e.pid)??n(e.pid)};case`proc-getsid`:return{ok:!0,kind:`json`,json:t?.getsid(this.pid,e.pid)??n(e.pid)};case`proc-setsid`:if(!t)throw new c(`EPERM`);return{ok:!0,kind:`json`,json:t.setsid(this.pid)}}}tty(e){let t=this.fds.get(e).file.tty;if(!t)throw new c(`ENOTTY`);return t}socketSyscall(e){return this.net??=this.options.net??new L,ye(e,{fds:this.fds,net:this.net,blocking:()=>this.blockingSignal()})}async procSyscall(e){switch(e.op){case`proc-fork`:return{ok:!0,kind:`json`,json:await this.children.fork(e.state)};case`proc-spawn`:{let{file:t,argv:n,env:r,cwd:i,stdio:a,inherit:o}=e;return{ok:!0,kind:`json`,json:await this.children.spawn({file:t,argv:n,env:r,cwd:i},a,o)}}case`proc-wait`:{let t=e.nohang?this.interrupt.signal:this.blockingSignal(),n={untraced:e.untraced,continued:e.continued,inGroup:this.waitGroup(e.pid)};return{ok:!0,kind:`json`,json:await this.children.wait(e.pid,e.nohang,t,n)}}case`proc-exec`:this.execChild=e.pid,this.options.jobs?.exec(this.pid,e.pid),this.children.watch(e.pid,(e,t)=>e===`stopped`?this.stop(t):this.cont());try{let t=await this.children.wait(e.pid,!1),n=t[1]&127;return n&&(this.execTermsig=n),{ok:!0,kind:`json`,json:t}}finally{this.execChild=void 0}case`proc-kill`:if(e.sig!==0&&!ae(e.sig))throw new c(`EINVAL`);if(!await this.options.kill?.(e.pid===0?-this.pgid():e.pid,e.sig))throw new c(`ESRCH`);return{ok:!0,kind:`void`};case`sig-mask`:return this.caught=e.caught,this.ignored=e.ignored,{ok:!0,kind:`void`};case`proc-captured`:return{ok:!0,kind:`bytes`,bytes:this.children.captured(e.pid,e.slot)}}}async exit(){this.exited||(this.exited=!0,await this.fds.closeAll())}};function je(){return new Worker(new URL(`/assets/process-worker-BlGG6CFl.js`,``+import.meta.url),{type:`module`})}const V=new WeakMap;let Me=1;function Ne(e){let t=V.get(e);return t===void 0&&V.set(e,t=Me++),t}function Pe(e){return e.numbers().filter(e=>e>2).map(t=>{let n=e.get(t),r=e.statusFlags(t),i=n.file instanceof P?`socket`:a(n.file);return{fd:t,kind:i,...r===void 0?{}:{flags:r},...e.closesOnExec(t)?{cloexec:!0}:{},...i===`stream`?{desc:Ne(n)}:{}}})}function Fe(e){let t=new SharedArrayBuffer(64+v),n=new Int32Array(t,0,16),r=new Ae(e.pid,e.fds,{spawner:e.spawner,forker:e.forker,fs:e.fs,kill:e.kill,jobs:e.jobs,net:e.net,onPending:e=>void Atomics.or(n,8,S(e)),hasPending:()=>Atomics.load(n,8)!==0}),i=g({fs:e.fs,cwd:e.cwd}),a=(e.createWorker??je)(),o=te(a,t,i,{dispatch:async e=>ke(e)?r.syscall(e):`op`in e&&typeof e.op==`string`&&`path`in e?_(e):{ok:!1,errno:`ENOSYS`,message:`wasm-realm: no exec yet`}}),s,c=new Promise(e=>s=e),l=!1,u,d=(e,t)=>{l||(l=!0,u=t??r.execTermsig,a.removeEventListener(`message`,f),a.removeEventListener(`error`,p),o.dispose(),ee(i),a.terminate(),r.exit().then(()=>s(e),()=>s(e)))},f=t=>{let n=t.data;n?.type===`wasm-process-exit`?d(typeof n.code==`number`?n.code:70):n?.type===`wasm-process-error`&&(e.onError?.(String(n.message)),d(70))},p=t=>{t.preventDefault(),e.onError?.(String(t.message??`worker error`)),d(70)};a.addEventListener(`message`,f),a.addEventListener(`error`,p);let m={type:`wasm-process-init`,pid:e.pid,program:e.program,argv0:e.argv0,args:e.args,env:e.env,cwd:e.cwd,sab:t,...e.fork?{fork:e.fork}:{fds:Pe(e.fds)}};return a.postMessage(m,e.fork?[e.fork.memory.buffer]:[]),{pid:e.pid,exited:c,kill:(e=137)=>d(e,e>128&&e<160?e-128:void 0),signal:e=>{r.signal(e)===`terminate`&&d(e===y.KILL?137:128+e,e)},termsig:()=>u,onState:e=>r.onState(e)}}var Ie=class{members=new Map;foreground=new Map;add(e,t,n){let r=t===void 0?void 0:this.members.get(t),i={pid:e,ppid:r?.pid,pgid:r?.pgid??e,sid:r?.sid??e,signal:n};return this.members.set(e,i),i}remove(e){this.members.delete(e)}exec(e,t){let n=this.members.get(t);n&&(n.execParent=e);let r=this.members.get(e);r&&(r.execed=!0)}pgidOf(e){return this.members.get(e)?.pgid}member(e){let t=this.members.get(e);if(!t)throw new c(`ESRCH`);return t}setpgid(e,t,n){let r=this.member(t||e),i=n||r.pid;if(i<0)throw new c(`EINVAL`);let a=this.member(e);if(r.pid!==e){if(r.ppid!==e)throw new c(`ESRCH`);if(r.execed)throw new c(`EACCES`)}if(r.sid!==a.sid||r.pid===r.sid)throw new c(`EPERM`);let o=[...this.members.values()].some(e=>e.pgid===i&&e.sid===r.sid);if(i!==r.pid&&!o)throw new c(`EPERM`);r.pgid=i}getpgid(e,t){return this.member(t||e).pgid}getsid(e,t){return this.member(t||e).sid}setsid(e){let t=this.member(e);if(t.pgid===e)throw new c(`EPERM`);return t.sid=e,t.pgid=e,e}killGroup(e,t){let n=[...this.members.values()].filter(t=>t.pgid===e),r=new Set(n.map(e=>e.pid));if(t!==0)for(let e of n)(e.execParent===void 0||!r.has(e.execParent))&&e.signal(t);return n.length>0}tcgetpgrp(e,t){return this.foreground.get(e)??t}tcsetpgrp(e,t,n){let r=this.member(e);if(![...this.members.values()].some(e=>e.pgid===n&&e.sid===r.sid))throw new c(`EPERM`);this.foreground.set(t,n)}signalForeground(e,t,n){this.killGroup(this.tcgetpgrp(e,t),n)}};const H=new Map,Le=new Map(Object.entries(C).map(([e,t])=>[t,e])),U=/^\/(?:usr\/)?bin\/([^/]+)$/;let Re=4e4;function W(e){return e.endsWith(`.js`)?`${e.slice(0,-3)}.wasm`:`${e}.wasm`}function ze(e){return U.exec(e)?.[1]??G(e)}function G(e){return e.slice(e.lastIndexOf(`/`)+1)}function Be(e){return{exists:t=>e.fs.exists(t),readDir:async t=>(await e.fs.readdir(t)).map(e=>({name:e})),readFile:t=>e.fs.readFile(t)}}function K(e){return m(Be(e),p)}async function Ve(e,t){let n=await e.fs.stat(t),r=`${t}:${n.size}:${n.mtime.getTime()}`,i=H.get(r);return i||(i=h(t=>e.fs.readFileBuffer(t),t),H.set(r,i),i.catch(()=>H.delete(r))),i}function He(e){let t=``;for(let n=0;n<e.length;n+=32768)t+=String.fromCharCode(...e.subarray(n,n+32768));return t}function Ue(e){let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n)&255;return t}async function We(e){if(!e.file.read)return new Uint8Array;let t=[],n=0;for(let r=await e.file.read(65536);r.length>0;)t.push(r),n+=r.length,r=await e.file.read(65536);let r=new Uint8Array(n),i=0;for(let e of t)r.set(e,i),i+=e.length;return r}async function q(e,t,n){if(n.length===0||!e.has(t))return;let r=e.get(t).file;try{await r.write?.(n)}catch{}}function J(e,t){return e.has(t)&&e.get(t).file.tty!==void 0}function Ge(e){return{...J(e,0)?{}:{[d]:`0`},...J(e,1)?{}:{[s]:`0`}}}function Y(e){return{pid:e.pid,exited:e.exited,termsig:e.termsig,onState:t=>e.onState(t)}}var Ke=class{ctx;processConfig;onError;gate;live=new Set;shellChildren=new Set;wasmByPid=new Map;shellByPid=new Map;installed;jobs=new Ie;leader;net;constructor(e,t,n,r){this.ctx=e,this.processConfig=t,this.onError=n,this.gate=r,this.net=ge(_e(t?.owner))}commands(){return this.installed??=K(this.ctx),this.installed}async launch(e){let t,n;try{t=await this.ctx.fs.readFile(e.glue),n=await Ve(this.ctx,e.module),e.signal?.throwIfAborted()}catch(t){throw await e.fds.closeAll(),t}let r=e.defaults?{...e.defaults,...e.env}:e.env;return this.start({...e,env:r,program:{glue:t,module:n}})}start(e){let t=this.processConfig?.processManager,{pid:n}=this.register(`wasm`,[e.argv0,...e.args],e.cwd,e.env,e.ppid),r=Fe({pid:n,program:e.program,argv0:e.argv0,args:e.args,env:e.env,cwd:e.cwd,fds:e.fds,fs:this.ctx.fs,onError:this.onError,spawner:this.spawner(n),forker:this.forker(n,e),kill:(e,t)=>this.kill(e,t),jobs:this.jobs,net:this.net,...e.fork?{fork:e.fork}:{}});this.live.add(r),this.wasmByPid.set(n,r),this.leader??=n,this.jobs.add(n,e.ppid,e=>r.signal(e));let i=t?.onSignal((e,t)=>{e.pid===n&&r.signal(C[t])});return r.exited.then(e=>{this.live.delete(r),this.wasmByPid.delete(n),this.jobs.remove(n),i?.(),this.processConfig&&t?.exit(n,e)}),r}kill(e,t){if(e<0)return this.jobs.killGroup(-e,t);let n=this.wasmByPid.get(e);if(n)return t!==0&&n.signal(t),!0;let r=this.shellByPid.get(e);if(r)return t!==0&&r(t),!0;let i=this.processConfig?.processManager;if(!i)return!1;if(t===0)return i.get(e)!==null;let a=Le.get(t);return a===void 0?!1:this.gate?this.killOutside(e,a):i.signal(e,a)}async killOutside(e,t){if(await this.gate?.(`kill`,[`-${t.slice(3)}`,String(e)],{}))throw new c(`EPERM`);return this.processConfig?.processManager.signal(e,t)??!1}signalAll(e){for(let t of this.live)t.signal(e)}signalTerminal(e,t){this.leader!==void 0&&this.jobs.signalForeground(e,this.leader,t)}killAll(e){for(let t of this.live)t.kill(e);for(let e of this.shellChildren)e.abort()}async resolve(e,t,n){let r=U.exec(e)?.[1]??(e.includes(`/`)?void 0:e);if(r!==void 0){let e=await this.commands(),t=e.get(r);if(t)return{glue:t.glue,module:t.wasm,argv0:t.argv0,defaults:t.env};let n=r===`sh`?e.get(`bash`):void 0;return n&&{glue:n.glue,module:n.wasm,argv0:`sh`,defaults:n.env}}let i=this.ctx.fs.resolvePath(n,e),a=W(i);if(!(!await this.ctx.fs.exists(i)||!await this.ctx.fs.exists(a)))return{glue:i,module:a,argv0:G(t||e)}}forker(e,t){return async(n,r)=>Y(this.start({...t,cwd:n.cwd??t.cwd,fds:r,ppid:e,fork:n}))}spawner(e){return async(t,n)=>{let r=await this.resolve(t.file,t.argv[0]??t.file,t.cwd);if(!r)return this.runShellChild(t,n,e);let i=await this.gate?.(ze(t.file),t.argv.slice(1),t.env);return i?this.deniedChild(t,n,e,i):Y(await this.launch({...r,args:t.argv.slice(1),env:t.env,cwd:t.cwd,fds:n,ppid:e}))}}deniedChild(e,t,n,r){let{pid:i}=this.register(`shell`,e.argv,e.cwd,e.env,n),a=(async()=>(await q(t,2,new TextEncoder().encode(r.stderr)),await t.closeAll(),r.exitCode))();return this.processConfig&&a.then(e=>this.processConfig?.processManager.exit(i,e)),{pid:i,exited:a}}runShellChild(e,t,n){let r=this.ctx.exec;if(!r)throw t.closeAll().catch(()=>void 0),new O(`ENOSYS`);let{pid:i,abort:a}=this.register(`shell`,e.argv,e.cwd,e.env,n),o=a??new AbortController,s=()=>o.abort();this.ctx.signal?.addEventListener(`abort`,s,{once:!0}),this.ctx.signal?.aborted&&s();let c,l=e=>{x(e)===`terminate`&&(c??=e,o.abort())};this.shellChildren.add(o),this.shellByPid.set(i,l),this.jobs.add(i,n,l);let u=this.processConfig?.processManager.onSignal((e,t)=>{e.pid===i&&l(C[t])}),d=(async()=>{try{let n=J(t,0),i=t.has(0)&&!n?await We(t.get(0)):new Uint8Array,a=await r(e.file,{args:e.argv.slice(1),cwd:e.cwd,env:{...e.env,...Ge(t)},replaceEnv:!0,stdin:He(i),stdinKind:`bytes`,signal:o.signal});return await q(t,1,a.stdoutKind===`bytes`?Ue(a.stdout):new TextEncoder().encode(a.stdout)),await q(t,2,new TextEncoder().encode(a.stderr)),a.exitCode}catch(n){let r=n instanceof Error?n.message:String(n);return await q(t,2,new TextEncoder().encode(`${e.file}: ${r}\n`)),126}finally{await t.closeAll(),this.shellChildren.delete(o),this.shellByPid.delete(i),this.jobs.remove(i),u?.(),this.ctx.signal?.removeEventListener(`abort`,s)}})();return this.processConfig&&d.then(e=>this.processConfig?.processManager.exit(i,e)),{pid:i,exited:d,termsig:()=>c}}register(e,t,n,r,i){let a=this.processConfig;return a?a.processManager.spawn({kind:e,argv:t,cwd:n,env:r,owner:a.owner,ppid:i??a.getParentPid?.()}):{pid:Re++}}};const X=`usage: wasm [-t] [--argv0 NAME] [--module PATH] PROGRAM [ARGS...]
|
|
3
|
-
wasm --list
|
|
4
|
-
wasm --login
|
|
5
|
-
`;function qe(e){let t={},n=0;for(;;){if(e[n]===`-t`){t.tty=!0,n+=1;continue}if(e[n]===`--login-prompt`){t.login=!0,n+=1;continue}if(e[n]!==`--argv0`&&e[n]!==`--module`)break;let r=e[n+1];if(r===void 0)return;e[n]===`--argv0`?t.argv0=r:t.module=r,n+=2}let r=e[n];if(!(!r||r.startsWith(`-`)))return{...t,program:r,args:e.slice(n+1)}}function Z(e){if(!e)return()=>{};let t=new TextDecoder;return n=>{let r=t.decode(n,{stream:!0});r&&e(r)}}function Je(n,r,i,a){let o=[],s=n.limits?.maxOutputSize??268435456,c=0,u=!1,d=(e,t)=>n=>{if(c+=n.length,c>s){u=!0,r.killAll(1);return}e.push(n),t(n)},f=new e;return f.install(t(et(n))),f.install(l(d(o,Z(a)))),f.install(l(d(i,Z(a)))),{fds:f,collected:()=>({stdout:$e(o),note:u?`wasm: output exceeded ${s} bytes; stopped\n`:``}),release:()=>{}}}function Ye(t,n){let r=new D({write:e=>t.write(e)},e=>n.signalTerminal(r,e));r.setSize(t.cols,t.rows),t.onInput(e=>r.receive(e)),t.onResize((e,t)=>r.resize(e,t));let i=r.file(),a=new e;return a.installAt(0,i),a.installAt(1,i.retain()),a.installAt(2,i.retain()),{fds:a,collected:()=>({stdout:``,note:``}),release:()=>t.release()}}function Xe(e,t){let n={...e.exportedEnv??Object.fromEntries(e.env)};return t.tty&&(!n.TERM||n.TERM===`dumb`)&&(n.TERM=`xterm-256color`,n.COLORTERM??=`truecolor`),t.login&&(n.PS1??=`\\w $ `,n.PROMPT_COMMAND??=re),n}async function Ze(e,t){return(e.exportedEnv?.SLICC_SHELL??e.env.get(`SLICC_SHELL`))===`just-bash`||!t.terminal||typeof SharedArrayBuffer!=`function`||!(await K(e)).has(`bash`)?{stdout:``,stderr:``,exitCode:125}:$([`-t`,`--login-prompt`,`bash`,`-i`],e,t)}function Q(e){let t=[...e.values()].sort((e,t)=>e.name.localeCompare(t.name)),n=Math.max(0,...t.map(e=>e.name.length));return t.map(e=>`${e.name.padEnd(n)} ${e.pkg}\n`).join(``)}async function Qe(e,t,n){if(n.program.includes(`/`)||await e.fs.exists(e.fs.resolvePath(e.cwd,n.program)))return n;let r=(await t.commands()).get(n.program);return r?{...n,argv0:n.argv0??r.argv0,module:n.module??r.wasm,program:r.glue,defaults:r.env}:n}function $e(e){let t=``;for(let n of e)for(let e=0;e<n.length;e+=32768)t+=String.fromCharCode(...n.subarray(e,e+32768));return t}function et(e){let t=ne(e.stdin),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e)&255;return n}function tt(e,t){return e.defaults??t.defaults}async function $(e,t,n={}){let{processConfig:r,terminal:i}=n;if(e[0]===`--help`||e[0]===`-h`)return{stdout:X,stderr:``,exitCode:0};if(e[0]===`--login`&&e.length===1)return Ze(t,n);if(e[0]===`--list`&&e.length===1)return{stdout:Q(await K(t)),stderr:``,exitCode:0};let a=qe(e);if(!a)return{stdout:``,stderr:X,exitCode:2};if(typeof SharedArrayBuffer!=`function`)return{stdout:``,stderr:`wasm: the wasm realm needs SharedArrayBuffer, which this page lacks (it is not cross-origin isolated)
|
|
6
|
-
`,exitCode:126};let o=[],s=e=>{o.push(new TextEncoder().encode(`wasm: ${e}\n`))},c=new Ke(t,r,e=>s(e),n.gate),l=await Qe(t,c,a),u=t.fs.resolvePath(t.cwd,l.program),d;if(l.tty){let e=i?.lease();if(!e)return{stdout:``,stderr:`wasm: -t: no terminal to lend (only the panel terminal has one)
|
|
7
|
-
`,exitCode:1};d=Ye(e,c),s=t=>e.write(new TextEncoder().encode(`wasm: ${t}\r\n`))}else{d=Je(t,c,o,n.onOutput);for(let[e,t]of n.fds??[])d.fds.installAt(e,t),d.fds.setCloseOnExec(e)}let{fds:f}=d,p;try{p=await c.launch({glue:u,module:l.module?t.fs.resolvePath(t.cwd,l.module):W(u),argv0:l.argv0??u.slice(u.lastIndexOf(`/`)+1).replace(/\.js$/,``),args:l.args,env:Xe(t,l),defaults:tt(l,n),cwd:t.cwd,fds:f,signal:t.signal})}catch(e){if(d.release(),t.signal?.aborted)return{stdout:``,stderr:``,exitCode:130};let n=e instanceof Error?e.message:String(e);return{stdout:``,stderr:`wasm: ${l.program}: ${n}\n`,exitCode:127}}let m=()=>c.killAll(130);t.signal?.addEventListener(`abort`,m,{once:!0}),t.signal?.aborted&&m();try{let e=await p.exited,{stdout:t,note:n}=d.collected();return n&&o.push(new TextEncoder().encode(n)),{stdout:t,stderr:new TextDecoder().decode(nt(o)),exitCode:e,stdoutKind:`bytes`}}finally{d.release(),t.signal?.removeEventListener(`abort`,m)}}function nt(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}export{$ as runWasmCommand};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function e(){return{version:`6.210.0`,releasedAt:`2026-09-28T19:07:26Z`,buildId:`6.210.0-mulmdg52`}}let t=null;function n(e){t=e}function r(){return t}export{e as n,n as r,r as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e}from"./wc-onboarding-B1XwN74x.js";export{e as hasOnboardingFinalLickInHistory};
|