diff --git a/apps/cli/lib/archive.ts b/apps/cli/lib/archive.ts index c164a90c77..a316478135 100644 --- a/apps/cli/lib/archive.ts +++ b/apps/cli/lib/archive.ts @@ -18,7 +18,7 @@ export async function archiveSiteContent( const archiveBuilder = archiver( 'zip', { zlib: { level: ZIP_COMPRESSION_LEVEL }, followSymlinks: true, - } ); + } as archiver.ArchiverOptions ); output.on( 'close', () => { resolve( archiveBuilder ); diff --git a/apps/cli/lib/import-export/export/exporters/default-exporter.ts b/apps/cli/lib/import-export/export/exporters/default-exporter.ts index 7ffcf8bac8..eb5601008e 100644 --- a/apps/cli/lib/import-export/export/exporters/default-exporter.ts +++ b/apps/cli/lib/import-export/export/exporters/default-exporter.ts @@ -153,7 +153,7 @@ export class DefaultExporter extends EventEmitter implements Exporter { this.emit( ExportEvents.BACKUP_CREATE_START ); const isZip = this.options.backupFile.endsWith( '.zip' ); const format = isZip ? 'zip' : 'tar'; - return archiver( format, ARCHIVER_OPTIONS[ format ] ); + return archiver( format, ARCHIVER_OPTIONS[ format ] as archiver.ArchiverOptions ); } private setupArchiveListeners( output: fs.WriteStream ): Promise< void > { diff --git a/apps/cli/lib/import-export/export/types.ts b/apps/cli/lib/import-export/export/types.ts index 35cd57884a..50119b8760 100644 --- a/apps/cli/lib/import-export/export/types.ts +++ b/apps/cli/lib/import-export/export/types.ts @@ -1,5 +1,5 @@ import { SiteData } from 'cli/lib/cli-config/core'; -import type { ProgressData } from 'archiver'; +import type archiver from 'archiver'; import type { EventEmitter } from 'events'; export interface ExportOptions { @@ -24,7 +24,7 @@ export interface Exporter extends Partial< EventEmitter > { } export interface BackupCreateProgressEventData { - progress: ProgressData; + progress: archiver.ProgressData; } export type NewExporter = new ( options: ExportOptions ) => Exporter; diff --git a/apps/cli/lib/tests/archive.test.ts b/apps/cli/lib/tests/archive.test.ts index 992fa74276..129dae0609 100644 --- a/apps/cli/lib/tests/archive.test.ts +++ b/apps/cli/lib/tests/archive.test.ts @@ -51,8 +51,8 @@ describe( 'Archive Module', () => { vi.clearAllMocks(); mockArchiver = createMockArchiver(); mockWriteStream = createMockWriteStream(); - vi.mocked( archiver ).mockReturnValue( - mockArchiver as unknown as ReturnType< typeof archiver > + vi.mocked( archiver as unknown as ( ...args: unknown[] ) => unknown ).mockReturnValue( + mockArchiver ); vi.mocked( fs.createWriteStream ).mockReturnValue( mockWriteStream as unknown as ReturnType< typeof fs.createWriteStream > diff --git a/apps/cli/package.json b/apps/cli/package.json index b23d915e5d..b163802559 100644 --- a/apps/cli/package.json +++ b/apps/cli/package.json @@ -37,7 +37,7 @@ "@wp-playground/common": "3.1.18", "@wp-playground/storage": "3.1.18", "@wp-playground/wordpress": "3.1.18", - "archiver": "^6.0.2", + "archiver": "^7.0.1", "atomically": "^2.1.1", "chalk": "^5.6.2", "cli-table3": "^0.6.5", @@ -68,7 +68,7 @@ }, "devDependencies": { "@studio/common": "file:../../tools/common", - "@types/archiver": "^6.0.4", + "@types/archiver": "^7.0.0", "@types/http-proxy": "^1.17.17", "@types/node-forge": "^1.3.14", "@types/yargs": "^17.0.35", diff --git a/apps/studio/package.json b/apps/studio/package.json index 3fbed8153c..5fa5292434 100644 --- a/apps/studio/package.json +++ b/apps/studio/package.json @@ -43,7 +43,7 @@ "@wordpress/i18n": "^6.9.0", "@wordpress/icons": "^11.4.0", "@wordpress/react-i18n": "^4.41.0", - "archiver": "^6.0.2", + "archiver": "^7.0.1", "atomically": "^2.1.0", "cli-table3": "^0.6.5", "compressible": "2.0.18", @@ -86,7 +86,7 @@ "@electron-forge/maker-zip": "^7.11.1", "@electron-forge/plugin-auto-unpack-natives": "^7.11.1", "@sentry/vite-plugin": "^5.1.1", - "@types/archiver": "^6.0.4", + "@types/archiver": "^7.0.0", "@types/follow-redirects": "^1.14.4", "@types/fs-extra": "^11.0.4", "@types/http-proxy": "^1.17.17", diff --git a/apps/studio/patches/@types+archiver+6.0.4.patch b/apps/studio/patches/@types+archiver+6.0.4.patch deleted file mode 100644 index ea20e606ee..0000000000 --- a/apps/studio/patches/@types+archiver+6.0.4.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/node_modules/@types/archiver/index.d.ts b/node_modules/@types/archiver/index.d.ts -index 03d2d7d..88abe66 100644 ---- a/node_modules/@types/archiver/index.d.ts -+++ b/node_modules/@types/archiver/index.d.ts -@@ -106,6 +106,7 @@ declare namespace archiver { - - interface CoreOptions { - statConcurrency?: number | undefined; -+ followSymlinks?: boolean; - } - - interface TransformOptions { diff --git a/apps/studio/patches/archiver+6.0.2.patch b/apps/studio/patches/archiver+6.0.2.patch deleted file mode 100644 index 5bb2afb5f9..0000000000 --- a/apps/studio/patches/archiver+6.0.2.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/node_modules/archiver/lib/core.js b/node_modules/archiver/lib/core.js -index 7c0a74d..2934fe5 100644 ---- a/node_modules/archiver/lib/core.js -+++ b/node_modules/archiver/lib/core.js -@@ -631,7 +631,8 @@ Archiver.prototype.directory = function(dirpath, destpath, data) { - - var globOptions = { - stat: true, -- dot: true -+ dot: true, -+ follow: this.options.followSymlinks - }; - - function onGlobEnd() { diff --git a/apps/studio/src/lib/import-export/export/exporters/default-exporter.ts b/apps/studio/src/lib/import-export/export/exporters/default-exporter.ts index cbf3a09115..6719280465 100644 --- a/apps/studio/src/lib/import-export/export/exporters/default-exporter.ts +++ b/apps/studio/src/lib/import-export/export/exporters/default-exporter.ts @@ -154,7 +154,7 @@ export class DefaultExporter extends EventEmitter implements Exporter { this.emit( ExportEvents.BACKUP_CREATE_START ); const isZip = this.options.backupFile.endsWith( '.zip' ); const format = isZip ? 'zip' : 'tar'; - return archiver( format, ARCHIVER_OPTIONS[ format ] ); + return archiver( format, ARCHIVER_OPTIONS[ format ] as archiver.ArchiverOptions ); } private setupArchiveListeners( output: fs.WriteStream ): Promise< void > { diff --git a/apps/studio/src/lib/import-export/export/types.ts b/apps/studio/src/lib/import-export/export/types.ts index b4c33f60db..5f6abbb163 100644 --- a/apps/studio/src/lib/import-export/export/types.ts +++ b/apps/studio/src/lib/import-export/export/types.ts @@ -1,4 +1,4 @@ -import type { ProgressData } from 'archiver'; +import type archiver from 'archiver'; import type { EventEmitter } from 'events'; export interface ExportOptions { @@ -23,7 +23,7 @@ export interface Exporter extends Partial< EventEmitter > { } export interface BackupCreateProgressEventData { - progress: ProgressData; + progress: archiver.ProgressData; } export type NewExporter = new ( options: ExportOptions ) => Exporter; diff --git a/apps/studio/src/lib/import-export/tests/export/exporters/default-exporter.test.ts b/apps/studio/src/lib/import-export/tests/export/exporters/default-exporter.test.ts index 87f8300e33..16b0e60a67 100644 --- a/apps/studio/src/lib/import-export/tests/export/exporters/default-exporter.test.ts +++ b/apps/studio/src/lib/import-export/tests/export/exporters/default-exporter.test.ts @@ -270,8 +270,8 @@ platformTestSuite( 'DefaultExporter', ( { normalize } ) => { } ); mockArchiver = createMockArchiver(); - ( archiver as MockedFunction< typeof archiver > ).mockReturnValue( - mockArchiver as unknown as archiver.Archiver + ( archiver as unknown as MockedFunction< ( ...args: unknown[] ) => unknown > ).mockReturnValue( + mockArchiver ); mockWriteStream = { on: vi.fn(), diff --git a/package-lock.json b/package-lock.json index 513e77e821..12309dd9c4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -65,7 +65,7 @@ "@wp-playground/common": "3.1.18", "@wp-playground/storage": "3.1.18", "@wp-playground/wordpress": "3.1.18", - "archiver": "^6.0.2", + "archiver": "^7.0.1", "atomically": "^2.1.1", "chalk": "^5.6.2", "cli-table3": "^0.6.5", @@ -88,7 +88,7 @@ }, "devDependencies": { "@studio/common": "file:../../tools/common", - "@types/archiver": "^6.0.4", + "@types/archiver": "^7.0.0", "@types/http-proxy": "^1.17.17", "@types/node-forge": "^1.3.14", "@types/yargs": "^17.0.35", @@ -503,7 +503,7 @@ "@wordpress/i18n": "^6.9.0", "@wordpress/icons": "^11.4.0", "@wordpress/react-i18n": "^4.41.0", - "archiver": "^6.0.2", + "archiver": "^7.0.1", "atomically": "^2.1.0", "cli-table3": "^0.6.5", "compressible": "2.0.18", @@ -546,7 +546,7 @@ "@electron-forge/maker-zip": "^7.11.1", "@electron-forge/plugin-auto-unpack-natives": "^7.11.1", "@sentry/vite-plugin": "^5.1.1", - "@types/archiver": "^6.0.4", + "@types/archiver": "^7.0.0", "@types/follow-redirects": "^1.14.4", "@types/fs-extra": "^11.0.4", "@types/http-proxy": "^1.17.17", @@ -6150,7 +6150,6 @@ }, "node_modules/@isaacs/cliui": { "version": "8.0.2", - "dev": true, "license": "ISC", "dependencies": { "string-width": "^5.1.2", @@ -6166,7 +6165,6 @@ }, "node_modules/@isaacs/cliui/node_modules/ansi-styles": { "version": "6.2.1", - "dev": true, "license": "MIT", "engines": { "node": ">=12" @@ -6177,12 +6175,10 @@ }, "node_modules/@isaacs/cliui/node_modules/emoji-regex": { "version": "9.2.2", - "dev": true, "license": "MIT" }, "node_modules/@isaacs/cliui/node_modules/string-width": { "version": "5.1.2", - "dev": true, "license": "MIT", "dependencies": { "eastasianwidth": "^0.2.0", @@ -6198,7 +6194,6 @@ }, "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { "version": "8.1.0", - "dev": true, "license": "MIT", "dependencies": { "ansi-styles": "^6.1.0", @@ -8873,7 +8868,6 @@ }, "node_modules/@pkgjs/parseargs": { "version": "0.11.0", - "dev": true, "license": "MIT", "optional": true, "engines": { @@ -10400,7 +10394,9 @@ } }, "node_modules/@types/archiver": { - "version": "6.0.4", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@types/archiver/-/archiver-7.0.0.tgz", + "integrity": "sha512-/3vwGwx9n+mCQdYZ2IKGGHEFL30I96UgBlk8EtRDDFQ9uxM1l4O5Ci6r00EMAkiDaTqD9DQ6nVrWRICnBPtzzg==", "dev": true, "license": "MIT", "dependencies": { @@ -12924,6 +12920,18 @@ "dev": true, "license": "ISC" }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "license": "MIT", + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, "node_modules/accepts": { "version": "1.3.8", "license": "MIT", @@ -13157,70 +13165,209 @@ "optional": true }, "node_modules/archiver": { - "version": "6.0.2", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-7.0.1.tgz", + "integrity": "sha512-ZcbTaIqJOfCc03QwD468Unz/5Ir8ATtvAHsK+FdXbDIbGfihqh9mrvdcYunQzqn4HrvWWaFyaxJhGZagaJJpPQ==", "license": "MIT", "dependencies": { - "archiver-utils": "^4.0.1", + "archiver-utils": "^5.0.2", "async": "^3.2.4", - "buffer-crc32": "^0.2.1", - "readable-stream": "^3.6.0", + "buffer-crc32": "^1.0.0", + "readable-stream": "^4.0.0", "readdir-glob": "^1.1.2", "tar-stream": "^3.0.0", - "zip-stream": "^5.0.1" + "zip-stream": "^6.0.1" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 14" } }, "node_modules/archiver-utils": { - "version": "4.0.1", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-5.0.2.tgz", + "integrity": "sha512-wuLJMmIBQYCsGZgYLTy5FIB2pF6Lfb6cXMSF8Qywwk3t20zWnAi7zLcQFdKQmIB8wyZpY5ER38x08GbwtR2cLA==", "license": "MIT", "dependencies": { - "glob": "^8.0.0", + "glob": "^10.0.0", "graceful-fs": "^4.2.0", + "is-stream": "^2.0.1", "lazystream": "^1.0.0", "lodash": "^4.17.15", "normalize-path": "^3.0.0", - "readable-stream": "^3.6.0" + "readable-stream": "^4.0.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 14" } }, "node_modules/archiver-utils/node_modules/brace-expansion": { - "version": "2.0.2", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.3.tgz", + "integrity": "sha512-MCV/fYJEbqx68aE58kv2cA/kiky1G8vux3OR6/jbS+jIMe/6fJWa0DTzJU7dqijOWYwHi1t29FlfYI9uytqlpA==", "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" } }, + "node_modules/archiver-utils/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, "node_modules/archiver-utils/node_modules/glob": { - "version": "8.1.0", + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", + "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", + "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me", "license": "ISC", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/archiver-utils/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==", + "license": "MIT", "engines": { - "node": ">=12" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/archiver-utils/node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" }, "funding": { "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" } }, "node_modules/archiver-utils/node_modules/minimatch": { - "version": "5.1.9", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.9.tgz", - "integrity": "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==", + "version": "9.0.9", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz", + "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==", "license": "ISC", "dependencies": { - "brace-expansion": "^2.0.1" + "brace-expansion": "^2.0.2" }, "engines": { - "node": ">=10" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/archiver-utils/node_modules/minipass": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", + "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/archiver-utils/node_modules/readable-stream": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.7.0.tgz", + "integrity": "sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==", + "license": "MIT", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/archiver/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/archiver/node_modules/buffer-crc32": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-1.0.0.tgz", + "integrity": "sha512-Db1SbgBS/fg/392AblrMJk97KggmvYhr4pB5ZIMTWtaivCPMWLkmb7m21cJvpvgK+J3nsU2CmmixNBZx4vFj/w==", + "license": "MIT", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/archiver/node_modules/readable-stream": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.7.0.tgz", + "integrity": "sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==", + "license": "MIT", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/arg": { @@ -13492,7 +13639,6 @@ }, "node_modules/base64-js": { "version": "1.5.1", - "dev": true, "funding": [ { "type": "github", @@ -14463,16 +14609,71 @@ } }, "node_modules/compress-commons": { - "version": "5.0.1", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-6.0.2.tgz", + "integrity": "sha512-6FqVXeETqWPoGcfzrXb37E50NP0LXT8kAMu5ooZayhWWdgEY4lBEEcbQNXtkuKQsGduxiIcI4gOTsxTmuq/bSg==", "license": "MIT", "dependencies": { "crc-32": "^1.2.0", - "crc32-stream": "^5.0.0", + "crc32-stream": "^6.0.0", + "is-stream": "^2.0.1", "normalize-path": "^3.0.0", - "readable-stream": "^3.6.0" + "readable-stream": "^4.0.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 14" + } + }, + "node_modules/compress-commons/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/compress-commons/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==", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/compress-commons/node_modules/readable-stream": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.7.0.tgz", + "integrity": "sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==", + "license": "MIT", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/compressible": { @@ -14674,14 +14875,56 @@ } }, "node_modules/crc32-stream": { - "version": "5.0.0", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-6.0.0.tgz", + "integrity": "sha512-piICUB6ei4IlTv1+653yq5+KoqfBYmj9bw6LqXoOneTMDXk5nM1qt12mFW1caG3LlJXEKW1Bp0WggEmIfQB34g==", "license": "MIT", "dependencies": { "crc-32": "^1.2.0", - "readable-stream": "^3.4.0" + "readable-stream": "^4.0.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 14" + } + }, + "node_modules/crc32-stream/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/crc32-stream/node_modules/readable-stream": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.7.0.tgz", + "integrity": "sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==", + "license": "MIT", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/create-require": { @@ -15123,7 +15366,6 @@ }, "node_modules/eastasianwidth": { "version": "0.2.0", - "dev": true, "license": "MIT" }, "node_modules/ecdsa-sig-formatter": { @@ -16750,13 +16992,21 @@ "node": ">= 0.6" } }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/eventemitter3": { "version": "4.0.7", "license": "MIT" }, "node_modules/events": { "version": "3.3.0", - "dev": true, "license": "MIT", "engines": { "node": ">=0.8.x" @@ -17423,7 +17673,6 @@ }, "node_modules/foreground-child": { "version": "3.1.1", - "dev": true, "license": "ISC", "dependencies": { "cross-spawn": "^7.0.0", @@ -17438,7 +17687,6 @@ }, "node_modules/foreground-child/node_modules/signal-exit": { "version": "4.1.0", - "dev": true, "license": "ISC", "engines": { "node": ">=14" @@ -17593,6 +17841,7 @@ }, "node_modules/fs.realpath": { "version": "1.0.0", + "dev": true, "license": "ISC" }, "node_modules/fsevents": { @@ -18446,7 +18695,6 @@ }, "node_modules/ieee754": { "version": "1.2.1", - "dev": true, "funding": [ { "type": "github", @@ -18549,6 +18797,7 @@ }, "node_modules/inflight": { "version": "1.0.6", + "dev": true, "license": "ISC", "dependencies": { "once": "^1.3.0", @@ -19427,6 +19676,8 @@ }, "node_modules/lazystream": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", "license": "MIT", "dependencies": { "readable-stream": "^2.0.5" @@ -19437,10 +19688,14 @@ }, "node_modules/lazystream/node_modules/isarray": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "license": "MIT" }, "node_modules/lazystream/node_modules/readable-stream": { "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "license": "MIT", "dependencies": { "core-util-is": "~1.0.0", @@ -19454,6 +19709,8 @@ }, "node_modules/lazystream/node_modules/string_decoder": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "license": "MIT", "dependencies": { "safe-buffer": "~5.1.0" @@ -21808,7 +22065,6 @@ }, "node_modules/package-json-from-dist": { "version": "1.0.1", - "dev": true, "license": "BlueOak-1.0.0" }, "node_modules/pako": { @@ -22050,7 +22306,6 @@ }, "node_modules/path-scurry": { "version": "1.11.1", - "dev": true, "license": "BlueOak-1.0.0", "dependencies": { "lru-cache": "^10.2.0", @@ -22065,7 +22320,6 @@ }, "node_modules/path-scurry/node_modules/lru-cache": { "version": "10.2.0", - "dev": true, "license": "ISC", "engines": { "node": "14 || >=16.14" @@ -22073,7 +22327,6 @@ }, "node_modules/path-scurry/node_modules/minipass": { "version": "7.0.4", - "dev": true, "license": "ISC", "engines": { "node": ">=16 || 14 >=14.17" @@ -22620,6 +22873,15 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "license": "MIT", + "engines": { + "node": ">= 0.6.0" + } + }, "node_modules/process-nextick-args": { "version": "2.0.1", "license": "MIT" @@ -24373,7 +24635,6 @@ "node_modules/string-width-cjs": { "name": "string-width", "version": "4.2.3", - "dev": true, "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", @@ -24386,7 +24647,6 @@ }, "node_modules/string-width-cjs/node_modules/strip-ansi": { "version": "6.0.1", - "dev": true, "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" @@ -24433,7 +24693,6 @@ "node_modules/strip-ansi-cjs": { "name": "strip-ansi", "version": "6.0.1", - "dev": true, "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" @@ -27023,7 +27282,6 @@ "node_modules/wrap-ansi-cjs": { "name": "wrap-ansi", "version": "7.0.0", - "dev": true, "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", @@ -27039,7 +27297,6 @@ }, "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { "version": "6.0.1", - "dev": true, "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" @@ -27307,15 +27564,57 @@ } }, "node_modules/zip-stream": { - "version": "5.0.1", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-6.0.1.tgz", + "integrity": "sha512-zK7YHHz4ZXpW89AHXUPbQVGKI7uvkd3hzusTdotCg1UxyaVtg0zFJSTfW/Dq5f7OBBVnq6cZIaC8Ti4hb6dtCA==", "license": "MIT", "dependencies": { - "archiver-utils": "^4.0.1", - "compress-commons": "^5.0.1", - "readable-stream": "^3.6.0" + "archiver-utils": "^5.0.0", + "compress-commons": "^6.0.2", + "readable-stream": "^4.0.0" }, "engines": { - "node": ">= 12.0.0" + "node": ">= 14" + } + }, + "node_modules/zip-stream/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/zip-stream/node_modules/readable-stream": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.7.0.tgz", + "integrity": "sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==", + "license": "MIT", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/zod": {