chore(deps): update npm dependencies and clean up pnpm overrides (#12592)

# Which Problems Are Solved

Several dependencies across the workspace had fallen behind their latest
patch releases, and the override list in pnpm-workspace.yaml had
drifted: many of the 28 entries were no longer needed because the
dependency tree had already moved past them, while a few enforced
outdated version floors.

# How the Problems Are Solved

Direct dependencies were updated where newer patch releases were
available: `@angular/*` → ^21.2.19, `next` → 16.2.11 (docs and login,
incl. `@next/eslint-plugin-next`), `nx` → 22.7.7, and `js-yaml` → ^4.3.1
/ `postcss` → ^8.5.23 in docs. The lockfile was regenerated from scratch
so all transitive dependencies resolve to the newest versions within
their allowed ranges. With that in place, the override list was rebuilt
down to the 8 entries that are still required because a parent package
pins an older version (axios and brace-expansion via nx, postcss and
sharp via next, esbuild via tsx, uuid via testcontainers, and the two
OpenTelemetry packages); the other 20 overrides were removed. A
verification pass confirmed the resolved versions stay at or above the
floors the removed overrides used to enforce, and `pnpm audit` comes
back clean.

---------

Co-authored-by: Livio Spring <[email protected]>
This commit is contained in:
Max Peintner
2026-08-19 06:30:10 +00:00
committed by GitHub
co-authored by Livio Spring
parent d488ecb07f
commit a1a4572303
39 changed files with 4919 additions and 5161 deletions
+3 -3
View File
@@ -34,10 +34,10 @@
"fumadocs-mdx": "14.3.2",
"fumadocs-openapi": "10.8.2",
"fumadocs-ui": "16.8.10",
"js-yaml": "^4.2.0",
"js-yaml": "^4.3.1",
"lucide-react": "^0.577.0",
"mixpanel-browser": "^2.78.0",
"next": "16.2.6",
"next": "16.2.11",
"next-themes": "^0.4.6",
"react": "19.2.6",
"react-copy-to-clipboard": "^5.1.1",
@@ -66,7 +66,7 @@
"glob": "^13.0.6",
"globals": "^17.6.0",
"next-validate-link": "^1.6.6",
"postcss": "^8.5.14",
"postcss": "^8.5.23",
"raw-loader": "^4.0.2",
"remark-heading-id": "^1.0.1",
"semver": "^7.8.0",
+2 -2
View File
@@ -45,7 +45,7 @@
"lru-cache": "^11.3.6",
"lucide-react": "^0.577.0",
"moment": "^2.30.1",
"next": "16.2.6",
"next": "16.2.11",
"next-intl": "^4.11.2",
"next-themes": "^0.4.6",
"nice-grpc": "^2.1.16",
@@ -61,7 +61,7 @@
"devDependencies": {
"@eslint/js": "^10.0.1",
"@faker-js/faker": "^9.9.0",
"@next/eslint-plugin-next": "16.2.6",
"@next/eslint-plugin-next": "16.2.11",
"@opentelemetry/sdk-trace-base": "^2.7.1",
"@opentelemetry/sdk-trace-node": "^2.7.1",
"@otplib/core": "^12.0.1",
+1 -14
View File
@@ -11,20 +11,7 @@ export interface Color {
export type MapName = "background" | "primary" | "warn" | "text" | "link";
export type ColorName =
| "50"
| "100"
| "200"
| "300"
| "400"
| "500"
| "600"
| "700"
| "800"
| "C900"
| "A100"
| "A200"
| "A400"
| "A700";
"50" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "C900" | "A100" | "A200" | "A400" | "A700";
export type ColorMap = {
[_key in MapName]: Color[];
+1 -2
View File
@@ -20,8 +20,7 @@ import { createSessionForIdpAndUpdateCookie } from "./cookie";
import { getPublicHost } from "./host";
export type RedirectToIdpState =
| { error?: string | null; samlData?: { url: string; fields: Record<string, string> } }
| undefined;
{ error?: string | null; samlData?: { url: string; fields: Record<string, string> } } | undefined;
export async function redirectToIdp(prevState: RedirectToIdpState, formData: FormData): Promise<RedirectToIdpState> {
const _headers = await headers();
+13 -13
View File
@@ -14,18 +14,18 @@
},
"private": true,
"dependencies": {
"@angular/animations": "^21.2.17",
"@angular/animations": "^21.2.19",
"@angular/cdk": "^21.2.14",
"@angular/common": "^21.2.17",
"@angular/compiler": "^21.2.17",
"@angular/core": "^21.2.17",
"@angular/forms": "^21.2.17",
"@angular/common": "^21.2.19",
"@angular/compiler": "^21.2.19",
"@angular/core": "^21.2.19",
"@angular/forms": "^21.2.19",
"@angular/material": "^21.2.14",
"@angular/material-moment-adapter": "^21.2.14",
"@angular/platform-browser": "^21.2.17",
"@angular/platform-browser-dynamic": "^21.2.17",
"@angular/router": "^21.2.17",
"@angular/service-worker": "^21.2.17",
"@angular/platform-browser": "^21.2.19",
"@angular/platform-browser-dynamic": "^21.2.19",
"@angular/router": "^21.2.19",
"@angular/service-worker": "^21.2.19",
"@bufbuild/protobuf": "^2.12.0",
"@connectrpc/connect": "^2.1.1",
"@connectrpc/connect-web": "^2.1.1",
@@ -63,10 +63,10 @@
"@angular-eslint/eslint-plugin": "21.4.0",
"@angular-eslint/eslint-plugin-template": "21.4.0",
"@angular-eslint/template-parser": "21.4.0",
"@angular/build": "^21.2.17",
"@angular/cli": "^21.2.17",
"@angular/compiler-cli": "^21.2.17",
"@angular/language-service": "^21.2.17",
"@angular/build": "^21.2.19",
"@angular/cli": "^21.2.19",
"@angular/compiler-cli": "^21.2.19",
"@angular/language-service": "^21.2.19",
"@eslint/js": "^10.0.1",
"@tailwindcss/postcss": "^4.3.0",
"@types/file-saver": "^2.0.7",
@@ -13,7 +13,7 @@
$list-background-color: map-get($background, 300);
$card-background-color: map-get($background, cards);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
$border-selected-color: if(sass($is-dark-theme): #fff; else: #000);
.full-width {
@@ -13,7 +13,7 @@
$list-background-color: map-get($background, 300);
$card-background-color: map-get($background, cards);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
$border-selected-color: if(sass($is-dark-theme): #fff; else: #000);
.framework-change-wrapper {
@@ -13,7 +13,7 @@
$list-background-color: map-get($background, 300);
$card-background-color: map-get($background, cards);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
$border-selected-color: if(sass($is-dark-theme): #fff; else: #000);
.quickstart-header {
@@ -11,7 +11,7 @@
$foreground: map-get($theme, foreground);
$is-dark-theme: map-get($theme, is-dark);
$back: map-get($background, background);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
$secondary-text: map-get($foreground, secondary-text);
.accounts-card {
@@ -3,7 +3,7 @@
$primary-color: map-get($primary, 500);
$is-dark-theme: map-get($theme, is-dark);
$background: map-get($theme, background);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
.auth-method-radio-button-wrapper {
display: flex;
@@ -11,7 +11,7 @@
$primary-color: map-get($primary, 500);
$is-dark-theme: map-get($theme, is-dark);
$background: map-get($theme, background);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
input[type='radio'].app {
appearance: none;
+2 -2
View File
@@ -4,7 +4,7 @@
$background: map-get($theme, background);
$card-background-color: map-get($background, cards);
$is-dark-theme: map-get($theme, is-dark);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
$border-selected-color: if(sass($is-dark-theme): #fff; else: #000);
.card {
@@ -57,7 +57,7 @@
.cnsl-chip {
height: auto;
border: 1px solid $border-color;
background: if(sass($is-dark-theme): map-get($background, state) ; else: #e4e7e4) !important;
background: if(sass($is-dark-theme): map-get($background, state); else: #e4e7e4) !important;
.cnsl-chip-content {
display: flex;
@@ -1,6 +1,6 @@
@mixin domain-verification-theme($theme) {
$is-dark-theme: map-get($theme, is-dark);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
.entry {
margin: 0.5rem 0;
@@ -18,7 +18,7 @@
$foreground: map-get($theme, foreground);
$is-dark-theme: map-get($theme, is-dark);
$card-background-color: map-get($background, cards);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
$primary: map-get($theme, primary);
$primary-color: map-get($primary, 500);
@@ -9,7 +9,7 @@
$secondary-text: map-get($foreground, secondary-text);
$is-dark-theme: map-get($theme, is-dark);
$link-hover-color: if(sass($is-dark-theme): map-get($primary, 200) ; else: $primary-color);
$link-hover-color: if(sass($is-dark-theme): map-get($primary, 200); else: $primary-color);
$link-color: if(sass($is-dark-theme): $lighter-primary-color; else: $primary-color);
.filter-events-wrapper {
@@ -11,7 +11,7 @@
$foreground: map-get($theme, foreground);
$is-dark-theme: map-get($theme, is-dark);
$back: map-get($background, background);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
.cnsl-filter-button-wrapper {
position: relative;
@@ -25,7 +25,7 @@
padding: 1rem;
font-size: 14px;
width: 300px;
border: 1px solid if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
border: 1px solid if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
&::before {
visibility: hidden;
@@ -104,7 +104,7 @@
}
.keyboard-shortcuts-group {
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
border: 1px solid $border-color;
background-color: $card-background-color;
@@ -17,10 +17,7 @@ import { ProjectMembersDataSource } from '../project-members/project-members-dat
import { WarnDialogComponent } from '../warn-dialog/warn-dialog.component';
type MemberDatasource =
| OrgMembersDataSource
| ProjectMembersDataSource
| ProjectGrantMembersDataSource
| InstanceMembersDataSource;
OrgMembersDataSource | ProjectMembersDataSource | ProjectGrantMembersDataSource | InstanceMembersDataSource;
@Component({
selector: 'cnsl-members-table',
@@ -70,7 +70,7 @@
width: 1.5rem;
border-radius: 50vw;
margin-right: 1rem;
background-color: if(sass($is-dark-theme): map-get($background, state) ; else: #e4e7e4);
background-color: if(sass($is-dark-theme): map-get($background, state); else: #e4e7e4);
box-shadow: 0 0 3px #0000001a;
border: 1px solid rgba(#8795a1, 0.2);
@@ -13,7 +13,7 @@
$list-background-color: map-get($background, 300);
$card-background-color: map-get($background, cards);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
$border-selected-color: if(sass($is-dark-theme): #fff; else: #000);
.onboarding-header {
@@ -141,7 +141,7 @@
width: 1.5rem;
border-radius: 50vw;
margin-right: 1rem;
background-color: if(sass($is-dark-theme): map-get($background, state) ; else: #e4e7e4);
background-color: if(sass($is-dark-theme): map-get($background, state); else: #e4e7e4);
box-shadow: 0 0 3px #0000001a;
border: 1px solid rgba(#8795a1, 0.2);
@@ -7,8 +7,8 @@
$is-dark-theme: map.get($theme, is-dark);
$background: map.get($theme, background);
$foreground: map.get($theme, foreground);
$p-border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$p-border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
.privatelabeling-policy {
.header {
@@ -40,9 +40,7 @@ export class ProjectMembersDataSource extends DataSource<Member.AsObject> {
this.loadingSubject.next(true);
const promise:
| Promise<ListProjectMembersResponse.AsObject>
| Promise<ListProjectGrantMembersResponse.AsObject>
| undefined =
Promise<ListProjectMembersResponse.AsObject> | Promise<ListProjectGrantMembersResponse.AsObject> | undefined =
projectType === ProjectType.PROJECTTYPE_OWNED
? this.service.listProjectMembers(projectId, pageSize, offset)
: projectType === ProjectType.PROJECTTYPE_GRANTED && grantId
@@ -13,7 +13,7 @@
$list-background-color: map-get($background, 300);
$card-background-color: map-get($background, cards);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
$border-selected-color: if(sass($is-dark-theme): #fff; else: #000);
.project-role-chip {
@@ -9,7 +9,7 @@
$secondary-text: map-get($foreground, secondary-text);
$is-dark-theme: map-get($theme, is-dark);
$link-hover-color: if(sass($is-dark-theme): map-get($primary, 200) ; else: $primary-color);
$link-hover-color: if(sass($is-dark-theme): map-get($primary, 200); else: $primary-color);
$link-color: if(sass($is-dark-theme): $lighter-primary-color; else: $primary-color);
.user-autocomplete-found {
@@ -13,7 +13,7 @@
$list-background-color: map-get($background, 300);
$card-background-color: map-get($background, cards);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
$border-selected-color: if(sass($is-dark-theme): #fff; else: #000);
.shortcut-container {
@@ -37,7 +37,7 @@
font-weight: 600;
margin-bottom: 0.5rem;
padding-top: 1rem;
border-top: 1px solid if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
border-top: 1px solid if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
&:nth-child(2) {
border-top: none;
@@ -299,8 +299,7 @@ export class SMTPProviderComponent {
? ({
case: 'defaults',
defaults: SMTPKnownProviders[configOrProvider as keyof typeof SMTPKnownProviders] as
| (typeof SMTPKnownProviders)[keyof typeof SMTPKnownProviders]
| undefined,
(typeof SMTPKnownProviders)[keyof typeof SMTPKnownProviders] | undefined,
} as const)
: ({ case: 'config', config: this.getConfig(configOrProvider) } as const);
@@ -3,7 +3,7 @@
$foreground: map-get($theme, foreground);
$is-dark-theme: map-get($theme, is-dark);
$card-background-color: map-get($background, cards);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
.cnsl-table-action-wrapper {
height: 36px;
@@ -13,7 +13,7 @@
$list-background-color: map-get($background, 300);
$card-background-color: map-get($background, cards);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
$border-selected-color: if(sass($is-dark-theme): #fff; else: #000);
.home-title {
@@ -165,7 +165,7 @@
.current-auth-method {
display: flex;
align-items: center;
border: 1px solid if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
border: 1px solid if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
color: white;
border-radius: 0.5rem;
padding: 0.5rem 1rem;
@@ -115,7 +115,7 @@ h1 {
$list-background-color: map-get($background, 300);
$card-background-color: map-get($background, cards);
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
$border-color: if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
$border-selected-color: if(sass($is-dark-theme): #fff; else: #000);
.integrate-layout-container {
@@ -35,9 +35,7 @@ import { LoginPolicy } from '@zitadel/proto/zitadel/policy_pb';
import { QueryClient } from '@tanstack/angular-query-experimental';
type MetadataQuery =
| { state: 'success'; value: Metadata[] }
| { state: 'loading'; value: Metadata[] }
| { state: 'error'; error: any };
{ state: 'success'; value: Metadata[] } | { state: 'loading'; value: Metadata[] } | { state: 'error'; error: any };
type UserWithHumanType = Omit<User, 'type'> & { type: { case: 'human'; value: HumanUser } };
@@ -18,9 +18,7 @@ export type EditDialogData = {
labelKey: 'ACTIONS.NEWVALUE';
titleKey: 'USER.LOGINMETHODS.EMAIL.EDITTITLE' | 'USER.PROFILE.CHANGEUSERNAME_TITLE' | 'USER.LOGINMETHODS.PHONE.EDITTITLE';
descriptionKey:
| 'USER.LOGINMETHODS.EMAIL.EDITDESC'
| 'USER.PROFILE.CHANGEUSERNAME_DESC'
| 'USER.LOGINMETHODS.PHONE.EDITDESC';
'USER.LOGINMETHODS.EMAIL.EDITDESC' | 'USER.PROFILE.CHANGEUSERNAME_DESC' | 'USER.LOGINMETHODS.PHONE.EDITDESC';
isVerifiedTextKey?: 'USER.LOGINMETHODS.EMAIL.ISVERIFIED';
isVerifiedTextDescKey?: 'USER.LOGINMETHODS.EMAIL.ISVERIFIEDDESC';
value: string | undefined;
@@ -71,9 +71,7 @@ type UserQuery =
| { state: 'notfound' };
type MetadataQuery =
| { state: 'success'; value: Metadata[] }
| { state: 'loading'; value: Metadata[] }
| { state: 'error'; value: string };
{ state: 'success'; value: Metadata[] } | { state: 'loading'; value: Metadata[] } | { state: 'error'; value: string };
type UserWithHumanType = Omit<UserV2, 'type'> & { type: { case: 'human'; value: HumanUser } };
+7 -7
View File
@@ -123,17 +123,17 @@
font-weight: 500;
font-size: 12px;
white-space: nowrap;
background-color: if(sass($is-dark-theme): map.get($background, state) ; else: #e4e7e4);
background-color: if(sass($is-dark-theme): map.get($background, state); else: #e4e7e4);
box-shadow: 0 0 3px #0000001a;
&.active {
background-color: if(sass($is-dark-theme): map.get($background, state-active) ; else: #cbf4c9);
background-color: if(sass($is-dark-theme): map.get($background, state-active); else: #cbf4c9);
color: if(sass($is-dark-theme): #cbf4c9; else: #0e6245);
}
&.inactive {
color: if(sass($is-dark-theme): #ffc1c1; else: #620e0e);
background-color: if(sass($is-dark-theme): map.get($background, state-inactive) ; else: #ffc1c1);
background-color: if(sass($is-dark-theme): map.get($background, state-inactive); else: #ffc1c1);
}
&.neutral {
@@ -143,21 +143,21 @@
}
.bg-state {
background-color: if(sass($is-dark-theme): map.get($background, state) ; else: #e4e7e4) !important;
background-color: if(sass($is-dark-theme): map.get($background, state); else: #e4e7e4) !important;
&.active {
background-color: if(sass($is-dark-theme): map.get($background, state-active) ; else: #cbf4c9) !important;
background-color: if(sass($is-dark-theme): map.get($background, state-active); else: #cbf4c9) !important;
color: if(sass($is-dark-theme): #cbf4c9; else: #0e6245) !important;
}
&.inactive {
color: if(sass($is-dark-theme): #ffc1c1; else: #620e0e) !important;
background-color: if(sass($is-dark-theme): map.get($background, state-inactive) ; else: #ffc1c1) !important;
background-color: if(sass($is-dark-theme): map.get($background, state-inactive); else: #ffc1c1) !important;
}
}
.color-shadow {
border: 1px solid if(sass($is-dark-theme): rgba(#8795a1, 0.2) ; else: rgba(#8795a1, 0.2));
border: 1px solid if(sass($is-dark-theme): rgba(#8795a1, 0.2); else: rgba(#8795a1, 0.2));
box-shadow: 0 0 3px #0000001a;
}
}
+1 -1
View File
@@ -9,7 +9,7 @@
"devDependencies": {
"@bufbuild/buf": "^1.69.0",
"@changesets/cli": "^2.31.0",
"nx": "21.6.11",
"nx": "22.7.7",
"sass": "^1.99.0",
"shiki": "^3.23.0",
"wait-on": "^9.0.10"
+4853 -5047
View File
File diff suppressed because it is too large Load Diff
+5 -27
View File
@@ -9,33 +9,11 @@ exclude:
- benchmark # because of the node 18 or 20 dependency
overrides:
"tar@<7.5.16": "^7.5.16 <8.0.0"
"flatted@<3.4.2": "^3.4.2"
"rollup@>=4.0.0 <4.59.0": "^4.59.0"
"socket.io-parser@>=4.0.0 <4.2.6": "^4.2.6"
"picomatch@>=4.0.0 <4.0.4": "^4.0.4"
"lodash@>=4.0.0 <4.18.0": "^4.18.0"
"js-yaml@<3.15.0": "^3.15.0"
"qs@>=6.11.1 <=6.15.1": "^6.15.2"
"ajv@<6.14.0": "^6.14.0"
"minimatch@<3.1.4": "^3.1.4"
"dompurify@>=3.1.3 <3.4.11": "^3.4.11"
"unhead@<2.1.11": "^2.1.11"
"brace-expansion@<1.1.13": "^1.1.13"
"brace-expansion@>=5.0.0 <5.0.6": "^5.0.6"
"yaml@>=2.0.0 <2.8.3": "^2.8.3"
"follow-redirects@<1.16.0": "^1.16.0"
"axios@<1.17.0": "^1.17.0"
"systeminformation@<5.31.6": "^5.31.6"
"tmp@<0.2.6": "^0.2.6"
"fast-uri@<3.1.2": "^3.1.2"
"ws@>=8.0.0 <8.21.0": "^8.21.0"
"undici@<6.27.0": "^6.27.0"
"webpack@>=5.0.0 <5.104.1": "^5.104.1"
"minimatch@>=9.0.0 <9.0.7": "^9.0.7"
"axios@<1.18.0": "^1.18.0"
"brace-expansion@>=4.0.0 <5.0.9": "^5.0.9"
"esbuild@>=0.27.3 <0.28.1": "^0.28.1"
"postcss@<8.5.10": "^8.5.10"
"ip-address@<=10.1.0": "^10.1.1"
"postcss@<8.5.23": "^8.5.23"
"sharp@<0.35.0": "^0.35.0"
"uuid@<11.1.1": "^11.1.1"
"@babel/core@<=7.29.0": "^7.29.6"
"@opentelemetry/core@<2.8.0": "^2.8.0"
"@opentelemetry/propagator-jaeger@<2.9.0": "^2.9.0"