From ba225effcb3587044978b977c1d66eacc20ebc61 Mon Sep 17 00:00:00 2001 From: dave Date: Sat, 3 Feb 2024 13:58:29 +0300 Subject: [PATCH 1/7] Refactor getEventCoordinates method to handle PointerEvent --- src/index.ts | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/src/index.ts b/src/index.ts index b486f07..b72b398 100644 --- a/src/index.ts +++ b/src/index.ts @@ -72,18 +72,28 @@ export class CanvasTextGrabber { this.canvas.width = window.innerWidth; } - private getEventCoordinates(event: TouchEvent | MouseEvent) { + private getEventCoordinates(event: TouchEvent | MouseEvent | PointerEvent) { if (!this.canvas) return { offsetX: 0, offsetY: 0 }; - let offsetX, offsetY; - if ('touches' in event) { - // Handle touch events + + let offsetX = 0, offsetY = 0; + + if (event instanceof TouchEvent) { offsetX = event.touches[0].clientX - this.canvas.getBoundingClientRect().left; offsetY = event.touches[0].clientY - this.canvas.getBoundingClientRect().top; - } else { - // Handle mouse events + } else if (event instanceof PointerEvent) { + + if (event.pointerType === 'mouse') { + offsetX = event.offsetX; + offsetY = event.offsetY; + } else if (event.pointerType === 'touch') { + offsetX = event.clientX - this.canvas.getBoundingClientRect().left; + offsetY = event.clientY - this.canvas.getBoundingClientRect().top; + } + } else if (event instanceof MouseEvent) { offsetX = event.offsetX; offsetY = event.offsetY; } + return { offsetX, offsetY }; } From 350a99e7fd221b38444452b88bfac5487315019a Mon Sep 17 00:00:00 2001 From: dave Date: Sat, 3 Feb 2024 17:01:22 +0300 Subject: [PATCH 2/7] Add bun.lockb, bunfig.toml, happydom.ts, and update tsconfig.json and package.json --- bun.lockb | Bin 0 -> 71162 bytes bunfig.toml | 2 + happydom.ts | 3 + package-lock.json | 2346 --------------------------------------------- package.json | 46 +- tsconfig.json | 20 +- 6 files changed, 40 insertions(+), 2377 deletions(-) create mode 100755 bun.lockb create mode 100644 bunfig.toml create mode 100644 happydom.ts delete mode 100644 package-lock.json diff --git a/bun.lockb b/bun.lockb new file mode 100755 index 0000000000000000000000000000000000000000..af46539cbf579e9f7637b8cf772de1bf83abfa3b GIT binary patch literal 71162 zcmeFa1z1*1+cpY#ONfB9fJljiG^nJ2SfDg0E!`ao2#5+&0#ec-C?P2&DiWd~E!{04 zsepk2>=|Hv-}=AfeIN04$G`XXI*!G8 m>sr^$nl)?g+vj0n;&pLyV|Yq#r{KzSc1PXL6v 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" - } - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.12.tgz", - "integrity": "sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.12.tgz", - "integrity": "sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.12.tgz", - "integrity": "sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.12.tgz", - "integrity": "sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.12.tgz", - "integrity": "sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.12.tgz", - "integrity": "sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.12.tgz", - "integrity": "sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.12.tgz", - "integrity": "sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.12.tgz", - "integrity": "sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.12.tgz", - "integrity": "sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.12.tgz", - "integrity": "sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.12.tgz", - "integrity": "sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.12.tgz", - "integrity": "sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.12.tgz", - "integrity": "sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.12.tgz", - "integrity": "sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.12.tgz", - "integrity": "sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.12.tgz", - "integrity": "sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.12.tgz", - "integrity": "sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.12.tgz", - "integrity": "sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.12.tgz", - "integrity": "sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.12.tgz", - "integrity": "sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.12.tgz", - "integrity": "sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.12.tgz", - "integrity": "sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", - "dev": true, - "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.6.tgz", - "integrity": "sha512-MVNXSSYN6QXOulbHpLMKYi60ppyO13W9my1qogeiAqtjb2yR4LSmfU2+POvDkLzhjYLXz9Rf9+9a3zFHW1Lecg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-android-arm64": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.9.6.tgz", - "integrity": "sha512-T14aNLpqJ5wzKNf5jEDpv5zgyIqcpn1MlwCrUXLrwoADr2RkWA0vOWP4XxbO9aiO3dvMCQICZdKeDrFl7UMClw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.9.6.tgz", - "integrity": "sha512-CqNNAyhRkTbo8VVZ5R85X73H3R5NX9ONnKbXuHisGWC0qRbTTxnF1U4V9NafzJbgGM0sHZpdO83pLPzq8uOZFw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.9.6.tgz", - "integrity": "sha512-zRDtdJuRvA1dc9Mp6BWYqAsU5oeLixdfUvkTHuiYOHwqYuQ4YgSmi6+/lPvSsqc/I0Omw3DdICx4Tfacdzmhog==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.9.6.tgz", - "integrity": "sha512-oNk8YXDDnNyG4qlNb6is1ojTOGL/tRhbbKeE/YuccItzerEZT68Z9gHrY3ROh7axDc974+zYAPxK5SH0j/G+QQ==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.9.6.tgz", - "integrity": "sha512-Z3O60yxPtuCYobrtzjo0wlmvDdx2qZfeAWTyfOjEDqd08kthDKexLpV97KfAeUXPosENKd8uyJMRDfFMxcYkDQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.9.6.tgz", - "integrity": "sha512-gpiG0qQJNdYEVad+1iAsGAbgAnZ8j07FapmnIAQgODKcOTjLEWM9sRb+MbQyVsYCnA0Im6M6QIq6ax7liws6eQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.9.6.tgz", - "integrity": "sha512-+uCOcvVmFUYvVDr27aiyun9WgZk0tXe7ThuzoUTAukZJOwS5MrGbmSlNOhx1j80GdpqbOty05XqSl5w4dQvcOA==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.9.6.tgz", - "integrity": "sha512-HUNqM32dGzfBKuaDUBqFB7tP6VMN74eLZ33Q9Y1TBqRDn+qDonkAUyKWwF9BR9unV7QUzffLnz9GrnKvMqC/fw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.9.6.tgz", - "integrity": "sha512-ch7M+9Tr5R4FK40FHQk8VnML0Szi2KRujUgHXd/HjuH9ifH72GUmw6lStZBo3c3GB82vHa0ZoUfjfcM7JiiMrQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.9.6.tgz", - "integrity": "sha512-VD6qnR99dhmTQ1mJhIzXsRcTBvTjbfbGGwKAHcu+52cVl15AC/kplkhxzW/uT0Xl62Y/meBKDZvoJSJN+vTeGA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.9.6.tgz", - "integrity": "sha512-J9AFDq/xiRI58eR2NIDfyVmTYGyIZmRcvcAoJ48oDld/NTR8wyiPUu2X/v1navJ+N/FGg68LEbX3Ejd6l8B7MQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.9.6.tgz", - "integrity": "sha512-jqzNLhNDvIZOrt69Ce4UjGRpXJBzhUBzawMwnaDAwyHriki3XollsewxWzOzz+4yOFDkuJHtTsZFwMxhYJWmLQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@swc/core": { - "version": "1.3.106", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.106.tgz", - "integrity": "sha512-++QPSPkFq2qELYVScxNHJC42hKQChjiTWS2P0QQ5JWT4NHb9lmNSfrc1ylFIyImwRnxsW2MTBALLYLf95EFAsg==", - "devOptional": true, - "hasInstallScript": true, - "dependencies": { - "@swc/counter": "^0.1.1", - "@swc/types": "^0.1.5" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/swc" - }, - "optionalDependencies": { - "@swc/core-darwin-arm64": "1.3.106", - "@swc/core-darwin-x64": "1.3.106", - "@swc/core-linux-arm-gnueabihf": "1.3.106", - "@swc/core-linux-arm64-gnu": "1.3.106", - "@swc/core-linux-arm64-musl": "1.3.106", - "@swc/core-linux-x64-gnu": "1.3.106", - "@swc/core-linux-x64-musl": "1.3.106", - "@swc/core-win32-arm64-msvc": "1.3.106", - "@swc/core-win32-ia32-msvc": "1.3.106", - "@swc/core-win32-x64-msvc": "1.3.106" - }, - "peerDependencies": { - "@swc/helpers": "^0.5.0" - }, - "peerDependenciesMeta": { - "@swc/helpers": { - "optional": true - } - } - }, - "node_modules/@swc/core-darwin-arm64": { - "version": "1.3.106", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.106.tgz", - "integrity": "sha512-XYcbViNyHnnm7RWOAO1YipMmthM7m2aXF32b0y+JMLYFBEyFpjVX9btLkzeL7wRx/5B3I35yJNhE+xyx0Q1Gkw==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-darwin-x64": { - "version": "1.3.106", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.106.tgz", - "integrity": "sha512-YKDPhUdfuwhmOUS9+CaIwl/0Tp+f1b73BH2EIESuxSNsogZf18a8HQ8O0fQEwdiwmA5LEqw47cj+kfOWV/0+kw==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-arm-gnueabihf": { - "version": "1.3.106", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.106.tgz", - "integrity": "sha512-bHxxJXogvFfocLL5inZxxtx/x/WgKozigp80Vbx0viac1fPDJrqKBw2X4MzpMiuTRAGVQ03jJI6pDwbSBf+yDw==", - "cpu": [ - "arm" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-arm64-gnu": { - "version": "1.3.106", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.106.tgz", - "integrity": "sha512-c7jue++CHLgtpeaakEukoCLT9eNrImizbleE9Y7Is8CHqLq/7DG4s+7ma9DFKXIzW2MpTg9byIEQfpqSphVW6A==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-arm64-musl": { - "version": "1.3.106", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.106.tgz", - "integrity": "sha512-51EaC3Q8qAhLtWVnAVqoYX/gk3tK31cCBzUpwCcmhianhEBM2/WtKRAS4MqPhE8VVZuN3WjO2c2JaF2mX0yuoA==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-x64-gnu": { - "version": "1.3.106", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.106.tgz", - "integrity": "sha512-tOUi8BB6jAeCXgx7ESLNnX7nrbMVKQ/XajK77v7Ad4SXf9HYArnimBJpXUUyVFJTXLSv4e6c7s6XHHqXb5Lwcg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-x64-musl": { - "version": "1.3.106", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.106.tgz", - "integrity": "sha512-binLw4Lbd83NPy4/m/teH2nbaifxveSD+sKDvpxywRbvYW2I0w/iCBpUBcbnl16TQF4TPOGpq5YwG9lVxPVw5g==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-arm64-msvc": { - "version": "1.3.106", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.106.tgz", - "integrity": "sha512-n4ttBWr8tM7DPzwcEOIBTyTMHZTzCmbic/HTtxEsPyMAf/Daen+yrTKzjPP6k2usfSrjkxA780RSJJxI1N8r2w==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-ia32-msvc": { - "version": "1.3.106", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.106.tgz", - "integrity": "sha512-GhDNIwxE5FhkujESI6h/4ysT3wxwmrzTUlZYaR8rRui6a6SdX9feIPUHPEE5o5hpyp+xqlmvRxKkRxOnwsq8iA==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-x64-msvc": { - "version": "1.3.106", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.106.tgz", - "integrity": "sha512-2M6yWChuMS1+/MPo3Dor0SOMkvmiugonWlzsZBAu/oZboH2xKrHSRv7brsBujb2Oe47r+NsbV+vq9tnnP9Vl1Q==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/counter": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.2.tgz", - "integrity": "sha512-9F4ys4C74eSTEUNndnER3VJ15oru2NumfQxS8geE+f3eB5xvfxpWyqE5XlVnxb/R14uoXi6SLbBwwiDSkv+XEw==", - "devOptional": true - }, - "node_modules/@swc/types": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.5.tgz", - "integrity": "sha512-myfUej5naTBWnqOCc/MdVOLVjXUXtIA+NpDrDBKJtLLg2shUjBu3cZmB/85RyitKc55+lUUyl7oRfLOvkr2hsw==", - "devOptional": true - }, - "node_modules/@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==" - }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==" - }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==" - }, - "node_modules/@tsconfig/node16": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==" - }, - "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", - "dev": true - }, - "node_modules/@types/node": { - "version": "20.11.9", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.9.tgz", - "integrity": "sha512-CQXNuMoS/VcoAMISe5pm4JnEd1Br5jildbQEToEMQvutmv+EaQr90ry9raiudgpyDuqFiV9e4rnjSfLNq12M5w==", - "dependencies": { - "undici-types": "~5.26.4" - } - }, - "node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-walk": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", - "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", - "dev": true - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" - }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/bundle-require": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/bundle-require/-/bundle-require-4.0.2.tgz", - "integrity": "sha512-jwzPOChofl67PSTW2SGubV9HBQAhhR2i6nskiOThauo9dzwDUgOWQScFVaJkjEfYX+UXiD+LEx8EblQMc2wIag==", - "dev": true, - "dependencies": { - "load-tsconfig": "^0.2.3" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "peerDependencies": { - "esbuild": ">=0.17" - } - }, - "node_modules/cac": { - "version": "6.7.14", - "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", - "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true - }, - "node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true - }, - "node_modules/esbuild": { - "version": "0.19.12", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.12.tgz", - "integrity": "sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.19.12", - "@esbuild/android-arm": "0.19.12", - "@esbuild/android-arm64": "0.19.12", - "@esbuild/android-x64": "0.19.12", - "@esbuild/darwin-arm64": "0.19.12", - "@esbuild/darwin-x64": "0.19.12", - "@esbuild/freebsd-arm64": "0.19.12", - "@esbuild/freebsd-x64": "0.19.12", - "@esbuild/linux-arm": "0.19.12", - "@esbuild/linux-arm64": "0.19.12", - "@esbuild/linux-ia32": "0.19.12", - "@esbuild/linux-loong64": "0.19.12", - "@esbuild/linux-mips64el": "0.19.12", - "@esbuild/linux-ppc64": "0.19.12", - "@esbuild/linux-riscv64": "0.19.12", - "@esbuild/linux-s390x": "0.19.12", - "@esbuild/linux-x64": "0.19.12", - "@esbuild/netbsd-x64": "0.19.12", - "@esbuild/openbsd-x64": "0.19.12", - "@esbuild/sunos-x64": "0.19.12", - "@esbuild/win32-arm64": "0.19.12", - "@esbuild/win32-ia32": "0.19.12", - "@esbuild/win32-x64": "0.19.12" - } - }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fastq": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.0.tgz", - "integrity": "sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/foreground-child/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/jackspeak": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", - "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", - "dev": true, - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "node_modules/joycon": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/joycon/-/joycon-3.1.1.tgz", - "integrity": "sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/lilconfig": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.0.0.tgz", - "integrity": "sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==", - "dev": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "node_modules/load-tsconfig": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/load-tsconfig/-/load-tsconfig-0.2.5.tgz", - "integrity": "sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/lodash.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", - "dev": true - }, - "node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", - "dev": true, - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/mz": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", - "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", - "dev": true, - "dependencies": { - "any-promise": "^1.0.0", - "object-assign": "^4.0.1", - "thenify-all": "^1.0.0" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-scurry": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", - "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", - "dev": true, - "dependencies": { - "lru-cache": "^9.1.1 || ^10.0.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pirates": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", - "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-load-config": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", - "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "lilconfig": "^3.0.0", - "yaml": "^2.3.4" - }, - "engines": { - "node": ">= 14" - }, - "peerDependencies": { - "postcss": ">=8.0.9", - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "postcss": { - "optional": true - }, - "ts-node": { - "optional": true - } - } - }, - "node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rollup": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.6.tgz", - "integrity": "sha512-05lzkCS2uASX0CiLFybYfVkwNbKZG5NFQ6Go0VWyogFTXXbR039UVsegViTntkk4OglHBdF54ccApXRRuXRbsg==", - "dev": true, - "dependencies": { - "@types/estree": "1.0.5" - }, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.9.6", - "@rollup/rollup-android-arm64": "4.9.6", - "@rollup/rollup-darwin-arm64": "4.9.6", - "@rollup/rollup-darwin-x64": "4.9.6", - "@rollup/rollup-linux-arm-gnueabihf": "4.9.6", - "@rollup/rollup-linux-arm64-gnu": "4.9.6", - "@rollup/rollup-linux-arm64-musl": "4.9.6", - "@rollup/rollup-linux-riscv64-gnu": "4.9.6", - "@rollup/rollup-linux-x64-gnu": "4.9.6", - "@rollup/rollup-linux-x64-musl": "4.9.6", - "@rollup/rollup-win32-arm64-msvc": "4.9.6", - "@rollup/rollup-win32-ia32-msvc": "4.9.6", - "@rollup/rollup-win32-x64-msvc": "4.9.6", - "fsevents": "~2.3.2" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/source-map": { - "version": "0.8.0-beta.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz", - "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==", - "dev": true, - "dependencies": { - "whatwg-url": "^7.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dev": true, - "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/string-width-cjs": { - "name": "string-width", - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/string-width-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/strip-ansi-cjs": { - "name": "strip-ansi", - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/sucrase": { - "version": "3.35.0", - "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", - "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.2", - "commander": "^4.0.0", - "glob": "^10.3.10", - "lines-and-columns": "^1.1.6", - "mz": "^2.7.0", - "pirates": "^4.0.1", - "ts-interface-checker": "^0.1.9" - }, - "bin": { - "sucrase": "bin/sucrase", - "sucrase-node": "bin/sucrase-node" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/thenify": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", - "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", - "dev": true, - "dependencies": { - "any-promise": "^1.0.0" - } - }, - "node_modules/thenify-all": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", - "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", - "dev": true, - "dependencies": { - "thenify": ">= 3.1.0 < 4" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/tr46": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", - "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true, - "bin": { - "tree-kill": "cli.js" - } - }, - "node_modules/ts-interface-checker": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", - "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", - "dev": true - }, - "node_modules/ts-node": { - "version": "10.9.2", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", - "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", - "dependencies": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" - }, - "peerDependencies": { - "@swc/core": ">=1.2.50", - "@swc/wasm": ">=1.2.50", - "@types/node": "*", - "typescript": ">=2.7" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "@swc/wasm": { - "optional": true - } - } - }, - "node_modules/tsup": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/tsup/-/tsup-8.0.1.tgz", - "integrity": "sha512-hvW7gUSG96j53ZTSlT4j/KL0q1Q2l6TqGBFc6/mu/L46IoNWqLLUzLRLP1R8Q7xrJTmkDxxDoojV5uCVs1sVOg==", - "dev": true, - "dependencies": { - "bundle-require": "^4.0.0", - "cac": "^6.7.12", - "chokidar": "^3.5.1", - "debug": "^4.3.1", - "esbuild": "^0.19.2", - "execa": "^5.0.0", - "globby": "^11.0.3", - "joycon": "^3.0.1", - "postcss-load-config": "^4.0.1", - "resolve-from": "^5.0.0", - "rollup": "^4.0.2", - "source-map": "0.8.0-beta.0", - "sucrase": "^3.20.3", - "tree-kill": "^1.2.2" - }, - "bin": { - "tsup": "dist/cli-default.js", - "tsup-node": "dist/cli-node.js" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@microsoft/api-extractor": "^7.36.0", - "@swc/core": "^1", - "postcss": "^8.4.12", - "typescript": ">=4.5.0" - }, - "peerDependenciesMeta": { - "@microsoft/api-extractor": { - "optional": true - }, - "@swc/core": { - "optional": true - }, - "postcss": { - "optional": true - }, - "typescript": { - "optional": true - } - } - }, - "node_modules/typescript": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", - "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/undici-types": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" - }, - "node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==" - }, - "node_modules/webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", - "dev": true - }, - "node_modules/whatwg-url": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", - "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", - "dev": true, - "dependencies": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs": { - "name": "wrap-ansi", - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/wrap-ansi-cjs/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/yaml": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz", - "integrity": "sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==", - "dev": true, - "engines": { - "node": ">= 14" - } - }, - "node_modules/yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "engines": { - "node": ">=6" - } - } - } -} diff --git a/package.json b/package.json index c071c2a..4877c69 100644 --- a/package.json +++ b/package.json @@ -1,34 +1,38 @@ { "name": "canvas-text-grabber", "version": "0.0.5", - "description": "an interactive sketch tool that allows users to draw a selection area on a web page and capture text within that area.", - "main": "./dist/index.js", - "module": "./dist/index.mjs", - "types": "./dist/index.d.ts", - "files": [ - "dist" - ], - "scripts": { - "build": "tsup" - }, + "author": "Dawit Mekonnen", "repository": { "type": "git", "url": "git+https://github.com/Dave-lab12/canvas-text-grabber.git" }, + "main": "dist/index.js", + "types": "dist/index.d.ts", + "devDependencies": { + "@happy-dom/global-registrator": "^13.3.8", + "@swc/core": "^1.3.106", + "@types/bun": "^1.0.4", + "happy-dom": "^13.3.8", + "ts-node": "^10.9.2", + "tsup": "^8.0.1", + "typescript": "^5.3.3" + }, + "bugs": { + "url": "https://github.com/Dave-lab12/canvas-text-grabber/issues" + }, + "description": "an interactive sketch tool that allows users to draw a selection area on a web page and capture text within that area.", + "files": [ + "dist" + ], + "homepage": "https://github.com/Dave-lab12/canvas-text-grabber#readme", "keywords": [ "canvas" ], - "author": "Dawit Mekonnen", "license": "ISC", - "bugs": { - "url": "https://github.com/Dave-lab12/canvas-text-grabber/issues" + "scripts": { + "build": "tsup", + "test": "bun test" }, - "homepage": "https://github.com/Dave-lab12/canvas-text-grabber#readme", - "devDependencies": { - "@swc/core": "^1.3.106", - "@types/node": "^20.11.9", - "tsup": "^8.0.1", - "typescript": "^5.3.3", - "ts-node": "^10.9.2" - } + "type": "module", + "dependencies": {} } diff --git a/tsconfig.json b/tsconfig.json index 13c3053..db6c270 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,14 +1,14 @@ { "compilerOptions": { - "target": "es5", - "module": "commonjs", - "lib": ["es6", "dom"], - "allowJs": true, - "outDir": "build", - "rootDir": "src", + "noEmitOnError": true, "strict": true, - "noImplicitAny": true, - "esModuleInterop": true, - "resolveJsonModule": true - } + "sourceMap": true, + "target": "ESNext", + "module": "NodeNext", + "moduleResolution": "nodenext", + "declaration": true, + "outDir": "dist" + }, + "include": ["src/**/*.*"], + "exclude": ["**/*.test.ts"] } From e29db3207d13049616723212e5e0ab7a00b69093 Mon Sep 17 00:00:00 2001 From: dave Date: Sat, 3 Feb 2024 17:01:35 +0300 Subject: [PATCH 3/7] Add smoke test for CanvasTextGrabber class --- src/__test__/index.test.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 src/__test__/index.test.ts diff --git a/src/__test__/index.test.ts b/src/__test__/index.test.ts new file mode 100644 index 0000000..a3a3430 --- /dev/null +++ b/src/__test__/index.test.ts @@ -0,0 +1,15 @@ +import { expect, test, describe, beforeEach } from "bun:test"; +import { CanvasTextGrabber } from '../index'; + +describe('CanvasTextGrabber', () => { + let instance: CanvasTextGrabber; + + beforeEach(() => { + instance = new CanvasTextGrabber(); + }); + + test('should be defined', () => { + expect(instance).toBeDefined(); + }); + +}); \ No newline at end of file From 7d2bad9f6ba17bd0039814373907f45a6fef2ccd Mon Sep 17 00:00:00 2001 From: dave Date: Sat, 3 Feb 2024 17:01:40 +0300 Subject: [PATCH 4/7] Add build and test workflow --- .github/workflows/build.yml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..713cd82 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,15 @@ +name: build and test + +on: [push, pull_request] + +jobs: + my-job: + name: my-job + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: oven-sh/setup-bun@v1 + + - run: bun install + - run: bun run build + - run: bun test From 6c5a5e8b3c794e32d47a5bb564f71337d3827b6c Mon Sep 17 00:00:00 2001 From: dave Date: Sat, 3 Feb 2024 17:03:19 +0300 Subject: [PATCH 5/7] Update job name in build.yml --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 713cd82..243aee1 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -4,7 +4,7 @@ on: [push, pull_request] jobs: my-job: - name: my-job + name: Build and test runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 From f0739fbead8d159d0eb97d63d418116b0a2d7082 Mon Sep 17 00:00:00 2001 From: dave Date: Sat, 3 Feb 2024 17:08:58 +0300 Subject: [PATCH 6/7] Update GitHub workflows This commit updates the GitHub workflows by deleting the "build.yml" file and adding two new files: "ci.yml" and "release.yml". The "ci.yml" file sets up continuous integration for the main branch, while the "release.yml" file triggers a release when a tag starting with "v" is pushed. --- .github/workflows/build.yml | 15 -------------- .github/workflows/ci.yml | 37 +++++++++++++++++++++++++++++++++++ .github/workflows/release.yml | 22 +++++++++++++++++++++ 3 files changed, 59 insertions(+), 15 deletions(-) delete mode 100644 .github/workflows/build.yml create mode 100644 .github/workflows/ci.yml create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml deleted file mode 100644 index 243aee1..0000000 --- a/.github/workflows/build.yml +++ /dev/null @@ -1,15 +0,0 @@ -name: build and test - -on: [push, pull_request] - -jobs: - my-job: - name: Build and test - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - uses: oven-sh/setup-bun@v1 - - - run: bun install - - run: bun run build - - run: bun test diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..9f9a0e1 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,37 @@ +name: CI + +on: + push: + branches: + - main + + pull_request: + branches: + - main + +jobs: + test: + runs-on: ${{ matrix.os }} + + strategy: + matrix: + os: [ubuntu-latest] + fail-fast: false + + steps: + - id: checkout + name: Checkout + uses: actions/checkout@v3 + - id: setup-bun + name: Setup Bun + uses: oven-sh/setup-bun@v1 + with: + bun-version: latest + - id: install-deps + name: Install dependencies + run: | + bun install + - id: test + name: Run test + run: | + bun test diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..5352f9d --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,22 @@ +name: Release + +on: + push: + tags: + - "v*" + +jobs: + release: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - uses: actions/setup-node@v3 + with: + node-version: 18.x + + - run: npx changelogithub + env: + GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From dd34b83af6547067ff738411075ecad418e70a30 Mon Sep 17 00:00:00 2001 From: dave Date: Sun, 4 Feb 2024 15:15:55 +0300 Subject: [PATCH 7/7] Remove release workflow --- .github/workflows/release.yml | 22 ---------------------- 1 file changed, 22 deletions(-) delete mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml deleted file mode 100644 index 5352f9d..0000000 --- a/.github/workflows/release.yml +++ /dev/null @@ -1,22 +0,0 @@ -name: Release - -on: - push: - tags: - - "v*" - -jobs: - release: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - - uses: actions/setup-node@v3 - with: - node-version: 18.x - - - run: npx changelogithub - env: - GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}