sliccy 6.255.2 → 6.255.4
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 +201 -201
- package/dist/ui/assets/{account-store-D9MqJPUO.js → account-store-CzjRbfrU.js} +1 -1
- package/dist/ui/assets/{account-store-Cf3nt4Ba.js → account-store-VtBgtCSL.js} +1 -1
- package/dist/ui/assets/{adobe-DKSayuDM.js → adobe-B7RRrD_z.js} +1 -1
- package/dist/ui/assets/{adobe-DYOfQktE.js → adobe-Ch41jsPJ.js} +1 -1
- package/dist/ui/assets/{agent-panels-B6RysulJ.js → agent-panels-B7-IZLRr.js} +1 -1
- package/dist/ui/assets/{almost-bash-shell-headless-DWCqrjAh.js → almost-bash-shell-headless-C5P1kXhX.js} +27 -27
- package/dist/ui/assets/{apply-layout-B2wjm9RK.js → apply-layout-NOC4k99y.js} +1 -1
- package/dist/ui/assets/{apps-DKKqGq3Q.js → apps-BOvN_qpf.js} +1 -1
- package/dist/ui/assets/{azure-openai-D3MtNKIb.js → azure-openai-CbDlviKP.js} +1 -1
- package/dist/ui/assets/{azure-openai-BEymMYkN.js → azure-openai-Cjxr4QPn.js} +1 -1
- package/dist/ui/assets/{backend-hostfs-DcI4CSip.js → backend-hostfs-DoJW7M7L.js} +1 -1
- package/dist/ui/assets/{cdp-NQEfSnv-.js → cdp-zOmBIzaT.js} +1 -1
- package/dist/ui/assets/{cerebras-DpTZM6yA.js → cerebras-F8gejcGi.js} +1 -1
- package/dist/ui/assets/{cerebras-dJVR9WAK.js → cerebras-Zl13ZDsi.js} +1 -1
- package/dist/ui/assets/{composer-speech-NZukAzEx.js → composer-speech-C-u_tJZO.js} +1 -1
- package/dist/ui/assets/{connect-surface-BQzGigyz.js → connect-surface-s5qO3FNl.js} +1 -1
- package/dist/ui/assets/{directed-approval-SNvKLDBW.js → directed-approval-CO12rCpK.js} +1 -1
- package/dist/ui/assets/{dist-D3Iejfyf.js → dist-D2I7iVPG.js} +1 -1
- package/dist/ui/assets/{dist-DYtGcToh.js → dist-mfL0wy1U.js} +1 -1
- package/dist/ui/assets/{emscripten-vfs-hook-DlsQ8ZVb.js → emscripten-vfs-hook-C7tA0vFO.js} +1 -1
- package/dist/ui/assets/{ensure-speech-assets-CNw54PrV.js → ensure-speech-assets-Cv28XxlO.js} +1 -1
- package/dist/ui/assets/{exporter-deps-Or6TKCGV.js → exporter-deps-84yTrW5d.js} +2 -2
- package/dist/ui/assets/{frozen-archive-writer-vxDXEHCh.js → frozen-archive-writer-DYM-47PW.js} +1 -1
- package/dist/ui/assets/{frozen-session-delete-D4IkvnMA.js → frozen-session-delete-DpCETup0.js} +1 -1
- package/dist/ui/assets/{frozen-session-identity-C4zhLmVQ.js → frozen-session-identity-BXlKz97M.js} +1 -1
- package/dist/ui/assets/{fs-EMbf3rAx.js → fs-C6gMkOwH.js} +2 -2
- package/dist/ui/assets/{fs-BQUbdd5o.js → fs-DNsJRW_E.js} +1 -1
- package/dist/ui/assets/{gelatiere-unit-CjjU5kDS.js → gelatiere-unit-B-fv5yea.js} +1 -1
- package/dist/ui/assets/{git-config-B4khMkVw.js → git-config-CnzJWs4a.js} +1 -1
- package/dist/ui/assets/{git-config-BasqpIO0.js → git-config-DT33nT4r.js} +1 -1
- package/dist/ui/assets/{github-BXHpiPPY.js → github-CtkTzMdK.js} +2 -2
- package/dist/ui/assets/{github-B4AdxnN3.js → github-VZZ29TDt.js} +1 -1
- package/dist/ui/assets/{github-auth-jRu_uKXJ.js → github-auth-CkLbjC-d.js} +1 -1
- package/dist/ui/assets/{github-copilot-CzppBKxA.js → github-copilot-CPak07uM.js} +1 -1
- package/dist/ui/assets/{github-copilot-BM_TojeH.js → github-copilot-CwGEbPDM.js} +1 -1
- package/dist/ui/assets/{github-install-Czw_ql4X.js → github-install-VgcR2-6K.js} +1 -1
- package/dist/ui/assets/{github-zip-CmEMCTB8.js → github-zip-BSEJCt49.js} +1 -1
- package/dist/ui/assets/{go-driver-BO7YotSu.js → go-driver-D3mNk1Cz.js} +1 -1
- package/dist/ui/assets/{hear-C3qj675z.js → hear-CX6dGgpE.js} +1 -1
- package/dist/ui/assets/{help-CbJRktpU.js → help-ctac3QGq.js} +1 -1
- package/dist/ui/assets/{installer-D3XOxm8w.js → installer-c3P1y6c8.js} +2 -2
- package/dist/ui/assets/{ipk-mamba-Do-ubaPU.js → ipk-mamba-VDJ25teM.js} +1 -1
- package/dist/ui/assets/{js-realm-worker-CuE-jRf6.js → js-realm-worker-GUIiBgXJ.js} +2 -2
- package/dist/ui/assets/{jsh-executor-CFHNjBVO.js → jsh-executor-BwpKY1r_.js} +3 -3
- package/dist/ui/assets/{kernel-worker-DVGTdmUT.js → kernel-worker-40_1fMYG.js} +9 -9
- package/dist/ui/assets/{lick-ws-bridge-Dy2Mt2to.js → lick-ws-bridge-BIYW-35E.js} +1 -1
- package/dist/ui/assets/{lick-ws-bridge-CHms6qG0.js → lick-ws-bridge-qqHRWwwO.js} +1 -1
- package/dist/ui/assets/{live-session-curation-CNVAnSeA.js → live-session-curation-CXlXZy35.js} +1 -1
- package/dist/ui/assets/{live-session-curation-D2o8L_Ai.js → live-session-curation-mF0z_P6X.js} +1 -1
- package/dist/ui/assets/{live-session-snapshot-Dc6xeNMs.js → live-session-snapshot-DOaR-dJA.js} +1 -1
- package/dist/ui/assets/{local-llm-7bD_TE39.js → local-llm-BeJAZNjs.js} +1 -1
- package/dist/ui/assets/{local-llm-BO0X_FdV.js → local-llm-DhHw1yfL.js} +1 -1
- package/dist/ui/assets/{main-2eWFiMZP.js → main-CKBsgWBx.js} +3 -3
- package/dist/ui/assets/{main-cherry-DQMKYz99.js → main-cherry-swycFDpQ.js} +1 -1
- package/dist/ui/assets/{mcp-command-CYwILBJU.js → mcp-command-BochRUm0.js} +13 -13
- package/dist/ui/assets/{memory-curation-seam-D7V2h65G.js → memory-curation-seam-Bf2vXDBs.js} +1 -1
- package/dist/ui/assets/{memory-health-Da4v0FoP.js → memory-health-Cnx5Gv97.js} +1 -1
- package/dist/ui/assets/{memory-write-execute-DZf1bQma.js → memory-write-execute-CK0FA1Tf.js} +1 -1
- package/dist/ui/assets/{merge-folded-cost-into-frozen-DEDsffs3.js → merge-folded-cost-into-frozen-DxYDCg2W.js} +1 -1
- package/dist/ui/assets/{mount-CHl8fFzc.js → mount-Di8kHent.js} +1 -1
- package/dist/ui/assets/{new-session-Dl_kGyLP.js → new-session-Cy7cLkxz.js} +2 -2
- package/dist/ui/assets/{oauth-bootstrap-CMWNKl7f.js → oauth-bootstrap-CMjXsFxQ.js} +2 -2
- package/dist/ui/assets/{onboarding-orchestrator-DwL8pKbb.js → onboarding-orchestrator-CrPQr9-l.js} +1 -1
- package/dist/ui/assets/{openai-codex-BUB7Y9ke.js → openai-codex-D9Pdm-DO.js} +1 -1
- package/dist/ui/assets/{openai-codex-BZDRCcp1.js → openai-codex-DloIj5Kb.js} +1 -1
- package/dist/ui/assets/{openrouter-DC8qHkPU.js → openrouter-BugU4FUc.js} +1 -1
- package/dist/ui/assets/{openrouter-CNVt5NVc.js → openrouter-DrE27HTv.js} +1 -1
- package/dist/ui/assets/{openrouter-free-CSdi9NpY.js → openrouter-free-BYKdU__j.js} +1 -1
- package/dist/ui/assets/{openrouter-free-LLAN6Y1f.js → openrouter-free-QlUUc2CV.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-CzgDjRKa.js → openrouter-oauth-B8b5rIQz.js} +1 -1
- package/dist/ui/assets/{openrouter-oauth-g5aryBlJ.js → openrouter-oauth-CcxdmMiW.js} +1 -1
- package/dist/ui/assets/{opfs-mount-BPNYvr7v.js → opfs-mount-CCD3fdVb.js} +1 -1
- package/dist/ui/assets/{opfs-mount-YdfAlOjA.js → opfs-mount-DalYYD5E.js} +1 -1
- package/dist/ui/assets/{panel-rpc-handlers-RMWMDINZ.js → panel-rpc-handlers-mIvFA-PP.js} +2 -2
- package/dist/ui/assets/{panelize-shell-D2NlUvEo.js → panelize-shell-CQsL61Se.js} +1 -1
- package/dist/ui/assets/{pi-edit-execution-Chw4K4FR.js → pi-edit-execution-DL8z0GuG.js} +1 -1
- package/dist/ui/assets/{profile-export-deps-DvwvBs2e.js → profile-export-deps-Cmfc-0t5.js} +2 -2
- package/dist/ui/assets/{provider-Ce28E3zD.js → provider-dLg1CYt6.js} +2 -2
- package/dist/ui/assets/{provider-settings-B9uwgniy.js → provider-settings-BZN7mU3t.js} +1 -1
- package/dist/ui/assets/provider-store-access-C1MWKpiZ.js +1 -0
- package/dist/ui/assets/provider-store-access-CAxp4Ji_.js +1 -0
- package/dist/ui/assets/{provider-C9t-j9Xp.js → provider-v0y0I0C6.js} +1 -1
- package/dist/ui/assets/{providers-DqmhARGF.js → providers-CxC3IkmD.js} +2 -2
- package/dist/ui/assets/{providers-D21kuf5m.js → providers-_suqM9AH.js} +1 -1
- package/dist/ui/assets/{quick-llm-BQMpHhX4.js → quick-llm-Bt3wdnln.js} +1 -1
- package/dist/ui/assets/{realm-inprocess-5cOwJIYJ.js → realm-inprocess-p_uf-aHP.js} +2 -2
- package/dist/ui/assets/{realm-unhandled-rejections-C5d8Tbn2.js → realm-unhandled-rejections-BdD1pRLw.js} +1 -1
- package/dist/ui/assets/{realm-unhandled-rejections-D_AkSzhp.js → realm-unhandled-rejections-oK6AD2Nu.js} +1 -1
- package/dist/ui/assets/{remote-terminal-view-BtFRTHLE.js → remote-terminal-view-Dt9bq0Tx.js} +2 -2
- package/dist/ui/assets/{restore-DMrBRbbm.js → restore-KY6mog6M.js} +1 -1
- package/dist/ui/assets/{run-BnkvKt68.js → run-6vozRd4-.js} +1 -1
- package/dist/ui/assets/{run-DYHnri4i.js → run-BBaO_6mp.js} +1 -1
- package/dist/ui/assets/{run-DjPz37VL.js → run-BgX0bGpt.js} +1 -1
- package/dist/ui/assets/{run-EJrDfKgq.js → run-D-i4AEOP.js} +1 -1
- package/dist/ui/assets/{run-CE7Nb_eL.js → run-Dmxg7gCG.js} +2 -2
- package/dist/ui/assets/{run-p83rHHiz.js → run-ZCDwc5tT.js} +2 -2
- package/dist/ui/assets/{serve-command-CqF1OkZl.js → serve-command-DZFHoXIR.js} +2 -2
- package/dist/ui/assets/{serve-runtime-DbA8xhOk.js → serve-runtime-C8WGtboN.js} +1 -1
- package/dist/ui/assets/{session-command-memory-CDotXm2I.js → session-command-memory-DHW2-2GY.js} +2 -2
- package/dist/ui/assets/{session-jsonl-BPUDzAaw.js → session-jsonl-CdBv2yqZ.js} +1 -1
- package/dist/ui/assets/{session-search-index-lEsBWOr8.js → session-search-index-BYEYU5MH.js} +1 -1
- package/dist/ui/assets/{setup-feature-flags-remote-CCdRRPQb.js → setup-feature-flags-remote-P6FROcRm.js} +1 -1
- package/dist/ui/assets/{setup-model-catalog-wvhFd6EK.js → setup-model-catalog-CdOG-toL.js} +1 -1
- package/dist/ui/assets/{silent-renew-backoff-CjfMcAko.js → silent-renew-backoff-ClAedN5j.js} +1 -1
- package/dist/ui/assets/{skills-BmdqK5T-.js → skills-Buu7GuOS.js} +1 -1
- package/dist/ui/assets/{slicc-tls-engine-Bs2FEks9.wasm → slicc-tls-engine-BI33-1tp.wasm} +0 -0
- package/dist/ui/assets/{slicc-tls-engine-CZixXDAG.js → slicc-tls-engine-pcgCryui.js} +1 -1
- package/dist/ui/assets/slicc-version-D2CCbBHi.js +1 -0
- package/dist/ui/assets/{snapshot-q2YDICd8.js → snapshot-BqARfI1v.js} +1 -1
- package/dist/ui/assets/{snapshot-features-DpyHBKUX.js → snapshot-features-u2bLa1Ug.js} +1 -1
- package/dist/ui/assets/{soundscape-BzKLvO-1.js → soundscape-BYlS3XAI.js} +1 -1
- package/dist/ui/assets/{speak-CSG4gGch.js → speak-BezQaVuw.js} +1 -1
- package/dist/ui/assets/{sprinkle-manager-Duq4LRr7.js → sprinkle-manager-ZfvEo0Lv.js} +1 -1
- package/dist/ui/assets/{sprinkle-renderer-_81Q9qf8.js → sprinkle-renderer-DnVW1zfQ.js} +1 -1
- package/dist/ui/assets/{state-CgU5QBvm.js → state-BEkTZ8Wn.js} +1 -1
- package/dist/ui/assets/{store-Bl7UHaTz.js → store-CbXAM8lN.js} +1 -1
- package/dist/ui/assets/{store-DkDXcTrQ.js → store-DU7IkRE0.js} +1 -1
- package/dist/ui/assets/{sudo-CDOnEP3h.js → sudo-BoISWChx.js} +1 -1
- package/dist/ui/assets/{supervisor-C0O_9zrp.js → supervisor-C_62e4Z5.js} +1 -1
- package/dist/ui/assets/{sync-dialog-DTQ_-NI7.js → sync-dialog-XktspZV4.js} +1 -1
- package/dist/ui/assets/{transformers-env-CLzXIpCN.js → transformers-env-Dbo8Jrid.js} +1 -1
- package/dist/ui/assets/{tray-leader-CfmQX77N.js → tray-leader-B3iIBM1p.js} +1 -1
- package/dist/ui/assets/{tray-leave-runtime-BRulCzY_.js → tray-leave-runtime-NbZvO6fr.js} +1 -1
- package/dist/ui/assets/{tray-sidecar-mQMRHcGT.js → tray-sidecar-DvOifh-q.js} +1 -1
- package/dist/ui/assets/{upgrade-detection-BYubCZqs.js → upgrade-detection-DyMiS4s0.js} +1 -1
- package/dist/ui/assets/{upgrade-to-seven-Pq-UDrPi.js → upgrade-to-seven-D7ZywU3R.js} +2 -2
- package/dist/ui/assets/{upskill-lick-skip-Be2KOvkl.js → upskill-lick-skip-BEU0uoa6.js} +1 -1
- package/dist/ui/assets/{voice-reply-DgaSWq8u.js → voice-reply-DSX8bpiJ.js} +1 -1
- package/dist/ui/assets/{wc-attach-DkaTR7TF.js → wc-attach-DL4g0RL4.js} +2 -2
- package/dist/ui/assets/{wc-browser-B7ndz1jM.js → wc-browser-BJaaPF4j.js} +1 -1
- package/dist/ui/assets/{wc-computers-BCkukNOu.js → wc-computers-BbyXytAR.js} +1 -1
- package/dist/ui/assets/{wc-detached-CLERu9mV.js → wc-detached-B3pj_CED.js} +1 -1
- package/dist/ui/assets/{wc-extension-B4USdq0c.js → wc-extension-B84vVG1K.js} +2 -2
- package/dist/ui/assets/{wc-follower-0jzY0wJ0.js → wc-follower-B6GykhXJ.js} +3 -3
- package/dist/ui/assets/{wc-follower-oauth-BUtItDwr.js → wc-follower-oauth-QiwSeK64.js} +1 -1
- package/dist/ui/assets/{wc-gelatiere-DajT2OUD.js → wc-gelatiere-dYARmTVA.js} +1 -1
- package/dist/ui/assets/{wc-live-B2VH_Eli.js → wc-live-CtcYQMbX.js} +5 -5
- package/dist/ui/assets/{wc-nav-DkW2VrjM.js → wc-nav-C2S8T5hp.js} +2 -2
- package/dist/ui/assets/{wc-onboarding-LbJfXmAg.js → wc-onboarding-BVfOLQYj.js} +2 -2
- package/dist/ui/assets/{wc-permissions-ChaoL5x5.js → wc-permissions-BiFWxdKB.js} +2 -2
- package/dist/ui/assets/{wc-placeholder-DvXhdEmk.js → wc-placeholder-BjS95cU_.js} +2 -2
- package/dist/ui/assets/{wc-profile-export-nWsuW0TA.js → wc-profile-export-Dc5S7An7.js} +3 -3
- package/dist/ui/assets/{wc-secret-request-DiIKRPKg.js → wc-secret-request-Beog-iRr.js} +1 -1
- package/dist/ui/assets/{wc-settings-3Ng33xpc.js → wc-settings-BRILQhTd.js} +3 -3
- package/dist/ui/assets/{wc-shell-BbGmkwhl.js → wc-shell-D2vt5Gl0.js} +3 -3
- package/dist/ui/assets/{wc-shortcut-config-D8Tpotkh.js → wc-shortcut-config-CAHbFsPI.js} +1 -1
- package/dist/ui/assets/{wc-sprinkles-s172FzJd.js → wc-sprinkles-BbVKvr7k.js} +2 -2
- package/dist/ui/assets/{wc-transcript-export-PY510kMQ.js → wc-transcript-export-DM4JQPF1.js} +2 -2
- package/dist/ui/assets/{wc-tray-CZbGdtuM.js → wc-tray-BooFXjgl.js} +4 -4
- package/dist/ui/assets/welcome-detection-VeKV2Vfz.js +1 -0
- package/dist/ui/assets/{whisper-session-DV2-MGXV.js → whisper-session-Dw59jZ7T.js} +2 -2
- package/dist/ui/assets/{xai-grok-DKNmr41Y.js → xai-grok-BVLzOMqQ.js} +1 -1
- package/dist/ui/assets/{xai-grok-nLcr7B7M.js → xai-grok-BzmaEFAz.js} +1 -1
- package/dist/ui/index.html +3 -3
- package/dist/ui/packages/webapp/index.html +3 -3
- package/dist/ui/packages/webapp/upgrade-to-seven.html +1 -1
- package/dist/ui/upgrade-to-seven.html +1 -1
- package/package.json +5 -5
- package/dist/ui/assets/provider-store-access-CM_A3_LB.js +0 -1
- package/dist/ui/assets/provider-store-access-CSEJaroY.js +0 -1
- package/dist/ui/assets/slicc-version-nzLa6zFr.js +0 -1
- package/dist/ui/assets/welcome-detection-IHJ0GQ5L.js +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import{i as e,n as t,t as n}from"./rolldown-runtime-DBVvNlSN.js";import{t as r}from"./buffer-C6ncbtB_.js";function i(e,t){if(e.byteLength>=t)return e;if(ArrayBuffer.isView(e)){let n=i(e.buffer,t);return new e.constructor(n,e.byteOffset,t)}let n=typeof SharedArrayBuffer<`u`&&e instanceof SharedArrayBuffer;if(e.maxByteLength>t)return n?e.grow(t):e.resize(t),e;if(n){let n=new SharedArrayBuffer(t);return new Uint8Array(n).set(new Uint8Array(e)),n}try{return e.transfer(t)}catch{let n=new ArrayBuffer(t);return new Uint8Array(n).set(new Uint8Array(e)),n}}var a=class extends DataView{constructor(e,t,n){let{buffer:r,byteOffset:i,byteLength:a}=new Uint8Array(e,t,n);super(r,i,a)}};for(let e of Object.getOwnPropertyNames(DataView.prototype))(e.startsWith(`get`)||e.startsWith(`set`))&&Object.defineProperty(a.prototype,e,{value:()=>{throw ReferenceError(`Do not use DataView methods on a BufferView.`)},writable:!1,enumerable:!1,configurable:!1});function o(e,t,n){let r=e.length;for(;r>0&&e[r-1].start>t;)r--;let i=e[r-1];if(i&&i.end>=t){if(i.end>=n)return;i.end=n}else e.splice(r,0,{start:t,end:n}),r++;let a=e[r-1],o=r;for(;o<e.length&&e[o].start<=a.end;)a.end=Math.max(a.end,e[o].end),o++;o>r&&e.splice(r,o-r)}var s=class{id;_size;options;regions=[];get size(){return this._size}set size(e){if(e>=this._size){this._size=e;return}this._size=e;for(let t=this.regions.length-1;t>=0;t--){let n=this.regions[t];if(n.offset>=e){this.regions.splice(t,1);continue}let r=e-n.offset;n.data.byteLength>r&&(n.data=n.data.subarray(0,r)),n.ranges=n.ranges.filter(t=>t.start<e).map(t=>t.end>e?{start:t.start,end:e}:t)}}constructor(e,t,n,r){this.id=e,this._size=t,this.options=n,n.sparse??=!0,(!n.growFactor||!Number.isFinite(n.growFactor)||n.growFactor<1||n.growFactor>100)&&(n.growFactor=2),n.sparse||this.regions.push({offset:0,data:new Uint8Array(t),ranges:[]}),r?.set(e,this)}resizeRegion(e,t){let{buffer:n,byteOffset:r}=e.data;if(n.byteLength-r>=t){e.data=new Uint8Array(n,r,t);return}let i=new Uint8Array(Math.max(t,(n.byteLength-r)*this.options.growFactor));i.set(e.data),e.data=i.subarray(0,t)}mergeAt(e){let t=this.regions[e],n=this.regions[e+1];if(!t||!n)return!1;let{regionGapThreshold:r=4095}=this.options;if(n.offset-(t.offset+t.data.byteLength)>r)return!1;for(let e of n.ranges)o(t.ranges,e.start,e.end);let i=n.offset+n.data.byteLength-t.offset;return i>t.data.byteLength&&this.resizeRegion(t,i),t.data.set(n.data,n.offset-t.offset),this.regions.splice(e+1,1),!0}collect(){if(this.options.sparse)for(let e=0;e<this.regions.length-1;)this.mergeAt(e)||e++}collectAt(e){if(this.options.sparse)for(e>0&&this.mergeAt(e-1)&&e--;this.mergeAt(e););}missing(e,t){let n=[];for(let r of this.regionsIn(e,t)){for(let i of r.ranges)if(!(i.end<=e)&&(i.start>=t||(i.start>e&&n.push({start:e,end:Math.min(i.start,t)}),i.end>e&&(e=Math.max(e,i.end)),e>=t)))break;if(e>=t)break}return e<t&&n.push({start:e,end:t}),n}cached(e,t){let n=[];for(let r of this.regionsIn(e,t))for(let i of r.ranges)if(!(i.end<=e)){if(i.start>=t)break;n.push({start:Math.max(e,i.start),end:Math.min(t,i.end)})}n.sort((e,t)=>e.start-t.start);let r=[];for(let e of n){let t=r.at(-1);t&&e.start<=t.end?t.end=Math.max(t.end,e.end):r.push(e)}return r}indexAfter(e){let t=0,n=this.regions.length;for(;t<n;){let r=t+n>>1;this.regions[r].offset>e?n=r:t=r+1}return t}regionAt(e){let t=this.regions[this.indexAfter(e)-1];if(t&&e<t.offset+t.data.byteLength)return t}*regionsIn(e,t){for(let n=Math.max(0,this.indexAfter(e)-1);n<this.regions.length;n++){let r=this.regions[n];if(r.offset>=t)return;r.offset+r.data.byteLength>e&&(yield r)}}add(e,t){let n=t+e.byteLength,r=this.indexAfter(t)-1,i=this.regions[r];return i&&t<i.offset+i.data.byteLength?(n-i.offset>i.data.byteLength&&this.resizeRegion(i,n-i.offset),i.data.set(e,t-i.offset),o(i.ranges,t,n),this.collectAt(r),this):(this.regions.splice(r+1,0,{data:e,offset:t,ranges:[{start:t,end:n}]}),this.collectAt(r+1),this)}};const c=/* @__PURE__ */ new Uint32Array(256);for(let e=0;e<256;e++){let t=e;for(let e=0;e<8;e++)t=t&1?2197175160^t>>>1:t>>>1;c[e]=t}function l(e){let t=4294967295;for(let n=0;n<e.length;n++)t=t>>>8^c[(t^e[n])&255];return(t^4294967295)>>>0}var u=/* @__PURE__ */ e((/* @__PURE__ */ n(((e,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i<a;i++)o[i]=n[i].fn;return o},c.prototype.listenerCount=function(e){var t=r?r+e:e,n=this._events[t];return n?n.fn?1:n.length:0},c.prototype.emit=function(e,t,n,i,a,o){var s=r?r+e:e;if(!this._events[s])return!1;var c=this._events[s],l=arguments.length,u,d;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,a),!0;case 6:return c.fn.call(c.context,t,n,i,a,o),!0}for(d=1,u=Array(l-1);d<l;d++)u[d-1]=arguments[d];c.fn.apply(c.context,u)}else{var f=c.length,p;for(d=0;d<f;d++)switch(c[d].once&&this.removeListener(e,c[d].fn,void 0,!0),l){case 1:c[d].fn.call(c[d].context);break;case 2:c[d].fn.call(c[d].context,t);break;case 3:c[d].fn.call(c[d].context,t,n);break;case 4:c[d].fn.call(c[d].context,t,n,i);break;default:if(!u)for(p=1,u=Array(l-1);p<l;p++)u[p-1]=arguments[p];c[d].fn.apply(c[d].context,u)}}return!0},c.prototype.on=function(e,t,n){return o(this,e,t,n,!1)},c.prototype.once=function(e,t,n){return o(this,e,t,n,!0)},c.prototype.removeListener=function(e,t,n,i){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return s(this,a),this;var o=this._events[a];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&s(this,a);else{for(var c=0,l=[],u=o.length;c<u;c++)(o[c].fn!==t||i&&!o[c].once||n&&o[c].context!==n)&&l.push(o[c]);l.length?this._events[a]=l.length===1?l[0]:l:s(this,a)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&s(this,t)):(this._events=new i,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=r,c.EventEmitter=c,t!==void 0&&(t.exports=c)})))(),1),d=class extends u.default{[Symbol.toStringTag]=`List`;constructor(e){super(),e&&this.push(...e)}data=/* @__PURE__ */ new Set;toSet(){return new Set(this.data)}toArray(){return Array.from(this.data)}toJSON(){return Array.from(this.data)}toString(){return this.join(`,`)}_set(e,t,n=!1){if(Math.abs(e)>this.data.size)throw ReferenceError(`Can not set an element outside the bounds of the list`);let r=Array.from(this.data);r.splice(e,+n,t),this.data=new Set(r),this.emit(`update`)}set(e,t){this._set(e,t,!0)}deleteAt(e){if(Math.abs(e)>this.data.size)throw ReferenceError(`Can not delete an element outside the bounds of the list`);this.delete(Array.from(this.data).at(e))}insert(e,t=this.data.size){this._set(t,e,!1)}at(e){if(Math.abs(e)>this.data.size)throw ReferenceError(`Can not access an element outside the bounds of the list`);return Array.from(this.data).at(e)}pop(){let e=Array.from(this.data).pop();return e!==void 0&&this.delete(e),e}push(...e){for(let t of e)this.add(t);return this.data.size}join(e){return Array.from(this.data).join(e)}splice(e,t,...n){if(Math.abs(e)>this.data.size)throw ReferenceError(`Can not splice elements outside the bounds of the list`);let r=Array.from(this.data),i=r.splice(e,t,...n);return this.data=new Set(r),this.emit(`update`),i}add(e){return this.data.add(e),this.emit(`update`),this.emit(`add`,e),this}clear(){this.data.clear(),this.emit(`update`)}delete(e){let t=this.data.delete(e);return this.emit(`update`),t}has(e){return this.data.has(e)}get size(){return this.data.size}entries(){return this.toArray().entries()}keys(){return this.toArray().keys()}values(){return this.data.values()}[Symbol.iterator](){return this.data[Symbol.iterator]()}};function f(e,t){let n=Object.entries(e);return Object.fromEntries(n.filter(([e,n])=>t(e,n)))}function p(e,...t){let n={};for(let r of t.flat())n[r]=e[r];return n}function m(e,...t){return f(e,e=>!t.flat().includes(e))}function h(e){try{return JSON.parse(e),!0}catch{return!1}}function g(e){let t=[];for(let n=e;n&&![`Function`,`Object`].includes(n.constructor.name);n=Object.getPrototypeOf(n))t.push(n.constructor.name);return t}function ee(e,t){return Object.fromEntries(Object.entries(e).map(([e,n])=>[e,typeof n==`function`?n.bind(t):n]))}function te(e=/* @__PURE__ */ Error()){let t=setTimeout(()=>{throw e},5e3);return()=>clearTimeout(t)}function _(e){throw e&&typeof e==`object`&&g(e).includes(`Error`)&&Error?.captureStackTrace(e,_),e}function ne(e,t){if(![`getter`,`accessor`].includes(t.kind))throw Error(`@memoize can only be used on getters and auto-accessors`);let n=/* @__PURE__ */ new WeakMap;function r(){if(n.has(this))return n.get(this);let t=typeof e==`function`?e.call(this):e.get.call(this);return n.set(this,t),t}switch(t.kind){case`getter`:return r;case`accessor`:return{...e,get:r}}}const re=Intl.NumberFormat(`en`,{notation:`compact`});re.format.bind(re);function ie(e=0,t=1){return Math.round(Math.random()*(t-e)+e)}function ae(e){return e.at(0).toUpperCase()+e.slice(1)}const oe=new TextEncoder;function v(e){return oe.encode(e)}const se=new TextDecoder;function ce(e){if(!e)return``;if(e.buffer instanceof ArrayBuffer&&!e.buffer.resizable)return se.decode(e);let t=new Uint8Array(e.byteLength);return t.set(e),se.decode(t)}function le(e){let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t}function ue(e){let t=``;for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return t}function de(e){let t=Array.from(e).map(e=>e.toString(16).padStart(2,`0`)).join(``);return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}function fe(e){let t=e.replace(/-/g,``),n=/* @__PURE__ */ new Uint8Array(16);for(let e=0;e<16;e++)n[e]=parseInt(t.slice(e*2,e*2+2),16);return n}var y;(function(e){e[e.EPERM=1]=`EPERM`,e[e.ENOENT=2]=`ENOENT`,e[e.ESRCH=3]=`ESRCH`,e[e.EINTR=4]=`EINTR`,e[e.EIO=5]=`EIO`,e[e.ENXIO=6]=`ENXIO`,e[e.E2BIG=7]=`E2BIG`,e[e.ENOEXEC=8]=`ENOEXEC`,e[e.EBADF=9]=`EBADF`,e[e.ECHILD=10]=`ECHILD`,e[e.EAGAIN=11]=`EAGAIN`,e[e.ENOMEM=12]=`ENOMEM`,e[e.EACCES=13]=`EACCES`,e[e.EFAULT=14]=`EFAULT`,e[e.ENOTBLK=15]=`ENOTBLK`,e[e.EBUSY=16]=`EBUSY`,e[e.EEXIST=17]=`EEXIST`,e[e.EXDEV=18]=`EXDEV`,e[e.ENODEV=19]=`ENODEV`,e[e.ENOTDIR=20]=`ENOTDIR`,e[e.EISDIR=21]=`EISDIR`,e[e.EINVAL=22]=`EINVAL`,e[e.ENFILE=23]=`ENFILE`,e[e.EMFILE=24]=`EMFILE`,e[e.ENOTTY=25]=`ENOTTY`,e[e.ETXTBSY=26]=`ETXTBSY`,e[e.EFBIG=27]=`EFBIG`,e[e.ENOSPC=28]=`ENOSPC`,e[e.ESPIPE=29]=`ESPIPE`,e[e.EROFS=30]=`EROFS`,e[e.EMLINK=31]=`EMLINK`,e[e.EPIPE=32]=`EPIPE`,e[e.EDOM=33]=`EDOM`,e[e.ERANGE=34]=`ERANGE`,e[e.EDEADLK=35]=`EDEADLK`,e[e.ENAMETOOLONG=36]=`ENAMETOOLONG`,e[e.ENOLCK=37]=`ENOLCK`,e[e.ENOSYS=38]=`ENOSYS`,e[e.ENOTEMPTY=39]=`ENOTEMPTY`,e[e.ELOOP=40]=`ELOOP`,e[e.ENOMSG=42]=`ENOMSG`,e[e.EIDRM=43]=`EIDRM`,e[e.ECHRNG=44]=`ECHRNG`,e[e.EL2NSYNC=45]=`EL2NSYNC`,e[e.EL3HLT=46]=`EL3HLT`,e[e.EL3RST=47]=`EL3RST`,e[e.ENRNG=48]=`ENRNG`,e[e.EUNATCH=49]=`EUNATCH`,e[e.ECSI=50]=`ECSI`,e[e.EL2HLT=51]=`EL2HLT`,e[e.EBADE=52]=`EBADE`,e[e.EBADR=53]=`EBADR`,e[e.EXFULL=54]=`EXFULL`,e[e.ENOANO=55]=`ENOANO`,e[e.EBADRQC=56]=`EBADRQC`,e[e.EBADSLT=57]=`EBADSLT`,e[e.EBFONT=59]=`EBFONT`,e[e.ENOSTR=60]=`ENOSTR`,e[e.ENODATA=61]=`ENODATA`,e[e.ETIME=62]=`ETIME`,e[e.ENOSR=63]=`ENOSR`,e[e.ENONET=64]=`ENONET`,e[e.ENOPKG=65]=`ENOPKG`,e[e.EREMOTE=66]=`EREMOTE`,e[e.ENOLINK=67]=`ENOLINK`,e[e.EADV=68]=`EADV`,e[e.ESRMNT=69]=`ESRMNT`,e[e.ECOMM=70]=`ECOMM`,e[e.EPROTO=71]=`EPROTO`,e[e.EMULTIHOP=72]=`EMULTIHOP`,e[e.EDOTDOT=73]=`EDOTDOT`,e[e.EBADMSG=74]=`EBADMSG`,e[e.EOVERFLOW=75]=`EOVERFLOW`,e[e.ENOTUNIQ=76]=`ENOTUNIQ`,e[e.EBADFD=77]=`EBADFD`,e[e.EREMCHG=78]=`EREMCHG`,e[e.ELIBACC=79]=`ELIBACC`,e[e.ELIBBAD=80]=`ELIBBAD`,e[e.ELIBSCN=81]=`ELIBSCN`,e[e.ELIBMAX=82]=`ELIBMAX`,e[e.ELIBEXEC=83]=`ELIBEXEC`,e[e.EILSEQ=84]=`EILSEQ`,e[e.ERESTART=85]=`ERESTART`,e[e.ESTRPIPE=86]=`ESTRPIPE`,e[e.EUSERS=87]=`EUSERS`,e[e.ENOTSOCK=88]=`ENOTSOCK`,e[e.EDESTADDRREQ=89]=`EDESTADDRREQ`,e[e.EMSGSIZE=90]=`EMSGSIZE`,e[e.EPROTOTYPE=91]=`EPROTOTYPE`,e[e.ENOPROTOOPT=92]=`ENOPROTOOPT`,e[e.EPROTONOSUPPORT=93]=`EPROTONOSUPPORT`,e[e.ESOCKTNOSUPPORT=94]=`ESOCKTNOSUPPORT`,e[e.ENOTSUP=95]=`ENOTSUP`,e[e.EPFNOSUPPORT=96]=`EPFNOSUPPORT`,e[e.EAFNOSUPPORT=97]=`EAFNOSUPPORT`,e[e.EADDRINUSE=98]=`EADDRINUSE`,e[e.EADDRNOTAVAIL=99]=`EADDRNOTAVAIL`,e[e.ENETDOWN=100]=`ENETDOWN`,e[e.ENETUNREACH=101]=`ENETUNREACH`,e[e.ENETRESET=102]=`ENETRESET`,e[e.ECONNABORTED=103]=`ECONNABORTED`,e[e.ECONNRESET=104]=`ECONNRESET`,e[e.ENOBUFS=105]=`ENOBUFS`,e[e.EISCONN=106]=`EISCONN`,e[e.ENOTCONN=107]=`ENOTCONN`,e[e.ESHUTDOWN=108]=`ESHUTDOWN`,e[e.ETOOMANYREFS=109]=`ETOOMANYREFS`,e[e.ETIMEDOUT=110]=`ETIMEDOUT`,e[e.ECONNREFUSED=111]=`ECONNREFUSED`,e[e.EHOSTDOWN=112]=`EHOSTDOWN`,e[e.EHOSTUNREACH=113]=`EHOSTUNREACH`,e[e.EALREADY=114]=`EALREADY`,e[e.EINPROGRESS=115]=`EINPROGRESS`,e[e.ESTALE=116]=`ESTALE`,e[e.EEUCLEAN=117]=`EEUCLEAN`,e[e.ENOTNAM=118]=`ENOTNAM`,e[e.ENAVAIL=119]=`ENAVAIL`,e[e.EISNAM=120]=`EISNAM`,e[e.EREMOTEIO=121]=`EREMOTEIO`,e[e.EDQUOT=122]=`EDQUOT`,e[e.ENOMEDIUM=123]=`ENOMEDIUM`,e[e.EMEDIUMTYPE=124]=`EMEDIUMTYPE`,e[e.ECANCELED=125]=`ECANCELED`,e[e.ENOKEY=126]=`ENOKEY`,e[e.EKEYEXPIRED=127]=`EKEYEXPIRED`,e[e.EKEYREVOKED=128]=`EKEYREVOKED`,e[e.EKEYREJECTED=129]=`EKEYREJECTED`,e[e.EOWNERDEAD=130]=`EOWNERDEAD`,e[e.ENOTRECOVERABLE=131]=`ENOTRECOVERABLE`,e[e.ERFKILL=132]=`ERFKILL`,e[e.EHWPOISON=133]=`EHWPOISON`})(y||={});const pe={[y.EPERM]:`operation not permitted`,[y.ENOENT]:`no such file or directory`,[y.ESRCH]:`no such process`,[y.EINTR]:`interrupted system call`,[y.EIO]:`i/o error`,[y.ENXIO]:`no such device or address`,[y.E2BIG]:`argument list too long`,[y.ENOEXEC]:`exec format error`,[y.EBADF]:`bad file descriptor`,[y.ECHILD]:`no child processes`,[y.EAGAIN]:`resource temporarily unavailable`,[y.ENOMEM]:`not enough memory`,[y.EACCES]:`permission denied`,[y.EFAULT]:`bad address in system call argument`,[y.ENOTBLK]:`block device required`,[y.EBUSY]:`resource busy or locked`,[y.EEXIST]:`file already exists`,[y.EXDEV]:`cross-device link not permitted`,[y.ENODEV]:`no such device`,[y.ENOTDIR]:`not a directory`,[y.EISDIR]:`illegal operation on a directory`,[y.EINVAL]:`invalid argument`,[y.ENFILE]:`file table overflow`,[y.EMFILE]:`too many open files`,[y.ENOTTY]:`inappropriate ioctl for device`,[y.ETXTBSY]:`text file is busy`,[y.EFBIG]:`file too large`,[y.ENOSPC]:`no space left on device`,[y.ESPIPE]:`invalid seek`,[y.EROFS]:`read-only file system`,[y.EMLINK]:`too many links`,[y.EPIPE]:`broken pipe`,[y.EDOM]:`numerical argument out of domain`,[y.ERANGE]:`result too large`,[y.EDEADLK]:`resource deadlock would occur`,[y.ENAMETOOLONG]:`name too long`,[y.ENOLCK]:`no locks available`,[y.ENOSYS]:`function not implemented`,[y.ENOTEMPTY]:`directory not empty`,[y.ELOOP]:`too many symbolic links encountered`,[y.ENOMSG]:`no message of desired type`,[y.EIDRM]:`identifier removed`,[y.ECHRNG]:`channel number out of range`,[y.EL2NSYNC]:`level 2 not synchronized`,[y.EL3HLT]:`level 3 halted`,[y.EL3RST]:`level 3 reset`,[y.ENRNG]:`link number out of range`,[y.EUNATCH]:`protocol driver not attached`,[y.ECSI]:`no CSI structure available`,[y.EL2HLT]:`level 2 halted`,[y.EBADE]:`invalid exchange`,[y.EBADR]:`invalid request descriptor`,[y.EXFULL]:`exchange full`,[y.ENOANO]:`no anode`,[y.EBADRQC]:`invalid request code`,[y.EBADSLT]:`invalid slot`,[y.EBFONT]:`bad font file format`,[y.ENOSTR]:`device not a stream`,[y.ENODATA]:`no data available`,[y.ETIME]:`timer expired`,[y.ENOSR]:`out of streams resources`,[y.ENONET]:`machine is not on the network`,[y.ENOPKG]:`package not installed`,[y.EREMOTE]:`object is remote`,[y.ENOLINK]:`link has been severed`,[y.EADV]:`advertise error`,[y.ESRMNT]:`srmount error`,[y.ECOMM]:`communication error on send`,[y.EPROTO]:`protocol error`,[y.EMULTIHOP]:`multihop attempted`,[y.EDOTDOT]:`rFS specific error`,[y.EBADMSG]:`bad message`,[y.EOVERFLOW]:`value too large for defined data type`,[y.ENOTUNIQ]:`name not unique on network`,[y.EBADFD]:`file descriptor in bad state`,[y.EREMCHG]:`remote address changed`,[y.ELIBACC]:`can not access a needed shared library`,[y.ELIBBAD]:`accessing a corrupted shared library`,[y.ELIBSCN]:`.lib section in a.out corrupted`,[y.ELIBMAX]:`attempting to link in too many shared libraries`,[y.ELIBEXEC]:`cannot exec a shared library directly`,[y.EILSEQ]:`illegal byte sequence`,[y.ERESTART]:`interrupted system call should be restarted`,[y.ESTRPIPE]:`streams pipe error`,[y.EUSERS]:`too many users`,[y.ENOTSOCK]:`socket operation on non-socket`,[y.EDESTADDRREQ]:`destination address required`,[y.EMSGSIZE]:`message too long`,[y.EPROTOTYPE]:`protocol wrong type for socket`,[y.ENOPROTOOPT]:`protocol not available`,[y.EPROTONOSUPPORT]:`protocol not supported`,[y.ESOCKTNOSUPPORT]:`socket type not supported`,[y.ENOTSUP]:`operation not supported on socket`,[y.EPFNOSUPPORT]:`protocol family not supported`,[y.EAFNOSUPPORT]:`address family not supported`,[y.EADDRINUSE]:`address already in use`,[y.EADDRNOTAVAIL]:`address not available`,[y.ENETDOWN]:`network is down`,[y.ENETUNREACH]:`network is unreachable`,[y.ENETRESET]:`network dropped connection on reset`,[y.ECONNABORTED]:`software caused connection abort`,[y.ECONNRESET]:`connection reset by peer`,[y.ENOBUFS]:`no buffer space available`,[y.EISCONN]:`socket is already connected`,[y.ENOTCONN]:`socket is not connected`,[y.ESHUTDOWN]:`cannot send after transport endpoint shutdown`,[y.ETOOMANYREFS]:`too many references: cannot splice`,[y.ETIMEDOUT]:`connection timed out`,[y.ECONNREFUSED]:`connection refused`,[y.EHOSTDOWN]:`host is down`,[y.EHOSTUNREACH]:`host is unreachable`,[y.EALREADY]:`connection already in progress`,[y.EINPROGRESS]:`operation now in progress`,[y.ESTALE]:`stale file handle`,[y.EEUCLEAN]:`structure needs cleaning`,[y.ENOTNAM]:`not a XENIX named type file`,[y.ENAVAIL]:`no XENIX semaphores available`,[y.EISNAM]:`is a named type file`,[y.EREMOTEIO]:`remote I/O error`,[y.EDQUOT]:`disk quota exceeded`,[y.ENOMEDIUM]:`no medium found`,[y.EMEDIUMTYPE]:`wrong medium type`,[y.ECANCELED]:`operation canceled`,[y.ENOKEY]:`required key not available`,[y.EKEYEXPIRED]:`key has expired`,[y.EKEYREVOKED]:`key has been revoked`,[y.EKEYREJECTED]:`key was rejected by service`,[y.EOWNERDEAD]:`owner died`,[y.ENOTRECOVERABLE]:`state not recoverable`,[y.ERFKILL]:`operation not possible due to RF-kill`,[y.EHWPOISON]:`memory page has hardware error`};function b(e){let t=`${e.code}: ${pe[e.errno]}, ${e.syscall}`;e.path&&(t+=` '${e.path}'`),e.dest&&(t+=` -> '${e.dest}'`);let n=e.message.startsWith(pe[e.errno])||/^E[A-Z0-9]+: /.test(e.message);return e.message&&!n&&(t+=` (${e.message})`),e.message=t,e}var x=class e extends Error{errno;code;path;dest;syscall;constructor(e,t,n={}){let r=y[e];super(t||``),this.errno=e,this.code=r,Object.assign(this,m(n,`message`)),t||b(this),Error.captureStackTrace?.(this,this.constructor)}toString(){return this.message}toJSON(){let e={errno:this.errno,code:this.code,stack:this.stack,message:this.message};return this.path&&(e.path=this.path),this.dest&&(e.dest=this.dest),this.syscall&&(e.syscall=this.syscall),e}static fromJSON(t){let n=t.syscall?new e(t.errno,!1,t):new e(t.errno,t.message);return n.stack=t.stack,n}};function S(e,t,n,r){typeof t==`string`&&(t={syscall:t,path:n,dest:r});let i=new x(y[e],!1,t??{});return Error.captureStackTrace?.(i,S),i}function C(e,t){let n=new x(y[e],t??pe[y[e]]);return Error.captureStackTrace?.(n,C),n}function me(e,t,n){let r=typeof e==`string`?{syscall:e}:e;return t&&(r.path=t),n&&(r.dest=n),function(e){throw Object.assign(e,r),b(e),e}}var he=/* @__PURE__ */ t({Level:()=>w,alert:()=>Se,configure:()=>Be,crit:()=>Ce,debug:()=>Ee,deprecated:()=>De,emerg:()=>xe,entries:()=>ve,err:()=>T,fancy:()=>Me,format:()=>Pe,info:()=>Te,isEnabled:()=>ze,levelOf:()=>_e,levels:()=>ge,log:()=>ye,notice:()=>we,warn:()=>E}),w;(function(e){e[e.EMERG=0]=`EMERG`,e[e.ALERT=1]=`ALERT`,e[e.CRIT=2]=`CRIT`,e[e.ERR=3]=`ERR`,e[e.WARN=4]=`WARN`,e[e.NOTICE=5]=`NOTICE`,e[e.INFO=6]=`INFO`,e[e.DEBUG=7]=`DEBUG`})(w||={});const ge=[`emergency`,`alert`,`critical`,`error`,`warning`,`notice`,`info`,`debug`];function _e(e){return ge.indexOf(e)}const ve=new d;function ye(e,t){if(!ze)return;let n={level:e,message:t,timestamp:/* @__PURE__ */ new Date,elapsedMs:performance.now()};if(ve.size>=1e4){let e=ve.values().next().value;e!==void 0&&ve.delete(e)}ve.add(n),Ie(n)}function be(e){return function(t){return ye(e,t.toString()),t}}const xe=be(w.EMERG),Se=be(w.ALERT),Ce=be(w.CRIT),T=be(w.ERR),E=be(w.WARN),we=be(w.NOTICE),Te=be(w.INFO),Ee=be(w.DEBUG);function De(e){ye(w.WARN,e+` is deprecated and should not be used.`)}function Oe(e,t){return`\x1b[${t}m${e}\x1b[0m`}function ke(e){return`[`+(e.elapsedMs/1e3).toFixed(3).padStart(10)+`] `}const Ae={ansi:{[w.EMERG]:`1;4;37;41`,[w.ALERT]:`1;37;41`,[w.CRIT]:`1;35`,[w.ERR]:`1;31`,[w.WARN]:`1;33`,[w.NOTICE]:`1;36`,[w.INFO]:`1;37`,[w.DEBUG]:`0;2;37`},css:{[w.EMERG]:`font-weight: bold; text-decoration: underline; color: white; background-color: red;`,[w.ALERT]:`font-weight: bold; color: white; background-color: red;`,[w.CRIT]:`font-weight: bold; color: magenta;`,[w.ERR]:`font-weight: bold; color: red;`,[w.WARN]:`font-weight: bold; color: yellow;`,[w.NOTICE]:`font-weight: bold; color: cyan;`,[w.INFO]:`font-weight: bold; color: white;`,[w.DEBUG]:`opacity: 0.8; color: white;`}},je={ansi:{[w.EMERG]:`1;31`,[w.ALERT]:`1;31`,[w.CRIT]:`1;31`,[w.ERR]:`31`,[w.WARN]:`33`,[w.NOTICE]:`1;37`,[w.INFO]:`37`,[w.DEBUG]:`2;37`},css:{[w.EMERG]:`font-weight: bold; color: red;`,[w.ALERT]:`font-weight: bold; color: red;`,[w.CRIT]:`font-weight: bold; color: red;`,[w.ERR]:`color: red;`,[w.WARN]:`color: yellow;`,[w.NOTICE]:`font-weight: bold; color: white;`,[w.INFO]:`color: white;`,[w.DEBUG]:`opacity: 0.8; color: white;`}};function Me({style:e,colorize:t}){return function*(n){e==`css`&&(yield t==`level`?`%c%s %c%s`:`%c%s %c%s%s %c%s`),yield*e==`ansi`?[Oe(ke(n),`2;37`)]:[`opacity: 0.8; color: white;`,ke(n)];let r=e==`ansi`?[Oe(ge[n.level].toUpperCase(),Ae.ansi[n.level])]:[Ae.css[n.level],ge[n.level].toUpperCase()];if(t==`level`){yield*r,yield n.message;return}n.level<w.CRIT&&(yield*r),e==`ansi`?yield Oe(n.message,je.ansi[n.level]):yield*[je.css[n.level],n.message]}}let Ne=e=>[ke(e),e.message];function Pe(e){let t=Ne(e);return typeof t==`string`?[t]:Array.from(t)}let Fe=`process`in globalThis?console.error:console.log;function Ie(e){e.level>Le||Fe(...Pe(e))}let Le=w.ALERT,Re=!1,ze=!0;function Be(e){if(Ne=e.format??Ne,Fe=e.output??Fe,Le=typeof e.level==`string`?_e(e.level):e.level??Le,ze=e.enabled??ze,Re=e.stack??Re,e.dumpBacklog)for(let e of ve)Ie(e)}function Ve(e){return typeof e==`object`&&!!e&&`create`in e&&typeof e.create==`function`}function He(e,t){return Object.defineProperty(t,"prototype",{value:void 0}),e&&Object.defineProperty(t,"name",{value:e}),t}function Ue(e){return!(e&&e.constructor===Function)||e.prototype===void 0?!1:Function.prototype!==Object.getPrototypeOf(e)||Object.getOwnPropertyNames(e.prototype).length>1}function We(e,t){if(typeof t!=`object`||!t)throw T(C(`EINVAL`,`Invalid options`));for(let[n,r]of Object.entries(e.options)){let e=t?.[n];if(e==null){if(!r.required){Ee(`Using default for option: `+n);continue}throw T(C(`EINVAL`,`Missing required option: `+n))}let i=(t,n=e)=>typeof t==`function`?Ue(t)?e instanceof t:t(e):typeof e===t||e?.constructor?.name===t;if(Array.isArray(r.type)?r.type.some(e=>i(e)):i(r.type))continue;let a=typeof e==`object`&&`constructor`in e?e.constructor.name:typeof e,o=e=>typeof e==`function`?e.name==`type`?e.toString():e.name:e,s=Array.isArray(r.type)?`one of ${r.type.map(o).join(`, `)}`:o(r.type);throw T(C(`EINVAL`,`Incorrect type for "${n}": ${a} (expected ${s})`))}}function Ge(e){return typeof e==`object`&&!!e&&`backend`in e&&Ve(e.backend)}function Ke(e){return{suid:e.uid,sgid:e.gid,euid:e.uid,egid:e.gid,groups:[],...e}}function qe(e){return e?!e.uid||!e.gid||!e.euid||!e.egid||e.groups.some(e=>!e):!1}const Je=Symbol(`ZenFSContext`);function Ye(e){return typeof e==`object`&&!!e&&Je in e}function Xe(e){if(!Ye(e))throw E(C(`EINVAL`,`Invalid context provided`))}const Ze={[Je]:!0,id:1,root:`/`,pwd:`/`,credentials:Ke({uid:0,gid:0}),descriptors:/* @__PURE__ */ new Map,parent:null,children:[],mounts:/* @__PURE__ */ new Map};function D(e){return Ye(e)?e:Ze}let Qe=2;function $e(e,t={}){Xe(e);let{root:n=e.root,pwd:r=e.pwd,credentials:i=structuredClone(e.credentials),mounts:a}=t,o={[Je]:!0,id:Qe++,root:n,pwd:r,credentials:Ke(i),descriptors:/* @__PURE__ */ new Map,parent:e,children:[],mounts:a?new Map(Object.entries(a)):e.mounts};return Object.defineProperties(o,{id:{configurable:!1,writable:!1},credentials:{configurable:!1,writable:!1},descriptors:{configurable:!1,writable:!1},parent:{configurable:!1,writable:!1},children:{configurable:!1,writable:!1}}),o}var et=/* @__PURE__ */ t({COPYFILE_EXCL:()=>1,COPYFILE_FICLONE:()=>2,COPYFILE_FICLONE_FORCE:()=>4,F_OK:()=>0,O_APPEND:()=>tt,O_CREAT:()=>64,O_DIRECT:()=>ct,O_DIRECTORY:()=>nt,O_DSYNC:()=>ot,O_EXCL:()=>128,O_NOATIME:()=>rt,O_NOCTTY:()=>256,O_NOFOLLOW:()=>it,O_NONBLOCK:()=>lt,O_RDONLY:()=>0,O_RDWR:()=>2,O_SYMLINK:()=>st,O_SYNC:()=>at,O_TRUNC:()=>512,O_WRONLY:()=>1,R_OK:()=>4,S_IFBLK:()=>pt,S_IFCHR:()=>ht,S_IFDIR:()=>mt,S_IFIFO:()=>gt,S_IFLNK:()=>dt,S_IFMT:()=>O,S_IFREG:()=>ft,S_IFSOCK:()=>ut,S_IRGRP:()=>32,S_IROTH:()=>4,S_IRUSR:()=>256,S_IRWXG:()=>56,S_IRWXO:()=>7,S_IRWXU:()=>448,S_ISGID:()=>vt,S_ISUID:()=>_t,S_ISVTX:()=>512,S_IWGRP:()=>16,S_IWOTH:()=>2,S_IWUSR:()=>128,S_IXGRP:()=>8,S_IXOTH:()=>1,S_IXUSR:()=>64,UV_FS_O_FILEMAP:()=>0,W_OK:()=>2,X_OK:()=>1,size_max:()=>yt});const tt=1024,nt=65536,rt=262144,it=131072,at=1052672,ot=4096,st=32768,ct=16384,lt=2048,O=61440,ut=49152,dt=40960,ft=32768,pt=24576,mt=16384,ht=8192,gt=4096,_t=2048,vt=1024,yt=4294967295;function bt(e){return`__isArrayType`in e&&e.__isArrayType===!0}function xt(e){return typeof e!=`object`&&typeof e!=`function`||e==null?!1:bt(e)?xt(e.type):`name`in e&&`size`in e&&`get`in e&&`set`in e&&typeof e.name==`string`&&typeof e.size==`number`&&typeof e.get==`function`&&typeof e.set==`function`&&St.has(e.name)&&St.get(e.name)?.name===e.name}const St=/* @__PURE__ */ new Map;function Ct(e){if(St.has(e.name))throw ReferenceError(`Type is already registered: ${e.name}`);St.set(e.name,e)}const wt=Symbol(`DataView`);function Tt(e){return e[wt]??=new DataView(e),e[wt]}const Et={name:`int8`,size:1,array:Int8Array,get:(e,t)=>Tt(e).getInt8(t),set:(e,t,n)=>Tt(e).setInt8(t,n)},Dt={name:`uint8`,size:1,array:Uint8Array,get:(e,t)=>Tt(e).getUint8(t),set:(e,t,n)=>Tt(e).setUint8(t,n)},Ot={int8:Et,uint8:Dt,int16:{name:`int16`,size:2,array:Int16Array,get:(e,t)=>Tt(e).getInt16(t,!0),set:(e,t,n)=>Tt(e).setInt16(t,n,!0)},uint16:{name:`uint16`,size:2,array:Uint16Array,get:(e,t)=>Tt(e).getUint16(t,!0),set:(e,t,n)=>Tt(e).setUint16(t,n,!0)},int32:{name:`int32`,size:4,array:Int32Array,get:(e,t)=>Tt(e).getInt32(t,!0),set:(e,t,n)=>Tt(e).setInt32(t,n,!0)},uint32:{name:`uint32`,size:4,array:Uint32Array,get:(e,t)=>Tt(e).getUint32(t,!0),set:(e,t,n)=>Tt(e).setUint32(t,n,!0)},int64:{name:`int64`,size:8,array:BigInt64Array,get:(e,t)=>Tt(e).getBigInt64(t,!0),set:(e,t,n)=>Tt(e).setBigInt64(t,n,!0)},uint64:{name:`uint64`,size:8,array:BigUint64Array,get:(e,t)=>Tt(e).getBigUint64(t,!0),set:(e,t,n)=>Tt(e).setBigUint64(t,n,!0)},float32:{name:`float32`,size:4,array:Float32Array,get:(e,t)=>Tt(e).getFloat32(t,!0),set:(e,t,n)=>Tt(e).setFloat32(t,n,!0)},float64:{name:`float64`,size:8,array:Float64Array,get:(e,t)=>Tt(e).getFloat64(t,!0),set:(e,t,n)=>Tt(e).setFloat64(t,n,!0)}},kt=Object.keys(Ot);for(let e of Object.values(Ot))Ct(e);const At={...Ot,...Object.fromEntries(kt.map(e=>[ae(e),Ot[e]])),char:Dt},jt=Object.keys(At);function Mt(e){return jt.includes(e.toString())}function Nt(e){if(!Mt(e))throw C(`EINVAL`,`Not a valid primitive type: `+e)}function Pt(e){return e==`char`?`uint8`:e.toLowerCase()}function Ft(e){return(typeof e==`object`||typeof e==`function`)&&e!==null&&`toInit`in e&&typeof e.toInit==`function`}function It(e){return Ft(e)?e.toInit():xt(e)?{type:e}:e}function Lt(e,t,n={}){if(!e)throw C(`EINVAL`,`Invalid name for struct field`);typeof e==`symbol`&&console.warn(`Symbol used for struct field name will be coerced to string: `+e.toString());let r=e.toString(),i=Object.assign(It(t),n);if(!xt(i.type))throw C(`EINVAL`,`Invalid type for struct field "${r}"`);let a=i.countedBy?` counted_by(${typeof i.countedBy==`string`?i.countedBy:`<function>`})`:``;return{name:r,offset:0,type:i.type,countedBy:i.countedBy,alignment:i.align??i.type.size,decl:i.type instanceof on?`${i.typeName??i.type.type.name} ${r}[${i.type.length}]${a}`:`${i.typeName??i.type.name} ${r}`,littleEndian:!i.bigEndian}}function Rt(e,t){if(!(e instanceof Error)||e.message.toLowerCase()!==`offset is outside the bounds of the dataview`)throw e;let n=C(`EFAULT`,`Segmentation fault (at 0x${t.toString(16)})`);throw Error.captureStackTrace(n,Rt),n}function zt(e,t){return t.type instanceof on&&t.type.length==0&&!!t.countedBy?.length&&!!e.constructor.isDynamic}function Bt(e,t){let n=typeof t.countedBy==`function`?t.countedBy(e):e[t.countedBy];if(typeof n==`bigint`){if(n>BigInt(2**53-1))throw C(`EOVERFLOW`,`countedBy field value exceeds max safe integer`);n=Number(n)}if(typeof n!=`number`)throw C(`EINVAL`,`countedBy field value is not a number`);return n}function Vt(e,t){let n=t.type.type.size*Bt(e,t);if($t(t.type.type)&&t.type.type.isDynamic)for(let r of e[t.name])n+=en(r);return n}const Ht=Symbol(`kOffsets`),Ut=Symbol(`kStaticLayout`);function Wt(e){if(e[Ut]!==void 0)return e[Ut];let t=!e.isDynamic;if(t)for(let n of e.fields){let e=n.type;for(;e instanceof on;)e=e.type;if($t(e)&&e.isDynamic){t=!1;break}}return Object.defineProperty(e,Ut,{value:t,configurable:!0}),t}function Gt(e,t,n){if(Wt(e.constructor))return t.offset;let{offset:r,name:i}=t;e[Ht]||=Object.create(null);let a=e[Ht];if(a[i]!==void 0){if(n)return a[i];delete a[i]}let{fields:o}=e.constructor,s=o.indexOf(t);for(let t of o.slice(0,s)){zt(e,t)&&(r+=Vt(e,t));let n=e[t.name];Qt(n)&&n.constructor.isDynamic&&(r+=en(n))}if(n)a[i]=r;else for(let e of o.slice(s))a[e.name]!==void 0&&delete a[e.name];return r}function Kt(e,t,n,r){typeof n==`string`&&(n=n.charCodeAt(0));let i=e.byteOffset+Gt(e,t,!1)+(r??0)*t.type.size;try{t.type.set(e.buffer,i,n);return}catch(e){Rt(e,i)}}const qt=Symbol(`kDescriptors`);function Jt(e){if(Object.hasOwn(e,qt))return e[qt];let t={};for(let n of e.fields)t[n.name]={enumerable:!0,configurable:!0,get(){return Zt(this,n)},set(e){Kt(this,n,e)}};return Object.defineProperty(e,qt,{value:t,configurable:!0}),t}function Yt(e){Object.defineProperties(e.prototype,Jt(e))}const Xt=Symbol(`kViews`);function Zt(e,t){let n=t.type,r=zt(e,t);if(r){let r=t.type.type;n=new on(r,Bt(e,t))}let i=!r&&(n instanceof on||$t(n))&&Wt(e.constructor);if(i){let n=e[Xt]??=Object.create(null);if(n[t.name]!==void 0)return n[t.name]}let a=e.byteOffset+Gt(e,t,!0);try{let r=n.get(e.buffer,a);return i&&(e[Xt][t.name]=r),r}catch(e){Rt(e,a)}}function Qt(e){return typeof e==`object`&&!!e&&`constructor`in e&&$t(e.constructor)}function $t(e){return typeof e==`function`&&`prototype`in e&&`fields`in e&&typeof e.fields==`object`&&xt(e)}function en(e){let t=0;for(let n of e.constructor.fields){let r=e[n.name];zt(e,n)&&(t+=Vt(e,n)),Qt(r)&&r.constructor.isDynamic&&(t+=en(r))}return t}function tn(e){if(xt(e))return e.size;if(e==null)return 0;if(typeof e==`object`&&xt(e.constructor))return e.constructor.size;if(Array.isArray(e)){let t=0;for(let n=0;n<e.length;n++)t+=tn(e[n]);return t}if(typeof e==`string`)return Nt(e),Ot[Pt(e)].size;throw TypeError(`Unable to resolve size of \`${e.toString()}\``)}function k(e){let t=tn(e);return Qt(e)&&e.constructor.isDynamic?t+en(e):t}function nn(e,t){let n;if($t(e)){if(e.isDynamic)throw C(`EINVAL`,`Cannot get offset of field in dynamic struct from the constructor`);n=e}else if(Qt(e))n=e.constructor;else throw C(`EINVAL`,`Type is not a struct or struct constructor`);let{fields:r}=n,i=r.find(e=>e.name===t);if(!i)throw C(`EINVAL`,`Struct does not have field: `+t);return $t(e)?i.offset:Gt(e,i,!0)}function rn(e,t){class n extends DataView{length;type=e;*[Symbol.iterator](){for(let e=0;e<this.length;e++)yield this[e]}_offsets=[0];offsetOf(t){if(!e.isDynamic)return t*e.size;if(t<this._offsets.length)return this._offsets[t];for(let n=this._offsets.length;n<=t;n++)this._offsets[n]=this._offsets[n-1]+k(e.get(this.buffer,this.byteOffset+this._offsets[n-1]));return this._offsets[t]}constructor(n,r,i){let a=typeof n==`object`?n:new ArrayBuffer((n??0)*e.size);super(a,r,i),this.length=typeof n==`number`?n:e.isDynamic?t??_(`Unknown length of StructArray<${e.name}>`):Math.floor(this.byteLength/e.size);let o=e=>this.byteOffset+this.offsetOf(e),s=an(e)&&!e.isDynamic?[]:void 0;return new Proxy(this,{get(t,n){if(n in t)return t[n];let r=parseInt(n.toString());if(Number.isSafeInteger(r))return s?s[r]??=e.get(t.buffer,o(r)):e.get(t.buffer,o(r))},set(t,n,r){let i=parseInt(n.toString());return Number.isSafeInteger(i)?(e.set(t.buffer,o(i),r),!0):!1}})}}for(let e of Object.getOwnPropertyNames(DataView.prototype))(e.startsWith(`get`)||e.startsWith(`set`))&&Object.defineProperty(n.prototype,e,{enumerable:!1,configurable:!1,writable:!1,value:void 0});return n}function an(e){return typeof e==`function`&&`prototype`in e&&`fields`in e&&typeof e.fields==`object`&&xt(e)}var on=class{type;length;name;size;__structArray;__arrayType;__isArrayType=!0;constructor(e,t){this.type=e,this.length=t,this.name=`${e.name}[${t}]`,this.size=e.size*t,this.array=rn(this),this.__structArray=rn(e,t),this.__arrayType=e.array?e.array:this.__structArray}get=(e,t)=>Mt(this.type.name)&&t%this.type.size!==0?new this.__structArray(e,t,this.size):new this.__arrayType(e,t,this.size);set=(e,t,n)=>{if(this.length)for(let r=0;r<this.length;r++)this.type.set(e,t+r*this.type.size,n[r]);else{let r=t;for(let t=0;t<n.length;t++)this.type.set(e,r,n[t]),r+=an(this.type)&&this.type.isDynamic?k(n[t]):this.type.size}};array};Symbol.metadata??=Symbol.for(`Symbol.metadata`);function sn(e){e.metadata??={};let t=e.metadata.structInit??{};return e.metadata.structInit={fields:[...t.fields??[]]},e.metadata.structInit}function cn(...e){let t=e.reduce((e,t)=>({...e,...t}),{});return typeof this==`object`&&Object.assign(t,this),function(e,n){let r=sn(n),i=1,a=[],o=0,s=e=>{o=Math.ceil(o/e)*e};for(let e of r.fields)t.isPacked||s(e.alignment),t.isUnion?o=Math.max(o,e.type.size):(e.offset=o,o+=e.type.size),a.push(e),i=Math.max(i,e.alignment);t.alignment??=i,t.isPacked||s(t.alignment);class c extends e{static name=e.name;static size=o;static alignment=t.alignment;static isUnion=!!t.isUnion;static isDynamic=!!t.isDynamic;static fields=a;static get(e,t){return new this(e,t)}static set(e,t,n){let r=new Uint8Array(n.buffer,n.byteOffset,this.size),i=new Uint8Array(e,t,this.size);if(n.buffer!==e||n.byteOffset!==t)for(let e=0;e<this.size;e++)i[e]=r[e]}static[Symbol.toStringTag]=`[struct ${e.name}]`;constructor(...e){e.length||(e=[new ArrayBuffer(o),0,o]),super(...e),t.fastFields||Object.defineProperties(this,Jt(this.constructor))}}return Yt(c),n.addInitializer(function(){Object.defineProperty(c,"name",{value:e.name}),Ct(c)}),c}}cn.packed=cn.bind({isPacked:!0}),cn.align=function(e){return cn.bind({alignment:e})};function ln(e,t={}){return function(n,r){if(r.kind!=`accessor`)throw C(`EINVAL`,`Field must be an accessor`);let i=sn(r),a=Lt(r.name,e,t);return i.fields.push(a),{get(){return Zt(this,a)},set(e){Kt(this,a,e)}}}}function un(e){let t=Ot[Pt(e)];function n(n,r){return typeof n==`number`?ln(new on(t,n),{typeName:e,...r}):ln(t,{typeName:e})(n,r&&`name`in r?r:_(C(`EINVAL`,`Invalid decorator context object`)))}return n}const A=Object.fromEntries(jt.map(e=>[e,un(e)]));function dn(e){return e}dn.typed=function(e){return e};var fn=class e{type;init;constructor(t,n){this.type=t,this.init=n;let r=(r=>new e(new on(t,r),n));return Object.setPrototypeOf(r,new.target.prototype),Object.assign(r,{type:t,init:n}),r}align(t){return new e(this.type,{...this.init,align:t})}countedBy(t){return new e(this.type,{...this.init,countedBy:t})}bigEndian(){return new e(this.type,{...this.init,bigEndian:!0})}toInit(){return{type:this.type,...this.init}}$type(){return new e(this.type,this.init)}};function pn(e,t=0){return new fn(new on(e,t),{})}function mn(e,t,...n){let r=n.reduce((e,t)=>({...e,...t}),{});typeof this==`object`&&Object.assign(r,this);let i=1,a=0,o=e=>{a=Math.ceil(a/e)*e},s=[];for(let[e,n]of Object.entries(t)){if(typeof e==`number`)throw TypeError(`Field names can not be numbers`);let t=Lt(e,n);r.isPacked||o(t.alignment),r.isUnion?a=Math.max(a,t.type.size):(t.offset=a,a+=t.type.size),s.push(t),i=Math.max(i,t.alignment)}r.alignment??=i,r.isPacked||o(r.alignment);class c extends DataView{static name=e;static size=a;static alignment=r.alignment;static isUnion=!!r.isUnion;static isDynamic=!!r.isDynamic;static fields=s;static get(e,t){return new this(e,t)}static set(e,t,n){let r=new Uint8Array(n.buffer,n.byteOffset,this.size),i=new Uint8Array(e,t,this.size);if(n.buffer!==e||n.byteOffset!==t)for(let e=0;e<this.size;e++)i[e]=r[e]}static[Symbol.toStringTag]=`[struct ${e}]`;constructor(e=new ArrayBuffer(a),t,n){super(e,t,n??e.byteLength-(t??0)),r.fastFields||Object.defineProperties(this,Jt(this.constructor))}}for(let e of Object.getOwnPropertyNames(DataView.prototype))(e.startsWith(`get`)||e.startsWith(`set`))&&Object.defineProperty(c.prototype,e,{enumerable:!1,configurable:!1,writable:!1,value:void 0});return Yt(c),Ct(c),c}mn.extend=function(e,t,n,...r){let i=r.reduce((e,t)=>({...e,...t}),{});typeof this==`object`&&Object.assign(i,this);let a=1,o=e.size,s=e=>{o=Math.ceil(o/e)*e},c=[...e.fields];for(let[e,t]of Object.entries(n)){if(typeof e==`number`)throw TypeError(`Field names can not be numbers`);let n=Lt(e,t);i.isPacked||s(n.alignment),i.isUnion?o=Math.max(o,n.type.size):(n.offset=o,o+=n.type.size),c.push(n),a=Math.max(a,n.alignment)}i.alignment??=a,i.isPacked||s(i.alignment);class l extends e{static name=t;static size=o;static alignment=i.alignment;static isUnion=!!i.isUnion;static isDynamic=!!i.isDynamic;static fields=c;static[Symbol.toStringTag]=`[struct ${t}]`}return Yt(l),Ct(l),l},mn.packed=mn.bind({isPacked:!0}),mn.align=function(e){return mn.bind({alignment:e})},mn.dynamic=mn.bind({isDynamic:!0}),Object.fromEntries(Object.entries(At).map(([e,t])=>[e,new fn(t,{typeName:e})]));function hn(e){return JSON.parse(ce(e),(e,t)=>e==``?t:typeof t==`string`?BigInt(t).toString(16).slice(0,Math.min(t.length,8)):t)}function gn(e){return v(JSON.stringify(e))}function _n(e,t){if(typeof e==`number`)return e;if(typeof e==`string`){let t=parseInt(e,8);if(!isNaN(t))return t}if(typeof t==`number`)return t;throw C(`EINVAL`,`Invalid mode: `+e?.toString())}const vn=2147483647;function yn(e){if(!(Number.isInteger(e)&&e>=0&&e<=vn))throw Object.assign(/* @__PURE__ */ RangeError(`The value of "fd" is out of range. It must be >= 0 && <= ${vn}. Received ${e}`),{code:`ERR_OUT_OF_RANGE`})}function bn(e){let{code:t}=e??{};return t==`ENOENT`||t==`ENOTDIR`}function xn(e){if(e instanceof Date)return e.getTime();let t=Number(e);if(!Number.isFinite(t))throw C(`EINVAL`,`Invalid time.`);return t<0?Date.now():t*1e3}function j(e,t=!1){if(e instanceof URL){if(e.protocol!=`file:`)throw C(`EINVAL`,`URLs must use the file: protocol`);e=e.pathname}if(e=e.toString(),e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`\0`))throw C(`EINVAL`,`Path can not contain null character`);if(e.length==0)throw C(`EINVAL`,`Path can not be empty`);return e=e.replaceAll(/[/\\]+/g,`/`),t?e:jn.call(this,e)}function Sn(e,t=`utf8`,n,r=0){return typeof e!=`object`||!e?{encoding:typeof e==`string`?e:t??null,flag:n,mode:r}:{encoding:typeof e?.encoding==`string`?e.encoding:t??null,flag:typeof e?.flag==`string`?e.flag:n,mode:_n(`mode`in e?e?.mode:null,r)}}function Cn(e){let t=`\0GS\0`;return e=e.replace(/\*\*/g,t).replace(/\*/g,`\0S\0`).replace(/[.+^$(){}|[\]\\]/g,`\\$&`).replace(/\?/g,`.`).replaceAll(`/\0GS\0/`,`(?:/.*)?/`).replaceAll(t,`.*`).replaceAll(`\0S\0`,`[^/]*`),RegExp(`^${e}$`)}async function wn(e){let t=Promise.withResolvers();setTimeout(()=>t.reject(C(`ETIMEDOUT`)),500),e.on(`online`,t.resolve),await t.promise}function Tn(e){return`${j(e,!0)}${Date.now()}-${Math.random().toString(36).slice(2)}`}function En(){if(`Temporal`in globalThis&&globalThis.Temporal!==void 0)return globalThis.Temporal;throw C(`ENOTSUP`,`Temporal is not supported by this runtime`)}var Dn=/* @__PURE__ */ t({basename:()=>Fn,dirname:()=>N,extname:()=>In,format:()=>Ln,formatExt:()=>An,isAbsolute:()=>Nn,join:()=>M,matchesGlob:()=>zn,normalize:()=>Mn,normalizeString:()=>kn,parse:()=>Rn,relative:()=>Pn,resolve:()=>jn,sep:()=>`/`});function On(e,t){if(typeof e!=`object`)throw TypeError(`"${t}" is not an object`)}function kn(e,t){let n=``,r=0,i=-1,a=0,o=`\0`;for(let s=0;s<=e.length;++s){if(s<e.length)o=e[s];else if(o==`/`)break;else o=`/`;if(o==`/`){if(i!==s-1&&a!==1){if(a===2){if(n.length<2||r!==2||n.at(-1)!==`.`||n.at(-2)!==`.`){if(n.length>2){let e=n.lastIndexOf(`/`);e===-1?(n=``,r=0):(n=n.slice(0,e),r=n.length-1-n.lastIndexOf(`/`)),i=s,a=0;continue}if(n.length!==0){n=``,r=0,i=s,a=0;continue}}t&&(n+=n.length>0?`/..`:`..`,r=2)}else n.length>0?n+=`/`+e.slice(i+1,s):n=e.slice(i+1,s),r=s-i-1}i=s,a=0}else o===`.`&&a!==-1?++a:a=-1}return n}function An(e){return e?`${e[0]===`.`?``:`.`}${e}`:``}function jn(...e){let t=``;for(let n of[...e.reverse(),D(this).pwd])if(n?.length&&(t=`${n}/${t}`,n.startsWith(`/`)))break;let n=t.startsWith(`/`);return t=kn(t,!n),n?`/${t}`:t.length?t:`/`}function Mn(e){if(!e.length)return`.`;let t=e[0]===`/`,n=e.at(-1)===`/`;return e=kn(e,!t),e.length?(n&&(e+=`/`),t?`/${e}`:e):t?`/`:n?`./`:`.`}function Nn(e){return e.startsWith(`/`)}function M(...e){if(!e.length)return`.`;let t=e.filter(e=>e).join(`/`);return t?.length?Mn(t):`.`}function Pn(e,t){if(e===t||(e=jn.call(this,e),t=jn.call(this,t),e===t))return``;let n=e.length,r=n-1,i=t.length-1,a=r<i?r:i,o=-1,s=0;for(;s<a;s++){let n=e[1+s];if(n!==t[1+s])break;n===`/`&&(o=s)}if(s===a){if(i>a){if(t[1+s]===`/`)return t.slice(1+s+1);if(s===0)return t.slice(1+s)}else r>a&&(e[1+s]===`/`?o=s:s===0&&(o=0))}let c=``;for(s=1+o+1;s<=n;++s)(s===n||e[s]===`/`)&&(c+=c.length===0?`..`:`/..`);return`${c}${t.slice(1+o)}`}function N(e){if(e.length===0)return`.`;let t=e[0]===`/`,n=-1,r=!0;for(let t=e.length-1;t>=1;--t)if(e[t]===`/`){if(!r){n=t;break}}else r=!1;return n===-1?t?`/`:`.`:t&&n===1?`//`:e.slice(0,n)}function Fn(e,t){let n=0,r=-1,i=!0;if(t!==void 0&&t.length>0&&t.length<=e.length){if(t===e)return``;let a=t.length-1,o=-1;for(let s=e.length-1;s>=0;--s)if(e[s]===`/`){if(!i){n=s+1;break}}else o===-1&&(i=!1,o=s+1),a>=0&&(e[s]===t[a]?--a===-1&&(r=s):(a=-1,r=o));return n===r?r=o:r===-1&&(r=e.length),e.slice(n,r)}for(let t=e.length-1;t>=0;--t)if(e[t]===`/`){if(!i){n=t+1;break}}else r===-1&&(i=!1,r=t+1);return r===-1?``:e.slice(n,r)}function In(e){let t=-1,n=0,r=-1,i=!0,a=0;for(let o=e.length-1;o>=0;--o){if(e[o]===`/`){if(!i){n=o+1;break}continue}r===-1&&(i=!1,r=o+1),e[o]===`.`?t===-1?t=o:a!==1&&(a=1):t!==-1&&(a=-1)}return t===-1||r===-1||a===0||a===1&&t===r-1&&t===n+1?``:e.slice(t,r)}function Ln(e){On(e,`pathObject`);let t=e.dir||e.root,n=e.base||`${e.name||``}${An(e.ext)}`;return t?t===e.root?`${t}${n}`:`${t}/${n}`:n}function Rn(e){let t=e[0]===`/`,n={root:t?`/`:``,dir:``,base:``,ext:``,name:``};if(e.length===0)return n;let r=+!!t,i=-1,a=0,o=-1,s=!0,c=e.length-1,l=0;for(;c>=r;--c){if(e[c]===`/`){if(!s){a=c+1;break}continue}o===-1&&(s=!1,o=c+1),e[c]===`.`?i===-1?i=c:l!==1&&(l=1):i!==-1&&(l=-1)}if(o!==-1){let r=a===0&&t?1:a;i===-1||l===0||l===1&&i===o-1&&i===a+1?n.base=n.name=e.slice(r,o):(n.name=e.slice(r,i),n.base=e.slice(r,o),n.ext=e.slice(i,o))}return a>0?n.dir=e.slice(0,a-1):t&&(n.dir=`/`),n}function zn(e,t){return Cn(e).test(t)}const Bn=BigInt(1e6);var Vn=class{_convert(e){return this._isBigint?BigInt(e):Number(e)}get blocks(){return this._convert(Math.ceil(Number(this.size)/512))}set blocks(e){}mode;dev=this._convert(0);ino=this._convert(0);rdev=this._convert(0);nlink=this._convert(1);blksize=this._convert(4096);uid=this._convert(0);gid=this._convert(0);atimeMs;get atime(){return new Date(Number(this.atimeMs))}set atime(e){this.atimeMs=this._convert(e.getTime())}get atimeInstant(){return En().Instant.fromEpochMilliseconds(Number(this.atimeMs))}set atimeInstant(e){this.atimeMs=this._convert(e.epochMilliseconds)}mtimeMs;get mtime(){return new Date(Number(this.mtimeMs))}set mtime(e){this.mtimeMs=this._convert(e.getTime())}get mtimeInstant(){return En().Instant.fromEpochMilliseconds(Number(this.mtimeMs))}set mtimeInstant(e){this.mtimeMs=this._convert(e.epochMilliseconds)}ctimeMs;get ctime(){return new Date(Number(this.ctimeMs))}set ctime(e){this.ctimeMs=this._convert(e.getTime())}get ctimeInstant(){return En().Instant.fromEpochMilliseconds(Number(this.ctimeMs))}set ctimeInstant(e){this.ctimeMs=this._convert(e.epochMilliseconds)}birthtimeMs;get birthtime(){return new Date(Number(this.birthtimeMs))}set birthtime(e){this.birthtimeMs=this._convert(e.getTime())}get birthtimeInstant(){return En().Instant.fromEpochMilliseconds(Number(this.birthtimeMs))}set birthtimeInstant(e){this.birthtimeMs=this._convert(e.epochMilliseconds)}size;data;flags;version;constructor({atimeMs:e,mtimeMs:t,ctimeMs:n,birthtimeMs:r,uid:i,gid:a,size:o,mode:s,ino:c,rdev:l,dev:u,blksize:d,...f}={}){let p=Date.now();this.atimeMs=this._convert(e??p),this.mtimeMs=this._convert(t??p),this.ctimeMs=this._convert(n??p),this.birthtimeMs=this._convert(r??p),this.uid=this._convert(i??0),this.gid=this._convert(a??0),this.size=this._convert(o??0),this.ino=this._convert(c??0),this.mode=this._convert(s??0),this.rdev=this._convert(l??0),this.dev=this._convert(u??0),this.blksize=this._convert(d??4096),this.mode&61440||(this.mode|=this._convert(ft)),Object.assign(this,f)}isFile(){return(this.mode&O)==ft}isDirectory(){return(this.mode&O)==mt}isSymbolicLink(){return(this.mode&O)==dt}isSocket(){return(this.mode&O)==ut}isBlockDevice(){return(this.mode&O)==pt}isCharacterDevice(){return(this.mode&O)==ht}isFIFO(){return(this.mode&O)==gt}toJSON(){return p(this,...$n,`dev`,`blksize`)}hasAccess(e,t){return B(t,this._isBigint?new Hn(this):this,e)}get atimeNs(){return BigInt(this.atimeMs)*Bn}get mtimeNs(){return BigInt(this.mtimeMs)*Bn}get ctimeNs(){return BigInt(this.ctimeMs)*Bn}get birthtimeNs(){return BigInt(this.birthtimeMs)*Bn}},Hn=class extends Vn{_isBigint=!1},Un=class extends Vn{_isBigint=!0};function Wn(e,t){return e.size==t.size&&+e.atime==+t.atime&&+e.mtime==+t.mtime&&+e.ctime==+t.ctime&&e.mode==t.mode}var Gn=class{type=525687744115;bsize=4096;blocks=0;bfree=0;bavail=0;files=yt;frsize=4096;ffree=yt},Kn=class{type=BigInt(`0x7a656e6673`);bsize=BigInt(4096);blocks=BigInt(0);bfree=BigInt(0);bavail=BigInt(0);files=BigInt(yt);frsize=BigInt(4096);ffree=BigInt(yt)};let P=!0,qn=!1;function Jn(e){P=e.checkAccess,qn=e.resolveFullWalk}var F=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else(d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},I=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0};const Yn=0,Xn=3968;let Zn=(()=>{var e,t;let n=[cn.packed()],r,i=[],a,o=dn.typed(Uint8Array),s,c=[],l=[],u,d=[],f=[];var p=class extends o{static{a=this}static{let m=typeof Symbol==`function`&&Symbol.metadata?Object.create(o[Symbol.metadata]??null):void 0;s=[(e=A).uint32.bind(e)],u=[(t=A).uint32.bind(t)],F(this,null,s,{kind:`accessor`,name:`keySize`,static:!1,private:!1,access:{has:e=>`keySize`in e,get:e=>e.keySize,set:(e,t)=>{e.keySize=t}},metadata:m},c,l),F(this,null,u,{kind:`accessor`,name:`valueSize`,static:!1,private:!1,access:{has:e=>`valueSize`in e,get:e=>e.valueSize,set:(e,t)=>{e.valueSize=t}},metadata:m},d,f),F(null,r={value:a},n,{kind:`class`,name:a.name,metadata:m},null,i),p=a=r.value,m&&Object.defineProperty(a,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:m})}static name=`Attribute`;#e=I(this,c,void 0);get keySize(){return this.#e}set keySize(e){this.#e=e}#t=(I(this,l),I(this,d,void 0));get valueSize(){return this.#t}set valueSize(e){this.#t=e}get name(){return ce(this.subarray(8,8+this.keySize))}set name(e){let t=v(e);if(8+t.length+this.valueSize>Xn)throw C(`EOVERFLOW`);this.set(t,8),this.keySize=t.length}get value(){return this.subarray(8+this.keySize,this.size)}set value(e){if(8+this.keySize+e.length>Xn)throw C(`EOVERFLOW`);this.valueSize=e.length,this.set(e,8+this.keySize)}get size(){return 8+this.keySize+this.valueSize}constructor(){super(...arguments),I(this,f)}static{I(a,i)}};return a})(),Qn=(()=>{var e;let t=[cn.packed()],n,r=[],i,o=dn(a),s,c=[],l=[];var u=class extends o{static{i=this}static{let a=typeof Symbol==`function`&&Symbol.metadata?Object.create(o[Symbol.metadata]??null):void 0;s=[(e=A).uint32.bind(e)],F(this,null,s,{kind:`accessor`,name:`size`,static:!1,private:!1,access:{has:e=>`size`in e,get:e=>e.size,set:(e,t)=>{e.size=t}},metadata:a},c,l),F(null,n={value:i},t,{kind:`class`,name:i.name,metadata:a},null,r),u=i=n.value,a&&Object.defineProperty(i,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:a})}static name=`Attributes`;#e=I(this,c,void 0);get size(){return this.#e}set size(e){this.#e=e}get byteSize(){let e=this.byteOffset+k(this);for(let t=0;t<this.size;t++){let t=new Zn(this.buffer,e);e+=t.size}return e}has(e){let t=this.byteOffset+k(this);for(let n=0;n<this.size;n++){let n=new Zn(this.buffer,t);if(n.name==e)return!0;t+=n.size}return!1}get(e){let t=this.byteOffset+k(this);for(let n=0;n<this.size;n++){let n=new Zn(this.buffer,t);if(n.name==e)return n.value;t+=n.size}}set(e,t){let n=this.byteOffset+k(this),r;for(let t=0;t<this.size;t++){let t=new Zn(this.buffer,n);t.name==e&&(r=[n,t.size]),n+=t.size}let i=new Uint8Array(this.buffer);if(r){let[e,t]=r;n-=t,i.copyWithin(e,e+t,n+t),i.fill(0,n,n+t),this.size--}let a=new Zn(this.buffer,n);a.name=e,a.value=t,this.size++}remove(e){let t=this.byteOffset+k(this),n;for(let r=0;r<this.size;r++){let r=new Zn(this.buffer,t);r.name==e&&(n=[t,r.size]),t+=r.size}if(!n)return!1;let[r,i]=n,a=new Uint8Array(this.buffer);return a.copyWithin(r,r+i,t),a.fill(0,t-i,t),this.size--,!0}copyFrom(e){let{byteSize:t}=e;new Uint8Array(this.buffer,this.byteOffset,t).set(new Uint8Array(e.buffer,e.byteOffset,t))}*keys(){let e=this.byteOffset+k(this);for(let t=0;t<this.size;t++){let t=new Zn(this.buffer,e);yield t.name,e+=t.size}}*values(){let e=this.byteOffset+k(this);for(let t=0;t<this.size;t++){let t=new Zn(this.buffer,e);yield t.value,e+=t.size}}*entries(){let e=this.byteOffset+k(this);for(let t=0;t<this.size;t++){let t=new Zn(this.buffer,e);yield[t.name,t.value],e+=t.size}}constructor(){super(...arguments),I(this,l)}static{I(i,r)}};return i})();const $n=[`ino`,`data`,`size`,`mode`,`flags`,`nlink`,`uid`,`gid`,`atimeMs`,`birthtimeMs`,`mtimeMs`,`ctimeMs`,`version`,`rdev`],er=5;var L;(function(e){e[e.Sync=1]=`Sync`,e[e.NoAtime=2]=`NoAtime`,e[e.Append=4]=`Append`,e[e.Immutable=8]=`Immutable`,e[e.Dead=16]=`Dead`,e[e.NoQuota=32]=`NoQuota`,e[e.Dirsync=64]=`Dirsync`,e[e.NoCMtime=128]=`NoCMtime`,e[e.SwapFile=256]=`SwapFile`,e[e.Private=512]=`Private`,e[e.IMA=1024]=`IMA`,e[e.AutoMount=2048]=`AutoMount`,e[e.NoSec=4096]=`NoSec`,e[e.DAX=8192]=`DAX`,e[e.Encrypted=16384]=`Encrypted`,e[e.CaseFold=32768]=`CaseFold`,e[e.Verity=65536]=`Verity`,e[e.KernelFile=131072]=`KernelFile`})(L||={});const tr=253951,nr=229631;let R=(()=>{var e,t,n,r,i,o,s,c,l,u,d,f,m,h,g,ee,te;let _=[cn.packed()],ne,re=[],ie,ae=dn(a),oe,v=[],se=[],ce,le=[],ue=[],de,fe=[],y=[],pe,b=[],x=[],S,me=[],he=[],w,ge=[],_e=[],ve,ye=[],be=[],xe,Se=[],T=[],we,Te=[],Ee=[],De,Oe=[],ke=[],Ae,je=[],Me=[],Ne,Pe=[],Fe=[],Ie,Le=[],Re=[],ze,Be=[],Ve=[],He,Ue=[],We=[],Ge,Ke=[],qe=[],Je,Ye=[],Xe=[],Ze,D=[],Qe=[],$e,et=[],tt=[],nt,rt=[],it=[];var at=class extends ae{static{ie=this}static{let a=typeof Symbol==`function`&&Symbol.metadata?Object.create(ae[Symbol.metadata]??null):void 0;oe=[(e=A).uint32.bind(e)],ce=[(t=A).uint32.bind(t)],de=[(n=A).uint32.bind(n)],pe=[(r=A).uint16.bind(r)],S=[(i=A).uint32.bind(i)],w=[(o=A).uint32.bind(o)],ve=[(s=A).uint32.bind(s)],xe=[(c=A).float64.bind(c)],we=[(l=A).float64.bind(l)],De=[(u=A).float64.bind(u)],Ae=[(d=A).float64.bind(d)],Ne=[(f=A).uint32.bind(f)],Ie=[(m=A).uint32.bind(m)],ze=[(h=A).uint32.bind(h)],He=[(g=A).uint16.bind(g)],Ge=[(ee=A).uint32.bind(ee)],Je=[(te=A).uint32.bind(te)],Ze=[A.uint8(44)],$e=[ln(Qn)],nt=[A.uint8(Xn)],F(this,null,oe,{kind:`accessor`,name:`data`,static:!1,private:!1,access:{has:e=>`data`in e,get:e=>e.data,set:(e,t)=>{e.data=t}},metadata:a},v,se),F(this,null,ce,{kind:`accessor`,name:`__data_old`,static:!1,private:!1,access:{has:e=>`__data_old`in e,get:e=>e.__data_old,set:(e,t)=>{e.__data_old=t}},metadata:a},le,ue),F(this,null,de,{kind:`accessor`,name:`size`,static:!1,private:!1,access:{has:e=>`size`in e,get:e=>e.size,set:(e,t)=>{e.size=t}},metadata:a},fe,y),F(this,null,pe,{kind:`accessor`,name:`mode`,static:!1,private:!1,access:{has:e=>`mode`in e,get:e=>e.mode,set:(e,t)=>{e.mode=t}},metadata:a},b,x),F(this,null,S,{kind:`accessor`,name:`nlink`,static:!1,private:!1,access:{has:e=>`nlink`in e,get:e=>e.nlink,set:(e,t)=>{e.nlink=t}},metadata:a},me,he),F(this,null,w,{kind:`accessor`,name:`uid`,static:!1,private:!1,access:{has:e=>`uid`in e,get:e=>e.uid,set:(e,t)=>{e.uid=t}},metadata:a},ge,_e),F(this,null,ve,{kind:`accessor`,name:`gid`,static:!1,private:!1,access:{has:e=>`gid`in e,get:e=>e.gid,set:(e,t)=>{e.gid=t}},metadata:a},ye,be),F(this,null,xe,{kind:`accessor`,name:`atimeMs`,static:!1,private:!1,access:{has:e=>`atimeMs`in e,get:e=>e.atimeMs,set:(e,t)=>{e.atimeMs=t}},metadata:a},Se,T),F(this,null,we,{kind:`accessor`,name:`birthtimeMs`,static:!1,private:!1,access:{has:e=>`birthtimeMs`in e,get:e=>e.birthtimeMs,set:(e,t)=>{e.birthtimeMs=t}},metadata:a},Te,Ee),F(this,null,De,{kind:`accessor`,name:`mtimeMs`,static:!1,private:!1,access:{has:e=>`mtimeMs`in e,get:e=>e.mtimeMs,set:(e,t)=>{e.mtimeMs=t}},metadata:a},Oe,ke),F(this,null,Ae,{kind:`accessor`,name:`ctimeMs`,static:!1,private:!1,access:{has:e=>`ctimeMs`in e,get:e=>e.ctimeMs,set:(e,t)=>{e.ctimeMs=t}},metadata:a},je,Me),F(this,null,Ne,{kind:`accessor`,name:`ino`,static:!1,private:!1,access:{has:e=>`ino`in e,get:e=>e.ino,set:(e,t)=>{e.ino=t}},metadata:a},Pe,Fe),F(this,null,Ie,{kind:`accessor`,name:`__ino_old`,static:!1,private:!1,access:{has:e=>`__ino_old`in e,get:e=>e.__ino_old,set:(e,t)=>{e.__ino_old=t}},metadata:a},Le,Re),F(this,null,ze,{kind:`accessor`,name:`flags`,static:!1,private:!1,access:{has:e=>`flags`in e,get:e=>e.flags,set:(e,t)=>{e.flags=t}},metadata:a},Be,Ve),F(this,null,He,{kind:`accessor`,name:`__after_flags`,static:!1,private:!1,access:{has:e=>`__after_flags`in e,get:e=>e.__after_flags,set:(e,t)=>{e.__after_flags=t}},metadata:a},Ue,We),F(this,null,Ge,{kind:`accessor`,name:`version`,static:!1,private:!1,access:{has:e=>`version`in e,get:e=>e.version,set:(e,t)=>{e.version=t}},metadata:a},Ke,qe),F(this,null,Je,{kind:`accessor`,name:`rdev`,static:!1,private:!1,access:{has:e=>`rdev`in e,get:e=>e.rdev,set:(e,t)=>{e.rdev=t}},metadata:a},Ye,Xe),F(this,null,Ze,{kind:`accessor`,name:`__padding`,static:!1,private:!1,access:{has:e=>`__padding`in e,get:e=>e.__padding,set:(e,t)=>{e.__padding=t}},metadata:a},D,Qe),F(this,null,$e,{kind:`accessor`,name:`attributes`,static:!1,private:!1,access:{has:e=>`attributes`in e,get:e=>e.attributes,set:(e,t)=>{e.attributes=t}},metadata:a},et,tt),F(this,null,nt,{kind:`accessor`,name:`__data`,static:!1,private:!1,access:{has:e=>`__data`in e,get:e=>e.__data,set:(e,t)=>{e.__data=t}},metadata:a},rt,it),F(null,ne={value:ie},_,{kind:`class`,name:ie.name,metadata:a},null,re),at=ie=ne.value,a&&Object.defineProperty(ie,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:a})}static name=`Inode`;constructor(...e){let t={};if(typeof e[0]==`object`&&e[0]!==null&&!ArrayBuffer.isView(e[0])&&(t=e[0],e=[k(at)]),e[0]instanceof at&&(e=[new Uint8Array(e[0].buffer,e[0].byteOffset,e[0].byteLength)]),super(...e),I(this,it),this.byteLength<k(at))throw Ce(C(`EIO`,`Buffer is too small to create an inode (${this.byteLength} bytes)`));Object.assign(this,t),this.atimeMs||=Date.now(),this.mtimeMs||=Date.now(),this.ctimeMs||=Date.now(),this.birthtimeMs||=Date.now(),this.ino&&!this.nlink&&E(`Inode ${this.ino} has an nlink of 0`)}#e=I(this,v,void 0);get data(){return this.#e}set data(e){this.#e=e}#t=(I(this,se),I(this,le,void 0));get __data_old(){return this.#t}set __data_old(e){this.#t=e}#n=(I(this,ue),I(this,fe,void 0));get size(){return this.#n}set size(e){this.#n=e}#r=(I(this,y),I(this,b,void 0));get mode(){return this.#r}set mode(e){this.#r=e}#i=(I(this,x),I(this,me,void 0));get nlink(){return this.#i}set nlink(e){this.#i=e}#a=(I(this,he),I(this,ge,void 0));get uid(){return this.#a}set uid(e){this.#a=e}#o=(I(this,_e),I(this,ye,void 0));get gid(){return this.#o}set gid(e){this.#o=e}#s=(I(this,be),I(this,Se,void 0));get atimeMs(){return this.#s}set atimeMs(e){this.#s=e}#c=(I(this,T),I(this,Te,void 0));get birthtimeMs(){return this.#c}set birthtimeMs(e){this.#c=e}#l=(I(this,Ee),I(this,Oe,void 0));get mtimeMs(){return this.#l}set mtimeMs(e){this.#l=e}#u=(I(this,ke),I(this,je,void 0));get ctimeMs(){return this.#u}set ctimeMs(e){this.#u=e}#d=(I(this,Me),I(this,Pe,void 0));get ino(){return this.#d}set ino(e){this.#d=e}#f=(I(this,Fe),I(this,Le,void 0));get __ino_old(){return this.#f}set __ino_old(e){this.#f=e}#p=(I(this,Re),I(this,Be,void 0));get flags(){return this.#p}set flags(e){this.#p=e}#m=(I(this,Ve),I(this,Ue,void 0));get __after_flags(){return this.#m}set __after_flags(e){this.#m=e}#h=(I(this,We),I(this,Ke,void 0));get version(){return this.#h}set version(e){this.#h=e}#g=(I(this,qe),I(this,Ye,void 0));get rdev(){return this.#g}set rdev(e){this.#g=e}#_=(I(this,Xe),I(this,D,void 0));get __padding(){return this.#_}set __padding(e){this.#_=e}#v=(I(this,Qe),I(this,et,void 0));get attributes(){return this.#v}set attributes(e){this.#v=e}#y=(I(this,tt),I(this,rt,void 0));get __data(){return this.#y}set __data(e){this.#y=e}toString(){return`<Inode ${this.ino}>`}toJSON(){return{...p(this,$n),attributes:this.attributes}}toStats(){return new Hn(this)}update(e){if(!e)return!1;let t=!1;for(let n of $n)e[n]!==void 0&&n!=`ino`&&n!=`data`&&this[n]!==e[n]&&(n==`atimeMs`&&this.flags&L.NoAtime||(this[n]=e[n],t=!0));return e.attributes&&(this.attributes.copyFrom(e.attributes),t=!0),t&&(this.ctimeMs=Date.now()),t}static{I(ie,re)}};return at=ie})();function rr(e){return(e.mode&O)==ft}function z(e){return(e.mode&O)==mt}function ir(e){return(e.mode&O)==dt}function ar(e){return(e.mode&O)==ut}function or(e){return(e.mode&O)==pt}function sr(e){return(e.mode&O)==ht}function cr(e){return(e.mode&O)==gt}function B(e,t,n){let{credentials:r}=D(e);if(ir(t))return!0;if(r.euid===0)return!(n&1)||z(t)||!!(t.mode&73);let i=0;return r.euid===t.uid?(t.mode&256&&(i|=4),t.mode&128&&(i|=2),t.mode&64&&(i|=1)):r.egid===t.gid||r.groups.includes(Number(t.gid))?(t.mode&32&&(i|=4),t.mode&16&&(i|=2),t.mode&8&&(i|=1)):(t.mode&4&&(i|=4),t.mode&2&&(i|=2),t.mode&1&&(i|=1)),(i&n)===n}function lr(e,t,n){if(P&&!B(e,t,1))throw S(`EACCES`,n)}function ur(e,t,n,r){if(!P)return;if(!B(e,t,3))throw S(`EACCES`,r);let{euid:i}=D(e).credentials;if(t.mode&512&&i!==0&&i!==n.uid&&i!==t.uid)throw S(`EPERM`,r)}function dr(e,t,n){if(!P)return;let{euid:r}=D(e).credentials;if(r!==0&&r!==t.uid)throw S(`EPERM`,n)}function fr(e,t,n,r,i){if(!P)return;let{euid:a,egid:o,groups:s}=D(e).credentials;if(a===0)return;let c=a===t.uid;if(n!==-1&&!(c&&n===t.uid)||r!==-1&&(!c||r!==t.gid&&r!==o&&!s.includes(r)))throw S(`EPERM`,i)}function pr(e,t,n){let r=!0;return!isNaN(t)&&t>=0&&t<4294967295?e.uid=t:r=!1,!isNaN(n)&&n>=0&&n<4294967295?e.gid=n:r=!1,e.mode!==void 0&&!z({mode:e.mode})&&(e.mode&=-2049,e.mode&8&&(e.mode&=-1025)),r}function mr(e,t,n){let{euid:r,egid:i,groups:a}=D(e).credentials;P&&r!==0&&i!==t.gid&&!a.includes(t.gid)&&(n&=-1025),t.mode=t.mode&(n>61440?-61441:O)|n}const hr=1;var gr=class e extends Map{maxSize=yt;toJSON(){return{version:1,maxSize:this.maxSize,entries:Object.fromEntries(Array.from(this).map(([e,t])=>[e,t.toJSON()]))}}toString(){return JSON.stringify(this.toJSON())}clear(){super.clear(),this.#e=0}get byteSize(){let e=this.size*k(R);for(let t of this.values())e+=t.size;return e}usage(){return{totalSpace:this.maxSize,freeSpace:this.maxSize-this.byteSize}}pathOf(e){for(let[t,n]of this)if(n.ino==e||n.data==e)return t}getByID(e){return this.entryByID(e)?.inode}entryByID(e){for(let[t,n]of this)if(n.ino==e||n.data==e)return{path:t,inode:n}}directoryEntries(e){let t=this.get(e);if(!t)throw C(`ENOENT`);if((t.mode&61440)!=16384)throw C(`ENOTDIR`);let n={};for(let t of this.keys())N(t)==e&&t!=e&&(n[Fn(t)]=this.get(t).ino);return n}#e=0;_alloc(){return this.#e||=Array.from(this.values()).reduce((e,t)=>Math.max(e,t.ino,t.data),0),this.#e++,this.#e++}directories(){let e=/* @__PURE__ */ new Map;for(let[t,n]of this){if((n.mode&61440)!=16384)continue;let r={};for(let e of this.keys())N(e)==t&&e!=t&&(r[Fn(e)]=this.get(e).ino);e.set(t,r)}return e}fromJSON(e){if(e.version!=1)throw C(`EINVAL`,`Index version mismatch`);this.clear();for(let[t,n]of Object.entries(e.entries))n.data??=ie(1,yt),t==`/`&&(n.ino=0),this.set(t,new R(n));return this}static parse(t){if(!h(t))throw C(`EINVAL`,`Invalid JSON`);let n=JSON.parse(t),r=new e;return r.fromJSON(n),r}},_r;(function(e){e[e.SecureRm=1]=`SecureRm`,e[e.Undelete=2]=`Undelete`,e[e.Compress=4]=`Compress`,e[e.Sync=8]=`Sync`,e[e.Immutable=16]=`Immutable`,e[e.Append=32]=`Append`,e[e.NoDump=64]=`NoDump`,e[e.NoAtime=128]=`NoAtime`,e[e.Dirty=256]=`Dirty`,e[e.CompressBlk=512]=`CompressBlk`,e[e.NoCompress=1024]=`NoCompress`,e[e.Encrypt=2048]=`Encrypt`,e[e.Btree=4096]=`Btree`,e[e.Index=4096]=`Index`,e[e.IMagic=8192]=`IMagic`,e[e.JournalData=16384]=`JournalData`,e[e.NoTail=32768]=`NoTail`,e[e.DirSync=65536]=`DirSync`,e[e.TopDir=131072]=`TopDir`,e[e.HugeFile=262144]=`HugeFile`,e[e.Extent=524288]=`Extent`,e[e.Verity=1048576]=`Verity`,e[e.EaInode=2097152]=`EaInode`,e[e.EofBlocks=4194304]=`EofBlocks`,e[e.NoCow=8388608]=`NoCow`,e[e.Dax=33554432]=`Dax`,e[e.InlineData=268435456]=`InlineData`,e[e.ProjInherit=536870912]=`ProjInherit`,e[e.CaseFold=1073741824]=`CaseFold`,e[e.Reserved=2147483648]=`Reserved`})(_r||={});const vr=[[_r.Sync,L.Sync],[_r.Immutable,L.Immutable],[_r.Append,L.Append],[_r.NoAtime,L.NoAtime],[_r.Encrypt,L.Encrypted],[_r.DirSync,L.Dirsync],[_r.Verity,L.Verity],[_r.Dax,L.DAX],[_r.CaseFold,L.CaseFold]],yr=vr.reduce((e,[t])=>e|t,0),br=vr.reduce((e,[,t])=>e|t,0);function xr(e){let t=0;for(let[n,r]of vr)e&r&&(t|=n);return t}function Sr(e,t){if(t&~yr)throw C(`ENOTSUP`,`Unsupported file flags`);let n=0;for(let[e,r]of vr)t&e&&(n|=r);e.inode.flags=(e.inode.flags||0)&~br|n}var Cr;(function(e){e[e.GetFlags=2148034049]=`GetFlags`,e[e.SetFlags=1074292226]=`SetFlags`,e[e.GetVersion=2148038145]=`GetVersion`,e[e.SetVersion=1074296322]=`SetVersion`,e[e.Fiemap=3223348747]=`Fiemap`,e[e.GetXattr=2149341215]=`GetXattr`,e[e.SetXattr=1075599392]=`SetXattr`,e[e.GetLabel=2164298801]=`GetLabel`,e[e.SetLabel=1090556978]=`SetLabel`,e[e.GetUUID=2148603136]=`GetUUID`,e[e.GetSysfsPath=2155943169]=`GetSysfsPath`})(Cr||={});var wr;(function(e){e[e.GetFlags=2147771905]=`GetFlags`,e[e.SetFlags=1074030082]=`SetFlags`,e[e.GetVersion=2147776001]=`GetVersion`,e[e.SetVersion=1074034178]=`SetVersion`})(wr||={});const Tr={[Cr.GetFlags](e){if(typeof e.inode.flags!=`number`)throw C(`ENOTTY`);return xr(e.inode.flags)},[wr.GetFlags](e){if(typeof e.inode.flags!=`number`)throw C(`ENOTTY`);return xr(e.inode.flags)},[Cr.GetVersion](e){if(typeof e.inode.version!=`number`)throw C(`ENOTTY`);return e.inode.version},[wr.GetVersion](e){if(typeof e.inode.version!=`number`)throw C(`ENOTTY`);return e.inode.version},[Cr.Fiemap](){throw C(`ENOTSUP`)},[Cr.GetXattr](){throw C(`ENOTSUP`)},[Cr.SetXattr](){throw C(`ENOTSUP`)},[Cr.GetLabel](e){return e.fs.label},[Cr.SetLabel](e,t){e.fs.label=t},[Cr.GetUUID](e){return e.fs.uuid},[Cr.GetSysfsPath](){throw C(`ENOTSUP`)}},Er={...Tr,async[Cr.SetFlags](e,t){Sr(e,t),await e.fs.touch(e.path,e.inode)},async[wr.SetFlags](e,t){Sr(e,t),await e.fs.touch(e.path,e.inode)},async[Cr.SetVersion](e,t){e.inode.version=t,await e.fs.touch(e.path,e.inode)},async[wr.SetVersion](e,t){e.inode.version=t,await e.fs.touch(e.path,e.inode)}},Dr={...Tr,[Cr.SetFlags](e,t){Sr(e,t),e.fs.touchSync(e.path,e.inode)},[wr.SetFlags](e,t){Sr(e,t),e.fs.touchSync(e.path,e.inode)},[Cr.SetVersion](e,t){e.inode.version=t,e.fs.touchSync(e.path,e.inode)},[wr.SetVersion](e,t){e.inode.version=t,e.fs.touchSync(e.path,e.inode)}};var Or=class e{type;name;label;_mountPoint;_uuid=crypto.randomUUID();get uuid(){return this._uuid}attributes=/* @__PURE__ */ new Map;constructor(t,n){this.type=t,this.name=n,this.streamRead===e.prototype.streamRead&&this.attributes.set(`default_stream_read`),this.streamWrite===e.prototype.streamWrite&&this.attributes.set(`default_stream_write`)}toString(){return`${this.name} ${this.label?JSON.stringify(this.label):``} (${this._mountPoint?`mounted on `+this._mountPoint:`unmounted`})`}usage(){return{totalSpace:0,freeSpace:0}}async ready(){}readySync(){if(this.ready!==e.prototype.ready)throw C(`EAGAIN`)}async exists(e){try{return await this.stat(e),!0}catch(e){return e.code!=`ENOENT`}}existsSync(e){try{return this.statSync(e),!0}catch(e){return e.code!=`ENOENT`}}streamRead(e,t){let{chunkSize:n=65536}=t,r=t.start??0,i=t.end;return new ReadableStream({pull:async t=>{if(i??=(await this.stat(e)).size,r>=i){t.close();return}let a=new Uint8Array(Math.min(n,i-r));await this.read(e,a,r,r+a.byteLength),r+=a.byteLength,t.enqueue(a),r>=i&&t.close()},type:`bytes`})}streamWrite(e,t){let n=t.start??0;return new WritableStream({write:async(t,r)=>{let i=!1,a=e=>{i=!0,r.error(e)},{size:o}=await this.stat(e);await this.write(e,t,n).catch(a),!i&&(n+=t.byteLength,await this.touch(e,{mtimeMs:Date.now(),size:Math.max(o,n)}).catch(a))}})}async ioctl(e,t,...n){let r=Er[t];if(!r)throw C(`ENOTTY`);return await r(e,...n)}ioctlSync(e,t,...n){let r=Dr[t];if(!r)throw C(`ENOTTY`);return r(e,...n)}};Promise.withResolvers??=(E(`Using a polyfill of Promise.withResolvers`),function(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}),Symbol.dispose??=(E(`Using a polyfill of Symbol.dispose`),Symbol(`Symbol.dispose`)),Symbol.asyncDispose??=(E(`Using a polyfill of Symbol.asyncDispose`),Symbol(`Symbol.asyncDispose`)),globalThis.crypto.randomUUID??=(E(`Using a polyfill of crypto.randomUUID`),function(){let e=crypto.getRandomValues(/* @__PURE__ */ new Uint8Array(16));e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=[...e].map(e=>e.toString(16).padStart(2,`0`)).join(``);return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}),Uint8Array.prototype.toBase64??=(E(`Using a polyfill of Uint8Array.prototype.toBase64`),function(){return btoa(String.fromCharCode(...this))}),Uint8Array.fromBase64??=(E(`Using a polyfill of Uint8Array.fromBase64`),function(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}),Uint8Array.prototype.toHex??=(E(`Using a polyfill of Uint8Array.prototype.toHex`),function(){return Array.from(this).map(e=>e.toString(16).padStart(2,`0`)).join(``)}),Uint8Array.fromHex??=(E(`Using a polyfill of Uint8Array.fromHex`),function(e){let t=new Uint8Array(e.length/2);for(let n=0;n<e.length;n+=2)t[n/2]=parseInt(e.slice(n,n+2),16);return t}),Array.fromAsync??=(E(`Using a polyfill of Array.fromAsync`),async function(e){let t=[];for await(let n of e)t.push(n);return t}),Map.prototype.getOrInsert??=(E(`Using a polyfill of Map.prototype.getOrInsert`),function(e,t){return this.has(e)||this.set(e,t),this.get(e)}),Map.prototype.getOrInsertComputed??=(E(`Using a polyfill of Map.prototype.getOrInsertComputed`),function(e,t){if(this.has(e))return this.get(e);let n=t(e);return this.set(e,n),n});
|
|
2
2
|
/* node:coverage enable */
|
|
3
|
-
var kr=class{store;constructor(e){this.store=e}},Ar=class extends kr{async get(e,t,n){return this.getSync(e,t,n)}async set(e,t,n){return this.setSync(e,t,n)}async remove(e){return this.removeSync(e)}},jr=class extends kr{asyncDone=Promise.resolve();async(e){this.asyncDone=this.asyncDone.then(()=>e)}_cached(e,t){this.store.cache??=/* @__PURE__ */ new Map;let n=this.store.cache.get(e);return n?(t&&(n.size=t.size),n):t?new s(e,t.size,{},this.store.cache):void 0}getSync(e,t,n){let r=this._cached(e);if(!r)return;n??=r.size;let i=r.missing(t,n);for(let{start:t,end:n}of i)this.async(this.get(e,t,n));if(i.length)throw C(`EAGAIN`);let a=r.regionAt(t);if(!a){E(`Missing cache region for `+e);return}return a.data.subarray(t-a.offset,n-a.offset)}setSync(e,t,n){this.async(this.set(e,t,n))}removeSync(e){this.async(this.remove(e)),this.store.cache?.delete(e)}},Mr=class{raw;fs;done=!1;flag(e){return this.raw.store.flags?.includes(e)??!1}constructor(e,t){this.raw=e,this.fs=t}originalData=/* @__PURE__ */ new Map;modifiedKeys=/* @__PURE__ */ new Set;keys(){return this.raw.keys()}async get(e,t=0,n){let r=await this.raw.get(e,t,n);return this.stash(e),r}getSync(e,t=0,n){let r=this.raw.getSync(e,t,n);return this.stash(e),r}async set(e,t,n=0){await this.markModified(e,n,t.byteLength);let r=t instanceof Uint8Array?t:new Uint8Array(t.buffer,t.byteOffset,t.byteLength);await this.raw.set(e,r,n)}setSync(e,t,n=0){this.markModifiedSync(e,n,t.byteLength);let r=t instanceof Uint8Array?t:new Uint8Array(t.buffer,t.byteOffset,t.byteLength);this.raw.setSync(e,r,n)}async remove(e){await this.markModified(e,0,void 0),await this.raw.remove(e)}removeSync(e){this.markModifiedSync(e,0,void 0),this.raw.removeSync(e)}commit(){return this.done=!0,Promise.resolve()}commitSync(){this.done=!0}async abort(){if(!this.done){for(let[e,t]of this.originalData)if(this.modifiedKeys.has(e)){if(t.some(e=>!e.data)){await this.raw.remove(e),this.fs._remove(e);continue}for(let n of t.reverse())await this.raw.set(e,n.data,n.offset)}this.done=!0}}abortSync(){if(!this.done){for(let[e,t]of this.originalData)if(this.modifiedKeys.has(e)){if(t.some(e=>!e.data)){this.raw.removeSync(e),this.fs._remove(e);continue}for(let n of t.reverse())this.raw.setSync(e,n.data,n.offset)}this.done=!0}}async[Symbol.asyncDispose](){this.done||await this.abort()}[Symbol.dispose](){this.done||this.abortSync()}stash(e,t,n=0){this.originalData.getOrInsertComputed(e,()=>[]).push({data:t,offset:n})}async markModified(e,t,n){this.modifiedKeys.add(e);let r=n?t+n:void 0;try{this.stash(e,await this.raw.get(e,t,r),t)}catch(n){if(!(this.raw instanceof jr))throw n;let i=this.raw._cached(e);if(!i)throw n;for(let n of i.cached(t,r??t))this.stash(e,await this.raw.get(e,n.start,n.end),n.start)}}markModifiedSync(e,t,n){this.modifiedKeys.add(e);let r=n?t+n:void 0;try{this.stash(e,this.raw.getSync(e,t,r),t)}catch(n){if(!(this.raw instanceof jr))throw n;let i=this.raw._cached(e);if(!i)throw n;for(let n of i.cached(t,r??t))this.stash(e,this.raw.getSync(e,n.start,n.end),n.start)}}},V=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},H=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r}),Nr=class extends Or{store;_ids=/* @__PURE__ */ new Map([[`/`,0]]);_paths=/* @__PURE__ */ new Map([[0,/* @__PURE__ */ new Set(`/`)]]);_path(e){let[t]=this._paths.get(e)??[];return t}_add(e,t){this._paths.getOrInsertComputed(e,()=>/* @__PURE__ */ new Set).add(t),this._ids.set(t,e)}_remove(e){for(let t of this._paths.get(e)??[])this._ids.delete(t);this._paths.delete(e)}_move(e,t){let n=[];for(let[r,i]of this._ids){let a=Pn(e,r);if(a.startsWith(`..`))continue;let o=M(t,a);o.endsWith(`/`)&&(o=o.slice(0,-1)),n.push({oldKey:r,newKey:o,ino:i})}for(let{oldKey:e,newKey:t,ino:r}of n){this._ids.delete(e),this._ids.set(t,r);let n=this._paths.get(r);if(!n){E(`Missing paths in table for ino `+r);continue}n.delete(e),n.add(t)}}_initialized=!1;async ready(){this._initialized||=(this.attributes.has(`no_async_preload`)||this.checkRootSync(),await this.checkRoot(),await this._populate(),!0)}readySync(){this._initialized||=(this.attributes.has(`no_async_preload`)||this.checkRootSync(),this.checkRootSync(),this._populateSync(),!0)}constructor(e){super(e.type??1802921587,e.name),this.store=e,e.fs=this,this._uuid=e.uuid??this.uuid,this.label=e.label,Ee(this.name+`: supports features: `+this.store.flags?.join(`, `))}usage(){return this.store.usage?.()||{totalSpace:0,freeSpace:0}}async loadIndex(e){let t={stack:[],error:void 0,hasError:!1};try{let n=V(t,this.transaction(),!0),r=e.directories();for(let[t,i]of e)this._add(i.ino,t),await n.set(i.ino,i),r.has(t)&&await n.set(i.data,gn(r.get(t)));await n.commit()}catch(e){t.error=e,t.hasError=!0}finally{let e=H(t);e&&await e}}loadIndexSync(e){let t={stack:[],error:void 0,hasError:!1};try{let n=V(t,this.transaction(),!1),r=e.directories();for(let[t,i]of e)this._add(i.ino,t),n.setSync(i.ino,i),r.has(t)&&n.setSync(i.data,gn(r.get(t)));n.commitSync()}catch(e){t.error=e,t.hasError=!0}finally{H(t)}}async createIndex(){let e={stack:[],error:void 0,hasError:!1};try{let t=new gr,n=V(e,this.transaction(),!0),r=[[`/`,0]],i=te(C(`EDEADLK`));for(;r.length;){let[e,i]=r.shift(),a=new R(await n.get(i));if(t.set(e,a),z(a)){let t=hn(await n.get(a.data)??_(C(`ENODATA`)));for(let[n,i]of Object.entries(t))r.push([M(e,n),i])}}return i(),t}catch(t){e.error=t,e.hasError=!0}finally{let t=H(e);t&&await t}}createIndexSync(){let e={stack:[],error:void 0,hasError:!1};try{let t=new gr,n=V(e,this.transaction(),!1),r=[[`/`,0]],i=te(C(`EDEADLK`));for(;r.length;){let[e,i]=r.shift(),a=new R(n.getSync(i));if(t.set(e,a),z(a)){let t=hn(n.getSync(a.data)??_(C(`ENODATA`)));for(let[n,i]of Object.entries(t))r.push([M(e,n),i])}}return i(),t}catch(t){e.error=t,e.hasError=!0}finally{H(e)}}async rename(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!0),i=Rn(e),a=Rn(t),o=await this.findInode(r,i.dir),s=hn(await r.get(o.data)??_(C(`ENODATA`)));if(!s[i.base])throw C(`ENOENT`);let c=s[i.base];if(c!=this._ids.get(e)&&T(`Ino mismatch while renaming ${e} to ${t}`),delete s[i.base],(a.dir+`/`).startsWith(e+`/`))throw C(`EBUSY`);let l=a.dir==i.dir,u=l?o:await this.findInode(r,a.dir),d=l?s:hn(await r.get(u.data)??_(C(`ENODATA`)));if(d[a.base]){let e=new R(await r.get(d[a.base])??_(C(`ENOENT`)));if(!rr(e))throw C(`EISDIR`);await r.remove(e.data),await r.remove(d[a.base])}d[a.base]=c,await r.set(o.data,gn(s)),await r.set(u.data,gn(d)),await r.commit(),this._move(e,t)}catch(e){n.error=e,n.hasError=!0}finally{let e=H(n);e&&await e}}renameSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!1),i=Rn(e),a=Rn(t),o=this.findInodeSync(r,i.dir),s=hn(r.getSync(o.data)??_(C(`ENODATA`)));if(!s[i.base])throw C(`ENOENT`);let c=s[i.base];if(c!=this._ids.get(e)&&T(`Ino mismatch while renaming ${e} to ${t}`),delete s[i.base],(a.dir+`/`).startsWith(e+`/`))throw C(`EBUSY`);let l=a.dir===i.dir,u=l?o:this.findInodeSync(r,a.dir),d=l?s:hn(r.getSync(u.data)??_(C(`ENODATA`)));if(d[a.base]){let e=new R(r.getSync(d[a.base])??_(C(`ENOENT`)));if(!rr(e))throw C(`EISDIR`);r.removeSync(e.data),r.removeSync(d[a.base])}d[a.base]=c,r.setSync(o.data,gn(s)),r.setSync(u.data,gn(d)),r.commitSync(),this._move(e,t)}catch(e){n.error=e,n.hasError=!0}finally{H(n)}}async stat(e){let t={stack:[],error:void 0,hasError:!1};try{let n=V(t,this.transaction(),!0);return await this.findInode(n,e)}catch(e){t.error=e,t.hasError=!0}finally{let e=H(t);e&&await e}}statSync(e){let t={stack:[],error:void 0,hasError:!1};try{let n=V(t,this.transaction(),!1);return this.findInodeSync(n,e)}catch(e){t.error=e,t.hasError=!0}finally{H(t)}}async touch(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!0),a=await this.findInode(r,e);if(!z(a)&&t.size!==void 0&&t.size!==a.size){let e=await r.get(a.data)??/* @__PURE__ */ new Uint8Array;t.size<e.byteLength&&e.fill(0,t.size),await r.set(a.data,t.size<e.byteLength?e.subarray(0,t.size):i(e,t.size))}a.update(t)&&(this._add(a.ino,e),r.setSync(a.ino,a)),await r.commit()}catch(e){n.error=e,n.hasError=!0}finally{let e=H(n);e&&await e}}touchSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!1),a=this.findInodeSync(r,e);if(!z(a)&&t.size!==void 0&&t.size!==a.size&&!t.metaOnly){let e=r.getSync(a.data)??/* @__PURE__ */ new Uint8Array;t.size<e.byteLength&&e.fill(0,t.size),r.setSync(a.data,t.size<e.byteLength?e.subarray(0,t.size):i(e,t.size))}a.update(t)&&(this._add(a.ino,e),r.setSync(a.ino,a)),r.commitSync()}catch(e){n.error=e,n.hasError=!0}finally{H(n)}}async createFile(e,t){return await this.commitNew(e,{...t,mode:t.mode|ft},/* @__PURE__ */ new Uint8Array)}createFileSync(e,t){return this.commitNewSync(e,{...t,mode:t.mode|ft},/* @__PURE__ */ new Uint8Array)}async unlink(e){return this.remove(e,!1)}unlinkSync(e){this.removeSync(e,!1)}async rmdir(e){if((await this.readdir(e)).length)throw C(`ENOTEMPTY`);await this.remove(e,!0)}rmdirSync(e){if(this.readdirSync(e).length)throw C(`ENOTEMPTY`);this.removeSync(e,!0)}async mkdir(e,t){return await this.commitNew(e,{...t,mode:t.mode|mt},v(`{}`))}mkdirSync(e,t){return this.commitNewSync(e,{...t,mode:t.mode|mt},v(`{}`))}async readdir(e){let t={stack:[],error:void 0,hasError:!1};try{let n=V(t,this.transaction(),!0),r=await this.findInode(n,e);return Object.keys(hn(await n.get(r.data)??_(C(`ENOENT`))))}catch(e){t.error=e,t.hasError=!0}finally{let e=H(t);e&&await e}}readdirSync(e){let t={stack:[],error:void 0,hasError:!1};try{let n=V(t,this.transaction(),!1),r=this.findInodeSync(n,e);return Object.keys(hn(n.getSync(r.data)??_(C(`ENOENT`))))}catch(e){t.error=e,t.hasError=!0}finally{H(t)}}async sync(){}syncSync(){}async link(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!0),i=N(t),a=await this.findInode(r,i),o=hn(await r.get(a.data)??_(C(`ENOENT`))),s=await this.findInode(r,e);s.nlink++,o[Fn(t)]=s.ino,this._add(s.ino,t),await r.set(s.ino,s),await r.set(a.data,gn(o)),await r.commit()}catch(e){n.error=e,n.hasError=!0}finally{let e=H(n);e&&await e}}linkSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!1),i=N(t),a=this.findInodeSync(r,i),o=hn(r.getSync(a.data)??_(C(`ENOENT`))),s=this.findInodeSync(r,e);s.nlink++,o[Fn(t)]=s.ino,this._add(s.ino,t),r.setSync(s.ino,s),r.setSync(a.data,gn(o)),r.commitSync()}catch(e){n.error=e,n.hasError=!0}finally{H(n)}}async read(e,t,n,r){let i={stack:[],error:void 0,hasError:!1};try{let a=V(i,this.transaction(),!0),o=await this.findInode(a,e);if(o.size==0)return;let s=await a.get(o.data,n,r)??_(C(`ENODATA`)),c=a.flag(`partial`)?s:s.subarray(n,r);c.byteLength>t.byteLength&&T(`Trying to place ${c.byteLength} bytes into a ${t.byteLength} byte buffer on read`),t.set(c)}catch(e){i.error=e,i.hasError=!0}finally{let e=H(i);e&&await e}}readSync(e,t,n,r){let i={stack:[],error:void 0,hasError:!1};try{let a=V(i,this.transaction(),!1),o=this.findInodeSync(a,e);if(o.size==0)return;let s=a.getSync(o.data,n,r)??_(C(`ENODATA`)),c=a.flag(`partial`)?s:s.subarray(n,r);c.byteLength>t.byteLength&&T(`Trying to place ${c.byteLength} bytes into a ${t.byteLength} byte buffer on read`),t.set(c)}catch(e){i.error=e,i.hasError=!0}finally{H(i)}}async write(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{let a=V(r,this.transaction(),!0),o=await this.findInode(a,e),s=n+t.byteLength,c=t;a.flag(`partial`)||(c=i(await a.get(o.data)??/* @__PURE__ */ new Uint8Array,s),c.set(t,n),n=0),await a.set(o.data,c,n),o.update({size:Math.max(o.size,s),mtimeMs:Date.now()}),await a.set(o.ino,o),this._add(o.ino,e),await a.commit()}catch(e){r.error=e,r.hasError=!0}finally{let e=H(r);e&&await e}}writeSync(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{let a=V(r,this.transaction(),!1),o=this.findInodeSync(a,e),s=n+t.byteLength,c=t;a.flag(`partial`)||(c=i(a.getSync(o.data)??/* @__PURE__ */ new Uint8Array,s),c.set(t,n),n=0),a.setSync(o.data,c,n),o.update({size:Math.max(o.size,s),mtimeMs:Date.now()}),a.setSync(o.ino,o),this._add(o.ino,e),a.commitSync()}catch(e){r.error=e,r.hasError=!0}finally{H(r)}}transaction(){return new Mr(this.store.transaction(),this)}async checkRoot(){let e={stack:[],error:void 0,hasError:!1};try{let t=V(e,this.transaction(),!0);if(await t.get(0))return;let n=new R({ino:0,data:1,mode:16895});await t.set(n.data,v(`{}`)),this._add(0,`/`),await t.set(0,n),await t.commit()}catch(t){e.error=t,e.hasError=!0}finally{let t=H(e);t&&await t}}checkRootSync(){let e={stack:[],error:void 0,hasError:!1};try{let t=V(e,this.transaction(),!1);if(t.getSync(0))return;let n=new R({ino:0,data:1,mode:16895});t.setSync(n.data,v(`{}`)),this._add(0,`/`),t.setSync(0,n),t.commitSync()}catch(t){e.error=t,e.hasError=!0}finally{H(e)}}async _populate(){let e={stack:[],error:void 0,hasError:!1};try{if(this._initialized){E(`Attempted to populate tables after initialization`);return}Ee(`Populating tables with existing store metadata`);let t=V(e,this.transaction(),!0),n=await t.get(0);if(!n){we(`Store does not have a root inode`);let e=new R({ino:0,data:1,mode:16895});await t.set(e.data,v(`{}`)),this._add(0,`/`),await t.set(0,e),await t.commit();return}if(n.length<k(R)){Ce(`Store contains an invalid root inode. Refusing to populate tables`);return}let r=/* @__PURE__ */ new Set,i=0,a=[[`/`,0]];for(;a.length>0;){i++;let[e,n]=a.shift();this._add(n,e);let o=await t.get(n);if(!o){E(`Store is missing data for inode: `+n);continue}if(o.length<k(R)){E(`Invalid inode size for ino ${n}: ${o.length}`);continue}let s=new R(o);if(!z(s)||r.has(n))continue;r.add(n);let c=await t.get(s.data);if(!c){E(`Store is missing directory data: `+s.data);continue}let l=hn(c);for(let[t,n]of Object.entries(l))a.push([M(e,t),n])}Ee(`Added ${i} existing inode(s) from store`)}catch(t){e.error=t,e.hasError=!0}finally{let t=H(e);t&&await t}}_populateSync(){let e={stack:[],error:void 0,hasError:!1};try{if(this._initialized){E(`Attempted to populate tables after initialization`);return}Ee(`Populating tables with existing store metadata`);let t=V(e,this.transaction(),!1),n=t.getSync(0);if(!n){we(`Store does not have a root inode`);let e=new R({ino:0,data:1,mode:16895});t.setSync(e.data,v(`{}`)),this._add(0,`/`),t.setSync(0,e),t.commitSync();return}if(n.length<k(R)){Ce(`Store contains an invalid root inode. Refusing to populate tables`);return}let r=/* @__PURE__ */ new Set,i=0,a=[[`/`,0]];for(;a.length>0;){i++;let[e,n]=a.shift();this._add(n,e);let o=t.getSync(n);if(!o){E(`Store is missing data for inode: `+n);continue}if(o.length<k(R)){E(`Invalid inode size for ino ${n}: ${o.length}`);continue}let s=new R(o);if(!z(s)||r.has(n))continue;r.add(n);let c=t.getSync(s.data);if(!c){E(`Store is missing directory data: `+s.data);continue}let l=hn(c);for(let[t,n]of Object.entries(l))a.push([M(e,t),n])}Ee(`Added ${i} existing inode(s) from store`)}catch(t){e.error=t,e.hasError=!0}finally{H(e)}}async _findInode(e,t,n=/* @__PURE__ */ new Set){if(n.has(t))throw Ce(C(`EIO`,`Infinite loop detected while finding inode`));if(n.add(t),t==`/`)return new R(await e.get(0)??_(C(`ENODATA`)));let{dir:r,base:i}=Rn(t),a=await this._findInode(e,r,n),o=hn(await e.get(a.data)??_(C(`ENODATA`)));if(!(i in o))throw C(`ENOENT`);return new R(await e.get(o[i])??_(C(`ENODATA`)))}_findInodeSync(e,t,n=/* @__PURE__ */ new Set){if(n.has(t))throw Ce(C(`EIO`,`Infinite loop detected while finding inode`));if(n.add(t),t==`/`)return new R(e.getSync(0)??_(C(`ENOENT`)));let{dir:r,base:i}=Rn(t),a=this._findInodeSync(e,r,n),o=hn(e.getSync(a.data)??_(C(`ENODATA`)));if(!(i in o))throw C(`ENOENT`);return new R(e.getSync(o[i])??_(C(`ENODATA`)))}async findInode(e,t){if(this.attributes.has(`no_id_tables`))return await this._findInode(e,t);let n=this._ids.get(t);if(n===void 0)throw C(`ENOENT`);return new R(await e.get(n)??_(C(`ENOENT`)))}findInodeSync(e,t){if(this.attributes.has(`no_id_tables`))return this._findInodeSync(e,t);let n=this._ids.get(t);if(n===void 0)throw C(`ENOENT`);return new R(e.getSync(n)??_(C(`ENOENT`)))}_lastID;allocNew(e){this._lastID||=Array.from(this._paths.keys()).reduce((e,t)=>Math.max(e,t),0),this._lastID+=2;let t=this._lastID;if(t>4294967295)throw T(C(`ENOSPC`,`No IDs available`));return this._add(t,e),t}async commitNew(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{if(e==`/`)throw C(`EEXIST`);let i=V(r,this.transaction(),!0),{dir:a,base:o}=Rn(e),s=await this.findInode(i,a),c=hn(await i.get(s.data)??_(C(`ENOENT`)));if(c[o])throw C(`EEXIST`);let l=this.allocNew(e),u=new R({...t,ino:l,data:l+1,size:n.byteLength,nlink:1});return await i.set(u.ino,u),await i.set(u.data,n),c[o]=u.ino,await i.set(s.data,gn(c)),await i.commit(),u}catch(e){r.error=e,r.hasError=!0}finally{let e=H(r);e&&await e}}commitNewSync(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{if(e==`/`)throw C(`EEXIST`);let i=V(r,this.transaction(),!1),{dir:a,base:o}=Rn(e),s=this.findInodeSync(i,a),c=hn(i.getSync(s.data)??_(C(`ENOENT`)));if(c[o])throw C(`EEXIST`);let l=this.allocNew(e),u=new R({...t,ino:l,data:l+1,size:n.byteLength,nlink:1});return i.setSync(u.ino,u),i.setSync(u.data,n),c[o]=u.ino,i.setSync(s.data,gn(c)),i.commitSync(),u}catch(e){r.error=e,r.hasError=!0}finally{H(r)}}async remove(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!0),{dir:i,base:a}=Rn(e),o=await this.findInode(r,i),s=hn(await r.get(o.data)??_(C(`ENOENT`)));if(!s[a])throw C(`ENOENT`);let c=s[a],l=new R(await r.get(c)??_(C(`ENOENT`)));if(delete s[a],!t&&z(l))throw C(`EISDIR`);await r.set(o.data,gn(s)),l.nlink>1?(l.update({nlink:l.nlink-1}),await r.set(l.ino,l)):(await r.remove(l.data),await r.remove(c),this._remove(c)),await r.commit()}catch(e){n.error=e,n.hasError=!0}finally{let e=H(n);e&&await e}}removeSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!1),{dir:i,base:a}=Rn(e),o=this.findInodeSync(r,i),s=hn(r.getSync(o.data)??_(C(`ENOENT`))),c=s[a];if(!c)throw C(`ENOENT`);let l=new R(r.getSync(c)??_(C(`ENOENT`)));if(delete s[a],!t&&z(l))throw C(`EISDIR`);r.setSync(o.data,gn(s)),l.nlink>1?(l.update({nlink:l.nlink-1}),r.setSync(l.ino,l)):(r.removeSync(l.data),r.removeSync(c),this._remove(c)),r.commitSync()}catch(e){n.error=e,n.hasError=!0}finally{H(n)}}},Pr=class extends Ar{async keys(){return this.store.keys()}async get(e){return await(this.store.getAsync?.(e)??this.store.get(e))}getSync(e){return this.store.get(e)}setSync(e,t){this.store.set(e,t)}removeSync(e){this.store.delete(e)}},Fr=class extends jr{async keys(){return await this.asyncDone,this.store.keys()}async get(e,t,n){return await this.asyncDone,await this.store.get(e,t,n)}getSync(e,t,n){return this.store.cached(e,t,n)}async set(e,t,n=0){await this.asyncDone,await this.store.set(e,t,n)}async remove(e){await this.asyncDone,await this.store.delete(e)}},Ir=class extends Map{maxSize;label;flags=[];name=`tmpfs`;constructor(e=yt,t){super(),this.maxSize=e,this.label=t}async sync(){}transaction(){return new Pr(this)}get bytes(){let e=this.size*4;for(let t of this.values())e+=t.byteLength;return e}usage(){return{totalSpace:this.maxSize,freeSpace:this.maxSize-this.bytes}}};const Lr={name:`InMemory`,options:{maxSize:{type:`number`,required:!1},label:{type:`string`,required:!1}},create({maxSize:e,label:t}){let n=new Nr(new Ir(e,t));return n.checkRootSync(),n}};var Rr=class extends Nr{devices=/* @__PURE__ */ new Map;devicesWithDriver(e,t){if(t&&typeof e==`string`)throw T(C(`EINVAL`,`Can not fetch devices using only a driver name`));let n=[];for(let r of this.devices.values())t&&r.driver!=e||(typeof e==`string`?e:e.name)==r.driver.name&&n.push(r);return n}_createDevice(e,t={}){let n=1,r=Array.from(this.devices.values()).at(-1);for(;this.store.has(n)||r?.inode.ino==n;)n++;let i=e.init?.(n,t),a={data:{},minor:0,major:0,...m(i??{},`metadata`),driver:e,inode:new R({mode:8630,...i?.metadata})},o=`/`+(a.name||e.name)+(e.singleton?``:this.devicesWithDriver(e).length);if(this.existsSync(o))throw C(`EEXIST`);return this.devices.set(o,a),Te(`Initialized device: `+this._mountPoint+o),a}addDefaults(){this._createDevice(Br),this._createDevice(Vr),this._createDevice(Hr),this._createDevice(Ur),this._createDevice(Wr),Ee(`Added default devices`)}constructor(){super(new Ir(16777216,`devfs`))}async rename(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.rename(e,t)}renameSync(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.renameSync(e,t)}async stat(e){let t=this.devices.get(e);return t?t.inode:super.stat(e)}statSync(e){let t=this.devices.get(e);return t?t.inode:super.statSync(e)}async touch(e,t){let n=this.devices.get(e);n?n.inode.update(t):await super.touch(e,t)}touchSync(e,t){let n=this.devices.get(e);n?n.inode.update(t):super.touchSync(e,t)}async createFile(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.createFile(e,t)}createFileSync(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.createFileSync(e,t)}async unlink(e){if(this.devices.has(e))throw C(`EPERM`);return super.unlink(e)}unlinkSync(e){if(this.devices.has(e))throw C(`EPERM`);return super.unlinkSync(e)}async rmdir(e){return super.rmdir(e)}rmdirSync(e){return super.rmdirSync(e)}async mkdir(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.mkdir(e,t)}mkdirSync(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.mkdirSync(e,t)}async readdir(e){let t=await super.readdir(e);for(let n of this.devices.keys())N(n)==e&&t.push(Fn(n));return t}readdirSync(e){let t=super.readdirSync(e);for(let n of this.devices.keys())N(n)==e&&t.push(Fn(n));return t}async link(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.link(e,t)}linkSync(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.linkSync(e,t)}async sync(){for(let e of this.devices.values())e.driver.sync?.(e);return super.sync()}syncSync(){for(let e of this.devices.values())e.driver.sync?.(e);return super.syncSync()}async read(e,t,n,r){let i=this.devices.get(e);if(!i){await super.read(e,t,n,r);return}i.driver.read(i,t,n,r)}readSync(e,t,n,r){let i=this.devices.get(e);if(!i){super.readSync(e,t,n,r);return}i.driver.read(i,t,n,r)}async write(e,t,n){let r=this.devices.get(e);if(!r)return await super.write(e,t,n);r.driver.write(r,t,n)}writeSync(e,t,n){let r=this.devices.get(e);if(!r)return super.writeSync(e,t,n);r.driver.write(r,t,n)}};const zr=/* @__PURE__ */ new Uint8Array,Br={name:`null`,singleton:!0,init(){return{major:1,minor:3}},read(){return zr},write(){}},Vr={name:`zero`,singleton:!0,init(){return{major:1,minor:5}},read(e,t,n,r){t.fill(0,n,r)},write(){}},Hr={name:`full`,singleton:!0,init(){return{major:1,minor:7}},read(e,t,n,r){t.fill(0,n,r)},write(){throw C(`ENOSPC`)}},Ur={name:`random`,singleton:!0,init(){return{major:1,minor:8}},read(e,t){for(let e=0;e<t.length;e++)t[e]=Math.floor(Math.random()*256)},write(){}},Wr={name:`console`,singleton:!0,init(e,{output:t=e=>console.log(e)}={}){return{major:5,minor:1,data:{output:t}}},read(){return zr},write(e,t,n){let r=ce(t);e.data.output(r,n)}},Gr={null:Br,zero:Vr,full:Hr,random:Ur,console:Wr};var U=r(),Kr;(function(e){e[e.UNKNOWN=0]=`UNKNOWN`,e[e.FIFO=1]=`FIFO`,e[e.CHR=2]=`CHR`,e[e.DIR=4]=`DIR`,e[e.BLK=6]=`BLK`,e[e.REG=8]=`REG`,e[e.LNK=10]=`LNK`,e[e.SOCK=12]=`SOCK`,e[e.WHT=14]=`WHT`})(Kr||={});function qr(e){return(e&61440)>>12}function Jr(e){return e<<12}var Yr=class{ino;type;path;name};const Xr=x;function Zr(e,t){return e.path=t,e}function Qr(e,t,n,r){let i=typeof n==`string`?{path:n,dest:r,syscall:t.endsWith(`Sync`)?t.slice(0,-4):t}:n,a=e[t];if(typeof a!=`function`)throw TypeError(`${t} is not a function`);return function(...t){try{return a.call(e,...t)}catch(e){throw b(Object.assign(e,i))}}}const $r=Symbol(`withExceptionContext:target`);function ei(e,t){return new Proxy(e,{get(e,n){if(n===$r)return e;let r=Reflect.get(e,n);return typeof r==`function`?function n(...i){try{let a=r.apply(e,i);return a instanceof Promise?a.catch(e=>{if(`code`in e)throw b(Object.assign(e,t));if(e in y){let r=S(e,t);Error.captureStackTrace(r,n)}throw e}):a}catch(e){throw b(Object.assign(e,t))}}:r}})}function ti(e){return e[$r]??e}var ni=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},ri=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else(d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},ii=class{pending=/* @__PURE__ */ new Set;lastWriter;writeState=0;readers=0;syncReaders=0;take(e,t,n){e==`rw`?this.writeState=t?2:1:(this.readers++,t&&this.syncReaders++);let r=!1,i=()=>{r||(r=!0,e==`rw`?this.writeState=0:(this.readers--,t&&this.syncReaders--),n())};return i[Symbol.dispose]=i,i}queue(e){let{promise:t,resolve:n}=Promise.withResolvers();return this.pending.add(t),e==`rw`&&(this.lastWriter=t),t.then(()=>{this.pending.delete(t),this.lastWriter==t&&delete this.lastWriter}),n}async acquire(e){let t=e==`ro`?this.lastWriter:Promise.all(this.pending),n=this.queue(e);return await t,this.take(e,!1,n)}acquireSync(e){if(this.writeState==2||e==`rw`&&this.syncReaders)throw C(`EDEADLK`);if(this.writeState||e==`rw`&&this.readers)throw C(`EAGAIN`);return this.take(e,!0,this.queue(e))}isAvailable(e){return(e!=`rw`||!this.readers)&&!this.writeState}get isFree(){return!this.writeState&&!this.readers}get mode(){return this.writeState?`rw`:this.readers?`ro`:null}};let ai=(()=>{let e=[],t,n;return class{static{let r=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;t=[ne],n=[ne],ri(this,null,t,{kind:`getter`,name:`lock`,static:!1,private:!1,access:{has:e=>`lock`in e,get:e=>e.lock},metadata:r},null,e),ri(this,null,n,{kind:`getter`,name:`lockSync`,static:!1,private:!1,access:{has:e=>`lockSync`in e,get:e=>e.lockSync},metadata:r},null,e),r&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:r})}_rwLock=(ni(this,e),new ii);get lock(){return this._rwLock.acquire.bind(this._rwLock)}get lockSync(){return this._rwLock.acquireSync.bind(this._rwLock)}get isLocked(){return!this._rwLock.isFree}get lockMode(){return this._rwLock.mode}}})();var oi=class{max;#e=/* @__PURE__ */ new Set;#t=[];constructor(e){if(this.max=e,!Number.isInteger(e)||e<1)throw C(`EINVAL`,`Semaphore max must be a positive integer`)}get active(){return this.#e.size}get waiting(){return this.#t.length}get isAvailable(){return this.#e.size<this.max}#n(e,t){let n=!1,r=()=>{n||(n=!0,this.#e.delete(e),t(),this.#t.shift()?.())};return r[Symbol.dispose]=r,r}async get(){let{promise:e,resolve:t}=Promise.withResolvers();if(this.#e.size>=this.max){let t=Promise.withResolvers();this.#t.push(()=>{this.#e.add(e),t.resolve()}),await t.promise}else this.#e.add(e);return this.#n(e,t)}getSync(){if(this.#e.size>=this.max)throw C(`EAGAIN`);let{promise:e,resolve:t}=Promise.withResolvers();return this.#e.add(e),this.#n(e,t)}async drain(){for(;this.#e.size;)await Promise.all(this.#e)}},si=class extends ai{fs;inode;data;dirtyRanges=[];truncatedTo;metadataDirty=!1;refs=0;paths=/* @__PURE__ */ new Set;_lastPath;constructor(e,t,n){super(),this.fs=e,this.inode=n,this.paths.add(t),this._lastPath=t,this.data=new s(n.ino,n.size,{sparse:!0})}get ino(){return this.inode.ino}get path(){let[e]=this.paths;return e!==void 0&&(this._lastPath=e),e??this._lastPath}get dirty(){return this.metadataDirty||this.dirtyRanges.length>0}get bypassCache(){return sr(this.inode)||or(this.inode)||!!(this.inode.flags&L.DAX)}markDirty(e,t){o(this.dirtyRanges,e,t)}copyFromCache(e,t,n){let r=t;for(let i of this.data.regionsIn(t,n)){let a=i.offset+i.data.byteLength;if(a<=r)continue;i.offset>r&&(e.fill(0,r-t,i.offset-t),r=i.offset);let o=Math.min(n,a);e.set(i.data.subarray(r-i.offset,o-i.offset),r-t),r=o}r<n&&e.fill(0,r-t,n-t)}async read(e,t,n){if(this.bypassCache)return await this.fs.read(this.path,e,t,n);for(let{start:e,end:r}of this.data.missing(t,n)){let t=new Uint8Array(r-e);await this.fs.read(this.path,t,e,r),this.data.add(t,e)}this.copyFromCache(e,t,n)}readSync(e,t,n){if(this.bypassCache)return this.fs.readSync(this.path,e,t,n);for(let{start:e,end:r}of this.data.missing(t,n)){let t=new Uint8Array(r-e);this.fs.readSync(this.path,t,e,r),this.data.add(t,e)}this.copyFromCache(e,t,n)}async write(e,t){this.bypassCache?await this.fs.write(this.path,e,t):this._writeCached(e,t),this._writeMetadata(t+e.byteLength)}writeSync(e,t){this.bypassCache?this.fs.writeSync(this.path,e,t):this._writeCached(e,t),this._writeMetadata(t+e.byteLength)}_writeCached(e,t){let n=t+e.byteLength;this.data.add(e.slice(),t),n>this.data.size&&(this.data.size=n),this.markDirty(t,n)}_writeMetadata(e){!this.bypassCache&&e>this.inode.size&&(this.inode.size=e),this.inode.mtimeMs=Date.now(),this.inode.ctimeMs=Date.now(),this.metadataDirty=!0}truncate(e){this.truncatedTo=Math.min(this.truncatedTo??e,e),this.data.size=e,this.dirtyRanges=this.dirtyRanges.filter(t=>t.start<e).map(t=>t.end>e?{start:t.start,end:e}:t),this.inode.size=e,this.inode.mtimeMs=Date.now(),this.inode.ctimeMs=Date.now(),this.metadataDirty=!0}get needsPreTruncate(){return!this.bypassCache&&this.truncatedTo!==void 0&&this.truncatedTo<this.inode.size&&!this.fs.attributes.has(`no_write`)}async sync(){this.needsPreTruncate&&await this.fs.touch(this.path,{size:this.truncatedTo}),this.truncatedTo=void 0;for(let e of this.dirtyRanges)for(let t=e.start;t<e.end;){let n=this.data.regionAt(t);if(!n)break;let r=Math.min(e.end,n.offset+n.data.byteLength);await this.fs.write(this.path,n.data.subarray(t-n.offset,r-n.offset),t),t=r}this.dirtyRanges=[],this.metadataDirty&&=(this.fs.attributes.has(`no_write`)||await this.fs.touch(this.path,this.inode),!1)}syncSync(){this.needsPreTruncate&&this.fs.touchSync(this.path,{size:this.truncatedTo}),this.truncatedTo=void 0;for(let e of this.dirtyRanges)for(let t=e.start;t<e.end;){let n=this.data.regionAt(t);if(!n)break;let r=Math.min(e.end,n.offset+n.data.byteLength);this.fs.writeSync(this.path,n.data.subarray(t-n.offset,r-n.offset),t),t=r}this.dirtyRanges=[],this.metadataDirty&&=(this.fs.attributes.has(`no_write`)||this.fs.touchSync(this.path,this.inode),!1)}},ci=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},li=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r}),ui=class{fs;byIno=/* @__PURE__ */ new Map;byPath=/* @__PURE__ */ new Map;constructor(e){this.fs=e}get(e){return this.byPath.get(e)}ref(e,t){let n=this.byIno.get(t.ino);return n&&n.inode.nlink===n.paths.size&&!n.paths.has(e)&&T(`vcache.ref: vnode for ${this.fs.label||this.fs.uuid}:${t.ino} has an nlink of ${n.inode.nlink} but referenced by more paths [#314]`),n&&!n.paths.has(e)&&(t.ino===0||t.nlink<=1||n.inode.nlink<=1||(n.inode.mode^t.mode)&61440)&&(n=this.byPath.get(e),n&&(n.inode.mode^t.mode)&61440&&(n=void 0)),n?(n.paths.add(e),!n.dirty&&t!==n.inode&&Object.assign(n.inode,t)):(n=new si(this.fs,e,t),this.byIno.set(t.ino,n)),this.byPath.set(e,n),n.refs++,n}unref(e){e.refs--,!(e.refs>0||e.dirty)&&this.evict(e)}evict(e){this.byIno.delete(e.ino);for(let t of e.paths)this.byPath.delete(t)}rename(e,t){for(let[n,r]of this.byPath){if(n!=e&&!n.startsWith(e+`/`))continue;let i=t+n.slice(e.length);this.byPath.delete(n),this.byPath.set(i,r),r.paths.delete(n),r.paths.add(i)}}link(e,t){let n=this.byPath.get(e);n&&(n.paths.add(t),this.byPath.set(t,n))}remove(e){let t=this.byPath.get(e);t&&(this.byPath.delete(e),t.paths.delete(e),!t.paths.size&&!t.refs&&this.evict(t))}async sync(){for(let e of this.byIno.values()){let t={stack:[],error:void 0,hasError:!1};try{if(!e.dirty)continue;ci(t,await e.lock(`rw`),!1),await e.sync(),e.refs||this.evict(e)}catch(e){t.error=e,t.hasError=!0}finally{li(t)}}}syncSync(){for(let e of this.byIno.values()){let t={stack:[],error:void 0,hasError:!1};try{if(!e.dirty)continue;ci(t,e.lockSync(`rw`),!1),e.syncSync(),e.refs||this.evict(e)}catch(e){t.error=e,t.hasError=!0}finally{li(t)}}}async stat(e,t){try{return this.get(e)?.inode??await this.fs.stat(e)}catch(e){throw t?b(Object.assign(e,t)):e}}statSync(e,t){try{return this.get(e)?.inode??this.fs.statSync(e)}catch(e){throw t?b(Object.assign(e,t)):e}}async lock(e,t,n){n??=await this.stat(e);let r=this.ref(e,n),i=await r.lock(t),a=!1,o=()=>{a||(a=!0,i(),this.unref(r))};return o[Symbol.dispose]=o,o}lockSync(e,t,n){n??=this.statSync(e);let r=this.ref(e,n),i;try{i=r.lockSync(t)}catch(e){throw this.unref(r),e}let a=!1,o=()=>{a||(a=!0,i(),this.unref(r))};return o[Symbol.dispose]=o,o}};const di=/* @__PURE__ */ new Map;function fi(e){return di.getOrInsertComputed(e.uuid,()=>new ui(ti(e)))}var pi=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},mi=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else(d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},hi=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},gi=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r});let _i=(()=>{let e=[],t,n;return class{static{let r=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;mi(this,null,t,{kind:`getter`,name:`inode`,static:!1,private:!1,access:{has:e=>`inode`in e,get:e=>e.inode},metadata:r},null,e),mi(this,null,n,{kind:`getter`,name:`fs`,static:!1,private:!1,access:{has:e=>`fs`in e,get:e=>e.fs},metadata:r},null,e),r&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:r})}context=pi(this,e);path;internalPath;flag;vnode;_position=0;get position(){return this.flag&1024?this.inode.size:this._position}set position(e){this._position=e}get inode(){return this.vnode.inode}get fs(){return this.vnode.fs}get dirty(){return this.vnode.dirty}closed=!1;refs=1;ref(){if(this.closed)throw S(`EBADF`,`dup`,this.path);return this.refs++,this}get isClosed(){return this.closed}constructor(e,t,n,r,i){this.context=e,this.path=t,this.internalPath=n,this.flag=r,this.vnode=i}get _isSync(){return!!(this.flag&1052672||this.inode.flags&L.Sync||this.fs.attributes.has(`sync`))}[(t=[ne],n=[ne],Symbol.dispose)](){this.closeSync()}syncSync(){let e={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`sync`,this.path);if(!this.dirty)return;hi(e,this.vnode.lockSync(`rw`),!1),this.vnode.syncSync()}catch(t){e.error=t,e.hasError=!0}finally{gi(e)}}datasyncSync(){return this.syncSync()}closeSync(){if(this.closed)throw S(`EBADF`,`close`,this.path);this.syncSync(),!(--this.refs>0)&&this.disposeSync(!0)}disposeSync(e){if(this.closed)throw S(`EBADF`,`close`,this.path);if(this.dirty&&!e)throw S(`EBUSY`,`close`,this.path);this.closed=!0,fi(this.fs).unref(this.vnode)}truncateSync(e){let t={stack:[],error:void 0,hasError:!1};try{if(e<0)throw S(`EINVAL`,`truncate`,this.path);if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`truncate`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`truncate`,this.path);if(this.inode.flags&L.Immutable)throw S(`EPERM`,`truncate`,this.path);hi(t,this.vnode.lockSync(`rw`),!1),this.vnode.truncate(e),this._isSync&&this.vnode.syncSync()}catch(e){t.error=e,t.hasError=!0}finally{gi(t)}}writeSync(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`write`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`write`,this.path);if(this.inode.flags&L.Immutable)throw S(`EPERM`,`write`,this.path);hi(i,this.vnode.lockSync(`rw`),!1);let a=e.subarray(t,t+n);return this.vnode.writeSync(a,r),this._position=r+a.byteLength,this._isSync&&this.vnode.syncSync(),a.byteLength}catch(e){i.error=e,i.hasError=!0}finally{gi(i)}}readSync(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||this.flag&1)throw S(`EBADF`,`read`,this.path);hi(i,this.vnode.lockSync(`ro`),!1),!(this.inode.flags&L.NoAtime)&&!this.fs.attributes.has(`no_atime`)&&(this.vnode.metadataDirty=!0,this.inode.atimeMs=Date.now());let a=r+n;!sr(this.inode)&&!or(this.inode)&&a>this.inode.size&&(a=r+Math.max(this.inode.size-r,0)),this._position=a;let o=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return this.vnode.readSync(o.subarray(t,t+n),r,a),this._isSync&&this.vnode.syncSync(),a-r}catch(e){i.error=e,i.hasError=!0}finally{gi(i)}}chmodSync(e){let t={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);dr(this.context,this.inode,{syscall:`chmod`,path:this.path}),hi(t,this.vnode.lockSync(`rw`),!1),this.vnode.metadataDirty=!0,mr(this.context,this.inode,e),(this._isSync||e>61440)&&this.vnode.syncSync()}catch(e){t.error=e,t.hasError=!0}finally{gi(t)}}chownSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chown`,this.path);fr(this.context,this.inode,e,t,{syscall:`chown`,path:this.path}),hi(n,this.vnode.lockSync(`rw`),!1),this.vnode.metadataDirty=!0,pr(this.inode,e,t),this._isSync&&this.vnode.syncSync()}catch(e){n.error=e,n.hasError=!0}finally{gi(n)}}utimesSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`utimes`,this.path);dr(this.context,this.inode,{syscall:`utimes`,path:this.path}),hi(n,this.vnode.lockSync(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.atimeMs=e,this.inode.mtimeMs=t,this._isSync&&this.vnode.syncSync()}catch(e){n.error=e,n.hasError=!0}finally{gi(n)}}async[Symbol.asyncDispose](){await this.close()}async sync(){let e={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`sync`,this.path);if(!this.dirty)return;hi(e,await this.vnode.lock(`rw`),!1),await this.vnode.sync()}catch(t){e.error=t,e.hasError=!0}finally{gi(e)}}datasync(){return this.sync()}async close(){if(this.closed)throw S(`EBADF`,`close`,this.path);await this.sync(),!(--this.refs>0)&&this.dispose(!0)}dispose(e){if(this.closed)throw S(`EBADF`,`close`,this.path);if(this.dirty&&!e)throw S(`EBUSY`,`close`,this.path);this.closed=!0,fi(this.fs).unref(this.vnode)}stat(){if(this.closed)throw S(`EBADF`,`stat`,this.path);return this.inode}async truncate(e){let t={stack:[],error:void 0,hasError:!1};try{if(e<0)throw S(`EINVAL`,`truncate`,this.path);if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`truncate`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`truncate`,this.path);if(this.inode.flags&L.Immutable)throw S(`EPERM`,`truncate`,this.path);hi(t,await this.vnode.lock(`rw`),!1),this.vnode.truncate(e),this._isSync&&await this.vnode.sync()}catch(e){t.error=e,t.hasError=!0}finally{gi(t)}}async write(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`write`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`write`,this.path);if(this.inode.flags&L.Immutable)throw S(`EPERM`,`write`,this.path);hi(i,await this.vnode.lock(`rw`),!1);let a=e.subarray(t,t+n);return await this.vnode.write(a,r),this._position=r+a.byteLength,this._isSync&&await this.vnode.sync(),a.byteLength}catch(e){i.error=e,i.hasError=!0}finally{gi(i)}}async read(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||this.flag&1)throw S(`EBADF`,`read`,this.path);hi(i,await this.vnode.lock(`ro`),!1),!(this.inode.flags&L.NoAtime)&&!this.fs.attributes.has(`no_atime`)&&(this.vnode.metadataDirty=!0,this.inode.atimeMs=Date.now());let a=r+n;!sr(this.inode)&&!or(this.inode)&&a>this.inode.size&&(a=r+Math.max(this.inode.size-r,0)),this._position=a;let o=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return await this.vnode.read(o.subarray(t,t+n),r,a),this._isSync&&await this.vnode.sync(),a-r}catch(e){i.error=e,i.hasError=!0}finally{gi(i)}}async chmod(e){let t={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);dr(this.context,this.inode,{syscall:`chmod`,path:this.path}),hi(t,await this.vnode.lock(`rw`),!1),this.vnode.metadataDirty=!0,mr(this.context,this.inode,e),(this._isSync||e>61440)&&await this.vnode.sync()}catch(e){t.error=e,t.hasError=!0}finally{gi(t)}}async chown(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chown`,this.path);fr(this.context,this.inode,e,t,{syscall:`chown`,path:this.path}),hi(n,await this.vnode.lock(`rw`),!1),this.vnode.metadataDirty=!0,pr(this.inode,e,t),this._isSync&&await this.vnode.sync()}catch(e){n.error=e,n.hasError=!0}finally{gi(n)}}async utimes(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`utimes`,this.path);dr(this.context,this.inode,{syscall:`utimes`,path:this.path}),hi(n,await this.vnode.lock(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.atimeMs=e,this.inode.mtimeMs=t,this._isSync&&await this.vnode.sync()}catch(e){n.error=e,n.hasError=!0}finally{gi(n)}}streamRead(e){if(this.closed)throw S(`EBADF`,`streamRead`,this.path);let{vnode:t}=this,{chunkSize:n=65536}=e,r=e.start??0,i=e.end;return new ReadableStream({async pull(e){let a={stack:[],error:void 0,hasError:!1};try{if(hi(a,await t.lock(`ro`),!1),i??=t.inode.size,r>=i){e.close();return}let o=new Uint8Array(Math.min(n,i-r));await t.read(o,r,r+o.byteLength),r+=o.byteLength,e.enqueue(o),r>=i&&e.close()}catch(e){a.error=e,a.hasError=!0}finally{gi(a)}},type:`bytes`})}streamWrite(e){if(this.closed)throw S(`EBADF`,`write`,this.path);if(this.inode.flags&L.Immutable)throw S(`EPERM`,`write`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`write`,this.path);let{vnode:t}=this,n=e.start??0;return new WritableStream({async write(e,r){let i={stack:[],error:void 0,hasError:!1};try{hi(i,await t.lock(`rw`),!1),await t.write(e,n).catch(r.error.bind(r)),n+=e.byteLength}catch(e){i.error=e,i.hasError=!0}finally{gi(i)}},async close(){let e={stack:[],error:void 0,hasError:!1};try{hi(e,await t.lock(`rw`),!1),await t.sync()}catch(t){e.error=t,e.hasError=!0}finally{gi(e)}}})}}})();function vi(e,t=e.context){let n=D(t).descriptors,r=0;for(;n.has(r);)r++;return n.set(r,e),r}function yi(e,t){yn(t);let n=D(e).descriptors.get(t);if(!n)throw C(`EBADF`);return n}function bi(e,t){return D(e).descriptors.delete(t)}function xi(e,t){return vi(yi(e,t).ref(),e)}const Si=/[rwasx]{1,2}\+?/;function Ci(e){if(typeof e==`number`)return e;if(!Si.test(e))throw C(`EINVAL`,`Invalid flag string: `+e);return wi(e)}function wi(e){if(!e.includes(`r`)&&!e.includes(`w`)&&!e.includes(`a`))throw C(`EINVAL`,`Invalid flag string: `+e);let t=e.includes(`r`)?0:64;return e.includes(`w`)&&(t|=512),e.includes(`a`)&&(t|=tt),e.includes(`+`)?t|=2:e.includes(`r`)||(t|=1),e.includes(`s`)&&(t|=at),e.includes(`x`)&&(t|=128),t}function Ti(e){let t=0;return e&1||(t|=4),(e&1||e&2)&&(t|=2),t}const Ei=Ze.mounts;Di(`/`,Lr.create({label:`root`}));function Di(e,t){let n=D(this);if(e[0]!=`/`&&(e=`/`+e),e=jn.call(n,e),n.mounts.has(e))throw T(C(`EINVAL`,`Mount point is already in use: `+e));t._mountPoint=e,n.mounts.set(e,t),di.getOrInsertComputed(t.uuid,()=>new ui(t)),Te(`Mounted ${t.name} on ${e}`),Ee(`${t.name} attributes: ${[...t.attributes].map(([e,t])=>t==null?e:e+`=`+t).join(`, `)}`)}function Oi(e){let t=D(this);e[0]!=`/`&&(e=`/`+e),e=jn.call(this,e);let n=t.mounts.get(e);if(!n){E(e+` is already unmounted`);return}let r=()=>{di.delete(n.uuid),Te(`Synced all changes to `+e)};try{di.get(n.uuid)?.syncSync(),r()}catch{E(`Could not flush to ${e} synchronously.`),di.get(n.uuid)?.sync().then(r)}t.mounts.delete(e),we(`Unmounted `+e)}function ki(e,t,n){let{root:r,mounts:i}=D(t),a={path:e,...n};e=j(M(r,e),!0),e=jn.call(t,e);let o=[...i].sort((e,t)=>e[0].length>t[0].length?-1:1);for(let[t,n]of o){if(!Mi(t,e))continue;e=e.slice(t.length>1?t.length:0),e===``&&(e=`/`);let i=n.attributes.get(`case_fold`);return i===`lower`&&(e=e.toLowerCase()),i===`upper`&&(e=e.toUpperCase()),{fs:ei(n,a),cache:fi(n),path:e,mountPoint:t,root:r}}throw Se(new x(y.EIO,`No file system for `+e))}function Ai(e,t){let n=e.usage(),r=n.blockSize||4096,i=t?BigInt:Number;return{type:i(e.type),bsize:i(r),frsize:i(r),ffree:i(n.freeNodes||4294967295),files:i(n.totalNodes||4294967295),bavail:i(n.freeSpace/r),bfree:i(n.freeSpace/r),blocks:i(n.totalSpace/r)}}function ji(e){let t=D(this);if(!qe(t.credentials))throw C(`EPERM`,`Can not chroot() as non-root user`);t.root??=`/`;let n=M(t.root,e);for(let e of t.descriptors?.values()??[]){if(!e.path.startsWith(t.root))throw S(`EBUSY`,`chroot`,e.path);e.path=e.path.slice(t.root.length)}if(n.length<t.root.length)throw C(`EPERM`,`Can not chroot() outside of current root`);t.root=n}function Mi(e,t){return e===`/`||e===t||(e.endsWith(`/`)||(e+=`/`),t.startsWith(e))}var Ni=/* @__PURE__ */ t({link:()=>Vi,mkdir:()=>Ri,open:()=>Ii,readdir:()=>zi,readlink:()=>Li,rename:()=>Bi,resolve:()=>W,stat:()=>Hi}),Pi=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},Fi=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r});function W(e,t,n,r){if(t=jn.call(e,t),!qn)try{let i=ki(t,e),a=i.cache.statSync(i.path);return!ir(a)||n?{...i,fullPath:t,stats:a}:W(e,jn.call(e,N(t),Li.call(e,t)),n,r)}catch{}let{base:i,dir:a}=Rn(t),o={syscall:`stat`,path:t,...r},s=`/`;if(a!=`/`){let t=W(e,a,!1,r);t.stats&&z(t.stats)&&lr(e,t.stats,o),s=t.fullPath}else if(i&&P){let t=ki(`/`,e);lr(e,t.cache.statSync(t.path),o)}let c=M(s,i),l=ki(c,e),u;try{u=l.cache.statSync(l.path)}catch(e){if(e.code===`ENOENT`)return{...l,fullPath:c};throw b(Object.assign(e,{syscall:`stat`,path:c,...r}))}return!ir(u)||n?{...l,fullPath:c,stats:u}:W(e,jn.call(e,s,Li.call(e,c)),!1,r)}function Ii(e,t,n){t=j.call(e,t);let r=_n(n.mode,420),i=Ci(n.flag);t=W(e,t,n.preserveSymlinks).fullPath;let{fs:a,cache:o,path:s}=ki(t,e),c;try{c=o.statSync(s)}catch{}if(!c){let c={stack:[],error:void 0,hasError:!1};try{if(!(i&64))throw S(`ENOENT`,`open`,t);let l=N(s),u=o.statSync(l,{syscall:`open`,path:t});if(P&&!B(e,u,3))throw S(`EACCES`,`open`,t);if(!z(u))throw S(`ENOTDIR`,`open`,t);if(!n.allowDirectory&&z({mode:r}))throw S(`EISDIR`,`open`,t);Pi(c,o.lockSync(l,`rw`,u),!1);let{euid:d,egid:f}=D(e).credentials,p=a.createFileSync(s,{mode:r,uid:u.mode&2048?u.uid:d,gid:u.mode&1024?u.gid:f});return qa(e,`rename`,t),new _i(e,t,s,i,o.ref(s,p))}catch(e){c.error=e,c.hasError=!0}finally{Fi(c)}}if(P&&!B(e,c,Ti(i)))throw S(`EACCES`,`open`,t);if(i&128)throw S(`EEXIST`,`open`,t);if(!n.allowDirectory&&z(c))throw S(`EISDIR`,`open`,t);let l=new _i(e,t,s,i,o.ref(s,c));return i&512&&l.truncateSync(0),l}function Li(e){e=j.call(this,e);let{fs:t,stats:n,path:r}=W(this,e,!0,{syscall:`readlink`});if(!n)throw S(`ENOENT`,`readlink`,e);if(P&&!B(this,n,4))throw S(`EACCES`,`readlink`,e);if(!ir(n))throw S(`EINVAL`,`readlink`,e);let i=n.size,a=new Uint8Array(i);return t.readSync(r,a,0,i),ce(a)}function Ri(e,t={}){let n=j.call(this,e),r={syscall:`mkdir`,path:n},{fullPath:i}=W(this,N(n),!1,r),{fs:a,cache:o,path:s}=ki(M(i,Fn(n)),this,r),c=i!=N(n),{euid:l,egid:u}=D(this).credentials,{mode:d=511,recursive:f}=t,p,m=(e,t)=>{let n={stack:[],error:void 0,hasError:!1};try{let i=N(t),h=f&&i!=`/`?m(N(e),i):o.statSync(i,r);if(f){let n;try{n=o.statSync(t)}catch{}if(n){let i=ir(n)?W(this,e,!1,r).stats:n;if(!i)throw S(`ENOENT`,r);if(!z(i))throw S(t==s?`EEXIST`:`ENOTDIR`,r);return n}if(c&&a.existsSync(M(i,Fn(e))))throw S(`ENOENT`,r)}if(P&&!B(this,h,3))throw S(`EACCES`,`mkdir`,e);Pi(n,o.lockSync(i,`rw`,h),!1);let g=Qr(a,`mkdirSync`,{path:e,syscall:`mkdir`})(t,{mode:d,uid:h.mode&2048?h.uid:l,gid:h.mode&1024?h.gid:u});return f&&(p??=e),qa(this,`rename`,e),g}catch(e){n.error=e,n.hasError=!0}finally{Fi(n)}};return m(n,s),p}function zi(e,t={}){e=j.call(this,e);let{fs:n,cache:r,path:i}=W(this,e),a=r.statSync(i,{path:e,syscall:`scandir`});if(P&&!B(this,a,4))throw S(`EACCES`,`scandir`,e);if(!z(a))throw S(`ENOTDIR`,`scandir`,e);let o;{let e={stack:[],error:void 0,hasError:!1};try{Pi(e,r.lockSync(i,`ro`,a),!1),o=n.readdirSync(i)}catch(t){e.error=t,e.hasError=!0}finally{Fi(e)}}let s=[],c=a=>{let o;try{o=r.statSync(M(i,a),{syscall:`scandir`,path:e})}catch(e){if(e.code==`ENOENT`)return;throw e}let l=new Yr;if(l.ino=o.ino,l.type=qr(o.mode),l.path=a,l.name=Fn(a),s.push(l),!z(o)||!t?.recursive)return;let u=n.readdirSync(M(i,a));for(let e of u)c(M(a,e))};for(let e of o)c(e);return s}function Bi(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`rename`,path:e,dest:t},i=W(this,e,!0,r),a=W(this,t,!0,r);if(i.fs.uuid!==a.fs.uuid)throw S(`EXDEV`,r);if(a.path.startsWith(i.path+`/`))throw S(`EINVAL`,r);if(!i.stats)throw S(`ENOENT`,r);let o=N(i.path),s=N(a.path),c=i.cache.statSync(o,r),l=i.cache.statSync(s,r),u;try{u=i.cache.statSync(a.path,r)}catch(e){if(e.code!=`ENOENT`)throw e}if(ur(this,c,i.stats,r),u&&ur(this,l,u,r),P&&!B(this,l,3)||P&&z(i.stats)&&o!=s&&!B(this,i.stats,2))throw S(`EACCES`,r);if(u&&!z(i.stats)&&z(u))throw S(`EISDIR`,r);if(u&&z(i.stats)&&!z(u))throw S(`ENOTDIR`,r);let d=[[o,c],[s,l]];c.ino>l.ino&&d.reverse(),Pi(n,i.cache.lockSync(d[0][0],`rw`,d[0][1]),!1),Pi(n,c.ino==l.ino?null:i.cache.lockSync(d[1][0],`rw`,d[1][1]),!1),i.fs.renameSync(i.path,a.path),i.cache.rename(i.path,a.path),qa(this,`rename`,e),qa(this,`rename`,t)}catch(e){n.error=e,n.hasError=!0}finally{Fi(n)}}function Vi(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`link`,path:e,dest:t},{fs:i,cache:a,path:o}=W(this,e,!0,r),s=W(this,t,!0,r);if(i.uuid!==s.fs.uuid)throw S(`EXDEV`,r);let c=a.statSync(o,r);if(P){if(!B(this,c,4))throw S(`EACCES`,r);let e=a.statSync(N(o),r);if(!B(this,e,4))throw S(`EACCES`,r);let t=a.statSync(N(s.path),r);if(!B(this,t,2))throw S(`EACCES`,r)}Pi(n,a.lockSync(N(s.path),`rw`),!1),i.linkSync(o,s.path),a.link(o,s.path)}catch(e){n.error=e,n.hasError=!0}finally{Fi(n)}}function Hi(e,t){e=j.call(this,e);let n={syscall:t?`lstat`:`stat`,path:e},r;if(!t)r=W(this,e,!1,n).stats;else{let{base:t,dir:i}=Rn(e),a=W(this,i,!1,n);a.stats&&z(a.stats)&&lr(this,a.stats,n);let{root:o,mounts:s}=D(this),c=t&&s.get(M(o,a.fullPath,t)),l=c||a.fs,u=c?`/`:M(a.path,t);try{r=fi(l).statSync(u)}catch(e){throw b(Object.assign(e,n)),e}}if(!r)throw S(`ENOENT`,n);return r}var Ui=class e{ino;type;_name;get name(){let e=U.Buffer.from(this._name);return this._encoding==`buffer`?e:e.toString(this._encoding)}_encoding;_parentPath;get parentPath(){return this._parentPath}get path(){return E(`Dirent.path was removed in Node v24, use parentPath instead`),this._parentPath}static from(t,n,r=`.`){let i=new e,{base:a,dir:o}=Rn(t.path);return i._parentPath=M(r,o),i._name=a,i.ino=t.ino,i.type=t.type,i._encoding=n,i}isFile(){return this.type===Kr.REG}isDirectory(){return this.type===Kr.DIR}isBlockDevice(){return this.type===Kr.BLK}isCharacterDevice(){return this.type===Kr.CHR}isSymbolicLink(){return this.type===Kr.LNK}isFIFO(){return this.type===Kr.FIFO}isSocket(){return this.type===Kr.SOCK}};function Wi(){return Object.assign(/* @__PURE__ */ Error(`Directory handle was closed`),{code:`ERR_DIR_CLOSED`})}var Gi=class{path;context;closed=!1;checkClosed(){if(this.closed)throw Wi()}_entries;constructor(e,t){this.path=e,this.context=t}close(e){if(this.closed){let t=Wi();if(!e)return Promise.reject(t);e(t);return}if(this.closed=!0,!e)return Promise.resolve();e(null)}closeSync(){if(this.closed)throw Wi();this.closed=!0}async _read(){return this.checkClosed(),this._entries??=await ku.call(this.context,this.path,{withFileTypes:!0}),this._entries.length?this._entries.shift()??null:null}read(e){if(!e)return this._read();this._read().then(t=>e(null,t))}readSync(){return this.checkClosed(),this._entries??=va.call(this.context,this.path,{withFileTypes:!0}),this._entries.length?this._entries.shift()??null:null}async next(){let e=await this._read();return e?{done:!1,value:e}:(await this.close(),{done:!0,value:void 0})}[Symbol.asyncIterator](){return this}[Symbol.dispose](){this.closed||this.closeSync()}async[Symbol.asyncDispose](){this.closed||await this.close()}},Ki=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},qi=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r});function Ji(e,t){return Bi.call(this,e,t)}function Yi(e){e=j.call(this,e);try{let{fs:t,path:n}=W(this,e);return t.existsSync(n)}catch(e){if(e.errno==y.ENOENT||e.errno==y.ENOTDIR||e.errno==y.EACCES)return!1;throw e}}function Xi(e,t){let n;try{n=Hi.call(this,e,!1)}catch(e){if(t?.throwIfNoEntry===!1&&bn(e))return;throw e}return t?.bigint?new Un(n):new Hn(n)}function Zi(e,t){let n;try{n=Hi.call(this,e,!0)}catch(e){if(t?.throwIfNoEntry===!1&&bn(e))return;throw e}return t?.bigint?new Un(n):new Hn(n)}function Qi(e,t=0){let n={stack:[],error:void 0,hasError:!1};try{let r=Ki(n,Ii(this,e,{flag:`r+`}),!1);if(t||=0,t<0)throw S(`EINVAL`,`truncate`,e.toString());r.truncateSync(t)}catch(e){n.error=e,n.hasError=!0}finally{qi(n)}}function $i(e){e=j.call(this,e);let{fs:t,cache:n,path:r}=W(this,e,!0,{syscall:`unlink`,path:e});try{let e={stack:[],error:void 0,hasError:!1};try{ur(this,n.statSync(N(r)),n.statSync(r)),Ki(e,n.lockSync(N(r),`rw`),!1),t.unlinkSync(r),n.remove(r)}catch(t){e.error=t,e.hasError=!0}finally{qi(e)}}catch(t){throw b(Object.assign(t,{syscall:`unlink`,path:e}))}qa(this,`rename`,e.toString())}function ea(e,t,n=0){return vi(Ii(this,e,{flag:t,mode:n}))}function ta(e,t,n){return vi(Ii(this,e,{flag:t,mode:n,preserveSymlinks:!0}))}function na(e,t){let n=typeof e==`function`,r=n?e(t):e,i=n?`options.buffer()`:`options.buffer`;if(!ArrayBuffer.isView(r))throw Object.assign(/* @__PURE__ */ TypeError(`The "options.buffer" property must be of type function or an instance of Buffer, TypedArray, or DataView. Received ${typeof r}`),{code:`ERR_INVALID_ARG_TYPE`});if(r.byteLength<t)throw Object.assign(/* @__PURE__ */ TypeError(`The property '${i}.byteLength' is smaller than the file size of ${t} bytes. Received ${r.byteLength}`),{code:`ERR_INVALID_ARG_VALUE`});return U.Buffer.from(r.buffer,r.byteOffset,t)}function ra(e,t={}){let n={stack:[],error:void 0,hasError:!1};try{let r=Sn(t,null,`r`,420);if(Ci(r.flag)&1)throw S(`EBADF`,`read`,e.toString());let i=Ki(n,typeof e==`number`?yi(this,e):Ii(this,e.toString(),{flag:r.flag,mode:420,preserveSymlinks:!1}),!1),{size:a}=i.stat(),o=typeof t==`object`&&t?t.buffer:void 0,s=o===void 0?U.Buffer.alloc(a):na(o,a);return i.readSync(s,0,a,0),r.encoding?s.toString(r.encoding):s}catch(e){n.error=e,n.hasError=!0}finally{qi(n)}}function ia(e,t,n={}){let r={stack:[],error:void 0,hasError:!1};try{let i=Sn(n,`utf8`,`w+`,420),a=Ci(i.flag);if(!(a&1||a&2))throw new x(y.EINVAL,`Flag passed to writeFile must allow for writing`);if(typeof t!=`string`&&!i.encoding)throw new x(y.EINVAL,`Encoding not specified`);let o=typeof t==`string`?U.Buffer.from(t,i.encoding):new Uint8Array(t.buffer,t.byteOffset,t.byteLength);if(!o)throw new x(y.EINVAL,`Data not specified`);Ki(r,typeof e==`number`?yi(this,e):Ii(this,e.toString(),{flag:a,mode:i.mode}),!1).writeSync(o,0,o.byteLength,0),qa(this,`change`,e.toString())}catch(e){r.error=e,r.hasError=!0}finally{qi(r)}}function aa(e,t,n={}){let r=Sn(n,`utf8`,`a+`,420),i=Ci(r.flag);if(!(i&1024))throw new x(y.EINVAL,`Flag passed to appendFile must allow for appending`);if(typeof t!=`string`&&!r.encoding)throw new x(y.EINVAL,`Encoding not specified`);let a=typeof t==`string`?U.Buffer.from(t,r.encoding):new Uint8Array(t.buffer,t.byteOffset,t.byteLength),o=typeof e==`number`?yi(this,e):Ii(this,j.call(this,e),{flag:i,mode:r.mode});o.writeSync(a,0,a.byteLength),typeof o!=`number`&&o.closeSync()}function oa(e,t){let n=yi(this,e).stat();return t?.bigint?new Un(n):new Hn(n)}function sa(e){yi(this,e).closeSync(),bi(this,e)}function ca(e,t=0){if(t||=0,t<0)throw new x(y.EINVAL);yi(this,e).truncateSync(t)}function la(e){yi(this,e).syncSync()}function ua(e){yi(this,e).datasyncSync()}function da(e,t,n,r,i){let a,o,s,c;if(typeof t==`string`){c=typeof n==`number`?n:null;let e=typeof r==`string`?r:`utf8`;o=0,a=U.Buffer.from(t,e),s=a.byteLength}else a=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),o=n,s=r,c=typeof i==`number`?i:null;let l=yi(this,e);c??=l.position;let u=l.writeSync(a,o,s,c);return qa(this,`change`,l.path),u}function fa(e,t,n,r,i){let a=yi(this,e),o=typeof n==`object`?n.offset:n;if(typeof n==`object`&&(r=n.length,i=n.position),i&&i>2**53-1)throw S(`EINVAL`);return typeof i==`bigint`&&(i=Number(i)),i=Number.isSafeInteger(i)?i:a.position,a.readSync(t,o,r,i)}function pa(e,t,n){yi(this,e).chownSync(t,n)}function ma(e,t){let n=_n(t,-1);if(n<0)throw new x(y.EINVAL,`Invalid mode.`);yi(this,e).chmodSync(n)}function ha(e,t,n){yi(this,e).utimesSync(xn(t),xn(n))}function ga(e){let t={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e);let{fs:n,cache:r,path:i}=W(this,e,!0),a=r.statSync(i,{path:e,syscall:`rmdir`});if(!z(a))throw S(`ENOTDIR`,`rmdir`,e);ur(this,r.statSync(N(i),{path:e,syscall:`rmdir`}),a,{syscall:`rmdir`,path:e}),Ki(t,r.lockSync(N(i),`rw`),!1),Qr(n,`rmdirSync`,e)(i),r.remove(i),qa(this,`rename`,e.toString())}catch(e){t.error=e,t.hasError=!0}finally{qi(t)}}function _a(e,t){t=typeof t==`object`?t:{mode:t};let n=_n(t?.mode,511);return Ri.call(this,e,{...t,mode:n})}function va(e,t){t=typeof t==`object`?t:{encoding:t},e=j.call(this,e);let n=[],r=zi.call(this,e,t??void 0);for(let i of r)t?.withFileTypes?n.push(Ui.from(i,t.encoding,e)):t?.encoding==`buffer`?n.push(U.Buffer.from(i.path)):n.push(i.path);return n}function ya(e,t){return Vi.call(this,e,t)}function ba(e,t,n=`file`){let r={stack:[],error:void 0,hasError:!1};try{if(![`file`,`dir`,`junction`].includes(n))throw TypeError(`Invalid symlink type: `+n);t=j.call(this,t);let i=Ki(r,Ii(this,t,{flag:`wx`,mode:420}),!1);i.writeSync(v(j.call(this,e,!0))),i.chmodSync(41471)}catch(e){r.error=e,r.hasError=!0}finally{qi(r)}}function xa(e,t){let n=U.Buffer.from(Li.call(this,e)),r=typeof t==`object`?t?.encoding:t;return r==`buffer`?n:n.toString(r??`utf-8`)}function Sa(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{Ki(r,Ii(this,e,{flag:`r+`,mode:0}),!1).chownSync(t,n)}catch(e){r.error=e,r.hasError=!0}finally{qi(r)}}function Ca(e,t,n){let r=ta.call(this,e,`r+`);pa.call(this,r,t,n),sa.call(this,r)}function wa(e,t){let n;try{n=ea.call(this,e,`r+`)}catch(t){throw b(Object.assign(t,{syscall:`chmod`,path:j.call(this,e)}))}ma.call(this,n,t),sa.call(this,n)}function Ta(e,t){let n=ta.call(this,e,`r+`);ma.call(this,n,t),sa.call(this,n)}function Ea(e,t,n){let r=ea.call(this,e,`r+`);ha.call(this,r,t,n),sa.call(this,r)}function Da(e,t,n){let r=ta.call(this,e,`r+`);ha.call(this,r,t,n),sa.call(this,r)}function Oa(e,t){let n=typeof t==`string`?t:t?.encoding??`utf8`;e=j.call(this,e,!0);let{fullPath:r}=W(this,e);if(n==`utf8`||n==`utf-8`)return r;let i=U.Buffer.from(r,`utf-8`);return n==`buffer`?i:i.toString(n)}function ka(e,t=384){if(P&&!B(this,Xi.call(this,e),t))throw new x(y.EACCES)}function Aa(e,t){e=j.call(this,e);let n;try{n=Zi.call(this,e)}catch(e){if(e.code!=`ENOENT`||!t?.force)throw e}if(n)switch(n.mode&O){case mt:if(t?.recursive)for(let n of va.call(this,e))Aa.call(this,M(e,n),t);ga.call(this,e);break;case ft:case dt:case pt:case ht:$i.call(this,e);break;case gt:case ut:default:throw S(`ENOSYS`,`rm`,e)}}function ja(e,t){let n=typeof t==`object`?t?.encoding:t||`utf8`,r=Tn(e);return _a.call(this,r),n==`buffer`?U.Buffer.from(r):r}function Ma(e,t){let n=Tn(e);_a.call(this,n);let r=()=>Aa(n,{recursive:!0,force:!0});return{path:n,remove:r,[Symbol.dispose]:r}}function Na(e,t,n){if(e=j.call(this,e),t=j.call(this,t),n&&n&1&&Yi.call(this,t))throw S(`EEXIST`,`copyFile`,t);ia.call(this,t,ra.call(this,e,{})),qa(this,`rename`,t.toString())}function Pa(e,t,n){let r=yi(this,e),i=0;for(let e of t)i+=r.readSync(e,0,e.byteLength,n+i);return i}function Fa(e,t,n){let r=yi(this,e),i=0;for(let e of t)i+=r.writeSync(new Uint8Array(e.buffer),0,e.byteLength,n+i);return i}function Ia(e,t){return e=j.call(this,e),new Gi(e,this)}function La(e,t,n){e=j.call(this,e),t=j.call(this,t);let r=Zi.call(this,e);if(n?.errorOnExist&&Yi.call(this,t))throw S(`EEXIST`,`cp`,t);switch(r.mode&O){case mt:if(!n?.recursive)throw S(`EISDIR`,`cp`,e);_a.call(this,t,{recursive:!0});for(let r of va.call(this,e,{withFileTypes:!0}))(!n.filter||n.filter(M(e,r.name),M(t,r.name)))&&La.call(this,M(e,r.name),M(t,r.name),n);break;case dt:if(n?.dereference)Na.call(this,e,t);else{let r=xa.call(this,e,`utf8`);ba.call(this,n?.verbatimSymlinks?r:jn.call(this,N(e),r),t)}break;case ft:Na.call(this,e,t);break;case pt:case ht:case gt:case ut:default:throw S(`ENOSYS`,`cp`,e)}n?.preserveTimestamps&&Ea.call(this,t,r.atime,r.mtime)}function Ra(e,t){e=j.call(this,e);let{fs:n}=W(this,e);return Ai(n,t?.bigint)}function za(e,t={}){e=Array.isArray(e)?e:[e];let n=D(this),{cwd:r=n.pwd,withFileTypes:i=!1,exclude:a=()=>!1,followSymlinks:o=!1}=t,s=jn.call(n,r instanceof URL?r.pathname:r),c=e.map(e=>e.startsWith(`/`)?Pn.call(n,s,e):e),l=c.some(e=>e.includes(`**`)),u=c.map(e=>{let t=e.search(/[*?[\]{]/);if(t===-1)return e;let n=e.lastIndexOf(`/`,t);return n===-1?``:e.slice(0,n)}),d=c.map(Cn);function f(e,t){let r=u.some(e=>t===e||e.startsWith(t+`/`)),i=l||r,a=Zi.call(n,e);return a.isSymbolicLink()?i&&(o||r)&&!!Xi.call(n,e,{throwIfNoEntry:!1})?.isDirectory():i&&a.isDirectory()}let p=[];function m(e){let t=va.call(n,e,{withFileTypes:i,encoding:`utf8`});for(let r of t){let t=M(e,i?r.name:r),o=Pn.call(n,s,t);(typeof a==`function`?a(i?r:o):a.some(e=>zn(e,o)))||(f(t,o)&&m(t),d.some(e=>e.test(o))&&p.push(i?r:o))}}return m(s),p}const Ba=Xi;var Va=class extends u.default{_context;path;off(e,t,n,r){return super.off(e,t,n,r)}removeListener(e,t,n,r){return super.removeListener(e,t,n,r)}constructor(e,t){super(),this._context=e,this.path=t}setMaxListeners(){throw S(`ENOSYS`,`Watcher.setMaxListeners`)}getMaxListeners(){throw S(`ENOSYS`,`Watcher.getMaxListeners`)}prependListener(){throw S(`ENOSYS`,`Watcher.prependListener`)}prependOnceListener(){throw S(`ENOSYS`,`Watcher.prependOnceListener`)}rawListeners(){throw S(`ENOSYS`,`Watcher.rawListeners`)}ref(){return this}unref(){return this}},Ha=class extends Va{options;realpath;constructor(e,t,n){let r=D(e);super(r,t),this.options=n,this.realpath=M(r.root,t),Ga(this.realpath,this)}close(){super.emit(`close`),Ka(this.realpath,this)}[Symbol.dispose](){this.close()}},Ua=class extends Va{options;intervalId;previous;constructor(e,t,n){super(e,t),this.options=n,this.start()}onInterval(){try{let e=Ba.call(this._context,this.path);Wn(this.previous,e)||(this.emit(`change`,e,this.previous),this.previous=e)}catch(e){this.emit(`error`,e)}}start(){let e=this.options.interval||5e3;try{this.previous=Ba.call(this._context,this.path)}catch(e){this.emit(`error`,e);return}this.intervalId=setInterval(this.onInterval.bind(this),e),!this.options.persistent&&typeof this.intervalId==`object`&&this.intervalId.unref()}stop(){this.intervalId&&=(clearInterval(this.intervalId),void 0),this.removeAllListeners()}};const Wa=/* @__PURE__ */ new Map;function Ga(e,t){let n=j(e);Wa.getOrInsertComputed(n,()=>/* @__PURE__ */ new Set).add(t)}function Ka(e,t){let n=j(e);Wa.has(n)&&(Wa.get(n).delete(t),Wa.get(n).size===0&&Wa.delete(n))}function qa(e,t,n){let r=D(e);r&&(n=M(r.root??`/`,n)),n=j.call(e,n);for(let e=n;;e=N(e)){let r=Wa.get(e);if(r)for(let i of r)i.emit(`change`,t,Pn.call(i._context,e,n)||Fn(n));if(e===`/`)break}}var Ja=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},Ya=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r});async function G(e,t,n,r){if(t=jn.call(e,t),!qn)try{let i=ki(t,e),a=await i.cache.stat(i.path);return!ir(a)||n?{...i,fullPath:t,stats:a}:await G(e,jn.call(e,N(t),await Za.call(e,t)),n,r)}catch{}let{base:i,dir:a}=Rn(t),o={syscall:`stat`,path:t,...r},s=`/`;if(a!=`/`){let t=await G(e,a,!1,r);t.stats&&z(t.stats)&&lr(e,t.stats,o),s=t.fullPath}else if(i&&P){let t=ki(`/`,e);lr(e,await t.cache.stat(t.path),o)}let c=M(s,i),l=ki(c,e),u=await l.cache.stat(l.path).catch(e=>{if(e.code!=`ENOENT`)throw b(Object.assign(e,{syscall:`stat`,path:c,...r}))});return u?!ir(u)||n?{...l,fullPath:c,stats:u}:await G(e,jn.call(e,s,await Za.call(e,c)),!1,r):{...l,fullPath:c}}async function Xa(e,t,n){t=j.call(e,t);let r=_n(n.mode,420),i=Ci(n.flag),a={syscall:`open`,path:t},{fs:o,cache:s,path:c,stats:l}=await G(e,t,n.preserveSymlinks,a);if(!l){let u={stack:[],error:void 0,hasError:!1};try{if(!(i&64))throw S(`ENOENT`,a);let d=N(c),f=await s.stat(d,a);if(P&&!B(e,f,3))throw S(`EACCES`,`open`,N(t));if(!z(f))throw S(`ENOTDIR`,`open`,N(t));if(!n.allowDirectory&&z({mode:r}))throw S(`EISDIR`,`open`,t);if(Ja(u,await s.lock(d,`rw`,f),!1),l=await s.stat(c).catch(()=>void 0),!l){let{euid:n,egid:a}=D(e).credentials,l=await o.createFile(c,{mode:r,uid:f.mode&2048?f.uid:n,gid:f.mode&1024?f.gid:a});return qa(e,`rename`,t),new _i(e,t,c,i,s.ref(c,l))}}catch(e){u.error=e,u.hasError=!0}finally{Ya(u)}}if(P&&!B(e,l,Ti(i)))throw S(`EACCES`,a);if(i&128)throw S(`EEXIST`,a);if(!n.allowDirectory&&z({mode:r}))throw S(`EISDIR`,`open`,t);let u=new _i(e,t,c,i,s.ref(c,l));return i&512&&await u.truncate(0),u}async function Za(e){e=j.call(this,e);let t={syscall:`readlink`,path:e},{fs:n,stats:r,path:i}=await G(this,e,!0,t);if(!r)throw S(`ENOENT`,t);if(P&&!B(this,r,4))throw S(`EACCES`,t);if(!ir(r))throw S(`EINVAL`,t);let a=r.size,o=new Uint8Array(a);return await n.read(i,o,0,a),ce(o)}async function Qa(e,t={}){let n=j.call(this,e),{euid:r,egid:i}=D(this).credentials,{mode:a=511,recursive:o}=t,s={syscall:`mkdir`,path:n},{fullPath:c}=await G(this,N(n),!1,s),{fs:l,cache:u,path:d}=ki(M(c,Fn(n)),this,s),f=c!=N(n),p,m=async(e,t)=>{let n={stack:[],error:void 0,hasError:!1};try{let c=N(t),h=o&&c!=`/`?await m(N(e),c):await u.stat(c,s);if(Ja(n,await u.lock(c,`rw`,h),!1),o){let n=await u.stat(t).catch(()=>null);if(n){let r=ir(n)?(await G(this,e,!1,s)).stats:n;if(!r)throw S(`ENOENT`,s);if(!z(r))throw S(t==d?`EEXIST`:`ENOTDIR`,s);return n}if(f&&await l.exists(M(c,Fn(e))))throw S(`ENOTDIR`,`mkdir`,e)}if(P&&!B(this,h,3))throw S(`EACCES`,`mkdir`,e);let g=await l.mkdir(t,{mode:a,uid:h.mode&2048?h.uid:r,gid:h.mode&1024?h.gid:i}).catch(me({syscall:`mkdir`,path:e}));return o&&(p??=e),qa(this,`rename`,e),g}catch(e){n.error=e,n.hasError=!0}finally{Ya(n)}};return await m(n,d),p}async function $a(e,t={}){e=j.call(this,e);let n={syscall:`scandir`,path:e},{fs:r,cache:i,path:a,stats:o}=await G(this,e,!1,n);if(!o)throw S(`ENOENT`,n);if(P&&!B(this,o,4))throw S(`EACCES`,n);if(!z(o))throw S(`ENOTDIR`,n);let s;{let e={stack:[],error:void 0,hasError:!1};try{Ja(e,await i.lock(a,`ro`,o),!1),s=await r.readdir(a)}catch(t){e.error=t,e.hasError=!0}finally{Ya(e)}}let c=[],l=async e=>{let o=await i.stat(M(a,e),n).catch(e=>{if(e.code!=`ENOENT`)throw e});if(!o)return;let s=new Yr;if(s.ino=o.ino,s.type=qr(o.mode),s.path=e,s.name=Fn(e),c.push(s),!t.recursive||!z(o))return;let u=await r.readdir(M(a,e));for(let t of u)await l(M(e,t))};return await Promise.all(s.map(l)),c}async function eo(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`rename`,path:e,dest:t},i=await G(this,e,!0,r),a=await G(this,t,!0,r);if(i.fs.uuid!==a.fs.uuid)throw S(`EXDEV`,r);if(a.path.startsWith(i.path+`/`))throw S(`EINVAL`,r);if(!i.stats)throw S(`ENOENT`,r);let o=N(i.path),s=N(a.path),c=await i.cache.stat(o,r),l=await i.cache.stat(s,r),u=await i.cache.stat(a.path,r).catch(e=>{if(e.code==`ENOENT`)return null;throw e});if(ur(this,c,i.stats,r),u&&ur(this,l,u,r),P&&!B(this,l,3)||P&&z(i.stats)&&o!=s&&!B(this,i.stats,2))throw S(`EACCES`,r);if(u&&!z(i.stats)&&z(u))throw S(`EISDIR`,r);if(u&&z(i.stats)&&!z(u))throw S(`ENOTDIR`,r);let d=[[o,c],[s,l]];c.ino>l.ino&&d.reverse(),Ja(n,await i.cache.lock(d[0][0],`rw`,d[0][1]),!1),Ja(n,c.ino==l.ino?null:await i.cache.lock(d[1][0],`rw`,d[1][1]),!1),await i.fs.rename(i.path,a.path),i.cache.rename(i.path,a.path),qa(this,`rename`,e),qa(this,`rename`,t)}catch(e){n.error=e,n.hasError=!0}finally{Ya(n)}}async function to(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`link`,path:e,dest:t},{fs:i,cache:a,path:o}=await G(this,e,!0,r),s=await G(this,t,!0,r);if(i.uuid!=s.fs.uuid)throw S(`EXDEV`,r);let c=await a.stat(o,r);if(P){if(!B(this,c,4))throw S(`EACCES`,r);let e=await a.stat(N(o),r);if(!B(this,e,4))throw S(`EACCES`,r);let t=await a.stat(N(s.path),r);if(!B(this,t,2))throw S(`EACCES`,r)}Ja(n,await a.lock(N(s.path),`rw`),!1),await i.link(o,s.path),a.link(o,s.path)}catch(e){n.error=e,n.hasError=!0}finally{Ya(n)}}async function no(e,t){e=j.call(this,e);let n={syscall:t?`lstat`:`stat`,path:e},r;if(!t)r=(await G(this,e,!1,n)).stats;else{let{base:t,dir:i}=Rn(e),a=await G(this,i,!1,n);a.stats&&z(a.stats)&&lr(this,a.stats,n);let{root:o,mounts:s}=D(this),c=t&&s.get(M(o,a.fullPath,t)),l=c||a.fs,u=c?`/`:M(a.path,t);r=await fi(l).stat(u).catch(me(n))}if(!r)throw S(`ENOENT`,n);return r}var ro=class extends u.default{input;output;terminal;line=``;_cursor=0;get cursor(){return this._cursor}_buffer=``;_closed=!1;_paused=!1;_prompt=``;_history=[];_historyIndex=-1;_currentLine=``;constructor(e,t,n,r=!1){super(),this.input=e,this.output=t,this.terminal=r,this.input.on(`data`,this._onData),this.input.on(`end`,this.close.bind(this)),this.input.on(`close`,this.close.bind(this))}_onData=e=>{if(!(this._paused||this._closed)){this._buffer+=typeof e==`string`?e:e.toString(`utf8`);for(let e=this._buffer.indexOf(`
|
|
3
|
+
var kr=class{store;constructor(e){this.store=e}},Ar=class extends kr{async get(e,t,n){return this.getSync(e,t,n)}async set(e,t,n){return this.setSync(e,t,n)}async remove(e){return this.removeSync(e)}},jr=class extends kr{asyncDone=Promise.resolve();async(e){this.asyncDone=this.asyncDone.then(()=>e)}_cached(e,t){this.store.cache??=/* @__PURE__ */ new Map;let n=this.store.cache.get(e);return n?(t&&(n.size=t.size),n):t?new s(e,t.size,{},this.store.cache):void 0}getSync(e,t,n){let r=this._cached(e);if(!r)return;n??=r.size;let i=r.missing(t,n);for(let{start:t,end:n}of i)this.async(this.get(e,t,n));if(i.length)throw C(`EAGAIN`);let a=r.regionAt(t);if(!a){E(`Missing cache region for `+e);return}return a.data.subarray(t-a.offset,n-a.offset)}setSync(e,t,n){this.async(this.set(e,t,n))}removeSync(e){this.async(this.remove(e)),this.store.cache?.delete(e)}},Mr=class{raw;fs;done=!1;flag(e){return this.raw.store.flags?.includes(e)??!1}constructor(e,t){this.raw=e,this.fs=t}originalData=/* @__PURE__ */ new Map;modifiedKeys=/* @__PURE__ */ new Set;keys(){return this.raw.keys()}async get(e,t=0,n){let r=await this.raw.get(e,t,n);return this.stash(e),r}getSync(e,t=0,n){let r=this.raw.getSync(e,t,n);return this.stash(e),r}async set(e,t,n=0){await this.markModified(e,n,t.byteLength);let r=t instanceof Uint8Array?t:new Uint8Array(t.buffer,t.byteOffset,t.byteLength);await this.raw.set(e,r,n)}setSync(e,t,n=0){this.markModifiedSync(e,n,t.byteLength);let r=t instanceof Uint8Array?t:new Uint8Array(t.buffer,t.byteOffset,t.byteLength);this.raw.setSync(e,r,n)}async remove(e){await this.markModified(e,0,void 0),await this.raw.remove(e)}removeSync(e){this.markModifiedSync(e,0,void 0),this.raw.removeSync(e)}commit(){return this.done=!0,Promise.resolve()}commitSync(){this.done=!0}async abort(){if(!this.done){for(let[e,t]of this.originalData)if(this.modifiedKeys.has(e)){if(t.some(e=>!e.data)){await this.raw.remove(e),this.fs._remove(e);continue}for(let n of t.reverse())await this.raw.set(e,n.data,n.offset)}this.done=!0}}abortSync(){if(!this.done){for(let[e,t]of this.originalData)if(this.modifiedKeys.has(e)){if(t.some(e=>!e.data)){this.raw.removeSync(e),this.fs._remove(e);continue}for(let n of t.reverse())this.raw.setSync(e,n.data,n.offset)}this.done=!0}}async[Symbol.asyncDispose](){this.done||await this.abort()}[Symbol.dispose](){this.done||this.abortSync()}stash(e,t,n=0){this.originalData.getOrInsertComputed(e,()=>[]).push({data:t,offset:n})}async markModified(e,t,n){this.modifiedKeys.add(e);let r=n?t+n:void 0;try{this.stash(e,await this.raw.get(e,t,r),t)}catch(n){if(!(this.raw instanceof jr))throw n;let i=this.raw._cached(e);if(!i)throw n;for(let n of i.cached(t,r??t))this.stash(e,await this.raw.get(e,n.start,n.end),n.start)}}markModifiedSync(e,t,n){this.modifiedKeys.add(e);let r=n?t+n:void 0;try{this.stash(e,this.raw.getSync(e,t,r),t)}catch(n){if(!(this.raw instanceof jr))throw n;let i=this.raw._cached(e);if(!i)throw n;for(let n of i.cached(t,r??t))this.stash(e,this.raw.getSync(e,n.start,n.end),n.start)}}},V=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},H=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r}),Nr=class extends Or{store;_ids=/* @__PURE__ */ new Map([[`/`,0]]);_paths=/* @__PURE__ */ new Map([[0,/* @__PURE__ */ new Set(`/`)]]);_path(e){let[t]=this._paths.get(e)??[];return t}_add(e,t){this._paths.getOrInsertComputed(e,()=>/* @__PURE__ */ new Set).add(t),this._ids.set(t,e)}_remove(e){for(let t of this._paths.get(e)??[])this._ids.delete(t);this._paths.delete(e)}_move(e,t){let n=[];for(let[r,i]of this._ids){let a=Pn(e,r);if(a.startsWith(`..`))continue;let o=M(t,a);o.endsWith(`/`)&&(o=o.slice(0,-1)),n.push({oldKey:r,newKey:o,ino:i})}for(let{oldKey:e,newKey:t,ino:r}of n){this._ids.delete(e),this._ids.set(t,r);let n=this._paths.get(r);if(!n){E(`Missing paths in table for ino `+r);continue}n.delete(e),n.add(t)}}_initialized=!1;async ready(){this._initialized||=(this.attributes.has(`no_async_preload`)||this.checkRootSync(),await this.checkRoot(),await this._populate(),!0)}readySync(){this._initialized||=(this.attributes.has(`no_async_preload`)||this.checkRootSync(),this.checkRootSync(),this._populateSync(),!0)}constructor(e){super(e.type??1802921587,e.name),this.store=e,e.fs=this,this._uuid=e.uuid??this.uuid,this.label=e.label,Ee(this.name+`: supports features: `+this.store.flags?.join(`, `))}usage(){return this.store.usage?.()||{totalSpace:0,freeSpace:0}}async loadIndex(e){let t={stack:[],error:void 0,hasError:!1};try{let n=V(t,this.transaction(),!0),r=e.directories();for(let[t,i]of e)this._add(i.ino,t),await n.set(i.ino,i),r.has(t)&&await n.set(i.data,gn(r.get(t)));await n.commit()}catch(e){t.error=e,t.hasError=!0}finally{let e=H(t);e&&await e}}loadIndexSync(e){let t={stack:[],error:void 0,hasError:!1};try{let n=V(t,this.transaction(),!1),r=e.directories();for(let[t,i]of e)this._add(i.ino,t),n.setSync(i.ino,i),r.has(t)&&n.setSync(i.data,gn(r.get(t)));n.commitSync()}catch(e){t.error=e,t.hasError=!0}finally{H(t)}}async createIndex(){let e={stack:[],error:void 0,hasError:!1};try{let t=new gr,n=V(e,this.transaction(),!0),r=[[`/`,0]],i=te(C(`EDEADLK`));for(;r.length;){let[e,i]=r.shift(),a=new R(await n.get(i));if(t.set(e,a),z(a)){let t=hn(await n.get(a.data)??_(C(`ENODATA`)));for(let[n,i]of Object.entries(t))r.push([M(e,n),i])}}return i(),t}catch(t){e.error=t,e.hasError=!0}finally{let t=H(e);t&&await t}}createIndexSync(){let e={stack:[],error:void 0,hasError:!1};try{let t=new gr,n=V(e,this.transaction(),!1),r=[[`/`,0]],i=te(C(`EDEADLK`));for(;r.length;){let[e,i]=r.shift(),a=new R(n.getSync(i));if(t.set(e,a),z(a)){let t=hn(n.getSync(a.data)??_(C(`ENODATA`)));for(let[n,i]of Object.entries(t))r.push([M(e,n),i])}}return i(),t}catch(t){e.error=t,e.hasError=!0}finally{H(e)}}async rename(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!0),i=Rn(e),a=Rn(t),o=await this.findInode(r,i.dir),s=hn(await r.get(o.data)??_(C(`ENODATA`)));if(!s[i.base])throw C(`ENOENT`);let c=s[i.base];if(c!=this._ids.get(e)&&T(`Ino mismatch while renaming ${e} to ${t}`),delete s[i.base],(a.dir+`/`).startsWith(e+`/`))throw C(`EBUSY`);let l=a.dir==i.dir,u=l?o:await this.findInode(r,a.dir),d=l?s:hn(await r.get(u.data)??_(C(`ENODATA`)));if(d[a.base]){let e=new R(await r.get(d[a.base])??_(C(`ENOENT`)));if(!rr(e))throw C(`EISDIR`);await r.remove(e.data),await r.remove(d[a.base])}d[a.base]=c,await r.set(o.data,gn(s)),await r.set(u.data,gn(d)),await r.commit(),this._move(e,t)}catch(e){n.error=e,n.hasError=!0}finally{let e=H(n);e&&await e}}renameSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!1),i=Rn(e),a=Rn(t),o=this.findInodeSync(r,i.dir),s=hn(r.getSync(o.data)??_(C(`ENODATA`)));if(!s[i.base])throw C(`ENOENT`);let c=s[i.base];if(c!=this._ids.get(e)&&T(`Ino mismatch while renaming ${e} to ${t}`),delete s[i.base],(a.dir+`/`).startsWith(e+`/`))throw C(`EBUSY`);let l=a.dir===i.dir,u=l?o:this.findInodeSync(r,a.dir),d=l?s:hn(r.getSync(u.data)??_(C(`ENODATA`)));if(d[a.base]){let e=new R(r.getSync(d[a.base])??_(C(`ENOENT`)));if(!rr(e))throw C(`EISDIR`);r.removeSync(e.data),r.removeSync(d[a.base])}d[a.base]=c,r.setSync(o.data,gn(s)),r.setSync(u.data,gn(d)),r.commitSync(),this._move(e,t)}catch(e){n.error=e,n.hasError=!0}finally{H(n)}}async stat(e){let t={stack:[],error:void 0,hasError:!1};try{let n=V(t,this.transaction(),!0);return await this.findInode(n,e)}catch(e){t.error=e,t.hasError=!0}finally{let e=H(t);e&&await e}}statSync(e){let t={stack:[],error:void 0,hasError:!1};try{let n=V(t,this.transaction(),!1);return this.findInodeSync(n,e)}catch(e){t.error=e,t.hasError=!0}finally{H(t)}}async touch(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!0),a=await this.findInode(r,e);if(!z(a)&&t.size!==void 0&&t.size!==a.size){let e=await r.get(a.data)??/* @__PURE__ */ new Uint8Array;t.size<e.byteLength&&e.fill(0,t.size),await r.set(a.data,t.size<e.byteLength?e.subarray(0,t.size):i(e,t.size))}a.update(t)&&(this._add(a.ino,e),r.setSync(a.ino,a)),await r.commit()}catch(e){n.error=e,n.hasError=!0}finally{let e=H(n);e&&await e}}touchSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!1),a=this.findInodeSync(r,e);if(!z(a)&&t.size!==void 0&&t.size!==a.size&&!t.metaOnly){let e=r.getSync(a.data)??/* @__PURE__ */ new Uint8Array;t.size<e.byteLength&&e.fill(0,t.size),r.setSync(a.data,t.size<e.byteLength?e.subarray(0,t.size):i(e,t.size))}a.update(t)&&(this._add(a.ino,e),r.setSync(a.ino,a)),r.commitSync()}catch(e){n.error=e,n.hasError=!0}finally{H(n)}}async createFile(e,t){return await this.commitNew(e,{...t,mode:t.mode|ft},/* @__PURE__ */ new Uint8Array)}createFileSync(e,t){return this.commitNewSync(e,{...t,mode:t.mode|ft},/* @__PURE__ */ new Uint8Array)}async unlink(e){return this.remove(e,!1)}unlinkSync(e){this.removeSync(e,!1)}async rmdir(e){if((await this.readdir(e)).length)throw C(`ENOTEMPTY`);await this.remove(e,!0)}rmdirSync(e){if(this.readdirSync(e).length)throw C(`ENOTEMPTY`);this.removeSync(e,!0)}async mkdir(e,t){return await this.commitNew(e,{...t,mode:t.mode|mt},v(`{}`))}mkdirSync(e,t){return this.commitNewSync(e,{...t,mode:t.mode|mt},v(`{}`))}async readdir(e){let t={stack:[],error:void 0,hasError:!1};try{let n=V(t,this.transaction(),!0),r=await this.findInode(n,e);return Object.keys(hn(await n.get(r.data)??_(C(`ENOENT`))))}catch(e){t.error=e,t.hasError=!0}finally{let e=H(t);e&&await e}}readdirSync(e){let t={stack:[],error:void 0,hasError:!1};try{let n=V(t,this.transaction(),!1),r=this.findInodeSync(n,e);return Object.keys(hn(n.getSync(r.data)??_(C(`ENOENT`))))}catch(e){t.error=e,t.hasError=!0}finally{H(t)}}async sync(){}syncSync(){}async link(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!0),i=N(t),a=await this.findInode(r,i),o=hn(await r.get(a.data)??_(C(`ENOENT`))),s=await this.findInode(r,e);s.nlink++,o[Fn(t)]=s.ino,this._add(s.ino,t),await r.set(s.ino,s),await r.set(a.data,gn(o)),await r.commit()}catch(e){n.error=e,n.hasError=!0}finally{let e=H(n);e&&await e}}linkSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!1),i=N(t),a=this.findInodeSync(r,i),o=hn(r.getSync(a.data)??_(C(`ENOENT`))),s=this.findInodeSync(r,e);s.nlink++,o[Fn(t)]=s.ino,this._add(s.ino,t),r.setSync(s.ino,s),r.setSync(a.data,gn(o)),r.commitSync()}catch(e){n.error=e,n.hasError=!0}finally{H(n)}}async read(e,t,n,r){let i={stack:[],error:void 0,hasError:!1};try{let a=V(i,this.transaction(),!0),o=await this.findInode(a,e);if(o.size==0)return;let s=await a.get(o.data,n,r)??_(C(`ENODATA`)),c=a.flag(`partial`)?s:s.subarray(n,r);c.byteLength>t.byteLength&&T(`Trying to place ${c.byteLength} bytes into a ${t.byteLength} byte buffer on read`),t.set(c)}catch(e){i.error=e,i.hasError=!0}finally{let e=H(i);e&&await e}}readSync(e,t,n,r){let i={stack:[],error:void 0,hasError:!1};try{let a=V(i,this.transaction(),!1),o=this.findInodeSync(a,e);if(o.size==0)return;let s=a.getSync(o.data,n,r)??_(C(`ENODATA`)),c=a.flag(`partial`)?s:s.subarray(n,r);c.byteLength>t.byteLength&&T(`Trying to place ${c.byteLength} bytes into a ${t.byteLength} byte buffer on read`),t.set(c)}catch(e){i.error=e,i.hasError=!0}finally{H(i)}}async write(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{let a=V(r,this.transaction(),!0),o=await this.findInode(a,e),s=n+t.byteLength,c=t;a.flag(`partial`)||(c=i(await a.get(o.data)??/* @__PURE__ */ new Uint8Array,s),c.set(t,n),n=0),await a.set(o.data,c,n),o.update({size:Math.max(o.size,s),mtimeMs:Date.now()}),await a.set(o.ino,o),this._add(o.ino,e),await a.commit()}catch(e){r.error=e,r.hasError=!0}finally{let e=H(r);e&&await e}}writeSync(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{let a=V(r,this.transaction(),!1),o=this.findInodeSync(a,e),s=n+t.byteLength,c=t;a.flag(`partial`)||(c=i(a.getSync(o.data)??/* @__PURE__ */ new Uint8Array,s),c.set(t,n),n=0),a.setSync(o.data,c,n),o.update({size:Math.max(o.size,s),mtimeMs:Date.now()}),a.setSync(o.ino,o),this._add(o.ino,e),a.commitSync()}catch(e){r.error=e,r.hasError=!0}finally{H(r)}}transaction(){return new Mr(this.store.transaction(),this)}async checkRoot(){let e={stack:[],error:void 0,hasError:!1};try{let t=V(e,this.transaction(),!0);if(await t.get(0))return;let n=new R({ino:0,data:1,mode:16895});await t.set(n.data,v(`{}`)),this._add(0,`/`),await t.set(0,n),await t.commit()}catch(t){e.error=t,e.hasError=!0}finally{let t=H(e);t&&await t}}checkRootSync(){let e={stack:[],error:void 0,hasError:!1};try{let t=V(e,this.transaction(),!1);if(t.getSync(0))return;let n=new R({ino:0,data:1,mode:16895});t.setSync(n.data,v(`{}`)),this._add(0,`/`),t.setSync(0,n),t.commitSync()}catch(t){e.error=t,e.hasError=!0}finally{H(e)}}async _populate(){let e={stack:[],error:void 0,hasError:!1};try{if(this._initialized){E(`Attempted to populate tables after initialization`);return}Ee(`Populating tables with existing store metadata`);let t=V(e,this.transaction(),!0),n=await t.get(0);if(!n){we(`Store does not have a root inode`);let e=new R({ino:0,data:1,mode:16895});await t.set(e.data,v(`{}`)),this._add(0,`/`),await t.set(0,e),await t.commit();return}if(n.length<k(R)){Ce(`Store contains an invalid root inode. Refusing to populate tables`);return}let r=/* @__PURE__ */ new Set,i=0,a=[[`/`,0]];for(;a.length>0;){i++;let[e,n]=a.shift();this._add(n,e);let o=await t.get(n);if(!o){E(`Store is missing data for inode: `+n);continue}if(o.length<k(R)){E(`Invalid inode size for ino ${n}: ${o.length}`);continue}let s=new R(o);if(!z(s)||r.has(n))continue;r.add(n);let c=await t.get(s.data);if(!c){E(`Store is missing directory data: `+s.data);continue}let l=hn(c);for(let[t,n]of Object.entries(l))a.push([M(e,t),n])}Ee(`Added ${i} existing inode(s) from store`)}catch(t){e.error=t,e.hasError=!0}finally{let t=H(e);t&&await t}}_populateSync(){let e={stack:[],error:void 0,hasError:!1};try{if(this._initialized){E(`Attempted to populate tables after initialization`);return}Ee(`Populating tables with existing store metadata`);let t=V(e,this.transaction(),!1),n=t.getSync(0);if(!n){we(`Store does not have a root inode`);let e=new R({ino:0,data:1,mode:16895});t.setSync(e.data,v(`{}`)),this._add(0,`/`),t.setSync(0,e),t.commitSync();return}if(n.length<k(R)){Ce(`Store contains an invalid root inode. Refusing to populate tables`);return}let r=/* @__PURE__ */ new Set,i=0,a=[[`/`,0]];for(;a.length>0;){i++;let[e,n]=a.shift();this._add(n,e);let o=t.getSync(n);if(!o){E(`Store is missing data for inode: `+n);continue}if(o.length<k(R)){E(`Invalid inode size for ino ${n}: ${o.length}`);continue}let s=new R(o);if(!z(s)||r.has(n))continue;r.add(n);let c=t.getSync(s.data);if(!c){E(`Store is missing directory data: `+s.data);continue}let l=hn(c);for(let[t,n]of Object.entries(l))a.push([M(e,t),n])}Ee(`Added ${i} existing inode(s) from store`)}catch(t){e.error=t,e.hasError=!0}finally{H(e)}}async _findInode(e,t,n=/* @__PURE__ */ new Set){if(n.has(t))throw Ce(C(`EIO`,`Infinite loop detected while finding inode`));if(n.add(t),t==`/`)return new R(await e.get(0)??_(C(`ENODATA`)));let{dir:r,base:i}=Rn(t),a=await this._findInode(e,r,n),o=hn(await e.get(a.data)??_(C(`ENODATA`)));if(!(i in o))throw C(`ENOENT`);return new R(await e.get(o[i])??_(C(`ENODATA`)))}_findInodeSync(e,t,n=/* @__PURE__ */ new Set){if(n.has(t))throw Ce(C(`EIO`,`Infinite loop detected while finding inode`));if(n.add(t),t==`/`)return new R(e.getSync(0)??_(C(`ENOENT`)));let{dir:r,base:i}=Rn(t),a=this._findInodeSync(e,r,n),o=hn(e.getSync(a.data)??_(C(`ENODATA`)));if(!(i in o))throw C(`ENOENT`);return new R(e.getSync(o[i])??_(C(`ENODATA`)))}async findInode(e,t){if(this.attributes.has(`no_id_tables`))return await this._findInode(e,t);let n=this._ids.get(t);if(n===void 0)throw C(`ENOENT`);return new R(await e.get(n)??_(C(`ENOENT`)))}findInodeSync(e,t){if(this.attributes.has(`no_id_tables`))return this._findInodeSync(e,t);let n=this._ids.get(t);if(n===void 0)throw C(`ENOENT`);return new R(e.getSync(n)??_(C(`ENOENT`)))}_lastID;allocNew(e){this._lastID||=Array.from(this._paths.keys()).reduce((e,t)=>Math.max(e,t),0),this._lastID+=2;let t=this._lastID;if(t>4294967295)throw T(C(`ENOSPC`,`No IDs available`));return this._add(t,e),t}async commitNew(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{if(e==`/`)throw C(`EEXIST`);let i=V(r,this.transaction(),!0),{dir:a,base:o}=Rn(e),s=await this.findInode(i,a),c=hn(await i.get(s.data)??_(C(`ENOENT`)));if(c[o])throw C(`EEXIST`);let l=this.allocNew(e),u=new R({...t,ino:l,data:l+1,size:n.byteLength,nlink:1});return await i.set(u.ino,u),await i.set(u.data,n),c[o]=u.ino,await i.set(s.data,gn(c)),await i.commit(),u}catch(e){r.error=e,r.hasError=!0}finally{let e=H(r);e&&await e}}commitNewSync(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{if(e==`/`)throw C(`EEXIST`);let i=V(r,this.transaction(),!1),{dir:a,base:o}=Rn(e),s=this.findInodeSync(i,a),c=hn(i.getSync(s.data)??_(C(`ENOENT`)));if(c[o])throw C(`EEXIST`);let l=this.allocNew(e),u=new R({...t,ino:l,data:l+1,size:n.byteLength,nlink:1});return i.setSync(u.ino,u),i.setSync(u.data,n),c[o]=u.ino,i.setSync(s.data,gn(c)),i.commitSync(),u}catch(e){r.error=e,r.hasError=!0}finally{H(r)}}async remove(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!0),{dir:i,base:a}=Rn(e),o=await this.findInode(r,i),s=hn(await r.get(o.data)??_(C(`ENOENT`)));if(!s[a])throw C(`ENOENT`);let c=s[a],l=new R(await r.get(c)??_(C(`ENOENT`)));if(delete s[a],!t&&z(l))throw C(`EISDIR`);await r.set(o.data,gn(s)),l.nlink>1?(l.update({nlink:l.nlink-1}),await r.set(l.ino,l)):(await r.remove(l.data),await r.remove(c),this._remove(c)),await r.commit()}catch(e){n.error=e,n.hasError=!0}finally{let e=H(n);e&&await e}}removeSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{let r=V(n,this.transaction(),!1),{dir:i,base:a}=Rn(e),o=this.findInodeSync(r,i),s=hn(r.getSync(o.data)??_(C(`ENOENT`))),c=s[a];if(!c)throw C(`ENOENT`);let l=new R(r.getSync(c)??_(C(`ENOENT`)));if(delete s[a],!t&&z(l))throw C(`EISDIR`);r.setSync(o.data,gn(s)),l.nlink>1?(l.update({nlink:l.nlink-1}),r.setSync(l.ino,l)):(r.removeSync(l.data),r.removeSync(c),this._remove(c)),r.commitSync()}catch(e){n.error=e,n.hasError=!0}finally{H(n)}}},Pr=class extends Ar{async keys(){return this.store.keys()}async get(e){return await(this.store.getAsync?.(e)??this.store.get(e))}getSync(e){return this.store.get(e)}setSync(e,t){this.store.set(e,t)}removeSync(e){this.store.delete(e)}},Fr=class extends jr{async keys(){return await this.asyncDone,this.store.keys()}async get(e,t,n){return await this.asyncDone,await this.store.get(e,t,n)}getSync(e,t,n){return this.store.cached(e,t,n)}async set(e,t,n=0){await this.asyncDone,await this.store.set(e,t,n)}async remove(e){await this.asyncDone,await this.store.delete(e)}},Ir=class extends Map{maxSize;label;flags=[];name=`tmpfs`;constructor(e=yt,t){super(),this.maxSize=e,this.label=t}async sync(){}transaction(){return new Pr(this)}get bytes(){let e=this.size*4;for(let t of this.values())e+=t.byteLength;return e}usage(){return{totalSpace:this.maxSize,freeSpace:this.maxSize-this.bytes}}};const Lr={name:`InMemory`,options:{maxSize:{type:`number`,required:!1},label:{type:`string`,required:!1}},create({maxSize:e,label:t}){let n=new Nr(new Ir(e,t));return n.checkRootSync(),n}};var Rr=class extends Nr{devices=/* @__PURE__ */ new Map;devicesWithDriver(e,t){if(t&&typeof e==`string`)throw T(C(`EINVAL`,`Can not fetch devices using only a driver name`));let n=[];for(let r of this.devices.values())t&&r.driver!=e||(typeof e==`string`?e:e.name)==r.driver.name&&n.push(r);return n}_createDevice(e,t={}){let n=1,r=Array.from(this.devices.values()).at(-1);for(;this.store.has(n)||r?.inode.ino==n;)n++;let i=e.init?.(n,t),a={data:{},minor:0,major:0,...m(i??{},`metadata`),driver:e,inode:new R({mode:8630,...i?.metadata})},o=`/`+(a.name||e.name)+(e.singleton?``:this.devicesWithDriver(e).length);if(this.existsSync(o))throw C(`EEXIST`);return this.devices.set(o,a),Te(`Initialized device: `+this._mountPoint+o),a}addDefaults(){this._createDevice(Br),this._createDevice(Vr),this._createDevice(Hr),this._createDevice(Ur),this._createDevice(Wr),Ee(`Added default devices`)}constructor(){super(new Ir(16777216,`devfs`))}async rename(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.rename(e,t)}renameSync(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.renameSync(e,t)}async stat(e){let t=this.devices.get(e);return t?t.inode:super.stat(e)}statSync(e){let t=this.devices.get(e);return t?t.inode:super.statSync(e)}async touch(e,t){let n=this.devices.get(e);n?n.inode.update(t):await super.touch(e,t)}touchSync(e,t){let n=this.devices.get(e);n?n.inode.update(t):super.touchSync(e,t)}async createFile(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.createFile(e,t)}createFileSync(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.createFileSync(e,t)}async unlink(e){if(this.devices.has(e))throw C(`EPERM`);return super.unlink(e)}unlinkSync(e){if(this.devices.has(e))throw C(`EPERM`);return super.unlinkSync(e)}async rmdir(e){return super.rmdir(e)}rmdirSync(e){return super.rmdirSync(e)}async mkdir(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.mkdir(e,t)}mkdirSync(e,t){if(this.devices.has(e))throw C(`EEXIST`);return super.mkdirSync(e,t)}async readdir(e){let t=await super.readdir(e);for(let n of this.devices.keys())N(n)==e&&t.push(Fn(n));return t}readdirSync(e){let t=super.readdirSync(e);for(let n of this.devices.keys())N(n)==e&&t.push(Fn(n));return t}async link(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.link(e,t)}linkSync(e,t){if(this.devices.has(e))throw C(`EPERM`);if(this.devices.has(t))throw C(`EEXIST`);return super.linkSync(e,t)}async sync(){for(let e of this.devices.values())e.driver.sync?.(e);return super.sync()}syncSync(){for(let e of this.devices.values())e.driver.sync?.(e);return super.syncSync()}async read(e,t,n,r){let i=this.devices.get(e);if(!i){await super.read(e,t,n,r);return}i.driver.read(i,t,n,r)}readSync(e,t,n,r){let i=this.devices.get(e);if(!i){super.readSync(e,t,n,r);return}i.driver.read(i,t,n,r)}async write(e,t,n){let r=this.devices.get(e);if(!r)return await super.write(e,t,n);r.driver.write(r,t,n)}writeSync(e,t,n){let r=this.devices.get(e);if(!r)return super.writeSync(e,t,n);r.driver.write(r,t,n)}};const zr=/* @__PURE__ */ new Uint8Array,Br={name:`null`,singleton:!0,init(){return{major:1,minor:3}},read(){return zr},write(){}},Vr={name:`zero`,singleton:!0,init(){return{major:1,minor:5}},read(e,t,n,r){t.fill(0,n,r)},write(){}},Hr={name:`full`,singleton:!0,init(){return{major:1,minor:7}},read(e,t,n,r){t.fill(0,n,r)},write(){throw C(`ENOSPC`)}},Ur={name:`random`,singleton:!0,init(){return{major:1,minor:8}},read(e,t){for(let e=0;e<t.length;e++)t[e]=Math.floor(Math.random()*256)},write(){}},Wr={name:`console`,singleton:!0,init(e,{output:t=e=>console.log(e)}={}){return{major:5,minor:1,data:{output:t}}},read(){return zr},write(e,t,n){let r=ce(t);e.data.output(r,n)}},Gr={null:Br,zero:Vr,full:Hr,random:Ur,console:Wr};var U=r(),Kr;(function(e){e[e.UNKNOWN=0]=`UNKNOWN`,e[e.FIFO=1]=`FIFO`,e[e.CHR=2]=`CHR`,e[e.DIR=4]=`DIR`,e[e.BLK=6]=`BLK`,e[e.REG=8]=`REG`,e[e.LNK=10]=`LNK`,e[e.SOCK=12]=`SOCK`,e[e.WHT=14]=`WHT`})(Kr||={});function qr(e){return(e&61440)>>12}function Jr(e){return e<<12}var Yr=class{ino;type;path;name};const Xr=x;function Zr(e,t){return e.path=t,e}function Qr(e,t,n,r){let i=typeof n==`string`?{path:n,dest:r,syscall:t.endsWith(`Sync`)?t.slice(0,-4):t}:n,a=e[t];if(typeof a!=`function`)throw TypeError(`${t} is not a function`);return function(...t){try{return a.call(e,...t)}catch(e){throw b(Object.assign(e,i))}}}const $r=Symbol(`withExceptionContext:target`);function ei(e,t){return new Proxy(e,{get(e,n){if(n===$r)return e;let r=Reflect.get(e,n);return typeof r==`function`?function n(...i){try{let a=r.apply(e,i);return a instanceof Promise?a.catch(e=>{if(`code`in e)throw b(Object.assign(e,t));if(e in y){let r=S(e,t);Error.captureStackTrace(r,n)}throw e}):a}catch(e){throw b(Object.assign(e,t))}}:r}})}function ti(e){return e[$r]??e}var ni=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},ri=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else(d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},ii=class{pending=/* @__PURE__ */ new Set;lastWriter;writeState=0;readers=0;syncReaders=0;take(e,t,n){e==`rw`?this.writeState=t?2:1:(this.readers++,t&&this.syncReaders++);let r=!1,i=()=>{r||(r=!0,e==`rw`?this.writeState=0:(this.readers--,t&&this.syncReaders--),n())};return i[Symbol.dispose]=i,i}queue(e){let{promise:t,resolve:n}=Promise.withResolvers();return this.pending.add(t),e==`rw`&&(this.lastWriter=t),t.then(()=>{this.pending.delete(t),this.lastWriter==t&&delete this.lastWriter}),n}async acquire(e){let t=e==`ro`?this.lastWriter:Promise.all(this.pending),n=this.queue(e);return await t,this.take(e,!1,n)}acquireSync(e){if(this.writeState==2||e==`rw`&&this.syncReaders)throw C(`EDEADLK`);if(this.writeState||e==`rw`&&this.readers)throw C(`EAGAIN`);return this.take(e,!0,this.queue(e))}isAvailable(e){return(e!=`rw`||!this.readers)&&!this.writeState}get isFree(){return!this.writeState&&!this.readers}get mode(){return this.writeState?`rw`:this.readers?`ro`:null}};let ai=(()=>{let e=[],t,n;return class{static{let r=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;t=[ne],n=[ne],ri(this,null,t,{kind:`getter`,name:`lock`,static:!1,private:!1,access:{has:e=>`lock`in e,get:e=>e.lock},metadata:r},null,e),ri(this,null,n,{kind:`getter`,name:`lockSync`,static:!1,private:!1,access:{has:e=>`lockSync`in e,get:e=>e.lockSync},metadata:r},null,e),r&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:r})}_rwLock=(ni(this,e),new ii);get lock(){return this._rwLock.acquire.bind(this._rwLock)}get lockSync(){return this._rwLock.acquireSync.bind(this._rwLock)}get isLocked(){return!this._rwLock.isFree}get lockMode(){return this._rwLock.mode}}})();var oi=class{max;#e=/* @__PURE__ */ new Set;#t=[];constructor(e){if(this.max=e,!Number.isInteger(e)||e<1)throw C(`EINVAL`,`Semaphore max must be a positive integer`)}get active(){return this.#e.size}get waiting(){return this.#t.length}get isAvailable(){return this.#e.size<this.max}#n(e,t){let n=!1,r=()=>{n||(n=!0,this.#e.delete(e),t(),this.#t.shift()?.())};return r[Symbol.dispose]=r,r}async get(){let{promise:e,resolve:t}=Promise.withResolvers();if(this.#e.size>=this.max){let t=Promise.withResolvers();this.#t.push(()=>{this.#e.add(e),t.resolve()}),await t.promise}else this.#e.add(e);return this.#n(e,t)}getSync(){if(this.#e.size>=this.max)throw C(`EAGAIN`);let{promise:e,resolve:t}=Promise.withResolvers();return this.#e.add(e),this.#n(e,t)}async drain(){for(;this.#e.size;)await Promise.all(this.#e)}},si=class extends ai{fs;inode;data;dirtyRanges=[];truncatedTo;metadataDirty=!1;refs=0;paths=/* @__PURE__ */ new Set;_lastPath;constructor(e,t,n){super(),this.fs=e,this.inode=n,this.paths.add(t),this._lastPath=t,this.data=new s(n.ino,n.size,{sparse:!0})}get ino(){return this.inode.ino}get path(){let[e]=this.paths;return e!==void 0&&(this._lastPath=e),e??this._lastPath}get dirty(){return this.metadataDirty||this.dirtyRanges.length>0}get bypassCache(){return sr(this.inode)||or(this.inode)||!!(this.inode.flags&L.DAX)}markDirty(e,t){o(this.dirtyRanges,e,t)}copyFromCache(e,t,n){let r=t;for(let i of this.data.regionsIn(t,n)){let a=i.offset+i.data.byteLength;if(a<=r)continue;i.offset>r&&(e.fill(0,r-t,i.offset-t),r=i.offset);let o=Math.min(n,a);e.set(i.data.subarray(r-i.offset,o-i.offset),r-t),r=o}r<n&&e.fill(0,r-t,n-t)}async read(e,t,n){if(this.bypassCache)return await this.fs.read(this.path,e,t,n);for(let{start:e,end:r}of this.data.missing(t,n)){let t=new Uint8Array(r-e);await this.fs.read(this.path,t,e,r),this.data.add(t,e)}this.copyFromCache(e,t,n)}readSync(e,t,n){if(this.bypassCache)return this.fs.readSync(this.path,e,t,n);for(let{start:e,end:r}of this.data.missing(t,n)){let t=new Uint8Array(r-e);this.fs.readSync(this.path,t,e,r),this.data.add(t,e)}this.copyFromCache(e,t,n)}async write(e,t){this.bypassCache?await this.fs.write(this.path,e,t):this._writeCached(e,t),this._writeMetadata(t+e.byteLength)}writeSync(e,t){this.bypassCache?this.fs.writeSync(this.path,e,t):this._writeCached(e,t),this._writeMetadata(t+e.byteLength)}_writeCached(e,t){let n=t+e.byteLength;this.data.add(e.slice(),t),n>this.data.size&&(this.data.size=n),this.markDirty(t,n)}_writeMetadata(e){!this.bypassCache&&e>this.inode.size&&(this.inode.size=e),this.inode.mtimeMs=Date.now(),this.inode.ctimeMs=Date.now(),this.metadataDirty=!0}truncate(e){this.truncatedTo=Math.min(this.truncatedTo??e,e),this.data.size=e,this.dirtyRanges=this.dirtyRanges.filter(t=>t.start<e).map(t=>t.end>e?{start:t.start,end:e}:t),this.inode.size=e,this.inode.mtimeMs=Date.now(),this.inode.ctimeMs=Date.now(),this.metadataDirty=!0}get needsPreTruncate(){return!this.bypassCache&&this.truncatedTo!==void 0&&this.truncatedTo<this.inode.size&&!this.fs.attributes.has(`no_write`)}_dropIfOrphaned(){return this.paths.size>0?!1:(this.truncatedTo=void 0,this.dirtyRanges=[],this.metadataDirty=!1,!0)}async sync(){if(!this._dropIfOrphaned()){this.needsPreTruncate&&await this.fs.touch(this.path,{size:this.truncatedTo}),this.truncatedTo=void 0;for(let e of this.dirtyRanges)for(let t=e.start;t<e.end;){let n=this.data.regionAt(t);if(!n)break;let r=Math.min(e.end,n.offset+n.data.byteLength);if(this._dropIfOrphaned())return;await this.fs.write(this.path,n.data.subarray(t-n.offset,r-n.offset),t),t=r}this.dirtyRanges=[],this.metadataDirty&&(this._dropIfOrphaned()||(this.fs.attributes.has(`no_write`)||await this.fs.touch(this.path,this.inode),this.metadataDirty=!1))}}syncSync(){if(!this._dropIfOrphaned()){this.needsPreTruncate&&this.fs.touchSync(this.path,{size:this.truncatedTo}),this.truncatedTo=void 0;for(let e of this.dirtyRanges)for(let t=e.start;t<e.end;){let n=this.data.regionAt(t);if(!n)break;let r=Math.min(e.end,n.offset+n.data.byteLength);this.fs.writeSync(this.path,n.data.subarray(t-n.offset,r-n.offset),t),t=r}this.dirtyRanges=[],this.metadataDirty&&=(this.fs.attributes.has(`no_write`)||this.fs.touchSync(this.path,this.inode),!1)}}},ci=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},li=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r}),ui=class{fs;byIno=/* @__PURE__ */ new Map;byPath=/* @__PURE__ */ new Map;constructor(e){this.fs=e}get(e){return this.byPath.get(e)}ref(e,t){let n=this.byIno.get(t.ino);return n&&n.inode.nlink===n.paths.size&&!n.paths.has(e)&&T(`vcache.ref: vnode for ${this.fs.label||this.fs.uuid}:${t.ino} has an nlink of ${n.inode.nlink} but referenced by more paths [#314]`),n&&!n.paths.has(e)&&(t.ino===0||t.nlink<=1||n.inode.nlink<=1||(n.inode.mode^t.mode)&61440)&&(n=this.byPath.get(e),n&&(n.inode.mode^t.mode)&61440&&(n=void 0)),n?(n.paths.add(e),!n.dirty&&t!==n.inode&&Object.assign(n.inode,t)):(n=new si(this.fs,e,t),this.byIno.set(t.ino,n)),this.byPath.set(e,n),n.refs++,n}unref(e){e.refs--,!(e.refs>0||e.dirty)&&this.evict(e)}evict(e){this.byIno.get(e.ino)===e&&this.byIno.delete(e.ino);for(let t of e.paths)this.byPath.get(t)===e&&this.byPath.delete(t)}rename(e,t){let n=this.byPath.get(t);n&&!n.paths.has(e)&&(n.paths.delete(t),this.byPath.delete(t));for(let[n,r]of this.byPath){if(n!=e&&!n.startsWith(e+`/`))continue;let i=t+n.slice(e.length);this.byPath.delete(n),this.byPath.set(i,r),r.paths.delete(n),r.paths.add(i)}}link(e,t){let n=this.byPath.get(e);n&&(n.paths.add(t),this.byPath.set(t,n))}remove(e){let t=this.byPath.get(e);t&&(this.byPath.delete(e),t.paths.delete(e),!t.paths.size&&!t.refs&&this.evict(t))}async sync(){for(let e of this.byIno.values()){let t={stack:[],error:void 0,hasError:!1};try{if(!e.dirty)continue;ci(t,await e.lock(`rw`),!1),await e.sync(),e.refs||this.evict(e)}catch(e){t.error=e,t.hasError=!0}finally{li(t)}}}syncSync(){for(let e of this.byIno.values()){let t={stack:[],error:void 0,hasError:!1};try{if(!e.dirty)continue;ci(t,e.lockSync(`rw`),!1),e.syncSync(),e.refs||this.evict(e)}catch(e){t.error=e,t.hasError=!0}finally{li(t)}}}async stat(e,t){try{return this.get(e)?.inode??await this.fs.stat(e)}catch(e){throw t?b(Object.assign(e,t)):e}}statSync(e,t){try{return this.get(e)?.inode??this.fs.statSync(e)}catch(e){throw t?b(Object.assign(e,t)):e}}async lock(e,t,n){n??=await this.stat(e);let r=this.ref(e,n),i=await r.lock(t),a=!1,o=()=>{a||(a=!0,i(),this.unref(r))};return o[Symbol.dispose]=o,o}lockSync(e,t,n){n??=this.statSync(e);let r=this.ref(e,n),i;try{i=r.lockSync(t)}catch(e){throw this.unref(r),e}let a=!1,o=()=>{a||(a=!0,i(),this.unref(r))};return o[Symbol.dispose]=o,o}};const di=/* @__PURE__ */ new Map;function fi(e){return di.getOrInsertComputed(e.uuid,()=>new ui(ti(e)))}var pi=function(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0},mi=function(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else(d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0},hi=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},gi=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r});let _i=(()=>{let e=[],t,n;return class{static{let r=typeof Symbol==`function`&&Symbol.metadata?Object.create(null):void 0;mi(this,null,t,{kind:`getter`,name:`inode`,static:!1,private:!1,access:{has:e=>`inode`in e,get:e=>e.inode},metadata:r},null,e),mi(this,null,n,{kind:`getter`,name:`fs`,static:!1,private:!1,access:{has:e=>`fs`in e,get:e=>e.fs},metadata:r},null,e),r&&Object.defineProperty(this,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:r})}context=pi(this,e);path;internalPath;flag;vnode;_position=0;get position(){return this.flag&1024?this.inode.size:this._position}set position(e){this._position=e}get inode(){return this.vnode.inode}get fs(){return this.vnode.fs}get dirty(){return this.vnode.dirty}closed=!1;refs=1;ref(){if(this.closed)throw S(`EBADF`,`dup`,this.path);return this.refs++,this}get isClosed(){return this.closed}constructor(e,t,n,r,i){this.context=e,this.path=t,this.internalPath=n,this.flag=r,this.vnode=i}get _isSync(){return!!(this.flag&1052672||this.inode.flags&L.Sync||this.fs.attributes.has(`sync`))}[(t=[ne],n=[ne],Symbol.dispose)](){this.closeSync()}syncSync(){let e={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`sync`,this.path);if(!this.dirty)return;hi(e,this.vnode.lockSync(`rw`),!1),this.vnode.syncSync()}catch(t){e.error=t,e.hasError=!0}finally{gi(e)}}datasyncSync(){return this.syncSync()}closeSync(){if(this.closed)throw S(`EBADF`,`close`,this.path);this.syncSync(),!(--this.refs>0)&&this.disposeSync(!0)}disposeSync(e){if(this.closed)throw S(`EBADF`,`close`,this.path);if(this.dirty&&!e)throw S(`EBUSY`,`close`,this.path);this.closed=!0,fi(this.fs).unref(this.vnode)}truncateSync(e){let t={stack:[],error:void 0,hasError:!1};try{if(e<0)throw S(`EINVAL`,`truncate`,this.path);if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`truncate`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`truncate`,this.path);if(this.inode.flags&L.Immutable)throw S(`EPERM`,`truncate`,this.path);hi(t,this.vnode.lockSync(`rw`),!1),this.vnode.truncate(e),this._isSync&&this.vnode.syncSync()}catch(e){t.error=e,t.hasError=!0}finally{gi(t)}}writeSync(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`write`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`write`,this.path);if(this.inode.flags&L.Immutable)throw S(`EPERM`,`write`,this.path);hi(i,this.vnode.lockSync(`rw`),!1);let a=e.subarray(t,t+n);return this.vnode.writeSync(a,r),this._position=r+a.byteLength,this._isSync&&this.vnode.syncSync(),a.byteLength}catch(e){i.error=e,i.hasError=!0}finally{gi(i)}}readSync(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||this.flag&1)throw S(`EBADF`,`read`,this.path);hi(i,this.vnode.lockSync(`ro`),!1),!(this.inode.flags&L.NoAtime)&&!this.fs.attributes.has(`no_atime`)&&(this.vnode.metadataDirty=!0,this.inode.atimeMs=Date.now());let a=r+n;!sr(this.inode)&&!or(this.inode)&&a>this.inode.size&&(a=r+Math.max(this.inode.size-r,0)),this._position=a;let o=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return this.vnode.readSync(o.subarray(t,t+n),r,a),this._isSync&&this.vnode.syncSync(),a-r}catch(e){i.error=e,i.hasError=!0}finally{gi(i)}}chmodSync(e){let t={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);dr(this.context,this.inode,{syscall:`chmod`,path:this.path}),hi(t,this.vnode.lockSync(`rw`),!1),this.vnode.metadataDirty=!0,mr(this.context,this.inode,e),(this._isSync||e>61440)&&this.vnode.syncSync()}catch(e){t.error=e,t.hasError=!0}finally{gi(t)}}chownSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chown`,this.path);fr(this.context,this.inode,e,t,{syscall:`chown`,path:this.path}),hi(n,this.vnode.lockSync(`rw`),!1),this.vnode.metadataDirty=!0,pr(this.inode,e,t),this._isSync&&this.vnode.syncSync()}catch(e){n.error=e,n.hasError=!0}finally{gi(n)}}utimesSync(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`utimes`,this.path);dr(this.context,this.inode,{syscall:`utimes`,path:this.path}),hi(n,this.vnode.lockSync(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.atimeMs=e,this.inode.mtimeMs=t,this._isSync&&this.vnode.syncSync()}catch(e){n.error=e,n.hasError=!0}finally{gi(n)}}async[Symbol.asyncDispose](){await this.close()}async sync(){let e={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`sync`,this.path);if(!this.dirty)return;hi(e,await this.vnode.lock(`rw`),!1),await this.vnode.sync()}catch(t){e.error=t,e.hasError=!0}finally{gi(e)}}datasync(){return this.sync()}async close(){if(this.closed)throw S(`EBADF`,`close`,this.path);await this.sync(),!(--this.refs>0)&&this.dispose(!0)}dispose(e){if(this.closed)throw S(`EBADF`,`close`,this.path);if(this.dirty&&!e)throw S(`EBUSY`,`close`,this.path);this.closed=!0,fi(this.fs).unref(this.vnode)}stat(){if(this.closed)throw S(`EBADF`,`stat`,this.path);return this.inode}async truncate(e){let t={stack:[],error:void 0,hasError:!1};try{if(e<0)throw S(`EINVAL`,`truncate`,this.path);if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`truncate`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`truncate`,this.path);if(this.inode.flags&L.Immutable)throw S(`EPERM`,`truncate`,this.path);hi(t,await this.vnode.lock(`rw`),!1),this.vnode.truncate(e),this._isSync&&await this.vnode.sync()}catch(e){t.error=e,t.hasError=!0}finally{gi(t)}}async write(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||!(this.flag&1||this.flag&2))throw S(`EBADF`,`write`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`write`,this.path);if(this.inode.flags&L.Immutable)throw S(`EPERM`,`write`,this.path);hi(i,await this.vnode.lock(`rw`),!1);let a=e.subarray(t,t+n);return await this.vnode.write(a,r),this._position=r+a.byteLength,this._isSync&&await this.vnode.sync(),a.byteLength}catch(e){i.error=e,i.hasError=!0}finally{gi(i)}}async read(e,t=0,n=e.byteLength-t,r=this.position){let i={stack:[],error:void 0,hasError:!1};try{if(this.closed||this.flag&1)throw S(`EBADF`,`read`,this.path);hi(i,await this.vnode.lock(`ro`),!1),!(this.inode.flags&L.NoAtime)&&!this.fs.attributes.has(`no_atime`)&&(this.vnode.metadataDirty=!0,this.inode.atimeMs=Date.now());let a=r+n;!sr(this.inode)&&!or(this.inode)&&a>this.inode.size&&(a=r+Math.max(this.inode.size-r,0)),this._position=a;let o=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);return await this.vnode.read(o.subarray(t,t+n),r,a),this._isSync&&await this.vnode.sync(),a-r}catch(e){i.error=e,i.hasError=!0}finally{gi(i)}}async chmod(e){let t={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chmod`,this.path);dr(this.context,this.inode,{syscall:`chmod`,path:this.path}),hi(t,await this.vnode.lock(`rw`),!1),this.vnode.metadataDirty=!0,mr(this.context,this.inode,e),(this._isSync||e>61440)&&await this.vnode.sync()}catch(e){t.error=e,t.hasError=!0}finally{gi(t)}}async chown(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`chown`,this.path);fr(this.context,this.inode,e,t,{syscall:`chown`,path:this.path}),hi(n,await this.vnode.lock(`rw`),!1),this.vnode.metadataDirty=!0,pr(this.inode,e,t),this._isSync&&await this.vnode.sync()}catch(e){n.error=e,n.hasError=!0}finally{gi(n)}}async utimes(e,t){let n={stack:[],error:void 0,hasError:!1};try{if(this.closed)throw S(`EBADF`,`utimes`,this.path);dr(this.context,this.inode,{syscall:`utimes`,path:this.path}),hi(n,await this.vnode.lock(`rw`),!1),this.vnode.metadataDirty=!0,this.inode.atimeMs=e,this.inode.mtimeMs=t,this._isSync&&await this.vnode.sync()}catch(e){n.error=e,n.hasError=!0}finally{gi(n)}}streamRead(e){if(this.closed)throw S(`EBADF`,`streamRead`,this.path);let{vnode:t}=this,{chunkSize:n=65536}=e,r=e.start??0,i=e.end;return new ReadableStream({async pull(e){let a={stack:[],error:void 0,hasError:!1};try{if(hi(a,await t.lock(`ro`),!1),i??=t.inode.size,r>=i){e.close();return}let o=new Uint8Array(Math.min(n,i-r));await t.read(o,r,r+o.byteLength),r+=o.byteLength,e.enqueue(o),r>=i&&e.close()}catch(e){a.error=e,a.hasError=!0}finally{gi(a)}},type:`bytes`})}streamWrite(e){if(this.closed)throw S(`EBADF`,`write`,this.path);if(this.inode.flags&L.Immutable)throw S(`EPERM`,`write`,this.path);if(this.fs.attributes.has(`readonly`))throw S(`EROFS`,`write`,this.path);let{vnode:t}=this,n=e.start??0;return new WritableStream({async write(e,r){let i={stack:[],error:void 0,hasError:!1};try{hi(i,await t.lock(`rw`),!1),await t.write(e,n).catch(r.error.bind(r)),n+=e.byteLength}catch(e){i.error=e,i.hasError=!0}finally{gi(i)}},async close(){let e={stack:[],error:void 0,hasError:!1};try{hi(e,await t.lock(`rw`),!1),await t.sync()}catch(t){e.error=t,e.hasError=!0}finally{gi(e)}}})}}})();function vi(e,t=e.context){let n=D(t).descriptors,r=0;for(;n.has(r);)r++;return n.set(r,e),r}function yi(e,t){yn(t);let n=D(e).descriptors.get(t);if(!n)throw C(`EBADF`);return n}function bi(e,t){return D(e).descriptors.delete(t)}function xi(e,t){return vi(yi(e,t).ref(),e)}const Si=/[rwasx]{1,2}\+?/;function Ci(e){if(typeof e==`number`)return e;if(!Si.test(e))throw C(`EINVAL`,`Invalid flag string: `+e);return wi(e)}function wi(e){if(!e.includes(`r`)&&!e.includes(`w`)&&!e.includes(`a`))throw C(`EINVAL`,`Invalid flag string: `+e);let t=e.includes(`r`)?0:64;return e.includes(`w`)&&(t|=512),e.includes(`a`)&&(t|=tt),e.includes(`+`)?t|=2:e.includes(`r`)||(t|=1),e.includes(`s`)&&(t|=at),e.includes(`x`)&&(t|=128),t}function Ti(e){let t=0;return e&1||(t|=4),(e&1||e&2)&&(t|=2),t}const Ei=Ze.mounts;Di(`/`,Lr.create({label:`root`}));function Di(e,t){let n=D(this);if(e[0]!=`/`&&(e=`/`+e),e=jn.call(n,e),n.mounts.has(e))throw T(C(`EINVAL`,`Mount point is already in use: `+e));t._mountPoint=e,n.mounts.set(e,t),di.getOrInsertComputed(t.uuid,()=>new ui(t)),Te(`Mounted ${t.name} on ${e}`),Ee(`${t.name} attributes: ${[...t.attributes].map(([e,t])=>t==null?e:e+`=`+t).join(`, `)}`)}function Oi(e){let t=D(this);e[0]!=`/`&&(e=`/`+e),e=jn.call(this,e);let n=t.mounts.get(e);if(!n){E(e+` is already unmounted`);return}let r=()=>{di.delete(n.uuid),Te(`Synced all changes to `+e)};try{di.get(n.uuid)?.syncSync(),r()}catch{E(`Could not flush to ${e} synchronously.`),di.get(n.uuid)?.sync().then(r)}t.mounts.delete(e),we(`Unmounted `+e)}function ki(e,t,n){let{root:r,mounts:i}=D(t),a={path:e,...n};e=j(M(r,e),!0),e=jn.call(t,e);let o=[...i].sort((e,t)=>e[0].length>t[0].length?-1:1);for(let[t,n]of o){if(!Mi(t,e))continue;e=e.slice(t.length>1?t.length:0),e===``&&(e=`/`);let i=n.attributes.get(`case_fold`);return i===`lower`&&(e=e.toLowerCase()),i===`upper`&&(e=e.toUpperCase()),{fs:ei(n,a),cache:fi(n),path:e,mountPoint:t,root:r}}throw Se(new x(y.EIO,`No file system for `+e))}function Ai(e,t){let n=e.usage(),r=n.blockSize||4096,i=t?BigInt:Number;return{type:i(e.type),bsize:i(r),frsize:i(r),ffree:i(n.freeNodes||4294967295),files:i(n.totalNodes||4294967295),bavail:i(n.freeSpace/r),bfree:i(n.freeSpace/r),blocks:i(n.totalSpace/r)}}function ji(e){let t=D(this);if(!qe(t.credentials))throw C(`EPERM`,`Can not chroot() as non-root user`);t.root??=`/`;let n=M(t.root,e);for(let e of t.descriptors?.values()??[]){if(!e.path.startsWith(t.root))throw S(`EBUSY`,`chroot`,e.path);e.path=e.path.slice(t.root.length)}if(n.length<t.root.length)throw C(`EPERM`,`Can not chroot() outside of current root`);t.root=n}function Mi(e,t){return e===`/`||e===t||(e.endsWith(`/`)||(e+=`/`),t.startsWith(e))}var Ni=/* @__PURE__ */ t({link:()=>Vi,mkdir:()=>Ri,open:()=>Ii,readdir:()=>zi,readlink:()=>Li,rename:()=>Bi,resolve:()=>W,stat:()=>Hi}),Pi=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},Fi=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r});function W(e,t,n,r){if(t=jn.call(e,t),!qn)try{let i=ki(t,e),a=i.cache.statSync(i.path);return!ir(a)||n?{...i,fullPath:t,stats:a}:W(e,jn.call(e,N(t),Li.call(e,t)),n,r)}catch{}let{base:i,dir:a}=Rn(t),o={syscall:`stat`,path:t,...r},s=`/`;if(a!=`/`){let t=W(e,a,!1,r);t.stats&&z(t.stats)&&lr(e,t.stats,o),s=t.fullPath}else if(i&&P){let t=ki(`/`,e);lr(e,t.cache.statSync(t.path),o)}let c=M(s,i),l=ki(c,e),u;try{u=l.cache.statSync(l.path)}catch(e){if(e.code===`ENOENT`)return{...l,fullPath:c};throw b(Object.assign(e,{syscall:`stat`,path:c,...r}))}return!ir(u)||n?{...l,fullPath:c,stats:u}:W(e,jn.call(e,s,Li.call(e,c)),!1,r)}function Ii(e,t,n){t=j.call(e,t);let r=_n(n.mode,420),i=Ci(n.flag);t=W(e,t,n.preserveSymlinks).fullPath;let{fs:a,cache:o,path:s}=ki(t,e),c;try{c=o.statSync(s)}catch{}if(!c){let c={stack:[],error:void 0,hasError:!1};try{if(!(i&64))throw S(`ENOENT`,`open`,t);let l=N(s),u=o.statSync(l,{syscall:`open`,path:t});if(P&&!B(e,u,3))throw S(`EACCES`,`open`,t);if(!z(u))throw S(`ENOTDIR`,`open`,t);if(!n.allowDirectory&&z({mode:r}))throw S(`EISDIR`,`open`,t);Pi(c,o.lockSync(l,`rw`,u),!1);let{euid:d,egid:f}=D(e).credentials,p=a.createFileSync(s,{mode:r,uid:u.mode&2048?u.uid:d,gid:u.mode&1024?u.gid:f});return qa(e,`rename`,t),new _i(e,t,s,i,o.ref(s,p))}catch(e){c.error=e,c.hasError=!0}finally{Fi(c)}}if(P&&!B(e,c,Ti(i)))throw S(`EACCES`,`open`,t);if(i&128)throw S(`EEXIST`,`open`,t);if(!n.allowDirectory&&z(c))throw S(`EISDIR`,`open`,t);let l=new _i(e,t,s,i,o.ref(s,c));return i&512&&l.truncateSync(0),l}function Li(e){e=j.call(this,e);let{fs:t,stats:n,path:r}=W(this,e,!0,{syscall:`readlink`});if(!n)throw S(`ENOENT`,`readlink`,e);if(P&&!B(this,n,4))throw S(`EACCES`,`readlink`,e);if(!ir(n))throw S(`EINVAL`,`readlink`,e);let i=n.size,a=new Uint8Array(i);return t.readSync(r,a,0,i),ce(a)}function Ri(e,t={}){let n=j.call(this,e),r={syscall:`mkdir`,path:n},{fullPath:i}=W(this,N(n),!1,r),{fs:a,cache:o,path:s}=ki(M(i,Fn(n)),this,r),c=i!=N(n),{euid:l,egid:u}=D(this).credentials,{mode:d=511,recursive:f}=t,p,m=(e,t)=>{let n={stack:[],error:void 0,hasError:!1};try{let i=N(t),h=f&&i!=`/`?m(N(e),i):o.statSync(i,r);if(f){let n;try{n=o.statSync(t)}catch{}if(n){let i=ir(n)?W(this,e,!1,r).stats:n;if(!i)throw S(`ENOENT`,r);if(!z(i))throw S(t==s?`EEXIST`:`ENOTDIR`,r);return n}if(c&&a.existsSync(M(i,Fn(e))))throw S(`ENOENT`,r)}if(P&&!B(this,h,3))throw S(`EACCES`,`mkdir`,e);Pi(n,o.lockSync(i,`rw`,h),!1);let g=Qr(a,`mkdirSync`,{path:e,syscall:`mkdir`})(t,{mode:d,uid:h.mode&2048?h.uid:l,gid:h.mode&1024?h.gid:u});return f&&(p??=e),qa(this,`rename`,e),g}catch(e){n.error=e,n.hasError=!0}finally{Fi(n)}};return m(n,s),p}function zi(e,t={}){e=j.call(this,e);let{fs:n,cache:r,path:i}=W(this,e),a=r.statSync(i,{path:e,syscall:`scandir`});if(P&&!B(this,a,4))throw S(`EACCES`,`scandir`,e);if(!z(a))throw S(`ENOTDIR`,`scandir`,e);let o;{let e={stack:[],error:void 0,hasError:!1};try{Pi(e,r.lockSync(i,`ro`,a),!1),o=n.readdirSync(i)}catch(t){e.error=t,e.hasError=!0}finally{Fi(e)}}let s=[],c=a=>{let o;try{o=r.statSync(M(i,a),{syscall:`scandir`,path:e})}catch(e){if(e.code==`ENOENT`)return;throw e}let l=new Yr;if(l.ino=o.ino,l.type=qr(o.mode),l.path=a,l.name=Fn(a),s.push(l),!z(o)||!t?.recursive)return;let u=n.readdirSync(M(i,a));for(let e of u)c(M(a,e))};for(let e of o)c(e);return s}function Bi(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`rename`,path:e,dest:t},i=W(this,e,!0,r),a=W(this,t,!0,r);if(i.fs.uuid!==a.fs.uuid)throw S(`EXDEV`,r);if(a.path.startsWith(i.path+`/`))throw S(`EINVAL`,r);if(!i.stats)throw S(`ENOENT`,r);let o=N(i.path),s=N(a.path),c=i.cache.statSync(o,r),l=i.cache.statSync(s,r),u;try{u=i.cache.statSync(a.path,r)}catch(e){if(e.code!=`ENOENT`)throw e}if(ur(this,c,i.stats,r),u&&ur(this,l,u,r),P&&!B(this,l,3)||P&&z(i.stats)&&o!=s&&!B(this,i.stats,2))throw S(`EACCES`,r);if(u&&!z(i.stats)&&z(u))throw S(`EISDIR`,r);if(u&&z(i.stats)&&!z(u))throw S(`ENOTDIR`,r);let d=[[o,c],[s,l]];c.ino>l.ino&&d.reverse(),Pi(n,i.cache.lockSync(d[0][0],`rw`,d[0][1]),!1),Pi(n,c.ino==l.ino?null:i.cache.lockSync(d[1][0],`rw`,d[1][1]),!1),i.fs.renameSync(i.path,a.path),i.cache.rename(i.path,a.path),qa(this,`rename`,e),qa(this,`rename`,t)}catch(e){n.error=e,n.hasError=!0}finally{Fi(n)}}function Vi(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`link`,path:e,dest:t},{fs:i,cache:a,path:o}=W(this,e,!0,r),s=W(this,t,!0,r);if(i.uuid!==s.fs.uuid)throw S(`EXDEV`,r);let c=a.statSync(o,r);if(P){if(!B(this,c,4))throw S(`EACCES`,r);let e=a.statSync(N(o),r);if(!B(this,e,4))throw S(`EACCES`,r);let t=a.statSync(N(s.path),r);if(!B(this,t,2))throw S(`EACCES`,r)}Pi(n,a.lockSync(N(s.path),`rw`),!1),i.linkSync(o,s.path),a.link(o,s.path)}catch(e){n.error=e,n.hasError=!0}finally{Fi(n)}}function Hi(e,t){e=j.call(this,e);let n={syscall:t?`lstat`:`stat`,path:e},r;if(!t)r=W(this,e,!1,n).stats;else{let{base:t,dir:i}=Rn(e),a=W(this,i,!1,n);a.stats&&z(a.stats)&&lr(this,a.stats,n);let{root:o,mounts:s}=D(this),c=t&&s.get(M(o,a.fullPath,t)),l=c||a.fs,u=c?`/`:M(a.path,t);try{r=fi(l).statSync(u)}catch(e){throw b(Object.assign(e,n)),e}}if(!r)throw S(`ENOENT`,n);return r}var Ui=class e{ino;type;_name;get name(){let e=U.Buffer.from(this._name);return this._encoding==`buffer`?e:e.toString(this._encoding)}_encoding;_parentPath;get parentPath(){return this._parentPath}get path(){return E(`Dirent.path was removed in Node v24, use parentPath instead`),this._parentPath}static from(t,n,r=`.`){let i=new e,{base:a,dir:o}=Rn(t.path);return i._parentPath=M(r,o),i._name=a,i.ino=t.ino,i.type=t.type,i._encoding=n,i}isFile(){return this.type===Kr.REG}isDirectory(){return this.type===Kr.DIR}isBlockDevice(){return this.type===Kr.BLK}isCharacterDevice(){return this.type===Kr.CHR}isSymbolicLink(){return this.type===Kr.LNK}isFIFO(){return this.type===Kr.FIFO}isSocket(){return this.type===Kr.SOCK}};function Wi(){return Object.assign(/* @__PURE__ */ Error(`Directory handle was closed`),{code:`ERR_DIR_CLOSED`})}var Gi=class{path;context;closed=!1;checkClosed(){if(this.closed)throw Wi()}_entries;constructor(e,t){this.path=e,this.context=t}close(e){if(this.closed){let t=Wi();if(!e)return Promise.reject(t);e(t);return}if(this.closed=!0,!e)return Promise.resolve();e(null)}closeSync(){if(this.closed)throw Wi();this.closed=!0}async _read(){return this.checkClosed(),this._entries??=await ku.call(this.context,this.path,{withFileTypes:!0}),this._entries.length?this._entries.shift()??null:null}read(e){if(!e)return this._read();this._read().then(t=>e(null,t))}readSync(){return this.checkClosed(),this._entries??=va.call(this.context,this.path,{withFileTypes:!0}),this._entries.length?this._entries.shift()??null:null}async next(){let e=await this._read();return e?{done:!1,value:e}:(await this.close(),{done:!0,value:void 0})}[Symbol.asyncIterator](){return this}[Symbol.dispose](){this.closed||this.closeSync()}async[Symbol.asyncDispose](){this.closed||await this.close()}},Ki=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},qi=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r});function Ji(e,t){return Bi.call(this,e,t)}function Yi(e){e=j.call(this,e);try{let{fs:t,path:n}=W(this,e);return t.existsSync(n)}catch(e){if(e.errno==y.ENOENT||e.errno==y.ENOTDIR||e.errno==y.EACCES)return!1;throw e}}function Xi(e,t){let n;try{n=Hi.call(this,e,!1)}catch(e){if(t?.throwIfNoEntry===!1&&bn(e))return;throw e}return t?.bigint?new Un(n):new Hn(n)}function Zi(e,t){let n;try{n=Hi.call(this,e,!0)}catch(e){if(t?.throwIfNoEntry===!1&&bn(e))return;throw e}return t?.bigint?new Un(n):new Hn(n)}function Qi(e,t=0){let n={stack:[],error:void 0,hasError:!1};try{let r=Ki(n,Ii(this,e,{flag:`r+`}),!1);if(t||=0,t<0)throw S(`EINVAL`,`truncate`,e.toString());r.truncateSync(t)}catch(e){n.error=e,n.hasError=!0}finally{qi(n)}}function $i(e){e=j.call(this,e);let{fs:t,cache:n,path:r}=W(this,e,!0,{syscall:`unlink`,path:e});try{let e={stack:[],error:void 0,hasError:!1};try{ur(this,n.statSync(N(r)),n.statSync(r)),Ki(e,n.lockSync(N(r),`rw`),!1),t.unlinkSync(r),n.remove(r)}catch(t){e.error=t,e.hasError=!0}finally{qi(e)}}catch(t){throw b(Object.assign(t,{syscall:`unlink`,path:e}))}qa(this,`rename`,e.toString())}function ea(e,t,n=0){return vi(Ii(this,e,{flag:t,mode:n}))}function ta(e,t,n){return vi(Ii(this,e,{flag:t,mode:n,preserveSymlinks:!0}))}function na(e,t){let n=typeof e==`function`,r=n?e(t):e,i=n?`options.buffer()`:`options.buffer`;if(!ArrayBuffer.isView(r))throw Object.assign(/* @__PURE__ */ TypeError(`The "options.buffer" property must be of type function or an instance of Buffer, TypedArray, or DataView. Received ${typeof r}`),{code:`ERR_INVALID_ARG_TYPE`});if(r.byteLength<t)throw Object.assign(/* @__PURE__ */ TypeError(`The property '${i}.byteLength' is smaller than the file size of ${t} bytes. Received ${r.byteLength}`),{code:`ERR_INVALID_ARG_VALUE`});return U.Buffer.from(r.buffer,r.byteOffset,t)}function ra(e,t={}){let n={stack:[],error:void 0,hasError:!1};try{let r=Sn(t,null,`r`,420);if(Ci(r.flag)&1)throw S(`EBADF`,`read`,e.toString());let i=Ki(n,typeof e==`number`?yi(this,e):Ii(this,e.toString(),{flag:r.flag,mode:420,preserveSymlinks:!1}),!1),{size:a}=i.stat(),o=typeof t==`object`&&t?t.buffer:void 0,s=o===void 0?U.Buffer.alloc(a):na(o,a);return i.readSync(s,0,a,0),r.encoding?s.toString(r.encoding):s}catch(e){n.error=e,n.hasError=!0}finally{qi(n)}}function ia(e,t,n={}){let r={stack:[],error:void 0,hasError:!1};try{let i=Sn(n,`utf8`,`w+`,420),a=Ci(i.flag);if(!(a&1||a&2))throw new x(y.EINVAL,`Flag passed to writeFile must allow for writing`);if(typeof t!=`string`&&!i.encoding)throw new x(y.EINVAL,`Encoding not specified`);let o=typeof t==`string`?U.Buffer.from(t,i.encoding):new Uint8Array(t.buffer,t.byteOffset,t.byteLength);if(!o)throw new x(y.EINVAL,`Data not specified`);Ki(r,typeof e==`number`?yi(this,e):Ii(this,e.toString(),{flag:a,mode:i.mode}),!1).writeSync(o,0,o.byteLength,0),qa(this,`change`,e.toString())}catch(e){r.error=e,r.hasError=!0}finally{qi(r)}}function aa(e,t,n={}){let r=Sn(n,`utf8`,`a+`,420),i=Ci(r.flag);if(!(i&1024))throw new x(y.EINVAL,`Flag passed to appendFile must allow for appending`);if(typeof t!=`string`&&!r.encoding)throw new x(y.EINVAL,`Encoding not specified`);let a=typeof t==`string`?U.Buffer.from(t,r.encoding):new Uint8Array(t.buffer,t.byteOffset,t.byteLength),o=typeof e==`number`?yi(this,e):Ii(this,j.call(this,e),{flag:i,mode:r.mode});o.writeSync(a,0,a.byteLength),typeof o!=`number`&&o.closeSync()}function oa(e,t){let n=yi(this,e).stat();return t?.bigint?new Un(n):new Hn(n)}function sa(e){yi(this,e).closeSync(),bi(this,e)}function ca(e,t=0){if(t||=0,t<0)throw new x(y.EINVAL);yi(this,e).truncateSync(t)}function la(e){yi(this,e).syncSync()}function ua(e){yi(this,e).datasyncSync()}function da(e,t,n,r,i){let a,o,s,c;if(typeof t==`string`){c=typeof n==`number`?n:null;let e=typeof r==`string`?r:`utf8`;o=0,a=U.Buffer.from(t,e),s=a.byteLength}else a=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),o=n,s=r,c=typeof i==`number`?i:null;let l=yi(this,e);c??=l.position;let u=l.writeSync(a,o,s,c);return qa(this,`change`,l.path),u}function fa(e,t,n,r,i){let a=yi(this,e),o=typeof n==`object`?n.offset:n;if(typeof n==`object`&&(r=n.length,i=n.position),i&&i>2**53-1)throw S(`EINVAL`);return typeof i==`bigint`&&(i=Number(i)),i=Number.isSafeInteger(i)?i:a.position,a.readSync(t,o,r,i)}function pa(e,t,n){yi(this,e).chownSync(t,n)}function ma(e,t){let n=_n(t,-1);if(n<0)throw new x(y.EINVAL,`Invalid mode.`);yi(this,e).chmodSync(n)}function ha(e,t,n){yi(this,e).utimesSync(xn(t),xn(n))}function ga(e){let t={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e);let{fs:n,cache:r,path:i}=W(this,e,!0),a=r.statSync(i,{path:e,syscall:`rmdir`});if(!z(a))throw S(`ENOTDIR`,`rmdir`,e);ur(this,r.statSync(N(i),{path:e,syscall:`rmdir`}),a,{syscall:`rmdir`,path:e}),Ki(t,r.lockSync(N(i),`rw`),!1),Qr(n,`rmdirSync`,e)(i),r.remove(i),qa(this,`rename`,e.toString())}catch(e){t.error=e,t.hasError=!0}finally{qi(t)}}function _a(e,t){t=typeof t==`object`?t:{mode:t};let n=_n(t?.mode,511);return Ri.call(this,e,{...t,mode:n})}function va(e,t){t=typeof t==`object`?t:{encoding:t},e=j.call(this,e);let n=[],r=zi.call(this,e,t??void 0);for(let i of r)t?.withFileTypes?n.push(Ui.from(i,t.encoding,e)):t?.encoding==`buffer`?n.push(U.Buffer.from(i.path)):n.push(i.path);return n}function ya(e,t){return Vi.call(this,e,t)}function ba(e,t,n=`file`){let r={stack:[],error:void 0,hasError:!1};try{if(![`file`,`dir`,`junction`].includes(n))throw TypeError(`Invalid symlink type: `+n);t=j.call(this,t);let i=Ki(r,Ii(this,t,{flag:`wx`,mode:420}),!1);i.writeSync(v(j.call(this,e,!0))),i.chmodSync(41471)}catch(e){r.error=e,r.hasError=!0}finally{qi(r)}}function xa(e,t){let n=U.Buffer.from(Li.call(this,e)),r=typeof t==`object`?t?.encoding:t;return r==`buffer`?n:n.toString(r??`utf-8`)}function Sa(e,t,n){let r={stack:[],error:void 0,hasError:!1};try{Ki(r,Ii(this,e,{flag:`r+`,mode:0}),!1).chownSync(t,n)}catch(e){r.error=e,r.hasError=!0}finally{qi(r)}}function Ca(e,t,n){let r=ta.call(this,e,`r+`);pa.call(this,r,t,n),sa.call(this,r)}function wa(e,t){let n;try{n=ea.call(this,e,`r+`)}catch(t){throw b(Object.assign(t,{syscall:`chmod`,path:j.call(this,e)}))}ma.call(this,n,t),sa.call(this,n)}function Ta(e,t){let n=ta.call(this,e,`r+`);ma.call(this,n,t),sa.call(this,n)}function Ea(e,t,n){let r=ea.call(this,e,`r+`);ha.call(this,r,t,n),sa.call(this,r)}function Da(e,t,n){let r=ta.call(this,e,`r+`);ha.call(this,r,t,n),sa.call(this,r)}function Oa(e,t){let n=typeof t==`string`?t:t?.encoding??`utf8`;e=j.call(this,e,!0);let{fullPath:r}=W(this,e);if(n==`utf8`||n==`utf-8`)return r;let i=U.Buffer.from(r,`utf-8`);return n==`buffer`?i:i.toString(n)}function ka(e,t=384){if(P&&!B(this,Xi.call(this,e),t))throw new x(y.EACCES)}function Aa(e,t){e=j.call(this,e);let n;try{n=Zi.call(this,e)}catch(e){if(e.code!=`ENOENT`||!t?.force)throw e}if(n)switch(n.mode&O){case mt:if(t?.recursive)for(let n of va.call(this,e))Aa.call(this,M(e,n),t);ga.call(this,e);break;case ft:case dt:case pt:case ht:$i.call(this,e);break;case gt:case ut:default:throw S(`ENOSYS`,`rm`,e)}}function ja(e,t){let n=typeof t==`object`?t?.encoding:t||`utf8`,r=Tn(e);return _a.call(this,r),n==`buffer`?U.Buffer.from(r):r}function Ma(e,t){let n=Tn(e);_a.call(this,n);let r=()=>Aa(n,{recursive:!0,force:!0});return{path:n,remove:r,[Symbol.dispose]:r}}function Na(e,t,n){if(e=j.call(this,e),t=j.call(this,t),n&&n&1&&Yi.call(this,t))throw S(`EEXIST`,`copyFile`,t);ia.call(this,t,ra.call(this,e,{})),qa(this,`rename`,t.toString())}function Pa(e,t,n){let r=yi(this,e),i=0;for(let e of t)i+=r.readSync(e,0,e.byteLength,n+i);return i}function Fa(e,t,n){let r=yi(this,e),i=0;for(let e of t)i+=r.writeSync(new Uint8Array(e.buffer),0,e.byteLength,n+i);return i}function Ia(e,t){return e=j.call(this,e),new Gi(e,this)}function La(e,t,n){e=j.call(this,e),t=j.call(this,t);let r=Zi.call(this,e);if(n?.errorOnExist&&Yi.call(this,t))throw S(`EEXIST`,`cp`,t);switch(r.mode&O){case mt:if(!n?.recursive)throw S(`EISDIR`,`cp`,e);_a.call(this,t,{recursive:!0});for(let r of va.call(this,e,{withFileTypes:!0}))(!n.filter||n.filter(M(e,r.name),M(t,r.name)))&&La.call(this,M(e,r.name),M(t,r.name),n);break;case dt:if(n?.dereference)Na.call(this,e,t);else{let r=xa.call(this,e,`utf8`);ba.call(this,n?.verbatimSymlinks?r:jn.call(this,N(e),r),t)}break;case ft:Na.call(this,e,t);break;case pt:case ht:case gt:case ut:default:throw S(`ENOSYS`,`cp`,e)}n?.preserveTimestamps&&Ea.call(this,t,r.atime,r.mtime)}function Ra(e,t){e=j.call(this,e);let{fs:n}=W(this,e);return Ai(n,t?.bigint)}function za(e,t={}){e=Array.isArray(e)?e:[e];let n=D(this),{cwd:r=n.pwd,withFileTypes:i=!1,exclude:a=()=>!1,followSymlinks:o=!1}=t,s=jn.call(n,r instanceof URL?r.pathname:r),c=e.map(e=>e.startsWith(`/`)?Pn.call(n,s,e):e),l=c.some(e=>e.includes(`**`)),u=c.map(e=>{let t=e.search(/[*?[\]{]/);if(t===-1)return e;let n=e.lastIndexOf(`/`,t);return n===-1?``:e.slice(0,n)}),d=c.map(Cn);function f(e,t){let r=u.some(e=>t===e||e.startsWith(t+`/`)),i=l||r,a=Zi.call(n,e);return a.isSymbolicLink()?i&&(o||r)&&!!Xi.call(n,e,{throwIfNoEntry:!1})?.isDirectory():i&&a.isDirectory()}let p=[];function m(e){let t=va.call(n,e,{withFileTypes:i,encoding:`utf8`});for(let r of t){let t=M(e,i?r.name:r),o=Pn.call(n,s,t);(typeof a==`function`?a(i?r:o):a.some(e=>zn(e,o)))||(f(t,o)&&m(t),d.some(e=>e.test(o))&&p.push(i?r:o))}}return m(s),p}const Ba=Xi;var Va=class extends u.default{_context;path;off(e,t,n,r){return super.off(e,t,n,r)}removeListener(e,t,n,r){return super.removeListener(e,t,n,r)}constructor(e,t){super(),this._context=e,this.path=t}setMaxListeners(){throw S(`ENOSYS`,`Watcher.setMaxListeners`)}getMaxListeners(){throw S(`ENOSYS`,`Watcher.getMaxListeners`)}prependListener(){throw S(`ENOSYS`,`Watcher.prependListener`)}prependOnceListener(){throw S(`ENOSYS`,`Watcher.prependOnceListener`)}rawListeners(){throw S(`ENOSYS`,`Watcher.rawListeners`)}ref(){return this}unref(){return this}},Ha=class extends Va{options;realpath;constructor(e,t,n){let r=D(e);super(r,t),this.options=n,this.realpath=M(r.root,t),Ga(this.realpath,this)}close(){super.emit(`close`),Ka(this.realpath,this)}[Symbol.dispose](){this.close()}},Ua=class extends Va{options;intervalId;previous;constructor(e,t,n){super(e,t),this.options=n,this.start()}onInterval(){try{let e=Ba.call(this._context,this.path);Wn(this.previous,e)||(this.emit(`change`,e,this.previous),this.previous=e)}catch(e){this.emit(`error`,e)}}start(){let e=this.options.interval||5e3;try{this.previous=Ba.call(this._context,this.path)}catch(e){this.emit(`error`,e);return}this.intervalId=setInterval(this.onInterval.bind(this),e),!this.options.persistent&&typeof this.intervalId==`object`&&this.intervalId.unref()}stop(){this.intervalId&&=(clearInterval(this.intervalId),void 0),this.removeAllListeners()}};const Wa=/* @__PURE__ */ new Map;function Ga(e,t){let n=j(e);Wa.getOrInsertComputed(n,()=>/* @__PURE__ */ new Set).add(t)}function Ka(e,t){let n=j(e);Wa.has(n)&&(Wa.get(n).delete(t),Wa.get(n).size===0&&Wa.delete(n))}function qa(e,t,n){let r=D(e);r&&(n=M(r.root??`/`,n)),n=j.call(e,n);for(let e=n;;e=N(e)){let r=Wa.get(e);if(r)for(let i of r)i.emit(`change`,t,Pn.call(i._context,e,n)||Fn(n));if(e===`/`)break}}var Ja=function(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t},Ya=(function(e){return function(t){function n(n){t.error=t.hasError?new e(n,t.error,`An error was suppressed during disposal.`):n,t.hasError=!0}var r,i=0;function a(){for(;r=t.stack.pop();)try{if(!r.async&&i===1)return i=0,t.stack.push(r),Promise.resolve().then(a);if(r.dispose){var e=r.dispose.call(r.value);if(r.async)return i|=2,Promise.resolve(e).then(a,function(e){return n(e),a()})}else i|=1}catch(e){n(e)}if(i===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return a()}})(typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r});async function G(e,t,n,r){if(t=jn.call(e,t),!qn)try{let i=ki(t,e),a=await i.cache.stat(i.path);return!ir(a)||n?{...i,fullPath:t,stats:a}:await G(e,jn.call(e,N(t),await Za.call(e,t)),n,r)}catch{}let{base:i,dir:a}=Rn(t),o={syscall:`stat`,path:t,...r},s=`/`;if(a!=`/`){let t=await G(e,a,!1,r);t.stats&&z(t.stats)&&lr(e,t.stats,o),s=t.fullPath}else if(i&&P){let t=ki(`/`,e);lr(e,await t.cache.stat(t.path),o)}let c=M(s,i),l=ki(c,e),u=await l.cache.stat(l.path).catch(e=>{if(e.code!=`ENOENT`)throw b(Object.assign(e,{syscall:`stat`,path:c,...r}))});return u?!ir(u)||n?{...l,fullPath:c,stats:u}:await G(e,jn.call(e,s,await Za.call(e,c)),!1,r):{...l,fullPath:c}}async function Xa(e,t,n){t=j.call(e,t);let r=_n(n.mode,420),i=Ci(n.flag),a={syscall:`open`,path:t},{fs:o,cache:s,path:c,stats:l}=await G(e,t,n.preserveSymlinks,a);if(!l){let u={stack:[],error:void 0,hasError:!1};try{if(!(i&64))throw S(`ENOENT`,a);let d=N(c),f=await s.stat(d,a);if(P&&!B(e,f,3))throw S(`EACCES`,`open`,N(t));if(!z(f))throw S(`ENOTDIR`,`open`,N(t));if(!n.allowDirectory&&z({mode:r}))throw S(`EISDIR`,`open`,t);if(Ja(u,await s.lock(d,`rw`,f),!1),l=await s.stat(c).catch(()=>void 0),!l){let{euid:n,egid:a}=D(e).credentials,l=await o.createFile(c,{mode:r,uid:f.mode&2048?f.uid:n,gid:f.mode&1024?f.gid:a});return qa(e,`rename`,t),new _i(e,t,c,i,s.ref(c,l))}}catch(e){u.error=e,u.hasError=!0}finally{Ya(u)}}if(P&&!B(e,l,Ti(i)))throw S(`EACCES`,a);if(i&128)throw S(`EEXIST`,a);if(!n.allowDirectory&&z({mode:r}))throw S(`EISDIR`,`open`,t);let u=new _i(e,t,c,i,s.ref(c,l));return i&512&&await u.truncate(0),u}async function Za(e){e=j.call(this,e);let t={syscall:`readlink`,path:e},{fs:n,stats:r,path:i}=await G(this,e,!0,t);if(!r)throw S(`ENOENT`,t);if(P&&!B(this,r,4))throw S(`EACCES`,t);if(!ir(r))throw S(`EINVAL`,t);let a=r.size,o=new Uint8Array(a);return await n.read(i,o,0,a),ce(o)}async function Qa(e,t={}){let n=j.call(this,e),{euid:r,egid:i}=D(this).credentials,{mode:a=511,recursive:o}=t,s={syscall:`mkdir`,path:n},{fullPath:c}=await G(this,N(n),!1,s),{fs:l,cache:u,path:d}=ki(M(c,Fn(n)),this,s),f=c!=N(n),p,m=async(e,t)=>{let n={stack:[],error:void 0,hasError:!1};try{let c=N(t),h=o&&c!=`/`?await m(N(e),c):await u.stat(c,s);if(Ja(n,await u.lock(c,`rw`,h),!1),o){let n=await u.stat(t).catch(()=>null);if(n){let r=ir(n)?(await G(this,e,!1,s)).stats:n;if(!r)throw S(`ENOENT`,s);if(!z(r))throw S(t==d?`EEXIST`:`ENOTDIR`,s);return n}if(f&&await l.exists(M(c,Fn(e))))throw S(`ENOTDIR`,`mkdir`,e)}if(P&&!B(this,h,3))throw S(`EACCES`,`mkdir`,e);let g=await l.mkdir(t,{mode:a,uid:h.mode&2048?h.uid:r,gid:h.mode&1024?h.gid:i}).catch(me({syscall:`mkdir`,path:e}));return o&&(p??=e),qa(this,`rename`,e),g}catch(e){n.error=e,n.hasError=!0}finally{Ya(n)}};return await m(n,d),p}async function $a(e,t={}){e=j.call(this,e);let n={syscall:`scandir`,path:e},{fs:r,cache:i,path:a,stats:o}=await G(this,e,!1,n);if(!o)throw S(`ENOENT`,n);if(P&&!B(this,o,4))throw S(`EACCES`,n);if(!z(o))throw S(`ENOTDIR`,n);let s;{let e={stack:[],error:void 0,hasError:!1};try{Ja(e,await i.lock(a,`ro`,o),!1),s=await r.readdir(a)}catch(t){e.error=t,e.hasError=!0}finally{Ya(e)}}let c=[],l=async e=>{let o=await i.stat(M(a,e),n).catch(e=>{if(e.code!=`ENOENT`)throw e});if(!o)return;let s=new Yr;if(s.ino=o.ino,s.type=qr(o.mode),s.path=e,s.name=Fn(e),c.push(s),!t.recursive||!z(o))return;let u=await r.readdir(M(a,e));for(let t of u)await l(M(e,t))};return await Promise.all(s.map(l)),c}async function eo(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`rename`,path:e,dest:t},i=await G(this,e,!0,r),a=await G(this,t,!0,r);if(i.fs.uuid!==a.fs.uuid)throw S(`EXDEV`,r);if(a.path.startsWith(i.path+`/`))throw S(`EINVAL`,r);if(!i.stats)throw S(`ENOENT`,r);let o=N(i.path),s=N(a.path),c=await i.cache.stat(o,r),l=await i.cache.stat(s,r),u=await i.cache.stat(a.path,r).catch(e=>{if(e.code==`ENOENT`)return null;throw e});if(ur(this,c,i.stats,r),u&&ur(this,l,u,r),P&&!B(this,l,3)||P&&z(i.stats)&&o!=s&&!B(this,i.stats,2))throw S(`EACCES`,r);if(u&&!z(i.stats)&&z(u))throw S(`EISDIR`,r);if(u&&z(i.stats)&&!z(u))throw S(`ENOTDIR`,r);let d=[[o,c],[s,l]];c.ino>l.ino&&d.reverse(),Ja(n,await i.cache.lock(d[0][0],`rw`,d[0][1]),!1),Ja(n,c.ino==l.ino?null:await i.cache.lock(d[1][0],`rw`,d[1][1]),!1),await i.fs.rename(i.path,a.path),i.cache.rename(i.path,a.path),qa(this,`rename`,e),qa(this,`rename`,t)}catch(e){n.error=e,n.hasError=!0}finally{Ya(n)}}async function to(e,t){let n={stack:[],error:void 0,hasError:!1};try{e=j.call(this,e),t=j.call(this,t);let r={syscall:`link`,path:e,dest:t},{fs:i,cache:a,path:o}=await G(this,e,!0,r),s=await G(this,t,!0,r);if(i.uuid!=s.fs.uuid)throw S(`EXDEV`,r);let c=await a.stat(o,r);if(P){if(!B(this,c,4))throw S(`EACCES`,r);let e=await a.stat(N(o),r);if(!B(this,e,4))throw S(`EACCES`,r);let t=await a.stat(N(s.path),r);if(!B(this,t,2))throw S(`EACCES`,r)}Ja(n,await a.lock(N(s.path),`rw`),!1),await i.link(o,s.path),a.link(o,s.path)}catch(e){n.error=e,n.hasError=!0}finally{Ya(n)}}async function no(e,t){e=j.call(this,e);let n={syscall:t?`lstat`:`stat`,path:e},r;if(!t)r=(await G(this,e,!1,n)).stats;else{let{base:t,dir:i}=Rn(e),a=await G(this,i,!1,n);a.stats&&z(a.stats)&&lr(this,a.stats,n);let{root:o,mounts:s}=D(this),c=t&&s.get(M(o,a.fullPath,t)),l=c||a.fs,u=c?`/`:M(a.path,t);r=await fi(l).stat(u).catch(me(n))}if(!r)throw S(`ENOENT`,n);return r}var ro=class extends u.default{input;output;terminal;line=``;_cursor=0;get cursor(){return this._cursor}_buffer=``;_closed=!1;_paused=!1;_prompt=``;_history=[];_historyIndex=-1;_currentLine=``;constructor(e,t,n,r=!1){super(),this.input=e,this.output=t,this.terminal=r,this.input.on(`data`,this._onData),this.input.on(`end`,this.close.bind(this)),this.input.on(`close`,this.close.bind(this))}_onData=e=>{if(!(this._paused||this._closed)){this._buffer+=typeof e==`string`?e:e.toString(`utf8`);for(let e=this._buffer.indexOf(`
|
|
4
4
|
`);e>=0;e=this._buffer.indexOf(`
|
|
5
5
|
`)){let t=this._buffer.substring(0,e);t.endsWith(`\r`)&&(t=t.substring(0,t.length-1)),this._buffer=this._buffer.substring(e+1),this.line=t,t.trim()&&!t.trim().match(/^\s*$/)&&this._history.at(-1)!=t&&(this._history.push(t),this._historyIndex=this._history.length,this.emit(`history`,this._history)),this.emit(`line`,t)}}};close(){if(!this._closed){if(this._closed=!0,this.input?.removeAllListeners?.(),this._buffer.length){let e=this._buffer;this._buffer=``,this.line=e,this.emit(`line`,e)}this.emit(`history`,this._history),this.emit(`close`),this.removeAllListeners()}}pause(){return this._paused?this:(this._paused=!0,`pause`in this.input&&this.input.pause(),this.emit(`pause`),this)}resume(){return this._paused?(this._paused=!1,`resume`in this.input&&this.input.resume(),this.emit(`resume`),this):this}setPrompt(e){this._prompt=e}getPrompt(){return this._prompt}prompt(e){if(!this.output)return;if(!e){this.output.write(this._prompt);return}let{cols:t}=this.getCursorPos();this.output.write(this._prompt),this._cursor=t}write(e,t){if(!this._closed){if(e){let t=typeof e==`string`?e:e.toString(`utf8`);this._onData(t)}if(t&&this.terminal)switch((t.ctrl?`^`:``)+t.name){case`^c`:this.emit(`SIGINT`);break;case`^z`:this.emit(`SIGTSTP`);break;case`^q`:this.emit(`SIGCONT`);break;case`home`:case`^a`:if(!this.output)return;oo(this.output,-this._cursor,0),this._cursor=0,this._cursor=0;break;case`^e`:case`end`:{if(!this.output)return;let e=this.line.length-this._cursor;if(!e)return;oo(this.output,e,0),this._cursor=this.line.length,this._cursor=this.line.length;break}case`^k`:{if(!this.output||this._cursor>=this.line.length)return;let e=this.line.slice(0,this._cursor);ao(this.output,1),this.line=e;break}case`^u`:{if(!this.output||!this._cursor)return;let e=this.line.slice(this._cursor);ao(this.output,0),oo(this.output,0,0),this.output.write(this._prompt+e),this.line=e,this._cursor=0,this._cursor=0;break}case`^w`:{if(!this.output||!this._cursor)return;let e=this._cursor-1;for(;e>=0&&this.line[e]===` `;)e--;for(;e>=0&&this.line[e]!==` `;)e--;let t=this.line.slice(0,e+1)+this.line.slice(this._cursor),n=e+1;this._renderLine(t),this._cursor=n,this._cursor=n,oo(this.output,-t.length,0),oo(this.output,n,0);break}case`^return`:case`^enter`:this._onData(`
|
|
6
6
|
`);break;case`return`:case`enter`:this._onData((e?typeof e==`string`?e:e.toString(`utf8`):``)+`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e}from"./js-realm-worker-
|
|
1
|
+
import{n as e}from"./js-realm-worker-GUIiBgXJ.js";const t={EACCES:2,EBADF:8,EBUSY:10,EEXIST:20,EINVAL:28,EIO:29,EISDIR:31,ELOOP:32,ENAMETOOLONG:37,ENOENT:44,ENOSPC:51,ENOSYS:52,ENOTDIR:54,ENOTEMPTY:55,EPERM:63,EROFS:69,ETIMEDOUT:73,EXDEV:75},n=4095;function r(e,n){if(n?.errno!==void 0&&n instanceof e.ErrnoError)return n;let r=n?.code,i=typeof r==`string`?t[r]??29:29;return new e.ErrnoError(i)}function i(e){let t=[],n=e;for(;n!==n.mount.root;)t.push(n.name),n=n.parent;let r=e.mount.opts.root.replace(/\/+$/,``);return t.length===0?r||`/`:`${r}/${t.reverse().join(`/`)}`}function a(e){let t=3735928559,n=1103547991;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r);t=Math.imul(t^i,2654435761),n=Math.imul(n^i,1597334677)}return t=Math.imul(t^t>>>16,2246822507)^Math.imul(n^n>>>13,3266489909),n=Math.imul(n^n>>>16,2246822507)^Math.imul(t^t>>>13,3266489909),4294967296*(2097151&n)+(t>>>0)||1}function o(e){let t=e.isSymbolicLink?40960:e.isDirectory?16384:32768,r=e.isDirectory||e.isSymbolicLink?511:438;return t|((e.mode??r)&n||r)}function s(e){if(e!=null)return e instanceof Date?e.getTime():e}function c(e,n){let a=e=>e.mount.opts.bridge;function s(t){try{return t()}catch(t){throw r(e,t)}}function c(e){try{s(e)}catch(e){if(e.errno!==t.ENOSYS)throw e}}function l(e){return{...e?{stat:e}:{},len:0,loaded:!1,dirty:!1,openCount:0}}function u(t,r,i){let a=e.createNode(t,r,o(i),0);return a.node_ops=n.node,a.stream_ops=n.stream,a.live=l(i),a}function d(e){if(e.live.orphan)return{...e.live.stat,size:e.live.len};if(!e.live.stat){let t=s(()=>a(e).lstat(i(e)));e.live.stat=t,e.mode=o(t)}return e.live.stat}function f(e,t){let n=i(e);return n===`/`?`/${t}`:`${n}/${t}`}function p(e){let t=e.live;if(t.loaded)return;let n=s(()=>a(e).readFile(i(e)));t.data=n,t.len=n.length,t.loaded=!0}function m(e,t){let n=e.live,r=n.data??/* @__PURE__ */ new Uint8Array;if(r.length>=t)return r;let i=new Uint8Array(Math.max(t,r.length*2,256));return i.set(r.subarray(0,n.len)),n.data=i,i}function h(e){let t=e.live;if(!t.dirty||!t.data||t.orphan)return;let n=t.data.slice(0,t.len);s(()=>a(e).writeFile(i(e),n)),t.dirty=!1,t.stat=void 0}function g(e,t){let n=e.live;if(n.openCount>0){t>0?p(e):n.loaded=!0;let r=m(e,t);t>n.len&&r.fill(0,n.len,t),n.len=t,n.dirty=!0;return}let r=i(e),o=new Uint8Array(t);if(t>0){let n=s(()=>a(e).readFile(r));o.set(n.subarray(0,Math.min(t,n.length)))}s(()=>a(e).writeFile(r,o)),n.stat=void 0}return{Fs:e,bridgeOf:a,call:s,metadataCall:c,makeNode:u,statOf:d,childPath:f,ensureLoaded:p,ensureCapacity:m,flushNode:h,truncate:g}}function l(e){let{Fs:r,bridgeOf:o,call:c,metadataCall:l,makeNode:u,statOf:d,childPath:f,flushNode:p,truncate:m}=e,{ensureLoaded:h}=e;return{getattr(e){let t=d(e),n=e.live,o=r.isDir(e.mode)?4096:n.loaded?n.len:t.size,s=new Date(t.mtimeMs??0);return{dev:1,ino:t.ino??a(i(e)),mode:e.mode,nlink:1,uid:0,gid:0,rdev:0,size:o,atime:s,mtime:s,ctime:s,blksize:4096,blocks:Math.ceil(o/4096)}},setattr(e,t){if(e.live.orphan){t.mode!==void 0&&t.mode!==null&&(e.mode=e.mode&-4096|t.mode&n),t.size!==void 0&&t.size!==null&&m(e,t.size);return}let a=i(e);if(t.mode!==void 0&&t.mode!==null){let r=t.mode&n;r!==(e.mode&n)&&(l(()=>o(e).chmod(a,r)),e.mode=e.mode&-4096|r)}t.size!==void 0&&t.size!==null&&r.isFile(e.mode)&&m(e,t.size);let c=s(t.mtime)??t.timestamp;if(c!==void 0){let n=s(t.atime)??c;p(e),l(()=>o(e).utimes(a,n,c))}e.live.stat=void 0},lookup(e,t){let n=c(()=>o(e).lstat(f(e,t)));return u(e,t,n)},mknod(e,n,i){let a=f(e,n);if(r.isDir(i)){c(()=>o(e).mkdir(a));let t=i&4077;t!==493&&l(()=>o(e).chmod(a,t))}else if(r.isFile(i))c(()=>o(e).writeFile(a,/* @__PURE__ */ new Uint8Array));else throw new r.ErrnoError(t.EPERM);let s=u(e,n,{isFile:r.isFile(i),isDirectory:r.isDir(i),isSymbolicLink:!1,size:0,mode:i,mtimeMs:Date.now()});return s.live.stat=void 0,s},rename(e,t,n){let a=i(e),s=f(t,n);p(e),c(()=>o(e).rename(a,s));try{let i=r.lookupNode?.(t,n);i&&i!==e&&r.hashRemoveNode?.(i)}catch{}e.name=n,e.live.stat=void 0},unlink(e,t){let n;try{let i=r.lookupNode?.(e,t);i&&i.live?.openCount>0&&r.isFile(i.mode)&&(n=i)}catch{}n&&(d(n),h(n)),c(()=>o(e).unlink(f(e,t))),n&&(n.live.orphan=!0)},rmdir(e,t){c(()=>o(e).rmdir(f(e,t)))},readdir(e){return[`.`,`..`,...c(()=>o(e).readdir(i(e)))]},symlink(e,t,n){let r=f(e,t);return c(()=>o(e).symlink(n,r)),u(e,t,{isFile:!1,isDirectory:!1,isSymbolicLink:!0,size:n.length})},readlink(e){if(!r.isLink(e.mode))throw new r.ErrnoError(t.EINVAL);return c(()=>o(e).readlink(i(e)))}}}function u(e){let{Fs:n,statOf:r,ensureLoaded:i,ensureCapacity:a,flushNode:o}=e;return{open(e){n.isFile(e.node.mode)&&e.node.live.openCount++},dup(e){n.isFile(e.node.mode)&&e.node.live.openCount++},close(e){let t=e.node;if(!n.isFile(t.mode))return;let r=t.live;if(r.openCount=Math.max(0,r.openCount-1),!(r.openCount>0))try{o(t)}finally{r.data=void 0,r.len=0,r.loaded=!1}},read(e,r,a,o,s){let c=e.node;if(n.isDir(c.mode))throw new n.ErrnoError(t.EISDIR);i(c);let l=c.live;if(s>=l.len||o<=0)return 0;let u=Math.min(o,l.len-s);return new Uint8Array(r.buffer,r.byteOffset+a,u).set(l.data.subarray(s,s+u)),u},write(e,r,o,s,c){let l=e.node;if(n.isDir(l.mode))throw new n.ErrnoError(t.EISDIR);if(s<=0)return 0;i(l);let u=l.live,d=c+s,f=a(l,d);return c>u.len&&f.fill(0,u.len,c),f.set(new Uint8Array(r.buffer,r.byteOffset+o,s),c),u.len=Math.max(u.len,d),u.dirty=!0,s},llseek(e,i,a){let o=i;if(a===1)o+=e.position;else if(a===2&&n.isFile(e.node.mode)){let t=e.node.live;o+=t.loaded?t.len:r(e.node).size}if(o<0)throw new n.ErrnoError(t.EINVAL);return o},fsync(e){o(e.node)}}}function d(e){let n=/* @__PURE__ */ new Set,r={},i=c(e,r),a=l(i),o=u(i);return r.node=a,r.stream=o,{mounts:n,node_ops:a,stream_ops:o,mount(r){let a=i.call(()=>r.opts.bridge.stat(r.opts.root));if(!a.isDirectory)throw new e.ErrnoError(t.ENOTDIR);let o=i.makeNode(null,`/`,a);return n.add(r),o}}}function f(e,t){return!!t&&e.mounts.has(t.mount)}function p(e,t){for(let n of e.nameTable??[])for(let a=n;a;a=a.name_next??null)if(f(t,a)&&a.live.dirty&&a.live.data)try{let e=a.live.data.slice(0,a.live.len);a.mount.opts.bridge.writeFile(i(a),e),a.live.dirty=!1}catch(t){throw r(e,t)}}function m(e,t){let n=e.nameTable??[],r=[];for(let e of n)for(let n=e;n;n=n.name_next??null){if(!f(t,n))continue;let e=n.live;e.stat=void 0,e.openCount===0?n!==n.mount.root&&r.push(n):e.loaded&&!e.dirty&&(e.data=void 0,e.len=0,e.loaded=!1)}if(e.hashRemoveNode)for(let t of r)e.hashRemoveNode(t)}function h(e){let t=[...new Set(e.map(e=>e.replace(/\/+$/,``)||`/`))].sort();return t.filter(e=>!t.some(t=>t!==e&&(t===`/`||e.startsWith(`${t}/`))))}function g(e){if(e instanceof Error)return e.message;let t=e?.errno;return typeof t==`number`?`errno ${t}`:String(e)}function _(e,t,n,r){if(typeof e.filesystems!=`object`||!e.filesystems)throw Error(`the module was linked without filesystem support, so the VFS cannot be mounted (link it with -sFORCE_FILESYSTEM=1)`);let i=e.filesystems.SLICC_LIVE_FS??d(e);e.filesystems.SLICC_LIVE_FS=i;let a=[];for(let o of h(n))if(o!==`/`)try{e.mkdirTree(o),e.mount(i,{root:o,bridge:t},o),a.push(o)}catch(e){r(`live VFS mount of ${o} failed: ${g(e)}`)}return{plugin:i,mounted:a}}const v=/* @__PURE__ */ new Set([`dev`,`proc`]),y=[`/usr`,`/bin`],b=[`writeFile`,`mkdir`,`rm`,`rename`,`unlink`,`rmdir`,`symlink`,`chmod`,`utimes`];function x(t,n){let r={...t};for(let i of b){let a=t[i];r[i]=(...r)=>{n.wasUsed()&&e(n,t);try{a.apply(t,r)}finally{n.invalidate()}}}return r}function S(e,t){let n;try{n=e.readdir(`/`)}catch(e){return t(`cannot list the VFS root, nothing mounted: ${String(e)}`),[]}let r=n.filter(e=>e&&!e.includes(`/`)&&!v.has(e)).map(e=>`/${e}`);for(let e of y)r.includes(e)||r.push(e);let i=[];for(let t of r)try{e.stat(t).isDirectory&&i.push(t)}catch{}return i}function C(t,n,r={}){let{bridge:i,syncFs:a,warn:o}=n;a.wasUsed()&&e(a,i);let{plugin:s,mounted:c}=_(t,x(i,a),S(i,o),o);try{t.chdir(r.cwd??n.cwd)}catch(e){o(`cannot chdir to ${r.cwd??n.cwd}: ${String(e)}`)}return{mounted:c,flush:()=>p(t,s),invalidate:()=>m(t,s)}}export{C as mountVfsIntoEmscripten};
|