diff --git a/lib/server/imageGenerator.d.ts b/lib/server/imageGenerator.d.ts index 75b6366..9e4b599 100644 --- a/lib/server/imageGenerator.d.ts +++ b/lib/server/imageGenerator.d.ts @@ -9,7 +9,6 @@ export type ImageGeneratorResult = { export declare class ImageGenerator { private args; private satori; - private sharp; private cache; private outDir; constructor(args: { diff --git a/lib/server/imageGenerator.js b/lib/server/imageGenerator.js index aee429c..b79f93e 100644 --- a/lib/server/imageGenerator.js +++ b/lib/server/imageGenerator.js @@ -9,7 +9,6 @@ const path_1 = tslib_1.__importDefault(require("path")); class ImageGenerator { args; satori; - sharp; cache = {}; outDir = ''; constructor(args) { @@ -18,7 +17,6 @@ class ImageGenerator { } init = async () => { this.satori = await import('satori').then((mod) => mod.default); - this.sharp = await import('sharp').then((mod) => mod.default); if (!fs.existsSync(this.outDir)) await fsp.mkdir(this.outDir, { recursive: true }); }; @@ -30,7 +28,9 @@ class ImageGenerator { const absolutePath = path_1.default.join(this.outDir, imageName); const relativePath = path_1.default.join('/', this.args.dir, absolutePath.slice(this.outDir.length)); const svg = await this.satori(element, options); - await this.sharp(Buffer.from(svg)).png().toFile(absolutePath); + const { Resvg } = await import('@resvg/resvg-js').then(module => module); + const pngBuffer = new Resvg(svg).render().asPng(); + await fsp.writeFile(absolutePath, pngBuffer); const url = new URL(this.args.websiteUrl); url.pathname = relativePath; this.cache[hash] = { diff --git a/package.json b/package.json index 05a5f67..51abcf0 100644 --- a/package.json +++ b/package.json @@ -21,11 +21,11 @@ "@docusaurus/utils": "^2.4.1", "@docusaurus/utils-common": "^2.4.1", "@docusaurus/utils-validation": "^2.4.1", + "@resvg/resvg-js": "^2.6.0", "lodash": "^4.17.21", "node-html-parser": "^6.1.5", "object-hash": "^3.0.0", - "satori": "^0.10.13", - "sharp": "^0.33.3" + "satori": "^0.10.13" }, "engines": { "node": ">=16.14" diff --git a/src/server/imageGenerator.ts b/src/server/imageGenerator.ts index f852e4e..9c6dd7b 100644 --- a/src/server/imageGenerator.ts +++ b/src/server/imageGenerator.ts @@ -6,7 +6,7 @@ import React from 'react' import type Satori from 'satori' import { type SatoriOptions } from 'satori' -import type Sharp from 'sharp' + export type ImageGeneratorOptions = SatoriOptions export type ImageGeneratorResult = { @@ -17,7 +17,6 @@ export type ImageGeneratorResult = { export class ImageGenerator { private satori: typeof Satori - private sharp: typeof Sharp private cache: Record = {} private outDir: string = '' @@ -34,7 +33,7 @@ export class ImageGenerator { public init = async () => { this.satori = await import('satori').then((mod) => mod.default) - this.sharp = await import('sharp').then((mod) => mod.default) + if (!fs.existsSync(this.outDir)) await fsp.mkdir(this.outDir, { recursive: true }) @@ -56,7 +55,10 @@ export class ImageGenerator { ) const svg = await this.satori(element, options) - await this.sharp(Buffer.from(svg)).png().toFile(absolutePath) + const { Resvg } = await import('@resvg/resvg-js').then(module => module) + + const pngBuffer = new Resvg(svg).render().asPng() + await fsp.writeFile(absolutePath, pngBuffer) const url = new URL(this.args.websiteUrl) url.pathname = relativePath diff --git a/yarn.lock b/yarn.lock index 676dc4c..4be121c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1549,13 +1549,6 @@ url-loader "^4.1.1" webpack "^5.88.1" -"@emnapi/runtime@^1.1.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.1.0.tgz#b07a0c8d3e61795a192fab57ff0c90a77283ada1" - integrity sha512-gCGlE0fJGWalfy+wbFApjhKn6uoSVvopru77IPyxNKkjkaiSx2HxDS7eOYSmo9dcMIhmmIvoxiC3N9TM1c3EaA== - dependencies: - tslib "^2.4.0" - "@hapi/hoek@^9.0.0", "@hapi/hoek@^9.3.0": version "9.3.0" resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" @@ -1568,119 +1561,6 @@ dependencies: "@hapi/hoek" "^9.0.0" -"@img/sharp-darwin-arm64@0.33.3": - version "0.33.3" - resolved "https://registry.yarnpkg.com/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.3.tgz#2bbf676be830c5a9ae7d9294f201c9151535badd" - integrity sha512-FaNiGX1MrOuJ3hxuNzWgsT/mg5OHG/Izh59WW2mk1UwYHUwtfbhk5QNKYZgxf0pLOhx9ctGiGa2OykD71vOnSw== - optionalDependencies: - "@img/sharp-libvips-darwin-arm64" "1.0.2" - -"@img/sharp-darwin-x64@0.33.3": - version "0.33.3" - resolved "https://registry.yarnpkg.com/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.3.tgz#c59567b141eb676e884066f76091a2673120c3f5" - integrity sha512-2QeSl7QDK9ru//YBT4sQkoq7L0EAJZA3rtV+v9p8xTKl4U1bUqTIaCnoC7Ctx2kCjQgwFXDasOtPTCT8eCTXvw== - optionalDependencies: - "@img/sharp-libvips-darwin-x64" "1.0.2" - -"@img/sharp-libvips-darwin-arm64@1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.2.tgz#b69f49fecbe9572378675769b189410721b0fa53" - integrity sha512-tcK/41Rq8IKlSaKRCCAuuY3lDJjQnYIW1UXU1kxcEKrfL8WR7N6+rzNoOxoQRJWTAECuKwgAHnPvqXGN8XfkHA== - -"@img/sharp-libvips-darwin-x64@1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.2.tgz#5665da7360d8e5ed7bee314491c8fe736b6a3c39" - integrity sha512-Ofw+7oaWa0HiiMiKWqqaZbaYV3/UGL2wAPeLuJTx+9cXpCRdvQhCLG0IH8YGwM0yGWGLpsF4Su9vM1o6aer+Fw== - -"@img/sharp-libvips-linux-arm64@1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.2.tgz#8a05e5e9e9b760ff46561e32f19bd5e035fa881c" - integrity sha512-x7kCt3N00ofFmmkkdshwj3vGPCnmiDh7Gwnd4nUwZln2YjqPxV1NlTyZOvoDWdKQVDL911487HOueBvrpflagw== - -"@img/sharp-libvips-linux-arm@1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.2.tgz#0fd33b9bf3221948ce0ca7a5a725942626577a03" - integrity sha512-iLWCvrKgeFoglQxdEwzu1eQV04o8YeYGFXtfWU26Zr2wWT3q3MTzC+QTCO3ZQfWd3doKHT4Pm2kRmLbupT+sZw== - -"@img/sharp-libvips-linux-s390x@1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.2.tgz#4b89150ec91b256ee2cbb5bb125321bf029a4770" - integrity sha512-cmhQ1J4qVhfmS6szYW7RT+gLJq9dH2i4maq+qyXayUSn9/3iY2ZeWpbAgSpSVbV2E1JUL2Gg7pwnYQ1h8rQIog== - -"@img/sharp-libvips-linux-x64@1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.2.tgz#947ccc22ca5bc8c8cfe921b39a5fdaebc5e39f3f" - integrity sha512-E441q4Qdb+7yuyiADVi5J+44x8ctlrqn8XgkDTwr4qPJzWkaHwD489iZ4nGDgcuya4iMN3ULV6NwbhRZJ9Z7SQ== - -"@img/sharp-libvips-linuxmusl-arm64@1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.2.tgz#821d58ce774f0f8bed065b69913a62f65d512f2f" - integrity sha512-3CAkndNpYUrlDqkCM5qhksfE+qSIREVpyoeHIU6jd48SJZViAmznoQQLAv4hVXF7xyUB9zf+G++e2v1ABjCbEQ== - -"@img/sharp-libvips-linuxmusl-x64@1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.2.tgz#4309474bd8b728a61af0b3b4fad0c476b5f3ccbe" - integrity sha512-VI94Q6khIHqHWNOh6LLdm9s2Ry4zdjWJwH56WoiJU7NTeDwyApdZZ8c+SADC8OH98KWNQXnE01UdJ9CSfZvwZw== - -"@img/sharp-linux-arm64@0.33.3": - version "0.33.3" - resolved "https://registry.yarnpkg.com/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.3.tgz#a1f788ddf49ed63509dd37d4b01e571fe7f189d5" - integrity sha512-Zf+sF1jHZJKA6Gor9hoYG2ljr4wo9cY4twaxgFDvlG0Xz9V7sinsPp8pFd1XtlhTzYo0IhDbl3rK7P6MzHpnYA== - optionalDependencies: - "@img/sharp-libvips-linux-arm64" "1.0.2" - -"@img/sharp-linux-arm@0.33.3": - version "0.33.3" - resolved "https://registry.yarnpkg.com/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.3.tgz#661b0671ed7f740fd06821ce15050ba23f1d0523" - integrity sha512-Q7Ee3fFSC9P7vUSqVEF0zccJsZ8GiiCJYGWDdhEjdlOeS9/jdkyJ6sUSPj+bL8VuOYFSbofrW0t/86ceVhx32w== - optionalDependencies: - "@img/sharp-libvips-linux-arm" "1.0.2" - -"@img/sharp-linux-s390x@0.33.3": - version "0.33.3" - resolved "https://registry.yarnpkg.com/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.3.tgz#8719341d3931a297df1a956c02ee003736fa8fac" - integrity sha512-vFk441DKRFepjhTEH20oBlFrHcLjPfI8B0pMIxGm3+yilKyYeHEVvrZhYFdqIseSclIqbQ3SnZMwEMWonY5XFA== - optionalDependencies: - "@img/sharp-libvips-linux-s390x" "1.0.2" - -"@img/sharp-linux-x64@0.33.3": - version "0.33.3" - resolved "https://registry.yarnpkg.com/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.3.tgz#dbd860b4aa16e7e25727c7e05b411132b58d017d" - integrity sha512-Q4I++herIJxJi+qmbySd072oDPRkCg/SClLEIDh5IL9h1zjhqjv82H0Seupd+q2m0yOfD+/fJnjSoDFtKiHu2g== - optionalDependencies: - "@img/sharp-libvips-linux-x64" "1.0.2" - -"@img/sharp-linuxmusl-arm64@0.33.3": - version "0.33.3" - resolved "https://registry.yarnpkg.com/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.3.tgz#25b3fbfe9b6fa32d773422d878d8d84f3f6afceb" - integrity sha512-qnDccehRDXadhM9PM5hLvcPRYqyFCBN31kq+ErBSZtZlsAc1U4Z85xf/RXv1qolkdu+ibw64fUDaRdktxTNP9A== - optionalDependencies: - "@img/sharp-libvips-linuxmusl-arm64" "1.0.2" - -"@img/sharp-linuxmusl-x64@0.33.3": - version "0.33.3" - resolved "https://registry.yarnpkg.com/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.3.tgz#1e533e44abf2e2d427428ed49294ddba4eb11456" - integrity sha512-Jhchim8kHWIU/GZ+9poHMWRcefeaxFIs9EBqf9KtcC14Ojk6qua7ghKiPs0sbeLbLj/2IGBtDcxHyjCdYWkk2w== - optionalDependencies: - "@img/sharp-libvips-linuxmusl-x64" "1.0.2" - -"@img/sharp-wasm32@0.33.3": - version "0.33.3" - resolved "https://registry.yarnpkg.com/@img/sharp-wasm32/-/sharp-wasm32-0.33.3.tgz#340006047a77df0744db84477768bbca6327b4b4" - integrity sha512-68zivsdJ0koE96stdUfM+gmyaK/NcoSZK5dV5CAjES0FUXS9lchYt8LAB5rTbM7nlWtxaU/2GON0HVN6/ZYJAQ== - dependencies: - "@emnapi/runtime" "^1.1.0" - -"@img/sharp-win32-ia32@0.33.3": - version "0.33.3" - resolved "https://registry.yarnpkg.com/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.3.tgz#0fdc49ab094ed0151ec8347afac7917aa5fc5145" - integrity sha512-CyimAduT2whQD8ER4Ux7exKrtfoaUiVr7HG0zZvO0XTFn2idUWljjxv58GxNTkFb8/J9Ub9AqITGkJD6ZginxQ== - -"@img/sharp-win32-x64@0.33.3": - version "0.33.3" - resolved "https://registry.yarnpkg.com/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.3.tgz#a94e1028f180666f97fd51e35c4ad092d7704ef0" - integrity sha512-viT4fUIDKnli3IfOephGnolMzhz5VaTvDRkYqtZxOMIoMQ4MrAziO7pT1nVnOt2FAm7qW5aa+CCc13aEY6Le0g== - "@jest/schemas@^29.6.3": version "29.6.3" resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" @@ -1851,6 +1731,84 @@ resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.25.tgz#f077fdc0b5d0078d30893396ff4827a13f99e817" integrity sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ== +"@resvg/resvg-js-android-arm-eabi@2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@resvg/resvg-js-android-arm-eabi/-/resvg-js-android-arm-eabi-2.6.0.tgz#fed7723ed5c5f7490762e025ad704bcbceee37b7" + integrity sha512-lJnZ/2P5aMocrFMW7HWhVne5gH82I8xH6zsfH75MYr4+/JOaVcGCTEQ06XFohGMdYRP3v05SSPLPvTM/RHjxfA== + +"@resvg/resvg-js-android-arm64@2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@resvg/resvg-js-android-arm64/-/resvg-js-android-arm64-2.6.0.tgz#e0531a220ec8954e41039b2483cc3706d30d3635" + integrity sha512-N527f529bjMwYWShZYfBD60dXA4Fux+D695QsHQ93BDYZSHUoOh1CUGUyICevnTxs7VgEl98XpArmUWBZQVMfQ== + +"@resvg/resvg-js-darwin-arm64@2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@resvg/resvg-js-darwin-arm64/-/resvg-js-darwin-arm64-2.6.0.tgz#38f609cd2bd71ce6a065df7a8b8144479b156969" + integrity sha512-MabUKLVayEwlPo0mIqAmMt+qESN8LltCvv5+GLgVga1avpUrkxj/fkU1TKm8kQegutUjbP/B0QuMuUr0uhF8ew== + +"@resvg/resvg-js-darwin-x64@2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@resvg/resvg-js-darwin-x64/-/resvg-js-darwin-x64-2.6.0.tgz#5c3f69d0cd68980e7e5cfcabf0db90e85d289559" + integrity sha512-zrFetdnSw/suXjmyxSjfDV7i61hahv6DDG6kM7BYN2yJ3Es5+BZtqYZTcIWogPJedYKmzN1YTMWGd/3f0ubFiA== + +"@resvg/resvg-js-linux-arm-gnueabihf@2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@resvg/resvg-js-linux-arm-gnueabihf/-/resvg-js-linux-arm-gnueabihf-2.6.0.tgz#6bcae7d4101e7fea2be0db167eda832cab63e27f" + integrity sha512-sH4gxXt7v7dGwjGyzLwn7SFGvwZG6DQqLaZ11MmzbCwd9Zosy1TnmrMJfn6TJ7RHezmQMgBPi18bl55FZ1AT4A== + +"@resvg/resvg-js-linux-arm64-gnu@2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@resvg/resvg-js-linux-arm64-gnu/-/resvg-js-linux-arm64-gnu-2.6.0.tgz#fb71ea6b9a4b30412fa096fdbf9e8427012b3a99" + integrity sha512-fCyMncqCJtrlANADIduYF4IfnWQ295UKib7DAxFXQhBsM9PLDTpizr0qemZcCNadcwSVHnAIzL4tliZhCM8P6A== + +"@resvg/resvg-js-linux-arm64-musl@2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@resvg/resvg-js-linux-arm64-musl/-/resvg-js-linux-arm64-musl-2.6.0.tgz#ec7e85b8b6eea23c0242faa1f1486241f253a190" + integrity sha512-ouLjTgBQHQyxLht4FdMPTvuY8xzJigM9EM2Tlu0llWkN1mKyTQrvYWi6TA6XnKdzDJHy7ZLpWpjZi7F5+Pg+Vg== + +"@resvg/resvg-js-linux-x64-gnu@2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@resvg/resvg-js-linux-x64-gnu/-/resvg-js-linux-x64-gnu-2.6.0.tgz#2a9b2a14554b0b1825c2ebc52b5fc2d95a831a63" + integrity sha512-n3zC8DWsvxC1AwxpKFclIPapDFibs5XdIRoV/mcIlxlh0vseW1F49b97F33BtJQRmlntsqqN6GMMqx8byB7B+Q== + +"@resvg/resvg-js-linux-x64-musl@2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@resvg/resvg-js-linux-x64-musl/-/resvg-js-linux-x64-musl-2.6.0.tgz#42081a8b06ccfa011aee9cc10b2f0fea3a4563ed" + integrity sha512-n4tasK1HOlAxdTEROgYA1aCfsEKk0UOFDNd/AQTTZlTmCbHKXPq+O8npaaKlwXquxlVK8vrkcWbksbiGqbCAcw== + +"@resvg/resvg-js-win32-arm64-msvc@2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@resvg/resvg-js-win32-arm64-msvc/-/resvg-js-win32-arm64-msvc-2.6.0.tgz#3af0d5f7bd9193ac6be8f226b539be6f7576302d" + integrity sha512-X2+EoBJFwDI5LDVb51Sk7ldnVLitMGr9WwU/i21i3fAeAXZb3hM16k67DeTy16OYkT2dk/RfU1tP1wG+rWbz2Q== + +"@resvg/resvg-js-win32-ia32-msvc@2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@resvg/resvg-js-win32-ia32-msvc/-/resvg-js-win32-ia32-msvc-2.6.0.tgz#64af45bfee41cb2bea0b6dd0bdc94175183f2b56" + integrity sha512-L7oevWjQoUgK5W1fCKn0euSVemhDXVhrjtwqpc7MwBKKimYeiOshO1Li1pa8bBt5PESahenhWgdB6lav9O0fEg== + +"@resvg/resvg-js-win32-x64-msvc@2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@resvg/resvg-js-win32-x64-msvc/-/resvg-js-win32-x64-msvc-2.6.0.tgz#08431a243c15f002d32e5e628857d19852323274" + integrity sha512-8lJlghb+Unki5AyKgsnFbRJwkEj9r1NpwyuBG8yEJiG1W9eEGl03R3I7bsVa3haof/3J1NlWf0rzSa1G++A2iw== + +"@resvg/resvg-js@^2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@resvg/resvg-js/-/resvg-js-2.6.0.tgz#d811100796dda1f37a516c747dab3bbc9b24e5e4" + integrity sha512-Tf3YpbBKcQn991KKcw/vg7vZf98v01seSv6CVxZBbRkL/xyjnoYB6KgrFL6zskT1A4dWC/vg77KyNOW+ePaNlA== + optionalDependencies: + "@resvg/resvg-js-android-arm-eabi" "2.6.0" + "@resvg/resvg-js-android-arm64" "2.6.0" + "@resvg/resvg-js-darwin-arm64" "2.6.0" + "@resvg/resvg-js-darwin-x64" "2.6.0" + "@resvg/resvg-js-linux-arm-gnueabihf" "2.6.0" + "@resvg/resvg-js-linux-arm64-gnu" "2.6.0" + "@resvg/resvg-js-linux-arm64-musl" "2.6.0" + "@resvg/resvg-js-linux-x64-gnu" "2.6.0" + "@resvg/resvg-js-linux-x64-musl" "2.6.0" + "@resvg/resvg-js-win32-arm64-msvc" "2.6.0" + "@resvg/resvg-js-win32-ia32-msvc" "2.6.0" + "@resvg/resvg-js-win32-x64-msvc" "2.6.0" + "@shuding/opentype.js@1.4.0-beta.0": version "1.4.0-beta.0" resolved "https://registry.yarnpkg.com/@shuding/opentype.js/-/opentype.js-1.4.0-beta.0.tgz#5d1e7e9e056f546aad41df1c5043f8f85d39e24b" @@ -3200,27 +3158,11 @@ color-name@1.1.3: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== -color-name@^1.0.0, color-name@^1.1.4, color-name@~1.1.4: +color-name@^1.1.4, color-name@~1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -color-string@^1.9.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.9.1.tgz#4467f9146f036f855b764dfb5bf8582bf342c7a4" - integrity sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg== - dependencies: - color-name "^1.0.0" - simple-swizzle "^0.2.2" - -color@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/color/-/color-4.2.3.tgz#d781ecb5e57224ee43ea9627560107c0e0c6463a" - integrity sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A== - dependencies: - color-convert "^2.0.1" - color-string "^1.9.0" - colord@^2.9.1: version "2.9.3" resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43" @@ -3770,11 +3712,6 @@ detab@2.0.4: dependencies: repeat-string "^1.5.4" -detect-libc@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.3.tgz#f0cd503b40f9939b894697d19ad50895e30cf700" - integrity sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw== - detect-node@^2.0.4: version "2.1.0" resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1" @@ -5239,11 +5176,6 @@ is-arrayish@^0.2.1: resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== -is-arrayish@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" - integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== - is-binary-path@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" @@ -8123,7 +8055,7 @@ semver@^6.0.0, semver@^6.2.0, semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.5.4, semver@^7.6.0: +semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.5.4: version "7.6.0" resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== @@ -8227,35 +8159,6 @@ shallowequal@^1.1.0: resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== -sharp@^0.33.3: - version "0.33.3" - resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.33.3.tgz#3342fe0aa5ed45a363e6578fa575c7af366216c2" - integrity sha512-vHUeXJU1UvlO/BNwTpT0x/r53WkLUVxrmb5JTgW92fdFCFk0ispLMAeu/jPO2vjkXM1fYUi3K7/qcLF47pwM1A== - dependencies: - color "^4.2.3" - detect-libc "^2.0.3" - semver "^7.6.0" - optionalDependencies: - "@img/sharp-darwin-arm64" "0.33.3" - "@img/sharp-darwin-x64" "0.33.3" - "@img/sharp-libvips-darwin-arm64" "1.0.2" - "@img/sharp-libvips-darwin-x64" "1.0.2" - "@img/sharp-libvips-linux-arm" "1.0.2" - "@img/sharp-libvips-linux-arm64" "1.0.2" - "@img/sharp-libvips-linux-s390x" "1.0.2" - "@img/sharp-libvips-linux-x64" "1.0.2" - "@img/sharp-libvips-linuxmusl-arm64" "1.0.2" - "@img/sharp-libvips-linuxmusl-x64" "1.0.2" - "@img/sharp-linux-arm" "0.33.3" - "@img/sharp-linux-arm64" "0.33.3" - "@img/sharp-linux-s390x" "0.33.3" - "@img/sharp-linux-x64" "0.33.3" - "@img/sharp-linuxmusl-arm64" "0.33.3" - "@img/sharp-linuxmusl-x64" "0.33.3" - "@img/sharp-wasm32" "0.33.3" - "@img/sharp-win32-ia32" "0.33.3" - "@img/sharp-win32-x64" "0.33.3" - shebang-command@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" @@ -8297,13 +8200,6 @@ signal-exit@^3.0.2, signal-exit@^3.0.3: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== -simple-swizzle@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" - integrity sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg== - dependencies: - is-arrayish "^0.3.1" - sirv@^2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/sirv/-/sirv-2.0.4.tgz#5dd9a725c578e34e449f332703eb2a74e46a29b0"