From 6cdfcbcabe10c8c782b044617c7af79f15aa3927 Mon Sep 17 00:00:00 2001 From: Charles Lyding <19598772+clydin@users.noreply.github.com> Date: Tue, 9 Jun 2026 21:17:59 -0400 Subject: [PATCH] refactor(@angular/cli): transition update command to use PackageManager abstraction Transition the update command's version resolver to utilize the registry methods from the PackageManager abstraction instead of directly querying the registry via pacote. This introduces a cached RegistryClient wrapper that retrieves package metadata and manifests on-demand. Update resolution helper functions are updated to be asynchronous to support the lazy-loading of registry documents. --- package.json | 3 + packages/angular/cli/BUILD.bazel | 6 +- packages/angular/cli/package.json | 3 - .../angular/cli/src/commands/update/cli.ts | 9 +- .../src/commands/update/update-resolver.ts | 356 ++++++------ .../commands/update/update-resolver_spec.ts | 116 ++-- pnpm-lock.yaml | 506 +++++++++--------- 7 files changed, 537 insertions(+), 462 deletions(-) diff --git a/package.json b/package.json index 0e4856408374..b72fa9ea5dff 100644 --- a/package.json +++ b/package.json @@ -88,6 +88,7 @@ "@types/node": "^22.12.0", "@types/npm-package-arg": "^6.1.0", "@types/pacote": "^11.1.3", + "pacote": "21.5.0", "@types/picomatch": "^4.0.0", "@types/progress": "^2.0.3", "@types/semver": "^7.3.12", @@ -95,6 +96,8 @@ "@types/yargs": "^17.0.20", "@types/yargs-parser": "^21.0.0", "@types/yarnpkg__lockfile": "^1.1.5", + "@yarnpkg/lockfile": "1.1.0", + "ini": "7.0.0", "@typescript-eslint/eslint-plugin": "8.60.1", "@typescript-eslint/parser": "8.60.1", "ajv": "8.20.0", diff --git a/packages/angular/cli/BUILD.bazel b/packages/angular/cli/BUILD.bazel index b73ed5fba5fe..08f9797c409e 100644 --- a/packages/angular/cli/BUILD.bazel +++ b/packages/angular/cli/BUILD.bazel @@ -61,13 +61,10 @@ ts_project( ":node_modules/@inquirer/prompts", ":node_modules/@listr2/prompt-adapter-inquirer", ":node_modules/@modelcontextprotocol/sdk", - ":node_modules/@yarnpkg/lockfile", ":node_modules/algoliasearch", - ":node_modules/ini", ":node_modules/jsonc-parser", ":node_modules/listr2", ":node_modules/npm-package-arg", - ":node_modules/pacote", ":node_modules/parse5-html-rewriting-stream", ":node_modules/yargs", ":node_modules/zod", @@ -79,6 +76,9 @@ ts_project( "//:node_modules/@types/semver", "//:node_modules/@types/yargs", "//:node_modules/@types/yarnpkg__lockfile", + "//:node_modules/@yarnpkg/lockfile", + "//:node_modules/ini", + "//:node_modules/pacote", "//:node_modules/semver", "//:node_modules/typescript", ], diff --git a/packages/angular/cli/package.json b/packages/angular/cli/package.json index 4488b768601b..6bedc1c5b570 100644 --- a/packages/angular/cli/package.json +++ b/packages/angular/cli/package.json @@ -19,13 +19,10 @@ "@listr2/prompt-adapter-inquirer": "4.2.4", "@modelcontextprotocol/sdk": "1.29.0", "@schematics/angular": "workspace:0.0.0-PLACEHOLDER", - "@yarnpkg/lockfile": "1.1.0", "algoliasearch": "5.53.0", - "ini": "7.0.0", "jsonc-parser": "3.3.1", "listr2": "10.2.1", "npm-package-arg": "14.0.0", - "pacote": "21.5.0", "parse5-html-rewriting-stream": "8.0.1", "semver": "7.8.1", "yargs": "18.0.0", diff --git a/packages/angular/cli/src/commands/update/cli.ts b/packages/angular/cli/src/commands/update/cli.ts index 447782da0616..e10ff4b940b8 100644 --- a/packages/angular/cli/src/commands/update/cli.ts +++ b/packages/angular/cli/src/commands/update/cli.ts @@ -254,10 +254,16 @@ export default class UpdateCommandModule extends CommandModule string); +export class RegistryClient { + private metadataCache = new Map>(); + private manifestCache = new Map>(); + + constructor( + private packageManager: PackageManager, + private logger: logging.LoggerApi, + ) {} + + async getMetadata(packageName: string): Promise { + let promise = this.metadataCache.get(packageName); + if (!promise) { + promise = this.packageManager.getRegistryMetadata(packageName); + this.metadataCache.set(packageName, promise); + } + + return promise; + } + + async getManifest(packageName: string, version: string): Promise { + const key = `${packageName}@${version}`; + let promise = this.manifestCache.get(key); + if (!promise) { + promise = this.packageManager.getRegistryManifest(packageName, version); + this.manifestCache.set(key, promise); + } + + return promise; + } +} + +export async function getSatisfyingVersion( + registryClient: RegistryClient, + packageName: string, + versions: string[], + range: string, + next?: boolean, +): Promise { + const options = { includePrerelease: next || undefined }; + const candidates = versions.filter((v) => semver.satisfies(v, range, options)); + const sorted = semver.rsort(candidates); + + for (const version of sorted) { + const manifest = await registryClient.getManifest(packageName, version); + if (manifest && !manifest.deprecated) { + return version; + } + } + + // Fallback to deprecated versions if no non-deprecated version satisfies + for (const version of sorted) { + const manifest = await registryClient.getManifest(packageName, version); + if (manifest) { + return version; + } + } + + return null; +} + export function angularMajorCompatGuarantee(range: string) { let newRange = semver.validRange(range); if (!newRange) { @@ -54,7 +110,7 @@ export interface PackageVersionInfo { export interface PackageInfo { name: string; - npmPackageJson: NpmRepositoryPackageJson; + npmPackageJson: PackageMetadata; installed: PackageVersionInfo; target?: PackageVersionInfo; packageJsonRange: string; @@ -84,6 +140,7 @@ export interface UpdatePlan { packagesToUpdate: Map; // name -> target version range migrationsToRun: { package: string; collection: string; from: string; to: string }[]; packageInfoMap: Map; + registryClient: RegistryClient; } function _updatePeerVersion(infoMap: Map, name: string, range: string) { @@ -215,7 +272,7 @@ function _getUpdateMetadata( packageJson: PackageManifest, logger: logging.LoggerApi, ): UpdateMetadata { - const metadata = packageJson['ng-update']; + const metadata = packageJson['ng-update'] as Record | undefined; const result: UpdateMetadata = { packageGroup: {}, @@ -337,13 +394,11 @@ function _buildLocalPackageInfo( } const installedVersion = localPkgJson.version; - const npmPackageJson: NpmRepositoryPackageJson = { + const npmPackageJson: PackageMetadata = { name, - versions: { - [installedVersion]: localPkgJson, - }, + versions: [installedVersion], 'dist-tags': {}, - } as unknown as NpmRepositoryPackageJson; + }; const logger = new logging.NullLogger(); @@ -359,13 +414,14 @@ function _buildLocalPackageInfo( }; } -function _buildPackageInfo( +async function _buildPackageInfo( packages: Map, allDependencies: ReadonlyMap, - npmPackageJson: NpmRepositoryPackageJson, + npmPackageJson: PackageMetadata, workspaceRoot: string, + registryClient: RegistryClient, logger: logging.LoggerApi, -): PackageInfo { +): Promise { const name = npmPackageJson.name; const packageJsonRange = allDependencies.get(name); if (!packageJsonRange) { @@ -375,24 +431,13 @@ function _buildPackageInfo( const localPkgJson = getInstalledPackageJson(name, workspaceRoot); let installedVersion = localPkgJson?.version; - const packageVersionsNonDeprecated: string[] = []; - const packageVersionsDeprecated: string[] = []; - - for (const [version, { deprecated }] of Object.entries(npmPackageJson.versions ?? {})) { - if (deprecated) { - packageVersionsDeprecated.push(version); - } else { - packageVersionsNonDeprecated.push(version); - } - } - - const findSatisfyingVersion = (targetVersion: VersionRange): VersionRange | undefined => - ((semver.maxSatisfying(packageVersionsNonDeprecated, targetVersion) ?? - semver.maxSatisfying(packageVersionsDeprecated, targetVersion)) as VersionRange | null) ?? - undefined; - if (!installedVersion) { - installedVersion = findSatisfyingVersion(packageJsonRange); + installedVersion = (await getSatisfyingVersion( + registryClient, + name, + npmPackageJson.versions, + packageJsonRange, + )) as VersionRange | undefined; } if (!installedVersion) { @@ -401,8 +446,8 @@ function _buildPackageInfo( ); } - const versions = npmPackageJson.versions ?? {}; - const installedPackageJson = versions[installedVersion] || localPkgJson; + const installedPackageJson = + localPkgJson || (await registryClient.getManifest(name, installedVersion)); if (!installedPackageJson) { throw new Error( `An unexpected error happened; package ${name} has no version ${installedVersion}.`, @@ -417,7 +462,12 @@ function _buildPackageInfo( } else if (targetVersion == 'next') { targetVersion = distTags['latest'] as VersionRange; } else { - targetVersion = findSatisfyingVersion(targetVersion); + targetVersion = (await getSatisfyingVersion( + registryClient, + name, + npmPackageJson.versions, + targetVersion, + )) as VersionRange | undefined; } } @@ -426,13 +476,17 @@ function _buildPackageInfo( targetVersion = undefined; } - const target: PackageVersionInfo | undefined = targetVersion - ? { + let target: PackageVersionInfo | undefined; + if (targetVersion) { + const targetPackageJson = await registryClient.getManifest(name, targetVersion); + if (targetPackageJson) { + target = { version: targetVersion, - packageJson: versions[targetVersion], - updateMetadata: _getUpdateMetadata(versions[targetVersion], logger), - } - : undefined; + packageJson: targetPackageJson, + updateMetadata: _getUpdateMetadata(targetPackageJson, logger), + }; + } + } return { name, @@ -487,11 +541,12 @@ function _buildPackageList( return packages; } -function resolvePackageVersion( - metadata: NpmRepositoryPackageJson, +async function resolvePackageVersion( + registryClient: RegistryClient, + metadata: PackageMetadata, range: string, next = false, -): string | null { +): Promise { const distTags = metadata['dist-tags'] ?? {}; if (distTags[range]) { return distTags[range]; @@ -500,32 +555,16 @@ function resolvePackageVersion( return distTags['latest'] ?? null; } - const packageVersionsNonDeprecated: string[] = []; - const packageVersionsDeprecated: string[] = []; - for (const [v, { deprecated }] of Object.entries(metadata.versions ?? {})) { - if (deprecated) { - packageVersionsDeprecated.push(v); - } else { - packageVersionsNonDeprecated.push(v); - } - } - - return ( - semver.maxSatisfying(packageVersionsNonDeprecated, range, { - includePrerelease: next || undefined, - }) ?? - semver.maxSatisfying(packageVersionsDeprecated, range, { - includePrerelease: next || undefined, - }) - ); + return getSatisfyingVersion(registryClient, metadata.name, metadata.versions, range, next); } -function _addPackageGroup( +async function _addPackageGroup( packages: Map, allDependencies: ReadonlyMap, - metadata: NpmRepositoryPackageJson, + metadata: PackageMetadata, + registryClient: RegistryClient, logger: logging.LoggerApi, -): void { +): Promise { const maybePackage = packages.get(metadata.name); if (!maybePackage) { return; @@ -538,27 +577,20 @@ function _addPackageGroup( } else if (version === 'next') { version = distTags['latest'] as VersionRange; } else { - const packageVersionsNonDeprecated: string[] = []; - const packageVersionsDeprecated: string[] = []; - const versions = metadata.versions ?? {}; - for (const [v, { deprecated }] of Object.entries(versions)) { - if (deprecated) { - packageVersionsDeprecated.push(v); - } else { - packageVersionsNonDeprecated.push(v); - } - } version = - ((semver.maxSatisfying(packageVersionsNonDeprecated, version) ?? - semver.maxSatisfying(packageVersionsDeprecated, version)) as VersionRange | null) ?? - version; + ((await getSatisfyingVersion( + registryClient, + metadata.name, + metadata.versions, + version, + )) as VersionRange | null) ?? version; } - const versions = metadata.versions ?? {}; - if (!versions[version]) { + const packageJson = await registryClient.getManifest(metadata.name, version); + if (!packageJson) { return; } - const ngUpdateMetadata = versions[version]['ng-update']; + const ngUpdateMetadata = packageJson['ng-update']; if (!ngUpdateMetadata) { return; } @@ -607,9 +639,9 @@ function _addPackageGroup( async function _addPeerDependencies( packages: Map, allDependencies: ReadonlyMap, - npmPackageJson: NpmRepositoryPackageJson, + npmPackageJson: PackageMetadata, workspaceRoot: string, - fetchMetadata: (name: string) => Promise, + registryClient: RegistryClient, logger: logging.LoggerApi, ): Promise { const maybePackage = packages.get(npmPackageJson.name); @@ -619,8 +651,7 @@ async function _addPeerDependencies( const distTags = npmPackageJson['dist-tags'] ?? {}; const version = distTags[maybePackage] || maybePackage; - const versions = npmPackageJson.versions ?? {}; - const packageJson = versions[version]; + const packageJson = await registryClient.getManifest(npmPackageJson.name, version); if (!packageJson) { return; } @@ -638,20 +669,14 @@ async function _addPeerDependencies( } else { const packageJsonRange = allDependencies.get(peer); if (packageJsonRange) { - const peerMetadata = await fetchMetadata(peer); + const peerMetadata = await registryClient.getMetadata(peer); if (peerMetadata) { - const packageVersionsNonDeprecated: string[] = []; - const packageVersionsDeprecated: string[] = []; - for (const [v, { deprecated }] of Object.entries(peerMetadata.versions ?? {})) { - if (deprecated) { - packageVersionsDeprecated.push(v); - } else { - packageVersionsNonDeprecated.push(v); - } - } - const resolvedInstalledVersion = - semver.maxSatisfying(packageVersionsNonDeprecated, packageJsonRange) ?? - semver.maxSatisfying(packageVersionsDeprecated, packageJsonRange); + const resolvedInstalledVersion = await getSatisfyingVersion( + registryClient, + peer, + peerMetadata.versions, + packageJsonRange, + ); if (resolvedInstalledVersion && semver.satisfies(resolvedInstalledVersion, range)) { continue; @@ -684,6 +709,7 @@ function isPkgFromRegistry(name: string, specifier: string): boolean { export async function resolveUserUpdatePlan( options: UpdateResolverOptions, + packageManager: PackageManager, logger: logging.LoggerApi, ): Promise { const workspaceRoot = options.workspaceRoot ?? process.cwd(); @@ -733,25 +759,12 @@ export async function resolveUserUpdatePlan( const usingYarn = options.packageManager === 'yarn'; const packages = _buildPackageList(options, npmDeps, logger); - const npmPackageJsonMap = new Map(); + const registryClient = new RegistryClient(packageManager, logger); const getOrFetchPackageMetadata = async ( packageName: string, - ): Promise => { - let metadata = npmPackageJsonMap.get(packageName); - if (!metadata) { - const raw = await getNpmPackageJson(packageName, logger, { - registry: options.registry, - usingYarn, - verbose: options.verbose, - }); - if (raw.name) { - metadata = raw as NpmRepositoryPackageJson; - npmPackageJsonMap.set(packageName, metadata); - } - } - - return metadata ?? null; + ): Promise => { + return registryClient.getMetadata(packageName); }; if (packages.size === 0) { @@ -772,11 +785,16 @@ export async function resolveUserUpdatePlan( const metadata = await getOrFetchPackageMetadata(name); const spec = packages.get(name); if (metadata && spec) { - const resolvedVersion = resolvePackageVersion(metadata, spec, !!options.next); + const resolvedVersion = await resolvePackageVersion( + registryClient, + metadata, + spec, + !!options.next, + ); if (resolvedVersion) { packages.set(name, resolvedVersion as VersionRange); } - _addPackageGroup(packages, npmDeps, metadata, logger); + await _addPackageGroup(packages, npmDeps, metadata, registryClient, logger); } } } while (packages.size > lastGroupSize); @@ -785,7 +803,12 @@ export async function resolveUserUpdatePlan( const metadata = await getOrFetchPackageMetadata(name); const spec = packages.get(name); if (metadata && spec) { - const resolvedVersion = resolvePackageVersion(metadata, spec, !!options.next); + const resolvedVersion = await resolvePackageVersion( + registryClient, + metadata, + spec, + !!options.next, + ); if (resolvedVersion) { packages.set(name, resolvedVersion as VersionRange); } @@ -794,7 +817,7 @@ export async function resolveUserUpdatePlan( npmDeps, metadata, workspaceRoot, - getOrFetchPackageMetadata, + registryClient, logger, ); } @@ -812,7 +835,14 @@ export async function resolveUserUpdatePlan( if (metadata) { packageInfoMap.set( depName, - _buildPackageInfo(packages, npmDeps, metadata, workspaceRoot, logger), + await _buildPackageInfo( + packages, + npmDeps, + metadata, + workspaceRoot, + registryClient, + logger, + ), ); } else { packageInfoMap.set(depName, _buildLocalPackageInfo(depName, npmDeps, workspaceRoot)); @@ -852,71 +882,77 @@ export async function resolveUserUpdatePlan( packagesToUpdate, migrationsToRun, packageInfoMap, + registryClient, }; } -export function printUpdateUsageMessage( +export async function printUpdateUsageMessage( infoMap: Map, + registryClient: RegistryClient, logger: logging.LoggerApi, next = false, -) { +): Promise { const packageGroups = new Map(); - const packagesToUpdate = [...infoMap.entries()] - .map(([name, info]) => { - const distTags = info.npmPackageJson['dist-tags'] ?? {}; - let tag = next ? (distTags['next'] ? 'next' : 'latest') : 'latest'; - let version = distTags[tag] ?? info.installed.version; - const versions = info.npmPackageJson.versions ?? {}; - let target = versions[version]; - - const versionDiff = semver.diff(info.installed.version, version); + const mappedPackages = []; + + for (const [name, info] of infoMap.entries()) { + const distTags = info.npmPackageJson['dist-tags'] ?? {}; + let tag = next ? (distTags['next'] ? 'next' : 'latest') : 'latest'; + let version = distTags[tag] ?? info.installed.version; + const versions = info.npmPackageJson.versions ?? []; + + const versionDiff = semver.diff(info.installed.version, version); + if ( + versionDiff !== 'patch' && + versionDiff !== 'minor' && + /^@(?:angular|nguniversal)\//.test(name) + ) { + const installedMajorVersion = semver.parse(info.installed.version)?.major; + const toInstallMajorVersion = semver.parse(version)?.major; if ( - versionDiff !== 'patch' && - versionDiff !== 'minor' && - /^@(?:angular|nguniversal)\//.test(name) + installedMajorVersion !== undefined && + toInstallMajorVersion !== undefined && + installedMajorVersion < toInstallMajorVersion - 1 ) { - const installedMajorVersion = semver.parse(info.installed.version)?.major; - const toInstallMajorVersion = semver.parse(version)?.major; - if ( - installedMajorVersion !== undefined && - toInstallMajorVersion !== undefined && - installedMajorVersion < toInstallMajorVersion - 1 - ) { - const nextMajorVersion = `${installedMajorVersion + 1}.`; - const nextMajorVersions = Object.keys(versions) - .filter((v) => v.startsWith(nextMajorVersion)) - .sort((a, b) => (a > b ? -1 : 1)); - - if (nextMajorVersions.length) { - version = nextMajorVersions[0]; - target = versions[version]; - tag = ''; - } + const nextMajorVersion = `${installedMajorVersion + 1}.`; + const nextMajorVersions = versions + .filter((v) => v.startsWith(nextMajorVersion)) + .sort((a, b) => (a > b ? -1 : 1)); + + if (nextMajorVersions.length) { + version = nextMajorVersions[0]; + tag = ''; } } + } - return { - name, - info, - version, - tag, - target, - }; - }) + const target = info.target?.packageJson || (await registryClient.getManifest(name, version)); + + mappedPackages.push({ + name, + info, + version, + tag, + target, + }); + } + + const packagesToUpdate = mappedPackages .filter( ({ info, version, target }) => target?.['ng-update'] && semver.compare(info.installed.version, version) < 0, ) .map(({ name, info, version, tag, target }) => { // Look for packageGroup. - const ngUpdate = target['ng-update']; + const ngUpdate = target?.['ng-update'] as Record | undefined; const packageGroup = ngUpdate?.['packageGroup']; if (packageGroup) { const packageGroupNames = Array.isArray(packageGroup) ? packageGroup : Object.keys(packageGroup); const packageGroupName = - ngUpdate?.['packageGroupName'] || packageGroupNames.find((n) => infoMap.has(n)); + (ngUpdate?.['packageGroupName'] as string | undefined) || + packageGroupNames.find((n) => infoMap.has(n)); if (packageGroupName) { if (packageGroups.has(name)) { diff --git a/packages/angular/cli/src/commands/update/update-resolver_spec.ts b/packages/angular/cli/src/commands/update/update-resolver_spec.ts index 6953b9817906..c23d34ccdef8 100644 --- a/packages/angular/cli/src/commands/update/update-resolver_spec.ts +++ b/packages/angular/cli/src/commands/update/update-resolver_spec.ts @@ -11,7 +11,10 @@ import { existsSync, mkdirSync, mkdtempSync, readFileSync, rmSync, writeFileSync import { tmpdir } from 'node:os'; import * as path from 'node:path'; import * as semver from 'semver'; +import type { PackageManager } from '../../package-managers'; +import { getNpmPackageJson } from '../../utilities/package-metadata'; import { + UpdateResolverOptions, angularMajorCompatGuarantee, applyUpdatePlan, resolveUserUpdatePlan, @@ -47,6 +50,53 @@ describe('UpdateResolver', () => { rmSync(tempRoot, { recursive: true, force: true }); }); + async function resolvePlan(options: UpdateResolverOptions) { + const mockPackageManager = { + name: 'npm', + async getRegistryMetadata(packageName: string) { + try { + const metadata = await getNpmPackageJson(packageName, logger, { + registry: options.registry, + }); + if (!metadata || !metadata.name) { + return null; + } + + return { + name: metadata.name, + 'dist-tags': metadata['dist-tags'] as Record, + versions: Object.keys(metadata.versions || {}), + }; + } catch { + return null; + } + }, + async getRegistryManifest(packageName: string, version: string) { + try { + const metadata = await getNpmPackageJson(packageName, logger, { + registry: options.registry, + }); + const manifestResult = metadata.versions?.[version]; + if (!manifestResult) { + return null; + } + + return { + name: manifestResult.name, + version: manifestResult.version, + dependencies: manifestResult.dependencies, + peerDependencies: manifestResult.peerDependencies, + 'ng-update': manifestResult['ng-update'] as Record | undefined, + }; + } catch { + return null; + } + }, + } as unknown as PackageManager; + + return resolveUserUpdatePlan(options, mockPackageManager, logger); + } + function createMockWorkspace( packageJson: Record, nodeModules: { [name: string]: { version: string; manifest?: Record } } = {}, @@ -70,13 +120,10 @@ describe('UpdateResolver', () => { }, }); - const plan = await resolveUserUpdatePlan( - { - packages: [], - workspaceRoot: tempRoot, - }, - logger, - ); + const plan = await resolvePlan({ + packages: [], + workspaceRoot: tempRoot, + }); expect(plan.packagesToUpdate.size).toBe(0); }); @@ -95,13 +142,10 @@ describe('UpdateResolver', () => { }, ); - const plan = await resolveUserUpdatePlan( - { - packages: ['@angular-devkit-tests/update-base'], - workspaceRoot: tempRoot, - }, - logger, - ); + const plan = await resolvePlan({ + packages: ['@angular-devkit-tests/update-base'], + workspaceRoot: tempRoot, + }); expect(plan.packagesToUpdate.get('@angular-devkit-tests/update-base')).toBe('1.1.0'); }); @@ -125,13 +169,10 @@ describe('UpdateResolver', () => { }, ); - const plan = await resolveUserUpdatePlan( - { - packages: ['@angular/core@^6.0.0'], - workspaceRoot: tempRoot, - }, - logger, - ); + const plan = await resolvePlan({ + packages: ['@angular/core@^6.0.0'], + workspaceRoot: tempRoot, + }); expect(plan.packagesToUpdate.get('@angular/core')?.[0]).toBe('6'); }); @@ -151,13 +192,10 @@ describe('UpdateResolver', () => { }, ); - const plan = await resolveUserUpdatePlan( - { - packages: ['@angular-devkit-tests/update-package-group-1'], - workspaceRoot: tempRoot, - }, - logger, - ); + const plan = await resolvePlan({ + packages: ['@angular-devkit-tests/update-package-group-1'], + workspaceRoot: tempRoot, + }); expect(plan.packagesToUpdate.get('@angular-devkit-tests/update-package-group-1')).toBe('1.2.0'); expect(plan.packagesToUpdate.get('@angular-devkit-tests/update-package-group-2')).toBe('2.0.0'); @@ -182,13 +220,10 @@ describe('UpdateResolver', () => { JSON.stringify({ name: '@angular-devkit-tests/update-base', version: '1.0.0' }, null, 2), ); - const plan = await resolveUserUpdatePlan( - { - packages: ['@angular-devkit-tests/update-base'], - workspaceRoot: tempRoot, - }, - logger, - ); + const plan = await resolvePlan({ + packages: ['@angular-devkit-tests/update-base'], + workspaceRoot: tempRoot, + }); await applyUpdatePlan(tempRoot, plan, logger); @@ -214,13 +249,10 @@ describe('UpdateResolver', () => { JSON.stringify({ name: '@angular-devkit-tests/update-base', version: '1.0.0' }, null, 2), ); - const plan = await resolveUserUpdatePlan( - { - packages: ['@angular-devkit-tests/update-base'], - workspaceRoot: tempRoot, - }, - logger, - ); + const plan = await resolvePlan({ + packages: ['@angular-devkit-tests/update-base'], + workspaceRoot: tempRoot, + }); await applyUpdatePlan(tempRoot, plan, logger); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ea01c8e1f27b..ecc8c5f11603 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -66,7 +66,7 @@ importers: version: 22.1.0-next.0(@angular/core@22.1.0-next.0(@angular/compiler@22.1.0-next.0)(rxjs@7.8.2)(zone.js@0.16.2))(rxjs@7.8.2) '@babel/core': specifier: 7.29.7 - version: 7.29.7 + version: 7.29.7(supports-color@10.2.2) '@bazel/bazelisk': specifier: 1.28.1 version: 1.28.1 @@ -78,13 +78,13 @@ importers: version: 0.28.0 '@eslint/compat': specifier: 2.1.0 - version: 2.1.0(eslint@10.4.1(jiti@2.7.0)) + version: 2.1.0(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2)) '@eslint/eslintrc': specifier: 3.3.5 - version: 3.3.5 + version: 3.3.5(supports-color@10.2.2) '@eslint/js': specifier: 10.0.1 - version: 10.0.1(eslint@10.4.1(jiti@2.7.0)) + version: 10.0.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2)) '@rollup/plugin-alias': specifier: ^6.0.0 version: 6.0.0(rollup@4.61.0) @@ -102,10 +102,10 @@ importers: version: 4.61.0 '@stylistic/eslint-plugin': specifier: ^5.0.0 - version: 5.10.0(eslint@10.4.1(jiti@2.7.0)) + version: 5.10.0(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2)) '@tony.ganchev/eslint-plugin-header': specifier: ~3.4.0 - version: 3.4.4(eslint@10.4.1(jiti@2.7.0)) + version: 3.4.4(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2)) '@types/babel__core': specifier: 7.20.5 version: 7.20.5 @@ -174,10 +174,13 @@ importers: version: 1.1.9 '@typescript-eslint/eslint-plugin': specifier: 8.60.1 - version: 8.60.1(@typescript-eslint/parser@8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3))(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3) + version: 8.60.1(@typescript-eslint/parser@8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3))(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) '@typescript-eslint/parser': specifier: 8.60.1 - version: 8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3) + version: 8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) + '@yarnpkg/lockfile': + specifier: 1.1.0 + version: 1.1.0 ajv: specifier: 8.20.0 version: 8.20.0 @@ -192,16 +195,16 @@ importers: version: 0.28.0 eslint: specifier: 10.4.1 - version: 10.4.1(jiti@2.7.0) + version: 10.4.1(jiti@2.7.0)(supports-color@10.2.2) eslint-config-prettier: specifier: 10.1.8 - version: 10.1.8(eslint@10.4.1(jiti@2.7.0)) + version: 10.1.8(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2)) eslint-plugin-import: specifier: 2.32.0 - version: 2.32.0(@typescript-eslint/parser@8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3))(eslint@10.4.1(jiti@2.7.0)) + version: 2.32.0(@typescript-eslint/parser@8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3))(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2)) express: specifier: 5.2.1 - version: 5.2.1 + version: 5.2.1(supports-color@10.2.2) fast-glob: specifier: 3.3.3 version: 3.3.3 @@ -213,10 +216,13 @@ importers: version: 1.18.1 http-proxy-middleware: specifier: 4.0.0 - version: 4.0.0 + version: 4.0.0(supports-color@10.2.2) husky: specifier: 9.1.7 version: 9.1.7 + ini: + specifier: 7.0.0 + version: 7.0.0 jasmine: specifier: ~6.2.0 version: 6.2.0 @@ -231,19 +237,19 @@ importers: version: 7.0.0 karma: specifier: ~6.4.0 - version: 6.4.4(bufferutil@4.1.0)(utf-8-validate@6.0.6) + version: 6.4.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6) karma-chrome-launcher: specifier: ~3.2.0 version: 3.2.0 karma-coverage: specifier: ~2.2.0 - version: 2.2.1 + version: 2.2.1(supports-color@10.2.2) karma-jasmine: specifier: ~5.1.0 - version: 5.1.0(karma@6.4.4(bufferutil@4.1.0)(utf-8-validate@6.0.6)) + version: 5.1.0(karma@6.4.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6)) karma-jasmine-html-reporter: specifier: ~2.2.0 - version: 2.2.0(jasmine-core@6.2.0)(karma-jasmine@5.1.0(karma@6.4.4(bufferutil@4.1.0)(utf-8-validate@6.0.6)))(karma@6.4.4(bufferutil@4.1.0)(utf-8-validate@6.0.6)) + version: 2.2.0(jasmine-core@6.2.0)(karma-jasmine@5.1.0(karma@6.4.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6)))(karma@6.4.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6)) karma-source-map-support: specifier: 1.4.0 version: 1.4.0 @@ -253,6 +259,9 @@ importers: magic-string: specifier: 0.30.21 version: 0.30.21 + pacote: + specifier: 21.5.0 + version: 21.5.0(supports-color@10.2.2) prettier: specifier: ^3.0.0 version: 3.8.3 @@ -291,10 +300,10 @@ importers: version: 1.10.0 verdaccio: specifier: 6.7.2 - version: 6.7.2(encoding@0.1.13) + version: 6.7.2(encoding@0.1.13)(supports-color@10.2.2) verdaccio-auth-memory: specifier: ^13.0.0 - version: 13.0.2 + version: 13.0.2(supports-color@10.2.2) zone.js: specifier: ^0.16.0 version: 0.16.2 @@ -318,7 +327,7 @@ importers: version: 4.1.8(vitest@4.1.8) browser-sync: specifier: 3.0.4 - version: 3.0.4(bufferutil@4.1.0)(utf-8-validate@6.0.6) + version: 3.0.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6) istanbul-lib-instrument: specifier: 6.0.3 version: 6.0.3 @@ -345,7 +354,7 @@ importers: version: link:../../angular_devkit/architect '@babel/core': specifier: 7.29.7 - version: 7.29.7 + version: 7.29.7(supports-color@10.2.2) '@babel/helper-annotate-as-pure': specifier: 7.29.7 version: 7.29.7 @@ -369,7 +378,7 @@ importers: version: 0.28.0 https-proxy-agent: specifier: 9.0.0 - version: 9.0.0 + version: 9.0.0(supports-color@10.2.2) jsonc-parser: specifier: 3.3.1 version: 3.3.1 @@ -471,15 +480,9 @@ importers: '@schematics/angular': specifier: workspace:0.0.0-PLACEHOLDER version: link:../../schematics/angular - '@yarnpkg/lockfile': - specifier: 1.1.0 - version: 1.1.0 algoliasearch: specifier: 5.53.0 version: 5.53.0 - ini: - specifier: 7.0.0 - version: 7.0.0 jsonc-parser: specifier: 3.3.1 version: 3.3.1 @@ -489,9 +492,6 @@ importers: npm-package-arg: specifier: 14.0.0 version: 14.0.0 - pacote: - specifier: 21.5.0 - version: 21.5.0 parse5-html-rewriting-stream: specifier: 8.0.1 version: 8.0.1 @@ -579,7 +579,7 @@ importers: version: link:../../angular/build '@babel/core': specifier: 7.29.7 - version: 7.29.7 + version: 7.29.7(supports-color@10.2.2) '@babel/generator': specifier: 7.29.7 version: 7.29.7 @@ -597,7 +597,7 @@ importers: version: 7.29.7(@babel/core@7.29.7) '@babel/plugin-transform-runtime': specifier: 7.29.7 - version: 7.29.7(@babel/core@7.29.7) + version: 7.29.7(@babel/core@7.29.7)(supports-color@10.2.2) '@babel/preset-env': specifier: 7.29.7 version: 7.29.7(@babel/core@7.29.7) @@ -633,7 +633,7 @@ importers: version: 0.28.0 http-proxy-middleware: specifier: 4.0.0 - version: 4.0.0 + version: 4.0.0(supports-color@10.2.2) istanbul-lib-instrument: specifier: 6.0.3 version: 6.0.3 @@ -714,7 +714,7 @@ importers: version: 8.0.3(tslib@2.8.1)(webpack@5.107.2(esbuild@0.28.0)(postcss@8.5.15)) webpack-dev-server: specifier: 5.2.4 - version: 5.2.4(bufferutil@4.1.0)(tslib@2.8.1)(utf-8-validate@6.0.6)(webpack@5.107.2(esbuild@0.28.0)(postcss@8.5.15)) + version: 5.2.4(bufferutil@4.1.0)(supports-color@10.2.2)(tslib@2.8.1)(utf-8-validate@6.0.6)(webpack@5.107.2(esbuild@0.28.0)(postcss@8.5.15)) webpack-merge: specifier: 6.0.1 version: 6.0.1 @@ -727,7 +727,7 @@ importers: version: link:../../angular/ssr browser-sync: specifier: 3.0.4 - version: 3.0.4(bufferutil@4.1.0)(utf-8-validate@6.0.6) + version: 3.0.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6) ng-packagr: specifier: 22.1.0-next.1 version: 22.1.0-next.1(@angular/compiler-cli@22.1.0-next.0(@angular/compiler@22.1.0-next.0)(typescript@6.0.3))(tslib@2.8.1)(typescript@6.0.3) @@ -938,7 +938,7 @@ packages: '@angular/animations@22.1.0-next.0': resolution: {integrity: sha512-Gi3BNfHZEfqs9EZrnd9rAiuh8YKfiijs4YJO0mJWWmJULmgaISJVfrOCv1+iqlSy/VnN3cVtHpNtwvqiMyU0Sg==} engines: {node: ^22.22.3 || ^24.15.0 || >=26.0.0} - deprecated: '@angular/animations is deprecated. Use `animate.enter` and `animate.leave` instead.' + deprecated: '@angular/animations is deprecated. Use `animate.enter` and `animate.leave` instead. For more information see: https://v22.angular.dev/guide/animations.' peerDependencies: '@angular/core': 22.1.0-next.0 @@ -8698,7 +8698,7 @@ snapshots: '@angular/compiler-cli@22.1.0-next.0(@angular/compiler@22.1.0-next.0)(typescript@6.0.3)': dependencies: '@angular/compiler': 22.1.0-next.0 - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@jridgewell/sourcemap-codec': 1.5.5 chokidar: 5.0.0 convert-source-map: 1.9.0 @@ -8737,7 +8737,7 @@ snapshots: dependencies: '@angular/compiler': 22.1.0-next.0 '@angular/compiler-cli': 22.1.0-next.0(@angular/compiler@22.1.0-next.0)(typescript@6.0.3) - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@types/babel__core': 7.20.5 tinyglobby: 0.2.17 yargs: 18.0.0 @@ -8874,7 +8874,7 @@ snapshots: '@babel/compat-data@7.29.7': {} - '@babel/core@7.29.7': + '@babel/core@7.29.7(supports-color@10.2.2)': dependencies: '@babel/code-frame': 7.29.7 '@babel/generator': 7.29.7 @@ -8916,7 +8916,7 @@ snapshots: '@babel/helper-create-class-features-plugin@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-annotate-as-pure': 7.29.7 '@babel/helper-member-expression-to-functions': 7.29.7 '@babel/helper-optimise-call-expression': 7.29.7 @@ -8929,14 +8929,14 @@ snapshots: '@babel/helper-create-regexp-features-plugin@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-annotate-as-pure': 7.29.7 regexpu-core: 6.4.0 semver: 6.3.1 - '@babel/helper-define-polyfill-provider@0.6.8(@babel/core@7.29.7)': + '@babel/helper-define-polyfill-provider@0.6.8(@babel/core@7.29.7)(supports-color@10.2.2)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-compilation-targets': 7.29.7 '@babel/helper-plugin-utils': 7.29.7 debug: 4.4.3(supports-color@10.2.2) @@ -8963,7 +8963,7 @@ snapshots: '@babel/helper-module-transforms@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-module-imports': 7.29.7 '@babel/helper-validator-identifier': 7.29.7 '@babel/traverse': 7.29.7 @@ -8978,7 +8978,7 @@ snapshots: '@babel/helper-remap-async-to-generator@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-annotate-as-pure': 7.29.7 '@babel/helper-wrap-function': 7.29.7 '@babel/traverse': 7.29.7 @@ -8987,7 +8987,7 @@ snapshots: '@babel/helper-replace-supers@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-member-expression-to-functions': 7.29.7 '@babel/helper-optimise-call-expression': 7.29.7 '@babel/traverse': 7.29.7 @@ -9030,7 +9030,7 @@ snapshots: '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/traverse': 7.29.7 transitivePeerDependencies: @@ -9038,17 +9038,17 @@ snapshots: '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-bugfix-safari-rest-destructuring-rhs-array@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/helper-skip-transparent-expression-wrappers': 7.29.7 transitivePeerDependencies: @@ -9056,7 +9056,7 @@ snapshots: '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/helper-skip-transparent-expression-wrappers': 7.29.7 '@babel/plugin-transform-optional-chaining': 7.29.7(@babel/core@7.29.7) @@ -9065,7 +9065,7 @@ snapshots: '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/traverse': 7.29.7 transitivePeerDependencies: @@ -9073,32 +9073,32 @@ snapshots: '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/plugin-syntax-import-assertions@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-syntax-import-attributes@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-create-regexp-features-plugin': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-arrow-functions@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-async-generator-functions@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/helper-remap-async-to-generator': 7.29.7(@babel/core@7.29.7) '@babel/traverse': 7.29.7 @@ -9107,7 +9107,7 @@ snapshots: '@babel/plugin-transform-async-to-generator@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-module-imports': 7.29.7 '@babel/helper-plugin-utils': 7.29.7 '@babel/helper-remap-async-to-generator': 7.29.7(@babel/core@7.29.7) @@ -9116,17 +9116,17 @@ snapshots: '@babel/plugin-transform-block-scoped-functions@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-block-scoping@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-class-properties@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-create-class-features-plugin': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 transitivePeerDependencies: @@ -9134,7 +9134,7 @@ snapshots: '@babel/plugin-transform-class-static-block@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-create-class-features-plugin': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 transitivePeerDependencies: @@ -9142,7 +9142,7 @@ snapshots: '@babel/plugin-transform-classes@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-annotate-as-pure': 7.29.7 '@babel/helper-compilation-targets': 7.29.7 '@babel/helper-globals': 7.29.7 @@ -9154,13 +9154,13 @@ snapshots: '@babel/plugin-transform-computed-properties@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/template': 7.29.7 '@babel/plugin-transform-destructuring@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/traverse': 7.29.7 transitivePeerDependencies: @@ -9168,29 +9168,29 @@ snapshots: '@babel/plugin-transform-dotall-regex@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-create-regexp-features-plugin': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-duplicate-keys@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-create-regexp-features-plugin': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-dynamic-import@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-explicit-resource-management@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-destructuring': 7.29.7(@babel/core@7.29.7) transitivePeerDependencies: @@ -9198,17 +9198,17 @@ snapshots: '@babel/plugin-transform-exponentiation-operator@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-export-namespace-from@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-for-of@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/helper-skip-transparent-expression-wrappers': 7.29.7 transitivePeerDependencies: @@ -9216,7 +9216,7 @@ snapshots: '@babel/plugin-transform-function-name@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-compilation-targets': 7.29.7 '@babel/helper-plugin-utils': 7.29.7 '@babel/traverse': 7.29.7 @@ -9225,27 +9225,27 @@ snapshots: '@babel/plugin-transform-json-strings@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-literals@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-logical-assignment-operators@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-member-expression-literals@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-modules-amd@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-module-transforms': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 transitivePeerDependencies: @@ -9253,7 +9253,7 @@ snapshots: '@babel/plugin-transform-modules-commonjs@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-module-transforms': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 transitivePeerDependencies: @@ -9261,7 +9261,7 @@ snapshots: '@babel/plugin-transform-modules-systemjs@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-module-transforms': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 '@babel/helper-validator-identifier': 7.29.7 @@ -9271,7 +9271,7 @@ snapshots: '@babel/plugin-transform-modules-umd@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-module-transforms': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 transitivePeerDependencies: @@ -9279,28 +9279,28 @@ snapshots: '@babel/plugin-transform-named-capturing-groups-regex@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-create-regexp-features-plugin': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-new-target@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-nullish-coalescing-operator@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-numeric-separator@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-object-rest-spread@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-compilation-targets': 7.29.7 '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-destructuring': 7.29.7(@babel/core@7.29.7) @@ -9311,7 +9311,7 @@ snapshots: '@babel/plugin-transform-object-super@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/helper-replace-supers': 7.29.7(@babel/core@7.29.7) transitivePeerDependencies: @@ -9319,12 +9319,12 @@ snapshots: '@babel/plugin-transform-optional-catch-binding@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-optional-chaining@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/helper-skip-transparent-expression-wrappers': 7.29.7 transitivePeerDependencies: @@ -9332,12 +9332,12 @@ snapshots: '@babel/plugin-transform-parameters@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-private-methods@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-create-class-features-plugin': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 transitivePeerDependencies: @@ -9345,7 +9345,7 @@ snapshots: '@babel/plugin-transform-private-property-in-object@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-annotate-as-pure': 7.29.7 '@babel/helper-create-class-features-plugin': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 @@ -9354,31 +9354,31 @@ snapshots: '@babel/plugin-transform-property-literals@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-regenerator@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-regexp-modifiers@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-create-regexp-features-plugin': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-reserved-words@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 - '@babel/plugin-transform-runtime@7.29.7(@babel/core@7.29.7)': + '@babel/plugin-transform-runtime@7.29.7(@babel/core@7.29.7)(supports-color@10.2.2)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-module-imports': 7.29.7 '@babel/helper-plugin-utils': 7.29.7 - babel-plugin-polyfill-corejs2: 0.4.17(@babel/core@7.29.7) + babel-plugin-polyfill-corejs2: 0.4.17(@babel/core@7.29.7)(supports-color@10.2.2) babel-plugin-polyfill-corejs3: 0.13.0(@babel/core@7.29.7) babel-plugin-polyfill-regenerator: 0.6.8(@babel/core@7.29.7) semver: 6.3.1 @@ -9387,12 +9387,12 @@ snapshots: '@babel/plugin-transform-shorthand-properties@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-spread@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/helper-skip-transparent-expression-wrappers': 7.29.7 transitivePeerDependencies: @@ -9400,46 +9400,46 @@ snapshots: '@babel/plugin-transform-sticky-regex@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-template-literals@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-typeof-symbol@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-unicode-escapes@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-unicode-property-regex@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-create-regexp-features-plugin': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-unicode-regex@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-create-regexp-features-plugin': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 '@babel/plugin-transform-unicode-sets-regex@7.29.7(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-create-regexp-features-plugin': 7.29.7(@babel/core@7.29.7) '@babel/helper-plugin-utils': 7.29.7 '@babel/preset-env@7.29.7(@babel/core@7.29.7)': dependencies: '@babel/compat-data': 7.29.7 - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-compilation-targets': 7.29.7 '@babel/helper-plugin-utils': 7.29.7 '@babel/helper-validator-option': 7.29.7 @@ -9505,7 +9505,7 @@ snapshots: '@babel/plugin-transform-unicode-regex': 7.29.7(@babel/core@7.29.7) '@babel/plugin-transform-unicode-sets-regex': 7.29.7(@babel/core@7.29.7) '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.29.7) - babel-plugin-polyfill-corejs2: 0.4.17(@babel/core@7.29.7) + babel-plugin-polyfill-corejs2: 0.4.17(@babel/core@7.29.7)(supports-color@10.2.2) babel-plugin-polyfill-corejs3: 0.14.2(@babel/core@7.29.7) babel-plugin-polyfill-regenerator: 0.6.8(@babel/core@7.29.7) core-js-compat: 3.49.0 @@ -9515,7 +9515,7 @@ snapshots: '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.29.7)': dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/helper-plugin-utils': 7.29.7 '@babel/types': 7.29.7 esutils: 2.0.3 @@ -9787,20 +9787,20 @@ snapshots: '@esbuild/win32-x64@0.28.0': optional: true - '@eslint-community/eslint-utils@4.9.1(eslint@10.4.1(jiti@2.7.0))': + '@eslint-community/eslint-utils@4.9.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))': dependencies: - eslint: 10.4.1(jiti@2.7.0) + eslint: 10.4.1(jiti@2.7.0)(supports-color@10.2.2) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.2': {} - '@eslint/compat@2.1.0(eslint@10.4.1(jiti@2.7.0))': + '@eslint/compat@2.1.0(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))': dependencies: '@eslint/core': 1.2.1 optionalDependencies: - eslint: 10.4.1(jiti@2.7.0) + eslint: 10.4.1(jiti@2.7.0)(supports-color@10.2.2) - '@eslint/config-array@0.23.5': + '@eslint/config-array@0.23.5(supports-color@10.2.2)': dependencies: '@eslint/object-schema': 3.0.5 debug: 4.4.3(supports-color@10.2.2) @@ -9816,7 +9816,7 @@ snapshots: dependencies: '@types/json-schema': 7.0.15 - '@eslint/eslintrc@3.3.5': + '@eslint/eslintrc@3.3.5(supports-color@10.2.2)': dependencies: ajv: 6.15.0 debug: 4.4.3(supports-color@10.2.2) @@ -9830,9 +9830,9 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@10.0.1(eslint@10.4.1(jiti@2.7.0))': + '@eslint/js@10.0.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))': optionalDependencies: - eslint: 10.4.1(jiti@2.7.0) + eslint: 10.4.1(jiti@2.7.0)(supports-color@10.2.2) '@eslint/object-schema@3.0.5': {} @@ -10616,8 +10616,8 @@ snapshots: cross-spawn: 7.0.6 eventsource: 3.0.7 eventsource-parser: 3.1.0 - express: 5.2.1 - express-rate-limit: 8.5.2(express@5.2.1) + express: 5.2.1(supports-color@10.2.2) + express-rate-limit: 8.5.2(express@5.2.1(supports-color@10.2.2)) hono: 4.12.23 jose: 6.2.3 json-schema-typed: 8.0.2 @@ -11347,10 +11347,10 @@ snapshots: transitivePeerDependencies: - supports-color - '@sigstore/tuf@4.0.2': + '@sigstore/tuf@4.0.2(supports-color@10.2.2)': dependencies: '@sigstore/protobuf-specs': 0.5.1 - tuf-js: 4.1.0 + tuf-js: 4.1.0(supports-color@10.2.2) transitivePeerDependencies: - supports-color @@ -11372,11 +11372,11 @@ snapshots: '@standard-schema/spec@1.1.0': {} - '@stylistic/eslint-plugin@5.10.0(eslint@10.4.1(jiti@2.7.0))': + '@stylistic/eslint-plugin@5.10.0(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.4.1(jiti@2.7.0)) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2)) '@typescript-eslint/types': 8.60.1 - eslint: 10.4.1(jiti@2.7.0) + eslint: 10.4.1(jiti@2.7.0)(supports-color@10.2.2) eslint-visitor-keys: 4.2.1 espree: 10.4.0 estraverse: 5.3.0 @@ -11386,9 +11386,9 @@ snapshots: dependencies: defer-to-connect: 2.0.1 - '@tony.ganchev/eslint-plugin-header@3.4.4(eslint@10.4.1(jiti@2.7.0))': + '@tony.ganchev/eslint-plugin-header@3.4.4(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))': dependencies: - eslint: 10.4.1(jiti@2.7.0) + eslint: 10.4.1(jiti@2.7.0)(supports-color@10.2.2) '@tufjs/canonical-json@2.0.0': {} @@ -11684,15 +11684,15 @@ snapshots: '@types/yarnpkg__lockfile@1.1.9': {} - '@typescript-eslint/eslint-plugin@8.60.1(@typescript-eslint/parser@8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3))(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3)': + '@typescript-eslint/eslint-plugin@8.60.1(@typescript-eslint/parser@8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3))(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/parser': 8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) '@typescript-eslint/scope-manager': 8.60.1 - '@typescript-eslint/type-utils': 8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3) - '@typescript-eslint/utils': 8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/type-utils': 8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) + '@typescript-eslint/utils': 8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(typescript@6.0.3) '@typescript-eslint/visitor-keys': 8.60.1 - eslint: 10.4.1(jiti@2.7.0) + eslint: 10.4.1(jiti@2.7.0)(supports-color@10.2.2) ignore: 7.0.5 natural-compare: 1.4.0 ts-api-utils: 2.5.0(typescript@6.0.3) @@ -11700,19 +11700,19 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3)': + '@typescript-eslint/parser@8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3)': dependencies: '@typescript-eslint/scope-manager': 8.60.1 '@typescript-eslint/types': 8.60.1 - '@typescript-eslint/typescript-estree': 8.60.1(typescript@6.0.3) + '@typescript-eslint/typescript-estree': 8.60.1(supports-color@10.2.2)(typescript@6.0.3) '@typescript-eslint/visitor-keys': 8.60.1 debug: 4.4.3(supports-color@10.2.2) - eslint: 10.4.1(jiti@2.7.0) + eslint: 10.4.1(jiti@2.7.0)(supports-color@10.2.2) typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/project-service@8.60.1(typescript@6.0.3)': + '@typescript-eslint/project-service@8.60.1(supports-color@10.2.2)(typescript@6.0.3)': dependencies: '@typescript-eslint/tsconfig-utils': 8.60.1(typescript@6.0.3) '@typescript-eslint/types': 8.60.1 @@ -11730,13 +11730,13 @@ snapshots: dependencies: typescript: 6.0.3 - '@typescript-eslint/type-utils@8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3)': + '@typescript-eslint/type-utils@8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3)': dependencies: '@typescript-eslint/types': 8.60.1 - '@typescript-eslint/typescript-estree': 8.60.1(typescript@6.0.3) - '@typescript-eslint/utils': 8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/typescript-estree': 8.60.1(supports-color@10.2.2)(typescript@6.0.3) + '@typescript-eslint/utils': 8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(typescript@6.0.3) debug: 4.4.3(supports-color@10.2.2) - eslint: 10.4.1(jiti@2.7.0) + eslint: 10.4.1(jiti@2.7.0)(supports-color@10.2.2) ts-api-utils: 2.5.0(typescript@6.0.3) typescript: 6.0.3 transitivePeerDependencies: @@ -11744,9 +11744,9 @@ snapshots: '@typescript-eslint/types@8.60.1': {} - '@typescript-eslint/typescript-estree@8.60.1(typescript@6.0.3)': + '@typescript-eslint/typescript-estree@8.60.1(supports-color@10.2.2)(typescript@6.0.3)': dependencies: - '@typescript-eslint/project-service': 8.60.1(typescript@6.0.3) + '@typescript-eslint/project-service': 8.60.1(supports-color@10.2.2)(typescript@6.0.3) '@typescript-eslint/tsconfig-utils': 8.60.1(typescript@6.0.3) '@typescript-eslint/types': 8.60.1 '@typescript-eslint/visitor-keys': 8.60.1 @@ -11759,13 +11759,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3)': + '@typescript-eslint/utils@8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(typescript@6.0.3)': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.4.1(jiti@2.7.0)) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2)) '@typescript-eslint/scope-manager': 8.60.1 '@typescript-eslint/types': 8.60.1 - '@typescript-eslint/typescript-estree': 8.60.1(typescript@6.0.3) - eslint: 10.4.1(jiti@2.7.0) + '@typescript-eslint/typescript-estree': 8.60.1(supports-color@10.2.2)(typescript@6.0.3) + eslint: 10.4.1(jiti@2.7.0)(supports-color@10.2.2) typescript: 6.0.3 transitivePeerDependencies: - supports-color @@ -11775,7 +11775,7 @@ snapshots: '@typescript-eslint/types': 8.60.1 eslint-visitor-keys: 5.0.1 - '@verdaccio/auth@8.0.2': + '@verdaccio/auth@8.0.2(supports-color@10.2.2)': dependencies: '@verdaccio/config': 8.1.1 '@verdaccio/core': 8.1.1 @@ -11809,7 +11809,7 @@ snapshots: dependencies: lockfile: 1.0.4 - '@verdaccio/hooks@8.0.2': + '@verdaccio/hooks@8.0.2(supports-color@10.2.2)': dependencies: '@verdaccio/core': 8.1.1 '@verdaccio/logger': 8.0.2 @@ -11827,7 +11827,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@verdaccio/local-storage-legacy@11.3.3': + '@verdaccio/local-storage-legacy@11.3.3(supports-color@10.2.2)': dependencies: '@verdaccio/core': 8.1.1 '@verdaccio/file-locking': 13.0.1 @@ -11866,11 +11866,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@verdaccio/middleware@8.0.2': + '@verdaccio/middleware@8.0.2(supports-color@10.2.2)': dependencies: '@verdaccio/config': 8.1.1 '@verdaccio/core': 8.1.1 - '@verdaccio/url': 13.0.2 + '@verdaccio/url': 13.0.2(supports-color@10.2.2) debug: 4.4.3(supports-color@10.2.2) express: 4.22.1 express-rate-limit: 5.5.1 @@ -11879,7 +11879,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@verdaccio/package-filter@13.0.2': + '@verdaccio/package-filter@13.0.2(supports-color@10.2.2)': dependencies: '@verdaccio/core': 8.1.1 debug: 4.4.3(supports-color@10.2.2) @@ -11887,7 +11887,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@verdaccio/search-indexer@8.0.2': + '@verdaccio/search-indexer@8.0.2(supports-color@10.2.2)': dependencies: debug: 4.4.3(supports-color@10.2.2) fuse.js: 7.3.0 @@ -11905,10 +11905,10 @@ snapshots: '@verdaccio/streams@10.2.5': {} - '@verdaccio/tarball@13.0.2': + '@verdaccio/tarball@13.0.2(supports-color@10.2.2)': dependencies: '@verdaccio/core': 8.1.1 - '@verdaccio/url': 13.0.2 + '@verdaccio/url': 13.0.2(supports-color@10.2.2) debug: 4.4.3(supports-color@10.2.2) gunzip-maybe: 1.4.2 tar-stream: 3.1.7 @@ -11917,13 +11917,13 @@ snapshots: - react-native-b4a - supports-color - '@verdaccio/ui-theme@9.0.0-next-9.14': + '@verdaccio/ui-theme@9.0.0-next-9.14(supports-color@10.2.2)': dependencies: debug: 4.4.3(supports-color@10.2.2) transitivePeerDependencies: - supports-color - '@verdaccio/url@13.0.2': + '@verdaccio/url@13.0.2(supports-color@10.2.2)': dependencies: '@verdaccio/core': 8.1.1 debug: 4.4.3(supports-color@10.2.2) @@ -12116,7 +12116,7 @@ snapshots: loader-utils: 2.0.4 regex-parser: 2.3.1 - agent-base@6.0.2: + agent-base@6.0.2(supports-color@10.2.2): dependencies: debug: 4.4.3(supports-color@10.2.2) transitivePeerDependencies: @@ -12319,40 +12319,40 @@ snapshots: babel-loader@10.1.1(@babel/core@7.29.7)(webpack@5.107.2(esbuild@0.28.0)(postcss@8.5.15)): dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) find-up: 5.0.0 optionalDependencies: webpack: 5.107.2(esbuild@0.28.0)(postcss@8.5.15) - babel-plugin-polyfill-corejs2@0.4.17(@babel/core@7.29.7): + babel-plugin-polyfill-corejs2@0.4.17(@babel/core@7.29.7)(supports-color@10.2.2): dependencies: '@babel/compat-data': 7.29.7 - '@babel/core': 7.29.7 - '@babel/helper-define-polyfill-provider': 0.6.8(@babel/core@7.29.7) + '@babel/core': 7.29.7(supports-color@10.2.2) + '@babel/helper-define-polyfill-provider': 0.6.8(@babel/core@7.29.7)(supports-color@10.2.2) semver: 6.3.1 transitivePeerDependencies: - supports-color babel-plugin-polyfill-corejs3@0.13.0(@babel/core@7.29.7): dependencies: - '@babel/core': 7.29.7 - '@babel/helper-define-polyfill-provider': 0.6.8(@babel/core@7.29.7) + '@babel/core': 7.29.7(supports-color@10.2.2) + '@babel/helper-define-polyfill-provider': 0.6.8(@babel/core@7.29.7)(supports-color@10.2.2) core-js-compat: 3.49.0 transitivePeerDependencies: - supports-color babel-plugin-polyfill-corejs3@0.14.2(@babel/core@7.29.7): dependencies: - '@babel/core': 7.29.7 - '@babel/helper-define-polyfill-provider': 0.6.8(@babel/core@7.29.7) + '@babel/core': 7.29.7(supports-color@10.2.2) + '@babel/helper-define-polyfill-provider': 0.6.8(@babel/core@7.29.7)(supports-color@10.2.2) core-js-compat: 3.49.0 transitivePeerDependencies: - supports-color babel-plugin-polyfill-regenerator@0.6.8(@babel/core@7.29.7): dependencies: - '@babel/core': 7.29.7 - '@babel/helper-define-polyfill-provider': 0.6.8(@babel/core@7.29.7) + '@babel/core': 7.29.7(supports-color@10.2.2) + '@babel/helper-define-polyfill-provider': 0.6.8(@babel/core@7.29.7)(supports-color@10.2.2) transitivePeerDependencies: - supports-color @@ -12449,7 +12449,7 @@ snapshots: transitivePeerDependencies: - supports-color - body-parser@2.2.2: + body-parser@2.2.2(supports-color@10.2.2): dependencies: bytes: 3.1.2 content-type: 1.0.5 @@ -12495,24 +12495,24 @@ snapshots: fresh: 0.5.2 mitt: 1.2.0 - browser-sync-ui@3.0.4(bufferutil@4.1.0)(utf-8-validate@6.0.6): + browser-sync-ui@3.0.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6): dependencies: async-each-series: 0.1.1 chalk: 4.1.2 connect-history-api-fallback: 1.6.0 immutable: 3.8.3 server-destroy: 1.0.1 - socket.io-client: 4.8.3(bufferutil@4.1.0)(utf-8-validate@6.0.6) + socket.io-client: 4.8.3(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6) stream-throttle: 0.1.3 transitivePeerDependencies: - bufferutil - supports-color - utf-8-validate - browser-sync@3.0.4(bufferutil@4.1.0)(utf-8-validate@6.0.6): + browser-sync@3.0.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6): dependencies: browser-sync-client: 3.0.4 - browser-sync-ui: 3.0.4(bufferutil@4.1.0)(utf-8-validate@6.0.6) + browser-sync-ui: 3.0.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6) bs-recipes: 1.3.4 chalk: 4.1.2 chokidar: 3.6.0 @@ -12536,7 +12536,7 @@ snapshots: serve-index: 1.9.2 serve-static: 1.16.3 server-destroy: 1.0.1 - socket.io: 4.8.3(bufferutil@4.1.0)(utf-8-validate@6.0.6) + socket.io: 4.8.3(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6) ua-parser-js: 1.0.41 yargs: 17.7.2 transitivePeerDependencies: @@ -13107,7 +13107,7 @@ snapshots: dependencies: once: 1.4.0 - engine.io-client@6.6.5(bufferutil@4.1.0)(utf-8-validate@6.0.6): + engine.io-client@6.6.5(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6): dependencies: '@socket.io/component-emitter': 3.1.2 debug: 4.4.3(supports-color@10.2.2) @@ -13121,7 +13121,7 @@ snapshots: engine.io-parser@5.2.3: {} - engine.io@6.6.8(bufferutil@4.1.0)(utf-8-validate@6.0.6): + engine.io@6.6.8(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6): dependencies: '@types/cors': 2.8.19 '@types/node': 22.19.20 @@ -13321,9 +13321,9 @@ snapshots: escape-string-regexp@4.0.0: {} - eslint-config-prettier@10.1.8(eslint@10.4.1(jiti@2.7.0)): + eslint-config-prettier@10.1.8(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2)): dependencies: - eslint: 10.4.1(jiti@2.7.0) + eslint: 10.4.1(jiti@2.7.0)(supports-color@10.2.2) eslint-import-resolver-node@0.3.10: dependencies: @@ -13333,17 +13333,17 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-module-utils@2.13.0(@typescript-eslint/parser@8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.4.1(jiti@2.7.0)): + eslint-module-utils@2.13.0(@typescript-eslint/parser@8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2)): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3) - eslint: 10.4.1(jiti@2.7.0) + '@typescript-eslint/parser': 8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) + eslint: 10.4.1(jiti@2.7.0)(supports-color@10.2.2) eslint-import-resolver-node: 0.3.10 transitivePeerDependencies: - supports-color - eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3))(eslint@10.4.1(jiti@2.7.0)): + eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3))(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2)): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.9 @@ -13352,9 +13352,9 @@ snapshots: array.prototype.flatmap: 1.3.3 debug: 3.2.7 doctrine: 2.1.0 - eslint: 10.4.1(jiti@2.7.0) + eslint: 10.4.1(jiti@2.7.0)(supports-color@10.2.2) eslint-import-resolver-node: 0.3.10 - eslint-module-utils: 2.13.0(@typescript-eslint/parser@8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.4.1(jiti@2.7.0)) + eslint-module-utils: 2.13.0(@typescript-eslint/parser@8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3))(eslint-import-resolver-node@0.3.10)(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2)) hasown: 2.0.4 is-core-module: 2.16.2 is-glob: 4.0.3 @@ -13366,7 +13366,7 @@ snapshots: string.prototype.trimend: 1.0.10 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 8.60.1(eslint@10.4.1(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/parser': 8.60.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2))(supports-color@10.2.2)(typescript@6.0.3) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack @@ -13390,11 +13390,11 @@ snapshots: eslint-visitor-keys@5.0.1: {} - eslint@10.4.1(jiti@2.7.0): + eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.4.1(jiti@2.7.0)) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.4.1(jiti@2.7.0)(supports-color@10.2.2)) '@eslint-community/regexpp': 4.12.2 - '@eslint/config-array': 0.23.5 + '@eslint/config-array': 0.23.5(supports-color@10.2.2) '@eslint/config-helpers': 0.6.0 '@eslint/core': 1.2.1 '@eslint/plugin-kit': 0.7.2 @@ -13489,9 +13489,9 @@ snapshots: express-rate-limit@5.5.1: {} - express-rate-limit@8.5.2(express@5.2.1): + express-rate-limit@8.5.2(express@5.2.1(supports-color@10.2.2)): dependencies: - express: 5.2.1 + express: 5.2.1(supports-color@10.2.2) ip-address: 10.2.0 express@4.22.1: @@ -13566,10 +13566,10 @@ snapshots: transitivePeerDependencies: - supports-color - express@5.2.1: + express@5.2.1(supports-color@10.2.2): dependencies: accepts: 2.0.0 - body-parser: 2.2.2 + body-parser: 2.2.2(supports-color@10.2.2) content-disposition: 1.1.0 content-type: 1.0.5 cookie: 0.7.2 @@ -13579,7 +13579,7 @@ snapshots: encodeurl: 2.0.0 escape-html: 1.0.3 etag: 1.8.1 - finalhandler: 2.1.1 + finalhandler: 2.1.1(supports-color@10.2.2) fresh: 2.0.0 http-errors: 2.0.1 merge-descriptors: 2.0.0 @@ -13590,8 +13590,8 @@ snapshots: proxy-addr: 2.0.7 qs: 6.15.2 range-parser: 1.2.1 - router: 2.2.0 - send: 1.2.1 + router: 2.2.0(supports-color@10.2.2) + send: 1.2.1(supports-color@10.2.2) serve-static: 2.2.1 statuses: 2.0.2 type-is: 2.1.0 @@ -13692,7 +13692,7 @@ snapshots: transitivePeerDependencies: - supports-color - finalhandler@2.1.1: + finalhandler@2.1.1(supports-color@10.2.2): dependencies: debug: 4.4.3(supports-color@10.2.2) encodeurl: 2.0.0 @@ -14164,7 +14164,7 @@ snapshots: transitivePeerDependencies: - debug - http-proxy-middleware@4.0.0: + http-proxy-middleware@4.0.0(supports-color@10.2.2): dependencies: debug: 4.4.3(supports-color@10.2.2) httpxy: 0.5.3 @@ -14195,9 +14195,9 @@ snapshots: quick-lru: 5.1.1 resolve-alpn: 1.2.1 - https-proxy-agent@5.0.1: + https-proxy-agent@5.0.1(supports-color@10.2.2): dependencies: - agent-base: 6.0.2 + agent-base: 6.0.2(supports-color@10.2.2) debug: 4.4.3(supports-color@10.2.2) transitivePeerDependencies: - supports-color @@ -14209,7 +14209,7 @@ snapshots: transitivePeerDependencies: - supports-color - https-proxy-agent@9.0.0: + https-proxy-agent@9.0.0(supports-color@10.2.2): dependencies: agent-base: 9.0.0 debug: 4.4.3(supports-color@10.2.2) @@ -14489,7 +14489,7 @@ snapshots: istanbul-lib-instrument@5.2.1: dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/parser': 7.29.7 '@istanbuljs/schema': 0.1.6 istanbul-lib-coverage: 3.2.2 @@ -14499,7 +14499,7 @@ snapshots: istanbul-lib-instrument@6.0.3: dependencies: - '@babel/core': 7.29.7 + '@babel/core': 7.29.7(supports-color@10.2.2) '@babel/parser': 7.29.7 '@istanbuljs/schema': 0.1.6 istanbul-lib-coverage: 3.2.2 @@ -14513,7 +14513,7 @@ snapshots: make-dir: 4.0.0 supports-color: 7.2.0 - istanbul-lib-source-maps@4.0.1: + istanbul-lib-source-maps@4.0.1(supports-color@10.2.2): dependencies: debug: 4.4.3(supports-color@10.2.2) istanbul-lib-coverage: 3.2.2 @@ -14682,33 +14682,33 @@ snapshots: dependencies: which: 1.3.1 - karma-coverage@2.2.1: + karma-coverage@2.2.1(supports-color@10.2.2): dependencies: istanbul-lib-coverage: 3.2.2 istanbul-lib-instrument: 5.2.1 istanbul-lib-report: 3.0.1 - istanbul-lib-source-maps: 4.0.1 + istanbul-lib-source-maps: 4.0.1(supports-color@10.2.2) istanbul-reports: 3.2.0 minimatch: 3.1.5 transitivePeerDependencies: - supports-color - karma-jasmine-html-reporter@2.2.0(jasmine-core@6.2.0)(karma-jasmine@5.1.0(karma@6.4.4(bufferutil@4.1.0)(utf-8-validate@6.0.6)))(karma@6.4.4(bufferutil@4.1.0)(utf-8-validate@6.0.6)): + karma-jasmine-html-reporter@2.2.0(jasmine-core@6.2.0)(karma-jasmine@5.1.0(karma@6.4.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6)))(karma@6.4.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6)): dependencies: jasmine-core: 6.2.0 - karma: 6.4.4(bufferutil@4.1.0)(utf-8-validate@6.0.6) - karma-jasmine: 5.1.0(karma@6.4.4(bufferutil@4.1.0)(utf-8-validate@6.0.6)) + karma: 6.4.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6) + karma-jasmine: 5.1.0(karma@6.4.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6)) - karma-jasmine@5.1.0(karma@6.4.4(bufferutil@4.1.0)(utf-8-validate@6.0.6)): + karma-jasmine@5.1.0(karma@6.4.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6)): dependencies: jasmine-core: 4.6.1 - karma: 6.4.4(bufferutil@4.1.0)(utf-8-validate@6.0.6) + karma: 6.4.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6) karma-source-map-support@1.4.0: dependencies: source-map-support: 0.5.21 - karma@6.4.4(bufferutil@4.1.0)(utf-8-validate@6.0.6): + karma@6.4.4(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6): dependencies: '@colors/colors': 1.5.0 body-parser: 1.20.5 @@ -14729,7 +14729,7 @@ snapshots: qjobs: 1.2.0 range-parser: 1.2.1 rimraf: 3.0.2 - socket.io: 4.8.3(bufferutil@4.1.0)(utf-8-validate@6.0.6) + socket.io: 4.8.3(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6) source-map: 0.6.1 tmp: 0.2.7 ua-parser-js: 0.7.41 @@ -15437,7 +15437,7 @@ snapshots: package-json-from-dist@1.0.1: {} - pacote@21.5.0: + pacote@21.5.0(supports-color@10.2.2): dependencies: '@gar/promise-retry': 1.0.3 '@npmcli/git': 7.0.2 @@ -15453,7 +15453,7 @@ snapshots: npm-pick-manifest: 11.0.3 npm-registry-fetch: 19.1.1 proc-log: 6.1.0 - sigstore: 4.1.1 + sigstore: 4.1.1(supports-color@10.2.2) ssri: 13.0.1 tar: 7.5.16 transitivePeerDependencies: @@ -16026,7 +16026,7 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.61.0 fsevents: 2.3.3 - router@2.2.0: + router@2.2.0(supports-color@10.2.2): dependencies: debug: 4.4.3(supports-color@10.2.2) depd: 2.0.0 @@ -16142,7 +16142,7 @@ snapshots: transitivePeerDependencies: - supports-color - send@1.2.1: + send@1.2.1(supports-color@10.2.2): dependencies: debug: 4.4.3(supports-color@10.2.2) encodeurl: 2.0.0 @@ -16186,7 +16186,7 @@ snapshots: encodeurl: 2.0.0 escape-html: 1.0.3 parseurl: 1.3.3 - send: 1.2.1 + send: 1.2.1(supports-color@10.2.2) transitivePeerDependencies: - supports-color @@ -16262,13 +16262,13 @@ snapshots: signal-exit@4.1.0: {} - sigstore@4.1.1: + sigstore@4.1.1(supports-color@10.2.2): dependencies: '@sigstore/bundle': 4.0.0 '@sigstore/core': 3.2.1 '@sigstore/protobuf-specs': 0.5.1 '@sigstore/sign': 4.1.1 - '@sigstore/tuf': 4.0.2 + '@sigstore/tuf': 4.0.2(supports-color@10.2.2) '@sigstore/verify': 3.1.1 transitivePeerDependencies: - supports-color @@ -16287,7 +16287,7 @@ snapshots: smart-buffer@4.2.0: {} - socket.io-adapter@2.5.7(bufferutil@4.1.0)(utf-8-validate@6.0.6): + socket.io-adapter@2.5.7(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6): dependencies: debug: 4.4.3(supports-color@10.2.2) ws: 8.20.1(bufferutil@4.1.0)(utf-8-validate@6.0.6) @@ -16296,33 +16296,33 @@ snapshots: - supports-color - utf-8-validate - socket.io-client@4.8.3(bufferutil@4.1.0)(utf-8-validate@6.0.6): + socket.io-client@4.8.3(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6): dependencies: '@socket.io/component-emitter': 3.1.2 debug: 4.4.3(supports-color@10.2.2) - engine.io-client: 6.6.5(bufferutil@4.1.0)(utf-8-validate@6.0.6) - socket.io-parser: 4.2.6 + engine.io-client: 6.6.5(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6) + socket.io-parser: 4.2.6(supports-color@10.2.2) transitivePeerDependencies: - bufferutil - supports-color - utf-8-validate - socket.io-parser@4.2.6: + socket.io-parser@4.2.6(supports-color@10.2.2): dependencies: '@socket.io/component-emitter': 3.1.2 debug: 4.4.3(supports-color@10.2.2) transitivePeerDependencies: - supports-color - socket.io@4.8.3(bufferutil@4.1.0)(utf-8-validate@6.0.6): + socket.io@4.8.3(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6): dependencies: accepts: 1.3.8 base64id: 2.0.0 cors: 2.8.6 debug: 4.4.3(supports-color@10.2.2) - engine.io: 6.6.8(bufferutil@4.1.0)(utf-8-validate@6.0.6) - socket.io-adapter: 2.5.7(bufferutil@4.1.0)(utf-8-validate@6.0.6) - socket.io-parser: 4.2.6 + engine.io: 6.6.8(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6) + socket.io-adapter: 2.5.7(bufferutil@4.1.0)(supports-color@10.2.2)(utf-8-validate@6.0.6) + socket.io-parser: 4.2.6(supports-color@10.2.2) transitivePeerDependencies: - bufferutil - supports-color @@ -16390,7 +16390,7 @@ snapshots: spdx-license-ids@3.0.23: {} - spdy-transport@3.0.0: + spdy-transport@3.0.0(supports-color@10.2.2): dependencies: debug: 4.4.3(supports-color@10.2.2) detect-node: 2.1.0 @@ -16401,13 +16401,13 @@ snapshots: transitivePeerDependencies: - supports-color - spdy@4.0.2: + spdy@4.0.2(supports-color@10.2.2): dependencies: debug: 4.4.3(supports-color@10.2.2) handle-thing: 2.0.1 http-deceiver: 1.2.7 select-hose: 2.0.0 - spdy-transport: 3.0.0 + spdy-transport: 3.0.0(supports-color@10.2.2) transitivePeerDependencies: - supports-color @@ -16761,7 +16761,7 @@ snapshots: dependencies: tslib: 1.14.1 - tuf-js@4.1.0: + tuf-js@4.1.0(supports-color@10.2.2): dependencies: '@tufjs/models': 4.1.0 debug: 4.4.3(supports-color@10.2.2) @@ -16930,18 +16930,18 @@ snapshots: vary@1.1.2: {} - verdaccio-audit@13.0.2(encoding@0.1.13): + verdaccio-audit@13.0.2(encoding@0.1.13)(supports-color@10.2.2): dependencies: '@verdaccio/config': 8.1.1 '@verdaccio/core': 8.1.1 express: 4.22.1 - https-proxy-agent: 5.0.1 + https-proxy-agent: 5.0.1(supports-color@10.2.2) node-fetch: 2.6.7(encoding@0.1.13) transitivePeerDependencies: - encoding - supports-color - verdaccio-auth-memory@13.0.2: + verdaccio-auth-memory@13.0.2(supports-color@10.2.2): dependencies: '@verdaccio/core': 8.1.1 debug: 4.4.3(supports-color@10.2.2) @@ -16960,24 +16960,24 @@ snapshots: transitivePeerDependencies: - supports-color - verdaccio@6.7.2(encoding@0.1.13): + verdaccio@6.7.2(encoding@0.1.13)(supports-color@10.2.2): dependencies: '@cypress/request': 3.0.10 - '@verdaccio/auth': 8.0.2 + '@verdaccio/auth': 8.0.2(supports-color@10.2.2) '@verdaccio/config': 8.1.1 '@verdaccio/core': 8.1.1 - '@verdaccio/hooks': 8.0.2 + '@verdaccio/hooks': 8.0.2(supports-color@10.2.2) '@verdaccio/loaders': 8.0.2 - '@verdaccio/local-storage-legacy': 11.3.3 + '@verdaccio/local-storage-legacy': 11.3.3(supports-color@10.2.2) '@verdaccio/logger': 8.0.2 - '@verdaccio/middleware': 8.0.2 - '@verdaccio/package-filter': 13.0.2 - '@verdaccio/search-indexer': 8.0.2 + '@verdaccio/middleware': 8.0.2(supports-color@10.2.2) + '@verdaccio/package-filter': 13.0.2(supports-color@10.2.2) + '@verdaccio/search-indexer': 8.0.2(supports-color@10.2.2) '@verdaccio/signature': 8.0.2 '@verdaccio/streams': 10.2.5 - '@verdaccio/tarball': 13.0.2 - '@verdaccio/ui-theme': 9.0.0-next-9.14 - '@verdaccio/url': 13.0.2 + '@verdaccio/tarball': 13.0.2(supports-color@10.2.2) + '@verdaccio/ui-theme': 9.0.0-next-9.14(supports-color@10.2.2) + '@verdaccio/url': 13.0.2(supports-color@10.2.2) '@verdaccio/utils': 8.1.2 JSONStream: 1.3.5 async: 3.2.6 @@ -16991,7 +16991,7 @@ snapshots: lru-cache: 7.18.3 mime: 3.0.0 semver: 7.8.0 - verdaccio-audit: 13.0.2(encoding@0.1.13) + verdaccio-audit: 13.0.2(encoding@0.1.13)(supports-color@10.2.2) verdaccio-htpasswd: 13.0.2 transitivePeerDependencies: - bare-abort-controller @@ -17129,7 +17129,7 @@ snapshots: transitivePeerDependencies: - tslib - webpack-dev-server@5.2.4(bufferutil@4.1.0)(tslib@2.8.1)(utf-8-validate@6.0.6)(webpack@5.107.2(esbuild@0.28.0)(postcss@8.5.15)): + webpack-dev-server@5.2.4(bufferutil@4.1.0)(supports-color@10.2.2)(tslib@2.8.1)(utf-8-validate@6.0.6)(webpack@5.107.2(esbuild@0.28.0)(postcss@8.5.15)): dependencies: '@types/bonjour': 3.5.13 '@types/connect-history-api-fallback': 1.5.4 @@ -17156,7 +17156,7 @@ snapshots: selfsigned: 5.5.0 serve-index: 1.9.2 sockjs: 0.3.24 - spdy: 4.0.2 + spdy: 4.0.2(supports-color@10.2.2) webpack-dev-middleware: 7.4.5(tslib@2.8.1)(webpack@5.107.2(esbuild@0.28.0)(postcss@8.5.15)) ws: 8.21.0(bufferutil@4.1.0)(utf-8-validate@6.0.6) optionalDependencies: @@ -17195,7 +17195,7 @@ snapshots: selfsigned: 5.5.0 serve-index: 1.9.2 sockjs: 0.3.24 - spdy: 4.0.2 + spdy: 4.0.2(supports-color@10.2.2) webpack-dev-middleware: 7.4.5(tslib@2.8.1)(webpack@5.107.2(esbuild@0.28.0)) ws: 8.21.0(bufferutil@4.1.0)(utf-8-validate@6.0.6) optionalDependencies: