fix: opfs getdirectory in workers

This commit is contained in:
Percs 2025-03-25 10:48:44 -05:00
parent 090c5ad4dc
commit cbad5ac5dc
3 changed files with 150 additions and 145 deletions

View file

@ -31,8 +31,8 @@
"author": "",
"license": "MIT",
"devDependencies": {
"@eslint/eslintrc": "^3.3.0",
"@eslint/js": "^9.22.0",
"@eslint/eslintrc": "^3.3.1",
"@eslint/js": "^9.23.0",
"@estruyf/github-actions-reporter": "^1.10.0",
"@fastify/static": "^8.1.1",
"@mercuryworkshop/bare-as-module3": "^2.2.5",
@ -45,13 +45,13 @@
"@rspack/cli": "^1.2.8",
"@rspack/core": "^1.2.8",
"@types/eslint": "^9.6.1",
"@types/estree": "^1.0.6",
"@types/node": "^22.13.10",
"@types/estree": "^1.0.7",
"@types/node": "^22.13.13",
"@types/serviceworker": "^0.0.126",
"@typescript-eslint/eslint-plugin": "^8.27.0",
"@typescript-eslint/parser": "^8.27.0",
"@typescript-eslint/eslint-plugin": "^8.28.0",
"@typescript-eslint/parser": "^8.28.0",
"dotenv": "^16.4.7",
"eslint": "^9.22.0",
"eslint": "^9.23.0",
"fastify": "^5.2.1",
"playwright": "^1.51.1",
"prettier": "^3.5.3",

266
pnpm-lock.yaml generated
View file

@ -31,11 +31,11 @@ importers:
version: 2.7.1
devDependencies:
'@eslint/eslintrc':
specifier: ^3.3.0
version: 3.3.0
specifier: ^3.3.1
version: 3.3.1
'@eslint/js':
specifier: ^9.22.0
version: 9.22.0
specifier: ^9.23.0
version: 9.23.0
'@estruyf/github-actions-reporter':
specifier: ^1.10.0
version: 1.10.0(@playwright/test@1.51.1)
@ -73,26 +73,26 @@ importers:
specifier: ^9.6.1
version: 9.6.1
'@types/estree':
specifier: ^1.0.6
version: 1.0.6
specifier: ^1.0.7
version: 1.0.7
'@types/node':
specifier: ^22.13.10
version: 22.13.10
specifier: ^22.13.13
version: 22.13.13
'@types/serviceworker':
specifier: ^0.0.126
version: 0.0.126
'@typescript-eslint/eslint-plugin':
specifier: ^8.27.0
version: 8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.22.0)(typescript@5.8.2))(eslint@9.22.0)(typescript@5.8.2)
specifier: ^8.28.0
version: 8.28.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint@9.23.0)(typescript@5.8.2)
'@typescript-eslint/parser':
specifier: ^8.27.0
version: 8.27.0(eslint@9.22.0)(typescript@5.8.2)
specifier: ^8.28.0
version: 8.28.0(eslint@9.23.0)(typescript@5.8.2)
dotenv:
specifier: ^16.4.7
version: 16.4.7
eslint:
specifier: ^9.22.0
version: 9.22.0
specifier: ^9.23.0
version: 9.23.0
fastify:
specifier: ^5.2.1
version: 5.2.1
@ -149,20 +149,20 @@ packages:
resolution: {integrity: sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@eslint/config-helpers@0.1.0':
resolution: {integrity: sha512-kLrdPDJE1ckPo94kmPPf9Hfd0DU0Jw6oKYrhe+pwSC0iTUInmTa+w6fw8sGgcfkFJGNdWOUeOaDM4quW4a7OkA==}
'@eslint/config-helpers@0.2.0':
resolution: {integrity: sha512-yJLLmLexii32mGrhW29qvU3QBVTu0GUmEf/J4XsBtVhp4JkIUFN/BjWqTF63yRvGApIDpZm5fa97LtYtINmfeQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@eslint/core@0.12.0':
resolution: {integrity: sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@eslint/eslintrc@3.3.0':
resolution: {integrity: sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==}
'@eslint/eslintrc@3.3.1':
resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@eslint/js@9.22.0':
resolution: {integrity: sha512-vLFajx9o8d1/oL2ZkpMYbkLv8nDB6yaIwFNt7nI4+I80U/z03SxmfOMsLbvWr3p7C+Wnoh//aOu2pQW8cS0HCQ==}
'@eslint/js@9.23.0':
resolution: {integrity: sha512-35MJ8vCPU0ZMxo7zfev2pypqTwWTofFZO6m4KAtdoFhRpLJUpHTZZ+KB3C7Hb1d7bULYwO4lJXGCi5Se+8OMbw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@eslint/object-schema@2.1.6':
@ -486,8 +486,8 @@ packages:
'@types/estree@1.0.5':
resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
'@types/estree@1.0.6':
resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==}
'@types/estree@1.0.7':
resolution: {integrity: sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==}
'@types/express-serve-static-core@4.19.6':
resolution: {integrity: sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==}
@ -519,8 +519,8 @@ packages:
'@types/node-forge@1.3.11':
resolution: {integrity: sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==}
'@types/node@22.13.10':
resolution: {integrity: sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw==}
'@types/node@22.13.13':
resolution: {integrity: sha512-ClsL5nMwKaBRwPcCvH8E7+nU4GxHVx1axNvMZTFHMEfNI7oahimt26P5zjVCRrjiIWj6YFXfE1v3dEp94wLcGQ==}
'@types/qs@6.9.18':
resolution: {integrity: sha512-kK7dgTYDyGqS+e2Q4aK9X3D7q234CIZ1Bv0q/7Z5IwRDoADNU81xXJK/YVyLbLTZCoIwUoDoffFeF+p/eIklAA==}
@ -555,51 +555,51 @@ packages:
'@types/ws@8.18.0':
resolution: {integrity: sha512-8svvI3hMyvN0kKCJMvTJP/x6Y/EoQbepff882wL+Sn5QsXb3etnamgrJq4isrBxSJj5L2AuXcI0+bgkoAXGUJw==}
'@typescript-eslint/eslint-plugin@8.27.0':
resolution: {integrity: sha512-4henw4zkePi5p252c8ncBLzLce52SEUz2Ebj8faDnuUXz2UuHEONYcJ+G0oaCF+bYCWVZtrGzq3FD7YXetmnSA==}
'@typescript-eslint/eslint-plugin@8.28.0':
resolution: {integrity: sha512-lvFK3TCGAHsItNdWZ/1FkvpzCxTHUVuFrdnOGLMa0GGCFIbCgQWVk3CzCGdA7kM3qGVc+dfW9tr0Z/sHnGDFyg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
'@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <5.9.0'
'@typescript-eslint/parser@8.27.0':
resolution: {integrity: sha512-XGwIabPallYipmcOk45DpsBSgLC64A0yvdAkrwEzwZ2viqGqRUJ8eEYoPz0CWnutgAFbNMPdsGGvzjSmcWVlEA==}
'@typescript-eslint/parser@8.28.0':
resolution: {integrity: sha512-LPcw1yHD3ToaDEoljFEfQ9j2xShY367h7FZ1sq5NJT9I3yj4LHer1Xd1yRSOdYy9BpsrxU7R+eoDokChYM53lQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <5.9.0'
'@typescript-eslint/scope-manager@8.27.0':
resolution: {integrity: sha512-8oI9GwPMQmBryaaxG1tOZdxXVeMDte6NyJA4i7/TWa4fBwgnAXYlIQP+uYOeqAaLJ2JRxlG9CAyL+C+YE9Xknw==}
'@typescript-eslint/scope-manager@8.28.0':
resolution: {integrity: sha512-u2oITX3BJwzWCapoZ/pXw6BCOl8rJP4Ij/3wPoGvY8XwvXflOzd1kLrDUUUAIEdJSFh+ASwdTHqtan9xSg8buw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@typescript-eslint/type-utils@8.27.0':
resolution: {integrity: sha512-wVArTVcz1oJOIEJxui/nRhV0TXzD/zMSOYi/ggCfNq78EIszddXcJb7r4RCp/oBrjt8n9A0BSxRMKxHftpDxDA==}
'@typescript-eslint/type-utils@8.28.0':
resolution: {integrity: sha512-oRoXu2v0Rsy/VoOGhtWrOKDiIehvI+YNrDk5Oqj40Mwm0Yt01FC/Q7nFqg088d3yAsR1ZcZFVfPCTTFCe/KPwg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <5.9.0'
'@typescript-eslint/types@8.27.0':
resolution: {integrity: sha512-/6cp9yL72yUHAYq9g6DsAU+vVfvQmd1a8KyA81uvfDE21O2DwQ/qxlM4AR8TSdAu+kJLBDrEHKC5/W2/nxsY0A==}
'@typescript-eslint/types@8.28.0':
resolution: {integrity: sha512-bn4WS1bkKEjx7HqiwG2JNB3YJdC1q6Ue7GyGlwPHyt0TnVq6TtD/hiOdTZt71sq0s7UzqBFXD8t8o2e63tXgwA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@typescript-eslint/typescript-estree@8.27.0':
resolution: {integrity: sha512-BnKq8cqPVoMw71O38a1tEb6iebEgGA80icSxW7g+kndx0o6ot6696HjG7NdgfuAVmVEtwXUr3L8R9ZuVjoQL6A==}
'@typescript-eslint/typescript-estree@8.28.0':
resolution: {integrity: sha512-H74nHEeBGeklctAVUvmDkxB1mk+PAZ9FiOMPFncdqeRBXxk1lWSYraHw8V12b7aa6Sg9HOBNbGdSHobBPuQSuA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '>=4.8.4 <5.9.0'
'@typescript-eslint/utils@8.27.0':
resolution: {integrity: sha512-njkodcwH1yvmo31YWgRHNb/x1Xhhq4/m81PhtvmRngD8iHPehxffz1SNCO+kwaePhATC+kOa/ggmvPoPza5i0Q==}
'@typescript-eslint/utils@8.28.0':
resolution: {integrity: sha512-OELa9hbTYciYITqgurT1u/SzpQVtDLmQMFzy/N8pQE+tefOyCWT79jHsav294aTqV1q1u+VzqDGbuujvRYaeSQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <5.9.0'
'@typescript-eslint/visitor-keys@8.27.0':
resolution: {integrity: sha512-WsXQwMkILJvffP6z4U3FYJPlbf/j07HIxmDjZpbNvBJkMfvwXj5ACRkkHwBDvLBbDbtX5TdU64/rcvKJ/vuInQ==}
'@typescript-eslint/visitor-keys@8.28.0':
resolution: {integrity: sha512-hbn8SZ8w4u2pRwgQ1GlUrPKE+t2XvcCW5tTRF7j6SMYIuYG37XuzIW44JCZPa36evi0Oy2SnM664BlIaAuQcvg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@webassemblyjs/ast@1.14.1':
@ -833,8 +833,8 @@ packages:
resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
engines: {node: '>=6'}
caniuse-lite@1.0.30001706:
resolution: {integrity: sha512-3ZczoTApMAZwPKYWmwVbQMFpXBDds3/0VciVoUwPUbldlYyVLmRVuRs/PcUZtHpbLRpzzDvrvnFuREsGt6lUug==}
caniuse-lite@1.0.30001707:
resolution: {integrity: sha512-3qtRjw/HQSMlDWf+X79N206fepf4SOOU6SQLMaq/0KkZLmSjPxAkBOQQ+FxbHKfHmYLZFfdWsO3KA90ceHPSnw==}
chalk@4.1.2:
resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
@ -1058,8 +1058,8 @@ packages:
ee-first@1.1.1:
resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
electron-to-chromium@1.5.122:
resolution: {integrity: sha512-EML1wnwkY5MFh/xUnCvY8FrhUuKzdYhowuZExZOfwJo+Zu9OsNCI23Cgl5y7awy7HrUHSwB1Z8pZX5TI34lsUg==}
electron-to-chromium@1.5.123:
resolution: {integrity: sha512-refir3NlutEZqlKaBLK0tzlVLe5P2wDKS7UQt/3SpibizgsRAPOsqQC3ffw1nlv3ze5gjRQZYHoPymgVZkplFA==}
emoji-regex@8.0.0:
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
@ -1153,8 +1153,8 @@ packages:
resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
eslint@9.22.0:
resolution: {integrity: sha512-9V/QURhsRN40xuHXWjV64yvrzMjcz7ZyNoF2jJFmy9j/SLk0u1OLSZgXi28MrXjymnjEGSR80WCdab3RGMDveQ==}
eslint@9.23.0:
resolution: {integrity: sha512-jV7AbNoFPAY1EkFYpLq5bslU9NLNO8xnEeQXwErNibVryjk67wHVmddTBilc5srIttJDBrB0eMHKZBFbSIABCw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
hasBin: true
peerDependencies:
@ -1272,9 +1272,9 @@ packages:
resolution: {integrity: sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==}
engines: {node: '>= 0.8'}
find-my-way@9.2.0:
resolution: {integrity: sha512-d3uCir8Hmg7W1Ywp8nKf2lJJYU9Nwinvo+1D39Dn09nz65UKXIxUh7j7K8zeWhxqe1WrkS7FJyON/Q/3lPoc6w==}
engines: {node: '>=14'}
find-my-way@9.3.0:
resolution: {integrity: sha512-eRoFWQw+Yv2tuYlK2pjFS2jGXSxSppAs3hSQjfxVKxM5amECzIgYYc1FEI8ZmhSh/Ig+FrKEz43NLRKJjYCZVg==}
engines: {node: '>=20'}
find-up@5.0.0:
resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
@ -1413,8 +1413,8 @@ packages:
hpack.js@2.1.6:
resolution: {integrity: sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==}
html-entities@2.5.2:
resolution: {integrity: sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==}
html-entities@2.5.3:
resolution: {integrity: sha512-D3AfvN7SjhTgBSA8L1BN4FpPzuEd06uy4lHwSoRWr0lndi9BKaNzPLKGOWZ2ocSGguozr08TTb2jhCLHaemruw==}
html-escaper@2.0.2:
resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==}
@ -1658,8 +1658,8 @@ packages:
lru-cache@10.4.3:
resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
lru-cache@11.0.2:
resolution: {integrity: sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA==}
lru-cache@11.1.0:
resolution: {integrity: sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==}
engines: {node: 20 || >=22}
marked@12.0.2:
@ -2044,8 +2044,8 @@ packages:
safe-buffer@5.2.1:
resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
safe-regex2@4.0.1:
resolution: {integrity: sha512-goqsB+bSlOmVX+CiFX2PFc1OV88j5jvBqIM+DgqrucHnUguAUNtiNOs+aTadq2NqsLQ+TQ3UEVG3gtSFcdlkCg==}
safe-regex2@5.0.0:
resolution: {integrity: sha512-YwJwe5a51WlK7KbOJREPdjNrpViQBI3p4T50lfwPuDhZnE3XGVTlGvi+aolc5+RvxDD6bnUmjVsU9n1eboLUYw==}
safe-stable-stringify@2.5.0:
resolution: {integrity: sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==}
@ -2531,9 +2531,9 @@ snapshots:
'@discoveryjs/json-ext@0.5.7': {}
'@eslint-community/eslint-utils@4.5.1(eslint@9.22.0)':
'@eslint-community/eslint-utils@4.5.1(eslint@9.23.0)':
dependencies:
eslint: 9.22.0
eslint: 9.23.0
eslint-visitor-keys: 3.4.3
'@eslint-community/regexpp@4.12.1': {}
@ -2546,13 +2546,13 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@eslint/config-helpers@0.1.0': {}
'@eslint/config-helpers@0.2.0': {}
'@eslint/core@0.12.0':
dependencies:
'@types/json-schema': 7.0.15
'@eslint/eslintrc@3.3.0':
'@eslint/eslintrc@3.3.1':
dependencies:
ajv: 6.12.6
debug: 4.4.0
@ -2566,7 +2566,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@eslint/js@9.22.0': {}
'@eslint/js@9.23.0': {}
'@eslint/object-schema@2.1.6': {}
@ -2960,7 +2960,7 @@ snapshots:
'@module-federation/runtime-tools': 0.8.4
'@rspack/binding': 1.2.8
'@rspack/lite-tapable': 1.0.1
caniuse-lite: 1.0.30001706
caniuse-lite: 1.0.30001707
'@rspack/dev-server@1.0.10(@rspack/core@1.2.8)(@types/express@4.17.21)(bufferutil@4.0.9)(webpack@5.97.1)':
dependencies:
@ -2990,49 +2990,49 @@ snapshots:
'@types/body-parser@1.19.5':
dependencies:
'@types/connect': 3.4.38
'@types/node': 22.13.10
'@types/node': 22.13.13
'@types/bonjour@3.5.13':
dependencies:
'@types/node': 22.13.10
'@types/node': 22.13.13
'@types/connect-history-api-fallback@1.5.4':
dependencies:
'@types/express-serve-static-core': 5.0.6
'@types/node': 22.13.10
'@types/node': 22.13.13
'@types/connect@3.4.38':
dependencies:
'@types/node': 22.13.10
'@types/node': 22.13.13
'@types/cors@2.8.17':
dependencies:
'@types/node': 22.13.10
'@types/node': 22.13.13
'@types/eslint-scope@3.7.7':
dependencies:
'@types/eslint': 9.6.1
'@types/estree': 1.0.6
'@types/estree': 1.0.7
'@types/eslint@9.6.1':
dependencies:
'@types/estree': 1.0.6
'@types/estree': 1.0.7
'@types/json-schema': 7.0.15
'@types/estree@1.0.5': {}
'@types/estree@1.0.6': {}
'@types/estree@1.0.7': {}
'@types/express-serve-static-core@4.19.6':
dependencies:
'@types/node': 22.13.10
'@types/node': 22.13.13
'@types/qs': 6.9.18
'@types/range-parser': 1.2.7
'@types/send': 0.17.4
'@types/express-serve-static-core@5.0.6':
dependencies:
'@types/node': 22.13.10
'@types/node': 22.13.13
'@types/qs': 6.9.18
'@types/range-parser': 1.2.7
'@types/send': 0.17.4
@ -3047,27 +3047,27 @@ snapshots:
'@types/fs-extra@11.0.4':
dependencies:
'@types/jsonfile': 6.1.4
'@types/node': 22.13.10
'@types/node': 22.13.13
'@types/http-errors@2.0.4': {}
'@types/http-proxy@1.17.16':
dependencies:
'@types/node': 22.13.10
'@types/node': 22.13.13
'@types/json-schema@7.0.15': {}
'@types/jsonfile@6.1.4':
dependencies:
'@types/node': 22.13.10
'@types/node': 22.13.13
'@types/mime@1.3.5': {}
'@types/node-forge@1.3.11':
dependencies:
'@types/node': 22.13.10
'@types/node': 22.13.13
'@types/node@22.13.10':
'@types/node@22.13.13':
dependencies:
undici-types: 6.20.0
@ -3082,7 +3082,7 @@ snapshots:
'@types/send@0.17.4':
dependencies:
'@types/mime': 1.3.5
'@types/node': 22.13.10
'@types/node': 22.13.13
'@types/serve-index@1.9.4':
dependencies:
@ -3091,14 +3091,14 @@ snapshots:
'@types/serve-static@1.15.7':
dependencies:
'@types/http-errors': 2.0.4
'@types/node': 22.13.10
'@types/node': 22.13.13
'@types/send': 0.17.4
'@types/serviceworker@0.0.126': {}
'@types/sockjs@0.3.36':
dependencies:
'@types/node': 22.13.10
'@types/node': 22.13.13
'@types/tapable@2.2.7':
dependencies:
@ -3106,17 +3106,17 @@ snapshots:
'@types/ws@8.18.0':
dependencies:
'@types/node': 22.13.10
'@types/node': 22.13.13
'@typescript-eslint/eslint-plugin@8.27.0(@typescript-eslint/parser@8.27.0(eslint@9.22.0)(typescript@5.8.2))(eslint@9.22.0)(typescript@5.8.2)':
'@typescript-eslint/eslint-plugin@8.28.0(@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2))(eslint@9.23.0)(typescript@5.8.2)':
dependencies:
'@eslint-community/regexpp': 4.12.1
'@typescript-eslint/parser': 8.27.0(eslint@9.22.0)(typescript@5.8.2)
'@typescript-eslint/scope-manager': 8.27.0
'@typescript-eslint/type-utils': 8.27.0(eslint@9.22.0)(typescript@5.8.2)
'@typescript-eslint/utils': 8.27.0(eslint@9.22.0)(typescript@5.8.2)
'@typescript-eslint/visitor-keys': 8.27.0
eslint: 9.22.0
'@typescript-eslint/parser': 8.28.0(eslint@9.23.0)(typescript@5.8.2)
'@typescript-eslint/scope-manager': 8.28.0
'@typescript-eslint/type-utils': 8.28.0(eslint@9.23.0)(typescript@5.8.2)
'@typescript-eslint/utils': 8.28.0(eslint@9.23.0)(typescript@5.8.2)
'@typescript-eslint/visitor-keys': 8.28.0
eslint: 9.23.0
graphemer: 1.4.0
ignore: 5.3.2
natural-compare: 1.4.0
@ -3125,40 +3125,40 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@typescript-eslint/parser@8.27.0(eslint@9.22.0)(typescript@5.8.2)':
'@typescript-eslint/parser@8.28.0(eslint@9.23.0)(typescript@5.8.2)':
dependencies:
'@typescript-eslint/scope-manager': 8.27.0
'@typescript-eslint/types': 8.27.0
'@typescript-eslint/typescript-estree': 8.27.0(typescript@5.8.2)
'@typescript-eslint/visitor-keys': 8.27.0
'@typescript-eslint/scope-manager': 8.28.0
'@typescript-eslint/types': 8.28.0
'@typescript-eslint/typescript-estree': 8.28.0(typescript@5.8.2)
'@typescript-eslint/visitor-keys': 8.28.0
debug: 4.4.0
eslint: 9.22.0
eslint: 9.23.0
typescript: 5.8.2
transitivePeerDependencies:
- supports-color
'@typescript-eslint/scope-manager@8.27.0':
'@typescript-eslint/scope-manager@8.28.0':
dependencies:
'@typescript-eslint/types': 8.27.0
'@typescript-eslint/visitor-keys': 8.27.0
'@typescript-eslint/types': 8.28.0
'@typescript-eslint/visitor-keys': 8.28.0
'@typescript-eslint/type-utils@8.27.0(eslint@9.22.0)(typescript@5.8.2)':
'@typescript-eslint/type-utils@8.28.0(eslint@9.23.0)(typescript@5.8.2)':
dependencies:
'@typescript-eslint/typescript-estree': 8.27.0(typescript@5.8.2)
'@typescript-eslint/utils': 8.27.0(eslint@9.22.0)(typescript@5.8.2)
'@typescript-eslint/typescript-estree': 8.28.0(typescript@5.8.2)
'@typescript-eslint/utils': 8.28.0(eslint@9.23.0)(typescript@5.8.2)
debug: 4.4.0
eslint: 9.22.0
eslint: 9.23.0
ts-api-utils: 2.1.0(typescript@5.8.2)
typescript: 5.8.2
transitivePeerDependencies:
- supports-color
'@typescript-eslint/types@8.27.0': {}
'@typescript-eslint/types@8.28.0': {}
'@typescript-eslint/typescript-estree@8.27.0(typescript@5.8.2)':
'@typescript-eslint/typescript-estree@8.28.0(typescript@5.8.2)':
dependencies:
'@typescript-eslint/types': 8.27.0
'@typescript-eslint/visitor-keys': 8.27.0
'@typescript-eslint/types': 8.28.0
'@typescript-eslint/visitor-keys': 8.28.0
debug: 4.4.0
fast-glob: 3.3.3
is-glob: 4.0.3
@ -3169,20 +3169,20 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@typescript-eslint/utils@8.27.0(eslint@9.22.0)(typescript@5.8.2)':
'@typescript-eslint/utils@8.28.0(eslint@9.23.0)(typescript@5.8.2)':
dependencies:
'@eslint-community/eslint-utils': 4.5.1(eslint@9.22.0)
'@typescript-eslint/scope-manager': 8.27.0
'@typescript-eslint/types': 8.27.0
'@typescript-eslint/typescript-estree': 8.27.0(typescript@5.8.2)
eslint: 9.22.0
'@eslint-community/eslint-utils': 4.5.1(eslint@9.23.0)
'@typescript-eslint/scope-manager': 8.28.0
'@typescript-eslint/types': 8.28.0
'@typescript-eslint/typescript-estree': 8.28.0(typescript@5.8.2)
eslint: 9.23.0
typescript: 5.8.2
transitivePeerDependencies:
- supports-color
'@typescript-eslint/visitor-keys@8.27.0':
'@typescript-eslint/visitor-keys@8.28.0':
dependencies:
'@typescript-eslint/types': 8.27.0
'@typescript-eslint/types': 8.28.0
eslint-visitor-keys: 4.2.0
'@webassemblyjs/ast@1.14.1':
@ -3412,8 +3412,8 @@ snapshots:
browserslist@4.24.4:
dependencies:
caniuse-lite: 1.0.30001706
electron-to-chromium: 1.5.122
caniuse-lite: 1.0.30001707
electron-to-chromium: 1.5.123
node-releases: 2.0.19
update-browserslist-db: 1.1.3(browserslist@4.24.4)
@ -3441,7 +3441,7 @@ snapshots:
callsites@3.1.0: {}
caniuse-lite@1.0.30001706: {}
caniuse-lite@1.0.30001707: {}
chalk@4.1.2:
dependencies:
@ -3635,7 +3635,7 @@ snapshots:
ee-first@1.1.1: {}
electron-to-chromium@1.5.122: {}
electron-to-chromium@1.5.123: {}
emoji-regex@8.0.0: {}
@ -3650,7 +3650,7 @@ snapshots:
engine.io@6.6.4(bufferutil@4.0.9):
dependencies:
'@types/cors': 2.8.17
'@types/node': 22.13.10
'@types/node': 22.13.13
accepts: 1.3.8
base64id: 2.0.0
cookie: 0.7.2
@ -3718,20 +3718,20 @@ snapshots:
eslint-visitor-keys@4.2.0: {}
eslint@9.22.0:
eslint@9.23.0:
dependencies:
'@eslint-community/eslint-utils': 4.5.1(eslint@9.22.0)
'@eslint-community/eslint-utils': 4.5.1(eslint@9.23.0)
'@eslint-community/regexpp': 4.12.1
'@eslint/config-array': 0.19.2
'@eslint/config-helpers': 0.1.0
'@eslint/config-helpers': 0.2.0
'@eslint/core': 0.12.0
'@eslint/eslintrc': 3.3.0
'@eslint/js': 9.22.0
'@eslint/eslintrc': 3.3.1
'@eslint/js': 9.23.0
'@eslint/plugin-kit': 0.2.7
'@humanfs/node': 0.16.6
'@humanwhocodes/module-importer': 1.0.1
'@humanwhocodes/retry': 0.4.2
'@types/estree': 1.0.6
'@types/estree': 1.0.7
'@types/json-schema': 7.0.15
ajv: 6.12.6
chalk: 4.1.2
@ -3878,7 +3878,7 @@ snapshots:
abstract-logging: 2.0.1
avvio: 9.1.0
fast-json-stringify: 6.0.1
find-my-way: 9.2.0
find-my-way: 9.3.0
light-my-request: 6.6.0
pino: 9.6.0
process-warning: 4.0.1
@ -3929,11 +3929,11 @@ snapshots:
transitivePeerDependencies:
- supports-color
find-my-way@9.2.0:
find-my-way@9.3.0:
dependencies:
fast-deep-equal: 3.1.3
fast-querystring: 1.1.2
safe-regex2: 4.0.1
safe-regex2: 5.0.0
find-up@5.0.0:
dependencies:
@ -4066,7 +4066,7 @@ snapshots:
readable-stream: 2.3.8
wbuf: 1.7.3
html-entities@2.5.2: {}
html-entities@2.5.3: {}
html-escaper@2.0.2: {}
@ -4210,7 +4210,7 @@ snapshots:
jest-worker@27.5.1:
dependencies:
'@types/node': 22.13.10
'@types/node': 22.13.13
merge-stream: 2.0.0
supports-color: 8.1.1
@ -4282,7 +4282,7 @@ snapshots:
lru-cache@10.4.3: {}
lru-cache@11.0.2: {}
lru-cache@11.1.0: {}
marked@12.0.2: {}
@ -4465,7 +4465,7 @@ snapshots:
path-scurry@2.0.0:
dependencies:
lru-cache: 11.0.2
lru-cache: 11.1.0
minipass: 7.1.2
path-to-regexp@0.1.12: {}
@ -4604,7 +4604,7 @@ snapshots:
safe-buffer@5.2.1: {}
safe-regex2@4.0.1:
safe-regex2@5.0.0:
dependencies:
ret: 0.5.0
@ -5029,7 +5029,7 @@ snapshots:
default-gateway: 6.0.3
express: 4.21.2
graceful-fs: 4.2.11
html-entities: 2.5.2
html-entities: 2.5.3
http-proxy-middleware: 2.0.7(@types/express@4.17.21)
ipaddr.js: 2.2.0
launch-editor: 2.10.0
@ -5056,7 +5056,7 @@ snapshots:
webpack@5.97.1:
dependencies:
'@types/eslint-scope': 3.7.7
'@types/estree': 1.0.6
'@types/estree': 1.0.7
'@webassemblyjs/ast': 1.14.1
'@webassemblyjs/wasm-edit': 1.14.1
'@webassemblyjs/wasm-parser': 1.14.1

View file

@ -3,17 +3,22 @@ import { ScramjetClient } from "../client";
export default function (client: ScramjetClient, self: Self) {
client.Proxy("StorageManager.prototype.getDirectory", {
apply(ctx) {
const directoryPromise = ctx.call() as Promise<FileSystemDirectoryHandle>;
const rootPromise = ctx.call() as Promise<FileSystemDirectoryHandle>;
ctx.return(
(async () => {
const directory = await directoryPromise;
return directory.getDirectoryHandle(
`${client.url.hostname.replace(/\/|\s|\./g, "-")}`,
const root = await rootPromise;
const directory = await root.getDirectoryHandle(
`${client.url.origin.replace(/\/|\s|\./g, "-")}`,
{
create: true,
}
);
Object.defineProperty(directory, "name", {
value: "",
writable: false,
});
return directory;
})()
);
},