sliccy 6.99.7 → 6.99.8
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 +389 -614
- package/dist/ui/assets/__vite-browser-external-CyeY5rFA.js +1 -0
- package/dist/ui/assets/{account-store-y43KgcoW.js → account-store-BHr78r-q.js} +3 -3
- package/dist/ui/assets/{account-store-llwJaGRg.js → account-store-DhN2-vXh.js} +5 -5
- package/dist/ui/assets/adobe-BgNEArvI.js +2 -0
- package/dist/ui/assets/{adobe-C30ITWqR.js → adobe-C-61Gw8p.js} +1 -1
- package/dist/ui/assets/agent-panels-DwH4FR7k.js +1 -0
- package/dist/ui/assets/{anthropic-messages-DbPJ2ji9.js → anthropic-messages-B7p0objs.js} +1 -1
- package/dist/ui/assets/{anthropic-messages-CpSojOI8.js → anthropic-messages-JQYJ-RUq.js} +1 -1
- package/dist/ui/assets/{apply-layout-CyFMgsCH.js → apply-layout-DWTxIKYs.js} +1 -1
- package/dist/ui/assets/{apps-BaBqMpf9.js → apps-CDrFK--r.js} +1 -1
- package/dist/ui/assets/azure-openai-BCHBeybM.js +18 -0
- package/dist/ui/assets/azure-openai-C1aiXjjQ.js +18 -0
- package/dist/ui/assets/{azure-openai-responses-DUMDrZ29.js → azure-openai-responses-BNbgkULn.js} +1 -1
- package/dist/ui/assets/{azure-openai-responses-BcoOaRCx.js → azure-openai-responses-BULcSJeo.js} +1 -1
- package/dist/ui/assets/{bedrock-camp-LeceEQbU.js → bedrock-camp-9Mg_YE1C.js} +1 -1
- package/dist/ui/assets/{bedrock-camp-BcJEC3Pg.js → bedrock-camp-DP3Gfbz7.js} +1 -1
- package/dist/ui/assets/{browser-DdY1FBRp.js → browser-DGwroBSO.js} +3 -3
- package/dist/ui/assets/{bsh-watchdog-GrjFkpDG.js → bsh-watchdog--Df_ThJG.js} +1 -1
- package/dist/ui/assets/{cdp-ByIHQG_1.js → cdp-BzUC7d2h.js} +1 -1
- package/dist/ui/assets/{cerebras-DCOB1GIn.js → cerebras-BWY_xN7G.js} +1 -1
- package/dist/ui/assets/{cerebras-Oyxkgl8K.js → cerebras-X5XOc6kT.js} +1 -1
- package/dist/ui/assets/{claude-model-version-Csn7RPVg.js → claude-model-version-BXR93nLt.js} +1 -1
- package/dist/ui/assets/claude-model-version-D6lCh6G7.js +2 -0
- package/dist/ui/assets/{composer-speech-Bqp4MnUW.js → composer-speech-Byuwd2QJ.js} +1 -1
- package/dist/ui/assets/{connect-surface-N7OhnOjG.js → connect-surface-BqfnkTNQ.js} +1 -1
- package/dist/ui/assets/{cost-command-BQWpaecs.js → cost-command-CwOkolbd.js} +57 -57
- package/dist/ui/assets/{dist-_7dnux20.js → dist-BmTb9jmr.js} +1 -1
- package/dist/ui/assets/{dist-D7yTTAcb.js → dist-BnDrtqYs.js} +1 -1
- package/dist/ui/assets/dist-CMD3ZuiV.js +1 -0
- package/dist/ui/assets/{dist-DTAqvnM4.js → dist-CV-6KpFS.js} +1 -1
- package/dist/ui/assets/dist-CWHNqkcj.js +1 -0
- package/dist/ui/assets/dist-CrVgSn_b.js +6 -0
- package/dist/ui/assets/dist-DkG8wgj1.js +23 -0
- package/dist/ui/assets/dist-N1MMHRNk.js +18 -0
- package/dist/ui/assets/dist-RekgwRC0.js +12 -0
- package/dist/ui/assets/{dist-B4LJzMVB.js → dist-kBT87Ea7.js} +11 -11
- package/dist/ui/assets/{ensure-speech-assets-CO3wuKjp.js → ensure-speech-assets-Hv5Jwof_.js} +1 -1
- package/dist/ui/assets/{es-BDNIRkLU.js → es-BLFevQz4.js} +5 -5
- package/dist/ui/assets/{esbuild-wasm-DUOZmSly.js → esbuild-wasm-Dl3vgXvq.js} +2 -2
- package/dist/ui/assets/esp8266-1y0C3qJ1.js +1 -0
- package/dist/ui/assets/esptool-operations-CiccBbBW.js +12 -0
- package/dist/ui/assets/esptool-operations-lUvXx3gs.js +13 -0
- package/dist/ui/assets/{follower-navigate-watcher-Dd46El3D.js → follower-navigate-watcher-DRFF6ll0.js} +1 -1
- package/dist/ui/assets/fs-qMMHgiDM.js +2 -0
- package/dist/ui/assets/{fs-BNz_JyUR.js → fs-tsCmhLpU.js} +1 -1
- package/dist/ui/assets/github-CLAenO0m.js +2 -0
- package/dist/ui/assets/github-TenSKQL4.js +1 -0
- package/dist/ui/assets/{github-copilot-DiPxhMir.js → github-copilot-B-pJOojX.js} +1 -1
- package/dist/ui/assets/github-copilot-CvxZKmtr.js +2 -0
- package/dist/ui/assets/{github-install-CZSoNGFR.js → github-install-CSrLhUFy.js} +1 -1
- package/dist/ui/assets/{github-zip-CrdkhxjH.js → github-zip-KaxQyKKS.js} +1 -1
- package/dist/ui/assets/{google-generative-ai-Rjh7hNBV.js → google-generative-ai-DEMR2Ygt.js} +1 -1
- package/dist/ui/assets/{google-generative-ai-Dxo91M3n.js → google-generative-ai-ZQ9beFyW.js} +1 -1
- package/dist/ui/assets/{google-shared-DQJPCU3d.js → google-shared-B7H0ZrH8.js} +6 -6
- package/dist/ui/assets/google-shared-REamLvEm.js +11 -0
- package/dist/ui/assets/{google-vertex-DEwkNZJm.js → google-vertex-0C6GT5h4.js} +1 -1
- package/dist/ui/assets/{google-vertex-61Jj0dk6.js → google-vertex-DsErHx7o.js} +1 -1
- package/dist/ui/assets/handoff-link-BObMRgsx.js +1 -0
- package/dist/ui/assets/{hear-Co4TqejW.js → hear-zfLnACrB.js} +1 -1
- package/dist/ui/assets/{installer-CufDPCfO.js → installer-VcJEC2uC.js} +1 -1
- package/dist/ui/assets/{isomorphic-git-BAj-fLD-.js → isomorphic-git-WdgG3efW.js} +6 -6
- package/dist/ui/assets/js-realm-worker-CXQhPnY0.js +40 -0
- package/dist/ui/assets/{kernel-worker-DyoLnIZO.js → kernel-worker-BpjE-7BD.js} +421 -428
- package/dist/ui/assets/kokoro-BkJ3NLgd.js +4 -0
- package/dist/ui/assets/{legacy-api-aliases-oJPAvhVV.js → legacy-api-aliases-BYDhiWyY.js} +1 -1
- package/dist/ui/assets/{legacy-api-aliases-BnRqMAef.js → legacy-api-aliases-Dh4ciP2O.js} +1 -1
- package/dist/ui/assets/{libesm-BI4UHVqp.js → libesm-BypnjKEL.js} +1 -1
- package/dist/ui/assets/{libesm-zfj8k-QN.js → libesm-CSMdpGMF.js} +1 -1
- package/dist/ui/assets/lick-manager-CYlek4qq.js +2 -0
- package/dist/ui/assets/{lick-ws-bridge-yklVm5en.js → lick-ws-bridge-CdCpPLQn.js} +1 -1
- package/dist/ui/assets/{local-llm-DNFbzXTw.js → local-llm-D5B7umV1.js} +1 -1
- package/dist/ui/assets/{local-llm-DOnsCe6c.js → local-llm-onyoDvHB.js} +1 -1
- package/dist/ui/assets/magick-wasm-266b8ntc.js +43 -0
- package/dist/ui/assets/main-DjAHuk3R.js +22 -0
- package/dist/ui/assets/{main-cherry-3UVAQhqV.js → main-cherry-C6fqCnLL.js} +1 -1
- package/dist/ui/assets/{mount-DhhlMZMN.js → mount-BcopcDTf.js} +1 -1
- package/dist/ui/assets/mount-Cr-j5Qvu.js +2 -0
- package/dist/ui/assets/{mount-recovery-Dbd9EVjz.js → mount-recovery-DnWemQVb.js} +1 -1
- package/dist/ui/assets/{navigation-watcher-OPbGCby9.js → navigation-watcher-DrWMx-B4.js} +1 -1
- package/dist/ui/assets/new-session-DagG-ZZy.js +2 -0
- package/dist/ui/assets/oauth-bootstrap-CDgbPc25.js +2 -0
- package/dist/ui/assets/onboarding-orchestrator-DwBmySbw.js +1 -0
- package/dist/ui/assets/openai-BKEGagiR.js +17 -0
- package/dist/ui/assets/openai-Bgt_f1Dp.js +17 -0
- package/dist/ui/assets/{openai-codex-BI5-lt7L.js → openai-codex-B8nK05u1.js} +1 -1
- package/dist/ui/assets/openai-codex-CFHJKZXk.js +1 -0
- package/dist/ui/assets/{openai-codex-responses-CPOJeFUY.js → openai-codex-responses-C-nzMgox.js} +1 -1
- package/dist/ui/assets/{openai-codex-responses-jQR19NyX.js → openai-codex-responses-CG4v_H6T.js} +1 -1
- package/dist/ui/assets/{openai-completions-DGOcowq8.js → openai-completions-CIRx7G9l.js} +2 -2
- package/dist/ui/assets/{openai-completions-DGZFJo5D.js → openai-completions-ojba8VM0.js} +2 -2
- package/dist/ui/assets/{openai-responses-CDTdSIhv.js → openai-responses-BDRcKCF5.js} +1 -1
- package/dist/ui/assets/{openai-responses-bnETPgx9.js → openai-responses-DzwaJ-X-.js} +1 -1
- package/dist/ui/assets/openai-responses-shared-BjAQ1eIE.js +10 -0
- package/dist/ui/assets/openai-responses-shared-Dg_yfxea.js +10 -0
- package/dist/ui/assets/{openrouter-DZhpGJA4.js → openrouter-BQXiRTOg.js} +1 -1
- package/dist/ui/assets/openrouter-brhW7dHW.js +1 -0
- package/dist/ui/assets/{openrouter-images-C93KT7V_.js → openrouter-images-BAtqv3Im.js} +1 -1
- package/dist/ui/assets/{openrouter-images-CiM-JPBO.js → openrouter-images-Du3tMEQa.js} +1 -1
- package/dist/ui/assets/openrouter-oauth-DQ7iHoUX.js +1 -0
- package/dist/ui/assets/{openrouter-oauth-iFmYGgcr.js → openrouter-oauth-DuIS_qNZ.js} +1 -1
- package/dist/ui/assets/panel-rpc-handlers-BBgO_HM3.js +2 -0
- package/dist/ui/assets/panelize-shell-DpfBeau6.js +4 -0
- package/dist/ui/assets/pdfjs-DAWky37A.js +100 -0
- package/dist/ui/assets/{provider-CauMmJra.js → provider-D1IQTDOu.js} +1 -1
- package/dist/ui/assets/provider-VbLD3Pa_.js +2 -0
- package/dist/ui/assets/{provider-settings-CDR9tmFe.js → provider-settings-D24NB2-U.js} +1 -1
- package/dist/ui/assets/provider-store-access-CFkv-yrf.js +1 -0
- package/dist/ui/assets/provider-store-access-Dh0tBZso.js +1 -0
- package/dist/ui/assets/providers-CZ_sFfrt.js +2 -0
- package/dist/ui/assets/{providers-DS7U7ou8.js → providers-PfyMAay1.js} +1 -1
- package/dist/ui/assets/{py-realm-worker-B2OTI7Xc.js → py-realm-worker-D1gqcTkl.js} +2 -2
- package/dist/ui/assets/{pyodide-CkJHMMSo.js → pyodide-D43YUXvd.js} +2 -2
- package/dist/ui/assets/{quick-llm-DSQHsD_0.js → quick-llm-drlxgkUg.js} +1 -1
- package/dist/ui/assets/{recovery-screen-dGlemlkP.js → recovery-screen-BccxAWe7.js} +1 -1
- package/dist/ui/assets/{redirect-uri-BOpxbXbd.js → redirect-uri-AfF6uLvV.js} +1 -1
- package/dist/ui/assets/remote-cdp-transport-DeDqT7I4.js +1 -0
- package/dist/ui/assets/remote-sprinkle-vfs-CawR6gXx.js +1 -0
- package/dist/ui/assets/{remote-terminal-view-BNWZWMBC.js → remote-terminal-view-D2bRNJcS.js} +2 -2
- package/dist/ui/assets/{run-Cll4MnAK.js → run-BIKu737n.js} +1 -1
- package/dist/ui/assets/safe-buffer-OLJ0qaLt.js +12 -0
- package/dist/ui/assets/safe-buffer-iah92gQe.js +1 -0
- package/dist/ui/assets/{setup-feature-flags-remote-rcKrPHk7.js → setup-feature-flags-remote-Dxg6pIkQ.js} +1 -1
- package/dist/ui/assets/shared-B9N4MZd0.js +1 -0
- package/dist/ui/assets/shared-CPVZc-MN.js +4 -0
- package/dist/ui/assets/sidecar-repair-DCvPqdWE.js +1 -0
- package/dist/ui/assets/{skills-0Do2e7wj.js → skills-Cc4T1Cfp.js} +1 -1
- package/dist/ui/assets/{slicc-diff-DhGIKKqP.js → slicc-diff-DRjxoBYz.js} +1 -1
- package/dist/ui/assets/slicc-editor-D-eO_pjd.js +23 -0
- package/dist/ui/assets/slicc-editor-Sdfe-_x_.js +1 -0
- package/dist/ui/assets/slicc-version-CzfOvAya.js +1 -0
- package/dist/ui/assets/speak-BsVaFA0Z.js +3 -0
- package/dist/ui/assets/{sprinkle-bridge-C4qw-DTw.js → sprinkle-bridge-e00Na2NA.js} +1 -1
- package/dist/ui/assets/{sprinkle-manager-B5T2quSt.js → sprinkle-manager-BqdBktzt.js} +1 -1
- package/dist/ui/assets/{sprinkle-renderer-D64E-W2o.js → sprinkle-renderer-C9L5ZRvl.js} +2 -2
- package/dist/ui/assets/{sql-wasm-DO685FZu.js → sql-wasm-B7K7OCuB.js} +1 -1
- package/dist/ui/assets/{state-BrCP8Eff.js → state-B8PB53C0.js} +1 -1
- package/dist/ui/assets/{store-bEWnkux0.js → store-BsTL1Wgg.js} +1 -1
- package/dist/ui/assets/{store-C2gM1M-9.js → store-SXMbC-35.js} +1 -1
- package/dist/ui/assets/{sudo-D0ZG1KJr.js → sudo-Blo41kLx.js} +1 -1
- package/dist/ui/assets/sync-dialog-yRY0wRJj.js +1 -0
- package/dist/ui/assets/{temperature-support-B4x2xaWY.js → temperature-support-BVrwHxWv.js} +1 -1
- package/dist/ui/assets/{temperature-support-Cpml9LfI.js → temperature-support-LrmsX3ix.js} +1 -1
- package/dist/ui/assets/{transformers-env-HIDS8utb.js → transformers-env-_JNZLFlo.js} +1 -1
- package/dist/ui/assets/transformers.web-B0gi9Hor.js +39 -0
- package/dist/ui/assets/tray-leader-Mq6HIneb.js +1 -0
- package/dist/ui/assets/{upgrade-detection-Ckesn3Ns.js → upgrade-detection-DqD1aedt.js} +1 -1
- package/dist/ui/assets/voice-reply-B-I-XncI.js +1 -0
- package/dist/ui/assets/wc-attach-DgJVZRem.js +13 -0
- package/dist/ui/assets/wc-extension-b7ONOPn6.js +2 -0
- package/dist/ui/assets/wc-float-label-d3I12c8W.js +1 -0
- package/dist/ui/assets/{wc-floatbar-online-tsTifrU7.js → wc-floatbar-online-CFeU9jju.js} +1 -1
- package/dist/ui/assets/wc-follower-BU7l80Bf.js +17 -0
- package/dist/ui/assets/wc-follower-oauth-DIH7qpbt.js +5 -0
- package/dist/ui/assets/wc-live-DL5TcdQ7.js +399 -0
- package/dist/ui/assets/wc-nav-DjOpEDo-.js +2 -0
- package/dist/ui/assets/wc-onboarding-BeunqMQZ.js +2 -0
- package/dist/ui/assets/{wc-permissions-CEmFmdBe.js → wc-permissions-WjSZrbPa.js} +2 -2
- package/dist/ui/assets/{wc-placeholder-C1LDJQR7.js → wc-placeholder-mYgmrH75.js} +3 -3
- package/dist/ui/assets/{wc-settings-PtFpnkee.js → wc-settings-JfsyJgL9.js} +3 -3
- package/dist/ui/assets/{src-B-encLtu.js → wc-shell-B7yZ6nn6.js} +304 -161
- package/dist/ui/assets/{wc-shortcut-config-w6fJ0bVB.js → wc-shortcut-config-CRticSXA.js} +2 -2
- package/dist/ui/assets/{wc-sprinkles-CeAUkWME.js → wc-sprinkles-D-DWMPsX.js} +2 -2
- package/dist/ui/assets/wc-transcript-export-DVjtNvuR.js +2 -0
- package/dist/ui/assets/wc-tray-D6joGkUe.js +2 -0
- package/dist/ui/assets/welcome-detection-CEmFgOCI.js +1 -0
- package/dist/ui/assets/{whisper-session-DzV9Jmfi.js → whisper-session-Ba-J0yyJ.js} +2 -2
- package/dist/ui/assets/{xai-grok-DRbKtbML.js → xai-grok-DHRw8xLj.js} +1 -1
- package/dist/ui/assets/xai-grok-DIhtpBYR.js +1 -0
- package/dist/ui/assets/xterm-B5LH8GIb.css +1 -0
- package/dist/ui/assets/xterm-C3BHN0de.js +16 -0
- package/dist/ui/index.html +8 -11
- package/dist/ui/packages/webapp/index.html +8 -11
- package/dist/ui/slicc-diff.js +1 -1
- package/dist/ui/slicc-editor.js +1 -1
- package/package.json +2 -2
- package/dist/ui/assets/__vite-browser-external-CwfFUl-x.js +0 -1
- package/dist/ui/assets/adobe-DeM_oCMe.js +0 -2
- package/dist/ui/assets/agent-message-to-chat-_cvF5A5g.js +0 -1
- package/dist/ui/assets/agent-panels-B92KQapO.js +0 -1
- package/dist/ui/assets/azure-openai-B2VLKBwJ.js +0 -18
- package/dist/ui/assets/azure-openai-tc52REpx.js +0 -18
- package/dist/ui/assets/backend-local-1YuE96fx.js +0 -1
- package/dist/ui/assets/chat-session-store-pWb1-jNp.js +0 -1
- package/dist/ui/assets/claude-model-version-DoVrYsKi.js +0 -2
- package/dist/ui/assets/db-cKsBsMMN.js +0 -1
- package/dist/ui/assets/dictation-priming-CNllGgNq.js +0 -1
- package/dist/ui/assets/dip-rCM_6Bc6.js +0 -233
- package/dist/ui/assets/dist-B6HZAA0r.js +0 -1
- package/dist/ui/assets/dist-BHvDPTv0.js +0 -1
- package/dist/ui/assets/dist-C56QxoYU.js +0 -18
- package/dist/ui/assets/dist-COLaZOxM.js +0 -23
- package/dist/ui/assets/dist-CPNmKU6m.js +0 -12
- package/dist/ui/assets/dist-Cew647MY.js +0 -12
- package/dist/ui/assets/dist-mxmkfALf.js +0 -6
- package/dist/ui/assets/esptool-operations-BmdosN6N.js +0 -13
- package/dist/ui/assets/esptool-operations-CbgLIJzi.js +0 -12
- package/dist/ui/assets/export-provider-BEHTjSYw.js +0 -1
- package/dist/ui/assets/follower-presentation-DqBw0YiV.js +0 -1
- package/dist/ui/assets/fs-C6heN6Io.js +0 -2
- package/dist/ui/assets/github-BES17MG4.js +0 -2
- package/dist/ui/assets/github-BnrwrtRn.js +0 -1
- package/dist/ui/assets/github-copilot-CzZSdNg_.js +0 -2
- package/dist/ui/assets/google-shared-CzJgTu-P.js +0 -11
- package/dist/ui/assets/handoff-link-BM4ctkE8.js +0 -1
- package/dist/ui/assets/host-command-zx0pt9Np.js +0 -1
- package/dist/ui/assets/js-realm-worker-D_8dhTFA.js +0 -40
- package/dist/ui/assets/kokoro-Bs5vU5OU.js +0 -4
- package/dist/ui/assets/layout-schema-m9_VAwOw.js +0 -1
- package/dist/ui/assets/leader-session-events-Iq9N1w56.js +0 -1
- package/dist/ui/assets/lick-manager-DFmMezV-.js +0 -2
- package/dist/ui/assets/magick-wasm-BpzBj-21.js +0 -43
- package/dist/ui/assets/main-CPLi98yu.js +0 -22
- package/dist/ui/assets/mount-CvVyowQ-.js +0 -2
- package/dist/ui/assets/new-session-BUxTN19q.js +0 -2
- package/dist/ui/assets/oauth-bootstrap-BnctKs3I.js +0 -2
- package/dist/ui/assets/onboarding-orchestrator-BF4m_3Ig.js +0 -1
- package/dist/ui/assets/openai-CjBvzZcB.js +0 -17
- package/dist/ui/assets/openai-ZcrxEOGB.js +0 -17
- package/dist/ui/assets/openai-codex-ad3likLF.js +0 -1
- package/dist/ui/assets/openai-responses-shared-ChgvRZ74.js +0 -10
- package/dist/ui/assets/openai-responses-shared-DqJbHrek.js +0 -10
- package/dist/ui/assets/openrouter-BfwBtJ0a.js +0 -1
- package/dist/ui/assets/openrouter-oauth-D1ocgCDw.js +0 -1
- package/dist/ui/assets/panel-registry-CJdOibpf.js +0 -1
- package/dist/ui/assets/panel-rpc-handlers-Dj-UnwwI.js +0 -2
- package/dist/ui/assets/panelize-shell-Dfx0Qk97.js +0 -4
- package/dist/ui/assets/pdfjs-BspLIDsM.js +0 -100
- package/dist/ui/assets/provider-3zYFx7pL.js +0 -2
- package/dist/ui/assets/provider-settings-CZ97KB3C.js +0 -2
- package/dist/ui/assets/provider-store-access-DvHfXiAa.js +0 -2
- package/dist/ui/assets/provider-store-access-escWLliN.js +0 -1
- package/dist/ui/assets/providers-DJA67z1N.js +0 -2
- package/dist/ui/assets/remote-cdp-transport-CgOXLjZ8.js +0 -1
- package/dist/ui/assets/remote-sprinkle-vfs-e81pZJKo.js +0 -1
- package/dist/ui/assets/safe-buffer-B2wnAhUx.js +0 -12
- package/dist/ui/assets/safe-buffer-BwTVRVVo.js +0 -1
- package/dist/ui/assets/session-freezer-BgO7tLUp.js +0 -162
- package/dist/ui/assets/setup-standalone-prelude-50scBzpK.js +0 -2
- package/dist/ui/assets/setup-sudo-Ce_APR8D.js +0 -2
- package/dist/ui/assets/shared-6HJLEwgI.js +0 -1
- package/dist/ui/assets/shared-BzvvjAZt.js +0 -4
- package/dist/ui/assets/sidecar-repair-431vRT2V.js +0 -1
- package/dist/ui/assets/slicc-editor-CVftccS9.js +0 -1
- package/dist/ui/assets/slicc-editor-DsHp_in-.js +0 -12
- package/dist/ui/assets/slicc-version-qJjMq-6R.js +0 -1
- package/dist/ui/assets/speak-KEFd3n_I.js +0 -3
- package/dist/ui/assets/sync-dialog-ACgl0n-p.js +0 -1
- package/dist/ui/assets/timestamp-preference-sKwBl5I8.js +0 -2
- package/dist/ui/assets/transformers.web-Cg_-cFJu.js +0 -39
- package/dist/ui/assets/tray-leader-iVJTGwuf.js +0 -1
- package/dist/ui/assets/tray-sync-protocol-BZ5yhJH9.js +0 -1
- package/dist/ui/assets/tray-sync-protocol-DV_QG_Ey.js +0 -1
- package/dist/ui/assets/trusted-layer-ghPA1ENf.js +0 -1
- package/dist/ui/assets/voice-reply-DaVk8H0o.js +0 -1
- package/dist/ui/assets/wc-attach-3I9pOCPA.js +0 -13
- package/dist/ui/assets/wc-extension-D1gzObu-.js +0 -2
- package/dist/ui/assets/wc-float-label-CCMo81Ds.js +0 -1
- package/dist/ui/assets/wc-follower-DrCJN-aK.js +0 -17
- package/dist/ui/assets/wc-follower-oauth-Dw0qOLsI.js +0 -5
- package/dist/ui/assets/wc-live-qc9mrCs3.js +0 -8
- package/dist/ui/assets/wc-nav-CysORJLz.js +0 -2
- package/dist/ui/assets/wc-onboarding-COhEMI0E.js +0 -2
- package/dist/ui/assets/wc-scoop-color-ShF3p7L9.js +0 -1
- package/dist/ui/assets/wc-shell-lFwQe30J.js +0 -119
- package/dist/ui/assets/wc-shortcuts-GiPteshM.js +0 -26
- package/dist/ui/assets/wc-transcript-export-DKIleW7-.js +0 -2
- package/dist/ui/assets/wc-tray-_dof-pAl.js +0 -2
- package/dist/ui/assets/welcome-detection-iVN_xL76.js +0 -1
- package/dist/ui/assets/xai-grok-BnSpWJjV.js +0 -1
- package/dist/ui/assets/xterm-BSL5rRqA.js +0 -18
- package/dist/ui/assets/xterm-BmfB5bmM.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as e}from"./diagnostics-DN_idNHx.js";import{n as t,t as n}from"./models-BSkXF4T6.js";import{t as r}from"./provider-env-CTOcDKrQ.js";import{n as i}from"./headers-CbDaTl3c.js";import{t as a}from"./sanitize-unicode-DmIE6hZJ.js";import{i as o}from"./transform-messages-XkZ1QnTb.js";import{n as s,t as c}from"./error-body-pkrba6pf.js";import{a as l,c as u,d,i as f,l as p,n as m,o as h,r as g,s as _,t as v,u as y}from"./google-shared-
|
|
1
|
+
import{i as e}from"./diagnostics-DN_idNHx.js";import{n as t,t as n}from"./models-BSkXF4T6.js";import{t as r}from"./provider-env-CTOcDKrQ.js";import{n as i}from"./headers-CbDaTl3c.js";import{t as a}from"./sanitize-unicode-DmIE6hZJ.js";import{i as o}from"./transform-messages-XkZ1QnTb.js";import{n as s,t as c}from"./error-body-pkrba6pf.js";import{a as l,c as u,d,i as f,l as p,n as m,o as h,r as g,s as _,t as v,u as y}from"./google-shared-REamLvEm.js";var b=`v1`,x=`gcp-vertex-credentials`,S={THINKING_LEVEL_UNSPECIFIED:d.THINKING_LEVEL_UNSPECIFIED,MINIMAL:d.MINIMAL,LOW:d.LOW,MEDIUM:d.MEDIUM,HIGH:d.HIGH},C=0,w=(t,r,i)=>{let a=new e;return(async()=>{let e={role:`assistant`,content:[],api:`google-vertex`,provider:t.provider,model:t.id,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:`pending`,timestamp:Date.now()};try{if(i?.fetch&&i.fetch!==globalThis.fetch)throw Error(`Custom fetch is not supported by the Google Vertex adapter`);let o=M(i),s=o?D(t,o,i?.headers):E(t,P(i),F(i),i?.headers,i?.env),c=I(t,r,i),l=await i?.onPayload?.(c,t);l!==void 0&&(c=l);let u=await _(()=>s.models.generateContentStream(c),i);a.push({type:`start`,partial:e});let d=null,p=e.content,m=()=>p.length-1;for await(let r of u){e.responseId||=r.responseId;let i=r.candidates?.[0];if(i?.content?.parts)for(let t of i.content.parts){if(t.text!==void 0){let n=g(t);(!d||n&&d.type!==`thinking`||!n&&d.type!==`text`)&&(d&&(d.type===`text`?a.push({type:`text_end`,contentIndex:p.length-1,content:d.text,partial:e}):a.push({type:`thinking_end`,contentIndex:m(),content:d.thinking,partial:e})),n?(d={type:`thinking`,thinking:``,thinkingSignature:void 0},e.content.push(d),a.push({type:`thinking_start`,contentIndex:m(),partial:e})):(d={type:`text`,text:``},e.content.push(d),a.push({type:`text_start`,contentIndex:m(),partial:e}))),d.type===`thinking`?(d.thinking+=t.text,d.thinkingSignature=h(d.thinkingSignature,t.thoughtSignature),a.push({type:`thinking_delta`,contentIndex:m(),delta:t.text,partial:e})):(d.text+=t.text,d.textSignature=h(d.textSignature,t.thoughtSignature),a.push({type:`text_delta`,contentIndex:m(),delta:t.text,partial:e}))}if(t.functionCall){d&&=(d.type===`text`?a.push({type:`text_end`,contentIndex:m(),content:d.text,partial:e}):a.push({type:`thinking_end`,contentIndex:m(),content:d.thinking,partial:e}),null);let n=t.functionCall.id,r={type:`toolCall`,id:!n||e.content.some(e=>e.type===`toolCall`&&e.id===n)?`${t.functionCall.name}_${Date.now()}_${++C}`:n,name:t.functionCall.name||``,arguments:t.functionCall.args??{},...t.thoughtSignature&&{thoughtSignature:t.thoughtSignature}};e.content.push(r),a.push({type:`toolcall_start`,contentIndex:m(),partial:e}),a.push({type:`toolcall_delta`,contentIndex:m(),delta:JSON.stringify(r.arguments),partial:e}),a.push({type:`toolcall_end`,contentIndex:m(),toolCall:r,partial:e})}}i?.finishReason&&(e.rawStopReason=i.finishReason,e.stopReason=f(i.finishReason),e.content.some(e=>e.type===`toolCall`)&&e.stopReason===`stop`&&(e.stopReason=`toolUse`)),r.usageMetadata&&(e.usage={input:(r.usageMetadata.promptTokenCount||0)-(r.usageMetadata.cachedContentTokenCount||0),output:(r.usageMetadata.candidatesTokenCount||0)+(r.usageMetadata.thoughtsTokenCount||0),cacheRead:r.usageMetadata.cachedContentTokenCount||0,cacheWrite:0,reasoning:r.usageMetadata.thoughtsTokenCount||0,totalTokens:r.usageMetadata.totalTokenCount||0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},n(t,e.usage))}if(d&&(d.type===`text`?a.push({type:`text_end`,contentIndex:m(),content:d.text,partial:e}):a.push({type:`thinking_end`,contentIndex:m(),content:d.thinking,partial:e})),i?.signal?.aborted)throw Error(`Request was aborted`);if(e.stopReason===`pending`)throw Error(`Google Vertex stream ended without a finish reason`);if(e.stopReason===`aborted`||e.stopReason===`error`){let t=e.rawStopReason?`Provider stopped with: ${e.rawStopReason}`:`An unknown error occurred`;throw Error(t)}a.push({type:`done`,reason:e.stopReason,message:e}),a.end()}catch(t){for(let t of e.content)`index`in t&&delete t.index;e.stopReason=i?.signal?.aborted?`aborted`:`error`,e.errorMessage=c(s(t)),a.push({type:`error`,reason:e.stopReason,error:e}),a.end()}})(),a},T=(e,n,r)=>{let i=o(e,n,r,void 0);if(!r?.reasoning)return w(e,n,{...i,thinking:{enabled:!1}});let a=t(e,r.reasoning),s=a===`off`?`high`:a,c=e;return L(c)||R(c)?w(e,n,{...i,thinking:{enabled:!0,level:B(s,c)}}):w(e,n,{...i,thinking:{enabled:!0,budgetTokens:V(c,s,r.thinkingBudgets)}})};function E(e,t,n,r,i){let a=j(i);return new p({vertexai:!0,project:t,location:n,apiVersion:b,...a?{googleAuthOptions:a}:{},httpOptions:O(e,r)})}function D(e,t,n){return new p({vertexai:!0,apiKey:t,apiVersion:b,httpOptions:O(e,n)})}function O(e,t){let n={},r=k(e.baseUrl);r&&(n.baseUrl=r,n.baseUrlResourceScope=y.COLLECTION,A(r)&&(n.apiVersion=``));let a=i({...e.headers,...t});return a&&(n.headers=a),Object.keys(n).length>0?n:void 0}function k(e){let t=e.trim();if(!(!t||t.includes(`{location}`)))return t}function A(e){try{return new URL(e).pathname.split(`/`).some(e=>/^v\d+(?:beta\d*)?$/.test(e))}catch{return/(?:^|\/)v\d+(?:beta\d*)?(?:\/|$)/.test(e)}}function j(e){let t=r(`GOOGLE_APPLICATION_CREDENTIALS`,e);return t?{keyFilename:t}:void 0}function M(e){let t=e?.apiKey?.trim();if(!(!t||t===x||N(t)))return t}function N(e){return/^<[^>]+>$/.test(e)}function P(e){let t=e?.project||r(`GOOGLE_CLOUD_PROJECT`,e?.env)||r(`GCLOUD_PROJECT`,e?.env);if(!t)throw Error(`Vertex AI requires a project ID. Set GOOGLE_CLOUD_PROJECT/GCLOUD_PROJECT or pass project in options.`);return t}function F(e){let t=e?.location||r(`GOOGLE_CLOUD_LOCATION`,e?.env);if(!t)throw Error(`Vertex AI requires a location. Set GOOGLE_CLOUD_LOCATION or pass location in options.`);return t}function I(e,t,n={}){let r=v(e,t),i={};n.temperature!==void 0&&(i.temperature=n.temperature),n.maxTokens!==void 0&&(i.maxOutputTokens=n.maxTokens);let o=u(e.id),s=t.tools?.length?l(t.tools,n.toolChoice,o):void 0,c={...Object.keys(i).length>0&&i,...t.systemPrompt&&{systemInstruction:a(t.systemPrompt)},...t.tools&&t.tools.length>0&&{tools:m(t.tools,!1,o)},...s!==void 0&&{toolConfig:{functionCallingConfig:{mode:s}}}};if(n.thinking?.enabled&&e.reasoning){let e={includeThoughts:!0};n.thinking.level===void 0?n.thinking.budgetTokens!==void 0&&(e.thinkingBudget=n.thinking.budgetTokens):e.thinkingLevel=S[n.thinking.level],c.thinkingConfig=e}else e.reasoning&&n.thinking&&!n.thinking.enabled&&(c.thinkingConfig=z(e));if(n.signal){if(n.signal.aborted)throw Error(`Request aborted`);c.abortSignal=n.signal}return{model:e.id,contents:r,config:c}}function L(e){return/gemini-3(?:\.\d+)?-pro/.test(e.id.toLowerCase())}function R(e){let t=e.id.toLowerCase();return/gemini-3(?:\.\d+)?-flash/.test(t)||t===`gemini-flash-latest`||t===`gemini-flash-lite-latest`}function z(e){let t=e;return L(t)?{thinkingLevel:d.LOW}:R(t)?{thinkingLevel:d.MINIMAL}:{thinkingBudget:0}}function B(e,t){if(L(t))switch(e){case`minimal`:case`low`:return`LOW`;case`medium`:case`high`:return`HIGH`}switch(e){case`minimal`:return`MINIMAL`;case`low`:return`LOW`;case`medium`:return`MEDIUM`;case`high`:return`HIGH`}}function V(e,t,n){return n?.[t]===void 0?e.id.includes(`2.5-pro`)?{minimal:128,low:2048,medium:8192,high:32768}[t]:e.id.includes(`2.5-flash`)?{minimal:128,low:2048,medium:8192,high:24576}[t]:-1:n[t]}export{w as stream,T as streamSimple};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as e}from"./diagnostics-DN_idNHx.js";import{n as t,t as n}from"./models-4WTk3EBD.js";import{t as r}from"./provider-env-CILujRmO.js";import{n as i}from"./headers-CbDaTl3c.js";import{t as a}from"./sanitize-unicode-DmIE6hZJ.js";import{i as o}from"./transform-messages-DZg9zDcV.js";import{n as s,t as c}from"./error-body-pkrba6pf.js";import{a as l,c as u,d,i as f,l as p,n as m,o as h,r as g,s as _,t as v,u as y}from"./google-shared-
|
|
1
|
+
import{i as e}from"./diagnostics-DN_idNHx.js";import{n as t,t as n}from"./models-4WTk3EBD.js";import{t as r}from"./provider-env-CILujRmO.js";import{n as i}from"./headers-CbDaTl3c.js";import{t as a}from"./sanitize-unicode-DmIE6hZJ.js";import{i as o}from"./transform-messages-DZg9zDcV.js";import{n as s,t as c}from"./error-body-pkrba6pf.js";import{a as l,c as u,d,i as f,l as p,n as m,o as h,r as g,s as _,t as v,u as y}from"./google-shared-B7H0ZrH8.js";const b={THINKING_LEVEL_UNSPECIFIED:d.THINKING_LEVEL_UNSPECIFIED,MINIMAL:d.MINIMAL,LOW:d.LOW,MEDIUM:d.MEDIUM,HIGH:d.HIGH};let x=0;const S=(t,r,i)=>{let a=new e;return(async()=>{let e={role:`assistant`,content:[],api:`google-vertex`,provider:t.provider,model:t.id,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:`pending`,timestamp:Date.now()};try{if(i?.fetch&&i.fetch!==globalThis.fetch)throw Error(`Custom fetch is not supported by the Google Vertex adapter`);let o=A(i),s=o?T(t,o,i?.headers):w(t,M(i),N(i),i?.headers,i?.env),c=P(t,r,i),l=await i?.onPayload?.(c,t);l!==void 0&&(c=l);let u=await _(()=>s.models.generateContentStream(c),i);a.push({type:`start`,partial:e});let d=null,p=e.content,m=()=>p.length-1;for await(let r of u){e.responseId||=r.responseId;let i=r.candidates?.[0];if(i?.content?.parts)for(let t of i.content.parts){if(t.text!==void 0){let n=g(t);(!d||n&&d.type!==`thinking`||!n&&d.type!==`text`)&&(d&&(d.type===`text`?a.push({type:`text_end`,contentIndex:p.length-1,content:d.text,partial:e}):a.push({type:`thinking_end`,contentIndex:m(),content:d.thinking,partial:e})),n?(d={type:`thinking`,thinking:``,thinkingSignature:void 0},e.content.push(d),a.push({type:`thinking_start`,contentIndex:m(),partial:e})):(d={type:`text`,text:``},e.content.push(d),a.push({type:`text_start`,contentIndex:m(),partial:e}))),d.type===`thinking`?(d.thinking+=t.text,d.thinkingSignature=h(d.thinkingSignature,t.thoughtSignature),a.push({type:`thinking_delta`,contentIndex:m(),delta:t.text,partial:e})):(d.text+=t.text,d.textSignature=h(d.textSignature,t.thoughtSignature),a.push({type:`text_delta`,contentIndex:m(),delta:t.text,partial:e}))}if(t.functionCall){d&&=(d.type===`text`?a.push({type:`text_end`,contentIndex:m(),content:d.text,partial:e}):a.push({type:`thinking_end`,contentIndex:m(),content:d.thinking,partial:e}),null);let n=t.functionCall.id,r={type:`toolCall`,id:!n||e.content.some(e=>e.type===`toolCall`&&e.id===n)?`${t.functionCall.name}_${Date.now()}_${++x}`:n,name:t.functionCall.name||``,arguments:t.functionCall.args??{},...t.thoughtSignature&&{thoughtSignature:t.thoughtSignature}};e.content.push(r),a.push({type:`toolcall_start`,contentIndex:m(),partial:e}),a.push({type:`toolcall_delta`,contentIndex:m(),delta:JSON.stringify(r.arguments),partial:e}),a.push({type:`toolcall_end`,contentIndex:m(),toolCall:r,partial:e})}}i?.finishReason&&(e.rawStopReason=i.finishReason,e.stopReason=f(i.finishReason),e.content.some(e=>e.type===`toolCall`)&&e.stopReason===`stop`&&(e.stopReason=`toolUse`)),r.usageMetadata&&(e.usage={input:(r.usageMetadata.promptTokenCount||0)-(r.usageMetadata.cachedContentTokenCount||0),output:(r.usageMetadata.candidatesTokenCount||0)+(r.usageMetadata.thoughtsTokenCount||0),cacheRead:r.usageMetadata.cachedContentTokenCount||0,cacheWrite:0,reasoning:r.usageMetadata.thoughtsTokenCount||0,totalTokens:r.usageMetadata.totalTokenCount||0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},n(t,e.usage))}if(d&&(d.type===`text`?a.push({type:`text_end`,contentIndex:m(),content:d.text,partial:e}):a.push({type:`thinking_end`,contentIndex:m(),content:d.thinking,partial:e})),i?.signal?.aborted)throw Error(`Request was aborted`);if(e.stopReason===`pending`)throw Error(`Google Vertex stream ended without a finish reason`);if(e.stopReason===`aborted`||e.stopReason===`error`){let t=e.rawStopReason?`Provider stopped with: ${e.rawStopReason}`:`An unknown error occurred`;throw Error(t)}a.push({type:`done`,reason:e.stopReason,message:e}),a.end()}catch(t){for(let t of e.content)`index`in t&&delete t.index;e.stopReason=i?.signal?.aborted?`aborted`:`error`,e.errorMessage=c(s(t)),a.push({type:`error`,reason:e.stopReason,error:e}),a.end()}})(),a},C=(e,n,r)=>{let i=o(e,n,r,void 0);if(!r?.reasoning)return S(e,n,{...i,thinking:{enabled:!1}});let a=t(e,r.reasoning),s=a===`off`?`high`:a,c=e;return F(c)||I(c)?S(e,n,{...i,thinking:{enabled:!0,level:R(s,c)}}):S(e,n,{...i,thinking:{enabled:!0,budgetTokens:z(c,s,r.thinkingBudgets)}})};function w(e,t,n,r,i){let a=k(i);return new p({vertexai:!0,project:t,location:n,apiVersion:`v1`,...a?{googleAuthOptions:a}:{},httpOptions:E(e,r)})}function T(e,t,n){return new p({vertexai:!0,apiKey:t,apiVersion:`v1`,httpOptions:E(e,n)})}function E(e,t){let n={},r=D(e.baseUrl);r&&(n.baseUrl=r,n.baseUrlResourceScope=y.COLLECTION,O(r)&&(n.apiVersion=``));let a=i({...e.headers,...t});return a&&(n.headers=a),Object.keys(n).length>0?n:void 0}function D(e){let t=e.trim();if(!(!t||t.includes(`{location}`)))return t}function O(e){try{return new URL(e).pathname.split(`/`).some(e=>/^v\d+(?:beta\d*)?$/.test(e))}catch{return/(?:^|\/)v\d+(?:beta\d*)?(?:\/|$)/.test(e)}}function k(e){let t=r(`GOOGLE_APPLICATION_CREDENTIALS`,e);return t?{keyFilename:t}:void 0}function A(e){let t=e?.apiKey?.trim();if(!(!t||t===`gcp-vertex-credentials`||j(t)))return t}function j(e){return/^<[^>]+>$/.test(e)}function M(e){let t=e?.project||r(`GOOGLE_CLOUD_PROJECT`,e?.env)||r(`GCLOUD_PROJECT`,e?.env);if(!t)throw Error(`Vertex AI requires a project ID. Set GOOGLE_CLOUD_PROJECT/GCLOUD_PROJECT or pass project in options.`);return t}function N(e){let t=e?.location||r(`GOOGLE_CLOUD_LOCATION`,e?.env);if(!t)throw Error(`Vertex AI requires a location. Set GOOGLE_CLOUD_LOCATION or pass location in options.`);return t}function P(e,t,n={}){let r=v(e,t),i={};n.temperature!==void 0&&(i.temperature=n.temperature),n.maxTokens!==void 0&&(i.maxOutputTokens=n.maxTokens);let o=u(e.id),s=t.tools?.length?l(t.tools,n.toolChoice,o):void 0,c={...Object.keys(i).length>0&&i,...t.systemPrompt&&{systemInstruction:a(t.systemPrompt)},...t.tools&&t.tools.length>0&&{tools:m(t.tools,!1,o)},...s!==void 0&&{toolConfig:{functionCallingConfig:{mode:s}}}};if(n.thinking?.enabled&&e.reasoning){let e={includeThoughts:!0};n.thinking.level===void 0?n.thinking.budgetTokens!==void 0&&(e.thinkingBudget=n.thinking.budgetTokens):e.thinkingLevel=b[n.thinking.level],c.thinkingConfig=e}else e.reasoning&&n.thinking&&!n.thinking.enabled&&(c.thinkingConfig=L(e));if(n.signal){if(n.signal.aborted)throw Error(`Request aborted`);c.abortSignal=n.signal}return{model:e.id,contents:r,config:c}}function F(e){return/gemini-3(?:\.\d+)?-pro/.test(e.id.toLowerCase())}function I(e){let t=e.id.toLowerCase();return/gemini-3(?:\.\d+)?-flash/.test(t)||t===`gemini-flash-latest`||t===`gemini-flash-lite-latest`}function L(e){let t=e;return F(t)?{thinkingLevel:d.LOW}:I(t)?{thinkingLevel:d.MINIMAL}:{thinkingBudget:0}}function R(e,t){if(F(t))switch(e){case`minimal`:case`low`:return`LOW`;case`medium`:case`high`:return`HIGH`}switch(e){case`minimal`:return`MINIMAL`;case`low`:return`LOW`;case`medium`:return`MEDIUM`;case`high`:return`HIGH`}}function z(e,t,n){return n?.[t]===void 0?e.id.includes(`2.5-pro`)?{minimal:128,low:2048,medium:8192,high:32768}[t]:e.id.includes(`2.5-flash`)?{minimal:128,low:2048,medium:8192,high:24576}[t]:-1:n[t]}export{S as stream,C as streamSimple};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{l as e}from"./src-CAWTvdAa.js";function t(e,t){if(e==null)return[];let c;if(Array.isArray(e))c=e.join(`, `).replace(/\n/g,`, `);else if(typeof e==`string`)c=e.replace(/\n/g,`, `);else return[];if(c.length===0)return[];let l=[],u=c.length,d=0;for(;d<u&&(d=n(c,d),!(d>=u));){if(c[d]!==`<`){d=i(c,d);continue}let e=c.indexOf(`>`,d+1);if(e===-1)break;let f=c.slice(d+1,e);d=e+1;let p=[];for(;d<u&&(d=n(c,d),!(d>=u));){if(c[d]===`,`){d++;break}if(c[d]!==`;`){d=i(c,d);break}d++,d=n(c,d);let e=d;for(;d<u&&o(c.charCodeAt(d));)d++;if(d<u&&c[d]===`*`&&d++,e===d){d=i(c,d);break}let t=c.slice(e,d).toLowerCase();d=n(c,d);let s=``;if(d<u&&c[d]===`=`){if(d++,d=n(c,d),d<u&&c[d]===`"`){let e=a(c,d);s=e.value,d=e.end}else{let e=d;for(;d<u&&c[d]!==`;`&&c[d]!==`,`&&!r(c[d]);)d++;s=c.slice(e,d)}}p.push([t,s])}let m=s(f,p,t);m&&l.push(m)}return l}function n(e,t){for(;t<e.length&&(e[t]===` `||e[t]===` `);)t++;return t}function r(e){return e===` `||e===` `}function i(e,t){let n=!1;for(;t<e.length;){let r=e[t];if(n){if(r===`\\`&&t+1<e.length){t+=2;continue}r===`"`&&(n=!1)}else if(r===`"`)n=!0;else if(r===`,`)return t+1;t++}return t}function a(e,t){t++;let n=``;for(;t<e.length;){let r=e[t];if(r===`\\`)t++,t<e.length&&(n+=e[t],t++);else if(r===`"`)return{value:n,end:t+1};else n+=r,t++}return{value:n,end:t}}function o(e){if(e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122)return!0;switch(e){case 33:case 35:case 36:case 37:case 38:case 39:case 42:case 43:case 45:case 46:case 94:case 95:case 96:case 124:case 126:return!0}return!1}function s(e,t,n){let r={},i={};for(let[e,n]of t){if(e.endsWith(`*`)){let t=l(n);t!=null&&(i[e.slice(0,-1)]=t);continue}e===`rel`&&`rel`in r||(r[e]=n)}for(let[e,t]of Object.entries(i))r[e]=t;let a=c(e,n),o=r.anchor==null?void 0:c(r.anchor,n),s={href:a,rel:(r.rel??``).split(/[ \t]+/).filter(e=>e.length>0),params:r};return o!=null&&(s.anchor=o),r.type!=null&&(s.type=r.type),r.title!=null&&(s.title=r.title),r.hreflang!=null&&(s.hreflang=r.hreflang),s}function c(e,t){if(!t)return e;try{return new URL(e,t).toString()}catch{return e}}function l(e){let t=e.indexOf(`'`);if(t===-1)return null;let n=e.indexOf(`'`,t+1);if(n===-1||e.slice(0,t).toLowerCase()!==`utf-8`)return null;try{return decodeURIComponent(e.slice(n+1))}catch{return null}}function u(e){if(!e)return[];let t=[];for(let[n,r]of Object.entries(e))n.toLowerCase()===`link`&&typeof r==`string`&&r.length>0&&t.push(r);return t}var d=`${e}/rel/handoff`,f=`${e}/rel/upskill`;function p(e){let t=e.replace(/\/+$/,``),n=t.toLowerCase();return n.endsWith(`/skill.md`)?t.slice(0,-9):n===`skill.md`?``:t}var m=/^[A-Za-z0-9._/-]+$/,h=/^[A-Za-z0-9._/-]+$/,g=250,_=1024;function v(e){return!(e.length===0||e.length>g||!m.test(e)||e.startsWith(`-`)||e.startsWith(`/`)||e.endsWith(`/`)||e.includes(`..`)||e.endsWith(`.lock`))}function y(e){return!(e.length===0||e.length>_||!h.test(e)||e.startsWith(`-`)||e.startsWith(`/`)||e.includes(`..`))}function b(e,t){let n=t.branch;typeof n==`string`&&v(n)&&(e.branch=n);let r=t.path;if(typeof r==`string`&&r.length>0){let t=p(r);t.length>0&&y(t)&&(e.path=t)}}function x(e){for(let t of e){if(t.rel.includes(d)){let e={verb:`handoff`,target:t.href};return t.title!=null&&t.title.length>0&&(e.instruction=t.title),e}if(t.rel.includes(f)){let e={verb:`upskill`,target:t.href};return t.title!=null&&t.title.length>0&&(e.instruction=t.title),b(e,t.params),e}}return null}function S(e,n){let r=u(e);if(r.length===0)return{match:null,links:[]};let i=t(r,n);return{match:x(i),links:i}}export{S as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./logger-DDBAeTLF.js";import{t}from"./permissions-surface-registry-CilCRwhh.js";import{a as n,i as r,n as i,o as a,r as o}from"./whisper-session-
|
|
1
|
+
import{t as e}from"./logger-DDBAeTLF.js";import{t}from"./permissions-surface-registry-CilCRwhh.js";import{a as n,i as r,n as i,o as a,r as o}from"./whisper-session-Ba-J0yyJ.js";var s=e(`speech:hear`),c={};function l(){return c.getPermissionSurface?c.getPermissionSurface():t()||null}var u=3e4;function d(){if(typeof window>`u`)return null;let e=window;return e.SpeechRecognition??e.webkitSpeechRecognition??null}var f=class extends Error{code;constructor(e){super(p(e)),this.name=`SpeechRecognitionError`,this.code=e}};function p(e){switch(e){case`network`:case`service-not-allowed`:return"builtin speech recognition is unsupported in this browser (no Web Speech cloud backend) — use `hear --engine enhanced`";case`not-allowed`:return`microphone permission denied for builtin speech recognition`;case`audio-capture`:return`no microphone available for builtin speech recognition`;case`no-speech`:return`no speech detected`;case`aborted`:return`speech recognition aborted`;default:return`speech recognition error: ${e}`}}function m(e){return e instanceof f&&(e.code===`network`||e.code===`service-not-allowed`)}function h(e,t){let n=d();return n?new Promise((r,i)=>{let a=Date.now(),o=()=>Date.now()-a,c=new n;c.continuous=!1,c.interimResults=!1,e&&(c.lang=e),s.debug(`builtinOnce: recognizer constructed`,{lang:e??`(browser default)`,timeoutMs:t});let l=``,u=!1,d=setTimeout(()=>{s.debug(`builtinOnce: timeout reached — stopping recognizer`,{elapsedMs:o()});try{c.stop()}catch{}},t);c.onstart=()=>s.debug(`builtinOnce: onstart (recognition service active)`,{elapsedMs:o()}),c.onaudiostart=()=>s.debug(`builtinOnce: onaudiostart (capturing audio)`,{elapsedMs:o()}),c.onspeechstart=()=>s.debug(`builtinOnce: onspeechstart (speech detected)`,{elapsedMs:o()}),c.onspeechend=()=>s.debug(`builtinOnce: onspeechend (speech ended)`,{elapsedMs:o()}),c.onnomatch=()=>s.debug(`builtinOnce: onnomatch (no recognizable speech)`,{elapsedMs:o()}),c.onresult=e=>{let t=[];for(let n=0;n<e.results.length;n++)t.push(e.results[n][0]?.transcript??``);l=t.join(` `).trim(),s.debug(`builtinOnce: onresult`,{elapsedMs:o(),resultCount:e.results.length,transcriptLength:l.length})},c.onerror=e=>{if(e.error===`no-speech`||e.error===`aborted`){s.debug(`builtinOnce: onerror (non-fatal — ends with empty transcript)`,{elapsedMs:o(),code:e.error});return}u=!0,clearTimeout(d),s.error(`builtinOnce: onerror (fatal)`,{elapsedMs:o(),code:e.error}),i(new f(e.error))},c.onend=()=>{clearTimeout(d),u?s.debug(`builtinOnce: onend after fatal error (already rejected)`,{elapsedMs:o()}):(s.debug(`builtinOnce: onend — resolving`,{elapsedMs:o(),transcriptLength:l.length,empty:l.length===0}),r(l))},s.debug(`builtinOnce: calling recognizer.start()`,{elapsedMs:o()}),c.start()}):Promise.reject(Error(`speech recognition unavailable in this environment`))}async function g(e){let t={audio:!e||{deviceId:{exact:e}}},n=l();if(n){s.debug(`acquireMicrophoneStream: requesting microphone via permission surface`,{hasDeviceId:!!e});let r=await n.prompt({kinds:[`microphone`],description:`The hear command needs your microphone to transcribe speech.`,requestOptions:{microphone:{constraints:t}},skipIfGranted:!0});if(r.status!==`granted`){s.error(`acquireMicrophoneStream: microphone permission not granted`,{status:r.status,reason:r.reason});let e=r.message?`: ${r.message}`:``;throw Error(`microphone permission ${r.reason??r.status}${e}`)}let i=r.grants.find(e=>e.kind===`microphone`);if(!i)throw s.error(`acquireMicrophoneStream: permission granted without a microphone stream`),Error(`microphone permission granted without a stream`);return s.debug(`acquireMicrophoneStream: microphone stream acquired via surface`),i.stream}if(!navigator.mediaDevices?.getUserMedia)throw s.error(`acquireMicrophoneStream: getUserMedia unavailable in this realm`),Error(`microphone capture unavailable in this realm`);s.debug(`acquireMicrophoneStream: no permission surface; calling getUserMedia directly`);try{let e=await navigator.mediaDevices.getUserMedia(t);return s.debug(`acquireMicrophoneStream: getUserMedia succeeded (direct)`),e}catch(e){throw s.error(`acquireMicrophoneStream: getUserMedia failed (direct)`,e),e}}async function _(e){let t=await g(e),n=new MediaRecorder(t),r=[];n.ondataavailable=e=>{e.data.size>0&&r.push(e.data)},n.start(500);let i=()=>{for(let e of t.getTracks())e.stop()};return{stop:()=>new Promise(e=>{n.onstop=()=>{i(),e(r.length?new Blob(r,{type:n.mimeType||`audio/webm`}):null)};try{n.stop()}catch{i(),e(null)}}),cancel:()=>{try{n.stop()}catch{}i()}}}async function v(e){if(!l())return s.debug(`primeBuiltinPermission: no permission surface; recognizer drives its own prompt`),null;s.debug(`primeBuiltinPermission: priming microphone grant via permission surface`,{hasDeviceId:!!e});let t=await g(e);return s.debug(`primeBuiltinPermission: microphone primed; holding stream open for recognizer`),t}function y(e){if(e){for(let t of e.getTracks())t.stop();s.debug(`primeBuiltinPermission: released primed microphone stream`)}}async function b(e,t){let n=await _(e.deviceId),a=``;try{a=await h(e.lang,t)}catch(e){s.warn(`builtin endpointing failed; transcribing captured audio anyway`,e)}let c=await n.stop();if(!c)return{transcript:a,engine:`builtin`};try{let t=await r(),n=await o(await c.arrayBuffer()),a=await t.transcribe(n,{language:i(e.lang)});if(a)return{transcript:a,engine:`enhanced`}}catch(e){s.warn(`whisper transcription failed; falling back to builtin text`,e)}return{transcript:a,engine:`builtin`}}async function x(e={}){let t=e.timeoutMs??u,n=e.engine??`auto`,r=a()===`ready`;if(n===`enhanced`&&!r)throw s.error(`hearCapture: enhanced engine requested but whisper is not ready`),Error("enhanced engine not ready — run `hear --warmup` (check progress with `hear --status`)");let i=n!==`builtin`&&r;if(s.debug(`hearCapture: engine dispatch`,{requested:n,enhancedReady:r,resolved:i?`enhanced`:`builtin`}),i)return b(e,t);let o=await v(e.deviceId);try{let n=await h(e.lang,t);return s.debug(`hearCapture: builtin recognition produced a transcript`),{transcript:n,engine:`builtin`}}catch(n){if(!m(n))throw s.error(`hearCapture: builtin recognition failed`,n),n;if(r)return s.debug(`hearCapture: builtin unsupported in this browser; falling back to enhanced whisper`),y(o),o=null,b(e,t);throw s.error(`hearCapture: builtin unsupported and whisper not ready`,{code:n.code}),n}finally{y(o)}}async function S(e,t){let n=await r(),a=await o(e);return{transcript:await n.transcribe(a,{language:i(t)}),engine:`enhanced`}}function C(){let e=n();return{state:a(),...e?{loaded:e.loaded,total:e.total,etaSeconds:e.etaSeconds}:{}}}function w(){return r().catch(()=>{}),C()}export{x as hearCapture,C as hearStatus,S as hearTranscribe,w as hearWarmup};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e,t}from"./browser-2rCVqcqy.js";import{A as n,D as r,E as i,M as a,N as o,O as s,T as c,j as l,k as u}from"./shared-
|
|
1
|
+
import{n as e,t}from"./browser-2rCVqcqy.js";import{A as n,D as r,E as i,M as a,N as o,O as s,T as c,j as l,k as u}from"./shared-CPVZc-MN.js";const d=`https://${[`huggingface`,`co`].join(`.`)}`;function f(e){let t=e?.trim();if(!t)return d;try{let e=new URL(t);return e.protocol!==`http:`&&e.protocol!==`https:`?d:e.href.replace(/\/+$/,``)}catch{return d}}function p(e,t,n){return`${e}/api/models/${t}/tree/${n}?recursive=true`}function m(e,t,n,r){return`${e}/${t}/resolve/${n}/${r}`}function h(e){try{return new URL(e).host}catch{return e}}async function g(e,t,n){try{return await e(t,n)}catch(e){let n=e instanceof Error?e.message:String(e);throw Error(`request to ${h(t)} failed (${n}); check the bridge fetch-proxy is reachable`)}}async function _(e,t,n,r=d){let i=await g(e,p(r,t,n),{method:`GET`});if(i.status<200||i.status>=300)throw Error(`HF API ${i.status} ${i.statusText} for ${t}@${n}`);let a=new TextDecoder(`utf-8`).decode(i.body);return JSON.parse(a).filter(e=>e.type===`file`).map(e=>({path:e.path,size:typeof e.size==`number`?e.size:0}))}async function v(e,t){let n=t.lastIndexOf(`/`);if(n<=0)return;let r=t.slice(0,n);await e.mkdir(r,{recursive:!0})}async function ee(e,t,n,r,i,a,o,s,c){let l=`${a}/${i}`;if(!o&&await t.exists(l))try{let e=await t.stat(l);if(c===void 0||c<=0||e.size===c)return{status:`skipped`,bytes:e.size??0}}catch{}let u=await g(e,m(s,n,r,i),{method:`GET`});if(u.status<200||u.status>=300)throw Error(`HTTP ${u.status} ${u.statusText} for ${i}`);return await v(t,l),await t.writeFile(l,u.body),{status:`downloaded`,bytes:u.body.byteLength}}function te(e,t,n){let r=t??`/workspace/models/${e}`;return(r.startsWith(`/`)?r:`${n.replace(/\/+$/,``)}/${r}`).replace(/\/+$/,``)}var y=class extends Error{file;constructor(e,t){super(t instanceof Error?t.message:String(t)),this.name=`HfFileDownloadError`,this.file=e}};async function ne(e){let t=e.revision??`main`,n=e.force??!1,r=f(e.endpoint),i=e.files??[],a=new Map;if(i.length===0){let n=await _(e.fetch,e.repo,t,r);if(n.length===0)throw Error(`repo ${e.repo}@${t} has no files`);i=n.map(e=>e.path);for(let e of n)a.set(e.path,e.size);let o=n.reduce((e,t)=>e+t.size,0);e.progress?.onListed?.({files:i,totalBytes:o})}await e.fs.mkdir(e.targetDir,{recursive:!0});let o=0,s=0,c=0;for(let l=0;l<i.length;l++){let u=i[l],d;try{d=await ee(e.fetch,e.fs,e.repo,t,u,e.targetDir,n,r,a.get(u))}catch(e){throw new y(u,e)}c+=d.bytes,d.status===`downloaded`?o+=1:s+=1,e.progress?.onFile?.({file:u,status:d.status,bytes:d.bytes,index:l+1,total:i.length})}return{repo:e.repo,revision:t,targetDir:e.targetDir,files:i,downloaded:o,skipped:s,totalBytes:c}}function b(e,...t){return`/${[e,...t].join(`/`).split(`/`).filter(e=>e.length>0).join(`/`)}`}function re(e){let t=JSON.stringify(e);return[`// ${u}`,`const { start } = require('sliccy:exec');`,`const __bin = ${t};`,`const __argv = ['ipx', '--global', __bin, ...process.argv.slice(2)];`,`const __stdin = typeof stdin !== 'undefined' ? stdin : undefined;`,`const __h = start(__argv, __stdin !== undefined ? { stdin: __stdin } : undefined);`,`__h.stdin.end();`,`const __r = await __h.done;`,`if (__r.stdout) process.stdout.write(__r.stdout);`,`if (__r.stderr) process.stderr.write(__r.stderr);`,`process.exit(__r.exitCode);`,``].join(`
|
|
2
2
|
`)}var x=class extends Error{binName;path;constructor(e,t){super(`ipk: refusing to overwrite user script at ${t} (bin '${e}')`),this.binName=e,this.path=t,this.name=`GlobalBinCollisionError`}};async function S(e,t){if(t.size!==0){await e.exists(`/shared/bin`)||await e.mkdir(n,{recursive:!0});for(let r of t){if(!r||r.includes(`/`))continue;let t=b(n,`${r}.jsh`);if(await e.exists(t)&&!await C(e,t))throw new x(r,t)}}}async function C(e,t){try{let n=await e.readFile(t);return(typeof n==`string`?n:new TextDecoder().decode(n)).includes(u)}catch{return!1}}async function w(e,t){if(!await e.exists(`/shared/bin`)){if(t.size===0)return;await e.mkdir(n,{recursive:!0})}let r=[];try{r=await e.readDir(n)}catch{r=[]}for(let i of r){if(i.type!==`file`||!i.name.endsWith(`.jsh`))continue;let r=i.name.slice(0,-4);if(t.has(r))continue;let a=b(n,i.name);await C(e,a)&&await e.rm(a)}for(let r of t){if(!r||r.includes(`/`))continue;let t=b(n,`${r}.jsh`);if(await e.exists(t)&&!await C(e,t))throw new x(r,t);await e.writeFile(t,re(r))}}const ie={0:`file`,1:`hardLink`,2:`symbolicLink`,3:`characterDevice`,4:`blockDevice`,5:`directory`,6:`fifo`,7:`contiguousFile`,g:`globalExtendedHeader`,x:`extendedHeader`,D:`gnuDirectory`,I:`gnuInodeMetadata`,K:`gnuLongLinkName`,L:`gnuLongFileName`,N:`gnuOldLongFileName`,M:`gnuMultiVolume`,S:`gnuSparseFile`,E:`gnuExtendedSparse`,A:`solarisAcl`,V:`solarisVolumeLabel`,X:`solarisOldExtendedHeader`};function ae(e,t){let n=e.buffer||e,r=[],i=0,a,o;for(;i<n.byteLength-512;){let e=T(n,i,100);if(e.length===0)break;if(a){let t=a.path||a.linkpath;t&&(e=t)}let s=T(n,i+100,8).trim(),c=Number.parseInt(T(n,i+108,8)),l=Number.parseInt(T(n,i+116,8)),u=E(n,i+124,12),d=512+512*Math.trunc(u/512)+(u%512?512:0),f=E(n,i+136,12),p=T(n,i+156,1)||`0`,m=ie[p]||p;switch(m){case`extendedHeader`:case`globalExtendedHeader`:{let e=se(new Uint8Array(n,i+512,u));m===`extendedHeader`?a=e:(a=void 0,o={...o,...e}),i+=d;continue}case`gnuLongFileName`:case`gnuOldLongFileName`:case`gnuLongLinkName`:a={path:T(n,i+512,u)},i+=d;continue}let h=T(n,i+265,32),g=T(n,i+297,32);e=oe(e);let _={name:e,type:m,size:u,attrs:{...o,...a,mode:s,uid:c,gid:l,mtime:f,user:h,group:g}};if(a=void 0,t?.filter&&!t.filter(_)){i+=d;continue}if(t?.metaOnly){r.push(_),i+=d;continue}let v=u===0?void 0:new Uint8Array(n,i+512,u);r.push({..._,data:v,get text(){return new TextDecoder().decode(this.data)}}),i+=d}return r}function oe(e){let t=e.replace(/\\/g,`/`);t=t.replace(/^[a-zA-Z]:\//,``),t=t.replace(/^\/+/,``);let n=t.startsWith(`./`),r=t.split(`/`),i=[];for(let e of r)e===`..`?i.pop():e!==`.`&&e!==``&&i.push(e);let a=i.join(`/`);return n&&!a.startsWith(`./`)&&(a=`./`+a),e.endsWith(`/`)&&!a.endsWith(`/`)&&(a+=`/`),a}function T(e,t,n){let r=new Uint8Array(e,t,n),i=r.indexOf(0);return new TextDecoder().decode(i===-1?r:r.slice(0,i))}function E(e,t,n){let r=new Uint8Array(e,t,n),i=``;for(let e=0;e<n;e++)i+=String.fromCodePoint(r[e]);return Number.parseInt(i,8)}function se(e){let t=new TextDecoder().decode(e),n={};for(let e of t.split(`
|
|
3
3
|
`)){let t=e.split(` `)[1]?.split(`=`);t&&(n[t[0]]=t[1])}return n}function ce(e,t={}){let n=e.map(e=>{let t=le(e.data);return{...e,data:t,size:t?.length||0}}),r=0;for(let t=0;t<e.length;t++){let e=n[t].data?.length??0;r+=512+512*Math.trunc(e/512),e%512&&(r+=512)}let i=10240*Math.trunc(r/10240);r%10240&&(i+=10240);let a=new ArrayBuffer(i),o=0;for(let e of n){let n=!e.data;D(a,e.name,o,100),D(a,O(e.attrs?.mode??t.attrs?.mode??(n?`775`:`664`),7),o+100,8),D(a,O((e.attrs?.uid??t.attrs?.uid??1e3).toString(8),7),o+108,8),D(a,O((e.attrs?.gid??t.attrs?.gid??1e3).toString(8),7),o+116,8),D(a,O(e.size.toString(8),11),o+124,12);let r=e.attrs?.mtime??t.attrs?.mtime??Date.now();D(a,O(Math.trunc(r/1e3).toString(8),11),o+136,12),D(a,n?`5`:`0`,o+156,1),D(a,`ustar`,o+257,6),D(a,`00`,o+263,2),D(a,e.attrs?.user??t.attrs?.user??``,o+265,32),D(a,e.attrs?.group??t.attrs?.group??``,o+297,32),D(a,` `,o+148,8);let i=new Uint8Array(a,o,512),s=0;for(let e=0;e<512;e++)s+=i[e];if(D(a,s.toString(8),o+148,8),!n){let t=new Uint8Array(a,o+512,e.size);for(let n=0;n<e.size;n++)t[n]=e.data[n];o+=512*Math.trunc(e.size/512),e.size%512&&(o+=512)}o+=512}return new Uint8Array(a)}function D(e,t,n,r){let i=new Uint8Array(e,n,r),a=new TextEncoder().encodeInto(t,i).written;for(let e=a;e<r;e++)i[e]=0}function O(e,t){return String(e).padStart(t,`0`)}function le(e){if(e!=null)return typeof e==`string`?new TextEncoder().encode(e):e instanceof ArrayBuffer?new Uint8Array(e):e}function ue(e){return e.byteOffset===0&&e.byteLength===e.buffer.byteLength?e:new Uint8Array(e)}function k(e){if(!(e instanceof Uint8Array))throw Error(`gunzip: input must be a Uint8Array`);if(e.length<18||e[0]!==31||e[1]!==139)throw Error(`gunzip: input is not a valid gzip stream (bad magic)`);try{return t(e)}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`gunzip: failed to decompress (${t})`)}}function de(t){if(!(t instanceof Uint8Array))throw Error(`gzip: input must be a Uint8Array`);try{return e(t)}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`gzip: failed to compress (${t})`)}}function fe(e){if(!Array.isArray(e))throw Error(`writeTar: entries must be an array`);try{return ce(e.map(e=>({name:e.path,...e.directory?{}:{data:e.bytes}})))}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`writeTar: failed to create tar archive (${t})`)}}function pe(e){return e.startsWith(`package/`)?e.slice(8):e}function A(e,t,n){let r=new Uint8Array(e,t,n),i=r.indexOf(0);return new TextDecoder().decode(i===-1?r:r.subarray(0,i))}function me(e,t,n){let r=new Uint8Array(e,t,n),i=``;for(let e=0;e<n;e++)i+=String.fromCodePoint(r[e]);return Number.parseInt(i,8)}function he(e,t,n){let r=new TextDecoder().decode(new Uint8Array(e,t,n)),i,a;for(let e of r.split(`
|
|
4
4
|
`)){let t=e.split(` `)[1]?.split(`=`);t&&(t[0]===`path`?i=t[1]:t[0]===`linkpath`&&(a=t[1]))}return i||a}function ge(e){let t=e.replace(/\\/g,`/`);t=t.replace(/^[a-zA-Z]:\//,``),t=t.replace(/^\/+/,``);let n=t.startsWith(`./`),r=t.split(`/`),i=[];for(let e of r)e===`..`?i.pop():e!==`.`&&e!==``&&i.push(e);let a=i.join(`/`);return n&&!a.startsWith(`./`)&&(a=`./`+a),e.endsWith(`/`)&&!a.endsWith(`/`)&&(a+=`/`),a}function _e(e,t){let n=e.buffer,r=[],i=0,a;for(;i<n.byteLength-512;){let e=A(n,i,100);if(e.length===0)break;let o=me(n,i+124,12),s=512+512*Math.trunc(o/512)+(o%512?512:0),c=A(n,i+156,1)||`0`;if(c===`x`||c===`g`){a=c===`x`?he(n,i+512,o):void 0,i+=s;continue}if(c===`L`||c===`N`||c===`K`){a=A(n,i+512,o),i+=s;continue}let l;if(a)l=a;else{let t=A(n,i+345,155);l=t.length>0?`${t}/${e}`:e}r.push(t?l:ge(l)),a=void 0,i+=s}return r}function j(e,t={}){if(!(e instanceof Uint8Array))throw Error(`readTar: input must be a Uint8Array`);let n=ue(e),r;try{r=ae(n)}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`readTar: failed to parse tar archive (${t})`)}let i=t.stripNpmPrefix??!0,a=t.includeDirectories??!1,o=_e(n,t.preserveRawPaths??!1),s=o.length===r.length;if(t.preserveRawPaths&&!s)throw Error(`readTar: raw path resolution did not align with archive entries`);let c=[];return r.forEach((e,t)=>{let n=e.type===`directory`;if(!n&&e.type!==`file`&&e.type!==`contiguousFile`||n&&!a)return;let r=s?o[t]:e.name;c.push({path:i?pe(r):r,bytes:e.data?e.data.slice():new Uint8Array,...n?{directory:!0}:{}})}),c}function M(e){let t=(e??``).trim();if(!t)throw Error(`ipk: package spec is required`);if(t.startsWith(`@`)){let e=t.indexOf(`/`);if(e===-1)throw Error(`ipk: scoped spec '${t}' is missing a name (expected @scope/name)`);let n=t.slice(e+1),r=n.indexOf(`@`),i=t.slice(0,e);return r===-1?{name:`${i}/${n}`,range:``}:{name:`${i}/${n.slice(0,r)}`,range:n.slice(r+1)}}let n=t.indexOf(`@`);return n===-1?{name:t,range:``}:{name:t.slice(0,n),range:t.slice(n+1)}}function N(e,...t){return`/${[e,...t].join(`/`).split(`/`).filter(e=>e.length>0).join(`/`)}`}function P(e,t){if(t.startsWith(`@`)){let[n,r]=t.split(`/`,2);return N(e,n,r)}return N(e,t)}async function F(e,t){await e.mkdir(t,{recursive:!0})}async function I(e,t){await e.exists(t)&&await e.rm(t,{recursive:!0})}function ve(e){return`^${e}`}function L(e,t){let n=e.range.trim();return n===``||n===`*`||n===`latest`||/^[A-Za-z][A-Za-z0-9_-]*$/.test(n)?ve(t):n}async function ye(e,t,n){for(let r of n){if(!r.path)continue;let n=r.path.replace(/\\/g,`/`).replace(/^\/+/,``);if(n.split(`/`).some(e=>e===`..`))throw Error(`installer: refusing to extract entry escaping package root: ${r.path}`);let i=N(t,n),a=i.lastIndexOf(`/`);a>0&&await F(e,i.slice(0,a)),await e.writeFile(i,r.bytes)}}async function R(e,t,n){if(!await e.exists(t))return n;let r;try{r=await e.readFile(t)}catch{return n}if(!r?.trim())return n;try{return JSON.parse(r)}catch{return n}}function z(e,t){let n=new Map;return{supplier:async r=>{let a=n.get(r);return a||(a=await i(r,e,{timeoutMs:t}),n.set(r,a),a)},cache:n}}async function be(e,t){let n=[],r=[],i=new Set;for(let a of e){let e;try{e=M(a)}catch(e){r.push({spec:a,error:B(e)});continue}if(i.has(e.name)){let t=n.findIndex(t=>t.parsed.name===e.name);t>=0&&n.splice(t,1)}try{let n=await t(e.name);s(n,e.range)}catch(e){r.push({spec:a,error:B(e)});continue}n.push({spec:a,parsed:e}),i.add(e.name)}return{directs:n,errors:r}}function B(e){return e instanceof Error?e:Error(String(e))}async function V(e,t,n,i,a){let o=P(t,n.name),s=N(o,`package.json`),c=!1;if(await e.exists(s)&&(await R(e,s,null))?.version===n.version&&(c=!0),!c){let t=j(k(await r(n.resolved,i,{timeoutMs:a})));await I(e,o),await F(e,o);try{await ye(e,o,t)}catch(t){throw await I(e,o),t}}let l=Object.keys(n.dependencies);if(l.length>0){let t=N(o,`node_modules`);await F(e,t);for(let r of l)await V(e,t,n.dependencies[r],i,a)}}async function H(e,t,n,r,i){let a=Object.keys(n.root);if(a.length!==0){await F(e,t);for(let o of a)await V(e,t,n.root[o],r,i)}}function xe(e){if(e.startsWith(`@`)){let t=e.indexOf(`/`);if(t!==-1)return e.slice(t+1)}return e}function U(e,t){return typeof e==`string`?{[xe(t)]:e}:e}function Se(e){return e.replace(/^\.\//,``).replace(/^\/+/,``)}function Ce(e){return`#!/usr/bin/env node\nrequire(${JSON.stringify(e)});\n`}async function W(e,t){let n=[];return await G(e,t,0,n),n}async function G(e,t,n,r){if(!await e.exists(t))return;let i;try{i=await e.readDir(t)}catch{return}for(let a of i){if(a.type!==`directory`||a.name===`.bin`)continue;if(a.name.startsWith(`@`)){let i=N(t,a.name),o;try{o=await e.readDir(i)}catch{continue}for(let t of o){if(t.type!==`directory`)continue;let o=`${a.name}/${t.name}`;await K(e,N(i,t.name),o,n,r)}continue}let i=a.name;await K(e,N(t,a.name),i,n,r)}}async function K(e,t,n,r,i){let a=await R(e,N(t,`package.json`),null);if(a?.bin!==void 0&&a.bin!==null){let e=U(a.bin,n);for(let[a,o]of Object.entries(e))typeof a==`string`&&a.length!==0&&typeof o==`string`&&o.length!==0&&i.push({binName:a,pkgName:n,installDir:t,binPath:o,depth:r})}await G(e,N(t,`node_modules`),r+1,i)}function q(e){let t=new Map;for(let n of e){let e=t.get(n.binName);if(!e){t.set(n.binName,n);continue}(n.depth<e.depth||n.depth===e.depth&&n.pkgName<e.pkgName)&&t.set(n.binName,n)}return t}function J(e,t,n,r){let i=P(e,t.name);if(t.bin!==void 0&&t.bin!==null){let e=U(t.bin,t.name);for(let[a,o]of Object.entries(e))typeof a==`string`&&a.length!==0&&typeof o==`string`&&o.length!==0&&r.push({binName:a,pkgName:t.name,installDir:i,binPath:o,depth:n})}let a=N(i,`node_modules`);for(let e of Object.values(t.dependencies))J(a,e,n+1,r)}function we(e,t){let n=[];for(let r of Object.values(e.root))J(t,r,0,n);return n}function Y(e,t){return new Set(q(we(e,t)).keys())}function Te(e,t,n){return`..${t.slice(e.length)}/${Se(n)}`}async function X(e,t){let n=q(await W(e,t)),r=N(t,`.bin`);if(await e.exists(r)){let t;try{t=await e.readDir(r)}catch{t=[]}for(let i of t)i.type===`file`&&(n.has(i.name)||await e.rm(N(r,i.name)))}if(n.size!==0){await F(e,r);for(let i of n.values()){let n=N(r,i.binName),a=Ce(Te(t,i.installDir,i.binPath));await e.writeFile(n,a)}}}async function Ee(e,t,n){let r=N(t,`package.json`),i=await R(e,r,{}),a={...i},o={...i.dependencies??{}};for(let e of n)o[e.name]=e.range;return a.dependencies=o,await e.writeFile(r,`${JSON.stringify(a,null,2)}\n`),r}async function De(e,t){let{fs:n,fetch:r,cwd:i,timeoutMs:s,global:u=!1}=t;if(e.length===0)return{results:[],errors:[]};let{supplier:d}=z(r,s),{directs:f,errors:p}=await be(e,d);if(f.length===0)return{results:[],errors:p};let m={};if(u){let e=await R(n,o,{});for(let[t,n]of Object.entries(e.dependencies??{}))m[t]=n}for(let e of f)m[e.parsed.name]=e.parsed.range;let h=await c({rootDependencies:m,fetchPackument:d}),g=u?l:N(i,`node_modules`);if(u&&(await $(n,g,new Set(Object.keys(h.root))),await S(n,Y(h,g))),await H(n,g,h,r,s),await X(n,g),u){let e=q(await W(n,g));await w(n,new Set(e.keys()))}let _=f.map(e=>{let t=h.root[e.parsed.name];if(!t)throw Error(`installer: resolved node missing for ${e.parsed.name}`);return{name:e.parsed.name,range:L(e.parsed,t.version)}}),v=await Ee(n,u?a:i,_);return{results:f.map(e=>{let t=h.root[e.parsed.name],n=P(g,e.parsed.name);return{ok:!0,name:e.parsed.name,version:t.version,installPath:n,range:L(e.parsed,t.version),manifestPath:v}}),errors:p}}var Z=class extends Error{constructor(e){super(`no package.json found at ${e} (run 'ipk install <pkg>' to create one, or add a package.json)`),this.name=`ManifestNotFoundError`}};function Q(e){let t=new Map,n=e.devDependencies;if(n&&typeof n==`object`)for(let[e,r]of Object.entries(n))typeof e==`string`&&typeof r==`string`&&t.set(e,r);let r=e.dependencies;if(r&&typeof r==`object`)for(let[e,n]of Object.entries(r))typeof e==`string`&&typeof n==`string`&&t.set(e,n);return Array.from(t.entries()).map(([e,t])=>({name:e,range:t}))}async function Oe(e){let{fs:t,fetch:n,cwd:r,timeoutMs:i}=e,a=N(r,`package.json`);if(!await t.exists(a))throw new Z(a);let o=Q(await R(t,a,{}));if(o.length===0)return{results:[],errors:[],empty:!0};let{supplier:l}=z(n,i),u=[],d=[];for(let e of o)try{let t=await l(e.name);s(t,e.range),u.push(e)}catch(t){d.push({spec:`${e.name}@${e.range}`,error:B(t)})}if(u.length===0)return{results:[],errors:d,empty:!1};let f={};for(let e of u)f[e.name]=e.range;let p=await c({rootDependencies:f,fetchPackument:l}),m=N(r,`node_modules`);return await H(t,m,p,n,i),await X(t,m),{results:u.map(e=>{let t=p.root[e.name];return t?{ok:!0,name:e.name,version:t.version,installPath:P(m,e.name),range:e.range,manifestPath:a}:null}).filter(e=>e!==null),errors:d,empty:!1}}function ke(e,t){return t in(e.dependencies??{})||t in(e.devDependencies??{})}function Ae(e,t){let n={...e.dependencies??{}},r={...e.devDependencies??{}};for(let e of t)delete n[e],delete r[e];return{...e,dependencies:n,devDependencies:r}}async function je(e,t,n){await e.writeFile(t,`${JSON.stringify(n,null,2)}\n`)}async function $(e,t,n){if(!await e.exists(t))return;let r;try{r=await e.readDir(t)}catch{return}for(let i of r)if(i.name!==`.bin`&&i.type===`directory`){if(i.name.startsWith(`@`)){let r=N(t,i.name),a;try{a=await e.readDir(r)}catch{continue}for(let t of a){if(t.type!==`directory`)continue;let a=`${i.name}/${t.name}`;n.has(a)||await I(e,N(r,t.name))}continue}n.has(i.name)||await I(e,N(t,i.name))}}async function Me(e,t,n,r){let i=Q(r??await R(e,o,{}));if(i.length===0){await I(e,l),await w(e,new Set);return}let{supplier:a}=z(t,n),s={};for(let e of i)s[e.name]=e.range;let u=await c({rootDependencies:s,fetchPackument:a});await $(e,l,new Set(Object.keys(u.root))),await S(e,Y(u,l)),await H(e,l,u,t,n),await X(e,l);let d=q(await W(e,l));await w(e,new Set(d.keys()))}async function Ne(e,t){let{fs:n,fetch:r,cwd:i,timeoutMs:o,global:s=!1}=t;if(e.length===0)return{results:[],errors:[]};let c=new Set,l=[];for(let t of e)try{c.add(M(t).name)}catch(e){l.push({spec:t,error:B(e)})}if(c.size===0)return{results:[],errors:l};let u=N(s?a:i,`package.json`);if(!await n.exists(u)){for(let t of e)l.push({spec:t,error:new Z(u)});return{results:[],errors:l}}let d=await R(n,u,{}),f=[];for(let e of c)f.push({name:e,removed:ke(d,e)});let p=Ae(d,c);try{s?await Me(n,r,o,p):await Pe(n,r,i,o,p)}catch(t){return l.push({spec:e.join(` `),error:B(t)}),{results:f,errors:l}}return await je(n,u,p),{results:f,errors:l}}async function Pe(e,t,n,r,i){let a=N(n,`package.json`),o=Q(i??await R(e,a,{})),s=N(n,`node_modules`);if(o.length===0){await I(e,s);return}let{supplier:l}=z(t,r),u={};for(let e of o)u[e.name]=e.range;let d=await c({rootDependencies:u,fetchPackument:l});await $(e,s,new Set(Object.keys(d.root))),await H(e,s,d,t,r),await X(e,s)}async function Fe(e){let t=(await R(e,o,{})).dependencies??{},n=[];for(let[r,i]of Object.entries(t)){if(typeof r!=`string`||typeof i!=`string`)continue;let t=await R(e,N(P(l,r),`package.json`),{});n.push({name:r,version:typeof t.version==`string`?t.version:`?`,range:i})}return n.sort((e,t)=>e.name.localeCompare(t.name)),n}async function Ie(e,t){let n=N(t,`package.json`);if(!await e.exists(n))return[];let r=Q(await R(e,n,{})),i=N(t,`node_modules`),a=[];for(let t of r){let n=await R(e,N(P(i,t.name),`package.json`),{});a.push({name:t.name,version:typeof n.version==`string`?n.version:`?`,range:t.range})}return a.sort((e,t)=>e.name.localeCompare(t.name)),a}export{Ie as a,de as c,y as d,ne as f,Fe as i,j as l,Oe as n,Ne as o,te as p,De as r,k as s,Z as t,fe as u};
|