diff --git a/dist/kv.esm.js b/dist/kv.esm.js index e1d2314..cca0e93 100644 --- a/dist/kv.esm.js +++ b/dist/kv.esm.js @@ -1 +1 @@ -import{AwsClient as t}from"aws4fetch";const e=class{constructor(e="main",s={passphrase:null}){this.namespace=e,this.config=s,this.prefix=`https://${KV_S3_BUCKET}/${e}`,this.aws=new t({accessKeyId:KV_ACCESS_KEY_ID,secretAccessKey:KV_SECRET_ACCESS_KEY,region:KV_DEFAULT_REGION,service:"s3"}),this.Encrypt=async(t,e)=>{const s=(new TextEncoder).encode(e),i=await crypto.subtle.digest("SHA-256",s),a=crypto.getRandomValues(new Uint8Array(12)),r={name:"AES-GCM",iv:a},n=await crypto.subtle.importKey("raw",i,r,!1,["encrypt"]),c=(new TextEncoder).encode(t),o=await crypto.subtle.encrypt(r,n,c),h=Array.from(new Uint8Array(o)).map((t=>String.fromCharCode(t))).join(""),p=btoa(h);return Array.from(a).map((t=>("00"+t.toString(16)).slice(-2))).join("")+p},this.Decrypt=async(t,e)=>{const s=(new TextEncoder).encode(e),i=await crypto.subtle.digest("SHA-256",s),a=t.slice(0,24).match(/.{2}/g).map((t=>parseInt(t,16))),r={name:"AES-GCM",iv:new Uint8Array(a)},n=await crypto.subtle.importKey("raw",i,r,!1,["decrypt"]),c=atob(t.slice(24)),o=new Uint8Array(c.match(/[\s\S]/g).map((t=>t.charCodeAt(0)))),h=await crypto.subtle.decrypt(r,n,o);return(new TextDecoder).decode(h)}}async put(t,e="",s=!1){if(!t)throw"missing key on .put()";if(null!=this.config.passphrase){let s=await this.Encrypt(e,this.config.passphrase);await this.aws.fetch(`${this.prefix}/${t}.enc`,{body:s,method:"PUT"})}else await this.aws.fetch(`${this.prefix}/${t}`,{body:e,method:"PUT"});return!0}async get(t,e="text"){if(!t)throw"missing key on .get()";if(!["text","json"].includes(e))throw"invalid type on .get()";let s;if(null!=this.config.passphrase){let e=await this.aws.fetch(`${this.prefix}/${t}.enc`),i=await e.text();s=await this.Decrypt(i,this.config.passphrase)}else{let e=await this.aws.fetch(`${this.prefix}/${t}`);s=await e.text()}return s}async delete(t){if(!t)throw"missing key on .delete()";let e;return null!=this.config.passphrase&&(e=".enc"),await this.aws.fetch(`${this.prefix}/${t}${e}`,{method:"DELETE"}),!0}};export{e as default}; +import{AwsClient as t}from"aws4fetch";const e=class{constructor(e="main",s={passphrase:null}){this.namespace=e,this.config=s,this.prefix=`https://${KV_S3_BUCKET}/${e}`,this.aws=new t({accessKeyId:KV_ACCESS_KEY_ID,secretAccessKey:KV_SECRET_ACCESS_KEY,region:KV_DEFAULT_REGION,service:"s3"}),this.Encrypt=async(t,e)=>{const s=(new TextEncoder).encode(e),i=await crypto.subtle.digest("SHA-256",s),a=crypto.getRandomValues(new Uint8Array(12)),r={name:"AES-GCM",iv:a},n=await crypto.subtle.importKey("raw",i,r,!1,["encrypt"]),c=(new TextEncoder).encode(t),o=await crypto.subtle.encrypt(r,n,c),h=Array.from(new Uint8Array(o)).map(t=>String.fromCharCode(t)).join(""),p=btoa(h);return Array.from(a).map(t=>("00"+t.toString(16)).slice(-2)).join("")+p},this.Decrypt=async(t,e)=>{const s=(new TextEncoder).encode(e),i=await crypto.subtle.digest("SHA-256",s),a=t.slice(0,24).match(/.{2}/g).map(t=>parseInt(t,16)),r={name:"AES-GCM",iv:new Uint8Array(a)},n=await crypto.subtle.importKey("raw",i,r,!1,["decrypt"]),c=atob(t.slice(24)),o=new Uint8Array(c.match(/[\s\S]/g).map(t=>t.charCodeAt(0))),h=await crypto.subtle.decrypt(r,n,o);return(new TextDecoder).decode(h)}}async put(t,e="",s=!1){if(!t)throw"missing key on .put()";if(null!=this.config.passphrase){let s=await this.Encrypt(e,this.config.passphrase);await this.aws.fetch(`${this.prefix}/${t}.enc`,{body:s,method:"PUT"})}else await this.aws.fetch(`${this.prefix}/${t}`,{body:e,method:"PUT"});return!0}async get(t,e="text"){if(!t)throw"missing key on .get()";if(!["text","json"].includes(e))throw"invalid type on .get()";let s;if(null!=this.config.passphrase){let e=await this.aws.fetch(`${this.prefix}/${t}.enc`),i=await e.text();s=await this.Decrypt(i,this.config.passphrase)}else{let e=await this.aws.fetch(`${this.prefix}/${t}`);s=await e.text()}return s}async delete(t){if(!t)throw"missing key on .delete()";let e;return null!=this.config.passphrase&&(e=".enc"),await this.aws.fetch(`${this.prefix}/${t}${e}`,{method:"DELETE"}),!0}};export{e as default}; diff --git a/package.json b/package.json index 2806459..9b02e85 100644 --- a/package.json +++ b/package.json @@ -46,16 +46,15 @@ "@rollup/plugin-commonjs": "28.0.6", "@rollup/plugin-node-resolve": "16.0.2", "prettier": "3.6.2", - "rollup": "2.79.2", + "rollup": "4.52.4", "rollup-plugin-cleanup": "3.2.1", - "rollup-plugin-terser": "7.0.2" + "@rollup/plugin-terser": "0.4.4" }, "files": [ "dist" ], "scripts": { - "build": "npx rollup -c", - "prebuild": "npx prettier --write '**/*.{js,json}' '!dist/**' --arrow-parens avoid --trailing-comma none", + "build": "rollup -c", "dry-run": "npm pack --dry-run" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c79fb7f..378ee80 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -17,60 +17,43 @@ importers: devDependencies: '@rollup/plugin-commonjs': specifier: 28.0.6 - version: 28.0.6(rollup@2.79.2) + version: 28.0.6(rollup@4.52.4) '@rollup/plugin-node-resolve': specifier: 16.0.2 - version: 16.0.2(rollup@2.79.2) + version: 16.0.2(rollup@4.52.4) + '@rollup/plugin-terser': + specifier: 0.4.4 + version: 0.4.4(rollup@4.52.4) prettier: specifier: 3.6.2 version: 3.6.2 rollup: - specifier: 2.79.2 - version: 2.79.2 + specifier: 4.52.4 + version: 4.52.4 rollup-plugin-cleanup: specifier: 3.2.1 - version: 3.2.1(rollup@2.79.2) - rollup-plugin-terser: - specifier: 7.0.2 - version: 7.0.2(rollup@2.79.2) + version: 3.2.1(rollup@4.52.4) packages: '@adaptivelink/pops@0.5.8': resolution: {integrity: sha512-AvhUgeD+qjKbDHQLI4IuxXmE99DI39UmCDKOWLPoeCDpOB0m1H2Tef7GVWaLxKf7Gok6qbSpRr2VZaHNYonvNw==} - '@babel/code-frame@7.18.6': - resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-identifier@7.19.1': - resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==} - engines: {node: '>=6.9.0'} - - '@babel/highlight@7.18.6': - resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==} - engines: {node: '>=6.9.0'} - - '@jridgewell/gen-mapping@0.3.2': - resolution: {integrity: sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==} - engines: {node: '>=6.0.0'} + '@jridgewell/gen-mapping@0.3.13': + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} '@jridgewell/resolve-uri@3.1.0': resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} engines: {node: '>=6.0.0'} - '@jridgewell/set-array@1.1.2': - resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} - engines: {node: '>=6.0.0'} - - '@jridgewell/source-map@0.3.2': - resolution: {integrity: sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==} + '@jridgewell/source-map@0.3.11': + resolution: {integrity: sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==} '@jridgewell/sourcemap-codec@1.5.0': resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} - '@jridgewell/trace-mapping@0.3.15': - resolution: {integrity: sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==} + '@jridgewell/trace-mapping@0.3.31': + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} '@rollup/plugin-commonjs@28.0.6': resolution: {integrity: sha512-XSQB1K7FUU5QP+3lOQmVCE3I0FcbbNvmNT4VJSj93iUjayaARrTQeoRdiYQoftAJBLrR9t2agwAd3ekaTgHNlw==} @@ -90,6 +73,15 @@ packages: rollup: optional: true + '@rollup/plugin-terser@0.4.4': + resolution: {integrity: sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^2.0.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true + '@rollup/pluginutils@5.2.0': resolution: {integrity: sha512-qWJ2ZTbmumwiLFomfzTyt5Kng4hwPi9rwCYN4SHb6eaRU1KNO4ccxINHr/VhH4GgPlt1XfSTLX2LBTme8ne4Zw==} engines: {node: '>=14.0.0'} @@ -108,40 +100,133 @@ packages: rollup: optional: true + '@rollup/rollup-android-arm-eabi@4.52.4': + resolution: {integrity: sha512-BTm2qKNnWIQ5auf4deoetINJm2JzvihvGb9R6K/ETwKLql/Bb3Eg2H1FBp1gUb4YGbydMA3jcmQTR73q7J+GAA==} + cpu: [arm] + os: [android] + + '@rollup/rollup-android-arm64@4.52.4': + resolution: {integrity: sha512-P9LDQiC5vpgGFgz7GSM6dKPCiqR3XYN1WwJKA4/BUVDjHpYsf3iBEmVz62uyq20NGYbiGPR5cNHI7T1HqxNs2w==} + cpu: [arm64] + os: [android] + + '@rollup/rollup-darwin-arm64@4.52.4': + resolution: {integrity: sha512-QRWSW+bVccAvZF6cbNZBJwAehmvG9NwfWHwMy4GbWi/BQIA/laTIktebT2ipVjNncqE6GLPxOok5hsECgAxGZg==} + cpu: [arm64] + os: [darwin] + + '@rollup/rollup-darwin-x64@4.52.4': + resolution: {integrity: sha512-hZgP05pResAkRJxL1b+7yxCnXPGsXU0fG9Yfd6dUaoGk+FhdPKCJ5L1Sumyxn8kvw8Qi5PvQ8ulenUbRjzeCTw==} + cpu: [x64] + os: [darwin] + + '@rollup/rollup-freebsd-arm64@4.52.4': + resolution: {integrity: sha512-xmc30VshuBNUd58Xk4TKAEcRZHaXlV+tCxIXELiE9sQuK3kG8ZFgSPi57UBJt8/ogfhAF5Oz4ZSUBN77weM+mQ==} + cpu: [arm64] + os: [freebsd] + + '@rollup/rollup-freebsd-x64@4.52.4': + resolution: {integrity: sha512-WdSLpZFjOEqNZGmHflxyifolwAiZmDQzuOzIq9L27ButpCVpD7KzTRtEG1I0wMPFyiyUdOO+4t8GvrnBLQSwpw==} + cpu: [x64] + os: [freebsd] + + '@rollup/rollup-linux-arm-gnueabihf@4.52.4': + resolution: {integrity: sha512-xRiOu9Of1FZ4SxVbB0iEDXc4ddIcjCv2aj03dmW8UrZIW7aIQ9jVJdLBIhxBI+MaTnGAKyvMwPwQnoOEvP7FgQ==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm-musleabihf@4.52.4': + resolution: {integrity: sha512-FbhM2p9TJAmEIEhIgzR4soUcsW49e9veAQCziwbR+XWB2zqJ12b4i/+hel9yLiD8pLncDH4fKIPIbt5238341Q==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm64-gnu@4.52.4': + resolution: {integrity: sha512-4n4gVwhPHR9q/g8lKCyz0yuaD0MvDf7dV4f9tHt0C73Mp8h38UCtSCSE6R9iBlTbXlmA8CjpsZoujhszefqueg==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-arm64-musl@4.52.4': + resolution: {integrity: sha512-u0n17nGA0nvi/11gcZKsjkLj1QIpAuPFQbR48Subo7SmZJnGxDpspyw2kbpuoQnyK+9pwf3pAoEXerJs/8Mi9g==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-loong64-gnu@4.52.4': + resolution: {integrity: sha512-0G2c2lpYtbTuXo8KEJkDkClE/+/2AFPdPAbmaHoE870foRFs4pBrDehilMcrSScrN/fB/1HTaWO4bqw+ewBzMQ==} + cpu: [loong64] + os: [linux] + + '@rollup/rollup-linux-ppc64-gnu@4.52.4': + resolution: {integrity: sha512-teSACug1GyZHmPDv14VNbvZFX779UqWTsd7KtTM9JIZRDI5NUwYSIS30kzI8m06gOPB//jtpqlhmraQ68b5X2g==} + cpu: [ppc64] + os: [linux] + + '@rollup/rollup-linux-riscv64-gnu@4.52.4': + resolution: {integrity: sha512-/MOEW3aHjjs1p4Pw1Xk4+3egRevx8Ji9N6HUIA1Ifh8Q+cg9dremvFCUbOX2Zebz80BwJIgCBUemjqhU5XI5Eg==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-riscv64-musl@4.52.4': + resolution: {integrity: sha512-1HHmsRyh845QDpEWzOFtMCph5Ts+9+yllCrREuBR/vg2RogAQGGBRC8lDPrPOMnrdOJ+mt1WLMOC2Kao/UwcvA==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-s390x-gnu@4.52.4': + resolution: {integrity: sha512-seoeZp4L/6D1MUyjWkOMRU6/iLmCU2EjbMTyAG4oIOs1/I82Y5lTeaxW0KBfkUdHAWN7j25bpkt0rjnOgAcQcA==} + cpu: [s390x] + os: [linux] + + '@rollup/rollup-linux-x64-gnu@4.52.4': + resolution: {integrity: sha512-Wi6AXf0k0L7E2gteNsNHUs7UMwCIhsCTs6+tqQ5GPwVRWMaflqGec4Sd8n6+FNFDw9vGcReqk2KzBDhCa1DLYg==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-linux-x64-musl@4.52.4': + resolution: {integrity: sha512-dtBZYjDmCQ9hW+WgEkaffvRRCKm767wWhxsFW3Lw86VXz/uJRuD438/XvbZT//B96Vs8oTA8Q4A0AfHbrxP9zw==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-openharmony-arm64@4.52.4': + resolution: {integrity: sha512-1ox+GqgRWqaB1RnyZXL8PD6E5f7YyRUJYnCqKpNzxzP0TkaUh112NDrR9Tt+C8rJ4x5G9Mk8PQR3o7Ku2RKqKA==} + cpu: [arm64] + os: [openharmony] + + '@rollup/rollup-win32-arm64-msvc@4.52.4': + resolution: {integrity: sha512-8GKr640PdFNXwzIE0IrkMWUNUomILLkfeHjXBi/nUvFlpZP+FA8BKGKpacjW6OUUHaNI6sUURxR2U2g78FOHWQ==} + cpu: [arm64] + os: [win32] + + '@rollup/rollup-win32-ia32-msvc@4.52.4': + resolution: {integrity: sha512-AIy/jdJ7WtJ/F6EcfOb2GjR9UweO0n43jNObQMb6oGxkYTfLcnN7vYYpG+CN3lLxrQkzWnMOoNSHTW54pgbVxw==} + cpu: [ia32] + os: [win32] + + '@rollup/rollup-win32-x64-gnu@4.52.4': + resolution: {integrity: sha512-UF9KfsH9yEam0UjTwAgdK0anlQ7c8/pWPU2yVjyWcF1I1thABt6WXE47cI71pGiZ8wGvxohBoLnxM04L/wj8mQ==} + cpu: [x64] + os: [win32] + + '@rollup/rollup-win32-x64-msvc@4.52.4': + resolution: {integrity: sha512-bf9PtUa0u8IXDVxzRToFQKsNCRz9qLYfR/MpECxl4mRoWYjAeFjgxj1XdZr2M/GNVpT05p+LgQOHopYDlUu6/w==} + cpu: [x64] + os: [win32] + '@types/estree@1.0.8': resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} - '@types/node@18.8.0': - resolution: {integrity: sha512-u+h43R6U8xXDt2vzUaVP3VwjjLyOJk6uEciZS8OSyziUQGOwmk+l+4drxcsDboHXwyTaqS1INebghmWMRxq3LA==} - '@types/resolve@1.20.2': resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} - acorn@8.8.0: - resolution: {integrity: sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==} + acorn@8.15.0: + resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} engines: {node: '>=0.4.0'} hasBin: true - ansi-styles@3.2.1: - resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} - engines: {node: '>=4'} - aws4fetch@1.0.20: resolution: {integrity: sha512-/djoAN709iY65ETD6LKCtyyEI04XIBP5xVvfmNxsEP0uJB5tyaGBztSryRr4HqMStr9R06PisQE7m9zDTXKu6g==} buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - chalk@2.4.2: - resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} - engines: {node: '>=4'} - - color-convert@1.9.3: - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} - - color-name@1.1.3: - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} @@ -152,10 +237,6 @@ packages: resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} engines: {node: '>=0.10.0'} - escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} - estree-walker@0.6.1: resolution: {integrity: sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==} @@ -178,14 +259,6 @@ packages: function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - has-flag@3.0.0: - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} - engines: {node: '>=4'} - - has-flag@4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} - hasown@2.0.2: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} @@ -200,26 +273,16 @@ packages: is-reference@1.2.1: resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==} - jest-worker@26.6.2: - resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==} - engines: {node: '>= 10.13.0'} - js-cleanup@1.2.0: resolution: {integrity: sha512-JeDD0yiiSt80fXzAVa/crrS0JDPQljyBG/RpOtaSbyDq03VHa9szJWMaWOYU/bcTn412uMN2MxApXq8v79cUiQ==} engines: {node: ^10.14.2 || >=12.0.0} - js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - magic-string@0.25.9: resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} magic-string@0.30.17: resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} - merge-stream@2.0.0: - resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} @@ -254,30 +317,27 @@ packages: peerDependencies: rollup: '>=2.0' - rollup-plugin-terser@7.0.2: - resolution: {integrity: sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==} - deprecated: This package has been deprecated and is no longer maintained. Please use @rollup/plugin-terser - peerDependencies: - rollup: ^2.0.0 - rollup-pluginutils@2.8.2: resolution: {integrity: sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==} - rollup@2.79.2: - resolution: {integrity: sha512-fS6iqSPZDs3dr/y7Od6y5nha8dW1YnbgtsyotCVvoFGKbERG++CVRFv1meyGDE1SNItQA8BrnCw7ScdAhRJ3XQ==} - engines: {node: '>=10.0.0'} + rollup@4.52.4: + resolution: {integrity: sha512-CLEVl+MnPAiKh5pl4dEWSyMTpuflgNQiLGhMv8ezD5W/qP8AKvmYpCOKRRNOh7oRKnauBZ4SyeYkMS+1VSyKwQ==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - serialize-javascript@4.0.0: - resolution: {integrity: sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==} + serialize-javascript@6.0.2: + resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} skip-regex@1.0.2: resolution: {integrity: sha512-pEjMUbwJ5Pl/6Vn6FsamXHXItJXSRftcibixDmNCWbWhic0hzHrwkMZo0IZ7fMRH9KxcWDFSkzhccB4285PutA==} engines: {node: '>=4.2'} + smob@1.5.0: + resolution: {integrity: sha512-g6T+p7QO8npa+/hNx9ohv1E5pVCmWrVCUzUXJyLdMmftX6ER0oiWY/w9knEonLpnOp6b6FenKnMfR8gqwWdwig==} + source-map-support@0.5.21: resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} @@ -289,20 +349,12 @@ packages: resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} deprecated: Please use @jridgewell/sourcemap-codec instead - supports-color@5.5.0: - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} - engines: {node: '>=4'} - - supports-color@7.2.0: - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} - engines: {node: '>=8'} - supports-preserve-symlinks-flag@1.0.0: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} - terser@5.15.0: - resolution: {integrity: sha512-L1BJiXVmheAQQy+as0oF3Pwtlo4s3Wi1X2zNZ2NxOB4wx9bdS9Vk67XQENLFdLYGCK/Z2di53mTj/hBafR+dTA==} + terser@5.44.0: + resolution: {integrity: sha512-nIVck8DK+GM/0Frwd+nIhZ84pR/BX7rmXMfYwyg+Sri5oGVE99/E3KvXqpC2xHFxyqXyGHTKBSioxxplrO4I4w==} engines: {node: '>=10'} hasBin: true @@ -310,43 +362,28 @@ snapshots: '@adaptivelink/pops@0.5.8': {} - '@babel/code-frame@7.18.6': + '@jridgewell/gen-mapping@0.3.13': dependencies: - '@babel/highlight': 7.18.6 - - '@babel/helper-validator-identifier@7.19.1': {} - - '@babel/highlight@7.18.6': - dependencies: - '@babel/helper-validator-identifier': 7.19.1 - chalk: 2.4.2 - js-tokens: 4.0.0 - - '@jridgewell/gen-mapping@0.3.2': - dependencies: - '@jridgewell/set-array': 1.1.2 '@jridgewell/sourcemap-codec': 1.5.0 - '@jridgewell/trace-mapping': 0.3.15 + '@jridgewell/trace-mapping': 0.3.31 '@jridgewell/resolve-uri@3.1.0': {} - '@jridgewell/set-array@1.1.2': {} - - '@jridgewell/source-map@0.3.2': + '@jridgewell/source-map@0.3.11': dependencies: - '@jridgewell/gen-mapping': 0.3.2 - '@jridgewell/trace-mapping': 0.3.15 + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 '@jridgewell/sourcemap-codec@1.5.0': {} - '@jridgewell/trace-mapping@0.3.15': + '@jridgewell/trace-mapping@0.3.31': dependencies: '@jridgewell/resolve-uri': 3.1.0 '@jridgewell/sourcemap-codec': 1.5.0 - '@rollup/plugin-commonjs@28.0.6(rollup@2.79.2)': + '@rollup/plugin-commonjs@28.0.6(rollup@4.52.4)': dependencies: - '@rollup/pluginutils': 5.2.0(rollup@2.79.2) + '@rollup/pluginutils': 5.2.0(rollup@4.52.4) commondir: 1.0.1 estree-walker: 2.0.2 fdir: 6.4.6(picomatch@4.0.2) @@ -354,61 +391,117 @@ snapshots: magic-string: 0.30.17 picomatch: 4.0.2 optionalDependencies: - rollup: 2.79.2 + rollup: 4.52.4 - '@rollup/plugin-node-resolve@16.0.2(rollup@2.79.2)': + '@rollup/plugin-node-resolve@16.0.2(rollup@4.52.4)': dependencies: - '@rollup/pluginutils': 5.3.0(rollup@2.79.2) + '@rollup/pluginutils': 5.3.0(rollup@4.52.4) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 resolve: 1.22.10 optionalDependencies: - rollup: 2.79.2 + rollup: 4.52.4 - '@rollup/pluginutils@5.2.0(rollup@2.79.2)': + '@rollup/plugin-terser@0.4.4(rollup@4.52.4)': + dependencies: + serialize-javascript: 6.0.2 + smob: 1.5.0 + terser: 5.44.0 + optionalDependencies: + rollup: 4.52.4 + + '@rollup/pluginutils@5.2.0(rollup@4.52.4)': dependencies: '@types/estree': 1.0.8 estree-walker: 2.0.2 picomatch: 4.0.2 optionalDependencies: - rollup: 2.79.2 + rollup: 4.52.4 - '@rollup/pluginutils@5.3.0(rollup@2.79.2)': + '@rollup/pluginutils@5.3.0(rollup@4.52.4)': dependencies: '@types/estree': 1.0.8 estree-walker: 2.0.2 picomatch: 4.0.3 optionalDependencies: - rollup: 2.79.2 + rollup: 4.52.4 - '@types/estree@1.0.8': {} + '@rollup/rollup-android-arm-eabi@4.52.4': + optional: true - '@types/node@18.8.0': {} + '@rollup/rollup-android-arm64@4.52.4': + optional: true - '@types/resolve@1.20.2': {} + '@rollup/rollup-darwin-arm64@4.52.4': + optional: true - acorn@8.8.0: {} + '@rollup/rollup-darwin-x64@4.52.4': + optional: true - ansi-styles@3.2.1: - dependencies: - color-convert: 1.9.3 + '@rollup/rollup-freebsd-arm64@4.52.4': + optional: true - aws4fetch@1.0.20: {} + '@rollup/rollup-freebsd-x64@4.52.4': + optional: true - buffer-from@1.1.2: {} + '@rollup/rollup-linux-arm-gnueabihf@4.52.4': + optional: true - chalk@2.4.2: - dependencies: - ansi-styles: 3.2.1 - escape-string-regexp: 1.0.5 - supports-color: 5.5.0 + '@rollup/rollup-linux-arm-musleabihf@4.52.4': + optional: true - color-convert@1.9.3: - dependencies: - color-name: 1.1.3 + '@rollup/rollup-linux-arm64-gnu@4.52.4': + optional: true + + '@rollup/rollup-linux-arm64-musl@4.52.4': + optional: true + + '@rollup/rollup-linux-loong64-gnu@4.52.4': + optional: true + + '@rollup/rollup-linux-ppc64-gnu@4.52.4': + optional: true + + '@rollup/rollup-linux-riscv64-gnu@4.52.4': + optional: true + + '@rollup/rollup-linux-riscv64-musl@4.52.4': + optional: true + + '@rollup/rollup-linux-s390x-gnu@4.52.4': + optional: true + + '@rollup/rollup-linux-x64-gnu@4.52.4': + optional: true + + '@rollup/rollup-linux-x64-musl@4.52.4': + optional: true - color-name@1.1.3: {} + '@rollup/rollup-openharmony-arm64@4.52.4': + optional: true + + '@rollup/rollup-win32-arm64-msvc@4.52.4': + optional: true + + '@rollup/rollup-win32-ia32-msvc@4.52.4': + optional: true + + '@rollup/rollup-win32-x64-gnu@4.52.4': + optional: true + + '@rollup/rollup-win32-x64-msvc@4.52.4': + optional: true + + '@types/estree@1.0.8': {} + + '@types/resolve@1.20.2': {} + + acorn@8.15.0: {} + + aws4fetch@1.0.20: {} + + buffer-from@1.1.2: {} commander@2.20.3: {} @@ -416,8 +509,6 @@ snapshots: deepmerge@4.3.1: {} - escape-string-regexp@1.0.5: {} - estree-walker@0.6.1: {} estree-walker@2.0.2: {} @@ -431,10 +522,6 @@ snapshots: function-bind@1.1.2: {} - has-flag@3.0.0: {} - - has-flag@4.0.0: {} - hasown@2.0.2: dependencies: function-bind: 1.1.2 @@ -449,20 +536,12 @@ snapshots: dependencies: '@types/estree': 1.0.8 - jest-worker@26.6.2: - dependencies: - '@types/node': 18.8.0 - merge-stream: 2.0.0 - supports-color: 7.2.0 - js-cleanup@1.2.0: dependencies: magic-string: 0.25.9 perf-regexes: 1.0.1 skip-regex: 1.0.2 - js-tokens@4.0.0: {} - magic-string@0.25.9: dependencies: sourcemap-codec: 1.4.8 @@ -471,8 +550,6 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 - merge-stream@2.0.0: {} - path-parse@1.0.7: {} perf-regexes@1.0.1: {} @@ -493,36 +570,54 @@ snapshots: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 - rollup-plugin-cleanup@3.2.1(rollup@2.79.2): + rollup-plugin-cleanup@3.2.1(rollup@4.52.4): dependencies: js-cleanup: 1.2.0 - rollup: 2.79.2 + rollup: 4.52.4 rollup-pluginutils: 2.8.2 - rollup-plugin-terser@7.0.2(rollup@2.79.2): - dependencies: - '@babel/code-frame': 7.18.6 - jest-worker: 26.6.2 - rollup: 2.79.2 - serialize-javascript: 4.0.0 - terser: 5.15.0 - rollup-pluginutils@2.8.2: dependencies: estree-walker: 0.6.1 - rollup@2.79.2: + rollup@4.52.4: + dependencies: + '@types/estree': 1.0.8 optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.52.4 + '@rollup/rollup-android-arm64': 4.52.4 + '@rollup/rollup-darwin-arm64': 4.52.4 + '@rollup/rollup-darwin-x64': 4.52.4 + '@rollup/rollup-freebsd-arm64': 4.52.4 + '@rollup/rollup-freebsd-x64': 4.52.4 + '@rollup/rollup-linux-arm-gnueabihf': 4.52.4 + '@rollup/rollup-linux-arm-musleabihf': 4.52.4 + '@rollup/rollup-linux-arm64-gnu': 4.52.4 + '@rollup/rollup-linux-arm64-musl': 4.52.4 + '@rollup/rollup-linux-loong64-gnu': 4.52.4 + '@rollup/rollup-linux-ppc64-gnu': 4.52.4 + '@rollup/rollup-linux-riscv64-gnu': 4.52.4 + '@rollup/rollup-linux-riscv64-musl': 4.52.4 + '@rollup/rollup-linux-s390x-gnu': 4.52.4 + '@rollup/rollup-linux-x64-gnu': 4.52.4 + '@rollup/rollup-linux-x64-musl': 4.52.4 + '@rollup/rollup-openharmony-arm64': 4.52.4 + '@rollup/rollup-win32-arm64-msvc': 4.52.4 + '@rollup/rollup-win32-ia32-msvc': 4.52.4 + '@rollup/rollup-win32-x64-gnu': 4.52.4 + '@rollup/rollup-win32-x64-msvc': 4.52.4 fsevents: 2.3.2 safe-buffer@5.2.1: {} - serialize-javascript@4.0.0: + serialize-javascript@6.0.2: dependencies: randombytes: 2.1.0 skip-regex@1.0.2: {} + smob@1.5.0: {} + source-map-support@0.5.21: dependencies: buffer-from: 1.1.2 @@ -532,19 +627,11 @@ snapshots: sourcemap-codec@1.4.8: {} - supports-color@5.5.0: - dependencies: - has-flag: 3.0.0 - - supports-color@7.2.0: - dependencies: - has-flag: 4.0.0 - supports-preserve-symlinks-flag@1.0.0: {} - terser@5.15.0: + terser@5.44.0: dependencies: - '@jridgewell/source-map': 0.3.2 - acorn: 8.8.0 + '@jridgewell/source-map': 0.3.11 + acorn: 8.15.0 commander: 2.20.3 source-map-support: 0.5.21 diff --git a/rollup.config.js b/rollup.config.js deleted file mode 100644 index 92cab58..0000000 --- a/rollup.config.js +++ /dev/null @@ -1,10 +0,0 @@ -import pkg from "./package.json"; -import cleanup from "rollup-plugin-cleanup"; -import { terser } from "rollup-plugin-terser"; - -export default { - input: "src/main.js", - output: [{ format: "esm", file: pkg.module }], - plugins: [cleanup(), terser()], - external: ["aws4fetch"] -}; diff --git a/rollup.config.mjs b/rollup.config.mjs new file mode 100644 index 0000000..c4c15b1 --- /dev/null +++ b/rollup.config.mjs @@ -0,0 +1,14 @@ +import { createRequire } from "node:module"; +import cleanup from "rollup-plugin-cleanup"; +import terser from "@rollup/plugin-terser"; + +const require = createRequire(import.meta.url); +const pkg = require("./package.json"); + +export default { + input: "src/main.js", + output: [{ format: "esm", file: pkg.module }], + plugins: [cleanup(), terser({ module: true, maxWorkers: 1 })], + external: ["aws4fetch"] +}; +