@themartiancompany/fs 0.0.18 → 0.0.19
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/AUTHORS.rst +43 -0
- package/dist/fs/fs-worker.js +1 -1
- package/dist/fs/fs.js +1 -1
- package/eslint.config.mjs +2 -2
- package/fs +31 -18
- package/package.json +14 -10
package/AUTHORS.rst
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
..
|
|
2
|
+
SPDX-License-Identifier: AGPL-3.0-or-later
|
|
3
|
+
|
|
4
|
+
-------------------------------------------------------
|
|
5
|
+
Copyright © 2024, 2025, 2026
|
|
6
|
+
Pellegrino Prevete
|
|
7
|
+
|
|
8
|
+
All rights reserved
|
|
9
|
+
-------------------------------------------------------
|
|
10
|
+
|
|
11
|
+
This program is free software: you can redistribute it
|
|
12
|
+
and/or modify it under the terms of the
|
|
13
|
+
GNU Affero General Public License as published by
|
|
14
|
+
the Free Software Foundation, either version 3 of the
|
|
15
|
+
License, or (at your option) any later version.
|
|
16
|
+
|
|
17
|
+
This program is distributed in the hope that it will
|
|
18
|
+
be useful, but WITHOUT ANY WARRANTY; without even the
|
|
19
|
+
implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
20
|
+
PARTICULAR PURPOSE.
|
|
21
|
+
See the GNU Affero General Public License
|
|
22
|
+
for more details.
|
|
23
|
+
|
|
24
|
+
You should have received a copy of the
|
|
25
|
+
GNU Affero General Public License
|
|
26
|
+
along with this program.
|
|
27
|
+
If not, see <https://www.gnu.org/licenses/>.
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
=============================================================
|
|
31
|
+
The Martian Company Javascript File System module Authors
|
|
32
|
+
=============================================================
|
|
33
|
+
|
|
34
|
+
* Pellegrino Prevete
|
|
35
|
+
* eth-mail
|
|
36
|
+
<dvorak@0x87003Bd6C074C713783df04f36517451fF34CBEf>
|
|
37
|
+
* e-mail
|
|
38
|
+
<pellegrinoprevete@gmail.com>
|
|
39
|
+
* Truocolo
|
|
40
|
+
* eth-mail
|
|
41
|
+
<truocolo@0x6E5163fC4BFc1511Dbe06bB605cc14a3e462332b>
|
|
42
|
+
* e-mail
|
|
43
|
+
<truocolo@aol.com>
|
package/dist/fs/fs-worker.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{var e={314(e,r,t){const n=t(10);_sync_agent=n.startSyncAgent,e.exports={_sync_agent},_sync_agent()},10(e,r,t){const n=t(516),a=t(554),o=t(12);function i(e){let r;return void 0===e&&(e="fs-worker.js"),r=new a(e),r}_file=o.file,_read_stream_create=function(e,r){return _file(e).createReader()};const s=(void 0!==(c=n)&&""!=c&&c!={}||(c=t(516)),function(e){const r=n.copySync;return _return=r.apply(null,[e]).unwrap(),_return});var c;e.exports=n,e.exports.copyFile=n.copy,e.exports.copyFileSync=s,e.exports.cp=n.copy,e.exports.cpSync=s,e.exports.fsWorkerNew=i,e.exports.fsWorkerStart=async function(e,r,t){let a,o,s,c;return void 0===e&&(e="fs-worker.js"),"Number"!=typeof r&&(r=10485760),"Number"!=typeof r&&(t=10485760),o=n.connectSyncAgent,c=i(e),s={worker:c,bufferLength:r,opTimeout:t},a=o(s),a},e.exports.createReadStream=_read_stream_create,e.exports.createWriteStream=function(e,r){return _file(e).createWriter()},e.exports.chmod=async function(e,r){},e.exports.chmodSync=function(e,r){},e.exports.chown=async function(e,r){},e.exports.chownSync=function(e,r){},e.exports.mkdtemp=n.mkTemp,e.exports.mkdtempSync=n.mkTempSync,e.exports.readdirSync=function(e){const r=n.readDirSync;return _return=r.apply(null,[e]).unwrap(),_return},e.exports.renameSync=function(e){const r=n.moveSync;return _return=r.apply(null,e).unwrap(),_return},e.exports.rmSync=function(e){const r=n.removeSync;return _return=r.apply(null,e).unwrap(),_return}},12(e,r){!function(e){"use strict";var r,t,n,a,o,i,s,c,u,l,f,y,h=e=>{throw TypeError(e)},w=(e,r,t)=>r.has(e)||h("Cannot "+t),d=(e,r,t)=>(w(e,r,"read from private field"),t?t.call(e):r.get(e)),p=(e,r,t)=>r.has(e)?h("Cannot add the same private member more than once"):r instanceof WeakSet?r.add(e):r.set(e,t),m=(e,r,t,n)=>(w(e,r,"write to private field"),n?n.call(e,t):r.set(e,t),t);const g="KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHUobil7aWYobj09PSIvIilyZXR1cm57cGFyZW50Om51bGwsbmFtZToiIn07Y29uc3QgZT1uLnNwbGl0KCIvIikuZmlsdGVyKGk9PmkubGVuZ3RoPjApO2lmKGUubGVuZ3RoPT09MCl0aHJvdyBFcnJvcigiSW52YWxpZCBwYXRoIik7Y29uc3QgYT1lW2UubGVuZ3RoLTFdLHI9Ii8iK2Uuc2xpY2UoMCwtMSkuam9pbigiLyIpO3JldHVybntuYW1lOmEscGFyZW50OnJ9fWFzeW5jIGZ1bmN0aW9uIHcobixlKXtjb25zdHtwYXJlbnQ6YSxuYW1lOnJ9PXUobik7aWYoYT09bnVsbClyZXR1cm4gYXdhaXQgbmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCk7Y29uc3QgaT1hLnNwbGl0KCIvIikuZmlsdGVyKHQ9PnQubGVuZ3RoPjApO3RyeXtsZXQgdD1hd2FpdCBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKTtmb3IoY29uc3QgcyBvZiBpKXQ9YXdhaXQgdC5nZXREaXJlY3RvcnlIYW5kbGUocyx7Y3JlYXRlOmUuY3JlYXRlfSk7aWYoZS5pc0ZpbGUpcmV0dXJuIGF3YWl0IHQuZ2V0RmlsZUhhbmRsZShyLHtjcmVhdGU6ZS5jcmVhdGV9KX1jYXRjaCh0KXtpZih0Lm5hbWU9PT0iTm90Rm91bmRFcnJvciIpcmV0dXJuIG51bGw7dGhyb3cgdH19Y29uc3QgZj17fTtzZWxmLm9ubWVzc2FnZT1hc3luYyBuPT57dmFyIGk7Y29uc3R7ZXZ0VHlwZTplLGFyZ3M6YX09bi5kYXRhO2xldCByPWZbYS5maWxlSWRdO3RyeXtsZXQgdDtjb25zdCBzPVtdO2lmKGU9PT0icmVnaXN0ZXIiKXtjb25zdCBsPWF3YWl0IHcoYS5maWxlUGF0aCx7Y3JlYXRlOiEwLGlzRmlsZTohMH0pO2lmKGw9PW51bGwpdGhyb3cgRXJyb3IoYG5vdCBmb3VuZCBmaWxlOiAke2EuZmlsZUlkfWApO3I9YXdhaXQgbC5jcmVhdGVTeW5jQWNjZXNzSGFuZGxlKHttb2RlOmEubW9kZX0pLGZbYS5maWxlSWRdPXJ9ZWxzZSBpZihlPT09ImNsb3NlIilhd2FpdCByLmNsb3NlKCksZGVsZXRlIGZbYS5maWxlSWRdO2Vsc2UgaWYoZT09PSJ0cnVuY2F0ZSIpYXdhaXQgci50cnVuY2F0ZShhLm5ld1NpemUpO2Vsc2UgaWYoZT09PSJ3cml0ZSIpe2NvbnN0e2RhdGE6bCxvcHRzOm99PW4uZGF0YS5hcmdzO3Q9YXdhaXQgci53cml0ZShsLG8pfWVsc2UgaWYoZT09PSJyZWFkIil7Y29uc3R7b2Zmc2V0Omwsc2l6ZTpvfT1uLmRhdGEuYXJncyxnPW5ldyBVaW50OEFycmF5KG8pLGQ9YXdhaXQgci5yZWFkKGcse2F0Omx9KSxjPWcuYnVmZmVyO3Q9ZD09PW8/YzooKGk9Yy50cmFuc2Zlcik9PW51bGw/dm9pZCAwOmkuY2FsbChjLGQpKT8/Yy5zbGljZSgwLGQpLHMucHVzaCh0KX1lbHNlIGU9PT0iZ2V0U2l6ZSI/dD1hd2FpdCByLmdldFNpemUoKTplPT09ImZsdXNoIiYmYXdhaXQgci5mbHVzaCgpO3NlbGYucG9zdE1lc3NhZ2Uoe2V2dFR5cGU6ImNhbGxiYWNrIixjYklkOm4uZGF0YS5jYklkLHJldHVyblZhbDp0fSxzKX1jYXRjaCh0KXtjb25zdCBzPXQ7c2VsZi5wb3N0TWVzc2FnZSh7ZXZ0VHlwZToidGhyb3dFcnJvciIsY2JJZDpuLmRhdGEuY2JJZCxlcnJNc2c6cy5uYW1lKyI6ICIrcy5tZXNzYWdlK2AKYCtKU09OLnN0cmluZ2lmeShuLmRhdGEpfSl9fX0pKCk7Ci8vIyBzb3VyY2VNYXBwaW5nVVJMPW9wZnMtd29ya2VyLUY0UldscWNfLmpzLm1hcAo=",v=typeof self<"u"&&self.Blob&&new Blob([(b=g,Uint8Array.from(atob(b),e=>e.charCodeAt(0)))],{type:"text/javascript;charset=utf-8"});var b;function E(e){let r;try{if(r=v&&(self.URL||self.webkitURL).createObjectURL(v),!r)throw"";const t=new Worker(r,{name:null==e?void 0:e.name});return t.addEventListener("error",()=>{(self.URL||self.webkitURL).revokeObjectURL(r)}),t}catch{return new Worker("data:text/javascript;base64,"+g,{name:null==e?void 0:e.name})}finally{r&&(self.URL||self.webkitURL).revokeObjectURL(r)}}async function S(e,r,t){const n=function(){if(T.length<3){const r=e();return T.push(r),r}{const e=T[k];return k=(k+1)%T.length,e}function e(){const e=new E;let r=0,t={};return e.onmessage=({data:e})=>{var r,n;"callback"===e.evtType?null==(r=t[e.cbId])||r.resolve(e.returnVal):"throwError"===e.evtType&&(null==(n=t[e.cbId])||n.reject(Error(e.errMsg))),delete t[e.cbId]},async function(n,a,o=[]){r+=1;const i=new Promise((e,n)=>{t[r]={resolve:e,reject:n}});return e.postMessage({cbId:r,evtType:n,args:a},o),i}}}();return await n("register",{fileId:e,filePath:r,mode:t}),{read:async(r,t)=>await n("read",{fileId:e,offset:r,size:t}),write:async(r,t)=>await n("write",{fileId:e,data:r,opts:t},[ArrayBuffer.isView(r)?r.buffer:r]),close:async()=>await n("close",{fileId:e}),truncate:async r=>await n("truncate",{fileId:e,newSize:r}),getSize:async()=>await n("getSize",{fileId:e}),flush:async()=>await n("flush",{fileId:e})}}const T=[];let k=0;function A(e){if("/"===e)return{parent:null,name:""};const r=e.split("/").filter(e=>e.length>0);if(0===r.length)throw Error("Invalid path");return{name:r[r.length-1],parent:"/"+r.slice(0,-1).join("/")}}async function O(e,r){const{parent:t,name:n}=A(e);if(null==t)return await navigator.storage.getDirectory();const a=t.split("/").filter(e=>e.length>0);try{let e=await navigator.storage.getDirectory();for(const t of a)e=await e.getDirectoryHandle(t,{create:r.create});return r.isFile?await e.getFileHandle(n,{create:r.create}):await e.getDirectoryHandle(n,{create:r.create})}catch(e){if("NotFoundError"===e.name)return null;throw e}}async function F(e){const{parent:r,name:t}=A(e);if(null==r){const e=await navigator.storage.getDirectory();for await(const r of e.keys())await e.removeEntry(r,{recursive:!0});return}const n=await O(r,{create:!1,isFile:!1});if(null!=n)try{await n.removeEntry(t,{recursive:!0})}catch(e){if("NotFoundError"===e.name)return;throw e}}function x(e,r){return`${e}/${r}`.replace("//","/")}function R(e){return new W(e)}r=new WeakMap,t=new WeakMap,n=new WeakMap;let W=class e{constructor(e){p(this,r),p(this,t),p(this,n),m(this,r,e);const{parent:a,name:o}=A(e);m(this,t,o),m(this,n,a)}get kind(){return"dir"}get name(){return d(this,t)}get path(){return d(this,r)}get parent(){return null==d(this,n)?null:R(d(this,n))}async create(){return await O(d(this,r),{create:!0,isFile:!1}),R(d(this,r))}async exists(){return await O(d(this,r),{create:!1,isFile:!1})instanceof FileSystemDirectoryHandle}async remove(e={}){for(const r of await this.children())try{await r.remove(e)}catch(e){console.warn(e)}try{await F(d(this,r))}catch(e){console.warn(e)}}async children(){const e=await O(d(this,r),{create:!1,isFile:!1});if(null==e)return[];const t=[];for await(const n of e.values())t.push(("file"===n.kind?P:R)(x(d(this,r),n.name)));return t}async copyTo(r){if(!await this.exists())throw Error(`dir ${this.path} not exists`);if(r instanceof e){const e=await r.exists()?R(x(r.path,this.name)):r;return await e.create(),await Promise.all((await this.children()).map(r=>r.copyTo(e))),e}if(r instanceof FileSystemDirectoryHandle)return await Promise.all((await this.children()).map(async e=>{"file"===e.kind?await e.copyTo(await r.getFileHandle(e.name,{create:!0})):await e.copyTo(await r.getDirectoryHandle(e.name,{create:!0}))})),null;throw Error("Illegal target type")}async moveTo(e){const r=await this.copyTo(e);return await this.remove(),r}};const Z=new Map;function P(e,r="rw"){if("rw"===r){const t=Z.get(e)??new z(e,r);return Z.set(e,t),t}return new z(e,r)}async function L(e,r,t={overwrite:!0}){if(r instanceof z)return void await L(e,await r.stream(),t);const n=await(e instanceof z?e:P(e,"rw")).createWriter();try{if(t.overwrite&&await n.truncate(0),r instanceof ReadableStream){const e=r.getReader();for(;;){const{done:r,value:t}=await e.read();if(r)break;await n.write(t)}}else await n.write(r)}catch(e){throw e}finally{await n.close()}}let I=0;a=new WeakMap,o=new WeakMap,i=new WeakMap,s=new WeakMap,c=new WeakMap,u=new WeakMap,l=new WeakMap,f=new WeakMap,y=new WeakMap;let z=class e{constructor(e,r){p(this,a),p(this,o),p(this,i),p(this,s),p(this,c),p(this,u,0),p(this,l,async()=>{}),p(this,f,(()=>{let e=null;return()=>(m(this,u,d(this,u)+1),null!=e||(e=new Promise(async(r,t)=>{try{const t=await S(d(this,c),d(this,a),d(this,s));m(this,l,async()=>{null!=e&&(e=null,m(this,u,0),await t.close().catch(console.error))}),r([t,async()=>{m(this,u,d(this,u)-1),!(d(this,u)>0)&&(e=null,await t.close())}])}catch(e){t(e)}})),e)})()),p(this,y,!1),m(this,c,++I),m(this,a,e),m(this,s,{r:"read-only",rw:"readwrite","rw-unsafe":"readwrite-unsafe"}[r]);const{parent:t,name:n}=A(e);if(null==t)throw Error("Invalid path");m(this,i,n),m(this,o,t)}get kind(){return"file"}get path(){return d(this,a)}get name(){return d(this,i)}get parent(){return null==d(this,o)?null:R(d(this,o))}async createWriter(){if("read-only"===d(this,s))throw Error("file is read-only");if(d(this,y))throw Error("Other writer have not been closed");m(this,y,!0);try{const e=new TextEncoder,[r,t]=await d(this,f).call(this);let n=await r.getSize(),a=!1;return{write:async(t,o={})=>{if(a)throw Error("Writer is closed");const i="string"==typeof t?e.encode(t):t,s=o.at??n,c=i.byteLength;return n=s+c,await r.write(i,{at:s})},truncate:async e=>{if(a)throw Error("Writer is closed");await r.truncate(e),n>e&&(n=e)},flush:async()=>{if(a)throw Error("Writer is closed");await r.flush()},close:async()=>{if(a)throw Error("Writer is closed");a=!0,m(this,y,!1),await t()}}}catch(e){throw m(this,y,!1),e}}async createReader(){const[e,r]=await d(this,f).call(this);let t=!1,n=0;return{read:async(r,a={})=>{if(t)throw Error("Reader is closed");const o=a.at??n,i=await e.read(o,r);return n=o+i.byteLength,i},getSize:async()=>{if(t)throw Error("Reader is closed");return await e.getSize()},close:async()=>{t||(t=!0,await r())}}}async text(){return(new TextDecoder).decode(await this.arrayBuffer())}async arrayBuffer(){const e=await O(d(this,a),{create:!1,isFile:!0});return null==e?new ArrayBuffer(0):(await e.getFile()).arrayBuffer()}async stream(){const e=await this.getOriginFile();return null==e?new ReadableStream({pull:e=>{e.close()}}):e.stream()}async getOriginFile(){var e;return null==(e=await O(d(this,a),{create:!1,isFile:!0}))?void 0:e.getFile()}async getSize(){const e=await O(d(this,a),{create:!1,isFile:!0});return null==e?0:(await e.getFile()).size}async exists(){return await O(d(this,a),{create:!1,isFile:!0})instanceof FileSystemFileHandle}async remove(e={}){if(!0===e.force)return await d(this,l).call(this),await F(d(this,a)),void Z.delete(d(this,a));if(d(this,u)>0)throw Error("exists unclosed reader/writer");await F(d(this,a))}async copyTo(r){if(r instanceof e)return r.path===this.path?this:(await L(r,this),r);if(r instanceof W){if(!await this.exists())throw Error(`file ${this.path} not exists`);return await this.copyTo(P(x(r.path,this.name)))}if(r instanceof FileSystemFileHandle)return await(await this.stream()).pipeTo(await r.createWritable()),null;throw Error("Illegal target type")}async moveTo(e){const r=await this.copyTo(e);return await this.remove(),r}};const U="/.opfs-tools-temp-dir";async function Y(e){try{if("file"===e.kind){if(!await e.exists())return!0;const r=await e.createWriter();await r.truncate(0),await r.close(),await e.remove()}else await e.remove();return!0}catch(e){return console.warn(e),!1}}const C=[];let j=!1;(async function(){var e;!0!==globalThis.__opfs_tools_tmpfile_init__&&(globalThis.__opfs_tools_tmpfile_init__=!0,null!=globalThis.FileSystemDirectoryHandle&&null!=globalThis.FileSystemFileHandle&&null!=(null==(e=globalThis.navigator)?void 0:e.storage.getDirectory)&&(setInterval(async()=>{for(const e of await R(U).children()){const r=/^\d+-(\d+)$/.exec(e.name);(null==r||Date.now()-Number(r[1])>2592e5)&&await Y(e)}},6e4),await async function(){if(null==globalThis.localStorage)return;const e="OPFS_TOOLS_EXPIRES_TMP_FILES";j||(j=!0,globalThis.addEventListener("unload",()=>{0!==C.length&&localStorage.setItem(e,`${localStorage.getItem(e)??""},${C.join(",")}`)}));let r=localStorage.getItem(e)??"";for(const e of r.split(","))0!==e.length&&await Y(P(`${U}/${e}`))&&(r=r.replace(e,""));localStorage.setItem(e,r.replace(/,{2,}/g,","))}()))})(),e.dir=R,e.file=P,e.rollfile=function(e,r){let t=P(e),n=0,a=t.createWriter(),o=t.createReader();return{append:async e=>{const t=await a;n+=await t.write(e),n>=r&&await(async e=>{const r=await(await o).read(n,{at:Math.round(.3*n)});n=await e.write(r,{at:0}),await e.truncate(n)})(t)},text:t.text.bind(t),remove:async()=>{await(await o).close(),await(await a).close(),await t.remove()},getSize:async()=>n}},e.tmpfile=function(){const e=`${Math.random().toString().slice(2)}-${Date.now()}`;return C.push(e),P(`${U}/${e}`)},e.write=L,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}(r)},554(e){"use strict";var r=typeof Worker<"u"?Worker:void 0;e.exports=r},516(e,r,t){"use strict";t.r(r),t.d(r,{ABORT_ERROR:()=>O,CURRENT_DIR:()=>Je,NOT_FOUND_ERROR:()=>Ve,ROOT_DIR:()=>He,TIMEOUT_ERROR:()=>F,TMP_DIR:()=>Ke,appendFile:()=>Ar,appendFileSync:()=>gt,assertAbsolutePath:()=>Qe,assertFileUrl:()=>qe,connectSyncAgent:()=>ot,copy:()=>Or,copySync:()=>vt,createFile:()=>dr,createFileSync:()=>ut,deleteTemp:()=>Ir,deleteTempSync:()=>St,downloadFile:()=>Sr,emptyDir:()=>Fr,emptyDirSync:()=>bt,exists:()=>xr,existsSync:()=>Et,generateTempPath:()=>cr,getFileDataByHandle:()=>wr,getSyncMessenger:()=>it,isDirectoryHandle:()=>yr,isFileHandle:()=>fr,isFileHandleLike:()=>hr,isOPFSSupported:()=>Xr,isTempPath:()=>ur,mkTemp:()=>Lr,mkTempSync:()=>Tt,mkdir:()=>pr,mkdirSync:()=>lt,move:()=>Rr,moveSync:()=>ft,pruneTemp:()=>zr,pruneTempSync:()=>kt,readBlobFile:()=>Wr,readBlobFileSync:()=>At,readDir:()=>mr,readDirSync:()=>yt,readFile:()=>gr,readFileSync:()=>ht,readJsonFile:()=>Zr,readJsonFileSync:()=>Ot,readTextFile:()=>Pr,readTextFileSync:()=>Ft,remove:()=>vr,removeSync:()=>wt,setSyncMessenger:()=>st,startSyncAgent:()=>at,stat:()=>br,statSync:()=>dt,toFileSystemHandleLike:()=>lr,unzip:()=>Yr,unzipFromUrl:()=>Cr,unzipSync:()=>xt,uploadFile:()=>jr,writeFile:()=>Er,writeFileSync:()=>mt,zip:()=>Mr,zipFromUrl:()=>Gr,zipSync:()=>Rt});function n(e,r){if(!e)throw new Error("Invariant failed")}function a(e){if("string"!=typeof e)throw new TypeError(`Path must be a string, received "${JSON.stringify(e)}"`)}function o(e,r){if(e.length<=1)return e;let t=e.length;for(let n=e.length-1;n>0&&r(e.charCodeAt(n));n--)t=n;return e.slice(0,t)}function i(e){return 47===e}function s(e){return e=function(e){if("file:"!==(e=e instanceof URL?e:new URL(e)).protocol)throw new TypeError(`URL must be a file URL: received "${e.protocol}"`);return e}(e),decodeURIComponent(e.pathname.replace(/%(?![0-9A-Fa-f]{2})/g,"%25"))}function c(e){e instanceof URL&&(e=s(e)),function(e){a(e),e.length}(e);let r=-1,t=!1;for(let n=e.length-1;n>=1;--n)if(i(e.charCodeAt(n))){if(t){r=n;break}}else t=!0;return-1===r?i(e.charCodeAt(0))?"/":".":o(e.slice(0,r),i)}function u(e,r=""){e instanceof URL&&(e=s(e)),function(e,r){if(a(e),0===e.length)return e;if("string"!=typeof r)throw new TypeError(`Suffix must be a string, received "${JSON.stringify(r)}"`)}(e,r);const t=function(e,r,t=0){let n=!1,a=e.length;for(let o=e.length-1;o>=t;--o)if(r(e.charCodeAt(o))){if(n){t=o+1;break}}else n||(n=!0,a=o+1);return e.slice(t,a)}(e,i),n=o(t,i);return r?function(e,r){if(r.length>=e.length)return e;const t=e.length-r.length;for(let n=r.length-1;n>=0;--n)if(e.charCodeAt(t+n)!==r.charCodeAt(n))return e;return e.slice(0,-r.length)}(n,r):n}function l(e,...r){if(void 0===e)return".";e instanceof URL&&(e=s(e)),(r=e?[e,...r]:r).forEach(e=>a(e));const t=r.filter(e=>e.length>0).join("/");return""===t?".":function(e){e instanceof URL&&(e=s(e)),function(e){a(e),e.length}(e);const r=i(e.charCodeAt(0)),t=i(e.charCodeAt(e.length-1));return e=function(e,r,t,n){let a,o="",i=0,s=-1,c=0;for(let u=0;u<=e.length;++u){if(u<e.length)a=e.charCodeAt(u);else{if(n(a))break;a=47}if(n(a)){if(s===u-1||1===c);else if(s!==u-1&&2===c){if(o.length<2||2!==i||46!==o.charCodeAt(o.length-1)||46!==o.charCodeAt(o.length-2)){if(o.length>2){const e=o.lastIndexOf(t);-1===e?(o="",i=0):(o=o.slice(0,e),i=o.length-1-o.lastIndexOf(t)),s=u,c=0;continue}if(2===o.length||1===o.length){o="",i=0,s=u,c=0;continue}}r&&(o.length>0?o+=`${t}..`:o="..",i=2)}else o.length>0?o+=t+e.slice(s+1,u):o=e.slice(s+1,u),i=u-s-1;s=u,c=0}else 46===a&&-1!==c?++c:c=-1}return o}(e,!r,"/",i),0!==e.length||r||(e="."),e.length>0&&t&&(e+="/"),r?`/${e}`:e}(t)}function f(e){e instanceof URL&&(e=s(e)),a(e);let r=-1,t=0,n=-1,o=!0,c=0;for(let a=e.length-1;a>=0;--a){const s=e.charCodeAt(a);if(i(s)){if(!o){t=a+1;break}}else-1===n&&(o=!1,n=a+1),46===s?-1===r?r=a:1!==c&&(c=1):-1!==r&&(c=-1)}return-1===r||-1===n||0===c||1===c&&r===n-1&&r===t+1?"":e.slice(r,n)}const y=Symbol("Option kind"),h=Symbol("Result kind"),w=Promise.resolve(!0),d=Promise.resolve(!1);function p(e){const r=Object.freeze({[Symbol.toStringTag]:"Option",[y]:"Some",*[Symbol.iterator](){yield e},toString:()=>`Some(${e})`,isSome:()=>!0,isNone:()=>!1,isSomeAnd:r=>r(e),isSomeAndAsync:r=>Promise.resolve(r(e)),isNoneOr:r=>r(e),isNoneOrAsync:r=>Promise.resolve(r(e)),expect:r=>e,unwrap:()=>e,unwrapOr:r=>e,unwrapOrElse:r=>e,unwrapOrElseAsync:r=>Promise.resolve(e),okOr:r=>v(e),okOrElse:r=>v(e),transpose:()=>(T(e),e.isOk()?v(p(e.unwrap())):b(e.unwrapErr())),filter:t=>t(e)?r:m,flatten:()=>(S(e),e),map:r=>p(r(e)),mapOr:(r,t)=>t(e),mapOrElse:(r,t)=>t(e),zip:r=>(S(r),r.isSome()?p([e,r.unwrap()]):m),zipWith:(r,t)=>(S(r),r.isSome()?p(t(e,r.unwrap())):m),unzip(){const r=e;if(!Array.isArray(r)||2!==r.length)throw new TypeError("Option::unzip() requires a 2-element tuple, received "+(Array.isArray(r)?`array with ${r.length} elements`:typeof r));const[t,n]=r;return[p(t),p(n)]},reduce:(t,n)=>(S(t),t.isSome()?p(n(e,t.unwrap())):r),and:e=>(S(e),e),andThen:r=>r(e),andThenAsync:r=>Promise.resolve(r(e)),or:e=>r,orElse:e=>r,orElseAsync:e=>Promise.resolve(r),xor:e=>(S(e),e.isSome()?m:r),inspect:t=>(t(e),r),eq:r=>(S(r),r.isSome()&&r.unwrap()===e)});return r}const m=Object.freeze({[Symbol.toStringTag]:"Option",[y]:"None",*[Symbol.iterator](){},toString:()=>"None",isSome:()=>!1,isNone:()=>!0,isSomeAnd:e=>!1,isSomeAndAsync:e=>d,isNoneOr:e=>!0,isNoneOrAsync:e=>w,expect(e){throw new TypeError(e)},unwrap(){throw new TypeError("Option::unwrap() called on a `None` value")},unwrapOr:e=>e,unwrapOrElse:e=>e(),unwrapOrElseAsync:e=>Promise.resolve(e()),okOr:e=>b(e),okOrElse:e=>b(e()),transpose:()=>v(m),filter:e=>m,flatten:()=>m,map:e=>m,mapOr:(e,r)=>e,mapOrElse:(e,r)=>e(),zip:e=>m,zipWith:(e,r)=>m,unzip:()=>[m,m],reduce:(e,r)=>(S(e),e),and:e=>m,andThen:e=>m,andThenAsync:e=>g,or:e=>(S(e),e),orElse:e=>e(),orElseAsync:e=>Promise.resolve(e()),xor:e=>(S(e),e.isSome()?e:m),inspect:e=>m,eq:e=>(S(e),e===m)}),g=Promise.resolve(m);function v(e){const r=Object.freeze({[Symbol.toStringTag]:"Result",[h]:"Ok",*[Symbol.iterator](){yield e},toString:()=>`Ok(${e})`,isOk:()=>!0,isErr:()=>!1,isOkAnd:r=>r(e),isOkAndAsync:r=>Promise.resolve(r(e)),isErrAnd:e=>!1,isErrAndAsync:e=>d,expect:r=>e,unwrap:()=>e,unwrapOr:r=>e,unwrapOrElse:r=>e,unwrapOrElseAsync:r=>Promise.resolve(e),expectErr(r){throw new TypeError(`${r}: ${e}`)},unwrapErr(){throw new TypeError("Result::unwrapErr() called on an `Ok` value")},intoOk:()=>e,intoErr(){throw new TypeError("Result::intoErr() called on an `Ok` value")},ok:()=>p(e),err:()=>m,transpose:()=>(S(e),e.isSome()?p(v(e.unwrap())):m),map:r=>v(r(e)),mapErr:e=>r,mapOr:(r,t)=>t(e),mapOrElse:(r,t)=>t(e),flatten:()=>(T(e),e),and:e=>(T(e),e),or:e=>r,andThen:r=>r(e),andThenAsync:r=>Promise.resolve(r(e)),orElse:e=>r,orElseAsync:e=>Promise.resolve(r),inspect:t=>(t(e),r),inspectErr:e=>r,eq:r=>(T(r),r.isOk()&&r.unwrap()===e),asOk:()=>r,asErr(){throw new TypeError("Result::asErr() called on an `Ok` value")},andTryAsync(r){try{const t=r(e);return Promise.resolve(t).then(v,b)}catch(e){return Promise.resolve(b(e))}},orTryAsync:e=>Promise.resolve(r)});return r}function b(e){const r=Object.freeze({[Symbol.toStringTag]:"Result",[h]:"Err",*[Symbol.iterator](){},toString:()=>`Err(${e})`,isOk:()=>!1,isErr:()=>!0,isOkAnd:e=>!1,isOkAndAsync:e=>d,isErrAnd:r=>r(e),isErrAndAsync:r=>Promise.resolve(r(e)),expect(r){throw new TypeError(`${r}: ${e}`)},unwrap(){throw new TypeError("Result::unwrap() called on an `Err` value")},unwrapOr:e=>e,unwrapOrElse:r=>r(e),unwrapOrElseAsync:r=>Promise.resolve(r(e)),expectErr:r=>e,unwrapErr:()=>e,intoOk(){throw new TypeError("Result::intoOk() called on an `Err` value")},intoErr:()=>e,ok:()=>m,err:()=>p(e),transpose:()=>p(r),map:e=>r,mapErr:r=>b(r(e)),mapOr:(e,r)=>e,mapOrElse:(r,t)=>r(e),flatten:()=>r,and:e=>r,or:e=>(T(e),e),andThen:e=>r,andThenAsync:e=>Promise.resolve(r),orElse:r=>r(e),orElseAsync:r=>Promise.resolve(r(e)),inspect:e=>r,inspectErr:t=>(t(e),r),eq:r=>(T(r),r.isErr()&&r.unwrapErr()===e),asOk(){throw new TypeError("Result::asOk() called on an `Err` value")},asErr:()=>r,andTryAsync:e=>Promise.resolve(r),orTryAsync(r){try{const t=r(e);return Promise.resolve(t).then(v,b)}catch(e){return Promise.resolve(b(e))}}});return r}function E(e){try{return null===e?"null":void 0===e?"undefined":"object"==typeof e?Object.prototype.toString.call(e):String(e)}catch{return"[unable to stringify]"}}function S(e){if(!function(e){return null!=e&&"object"==typeof e&&y in e}(e))throw new TypeError(`Expected an Option, but received: ${E(e)}`)}function T(e){if(!function(e){return null!=e&&"object"==typeof e&&h in e}(e))throw new TypeError(`Expected a Result, but received: ${E(e)}`)}const k=v(!1),A=v(),O="AbortError",F="TimeoutError";var x=class extends Error{name="FetchError";status;constructor(e,r){super(e),this.status=r}};function R(e,r){const t=function(e){if(e instanceof URL)return e;try{return new URL(e,"undefined"!=typeof location?location.href:void 0)}catch{throw new TypeError(`Invalid URL: ${e}`)}}(e),n=r??{},{retries:a,delay:o,when:i,onRetry:s}=function(e){const{responseType:r,timeout:t,retry:n=0,onProgress:a,onChunk:o}=e;if(null!=r){const e=["text","arraybuffer","blob","json","bytes","stream"];if(!e.includes(r))throw new TypeError(`responseType must be one of ${e.join(", ")} but received ${r}`)}if(null!=t){if("number"!=typeof t)throw new TypeError("timeout must be a number but received "+typeof t);if(t<=0)throw new Error(`timeout must be a number greater than 0 but received ${t}`)}if(null!=a&&"function"!=typeof a)throw new TypeError("onProgress callback must be a function but received "+typeof a);if(null!=o&&"function"!=typeof o)throw new TypeError("onChunk callback must be a function but received "+typeof o);let i,s,c=0,u=0;if("number"==typeof n?c=n:n&&"object"==typeof n&&(c=n.retries??0,u=n.delay??0,i=n.when,s=n.onRetry),!Number.isInteger(c))throw new TypeError(`Retry count must be an integer but received ${c}`);if(c<0)throw new Error(`Retry count must be non-negative but received ${c}`);if("number"==typeof u){if(u<0)throw new Error(`Retry delay must be a non-negative number but received ${u}`)}else if("function"!=typeof u)throw new TypeError("Retry delay must be a number or a function but received "+typeof u);if(null!=i&&!Array.isArray(i)&&"function"!=typeof i)throw new TypeError("Retry when condition must be an array of status codes or a function but received "+typeof i);if(null!=s&&"function"!=typeof s)throw new TypeError("Retry onRetry callback must be a function but received "+typeof s);return{retries:c,delay:u,when:i,onRetry:s}}(n),{abortable:c=!1,responseType:u,timeout:l,onProgress:f,onChunk:y,...h}=n,w=h.signal;let d;c&&(d=new AbortController);const p=(e,r)=>"AbortError"!==e.name&&(i?Array.isArray(i)?e instanceof x&&i.includes(e.status):i(e,r):!(e instanceof x)),m=e=>"function"==typeof o?o(e):o,g=()=>{const e=[];w&&e.push(w),d&&e.push(d.signal),"number"==typeof l&&e.push(function(e){if("function"==typeof AbortSignal.timeout)return AbortSignal.timeout(e);const r=new AbortController,t=function(){const e="The operation timed out.";try{return new DOMException(e,F)}catch{const r=new Error(e);return r.name=F,r}}(),n=setTimeout(()=>{r.abort(t)},e);return"function"==typeof n?.unref&&n.unref(),r.signal}(l)),e.length>0&&(h.signal=1===e.length?e[0]:function(e){if("function"==typeof AbortSignal.any)return AbortSignal.any(e);const r=new AbortController;for(const t of e)if(t.aborted)return r.abort(t.reason),r.signal;const t=e=>{r.abort(e.target.reason)};for(const r of e)r.addEventListener("abort",t);return r.signal.addEventListener("abort",()=>{for(const r of e)r.removeEventListener("abort",t)}),r.signal}(e))},E=async()=>{g();try{const e=await fetch(t,h);return e.ok?await S(e):(e.body?.cancel().catch(()=>{}),b(new x(e.statusText,e.status)))}catch(e){return b(e instanceof Error?e:Z(e))}},S=async e=>{switch(e.body&&(f||y)&&(async e=>{let r,t=0;if(f){const t=e.headers.get("content-length");if(null==t)try{f(b(new Error("No content-length in response headers")))}catch{}else r=Number.parseInt(t,10)}const n=e.clone().body;try{for await(const e of n){if(y)try{y(e)}catch{}if(f&&null!=r){t+=e.byteLength;try{f(v({totalByteLength:r,completedByteLength:t}))}catch{}}}}catch{}})(e),u){case"json":if(null==e.body)return v(null);try{return v(await e.json())}catch{return b(new Error("Response is invalid json while responseType is json"))}case"text":return v(await e.text());case"bytes":return"function"==typeof e.bytes?v(await e.bytes()):v(new Uint8Array(await e.arrayBuffer()));case"arraybuffer":return v(await e.arrayBuffer());case"blob":return v(await e.blob());case"stream":return v(e.body);default:return v(e)}},T=(async()=>{let e,r=0;do{if(r>0){if(d?.signal.aborted)return b(d.signal.reason);const t=m(r);if(t>0&&(await W(t),d?.signal.aborted))return b(d.signal.reason);try{s?.(e,r)}catch{}}const t=await E();if(t.isOk())return t;e=t.unwrapErr(),r++}while(r<=a&&p(e,r));return b(e)})();return c&&d?{abort(e){e instanceof Error?d.abort(e):null!=e?d.abort(Z(e)):d.abort()},get aborted(){return d.signal.aborted},get result(){return T}}:T}function W(e){return new Promise(r=>setTimeout(r,e))}function Z(e){const r=new Error("string"==typeof e?e:String(e));return r.name=O,r.cause=e,r}var P={},L=Uint8Array,I=Uint16Array,z=Int32Array,U=new L([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),Y=new L([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),C=new L([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),j=function(e,r){for(var t=new I(31),n=0;n<31;++n)t[n]=r+=1<<e[n-1];var a=new z(t[30]);for(n=1;n<30;++n)for(var o=t[n];o<t[n+1];++o)a[o]=o-t[n]<<5|n;return{b:t,r:a}},D=j(U,2),M=D.b,G=D.r;M[28]=258,G[258]=28;for(var X=j(Y,0),N=X.b,$=X.r,B=new I(32768),_=0;_<32768;++_){var V=(43690&_)>>1|(21845&_)<<1;V=(61680&(V=(52428&V)>>2|(13107&V)<<2))>>4|(3855&V)<<4,B[_]=((65280&V)>>8|(255&V)<<8)>>1}var H=function(e,r,t){for(var n=e.length,a=0,o=new I(r);a<n;++a)e[a]&&++o[e[a]-1];var i,s=new I(r);for(a=1;a<r;++a)s[a]=s[a-1]+o[a-1]<<1;if(t){i=new I(1<<r);var c=15-r;for(a=0;a<n;++a)if(e[a])for(var u=a<<4|e[a],l=r-e[a],f=s[e[a]-1]++<<l,y=f|(1<<l)-1;f<=y;++f)i[B[f]>>c]=u}else for(i=new I(n),a=0;a<n;++a)e[a]&&(i[a]=B[s[e[a]-1]++]>>15-e[a]);return i},J=new L(288);for(_=0;_<144;++_)J[_]=8;for(_=144;_<256;++_)J[_]=9;for(_=256;_<280;++_)J[_]=7;for(_=280;_<288;++_)J[_]=8;var K=new L(32);for(_=0;_<32;++_)K[_]=5;var Q=H(J,9,0),q=H(J,9,1),ee=H(K,5,0),re=H(K,5,1),te=function(e){for(var r=e[0],t=1;t<e.length;++t)e[t]>r&&(r=e[t]);return r},ne=function(e,r,t){var n=r/8|0;return(e[n]|e[n+1]<<8)>>(7&r)&t},ae=function(e,r){var t=r/8|0;return(e[t]|e[t+1]<<8|e[t+2]<<16)>>(7&r)},oe=function(e){return(e+7)/8|0},ie=function(e,r,t){return(null==r||r<0)&&(r=0),(null==t||t>e.length)&&(t=e.length),new L(e.subarray(r,t))},se=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],ce=function(e,r,t){var n=new Error(r||se[e]);if(n.code=e,Error.captureStackTrace&&Error.captureStackTrace(n,ce),!t)throw n;return n},ue=function(e,r,t,n){var a=e.length,o=n?n.length:0;if(!a||r.f&&!r.l)return t||new L(0);var i=!t,s=i||2!=r.i,c=r.i;i&&(t=new L(3*a));var u=function(e){var r=t.length;if(e>r){var n=new L(Math.max(2*r,e));n.set(t),t=n}},l=r.f||0,f=r.p||0,y=r.b||0,h=r.l,w=r.d,d=r.m,p=r.n,m=8*a;do{if(!h){l=ne(e,f,1);var g=ne(e,f+1,3);if(f+=3,!g){var v=e[(W=oe(f)+4)-4]|e[W-3]<<8,b=W+v;if(b>a){c&&ce(0);break}s&&u(y+v),t.set(e.subarray(W,b),y),r.b=y+=v,r.p=f=8*b,r.f=l;continue}if(1==g)h=q,w=re,d=9,p=5;else if(2==g){var E=ne(e,f,31)+257,S=ne(e,f+10,15)+4,T=E+ne(e,f+5,31)+1;f+=14;for(var k=new L(T),A=new L(19),O=0;O<S;++O)A[C[O]]=ne(e,f+3*O,7);f+=3*S;var F=te(A),x=(1<<F)-1,R=H(A,F,1);for(O=0;O<T;){var W,Z=R[ne(e,f,x)];if(f+=15&Z,(W=Z>>4)<16)k[O++]=W;else{var P=0,I=0;for(16==W?(I=3+ne(e,f,3),f+=2,P=k[O-1]):17==W?(I=3+ne(e,f,7),f+=3):18==W&&(I=11+ne(e,f,127),f+=7);I--;)k[O++]=P}}var z=k.subarray(0,E),j=k.subarray(E);d=te(z),p=te(j),h=H(z,d,1),w=H(j,p,1)}else ce(1);if(f>m){c&&ce(0);break}}s&&u(y+131072);for(var D=(1<<d)-1,G=(1<<p)-1,X=f;;X=f){var $=(P=h[ae(e,f)&D])>>4;if((f+=15&P)>m){c&&ce(0);break}if(P||ce(2),$<256)t[y++]=$;else{if(256==$){X=f,h=null;break}var B=$-254;if($>264){var _=U[O=$-257];B=ne(e,f,(1<<_)-1)+M[O],f+=_}var V=w[ae(e,f)&G],J=V>>4;if(V||ce(3),f+=15&V,j=N[J],J>3&&(_=Y[J],j+=ae(e,f)&(1<<_)-1,f+=_),f>m){c&&ce(0);break}s&&u(y+131072);var K=y+B;if(y<j){var Q=o-j,ee=Math.min(j,K);for(Q+y<0&&ce(3);y<ee;++y)t[y]=n[Q+y]}for(;y<K;++y)t[y]=t[y-j]}}r.l=h,r.p=X,r.b=y,r.f=l,h&&(l=1,r.m=d,r.d=w,r.n=p)}while(!l);return y!=t.length&&i?ie(t,0,y):t.subarray(0,y)},le=function(e,r,t){t<<=7&r;var n=r/8|0;e[n]|=t,e[n+1]|=t>>8},fe=function(e,r,t){t<<=7&r;var n=r/8|0;e[n]|=t,e[n+1]|=t>>8,e[n+2]|=t>>16},ye=function(e,r){for(var t=[],n=0;n<e.length;++n)e[n]&&t.push({s:n,f:e[n]});var a=t.length,o=t.slice();if(!a)return{t:ve,l:0};if(1==a){var i=new L(t[0].s+1);return i[t[0].s]=1,{t:i,l:1}}t.sort(function(e,r){return e.f-r.f}),t.push({s:-1,f:25001});var s=t[0],c=t[1],u=0,l=1,f=2;for(t[0]={s:-1,f:s.f+c.f,l:s,r:c};l!=a-1;)s=t[t[u].f<t[f].f?u++:f++],c=t[u!=l&&t[u].f<t[f].f?u++:f++],t[l++]={s:-1,f:s.f+c.f,l:s,r:c};var y=o[0].s;for(n=1;n<a;++n)o[n].s>y&&(y=o[n].s);var h=new I(y+1),w=he(t[l-1],h,0);if(w>r){n=0;var d=0,p=w-r,m=1<<p;for(o.sort(function(e,r){return h[r.s]-h[e.s]||e.f-r.f});n<a;++n){var g=o[n].s;if(!(h[g]>r))break;d+=m-(1<<w-h[g]),h[g]=r}for(d>>=p;d>0;){var v=o[n].s;h[v]<r?d-=1<<r-h[v]++-1:++n}for(;n>=0&&d;--n){var b=o[n].s;h[b]==r&&(--h[b],++d)}w=r}return{t:new L(h),l:w}},he=function(e,r,t){return-1==e.s?Math.max(he(e.l,r,t+1),he(e.r,r,t+1)):r[e.s]=t},we=function(e){for(var r=e.length;r&&!e[--r];);for(var t=new I(++r),n=0,a=e[0],o=1,i=function(e){t[n++]=e},s=1;s<=r;++s)if(e[s]==a&&s!=r)++o;else{if(!a&&o>2){for(;o>138;o-=138)i(32754);o>2&&(i(o>10?o-11<<5|28690:o-3<<5|12305),o=0)}else if(o>3){for(i(a),--o;o>6;o-=6)i(8304);o>2&&(i(o-3<<5|8208),o=0)}for(;o--;)i(a);o=1,a=e[s]}return{c:t.subarray(0,n),n:r}},de=function(e,r){for(var t=0,n=0;n<r.length;++n)t+=e[n]*r[n];return t},pe=function(e,r,t){var n=t.length,a=oe(r+2);e[a]=255&n,e[a+1]=n>>8,e[a+2]=255^e[a],e[a+3]=255^e[a+1];for(var o=0;o<n;++o)e[a+o+4]=t[o];return 8*(a+4+n)},me=function(e,r,t,n,a,o,i,s,c,u,l){le(r,l++,t),++a[256];for(var f=ye(a,15),y=f.t,h=f.l,w=ye(o,15),d=w.t,p=w.l,m=we(y),g=m.c,v=m.n,b=we(d),E=b.c,S=b.n,T=new I(19),k=0;k<g.length;++k)++T[31&g[k]];for(k=0;k<E.length;++k)++T[31&E[k]];for(var A=ye(T,7),O=A.t,F=A.l,x=19;x>4&&!O[C[x-1]];--x);var R,W,Z,P,L=u+5<<3,z=de(a,J)+de(o,K)+i,j=de(a,y)+de(o,d)+i+14+3*x+de(T,O)+2*T[16]+3*T[17]+7*T[18];if(c>=0&&L<=z&&L<=j)return pe(r,l,e.subarray(c,c+u));if(le(r,l,1+(j<z)),l+=2,j<z){R=H(y,h,0),W=y,Z=H(d,p,0),P=d;var D=H(O,F,0);for(le(r,l,v-257),le(r,l+5,S-1),le(r,l+10,x-4),l+=14,k=0;k<x;++k)le(r,l+3*k,O[C[k]]);l+=3*x;for(var M=[g,E],G=0;G<2;++G){var X=M[G];for(k=0;k<X.length;++k){var N=31&X[k];le(r,l,D[N]),l+=O[N],N>15&&(le(r,l,X[k]>>5&127),l+=X[k]>>12)}}}else R=Q,W=J,Z=ee,P=K;for(k=0;k<s;++k){var $=n[k];if($>255){fe(r,l,R[257+(N=$>>18&31)]),l+=W[N+257],N>7&&(le(r,l,$>>23&31),l+=U[N]);var B=31&$;fe(r,l,Z[B]),l+=P[B],B>3&&(fe(r,l,$>>5&8191),l+=Y[B])}else fe(r,l,R[$]),l+=W[$]}return fe(r,l,R[256]),l+W[256]},ge=new z([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),ve=new L(0),be=function(e,r,t,n,a,o){var i=o.z||e.length,s=new L(n+i+5*(1+Math.ceil(i/7e3))+a),c=s.subarray(n,s.length-a),u=o.l,l=7&(o.r||0);if(r){l&&(c[0]=o.r>>3);for(var f=ge[r-1],y=f>>13,h=8191&f,w=(1<<t)-1,d=o.p||new I(32768),p=o.h||new I(w+1),m=Math.ceil(t/3),g=2*m,v=function(r){return(e[r]^e[r+1]<<m^e[r+2]<<g)&w},b=new z(25e3),E=new I(288),S=new I(32),T=0,k=0,A=o.i||0,O=0,F=o.w||0,x=0;A+2<i;++A){var R=v(A),W=32767&A,Z=p[R];if(d[W]=Z,p[R]=W,F<=A){var P=i-A;if((T>7e3||O>24576)&&(P>423||!u)){l=me(e,c,0,b,E,S,k,O,x,A-x,l),O=T=k=0,x=A;for(var C=0;C<286;++C)E[C]=0;for(C=0;C<30;++C)S[C]=0}var j=2,D=0,M=h,X=W-Z&32767;if(P>2&&R==v(A-X))for(var N=Math.min(y,P)-1,B=Math.min(32767,A),_=Math.min(258,P);X<=B&&--M&&W!=Z;){if(e[A+j]==e[A+j-X]){for(var V=0;V<_&&e[A+V]==e[A+V-X];++V);if(V>j){if(j=V,D=X,V>N)break;var H=Math.min(X,V-2),J=0;for(C=0;C<H;++C){var K=A-X+C&32767,Q=K-d[K]&32767;Q>J&&(J=Q,Z=K)}}}X+=(W=Z)-(Z=d[W])&32767}if(D){b[O++]=268435456|G[j]<<18|$[D];var q=31&G[j],ee=31&$[D];k+=U[q]+Y[ee],++E[257+q],++S[ee],F=A+j,++T}else b[O++]=e[A],++E[e[A]]}}for(A=Math.max(A,F);A<i;++A)b[O++]=e[A],++E[e[A]];l=me(e,c,u,b,E,S,k,O,x,A-x,l),u||(o.r=7&l|c[l/8|0]<<3,l-=7,o.h=p,o.p=d,o.i=A,o.w=F)}else{for(A=o.w||0;A<i+u;A+=65535){var re=A+65535;re>=i&&(c[l/8|0]=u,re=i),l=pe(c,l+1,e.subarray(A,re))}o.i=i}return ie(s,0,n+oe(l)+a)},Ee=function(){for(var e=new Int32Array(256),r=0;r<256;++r){for(var t=r,n=9;--n;)t=(1&t&&-306674912)^t>>>1;e[r]=t}return e}(),Se=function(e,r,t,n,a){if(!a&&(a={l:1},r.dictionary)){var o=r.dictionary.subarray(-32768),i=new L(o.length+e.length);i.set(o),i.set(e,o.length),e=i,a.w=o.length}return be(e,null==r.level?6:r.level,null==r.mem?a.l?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(e.length)))):20:12+r.mem,t,n,a)},Te=function(e,r){var t={};for(var n in e)t[n]=e[n];for(var n in r)t[n]=r[n];return t},ke=function(e,r,t){for(var n=e(),a=e.toString(),o=a.slice(a.indexOf("[")+1,a.lastIndexOf("]")).replace(/\s+/g,"").split(","),i=0;i<n.length;++i){var s=n[i],c=o[i];if("function"==typeof s){r+=";"+c+"=";var u=s.toString();if(s.prototype)if(-1!=u.indexOf("[native code]")){var l=u.indexOf(" ",8)+1;r+=u.slice(l,u.indexOf("(",l))}else for(var f in r+=u,s.prototype)r+=";"+c+".prototype."+f+"="+s.prototype[f].toString();else r+=u}else t[c]=s}return r},Ae=[],Oe=function(){return[L,I,z,U,Y,C,M,N,q,re,B,se,H,te,ne,ae,oe,ie,ce,ue,Ue,xe,Re]},Fe=function(){return[L,I,z,U,Y,C,G,$,Q,J,ee,K,B,ge,ve,H,le,fe,ye,he,we,de,pe,me,oe,ie,be,Se,ze,xe]},xe=function(e){return postMessage(e,[e.buffer])},Re=function(e){return e&&{out:e.size&&new L(e.size),dictionary:e.dictionary}},We=function(e,r,t,n,a,o){var i=function(e,r,t,n){if(!Ae[t]){for(var a="",o={},i=e.length-1,s=0;s<i;++s)a=ke(e[s],a,o);Ae[t]={c:ke(e[i],a,o),e:o}}var c=Te({},Ae[t].e);return function(e,r,t,n,a){var o=new Worker(P[r]||(P[r]=URL.createObjectURL(new Blob([e+';addEventListener("error",function(e){e=e.error;postMessage({$e$:[e.message,e.code,e.stack]})})'],{type:"text/javascript"}))));return o.onmessage=function(e){var r=e.data,t=r.$e$;if(t){var n=new Error(t[0]);n.code=t[1],n.stack=t[2],a(n,null)}else a(null,r)},o.postMessage(t,n),o}(Ae[t].c+";onmessage=function(e){for(var k in e.data)self[k]=e.data[k];onmessage="+r.toString()+"}",t,c,function(e){var r=[];for(var t in e)e[t].buffer&&r.push((e[t]=new e[t].constructor(e[t])).buffer);return r}(c),n)}(t,n,a,function(e,r){i.terminate(),o(e,r)});return i.postMessage([e,r],r.consume?[e.buffer]:[]),function(){i.terminate()}},Ze=function(e,r){return e[r]|e[r+1]<<8},Pe=function(e,r){return(e[r]|e[r+1]<<8|e[r+2]<<16|e[r+3]<<24)>>>0},Le=function(e,r){return Pe(e,r)+4294967296*Pe(e,r+4)},Ie=function(e,r,t){for(;t;++r)e[r]=t,t>>>=8};function ze(e,r){return Se(e,r||{},0,0)}function Ue(e,r){return ue(e,{i:2},r&&r.out,r&&r.dictionary)}var Ye=function(e,r,t,n){for(var a in e){var o=e[a],i=r+a,s=n;Array.isArray(o)&&(s=Te(n,o[1]),o=o[0]),ArrayBuffer.isView(o)?t[i]=[o,s]:(t[i+="/"]=[new L(0),s],Ye(o,i,t,n))}},Ce="undefined"!=typeof TextEncoder&&new TextEncoder,je="undefined"!=typeof TextDecoder&&new TextDecoder;try{je.decode(ve,{stream:!0})}catch(e){}function De(e,r){if(r){for(var t=new L(e.length),n=0;n<e.length;++n)t[n]=e.charCodeAt(n);return t}if(Ce)return Ce.encode(e);var a=e.length,o=new L(e.length+(e.length>>1)),i=0,s=function(e){o[i++]=e};for(n=0;n<a;++n){if(i+5>o.length){var c=new L(i+8+(a-n<<1));c.set(o),o=c}var u=e.charCodeAt(n);u<128||r?s(u):u<2048?(s(192|u>>6),s(128|63&u)):u>55295&&u<57344?(s(240|(u=65536+(1047552&u)|1023&e.charCodeAt(++n))>>18),s(128|u>>12&63),s(128|u>>6&63),s(128|63&u)):(s(224|u>>12),s(128|u>>6&63),s(128|63&u))}return ie(o,0,i)}function Me(e,r){if(r){for(var t="",n=0;n<e.length;n+=16384)t+=String.fromCharCode.apply(null,e.subarray(n,n+16384));return t}if(je)return je.decode(e);var a=function(e){for(var r="",t=0;;){var n=e[t++],a=(n>127)+(n>223)+(n>239);if(t+a>e.length)return{s:r,r:ie(e,t-1)};a?3==a?(n=((15&n)<<18|(63&e[t++])<<12|(63&e[t++])<<6|63&e[t++])-65536,r+=String.fromCharCode(55296|n>>10,56320|1023&n)):r+=1&a?String.fromCharCode((31&n)<<6|63&e[t++]):String.fromCharCode((15&n)<<12|(63&e[t++])<<6|63&e[t++]):r+=String.fromCharCode(n)}}(e),o=a.s;return(t=a.r).length&&ce(8),o}var Ge=function(e,r,t,n,a,o,i){var s=4294967295==a,c=4294967295==o,u=4294967295==i,l=r+t;if(n&&s+c+u){for(;r+4<l;r+=4+Ze(e,r+2))if(1==Ze(e,r))return[s?Le(e,r+4+8*c):a,c?Le(e,r+4):o,u?Le(e,r+4+8*(c+s)):i,1];n<2&&ce(13)}return[a,o,i,0]},Xe=function(e){var r=0;if(e)for(var t in e){var n=e[t].length;n>65535&&ce(9),r+=n+4}return r},Ne=function(e,r,t,n,a,o,i,s){var c=n.length,u=t.extra,l=s&&s.length,f=Xe(u);Ie(e,r,null!=i?33639248:67324752),r+=4,null!=i&&(e[r++]=20,e[r++]=t.os),e[r]=20,r+=2,e[r++]=t.flag<<1|(o<0&&8),e[r++]=a&&8,e[r++]=255&t.compression,e[r++]=t.compression>>8;var y=new Date(null==t.mtime?Date.now():t.mtime),h=y.getFullYear()-1980;if((h<0||h>119)&&ce(10),Ie(e,r,h<<25|y.getMonth()+1<<21|y.getDate()<<16|y.getHours()<<11|y.getMinutes()<<5|y.getSeconds()>>1),r+=4,-1!=o&&(Ie(e,r,t.crc),Ie(e,r+4,o<0?-o-2:o),Ie(e,r+8,t.size)),Ie(e,r+12,c),Ie(e,r+14,f),r+=16,null!=i&&(Ie(e,r,l),Ie(e,r+6,t.attrs),Ie(e,r+10,i),r+=14),e.set(n,r),r+=c,f)for(var w in u){var d=u[w],p=d.length;Ie(e,r,+w),Ie(e,r+2,p),e.set(d,r+4),r+=4+p}return l&&(e.set(s,r),r+=l),r};function $e(e,r,t){t||(t=r,r={}),"function"!=typeof t&&ce(7);var n={};Ye(e,"",n,r);var a=Object.keys(n),o=a.length,i=0,s=0,c=o,u=new Array(o),l=[],f=function(){for(var e=0;e<l.length;++e)l[e]()},y=function(e,r){Be(function(){t(e,r)})};Be(function(){y=t});var h=function(){var e=new L(s+22),r=i,t=s-i;s=0;for(var n=0;n<c;++n){var a=u[n];try{var o=a.c.length;Ne(e,s,a,a.f,a.u,o);var l=30+a.f.length+Xe(a.extra),f=s+l;e.set(a.c,f),Ne(e,i,a,a.f,a.u,o,s,a.m),i+=16+l+(a.m?a.m.length:0),s=f+o}catch(e){return y(e,null)}}(function(e,r,t,n,a){Ie(e,r,101010256),Ie(e,r+8,t),Ie(e,r+10,t),Ie(e,r+12,n),Ie(e,r+16,a)})(e,i,u.length,t,r),y(null,e)};o||h();for(var w=function(e){var r=a[e],t=n[r],c=t[0],w=t[1],d=function(){var e=-1;return{p:function(r){for(var t=e,n=0;n<r.length;++n)t=Ee[255&t^r[n]]^t>>>8;e=t},d:function(){return~e}}}(),p=c.length;d.p(c);var m=De(r),g=m.length,v=w.comment,b=v&&De(v),E=b&&b.length,S=Xe(w.extra),T=0==w.level?0:8,k=function(t,n){if(t)f(),y(t,null);else{var a=n.length;u[e]=Te(w,{size:p,crc:d.d(),c:n,f:m,m:b,u:g!=r.length||b&&v.length!=E,compression:T}),i+=30+g+S+a,s+=76+2*(g+S)+(E||0)+a,--o||h()}};if(g>65535&&k(ce(11,0,1),null),T)if(p<16e4)try{k(null,ze(c,w))}catch(e){k(e,null)}else l.push(function(e,r,t){return t||(t=r,r={}),"function"!=typeof t&&ce(7),We(e,r,[Fe],function(e){return xe(ze(e.data[0],e.data[1]))},0,t)}(c,w,k));else k(null,c)},d=0;d<c;++d)w(d);return f}var Be="function"==typeof queueMicrotask?queueMicrotask:"function"==typeof setTimeout?setTimeout:function(e){e()};class _e{resolve;reject;promise;constructor(){if("function"==typeof Promise.withResolvers){const{promise:e,resolve:r,reject:t}=Promise.withResolvers();this.promise=e,this.resolve=r,this.reject=t}else this.promise=new Promise((e,r)=>{this.resolve=e,this.reject=r})}}const Ve="NotFoundError",He="/",Je=".",Ke="/tmp";function Qe(e){n("string"==typeof e),n(e[0]===He)}function qe(e){n("string"==typeof e)}let er;function rr(e){return e===He}async function tr(e,r,t){try{return v(await e.getDirectoryHandle(r,t))}catch(t){const n=t,a=new Error(`${n.name}: ${n.message} When get child directory '${r}' from directory '${e.name||He}'.`);return a.name=n.name,b(a)}}async function nr(e,r){let t=await async function(){return er??=await navigator.storage.getDirectory(),er}();if(rr(e))return v(t);let n=e.slice(1);for(;n;){let e="";const a=n.indexOf("/");if(-1===a)e=n,n="";else if(e=n.slice(0,a),n=n.slice(a+1),0===a)continue;const o=await tr(t,e,r);if(o.isErr())return o;t=o.unwrap()}return v(t)}async function ar(e,r){const t=r?.create??!1,n=c(e),a=u(e);return(await nr(n,{create:t})).andThenAsync(e=>async function(e,r,t){try{return v(await e.getFileHandle(r,t))}catch(t){const n=t,a=new Error(`${n.name}: ${n.message} When get child file '${r}' from directory '${e.name||He}'.`);return a.name=n.name,b(a)}}(e,a,{create:t}))}function or(e){return e.name===Ve}async function ir(e){const r=(await Promise.all(e)).find(e=>e.isErr());return r??A}function sr(){const e=new Error;return e.name=O,e}function cr(e){const{isDirectory:r=!1,basename:t="tmp",extname:n=""}=e??{},a=r?"":n;return l(Ke,`${t?`${t}-`:""}${crypto.randomUUID()}${a}`)}function ur(e){return e.startsWith(`${Ke}/`)}async function lr(e){const{name:r,kind:t}=e;if(fr(e)){const n=await e.getFile(),{size:a,lastModified:o,type:i}=n;return{name:r,kind:t,type:i,size:a,lastModified:o}}return{name:r,kind:t}}function fr(e){return"file"===e.kind}function yr(e){return"directory"===e.kind}function hr(e){return"file"===e.kind}async function wr(e){const r=await e.getFile(),t=await r.arrayBuffer();return new Uint8Array(t)}async function dr(e){return Qe(e),(await ar(e,{create:!0})).and(A)}async function pr(e){return Qe(e),(await nr(e,{create:!0})).and(A)}async function mr(e,r){async function*t(n,a){const o=n.entries();for await(const[i,s]of o){const o=a===e?i:l(a,i);yield{path:o,handle:s},yr(s)&&r?.recursive&&(yield*t(await n.getDirectoryHandle(i),o))}}return Qe(e),(await nr(e)).andThen(r=>v(t(r,e)))}async function gr(e,r){return Qe(e),(await ar(e)).andThenAsync(async e=>{const t=await e.getFile();switch(r?.encoding){case"blob":return v(t);case"utf8":return v(await t.text());default:return v(await t.arrayBuffer())}})}async function vr(e){Qe(e);const r=c(e),t=u(e),n=await nr(r);return(await n.andThenAsync(async e=>{try{rr(r)&&rr(t)?await e.remove({recursive:!0}):await e.removeEntry(t,{recursive:!0})}catch(e){return b(e)}return A})).orElse(e=>or(e)?A:b(e))}async function br(e){Qe(e);const r=c(e),t=u(e),n=await nr(r);return t?n.andThenAsync(async r=>{for await(const[e,n]of r.entries())if(e===t)return v(n);const n=new Error(`${Ve}: '${t}' does not exist. Full path is '${e}'.`);return n.name=Ve,b(n)}):n}async function Er(e,r,t){Qe(e);const{append:n=!1,create:a=!0}=t??{};return(await ar(e,{create:a})).andThenAsync(async e=>{const t=await e.createWritable({keepExistingData:n}),a={type:"write",data:r};if(n){const{size:r}=await e.getFile();a.position=r}return await t.write(a),await t.close(),A})}function Sr(e,r,t){let n,a;qe(e),a=!1,"string"==typeof r?Qe(r):(t=r,r=cr({extname:f(e)}),a=!0),n=!1;const o=R(e,{redirect:"follow",...t,abortable:!0}),i=(async()=>(await o.response).andThenAsync(async e=>{const t=await e.blob();return n?b(sr()):(await Er(r,t)).and(v(e))}))();return{abort(e){n=!0,o.abort(e)},get aborted(){return n},get response(){return a?i.then(e=>e.map(e=>({tempFilePath:r,rawResponse:e}))):i}}}async function Tr(e,r){const t=c(r);return(await nr(t,{create:!0})).andThenAsync(async t=>{const n=u(r);try{return await e.move(t,n),A}catch(e){return b(e)}})}async function kr(e,r,t,n=!0){return Qe(r),(await br(e)).andThenAsync(async a=>{let o;o=!1;const i=await br(r);if(i.isErr()){if(!or(i.unwrapErr()))return i.asErr()}else{o=!0;const e=i.unwrap();if(!(fr(a)&&fr(e)||yr(a)&&yr(e)))return b(new Error("Both 'srcPath' and 'destPath' must both be a file or directory."))}return fr(a)?n||!o?await t(a,r):A:(await mr(e,{recursive:!0})).andThenAsync(async e=>{const a=[pr(r)];for await(const{path:i,handle:s}of e){const e=l(r,i);let c=!1;if(o){const r=await xr(e);if(r.isErr()){a.push(Promise.resolve(r.asErr()));continue}c=r.unwrap()}const u=fr(s)?n||!c?t(s,e):Promise.resolve(A):pr(e);a.push(u)}return ir(a)})})}function Ar(e,r){return Er(e,r,{append:!0})}async function Or(e,r,t){const{overwrite:n=!0}=t??{};return kr(e,r,async(e,r)=>await Er(r,await e.getFile()),n)}async function Fr(e){const r=await mr(e);if(r.isErr())return or(r.unwrapErr())?pr(e):r.asErr();const t=[];for await(const{path:n}of r.unwrap())t.push(vr(l(e,n)));return ir(t)}async function xr(e,r){const{isDirectory:t=!1,isFile:a=!1}=r??{};n(!(t&&a));const o=await br(e);return o.andThen(e=>v(!(t&&fr(e)||a&&yr(e)))).orElse(e=>or(e)?k:o.asErr())}async function Rr(e,r,t){const{overwrite:n=!0}=t??{};return(await kr(e,r,Tr,n)).andThenAsync(()=>vr(e))}function Wr(e){return gr(e,{encoding:"blob"})}async function Zr(e){return(await Pr(e)).andThenAsync(async e=>{try{return v(JSON.parse(e))}catch(e){return b(e)}})}function Pr(e){return gr(e,{encoding:"utf8"})}async function Lr(e){const{isDirectory:r=!1}=e??{},t=cr(e);return(await(r?pr:dr)(t)).and(v(t))}function Ir(){return vr(Ke)}async function zr(e){return n(e instanceof Date),(await mr(Ke,{recursive:!0})).andThenAsync(async r=>{try{for await(const{handle:t}of r)fr(t)&&(await t.getFile()).lastModified<=e.getTime()&&await t.remove()}catch(e){return b(e)}return A})}async function Ur(e,r){const t=new Uint8Array(e),n=new _e;return function(e,r,t){t||(t=r,r={}),"function"!=typeof t&&ce(7);var n=[],a=function(){for(var e=0;e<n.length;++e)n[e]()},o={},i=function(e,r){Be(function(){t(e,r)})};Be(function(){i=t});for(var s=e.length-22;101010256!=Pe(e,s);--s)if(!s||e.length-s>65558)return i(ce(13,0,1),null),a;var c=Ze(e,s+8);if(c){var u=c,l=Pe(e,s+16),f=117853008==Pe(e,s-20);if(f){var y=Pe(e,s-12);(f=101075792==Pe(e,y))&&(u=c=Pe(e,y+32),l=Pe(e,y+48))}for(var h=r&&r.filter,w=function(r){var t=function(e,r,t){var n=Ze(e,r+28),a=Ze(e,r+30),o=Me(e.subarray(r+46,r+46+n),!(2048&Ze(e,r+8))),i=r+46+n,s=Ge(e,i,a,t,Pe(e,r+20),Pe(e,r+24),Pe(e,r+42)),c=s[0],u=s[1],l=s[2];return[Ze(e,r+10),c,u,o,i+a+Ze(e,r+32),l]}(e,l,f),s=t[0],u=t[1],y=t[2],w=t[3],d=t[4],p=t[5],m=function(e,r){return r+30+Ze(e,r+26)+Ze(e,r+28)}(e,p);l=d;var g=function(e,r){e?(a(),i(e,null)):(r&&(o[w]=r),--c||i(null,o))};if(!h||h({name:w,size:u,originalSize:y,compression:s}))if(s)if(8==s){var v=e.subarray(m,m+u);if(y<524288||u>.8*y)try{g(null,Ue(v,{out:new L(y)}))}catch(e){g(e,null)}else n.push(function(e,r,t){return t||(t=r,r={}),"function"!=typeof t&&ce(7),We(e,r,[Oe],function(e){return xe(Ue(e.data[0],Re(e.data[1])))},1,t)}(v,{size:y},g))}else g(ce(14,"unknown compression type "+s,1),null);else g(null,ie(e,m,m+u));else g(null,null)},d=0;d<u;++d)w()}else i(null,{})}(t,async(e,t)=>{if(e)return void n.resolve(b(e));const a=[];for(const e in t)"/"!==e.at(-1)&&a.push(Er(l(r,e),t[e]));n.resolve(ir(a))}),await n.promise}async function Yr(e,r){return Qe(r),(await gr(e)).andThenAsync(e=>Ur(e,r))}async function Cr(e,r,t){return qe(e),Qe(r),(await R(e,{redirect:"follow",...t,responseType:"arraybuffer",abortable:!1})).andThenAsync(e=>Ur(e,r))}function jr(e,r,t){let n,a;qe(r),n=!1;const o=(async()=>(await Wr(e)).andThenAsync(async o=>{if(n)return b(sr());const{filename:i=u(e),...s}=t??{},c=new FormData;return c.append(i,o,i),a=R(r,{method:"POST",...s,abortable:!0,body:c}),a.response}))();return{abort(e){n=!0,a?.abort(e)},get aborted(){return n},get response(){return o}}}async function Dr(e,r){const t=new _e;return $e(e,{consume:!0},async(e,n)=>{if(e)t.resolve(b(e));else if(r){const e=await Er(r,n);t.resolve(e)}else t.resolve(v(n))}),await t.promise}async function Mr(e,r,t){return"string"==typeof r?Qe(r):(t=r,r=void 0),(await br(e)).andThenAsync(async n=>{const a=u(e),o={};if(fr(n)){const e=await wr(n);o[a]=e}else{const r=await mr(e,{recursive:!0});if(r.isErr())return r.asErr();const n=t?.preserveRoot??!0;for await(const{path:e,handle:t}of r.unwrap())if(fr(t)){const r=n?l(a,e):e,i=await wr(t);o[r]=i}}return Dr(o,r)})}async function Gr(e,r,t){return qe(e),"string"==typeof r?Qe(r):(t=r,r=void 0),(await R(e,{redirect:"follow",...t,responseType:"arraybuffer",abortable:!1})).andThenAsync(t=>{const n={};return n[u(e)]=new Uint8Array(t),Dr(n,r)})}function Xr(){return"function"==typeof navigator?.storage?.getDirectory}function Nr(e){return e?{name:e.name,message:e.message}:e}async function $r(e){const r=await e.arrayBuffer();return{name:e.name,type:e.type,lastModified:e.lastModified,size:r.byteLength,data:r}}let Br=1e3;var _r=(e=>(e[e.createFile=0]="createFile",e[e.mkdir=1]="mkdir",e[e.move=2]="move",e[e.readDir=3]="readDir",e[e.remove=4]="remove",e[e.stat=5]="stat",e[e.writeFile=6]="writeFile",e[e.appendFile=7]="appendFile",e[e.copy=8]="copy",e[e.emptyDir=9]="emptyDir",e[e.exists=10]="exists",e[e.deleteTemp=11]="deleteTemp",e[e.mkTemp=12]="mkTemp",e[e.pruneTemp=13]="pruneTemp",e[e.readBlobFile=14]="readBlobFile",e[e.unzip=15]="unzip",e[e.zip=16]="zip",e))(_r||{});let Vr,Hr;function Jr(e){const r=JSON.stringify(e);return(Vr??=new TextEncoder,Vr).encode(r)}function Kr(e){const r=Qr(e);return JSON.parse(r)}function Qr(e){return(Hr??=new TextDecoder,Hr).decode(e)}class qr{i32a;u8a;headerLength=16;maxDataLength;constructor(e){this.i32a=new Int32Array(e),this.u8a=new Uint8Array(e),this.maxDataLength=e.byteLength-this.headerLength}}async function et(e,r){const{i32a:t,u8a:n,headerLength:a,maxDataLength:o}=e;for(;1!==Atomics.load(t,1););const i=t[2],s=n.slice(a,a+i);let c=await r(s);const u=c.byteLength;if(u>o){const e=`Response is too large: ${u} > ${o}. Consider grow the size of SharedArrayBuffer.`;if(c=Jr([{name:"RangeError",message:e}]),c.byteLength>o)throw Atomics.store(t,1,0),new RangeError(e)}t[2]=c.byteLength,n.set(c,a),Atomics.store(t,1,0),Atomics.store(t,0,0)}const rt={[_r.createFile]:dr,[_r.mkdir]:pr,[_r.move]:Rr,[_r.readDir]:mr,[_r.remove]:vr,[_r.stat]:br,[_r.writeFile]:Er,[_r.appendFile]:Ar,[_r.copy]:Or,[_r.emptyDir]:Fr,[_r.exists]:xr,[_r.deleteTemp]:Ir,[_r.mkTemp]:Lr,[_r.pruneTemp]:zr,[_r.readBlobFile]:Wr,[_r.unzip]:Yr,[_r.zip]:Mr};let tt,nt;function at(){if("undefined"!=typeof window)throw new Error("Only can use in worker");if(tt)throw new Error("Worker messenger already started");addEventListener("message",e=>{const r=e.data;if(!(r instanceof SharedArrayBuffer))throw new TypeError("Only can post SharedArrayBuffer to Worker");tt=new qr(r),postMessage(!0),async function(){for(;;)try{await et(tt,async e=>{const[r,...t]=Kr(e);let n;r===_r.writeFile||r===_r.appendFile?Array.isArray(t[1])&&(t[1]=new Uint8Array(t[1])):r===_r.pruneTemp&&(t[0]=new Date(t[0]));const a=rt[r];try{const e=await a(...t);if(e.isErr())n=Jr([Nr(e.unwrapErr())]);else{let t;if(r===_r.readBlobFile){const r=e.unwrap(),n=await $r(r);t={...n,data:[...new Uint8Array(n.data)]}}else if(r===_r.readDir){const r=e.unwrap(),n=[];for await(const{path:e,handle:t}of r){const r=await lr(t);n.push({path:e,handle:r})}t=n}else if(r===_r.stat){const r=e.unwrap();t=await lr(r)}else if(r===_r.zip){const r=e.unwrap();t=r instanceof Uint8Array?[...r]:r}else t=e.unwrap();n=Jr([null,t])}}catch(e){n=Jr([Nr(e)])}return n})}catch(e){console.error(e instanceof Error?e.stack:e)}}()})}function ot(e){if("undefined"==typeof window)throw new Error("Only can use in main thread");if(nt)throw new Error("Main messenger already started");return new Promise(r=>{const{worker:t,bufferLength:a=1048576,opTimeout:o=1e3}=e;n(t instanceof Worker||t instanceof URL||"string"==typeof t&&t),n(a>16&&a%4==0),n(Number.isInteger(o)&&o>0),Br=o;const i=t instanceof Worker?t:new Worker(t),s=new SharedArrayBuffer(a);i.addEventListener("message",e=>{e.data&&(nt=new qr(s),r())}),i.postMessage(s)})}function it(){return nt}function st(e){n(null!=e),nt=e}function ct(e,...r){if(!nt)return b(new Error("Worker not initialized. Come back later."));const t=Jr([e,...r]);try{const e=Kr(function(e,r){const{i32a:t,u8a:n,headerLength:a,maxDataLength:o}=e,i=r.byteLength;if(i>o)throw new RangeError(`Request is too large: ${i} > ${o}. Consider grow the size of SharedArrayBuffer.`);Atomics.store(t,0,1),t[2]=i,n.set(r,a),Atomics.store(t,1,1),function(e){const r=Date.now();for(;!e();)if(Date.now()-r>Br){const e=new Error("Operating Timeout");throw e.name=F,e}}(()=>0===Atomics.load(t,0));const s=t[2];return n.slice(a,a+s)}(nt,t)),r=e[0],n=r?b(function(e){const r=new Error(e.message);return r.name=e.name,r}(r)):v(e[1]??void 0);return n}catch(e){return b(e)}}function ut(e){return ct(_r.createFile,e)}function lt(e){return ct(_r.mkdir,e)}function ft(e,r,t){return ct(_r.move,e,r,t)}function yt(e,r){return ct(_r.readDir,e,r)}function ht(e,r){return ct(_r.readBlobFile,e).map(e=>{const t=new Uint8Array(e.data);switch(e.data=t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength),r?.encoding){case"blob":return e;case"utf8":return Qr(new Uint8Array(e.data));default:return e.data}})}function wt(e){return ct(_r.remove,e)}function dt(e){return ct(_r.stat,e)}function pt(e){return e instanceof ArrayBuffer?[...new Uint8Array(e)]:ArrayBuffer.isView(e)?[...new Uint8Array(e.buffer)]:e}function mt(e,r,t){return ct(_r.writeFile,e,pt(r),t)}function gt(e,r){return ct(_r.appendFile,e,pt(r))}function vt(e,r,t){return ct(_r.copy,e,r,t)}function bt(e){return ct(_r.emptyDir,e)}function Et(e,r){return ct(_r.exists,e,r)}function St(){return ct(_r.deleteTemp)}function Tt(e){return ct(_r.mkTemp,e)}function kt(e){return ct(_r.pruneTemp,e)}function At(e){return ht(e,{encoding:"blob"})}function Ot(e){return Ft(e).andThen(e=>{try{return v(JSON.parse(e))}catch(e){return b(e)}})}function Ft(e){return ht(e,{encoding:"utf8"})}function xt(e,r){return ct(_r.unzip,e,r)}function Rt(e,r,t){return ct(_r.zip,e,r,t).map(e=>e?new Uint8Array(e):e)}}};const r={};function t(n){const a=r[n];if(void 0!==a)return a.exports;const o=r[n]={exports:{}};return e[n].call(o.exports,o,o.exports,t),o.exports}t.d=(e,r)=>{if(Array.isArray(r))for(var n=0;n<r.length;){var a=r[n++],o=r[n++];t.o(e,a)?0===o&&n++:0===o?Object.defineProperty(e,a,{enumerable:!0,value:r[n++]}):Object.defineProperty(e,a,{enumerable:!0,get:o})}else for(var a in r)t.o(r,a)&&!t.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:r[a]})},t.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),t.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t(314)})();
|
|
1
|
+
(()=>{var e={314(e,r,n){const t=n(10);_sync_agent=t.startSyncAgent,e.exports={_sync_agent},_sync_agent()},10(e,r,n){"use strict";n.a(e,async(e,t)=>{try{n.d(r,{startSyncAgent:()=>o.startSyncAgent});var o=n(516);const a=await Promise.resolve().then(n.bind(n,516));async function i(e){return void 0!==e&&""!=e&&e!={}||(e=await Promise.resolve().then(n.bind(n,516))),function(r){return e.copySync.apply(null,[r]).unwrap()}}await o,await n.e(554).then(n.t.bind(n,554,23)),(await n.e(949).then(n.bind(n,949))).file,a.mkTemp,a.mkTempSync,await i(a),a.copy,a.copy,a.cpSync,t()}catch(s){t(s)}},1)},516(e,r,n){"use strict";n.r(r),n.d(r,{ABORT_ERROR:()=>k,CURRENT_DIR:()=>Ke,NOT_FOUND_ERROR:()=>Ye,ROOT_DIR:()=>Ge,TIMEOUT_ERROR:()=>x,TMP_DIR:()=>Qe,appendFile:()=>Or,appendFileSync:()=>vn,assertAbsolutePath:()=>Xe,assertFileUrl:()=>Ze,connectSyncAgent:()=>an,copy:()=>kr,copySync:()=>bn,createFile:()=>hr,createFileSync:()=>fn,deleteTemp:()=>Cr,deleteTempSync:()=>Tn,downloadFile:()=>Ar,emptyDir:()=>xr,emptyDirSync:()=>En,exists:()=>Rr,existsSync:()=>An,generateTempPath:()=>cr,getFileDataByHandle:()=>dr,getSyncMessenger:()=>sn,isDirectoryHandle:()=>yr,isFileHandle:()=>lr,isFileHandleLike:()=>pr,isOPFSSupported:()=>Wr,isTempPath:()=>ur,mkTemp:()=>Lr,mkTempSync:()=>Sn,mkdir:()=>wr,mkdirSync:()=>ln,move:()=>Fr,moveSync:()=>yn,pruneTemp:()=>zr,pruneTempSync:()=>On,readBlobFile:()=>Pr,readBlobFileSync:()=>kn,readDir:()=>mr,readDirSync:()=>pn,readFile:()=>gr,readFileSync:()=>dn,readJsonFile:()=>$r,readJsonFileSync:()=>xn,readTextFile:()=>Dr,readTextFileSync:()=>Rn,remove:()=>vr,removeSync:()=>hn,setSyncMessenger:()=>cn,startSyncAgent:()=>on,stat:()=>br,statSync:()=>wn,toFileSystemHandleLike:()=>fr,unzip:()=>Ur,unzipFromUrl:()=>Mr,unzipSync:()=>Fn,uploadFile:()=>Br,writeFile:()=>Er,writeFileSync:()=>gn,zip:()=>_r,zipFromUrl:()=>Ir,zipSync:()=>Pn});function t(e,r){if(!e)throw new Error("Invariant failed")}function o(e){if("string"!=typeof e)throw new TypeError(`Path must be a string, received "${JSON.stringify(e)}"`)}function a(e,r){if(e.length<=1)return e;let n=e.length;for(let t=e.length-1;t>0&&r(e.charCodeAt(t));t--)n=t;return e.slice(0,n)}function i(e){return 47===e}function s(e){return e=function(e){if("file:"!==(e=e instanceof URL?e:new URL(e)).protocol)throw new TypeError(`URL must be a file URL: received "${e.protocol}"`);return e}(e),decodeURIComponent(e.pathname.replace(/%(?![0-9A-Fa-f]{2})/g,"%25"))}function c(e){e instanceof URL&&(e=s(e)),function(e){o(e),e.length}(e);let r=-1,n=!1;for(let t=e.length-1;t>=1;--t)if(i(e.charCodeAt(t))){if(n){r=t;break}}else n=!0;return-1===r?i(e.charCodeAt(0))?"/":".":a(e.slice(0,r),i)}function u(e,r=""){e instanceof URL&&(e=s(e)),function(e,r){if(o(e),0===e.length)return e;if("string"!=typeof r)throw new TypeError(`Suffix must be a string, received "${JSON.stringify(r)}"`)}(e,r);const n=function(e,r,n=0){let t=!1,o=e.length;for(let a=e.length-1;a>=n;--a)if(r(e.charCodeAt(a))){if(t){n=a+1;break}}else t||(t=!0,o=a+1);return e.slice(n,o)}(e,i),t=a(n,i);return r?function(e,r){if(r.length>=e.length)return e;const n=e.length-r.length;for(let t=r.length-1;t>=0;--t)if(e.charCodeAt(n+t)!==r.charCodeAt(t))return e;return e.slice(0,-r.length)}(t,r):t}function f(e,...r){if(void 0===e)return".";e instanceof URL&&(e=s(e)),(r=e?[e,...r]:r).forEach(e=>o(e));const n=r.filter(e=>e.length>0).join("/");return""===n?".":function(e){e instanceof URL&&(e=s(e)),function(e){o(e),e.length}(e);const r=i(e.charCodeAt(0)),n=i(e.charCodeAt(e.length-1));return e=function(e,r,n,t){let o,a="",i=0,s=-1,c=0;for(let u=0;u<=e.length;++u){if(u<e.length)o=e.charCodeAt(u);else{if(t(o))break;o=47}if(t(o)){if(s===u-1||1===c);else if(s!==u-1&&2===c){if(a.length<2||2!==i||46!==a.charCodeAt(a.length-1)||46!==a.charCodeAt(a.length-2)){if(a.length>2){const e=a.lastIndexOf(n);-1===e?(a="",i=0):(a=a.slice(0,e),i=a.length-1-a.lastIndexOf(n)),s=u,c=0;continue}if(2===a.length||1===a.length){a="",i=0,s=u,c=0;continue}}r&&(a.length>0?a+=`${n}..`:a="..",i=2)}else a.length>0?a+=n+e.slice(s+1,u):a=e.slice(s+1,u),i=u-s-1;s=u,c=0}else 46===o&&-1!==c?++c:c=-1}return a}(e,!r,"/",i),0!==e.length||r||(e="."),e.length>0&&n&&(e+="/"),r?`/${e}`:e}(n)}function l(e){e instanceof URL&&(e=s(e)),o(e);let r=-1,n=0,t=-1,a=!0,c=0;for(let o=e.length-1;o>=0;--o){const s=e.charCodeAt(o);if(i(s)){if(!a){n=o+1;break}}else-1===t&&(a=!1,t=o+1),46===s?-1===r?r=o:1!==c&&(c=1):-1!==r&&(c=-1)}return-1===r||-1===t||0===c||1===c&&r===t-1&&r===n+1?"":e.slice(r,t)}const y=Symbol("Option kind"),p=Symbol("Result kind"),d=Promise.resolve(!0),h=Promise.resolve(!1);function w(e){const r=Object.freeze({[Symbol.toStringTag]:"Option",[y]:"Some",*[Symbol.iterator](){yield e},toString:()=>`Some(${e})`,isSome:()=>!0,isNone:()=>!1,isSomeAnd:r=>r(e),isSomeAndAsync:r=>Promise.resolve(r(e)),isNoneOr:r=>r(e),isNoneOrAsync:r=>Promise.resolve(r(e)),expect:r=>e,unwrap:()=>e,unwrapOr:r=>e,unwrapOrElse:r=>e,unwrapOrElseAsync:r=>Promise.resolve(e),okOr:r=>v(e),okOrElse:r=>v(e),transpose:()=>(T(e),e.isOk()?v(w(e.unwrap())):b(e.unwrapErr())),filter:n=>n(e)?r:m,flatten:()=>(A(e),e),map:r=>w(r(e)),mapOr:(r,n)=>n(e),mapOrElse:(r,n)=>n(e),zip:r=>(A(r),r.isSome()?w([e,r.unwrap()]):m),zipWith:(r,n)=>(A(r),r.isSome()?w(n(e,r.unwrap())):m),unzip(){const r=e;if(!Array.isArray(r)||2!==r.length)throw new TypeError("Option::unzip() requires a 2-element tuple, received "+(Array.isArray(r)?`array with ${r.length} elements`:typeof r));const[n,t]=r;return[w(n),w(t)]},reduce:(n,t)=>(A(n),n.isSome()?w(t(e,n.unwrap())):r),and:e=>(A(e),e),andThen:r=>r(e),andThenAsync:r=>Promise.resolve(r(e)),or:e=>r,orElse:e=>r,orElseAsync:e=>Promise.resolve(r),xor:e=>(A(e),e.isSome()?m:r),inspect:n=>(n(e),r),eq:r=>(A(r),r.isSome()&&r.unwrap()===e)});return r}const m=Object.freeze({[Symbol.toStringTag]:"Option",[y]:"None",*[Symbol.iterator](){},toString:()=>"None",isSome:()=>!1,isNone:()=>!0,isSomeAnd:e=>!1,isSomeAndAsync:e=>h,isNoneOr:e=>!0,isNoneOrAsync:e=>d,expect(e){throw new TypeError(e)},unwrap(){throw new TypeError("Option::unwrap() called on a `None` value")},unwrapOr:e=>e,unwrapOrElse:e=>e(),unwrapOrElseAsync:e=>Promise.resolve(e()),okOr:e=>b(e),okOrElse:e=>b(e()),transpose:()=>v(m),filter:e=>m,flatten:()=>m,map:e=>m,mapOr:(e,r)=>e,mapOrElse:(e,r)=>e(),zip:e=>m,zipWith:(e,r)=>m,unzip:()=>[m,m],reduce:(e,r)=>(A(e),e),and:e=>m,andThen:e=>m,andThenAsync:e=>g,or:e=>(A(e),e),orElse:e=>e(),orElseAsync:e=>Promise.resolve(e()),xor:e=>(A(e),e.isSome()?e:m),inspect:e=>m,eq:e=>(A(e),e===m)}),g=Promise.resolve(m);function v(e){const r=Object.freeze({[Symbol.toStringTag]:"Result",[p]:"Ok",*[Symbol.iterator](){yield e},toString:()=>`Ok(${e})`,isOk:()=>!0,isErr:()=>!1,isOkAnd:r=>r(e),isOkAndAsync:r=>Promise.resolve(r(e)),isErrAnd:e=>!1,isErrAndAsync:e=>h,expect:r=>e,unwrap:()=>e,unwrapOr:r=>e,unwrapOrElse:r=>e,unwrapOrElseAsync:r=>Promise.resolve(e),expectErr(r){throw new TypeError(`${r}: ${e}`)},unwrapErr(){throw new TypeError("Result::unwrapErr() called on an `Ok` value")},intoOk:()=>e,intoErr(){throw new TypeError("Result::intoErr() called on an `Ok` value")},ok:()=>w(e),err:()=>m,transpose:()=>(A(e),e.isSome()?w(v(e.unwrap())):m),map:r=>v(r(e)),mapErr:e=>r,mapOr:(r,n)=>n(e),mapOrElse:(r,n)=>n(e),flatten:()=>(T(e),e),and:e=>(T(e),e),or:e=>r,andThen:r=>r(e),andThenAsync:r=>Promise.resolve(r(e)),orElse:e=>r,orElseAsync:e=>Promise.resolve(r),inspect:n=>(n(e),r),inspectErr:e=>r,eq:r=>(T(r),r.isOk()&&r.unwrap()===e),asOk:()=>r,asErr(){throw new TypeError("Result::asErr() called on an `Ok` value")},andTryAsync(r){try{const n=r(e);return Promise.resolve(n).then(v,b)}catch(e){return Promise.resolve(b(e))}},orTryAsync:e=>Promise.resolve(r)});return r}function b(e){const r=Object.freeze({[Symbol.toStringTag]:"Result",[p]:"Err",*[Symbol.iterator](){},toString:()=>`Err(${e})`,isOk:()=>!1,isErr:()=>!0,isOkAnd:e=>!1,isOkAndAsync:e=>h,isErrAnd:r=>r(e),isErrAndAsync:r=>Promise.resolve(r(e)),expect(r){throw new TypeError(`${r}: ${e}`)},unwrap(){throw new TypeError("Result::unwrap() called on an `Err` value")},unwrapOr:e=>e,unwrapOrElse:r=>r(e),unwrapOrElseAsync:r=>Promise.resolve(r(e)),expectErr:r=>e,unwrapErr:()=>e,intoOk(){throw new TypeError("Result::intoOk() called on an `Err` value")},intoErr:()=>e,ok:()=>m,err:()=>w(e),transpose:()=>w(r),map:e=>r,mapErr:r=>b(r(e)),mapOr:(e,r)=>e,mapOrElse:(r,n)=>r(e),flatten:()=>r,and:e=>r,or:e=>(T(e),e),andThen:e=>r,andThenAsync:e=>Promise.resolve(r),orElse:r=>r(e),orElseAsync:r=>Promise.resolve(r(e)),inspect:e=>r,inspectErr:n=>(n(e),r),eq:r=>(T(r),r.isErr()&&r.unwrapErr()===e),asOk(){throw new TypeError("Result::asOk() called on an `Err` value")},asErr:()=>r,andTryAsync:e=>Promise.resolve(r),orTryAsync(r){try{const n=r(e);return Promise.resolve(n).then(v,b)}catch(e){return Promise.resolve(b(e))}}});return r}function E(e){try{return null===e?"null":void 0===e?"undefined":"object"==typeof e?Object.prototype.toString.call(e):String(e)}catch{return"[unable to stringify]"}}function A(e){if(!function(e){return null!=e&&"object"==typeof e&&y in e}(e))throw new TypeError(`Expected an Option, but received: ${E(e)}`)}function T(e){if(!function(e){return null!=e&&"object"==typeof e&&p in e}(e))throw new TypeError(`Expected a Result, but received: ${E(e)}`)}const S=v(!1),O=v(),k="AbortError",x="TimeoutError";var R=class extends Error{name="FetchError";status;constructor(e,r){super(e),this.status=r}};function F(e,r){const n=function(e){if(e instanceof URL)return e;try{return new URL(e,"undefined"!=typeof location?location.href:void 0)}catch{throw new TypeError(`Invalid URL: ${e}`)}}(e),t=r??{},{retries:o,delay:a,when:i,onRetry:s}=function(e){const{responseType:r,timeout:n,retry:t=0,onProgress:o,onChunk:a}=e;if(null!=r){const e=["text","arraybuffer","blob","json","bytes","stream"];if(!e.includes(r))throw new TypeError(`responseType must be one of ${e.join(", ")} but received ${r}`)}if(null!=n){if("number"!=typeof n)throw new TypeError("timeout must be a number but received "+typeof n);if(n<=0)throw new Error(`timeout must be a number greater than 0 but received ${n}`)}if(null!=o&&"function"!=typeof o)throw new TypeError("onProgress callback must be a function but received "+typeof o);if(null!=a&&"function"!=typeof a)throw new TypeError("onChunk callback must be a function but received "+typeof a);let i,s,c=0,u=0;if("number"==typeof t?c=t:t&&"object"==typeof t&&(c=t.retries??0,u=t.delay??0,i=t.when,s=t.onRetry),!Number.isInteger(c))throw new TypeError(`Retry count must be an integer but received ${c}`);if(c<0)throw new Error(`Retry count must be non-negative but received ${c}`);if("number"==typeof u){if(u<0)throw new Error(`Retry delay must be a non-negative number but received ${u}`)}else if("function"!=typeof u)throw new TypeError("Retry delay must be a number or a function but received "+typeof u);if(null!=i&&!Array.isArray(i)&&"function"!=typeof i)throw new TypeError("Retry when condition must be an array of status codes or a function but received "+typeof i);if(null!=s&&"function"!=typeof s)throw new TypeError("Retry onRetry callback must be a function but received "+typeof s);return{retries:c,delay:u,when:i,onRetry:s}}(t),{abortable:c=!1,responseType:u,timeout:f,onProgress:l,onChunk:y,...p}=t,d=p.signal;let h;c&&(h=new AbortController);const w=(e,r)=>"AbortError"!==e.name&&(i?Array.isArray(i)?e instanceof R&&i.includes(e.status):i(e,r):!(e instanceof R)),m=e=>"function"==typeof a?a(e):a,g=()=>{const e=[];d&&e.push(d),h&&e.push(h.signal),"number"==typeof f&&e.push(function(e){if("function"==typeof AbortSignal.timeout)return AbortSignal.timeout(e);const r=new AbortController,n=function(){const e="The operation timed out.";try{return new DOMException(e,x)}catch{const r=new Error(e);return r.name=x,r}}(),t=setTimeout(()=>{r.abort(n)},e);return"function"==typeof t?.unref&&t.unref(),r.signal}(f)),e.length>0&&(p.signal=1===e.length?e[0]:function(e){if("function"==typeof AbortSignal.any)return AbortSignal.any(e);const r=new AbortController;for(const n of e)if(n.aborted)return r.abort(n.reason),r.signal;const n=e=>{r.abort(e.target.reason)};for(const r of e)r.addEventListener("abort",n);return r.signal.addEventListener("abort",()=>{for(const r of e)r.removeEventListener("abort",n)}),r.signal}(e))},E=async()=>{g();try{const e=await fetch(n,p);return e.ok?await A(e):(e.body?.cancel().catch(()=>{}),b(new R(e.statusText,e.status)))}catch(e){return b(e instanceof Error?e:$(e))}},A=async e=>{switch(e.body&&(l||y)&&(async e=>{let r,n=0;if(l){const n=e.headers.get("content-length");if(null==n)try{l(b(new Error("No content-length in response headers")))}catch{}else r=Number.parseInt(n,10)}const t=e.clone().body;try{for await(const e of t){if(y)try{y(e)}catch{}if(l&&null!=r){n+=e.byteLength;try{l(v({totalByteLength:r,completedByteLength:n}))}catch{}}}}catch{}})(e),u){case"json":if(null==e.body)return v(null);try{return v(await e.json())}catch{return b(new Error("Response is invalid json while responseType is json"))}case"text":return v(await e.text());case"bytes":return"function"==typeof e.bytes?v(await e.bytes()):v(new Uint8Array(await e.arrayBuffer()));case"arraybuffer":return v(await e.arrayBuffer());case"blob":return v(await e.blob());case"stream":return v(e.body);default:return v(e)}},T=(async()=>{let e,r=0;do{if(r>0){if(h?.signal.aborted)return b(h.signal.reason);const n=m(r);if(n>0&&(await P(n),h?.signal.aborted))return b(h.signal.reason);try{s?.(e,r)}catch{}}const n=await E();if(n.isOk())return n;e=n.unwrapErr(),r++}while(r<=o&&w(e,r));return b(e)})();return c&&h?{abort(e){e instanceof Error?h.abort(e):null!=e?h.abort($(e)):h.abort()},get aborted(){return h.signal.aborted},get result(){return T}}:T}function P(e){return new Promise(r=>setTimeout(r,e))}function $(e){const r=new Error("string"==typeof e?e:String(e));return r.name=k,r.cause=e,r}var D={},L=Uint8Array,C=Uint16Array,z=Int32Array,j=new L([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),U=new L([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),M=new L([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),B=function(e,r){for(var n=new C(31),t=0;t<31;++t)n[t]=r+=1<<e[t-1];var o=new z(n[30]);for(t=1;t<30;++t)for(var a=n[t];a<n[t+1];++a)o[a]=a-n[t]<<5|t;return{b:n,r:o}},N=B(j,2),_=N.b,I=N.r;_[28]=258,I[258]=28;for(var W=B(U,0),q=W.b,H=W.r,J=new C(32768),V=0;V<32768;++V){var Y=(43690&V)>>1|(21845&V)<<1;Y=(61680&(Y=(52428&Y)>>2|(13107&Y)<<2))>>4|(3855&Y)<<4,J[V]=((65280&Y)>>8|(255&Y)<<8)>>1}var G=function(e,r,n){for(var t=e.length,o=0,a=new C(r);o<t;++o)e[o]&&++a[e[o]-1];var i,s=new C(r);for(o=1;o<r;++o)s[o]=s[o-1]+a[o-1]<<1;if(n){i=new C(1<<r);var c=15-r;for(o=0;o<t;++o)if(e[o])for(var u=o<<4|e[o],f=r-e[o],l=s[e[o]-1]++<<f,y=l|(1<<f)-1;l<=y;++l)i[J[l]>>c]=u}else for(i=new C(t),o=0;o<t;++o)e[o]&&(i[o]=J[s[e[o]-1]++]>>15-e[o]);return i},K=new L(288);for(V=0;V<144;++V)K[V]=8;for(V=144;V<256;++V)K[V]=9;for(V=256;V<280;++V)K[V]=7;for(V=280;V<288;++V)K[V]=8;var Q=new L(32);for(V=0;V<32;++V)Q[V]=5;var X=G(K,9,0),Z=G(K,9,1),ee=G(Q,5,0),re=G(Q,5,1),ne=function(e){for(var r=e[0],n=1;n<e.length;++n)e[n]>r&&(r=e[n]);return r},te=function(e,r,n){var t=r/8|0;return(e[t]|e[t+1]<<8)>>(7&r)&n},oe=function(e,r){var n=r/8|0;return(e[n]|e[n+1]<<8|e[n+2]<<16)>>(7&r)},ae=function(e){return(e+7)/8|0},ie=function(e,r,n){return(null==r||r<0)&&(r=0),(null==n||n>e.length)&&(n=e.length),new L(e.subarray(r,n))},se=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],ce=function(e,r,n){var t=new Error(r||se[e]);if(t.code=e,Error.captureStackTrace&&Error.captureStackTrace(t,ce),!n)throw t;return t},ue=function(e,r,n,t){var o=e.length,a=t?t.length:0;if(!o||r.f&&!r.l)return n||new L(0);var i=!n,s=i||2!=r.i,c=r.i;i&&(n=new L(3*o));var u=function(e){var r=n.length;if(e>r){var t=new L(Math.max(2*r,e));t.set(n),n=t}},f=r.f||0,l=r.p||0,y=r.b||0,p=r.l,d=r.d,h=r.m,w=r.n,m=8*o;do{if(!p){f=te(e,l,1);var g=te(e,l+1,3);if(l+=3,!g){var v=e[(P=ae(l)+4)-4]|e[P-3]<<8,b=P+v;if(b>o){c&&ce(0);break}s&&u(y+v),n.set(e.subarray(P,b),y),r.b=y+=v,r.p=l=8*b,r.f=f;continue}if(1==g)p=Z,d=re,h=9,w=5;else if(2==g){var E=te(e,l,31)+257,A=te(e,l+10,15)+4,T=E+te(e,l+5,31)+1;l+=14;for(var S=new L(T),O=new L(19),k=0;k<A;++k)O[M[k]]=te(e,l+3*k,7);l+=3*A;var x=ne(O),R=(1<<x)-1,F=G(O,x,1);for(k=0;k<T;){var P,$=F[te(e,l,R)];if(l+=15&$,(P=$>>4)<16)S[k++]=P;else{var D=0,C=0;for(16==P?(C=3+te(e,l,3),l+=2,D=S[k-1]):17==P?(C=3+te(e,l,7),l+=3):18==P&&(C=11+te(e,l,127),l+=7);C--;)S[k++]=D}}var z=S.subarray(0,E),B=S.subarray(E);h=ne(z),w=ne(B),p=G(z,h,1),d=G(B,w,1)}else ce(1);if(l>m){c&&ce(0);break}}s&&u(y+131072);for(var N=(1<<h)-1,I=(1<<w)-1,W=l;;W=l){var H=(D=p[oe(e,l)&N])>>4;if((l+=15&D)>m){c&&ce(0);break}if(D||ce(2),H<256)n[y++]=H;else{if(256==H){W=l,p=null;break}var J=H-254;if(H>264){var V=j[k=H-257];J=te(e,l,(1<<V)-1)+_[k],l+=V}var Y=d[oe(e,l)&I],K=Y>>4;if(Y||ce(3),l+=15&Y,B=q[K],K>3&&(V=U[K],B+=oe(e,l)&(1<<V)-1,l+=V),l>m){c&&ce(0);break}s&&u(y+131072);var Q=y+J;if(y<B){var X=a-B,ee=Math.min(B,Q);for(X+y<0&&ce(3);y<ee;++y)n[y]=t[X+y]}for(;y<Q;++y)n[y]=n[y-B]}}r.l=p,r.p=W,r.b=y,r.f=f,p&&(f=1,r.m=h,r.d=d,r.n=w)}while(!f);return y!=n.length&&i?ie(n,0,y):n.subarray(0,y)},fe=function(e,r,n){n<<=7&r;var t=r/8|0;e[t]|=n,e[t+1]|=n>>8},le=function(e,r,n){n<<=7&r;var t=r/8|0;e[t]|=n,e[t+1]|=n>>8,e[t+2]|=n>>16},ye=function(e,r){for(var n=[],t=0;t<e.length;++t)e[t]&&n.push({s:t,f:e[t]});var o=n.length,a=n.slice();if(!o)return{t:ve,l:0};if(1==o){var i=new L(n[0].s+1);return i[n[0].s]=1,{t:i,l:1}}n.sort(function(e,r){return e.f-r.f}),n.push({s:-1,f:25001});var s=n[0],c=n[1],u=0,f=1,l=2;for(n[0]={s:-1,f:s.f+c.f,l:s,r:c};f!=o-1;)s=n[n[u].f<n[l].f?u++:l++],c=n[u!=f&&n[u].f<n[l].f?u++:l++],n[f++]={s:-1,f:s.f+c.f,l:s,r:c};var y=a[0].s;for(t=1;t<o;++t)a[t].s>y&&(y=a[t].s);var p=new C(y+1),d=pe(n[f-1],p,0);if(d>r){t=0;var h=0,w=d-r,m=1<<w;for(a.sort(function(e,r){return p[r.s]-p[e.s]||e.f-r.f});t<o;++t){var g=a[t].s;if(!(p[g]>r))break;h+=m-(1<<d-p[g]),p[g]=r}for(h>>=w;h>0;){var v=a[t].s;p[v]<r?h-=1<<r-p[v]++-1:++t}for(;t>=0&&h;--t){var b=a[t].s;p[b]==r&&(--p[b],++h)}d=r}return{t:new L(p),l:d}},pe=function(e,r,n){return-1==e.s?Math.max(pe(e.l,r,n+1),pe(e.r,r,n+1)):r[e.s]=n},de=function(e){for(var r=e.length;r&&!e[--r];);for(var n=new C(++r),t=0,o=e[0],a=1,i=function(e){n[t++]=e},s=1;s<=r;++s)if(e[s]==o&&s!=r)++a;else{if(!o&&a>2){for(;a>138;a-=138)i(32754);a>2&&(i(a>10?a-11<<5|28690:a-3<<5|12305),a=0)}else if(a>3){for(i(o),--a;a>6;a-=6)i(8304);a>2&&(i(a-3<<5|8208),a=0)}for(;a--;)i(o);a=1,o=e[s]}return{c:n.subarray(0,t),n:r}},he=function(e,r){for(var n=0,t=0;t<r.length;++t)n+=e[t]*r[t];return n},we=function(e,r,n){var t=n.length,o=ae(r+2);e[o]=255&t,e[o+1]=t>>8,e[o+2]=255^e[o],e[o+3]=255^e[o+1];for(var a=0;a<t;++a)e[o+a+4]=n[a];return 8*(o+4+t)},me=function(e,r,n,t,o,a,i,s,c,u,f){fe(r,f++,n),++o[256];for(var l=ye(o,15),y=l.t,p=l.l,d=ye(a,15),h=d.t,w=d.l,m=de(y),g=m.c,v=m.n,b=de(h),E=b.c,A=b.n,T=new C(19),S=0;S<g.length;++S)++T[31&g[S]];for(S=0;S<E.length;++S)++T[31&E[S]];for(var O=ye(T,7),k=O.t,x=O.l,R=19;R>4&&!k[M[R-1]];--R);var F,P,$,D,L=u+5<<3,z=he(o,K)+he(a,Q)+i,B=he(o,y)+he(a,h)+i+14+3*R+he(T,k)+2*T[16]+3*T[17]+7*T[18];if(c>=0&&L<=z&&L<=B)return we(r,f,e.subarray(c,c+u));if(fe(r,f,1+(B<z)),f+=2,B<z){F=G(y,p,0),P=y,$=G(h,w,0),D=h;var N=G(k,x,0);for(fe(r,f,v-257),fe(r,f+5,A-1),fe(r,f+10,R-4),f+=14,S=0;S<R;++S)fe(r,f+3*S,k[M[S]]);f+=3*R;for(var _=[g,E],I=0;I<2;++I){var W=_[I];for(S=0;S<W.length;++S){var q=31&W[S];fe(r,f,N[q]),f+=k[q],q>15&&(fe(r,f,W[S]>>5&127),f+=W[S]>>12)}}}else F=X,P=K,$=ee,D=Q;for(S=0;S<s;++S){var H=t[S];if(H>255){le(r,f,F[257+(q=H>>18&31)]),f+=P[q+257],q>7&&(fe(r,f,H>>23&31),f+=j[q]);var J=31&H;le(r,f,$[J]),f+=D[J],J>3&&(le(r,f,H>>5&8191),f+=U[J])}else le(r,f,F[H]),f+=P[H]}return le(r,f,F[256]),f+P[256]},ge=new z([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),ve=new L(0),be=function(e,r,n,t,o,a){var i=a.z||e.length,s=new L(t+i+5*(1+Math.ceil(i/7e3))+o),c=s.subarray(t,s.length-o),u=a.l,f=7&(a.r||0);if(r){f&&(c[0]=a.r>>3);for(var l=ge[r-1],y=l>>13,p=8191&l,d=(1<<n)-1,h=a.p||new C(32768),w=a.h||new C(d+1),m=Math.ceil(n/3),g=2*m,v=function(r){return(e[r]^e[r+1]<<m^e[r+2]<<g)&d},b=new z(25e3),E=new C(288),A=new C(32),T=0,S=0,O=a.i||0,k=0,x=a.w||0,R=0;O+2<i;++O){var F=v(O),P=32767&O,$=w[F];if(h[P]=$,w[F]=P,x<=O){var D=i-O;if((T>7e3||k>24576)&&(D>423||!u)){f=me(e,c,0,b,E,A,S,k,R,O-R,f),k=T=S=0,R=O;for(var M=0;M<286;++M)E[M]=0;for(M=0;M<30;++M)A[M]=0}var B=2,N=0,_=p,W=P-$&32767;if(D>2&&F==v(O-W))for(var q=Math.min(y,D)-1,J=Math.min(32767,O),V=Math.min(258,D);W<=J&&--_&&P!=$;){if(e[O+B]==e[O+B-W]){for(var Y=0;Y<V&&e[O+Y]==e[O+Y-W];++Y);if(Y>B){if(B=Y,N=W,Y>q)break;var G=Math.min(W,Y-2),K=0;for(M=0;M<G;++M){var Q=O-W+M&32767,X=Q-h[Q]&32767;X>K&&(K=X,$=Q)}}}W+=(P=$)-($=h[P])&32767}if(N){b[k++]=268435456|I[B]<<18|H[N];var Z=31&I[B],ee=31&H[N];S+=j[Z]+U[ee],++E[257+Z],++A[ee],x=O+B,++T}else b[k++]=e[O],++E[e[O]]}}for(O=Math.max(O,x);O<i;++O)b[k++]=e[O],++E[e[O]];f=me(e,c,u,b,E,A,S,k,R,O-R,f),u||(a.r=7&f|c[f/8|0]<<3,f-=7,a.h=w,a.p=h,a.i=O,a.w=x)}else{for(O=a.w||0;O<i+u;O+=65535){var re=O+65535;re>=i&&(c[f/8|0]=u,re=i),f=we(c,f+1,e.subarray(O,re))}a.i=i}return ie(s,0,t+ae(f)+o)},Ee=function(){for(var e=new Int32Array(256),r=0;r<256;++r){for(var n=r,t=9;--t;)n=(1&n&&-306674912)^n>>>1;e[r]=n}return e}(),Ae=function(e,r,n,t,o){if(!o&&(o={l:1},r.dictionary)){var a=r.dictionary.subarray(-32768),i=new L(a.length+e.length);i.set(a),i.set(e,a.length),e=i,o.w=a.length}return be(e,null==r.level?6:r.level,null==r.mem?o.l?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(e.length)))):20:12+r.mem,n,t,o)},Te=function(e,r){var n={};for(var t in e)n[t]=e[t];for(var t in r)n[t]=r[t];return n},Se=function(e,r,n){for(var t=e(),o=e.toString(),a=o.slice(o.indexOf("[")+1,o.lastIndexOf("]")).replace(/\s+/g,"").split(","),i=0;i<t.length;++i){var s=t[i],c=a[i];if("function"==typeof s){r+=";"+c+"=";var u=s.toString();if(s.prototype)if(-1!=u.indexOf("[native code]")){var f=u.indexOf(" ",8)+1;r+=u.slice(f,u.indexOf("(",f))}else for(var l in r+=u,s.prototype)r+=";"+c+".prototype."+l+"="+s.prototype[l].toString();else r+=u}else n[c]=s}return r},Oe=[],ke=function(){return[L,C,z,j,U,M,_,q,Z,re,J,se,G,ne,te,oe,ae,ie,ce,ue,je,Re,Fe]},xe=function(){return[L,C,z,j,U,M,I,H,X,K,ee,Q,J,ge,ve,G,fe,le,ye,pe,de,he,we,me,ae,ie,be,Ae,ze,Re]},Re=function(e){return postMessage(e,[e.buffer])},Fe=function(e){return e&&{out:e.size&&new L(e.size),dictionary:e.dictionary}},Pe=function(e,r,n,t,o,a){var i=function(e,r,n,t){if(!Oe[n]){for(var o="",a={},i=e.length-1,s=0;s<i;++s)o=Se(e[s],o,a);Oe[n]={c:Se(e[i],o,a),e:a}}var c=Te({},Oe[n].e);return function(e,r,n,t,o){var a=new Worker(D[r]||(D[r]=URL.createObjectURL(new Blob([e+';addEventListener("error",function(e){e=e.error;postMessage({$e$:[e.message,e.code,e.stack]})})'],{type:"text/javascript"}))));return a.onmessage=function(e){var r=e.data,n=r.$e$;if(n){var t=new Error(n[0]);t.code=n[1],t.stack=n[2],o(t,null)}else o(null,r)},a.postMessage(n,t),a}(Oe[n].c+";onmessage=function(e){for(var k in e.data)self[k]=e.data[k];onmessage="+r.toString()+"}",n,c,function(e){var r=[];for(var n in e)e[n].buffer&&r.push((e[n]=new e[n].constructor(e[n])).buffer);return r}(c),t)}(n,t,o,function(e,r){i.terminate(),a(e,r)});return i.postMessage([e,r],r.consume?[e.buffer]:[]),function(){i.terminate()}},$e=function(e,r){return e[r]|e[r+1]<<8},De=function(e,r){return(e[r]|e[r+1]<<8|e[r+2]<<16|e[r+3]<<24)>>>0},Le=function(e,r){return De(e,r)+4294967296*De(e,r+4)},Ce=function(e,r,n){for(;n;++r)e[r]=n,n>>>=8};function ze(e,r){return Ae(e,r||{},0,0)}function je(e,r){return ue(e,{i:2},r&&r.out,r&&r.dictionary)}var Ue=function(e,r,n,t){for(var o in e){var a=e[o],i=r+o,s=t;Array.isArray(a)&&(s=Te(t,a[1]),a=a[0]),ArrayBuffer.isView(a)?n[i]=[a,s]:(n[i+="/"]=[new L(0),s],Ue(a,i,n,t))}},Me="undefined"!=typeof TextEncoder&&new TextEncoder,Be="undefined"!=typeof TextDecoder&&new TextDecoder;try{Be.decode(ve,{stream:!0})}catch(e){}function Ne(e,r){if(r){for(var n=new L(e.length),t=0;t<e.length;++t)n[t]=e.charCodeAt(t);return n}if(Me)return Me.encode(e);var o=e.length,a=new L(e.length+(e.length>>1)),i=0,s=function(e){a[i++]=e};for(t=0;t<o;++t){if(i+5>a.length){var c=new L(i+8+(o-t<<1));c.set(a),a=c}var u=e.charCodeAt(t);u<128||r?s(u):u<2048?(s(192|u>>6),s(128|63&u)):u>55295&&u<57344?(s(240|(u=65536+(1047552&u)|1023&e.charCodeAt(++t))>>18),s(128|u>>12&63),s(128|u>>6&63),s(128|63&u)):(s(224|u>>12),s(128|u>>6&63),s(128|63&u))}return ie(a,0,i)}function _e(e,r){if(r){for(var n="",t=0;t<e.length;t+=16384)n+=String.fromCharCode.apply(null,e.subarray(t,t+16384));return n}if(Be)return Be.decode(e);var o=function(e){for(var r="",n=0;;){var t=e[n++],o=(t>127)+(t>223)+(t>239);if(n+o>e.length)return{s:r,r:ie(e,n-1)};o?3==o?(t=((15&t)<<18|(63&e[n++])<<12|(63&e[n++])<<6|63&e[n++])-65536,r+=String.fromCharCode(55296|t>>10,56320|1023&t)):r+=1&o?String.fromCharCode((31&t)<<6|63&e[n++]):String.fromCharCode((15&t)<<12|(63&e[n++])<<6|63&e[n++]):r+=String.fromCharCode(t)}}(e),a=o.s;return(n=o.r).length&&ce(8),a}var Ie=function(e,r,n,t,o,a,i){var s=4294967295==o,c=4294967295==a,u=4294967295==i,f=r+n;if(t&&s+c+u){for(;r+4<f;r+=4+$e(e,r+2))if(1==$e(e,r))return[s?Le(e,r+4+8*c):o,c?Le(e,r+4):a,u?Le(e,r+4+8*(c+s)):i,1];t<2&&ce(13)}return[o,a,i,0]},We=function(e){var r=0;if(e)for(var n in e){var t=e[n].length;t>65535&&ce(9),r+=t+4}return r},qe=function(e,r,n,t,o,a,i,s){var c=t.length,u=n.extra,f=s&&s.length,l=We(u);Ce(e,r,null!=i?33639248:67324752),r+=4,null!=i&&(e[r++]=20,e[r++]=n.os),e[r]=20,r+=2,e[r++]=n.flag<<1|(a<0&&8),e[r++]=o&&8,e[r++]=255&n.compression,e[r++]=n.compression>>8;var y=new Date(null==n.mtime?Date.now():n.mtime),p=y.getFullYear()-1980;if((p<0||p>119)&&ce(10),Ce(e,r,p<<25|y.getMonth()+1<<21|y.getDate()<<16|y.getHours()<<11|y.getMinutes()<<5|y.getSeconds()>>1),r+=4,-1!=a&&(Ce(e,r,n.crc),Ce(e,r+4,a<0?-a-2:a),Ce(e,r+8,n.size)),Ce(e,r+12,c),Ce(e,r+14,l),r+=16,null!=i&&(Ce(e,r,f),Ce(e,r+6,n.attrs),Ce(e,r+10,i),r+=14),e.set(t,r),r+=c,l)for(var d in u){var h=u[d],w=h.length;Ce(e,r,+d),Ce(e,r+2,w),e.set(h,r+4),r+=4+w}return f&&(e.set(s,r),r+=f),r};function He(e,r,n){n||(n=r,r={}),"function"!=typeof n&&ce(7);var t={};Ue(e,"",t,r);var o=Object.keys(t),a=o.length,i=0,s=0,c=a,u=new Array(a),f=[],l=function(){for(var e=0;e<f.length;++e)f[e]()},y=function(e,r){Je(function(){n(e,r)})};Je(function(){y=n});var p=function(){var e=new L(s+22),r=i,n=s-i;s=0;for(var t=0;t<c;++t){var o=u[t];try{var a=o.c.length;qe(e,s,o,o.f,o.u,a);var f=30+o.f.length+We(o.extra),l=s+f;e.set(o.c,l),qe(e,i,o,o.f,o.u,a,s,o.m),i+=16+f+(o.m?o.m.length:0),s=l+a}catch(e){return y(e,null)}}(function(e,r,n,t,o){Ce(e,r,101010256),Ce(e,r+8,n),Ce(e,r+10,n),Ce(e,r+12,t),Ce(e,r+16,o)})(e,i,u.length,n,r),y(null,e)};a||p();for(var d=function(e){var r=o[e],n=t[r],c=n[0],d=n[1],h=function(){var e=-1;return{p:function(r){for(var n=e,t=0;t<r.length;++t)n=Ee[255&n^r[t]]^n>>>8;e=n},d:function(){return~e}}}(),w=c.length;h.p(c);var m=Ne(r),g=m.length,v=d.comment,b=v&&Ne(v),E=b&&b.length,A=We(d.extra),T=0==d.level?0:8,S=function(n,t){if(n)l(),y(n,null);else{var o=t.length;u[e]=Te(d,{size:w,crc:h.d(),c:t,f:m,m:b,u:g!=r.length||b&&v.length!=E,compression:T}),i+=30+g+A+o,s+=76+2*(g+A)+(E||0)+o,--a||p()}};if(g>65535&&S(ce(11,0,1),null),T)if(w<16e4)try{S(null,ze(c,d))}catch(e){S(e,null)}else f.push(function(e,r,n){return n||(n=r,r={}),"function"!=typeof n&&ce(7),Pe(e,r,[xe],function(e){return Re(ze(e.data[0],e.data[1]))},0,n)}(c,d,S));else S(null,c)},h=0;h<c;++h)d(h);return l}var Je="function"==typeof queueMicrotask?queueMicrotask:"function"==typeof setTimeout?setTimeout:function(e){e()};class Ve{resolve;reject;promise;constructor(){if("function"==typeof Promise.withResolvers){const{promise:e,resolve:r,reject:n}=Promise.withResolvers();this.promise=e,this.resolve=r,this.reject=n}else this.promise=new Promise((e,r)=>{this.resolve=e,this.reject=r})}}const Ye="NotFoundError",Ge="/",Ke=".",Qe="/tmp";function Xe(e){t("string"==typeof e),t(e[0]===Ge)}function Ze(e){t("string"==typeof e)}let er;function rr(e){return e===Ge}async function nr(e,r,n){try{return v(await e.getDirectoryHandle(r,n))}catch(n){const t=n,o=new Error(`${t.name}: ${t.message} When get child directory '${r}' from directory '${e.name||Ge}'.`);return o.name=t.name,b(o)}}async function tr(e,r){let n=await async function(){return er??=await navigator.storage.getDirectory(),er}();if(rr(e))return v(n);let t=e.slice(1);for(;t;){let e="";const o=t.indexOf("/");if(-1===o)e=t,t="";else if(e=t.slice(0,o),t=t.slice(o+1),0===o)continue;const a=await nr(n,e,r);if(a.isErr())return a;n=a.unwrap()}return v(n)}async function or(e,r){const n=r?.create??!1,t=c(e),o=u(e);return(await tr(t,{create:n})).andThenAsync(e=>async function(e,r,n){try{return v(await e.getFileHandle(r,n))}catch(n){const t=n,o=new Error(`${t.name}: ${t.message} When get child file '${r}' from directory '${e.name||Ge}'.`);return o.name=t.name,b(o)}}(e,o,{create:n}))}function ar(e){return e.name===Ye}async function ir(e){const r=(await Promise.all(e)).find(e=>e.isErr());return r??O}function sr(){const e=new Error;return e.name=k,e}function cr(e){const{isDirectory:r=!1,basename:n="tmp",extname:t=""}=e??{},o=r?"":t;return f(Qe,`${n?`${n}-`:""}${crypto.randomUUID()}${o}`)}function ur(e){return e.startsWith(`${Qe}/`)}async function fr(e){const{name:r,kind:n}=e;if(lr(e)){const t=await e.getFile(),{size:o,lastModified:a,type:i}=t;return{name:r,kind:n,type:i,size:o,lastModified:a}}return{name:r,kind:n}}function lr(e){return"file"===e.kind}function yr(e){return"directory"===e.kind}function pr(e){return"file"===e.kind}async function dr(e){const r=await e.getFile(),n=await r.arrayBuffer();return new Uint8Array(n)}async function hr(e){return Xe(e),(await or(e,{create:!0})).and(O)}async function wr(e){return Xe(e),(await tr(e,{create:!0})).and(O)}async function mr(e,r){async function*n(t,o){const a=t.entries();for await(const[i,s]of a){const a=o===e?i:f(o,i);yield{path:a,handle:s},yr(s)&&r?.recursive&&(yield*n(await t.getDirectoryHandle(i),a))}}return Xe(e),(await tr(e)).andThen(r=>v(n(r,e)))}async function gr(e,r){return Xe(e),(await or(e)).andThenAsync(async e=>{const n=await e.getFile();switch(r?.encoding){case"blob":return v(n);case"utf8":return v(await n.text());default:return v(await n.arrayBuffer())}})}async function vr(e){Xe(e);const r=c(e),n=u(e),t=await tr(r);return(await t.andThenAsync(async e=>{try{rr(r)&&rr(n)?await e.remove({recursive:!0}):await e.removeEntry(n,{recursive:!0})}catch(e){return b(e)}return O})).orElse(e=>ar(e)?O:b(e))}async function br(e){Xe(e);const r=c(e),n=u(e),t=await tr(r);return n?t.andThenAsync(async r=>{for await(const[e,t]of r.entries())if(e===n)return v(t);const t=new Error(`${Ye}: '${n}' does not exist. Full path is '${e}'.`);return t.name=Ye,b(t)}):t}async function Er(e,r,n){Xe(e);const{append:t=!1,create:o=!0}=n??{};return(await or(e,{create:o})).andThenAsync(async e=>{const n=await e.createWritable({keepExistingData:t}),o={type:"write",data:r};if(t){const{size:r}=await e.getFile();o.position=r}return await n.write(o),await n.close(),O})}function Ar(e,r,n){let t,o;Ze(e),o=!1,"string"==typeof r?Xe(r):(n=r,r=cr({extname:l(e)}),o=!0),t=!1;const a=F(e,{redirect:"follow",...n,abortable:!0}),i=(async()=>(await a.response).andThenAsync(async e=>{const n=await e.blob();return t?b(sr()):(await Er(r,n)).and(v(e))}))();return{abort(e){t=!0,a.abort(e)},get aborted(){return t},get response(){return o?i.then(e=>e.map(e=>({tempFilePath:r,rawResponse:e}))):i}}}async function Tr(e,r){const n=c(r);return(await tr(n,{create:!0})).andThenAsync(async n=>{const t=u(r);try{return await e.move(n,t),O}catch(e){return b(e)}})}async function Sr(e,r,n,t=!0){return Xe(r),(await br(e)).andThenAsync(async o=>{let a;a=!1;const i=await br(r);if(i.isErr()){if(!ar(i.unwrapErr()))return i.asErr()}else{a=!0;const e=i.unwrap();if(!(lr(o)&&lr(e)||yr(o)&&yr(e)))return b(new Error("Both 'srcPath' and 'destPath' must both be a file or directory."))}return lr(o)?t||!a?await n(o,r):O:(await mr(e,{recursive:!0})).andThenAsync(async e=>{const o=[wr(r)];for await(const{path:i,handle:s}of e){const e=f(r,i);let c=!1;if(a){const r=await Rr(e);if(r.isErr()){o.push(Promise.resolve(r.asErr()));continue}c=r.unwrap()}const u=lr(s)?t||!c?n(s,e):Promise.resolve(O):wr(e);o.push(u)}return ir(o)})})}function Or(e,r){return Er(e,r,{append:!0})}async function kr(e,r,n){const{overwrite:t=!0}=n??{};return Sr(e,r,async(e,r)=>await Er(r,await e.getFile()),t)}async function xr(e){const r=await mr(e);if(r.isErr())return ar(r.unwrapErr())?wr(e):r.asErr();const n=[];for await(const{path:t}of r.unwrap())n.push(vr(f(e,t)));return ir(n)}async function Rr(e,r){const{isDirectory:n=!1,isFile:o=!1}=r??{};t(!(n&&o));const a=await br(e);return a.andThen(e=>v(!(n&&lr(e)||o&&yr(e)))).orElse(e=>ar(e)?S:a.asErr())}async function Fr(e,r,n){const{overwrite:t=!0}=n??{};return(await Sr(e,r,Tr,t)).andThenAsync(()=>vr(e))}function Pr(e){return gr(e,{encoding:"blob"})}async function $r(e){return(await Dr(e)).andThenAsync(async e=>{try{return v(JSON.parse(e))}catch(e){return b(e)}})}function Dr(e){return gr(e,{encoding:"utf8"})}async function Lr(e){const{isDirectory:r=!1}=e??{},n=cr(e);return(await(r?wr:hr)(n)).and(v(n))}function Cr(){return vr(Qe)}async function zr(e){return t(e instanceof Date),(await mr(Qe,{recursive:!0})).andThenAsync(async r=>{try{for await(const{handle:n}of r)lr(n)&&(await n.getFile()).lastModified<=e.getTime()&&await n.remove()}catch(e){return b(e)}return O})}async function jr(e,r){const n=new Uint8Array(e),t=new Ve;return function(e,r,n){n||(n=r,r={}),"function"!=typeof n&&ce(7);var t=[],o=function(){for(var e=0;e<t.length;++e)t[e]()},a={},i=function(e,r){Je(function(){n(e,r)})};Je(function(){i=n});for(var s=e.length-22;101010256!=De(e,s);--s)if(!s||e.length-s>65558)return i(ce(13,0,1),null),o;var c=$e(e,s+8);if(c){var u=c,f=De(e,s+16),l=117853008==De(e,s-20);if(l){var y=De(e,s-12);(l=101075792==De(e,y))&&(u=c=De(e,y+32),f=De(e,y+48))}for(var p=r&&r.filter,d=function(r){var n=function(e,r,n){var t=$e(e,r+28),o=$e(e,r+30),a=_e(e.subarray(r+46,r+46+t),!(2048&$e(e,r+8))),i=r+46+t,s=Ie(e,i,o,n,De(e,r+20),De(e,r+24),De(e,r+42)),c=s[0],u=s[1],f=s[2];return[$e(e,r+10),c,u,a,i+o+$e(e,r+32),f]}(e,f,l),s=n[0],u=n[1],y=n[2],d=n[3],h=n[4],w=n[5],m=function(e,r){return r+30+$e(e,r+26)+$e(e,r+28)}(e,w);f=h;var g=function(e,r){e?(o(),i(e,null)):(r&&(a[d]=r),--c||i(null,a))};if(!p||p({name:d,size:u,originalSize:y,compression:s}))if(s)if(8==s){var v=e.subarray(m,m+u);if(y<524288||u>.8*y)try{g(null,je(v,{out:new L(y)}))}catch(e){g(e,null)}else t.push(function(e,r,n){return n||(n=r,r={}),"function"!=typeof n&&ce(7),Pe(e,r,[ke],function(e){return Re(je(e.data[0],Fe(e.data[1])))},1,n)}(v,{size:y},g))}else g(ce(14,"unknown compression type "+s,1),null);else g(null,ie(e,m,m+u));else g(null,null)},h=0;h<u;++h)d()}else i(null,{})}(n,async(e,n)=>{if(e)return void t.resolve(b(e));const o=[];for(const e in n)"/"!==e.at(-1)&&o.push(Er(f(r,e),n[e]));t.resolve(ir(o))}),await t.promise}async function Ur(e,r){return Xe(r),(await gr(e)).andThenAsync(e=>jr(e,r))}async function Mr(e,r,n){return Ze(e),Xe(r),(await F(e,{redirect:"follow",...n,responseType:"arraybuffer",abortable:!1})).andThenAsync(e=>jr(e,r))}function Br(e,r,n){let t,o;Ze(r),t=!1;const a=(async()=>(await Pr(e)).andThenAsync(async a=>{if(t)return b(sr());const{filename:i=u(e),...s}=n??{},c=new FormData;return c.append(i,a,i),o=F(r,{method:"POST",...s,abortable:!0,body:c}),o.response}))();return{abort(e){t=!0,o?.abort(e)},get aborted(){return t},get response(){return a}}}async function Nr(e,r){const n=new Ve;return He(e,{consume:!0},async(e,t)=>{if(e)n.resolve(b(e));else if(r){const e=await Er(r,t);n.resolve(e)}else n.resolve(v(t))}),await n.promise}async function _r(e,r,n){return"string"==typeof r?Xe(r):(n=r,r=void 0),(await br(e)).andThenAsync(async t=>{const o=u(e),a={};if(lr(t)){const e=await dr(t);a[o]=e}else{const r=await mr(e,{recursive:!0});if(r.isErr())return r.asErr();const t=n?.preserveRoot??!0;for await(const{path:e,handle:n}of r.unwrap())if(lr(n)){const r=t?f(o,e):e,i=await dr(n);a[r]=i}}return Nr(a,r)})}async function Ir(e,r,n){return Ze(e),"string"==typeof r?Xe(r):(n=r,r=void 0),(await F(e,{redirect:"follow",...n,responseType:"arraybuffer",abortable:!1})).andThenAsync(n=>{const t={};return t[u(e)]=new Uint8Array(n),Nr(t,r)})}function Wr(){return"function"==typeof navigator?.storage?.getDirectory}function qr(e){return e?{name:e.name,message:e.message}:e}async function Hr(e){const r=await e.arrayBuffer();return{name:e.name,type:e.type,lastModified:e.lastModified,size:r.byteLength,data:r}}let Jr=1e3;var Vr=(e=>(e[e.createFile=0]="createFile",e[e.mkdir=1]="mkdir",e[e.move=2]="move",e[e.readDir=3]="readDir",e[e.remove=4]="remove",e[e.stat=5]="stat",e[e.writeFile=6]="writeFile",e[e.appendFile=7]="appendFile",e[e.copy=8]="copy",e[e.emptyDir=9]="emptyDir",e[e.exists=10]="exists",e[e.deleteTemp=11]="deleteTemp",e[e.mkTemp=12]="mkTemp",e[e.pruneTemp=13]="pruneTemp",e[e.readBlobFile=14]="readBlobFile",e[e.unzip=15]="unzip",e[e.zip=16]="zip",e))(Vr||{});let Yr,Gr;function Kr(e){const r=JSON.stringify(e);return(Yr??=new TextEncoder,Yr).encode(r)}function Qr(e){const r=Xr(e);return JSON.parse(r)}function Xr(e){return(Gr??=new TextDecoder,Gr).decode(e)}class Zr{i32a;u8a;headerLength=16;maxDataLength;constructor(e){this.i32a=new Int32Array(e),this.u8a=new Uint8Array(e),this.maxDataLength=e.byteLength-this.headerLength}}async function en(e,r){const{i32a:n,u8a:t,headerLength:o,maxDataLength:a}=e;for(;1!==Atomics.load(n,1););const i=n[2],s=t.slice(o,o+i);let c=await r(s);const u=c.byteLength;if(u>a){const e=`Response is too large: ${u} > ${a}. Consider grow the size of SharedArrayBuffer.`;if(c=Kr([{name:"RangeError",message:e}]),c.byteLength>a)throw Atomics.store(n,1,0),new RangeError(e)}n[2]=c.byteLength,t.set(c,o),Atomics.store(n,1,0),Atomics.store(n,0,0)}const rn={[Vr.createFile]:hr,[Vr.mkdir]:wr,[Vr.move]:Fr,[Vr.readDir]:mr,[Vr.remove]:vr,[Vr.stat]:br,[Vr.writeFile]:Er,[Vr.appendFile]:Or,[Vr.copy]:kr,[Vr.emptyDir]:xr,[Vr.exists]:Rr,[Vr.deleteTemp]:Cr,[Vr.mkTemp]:Lr,[Vr.pruneTemp]:zr,[Vr.readBlobFile]:Pr,[Vr.unzip]:Ur,[Vr.zip]:_r};let nn,tn;function on(){if("undefined"!=typeof window)throw new Error("Only can use in worker");if(nn)throw new Error("Worker messenger already started");addEventListener("message",e=>{const r=e.data;if(!(r instanceof SharedArrayBuffer))throw new TypeError("Only can post SharedArrayBuffer to Worker");nn=new Zr(r),postMessage(!0),async function(){for(;;)try{await en(nn,async e=>{const[r,...n]=Qr(e);let t;r===Vr.writeFile||r===Vr.appendFile?Array.isArray(n[1])&&(n[1]=new Uint8Array(n[1])):r===Vr.pruneTemp&&(n[0]=new Date(n[0]));const o=rn[r];try{const e=await o(...n);if(e.isErr())t=Kr([qr(e.unwrapErr())]);else{let n;if(r===Vr.readBlobFile){const r=e.unwrap(),t=await Hr(r);n={...t,data:[...new Uint8Array(t.data)]}}else if(r===Vr.readDir){const r=e.unwrap(),t=[];for await(const{path:e,handle:n}of r){const r=await fr(n);t.push({path:e,handle:r})}n=t}else if(r===Vr.stat){const r=e.unwrap();n=await fr(r)}else if(r===Vr.zip){const r=e.unwrap();n=r instanceof Uint8Array?[...r]:r}else n=e.unwrap();t=Kr([null,n])}}catch(e){t=Kr([qr(e)])}return t})}catch(e){console.error(e instanceof Error?e.stack:e)}}()})}function an(e){if("undefined"==typeof window)throw new Error("Only can use in main thread");if(tn)throw new Error("Main messenger already started");return new Promise(r=>{const{worker:n,bufferLength:o=1048576,opTimeout:a=1e3}=e;t(n instanceof Worker||n instanceof URL||"string"==typeof n&&n),t(o>16&&o%4==0),t(Number.isInteger(a)&&a>0),Jr=a;const i=n instanceof Worker?n:new Worker(n),s=new SharedArrayBuffer(o);i.addEventListener("message",e=>{e.data&&(tn=new Zr(s),r())}),i.postMessage(s)})}function sn(){return tn}function cn(e){t(null!=e),tn=e}function un(e,...r){if(!tn)return b(new Error("Worker not initialized. Come back later."));const n=Kr([e,...r]);try{const e=Qr(function(e,r){const{i32a:n,u8a:t,headerLength:o,maxDataLength:a}=e,i=r.byteLength;if(i>a)throw new RangeError(`Request is too large: ${i} > ${a}. Consider grow the size of SharedArrayBuffer.`);Atomics.store(n,0,1),n[2]=i,t.set(r,o),Atomics.store(n,1,1),function(e){const r=Date.now();for(;!e();)if(Date.now()-r>Jr){const e=new Error("Operating Timeout");throw e.name=x,e}}(()=>0===Atomics.load(n,0));const s=n[2];return t.slice(o,o+s)}(tn,n)),r=e[0],t=r?b(function(e){const r=new Error(e.message);return r.name=e.name,r}(r)):v(e[1]??void 0);return t}catch(e){return b(e)}}function fn(e){return un(Vr.createFile,e)}function ln(e){return un(Vr.mkdir,e)}function yn(e,r,n){return un(Vr.move,e,r,n)}function pn(e,r){return un(Vr.readDir,e,r)}function dn(e,r){return un(Vr.readBlobFile,e).map(e=>{const n=new Uint8Array(e.data);switch(e.data=n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength),r?.encoding){case"blob":return e;case"utf8":return Xr(new Uint8Array(e.data));default:return e.data}})}function hn(e){return un(Vr.remove,e)}function wn(e){return un(Vr.stat,e)}function mn(e){return e instanceof ArrayBuffer?[...new Uint8Array(e)]:ArrayBuffer.isView(e)?[...new Uint8Array(e.buffer)]:e}function gn(e,r,n){return un(Vr.writeFile,e,mn(r),n)}function vn(e,r){return un(Vr.appendFile,e,mn(r))}function bn(e,r,n){return un(Vr.copy,e,r,n)}function En(e){return un(Vr.emptyDir,e)}function An(e,r){return un(Vr.exists,e,r)}function Tn(){return un(Vr.deleteTemp)}function Sn(e){return un(Vr.mkTemp,e)}function On(e){return un(Vr.pruneTemp,e)}function kn(e){return dn(e,{encoding:"blob"})}function xn(e){return Rn(e).andThen(e=>{try{return v(JSON.parse(e))}catch(e){return b(e)}})}function Rn(e){return dn(e,{encoding:"utf8"})}function Fn(e,r){return un(Vr.unzip,e,r)}function Pn(e,r,n){return un(Vr.zip,e,r,n).map(e=>e?new Uint8Array(e):e)}}};const r={};function n(t){const o=r[t];if(void 0!==o)return o.exports;const a=r[t]={exports:{}};return e[t](a,a.exports,n),a.exports}n.m=e,(()=>{const e=Symbol("webpack queues"),r=Symbol("webpack exports"),t=Symbol("webpack error"),o=e=>{e?.d<1&&(e.d=1,e.forEach(e=>e.r--),e.forEach(e=>e.r--?e.r++:e()))};n.a=(n,a,i)=>{let s;i&&((s=[]).d=-1);const c=new Set,u=n.exports;let f,l,y;const p=new Promise((e,r)=>{y=r,l=e});p[r]=u,p[e]=e=>(s&&e(s),c.forEach(e),p.catch(e=>{})),n.exports=p,a(n=>{let a;f=(n=>n.map(n=>{if(null!==n&&"object"==typeof n){if(n[e])return n;if(n.then){const a=[];a.d=0,n.then(e=>{i[r]=e,o(a)},e=>{i[t]=e,o(a)});const i={};return i[e]=e=>e(a),i}}const a={};return a[e]=e=>{},a[r]=n,a}))(n);const i=()=>f.map(e=>{if(e[t])throw e[t];return e[r]}),u=new Promise(r=>{a=()=>r(i),a.r=0;const n=e=>e!==s&&!c.has(e)&&(c.add(e),e&&!e.d&&(a.r++,e.push(a)));f.forEach(r=>r[e](n))});return a.r?u:i()},e=>(e?y(p[t]=e):l(u),o(s))),s?.d<0&&(s.d=0)}})(),(()=>{const e=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;let r;n.t=function(t,o){if(1&o&&(t=this(t)),8&o)return t;if("object"==typeof t&&t){if(4&o&&t.__esModule)return t;if(16&o&&"function"==typeof t.then)return t}const a=Object.create(null);n.r(a);const i={};r=r||[null,e({}),e([]),e(e)];for(var s=2&o&&t;("object"==typeof s||"function"==typeof s)&&!~r.indexOf(s);s=e(s))Object.getOwnPropertyNames(s).forEach(e=>i[e]=()=>t[e]);return i.default=()=>t,n.d(a,i),a}})(),n.d=(e,r)=>{if(Array.isArray(r))for(var t=0;t<r.length;){var o=r[t++],a=r[t++];n.o(e,o)?0===a&&t++:0===a?Object.defineProperty(e,o,{enumerable:!0,value:r[t++]}):Object.defineProperty(e,o,{enumerable:!0,get:a})}else for(var o in r)n.o(r,o)&&!n.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:r[o]})},n.f={},n.e=e=>Promise.all(Object.keys(n.f).reduce((r,t)=>(n.f[t](e,r),r),[])),n.u=e=>e+".fs-worker.js",n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),(()=>{const e={},r="@themartiancompany/fs:";n.l=(t,o,a,i)=>{if(e[t])return void e[t].push(o);let s,c;if(void 0!==a){const e=document.getElementsByTagName("script");for(var u=0;u<e.length;u++){const n=e[u];if(n.getAttribute("src")==t||n.getAttribute("data-webpack")==r+a){s=n;break}}}s||(c=!0,s=document.createElement("script"),s.charset="utf-8",n.nc&&s.setAttribute("nonce",n.nc),s.setAttribute("data-webpack",r+a),s.src=t),e[t]=[o];const f=(r,n)=>{s.onerror=s.onload=null,clearTimeout(l);const o=e[t];if(delete e[t],s.parentNode?.removeChild(s),o?.forEach(e=>e(n)),r)return r(n)},l=setTimeout(f.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=f.bind(null,s.onerror),s.onload=f.bind(null,s.onload),c&&document.head.appendChild(s)}})(),n.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{let e;n.g.importScripts&&(e=n.g.location+"");const r=n.g.document;if(!e&&r&&("SCRIPT"===r.currentScript?.tagName.toUpperCase()&&(e=r.currentScript.src),!e)){const n=r.getElementsByTagName("script");if(n.length){let r=n.length-1;for(;r>-1&&(!e||!/^http(s?):/.test(e));)e=n[r--].src}}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),n.p=e})(),(()=>{const e={792:0};n.f.j=(r,t)=>{let o=n.o(e,r)?e[r]:void 0;if(0!==o)if(o)t.push(o[2]);else{const a=new Promise((n,t)=>o=e[r]=[n,t]);t.push(o[2]=a);const i=n.p+n.u(r),s=new Error,c=t=>{if(n.o(e,r)&&(o=e[r],0!==o&&(e[r]=void 0),o)){const e=t&&("load"===t.type?"missing":t.type),n=t&&t.target&&t.target.src;s.message="Loading chunk "+r+" failed.\n("+e+": "+n+")",s.name="ChunkLoadError",s.type=e,s.request=n,s.event=t,o[1](s)}};n.l(i,c,"chunk-"+r,r)}};const r=(r,t)=>{let[o,a,i]=t;var s,c,u=0;if(o.some(r=>0!==e[r])){for(s in a)n.o(a,s)&&(n.m[s]=a[s]);i&&i(n)}for(r&&r(t);u<o.length;u++)c=o[u],n.o(e,c)&&e[c]&&e[c][0](),e[c]=0},t=self.webpackChunk_themartiancompany_fs=self.webpackChunk_themartiancompany_fs||[];t.forEach(r.bind(null,0)),t.push=r.bind(null,t.push.bind(t))})(),n(314)})();
|
package/dist/fs/fs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{var e={727(e,r,t){function n(){let e;return"undefined"==typeof window&&void 0!==t.g&&t.g.global===t.g&&"function"!=typeof t||(e=function(){let e;try{e=t(10)}catch(e){console.log(e);const r="Error importing the '@themartiancompany/opfs' module as 'opfs'. If you got this error while bundling a webpack for a project depending on this module double check its 'webpack.config.js' file or whether the 'opfs' module is listed in developer dependencies and install them.I'm sorry for this inconvenience but Node packagement system does not currently distinguish 'development' from 'build' dependencies.";throw console.error(r),e}return e}()),e}const a=n();var o;a.isDirSync=(void 0===(o=a)&&(o=n()),function(e){return!o.statSync(e).isFile()}),a.isDir=a.isDirSync,e.exports=a,e.exports.getModule=function(e){let r;if(""==e||void 0===e)r=n();else if("opfs"==e)r=_opfs_module_auto_detect();else{if("fs"!=e){const r="Unknown file system module "+`'${e}'.`.const;throw _error={msg:r},console.error(r),_error}r=t(Object(function(){const e=new Error("Cannot find module 'node:fs'");throw e.code="MODULE_NOT_FOUND",e}())),r.fsWorkerStart=function(e){let r;return r=e.fsWorkerStart,void 0===r&&(r=function(){}),r}(r)}return r}},10(e,r,t){const n=t(516),a=t(554),o=t(12);function i(e){let r;return void 0===e&&(e="fs-worker.js"),r=new a(e),r}_file=o.file,_read_stream_create=function(e,r){return _file(e).createReader()};const s=(void 0!==(c=n)&&""!=c&&c!={}||(c=t(516)),function(e){const r=n.copySync;return _return=r.apply(null,[e]).unwrap(),_return});var c;e.exports=n,e.exports.copyFile=n.copy,e.exports.copyFileSync=s,e.exports.cp=n.copy,e.exports.cpSync=s,e.exports.fsWorkerNew=i,e.exports.fsWorkerStart=async function(e,r,t){let a,o,s,c;return void 0===e&&(e="fs-worker.js"),"Number"!=typeof r&&(r=10485760),"Number"!=typeof r&&(t=10485760),o=n.connectSyncAgent,c=i(e),s={worker:c,bufferLength:r,opTimeout:t},a=o(s),a},e.exports.createReadStream=_read_stream_create,e.exports.createWriteStream=function(e,r){return _file(e).createWriter()},e.exports.chmod=async function(e,r){},e.exports.chmodSync=function(e,r){},e.exports.chown=async function(e,r){},e.exports.chownSync=function(e,r){},e.exports.mkdtemp=n.mkTemp,e.exports.mkdtempSync=n.mkTempSync,e.exports.readdirSync=function(e){const r=n.readDirSync;return _return=r.apply(null,[e]).unwrap(),_return},e.exports.renameSync=function(e){const r=n.moveSync;return _return=r.apply(null,e).unwrap(),_return},e.exports.rmSync=function(e){const r=n.removeSync;return _return=r.apply(null,e).unwrap(),_return}},12(e,r){!function(e){"use strict";var r,t,n,a,o,i,s,c,u,l,f,y,d=e=>{throw TypeError(e)},h=(e,r,t)=>r.has(e)||d("Cannot "+t),w=(e,r,t)=>(h(e,r,"read from private field"),t?t.call(e):r.get(e)),p=(e,r,t)=>r.has(e)?d("Cannot add the same private member more than once"):r instanceof WeakSet?r.add(e):r.set(e,t),m=(e,r,t,n)=>(h(e,r,"write to private field"),n?n.call(e,t):r.set(e,t),t);const g="KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHUobil7aWYobj09PSIvIilyZXR1cm57cGFyZW50Om51bGwsbmFtZToiIn07Y29uc3QgZT1uLnNwbGl0KCIvIikuZmlsdGVyKGk9PmkubGVuZ3RoPjApO2lmKGUubGVuZ3RoPT09MCl0aHJvdyBFcnJvcigiSW52YWxpZCBwYXRoIik7Y29uc3QgYT1lW2UubGVuZ3RoLTFdLHI9Ii8iK2Uuc2xpY2UoMCwtMSkuam9pbigiLyIpO3JldHVybntuYW1lOmEscGFyZW50OnJ9fWFzeW5jIGZ1bmN0aW9uIHcobixlKXtjb25zdHtwYXJlbnQ6YSxuYW1lOnJ9PXUobik7aWYoYT09bnVsbClyZXR1cm4gYXdhaXQgbmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCk7Y29uc3QgaT1hLnNwbGl0KCIvIikuZmlsdGVyKHQ9PnQubGVuZ3RoPjApO3RyeXtsZXQgdD1hd2FpdCBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKTtmb3IoY29uc3QgcyBvZiBpKXQ9YXdhaXQgdC5nZXREaXJlY3RvcnlIYW5kbGUocyx7Y3JlYXRlOmUuY3JlYXRlfSk7aWYoZS5pc0ZpbGUpcmV0dXJuIGF3YWl0IHQuZ2V0RmlsZUhhbmRsZShyLHtjcmVhdGU6ZS5jcmVhdGV9KX1jYXRjaCh0KXtpZih0Lm5hbWU9PT0iTm90Rm91bmRFcnJvciIpcmV0dXJuIG51bGw7dGhyb3cgdH19Y29uc3QgZj17fTtzZWxmLm9ubWVzc2FnZT1hc3luYyBuPT57dmFyIGk7Y29uc3R7ZXZ0VHlwZTplLGFyZ3M6YX09bi5kYXRhO2xldCByPWZbYS5maWxlSWRdO3RyeXtsZXQgdDtjb25zdCBzPVtdO2lmKGU9PT0icmVnaXN0ZXIiKXtjb25zdCBsPWF3YWl0IHcoYS5maWxlUGF0aCx7Y3JlYXRlOiEwLGlzRmlsZTohMH0pO2lmKGw9PW51bGwpdGhyb3cgRXJyb3IoYG5vdCBmb3VuZCBmaWxlOiAke2EuZmlsZUlkfWApO3I9YXdhaXQgbC5jcmVhdGVTeW5jQWNjZXNzSGFuZGxlKHttb2RlOmEubW9kZX0pLGZbYS5maWxlSWRdPXJ9ZWxzZSBpZihlPT09ImNsb3NlIilhd2FpdCByLmNsb3NlKCksZGVsZXRlIGZbYS5maWxlSWRdO2Vsc2UgaWYoZT09PSJ0cnVuY2F0ZSIpYXdhaXQgci50cnVuY2F0ZShhLm5ld1NpemUpO2Vsc2UgaWYoZT09PSJ3cml0ZSIpe2NvbnN0e2RhdGE6bCxvcHRzOm99PW4uZGF0YS5hcmdzO3Q9YXdhaXQgci53cml0ZShsLG8pfWVsc2UgaWYoZT09PSJyZWFkIil7Y29uc3R7b2Zmc2V0Omwsc2l6ZTpvfT1uLmRhdGEuYXJncyxnPW5ldyBVaW50OEFycmF5KG8pLGQ9YXdhaXQgci5yZWFkKGcse2F0Omx9KSxjPWcuYnVmZmVyO3Q9ZD09PW8/YzooKGk9Yy50cmFuc2Zlcik9PW51bGw/dm9pZCAwOmkuY2FsbChjLGQpKT8/Yy5zbGljZSgwLGQpLHMucHVzaCh0KX1lbHNlIGU9PT0iZ2V0U2l6ZSI/dD1hd2FpdCByLmdldFNpemUoKTplPT09ImZsdXNoIiYmYXdhaXQgci5mbHVzaCgpO3NlbGYucG9zdE1lc3NhZ2Uoe2V2dFR5cGU6ImNhbGxiYWNrIixjYklkOm4uZGF0YS5jYklkLHJldHVyblZhbDp0fSxzKX1jYXRjaCh0KXtjb25zdCBzPXQ7c2VsZi5wb3N0TWVzc2FnZSh7ZXZ0VHlwZToidGhyb3dFcnJvciIsY2JJZDpuLmRhdGEuY2JJZCxlcnJNc2c6cy5uYW1lKyI6ICIrcy5tZXNzYWdlK2AKYCtKU09OLnN0cmluZ2lmeShuLmRhdGEpfSl9fX0pKCk7Ci8vIyBzb3VyY2VNYXBwaW5nVVJMPW9wZnMtd29ya2VyLUY0UldscWNfLmpzLm1hcAo=",v=typeof self<"u"&&self.Blob&&new Blob([(b=g,Uint8Array.from(atob(b),e=>e.charCodeAt(0)))],{type:"text/javascript;charset=utf-8"});var b;function E(e){let r;try{if(r=v&&(self.URL||self.webkitURL).createObjectURL(v),!r)throw"";const t=new Worker(r,{name:null==e?void 0:e.name});return t.addEventListener("error",()=>{(self.URL||self.webkitURL).revokeObjectURL(r)}),t}catch{return new Worker("data:text/javascript;base64,"+g,{name:null==e?void 0:e.name})}finally{r&&(self.URL||self.webkitURL).revokeObjectURL(r)}}async function S(e,r,t){const n=function(){if(T.length<3){const r=e();return T.push(r),r}{const e=T[k];return k=(k+1)%T.length,e}function e(){const e=new E;let r=0,t={};return e.onmessage=({data:e})=>{var r,n;"callback"===e.evtType?null==(r=t[e.cbId])||r.resolve(e.returnVal):"throwError"===e.evtType&&(null==(n=t[e.cbId])||n.reject(Error(e.errMsg))),delete t[e.cbId]},async function(n,a,o=[]){r+=1;const i=new Promise((e,n)=>{t[r]={resolve:e,reject:n}});return e.postMessage({cbId:r,evtType:n,args:a},o),i}}}();return await n("register",{fileId:e,filePath:r,mode:t}),{read:async(r,t)=>await n("read",{fileId:e,offset:r,size:t}),write:async(r,t)=>await n("write",{fileId:e,data:r,opts:t},[ArrayBuffer.isView(r)?r.buffer:r]),close:async()=>await n("close",{fileId:e}),truncate:async r=>await n("truncate",{fileId:e,newSize:r}),getSize:async()=>await n("getSize",{fileId:e}),flush:async()=>await n("flush",{fileId:e})}}const T=[];let k=0;function O(e){if("/"===e)return{parent:null,name:""};const r=e.split("/").filter(e=>e.length>0);if(0===r.length)throw Error("Invalid path");return{name:r[r.length-1],parent:"/"+r.slice(0,-1).join("/")}}async function A(e,r){const{parent:t,name:n}=O(e);if(null==t)return await navigator.storage.getDirectory();const a=t.split("/").filter(e=>e.length>0);try{let e=await navigator.storage.getDirectory();for(const t of a)e=await e.getDirectoryHandle(t,{create:r.create});return r.isFile?await e.getFileHandle(n,{create:r.create}):await e.getDirectoryHandle(n,{create:r.create})}catch(e){if("NotFoundError"===e.name)return null;throw e}}async function F(e){const{parent:r,name:t}=O(e);if(null==r){const e=await navigator.storage.getDirectory();for await(const r of e.keys())await e.removeEntry(r,{recursive:!0});return}const n=await A(r,{create:!1,isFile:!1});if(null!=n)try{await n.removeEntry(t,{recursive:!0})}catch(e){if("NotFoundError"===e.name)return;throw e}}function x(e,r){return`${e}/${r}`.replace("//","/")}function R(e){return new W(e)}r=new WeakMap,t=new WeakMap,n=new WeakMap;let W=class e{constructor(e){p(this,r),p(this,t),p(this,n),m(this,r,e);const{parent:a,name:o}=O(e);m(this,t,o),m(this,n,a)}get kind(){return"dir"}get name(){return w(this,t)}get path(){return w(this,r)}get parent(){return null==w(this,n)?null:R(w(this,n))}async create(){return await A(w(this,r),{create:!0,isFile:!1}),R(w(this,r))}async exists(){return await A(w(this,r),{create:!1,isFile:!1})instanceof FileSystemDirectoryHandle}async remove(e={}){for(const r of await this.children())try{await r.remove(e)}catch(e){console.warn(e)}try{await F(w(this,r))}catch(e){console.warn(e)}}async children(){const e=await A(w(this,r),{create:!1,isFile:!1});if(null==e)return[];const t=[];for await(const n of e.values())t.push(("file"===n.kind?P:R)(x(w(this,r),n.name)));return t}async copyTo(r){if(!await this.exists())throw Error(`dir ${this.path} not exists`);if(r instanceof e){const e=await r.exists()?R(x(r.path,this.name)):r;return await e.create(),await Promise.all((await this.children()).map(r=>r.copyTo(e))),e}if(r instanceof FileSystemDirectoryHandle)return await Promise.all((await this.children()).map(async e=>{"file"===e.kind?await e.copyTo(await r.getFileHandle(e.name,{create:!0})):await e.copyTo(await r.getDirectoryHandle(e.name,{create:!0}))})),null;throw Error("Illegal target type")}async moveTo(e){const r=await this.copyTo(e);return await this.remove(),r}};const Z=new Map;function P(e,r="rw"){if("rw"===r){const t=Z.get(e)??new U(e,r);return Z.set(e,t),t}return new U(e,r)}async function L(e,r,t={overwrite:!0}){if(r instanceof U)return void await L(e,await r.stream(),t);const n=await(e instanceof U?e:P(e,"rw")).createWriter();try{if(t.overwrite&&await n.truncate(0),r instanceof ReadableStream){const e=r.getReader();for(;;){const{done:r,value:t}=await e.read();if(r)break;await n.write(t)}}else await n.write(r)}catch(e){throw e}finally{await n.close()}}let I=0;a=new WeakMap,o=new WeakMap,i=new WeakMap,s=new WeakMap,c=new WeakMap,u=new WeakMap,l=new WeakMap,f=new WeakMap,y=new WeakMap;let U=class e{constructor(e,r){p(this,a),p(this,o),p(this,i),p(this,s),p(this,c),p(this,u,0),p(this,l,async()=>{}),p(this,f,(()=>{let e=null;return()=>(m(this,u,w(this,u)+1),null!=e||(e=new Promise(async(r,t)=>{try{const t=await S(w(this,c),w(this,a),w(this,s));m(this,l,async()=>{null!=e&&(e=null,m(this,u,0),await t.close().catch(console.error))}),r([t,async()=>{m(this,u,w(this,u)-1),!(w(this,u)>0)&&(e=null,await t.close())}])}catch(e){t(e)}})),e)})()),p(this,y,!1),m(this,c,++I),m(this,a,e),m(this,s,{r:"read-only",rw:"readwrite","rw-unsafe":"readwrite-unsafe"}[r]);const{parent:t,name:n}=O(e);if(null==t)throw Error("Invalid path");m(this,i,n),m(this,o,t)}get kind(){return"file"}get path(){return w(this,a)}get name(){return w(this,i)}get parent(){return null==w(this,o)?null:R(w(this,o))}async createWriter(){if("read-only"===w(this,s))throw Error("file is read-only");if(w(this,y))throw Error("Other writer have not been closed");m(this,y,!0);try{const e=new TextEncoder,[r,t]=await w(this,f).call(this);let n=await r.getSize(),a=!1;return{write:async(t,o={})=>{if(a)throw Error("Writer is closed");const i="string"==typeof t?e.encode(t):t,s=o.at??n,c=i.byteLength;return n=s+c,await r.write(i,{at:s})},truncate:async e=>{if(a)throw Error("Writer is closed");await r.truncate(e),n>e&&(n=e)},flush:async()=>{if(a)throw Error("Writer is closed");await r.flush()},close:async()=>{if(a)throw Error("Writer is closed");a=!0,m(this,y,!1),await t()}}}catch(e){throw m(this,y,!1),e}}async createReader(){const[e,r]=await w(this,f).call(this);let t=!1,n=0;return{read:async(r,a={})=>{if(t)throw Error("Reader is closed");const o=a.at??n,i=await e.read(o,r);return n=o+i.byteLength,i},getSize:async()=>{if(t)throw Error("Reader is closed");return await e.getSize()},close:async()=>{t||(t=!0,await r())}}}async text(){return(new TextDecoder).decode(await this.arrayBuffer())}async arrayBuffer(){const e=await A(w(this,a),{create:!1,isFile:!0});return null==e?new ArrayBuffer(0):(await e.getFile()).arrayBuffer()}async stream(){const e=await this.getOriginFile();return null==e?new ReadableStream({pull:e=>{e.close()}}):e.stream()}async getOriginFile(){var e;return null==(e=await A(w(this,a),{create:!1,isFile:!0}))?void 0:e.getFile()}async getSize(){const e=await A(w(this,a),{create:!1,isFile:!0});return null==e?0:(await e.getFile()).size}async exists(){return await A(w(this,a),{create:!1,isFile:!0})instanceof FileSystemFileHandle}async remove(e={}){if(!0===e.force)return await w(this,l).call(this),await F(w(this,a)),void Z.delete(w(this,a));if(w(this,u)>0)throw Error("exists unclosed reader/writer");await F(w(this,a))}async copyTo(r){if(r instanceof e)return r.path===this.path?this:(await L(r,this),r);if(r instanceof W){if(!await this.exists())throw Error(`file ${this.path} not exists`);return await this.copyTo(P(x(r.path,this.name)))}if(r instanceof FileSystemFileHandle)return await(await this.stream()).pipeTo(await r.createWritable()),null;throw Error("Illegal target type")}async moveTo(e){const r=await this.copyTo(e);return await this.remove(),r}};const z="/.opfs-tools-temp-dir";async function Y(e){try{if("file"===e.kind){if(!await e.exists())return!0;const r=await e.createWriter();await r.truncate(0),await r.close(),await e.remove()}else await e.remove();return!0}catch(e){return console.warn(e),!1}}const C=[];let j=!1;(async function(){var e;!0!==globalThis.__opfs_tools_tmpfile_init__&&(globalThis.__opfs_tools_tmpfile_init__=!0,null!=globalThis.FileSystemDirectoryHandle&&null!=globalThis.FileSystemFileHandle&&null!=(null==(e=globalThis.navigator)?void 0:e.storage.getDirectory)&&(setInterval(async()=>{for(const e of await R(z).children()){const r=/^\d+-(\d+)$/.exec(e.name);(null==r||Date.now()-Number(r[1])>2592e5)&&await Y(e)}},6e4),await async function(){if(null==globalThis.localStorage)return;const e="OPFS_TOOLS_EXPIRES_TMP_FILES";j||(j=!0,globalThis.addEventListener("unload",()=>{0!==C.length&&localStorage.setItem(e,`${localStorage.getItem(e)??""},${C.join(",")}`)}));let r=localStorage.getItem(e)??"";for(const e of r.split(","))0!==e.length&&await Y(P(`${z}/${e}`))&&(r=r.replace(e,""));localStorage.setItem(e,r.replace(/,{2,}/g,","))}()))})(),e.dir=R,e.file=P,e.rollfile=function(e,r){let t=P(e),n=0,a=t.createWriter(),o=t.createReader();return{append:async e=>{const t=await a;n+=await t.write(e),n>=r&&await(async e=>{const r=await(await o).read(n,{at:Math.round(.3*n)});n=await e.write(r,{at:0}),await e.truncate(n)})(t)},text:t.text.bind(t),remove:async()=>{await(await o).close(),await(await a).close(),await t.remove()},getSize:async()=>n}},e.tmpfile=function(){const e=`${Math.random().toString().slice(2)}-${Date.now()}`;return C.push(e),P(`${z}/${e}`)},e.write=L,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}(r)},554(e){"use strict";var r=typeof Worker<"u"?Worker:void 0;e.exports=r},516(e,r,t){"use strict";t.r(r),t.d(r,{ABORT_ERROR:()=>A,CURRENT_DIR:()=>Je,NOT_FOUND_ERROR:()=>Ve,ROOT_DIR:()=>He,TIMEOUT_ERROR:()=>F,TMP_DIR:()=>Ke,appendFile:()=>Or,appendFileSync:()=>gt,assertAbsolutePath:()=>Qe,assertFileUrl:()=>qe,connectSyncAgent:()=>ot,copy:()=>Ar,copySync:()=>vt,createFile:()=>wr,createFileSync:()=>ut,deleteTemp:()=>Ir,deleteTempSync:()=>St,downloadFile:()=>Sr,emptyDir:()=>Fr,emptyDirSync:()=>bt,exists:()=>xr,existsSync:()=>Et,generateTempPath:()=>cr,getFileDataByHandle:()=>hr,getSyncMessenger:()=>it,isDirectoryHandle:()=>yr,isFileHandle:()=>fr,isFileHandleLike:()=>dr,isOPFSSupported:()=>Gr,isTempPath:()=>ur,mkTemp:()=>Lr,mkTempSync:()=>Tt,mkdir:()=>pr,mkdirSync:()=>lt,move:()=>Rr,moveSync:()=>ft,pruneTemp:()=>Ur,pruneTempSync:()=>kt,readBlobFile:()=>Wr,readBlobFileSync:()=>Ot,readDir:()=>mr,readDirSync:()=>yt,readFile:()=>gr,readFileSync:()=>dt,readJsonFile:()=>Zr,readJsonFileSync:()=>At,readTextFile:()=>Pr,readTextFileSync:()=>Ft,remove:()=>vr,removeSync:()=>ht,setSyncMessenger:()=>st,startSyncAgent:()=>at,stat:()=>br,statSync:()=>wt,toFileSystemHandleLike:()=>lr,unzip:()=>Yr,unzipFromUrl:()=>Cr,unzipSync:()=>xt,uploadFile:()=>jr,writeFile:()=>Er,writeFileSync:()=>mt,zip:()=>Mr,zipFromUrl:()=>Nr,zipSync:()=>Rt});function n(e,r){if(!e)throw new Error("Invariant failed")}function a(e){if("string"!=typeof e)throw new TypeError(`Path must be a string, received "${JSON.stringify(e)}"`)}function o(e,r){if(e.length<=1)return e;let t=e.length;for(let n=e.length-1;n>0&&r(e.charCodeAt(n));n--)t=n;return e.slice(0,t)}function i(e){return 47===e}function s(e){return e=function(e){if("file:"!==(e=e instanceof URL?e:new URL(e)).protocol)throw new TypeError(`URL must be a file URL: received "${e.protocol}"`);return e}(e),decodeURIComponent(e.pathname.replace(/%(?![0-9A-Fa-f]{2})/g,"%25"))}function c(e){e instanceof URL&&(e=s(e)),function(e){a(e),e.length}(e);let r=-1,t=!1;for(let n=e.length-1;n>=1;--n)if(i(e.charCodeAt(n))){if(t){r=n;break}}else t=!0;return-1===r?i(e.charCodeAt(0))?"/":".":o(e.slice(0,r),i)}function u(e,r=""){e instanceof URL&&(e=s(e)),function(e,r){if(a(e),0===e.length)return e;if("string"!=typeof r)throw new TypeError(`Suffix must be a string, received "${JSON.stringify(r)}"`)}(e,r);const t=function(e,r,t=0){let n=!1,a=e.length;for(let o=e.length-1;o>=t;--o)if(r(e.charCodeAt(o))){if(n){t=o+1;break}}else n||(n=!0,a=o+1);return e.slice(t,a)}(e,i),n=o(t,i);return r?function(e,r){if(r.length>=e.length)return e;const t=e.length-r.length;for(let n=r.length-1;n>=0;--n)if(e.charCodeAt(t+n)!==r.charCodeAt(n))return e;return e.slice(0,-r.length)}(n,r):n}function l(e,...r){if(void 0===e)return".";e instanceof URL&&(e=s(e)),(r=e?[e,...r]:r).forEach(e=>a(e));const t=r.filter(e=>e.length>0).join("/");return""===t?".":function(e){e instanceof URL&&(e=s(e)),function(e){a(e),e.length}(e);const r=i(e.charCodeAt(0)),t=i(e.charCodeAt(e.length-1));return e=function(e,r,t,n){let a,o="",i=0,s=-1,c=0;for(let u=0;u<=e.length;++u){if(u<e.length)a=e.charCodeAt(u);else{if(n(a))break;a=47}if(n(a)){if(s===u-1||1===c);else if(s!==u-1&&2===c){if(o.length<2||2!==i||46!==o.charCodeAt(o.length-1)||46!==o.charCodeAt(o.length-2)){if(o.length>2){const e=o.lastIndexOf(t);-1===e?(o="",i=0):(o=o.slice(0,e),i=o.length-1-o.lastIndexOf(t)),s=u,c=0;continue}if(2===o.length||1===o.length){o="",i=0,s=u,c=0;continue}}r&&(o.length>0?o+=`${t}..`:o="..",i=2)}else o.length>0?o+=t+e.slice(s+1,u):o=e.slice(s+1,u),i=u-s-1;s=u,c=0}else 46===a&&-1!==c?++c:c=-1}return o}(e,!r,"/",i),0!==e.length||r||(e="."),e.length>0&&t&&(e+="/"),r?`/${e}`:e}(t)}function f(e){e instanceof URL&&(e=s(e)),a(e);let r=-1,t=0,n=-1,o=!0,c=0;for(let a=e.length-1;a>=0;--a){const s=e.charCodeAt(a);if(i(s)){if(!o){t=a+1;break}}else-1===n&&(o=!1,n=a+1),46===s?-1===r?r=a:1!==c&&(c=1):-1!==r&&(c=-1)}return-1===r||-1===n||0===c||1===c&&r===n-1&&r===t+1?"":e.slice(r,n)}const y=Symbol("Option kind"),d=Symbol("Result kind"),h=Promise.resolve(!0),w=Promise.resolve(!1);function p(e){const r=Object.freeze({[Symbol.toStringTag]:"Option",[y]:"Some",*[Symbol.iterator](){yield e},toString:()=>`Some(${e})`,isSome:()=>!0,isNone:()=>!1,isSomeAnd:r=>r(e),isSomeAndAsync:r=>Promise.resolve(r(e)),isNoneOr:r=>r(e),isNoneOrAsync:r=>Promise.resolve(r(e)),expect:r=>e,unwrap:()=>e,unwrapOr:r=>e,unwrapOrElse:r=>e,unwrapOrElseAsync:r=>Promise.resolve(e),okOr:r=>v(e),okOrElse:r=>v(e),transpose:()=>(T(e),e.isOk()?v(p(e.unwrap())):b(e.unwrapErr())),filter:t=>t(e)?r:m,flatten:()=>(S(e),e),map:r=>p(r(e)),mapOr:(r,t)=>t(e),mapOrElse:(r,t)=>t(e),zip:r=>(S(r),r.isSome()?p([e,r.unwrap()]):m),zipWith:(r,t)=>(S(r),r.isSome()?p(t(e,r.unwrap())):m),unzip(){const r=e;if(!Array.isArray(r)||2!==r.length)throw new TypeError("Option::unzip() requires a 2-element tuple, received "+(Array.isArray(r)?`array with ${r.length} elements`:typeof r));const[t,n]=r;return[p(t),p(n)]},reduce:(t,n)=>(S(t),t.isSome()?p(n(e,t.unwrap())):r),and:e=>(S(e),e),andThen:r=>r(e),andThenAsync:r=>Promise.resolve(r(e)),or:e=>r,orElse:e=>r,orElseAsync:e=>Promise.resolve(r),xor:e=>(S(e),e.isSome()?m:r),inspect:t=>(t(e),r),eq:r=>(S(r),r.isSome()&&r.unwrap()===e)});return r}const m=Object.freeze({[Symbol.toStringTag]:"Option",[y]:"None",*[Symbol.iterator](){},toString:()=>"None",isSome:()=>!1,isNone:()=>!0,isSomeAnd:e=>!1,isSomeAndAsync:e=>w,isNoneOr:e=>!0,isNoneOrAsync:e=>h,expect(e){throw new TypeError(e)},unwrap(){throw new TypeError("Option::unwrap() called on a `None` value")},unwrapOr:e=>e,unwrapOrElse:e=>e(),unwrapOrElseAsync:e=>Promise.resolve(e()),okOr:e=>b(e),okOrElse:e=>b(e()),transpose:()=>v(m),filter:e=>m,flatten:()=>m,map:e=>m,mapOr:(e,r)=>e,mapOrElse:(e,r)=>e(),zip:e=>m,zipWith:(e,r)=>m,unzip:()=>[m,m],reduce:(e,r)=>(S(e),e),and:e=>m,andThen:e=>m,andThenAsync:e=>g,or:e=>(S(e),e),orElse:e=>e(),orElseAsync:e=>Promise.resolve(e()),xor:e=>(S(e),e.isSome()?e:m),inspect:e=>m,eq:e=>(S(e),e===m)}),g=Promise.resolve(m);function v(e){const r=Object.freeze({[Symbol.toStringTag]:"Result",[d]:"Ok",*[Symbol.iterator](){yield e},toString:()=>`Ok(${e})`,isOk:()=>!0,isErr:()=>!1,isOkAnd:r=>r(e),isOkAndAsync:r=>Promise.resolve(r(e)),isErrAnd:e=>!1,isErrAndAsync:e=>w,expect:r=>e,unwrap:()=>e,unwrapOr:r=>e,unwrapOrElse:r=>e,unwrapOrElseAsync:r=>Promise.resolve(e),expectErr(r){throw new TypeError(`${r}: ${e}`)},unwrapErr(){throw new TypeError("Result::unwrapErr() called on an `Ok` value")},intoOk:()=>e,intoErr(){throw new TypeError("Result::intoErr() called on an `Ok` value")},ok:()=>p(e),err:()=>m,transpose:()=>(S(e),e.isSome()?p(v(e.unwrap())):m),map:r=>v(r(e)),mapErr:e=>r,mapOr:(r,t)=>t(e),mapOrElse:(r,t)=>t(e),flatten:()=>(T(e),e),and:e=>(T(e),e),or:e=>r,andThen:r=>r(e),andThenAsync:r=>Promise.resolve(r(e)),orElse:e=>r,orElseAsync:e=>Promise.resolve(r),inspect:t=>(t(e),r),inspectErr:e=>r,eq:r=>(T(r),r.isOk()&&r.unwrap()===e),asOk:()=>r,asErr(){throw new TypeError("Result::asErr() called on an `Ok` value")},andTryAsync(r){try{const t=r(e);return Promise.resolve(t).then(v,b)}catch(e){return Promise.resolve(b(e))}},orTryAsync:e=>Promise.resolve(r)});return r}function b(e){const r=Object.freeze({[Symbol.toStringTag]:"Result",[d]:"Err",*[Symbol.iterator](){},toString:()=>`Err(${e})`,isOk:()=>!1,isErr:()=>!0,isOkAnd:e=>!1,isOkAndAsync:e=>w,isErrAnd:r=>r(e),isErrAndAsync:r=>Promise.resolve(r(e)),expect(r){throw new TypeError(`${r}: ${e}`)},unwrap(){throw new TypeError("Result::unwrap() called on an `Err` value")},unwrapOr:e=>e,unwrapOrElse:r=>r(e),unwrapOrElseAsync:r=>Promise.resolve(r(e)),expectErr:r=>e,unwrapErr:()=>e,intoOk(){throw new TypeError("Result::intoOk() called on an `Err` value")},intoErr:()=>e,ok:()=>m,err:()=>p(e),transpose:()=>p(r),map:e=>r,mapErr:r=>b(r(e)),mapOr:(e,r)=>e,mapOrElse:(r,t)=>r(e),flatten:()=>r,and:e=>r,or:e=>(T(e),e),andThen:e=>r,andThenAsync:e=>Promise.resolve(r),orElse:r=>r(e),orElseAsync:r=>Promise.resolve(r(e)),inspect:e=>r,inspectErr:t=>(t(e),r),eq:r=>(T(r),r.isErr()&&r.unwrapErr()===e),asOk(){throw new TypeError("Result::asOk() called on an `Err` value")},asErr:()=>r,andTryAsync:e=>Promise.resolve(r),orTryAsync(r){try{const t=r(e);return Promise.resolve(t).then(v,b)}catch(e){return Promise.resolve(b(e))}}});return r}function E(e){try{return null===e?"null":void 0===e?"undefined":"object"==typeof e?Object.prototype.toString.call(e):String(e)}catch{return"[unable to stringify]"}}function S(e){if(!function(e){return null!=e&&"object"==typeof e&&y in e}(e))throw new TypeError(`Expected an Option, but received: ${E(e)}`)}function T(e){if(!function(e){return null!=e&&"object"==typeof e&&d in e}(e))throw new TypeError(`Expected a Result, but received: ${E(e)}`)}const k=v(!1),O=v(),A="AbortError",F="TimeoutError";var x=class extends Error{name="FetchError";status;constructor(e,r){super(e),this.status=r}};function R(e,r){const t=function(e){if(e instanceof URL)return e;try{return new URL(e,"undefined"!=typeof location?location.href:void 0)}catch{throw new TypeError(`Invalid URL: ${e}`)}}(e),n=r??{},{retries:a,delay:o,when:i,onRetry:s}=function(e){const{responseType:r,timeout:t,retry:n=0,onProgress:a,onChunk:o}=e;if(null!=r){const e=["text","arraybuffer","blob","json","bytes","stream"];if(!e.includes(r))throw new TypeError(`responseType must be one of ${e.join(", ")} but received ${r}`)}if(null!=t){if("number"!=typeof t)throw new TypeError("timeout must be a number but received "+typeof t);if(t<=0)throw new Error(`timeout must be a number greater than 0 but received ${t}`)}if(null!=a&&"function"!=typeof a)throw new TypeError("onProgress callback must be a function but received "+typeof a);if(null!=o&&"function"!=typeof o)throw new TypeError("onChunk callback must be a function but received "+typeof o);let i,s,c=0,u=0;if("number"==typeof n?c=n:n&&"object"==typeof n&&(c=n.retries??0,u=n.delay??0,i=n.when,s=n.onRetry),!Number.isInteger(c))throw new TypeError(`Retry count must be an integer but received ${c}`);if(c<0)throw new Error(`Retry count must be non-negative but received ${c}`);if("number"==typeof u){if(u<0)throw new Error(`Retry delay must be a non-negative number but received ${u}`)}else if("function"!=typeof u)throw new TypeError("Retry delay must be a number or a function but received "+typeof u);if(null!=i&&!Array.isArray(i)&&"function"!=typeof i)throw new TypeError("Retry when condition must be an array of status codes or a function but received "+typeof i);if(null!=s&&"function"!=typeof s)throw new TypeError("Retry onRetry callback must be a function but received "+typeof s);return{retries:c,delay:u,when:i,onRetry:s}}(n),{abortable:c=!1,responseType:u,timeout:l,onProgress:f,onChunk:y,...d}=n,h=d.signal;let w;c&&(w=new AbortController);const p=(e,r)=>"AbortError"!==e.name&&(i?Array.isArray(i)?e instanceof x&&i.includes(e.status):i(e,r):!(e instanceof x)),m=e=>"function"==typeof o?o(e):o,g=()=>{const e=[];h&&e.push(h),w&&e.push(w.signal),"number"==typeof l&&e.push(function(e){if("function"==typeof AbortSignal.timeout)return AbortSignal.timeout(e);const r=new AbortController,t=function(){const e="The operation timed out.";try{return new DOMException(e,F)}catch{const r=new Error(e);return r.name=F,r}}(),n=setTimeout(()=>{r.abort(t)},e);return"function"==typeof n?.unref&&n.unref(),r.signal}(l)),e.length>0&&(d.signal=1===e.length?e[0]:function(e){if("function"==typeof AbortSignal.any)return AbortSignal.any(e);const r=new AbortController;for(const t of e)if(t.aborted)return r.abort(t.reason),r.signal;const t=e=>{r.abort(e.target.reason)};for(const r of e)r.addEventListener("abort",t);return r.signal.addEventListener("abort",()=>{for(const r of e)r.removeEventListener("abort",t)}),r.signal}(e))},E=async()=>{g();try{const e=await fetch(t,d);return e.ok?await S(e):(e.body?.cancel().catch(()=>{}),b(new x(e.statusText,e.status)))}catch(e){return b(e instanceof Error?e:Z(e))}},S=async e=>{switch(e.body&&(f||y)&&(async e=>{let r,t=0;if(f){const t=e.headers.get("content-length");if(null==t)try{f(b(new Error("No content-length in response headers")))}catch{}else r=Number.parseInt(t,10)}const n=e.clone().body;try{for await(const e of n){if(y)try{y(e)}catch{}if(f&&null!=r){t+=e.byteLength;try{f(v({totalByteLength:r,completedByteLength:t}))}catch{}}}}catch{}})(e),u){case"json":if(null==e.body)return v(null);try{return v(await e.json())}catch{return b(new Error("Response is invalid json while responseType is json"))}case"text":return v(await e.text());case"bytes":return"function"==typeof e.bytes?v(await e.bytes()):v(new Uint8Array(await e.arrayBuffer()));case"arraybuffer":return v(await e.arrayBuffer());case"blob":return v(await e.blob());case"stream":return v(e.body);default:return v(e)}},T=(async()=>{let e,r=0;do{if(r>0){if(w?.signal.aborted)return b(w.signal.reason);const t=m(r);if(t>0&&(await W(t),w?.signal.aborted))return b(w.signal.reason);try{s?.(e,r)}catch{}}const t=await E();if(t.isOk())return t;e=t.unwrapErr(),r++}while(r<=a&&p(e,r));return b(e)})();return c&&w?{abort(e){e instanceof Error?w.abort(e):null!=e?w.abort(Z(e)):w.abort()},get aborted(){return w.signal.aborted},get result(){return T}}:T}function W(e){return new Promise(r=>setTimeout(r,e))}function Z(e){const r=new Error("string"==typeof e?e:String(e));return r.name=A,r.cause=e,r}var P={},L=Uint8Array,I=Uint16Array,U=Int32Array,z=new L([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),Y=new L([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),C=new L([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),j=function(e,r){for(var t=new I(31),n=0;n<31;++n)t[n]=r+=1<<e[n-1];var a=new U(t[30]);for(n=1;n<30;++n)for(var o=t[n];o<t[n+1];++o)a[o]=o-t[n]<<5|n;return{b:t,r:a}},D=j(z,2),M=D.b,N=D.r;M[28]=258,N[258]=28;for(var G=j(Y,0),X=G.b,$=G.r,B=new I(32768),_=0;_<32768;++_){var V=(43690&_)>>1|(21845&_)<<1;V=(61680&(V=(52428&V)>>2|(13107&V)<<2))>>4|(3855&V)<<4,B[_]=((65280&V)>>8|(255&V)<<8)>>1}var H=function(e,r,t){for(var n=e.length,a=0,o=new I(r);a<n;++a)e[a]&&++o[e[a]-1];var i,s=new I(r);for(a=1;a<r;++a)s[a]=s[a-1]+o[a-1]<<1;if(t){i=new I(1<<r);var c=15-r;for(a=0;a<n;++a)if(e[a])for(var u=a<<4|e[a],l=r-e[a],f=s[e[a]-1]++<<l,y=f|(1<<l)-1;f<=y;++f)i[B[f]>>c]=u}else for(i=new I(n),a=0;a<n;++a)e[a]&&(i[a]=B[s[e[a]-1]++]>>15-e[a]);return i},J=new L(288);for(_=0;_<144;++_)J[_]=8;for(_=144;_<256;++_)J[_]=9;for(_=256;_<280;++_)J[_]=7;for(_=280;_<288;++_)J[_]=8;var K=new L(32);for(_=0;_<32;++_)K[_]=5;var Q=H(J,9,0),q=H(J,9,1),ee=H(K,5,0),re=H(K,5,1),te=function(e){for(var r=e[0],t=1;t<e.length;++t)e[t]>r&&(r=e[t]);return r},ne=function(e,r,t){var n=r/8|0;return(e[n]|e[n+1]<<8)>>(7&r)&t},ae=function(e,r){var t=r/8|0;return(e[t]|e[t+1]<<8|e[t+2]<<16)>>(7&r)},oe=function(e){return(e+7)/8|0},ie=function(e,r,t){return(null==r||r<0)&&(r=0),(null==t||t>e.length)&&(t=e.length),new L(e.subarray(r,t))},se=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],ce=function(e,r,t){var n=new Error(r||se[e]);if(n.code=e,Error.captureStackTrace&&Error.captureStackTrace(n,ce),!t)throw n;return n},ue=function(e,r,t,n){var a=e.length,o=n?n.length:0;if(!a||r.f&&!r.l)return t||new L(0);var i=!t,s=i||2!=r.i,c=r.i;i&&(t=new L(3*a));var u=function(e){var r=t.length;if(e>r){var n=new L(Math.max(2*r,e));n.set(t),t=n}},l=r.f||0,f=r.p||0,y=r.b||0,d=r.l,h=r.d,w=r.m,p=r.n,m=8*a;do{if(!d){l=ne(e,f,1);var g=ne(e,f+1,3);if(f+=3,!g){var v=e[(W=oe(f)+4)-4]|e[W-3]<<8,b=W+v;if(b>a){c&&ce(0);break}s&&u(y+v),t.set(e.subarray(W,b),y),r.b=y+=v,r.p=f=8*b,r.f=l;continue}if(1==g)d=q,h=re,w=9,p=5;else if(2==g){var E=ne(e,f,31)+257,S=ne(e,f+10,15)+4,T=E+ne(e,f+5,31)+1;f+=14;for(var k=new L(T),O=new L(19),A=0;A<S;++A)O[C[A]]=ne(e,f+3*A,7);f+=3*S;var F=te(O),x=(1<<F)-1,R=H(O,F,1);for(A=0;A<T;){var W,Z=R[ne(e,f,x)];if(f+=15&Z,(W=Z>>4)<16)k[A++]=W;else{var P=0,I=0;for(16==W?(I=3+ne(e,f,3),f+=2,P=k[A-1]):17==W?(I=3+ne(e,f,7),f+=3):18==W&&(I=11+ne(e,f,127),f+=7);I--;)k[A++]=P}}var U=k.subarray(0,E),j=k.subarray(E);w=te(U),p=te(j),d=H(U,w,1),h=H(j,p,1)}else ce(1);if(f>m){c&&ce(0);break}}s&&u(y+131072);for(var D=(1<<w)-1,N=(1<<p)-1,G=f;;G=f){var $=(P=d[ae(e,f)&D])>>4;if((f+=15&P)>m){c&&ce(0);break}if(P||ce(2),$<256)t[y++]=$;else{if(256==$){G=f,d=null;break}var B=$-254;if($>264){var _=z[A=$-257];B=ne(e,f,(1<<_)-1)+M[A],f+=_}var V=h[ae(e,f)&N],J=V>>4;if(V||ce(3),f+=15&V,j=X[J],J>3&&(_=Y[J],j+=ae(e,f)&(1<<_)-1,f+=_),f>m){c&&ce(0);break}s&&u(y+131072);var K=y+B;if(y<j){var Q=o-j,ee=Math.min(j,K);for(Q+y<0&&ce(3);y<ee;++y)t[y]=n[Q+y]}for(;y<K;++y)t[y]=t[y-j]}}r.l=d,r.p=G,r.b=y,r.f=l,d&&(l=1,r.m=w,r.d=h,r.n=p)}while(!l);return y!=t.length&&i?ie(t,0,y):t.subarray(0,y)},le=function(e,r,t){t<<=7&r;var n=r/8|0;e[n]|=t,e[n+1]|=t>>8},fe=function(e,r,t){t<<=7&r;var n=r/8|0;e[n]|=t,e[n+1]|=t>>8,e[n+2]|=t>>16},ye=function(e,r){for(var t=[],n=0;n<e.length;++n)e[n]&&t.push({s:n,f:e[n]});var a=t.length,o=t.slice();if(!a)return{t:ve,l:0};if(1==a){var i=new L(t[0].s+1);return i[t[0].s]=1,{t:i,l:1}}t.sort(function(e,r){return e.f-r.f}),t.push({s:-1,f:25001});var s=t[0],c=t[1],u=0,l=1,f=2;for(t[0]={s:-1,f:s.f+c.f,l:s,r:c};l!=a-1;)s=t[t[u].f<t[f].f?u++:f++],c=t[u!=l&&t[u].f<t[f].f?u++:f++],t[l++]={s:-1,f:s.f+c.f,l:s,r:c};var y=o[0].s;for(n=1;n<a;++n)o[n].s>y&&(y=o[n].s);var d=new I(y+1),h=de(t[l-1],d,0);if(h>r){n=0;var w=0,p=h-r,m=1<<p;for(o.sort(function(e,r){return d[r.s]-d[e.s]||e.f-r.f});n<a;++n){var g=o[n].s;if(!(d[g]>r))break;w+=m-(1<<h-d[g]),d[g]=r}for(w>>=p;w>0;){var v=o[n].s;d[v]<r?w-=1<<r-d[v]++-1:++n}for(;n>=0&&w;--n){var b=o[n].s;d[b]==r&&(--d[b],++w)}h=r}return{t:new L(d),l:h}},de=function(e,r,t){return-1==e.s?Math.max(de(e.l,r,t+1),de(e.r,r,t+1)):r[e.s]=t},he=function(e){for(var r=e.length;r&&!e[--r];);for(var t=new I(++r),n=0,a=e[0],o=1,i=function(e){t[n++]=e},s=1;s<=r;++s)if(e[s]==a&&s!=r)++o;else{if(!a&&o>2){for(;o>138;o-=138)i(32754);o>2&&(i(o>10?o-11<<5|28690:o-3<<5|12305),o=0)}else if(o>3){for(i(a),--o;o>6;o-=6)i(8304);o>2&&(i(o-3<<5|8208),o=0)}for(;o--;)i(a);o=1,a=e[s]}return{c:t.subarray(0,n),n:r}},we=function(e,r){for(var t=0,n=0;n<r.length;++n)t+=e[n]*r[n];return t},pe=function(e,r,t){var n=t.length,a=oe(r+2);e[a]=255&n,e[a+1]=n>>8,e[a+2]=255^e[a],e[a+3]=255^e[a+1];for(var o=0;o<n;++o)e[a+o+4]=t[o];return 8*(a+4+n)},me=function(e,r,t,n,a,o,i,s,c,u,l){le(r,l++,t),++a[256];for(var f=ye(a,15),y=f.t,d=f.l,h=ye(o,15),w=h.t,p=h.l,m=he(y),g=m.c,v=m.n,b=he(w),E=b.c,S=b.n,T=new I(19),k=0;k<g.length;++k)++T[31&g[k]];for(k=0;k<E.length;++k)++T[31&E[k]];for(var O=ye(T,7),A=O.t,F=O.l,x=19;x>4&&!A[C[x-1]];--x);var R,W,Z,P,L=u+5<<3,U=we(a,J)+we(o,K)+i,j=we(a,y)+we(o,w)+i+14+3*x+we(T,A)+2*T[16]+3*T[17]+7*T[18];if(c>=0&&L<=U&&L<=j)return pe(r,l,e.subarray(c,c+u));if(le(r,l,1+(j<U)),l+=2,j<U){R=H(y,d,0),W=y,Z=H(w,p,0),P=w;var D=H(A,F,0);for(le(r,l,v-257),le(r,l+5,S-1),le(r,l+10,x-4),l+=14,k=0;k<x;++k)le(r,l+3*k,A[C[k]]);l+=3*x;for(var M=[g,E],N=0;N<2;++N){var G=M[N];for(k=0;k<G.length;++k){var X=31&G[k];le(r,l,D[X]),l+=A[X],X>15&&(le(r,l,G[k]>>5&127),l+=G[k]>>12)}}}else R=Q,W=J,Z=ee,P=K;for(k=0;k<s;++k){var $=n[k];if($>255){fe(r,l,R[257+(X=$>>18&31)]),l+=W[X+257],X>7&&(le(r,l,$>>23&31),l+=z[X]);var B=31&$;fe(r,l,Z[B]),l+=P[B],B>3&&(fe(r,l,$>>5&8191),l+=Y[B])}else fe(r,l,R[$]),l+=W[$]}return fe(r,l,R[256]),l+W[256]},ge=new U([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),ve=new L(0),be=function(e,r,t,n,a,o){var i=o.z||e.length,s=new L(n+i+5*(1+Math.ceil(i/7e3))+a),c=s.subarray(n,s.length-a),u=o.l,l=7&(o.r||0);if(r){l&&(c[0]=o.r>>3);for(var f=ge[r-1],y=f>>13,d=8191&f,h=(1<<t)-1,w=o.p||new I(32768),p=o.h||new I(h+1),m=Math.ceil(t/3),g=2*m,v=function(r){return(e[r]^e[r+1]<<m^e[r+2]<<g)&h},b=new U(25e3),E=new I(288),S=new I(32),T=0,k=0,O=o.i||0,A=0,F=o.w||0,x=0;O+2<i;++O){var R=v(O),W=32767&O,Z=p[R];if(w[W]=Z,p[R]=W,F<=O){var P=i-O;if((T>7e3||A>24576)&&(P>423||!u)){l=me(e,c,0,b,E,S,k,A,x,O-x,l),A=T=k=0,x=O;for(var C=0;C<286;++C)E[C]=0;for(C=0;C<30;++C)S[C]=0}var j=2,D=0,M=d,G=W-Z&32767;if(P>2&&R==v(O-G))for(var X=Math.min(y,P)-1,B=Math.min(32767,O),_=Math.min(258,P);G<=B&&--M&&W!=Z;){if(e[O+j]==e[O+j-G]){for(var V=0;V<_&&e[O+V]==e[O+V-G];++V);if(V>j){if(j=V,D=G,V>X)break;var H=Math.min(G,V-2),J=0;for(C=0;C<H;++C){var K=O-G+C&32767,Q=K-w[K]&32767;Q>J&&(J=Q,Z=K)}}}G+=(W=Z)-(Z=w[W])&32767}if(D){b[A++]=268435456|N[j]<<18|$[D];var q=31&N[j],ee=31&$[D];k+=z[q]+Y[ee],++E[257+q],++S[ee],F=O+j,++T}else b[A++]=e[O],++E[e[O]]}}for(O=Math.max(O,F);O<i;++O)b[A++]=e[O],++E[e[O]];l=me(e,c,u,b,E,S,k,A,x,O-x,l),u||(o.r=7&l|c[l/8|0]<<3,l-=7,o.h=p,o.p=w,o.i=O,o.w=F)}else{for(O=o.w||0;O<i+u;O+=65535){var re=O+65535;re>=i&&(c[l/8|0]=u,re=i),l=pe(c,l+1,e.subarray(O,re))}o.i=i}return ie(s,0,n+oe(l)+a)},Ee=function(){for(var e=new Int32Array(256),r=0;r<256;++r){for(var t=r,n=9;--n;)t=(1&t&&-306674912)^t>>>1;e[r]=t}return e}(),Se=function(e,r,t,n,a){if(!a&&(a={l:1},r.dictionary)){var o=r.dictionary.subarray(-32768),i=new L(o.length+e.length);i.set(o),i.set(e,o.length),e=i,a.w=o.length}return be(e,null==r.level?6:r.level,null==r.mem?a.l?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(e.length)))):20:12+r.mem,t,n,a)},Te=function(e,r){var t={};for(var n in e)t[n]=e[n];for(var n in r)t[n]=r[n];return t},ke=function(e,r,t){for(var n=e(),a=e.toString(),o=a.slice(a.indexOf("[")+1,a.lastIndexOf("]")).replace(/\s+/g,"").split(","),i=0;i<n.length;++i){var s=n[i],c=o[i];if("function"==typeof s){r+=";"+c+"=";var u=s.toString();if(s.prototype)if(-1!=u.indexOf("[native code]")){var l=u.indexOf(" ",8)+1;r+=u.slice(l,u.indexOf("(",l))}else for(var f in r+=u,s.prototype)r+=";"+c+".prototype."+f+"="+s.prototype[f].toString();else r+=u}else t[c]=s}return r},Oe=[],Ae=function(){return[L,I,U,z,Y,C,M,X,q,re,B,se,H,te,ne,ae,oe,ie,ce,ue,ze,xe,Re]},Fe=function(){return[L,I,U,z,Y,C,N,$,Q,J,ee,K,B,ge,ve,H,le,fe,ye,de,he,we,pe,me,oe,ie,be,Se,Ue,xe]},xe=function(e){return postMessage(e,[e.buffer])},Re=function(e){return e&&{out:e.size&&new L(e.size),dictionary:e.dictionary}},We=function(e,r,t,n,a,o){var i=function(e,r,t,n){if(!Oe[t]){for(var a="",o={},i=e.length-1,s=0;s<i;++s)a=ke(e[s],a,o);Oe[t]={c:ke(e[i],a,o),e:o}}var c=Te({},Oe[t].e);return function(e,r,t,n,a){var o=new Worker(P[r]||(P[r]=URL.createObjectURL(new Blob([e+';addEventListener("error",function(e){e=e.error;postMessage({$e$:[e.message,e.code,e.stack]})})'],{type:"text/javascript"}))));return o.onmessage=function(e){var r=e.data,t=r.$e$;if(t){var n=new Error(t[0]);n.code=t[1],n.stack=t[2],a(n,null)}else a(null,r)},o.postMessage(t,n),o}(Oe[t].c+";onmessage=function(e){for(var k in e.data)self[k]=e.data[k];onmessage="+r.toString()+"}",t,c,function(e){var r=[];for(var t in e)e[t].buffer&&r.push((e[t]=new e[t].constructor(e[t])).buffer);return r}(c),n)}(t,n,a,function(e,r){i.terminate(),o(e,r)});return i.postMessage([e,r],r.consume?[e.buffer]:[]),function(){i.terminate()}},Ze=function(e,r){return e[r]|e[r+1]<<8},Pe=function(e,r){return(e[r]|e[r+1]<<8|e[r+2]<<16|e[r+3]<<24)>>>0},Le=function(e,r){return Pe(e,r)+4294967296*Pe(e,r+4)},Ie=function(e,r,t){for(;t;++r)e[r]=t,t>>>=8};function Ue(e,r){return Se(e,r||{},0,0)}function ze(e,r){return ue(e,{i:2},r&&r.out,r&&r.dictionary)}var Ye=function(e,r,t,n){for(var a in e){var o=e[a],i=r+a,s=n;Array.isArray(o)&&(s=Te(n,o[1]),o=o[0]),ArrayBuffer.isView(o)?t[i]=[o,s]:(t[i+="/"]=[new L(0),s],Ye(o,i,t,n))}},Ce="undefined"!=typeof TextEncoder&&new TextEncoder,je="undefined"!=typeof TextDecoder&&new TextDecoder;try{je.decode(ve,{stream:!0})}catch(e){}function De(e,r){if(r){for(var t=new L(e.length),n=0;n<e.length;++n)t[n]=e.charCodeAt(n);return t}if(Ce)return Ce.encode(e);var a=e.length,o=new L(e.length+(e.length>>1)),i=0,s=function(e){o[i++]=e};for(n=0;n<a;++n){if(i+5>o.length){var c=new L(i+8+(a-n<<1));c.set(o),o=c}var u=e.charCodeAt(n);u<128||r?s(u):u<2048?(s(192|u>>6),s(128|63&u)):u>55295&&u<57344?(s(240|(u=65536+(1047552&u)|1023&e.charCodeAt(++n))>>18),s(128|u>>12&63),s(128|u>>6&63),s(128|63&u)):(s(224|u>>12),s(128|u>>6&63),s(128|63&u))}return ie(o,0,i)}function Me(e,r){if(r){for(var t="",n=0;n<e.length;n+=16384)t+=String.fromCharCode.apply(null,e.subarray(n,n+16384));return t}if(je)return je.decode(e);var a=function(e){for(var r="",t=0;;){var n=e[t++],a=(n>127)+(n>223)+(n>239);if(t+a>e.length)return{s:r,r:ie(e,t-1)};a?3==a?(n=((15&n)<<18|(63&e[t++])<<12|(63&e[t++])<<6|63&e[t++])-65536,r+=String.fromCharCode(55296|n>>10,56320|1023&n)):r+=1&a?String.fromCharCode((31&n)<<6|63&e[t++]):String.fromCharCode((15&n)<<12|(63&e[t++])<<6|63&e[t++]):r+=String.fromCharCode(n)}}(e),o=a.s;return(t=a.r).length&&ce(8),o}var Ne=function(e,r,t,n,a,o,i){var s=4294967295==a,c=4294967295==o,u=4294967295==i,l=r+t;if(n&&s+c+u){for(;r+4<l;r+=4+Ze(e,r+2))if(1==Ze(e,r))return[s?Le(e,r+4+8*c):a,c?Le(e,r+4):o,u?Le(e,r+4+8*(c+s)):i,1];n<2&&ce(13)}return[a,o,i,0]},Ge=function(e){var r=0;if(e)for(var t in e){var n=e[t].length;n>65535&&ce(9),r+=n+4}return r},Xe=function(e,r,t,n,a,o,i,s){var c=n.length,u=t.extra,l=s&&s.length,f=Ge(u);Ie(e,r,null!=i?33639248:67324752),r+=4,null!=i&&(e[r++]=20,e[r++]=t.os),e[r]=20,r+=2,e[r++]=t.flag<<1|(o<0&&8),e[r++]=a&&8,e[r++]=255&t.compression,e[r++]=t.compression>>8;var y=new Date(null==t.mtime?Date.now():t.mtime),d=y.getFullYear()-1980;if((d<0||d>119)&&ce(10),Ie(e,r,d<<25|y.getMonth()+1<<21|y.getDate()<<16|y.getHours()<<11|y.getMinutes()<<5|y.getSeconds()>>1),r+=4,-1!=o&&(Ie(e,r,t.crc),Ie(e,r+4,o<0?-o-2:o),Ie(e,r+8,t.size)),Ie(e,r+12,c),Ie(e,r+14,f),r+=16,null!=i&&(Ie(e,r,l),Ie(e,r+6,t.attrs),Ie(e,r+10,i),r+=14),e.set(n,r),r+=c,f)for(var h in u){var w=u[h],p=w.length;Ie(e,r,+h),Ie(e,r+2,p),e.set(w,r+4),r+=4+p}return l&&(e.set(s,r),r+=l),r};function $e(e,r,t){t||(t=r,r={}),"function"!=typeof t&&ce(7);var n={};Ye(e,"",n,r);var a=Object.keys(n),o=a.length,i=0,s=0,c=o,u=new Array(o),l=[],f=function(){for(var e=0;e<l.length;++e)l[e]()},y=function(e,r){Be(function(){t(e,r)})};Be(function(){y=t});var d=function(){var e=new L(s+22),r=i,t=s-i;s=0;for(var n=0;n<c;++n){var a=u[n];try{var o=a.c.length;Xe(e,s,a,a.f,a.u,o);var l=30+a.f.length+Ge(a.extra),f=s+l;e.set(a.c,f),Xe(e,i,a,a.f,a.u,o,s,a.m),i+=16+l+(a.m?a.m.length:0),s=f+o}catch(e){return y(e,null)}}(function(e,r,t,n,a){Ie(e,r,101010256),Ie(e,r+8,t),Ie(e,r+10,t),Ie(e,r+12,n),Ie(e,r+16,a)})(e,i,u.length,t,r),y(null,e)};o||d();for(var h=function(e){var r=a[e],t=n[r],c=t[0],h=t[1],w=function(){var e=-1;return{p:function(r){for(var t=e,n=0;n<r.length;++n)t=Ee[255&t^r[n]]^t>>>8;e=t},d:function(){return~e}}}(),p=c.length;w.p(c);var m=De(r),g=m.length,v=h.comment,b=v&&De(v),E=b&&b.length,S=Ge(h.extra),T=0==h.level?0:8,k=function(t,n){if(t)f(),y(t,null);else{var a=n.length;u[e]=Te(h,{size:p,crc:w.d(),c:n,f:m,m:b,u:g!=r.length||b&&v.length!=E,compression:T}),i+=30+g+S+a,s+=76+2*(g+S)+(E||0)+a,--o||d()}};if(g>65535&&k(ce(11,0,1),null),T)if(p<16e4)try{k(null,Ue(c,h))}catch(e){k(e,null)}else l.push(function(e,r,t){return t||(t=r,r={}),"function"!=typeof t&&ce(7),We(e,r,[Fe],function(e){return xe(Ue(e.data[0],e.data[1]))},0,t)}(c,h,k));else k(null,c)},w=0;w<c;++w)h(w);return f}var Be="function"==typeof queueMicrotask?queueMicrotask:"function"==typeof setTimeout?setTimeout:function(e){e()};class _e{resolve;reject;promise;constructor(){if("function"==typeof Promise.withResolvers){const{promise:e,resolve:r,reject:t}=Promise.withResolvers();this.promise=e,this.resolve=r,this.reject=t}else this.promise=new Promise((e,r)=>{this.resolve=e,this.reject=r})}}const Ve="NotFoundError",He="/",Je=".",Ke="/tmp";function Qe(e){n("string"==typeof e),n(e[0]===He)}function qe(e){n("string"==typeof e)}let er;function rr(e){return e===He}async function tr(e,r,t){try{return v(await e.getDirectoryHandle(r,t))}catch(t){const n=t,a=new Error(`${n.name}: ${n.message} When get child directory '${r}' from directory '${e.name||He}'.`);return a.name=n.name,b(a)}}async function nr(e,r){let t=await async function(){return er??=await navigator.storage.getDirectory(),er}();if(rr(e))return v(t);let n=e.slice(1);for(;n;){let e="";const a=n.indexOf("/");if(-1===a)e=n,n="";else if(e=n.slice(0,a),n=n.slice(a+1),0===a)continue;const o=await tr(t,e,r);if(o.isErr())return o;t=o.unwrap()}return v(t)}async function ar(e,r){const t=r?.create??!1,n=c(e),a=u(e);return(await nr(n,{create:t})).andThenAsync(e=>async function(e,r,t){try{return v(await e.getFileHandle(r,t))}catch(t){const n=t,a=new Error(`${n.name}: ${n.message} When get child file '${r}' from directory '${e.name||He}'.`);return a.name=n.name,b(a)}}(e,a,{create:t}))}function or(e){return e.name===Ve}async function ir(e){const r=(await Promise.all(e)).find(e=>e.isErr());return r??O}function sr(){const e=new Error;return e.name=A,e}function cr(e){const{isDirectory:r=!1,basename:t="tmp",extname:n=""}=e??{},a=r?"":n;return l(Ke,`${t?`${t}-`:""}${crypto.randomUUID()}${a}`)}function ur(e){return e.startsWith(`${Ke}/`)}async function lr(e){const{name:r,kind:t}=e;if(fr(e)){const n=await e.getFile(),{size:a,lastModified:o,type:i}=n;return{name:r,kind:t,type:i,size:a,lastModified:o}}return{name:r,kind:t}}function fr(e){return"file"===e.kind}function yr(e){return"directory"===e.kind}function dr(e){return"file"===e.kind}async function hr(e){const r=await e.getFile(),t=await r.arrayBuffer();return new Uint8Array(t)}async function wr(e){return Qe(e),(await ar(e,{create:!0})).and(O)}async function pr(e){return Qe(e),(await nr(e,{create:!0})).and(O)}async function mr(e,r){async function*t(n,a){const o=n.entries();for await(const[i,s]of o){const o=a===e?i:l(a,i);yield{path:o,handle:s},yr(s)&&r?.recursive&&(yield*t(await n.getDirectoryHandle(i),o))}}return Qe(e),(await nr(e)).andThen(r=>v(t(r,e)))}async function gr(e,r){return Qe(e),(await ar(e)).andThenAsync(async e=>{const t=await e.getFile();switch(r?.encoding){case"blob":return v(t);case"utf8":return v(await t.text());default:return v(await t.arrayBuffer())}})}async function vr(e){Qe(e);const r=c(e),t=u(e),n=await nr(r);return(await n.andThenAsync(async e=>{try{rr(r)&&rr(t)?await e.remove({recursive:!0}):await e.removeEntry(t,{recursive:!0})}catch(e){return b(e)}return O})).orElse(e=>or(e)?O:b(e))}async function br(e){Qe(e);const r=c(e),t=u(e),n=await nr(r);return t?n.andThenAsync(async r=>{for await(const[e,n]of r.entries())if(e===t)return v(n);const n=new Error(`${Ve}: '${t}' does not exist. Full path is '${e}'.`);return n.name=Ve,b(n)}):n}async function Er(e,r,t){Qe(e);const{append:n=!1,create:a=!0}=t??{};return(await ar(e,{create:a})).andThenAsync(async e=>{const t=await e.createWritable({keepExistingData:n}),a={type:"write",data:r};if(n){const{size:r}=await e.getFile();a.position=r}return await t.write(a),await t.close(),O})}function Sr(e,r,t){let n,a;qe(e),a=!1,"string"==typeof r?Qe(r):(t=r,r=cr({extname:f(e)}),a=!0),n=!1;const o=R(e,{redirect:"follow",...t,abortable:!0}),i=(async()=>(await o.response).andThenAsync(async e=>{const t=await e.blob();return n?b(sr()):(await Er(r,t)).and(v(e))}))();return{abort(e){n=!0,o.abort(e)},get aborted(){return n},get response(){return a?i.then(e=>e.map(e=>({tempFilePath:r,rawResponse:e}))):i}}}async function Tr(e,r){const t=c(r);return(await nr(t,{create:!0})).andThenAsync(async t=>{const n=u(r);try{return await e.move(t,n),O}catch(e){return b(e)}})}async function kr(e,r,t,n=!0){return Qe(r),(await br(e)).andThenAsync(async a=>{let o;o=!1;const i=await br(r);if(i.isErr()){if(!or(i.unwrapErr()))return i.asErr()}else{o=!0;const e=i.unwrap();if(!(fr(a)&&fr(e)||yr(a)&&yr(e)))return b(new Error("Both 'srcPath' and 'destPath' must both be a file or directory."))}return fr(a)?n||!o?await t(a,r):O:(await mr(e,{recursive:!0})).andThenAsync(async e=>{const a=[pr(r)];for await(const{path:i,handle:s}of e){const e=l(r,i);let c=!1;if(o){const r=await xr(e);if(r.isErr()){a.push(Promise.resolve(r.asErr()));continue}c=r.unwrap()}const u=fr(s)?n||!c?t(s,e):Promise.resolve(O):pr(e);a.push(u)}return ir(a)})})}function Or(e,r){return Er(e,r,{append:!0})}async function Ar(e,r,t){const{overwrite:n=!0}=t??{};return kr(e,r,async(e,r)=>await Er(r,await e.getFile()),n)}async function Fr(e){const r=await mr(e);if(r.isErr())return or(r.unwrapErr())?pr(e):r.asErr();const t=[];for await(const{path:n}of r.unwrap())t.push(vr(l(e,n)));return ir(t)}async function xr(e,r){const{isDirectory:t=!1,isFile:a=!1}=r??{};n(!(t&&a));const o=await br(e);return o.andThen(e=>v(!(t&&fr(e)||a&&yr(e)))).orElse(e=>or(e)?k:o.asErr())}async function Rr(e,r,t){const{overwrite:n=!0}=t??{};return(await kr(e,r,Tr,n)).andThenAsync(()=>vr(e))}function Wr(e){return gr(e,{encoding:"blob"})}async function Zr(e){return(await Pr(e)).andThenAsync(async e=>{try{return v(JSON.parse(e))}catch(e){return b(e)}})}function Pr(e){return gr(e,{encoding:"utf8"})}async function Lr(e){const{isDirectory:r=!1}=e??{},t=cr(e);return(await(r?pr:wr)(t)).and(v(t))}function Ir(){return vr(Ke)}async function Ur(e){return n(e instanceof Date),(await mr(Ke,{recursive:!0})).andThenAsync(async r=>{try{for await(const{handle:t}of r)fr(t)&&(await t.getFile()).lastModified<=e.getTime()&&await t.remove()}catch(e){return b(e)}return O})}async function zr(e,r){const t=new Uint8Array(e),n=new _e;return function(e,r,t){t||(t=r,r={}),"function"!=typeof t&&ce(7);var n=[],a=function(){for(var e=0;e<n.length;++e)n[e]()},o={},i=function(e,r){Be(function(){t(e,r)})};Be(function(){i=t});for(var s=e.length-22;101010256!=Pe(e,s);--s)if(!s||e.length-s>65558)return i(ce(13,0,1),null),a;var c=Ze(e,s+8);if(c){var u=c,l=Pe(e,s+16),f=117853008==Pe(e,s-20);if(f){var y=Pe(e,s-12);(f=101075792==Pe(e,y))&&(u=c=Pe(e,y+32),l=Pe(e,y+48))}for(var d=r&&r.filter,h=function(r){var t=function(e,r,t){var n=Ze(e,r+28),a=Ze(e,r+30),o=Me(e.subarray(r+46,r+46+n),!(2048&Ze(e,r+8))),i=r+46+n,s=Ne(e,i,a,t,Pe(e,r+20),Pe(e,r+24),Pe(e,r+42)),c=s[0],u=s[1],l=s[2];return[Ze(e,r+10),c,u,o,i+a+Ze(e,r+32),l]}(e,l,f),s=t[0],u=t[1],y=t[2],h=t[3],w=t[4],p=t[5],m=function(e,r){return r+30+Ze(e,r+26)+Ze(e,r+28)}(e,p);l=w;var g=function(e,r){e?(a(),i(e,null)):(r&&(o[h]=r),--c||i(null,o))};if(!d||d({name:h,size:u,originalSize:y,compression:s}))if(s)if(8==s){var v=e.subarray(m,m+u);if(y<524288||u>.8*y)try{g(null,ze(v,{out:new L(y)}))}catch(e){g(e,null)}else n.push(function(e,r,t){return t||(t=r,r={}),"function"!=typeof t&&ce(7),We(e,r,[Ae],function(e){return xe(ze(e.data[0],Re(e.data[1])))},1,t)}(v,{size:y},g))}else g(ce(14,"unknown compression type "+s,1),null);else g(null,ie(e,m,m+u));else g(null,null)},w=0;w<u;++w)h()}else i(null,{})}(t,async(e,t)=>{if(e)return void n.resolve(b(e));const a=[];for(const e in t)"/"!==e.at(-1)&&a.push(Er(l(r,e),t[e]));n.resolve(ir(a))}),await n.promise}async function Yr(e,r){return Qe(r),(await gr(e)).andThenAsync(e=>zr(e,r))}async function Cr(e,r,t){return qe(e),Qe(r),(await R(e,{redirect:"follow",...t,responseType:"arraybuffer",abortable:!1})).andThenAsync(e=>zr(e,r))}function jr(e,r,t){let n,a;qe(r),n=!1;const o=(async()=>(await Wr(e)).andThenAsync(async o=>{if(n)return b(sr());const{filename:i=u(e),...s}=t??{},c=new FormData;return c.append(i,o,i),a=R(r,{method:"POST",...s,abortable:!0,body:c}),a.response}))();return{abort(e){n=!0,a?.abort(e)},get aborted(){return n},get response(){return o}}}async function Dr(e,r){const t=new _e;return $e(e,{consume:!0},async(e,n)=>{if(e)t.resolve(b(e));else if(r){const e=await Er(r,n);t.resolve(e)}else t.resolve(v(n))}),await t.promise}async function Mr(e,r,t){return"string"==typeof r?Qe(r):(t=r,r=void 0),(await br(e)).andThenAsync(async n=>{const a=u(e),o={};if(fr(n)){const e=await hr(n);o[a]=e}else{const r=await mr(e,{recursive:!0});if(r.isErr())return r.asErr();const n=t?.preserveRoot??!0;for await(const{path:e,handle:t}of r.unwrap())if(fr(t)){const r=n?l(a,e):e,i=await hr(t);o[r]=i}}return Dr(o,r)})}async function Nr(e,r,t){return qe(e),"string"==typeof r?Qe(r):(t=r,r=void 0),(await R(e,{redirect:"follow",...t,responseType:"arraybuffer",abortable:!1})).andThenAsync(t=>{const n={};return n[u(e)]=new Uint8Array(t),Dr(n,r)})}function Gr(){return"function"==typeof navigator?.storage?.getDirectory}function Xr(e){return e?{name:e.name,message:e.message}:e}async function $r(e){const r=await e.arrayBuffer();return{name:e.name,type:e.type,lastModified:e.lastModified,size:r.byteLength,data:r}}let Br=1e3;var _r=(e=>(e[e.createFile=0]="createFile",e[e.mkdir=1]="mkdir",e[e.move=2]="move",e[e.readDir=3]="readDir",e[e.remove=4]="remove",e[e.stat=5]="stat",e[e.writeFile=6]="writeFile",e[e.appendFile=7]="appendFile",e[e.copy=8]="copy",e[e.emptyDir=9]="emptyDir",e[e.exists=10]="exists",e[e.deleteTemp=11]="deleteTemp",e[e.mkTemp=12]="mkTemp",e[e.pruneTemp=13]="pruneTemp",e[e.readBlobFile=14]="readBlobFile",e[e.unzip=15]="unzip",e[e.zip=16]="zip",e))(_r||{});let Vr,Hr;function Jr(e){const r=JSON.stringify(e);return(Vr??=new TextEncoder,Vr).encode(r)}function Kr(e){const r=Qr(e);return JSON.parse(r)}function Qr(e){return(Hr??=new TextDecoder,Hr).decode(e)}class qr{i32a;u8a;headerLength=16;maxDataLength;constructor(e){this.i32a=new Int32Array(e),this.u8a=new Uint8Array(e),this.maxDataLength=e.byteLength-this.headerLength}}async function et(e,r){const{i32a:t,u8a:n,headerLength:a,maxDataLength:o}=e;for(;1!==Atomics.load(t,1););const i=t[2],s=n.slice(a,a+i);let c=await r(s);const u=c.byteLength;if(u>o){const e=`Response is too large: ${u} > ${o}. Consider grow the size of SharedArrayBuffer.`;if(c=Jr([{name:"RangeError",message:e}]),c.byteLength>o)throw Atomics.store(t,1,0),new RangeError(e)}t[2]=c.byteLength,n.set(c,a),Atomics.store(t,1,0),Atomics.store(t,0,0)}const rt={[_r.createFile]:wr,[_r.mkdir]:pr,[_r.move]:Rr,[_r.readDir]:mr,[_r.remove]:vr,[_r.stat]:br,[_r.writeFile]:Er,[_r.appendFile]:Or,[_r.copy]:Ar,[_r.emptyDir]:Fr,[_r.exists]:xr,[_r.deleteTemp]:Ir,[_r.mkTemp]:Lr,[_r.pruneTemp]:Ur,[_r.readBlobFile]:Wr,[_r.unzip]:Yr,[_r.zip]:Mr};let tt,nt;function at(){if("undefined"!=typeof window)throw new Error("Only can use in worker");if(tt)throw new Error("Worker messenger already started");addEventListener("message",e=>{const r=e.data;if(!(r instanceof SharedArrayBuffer))throw new TypeError("Only can post SharedArrayBuffer to Worker");tt=new qr(r),postMessage(!0),async function(){for(;;)try{await et(tt,async e=>{const[r,...t]=Kr(e);let n;r===_r.writeFile||r===_r.appendFile?Array.isArray(t[1])&&(t[1]=new Uint8Array(t[1])):r===_r.pruneTemp&&(t[0]=new Date(t[0]));const a=rt[r];try{const e=await a(...t);if(e.isErr())n=Jr([Xr(e.unwrapErr())]);else{let t;if(r===_r.readBlobFile){const r=e.unwrap(),n=await $r(r);t={...n,data:[...new Uint8Array(n.data)]}}else if(r===_r.readDir){const r=e.unwrap(),n=[];for await(const{path:e,handle:t}of r){const r=await lr(t);n.push({path:e,handle:r})}t=n}else if(r===_r.stat){const r=e.unwrap();t=await lr(r)}else if(r===_r.zip){const r=e.unwrap();t=r instanceof Uint8Array?[...r]:r}else t=e.unwrap();n=Jr([null,t])}}catch(e){n=Jr([Xr(e)])}return n})}catch(e){console.error(e instanceof Error?e.stack:e)}}()})}function ot(e){if("undefined"==typeof window)throw new Error("Only can use in main thread");if(nt)throw new Error("Main messenger already started");return new Promise(r=>{const{worker:t,bufferLength:a=1048576,opTimeout:o=1e3}=e;n(t instanceof Worker||t instanceof URL||"string"==typeof t&&t),n(a>16&&a%4==0),n(Number.isInteger(o)&&o>0),Br=o;const i=t instanceof Worker?t:new Worker(t),s=new SharedArrayBuffer(a);i.addEventListener("message",e=>{e.data&&(nt=new qr(s),r())}),i.postMessage(s)})}function it(){return nt}function st(e){n(null!=e),nt=e}function ct(e,...r){if(!nt)return b(new Error("Worker not initialized. Come back later."));const t=Jr([e,...r]);try{const e=Kr(function(e,r){const{i32a:t,u8a:n,headerLength:a,maxDataLength:o}=e,i=r.byteLength;if(i>o)throw new RangeError(`Request is too large: ${i} > ${o}. Consider grow the size of SharedArrayBuffer.`);Atomics.store(t,0,1),t[2]=i,n.set(r,a),Atomics.store(t,1,1),function(e){const r=Date.now();for(;!e();)if(Date.now()-r>Br){const e=new Error("Operating Timeout");throw e.name=F,e}}(()=>0===Atomics.load(t,0));const s=t[2];return n.slice(a,a+s)}(nt,t)),r=e[0],n=r?b(function(e){const r=new Error(e.message);return r.name=e.name,r}(r)):v(e[1]??void 0);return n}catch(e){return b(e)}}function ut(e){return ct(_r.createFile,e)}function lt(e){return ct(_r.mkdir,e)}function ft(e,r,t){return ct(_r.move,e,r,t)}function yt(e,r){return ct(_r.readDir,e,r)}function dt(e,r){return ct(_r.readBlobFile,e).map(e=>{const t=new Uint8Array(e.data);switch(e.data=t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength),r?.encoding){case"blob":return e;case"utf8":return Qr(new Uint8Array(e.data));default:return e.data}})}function ht(e){return ct(_r.remove,e)}function wt(e){return ct(_r.stat,e)}function pt(e){return e instanceof ArrayBuffer?[...new Uint8Array(e)]:ArrayBuffer.isView(e)?[...new Uint8Array(e.buffer)]:e}function mt(e,r,t){return ct(_r.writeFile,e,pt(r),t)}function gt(e,r){return ct(_r.appendFile,e,pt(r))}function vt(e,r,t){return ct(_r.copy,e,r,t)}function bt(e){return ct(_r.emptyDir,e)}function Et(e,r){return ct(_r.exists,e,r)}function St(){return ct(_r.deleteTemp)}function Tt(e){return ct(_r.mkTemp,e)}function kt(e){return ct(_r.pruneTemp,e)}function Ot(e){return dt(e,{encoding:"blob"})}function At(e){return Ft(e).andThen(e=>{try{return v(JSON.parse(e))}catch(e){return b(e)}})}function Ft(e){return dt(e,{encoding:"utf8"})}function xt(e,r){return ct(_r.unzip,e,r)}function Rt(e,r,t){return ct(_r.zip,e,r,t).map(e=>e?new Uint8Array(e):e)}}};const r={};function t(n){const a=r[n];if(void 0!==a)return a.exports;const o=r[n]={exports:{}};return e[n].call(o.exports,o,o.exports,t),o.exports}t.d=(e,r)=>{if(Array.isArray(r))for(var n=0;n<r.length;){var a=r[n++],o=r[n++];t.o(e,a)?0===o&&n++:0===o?Object.defineProperty(e,a,{enumerable:!0,value:r[n++]}):Object.defineProperty(e,a,{enumerable:!0,get:o})}else for(var a in r)t.o(r,a)&&!t.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:r[a]})},t.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),t.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),t.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t(727)})();
|
|
1
|
+
(()=>{"use strict";var e={727(e,t,r){r.a(e,async(e,t)=>{try{async function o(){let e;try{e=await r.e(10).then(r.bind(r,10))}catch(e){console.log(e);const t="Error importing the '@themartiancompany/opfs' module as 'opfs'. If you got this error while bundling a webpack for a project depending on this module double check its 'webpack.config.js' file or whether the 'opfs' module is listed in developer dependencies and install them.I'm sorry for this inconvenience but Node packagement system does not currently distinguish 'development' from 'build' dependencies.";throw console.error(t),e}return e}async function n(){let e;return"undefined"==typeof window&&void 0!==r.g&&r.g.global===r.g&&"function"!=typeof r||(e=await o()),e}async function i(e){return void 0===e&&(e=await n()),function(t){return!e.statSync(t).isFile()}}const c=await n();c.isDirSync=await i(c),c.isDir=c.isDirSync,t()}catch(s){t(s)}},1)}};const t={};function r(o){const n=t[o];if(void 0!==n)return n.exports;const i=t[o]={exports:{}};return e[o](i,i.exports,r),i.exports}r.m=e,(()=>{const e=Symbol("webpack queues"),t=Symbol("webpack exports"),o=Symbol("webpack error"),n=e=>{e?.d<1&&(e.d=1,e.forEach(e=>e.r--),e.forEach(e=>e.r--?e.r++:e()))};r.a=(r,i,c)=>{let s;c&&((s=[]).d=-1);const a=new Set,l=r.exports;let u,f,p;const d=new Promise((e,t)=>{p=t,f=e});d[t]=l,d[e]=e=>(s&&e(s),a.forEach(e),d.catch(e=>{})),r.exports=d,i(r=>{let i;u=(r=>r.map(r=>{if(null!==r&&"object"==typeof r){if(r[e])return r;if(r.then){const i=[];i.d=0,r.then(e=>{c[t]=e,n(i)},e=>{c[o]=e,n(i)});const c={};return c[e]=e=>e(i),c}}const i={};return i[e]=e=>{},i[t]=r,i}))(r);const c=()=>u.map(e=>{if(e[o])throw e[o];return e[t]}),l=new Promise(t=>{i=()=>t(c),i.r=0;const r=e=>e!==s&&!a.has(e)&&(a.add(e),e&&!e.d&&(i.r++,e.push(i)));u.forEach(t=>t[e](r))});return i.r?l:c()},e=>(e?p(d[o]=e):f(l),n(s))),s?.d<0&&(s.d=0)}})(),(()=>{const e=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;let t;r.t=function(o,n){if(1&n&&(o=this(o)),8&n)return o;if("object"==typeof o&&o){if(4&n&&o.__esModule)return o;if(16&n&&"function"==typeof o.then)return o}const i=Object.create(null);r.r(i);const c={};t=t||[null,e({}),e([]),e(e)];for(var s=2&n&&o;("object"==typeof s||"function"==typeof s)&&!~t.indexOf(s);s=e(s))Object.getOwnPropertyNames(s).forEach(e=>c[e]=()=>o[e]);return c.default=()=>o,r.d(i,c),i}})(),r.d=(e,t)=>{if(Array.isArray(t))for(var o=0;o<t.length;){var n=t[o++],i=t[o++];r.o(e,n)?0===i&&o++:0===i?Object.defineProperty(e,n,{enumerable:!0,value:t[o++]}):Object.defineProperty(e,n,{enumerable:!0,get:i})}else for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,o)=>(r.f[o](e,t),t),[])),r.u=e=>e+".fs.js",r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="@themartiancompany/fs:";r.l=(o,n,i,c)=>{if(e[o])return void e[o].push(n);let s,a;if(void 0!==i){const e=document.getElementsByTagName("script");for(var l=0;l<e.length;l++){const r=e[l];if(r.getAttribute("src")==o||r.getAttribute("data-webpack")==t+i){s=r;break}}}s||(a=!0,s=document.createElement("script"),s.charset="utf-8",r.nc&&s.setAttribute("nonce",r.nc),s.setAttribute("data-webpack",t+i),s.src=o),e[o]=[n];const u=(t,r)=>{s.onerror=s.onload=null,clearTimeout(f);const n=e[o];if(delete e[o],s.parentNode?.removeChild(s),n?.forEach(e=>e(r)),t)return t(r)},f=setTimeout(u.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=u.bind(null,s.onerror),s.onload=u.bind(null,s.onload),a&&document.head.appendChild(s)}})(),r.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{let e;r.g.importScripts&&(e=r.g.location+"");const t=r.g.document;if(!e&&t&&("SCRIPT"===t.currentScript?.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){const r=t.getElementsByTagName("script");if(r.length){let t=r.length-1;for(;t>-1&&(!e||!/^http(s?):/.test(e));)e=r[t--].src}}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),r.p=e})(),(()=>{const e={792:0};r.f.j=(t,o)=>{let n=r.o(e,t)?e[t]:void 0;if(0!==n)if(n)o.push(n[2]);else{const i=new Promise((r,o)=>n=e[t]=[r,o]);o.push(n[2]=i);const c=r.p+r.u(t),s=new Error,a=o=>{if(r.o(e,t)&&(n=e[t],0!==n&&(e[t]=void 0),n)){const e=o&&("load"===o.type?"missing":o.type),r=o&&o.target&&o.target.src;s.message="Loading chunk "+t+" failed.\n("+e+": "+r+")",s.name="ChunkLoadError",s.type=e,s.request=r,s.event=o,n[1](s)}};r.l(c,a,"chunk-"+t,t)}};const t=(t,o)=>{let[n,i,c]=o;var s,a,l=0;if(n.some(t=>0!==e[t])){for(s in i)r.o(i,s)&&(r.m[s]=i[s]);c&&c(r)}for(t&&t(o);l<n.length;l++)a=n[l],r.o(e,a)&&e[a]&&e[a][0](),e[a]=0},o=self.webpackChunk_themartiancompany_fs=self.webpackChunk_themartiancompany_fs||[];o.forEach(t.bind(null,0)),o.push=t.bind(null,o.push.bind(o))})(),r(727)})();
|
package/eslint.config.mjs
CHANGED
|
@@ -36,6 +36,7 @@ const
|
|
|
36
36
|
"dist/**",
|
|
37
37
|
"**/fs-worker.js",
|
|
38
38
|
`**/${_project}.js`,
|
|
39
|
+
`**/*.${_project}.js`,
|
|
39
40
|
"eslint.config.js"
|
|
40
41
|
];
|
|
41
42
|
export default defineConfig([
|
|
@@ -60,8 +61,7 @@ export default defineConfig([
|
|
|
60
61
|
{ ignores:
|
|
61
62
|
_ignores,
|
|
62
63
|
files:
|
|
63
|
-
[ "**/*.js",
|
|
64
|
-
`${_project}/*` ],
|
|
64
|
+
[ "**/*.{cjs,js}", ],
|
|
65
65
|
languageOptions:
|
|
66
66
|
{ sourceType:
|
|
67
67
|
"commonjs" } },
|
package/fs
CHANGED
|
@@ -24,13 +24,13 @@
|
|
|
24
24
|
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
25
25
|
*/
|
|
26
26
|
|
|
27
|
-
function
|
|
27
|
+
async function
|
|
28
28
|
_opfs_module_get() {
|
|
29
29
|
let
|
|
30
30
|
_fs;
|
|
31
31
|
try {
|
|
32
32
|
_fs =
|
|
33
|
-
|
|
33
|
+
await import(
|
|
34
34
|
"opfs");
|
|
35
35
|
}
|
|
36
36
|
catch(
|
|
@@ -58,7 +58,7 @@ function
|
|
|
58
58
|
return _fs;
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
-
function
|
|
61
|
+
async function
|
|
62
62
|
_fs_module_auto_detect() {
|
|
63
63
|
let
|
|
64
64
|
_fs;
|
|
@@ -66,7 +66,7 @@ function
|
|
|
66
66
|
( typeof global !== 'undefined' && global.global === global ) &&
|
|
67
67
|
typeof __webpack_require__ !== 'function' ) {
|
|
68
68
|
_fs =
|
|
69
|
-
|
|
69
|
+
await import(
|
|
70
70
|
"node:fs");
|
|
71
71
|
_fs[
|
|
72
72
|
"fsWorkerStart"] =
|
|
@@ -75,28 +75,29 @@ function
|
|
|
75
75
|
}
|
|
76
76
|
else {
|
|
77
77
|
_fs =
|
|
78
|
-
_opfs_module_get();
|
|
78
|
+
await _opfs_module_get();
|
|
79
79
|
}
|
|
80
80
|
return _fs;
|
|
81
81
|
}
|
|
82
82
|
|
|
83
|
-
function
|
|
83
|
+
async function
|
|
84
84
|
_fs_module_get(
|
|
85
85
|
_module_name) {
|
|
86
86
|
let
|
|
87
87
|
_fs;
|
|
88
88
|
if ( _module_name == "" ||
|
|
89
|
-
typeof
|
|
89
|
+
typeof(
|
|
90
|
+
_module_name) === 'undefined' ) {
|
|
90
91
|
_fs =
|
|
91
|
-
_fs_module_auto_detect();
|
|
92
|
+
await _fs_module_auto_detect();
|
|
92
93
|
}
|
|
93
94
|
else if ( _module_name == 'opfs' ) {
|
|
94
95
|
_fs =
|
|
95
|
-
_opfs_module_auto_detect();
|
|
96
|
+
await _opfs_module_auto_detect();
|
|
96
97
|
}
|
|
97
98
|
else if ( _module_name == 'fs' ) {
|
|
98
99
|
_fs =
|
|
99
|
-
|
|
100
|
+
await import(
|
|
100
101
|
"node:fs");
|
|
101
102
|
_fs[
|
|
102
103
|
"fsWorkerStart"] =
|
|
@@ -139,13 +140,13 @@ function
|
|
|
139
140
|
return _fs_worker_start_fun;
|
|
140
141
|
}
|
|
141
142
|
|
|
142
|
-
function
|
|
143
|
+
async function
|
|
143
144
|
_is_dir_sync_get(
|
|
144
145
|
_fs_module) {
|
|
145
146
|
if ( typeof(
|
|
146
147
|
_fs_module) === "undefined" ) {
|
|
147
148
|
_fs_module =
|
|
148
|
-
_fs_module_auto_detect();
|
|
149
|
+
await _fs_module_auto_detect();
|
|
149
150
|
}
|
|
150
151
|
const
|
|
151
152
|
_is_dir_sync =
|
|
@@ -165,18 +166,30 @@ function
|
|
|
165
166
|
|
|
166
167
|
const
|
|
167
168
|
_fs =
|
|
168
|
-
_fs_module_auto_detect();
|
|
169
|
+
await _fs_module_auto_detect();
|
|
169
170
|
|
|
170
171
|
_fs[
|
|
171
172
|
"isDirSync"] =
|
|
172
|
-
_is_dir_sync_get(
|
|
173
|
+
await _is_dir_sync_get(
|
|
173
174
|
_fs);
|
|
174
175
|
_fs[
|
|
175
176
|
"isDir"] =
|
|
176
177
|
_fs[
|
|
177
178
|
"isDirSync"];
|
|
178
179
|
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
180
|
+
export default _fs;
|
|
181
|
+
|
|
182
|
+
const
|
|
183
|
+
getModule =
|
|
184
|
+
_fs_module_get;
|
|
185
|
+
|
|
186
|
+
export {
|
|
187
|
+
getModule
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
// Common Javascript exports
|
|
191
|
+
|
|
192
|
+
// module.exports =
|
|
193
|
+
// _fs;
|
|
194
|
+
// module.exports.getModule =
|
|
195
|
+
// _fs_module_get;
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"description":
|
|
5
5
|
"Platform-independent File System ('fs') module.",
|
|
6
6
|
"version":
|
|
7
|
-
"0.0.
|
|
7
|
+
"0.0.19",
|
|
8
8
|
"homepage":
|
|
9
9
|
"https://github.com/themartiancompany/tmcfs",
|
|
10
10
|
"license":
|
|
@@ -40,10 +40,10 @@
|
|
|
40
40
|
"unzip"
|
|
41
41
|
],
|
|
42
42
|
"type":
|
|
43
|
-
"
|
|
43
|
+
"module",
|
|
44
44
|
"files": [
|
|
45
45
|
"COPYING",
|
|
46
|
-
"AUTHORS.
|
|
46
|
+
"AUTHORS.rst",
|
|
47
47
|
"README.md",
|
|
48
48
|
"dist",
|
|
49
49
|
"eslint.config.mjs",
|
|
@@ -73,28 +73,32 @@
|
|
|
73
73
|
"url": "git+https://github.com/themartiancompany/tmcfs.git"
|
|
74
74
|
},
|
|
75
75
|
"devDependencies": {
|
|
76
|
-
"
|
|
77
|
-
"^
|
|
76
|
+
"brace-expansion":
|
|
77
|
+
"^5.0.9",
|
|
78
78
|
"eslint":
|
|
79
79
|
"^10.3.0",
|
|
80
|
+
"@eslint/js":
|
|
81
|
+
"^10.0.1",
|
|
82
|
+
"fast-uri":
|
|
83
|
+
"^4.1.2",
|
|
80
84
|
"globals":
|
|
81
85
|
"^17.3.0",
|
|
82
86
|
"opfs":
|
|
83
|
-
"npm:@themartiancompany/opfs@^2.0.
|
|
87
|
+
"npm:@themartiancompany/opfs@^2.0.19",
|
|
84
88
|
"safely-serve":
|
|
85
|
-
"^0.0.
|
|
89
|
+
"^0.0.14",
|
|
86
90
|
"web-worker":
|
|
87
91
|
"^1.5.0",
|
|
88
92
|
"webpack":
|
|
89
|
-
"^5.
|
|
93
|
+
"^5.109.2",
|
|
90
94
|
"webpack-cli":
|
|
91
|
-
"^
|
|
95
|
+
"^7.2.2"
|
|
92
96
|
},
|
|
93
97
|
"dependencies": {
|
|
94
98
|
},
|
|
95
99
|
"optionalDependencies": {
|
|
96
100
|
"opfs":
|
|
97
|
-
"npm:@themartiancompany/opfs@^2.0.
|
|
101
|
+
"npm:@themartiancompany/opfs@^2.0.19"
|
|
98
102
|
},
|
|
99
103
|
"overrides": {
|
|
100
104
|
"fs":
|