From a05a16efa06f4130de2af4a3af747086e219b3e3 Mon Sep 17 00:00:00 2001 From: Nahid Hasan <52489202+nahidhasan94@users.noreply.github.com> Date: Thu, 7 May 2026 17:46:20 +0600 Subject: [PATCH 01/14] fix(security): prevent mass assignment in onboarding (#6171) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix(backend): prevent mass assignment in onboarding config endpoint The unauthenticated POST /v1/onboarding/config endpoint mapped the request body directly to InfraConfigEnum keys, allowing an attacker on a fresh install to inject sensitive values such as JWT_SECRET and SESSION_SECRET, enabling forged admin JWTs and full takeover. Four independent weaknesses combined to make this exploit possible. This commit addresses each in layers so the fix holds even if any single layer regresses: - main.ts: enable `whitelist: true` on the global ValidationPipe so properties not declared on any DTO are stripped before reaching any controller / service. This is the primary mitigation described in the advisory. - onboarding.controller.ts: scope an additional ValidationPipe (`whitelist` + `forbidNonWhitelisted`) on the onboarding POST body so requests containing unknown fields are explicitly rejected with 400 instead of silently dropped. - infra-config.service.ts (updateOnboardingConfig): introduce an `ONBOARDING_ALLOWED_KEYS` allowlist so any `InfraConfigEnum` key not part of the documented onboarding surface (OAuth, SMTP) is dropped server-side before being persisted, even if earlier layers regress. - infra-config.service.ts (validateEnvValues): explicitly reject `JWT_SECRET`, `SESSION_SECRET` and `ALLOW_SECURE_COOKIES` so these keys can never be written through any infra-config code path, replacing the prior `default: break` behaviour that silently accepted them. Fixes GHSA-j542-4rch-8hwf * fix(backend): harden onboarding config validation and add sensitive infra-config tests * chore: cleanup * chore: class validator implemented in dto layer * fix: arguments * fix: api feedback --------- Co-authored-by: “mirarifhasan” --- .../dto/create-access-token.dto.ts | 7 +++ .../src/admin/infra.resolver.ts | 37 ++++------- .../src/admin/input-types.args.ts | 37 +++++++++++ .../src/auth/dto/signin-magic.dto.ts | 3 + .../src/auth/dto/verify-magic.dto.ts | 7 +++ .../src/infra-config/dto/onboarding.dto.ts | 5 +- .../infra-config/infra-config.service.spec.ts | 61 +++++++++++++++++++ .../src/infra-config/infra-config.service.ts | 6 +- .../src/infra-config/input-args.ts | 5 ++ .../src/infra-token/request-response.dto.ts | 10 +-- packages/hoppscotch-backend/src/main.ts | 2 + .../src/mock-server/mock-server.model.ts | 41 ++++++++++++- .../src/mock-server/mock-server.resolver.ts | 14 ++--- .../src/published-docs/input-type.args.ts | 49 ++++++++++++++- .../published-docs/published-docs.resolver.ts | 23 ++----- .../src/team-collection/input-type.args.ts | 33 ++++++++++ .../src/team-environments/input-type.args.ts | 15 +++++ .../src/team-invitation/input-type.args.ts | 5 ++ .../src/team-request/input-type.args.ts | 31 ++++++++++ .../src/types/input-types.args.ts | 20 ++++-- .../src/user-collection/input-type.args.ts | 38 ++++++++++++ .../user-collection.service.spec.ts | 12 +--- .../src/user-request/input-type.args.ts | 21 +++++++ 23 files changed, 403 insertions(+), 79 deletions(-) diff --git a/packages/hoppscotch-backend/src/access-token/dto/create-access-token.dto.ts b/packages/hoppscotch-backend/src/access-token/dto/create-access-token.dto.ts index d837a16a4de..c6b51cb17c7 100644 --- a/packages/hoppscotch-backend/src/access-token/dto/create-access-token.dto.ts +++ b/packages/hoppscotch-backend/src/access-token/dto/create-access-token.dto.ts @@ -1,5 +1,12 @@ +import { IsNotEmpty, IsNumber, IsString, ValidateIf } from 'class-validator'; + // Inputs to create a new PAT export class CreateAccessTokenDto { + @IsString() + @IsNotEmpty() label: string; + + @ValidateIf((o) => o.expiryInDays !== null) + @IsNumber() expiryInDays: number | null; } diff --git a/packages/hoppscotch-backend/src/admin/infra.resolver.ts b/packages/hoppscotch-backend/src/admin/infra.resolver.ts index b822fb1398d..61e6869eb70 100644 --- a/packages/hoppscotch-backend/src/admin/infra.resolver.ts +++ b/packages/hoppscotch-backend/src/admin/infra.resolver.ts @@ -34,6 +34,7 @@ import { } from 'src/infra-config/input-args'; import { InfraConfigEnum } from 'src/types/InfraConfig'; import { ServiceStatus } from 'src/infra-config/helper'; +import { FetchAllTeamsV2Args, FetchAllUsersV2Args } from './input-types.args'; @UseGuards(GqlThrottlerGuard) @Resolver(() => Infra) @@ -92,19 +93,11 @@ export class InfraResolver { description: 'Returns a list of all the users in infra', }) @UseGuards(GqlAuthGuard, GqlAdminGuard) - async allUsersV2( - @Args({ - name: 'searchString', - nullable: true, - description: 'Search on users displayName or email', - }) - searchString: string, - @Args() paginationOption: OffsetPaginationArgs, - ): Promise { - const users = await this.adminService.fetchUsersV2( - searchString, - paginationOption, - ); + async allUsersV2(@Args() args: FetchAllUsersV2Args): Promise { + const users = await this.adminService.fetchUsersV2(args.searchString, { + skip: args.skip, + take: args.take, + }); return users; } @@ -130,19 +123,11 @@ export class InfraResolver { @ResolveField(() => [Team], { description: 'Returns a list of all the teams in the infra', }) - async allTeamsV2( - @Args({ - name: 'searchString', - nullable: true, - description: 'Search on team name or ID', - }) - searchString: string, - @Args() paginationOption: OffsetPaginationArgs, - ): Promise { - const teams = await this.adminService.fetchAllTeamsV2( - searchString, - paginationOption, - ); + async allTeamsV2(@Args() args: FetchAllTeamsV2Args): Promise { + const teams = await this.adminService.fetchAllTeamsV2(args.searchString, { + skip: args.skip, + take: args.take, + }); return teams; } diff --git a/packages/hoppscotch-backend/src/admin/input-types.args.ts b/packages/hoppscotch-backend/src/admin/input-types.args.ts index 129a1357ef6..d7f1258395f 100644 --- a/packages/hoppscotch-backend/src/admin/input-types.args.ts +++ b/packages/hoppscotch-backend/src/admin/input-types.args.ts @@ -1,19 +1,51 @@ import { Field, ID, ArgsType } from '@nestjs/graphql'; import { TeamAccessRole } from '../team/team.model'; +import { IsEnum, IsNotEmpty, IsOptional, IsString } from 'class-validator'; +import { OffsetPaginationArgs } from 'src/types/input-types.args'; + +@ArgsType() +export class FetchAllUsersV2Args extends OffsetPaginationArgs { + @Field({ + name: 'searchString', + nullable: true, + description: 'Search on users displayName or email', + }) + @IsString() + @IsOptional() + searchString: string; +} + +@ArgsType() +export class FetchAllTeamsV2Args extends OffsetPaginationArgs { + @Field({ + name: 'searchString', + nullable: true, + description: 'Search on team name or ID', + }) + @IsString() + @IsOptional() + searchString: string; +} @ArgsType() export class ChangeUserRoleInTeamArgs { + @IsString() + @IsNotEmpty() @Field(() => ID, { name: 'userUID', description: 'users UID', }) userUID: string; + + @IsString() + @IsNotEmpty() @Field(() => ID, { name: 'teamID', description: 'team ID', }) teamID: string; + @IsEnum(TeamAccessRole) @Field(() => TeamAccessRole, { name: 'newRole', description: 'updated team role', @@ -23,18 +55,23 @@ export class ChangeUserRoleInTeamArgs { @ArgsType() export class AddUserToTeamArgs { + @IsString() + @IsNotEmpty() @Field(() => ID, { name: 'teamID', description: 'team ID', }) teamID: string; + @IsEnum(TeamAccessRole) @Field(() => TeamAccessRole, { name: 'role', description: 'The role of the user to add in the team', }) role: TeamAccessRole; + @IsString() + @IsNotEmpty() @Field({ name: 'userEmail', description: 'Email of the user to add to team', diff --git a/packages/hoppscotch-backend/src/auth/dto/signin-magic.dto.ts b/packages/hoppscotch-backend/src/auth/dto/signin-magic.dto.ts index a3b1aa27ca4..22f07424945 100644 --- a/packages/hoppscotch-backend/src/auth/dto/signin-magic.dto.ts +++ b/packages/hoppscotch-backend/src/auth/dto/signin-magic.dto.ts @@ -1,4 +1,7 @@ +import { IsEmail, IsNotEmpty } from 'class-validator'; + // Inputs to initiate Magic-Link auth flow export class SignInMagicDto { + @IsEmail() email: string; } diff --git a/packages/hoppscotch-backend/src/auth/dto/verify-magic.dto.ts b/packages/hoppscotch-backend/src/auth/dto/verify-magic.dto.ts index 958729dd480..27f9a439a87 100644 --- a/packages/hoppscotch-backend/src/auth/dto/verify-magic.dto.ts +++ b/packages/hoppscotch-backend/src/auth/dto/verify-magic.dto.ts @@ -1,5 +1,12 @@ +import { IsNotEmpty, IsString } from 'class-validator'; + // Inputs to verify and sign a user in via magic-link export class VerifyMagicDto { + @IsString() + @IsNotEmpty() deviceIdentifier: string; + + @IsString() + @IsNotEmpty() token: string; } diff --git a/packages/hoppscotch-backend/src/infra-config/dto/onboarding.dto.ts b/packages/hoppscotch-backend/src/infra-config/dto/onboarding.dto.ts index c3e38ec7ebd..9397e3819d4 100644 --- a/packages/hoppscotch-backend/src/infra-config/dto/onboarding.dto.ts +++ b/packages/hoppscotch-backend/src/infra-config/dto/onboarding.dto.ts @@ -1,6 +1,6 @@ import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger'; import { Expose } from 'class-transformer'; -import { IsOptional, IsString } from 'class-validator'; +import { IsNotEmpty, IsOptional, IsString } from 'class-validator'; import { InfraConfigEnum } from 'src/types/InfraConfig'; export class GetOnboardingStatusResponse { @@ -15,6 +15,7 @@ export class GetOnboardingStatusResponse { export class SaveOnboardingConfigRequest { @ApiProperty() @IsString() + @IsNotEmpty() [InfraConfigEnum.VITE_ALLOWED_AUTH_PROVIDERS]: string; @ApiPropertyOptional() @@ -84,6 +85,7 @@ export class SaveOnboardingConfigRequest { @ApiPropertyOptional() @IsOptional() + @IsString() [InfraConfigEnum.MAILER_SMTP_URL]: string; @ApiPropertyOptional() @@ -137,7 +139,6 @@ export class SaveOnboardingConfigRequest { [InfraConfigEnum.MAILER_SMTP_OAUTH2_REFRESH_TOKEN]: string; @ApiPropertyOptional() @IsOptional() - @IsString() [InfraConfigEnum.MAILER_SMTP_OAUTH2_ACCESS_URL]: string; } diff --git a/packages/hoppscotch-backend/src/infra-config/infra-config.service.spec.ts b/packages/hoppscotch-backend/src/infra-config/infra-config.service.spec.ts index bac795407b1..99f782a1a53 100644 --- a/packages/hoppscotch-backend/src/infra-config/infra-config.service.spec.ts +++ b/packages/hoppscotch-backend/src/infra-config/infra-config.service.spec.ts @@ -274,6 +274,67 @@ describe('InfraConfigService', () => { }); }); + describe('updateOnboardingConfig (allowlist filtering)', () => { + it('should drop keys outside ONBOARDING_ALLOWED_KEYS before persisting', async () => { + // Pretend the DTO has extra disallowed keys (mimicking a bypass of the + // ValidationPipe, e.g. an internal caller). The service must still not + // persist keys like JWT_SECRET / SESSION_SECRET / ALLOW_SECURE_COOKIES. + const dto = { + [InfraConfigEnum.VITE_ALLOWED_AUTH_PROVIDERS]: 'GOOGLE', + [InfraConfigEnum.GOOGLE_CLIENT_ID]: 'gid', + [InfraConfigEnum.GOOGLE_CLIENT_SECRET]: 'gsecret', + [InfraConfigEnum.GOOGLE_CALLBACK_URL]: 'https://example.com/cb', + [InfraConfigEnum.GOOGLE_SCOPE]: 'email', + [InfraConfigEnum.JWT_SECRET]: 'ATTACKER', + [InfraConfigEnum.SESSION_SECRET]: 'ATTACKER', + [InfraConfigEnum.ALLOW_SECURE_COOKIES]: 'true', + } as any; + + const updateManySpy = jest + .spyOn(infraConfigService, 'updateMany') + .mockResolvedValueOnce(E.right([] as any)); + + await infraConfigService.updateOnboardingConfig(dto); + + expect(updateManySpy).toHaveBeenCalledWith( + expect.arrayContaining([ + expect.objectContaining({ + name: InfraConfigEnum.VITE_ALLOWED_AUTH_PROVIDERS, + value: 'GOOGLE', + }), + expect.objectContaining({ + name: InfraConfigEnum.GOOGLE_CLIENT_ID, + value: 'gid', + }), + expect.objectContaining({ + name: InfraConfigEnum.GOOGLE_CLIENT_SECRET, + value: 'gsecret', + }), + expect.objectContaining({ + name: InfraConfigEnum.GOOGLE_CALLBACK_URL, + value: 'https://example.com/cb', + }), + expect.objectContaining({ + name: InfraConfigEnum.GOOGLE_SCOPE, + value: 'email', + }), + + expect.objectContaining({ + name: InfraConfigEnum.ONBOARDING_COMPLETED, + value: 'true', + }), + expect.objectContaining({ + name: InfraConfigEnum.ONBOARDING_RECOVERY_TOKEN, + value: expect.any(String), + }), + ]), + false, + ); + + updateManySpy.mockRestore(); + }); + }); + describe('isUserHistoryEnabled', () => { it('should return true if the user history is enabled', async () => { const response = { diff --git a/packages/hoppscotch-backend/src/infra-config/infra-config.service.ts b/packages/hoppscotch-backend/src/infra-config/infra-config.service.ts index 601d5ebbe69..870fdcbfd76 100644 --- a/packages/hoppscotch-backend/src/infra-config/infra-config.service.ts +++ b/packages/hoppscotch-backend/src/infra-config/infra-config.service.ts @@ -538,7 +538,11 @@ export class InfraConfigService implements OnModuleInit, OnModuleDestroy { const configEntries: InfraConfigArgs[] = [ ...Object.entries(dto) - .filter(([_, value]) => value !== undefined) + .filter( + ([key, value]) => + value !== undefined && + Object.keys(new SaveOnboardingConfigRequest()).includes(key), + ) .map(([key, value]) => ({ name: key as InfraConfigEnum, value, diff --git a/packages/hoppscotch-backend/src/infra-config/input-args.ts b/packages/hoppscotch-backend/src/infra-config/input-args.ts index fd248e52634..aadcfa04df0 100644 --- a/packages/hoppscotch-backend/src/infra-config/input-args.ts +++ b/packages/hoppscotch-backend/src/infra-config/input-args.ts @@ -2,14 +2,17 @@ import { Field, InputType } from '@nestjs/graphql'; import { InfraConfigEnum } from 'src/types/InfraConfig'; import { ServiceStatus } from './helper'; import { AuthProvider } from 'src/auth/helper'; +import { IsEnum, IsNotEmpty, IsString } from 'class-validator'; @InputType() export class InfraConfigArgs { + @IsEnum(InfraConfigEnum) @Field(() => InfraConfigEnum, { description: 'Infra Config Name', }) name: InfraConfigEnum; + @IsString() @Field({ description: 'Infra Config Value', }) @@ -18,11 +21,13 @@ export class InfraConfigArgs { @InputType() export class EnableAndDisableSSOArgs { + @IsEnum(AuthProvider) @Field(() => AuthProvider, { description: 'Auth Provider', }) provider: AuthProvider; + @IsEnum(ServiceStatus) @Field(() => ServiceStatus, { description: 'Auth Provider Status', }) diff --git a/packages/hoppscotch-backend/src/infra-token/request-response.dto.ts b/packages/hoppscotch-backend/src/infra-token/request-response.dto.ts index 99313e49e67..91f01393665 100644 --- a/packages/hoppscotch-backend/src/infra-token/request-response.dto.ts +++ b/packages/hoppscotch-backend/src/infra-token/request-response.dto.ts @@ -4,6 +4,7 @@ import { ArrayMinSize, IsArray, IsBoolean, + IsEmail, IsNotEmpty, IsOptional, IsString, @@ -14,9 +15,9 @@ import { OffsetPaginationArgs } from 'src/types/input-types.args'; // POST v1/infra/user-invitations export class CreateUserInvitationRequest { - @Type(() => String) - @IsNotEmpty() + @IsEmail() @ApiProperty() + @Type(() => String) inviteeEmail: string; } export class CreateUserInvitationResponse { @@ -40,8 +41,8 @@ export class GetUserInvitationResponse { export class DeleteUserInvitationRequest { @IsArray() @ArrayMinSize(1) + @IsEmail({}, { each: true }) @Type(() => String) - @IsNotEmpty() @ApiProperty() inviteeEmails: string[]; } @@ -53,8 +54,8 @@ export class DeleteUserInvitationResponse { // POST v1/infra/users export class GetUsersRequestQuery extends OffsetPaginationArgs { - @IsOptional() @IsString() + @IsOptional() @MinLength(1) @ApiPropertyOptional() searchString: string; @@ -101,7 +102,6 @@ export class UpdateUserRequest { // PATCH v1/infra/users/:uid/admin-status export class UpdateUserAdminStatusRequest { @IsBoolean() - @IsNotEmpty() @ApiProperty() isAdmin: boolean; } diff --git a/packages/hoppscotch-backend/src/main.ts b/packages/hoppscotch-backend/src/main.ts index 94be62be400..0244015e7ae 100644 --- a/packages/hoppscotch-backend/src/main.ts +++ b/packages/hoppscotch-backend/src/main.ts @@ -76,6 +76,8 @@ async function bootstrap() { app.useGlobalPipes( new ValidationPipe({ transform: true, + whitelist: true, + forbidNonWhitelisted: true, }), ); diff --git a/packages/hoppscotch-backend/src/mock-server/mock-server.model.ts b/packages/hoppscotch-backend/src/mock-server/mock-server.model.ts index 69c5beb1818..e53a76aa4dc 100644 --- a/packages/hoppscotch-backend/src/mock-server/mock-server.model.ts +++ b/packages/hoppscotch-backend/src/mock-server/mock-server.model.ts @@ -7,14 +7,19 @@ import { registerEnumType, } from '@nestjs/graphql'; import { + IsBoolean, + IsEnum, + IsNotEmpty, IsNumber, IsOptional, IsString, Matches, Max, MaxLength, + Min, MinLength, } from 'class-validator'; +import { OffsetPaginationArgs } from 'src/types/input-types.args'; import { WorkspaceType } from 'src/types/WorkspaceTypes'; // Regex pattern for mock server name validation @@ -117,6 +122,8 @@ export class CreateMockServerInput { }) name: string; + @IsString() + @IsOptional() @Field({ nullable: true, description: @@ -124,6 +131,8 @@ export class CreateMockServerInput { }) collectionID?: string; + @IsBoolean() + @IsOptional() @Field({ nullable: true, description: @@ -131,6 +140,8 @@ export class CreateMockServerInput { }) autoCreateCollection?: boolean; + @IsBoolean() + @IsOptional() @Field({ nullable: true, description: @@ -138,11 +149,14 @@ export class CreateMockServerInput { }) autoCreateRequestExample?: boolean; + @IsEnum(WorkspaceType) @Field(() => WorkspaceType, { description: 'Type of workspace: USER or TEAM', }) workspaceType: WorkspaceType; + @IsOptional() + @IsString() @Field({ nullable: true, description: @@ -150,16 +164,19 @@ export class CreateMockServerInput { }) workspaceID?: string; + @IsNumber() + @IsOptional() + @Min(0) + @Max(60000) @Field({ nullable: true, defaultValue: 0, description: 'Delay in milliseconds before responding', }) - @IsOptional() - @IsNumber() - @Max(60000) delayInMs?: number; + @IsBoolean() + @IsOptional() @Field({ nullable: true, defaultValue: true, @@ -189,6 +206,7 @@ export class UpdateMockServerInput { }) @IsOptional() @IsNumber() + @Min(0) @Max(60000) delayInMs?: number; @@ -196,12 +214,16 @@ export class UpdateMockServerInput { nullable: true, description: 'Whether the mock server is active', }) + @IsOptional() + @IsBoolean() isActive?: boolean; @Field({ nullable: true, description: 'Whether the mock server is publicly accessible', }) + @IsOptional() + @IsBoolean() isPublic?: boolean; } @@ -236,9 +258,22 @@ export class MockServerMutationArgs { @Field(() => ID, { description: 'ID of the mock server', }) + @IsString() + @IsNotEmpty() id: string; } +@ArgsType() +export class FetchTeamMockServersArgs extends OffsetPaginationArgs { + @Field(() => ID, { + name: 'teamID', + description: 'Id of the team to add to', + }) + @IsString() + @IsNotEmpty() + teamID: string; +} + @ObjectType() export class MockServerLog { @Field(() => ID, { diff --git a/packages/hoppscotch-backend/src/mock-server/mock-server.resolver.ts b/packages/hoppscotch-backend/src/mock-server/mock-server.resolver.ts index 64e2595c6dc..423e814e6c6 100644 --- a/packages/hoppscotch-backend/src/mock-server/mock-server.resolver.ts +++ b/packages/hoppscotch-backend/src/mock-server/mock-server.resolver.ts @@ -19,6 +19,7 @@ import { MockServerMutationArgs, MockServerCollection, MockServerLog, + FetchTeamMockServersArgs, } from './mock-server.model'; import * as E from 'fp-ts/Either'; import { OffsetPaginationArgs } from 'src/types/input-types.args'; @@ -90,15 +91,12 @@ export class MockServerResolver { TeamAccessRole.OWNER, ) async teamMockServers( - @Args({ - name: 'teamID', - type: () => ID, - description: 'Id of the team to add to', - }) - teamID: string, - @Args() args: OffsetPaginationArgs, + @Args() args: FetchTeamMockServersArgs, ): Promise { - return this.mockServerService.getTeamMockServers(teamID, args); + return this.mockServerService.getTeamMockServers(args.teamID, { + skip: args.skip, + take: args.take, + }); } @Query(() => MockServer, { diff --git a/packages/hoppscotch-backend/src/published-docs/input-type.args.ts b/packages/hoppscotch-backend/src/published-docs/input-type.args.ts index af3b9681b44..b326011b65f 100644 --- a/packages/hoppscotch-backend/src/published-docs/input-type.args.ts +++ b/packages/hoppscotch-backend/src/published-docs/input-type.args.ts @@ -1,15 +1,46 @@ -import { InputType, Field } from '@nestjs/graphql'; -import { IsOptional, Matches } from 'class-validator'; +import { InputType, Field, ArgsType, ID } from '@nestjs/graphql'; +import { + IsBoolean, + IsEnum, + IsNotEmpty, + IsOptional, + IsString, + Matches, +} from 'class-validator'; +import { OffsetPaginationArgs } from 'src/types/input-types.args'; import { WorkspaceType } from 'src/types/WorkspaceTypes'; +@ArgsType() +export class FetchPublishedDocsArgs extends OffsetPaginationArgs { + @IsNotEmpty() + @Field(() => ID, { + name: 'teamID', + description: 'ID of the team', + }) + teamID: string; + + @Field(() => ID, { + name: 'collectionID', + description: 'Id of the collection to add to', + nullable: true, + }) + @IsString() + @IsOptional() + collectionID: string | undefined; +} + @InputType() export class CreatePublishedDocsArgs { + @IsString() + @IsNotEmpty() @Field({ name: 'title', description: 'Title of the published document', }) title: string; + @IsString() + @IsNotEmpty() @Field({ name: 'version', description: 'Version of the published document', @@ -20,6 +51,7 @@ export class CreatePublishedDocsArgs { }) version: string; + @IsBoolean() @Field({ name: 'autoSync', description: @@ -27,18 +59,23 @@ export class CreatePublishedDocsArgs { }) autoSync: boolean; + @IsEnum(WorkspaceType) @Field(() => WorkspaceType, { name: 'workspaceType', description: 'Type of the workspace (e.g., personal, team)', }) workspaceType: WorkspaceType; + @IsString() + @IsNotEmpty() @Field({ name: 'workspaceID', description: 'ID of the workspace', }) workspaceID: string; + @IsString() + @IsNotEmpty() @Field({ name: 'collectionID', description: @@ -46,6 +83,8 @@ export class CreatePublishedDocsArgs { }) collectionID: string; + @IsString() + @IsNotEmpty() @Field({ name: 'metadata', description: 'Metadata associated with the published document', @@ -59,6 +98,7 @@ export class CreatePublishedDocsArgs { nullable: true, }) @IsOptional() + @IsString() environmentID?: string; } @@ -69,6 +109,7 @@ export class UpdatePublishedDocsArgs { description: 'Title of the published document', nullable: true, }) + @IsString() @IsOptional() title?: string; @@ -77,6 +118,7 @@ export class UpdatePublishedDocsArgs { description: 'Version of the published document', nullable: true, }) + @IsString() @IsOptional() @Matches(/^[a-zA-Z0-9.-]+$/, { message: @@ -90,6 +132,7 @@ export class UpdatePublishedDocsArgs { 'Whether the published document should auto-sync with the source', nullable: true, }) + @IsBoolean() @IsOptional() autoSync?: boolean; @@ -98,6 +141,7 @@ export class UpdatePublishedDocsArgs { description: 'Metadata associated with the published document', nullable: true, }) + @IsString() @IsOptional() metadata?: string; @@ -107,6 +151,7 @@ export class UpdatePublishedDocsArgs { 'ID of the environment to associate with the published document. Pass null to remove the environment.', nullable: true, }) + @IsString() @IsOptional() environmentID?: string; } diff --git a/packages/hoppscotch-backend/src/published-docs/published-docs.resolver.ts b/packages/hoppscotch-backend/src/published-docs/published-docs.resolver.ts index ecb263236f7..4a4d3f967a8 100644 --- a/packages/hoppscotch-backend/src/published-docs/published-docs.resolver.ts +++ b/packages/hoppscotch-backend/src/published-docs/published-docs.resolver.ts @@ -18,6 +18,7 @@ import { GqlAuthGuard } from 'src/guards/gql-auth.guard'; import { GqlUser } from 'src/decorators/gql-user.decorator'; import { CreatePublishedDocsArgs, + FetchPublishedDocsArgs, UpdatePublishedDocsArgs, } from './input-type.args'; import { User } from 'src/user/user.model'; @@ -124,25 +125,13 @@ export class PublishedDocsResolver { TeamAccessRole.OWNER, ) async teamPublishedDocsList( - @Args({ - name: 'teamID', - type: () => ID, - description: 'Id of the team to add to', - }) - teamID: string, - @Args({ - name: 'collectionID', - type: () => ID, - description: 'Id of the collection to add to', - nullable: true, - }) - collectionID: string | undefined, - @Args() args: OffsetPaginationArgs, + @Args() + args: FetchPublishedDocsArgs, ) { const docs = await this.publishedDocsService.getAllTeamPublishedDocs( - teamID, - collectionID, - args, + args.teamID, + args.collectionID, + { skip: args.skip, take: args.take }, ); return docs; } diff --git a/packages/hoppscotch-backend/src/team-collection/input-type.args.ts b/packages/hoppscotch-backend/src/team-collection/input-type.args.ts index 24e70c5046b..5a87f7ed0f8 100644 --- a/packages/hoppscotch-backend/src/team-collection/input-type.args.ts +++ b/packages/hoppscotch-backend/src/team-collection/input-type.args.ts @@ -1,18 +1,25 @@ import { ArgsType, Field, ID } from '@nestjs/graphql'; +import { IsNotEmpty, IsOptional, IsString } from 'class-validator'; import { PaginationArgs } from 'src/types/input-types.args'; @ArgsType() export class GetRootTeamCollectionsArgs extends PaginationArgs { @Field(() => ID, { name: 'teamID', description: 'ID of the team' }) + @IsString() + @IsNotEmpty() teamID: string; } @ArgsType() export class CreateRootTeamCollectionArgs { @Field(() => ID, { name: 'teamID', description: 'ID of the team' }) + @IsString() + @IsNotEmpty() teamID: string; @Field({ name: 'title', description: 'Title of the new collection' }) + @IsString() + @IsNotEmpty() title: string; @Field({ @@ -20,6 +27,8 @@ export class CreateRootTeamCollectionArgs { description: 'JSON string representing the collection data', nullable: true, }) + @IsString() + @IsOptional() data: string; } @@ -29,9 +38,13 @@ export class CreateChildTeamCollectionArgs { name: 'collectionID', description: 'ID of the parent to the new collection', }) + @IsString() + @IsNotEmpty() collectionID: string; @Field({ name: 'childTitle', description: 'Title of the new collection' }) + @IsString() + @IsNotEmpty() childTitle: string; @Field({ @@ -39,6 +52,8 @@ export class CreateChildTeamCollectionArgs { description: 'JSON string representing the collection data', nullable: true, }) + @IsString() + @IsOptional() data: string; } @@ -48,12 +63,16 @@ export class RenameTeamCollectionArgs { name: 'collectionID', description: 'ID of the collection', }) + @IsString() + @IsNotEmpty() collectionID: string; @Field({ name: 'newTitle', description: 'The updated title of the collection', }) + @IsString() + @IsNotEmpty() newTitle: string; } @@ -64,12 +83,16 @@ export class MoveTeamCollectionArgs { description: 'ID of the parent to the new collection', nullable: true, }) + @IsString() + @IsOptional() parentCollectionID: string; @Field(() => ID, { name: 'collectionID', description: 'ID of the collection', }) + @IsString() + @IsNotEmpty() collectionID: string; } @@ -79,6 +102,8 @@ export class UpdateTeamCollectionOrderArgs { name: 'collectionID', description: 'ID of the collection', }) + @IsString() + @IsNotEmpty() collectionID: string; @Field(() => ID, { @@ -87,6 +112,8 @@ export class UpdateTeamCollectionOrderArgs { 'ID of the collection that comes after the updated collection in its new position', nullable: true, }) + @IsString() + @IsOptional() destCollID: string; } @@ -96,6 +123,8 @@ export class UpdateTeamCollectionArgs { name: 'collectionID', description: 'ID of the collection', }) + @IsString() + @IsNotEmpty() collectionID: string; @Field({ @@ -103,6 +132,8 @@ export class UpdateTeamCollectionArgs { description: 'The updated title of the collection', nullable: true, }) + @IsString() + @IsOptional() newTitle: string; @Field({ @@ -110,5 +141,7 @@ export class UpdateTeamCollectionArgs { description: 'JSON string representing the collection data', nullable: true, }) + @IsString() + @IsOptional() data: string; } diff --git a/packages/hoppscotch-backend/src/team-environments/input-type.args.ts b/packages/hoppscotch-backend/src/team-environments/input-type.args.ts index 393865fabc1..a58d9af17c4 100644 --- a/packages/hoppscotch-backend/src/team-environments/input-type.args.ts +++ b/packages/hoppscotch-backend/src/team-environments/input-type.args.ts @@ -1,4 +1,5 @@ import { ArgsType, Field, ID } from '@nestjs/graphql'; +import { IsString, IsNotEmpty } from 'class-validator'; @ArgsType() export class CreateTeamEnvironmentArgs { @@ -6,18 +7,24 @@ export class CreateTeamEnvironmentArgs { name: 'name', description: 'Name of the Team Environment', }) + @IsString() + @IsNotEmpty() name: string; @Field(() => ID, { name: 'teamID', description: 'ID of the Team', }) + @IsString() + @IsNotEmpty() teamID: string; @Field({ name: 'variables', description: 'JSON string of the variables object', }) + @IsString() + @IsNotEmpty() variables: string; } @@ -27,15 +34,23 @@ export class UpdateTeamEnvironmentArgs { name: 'id', description: 'ID of the Team Environment', }) + @IsString() + @IsNotEmpty() id: string; + @Field({ name: 'name', description: 'Name of the Team Environment', }) + @IsString() + @IsNotEmpty() name: string; + @Field({ name: 'variables', description: 'JSON string of the variables object', }) + @IsString() + @IsNotEmpty() variables: string; } diff --git a/packages/hoppscotch-backend/src/team-invitation/input-type.args.ts b/packages/hoppscotch-backend/src/team-invitation/input-type.args.ts index 3bbaedc9e8f..5d3c23c5ea3 100644 --- a/packages/hoppscotch-backend/src/team-invitation/input-type.args.ts +++ b/packages/hoppscotch-backend/src/team-invitation/input-type.args.ts @@ -1,4 +1,5 @@ import { ArgsType, Field, ID } from '@nestjs/graphql'; +import { IsEmail, IsEnum, IsNotEmpty, IsString } from 'class-validator'; import { TeamAccessRole } from 'src/team/team.model'; @ArgsType() @@ -7,14 +8,18 @@ export class CreateTeamInvitationArgs { name: 'teamID', description: 'ID of the Team ID to invite from', }) + @IsString() + @IsNotEmpty() teamID: string; @Field({ name: 'inviteeEmail', description: 'Email of the user to invite' }) + @IsEmail() inviteeEmail: string; @Field(() => TeamAccessRole, { name: 'inviteeRole', description: 'Role to be given to the user', }) + @IsEnum(TeamAccessRole) inviteeRole: TeamAccessRole; } diff --git a/packages/hoppscotch-backend/src/team-request/input-type.args.ts b/packages/hoppscotch-backend/src/team-request/input-type.args.ts index 5c88fd5d964..d79ec790b5f 100644 --- a/packages/hoppscotch-backend/src/team-request/input-type.args.ts +++ b/packages/hoppscotch-backend/src/team-request/input-type.args.ts @@ -1,4 +1,5 @@ import { Field, ID, InputType, ArgsType } from '@nestjs/graphql'; +import { IsNotEmpty, IsOptional, IsString } from 'class-validator'; import { PaginationArgs } from 'src/types/input-types.args'; @InputType() @@ -6,16 +7,22 @@ export class CreateTeamRequestInput { @Field(() => ID, { description: 'ID of the team the collection belongs to', }) + @IsString() + @IsNotEmpty() teamID: string; @Field({ description: 'JSON string representing the request data', }) + @IsString() + @IsNotEmpty() request: string; @Field({ description: 'Displayed title of the request', }) + @IsString() + @IsNotEmpty() title: string; } @@ -25,12 +32,16 @@ export class UpdateTeamRequestInput { description: 'JSON string representing the request data', nullable: true, }) + @IsString() + @IsOptional() request?: string; @Field({ description: 'Displayed title of the request', nullable: true, }) + @IsString() + @IsOptional() title?: string; } @@ -39,11 +50,15 @@ export class SearchTeamRequestArgs extends PaginationArgs { @Field(() => ID, { description: 'ID of the team to look in', }) + @IsString() + @IsNotEmpty() teamID: string; @Field({ description: 'The title to search for', }) + @IsString() + @IsNotEmpty() searchTerm: string; } @@ -55,16 +70,22 @@ export class MoveTeamRequestArgs { defaultValue: undefined, description: 'ID of the collection, the request belong to', }) + @IsString() + @IsOptional() srcCollID: string; @Field(() => ID, { description: 'ID of the request to move', }) + @IsString() + @IsNotEmpty() requestID: string; @Field(() => ID, { description: 'ID of the collection, where the request is moving to', }) + @IsString() + @IsNotEmpty() destCollID: string; @Field(() => ID, { @@ -72,6 +93,8 @@ export class MoveTeamRequestArgs { description: 'ID of the request that comes after the updated request in its new position', }) + @IsString() + @IsOptional() nextRequestID: string; } @@ -80,6 +103,8 @@ export class UpdateLookUpRequestOrderArgs { @Field(() => ID, { description: 'ID of the collection', }) + @IsString() + @IsNotEmpty() collectionID: string; @Field(() => ID, { @@ -87,11 +112,15 @@ export class UpdateLookUpRequestOrderArgs { description: 'ID of the request that comes after the updated request in its new position', }) + @IsString() + @IsOptional() nextRequestID: string; @Field(() => ID, { description: 'ID of the request to move', }) + @IsString() + @IsNotEmpty() requestID: string; } @@ -100,5 +129,7 @@ export class GetTeamRequestInCollectionArgs extends PaginationArgs { @Field(() => ID, { description: 'ID of the collection to look in', }) + @IsString() + @IsNotEmpty() collectionID: string; } diff --git a/packages/hoppscotch-backend/src/types/input-types.args.ts b/packages/hoppscotch-backend/src/types/input-types.args.ts index 414b60cf9f6..ae088058e84 100644 --- a/packages/hoppscotch-backend/src/types/input-types.args.ts +++ b/packages/hoppscotch-backend/src/types/input-types.args.ts @@ -1,7 +1,7 @@ import { ArgsType, Field, ID, InputType } from '@nestjs/graphql'; import { ApiPropertyOptional } from '@nestjs/swagger'; import { Type } from 'class-transformer'; -import { IsNotEmpty, IsOptional } from 'class-validator'; +import { IsInt, IsNotEmpty, IsOptional, IsString, Min } from 'class-validator'; @ArgsType() @InputType() @@ -11,6 +11,8 @@ export class PaginationArgs { defaultValue: undefined, description: 'Cursor for pagination, ID of the last item in the list', }) + @IsString() + @IsOptional() cursor: string; @Field({ @@ -18,14 +20,19 @@ export class PaginationArgs { defaultValue: 10, description: 'Number of items to fetch', }) - take: number; + @IsInt() + @Min(1) + @IsOptional() + @Type(() => Number) + take: number = 10; } @ArgsType() @InputType() export class OffsetPaginationArgs { @IsOptional() - @IsNotEmpty() + @IsInt() + @Min(0) @Type(() => Number) @ApiPropertyOptional() @Field({ @@ -33,10 +40,11 @@ export class OffsetPaginationArgs { defaultValue: 0, description: 'Number of items to skip', }) - skip: number; + skip: number = 0; @IsOptional() - @IsNotEmpty() + @IsInt() + @Min(1) @Type(() => Number) @ApiPropertyOptional() @Field({ @@ -44,5 +52,5 @@ export class OffsetPaginationArgs { defaultValue: 10, description: 'Number of items to fetch', }) - take: number; + take: number = 10; } diff --git a/packages/hoppscotch-backend/src/user-collection/input-type.args.ts b/packages/hoppscotch-backend/src/user-collection/input-type.args.ts index a3d118d1979..e93a3832635 100644 --- a/packages/hoppscotch-backend/src/user-collection/input-type.args.ts +++ b/packages/hoppscotch-backend/src/user-collection/input-type.args.ts @@ -1,10 +1,13 @@ import { Field, ID, ArgsType } from '@nestjs/graphql'; +import { IsEnum, IsNotEmpty, IsOptional, IsString } from 'class-validator'; import { ReqType } from 'src/types/RequestTypes'; import { PaginationArgs } from 'src/types/input-types.args'; @ArgsType() export class CreateRootUserCollectionArgs { @Field({ name: 'title', description: 'Title of the new user collection' }) + @IsString() + @IsNotEmpty() title: string; @Field({ @@ -12,17 +15,23 @@ export class CreateRootUserCollectionArgs { description: 'JSON string representing the collection data', nullable: true, }) + @IsString() + @IsOptional() data: string; } @ArgsType() export class CreateChildUserCollectionArgs { @Field({ name: 'title', description: 'Title of the new user collection' }) + @IsString() + @IsNotEmpty() title: string; @Field(() => ID, { name: 'parentUserCollectionID', description: 'ID of the parent to the new user collection', }) + @IsString() + @IsOptional() parentUserCollectionID: string; @Field({ @@ -30,6 +39,8 @@ export class CreateChildUserCollectionArgs { description: 'JSON string representing the collection data', nullable: true, }) + @IsString() + @IsOptional() data: string; } @@ -39,6 +50,8 @@ export class GetUserChildCollectionArgs extends PaginationArgs { name: 'userCollectionID', description: 'ID of the parent to the user collection', }) + @IsString() + @IsNotEmpty() userCollectionID: string; } @@ -48,12 +61,16 @@ export class RenameUserCollectionsArgs { name: 'userCollectionID', description: 'ID of the user collection', }) + @IsString() + @IsNotEmpty() userCollectionID: string; @Field({ name: 'newTitle', description: 'The updated title of the user collection', }) + @IsString() + @IsNotEmpty() newTitle: string; } @@ -63,6 +80,8 @@ export class UpdateUserCollectionArgs { name: 'collectionID', description: 'ID of collection being moved', }) + @IsString() + @IsNotEmpty() collectionID: string; @Field(() => ID, { @@ -70,6 +89,8 @@ export class UpdateUserCollectionArgs { nullable: true, description: 'ID of collection being moved', }) + @IsString() + @IsOptional() nextCollectionID: string; } @@ -80,12 +101,16 @@ export class MoveUserCollectionArgs { description: 'ID of the parent to the new collection', nullable: true, }) + @IsString() + @IsOptional() destCollectionID: string; @Field(() => ID, { name: 'userCollectionID', description: 'ID of the collection', }) + @IsString() + @IsNotEmpty() userCollectionID: string; } @@ -95,18 +120,25 @@ export class ImportUserCollectionsFromJSONArgs { name: 'jsonString', description: 'JSON string to import', }) + @IsString() + @IsNotEmpty() jsonString: string; + @Field(() => ReqType, { name: 'reqType', description: 'Type of UserCollection', }) + @IsEnum(ReqType) reqType: ReqType; + @Field(() => ID, { name: 'parentCollectionID', description: 'ID to the collection to which to import into (null if to import into the root of the user)', nullable: true, }) + @IsString() + @IsOptional() parentCollectionID?: string; } @@ -116,6 +148,8 @@ export class UpdateUserCollectionsArgs { name: 'userCollectionID', description: 'ID of the user collection', }) + @IsString() + @IsNotEmpty() userCollectionID: string; @Field({ @@ -123,6 +157,8 @@ export class UpdateUserCollectionsArgs { description: 'The updated title of the user collection', nullable: true, }) + @IsString() + @IsOptional() newTitle: string; @Field({ @@ -130,5 +166,7 @@ export class UpdateUserCollectionsArgs { description: 'JSON string representing the collection data', nullable: true, }) + @IsString() + @IsOptional() data: string; } diff --git a/packages/hoppscotch-backend/src/user-collection/user-collection.service.spec.ts b/packages/hoppscotch-backend/src/user-collection/user-collection.service.spec.ts index 7fa2b58db56..e8268009d94 100644 --- a/packages/hoppscotch-backend/src/user-collection/user-collection.service.spec.ts +++ b/packages/hoppscotch-backend/src/user-collection/user-collection.service.spec.ts @@ -2515,25 +2515,19 @@ describe('importCollectionsFromJSON — collection-level script fields', () => { expect(createCallArg.data.preRequestScript).toBe( 'pw.env.set("ROOT_RAN", "yes");', ); - expect(createCallArg.data.testScript).toBe( - 'pw.test("root", () => {});', - ); + expect(createCallArg.data.testScript).toBe('pw.test("root", () => {});'); const childCreateArg = createCallArg.children.create[0]; expect(childCreateArg.data.preRequestScript).toBe( 'pw.env.set("FOLDER_RAN", "yes");', ); - expect(childCreateArg.data.testScript).toBe( - 'pw.test("folder", () => {});', - ); + expect(childCreateArg.data.testScript).toBe('pw.test("folder", () => {});'); if (E.isRight(result)) { const exported = JSON.parse(result.right.exportedCollection); // `data` is JSON-stringified by transformCollectionData on export. const rootData = JSON.parse(exported[0].data); const folderData = JSON.parse(exported[0].folders[0].data); - expect(rootData.preRequestScript).toBe( - 'pw.env.set("ROOT_RAN", "yes");', - ); + expect(rootData.preRequestScript).toBe('pw.env.set("ROOT_RAN", "yes");'); expect(rootData.testScript).toBe('pw.test("root", () => {});'); expect(folderData.preRequestScript).toBe( 'pw.env.set("FOLDER_RAN", "yes");', diff --git a/packages/hoppscotch-backend/src/user-request/input-type.args.ts b/packages/hoppscotch-backend/src/user-request/input-type.args.ts index b45445bf581..2e6692cb8ce 100644 --- a/packages/hoppscotch-backend/src/user-request/input-type.args.ts +++ b/packages/hoppscotch-backend/src/user-request/input-type.args.ts @@ -1,4 +1,5 @@ import { Field, ID, ArgsType } from '@nestjs/graphql'; +import { IsNotEmpty, IsOptional, IsString } from 'class-validator'; import { PaginationArgs } from 'src/types/input-types.args'; import { ReqType } from 'src/types/RequestTypes'; @@ -9,6 +10,8 @@ export class GetUserRequestArgs extends PaginationArgs { defaultValue: undefined, description: 'Collection ID of the user request', }) + @IsString() + @IsOptional() collectionID?: string; } @@ -17,16 +20,22 @@ export class MoveUserRequestArgs { @Field(() => ID, { description: 'ID of the collection, where the request is belongs to', }) + @IsString() + @IsNotEmpty() sourceCollectionID: string; @Field(() => ID, { description: 'ID of the request being moved', }) + @IsString() + @IsNotEmpty() requestID: string; @Field(() => ID, { description: 'ID of the collection, where the request is moving to', }) + @IsString() + @IsNotEmpty() destinationCollectionID: string; @Field(() => ID, { @@ -34,6 +43,8 @@ export class MoveUserRequestArgs { description: 'ID of the request that comes after the updated request in its new position', }) + @IsString() + @IsOptional() nextRequestID: string; } @@ -42,12 +53,18 @@ export class CreateUserRequestArgs { @Field(() => ID, { description: 'Collection ID of the user request', }) + @IsString() + @IsNotEmpty() collectionID: string; @Field({ description: 'Title of the user request' }) + @IsString() + @IsNotEmpty() title: string; @Field({ description: 'content/body of the user request' }) + @IsString() + @IsNotEmpty() request: string; type: ReqType; @@ -60,6 +77,8 @@ export class UpdateUserRequestArgs { defaultValue: undefined, description: 'Title of the user request', }) + @IsString() + @IsOptional() title: string; @Field({ @@ -67,5 +86,7 @@ export class UpdateUserRequestArgs { defaultValue: undefined, description: 'content/body of the user request', }) + @IsString() + @IsOptional() request: string; } From 13245cd048e04833d34f569efff82c36897dba14 Mon Sep 17 00:00:00 2001 From: Mir Arif Hasan Date: Mon, 11 May 2026 22:16:12 +0600 Subject: [PATCH 02/14] fix: class validator decorator usages (#6293) * fix: class validator decorator usages * fix: feedback --- packages/hoppscotch-backend/src/auth/dto/signin-magic.dto.ts | 2 +- packages/hoppscotch-backend/src/infra-config/input-args.ts | 2 +- .../hoppscotch-backend/src/infra-token/request-response.dto.ts | 1 - .../hoppscotch-backend/src/published-docs/input-type.args.ts | 1 - .../src/published-docs/published-docs.service.spec.ts | 1 - packages/hoppscotch-backend/src/types/input-types.args.ts | 2 +- .../hoppscotch-backend/src/user-request/input-type.args.ts | 3 ++- 7 files changed, 5 insertions(+), 7 deletions(-) diff --git a/packages/hoppscotch-backend/src/auth/dto/signin-magic.dto.ts b/packages/hoppscotch-backend/src/auth/dto/signin-magic.dto.ts index 22f07424945..e6ddc1469fa 100644 --- a/packages/hoppscotch-backend/src/auth/dto/signin-magic.dto.ts +++ b/packages/hoppscotch-backend/src/auth/dto/signin-magic.dto.ts @@ -1,4 +1,4 @@ -import { IsEmail, IsNotEmpty } from 'class-validator'; +import { IsEmail } from 'class-validator'; // Inputs to initiate Magic-Link auth flow export class SignInMagicDto { diff --git a/packages/hoppscotch-backend/src/infra-config/input-args.ts b/packages/hoppscotch-backend/src/infra-config/input-args.ts index aadcfa04df0..0f09418608a 100644 --- a/packages/hoppscotch-backend/src/infra-config/input-args.ts +++ b/packages/hoppscotch-backend/src/infra-config/input-args.ts @@ -2,7 +2,7 @@ import { Field, InputType } from '@nestjs/graphql'; import { InfraConfigEnum } from 'src/types/InfraConfig'; import { ServiceStatus } from './helper'; import { AuthProvider } from 'src/auth/helper'; -import { IsEnum, IsNotEmpty, IsString } from 'class-validator'; +import { IsEnum, IsString } from 'class-validator'; @InputType() export class InfraConfigArgs { diff --git a/packages/hoppscotch-backend/src/infra-token/request-response.dto.ts b/packages/hoppscotch-backend/src/infra-token/request-response.dto.ts index 91f01393665..81493346216 100644 --- a/packages/hoppscotch-backend/src/infra-token/request-response.dto.ts +++ b/packages/hoppscotch-backend/src/infra-token/request-response.dto.ts @@ -5,7 +5,6 @@ import { IsArray, IsBoolean, IsEmail, - IsNotEmpty, IsOptional, IsString, MinLength, diff --git a/packages/hoppscotch-backend/src/published-docs/input-type.args.ts b/packages/hoppscotch-backend/src/published-docs/input-type.args.ts index b326011b65f..f0bd316e379 100644 --- a/packages/hoppscotch-backend/src/published-docs/input-type.args.ts +++ b/packages/hoppscotch-backend/src/published-docs/input-type.args.ts @@ -67,7 +67,6 @@ export class CreatePublishedDocsArgs { workspaceType: WorkspaceType; @IsString() - @IsNotEmpty() @Field({ name: 'workspaceID', description: 'ID of the workspace', diff --git a/packages/hoppscotch-backend/src/published-docs/published-docs.service.spec.ts b/packages/hoppscotch-backend/src/published-docs/published-docs.service.spec.ts index c3b3aa0bbc3..1b1680235fb 100644 --- a/packages/hoppscotch-backend/src/published-docs/published-docs.service.spec.ts +++ b/packages/hoppscotch-backend/src/published-docs/published-docs.service.spec.ts @@ -4,7 +4,6 @@ import { PUBLISHED_DOCS_CREATION_FAILED, PUBLISHED_DOCS_DELETION_FAILED, PUBLISHED_DOCS_INVALID_COLLECTION, - PUBLISHED_DOCS_FORBIDDEN_ENVIRONMENT_ACCESS, PUBLISHED_DOCS_NOT_FOUND, PUBLISHED_DOCS_UPDATE_FAILED, TEAM_ENVIRONMENT_NOT_FOUND, diff --git a/packages/hoppscotch-backend/src/types/input-types.args.ts b/packages/hoppscotch-backend/src/types/input-types.args.ts index ae088058e84..226694a0c49 100644 --- a/packages/hoppscotch-backend/src/types/input-types.args.ts +++ b/packages/hoppscotch-backend/src/types/input-types.args.ts @@ -1,7 +1,7 @@ import { ArgsType, Field, ID, InputType } from '@nestjs/graphql'; import { ApiPropertyOptional } from '@nestjs/swagger'; import { Type } from 'class-transformer'; -import { IsInt, IsNotEmpty, IsOptional, IsString, Min } from 'class-validator'; +import { IsInt, IsOptional, IsString, Min } from 'class-validator'; @ArgsType() @InputType() diff --git a/packages/hoppscotch-backend/src/user-request/input-type.args.ts b/packages/hoppscotch-backend/src/user-request/input-type.args.ts index 2e6692cb8ce..1c2f17b9950 100644 --- a/packages/hoppscotch-backend/src/user-request/input-type.args.ts +++ b/packages/hoppscotch-backend/src/user-request/input-type.args.ts @@ -67,7 +67,8 @@ export class CreateUserRequestArgs { @IsNotEmpty() request: string; - type: ReqType; + @IsOptional() + type?: ReqType; } @ArgsType() From daeb352efd3a523e5e664386cb56ad5ab9c0ed80 Mon Sep 17 00:00:00 2001 From: Mir Arif Hasan Date: Fri, 22 May 2026 17:46:11 +0600 Subject: [PATCH 03/14] chore: security patch for the dependency chain `v2026.5.0` (#6338) Co-authored-by: James George <25279263+jamesgeorge007@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- package.json | 6 +- packages/hoppscotch-agent/package.json | 2 +- packages/hoppscotch-backend/package.json | 38 +- packages/hoppscotch-cli/package.json | 6 +- packages/hoppscotch-common/package.json | 16 +- packages/hoppscotch-data/package.json | 2 +- packages/hoppscotch-desktop/package.json | 2 +- packages/hoppscotch-js-sandbox/package.json | 6 +- packages/hoppscotch-selfhost-web/package.json | 20 +- packages/hoppscotch-sh-admin/package.json | 4 +- pnpm-lock.yaml | 3779 +++++++++++------ prod.Dockerfile | 40 +- 12 files changed, 2525 insertions(+), 1396 deletions(-) diff --git a/package.json b/package.json index fbf13590e6e..cc10fda02c5 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "author": "Hoppscotch (support@hoppscotch.io)", "private": true, "license": "MIT", - "packageManager": "pnpm@10.33.2", + "packageManager": "pnpm@10.33.4", "scripts": { "preinstall": "npx only-allow pnpm", "prepare": "husky", @@ -35,19 +35,19 @@ }, "pnpm": { "overrides": { - "@nestjs-modules/mailer>mjml": "5.0.0-alpha.4", "@xmldom/xmldom": "0.8.13", "apiconnect-wsdl": "2.0.36", "body-parser": "2.2.1", "cross-spawn": "7.0.6", "execa@<2.0.0": "2.0.0", + "fast-uri@<=3.1.1": "3.1.2", "form-data": "4.0.4", "glob@>=11.0.0 <11.1.0": "11.1.0", "lodash": "4.18.1", "minimatch@>=4.0.0 <4.2.5": "4.2.5", "serialize-javascript@<7.0.3": "7.0.3", "subscriptions-transport-ws>ws": "7.5.10", - "vue": "3.5.33", + "vue": "3.5.34", "ws": "8.17.1" }, "onlyBuiltDependencies": [ diff --git a/packages/hoppscotch-agent/package.json b/packages/hoppscotch-agent/package.json index 37d668e80b0..abbc2fcc2ff 100644 --- a/packages/hoppscotch-agent/package.json +++ b/packages/hoppscotch-agent/package.json @@ -24,7 +24,7 @@ "axios": "1.15.2", "fp-ts": "2.16.11", "lodash-es": "4.18.1", - "vue": "3.5.33" + "vue": "3.5.34" }, "devDependencies": { "@iconify-json/lucide": "1.2.104", diff --git a/packages/hoppscotch-backend/package.json b/packages/hoppscotch-backend/package.json index 2ca42a23d89..f0a01d7946e 100644 --- a/packages/hoppscotch-backend/package.json +++ b/packages/hoppscotch-backend/package.json @@ -31,19 +31,19 @@ "do-test": "pnpm run test" }, "dependencies": { - "@apollo/server": "5.5.0", + "@apollo/server": "5.5.1", "@as-integrations/express5": "1.1.2", - "@nestjs-modules/mailer": "2.3.4", - "@nestjs/apollo": "13.3.0", - "@nestjs/common": "11.1.19", + "@nestjs-modules/mailer": "2.3.5", + "@nestjs/apollo": "13.4.0", + "@nestjs/common": "11.1.21", "@nestjs/config": "4.0.4", - "@nestjs/core": "11.1.19", - "@nestjs/graphql": "13.3.0", + "@nestjs/core": "11.1.21", + "@nestjs/graphql": "13.4.0", "@nestjs/jwt": "11.0.2", "@nestjs/passport": "11.0.0", - "@nestjs/platform-express": "11.1.19", + "@nestjs/platform-express": "11.1.21", "@nestjs/schedule": "6.1.3", - "@nestjs/swagger": "11.4.2", + "@nestjs/swagger": "11.4.3", "@nestjs/terminus": "11.1.1", "@nestjs/throttler": "6.5.0", "@prisma/adapter-pg": "7.8.0", @@ -57,7 +57,7 @@ "dotenv": "17.4.2", "express": "5.2.1", "fp-ts": "2.16.11", - "graphql": "16.13.2", + "graphql": "16.14.0", "graphql-query-complexity": "1.1.0", "graphql-redis-subscriptions": "2.7.0", "graphql-subscriptions": "3.0.0", @@ -71,8 +71,8 @@ "passport-jwt": "4.0.1", "passport-local": "1.0.0", "passport-microsoft": "2.1.0", - "pg": "8.20.0", - "posthog-node": "5.30.6", + "pg": "8.21.0", + "posthog-node": "5.34.6", "prisma": "7.8.0", "reflect-metadata": "0.2.2", "rimraf": "6.1.3", @@ -83,32 +83,32 @@ "@eslint/js": "10.0.1", "@nestjs/cli": "11.0.21", "@nestjs/schematics": "11.1.0", - "@nestjs/testing": "11.1.19", + "@nestjs/testing": "11.1.21", "@relmify/jest-fp-ts": "2.1.1", "@types/bcrypt": "6.0.0", "@types/cookie-parser": "1.4.10", "@types/express": "5.0.6", "@types/jest": "30.0.0", - "@types/node": "25.6.0", + "@types/node": "25.9.0", "@types/nodemailer": "8.0.0", "@types/passport-github2": "1.2.9", "@types/passport-google-oauth20": "2.0.17", "@types/passport-jwt": "4.0.1", "@types/passport-microsoft": "2.1.1", "@types/supertest": "7.2.0", - "@typescript-eslint/eslint-plugin": "8.59.1", - "@typescript-eslint/parser": "8.59.1", + "@typescript-eslint/eslint-plugin": "8.59.4", + "@typescript-eslint/parser": "8.59.4", "cross-env": "10.1.0", - "eslint": "10.2.1", + "eslint": "10.4.0", "eslint-config-prettier": "10.1.8", "eslint-plugin-prettier": "5.5.5", - "globals": "17.5.0", - "jest": "30.3.0", + "globals": "17.6.0", + "jest": "30.4.2", "jest-mock-extended": "4.0.1", "prettier": "3.8.3", "source-map-support": "0.5.21", "supertest": "7.2.2", - "ts-jest": "29.4.9", + "ts-jest": "29.4.10", "ts-loader": "9.5.7", "ts-node": "10.9.2", "tsconfig-paths": "4.2.0", diff --git a/packages/hoppscotch-cli/package.json b/packages/hoppscotch-cli/package.json index 03fd3b70343..f86342e761a 100644 --- a/packages/hoppscotch-cli/package.json +++ b/packages/hoppscotch-cli/package.json @@ -52,7 +52,7 @@ "lodash-es": "4.18.1", "papaparse": "5.5.3", "qs": "6.15.1", - "semver": "7.7.4", + "semver": "7.8.0", "tough-cookie": "6.0.1", "verzod": "0.4.0", "xmlbuilder2": "4.0.3", @@ -64,11 +64,11 @@ "@relmify/jest-fp-ts": "2.1.1", "@types/lodash-es": "4.17.12", "@types/papaparse": "5.5.2", - "@types/qs": "6.15.0", + "@types/qs": "6.15.1", "fp-ts": "2.16.11", "prettier": "3.8.3", "tsup": "8.5.1", "typescript": "5.9.3", - "vitest": "4.1.5" + "vitest": "4.1.6" } } diff --git a/packages/hoppscotch-common/package.json b/packages/hoppscotch-common/package.json index 0c836225fce..66a1b2f41e4 100644 --- a/packages/hoppscotch-common/package.json +++ b/packages/hoppscotch-common/package.json @@ -63,7 +63,7 @@ "buffer": "6.0.3", "cookie-es": "2.0.0", "dioc": "3.0.2", - "dompurify": "3.4.1", + "dompurify": "3.4.3", "esprima": "4.0.1", "events": "3.3.0", "fp-ts": "2.16.11", @@ -111,7 +111,7 @@ "util": "0.12.5", "uuid": "13.0.0", "verzod": "0.4.0", - "vue": "3.5.33", + "vue": "3.5.34", "vue-i18n": "11.4.0", "vue-json-pretty": "2.6.0", "vue-pdf-embed": "2.1.4", @@ -137,7 +137,7 @@ "@graphql-codegen/typescript-urql-graphcache": "3.1.1", "@graphql-codegen/urql-introspection": "3.0.1", "@graphql-typed-document-node/core": "3.2.0", - "@iconify-json/lucide": "1.2.104", + "@iconify-json/lucide": "1.2.107", "@import-meta-env/cli": "0.7.4", "@intlify/unplugin-vue-i18n": "11.1.2", "@relmify/jest-fp-ts": "2.1.1", @@ -148,15 +148,15 @@ "@types/nprogress": "0.2.3", "@types/paho-mqtt": "1.0.10", "@types/postman-collection": "3.5.11", - "@types/qs": "6.15.0", + "@types/qs": "6.15.1", "@types/splitpanes": "2.2.6", "@types/yargs-parser": "21.0.3", - "@typescript-eslint/eslint-plugin": "8.59.0", - "@typescript-eslint/parser": "8.59.0", + "@typescript-eslint/eslint-plugin": "8.59.3", + "@typescript-eslint/parser": "8.59.3", "@vitejs/plugin-vue": "6.0.6", - "@vue/compiler-sfc": "3.5.33", + "@vue/compiler-sfc": "3.5.34", "@vue/eslint-config-typescript": "14.7.0", - "@vue/runtime-core": "3.5.33", + "@vue/runtime-core": "3.5.34", "autoprefixer": "10.5.0", "cross-env": "10.1.0", "dotenv": "17.4.2", diff --git a/packages/hoppscotch-data/package.json b/packages/hoppscotch-data/package.json index 399745323c3..81425cd6e0c 100644 --- a/packages/hoppscotch-data/package.json +++ b/packages/hoppscotch-data/package.json @@ -42,7 +42,7 @@ "dependencies": { "fp-ts": "2.16.11", "io-ts": "2.2.22", - "jose": "6.2.2", + "jose": "6.2.3", "lodash": "4.18.1", "parser-ts": "0.7.0", "uuid": "13.0.0", diff --git a/packages/hoppscotch-desktop/package.json b/packages/hoppscotch-desktop/package.json index 43508918d0c..6713fa337ae 100644 --- a/packages/hoppscotch-desktop/package.json +++ b/packages/hoppscotch-desktop/package.json @@ -37,7 +37,7 @@ "@tauri-apps/plugin-updater": "2.9.0", "fp-ts": "2.16.11", "rxjs": "7.8.2", - "vue": "3.5.33", + "vue": "3.5.34", "vue-router": "4.6.4", "vue-tippy": "6.7.1", "zod": "3.25.32" diff --git a/packages/hoppscotch-js-sandbox/package.json b/packages/hoppscotch-js-sandbox/package.json index be4b439e4cc..d7e432bfcee 100644 --- a/packages/hoppscotch-js-sandbox/package.json +++ b/packages/hoppscotch-js-sandbox/package.json @@ -73,8 +73,8 @@ "@types/jest": "30.0.0", "@types/lodash": "4.17.24", "@types/node": "24.10.1", - "@typescript-eslint/eslint-plugin": "8.59.0", - "@typescript-eslint/parser": "8.59.0", + "@typescript-eslint/eslint-plugin": "8.59.3", + "@typescript-eslint/parser": "8.59.3", "eslint": "9.39.2", "eslint-config-prettier": "10.1.8", "eslint-plugin-prettier": "5.5.5", @@ -83,7 +83,7 @@ "prettier": "3.8.3", "typescript": "5.9.3", "vite": "7.3.2", - "vitest": "4.1.5" + "vitest": "4.1.6" }, "peerDependencies": { "isolated-vm": "6.1.2" diff --git a/packages/hoppscotch-selfhost-web/package.json b/packages/hoppscotch-selfhost-web/package.json index 191f6bee2b5..989dca67914 100644 --- a/packages/hoppscotch-selfhost-web/package.json +++ b/packages/hoppscotch-selfhost-web/package.json @@ -24,8 +24,8 @@ }, "dependencies": { "@fontsource-variable/inter": "5.2.8", - "@fontsource-variable/material-symbols-rounded": "5.2.43", - "@fontsource-variable/roboto-mono": "5.2.8", + "@fontsource-variable/material-symbols-rounded": "5.2.44", + "@fontsource-variable/roboto-mono": "5.2.9", "@hoppscotch/common": "workspace:^", "@hoppscotch/data": "workspace:^", "@hoppscotch/kernel": "workspace:^", @@ -36,7 +36,7 @@ "@tauri-apps/plugin-dialog": "2.0.1", "@tauri-apps/plugin-fs": "2.0.2", "@tauri-apps/plugin-shell": "2.3.3", - "@vueuse/core": "14.2.1", + "@vueuse/core": "14.3.0", "axios": "1.15.2", "buffer": "6.0.3", "dioc": "3.0.2", @@ -46,8 +46,8 @@ "stream-browserify": "3.0.0", "util": "0.12.5", "verzod": "0.4.0", - "vue": "3.5.33", - "workbox-window": "7.4.0", + "vue": "3.5.34", + "workbox-window": "7.4.1", "zod": "3.25.32" }, "devDependencies": { @@ -61,11 +61,11 @@ "@graphql-codegen/typescript-urql-graphcache": "3.1.1", "@graphql-codegen/urql-introspection": "3.0.1", "@graphql-typed-document-node/core": "3.2.0", - "@iconify-json/lucide": "1.2.104", + "@iconify-json/lucide": "1.2.107", "@intlify/unplugin-vue-i18n": "11.1.2", "@rushstack/eslint-patch": "1.16.1", - "@typescript-eslint/eslint-plugin": "8.59.0", - "@typescript-eslint/parser": "8.59.0", + "@typescript-eslint/eslint-plugin": "8.59.3", + "@typescript-eslint/parser": "8.59.3", "@vitejs/plugin-legacy": "7.2.1", "@vitejs/plugin-vue": "6.0.6", "@vue/eslint-config-typescript": "14.7.0", @@ -74,10 +74,10 @@ "dotenv": "17.4.2", "eslint": "9.39.2", "eslint-plugin-prettier": "5.5.5", - "eslint-plugin-vue": "10.9.0", + "eslint-plugin-vue": "10.9.1", "globals": "16.5.0", "npm-run-all": "4.1.5", - "postcss": "8.5.10", + "postcss": "8.5.14", "prettier-plugin-tailwindcss": "0.7.2", "tailwindcss": "3.4.16", "typescript": "5.9.3", diff --git a/packages/hoppscotch-sh-admin/package.json b/packages/hoppscotch-sh-admin/package.json index 550f30d25c3..089f6230fbe 100644 --- a/packages/hoppscotch-sh-admin/package.json +++ b/packages/hoppscotch-sh-admin/package.json @@ -38,7 +38,7 @@ "tippy.js": "6.3.7", "ts-node-dev": "2.0.0", "unplugin-vue-components": "30.0.0", - "vue": "3.5.33", + "vue": "3.5.34", "vue-i18n": "11.4.0", "vue-router": "4.6.4", "vue-tippy": "6.7.1" @@ -57,7 +57,7 @@ "@import-meta-env/unplugin": "0.6.3", "@types/lodash-es": "4.17.12", "@vitejs/plugin-vue": "6.0.6", - "@vue/compiler-sfc": "3.5.33", + "@vue/compiler-sfc": "3.5.34", "autoprefixer": "10.5.0", "dotenv": "17.4.2", "graphql-tag": "2.12.6", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 457da342a3a..fc724ae7c87 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -5,19 +5,19 @@ settings: excludeLinksFromLockfile: false overrides: - '@nestjs-modules/mailer>mjml': 5.0.0-alpha.4 '@xmldom/xmldom': 0.8.13 apiconnect-wsdl: 2.0.36 body-parser: 2.2.1 cross-spawn: 7.0.6 execa@<2.0.0: 2.0.0 + fast-uri@<=3.1.1: 3.1.2 form-data: 4.0.4 glob@>=11.0.0 <11.1.0: 11.1.0 lodash: 4.18.1 minimatch@>=4.0.0 <4.2.5: 4.2.5 serialize-javascript@<7.0.3: 7.0.3 subscriptions-transport-ws>ws: 7.5.10 - vue: 3.5.33 + vue: 3.5.34 ws: 8.17.1 importers: @@ -32,7 +32,7 @@ importers: version: 20.5.0 '@hoppscotch/ui': specifier: 0.2.5 - version: 0.2.5(eslint@10.2.1(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3)) + version: 0.2.5(eslint@10.4.0(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3)) '@types/node': specifier: 24.10.1 version: 24.10.1 @@ -81,7 +81,7 @@ importers: dependencies: '@hoppscotch/ui': specifier: 0.2.5 - version: 0.2.5(eslint@9.39.2(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3)) + version: 0.2.5(eslint@9.39.2(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3)) '@tauri-apps/api': specifier: 2.1.1 version: 2.1.1 @@ -90,7 +90,7 @@ importers: version: 2.3.3 '@vueuse/core': specifier: 14.2.1 - version: 14.2.1(vue@3.5.33(typescript@5.9.3)) + version: 14.2.1(vue@3.5.34(typescript@5.9.3)) axios: specifier: 1.15.2 version: 1.15.2 @@ -101,8 +101,8 @@ importers: specifier: 4.18.1 version: 4.18.1 vue: - specifier: 3.5.33 - version: 3.5.33(typescript@5.9.3) + specifier: 3.5.34 + version: 3.5.34(typescript@5.9.3) devDependencies: '@iconify-json/lucide': specifier: 1.2.104 @@ -124,7 +124,7 @@ importers: version: 8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) '@vitejs/plugin-vue': specifier: 6.0.6 - version: 6.0.6(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3)) + version: 6.0.6(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3)) '@vue/eslint-config-typescript': specifier: 14.7.0 version: 14.7.0(eslint-plugin-vue@10.9.0(@typescript-eslint/parser@8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) @@ -157,10 +157,10 @@ importers: version: 5.9.3 unplugin-icons: specifier: 22.5.0 - version: 22.5.0(@vue/compiler-sfc@3.5.33)(svelte@3.59.2)(vue-template-compiler@2.7.16) + version: 22.5.0(@vue/compiler-sfc@3.5.34)(svelte@3.59.2)(vue-template-compiler@2.7.16) unplugin-vue-components: specifier: 30.0.0 - version: 30.0.0(@babel/parser@7.29.2)(vue@3.5.33(typescript@5.9.3)) + version: 30.0.0(@babel/parser@7.29.3)(vue@3.5.34(typescript@5.9.3)) vite: specifier: 7.3.2 version: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) @@ -171,50 +171,50 @@ importers: packages/hoppscotch-backend: dependencies: '@apollo/server': - specifier: 5.5.0 - version: 5.5.0(graphql@16.13.2) + specifier: 5.5.1 + version: 5.5.1(graphql@16.14.0) '@as-integrations/express5': specifier: 1.1.2 - version: 1.1.2(@apollo/server@5.5.0(graphql@16.13.2))(express@5.2.1) + version: 1.1.2(@apollo/server@5.5.1(graphql@16.14.0))(express@5.2.1) '@nestjs-modules/mailer': - specifier: 2.3.4 - version: 2.3.4(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(@nestjs/terminus@11.1.1(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(@prisma/client@7.8.0(prisma@7.8.0(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(reflect-metadata@0.2.2)(rxjs@7.8.2))(chokidar@4.0.3)(nodemailer@8.0.7)(terser@5.46.1)(typescript@5.9.3) + specifier: 2.3.5 + version: 2.3.5(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(@nestjs/terminus@11.1.1(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(@prisma/client@7.8.0(prisma@7.8.0(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(reflect-metadata@0.2.2)(rxjs@7.8.2))(chokidar@4.0.3)(nodemailer@8.0.7)(terser@5.46.1)(typescript@5.9.3) '@nestjs/apollo': - specifier: 13.3.0 - version: 13.3.0(@apollo/server@5.5.0(graphql@16.13.2))(@as-integrations/express5@1.1.2(@apollo/server@5.5.0(graphql@16.13.2))(express@5.2.1))(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(@nestjs/graphql@13.3.0(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(class-transformer@0.5.1)(class-validator@0.15.1)(graphql@16.13.2)(reflect-metadata@0.2.2))(graphql@16.13.2) + specifier: 13.4.0 + version: 13.4.0(@apollo/server@5.5.1(graphql@16.14.0))(@as-integrations/express5@1.1.2(@apollo/server@5.5.1(graphql@16.14.0))(express@5.2.1))(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(@nestjs/graphql@13.4.0(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(class-transformer@0.5.1)(class-validator@0.15.1)(graphql@16.14.0)(reflect-metadata@0.2.2))(graphql@16.14.0) '@nestjs/common': - specifier: 11.1.19 - version: 11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) + specifier: 11.1.21 + version: 11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) '@nestjs/config': specifier: 4.0.4 - version: 4.0.4(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(rxjs@7.8.2) + version: 4.0.4(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(rxjs@7.8.2) '@nestjs/core': - specifier: 11.1.19 - version: 11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.19)(reflect-metadata@0.2.2)(rxjs@7.8.2) + specifier: 11.1.21 + version: 11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.21)(reflect-metadata@0.2.2)(rxjs@7.8.2) '@nestjs/graphql': - specifier: 13.3.0 - version: 13.3.0(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(class-transformer@0.5.1)(class-validator@0.15.1)(graphql@16.13.2)(reflect-metadata@0.2.2) + specifier: 13.4.0 + version: 13.4.0(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(class-transformer@0.5.1)(class-validator@0.15.1)(graphql@16.14.0)(reflect-metadata@0.2.2) '@nestjs/jwt': specifier: 11.0.2 - version: 11.0.2(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2)) + version: 11.0.2(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2)) '@nestjs/passport': specifier: 11.0.0 - version: 11.0.0(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(passport@0.7.0) + version: 11.0.0(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(passport@0.7.0) '@nestjs/platform-express': - specifier: 11.1.19 - version: 11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19) + specifier: 11.1.21 + version: 11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21) '@nestjs/schedule': specifier: 6.1.3 - version: 6.1.3(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19) + version: 6.1.3(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21) '@nestjs/swagger': - specifier: 11.4.2 - version: 11.4.2(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2) + specifier: 11.4.3 + version: 11.4.3(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2) '@nestjs/terminus': specifier: 11.1.1 - version: 11.1.1(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(@prisma/client@7.8.0(prisma@7.8.0(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(reflect-metadata@0.2.2)(rxjs@7.8.2) + version: 11.1.1(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(@prisma/client@7.8.0(prisma@7.8.0(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(reflect-metadata@0.2.2)(rxjs@7.8.2) '@nestjs/throttler': specifier: 6.5.0 - version: 6.5.0(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(reflect-metadata@0.2.2) + version: 6.5.0(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(reflect-metadata@0.2.2) '@prisma/adapter-pg': specifier: 7.8.0 version: 7.8.0 @@ -249,17 +249,17 @@ importers: specifier: 2.16.11 version: 2.16.11 graphql: - specifier: 16.13.2 - version: 16.13.2 + specifier: 16.14.0 + version: 16.14.0 graphql-query-complexity: specifier: 1.1.0 - version: 1.1.0(graphql@16.13.2) + version: 1.1.0(graphql@16.14.0) graphql-redis-subscriptions: specifier: 2.7.0 - version: 2.7.0(graphql-subscriptions@3.0.0(graphql@16.13.2)) + version: 2.7.0(graphql-subscriptions@3.0.0(graphql@16.14.0)) graphql-subscriptions: specifier: 3.0.0 - version: 3.0.0(graphql@16.13.2) + version: 3.0.0(graphql@16.14.0) handlebars: specifier: 4.7.9 version: 4.7.9 @@ -291,11 +291,11 @@ importers: specifier: 2.1.0 version: 2.1.0 pg: - specifier: 8.20.0 - version: 8.20.0 + specifier: 8.21.0 + version: 8.21.0 posthog-node: - specifier: 5.30.6 - version: 5.30.6(rxjs@7.8.2) + specifier: 5.34.6 + version: 5.34.6(rxjs@7.8.2) prisma: specifier: 7.8.0 version: 7.8.0(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) @@ -314,16 +314,16 @@ importers: version: 3.3.5 '@eslint/js': specifier: 10.0.1 - version: 10.0.1(eslint@10.2.1(jiti@2.6.1)) + version: 10.0.1(eslint@10.4.0(jiti@2.6.1)) '@nestjs/cli': specifier: 11.0.21 - version: 11.0.21(@types/node@25.6.0)(prettier@3.8.3) + version: 11.0.21(@types/node@25.9.0)(prettier@3.8.3) '@nestjs/schematics': specifier: 11.1.0 version: 11.1.0(chokidar@4.0.3)(prettier@3.8.3)(typescript@5.9.3) '@nestjs/testing': - specifier: 11.1.19 - version: 11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(@nestjs/platform-express@11.1.19) + specifier: 11.1.21 + version: 11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(@nestjs/platform-express@11.1.21) '@relmify/jest-fp-ts': specifier: 2.1.1 version: 2.1.1(fp-ts@2.16.11)(io-ts@2.2.22(fp-ts@2.16.11)) @@ -340,8 +340,8 @@ importers: specifier: 30.0.0 version: 30.0.0 '@types/node': - specifier: 25.6.0 - version: 25.6.0 + specifier: 25.9.0 + version: 25.9.0 '@types/nodemailer': specifier: 8.0.0 version: 8.0.0 @@ -361,32 +361,32 @@ importers: specifier: 7.2.0 version: 7.2.0 '@typescript-eslint/eslint-plugin': - specifier: 8.59.1 - version: 8.59.1(@typescript-eslint/parser@8.59.1(eslint@10.2.1(jiti@2.6.1))(typescript@5.9.3))(eslint@10.2.1(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.59.4 + version: 8.59.4(@typescript-eslint/parser@8.59.4(eslint@10.4.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.4.0(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': - specifier: 8.59.1 - version: 8.59.1(eslint@10.2.1(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.59.4 + version: 8.59.4(eslint@10.4.0(jiti@2.6.1))(typescript@5.9.3) cross-env: specifier: 10.1.0 version: 10.1.0 eslint: - specifier: 10.2.1 - version: 10.2.1(jiti@2.6.1) + specifier: 10.4.0 + version: 10.4.0(jiti@2.6.1) eslint-config-prettier: specifier: 10.1.8 - version: 10.1.8(eslint@10.2.1(jiti@2.6.1)) + version: 10.1.8(eslint@10.4.0(jiti@2.6.1)) eslint-plugin-prettier: specifier: 5.5.5 - version: 5.5.5(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@10.2.1(jiti@2.6.1)))(eslint@10.2.1(jiti@2.6.1))(prettier@3.8.3) + version: 5.5.5(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@10.4.0(jiti@2.6.1)))(eslint@10.4.0(jiti@2.6.1))(prettier@3.8.3) globals: - specifier: 17.5.0 - version: 17.5.0 + specifier: 17.6.0 + version: 17.6.0 jest: - specifier: 30.3.0 - version: 30.3.0(@types/node@25.6.0)(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)) + specifier: 30.4.2 + version: 30.4.2(@types/node@25.9.0)(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)) jest-mock-extended: specifier: 4.0.1 - version: 4.0.1(@jest/globals@30.3.0)(jest@30.3.0(@types/node@25.6.0)(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)))(typescript@5.9.3) + version: 4.0.1(@jest/globals@30.4.1)(jest@30.4.2(@types/node@25.9.0)(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)))(typescript@5.9.3) prettier: specifier: 3.8.3 version: 3.8.3 @@ -397,14 +397,14 @@ importers: specifier: 7.2.2 version: 7.2.2 ts-jest: - specifier: 29.4.9 - version: 29.4.9(@babel/core@7.29.0)(@jest/transform@30.3.0)(@jest/types@30.3.0)(babel-jest@30.3.0(@babel/core@7.29.0))(jest-util@30.3.0)(jest@30.3.0(@types/node@25.6.0)(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)))(typescript@5.9.3) + specifier: 29.4.10 + version: 29.4.10(@babel/core@7.29.0)(@jest/transform@30.4.1)(@jest/types@30.4.1)(babel-jest@30.4.1(@babel/core@7.29.0))(jest-util@30.4.1)(jest@30.4.2(@types/node@25.9.0)(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)))(typescript@5.9.3) ts-loader: specifier: 9.5.7 version: 9.5.7(typescript@5.9.3)(webpack@5.106.0) ts-node: specifier: 10.9.2 - version: 10.9.2(@types/node@25.6.0)(typescript@5.9.3) + version: 10.9.2(@types/node@25.9.0)(typescript@5.9.3) tsconfig-paths: specifier: 4.2.0 version: 4.2.0 @@ -448,8 +448,8 @@ importers: specifier: 6.15.1 version: 6.15.1 semver: - specifier: 7.7.4 - version: 7.7.4 + specifier: 7.8.0 + version: 7.8.0 tough-cookie: specifier: 6.0.1 version: 6.0.1 @@ -479,8 +479,8 @@ importers: specifier: 5.5.2 version: 5.5.2 '@types/qs': - specifier: 6.15.0 - version: 6.15.0 + specifier: 6.15.1 + version: 6.15.1 fp-ts: specifier: 2.16.11 version: 2.16.11 @@ -489,13 +489,13 @@ importers: version: 3.8.3 tsup: specifier: 8.5.1 - version: 8.5.1(jiti@2.6.1)(postcss@8.5.10)(typescript@5.9.3)(yaml@2.8.3) + version: 8.5.1(jiti@2.6.1)(postcss@8.5.14)(typescript@5.9.3)(yaml@2.8.3) typescript: specifier: 5.9.3 version: 5.9.3 vitest: - specifier: 4.1.5 - version: 4.1.5(@types/node@25.6.0)(jsdom@27.4.0(@noble/hashes@2.2.0))(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + specifier: 4.1.6 + version: 4.1.6(@types/node@25.9.0)(jsdom@27.4.0(@noble/hashes@2.2.0))(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) packages/hoppscotch-common: dependencies: @@ -540,7 +540,7 @@ importers: version: 6.38.8 '@guolao/vue-monaco-editor': specifier: 1.6.0 - version: 1.6.0(monaco-editor@0.55.1)(vue@3.5.33(typescript@5.9.3)) + version: 1.6.0(monaco-editor@0.55.1)(vue@3.5.34(typescript@5.9.3)) '@hoppscotch/codemirror-lang-graphql': specifier: workspace:^ version: link:../codemirror-lang-graphql @@ -561,10 +561,10 @@ importers: version: '@CuriousCorrelation/plugin-appload@https://codeload.github.com/CuriousCorrelation/tauri-plugin-appload/tar.gz/0d58d53be2bc75aeb5916bd0d77794fd209426af' '@hoppscotch/ui': specifier: 0.2.5 - version: 0.2.5(eslint@9.39.2(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3)) + version: 0.2.5(eslint@9.39.2(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3)) '@hoppscotch/vue-toasted': specifier: 0.1.0 - version: 0.1.0(vue@3.5.33(typescript@5.9.3)) + version: 0.1.0(vue@3.5.34(typescript@5.9.3)) '@lezer/highlight': specifier: 1.2.1 version: 1.2.1 @@ -594,7 +594,7 @@ importers: version: 24.10.1 '@unhead/vue': specifier: 2.1.12 - version: 2.1.12(vue@3.5.33(typescript@5.9.3)) + version: 2.1.12(vue@3.5.34(typescript@5.9.3)) '@urql/core': specifier: 6.0.1 version: 6.0.1(graphql@16.13.2) @@ -606,7 +606,7 @@ importers: version: 3.0.0(@urql/core@6.0.1(graphql@16.13.2)) '@vueuse/core': specifier: 14.2.1 - version: 14.2.1(vue@3.5.33(typescript@5.9.3)) + version: 14.2.1(vue@3.5.34(typescript@5.9.3)) acorn-walk: specifier: 8.3.5 version: 8.3.5 @@ -624,10 +624,10 @@ importers: version: 2.0.0 dioc: specifier: 3.0.2 - version: 3.0.2(vue@3.5.33(typescript@5.9.3)) + version: 3.0.2(vue@3.5.34(typescript@5.9.3)) dompurify: - specifier: 3.4.1 - version: 3.4.1 + specifier: 3.4.3 + version: 3.4.3 esprima: specifier: 4.0.1 version: 4.0.1 @@ -770,26 +770,26 @@ importers: specifier: 0.4.0 version: 0.4.0(zod@3.25.32) vue: - specifier: 3.5.33 - version: 3.5.33(typescript@5.9.3) + specifier: 3.5.34 + version: 3.5.34(typescript@5.9.3) vue-i18n: specifier: 11.4.0 - version: 11.4.0(vue@3.5.33(typescript@5.9.3)) + version: 11.4.0(vue@3.5.34(typescript@5.9.3)) vue-json-pretty: specifier: 2.6.0 - version: 2.6.0(vue@3.5.33(typescript@5.9.3)) + version: 2.6.0(vue@3.5.34(typescript@5.9.3)) vue-pdf-embed: specifier: 2.1.4 - version: 2.1.4(vue@3.5.33(typescript@5.9.3)) + version: 2.1.4(vue@3.5.34(typescript@5.9.3)) vue-router: specifier: 4.6.4 - version: 4.6.4(vue@3.5.33(typescript@5.9.3)) + version: 4.6.4(vue@3.5.34(typescript@5.9.3)) vue-tippy: specifier: 6.7.1 - version: 6.7.1(vue@3.5.33(typescript@5.9.3)) + version: 6.7.1(vue@3.5.34(typescript@5.9.3)) vuedraggable-es: specifier: 4.1.1 - version: 4.1.1(vue@3.5.33(typescript@5.9.3)) + version: 4.1.1(vue@3.5.34(typescript@5.9.3)) wonka: specifier: 6.3.6 version: 6.3.6 @@ -843,14 +843,14 @@ importers: specifier: 3.2.0 version: 3.2.0(graphql@16.13.2) '@iconify-json/lucide': - specifier: 1.2.104 - version: 1.2.104 + specifier: 1.2.107 + version: 1.2.107 '@import-meta-env/cli': specifier: 0.7.4 version: 0.7.4(@import-meta-env/unplugin@0.6.3) '@intlify/unplugin-vue-i18n': specifier: 11.1.2 - version: 11.1.2(@vue/compiler-dom@3.5.33)(eslint@9.39.2(jiti@2.6.1))(rollup@4.60.2)(typescript@5.9.3)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-i18n@11.4.0(vue@3.5.33(typescript@5.9.3)))(vue@3.5.33(typescript@5.9.3)) + version: 11.1.2(@vue/compiler-dom@3.5.34)(eslint@9.39.2(jiti@2.6.1))(rollup@4.60.2)(typescript@5.9.3)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-i18n@11.4.0(vue@3.5.34(typescript@5.9.3)))(vue@3.5.34(typescript@5.9.3)) '@relmify/jest-fp-ts': specifier: 2.1.1 version: 2.1.1(fp-ts@2.16.11)(io-ts@2.2.22(fp-ts@2.16.11)) @@ -876,8 +876,8 @@ importers: specifier: 3.5.11 version: 3.5.11 '@types/qs': - specifier: 6.15.0 - version: 6.15.0 + specifier: 6.15.1 + version: 6.15.1 '@types/splitpanes': specifier: 2.2.6 version: 2.2.6(typescript@5.9.3) @@ -885,23 +885,23 @@ importers: specifier: 21.0.3 version: 21.0.3 '@typescript-eslint/eslint-plugin': - specifier: 8.59.0 - version: 8.59.0(@typescript-eslint/parser@8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.59.3 + version: 8.59.3(@typescript-eslint/parser@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': - specifier: 8.59.0 - version: 8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.59.3 + version: 8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) '@vitejs/plugin-vue': specifier: 6.0.6 - version: 6.0.6(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3)) + version: 6.0.6(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3)) '@vue/compiler-sfc': - specifier: 3.5.33 - version: 3.5.33 + specifier: 3.5.34 + version: 3.5.34 '@vue/eslint-config-typescript': specifier: 14.7.0 - version: 14.7.0(eslint-plugin-vue@10.9.0(@typescript-eslint/parser@8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + version: 14.7.0(eslint-plugin-vue@10.9.0(@typescript-eslint/parser@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) '@vue/runtime-core': - specifier: 3.5.33 - version: 3.5.33 + specifier: 3.5.34 + version: 3.5.34 autoprefixer: specifier: 10.5.0 version: 10.5.0(postcss@8.5.10) @@ -919,7 +919,7 @@ importers: version: 5.5.5(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@9.39.2(jiti@2.6.1)))(eslint@9.39.2(jiti@2.6.1))(prettier@3.8.3) eslint-plugin-vue: specifier: 10.9.0 - version: 10.9.0(@typescript-eslint/parser@8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))) + version: 10.9.0(@typescript-eslint/parser@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))) glob: specifier: 13.0.6 version: 13.0.6 @@ -964,10 +964,10 @@ importers: version: 1.4.0(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) unplugin-icons: specifier: 22.5.0 - version: 22.5.0(@vue/compiler-sfc@3.5.33)(svelte@3.59.2)(vue-template-compiler@2.7.16) + version: 22.5.0(@vue/compiler-sfc@3.5.34)(svelte@3.59.2)(vue-template-compiler@2.7.16) unplugin-vue-components: specifier: 30.0.0 - version: 30.0.0(@babel/parser@7.29.2)(vue@3.5.33(typescript@5.9.3)) + version: 30.0.0(@babel/parser@7.29.3)(vue@3.5.34(typescript@5.9.3)) vite: specifier: 7.3.2 version: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) @@ -982,7 +982,7 @@ importers: version: 2.0.2(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) vite-plugin-pages: specifier: 0.33.3 - version: 0.33.3(@vue/compiler-sfc@3.5.33)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.33(typescript@5.9.3))) + version: 0.33.3(@vue/compiler-sfc@3.5.34)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.34(typescript@5.9.3))) vite-plugin-pages-sitemap: specifier: 1.7.1 version: 1.7.1 @@ -991,7 +991,7 @@ importers: version: 1.2.0(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(workbox-build@7.4.0(@types/babel__core@7.20.5))(workbox-window@7.4.0) vite-plugin-vue-layouts: specifier: 0.11.0 - version: 0.11.0(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.33(typescript@5.9.3)))(vue@3.5.33(typescript@5.9.3)) + version: 0.11.0(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.34(typescript@5.9.3)))(vue@3.5.34(typescript@5.9.3)) vitest: specifier: 4.1.5 version: 4.1.5(@types/node@24.10.1)(jsdom@27.4.0(@noble/hashes@2.2.0))(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) @@ -1008,8 +1008,8 @@ importers: specifier: 2.2.22 version: 2.2.22(fp-ts@2.16.11) jose: - specifier: 6.2.2 - version: 6.2.2 + specifier: 6.2.3 + version: 6.2.3 lodash: specifier: 4.18.1 version: 4.18.1 @@ -1034,7 +1034,7 @@ importers: version: 5.9.3 vite: specifier: 7.3.2 - version: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + version: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) packages/hoppscotch-desktop: dependencies: @@ -1058,7 +1058,7 @@ importers: version: '@CuriousCorrelation/plugin-appload@https://codeload.github.com/CuriousCorrelation/tauri-plugin-appload/tar.gz/0d58d53be2bc75aeb5916bd0d77794fd209426af' '@hoppscotch/ui': specifier: 0.2.5 - version: 0.2.5(eslint@9.39.2(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3)) + version: 0.2.5(eslint@9.39.2(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3)) '@tauri-apps/api': specifier: 2.1.1 version: 2.1.1 @@ -1084,14 +1084,14 @@ importers: specifier: 7.8.2 version: 7.8.2 vue: - specifier: 3.5.33 - version: 3.5.33(typescript@5.9.3) + specifier: 3.5.34 + version: 3.5.34(typescript@5.9.3) vue-router: specifier: 4.6.4 - version: 4.6.4(vue@3.5.33(typescript@5.9.3)) + version: 4.6.4(vue@3.5.34(typescript@5.9.3)) vue-tippy: specifier: 6.7.1 - version: 6.7.1(vue@3.5.33(typescript@5.9.3)) + version: 6.7.1(vue@3.5.34(typescript@5.9.3)) zod: specifier: 3.25.32 version: 3.25.32 @@ -1119,7 +1119,7 @@ importers: version: 8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) '@vitejs/plugin-vue': specifier: 6.0.6 - version: 6.0.6(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3)) + version: 6.0.6(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3)) '@vue/eslint-config-typescript': specifier: 14.7.0 version: 14.7.0(eslint-plugin-vue@10.9.0(@typescript-eslint/parser@8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) @@ -1146,19 +1146,19 @@ importers: version: 1.99.0 tailwindcss: specifier: 3.4.16 - version: 3.4.16(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)) + version: 3.4.16(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)) typescript: specifier: 5.9.3 version: 5.9.3 unplugin-icons: specifier: 22.5.0 - version: 22.5.0(@vue/compiler-sfc@3.5.33)(svelte@3.59.2)(vue-template-compiler@2.7.16) + version: 22.5.0(@vue/compiler-sfc@3.5.34)(svelte@3.59.2)(vue-template-compiler@2.7.16) unplugin-vue-components: specifier: 30.0.0 - version: 30.0.0(@babel/parser@7.29.2)(vue@3.5.33(typescript@5.9.3)) + version: 30.0.0(@babel/parser@7.29.3)(vue@3.5.34(typescript@5.9.3)) vite: specifier: 7.3.2 - version: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + version: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) vue-tsc: specifier: 2.2.0 version: 2.2.0(typescript@5.9.3) @@ -1193,7 +1193,7 @@ importers: devDependencies: '@sveltejs/vite-plugin-svelte': specifier: ^1.0.1 - version: 1.4.0(svelte@3.59.2)(vite@3.2.11(@types/node@25.6.0)(sass@1.99.0)(terser@5.46.1)) + version: 1.4.0(svelte@3.59.2)(vite@3.2.11(@types/node@25.9.0)(sass@1.99.0)(terser@5.46.1)) '@tauri-apps/cli': specifier: ^2.0.0-alpha.17 version: 2.9.3 @@ -1202,7 +1202,7 @@ importers: version: 3.59.2 vite: specifier: ^3.0.2 - version: 3.2.11(@types/node@25.6.0)(sass@1.99.0)(terser@5.46.1) + version: 3.2.11(@types/node@25.9.0)(sass@1.99.0)(terser@5.46.1) packages/hoppscotch-desktop/plugin-workspace/tauri-plugin-relay: dependencies: @@ -1278,11 +1278,11 @@ importers: specifier: 24.10.1 version: 24.10.1 '@typescript-eslint/eslint-plugin': - specifier: 8.59.0 - version: 8.59.0(@typescript-eslint/parser@8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.59.3 + version: 8.59.3(@typescript-eslint/parser@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': - specifier: 8.59.0 - version: 8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.59.3 + version: 8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) eslint: specifier: 9.39.2 version: 9.39.2(jiti@2.6.1) @@ -1308,8 +1308,8 @@ importers: specifier: 7.3.2 version: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) vitest: - specifier: 4.1.5 - version: 4.1.5(@types/node@24.10.1)(jsdom@27.4.0(@noble/hashes@2.2.0))(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + specifier: 4.1.6 + version: 4.1.6(@types/node@24.10.1)(jsdom@27.4.0(@noble/hashes@2.2.0))(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) packages/hoppscotch-kernel: dependencies: @@ -1381,11 +1381,11 @@ importers: specifier: 5.2.8 version: 5.2.8 '@fontsource-variable/material-symbols-rounded': - specifier: 5.2.43 - version: 5.2.43 + specifier: 5.2.44 + version: 5.2.44 '@fontsource-variable/roboto-mono': - specifier: 5.2.8 - version: 5.2.8 + specifier: 5.2.9 + version: 5.2.9 '@hoppscotch/common': specifier: workspace:^ version: link:../hoppscotch-common @@ -1400,7 +1400,7 @@ importers: version: '@CuriousCorrelation/plugin-appload@https://codeload.github.com/CuriousCorrelation/tauri-plugin-appload/tar.gz/0d58d53be2bc75aeb5916bd0d77794fd209426af' '@hoppscotch/ui': specifier: 0.2.5 - version: 0.2.5(eslint@9.39.2(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3)) + version: 0.2.5(eslint@9.39.2(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3)) '@import-meta-env/unplugin': specifier: 0.6.3 version: 0.6.3 @@ -1417,8 +1417,8 @@ importers: specifier: 2.3.3 version: 2.3.3 '@vueuse/core': - specifier: 14.2.1 - version: 14.2.1(vue@3.5.33(typescript@5.9.3)) + specifier: 14.3.0 + version: 14.3.0(vue@3.5.34(typescript@5.9.3)) axios: specifier: 1.15.2 version: 1.15.2 @@ -1427,7 +1427,7 @@ importers: version: 6.0.3 dioc: specifier: 3.0.2 - version: 3.0.2(vue@3.5.33(typescript@5.9.3)) + version: 3.0.2(vue@3.5.34(typescript@5.9.3)) fp-ts: specifier: 2.16.11 version: 2.16.11 @@ -1447,11 +1447,11 @@ importers: specifier: 0.4.0 version: 0.4.0(zod@3.25.32) vue: - specifier: 3.5.33 - version: 3.5.33(typescript@5.9.3) + specifier: 3.5.34 + version: 3.5.34(typescript@5.9.3) workbox-window: - specifier: 7.4.0 - version: 7.4.0 + specifier: 7.4.1 + version: 7.4.1 zod: specifier: 3.25.32 version: 3.25.32 @@ -1464,55 +1464,55 @@ importers: version: 9.39.2 '@graphql-codegen/add': specifier: 6.0.1 - version: 6.0.1(graphql@16.13.2) + version: 6.0.1(graphql@16.14.0) '@graphql-codegen/cli': specifier: 6.3.1 - version: 6.3.1(@parcel/watcher@2.5.6)(@types/node@25.6.0)(graphql@16.13.2)(typescript@5.9.3) + version: 6.3.1(@parcel/watcher@2.5.6)(@types/node@25.9.0)(graphql@16.14.0)(typescript@5.9.3) '@graphql-codegen/typed-document-node': specifier: 6.1.8 - version: 6.1.8(graphql@16.13.2) + version: 6.1.8(graphql@16.14.0) '@graphql-codegen/typescript': specifier: 5.0.10 - version: 5.0.10(graphql@16.13.2) + version: 5.0.10(graphql@16.14.0) '@graphql-codegen/typescript-operations': specifier: 5.1.0 - version: 5.1.0(graphql@16.13.2) + version: 5.1.0(graphql@16.14.0) '@graphql-codegen/typescript-urql-graphcache': specifier: 3.1.1 - version: 3.1.1(@urql/exchange-graphcache@7.2.4(@urql/core@6.0.1(graphql@16.13.2))(graphql@16.13.2))(graphql-tag@2.12.6(graphql@16.13.2))(graphql@16.13.2) + version: 3.1.1(@urql/exchange-graphcache@7.2.4(@urql/core@6.0.1(graphql@16.14.0))(graphql@16.14.0))(graphql-tag@2.12.6(graphql@16.14.0))(graphql@16.14.0) '@graphql-codegen/urql-introspection': specifier: 3.0.1 - version: 3.0.1(graphql@16.13.2) + version: 3.0.1(graphql@16.14.0) '@graphql-typed-document-node/core': specifier: 3.2.0 - version: 3.2.0(graphql@16.13.2) + version: 3.2.0(graphql@16.14.0) '@iconify-json/lucide': - specifier: 1.2.104 - version: 1.2.104 + specifier: 1.2.107 + version: 1.2.107 '@intlify/unplugin-vue-i18n': specifier: 11.1.2 - version: 11.1.2(@vue/compiler-dom@3.5.33)(eslint@9.39.2(jiti@2.6.1))(rollup@4.60.2)(typescript@5.9.3)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-i18n@11.4.0(vue@3.5.33(typescript@5.9.3)))(vue@3.5.33(typescript@5.9.3)) + version: 11.1.2(@vue/compiler-dom@3.5.34)(eslint@9.39.2(jiti@2.6.1))(rollup@4.60.2)(typescript@5.9.3)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-i18n@11.4.0(vue@3.5.34(typescript@5.9.3)))(vue@3.5.34(typescript@5.9.3)) '@rushstack/eslint-patch': specifier: 1.16.1 version: 1.16.1 '@typescript-eslint/eslint-plugin': - specifier: 8.59.0 - version: 8.59.0(@typescript-eslint/parser@8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.59.3 + version: 8.59.3(@typescript-eslint/parser@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': - specifier: 8.59.0 - version: 8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + specifier: 8.59.3 + version: 8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) '@vitejs/plugin-legacy': specifier: 7.2.1 - version: 7.2.1(terser@5.46.1)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + version: 7.2.1(terser@5.46.1)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) '@vitejs/plugin-vue': specifier: 6.0.6 - version: 6.0.6(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3)) + version: 6.0.6(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3)) '@vue/eslint-config-typescript': specifier: 14.7.0 - version: 14.7.0(eslint-plugin-vue@10.9.0(@typescript-eslint/parser@8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + version: 14.7.0(eslint-plugin-vue@10.9.1(@typescript-eslint/parser@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) autoprefixer: specifier: 10.5.0 - version: 10.5.0(postcss@8.5.10) + version: 10.5.0(postcss@8.5.14) cross-env: specifier: 10.1.0 version: 10.1.0 @@ -1526,8 +1526,8 @@ importers: specifier: 5.5.5 version: 5.5.5(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@9.39.2(jiti@2.6.1)))(eslint@9.39.2(jiti@2.6.1))(prettier@3.8.3) eslint-plugin-vue: - specifier: 10.9.0 - version: 10.9.0(@typescript-eslint/parser@8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))) + specifier: 10.9.1 + version: 10.9.1(@typescript-eslint/parser@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))) globals: specifier: 16.5.0 version: 16.5.0 @@ -1535,53 +1535,53 @@ importers: specifier: 4.1.5 version: 4.1.5 postcss: - specifier: 8.5.10 - version: 8.5.10 + specifier: 8.5.14 + version: 8.5.14 prettier-plugin-tailwindcss: specifier: 0.7.2 version: 0.7.2(prettier@3.8.3) tailwindcss: specifier: 3.4.16 - version: 3.4.16(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)) + version: 3.4.16(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)) typescript: specifier: 5.9.3 version: 5.9.3 unplugin-fonts: specifier: 1.4.0 - version: 1.4.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + version: 1.4.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) unplugin-icons: specifier: 22.5.0 - version: 22.5.0(@vue/compiler-sfc@3.5.33)(svelte@3.59.2)(vue-template-compiler@2.7.16) + version: 22.5.0(@vue/compiler-sfc@3.5.34)(svelte@3.59.2)(vue-template-compiler@2.7.16) unplugin-vue-components: specifier: 30.0.0 - version: 30.0.0(@babel/parser@7.29.2)(vue@3.5.33(typescript@5.9.3)) + version: 30.0.0(@babel/parser@7.29.3)(vue@3.5.34(typescript@5.9.3)) vite: specifier: 7.3.2 - version: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + version: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) vite-plugin-fonts: specifier: 0.7.0 - version: 0.7.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + version: 0.7.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) vite-plugin-html-config: specifier: 2.0.2 - version: 2.0.2(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + version: 2.0.2(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) vite-plugin-inspect: specifier: 11.3.3 - version: 11.3.3(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + version: 11.3.3(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) vite-plugin-pages: specifier: 0.33.3 - version: 0.33.3(@vue/compiler-sfc@3.5.33)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.33(typescript@5.9.3))) + version: 0.33.3(@vue/compiler-sfc@3.5.34)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.34(typescript@5.9.3))) vite-plugin-pages-sitemap: specifier: 1.7.1 version: 1.7.1 vite-plugin-pwa: specifier: 1.2.0 - version: 1.2.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(workbox-build@7.4.0(@types/babel__core@7.20.5))(workbox-window@7.4.0) + version: 1.2.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(workbox-build@7.4.0(@types/babel__core@7.20.5))(workbox-window@7.4.1) vite-plugin-static-copy: specifier: 3.3.0 - version: 3.3.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + version: 3.3.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) vite-plugin-vue-layouts: specifier: 0.11.0 - version: 0.11.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.33(typescript@5.9.3)))(vue@3.5.33(typescript@5.9.3)) + version: 0.11.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.34(typescript@5.9.3)))(vue@3.5.34(typescript@5.9.3)) vue-tsc: specifier: 2.1.6 version: 2.1.6(typescript@5.9.3) @@ -1602,13 +1602,13 @@ importers: version: 3.2.0(graphql@16.13.2) '@hoppscotch/ui': specifier: 0.2.5 - version: 0.2.5(eslint@10.2.1(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3)) + version: 0.2.5(eslint@10.4.0(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3)) '@hoppscotch/vue-toasted': specifier: 0.1.0 - version: 0.1.0(vue@3.5.33(typescript@5.9.3)) + version: 0.1.0(vue@3.5.34(typescript@5.9.3)) '@intlify/unplugin-vue-i18n': specifier: 11.1.2 - version: 11.1.2(@vue/compiler-dom@3.5.33)(eslint@10.2.1(jiti@2.6.1))(rollup@4.60.2)(typescript@5.9.3)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-i18n@11.4.0(vue@3.5.33(typescript@5.9.3)))(vue@3.5.33(typescript@5.9.3)) + version: 11.1.2(@vue/compiler-dom@3.5.34)(eslint@10.4.0(jiti@2.6.1))(rollup@4.60.2)(typescript@5.9.3)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-i18n@11.4.0(vue@3.5.34(typescript@5.9.3)))(vue@3.5.34(typescript@5.9.3)) '@types/cors': specifier: 2.8.19 version: 2.8.19 @@ -1617,10 +1617,10 @@ importers: version: 3.0.0(@urql/core@6.0.1(graphql@16.13.2)) '@urql/vue': specifier: 2.1.0 - version: 2.1.0(@urql/core@6.0.1(graphql@16.13.2))(vue@3.5.33(typescript@5.9.3)) + version: 2.1.0(@urql/core@6.0.1(graphql@16.13.2))(vue@3.5.34(typescript@5.9.3)) '@vueuse/core': specifier: 14.2.1 - version: 14.2.1(vue@3.5.33(typescript@5.9.3)) + version: 14.2.1(vue@3.5.34(typescript@5.9.3)) axios: specifier: 1.15.2 version: 1.15.2 @@ -1653,32 +1653,32 @@ importers: version: 7.8.2 tailwindcss: specifier: 3.4.16 - version: 3.4.16(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)) + version: 3.4.16(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)) tippy.js: specifier: 6.3.7 version: 6.3.7 ts-node-dev: specifier: 2.0.0 - version: 2.0.0(@types/node@25.6.0)(typescript@5.9.3) + version: 2.0.0(@types/node@25.9.0)(typescript@5.9.3) unplugin-vue-components: specifier: 30.0.0 - version: 30.0.0(@babel/parser@7.29.2)(vue@3.5.33(typescript@5.9.3)) + version: 30.0.0(@babel/parser@7.29.3)(vue@3.5.34(typescript@5.9.3)) vue: - specifier: 3.5.33 - version: 3.5.33(typescript@5.9.3) + specifier: 3.5.34 + version: 3.5.34(typescript@5.9.3) vue-i18n: specifier: 11.4.0 - version: 11.4.0(vue@3.5.33(typescript@5.9.3)) + version: 11.4.0(vue@3.5.34(typescript@5.9.3)) vue-router: specifier: 4.6.4 - version: 4.6.4(vue@3.5.33(typescript@5.9.3)) + version: 4.6.4(vue@3.5.34(typescript@5.9.3)) vue-tippy: specifier: 6.7.1 - version: 6.7.1(vue@3.5.33(typescript@5.9.3)) + version: 6.7.1(vue@3.5.34(typescript@5.9.3)) devDependencies: '@graphql-codegen/cli': specifier: 6.3.1 - version: 6.3.1(@parcel/watcher@2.5.6)(@types/node@25.6.0)(graphql@16.13.2)(typescript@5.9.3) + version: 6.3.1(@parcel/watcher@2.5.6)(@types/node@25.9.0)(graphql@16.13.2)(typescript@5.9.3) '@graphql-codegen/client-preset': specifier: 5.3.0 version: 5.3.0(graphql@16.13.2) @@ -1714,10 +1714,10 @@ importers: version: 4.17.12 '@vitejs/plugin-vue': specifier: 6.0.6 - version: 6.0.6(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3)) + version: 6.0.6(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3)) '@vue/compiler-sfc': - specifier: 3.5.33 - version: 3.5.33 + specifier: 3.5.34 + version: 3.5.34 autoprefixer: specifier: 10.5.0 version: 10.5.0(postcss@8.5.10) @@ -1738,25 +1738,25 @@ importers: version: 1.99.0 ts-node: specifier: 10.9.2 - version: 10.9.2(@types/node@25.6.0)(typescript@5.9.3) + version: 10.9.2(@types/node@25.9.0)(typescript@5.9.3) typescript: specifier: 5.9.3 version: 5.9.3 unplugin-fonts: specifier: 1.4.0 - version: 1.4.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + version: 1.4.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) unplugin-icons: specifier: 22.5.0 - version: 22.5.0(@vue/compiler-sfc@3.5.33)(svelte@3.59.2)(vue-template-compiler@2.7.16) + version: 22.5.0(@vue/compiler-sfc@3.5.34)(svelte@3.59.2)(vue-template-compiler@2.7.16) vite: specifier: 7.3.2 - version: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + version: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) vite-plugin-pages: specifier: 0.33.2 - version: 0.33.2(@vue/compiler-sfc@3.5.33)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.33(typescript@5.9.3))) + version: 0.33.2(@vue/compiler-sfc@3.5.34)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.34(typescript@5.9.3))) vite-plugin-vue-layouts: specifier: 0.11.0 - version: 0.11.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.33(typescript@5.9.3)))(vue@3.5.33(typescript@5.9.3)) + version: 0.11.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.34(typescript@5.9.3)))(vue@3.5.34(typescript@5.9.3)) vue-tsc: specifier: 2.1.6 version: 2.1.6(typescript@5.9.3) @@ -1863,8 +1863,8 @@ packages: peerDependencies: '@apollo/server': ^4.0.0 - '@apollo/server@5.5.0': - resolution: {integrity: sha512-vWtodBOK/SZwBTJzItECOmLfL8E8pn/IdvP7pnxN5g2tny9iW4+9sxdajE798wV1H2+PYp/rRcl/soSHIBKMPw==} + '@apollo/server@5.5.1': + resolution: {integrity: sha512-Rn3g5TJQsMSUY23CWZTghWdBWyjX7dP1eaEBPkvmM2RHi82cDcpgTIkSCbGvtTUEGjwopLv1AAooU/n7iIZ20A==} engines: {node: '>=20'} peerDependencies: graphql: ^16.11.0 @@ -2074,6 +2074,11 @@ packages: engines: {node: '>=6.0.0'} hasBin: true + '@babel/parser@7.29.3': + resolution: {integrity: sha512-b3ctpQwp+PROvU/cttc4OYl4MzfJUWy6FZg+PMXfzmt/+39iHVF0sDfqay8TQM3JA2EUOyKcFZt75jWriQijsA==} + engines: {node: '>=6.0.0'} + hasBin: true + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5': resolution: {integrity: sha512-87GDMS3tsmMSi/3bWOte1UblL+YUTFMV8SZPZ2eSEL17s74Cw/l63rR6NmGVKMYW2GYi85nE+/d6Hw5N0bEk2Q==} engines: {node: '>=6.9.0'} @@ -2597,7 +2602,7 @@ packages: '@boringer-avatars/vue3@0.2.1': resolution: {integrity: sha512-KzAfh31SDXToTvFL0tBNG5Ur+VzfD1PP4jmY5/GS+eIuObGTIAiUu9eiht0LjuAGI+0xCgnaEgsTrOx8H3vLOQ==} peerDependencies: - vue: 3.5.33 + vue: 3.5.34 '@codemirror/autocomplete@6.20.0': resolution: {integrity: sha512-bOwvTOIJcG5FVo5gUUupiwYh8MioPLQ4UcqbcRf7UQ98X90tCa9E1kZ3Z7tqwpZxYyOvh1YTYbmZE9RTfTp5hg==} @@ -3368,8 +3373,8 @@ packages: resolution: {integrity: sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/config-helpers@0.5.5': - resolution: {integrity: sha512-eIJYKTCECbP/nsKaaruF6LW967mtbQbsw4JTtSVkUQc9MneSkbrgPJAbKl9nWr0ZeowV8BfsarBmPpBzGelA2w==} + '@eslint/config-helpers@0.6.0': + resolution: {integrity: sha512-ii6Bw9jJ2zi2cWA2Z+9/QZ/+3DX6kwaV5Q986D/CdP3Lap3w/pgQZ373FV7byY/i7L4IRH/G43I5dz1ClsCbpA==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} '@eslint/core@0.17.0': @@ -3441,9 +3446,15 @@ packages: '@fontsource-variable/material-symbols-rounded@5.2.43': resolution: {integrity: sha512-3cTOh6uHYIUyplM9a8L/FdRuXA6UOP3Q0dVyXCmViZuzW19o3mMhh39AxFdP8hV1suCldC6YvizBDhVh3Bddjw==} + '@fontsource-variable/material-symbols-rounded@5.2.44': + resolution: {integrity: sha512-8Q4Wxawyrb6YYfF7ffNQhZlKskx9hQhl4mNa4RbxsTdNjONmXwqz/lfUtuArK2boz9Avu1DQvyutXKePFOzCGQ==} + '@fontsource-variable/roboto-mono@5.2.8': resolution: {integrity: sha512-6M2U3wGIUxYNKRrUoKls8BRRIPDA57T8J0agqwyDkiEHrLEEAqptsxcUl3eTm6tnRNEn6yEm4pCefvtnujebDA==} + '@fontsource-variable/roboto-mono@5.2.9': + resolution: {integrity: sha512-OzFO2AXlSGcXl/NcXS3CGjImb6rczCByPJ1C+Dzp9kkYOrUPyrGTuAtqPcmA/d+nZGX5oyOWKXLk5BrwVLYqkw==} + '@glideapps/ts-necessities@2.2.3': resolution: {integrity: sha512-gXi0awOZLHk3TbW55GZLCPP6O+y/b5X1pBXKBVckFONSwF1z1E5ND2BGJsghQFah+pW7pkkyFb2VhUQI2qhL5w==} @@ -3723,18 +3734,6 @@ packages: peerDependencies: graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - '@graphql-tools/merge@9.1.7': - resolution: {integrity: sha512-Y5E1vTbTabvcXbkakdFUt4zUIzB1fyaEnVmIWN0l0GMed2gdD01TpZWLUm4RNAxpturvolrb24oGLQrBbPLSoQ==} - engines: {node: '>=16.0.0'} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - - '@graphql-tools/merge@9.1.8': - resolution: {integrity: sha512-25V7WDrODo1cPrmuUCrqf5qlMA4a/Ow4aHaqJ1MnTUaluwsV3UiqzCHWux3HSLb0H63mkoZiuOrU5xJhxRcoCg==} - engines: {node: '>=16.0.0'} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - '@graphql-tools/merge@9.1.9': resolution: {integrity: sha512-iHUWNjRHeQRYdgIMIuChThOwoKzA9vrzYeslgfBo5eUYEyHGZCoDPjAavssoYXLwstYt1dZj2J22jSzc2DrN0Q==} engines: {node: '>=16.0.0'} @@ -3763,18 +3762,6 @@ packages: peerDependencies: graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - '@graphql-tools/schema@10.0.31': - resolution: {integrity: sha512-ZewRgWhXef6weZ0WiP7/MV47HXiuFbFpiDUVLQl6mgXsWSsGELKFxQsyUCBos60Qqy1JEFAIu3Ns6GGYjGkqkQ==} - engines: {node: '>=16.0.0'} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - - '@graphql-tools/schema@10.0.32': - resolution: {integrity: sha512-kJ1Qn20MPnlaEVH37639E6rzQ1tEtr6XTUhNdR4EKydl+FijtLhWX2WLZbGnvrYuG8XUcMxsZU9mRRYYNvK02w==} - engines: {node: '>=16.0.0'} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - '@graphql-tools/schema@10.0.33': resolution: {integrity: sha512-O6P3RIftO0jafnSsFAqpjurUuUxJ43s/AdPVLQsBkI6y4Ic/tKm4C1Qm1KKQsCDTOxXPJClh/v3g7k7yLKCFBQ==} engines: {node: '>=16.0.0'} @@ -3797,12 +3784,6 @@ packages: peerDependencies: graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - '@graphql-tools/utils@11.0.0': - resolution: {integrity: sha512-bM1HeZdXA2C3LSIeLOnH/bcqSgbQgKEDrjxODjqi3y58xai2TkNrtYcQSoWzGbt9VMN1dORGjR7Vem8SPnUFQA==} - engines: {node: '>=16.0.0'} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - '@graphql-tools/utils@11.0.1': resolution: {integrity: sha512-pNyCOb95ab/z3zkkiPwIPYxigX7IcpyFVcgD1XACDEvg/7yGnKCESx3k/XHEeneKYx/aWKGzEh/uuf6M6Q8HOw==} engines: {node: '>=16.0.0'} @@ -3841,7 +3822,7 @@ packages: peerDependencies: '@vue/composition-api': ^1.7.2 monaco-editor: '>=0.43.0' - vue: 3.5.33 + vue: 3.5.34 peerDependenciesMeta: '@vue/composition-api': optional: true @@ -3874,7 +3855,7 @@ packages: resolution: {integrity: sha512-EiWODKPBxvx/BoylxbyrlBIzC3iZR9XmxYAyL3Oi5cEl+RBuhoV+A0UiGiBYbqNLUUWigZTpiftcYcJ9S3IMCg==} engines: {node: '>=16'} peerDependencies: - vue: 3.5.33 + vue: 3.5.34 '@hoppscotch/vue-sonner@1.2.3': resolution: {integrity: sha512-P1gyvHHLsPeB8lsLP5SrqwQatuwOKtbsP83sKhyIV3WL2rJj3+DiFfqo2ErNBa+Sl0gM68o1V+wuOS7zbR//6g==} @@ -3882,7 +3863,7 @@ packages: '@hoppscotch/vue-toasted@0.1.0': resolution: {integrity: sha512-DIgmeTHxWwX5UeaHLEqDYNLJFGRosx/5N1fCHkaO8zt+sZv8GrHlkrIpjfKF2drmA3kKw5cY42Cw7WuCoabR3g==} peerDependencies: - vue: 3.5.33 + vue: 3.5.34 '@humanfs/core@0.19.1': resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} @@ -3903,6 +3884,9 @@ packages: '@iconify-json/lucide@1.2.104': resolution: {integrity: sha512-Vh4VPA/UNFhSPzEdDnSuOPA1xO6b/kI1w4SLBEiKnsFYPWimq2tVDynMgKnwddz6iZpuZfZU4PXR6kn0hJayKw==} + '@iconify-json/lucide@1.2.107': + resolution: {integrity: sha512-Q4JmCICVwHqaGhB3ugDFdb4uGXuU/o8OJrJuo1YjeZhGeT3jX5fc//7qMNsCb10VuL2PVDM/CkaqO9chnmI3gg==} + '@iconify/types@2.0.0': resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} @@ -4104,7 +4088,7 @@ packages: peerDependencies: petite-vue-i18n: '*' vite: ^6.0.0 || ^7.0.0 || ^8.0.0 - vue: 3.5.33 + vue: 3.5.34 vue-i18n: '*' peerDependenciesMeta: petite-vue-i18n: @@ -4120,7 +4104,7 @@ packages: peerDependencies: '@intlify/shared': ^9.0.0 || ^10.0.0 || ^11.0.0 '@vue/compiler-dom': ^3.0.0 - vue: 3.5.33 + vue: 3.5.34 vue-i18n: ^9.0.0 || ^10.0.0 || ^11.0.0 peerDependenciesMeta: '@intlify/shared': @@ -4151,12 +4135,12 @@ packages: resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} engines: {node: '>=8'} - '@jest/console@30.3.0': - resolution: {integrity: sha512-PAwCvFJ4696XP2qZj+LAn1BWjZaJ6RjG6c7/lkMaUJnkyMS34ucuIsfqYvfskVNvUI27R/u4P1HMYFnlVXG/Ww==} + '@jest/console@30.4.1': + resolution: {integrity: sha512-v3bhyxUh9Hgmo5p6hAOXe14/R3ZxZDOsvHleh4B07z3m/x4/ngPUXEm9XwK4sF4u+f+P2ORb0Ge+MgpaqRMVDA==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - '@jest/core@30.3.0': - resolution: {integrity: sha512-U5mVPsBxLSO6xYbf+tgkymLx+iAhvZX43/xI1+ej2ZOPnPdkdO1CzDmFKh2mZBn2s4XZixszHeQnzp1gm/DIxw==} + '@jest/core@30.4.2': + resolution: {integrity: sha512-TZJA6cPJUFxoWhxaLo8t0VX/MZX2wPWr0uIDvLSHIvN4gu9h02vSzqI2kBADG1ExqQlC+cY09xKMSreivvrChQ==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 @@ -4168,8 +4152,12 @@ packages: resolution: {integrity: sha512-cG51MVnLq1ecVUaQ3fr6YuuAOitHK1S4WUJHnsPFE/quQr33ADUx1FfrTCpMCRxvy0Yr9BThKpDjSlcTi91tMA==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - '@jest/environment@30.3.0': - resolution: {integrity: sha512-SlLSF4Be735yQXyh2+mctBOzNDx5s5uLv88/j8Qn1wH679PDcwy67+YdADn8NJnGjzlXtN62asGH/T4vWOkfaw==} + '@jest/diff-sequences@30.4.0': + resolution: {integrity: sha512-zOpzlfUs45l6u7jm39qr87JCHUDsaeCtvL+kQe/Vn9jSnRB4/5IPXISm0h9I1vZW/o00Kn4UTJ2MOlhnUGwv3g==} + engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + + '@jest/environment@30.4.1': + resolution: {integrity: sha512-AK9yNRqgKxiabqMoe4oW+3/TSSeV8vkdC7BGaxZdU0AFXfOpofTLqdru2GXKZghP3sdgwE9XXpnVwfZ8JnFV4w==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} '@jest/expect-utils@29.7.0': @@ -4180,28 +4168,36 @@ packages: resolution: {integrity: sha512-j0+W5iQQ8hBh7tHZkTQv3q2Fh/M7Je72cIsYqC4OaktgtO7v1So9UTjp6uPBHIaB6beoF/RRsCgMJKvti0wADA==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - '@jest/expect@30.3.0': - resolution: {integrity: sha512-76Nlh4xJxk2D/9URCn3wFi98d2hb19uWE1idLsTt2ywhvdOldbw3S570hBgn25P4ICUZ/cBjybrBex2g17IDbg==} + '@jest/expect-utils@30.4.1': + resolution: {integrity: sha512-ZBn5CglH8fBsQsvs4VWNzD4aWfUYks+IdOOQU3MEK71ol/BcVm+P+rtb1KpiFBpSWSCE27uOahyyf1vfqOVbcQ==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - '@jest/fake-timers@30.3.0': - resolution: {integrity: sha512-WUQDs8SOP9URStX1DzhD425CqbN/HxUYCTwVrT8sTVBfMvFqYt/s61EK5T05qnHu0po6RitXIvP9otZxYDzTGQ==} + '@jest/expect@30.4.1': + resolution: {integrity: sha512-ginrj6TMgh2GshLUGCjO94Ptx9HhdZA/I6A9iUfyeLKFtdAjnKzHDgzgP9HYQgbxM1lbXScQ2eUBz2lGeVDPWA==} + engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + + '@jest/fake-timers@30.4.1': + resolution: {integrity: sha512-iW5umdmfPeWzehrVhugFQZqCchSCud5S1l2YT0O9ZhjRR0ExclANDZkiSBwzqtnlOn0J1JXvO+HZ6rkuyOVOgQ==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} '@jest/get-type@30.1.0': resolution: {integrity: sha512-eMbZE2hUnx1WV0pmURZY9XoXPkUYjpc55mb0CrhtdWLtzMQPFvu/rZkTLZFTsdaVQa+Tr4eWAteqcUzoawq/uA==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - '@jest/globals@30.3.0': - resolution: {integrity: sha512-+owLCBBdfpgL3HU+BD5etr1SvbXpSitJK0is1kiYjJxAAJggYMRQz5hSdd5pq1sSggfxPbw2ld71pt4x5wwViA==} + '@jest/globals@30.4.1': + resolution: {integrity: sha512-ZbuY4cmXC8DkxYjfvT2DbcHWL2T6vmsMhXCDcmTB2T0y0gaezBI77ufq5ZAIdcRkYZ7NEQEDg1xFeKbxUJ5v5Q==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} '@jest/pattern@30.0.1': resolution: {integrity: sha512-gWp7NfQW27LaBQz3TITS8L7ZCQ0TLvtmI//4OwlQRx4rnWxcPNIYjxZpDcN4+UlGxgm3jS5QPz8IPTCkb59wZA==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - '@jest/reporters@30.3.0': - resolution: {integrity: sha512-a09z89S+PkQnL055bVj8+pe2Caed2PBOaczHcXCykW5ngxX9EWx/1uAwncxc/HiU0oZqfwseMjyhxgRjS49qPw==} + '@jest/pattern@30.4.0': + resolution: {integrity: sha512-RAWn3+f9u8BsHijKJ71uHcFp6vmyEt6VvoWXkl6hKF3qVIuWNmudVjg12DlBPGup/frIl5UcUlH5HfEuvHpEXg==} + engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + + '@jest/reporters@30.4.1': + resolution: {integrity: sha512-/SnkPCzEQpUaBH81kjdEdDdo2WZl5hxw+BmLDGWjRkm8o7XlhjwsU36cqwe5PGBE5WYpBvDzRSdXx9rbGuJtNA==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 @@ -4217,24 +4213,28 @@ packages: resolution: {integrity: sha512-DmdYgtezMkh3cpU8/1uyXakv3tJRcmcXxBOcO0tbaozPwpmh4YMsnWrQm9ZmZMfa5ocbxzbFk6O4bDPEc/iAnA==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - '@jest/snapshot-utils@30.3.0': - resolution: {integrity: sha512-ORbRN9sf5PP82v3FXNSwmO1OTDR2vzR2YTaR+E3VkSBZ8zadQE6IqYdYEeFH1NIkeB2HIGdF02dapb6K0Mj05g==} + '@jest/schemas@30.4.1': + resolution: {integrity: sha512-i6b4qw5qnP8c5FEeBJg/uZQ4ddrkN6Ca8qISJh0pr7a5hfn3h3v5x60BEbOC7OYAGZNMs1LfFLwnW2CuK8F57Q==} + engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + + '@jest/snapshot-utils@30.4.1': + resolution: {integrity: sha512-ObY4ljvQ95mt6iwKtVLetR/4yXiAgl3H4nJxhztr0MTjrN97TwDYrnCp/kF60Ec9HdhkWTHSu+Hg05aXfngpOA==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} '@jest/source-map@30.0.1': resolution: {integrity: sha512-MIRWMUUR3sdbP36oyNyhbThLHyJ2eEDClPCiHVbrYAe5g3CHRArIVpBw7cdSB5fr+ofSfIb2Tnsw8iEHL0PYQg==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - '@jest/test-result@30.3.0': - resolution: {integrity: sha512-e/52nJGuD74AKTSe0P4y5wFRlaXP0qmrS17rqOMHeSwm278VyNyXE3gFO/4DTGF9w+65ra3lo3VKj0LBrzmgdQ==} + '@jest/test-result@30.4.1': + resolution: {integrity: sha512-/ZG7pgEiOmmWkN9TplKbOu4id2N5lh7FHwRwlkgBVAzGdRH+OkkQ8wX/kIxg4zmd3ZQvAL1RwL2yWsvNYYECTw==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - '@jest/test-sequencer@30.3.0': - resolution: {integrity: sha512-dgbWy9b8QDlQeRZcv7LNF+/jFiiYHTKho1xirauZ7kVwY7avjFF6uTT0RqlgudB5OuIPagFdVtfFMosjVbk1eA==} + '@jest/test-sequencer@30.4.1': + resolution: {integrity: sha512-PeYE+4td5rKjoRPxztObrXU+H8hsjZfxKMXOcmrr34JerSyB/ROOxbbicz8B7A5j9R9VayDnVPvBmedqCsFCdw==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - '@jest/transform@30.3.0': - resolution: {integrity: sha512-TLKY33fSLVd/lKB2YI1pH69ijyUblO/BQvCj566YvnwuzoTNr648iE0j22vRvVNk2HsPwByPxATg3MleS3gf5A==} + '@jest/transform@30.4.1': + resolution: {integrity: sha512-Wz0LyktlTvRefoymh+n64hQ84KNXsRGcwdoZ8CSa0Ea+fgYcHZlnk+hDP7v2MS7il2bQ5uTEIxf4/NNfhMN4KQ==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} '@jest/types@29.6.3': @@ -4245,6 +4245,10 @@ packages: resolution: {integrity: sha512-JHm87k7bA33hpBngtU8h6UBub/fqqA9uXfw+21j5Hmk7ooPHlboRNxHq0JcMtC+n8VJGP1mcfnD3Mk+XKe1oSw==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + '@jest/types@30.4.1': + resolution: {integrity: sha512-f1x/vJXIfjOlEmejYpbkbgw1gOqpPECwMvMEtBqe47j7H2Hg8h8w3o3ikhSXq3MI15kg+oQ0exWO0uCtTNJLoQ==} + engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + '@jitl/quickjs-ffi-types@0.31.0': resolution: {integrity: sha512-1yrgvXlmXH2oNj3eFTrkwacGJbmM0crwipA3ohCrjv52gBeDaD7PsTvFYinlAnqU8iPME3LGP437yk05a2oejw==} @@ -4404,15 +4408,15 @@ packages: '@napi-rs/wasm-runtime@0.2.12': resolution: {integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==} - '@nestjs-modules/mailer@2.3.4': - resolution: {integrity: sha512-0vPNAuXGFHERFphokC5RVDgRoqwUXvI3OTPNXonw74e4QQyntp25OKzS59EaXmQOCBiIuRglmWQaFPvEpP5tuw==} + '@nestjs-modules/mailer@2.3.5': + resolution: {integrity: sha512-Jm+SH0uqTKeGxX7JWnzYrTnmNcdthEmniqsJdYCVrOmEj4dfrCxupQ6ra9NF4tfeqUuQVLyQb4VjSU7Q35mrPw==} peerDependencies: '@nestjs/common': '>=7.0.9' '@nestjs/core': '>=7.0.9' '@nestjs/event-emitter': '>=2.0.0' '@nestjs/terminus': '>=10.0.0' bullmq: '>=4.0.0' - nodemailer: '>=6.4.6' + nodemailer: '>=8.0.5' peerDependenciesMeta: '@nestjs/event-emitter': optional: true @@ -4421,8 +4425,8 @@ packages: bullmq: optional: true - '@nestjs/apollo@13.3.0': - resolution: {integrity: sha512-UXuqkGj96dne68/9lPQ+Yh0z4a5ON7QH3LPNFerStxn9YCCp0/LpI0wn/oxhJNWLechC7ZiSmQDhytfdJT4p8A==} + '@nestjs/apollo@13.4.0': + resolution: {integrity: sha512-dXfgdBDUXl7OwJ/1t1yQtifhh9E21zTwB8Tayi/2xsBJYY5t0Bcfi/xyVYT6IxNDb5i8JpsiAJmnu7bTsvIIzw==} peerDependencies: '@apollo/gateway': ^2.0.0 '@apollo/server': ^5.0.0 @@ -4456,8 +4460,8 @@ packages: '@swc/core': optional: true - '@nestjs/common@11.1.19': - resolution: {integrity: sha512-qeiTt2tv+e5QyDKqG8HlVZb2wx64FEaSGFJouqTSRs+kG44iTfl3xlz1XqVped+rihx4hmjWgL5gkhtdK3E6+Q==} + '@nestjs/common@11.1.21': + resolution: {integrity: sha512-YV1HYDGsm2rnR0vrLKidtrG6jYX5yqiIjeur1j8++dKGqhhsJ6cjMs0RfQRSTUH7IjgDemA59/znQ8nRrE0D9g==} peerDependencies: class-transformer: '>=0.4.1' class-validator: '>=0.13.2' @@ -4475,8 +4479,8 @@ packages: '@nestjs/common': ^10.0.0 || ^11.0.0 rxjs: ^7.1.0 - '@nestjs/core@11.1.19': - resolution: {integrity: sha512-6nJkWa2efrYi+XlU686J9y5L7OvxpLVjT0T/sxRKE7Jvpffiihelup4WSvLvRhdHDjj/5SuoWEwqReXAaaeHmw==} + '@nestjs/core@11.1.21': + resolution: {integrity: sha512-fqo0BHgny3MOuAL8GSfG3ZUKFVVBaBQD/0iyibnwTONT5vPexjQxJzu+945iloVvBDmrnAaRWxC1gqCDEs/AXQ==} engines: {node: '>= 20'} peerDependencies: '@nestjs/common': ^11.0.0 @@ -4493,8 +4497,8 @@ packages: '@nestjs/websockets': optional: true - '@nestjs/graphql@13.3.0': - resolution: {integrity: sha512-oGPGi8el+96h8MS3S2SgE7oidMrmm41rwzudP/OO72ij8R+4YmvO27keZPDbSCK2a5IySoGZQMb7C81vwfN2vQ==} + '@nestjs/graphql@13.4.0': + resolution: {integrity: sha512-NXZbC7ZGT4hoqA1M57tXz3Y+FgRgtEMCjyTU20bLr/Ck6itGL0NsrnudmLdxrc8XGLGM+JwmhQ606o1oRyW6jg==} peerDependencies: '@apollo/subgraph': ^2.9.3 '@nestjs/common': ^11.0.1 @@ -4538,8 +4542,8 @@ packages: '@nestjs/common': ^8.0.0 || ^9.0.0 || ^10.0.0 passport: ^0.4.0 || ^0.5.0 || ^0.6.0 || ^0.7.0 - '@nestjs/platform-express@11.1.19': - resolution: {integrity: sha512-Vpdv8jyCQdThfoTx+UTn+DRYr6H6X02YUqcpZ3qP6G3ZUwtVp7eS+hoQPGd4UuCnlnFG8Wqr2J9bGEzQdi1rIg==} + '@nestjs/platform-express@11.1.21': + resolution: {integrity: sha512-lA3ViycOnz4Df3EstIKpuAVFhqxQixTnjAVk0M+LRyNBlGM6VSCaNJaAIrb9Pcry39T4hTHpNVbRqGLSvhL8gA==} peerDependencies: '@nestjs/common': ^11.0.0 '@nestjs/core': ^11.0.0 @@ -4559,8 +4563,8 @@ packages: prettier: optional: true - '@nestjs/swagger@11.4.2': - resolution: {integrity: sha512-aBihEogDMj/bLEcaqhkvyX/ZVWUw/bmnhKzR0zwUoyGJikvZyaq7rOPYl/H7Lxkkr3c90SJxyuv1AX2UT1WKlw==} + '@nestjs/swagger@11.4.3': + resolution: {integrity: sha512-LR4BuOj+iBFzhGRnNP0OHjmrPXliDEjrmniXtLsfLDIELjkuUXYCTGjZMqgDdOY+QSabeF59LndaDzOOe+vMmw==} peerDependencies: '@fastify/static': ^8.0.0 || ^9.0.0 '@nestjs/common': ^11.0.1 @@ -4624,8 +4628,8 @@ packages: typeorm: optional: true - '@nestjs/testing@11.1.19': - resolution: {integrity: sha512-/UFNWXvPEdu4v4DlC5oWLbGKmD27LehLK06b8oLzs6D6lf4vAQTdST8LRAXBadyMUQnVEQWMuBo3CtAVtlfXtQ==} + '@nestjs/testing@11.1.21': + resolution: {integrity: sha512-RhzaUFxr6/bpXWjKIzr7p2eHKMFMLwPgsxJNFcCf2CkkT3UEjW+KRGb7E2JY+fh+ck3zAdvQJrzATDnSsVlFZw==} peerDependencies: '@nestjs/common': ^11.0.0 '@nestjs/core': ^11.0.0 @@ -4809,11 +4813,11 @@ packages: '@popperjs/core@2.11.8': resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} - '@posthog/core@1.27.7': - resolution: {integrity: sha512-6rzOZajUkhuezgPeF+ReMMly0D9oiwIZtMQrsJtZcS/mwi5OtvuYgxeaohgP9PKOhkK1c7cvGskX0Y2YUtBYCw==} + '@posthog/core@1.29.5': + resolution: {integrity: sha512-Jm5AE95EwBRqO6J8+skDufyf5rnEcmOvjYArCKCOzD4mWdH1xGpfcRXj5TEyZII3mD04Kr7pw9aP2ZbAHQGu2A==} - '@posthog/types@1.372.3': - resolution: {integrity: sha512-4mkXC9AhsquJnvogWtWsCi+ReODj/jbK0d3fkwCNLLTOpaiAF125FJ6OJyRFax2u+dEKXAPA/dCTGx1S2WF0nw==} + '@posthog/types@1.374.2': + resolution: {integrity: sha512-ZghQSFMi+HFJNPvPjBoyY/jWQ+q6mSQVtWQxOHMSbBidUZjsyYbxYxBFbHy2qWLNe4mEpX+Wqir2Q4I/4AVvJQ==} '@prisma/adapter-pg@7.8.0': resolution: {integrity: sha512-ygb3UkerK3v8MDpXVgCISdRNDozpxh6+JVJgiIGbSr5KBgz10LLf5ejUskPGoXlsIjxsOu6nuy1JVQr2EKGSlg==} @@ -5406,8 +5410,8 @@ packages: '@sinonjs/commons@3.0.1': resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==} - '@sinonjs/fake-timers@15.1.1': - resolution: {integrity: sha512-cO5W33JgAPbOh07tvZjUOJ7oWhtaqGHiZw+11DPbyqh2kHTBc3eF/CjJDeQ4205RLQsX6rxCuYOroFQwl7JDRw==} + '@sinonjs/fake-timers@15.4.0': + resolution: {integrity: sha512-DsG+8/LscQIQg68J6Ef3dv10u6nVyetYn923s3/sus5eaGfTo1of5WMZSLf0UJc9KDuKPilPH0UDJCjvNbDNCA==} '@socket.io/component-emitter@3.1.2': resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==} @@ -5699,8 +5703,8 @@ packages: '@types/node@24.9.1': resolution: {integrity: sha512-QoiaXANRkSXK6p0Duvt56W208du4P9Uye9hWLWgGMDTEoKPhuenzNcC4vGUmrNkiOKTlIrBoyNQYNpSwfEZXSg==} - '@types/node@25.6.0': - resolution: {integrity: sha512-+qIYRKdNYJwY3vRCZMdJbPLJAtGjQBudzZzdzwQYkEPQd+PJGixUL5QfvCLDaULoLv+RhT3LDkwEfKaAkgSmNQ==} + '@types/node@25.9.0': + resolution: {integrity: sha512-AOQwYUNolgy3VosiRqXrACUXTN8nJUtPl7FJXMqZVyxiiCLhQuG3jXKvCS1ALr+Y2OmZhzzLVlYPEqJaiqkaJQ==} '@types/nodemailer@8.0.0': resolution: {integrity: sha512-fyf8jWULsCo0d0BuoQ75i6IeoHs47qcqxWc7yUdUcV0pOZGjUTTOvwdG1PRXUDqN/8A64yQdQdnA2pZgcdi+cA==} @@ -5747,8 +5751,8 @@ packages: '@types/pug@2.0.10': resolution: {integrity: sha512-Sk/uYFOBAB7mb74XcpizmH0KOR2Pv3D2Hmrh1Dmy5BmK3MpdSa5kqZcg6EKBdklU0bFXX9gCfzvpnyUehrPIuA==} - '@types/qs@6.15.0': - resolution: {integrity: sha512-JawvT8iBVWpzTrz3EGw9BTQFg3BQNmwERdKE22vlTxawwtbyUSlMppvZYKLZzB5zgACXdXxbD3m1bXaMqP/9ow==} + '@types/qs@6.15.1': + resolution: {integrity: sha512-GZHUBZR9hckSUhrxmp1nG6NwdpM9fCunJwyThLW1X3AyHgd9IlHb6VANpQQqDr2o/qQp6McZ3y/IA2rVzKzSbw==} '@types/range-parser@1.2.7': resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} @@ -5832,11 +5836,19 @@ packages: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/eslint-plugin@8.59.1': - resolution: {integrity: sha512-BOziFIfE+6osHO9FoJG4zjoHUcvI7fTNBSpdAwrNH0/TLvzjsk2oo8XSSOT2HhqUyhZPfHv4UOffoJ9oEEQ7Ag==} + '@typescript-eslint/eslint-plugin@8.59.3': + resolution: {integrity: sha512-PwFvSKsXGShKGW6n5bZOhGHEcCZXM8HofLK9fNsEwZXzFRjoY+XT1Vsf1zgyXdwTr0ZYz1/2tkZ0DBTT9jZjhw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - '@typescript-eslint/parser': ^8.59.1 + '@typescript-eslint/parser': ^8.59.3 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/eslint-plugin@8.59.4': + resolution: {integrity: sha512-PegsU+XfyJJNjd4+u/k6f9yTyp0lEXXiPopUNobZcIAUJFGICFLN+sP0Rb3JehVmiij1Ph0dFGYqODoRo/2+6A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.59.4 eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' @@ -5854,8 +5866,15 @@ packages: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/parser@8.59.1': - resolution: {integrity: sha512-HDQH9O/47Dxi1ceDhBXdaldtf/WV9yRYMjbjCuNk3qnaTD564qwv61Y7+gTxwxRKzSrgO5uhtw584igXVuuZkA==} + '@typescript-eslint/parser@8.59.3': + resolution: {integrity: sha512-HPwA+hVkfcriajbNvTmZv4VRauibay+cWArYUYq7u7W7PmGShMxbPxLvrwDme55a6d5alG3nrYfhyJ/G28XlLg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/parser@8.59.4': + resolution: {integrity: sha512-zORHqO/tuhxY1zWuTvMUqddRxpiFJ72xVfcNoWpqdLjs6lfPbuQBJuW4pk+49/uBMy7Ssr4bzgjiKmmDB1UbZQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 @@ -5873,8 +5892,14 @@ packages: peerDependencies: typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/project-service@8.59.1': - resolution: {integrity: sha512-+MuHQlHiEr00Of/IQbE/MmEoi44znZHbR/Pz7Opq4HryUOlRi+/44dro9Ycy8Fyo+/024IWtw8m4JUMCGTYxDg==} + '@typescript-eslint/project-service@8.59.3': + resolution: {integrity: sha512-ECiUWa/KYRGDFUqTNehaRgzDshnJfkTABJxVemHk4ko22gcr0ukloKjWvyQ64g8YCV/UI47kN1dbmjf/GaQYng==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/project-service@8.59.4': + resolution: {integrity: sha512-Ly00Vu4oAacfDeHp2Zg85ioNG6l8HG+tN1D7J+xTHSxu9y0awYKJ2zH1rFBn8ZSfuGK+7FxK3Cgl3uAz0aZZLg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.1.0' @@ -5887,8 +5912,12 @@ packages: resolution: {integrity: sha512-UzR16Ut8IpA3Mc4DbgAShlPPkVm8xXMWafXxB0BocaVRHs8ZGakAxGRskF7FId3sdk9lgGD73GSFaWmWFDE4dg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/scope-manager@8.59.1': - resolution: {integrity: sha512-LwuHQI4pDOYVKvmH2dkaJo6YZCSgouVgnS/z7yBPKBMvgtBvyLqiLy9Z6b7+m/TRcX1NFYUqZetI5Y+aT4GEfg==} + '@typescript-eslint/scope-manager@8.59.3': + resolution: {integrity: sha512-t2LvZnoEfzKtnPjgeEu41xw5gxq9mQVfYy4OoZ4Vlt0sk3JwxmhCca/AR7DwOiHrjWgjAj6as4AhRLKSDfvZIA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/scope-manager@8.59.4': + resolution: {integrity: sha512-mUeR/3H1WrTAddJrwut8OoPjfauaztMQmRwV5fQTUyNVJCLiUXXe4lGEyYIL2oFDpP7UtgbGJXCt72wT0z2S3Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript-eslint/tsconfig-utils@8.57.2': @@ -5903,8 +5932,14 @@ packages: peerDependencies: typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/tsconfig-utils@8.59.1': - resolution: {integrity: sha512-/0nEyPbX7gRsk0Uwfe4ALwwgxuA66d/l2mhRDNlAvaj4U3juhUtJNq0DsY8M2AYwwb9rEq2hrC3IcIcEt++iJA==} + '@typescript-eslint/tsconfig-utils@8.59.3': + resolution: {integrity: sha512-PcIJHjmaREXLgIAIzLnSY9VucEzz8FKXsRgFa1DmdGCK/5tJpW03TKJF01Q6VZd1lLdz2sIKPWaDUZN9dp//dw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/tsconfig-utils@8.59.4': + resolution: {integrity: sha512-DLCpnKgD4alVxTBSKulK+gU1KCqOgUXfDRDXh2mZgzokQKa/70ax93I2uVO3m/LLvIAtWZIFoiifudmIqAxpMA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.1.0' @@ -5923,8 +5958,15 @@ packages: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/type-utils@8.59.1': - resolution: {integrity: sha512-klWPBR2ciQHS3f++ug/mVnWKPjBUo7icEL3FAO1lhAR1Z1i5NQYZ1EannMSRYcq5qCv5wNALlXr6fksRHyYl7w==} + '@typescript-eslint/type-utils@8.59.3': + resolution: {integrity: sha512-g71d8QD8UaiHGvrJwyIS1hCX5r63w6Jll+4VEYhEAHXTDIqX1JgxhTAbEHtKntL9kuc4jRo7/GWw5xfCepSccQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/type-utils@8.59.4': + resolution: {integrity: sha512-uonTuPAAKr9XaBGqJ3LjYTh72zy5DyGesljO9gtmk/eFW0W1fRHjnwVYKB35Lm8d5Q5CluEW3gPHjTvZTmgrfA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 @@ -5938,8 +5980,12 @@ packages: resolution: {integrity: sha512-nLzdsT1gdOgFxxxwrlNVUBzSNBEEHJ86bblmk4QAS6stfig7rcJzWKqCyxFy3YRRHXDWEkb2NralA1nOYkkm/A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/types@8.59.1': - resolution: {integrity: sha512-ZDCjgccSdYPw5Bxh+my4Z0lJU96ZDN7jbBzvmEn0FZx3RtU1C7VWl6NbDx94bwY3V5YsgwRzJPOgeY2Q/nLG8A==} + '@typescript-eslint/types@8.59.3': + resolution: {integrity: sha512-ePFoH0g4ludssdRFqqDxQePCxU4WQyRa9+XVwjm7yLn0FKhMeoetC+qBEEI1Eyb1pGSDveTIT09Bvw2WhlGayg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/types@8.59.4': + resolution: {integrity: sha512-F1o7WJcCq+bc8dwcO/YsSEOudAH8RDtaOhM6wcAQhcUsFhnWQl81JKy48q1hoxAU0qrzM89+31GYh1515Zde3Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript-eslint/typescript-estree@8.57.2': @@ -5954,8 +6000,14 @@ packages: peerDependencies: typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/typescript-estree@8.59.1': - resolution: {integrity: sha512-OUd+vJS05sSkOip+BkZ/2NS8RMxrAAJemsC6vU3kmfLyeaJT0TftHkV9mcx2107MmsBVXXexhVu4F0TZXyMl4g==} + '@typescript-eslint/typescript-estree@8.59.3': + resolution: {integrity: sha512-CbRjVRAf7Lr9Kr8RopKcbY45p2VfmmHrm0ygOCYFi7oU8q19m0Fs/6iHS7kNOmwpp+ob07ZVcAqlxUod9lYdmg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/typescript-estree@8.59.4': + resolution: {integrity: sha512-F+RuOmcDXo4+TPdfd/TCLS3m2nw8gE9XXyZLrA3JBfaA5tz9TtdkyD3YJFmPxulyc2cKbEok/CvFE3MgSLWnag==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.1.0' @@ -5974,8 +6026,15 @@ packages: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/utils@8.59.1': - resolution: {integrity: sha512-3pIeoXhCeYH9FSCBI8P3iNwJlGuzPlYKkTlen2O9T1DSeeg8UG8jstq6BLk+Mda0qup7mgk4z4XL4OzRaxZ8LA==} + '@typescript-eslint/utils@8.59.3': + resolution: {integrity: sha512-JAvT14goBzRzzzZyqq3P9BLArIxTtQURUtFgQ/V7FO+eU+Gg6ES+5ymOPP1wRxXcxAYeivCk4uS3jCKWI1K8Zg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.1.0' + + '@typescript-eslint/utils@8.59.4': + resolution: {integrity: sha512-cYXeNAUsG4lJo5dbc1FcKm+JwIWrj1/UpTORsC6tGMjEZ81DYcvIr9/ueikhMa/Y/gDQYGp+YX9/xQrXje5BJw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 @@ -5989,17 +6048,22 @@ packages: resolution: {integrity: sha512-/uejZt4dSere1bx12WLlPfv8GktzcaDtuJ7s42/HEZ5zGj9oxRaD4bj7qwSunXkf+pbAhFt2zjpHYUiT5lHf0Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/visitor-keys@8.59.1': - resolution: {integrity: sha512-LdDNl6C5iJExcM0Yh0PwAIBb9PrSiCsWamF/JyEZawm3kFDnRoaq3LGE4bpyRao/fWeGKKyw7icx0YxrLFC5Cg==} + '@typescript-eslint/visitor-keys@8.59.3': + resolution: {integrity: sha512-f1UQF7ggd42YiwI5wGrRaPsa+P0CINBlrkLPmGfpq/u/I/oVtecoEIfFR9ag/oa1sLOsRNZ6xehf6qMZhQGBDg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/visitor-keys@8.59.4': + resolution: {integrity: sha512-U3gxVaDVnuZKhSspW/MzMxE1kq7zOdc072FcSNoqA1I9p8HyKbBFfEHoWckBAMgNMph4MamwS5iTVzFmrnt8TQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@ungap/structured-clone@1.3.0': resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} + deprecated: Potential CWE-502 - Update to 1.3.1 or higher '@unhead/vue@2.1.12': resolution: {integrity: sha512-zEWqg0nZM8acpuTZE40wkeUl8AhIe0tU0OkilVi1D4fmVjACrwoh5HP6aNqJ8kUnKsoy6D+R3Vi/O+fmdNGO7g==} peerDependencies: - vue: 3.5.33 + vue: 3.5.34 '@unrs/resolver-binding-android-arm-eabi@1.11.1': resolution: {integrity: sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw==} @@ -6132,7 +6196,7 @@ packages: resolution: {integrity: sha512-fRsMOSJze7d9y2NUd31ekZMUWDoc+HYv/jFcO9iPpRFCFlqcuqto5r0v54jDB6C7MEo+xLsqRQGuxe0NM0J8YA==} peerDependencies: '@urql/core': ^6.0.0 - vue: 3.5.33 + vue: 3.5.34 '@vitejs/plugin-legacy@2.3.1': resolution: {integrity: sha512-J5KaGBlSt2tEYPVjM/C8dA6DkRzkFkbPe+Xb4IX5G+XOV5OGbVAfkMjKywdrkO3gGynO8S98i71Lmsff4cWkCQ==} @@ -6153,11 +6217,14 @@ packages: engines: {node: ^20.19.0 || >=22.12.0} peerDependencies: vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 - vue: 3.5.33 + vue: 3.5.34 '@vitest/expect@4.1.5': resolution: {integrity: sha512-PWBaRY5JoKuRnHlUHfpV/KohFylaDZTupcXN1H9vYryNLOnitSw60Mw9IAE2r67NbwwzBw/Cc/8q9BK3kIX8Kw==} + '@vitest/expect@4.1.6': + resolution: {integrity: sha512-7EHDquPthALSV0jhhjgEW8FXaviMx7rSqu8W6oqCoAuOhKov814P99QDV1pxMA3QPv21YudvJngIhjrNI4opLg==} + '@vitest/mocker@4.1.5': resolution: {integrity: sha512-/x2EmFC4mT4NNzqvC3fmesuV97w5FC903KPmey4gsnJiMQ3Be1IlDKVaDaG8iqaLFHqJ2FVEkxZk5VmeLjIItw==} peerDependencies: @@ -6169,21 +6236,47 @@ packages: vite: optional: true + '@vitest/mocker@4.1.6': + resolution: {integrity: sha512-MCFc63czMjEInOlcY2cpQCvCN+KgbAn+60xu9cMgP4sKaLC5JNAKw7JH8QdAnoAC88hW1IiSNZ+GgVXlN1UcMQ==} + peerDependencies: + msw: ^2.4.9 + vite: ^6.0.0 || ^7.0.0 || ^8.0.0 + peerDependenciesMeta: + msw: + optional: true + vite: + optional: true + '@vitest/pretty-format@4.1.5': resolution: {integrity: sha512-7I3q6l5qr03dVfMX2wCo9FxwSJbPdwKjy2uu/YPpU3wfHvIL4QHwVRp57OfGrDFeUJ8/8QdfBKIV12FTtLn00g==} + '@vitest/pretty-format@4.1.6': + resolution: {integrity: sha512-h5SxD/IzNhZYnrSZRsUZQIC+vD0GY8cUvq0iwsmkFKixRCKLLWqCXa/FIQ4S1R+sI+PGoojkHsdNrbZiM9Qpgw==} + '@vitest/runner@4.1.5': resolution: {integrity: sha512-2D+o7Pr82IEO46YPpoA/YU0neeyr6FTerQb5Ro7BUnBuv6NQtT/kmVnczngiMEBhzgqz2UZYl5gArejsyERDSQ==} + '@vitest/runner@4.1.6': + resolution: {integrity: sha512-nOPCmn2+yD0ZNmKdsXGv/UxMMWbMuKeD6GyYncNwdkYDxpQvrPSKYj2rWuDjC2Y4b6w6hjip5dBKFzEUuZe3vA==} + '@vitest/snapshot@4.1.5': resolution: {integrity: sha512-zypXEt4KH/XgKGPUz4eC2AvErYx0My5hfL8oDb1HzGFpEk1P62bxSohdyOmvz+d9UJwanI68MKwr2EquOaOgMQ==} + '@vitest/snapshot@4.1.6': + resolution: {integrity: sha512-YhsdE6xAVfTDmzjxL2ZDUvjj+ZsgyOKe+TdQzqkD72wIOmHka8NuGQ6NpTNZv9D2Z63fbwWKJPeVpEw4EQgYxw==} + '@vitest/spy@4.1.5': resolution: {integrity: sha512-2lNOsh6+R2Idnf1TCZqSwYlKN2E/iDlD8sgU59kYVl+OMDmvldO1VDk39smRfpUNwYpNRVn3w4YfuC7KfbBnkQ==} + '@vitest/spy@4.1.6': + resolution: {integrity: sha512-JFKxMx6udhwKh/Ldo270e17QX710vgunMkuPAvXjHSvC6oqLWAHhVhjg/I71q0u0CBSErIODV1Kjv0FQNSWjdg==} + '@vitest/utils@4.1.5': resolution: {integrity: sha512-76wdkrmfXfqGjueGgnb45ITPyUi1ycZ4IHgC2bhPDUfWHklY/q3MdLOAB+TF1e6xfl8NxNY0ZYaPCFNWSsw3Ug==} + '@vitest/utils@4.1.6': + resolution: {integrity: sha512-FxIY+U81R3LGKCxaHHFRQ5+g6/iRgGLmeHWdp2Amj4ljQRrEIWHmZyDfDYBRZlpyqA7qKxtS9DD1dhk8RnRIVQ==} + '@volar/language-core@1.10.10': resolution: {integrity: sha512-nsV1o3AZ5n5jaEAObrS3MWLBWaGwUj/vAsc15FVNIv+DbpizQRISg9wzygsHBr56ELRH8r4K75vkYNMtsSNNWw==} @@ -6205,20 +6298,20 @@ packages: '@vue/compiler-core@3.5.31': resolution: {integrity: sha512-k/ueL14aNIEy5Onf0OVzR8kiqF/WThgLdFhxwa4e/KF/0qe38IwIdofoSWBTvvxQOesaz6riAFAUaYjoF9fLLQ==} - '@vue/compiler-core@3.5.33': - resolution: {integrity: sha512-3PZLQwFw4Za3TC8t0FvTy3wI16Kt+pmwcgNZca4Pj9iWL2E72a/gZlpBtAJvEdDMdCxdG/qq0C7PN0bsJuv0Rw==} + '@vue/compiler-core@3.5.34': + resolution: {integrity: sha512-s9cLyK5mLcvZ4Agva5QgRsQyLKvts9WbU9DB6NqiZkkGEdwmcEiylj5Jbwkp680drF/NNCV8OlAJSe+yMLxaJw==} '@vue/compiler-dom@3.5.31': resolution: {integrity: sha512-BMY/ozS/xxjYqRFL+tKdRpATJYDTTgWSo0+AJvJNg4ig+Hgb0dOsHPXvloHQ5hmlivUqw1Yt2pPIqp4e0v1GUw==} - '@vue/compiler-dom@3.5.33': - resolution: {integrity: sha512-PXq0yrfCLzzL07rbXO4awtXY1Z06LG2eu6Adg3RJFa/j3Cii217XxxLXG22N330gw7GmALCY0Z8RgXEviwgpjA==} + '@vue/compiler-dom@3.5.34': + resolution: {integrity: sha512-EbF/T++k0e2MMZlJsBhzK8Sgwt0HcIPOhzn1CTB/lv6sQcyk+OWf8YeiLxZp3ro7MbbLcAfAJ6sEvjFWuNgUCw==} - '@vue/compiler-sfc@3.5.33': - resolution: {integrity: sha512-UTUvRO9cY+rROrx/pvN9P5Z7FgA6QGfokUCfhQE4EnmUj3rVnK+CHI0LsEO1pg+I7//iRYMUfcNcCPe7tg0CoA==} + '@vue/compiler-sfc@3.5.34': + resolution: {integrity: sha512-D/ihr6uZeIt6r+pVZf46RWT1fAsLFMbUP7k8G1VkiiWexriED9GrX3echHd4Abbt17zjlfiFJ8z7a3BxZOPNjg==} - '@vue/compiler-ssr@3.5.33': - resolution: {integrity: sha512-IErjYdnj1qIupG5xxiVIYiiRvDhGWV4zuh/RCrwfYpuL+HWQzeU6lCk/nF9r7olWMnjKxCAkOctT2qFWFkzb1A==} + '@vue/compiler-ssr@3.5.34': + resolution: {integrity: sha512-cDtTHKibkThKGHH1SP+WdccquNRYQDFH6rRjQCqT9G2ltFAfoR5pUftpab/z+aM5mW9HLLVQW7hfKKQe/1GBeQ==} '@vue/compiler-vue2@2.7.16': resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==} @@ -6264,25 +6357,25 @@ packages: '@vue/reactivity@3.5.31': resolution: {integrity: sha512-DtKXxk9E/KuVvt8VxWu+6Luc9I9ETNcqR1T1oW1gf02nXaZ1kuAx58oVu7uX9XxJR0iJCro6fqBLw9oSBELo5g==} - '@vue/reactivity@3.5.33': - resolution: {integrity: sha512-p8UfIqyIhb0rYGlSgSBV+lPhF2iUSBcRy7enhTmPqKWadHy9kcOFYF1AejYBP9P+avnd3OBbD49DU4pLWX/94A==} + '@vue/reactivity@3.5.34': + resolution: {integrity: sha512-y9XDjCEuBp+98k+UL5dbYkh57AHU4o6cxZedOPXw3bmrZZYLQsVHguGurq7hVrPCSrQtrnz1f9dssyFr+dMXfQ==} - '@vue/runtime-core@3.5.33': - resolution: {integrity: sha512-UpFF45RI9//a7rvq7RdOQblb4tup7hHG9QsmIrxkFQLzQ7R8/iNQ5LE15NhLZ1/WcHMU2b47u6P33CPUelHyIQ==} + '@vue/runtime-core@3.5.34': + resolution: {integrity: sha512-mKeBYvu8tcMSLhypAHBmriUFfWXKTCF/23Z4jiCoYK3UtWepkliViNLuR90V9XOyD62mUxs9p1jsrpK3CCGIzw==} - '@vue/runtime-dom@3.5.33': - resolution: {integrity: sha512-IOxMsAOwquhfITgmOgaPYl7/j8gKUxUFoflRc+u4LxyD3+783xne8vNta1PONVCvCV9A0w7hkyEepINDqfO0tw==} + '@vue/runtime-dom@3.5.34': + resolution: {integrity: sha512-e8kZzERmCwUnBRVsgSQlAfrfU2rGoy0FFKPBXSlfEjc/O3KfA7QP0t1/2ZylrbchjmIKB4dPTd07A6WPr0eOrg==} - '@vue/server-renderer@3.5.33': - resolution: {integrity: sha512-0xylq/8/h44lVG0pZFknv1XIdEgymq2E9n59uTWJBG+dIgiT0TMCSsxrN7nO16Z0MU0MPjFcguBbZV8Itk52Hw==} + '@vue/server-renderer@3.5.34': + resolution: {integrity: sha512-nHxmJoTrKsmrkbILRhkC9gY1G3moZbJTqCzDd7DOOzG5KH9oeJ0Unqrff5f9v0pW//jES05ZkJcNtfE8JjOIew==} peerDependencies: - vue: 3.5.33 + vue: 3.5.34 '@vue/shared@3.5.31': resolution: {integrity: sha512-nBxuiuS9Lj5bPkPbWogPUnjxxWpkRniX7e5UBQDWl6Fsf4roq9wwV+cR7ezQ4zXswNvPIlsdj1slcLB7XCsRAw==} - '@vue/shared@3.5.33': - resolution: {integrity: sha512-5vR2QIlmaLG77Ygd4pMP6+SGQ5yox9VhtnbDWTy9DzMzdmeLxZ1QqxrywEZ9sa1AVubfIJyaCG3ytyWU81ufcQ==} + '@vue/shared@3.5.34': + resolution: {integrity: sha512-24uqU4OIiX29ryC3MeWid/Xf2fa2EFRUVLb77nRhk+UrTVrh/XiGtFAFmJBAtBRbjwNdsPRP+jj/OL27Eg1NDA==} '@vue/typescript@1.8.8': resolution: {integrity: sha512-jUnmMB6egu5wl342eaUH236v8tdcEPXXkPgj+eI/F6JwW/lb+yAU6U07ZbQ3MVabZRlupIlPESB7ajgAGixhow==} @@ -6290,13 +6383,18 @@ packages: '@vueuse/core@14.2.1': resolution: {integrity: sha512-3vwDzV+GDUNpdegRY6kzpLm4Igptq+GA0QkJ3W61Iv27YWwW/ufSlOfgQIpN6FZRMG0mkaz4gglJRtq5SeJyIQ==} peerDependencies: - vue: 3.5.33 + vue: 3.5.34 + + '@vueuse/core@14.3.0': + resolution: {integrity: sha512-aHfz47g0ZhMtTVHmIzMVpJy8ePhhOy68GY5bv110+5DVtZ+W7BsOx+m61UNQqfrWyPztIHIanWa3E2tib3NFIw==} + peerDependencies: + vue: 3.5.34 '@vueuse/core@8.9.4': resolution: {integrity: sha512-B/Mdj9TK1peFyWaPof+Zf/mP9XuGAngaJZBwPaXBvU3aCTZlx3ltlrFFFyMV4iGBwsjSCeUCgZrtkEj9dS2Y3Q==} peerDependencies: '@vue/composition-api': ^1.1.0 - vue: 3.5.33 + vue: 3.5.34 peerDependenciesMeta: '@vue/composition-api': optional: true @@ -6306,19 +6404,27 @@ packages: '@vueuse/metadata@14.2.1': resolution: {integrity: sha512-1ButlVtj5Sb/HDtIy1HFr1VqCP4G6Ypqt5MAo0lCgjokrk2mvQKsK2uuy0vqu/Ks+sHfuHo0B9Y9jn9xKdjZsw==} + '@vueuse/metadata@14.3.0': + resolution: {integrity: sha512-BwxmbAzwAVF50+MW57GXOUEV61nFBGnlBvrTqj49PqWJu3uw7hdu72ztXeZ33RdZtDY6kO+bfCAE1PCn88Tktw==} + '@vueuse/metadata@8.9.4': resolution: {integrity: sha512-IwSfzH80bnJMzqhaapqJl9JRIiyQU0zsRGEgnxN6jhq7992cPUJIRfV+JHRIZXjYqbwt07E1gTEp0R0zPJ1aqw==} '@vueuse/shared@14.2.1': resolution: {integrity: sha512-shTJncjV9JTI4oVNyF1FQonetYAiTBd+Qj7cY89SWbXSkx7gyhrgtEdF2ZAVWS1S3SHlaROO6F2IesJxQEkZBw==} peerDependencies: - vue: 3.5.33 + vue: 3.5.34 + + '@vueuse/shared@14.3.0': + resolution: {integrity: sha512-bZpge9eSXwa4ToSiqJ7j6KRwhAsneMFoSz3LMWKQDkqimm3D/tbFlrklrs/IOqC8tEcYmXQZJ6N0UrjhBirVCg==} + peerDependencies: + vue: 3.5.34 '@vueuse/shared@8.9.4': resolution: {integrity: sha512-wt+T30c4K6dGRMVqPddexEVLa28YwxW5OFIPmzUHICjphfAuBFTTdDoyqREZNDOFJZ44ARH1WWQNCUK8koJ+Ag==} peerDependencies: '@vue/composition-api': ^1.1.0 - vue: 3.5.33 + vue: 3.5.34 peerDependenciesMeta: '@vue/composition-api': optional: true @@ -6567,6 +6673,7 @@ packages: apiconnect-wsdl@2.0.36: resolution: {integrity: sha512-jHXC6y/duZ+zzn756/znpfDeVM0hprt2Yk/4QfiIhzNG4YmJXt7NSCup4DFRCitBZVK85lM6UYRaa36fSWs3JQ==} engines: {node: '>=18.7.0 <21.0.0'} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. append-field@1.0.0: resolution: {integrity: sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==} @@ -6671,8 +6778,8 @@ packages: axios@1.15.2: resolution: {integrity: sha512-wLrXxPtcrPTsNlJmKjkPnNPK2Ihe0hn0wGSaTEiHRPxwjvJwT3hKmXF4dpqxmPO9SoNb2FsYXj/xEo0gHN+D5A==} - babel-jest@30.3.0: - resolution: {integrity: sha512-gRpauEU2KRrCox5Z296aeVHR4jQ98BCnu0IO332D/xpHNOsIH/bgSRk9k6GbKIbBw8vFeN6ctuu6tV8WOyVfYQ==} + babel-jest@30.4.1: + resolution: {integrity: sha512-fATAbM8piYxkiXQp3RBXmZHxZVNJZAVXXfyeyCN2Tida3+qJ8ea9UxhiJ2y4fLO90ZImKt6k9FlcH2+rLkJGhw==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} peerDependencies: '@babel/core': ^7.11.0 || ^8.0.0-0 @@ -6681,8 +6788,8 @@ packages: resolution: {integrity: sha512-D8Z6Qm8jCvVXtIRkBnqNHX0zJ37rQcFJ9u8WOS6tkYOsRdHBzypCstaxWiu5ZIlqQtviRYbgnRLSoCEvjqcqbA==} engines: {node: '>=12'} - babel-plugin-jest-hoist@30.3.0: - resolution: {integrity: sha512-+TRkByhsws6sfPjVaitzadk1I0F5sPvOVUH5tyTSzhePpsGIVrdeunHSw/C36QeocS95OOk8lunc4rlu5Anwsg==} + babel-plugin-jest-hoist@30.4.0: + resolution: {integrity: sha512-9EdtWM/sSfXLOGLwSn+GS6pIXyBnL07/8gyJlwFXjWy4DxMOyItqyUT29d4lQiS380EZwYlX7/At4PgBS+m2aA==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} babel-plugin-polyfill-corejs2@0.4.17: @@ -6718,8 +6825,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - babel-preset-jest@30.3.0: - resolution: {integrity: sha512-6ZcUbWHC+dMz2vfzdNwi87Z1gQsLNK2uLuK1Q89R11xdvejcivlYYwDlEv0FHX3VwEXpbBQ9uufB/MUNpZGfhQ==} + babel-preset-jest@30.4.0: + resolution: {integrity: sha512-lBY4jxsNmCnSiu7kquw8ZC9F4+XLMOKypT3RnNHPvU2Kpd4W0xaPuLr5ZkRyOsvLYAY4yaW1ZwTW4xB7NIiZzg==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} peerDependencies: '@babel/core': ^7.11.0 || ^8.0.0-beta.1 @@ -7571,7 +7678,7 @@ packages: dioc@3.0.2: resolution: {integrity: sha512-D8S1vMTtBeXeUW2dR0rJ7xiPHxp1zm1NzO2B4Aj4RAJB6E6urA0/xD/CnGs6J1JkgUZvUgaC+oedx/k5NrT+/g==} peerDependencies: - vue: 3.5.33 + vue: 3.5.34 peerDependenciesMeta: vue: optional: true @@ -7614,8 +7721,8 @@ packages: dompurify@3.2.7: resolution: {integrity: sha512-WhL/YuveyGXJaerVlMYGWhvQswa7myDG17P7Vu65EWC05o8vfeNbvNf4d/BOvH99+ZW+LlQsc1GDKMa1vNK6dw==} - dompurify@3.4.1: - resolution: {integrity: sha512-JahakDAIg1gyOm7dlgWSDjV4n7Ip2PKR55NIT6jrMfIgLFgWo81vdr1/QGqWtFNRqXP9UV71oVePtjqS2ebnPw==} + dompurify@3.4.3: + resolution: {integrity: sha512-VVwJidIJcp1hpg2OMXML3ZVRPYSZiq4aX7qBh83BSIpOaRDqI+qxhXjjIWnpzkOXhmp0L81lnoME1mnCc9H48A==} domutils@2.8.0: resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} @@ -8029,6 +8136,20 @@ packages: '@typescript-eslint/parser': optional: true + eslint-plugin-vue@10.9.1: + resolution: {integrity: sha512-cHB0Tf4Duvzwecwd/AqWzZvF/QszE13BhjVUpVXWCy9AeMR5GjkAjP3i85vqgLgOuTmkHR1OJ5oMeqLHtuw8zg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@stylistic/eslint-plugin': ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 + '@typescript-eslint/parser': ^7.0.0 || ^8.0.0 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + vue-eslint-parser: ^10.3.0 + peerDependenciesMeta: + '@stylistic/eslint-plugin': + optional: true + '@typescript-eslint/parser': + optional: true + eslint-scope@5.1.1: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} engines: {node: '>=8.0.0'} @@ -8053,8 +8174,8 @@ packages: resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - eslint@10.2.1: - resolution: {integrity: sha512-wiyGaKsDgqXvF40P8mDwiUp/KQjE1FdrIEJsM8PZ3XCiniTMXS3OHWWUe5FI5agoCnr8x4xPrTDZuxsBlNHl+Q==} + eslint@10.4.0: + resolution: {integrity: sha512-loXy6bWOoP3EP6JA7jo6p5jMpBJmHmsNZM5SFRHLdh1MGOPurMnNBj4ZlAbaqUAaQWbCr7jHV4P7gzAyryZWkQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} hasBin: true peerDependencies: @@ -8183,6 +8304,10 @@ packages: resolution: {integrity: sha512-1zQrciTiQfRdo7qJM1uG4navm8DayFa2TgCSRlzUyNkhcJ6XUZF3hjnpkyr3VhAqPH7i/9GkG7Tv5abz6fqz0Q==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + expect@30.4.1: + resolution: {integrity: sha512-PMARsyh/JtqC20HoGqlFcIlQAyqUtW4PlI1rup1uhYJtKuwAjbvWi3GQMAn+STdHum/dk8xrKfUM1+5SAwpolA==} + engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + express@5.2.1: resolution: {integrity: sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==} engines: {node: '>= 18'} @@ -8233,8 +8358,8 @@ packages: fast-safe-stringify@2.1.1: resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==} - fast-uri@3.1.0: - resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} + fast-uri@3.1.2: + resolution: {integrity: sha512-rVjf7ArG3LTk+FS6Yw81V1DLuZl1bRbNrev6Tmd/9RaroeeRRJhAt7jg/6YFxbvAQXUCavSoZhPPj6oOx+5KjQ==} fast-url-parser@1.1.3: resolution: {integrity: sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==} @@ -8502,8 +8627,8 @@ packages: resolution: {integrity: sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==} engines: {node: '>=18'} - globals@17.5.0: - resolution: {integrity: sha512-qoV+HK2yFl/366t2/Cb3+xxPUo5BuMynomoDmiaZBIdbs+0pYbjfZU+twLhGKp4uCZ/+NbtpVepH5bGCxRyy2g==} + globals@17.6.0: + resolution: {integrity: sha512-sepffkT8stwnIYbsMBpoCHJuJM5l98FUF2AnE07hfvE0m/qp3R586hw4jF4uadbhvg1ooIdzuu7CsfD2jzCaNA==} engines: {node: '>=18'} globalthis@1.0.4: @@ -8618,6 +8743,10 @@ packages: resolution: {integrity: sha512-5bJ+nf/UCpAjHM8i06fl7eLyVC9iuNAjm9qzkiu2ZGhM0VscSvS6WDPfAwkdkBuoXGM9FJSbKl6wylMwP9Ktig==} engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} + graphql@16.14.0: + resolution: {integrity: sha512-BBvQ/406p+4CZbTpCbVPSxfzrZrbnuWSP1ELYgyS6B+hNeKzgrdB4JczCa5VZUBQrDa9hUngm0KnexY6pJRN5Q==} + engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} + handlebars@4.7.9: resolution: {integrity: sha512-4E71E0rpOaQuJR2A3xDZ+GM1HyWYv1clR58tC8emQNeQe3RH7MAzSbat+V0wG78LQBo6m6bzSG/L4pBuCsgnUQ==} engines: {node: '>=0.4.7'} @@ -9193,16 +9322,16 @@ packages: engines: {node: '>=10'} hasBin: true - jest-changed-files@30.3.0: - resolution: {integrity: sha512-B/7Cny6cV5At6M25EWDgf9S617lHivamL8vl6KEpJqkStauzcG4e+WPfDgMMF+H4FVH4A2PLRyvgDJan4441QA==} + jest-changed-files@30.4.1: + resolution: {integrity: sha512-IuctmYrxi21iOSOaIXpJWalHyPAsVv0GeBHKDn8C1CA4W5htHn7INL+wdnL4Bo0+olEndvAFkmb++tIQJG+vvg==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - jest-circus@30.3.0: - resolution: {integrity: sha512-PyXq5szeSfR/4f1lYqCmmQjh0vqDkURUYi9N6whnHjlRz4IUQfMcXkGLeEoiJtxtyPqgUaUUfyQlApXWBSN1RA==} + jest-circus@30.4.2: + resolution: {integrity: sha512-rvHH7VlY6LgbJXJTQ87GW62g1FntOtbhh0zT+v04kC+pgL6aBKyYINXxWukCpj3dcIBMw5/XUbtDS9dU9JTXeQ==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - jest-cli@30.3.0: - resolution: {integrity: sha512-l6Tqx+j1fDXJEW5bqYykDQQ7mQg+9mhWXtnj+tQZrTWYHyHoi6Be8HPumDSA+UiX2/2buEgjA58iJzdj146uCw==} + jest-cli@30.4.2: + resolution: {integrity: sha512-jfA2ocvVHMXS2QijrJ0d31ektP+d/W0T5RpcTX2Pq+3sVqHlsXVCM2+FmwpL+bdY8OfHpIg9xMxLF17Zg0U49Q==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} hasBin: true peerDependencies: @@ -9211,8 +9340,8 @@ packages: node-notifier: optional: true - jest-config@30.3.0: - resolution: {integrity: sha512-WPMAkMAtNDY9P/oKObtsRG/6KTrhtgPJoBTmk20uDn4Uy6/3EJnnaZJre/FMT1KVRx8cve1r7/FlMIOfRVWL4w==} + jest-config@30.4.2: + resolution: {integrity: sha512-rNHAShJQqQwFNoL0hbf3BphSBOWnpOUAKvidLS/AjNVLPfoj5mSf4jQMfW3cYOs6hXeZC7nF7mDHaBnbxELOzg==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} peerDependencies: '@types/node': '*' @@ -9234,28 +9363,32 @@ packages: resolution: {integrity: sha512-n3q4PDQjS4LrKxfWB3Z5KNk1XjXtZTBwQp71OP0Jo03Z6V60x++K5L8k6ZrW8MY8pOFylZvHM0zsjS1RqlHJZQ==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - jest-docblock@30.2.0: - resolution: {integrity: sha512-tR/FFgZKS1CXluOQzZvNH3+0z9jXr3ldGSD8bhyuxvlVUwbeLOGynkunvlTMxchC5urrKndYiwCFC0DLVjpOCA==} + jest-diff@30.4.1: + resolution: {integrity: sha512-CRpFK0RtLriVDGcPPAnR6HMVI8bSR2jnUIgralhauzYQZIb4RH9AtEInTuQr65LmmGggGcRT6HIASxwqsVsmlA==} + engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + + jest-docblock@30.4.0: + resolution: {integrity: sha512-ZPMabUZCx5MpbZ2eBYSvZ0J8fvo3dR9oM+eeUpb3aKNQFuS2tu3Duw1TNlMoP8k3WQgKGJuhcMFvwcVuq6T7oA==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - jest-each@30.3.0: - resolution: {integrity: sha512-V8eMndg/aZ+3LnCJgSm13IxS5XSBM22QSZc9BtPK8Dek6pm+hfUNfwBdvsB3d342bo1q7wnSkC38zjX259qZNA==} + jest-each@30.4.1: + resolution: {integrity: sha512-/8MJbH6fuj48TstjrMf+u/pd06Qezz5xOXvZA6442heNOWr8bdeoGZX2d9fCn028CoMgYmroH9//zky5GfyYmA==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - jest-environment-node@30.3.0: - resolution: {integrity: sha512-4i6HItw/JSiJVsC5q0hnKIe/hbYfZLVG9YJ/0pU9Hz2n/9qZe3Rhn5s5CUZA5ORZlcdT/vmAXRMyONXJwPrmYQ==} + jest-environment-node@30.4.1: + resolution: {integrity: sha512-4FZYVOk85hz2AyT6BbarKy9u37g6DbrDyCdFhsnDdXqyrueYQvB+0zO4f/kqLCRD0BsPRXPMNJeQwihKZV8naw==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} jest-get-type@29.6.3: resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-haste-map@30.3.0: - resolution: {integrity: sha512-mMi2oqG4KRU0R9QEtscl87JzMXfUhbKaFqOxmjb2CKcbHcUGFrJCBWHmnTiUqi6JcnzoBlO4rWfpdl2k/RfLCA==} + jest-haste-map@30.4.1: + resolution: {integrity: sha512-rFrcONd8jeFsyw+Z9CrScJgglRf2+NFmNam8dKu7n+SoHqNYT47mn0DdEcVUZJpvh7Iz6/si7f7yUH7GJHVgnw==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - jest-leak-detector@30.3.0: - resolution: {integrity: sha512-cuKmUUGIjfXZAiGJ7TbEMx0bcqNdPPI6P1V+7aF+m/FUJqFDxkFR4JqkTu8ZOiU5AaX/x0hZ20KaaIPXQzbMGQ==} + jest-leak-detector@30.4.1: + resolution: {integrity: sha512-IpmyiioeHxiWDhesHnUFmOxcTzwCwKpgACgWajtAP+nYQXiY7DakTxB6Bx9JFiRMljr0AX1PvnQdaU1KFoz6NQ==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} jest-matcher-utils@29.7.0: @@ -9266,6 +9399,10 @@ packages: resolution: {integrity: sha512-HEtc9uFQgaUHkC7nLSlQL3Tph4Pjxt/yiPvkIrrDCt9jhoLIgxaubo1G+CFOnmHYMxHwwdaSN7mkIFs6ZK8OhA==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + jest-matcher-utils@30.4.1: + resolution: {integrity: sha512-zvYfX5CaeEkFrrLS9suWe9rvJrm9J1Iv3ua8kIBv9GEPzcnsfBf0bob37la7s67fs0nlBC3EuvkOLnXQKxtx4A==} + engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + jest-message-util@29.7.0: resolution: {integrity: sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -9274,6 +9411,10 @@ packages: resolution: {integrity: sha512-Z/j4Bo+4ySJ+JPJN3b2Qbl9hDq3VrXmnjjGEWD/x0BCXeOXPTV1iZYYzl2X8c1MaCOL+ewMyNBcm88sboE6YWw==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + jest-message-util@30.4.1: + resolution: {integrity: sha512-kwCKIvq0MCW1HzLoGola9Te6JUdzgV0loyKJ3Qghrkz9i5/RRIHsL95BMQc2HBBhlBKC4j22K9p11TGHH8RBpQ==} + engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + jest-mock-extended@4.0.1: resolution: {integrity: sha512-Q/4k/yefiv/Al3n755V9xDEwMiL+7LwkjRKjaORkgCdovZv00hF/D0QypLoqO+MVfrYkzCYa4BYlcEKA74iOgQ==} peerDependencies: @@ -9285,6 +9426,10 @@ packages: resolution: {integrity: sha512-OTzICK8CpE+t4ndhKrwlIdbM6Pn8j00lvmSmq5ejiO+KxukbLjgOflKWMn3KE34EZdQm5RqTuKj+5RIEniYhog==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + jest-mock@30.4.1: + resolution: {integrity: sha512-/i8SVb8/NSB7RfNi8gfqu8gxLV23KaL5EpAttyb9iz8qWRIqXRLflycz/32wXsYkOnaUlx8NAKnJYtpsmXUmfw==} + engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + jest-pnp-resolver@1.2.3: resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==} engines: {node: '>=6'} @@ -9298,24 +9443,28 @@ packages: resolution: {integrity: sha512-jHEQgBXAgc+Gh4g0p3bCevgRCVRkB4VB70zhoAE48gxeSr1hfUOsM/C2WoJgVL7Eyg//hudYENbm3Ne+/dRVVA==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - jest-resolve-dependencies@30.3.0: - resolution: {integrity: sha512-9ev8s3YN6Hsyz9LV75XUwkCVFlwPbaFn6Wp75qnI0wzAINYWY8Fb3+6y59Rwd3QaS3kKXffHXsZMziMavfz/nw==} + jest-regex-util@30.4.0: + resolution: {integrity: sha512-mWlvLviKIgIQ8VCuM1xRdD0TWp3zlzionlmDBjuXVBs+VkmXq6FgW9T4Emr7oGz/Rk6feDCGyiugolcQEyp3mg==} + engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + + jest-resolve-dependencies@30.4.2: + resolution: {integrity: sha512-gDiVh1I+GxYzz9oXlyw+1wv6VOYX1WYxMOfjsA3iGKePV2oxmbHhwxfkALxNxYy1ciw6APWwkW2zZONwP97aEQ==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - jest-resolve@30.3.0: - resolution: {integrity: sha512-NRtTAHQlpd15F9rUR36jqwelbrDV/dY4vzNte3S2kxCKUJRYNd5/6nTSbYiak1VX5g8IoFF23Uj5TURkUW8O5g==} + jest-resolve@30.4.1: + resolution: {integrity: sha512-Zry8Yq/yJcNAZ7dJ5F2heic8AheXvbFZ7XI5V+h28nrYZ7Qoyy4dItq8OodjnYD270mvX+ZudmrNV9cysqhW5Q==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - jest-runner@30.3.0: - resolution: {integrity: sha512-gDv6C9LGKWDPLia9TSzZwf4h3kMQCqyTpq+95PODnTRDO0g9os48XIYYkS6D236vjpBir2fF63YmJFtqkS5Duw==} + jest-runner@30.4.2: + resolution: {integrity: sha512-2dw0PslVYXxffXGpLo+Ejad+KcI1Qkjn7f4X4619gf21oCUmL+SPfjqIa/losUem3yEOvfNZe/F1HWUcNpODcg==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - jest-runtime@30.3.0: - resolution: {integrity: sha512-CgC+hIBJbuh78HEffkhNKcbXAytQViplcl8xupqeIWyKQF50kCQA8J7GeJCkjisC6hpnC9Muf8jV5RdtdFbGng==} + jest-runtime@30.4.2: + resolution: {integrity: sha512-3/5e8iPz2k/VLqlr8DgTftYyLUv8Su3FkCAO2/Od81UsUTpSxOrS6O5x5KkoQwyUjmpYyDJKeyAvg2T2nvpNkQ==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - jest-snapshot@30.3.0: - resolution: {integrity: sha512-f14c7atpb4O2DeNhwcvS810Y63wEn8O1HqK/luJ4F6M4NjvxmAKQwBUWjbExUtMxWJQ0wVgmCKymeJK6NZMnfQ==} + jest-snapshot@30.4.1: + resolution: {integrity: sha512-tEOkkfOMppUyeiHwjZswOQ3lcnoTnws/q5FnGIaeIh/jmoU0ZlgMYRR8sTlTj+nNGCoJ0RDq6SfxGxCsyMTPmw==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} jest-util@29.7.0: @@ -9326,24 +9475,28 @@ packages: resolution: {integrity: sha512-/jZDa00a3Sz7rdyu55NLrQCIrbyIkbBxareejQI315f/i8HjYN+ZWsDLLpoQSiUIEIyZF/R8fDg3BmB8AtHttg==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - jest-validate@30.3.0: - resolution: {integrity: sha512-I/xzC8h5G+SHCb2P2gWkJYrNiTbeL47KvKeW5EzplkyxzBRBw1ssSHlI/jXec0ukH2q7x2zAWQm7015iusg62Q==} + jest-util@30.4.1: + resolution: {integrity: sha512-vjQb1sACEiv13DKJMDToJpzVW0joCsIQrmbg0fi7CyOOt+g9jTuQl2A216pWRBYhOVt53XbL/2LbMKg1BECWOw==} + engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + + jest-validate@30.4.1: + resolution: {integrity: sha512-PDWi4SOwLnwqNDfHZjOcsEFyZ4fc/2W2gVL3DEoyqnB6jCQMLRtfBong8s6omIw3lI0HWOus12xfnFmQtjW3fw==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - jest-watcher@30.3.0: - resolution: {integrity: sha512-PJ1d9ThtTR8aMiBWUdcownq9mDdLXsQzJayTk4kmaBRHKvwNQn+ANveuhEBUyNI2hR1TVhvQ8D5kHubbzBHR/w==} + jest-watcher@30.4.1: + resolution: {integrity: sha512-/l9UonmvCwjHH7d2h3iAwIloLc1H0S8mJZ/LNK3i86hqwPAz8otUJjP9MfYtz9Tt77Su5FD2xGjZn8d31IZHlw==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} jest-worker@27.5.1: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} - jest-worker@30.3.0: - resolution: {integrity: sha512-DrCKkaQwHexjRUFTmPzs7sHQe0TSj9nvDALKGdwmK5mW9v7j90BudWirKAJHt3QQ9Dhrg1F7DogPzhChppkJpQ==} + jest-worker@30.4.1: + resolution: {integrity: sha512-SHynN/q/QD++iNyvMdy+WMmbCGk8jIsNcRxycXbWubSOhvo6T+j2afcfUSl+3hYsiBebOTo0cT7c2H7CXugu1g==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} - jest@30.3.0: - resolution: {integrity: sha512-AkXIIFcaazymvey2i/+F94XRnM6TsVLZDhBMLsd1Sf/W0wzsvvpjeyUrCZD6HGG4SDYPgDJDBKeiJTBb10WzMg==} + jest@30.4.2: + resolution: {integrity: sha512-Yi1jqNC/Oq0N4hBgNH/YvBpP1P57QqundgytzYqy3yqAa7NZPNjSoi4SGbRAXDMdBzNE6xBCi5U7RgfrvMEUVQ==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} hasBin: true peerDependencies: @@ -9364,8 +9517,8 @@ packages: resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==} hasBin: true - jose@6.2.2: - resolution: {integrity: sha512-d7kPDd34KO/YnzaDOlikGpOurfF0ByC2sEV4cANCtdqLlTfBlw2p14O/5d/zv40gJPbIQxfES3nSx1/oYNyuZQ==} + jose@6.2.3: + resolution: {integrity: sha512-YYVDInQKFJfR/xa3ojUTl8c2KoTwiL1R5Wg9YCydwH0x0B9grbzlg5HC7mMjCtUJjbQ/YnGEZIhI5tCgfTb4Hw==} joycon@3.1.1: resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} @@ -10472,30 +10625,33 @@ packages: perfect-debounce@2.1.0: resolution: {integrity: sha512-LjgdTytVFXeUgtHZr9WYViYSM/g8MkcTPYDlPa3cDqMirHjKiSZPYd6DoL7pK8AJQr+uWkQvCjHNdiMqsrJs+g==} - pg-cloudflare@1.3.0: - resolution: {integrity: sha512-6lswVVSztmHiRtD6I8hw4qP/nDm1EJbKMRhf3HCYaqud7frGysPv7FYJ5noZQdhQtN2xJnimfMtvQq21pdbzyQ==} + pg-cloudflare@1.4.0: + resolution: {integrity: sha512-Vo7z/6rrQYxpNRylp4Tlob2elzbh+N/MOQbxFVWCxS7oEx6jF53GTJFxK2WWpKuBRkmiin4Mt+xofFDjx09R0A==} - pg-connection-string@2.12.0: - resolution: {integrity: sha512-U7qg+bpswf3Cs5xLzRqbXbQl85ng0mfSV/J0nnA31MCLgvEaAo7CIhmeyrmJpOr7o+zm0rXK+hNnT5l9RHkCkQ==} + pg-connection-string@2.13.0: + resolution: {integrity: sha512-EMnU9E2fSULdsbErBbMaXJvFeD9B4+nPcM3f+4lsiCR0BHLPrLVjv3DbyM2hgQQviKJaTWIRRTjKjWlHg3p2ig==} pg-int8@1.0.1: resolution: {integrity: sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==} engines: {node: '>=4.0.0'} - pg-pool@3.13.0: - resolution: {integrity: sha512-gB+R+Xud1gLFuRD/QgOIgGOBE2KCQPaPwkzBBGC9oG69pHTkhQeIuejVIk3/cnDyX39av2AxomQiyPT13WKHQA==} + pg-pool@3.14.0: + resolution: {integrity: sha512-gKtPkFdQPU3DksooVLi9LsjZxrsBUZIpa+7aVx+LV5pNh0KzP4Zleud2po+ConrxbuXGBJ6Hfer6hdgpIBpBaw==} peerDependencies: pg: '>=8.0' pg-protocol@1.13.0: resolution: {integrity: sha512-zzdvXfS6v89r6v7OcFCHfHlyG/wvry1ALxZo4LqgUoy7W9xhBDMaqOuMiF3qEV45VqsN6rdlcehHrfDtlCPc8w==} + pg-protocol@1.14.0: + resolution: {integrity: sha512-n5taZ1kO3s9ngDTVxsEznOqCyToTgz0FLuPq0B33COy5pPpuWJpY3/2oRBVETuOgzdqRXfWpM9HIhp2LBBT1BA==} + pg-types@2.2.0: resolution: {integrity: sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==} engines: {node: '>=4'} - pg@8.20.0: - resolution: {integrity: sha512-ldhMxz2r8fl/6QkXnBD3CR9/xg694oT6DZQ2s6c/RI28OjtSOpxnPrUCGOBJ46RCUxcWdx3p6kw/xnDHjKvaRA==} + pg@8.21.0: + resolution: {integrity: sha512-AUP1EYJuHraQGsVoCQVIcM7TEJVGtDzxWtGFZd8rds9d+CCXlU5Js1rYgfLNvxy9iJrpHjGrRjoi/3BT9fRyiA==} engines: {node: '>= 16.0.0'} peerDependencies: pg-native: '>=3.0.1' @@ -10781,6 +10937,10 @@ packages: resolution: {integrity: sha512-pMMHxBOZKFU6HgAZ4eyGnwXF/EvPGGqUr0MnZ5+99485wwW41kW91A4LOGxSHhgugZmSChL5AlElNdwlNgcnLQ==} engines: {node: ^10 || ^12 || >=14} + postcss@8.5.14: + resolution: {integrity: sha512-SoSL4+OSEtR99LHFZQiJLkT59C5B1amGO1NzTwj7TT1qCUgUO6hxOvzkOYxD+vMrXBM3XJIKzokoERdqQq/Zmg==} + engines: {node: ^10 || ^12 || >=14} + postgres-array@2.0.0: resolution: {integrity: sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==} engines: {node: '>=4'} @@ -10805,8 +10965,8 @@ packages: resolution: {integrity: sha512-Jtc2612XINuBjIl/QTWsV5UvE8UHuNblcO3vVADSrKsrc6RqGX6lOW1cEo3CM2v0XG4Nat8nI+YM7/f26VxXLw==} engines: {node: '>=12'} - posthog-node@5.30.6: - resolution: {integrity: sha512-deZuSiLkpdEipiywkww1FhQoKpVVFmJP6SAVQcZcMbugTLwJRYSGjgm+qV0Y91xghf2yP6Nr5Plfl52i9Qj15Q==} + posthog-node@5.34.6: + resolution: {integrity: sha512-oDjagFRkmCbWJBxG1FVU3kOGC6dxNpR849q8ARrZSBK3zWz4zJox6V5EjrATKM9RXKvAmbCSFoxYaOYTzp3phA==} engines: {node: ^20.20.0 || >=22.22.0} peerDependencies: rxjs: ^7.0.0 @@ -10973,6 +11133,10 @@ packages: resolution: {integrity: sha512-oG4T3wCbfeuvljnyAzhBvpN45E8iOTXCU/TD3zXW80HA3dQ4ahdqMkWGiPWZvjpQwlbyHrPTWUAqUzGzv4l1JQ==} engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + pretty-format@30.4.1: + resolution: {integrity: sha512-K6KiKMHTL4jjX4u3Kir2EW07nRfcqVTXIImx50wbjHQTcZPgg+gjVeNTIT3l3L1Rd4UefxfogquC9J37SoFyyw==} + engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0} + preview-email@3.1.1: resolution: {integrity: sha512-nrdhnt+E9ClJ4khk9rNzqgsxubH7xSJSKoqXx/7aed2eghegNGNWkSGOelNgFgUtMz3LmKGks0waH2NuXWWmPg==} engines: {node: '>=14'} @@ -11133,6 +11297,9 @@ packages: react-is@18.3.1: resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} + react-is@19.2.6: + resolution: {integrity: sha512-XjBR15BhXuylgWGuslhDKqlSayuqvqBX91BP8pauG8kd1zY8kotkNWbXksTCNRarse4kuGbe2kIY05ARtwNIvw==} + react@19.2.4: resolution: {integrity: sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ==} engines: {node: '>=0.10.0'} @@ -11425,6 +11592,11 @@ packages: engines: {node: '>=10'} hasBin: true + semver@7.8.0: + resolution: {integrity: sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==} + engines: {node: '>=10'} + hasBin: true + send@1.2.1: resolution: {integrity: sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ==} engines: {node: '>= 18'} @@ -11853,8 +12025,8 @@ packages: resolution: {integrity: sha512-nF7oMeL4KypldrQhac8RyHerJeGPD1p2xDh900GPvc+Nk7nWP6jX2FcC7WmkinMoAmoO774+AFXcWsW8gMWEIg==} engines: {node: '>=10'} - swagger-ui-dist@5.32.4: - resolution: {integrity: sha512-0AADFFQNJzExEN49SrD/34Nn9cxNxVLiydYl2MBwSZFPVXNkVwC/EFAjoezGGqE8oDegiDC+p47t8lKObCinMQ==} + swagger-ui-dist@5.32.6: + resolution: {integrity: sha512-75ttZNaYCLoFPnozPZcTUU6mS3wKT8l7WLjU5zJSHFeJa23i5vtnze6IiCl4jDMPeQTXVXIgovq4M11NNfQvSA==} swagger2openapi@7.0.8: resolution: {integrity: sha512-upi/0ZGkYgEcLeGieoz8gT74oWHA0E7JivX7aN9mAf+Tc7BQoRBvnIGHoPDw+f9TXTW4s6kGYCZJtauP6OYp7g==} @@ -12065,8 +12237,8 @@ packages: ts-interface-checker@0.1.13: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - ts-jest@29.4.9: - resolution: {integrity: sha512-LTb9496gYPMCqjeDLdPrKuXtncudeV1yRZnF4Wo5l3SFi0RYEnYRNgMrFIdg+FHvfzjCyQk1cLncWVqiSX+EvQ==} + ts-jest@29.4.10: + resolution: {integrity: sha512-vMTlTTtvz5aKZgzOoc7DQ5TzAL2fCzl8JnG1+ZpwjQa/g0xLlwE44yQ+1Cao9ZP1xVv9y5g34IFXEiqGOGFBUA==} engines: {node: ^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: @@ -12268,8 +12440,8 @@ packages: undici-types@7.16.0: resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} - undici-types@7.19.2: - resolution: {integrity: sha512-qYVnV5OEm2AW8cJMCpdV20CDyaN3g0AjDlOGf1OW4iaDEx8MwdtChUp4zu4H0VP3nDRF/8RKWH+IPp9uW0YGZg==} + undici-types@7.24.6: + resolution: {integrity: sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg==} unhead@2.1.12: resolution: {integrity: sha512-iTHdWD9ztTunOErtfUFk6Wr11BxvzumcYJ0CzaSCBUOEtg+DUZ9+gnE99i8QkLFT2q1rZD48BYYGXpOZVDLYkA==} @@ -12362,7 +12534,7 @@ packages: peerDependencies: '@babel/parser': ^7.15.8 '@nuxt/kit': ^3.2.2 || ^4.0.0 - vue: 3.5.33 + vue: 3.5.34 peerDependenciesMeta: '@babel/parser': optional: true @@ -12432,10 +12604,6 @@ packages: resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} engines: {node: '>= 0.4.0'} - uuid@11.1.0: - resolution: {integrity: sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==} - hasBin: true - uuid@13.0.0: resolution: {integrity: sha512-XQegIaBTVUjSHliKqcnFqYypAd4S+WCYt5NIeRs6w/UAry7z8Y9j5ZwRRL4kzq9U3sD6v+85er9FvkEaBpji2w==} hasBin: true @@ -12446,6 +12614,7 @@ packages: uuid@9.0.1: resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} + deprecated: uuid@10 and below is no longer supported. For ESM codebases, update to uuid@latest. For CommonJS codebases, use uuid@11 (but be aware this version will likely be deprecated in 2028). hasBin: true v8-compile-cache-lib@3.0.1: @@ -12624,7 +12793,7 @@ packages: resolution: {integrity: sha512-uh6NW7lt+aOXujK4eHfiNbeo55K9OTuB7fnv+5RVc4OBn/cZull6ThXdYH03JzKanUfgt6QZ37NbbtJ0og59qw==} peerDependencies: vite: ^4.0.0 || ^5.0.0 - vue: 3.5.33 + vue: 3.5.34 vue-router: ^4.0.11 vite@3.2.11: @@ -12741,6 +12910,47 @@ packages: jsdom: optional: true + vitest@4.1.6: + resolution: {integrity: sha512-6lvjbS3p9b4CrdCmguzbh2/4uoXhGE2q71R4OX5sqF9R1bo9Xd6fGrMAfvp5wnCzlBnFVdCOp6onuTQVbo8iUQ==} + engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@opentelemetry/api': ^1.9.0 + '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 + '@vitest/browser-playwright': 4.1.6 + '@vitest/browser-preview': 4.1.6 + '@vitest/browser-webdriverio': 4.1.6 + '@vitest/coverage-istanbul': 4.1.6 + '@vitest/coverage-v8': 4.1.6 + '@vitest/ui': 4.1.6 + happy-dom: '*' + jsdom: '*' + vite: ^6.0.0 || ^7.0.0 || ^8.0.0 + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@opentelemetry/api': + optional: true + '@types/node': + optional: true + '@vitest/browser-playwright': + optional: true + '@vitest/browser-preview': + optional: true + '@vitest/browser-webdriverio': + optional: true + '@vitest/coverage-istanbul': + optional: true + '@vitest/coverage-v8': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true + void-elements@3.1.0: resolution: {integrity: sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==} engines: {node: '>=0.10.0'} @@ -12757,7 +12967,7 @@ packages: hasBin: true peerDependencies: '@vue/composition-api': ^1.0.0-rc.1 - vue: 3.5.33 + vue: 3.5.34 peerDependenciesMeta: '@vue/composition-api': optional: true @@ -12772,18 +12982,18 @@ packages: resolution: {integrity: sha512-gxLVtcwdvOgwKSzkdb7nHKlW0N85A6aDNmHLnq6V+3w2/BXy/os5l71P7TIlgIQTxX0zJjiz89iImoHi51GieQ==} engines: {node: '>= 16'} peerDependencies: - vue: 3.5.33 + vue: 3.5.34 vue-json-pretty@2.6.0: resolution: {integrity: sha512-glz1aBVS35EO8+S9agIl3WOQaW2cJZW192UVKTuGmryx01ZvOVWc4pR3t+5UcyY4jdOfBUgVHjcpRpcnjRhCAg==} engines: {node: '>= 10.0.0', npm: '>= 5.0.0'} peerDependencies: - vue: 3.5.33 + vue: 3.5.34 vue-pdf-embed@2.1.4: resolution: {integrity: sha512-rZuRpQ4kJXKXCdZBCg3WZcYfrhDMJElcJQsS1V8KlJICDtFzzAzeDDSJwQU89Dx447Dv018P3zj/4UiAjBwvyg==} peerDependencies: - vue: 3.5.33 + vue: 3.5.34 vue-promise-modals@0.1.0: resolution: {integrity: sha512-LmPejeqvZSkxj4KkJe6ZUEJmCUQXVeEAj9ihTX+BRFfZftVCZSZd3B4uuZSKF0iCeQUemkodXUZFxcsNT/2dmg==} @@ -12791,7 +13001,7 @@ packages: vue-router@4.6.4: resolution: {integrity: sha512-Hz9q5sa33Yhduglwz6g9skT8OBPii+4bFn88w6J+J4MfEo4KRRpmiNG/hHHkdbRFlLBOqxN8y8gf2Fb0MTUgVg==} peerDependencies: - vue: 3.5.33 + vue: 3.5.34 vue-template-compiler@2.7.16: resolution: {integrity: sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==} @@ -12799,7 +13009,7 @@ packages: vue-tippy@6.7.1: resolution: {integrity: sha512-gdHbBV5/Vc8gH87hQHLA7TN1K4BlLco3MAPrTb70ZYGXxx+55rAU4a4mt0fIoP+gB3etu1khUZ6c29Br1n0CiA==} peerDependencies: - vue: 3.5.33 + vue: 3.5.34 vue-tsc@1.8.8: resolution: {integrity: sha512-bSydNFQsF7AMvwWsRXD7cBIXaNs/KSjvzWLymq/UtKE36697sboX4EccSHFVxvgdBlI1frYPc/VMKJNB7DFeDQ==} @@ -12819,8 +13029,8 @@ packages: peerDependencies: typescript: '>=5.0.0' - vue@3.5.33: - resolution: {integrity: sha512-1AgChhx5w3ALgT4oK3acm2Es/7jyZhWSVUfs3rOBlGQC0rjEDkS7G4lWlJJGGNQD+BV3reCwbQrOe1mPNwKHBQ==} + vue@3.5.34: + resolution: {integrity: sha512-WdLBG9gm02OgJIG9axd5Hpx0TFLdzVgfG2evFFu8Rur5O/IoGc5cMjnjh3tPL6GnRGsYvUhBSKVPYVcxRKpMCA==} peerDependencies: typescript: '*' peerDependenciesMeta: @@ -12830,7 +13040,7 @@ packages: vuedraggable-es@4.1.1: resolution: {integrity: sha512-F35pjSwC8HS/lnaOd+B59nYR4FZmwuhWAzccK9xftRuWds8SU1TZh5myKVM86j5dFOI7S26O64Kwe7LUHnXjlA==} peerDependencies: - vue: 3.5.33 + vue: 3.5.34 w3c-keyname@2.2.8: resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==} @@ -12977,6 +13187,9 @@ packages: workbox-core@7.4.0: resolution: {integrity: sha512-6BMfd8tYEnN4baG4emG9U0hdXM4gGuDU3ectXuVHnj71vwxTFI7WOpQJC4siTOlVtGqCUtj0ZQNsrvi6kZZTAQ==} + workbox-core@7.4.1: + resolution: {integrity: sha512-DT+vu46eh/2vRsSHTY4Xmc32Z1rr9PRlQUXr1Dx30ZuXRWwOsvZgGgcwxcasubQLQmbTNYZjv44LkBAQ4tT5tQ==} + workbox-expiration@7.4.0: resolution: {integrity: sha512-V50p4BxYhtA80eOvulu8xVfPBgZbkxJ1Jr8UUn0rvqjGhLDqKNtfrDfjJKnLz2U8fO2xGQJTx/SKXNTzHOjnHw==} @@ -13010,6 +13223,9 @@ packages: workbox-window@7.4.0: resolution: {integrity: sha512-/bIYdBLAVsNR3v7gYGaV4pQW3M3kEPx5E8vDxGvxo6khTrGtSSCS7QiFKv9ogzBgZiy0OXLP9zO28U/1nF1mfw==} + workbox-window@7.4.1: + resolution: {integrity: sha512-notZDH2u8VXaqyuD7xaqIfEFi6SRM4SUSd7ewe9PDsVqADuepxX2ZMY3uvuZGxzY5ZOsGC/vD3A/3smFtJt4/A==} + workerpool@9.3.4: resolution: {integrity: sha512-TmPRQYYSAnnDiEB0P/Ytip7bFGvqnSU6I2BcuSw7Hx+JSg/DsUi5ebYfc8GYaSdpuvOcEs6dXxPurOYpe9QFwg==} @@ -13199,6 +13415,10 @@ snapshots: optionalDependencies: graphql: 16.13.2 + '@0no-co/graphql.web@1.2.0(graphql@16.14.0)': + optionalDependencies: + graphql: 16.14.0 + '@CuriousCorrelation/plugin-appload@https://codeload.github.com/CuriousCorrelation/tauri-plugin-appload/tar.gz/0d58d53be2bc75aeb5916bd0d77794fd209426af': dependencies: '@tauri-apps/api': 2.9.1 @@ -13222,11 +13442,11 @@ snapshots: optionalDependencies: chokidar: 4.0.3 - '@angular-devkit/schematics-cli@19.2.24(@types/node@25.6.0)(chokidar@4.0.3)': + '@angular-devkit/schematics-cli@19.2.24(@types/node@25.9.0)(chokidar@4.0.3)': dependencies: '@angular-devkit/core': 19.2.24(chokidar@4.0.3) '@angular-devkit/schematics': 19.2.24(chokidar@4.0.3) - '@inquirer/prompts': 7.3.2(@types/node@25.6.0) + '@inquirer/prompts': 7.3.2(@types/node@25.9.0) ansi-colors: 4.1.3 symbol-observable: 4.0.0 yargs-parser: 21.1.1 @@ -13301,9 +13521,9 @@ snapshots: call-me-maybe: 1.0.2 openapi-types: 12.1.3 - '@apollo/cache-control-types@1.0.3(graphql@16.13.2)': + '@apollo/cache-control-types@1.0.3(graphql@16.14.0)': dependencies: - graphql: 16.13.2 + graphql: 16.14.0 '@apollo/protobufjs@1.2.7': dependencies: @@ -13320,42 +13540,41 @@ snapshots: '@types/long': 4.0.2 long: 4.0.0 - '@apollo/server-gateway-interface@2.0.0(graphql@16.13.2)': + '@apollo/server-gateway-interface@2.0.0(graphql@16.14.0)': dependencies: '@apollo/usage-reporting-protobuf': 4.1.1 '@apollo/utils.fetcher': 3.1.0 '@apollo/utils.keyvaluecache': 4.0.0 '@apollo/utils.logger': 3.0.0 - graphql: 16.13.2 + graphql: 16.14.0 - '@apollo/server-plugin-landing-page-graphql-playground@4.0.1(@apollo/server@5.5.0(graphql@16.13.2))': + '@apollo/server-plugin-landing-page-graphql-playground@4.0.1(@apollo/server@5.5.1(graphql@16.14.0))': dependencies: - '@apollo/server': 5.5.0(graphql@16.13.2) + '@apollo/server': 5.5.1(graphql@16.14.0) '@apollographql/graphql-playground-html': 1.6.29 - '@apollo/server@5.5.0(graphql@16.13.2)': + '@apollo/server@5.5.1(graphql@16.14.0)': dependencies: - '@apollo/cache-control-types': 1.0.3(graphql@16.13.2) - '@apollo/server-gateway-interface': 2.0.0(graphql@16.13.2) + '@apollo/cache-control-types': 1.0.3(graphql@16.14.0) + '@apollo/server-gateway-interface': 2.0.0(graphql@16.14.0) '@apollo/usage-reporting-protobuf': 4.1.1 '@apollo/utils.createhash': 3.0.1 '@apollo/utils.fetcher': 3.1.0 '@apollo/utils.isnodelike': 3.0.0 '@apollo/utils.keyvaluecache': 4.0.0 '@apollo/utils.logger': 3.0.0 - '@apollo/utils.usagereporting': 2.1.0(graphql@16.13.2) + '@apollo/utils.usagereporting': 2.1.0(graphql@16.14.0) '@apollo/utils.withrequired': 3.0.0 - '@graphql-tools/schema': 10.0.31(graphql@16.13.2) + '@graphql-tools/schema': 10.0.33(graphql@16.14.0) async-retry: 1.3.3 body-parser: 2.2.1 content-type: 1.0.5 cors: 2.8.6 finalhandler: 2.1.1 - graphql: 16.13.2 + graphql: 16.14.0 loglevel: 1.9.2 lru-cache: 11.2.7 negotiator: 1.0.0 - uuid: 11.1.0 whatwg-mimetype: 4.0.0 transitivePeerDependencies: - supports-color @@ -13369,9 +13588,9 @@ snapshots: '@apollo/utils.isnodelike': 3.0.0 sha.js: 2.4.12 - '@apollo/utils.dropunuseddefinitions@2.0.1(graphql@16.13.2)': + '@apollo/utils.dropunuseddefinitions@2.0.1(graphql@16.14.0)': dependencies: - graphql: 16.13.2 + graphql: 16.14.0 '@apollo/utils.fetcher@3.1.0': {} @@ -13384,32 +13603,32 @@ snapshots: '@apollo/utils.logger@3.0.0': {} - '@apollo/utils.printwithreducedwhitespace@2.0.1(graphql@16.13.2)': + '@apollo/utils.printwithreducedwhitespace@2.0.1(graphql@16.14.0)': dependencies: - graphql: 16.13.2 + graphql: 16.14.0 - '@apollo/utils.removealiases@2.0.1(graphql@16.13.2)': + '@apollo/utils.removealiases@2.0.1(graphql@16.14.0)': dependencies: - graphql: 16.13.2 + graphql: 16.14.0 - '@apollo/utils.sortast@2.0.1(graphql@16.13.2)': + '@apollo/utils.sortast@2.0.1(graphql@16.14.0)': dependencies: - graphql: 16.13.2 + graphql: 16.14.0 lodash.sortby: 4.7.0 - '@apollo/utils.stripsensitiveliterals@2.0.1(graphql@16.13.2)': + '@apollo/utils.stripsensitiveliterals@2.0.1(graphql@16.14.0)': dependencies: - graphql: 16.13.2 + graphql: 16.14.0 - '@apollo/utils.usagereporting@2.1.0(graphql@16.13.2)': + '@apollo/utils.usagereporting@2.1.0(graphql@16.14.0)': dependencies: '@apollo/usage-reporting-protobuf': 4.1.1 - '@apollo/utils.dropunuseddefinitions': 2.0.1(graphql@16.13.2) - '@apollo/utils.printwithreducedwhitespace': 2.0.1(graphql@16.13.2) - '@apollo/utils.removealiases': 2.0.1(graphql@16.13.2) - '@apollo/utils.sortast': 2.0.1(graphql@16.13.2) - '@apollo/utils.stripsensitiveliterals': 2.0.1(graphql@16.13.2) - graphql: 16.13.2 + '@apollo/utils.dropunuseddefinitions': 2.0.1(graphql@16.14.0) + '@apollo/utils.printwithreducedwhitespace': 2.0.1(graphql@16.14.0) + '@apollo/utils.removealiases': 2.0.1(graphql@16.14.0) + '@apollo/utils.sortast': 2.0.1(graphql@16.14.0) + '@apollo/utils.stripsensitiveliterals': 2.0.1(graphql@16.14.0) + graphql: 16.14.0 '@apollo/utils.withrequired@3.0.0': {} @@ -13421,7 +13640,7 @@ snapshots: dependencies: '@babel/core': 7.29.0 '@babel/generator': 7.29.1 - '@babel/parser': 7.29.2 + '@babel/parser': 7.29.3 '@babel/runtime': 7.29.2 '@babel/traverse': 7.29.0 '@babel/types': 7.29.0 @@ -13441,6 +13660,30 @@ snapshots: - encoding - supports-color + '@ardatan/relay-compiler@12.0.0(graphql@16.14.0)': + dependencies: + '@babel/core': 7.29.0 + '@babel/generator': 7.29.1 + '@babel/parser': 7.29.3 + '@babel/runtime': 7.29.2 + '@babel/traverse': 7.29.0 + '@babel/types': 7.29.0 + babel-preset-fbjs: 3.4.0(@babel/core@7.29.0) + chalk: 4.1.2 + fb-watchman: 2.0.2 + fbjs: 3.0.5 + glob: 7.2.3 + graphql: 16.14.0 + immutable: 3.7.6 + invariant: 2.2.4 + nullthrows: 1.1.1 + relay-runtime: 12.0.0 + signedsource: 1.0.0 + yargs: 15.4.1 + transitivePeerDependencies: + - encoding + - supports-color + '@ardatan/relay-compiler@13.0.1(graphql@16.13.2)': dependencies: '@babel/runtime': 7.29.2 @@ -13448,15 +13691,22 @@ snapshots: immutable: 5.1.5 invariant: 2.2.4 - '@ardatan/sync-fetch@0.0.1': + '@ardatan/relay-compiler@13.0.1(graphql@16.14.0)': dependencies: - node-fetch: 2.7.0 - transitivePeerDependencies: - - encoding + '@babel/runtime': 7.29.2 + graphql: 16.14.0 + immutable: 5.1.5 + invariant: 2.2.4 + + '@ardatan/sync-fetch@0.0.1': + dependencies: + node-fetch: 2.7.0 + transitivePeerDependencies: + - encoding - '@as-integrations/express5@1.1.2(@apollo/server@5.5.0(graphql@16.13.2))(express@5.2.1)': + '@as-integrations/express5@1.1.2(@apollo/server@5.5.1(graphql@16.14.0))(express@5.2.1)': dependencies: - '@apollo/server': 5.5.0(graphql@16.13.2) + '@apollo/server': 5.5.1(graphql@16.14.0) express: 5.2.1 '@asamuzakjp/css-color@4.1.2': @@ -13492,7 +13742,7 @@ snapshots: '@babel/helper-compilation-targets': 7.28.6 '@babel/helper-module-transforms': 7.28.6(@babel/core@7.29.0) '@babel/helpers': 7.29.2 - '@babel/parser': 7.29.2 + '@babel/parser': 7.29.3 '@babel/template': 7.28.6 '@babel/traverse': 7.29.0 '@babel/types': 7.29.0 @@ -13635,6 +13885,10 @@ snapshots: dependencies: '@babel/types': 7.29.0 + '@babel/parser@7.29.3': + dependencies: + '@babel/types': 7.29.0 + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5(@babel/core@7.29.0)': dependencies: '@babel/core': 7.29.0 @@ -14245,7 +14499,7 @@ snapshots: '@babel/code-frame': 7.29.0 '@babel/generator': 7.29.1 '@babel/helper-globals': 7.28.0 - '@babel/parser': 7.29.2 + '@babel/parser': 7.29.3 '@babel/template': 7.28.6 '@babel/types': 7.29.0 debug: 4.4.3(supports-color@8.1.1) @@ -14261,9 +14515,9 @@ snapshots: '@borewit/text-codec@0.2.2': {} - '@boringer-avatars/vue3@0.2.1(vue@3.5.33(typescript@5.9.3))': + '@boringer-avatars/vue3@0.2.1(vue@3.5.34(typescript@5.9.3))': dependencies: - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) '@codemirror/autocomplete@6.20.0': dependencies: @@ -14394,7 +14648,7 @@ snapshots: '@commitlint/is-ignored@20.5.0': dependencies: '@commitlint/types': 20.5.0 - semver: 7.7.4 + semver: 7.8.0 '@commitlint/lint@20.5.0': dependencies: @@ -14468,7 +14722,7 @@ snapshots: dependencies: '@simple-libs/child-process-utils': 1.0.2 '@simple-libs/stream-utils': 1.2.0 - semver: 7.7.4 + semver: 7.8.0 optionalDependencies: conventional-commits-parser: 6.4.0 @@ -14838,9 +15092,9 @@ snapshots: '@esbuild/win32-x64@0.27.4': optional: true - '@eslint-community/eslint-utils@4.9.1(eslint@10.2.1(jiti@2.6.1))': + '@eslint-community/eslint-utils@4.9.1(eslint@10.4.0(jiti@2.6.1))': dependencies: - eslint: 10.2.1(jiti@2.6.1) + eslint: 10.4.0(jiti@2.6.1) eslint-visitor-keys: 3.4.3 '@eslint-community/eslint-utils@4.9.1(eslint@9.39.2(jiti@2.6.1))': @@ -14870,7 +15124,7 @@ snapshots: dependencies: '@eslint/core': 0.17.0 - '@eslint/config-helpers@0.5.5': + '@eslint/config-helpers@0.6.0': dependencies: '@eslint/core': 1.2.1 @@ -14896,9 +15150,9 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@10.0.1(eslint@10.2.1(jiti@2.6.1))': + '@eslint/js@10.0.1(eslint@10.4.0(jiti@2.6.1))': optionalDependencies: - eslint: 10.2.1(jiti@2.6.1) + eslint: 10.4.0(jiti@2.6.1) '@eslint/js@9.39.2': {} @@ -14932,8 +15186,12 @@ snapshots: '@fontsource-variable/material-symbols-rounded@5.2.43': {} + '@fontsource-variable/material-symbols-rounded@5.2.44': {} + '@fontsource-variable/roboto-mono@5.2.8': {} + '@fontsource-variable/roboto-mono@5.2.9': {} + '@glideapps/ts-necessities@2.2.3': {} '@graphql-codegen/add@6.0.1(graphql@16.13.2)': @@ -14942,6 +15200,12 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-codegen/add@6.0.1(graphql@16.14.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.14.0) + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-codegen/cli@6.3.1(@parcel/watcher@2.5.6)(@types/node@24.10.1)(graphql@16.13.2)(typescript@5.9.3)': dependencies: '@babel/generator': 7.29.1 @@ -14993,7 +15257,7 @@ snapshots: - typescript - utf-8-validate - '@graphql-codegen/cli@6.3.1(@parcel/watcher@2.5.6)(@types/node@25.6.0)(graphql@16.13.2)(typescript@5.9.3)': + '@graphql-codegen/cli@6.3.1(@parcel/watcher@2.5.6)(@types/node@25.9.0)(graphql@16.13.2)(typescript@5.9.3)': dependencies: '@babel/generator': 7.29.1 '@babel/template': 7.28.6 @@ -15004,21 +15268,72 @@ snapshots: '@graphql-tools/apollo-engine-loader': 8.0.30(graphql@16.13.2) '@graphql-tools/code-file-loader': 8.1.32(graphql@16.13.2) '@graphql-tools/git-loader': 8.0.36(graphql@16.13.2) - '@graphql-tools/github-loader': 9.1.2(@types/node@25.6.0)(graphql@16.13.2) + '@graphql-tools/github-loader': 9.1.2(@types/node@25.9.0)(graphql@16.13.2) '@graphql-tools/graphql-file-loader': 8.1.14(graphql@16.13.2) '@graphql-tools/json-file-loader': 8.0.28(graphql@16.13.2) '@graphql-tools/load': 8.1.10(graphql@16.13.2) '@graphql-tools/merge': 9.1.9(graphql@16.13.2) - '@graphql-tools/url-loader': 9.1.2(@types/node@25.6.0)(graphql@16.13.2) + '@graphql-tools/url-loader': 9.1.2(@types/node@25.9.0)(graphql@16.13.2) '@graphql-tools/utils': 11.1.0(graphql@16.13.2) - '@inquirer/prompts': 7.10.1(@types/node@25.6.0) + '@inquirer/prompts': 7.10.1(@types/node@25.9.0) '@whatwg-node/fetch': 0.10.13 chalk: 4.1.2 cosmiconfig: 9.0.1(typescript@5.9.3) debounce: 2.2.0 detect-indent: 6.1.0 graphql: 16.13.2 - graphql-config: 5.1.6(@types/node@25.6.0)(graphql@16.13.2)(typescript@5.9.3) + graphql-config: 5.1.6(@types/node@25.9.0)(graphql@16.13.2)(typescript@5.9.3) + is-glob: 4.0.3 + jiti: 2.6.1 + json-to-pretty-yaml: 1.2.2 + listr2: 9.0.5 + log-symbols: 4.1.0 + micromatch: 4.0.8 + shell-quote: 1.8.3 + string-env-interpolation: 1.0.1 + ts-log: 2.2.7 + tslib: 2.8.1 + yaml: 2.8.3 + yargs: 17.7.2 + optionalDependencies: + '@parcel/watcher': 2.5.6 + transitivePeerDependencies: + - '@fastify/websocket' + - '@types/node' + - bufferutil + - cosmiconfig-toml-loader + - crossws + - graphql-sock + - supports-color + - typescript + - utf-8-validate + + '@graphql-codegen/cli@6.3.1(@parcel/watcher@2.5.6)(@types/node@25.9.0)(graphql@16.14.0)(typescript@5.9.3)': + dependencies: + '@babel/generator': 7.29.1 + '@babel/template': 7.28.6 + '@babel/types': 7.29.0 + '@graphql-codegen/client-preset': 5.3.0(graphql@16.14.0) + '@graphql-codegen/core': 5.0.2(graphql@16.14.0) + '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.14.0) + '@graphql-tools/apollo-engine-loader': 8.0.30(graphql@16.14.0) + '@graphql-tools/code-file-loader': 8.1.32(graphql@16.14.0) + '@graphql-tools/git-loader': 8.0.36(graphql@16.14.0) + '@graphql-tools/github-loader': 9.1.2(@types/node@25.9.0)(graphql@16.14.0) + '@graphql-tools/graphql-file-loader': 8.1.14(graphql@16.14.0) + '@graphql-tools/json-file-loader': 8.0.28(graphql@16.14.0) + '@graphql-tools/load': 8.1.10(graphql@16.14.0) + '@graphql-tools/merge': 9.1.9(graphql@16.14.0) + '@graphql-tools/url-loader': 9.1.2(@types/node@25.9.0)(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + '@inquirer/prompts': 7.10.1(@types/node@25.9.0) + '@whatwg-node/fetch': 0.10.13 + chalk: 4.1.2 + cosmiconfig: 9.0.1(typescript@5.9.3) + debounce: 2.2.0 + detect-indent: 6.1.0 + graphql: 16.14.0 + graphql-config: 5.1.6(@types/node@25.9.0)(graphql@16.14.0)(typescript@5.9.3) is-glob: 4.0.3 jiti: 2.6.1 json-to-pretty-yaml: 1.2.2 @@ -15061,6 +15376,23 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-codegen/client-preset@5.3.0(graphql@16.14.0)': + dependencies: + '@babel/helper-plugin-utils': 7.28.6 + '@babel/template': 7.28.6 + '@graphql-codegen/add': 6.0.1(graphql@16.14.0) + '@graphql-codegen/gql-tag-operations': 5.2.0(graphql@16.14.0) + '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.14.0) + '@graphql-codegen/typed-document-node': 6.1.8(graphql@16.14.0) + '@graphql-codegen/typescript': 5.0.10(graphql@16.14.0) + '@graphql-codegen/typescript-operations': 5.1.0(graphql@16.14.0) + '@graphql-codegen/visitor-plugin-common': 6.3.0(graphql@16.14.0) + '@graphql-tools/documents': 1.0.1(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + '@graphql-typed-document-node/core': 3.2.0(graphql@16.14.0) + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-codegen/core@5.0.2(graphql@16.13.2)': dependencies: '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.13.2) @@ -15069,6 +15401,14 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-codegen/core@5.0.2(graphql@16.14.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.14.0) + '@graphql-tools/schema': 10.0.33(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-codegen/gql-tag-operations@5.2.0(graphql@16.13.2)': dependencies: '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.13.2) @@ -15078,6 +15418,15 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-codegen/gql-tag-operations@5.2.0(graphql@16.14.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.14.0) + '@graphql-codegen/visitor-plugin-common': 6.3.0(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + auto-bind: 4.0.0 + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-codegen/introspection@5.0.2(graphql@16.13.2)': dependencies: '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.13.2) @@ -15095,6 +15444,16 @@ snapshots: lodash: 4.18.1 tslib: 2.4.1 + '@graphql-codegen/plugin-helpers@3.1.2(graphql@16.14.0)': + dependencies: + '@graphql-tools/utils': 9.2.1(graphql@16.14.0) + change-case-all: 1.0.15 + common-tags: 1.8.2 + graphql: 16.14.0 + import-from: 4.0.0 + lodash: 4.18.1 + tslib: 2.4.1 + '@graphql-codegen/plugin-helpers@6.3.0(graphql@16.13.2)': dependencies: '@graphql-tools/utils': 11.0.1(graphql@16.13.2) @@ -15104,6 +15463,15 @@ snapshots: import-from: 4.0.0 tslib: 2.8.1 + '@graphql-codegen/plugin-helpers@6.3.0(graphql@16.14.0)': + dependencies: + '@graphql-tools/utils': 11.0.1(graphql@16.14.0) + change-case-all: 1.0.15 + common-tags: 1.8.2 + graphql: 16.14.0 + import-from: 4.0.0 + tslib: 2.8.1 + '@graphql-codegen/schema-ast@5.0.2(graphql@16.13.2)': dependencies: '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.13.2) @@ -15111,6 +15479,13 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-codegen/schema-ast@5.0.2(graphql@16.14.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-codegen/typed-document-node@6.1.8(graphql@16.13.2)': dependencies: '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.13.2) @@ -15120,6 +15495,15 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-codegen/typed-document-node@6.1.8(graphql@16.14.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.14.0) + '@graphql-codegen/visitor-plugin-common': 6.3.0(graphql@16.14.0) + auto-bind: 4.0.0 + change-case-all: 1.0.15 + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-codegen/typescript-document-nodes@5.0.10(graphql@16.13.2)': dependencies: '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.13.2) @@ -15137,6 +15521,15 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-codegen/typescript-operations@5.1.0(graphql@16.14.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.14.0) + '@graphql-codegen/typescript': 5.0.10(graphql@16.14.0) + '@graphql-codegen/visitor-plugin-common': 6.3.0(graphql@16.14.0) + auto-bind: 4.0.0 + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-codegen/typescript-urql-graphcache@3.1.1(@urql/exchange-graphcache@7.2.4(@urql/core@6.0.1(graphql@16.13.2))(graphql@16.13.2))(graphql-tag@2.12.6(graphql@16.13.2))(graphql@16.13.2)': dependencies: '@graphql-codegen/plugin-helpers': 3.1.2(graphql@16.13.2) @@ -15151,6 +15544,20 @@ snapshots: - encoding - supports-color + '@graphql-codegen/typescript-urql-graphcache@3.1.1(@urql/exchange-graphcache@7.2.4(@urql/core@6.0.1(graphql@16.14.0))(graphql@16.14.0))(graphql-tag@2.12.6(graphql@16.14.0))(graphql@16.14.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 3.1.2(graphql@16.14.0) + '@graphql-codegen/visitor-plugin-common': 2.13.8(graphql@16.14.0) + '@urql/exchange-graphcache': 7.2.4(@urql/core@6.0.1(graphql@16.14.0))(graphql@16.14.0) + auto-bind: 4.0.0 + change-case-all: 1.0.15 + graphql: 16.14.0 + graphql-tag: 2.12.6(graphql@16.14.0) + tslib: 2.8.1 + transitivePeerDependencies: + - encoding + - supports-color + '@graphql-codegen/typescript@5.0.10(graphql@16.13.2)': dependencies: '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.13.2) @@ -15160,6 +15567,15 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-codegen/typescript@5.0.10(graphql@16.14.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.14.0) + '@graphql-codegen/schema-ast': 5.0.2(graphql@16.14.0) + '@graphql-codegen/visitor-plugin-common': 6.3.0(graphql@16.14.0) + auto-bind: 4.0.0 + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-codegen/urql-introspection@3.0.1(graphql@16.13.2)': dependencies: '@graphql-codegen/plugin-helpers': 3.1.2(graphql@16.13.2) @@ -15167,6 +15583,13 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-codegen/urql-introspection@3.0.1(graphql@16.14.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 3.1.2(graphql@16.14.0) + '@urql/introspection': 0.3.3(graphql@16.14.0) + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-codegen/visitor-plugin-common@2.13.8(graphql@16.13.2)': dependencies: '@graphql-codegen/plugin-helpers': 3.1.2(graphql@16.13.2) @@ -15184,6 +15607,23 @@ snapshots: - encoding - supports-color + '@graphql-codegen/visitor-plugin-common@2.13.8(graphql@16.14.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 3.1.2(graphql@16.14.0) + '@graphql-tools/optimize': 1.4.0(graphql@16.14.0) + '@graphql-tools/relay-operation-optimizer': 6.5.18(graphql@16.14.0) + '@graphql-tools/utils': 9.2.1(graphql@16.14.0) + auto-bind: 4.0.0 + change-case-all: 1.0.15 + dependency-graph: 0.11.0 + graphql: 16.14.0 + graphql-tag: 2.12.6(graphql@16.14.0) + parse-filepath: 1.0.2 + tslib: 2.4.1 + transitivePeerDependencies: + - encoding + - supports-color + '@graphql-codegen/visitor-plugin-common@6.3.0(graphql@16.13.2)': dependencies: '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.13.2) @@ -15198,6 +15638,20 @@ snapshots: parse-filepath: 1.0.2 tslib: 2.8.1 + '@graphql-codegen/visitor-plugin-common@6.3.0(graphql@16.14.0)': + dependencies: + '@graphql-codegen/plugin-helpers': 6.3.0(graphql@16.14.0) + '@graphql-tools/optimize': 2.0.0(graphql@16.14.0) + '@graphql-tools/relay-operation-optimizer': 7.1.4(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + auto-bind: 4.0.0 + change-case-all: 1.0.15 + dependency-graph: 1.0.0 + graphql: 16.14.0 + graphql-tag: 2.12.6(graphql@16.14.0) + parse-filepath: 1.0.2 + tslib: 2.8.1 + '@graphql-hive/signal@2.0.0': {} '@graphql-tools/apollo-engine-loader@8.0.30(graphql@16.13.2)': @@ -15208,6 +15662,14 @@ snapshots: sync-fetch: 0.6.0 tslib: 2.8.1 + '@graphql-tools/apollo-engine-loader@8.0.30(graphql@16.14.0)': + dependencies: + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + '@whatwg-node/fetch': 0.10.13 + graphql: 16.14.0 + sync-fetch: 0.6.0 + tslib: 2.8.1 + '@graphql-tools/batch-execute@10.0.8(graphql@16.13.2)': dependencies: '@graphql-tools/utils': 11.1.0(graphql@16.13.2) @@ -15216,6 +15678,14 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-tools/batch-execute@10.0.8(graphql@16.14.0)': + dependencies: + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + '@whatwg-node/promise-helpers': 1.3.2 + dataloader: 2.2.3 + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-tools/batch-execute@8.5.22(graphql@16.13.2)': dependencies: '@graphql-tools/utils': 9.2.1(graphql@16.13.2) @@ -15235,6 +15705,17 @@ snapshots: transitivePeerDependencies: - supports-color + '@graphql-tools/code-file-loader@8.1.32(graphql@16.14.0)': + dependencies: + '@graphql-tools/graphql-tag-pluck': 8.3.31(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + globby: 11.1.0 + graphql: 16.14.0 + tslib: 2.8.1 + unixify: 1.0.0 + transitivePeerDependencies: + - supports-color + '@graphql-tools/delegate@12.0.14(graphql@16.13.2)': dependencies: '@graphql-tools/batch-execute': 10.0.8(graphql@16.13.2) @@ -15247,6 +15728,18 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-tools/delegate@12.0.14(graphql@16.14.0)': + dependencies: + '@graphql-tools/batch-execute': 10.0.8(graphql@16.14.0) + '@graphql-tools/executor': 1.5.3(graphql@16.14.0) + '@graphql-tools/schema': 10.0.33(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + '@repeaterjs/repeater': 3.0.6 + '@whatwg-node/promise-helpers': 1.3.2 + dataloader: 2.2.3 + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-tools/delegate@9.0.35(graphql@16.13.2)': dependencies: '@graphql-tools/batch-execute': 8.5.22(graphql@16.13.2) @@ -15264,12 +15757,24 @@ snapshots: lodash.sortby: 4.7.0 tslib: 2.8.1 + '@graphql-tools/documents@1.0.1(graphql@16.14.0)': + dependencies: + graphql: 16.14.0 + lodash.sortby: 4.7.0 + tslib: 2.8.1 + '@graphql-tools/executor-common@1.0.6(graphql@16.13.2)': dependencies: '@envelop/core': 5.5.1 '@graphql-tools/utils': 11.1.0(graphql@16.13.2) graphql: 16.13.2 + '@graphql-tools/executor-common@1.0.6(graphql@16.14.0)': + dependencies: + '@envelop/core': 5.5.1 + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + graphql: 16.14.0 + '@graphql-tools/executor-graphql-ws@0.0.14(graphql@16.13.2)': dependencies: '@graphql-tools/utils': 9.2.1(graphql@16.13.2) @@ -15300,6 +15805,22 @@ snapshots: - crossws - utf-8-validate + '@graphql-tools/executor-graphql-ws@3.1.5(graphql@16.14.0)': + dependencies: + '@graphql-tools/executor-common': 1.0.6(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + '@whatwg-node/disposablestack': 0.0.6 + graphql: 16.14.0 + graphql-ws: 6.0.8(graphql@16.14.0)(ws@8.17.1) + isows: 1.0.7(ws@8.17.1) + tslib: 2.8.1 + ws: 8.17.1 + transitivePeerDependencies: + - '@fastify/websocket' + - bufferutil + - crossws + - utf-8-validate + '@graphql-tools/executor-http@0.1.10(@types/node@24.10.1)(graphql@16.13.2)': dependencies: '@graphql-tools/utils': 9.2.1(graphql@16.13.2) @@ -15329,7 +15850,7 @@ snapshots: transitivePeerDependencies: - '@types/node' - '@graphql-tools/executor-http@3.2.1(@types/node@25.6.0)(graphql@16.13.2)': + '@graphql-tools/executor-http@3.2.1(@types/node@25.9.0)(graphql@16.13.2)': dependencies: '@graphql-hive/signal': 2.0.0 '@graphql-tools/executor-common': 1.0.6(graphql@16.13.2) @@ -15339,7 +15860,22 @@ snapshots: '@whatwg-node/fetch': 0.10.13 '@whatwg-node/promise-helpers': 1.3.2 graphql: 16.13.2 - meros: 1.3.2(@types/node@25.6.0) + meros: 1.3.2(@types/node@25.9.0) + tslib: 2.8.1 + transitivePeerDependencies: + - '@types/node' + + '@graphql-tools/executor-http@3.2.1(@types/node@25.9.0)(graphql@16.14.0)': + dependencies: + '@graphql-hive/signal': 2.0.0 + '@graphql-tools/executor-common': 1.0.6(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + '@repeaterjs/repeater': 3.0.6 + '@whatwg-node/disposablestack': 0.0.6 + '@whatwg-node/fetch': 0.10.13 + '@whatwg-node/promise-helpers': 1.3.2 + graphql: 16.14.0 + meros: 1.3.2(@types/node@25.9.0) tslib: 2.8.1 transitivePeerDependencies: - '@types/node' @@ -15368,6 +15904,18 @@ snapshots: - bufferutil - utf-8-validate + '@graphql-tools/executor-legacy-ws@1.1.28(graphql@16.14.0)': + dependencies: + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + '@types/ws': 8.18.1 + graphql: 16.14.0 + isomorphic-ws: 5.0.0(ws@8.17.1) + tslib: 2.8.1 + ws: 8.17.1 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + '@graphql-tools/executor@0.0.20(graphql@16.13.2)': dependencies: '@graphql-tools/utils': 9.2.1(graphql@16.13.2) @@ -15387,6 +15935,16 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-tools/executor@1.5.3(graphql@16.14.0)': + dependencies: + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + '@graphql-typed-document-node/core': 3.2.0(graphql@16.14.0) + '@repeaterjs/repeater': 3.0.6 + '@whatwg-node/disposablestack': 0.0.6 + '@whatwg-node/promise-helpers': 1.3.2 + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-tools/git-loader@8.0.36(graphql@16.13.2)': dependencies: '@graphql-tools/graphql-tag-pluck': 8.3.31(graphql@16.13.2) @@ -15399,6 +15957,18 @@ snapshots: transitivePeerDependencies: - supports-color + '@graphql-tools/git-loader@8.0.36(graphql@16.14.0)': + dependencies: + '@graphql-tools/graphql-tag-pluck': 8.3.31(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + graphql: 16.14.0 + is-glob: 4.0.3 + micromatch: 4.0.8 + tslib: 2.8.1 + unixify: 1.0.0 + transitivePeerDependencies: + - supports-color + '@graphql-tools/github-loader@9.1.2(@types/node@24.10.1)(graphql@16.13.2)': dependencies: '@graphql-tools/executor-http': 3.2.1(@types/node@24.10.1)(graphql@16.13.2) @@ -15413,9 +15983,9 @@ snapshots: - '@types/node' - supports-color - '@graphql-tools/github-loader@9.1.2(@types/node@25.6.0)(graphql@16.13.2)': + '@graphql-tools/github-loader@9.1.2(@types/node@25.9.0)(graphql@16.13.2)': dependencies: - '@graphql-tools/executor-http': 3.2.1(@types/node@25.6.0)(graphql@16.13.2) + '@graphql-tools/executor-http': 3.2.1(@types/node@25.9.0)(graphql@16.13.2) '@graphql-tools/graphql-tag-pluck': 8.3.31(graphql@16.13.2) '@graphql-tools/utils': 11.1.0(graphql@16.13.2) '@whatwg-node/fetch': 0.10.13 @@ -15427,6 +15997,20 @@ snapshots: - '@types/node' - supports-color + '@graphql-tools/github-loader@9.1.2(@types/node@25.9.0)(graphql@16.14.0)': + dependencies: + '@graphql-tools/executor-http': 3.2.1(@types/node@25.9.0)(graphql@16.14.0) + '@graphql-tools/graphql-tag-pluck': 8.3.31(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + '@whatwg-node/fetch': 0.10.13 + '@whatwg-node/promise-helpers': 1.3.2 + graphql: 16.14.0 + sync-fetch: 0.6.0 + tslib: 2.8.1 + transitivePeerDependencies: + - '@types/node' + - supports-color + '@graphql-tools/graphql-file-loader@7.5.17(graphql@16.13.2)': dependencies: '@graphql-tools/import': 6.7.18(graphql@16.13.2) @@ -15445,10 +16029,19 @@ snapshots: tslib: 2.8.1 unixify: 1.0.0 + '@graphql-tools/graphql-file-loader@8.1.14(graphql@16.14.0)': + dependencies: + '@graphql-tools/import': 7.1.14(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + globby: 11.1.0 + graphql: 16.14.0 + tslib: 2.8.1 + unixify: 1.0.0 + '@graphql-tools/graphql-tag-pluck@8.3.31(graphql@16.13.2)': dependencies: '@babel/core': 7.29.0 - '@babel/parser': 7.29.2 + '@babel/parser': 7.29.3 '@babel/plugin-syntax-import-assertions': 7.28.6(@babel/core@7.29.0) '@babel/traverse': 7.29.0 '@babel/types': 7.29.0 @@ -15458,6 +16051,19 @@ snapshots: transitivePeerDependencies: - supports-color + '@graphql-tools/graphql-tag-pluck@8.3.31(graphql@16.14.0)': + dependencies: + '@babel/core': 7.29.0 + '@babel/parser': 7.29.3 + '@babel/plugin-syntax-import-assertions': 7.28.6(@babel/core@7.29.0) + '@babel/traverse': 7.29.0 + '@babel/types': 7.29.0 + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + graphql: 16.14.0 + tslib: 2.8.1 + transitivePeerDependencies: + - supports-color + '@graphql-tools/import@6.7.18(graphql@16.13.2)': dependencies: '@graphql-tools/utils': 9.2.1(graphql@16.13.2) @@ -15472,6 +16078,13 @@ snapshots: resolve-from: 5.0.0 tslib: 2.8.1 + '@graphql-tools/import@7.1.14(graphql@16.14.0)': + dependencies: + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + graphql: 16.14.0 + resolve-from: 5.0.0 + tslib: 2.8.1 + '@graphql-tools/json-file-loader@7.4.18(graphql@16.13.2)': dependencies: '@graphql-tools/utils': 9.2.1(graphql@16.13.2) @@ -15488,6 +16101,14 @@ snapshots: tslib: 2.8.1 unixify: 1.0.0 + '@graphql-tools/json-file-loader@8.0.28(graphql@16.14.0)': + dependencies: + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + globby: 11.1.0 + graphql: 16.14.0 + tslib: 2.8.1 + unixify: 1.0.0 + '@graphql-tools/load@7.8.14(graphql@16.13.2)': dependencies: '@graphql-tools/schema': 9.0.19(graphql@16.13.2) @@ -15504,33 +16125,40 @@ snapshots: p-limit: 3.1.0 tslib: 2.8.1 + '@graphql-tools/load@8.1.10(graphql@16.14.0)': + dependencies: + '@graphql-tools/schema': 10.0.33(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + graphql: 16.14.0 + p-limit: 3.1.0 + tslib: 2.8.1 + '@graphql-tools/merge@8.4.2(graphql@16.13.2)': dependencies: '@graphql-tools/utils': 9.2.1(graphql@16.13.2) graphql: 16.13.2 tslib: 2.8.1 - '@graphql-tools/merge@9.1.7(graphql@16.13.2)': + '@graphql-tools/merge@9.1.9(graphql@16.13.2)': dependencies: - '@graphql-tools/utils': 11.0.0(graphql@16.13.2) + '@graphql-tools/utils': 11.1.0(graphql@16.13.2) graphql: 16.13.2 tslib: 2.8.1 - '@graphql-tools/merge@9.1.8(graphql@16.13.2)': + '@graphql-tools/merge@9.1.9(graphql@16.14.0)': dependencies: - '@graphql-tools/utils': 11.0.1(graphql@16.13.2) - graphql: 16.13.2 + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + graphql: 16.14.0 tslib: 2.8.1 - '@graphql-tools/merge@9.1.9(graphql@16.13.2)': + '@graphql-tools/optimize@1.4.0(graphql@16.13.2)': dependencies: - '@graphql-tools/utils': 11.1.0(graphql@16.13.2) graphql: 16.13.2 tslib: 2.8.1 - '@graphql-tools/optimize@1.4.0(graphql@16.13.2)': + '@graphql-tools/optimize@1.4.0(graphql@16.14.0)': dependencies: - graphql: 16.13.2 + graphql: 16.14.0 tslib: 2.8.1 '@graphql-tools/optimize@2.0.0(graphql@16.13.2)': @@ -15538,6 +16166,11 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-tools/optimize@2.0.0(graphql@16.14.0)': + dependencies: + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-tools/relay-operation-optimizer@6.5.18(graphql@16.13.2)': dependencies: '@ardatan/relay-compiler': 12.0.0(graphql@16.13.2) @@ -15548,25 +16181,28 @@ snapshots: - encoding - supports-color - '@graphql-tools/relay-operation-optimizer@7.1.4(graphql@16.13.2)': + '@graphql-tools/relay-operation-optimizer@6.5.18(graphql@16.14.0)': dependencies: - '@ardatan/relay-compiler': 13.0.1(graphql@16.13.2) - '@graphql-tools/utils': 11.1.0(graphql@16.13.2) - graphql: 16.13.2 + '@ardatan/relay-compiler': 12.0.0(graphql@16.14.0) + '@graphql-tools/utils': 9.2.1(graphql@16.14.0) + graphql: 16.14.0 tslib: 2.8.1 + transitivePeerDependencies: + - encoding + - supports-color - '@graphql-tools/schema@10.0.31(graphql@16.13.2)': + '@graphql-tools/relay-operation-optimizer@7.1.4(graphql@16.13.2)': dependencies: - '@graphql-tools/merge': 9.1.7(graphql@16.13.2) - '@graphql-tools/utils': 11.0.0(graphql@16.13.2) + '@ardatan/relay-compiler': 13.0.1(graphql@16.13.2) + '@graphql-tools/utils': 11.1.0(graphql@16.13.2) graphql: 16.13.2 tslib: 2.8.1 - '@graphql-tools/schema@10.0.32(graphql@16.13.2)': + '@graphql-tools/relay-operation-optimizer@7.1.4(graphql@16.14.0)': dependencies: - '@graphql-tools/merge': 9.1.8(graphql@16.13.2) - '@graphql-tools/utils': 11.0.1(graphql@16.13.2) - graphql: 16.13.2 + '@ardatan/relay-compiler': 13.0.1(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + graphql: 16.14.0 tslib: 2.8.1 '@graphql-tools/schema@10.0.33(graphql@16.13.2)': @@ -15576,6 +16212,13 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-tools/schema@10.0.33(graphql@16.14.0)': + dependencies: + '@graphql-tools/merge': 9.1.9(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-tools/schema@9.0.19(graphql@16.13.2)': dependencies: '@graphql-tools/merge': 8.4.2(graphql@16.13.2) @@ -15628,10 +16271,10 @@ snapshots: - crossws - utf-8-validate - '@graphql-tools/url-loader@9.1.2(@types/node@25.6.0)(graphql@16.13.2)': + '@graphql-tools/url-loader@9.1.2(@types/node@25.9.0)(graphql@16.13.2)': dependencies: '@graphql-tools/executor-graphql-ws': 3.1.5(graphql@16.13.2) - '@graphql-tools/executor-http': 3.2.1(@types/node@25.6.0)(graphql@16.13.2) + '@graphql-tools/executor-http': 3.2.1(@types/node@25.9.0)(graphql@16.13.2) '@graphql-tools/executor-legacy-ws': 1.1.28(graphql@16.13.2) '@graphql-tools/utils': 11.1.0(graphql@16.13.2) '@graphql-tools/wrap': 11.1.14(graphql@16.13.2) @@ -15650,13 +16293,27 @@ snapshots: - crossws - utf-8-validate - '@graphql-tools/utils@11.0.0(graphql@16.13.2)': + '@graphql-tools/url-loader@9.1.2(@types/node@25.9.0)(graphql@16.14.0)': dependencies: - '@graphql-typed-document-node/core': 3.2.0(graphql@16.13.2) + '@graphql-tools/executor-graphql-ws': 3.1.5(graphql@16.14.0) + '@graphql-tools/executor-http': 3.2.1(@types/node@25.9.0)(graphql@16.14.0) + '@graphql-tools/executor-legacy-ws': 1.1.28(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + '@graphql-tools/wrap': 11.1.14(graphql@16.14.0) + '@types/ws': 8.18.1 + '@whatwg-node/fetch': 0.10.13 '@whatwg-node/promise-helpers': 1.3.2 - cross-inspect: 1.0.1 - graphql: 16.13.2 + graphql: 16.14.0 + isomorphic-ws: 5.0.0(ws@8.17.1) + sync-fetch: 0.6.0 tslib: 2.8.1 + ws: 8.17.1 + transitivePeerDependencies: + - '@fastify/websocket' + - '@types/node' + - bufferutil + - crossws + - utf-8-validate '@graphql-tools/utils@11.0.1(graphql@16.13.2)': dependencies: @@ -15666,6 +16323,14 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-tools/utils@11.0.1(graphql@16.14.0)': + dependencies: + '@graphql-typed-document-node/core': 3.2.0(graphql@16.14.0) + '@whatwg-node/promise-helpers': 1.3.2 + cross-inspect: 1.0.1 + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-tools/utils@11.1.0(graphql@16.13.2)': dependencies: '@graphql-typed-document-node/core': 3.2.0(graphql@16.13.2) @@ -15674,12 +16339,26 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-tools/utils@11.1.0(graphql@16.14.0)': + dependencies: + '@graphql-typed-document-node/core': 3.2.0(graphql@16.14.0) + '@whatwg-node/promise-helpers': 1.3.2 + cross-inspect: 1.0.1 + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-tools/utils@9.2.1(graphql@16.13.2)': dependencies: '@graphql-typed-document-node/core': 3.2.0(graphql@16.13.2) graphql: 16.13.2 tslib: 2.8.1 + '@graphql-tools/utils@9.2.1(graphql@16.14.0)': + dependencies: + '@graphql-typed-document-node/core': 3.2.0(graphql@16.14.0) + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-tools/wrap@11.1.14(graphql@16.13.2)': dependencies: '@graphql-tools/delegate': 12.0.14(graphql@16.13.2) @@ -15689,6 +16368,15 @@ snapshots: graphql: 16.13.2 tslib: 2.8.1 + '@graphql-tools/wrap@11.1.14(graphql@16.14.0)': + dependencies: + '@graphql-tools/delegate': 12.0.14(graphql@16.14.0) + '@graphql-tools/schema': 10.0.33(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + '@whatwg-node/promise-helpers': 1.3.2 + graphql: 16.14.0 + tslib: 2.8.1 + '@graphql-tools/wrap@9.4.2(graphql@16.13.2)': dependencies: '@graphql-tools/delegate': 9.0.35(graphql@16.13.2) @@ -15702,12 +16390,16 @@ snapshots: dependencies: graphql: 16.13.2 - '@guolao/vue-monaco-editor@1.6.0(monaco-editor@0.55.1)(vue@3.5.33(typescript@5.9.3))': + '@graphql-typed-document-node/core@3.2.0(graphql@16.14.0)': + dependencies: + graphql: 16.14.0 + + '@guolao/vue-monaco-editor@1.6.0(monaco-editor@0.55.1)(vue@3.5.34(typescript@5.9.3))': dependencies: '@monaco-editor/loader': 1.7.0 monaco-editor: 0.55.1 - vue: 3.5.33(typescript@5.9.3) - vue-demi: 0.14.10(vue@3.5.33(typescript@5.9.3)) + vue: 3.5.34(typescript@5.9.3) + vue-demi: 0.14.10(vue@3.5.34(typescript@5.9.3)) '@hapi/b64@5.0.0': dependencies: @@ -15736,23 +16428,23 @@ snapshots: stringify-object: 3.3.0 yargs: 17.7.2 - '@hoppscotch/ui@0.2.5(eslint@10.2.1(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3))': + '@hoppscotch/ui@0.2.5(eslint@10.4.0(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3))': dependencies: - '@boringer-avatars/vue3': 0.2.1(vue@3.5.33(typescript@5.9.3)) + '@boringer-avatars/vue3': 0.2.1(vue@3.5.34(typescript@5.9.3)) '@fontsource-variable/inter': 5.2.8 '@fontsource-variable/material-symbols-rounded': 5.2.38 '@fontsource-variable/roboto-mono': 5.2.8 '@hoppscotch/vue-sonner': 1.2.3 - '@hoppscotch/vue-toasted': 0.1.0(vue@3.5.33(typescript@5.9.3)) + '@hoppscotch/vue-toasted': 0.1.0(vue@3.5.34(typescript@5.9.3)) '@vitejs/plugin-legacy': 2.3.1(terser@5.46.1)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) - '@vueuse/core': 8.9.4(vue@3.5.33(typescript@5.9.3)) + '@vueuse/core': 8.9.4(vue@3.5.34(typescript@5.9.3)) fp-ts: 2.16.11 lodash-es: 4.18.1 path: 0.12.7 - vite-plugin-eslint: 1.8.1(eslint@10.2.1(jiti@2.6.1))(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) - vue: 3.5.33(typescript@5.9.3) + vite-plugin-eslint: 1.8.1(eslint@10.4.0(jiti@2.6.1))(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + vue: 3.5.34(typescript@5.9.3) vue-promise-modals: 0.1.0(typescript@5.9.3) - vuedraggable-es: 4.1.1(vue@3.5.33(typescript@5.9.3)) + vuedraggable-es: 4.1.1(vue@3.5.34(typescript@5.9.3)) transitivePeerDependencies: - '@vue/composition-api' - eslint @@ -15760,23 +16452,23 @@ snapshots: - typescript - vite - '@hoppscotch/ui@0.2.5(eslint@10.2.1(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3))': + '@hoppscotch/ui@0.2.5(eslint@10.4.0(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3))': dependencies: - '@boringer-avatars/vue3': 0.2.1(vue@3.5.33(typescript@5.9.3)) + '@boringer-avatars/vue3': 0.2.1(vue@3.5.34(typescript@5.9.3)) '@fontsource-variable/inter': 5.2.8 '@fontsource-variable/material-symbols-rounded': 5.2.38 '@fontsource-variable/roboto-mono': 5.2.8 '@hoppscotch/vue-sonner': 1.2.3 - '@hoppscotch/vue-toasted': 0.1.0(vue@3.5.33(typescript@5.9.3)) - '@vitejs/plugin-legacy': 2.3.1(terser@5.46.1)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) - '@vueuse/core': 8.9.4(vue@3.5.33(typescript@5.9.3)) + '@hoppscotch/vue-toasted': 0.1.0(vue@3.5.34(typescript@5.9.3)) + '@vitejs/plugin-legacy': 2.3.1(terser@5.46.1)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + '@vueuse/core': 8.9.4(vue@3.5.34(typescript@5.9.3)) fp-ts: 2.16.11 lodash-es: 4.18.1 path: 0.12.7 - vite-plugin-eslint: 1.8.1(eslint@10.2.1(jiti@2.6.1))(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) - vue: 3.5.33(typescript@5.9.3) + vite-plugin-eslint: 1.8.1(eslint@10.4.0(jiti@2.6.1))(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + vue: 3.5.34(typescript@5.9.3) vue-promise-modals: 0.1.0(typescript@5.9.3) - vuedraggable-es: 4.1.1(vue@3.5.33(typescript@5.9.3)) + vuedraggable-es: 4.1.1(vue@3.5.34(typescript@5.9.3)) transitivePeerDependencies: - '@vue/composition-api' - eslint @@ -15784,23 +16476,23 @@ snapshots: - typescript - vite - '@hoppscotch/ui@0.2.5(eslint@9.39.2(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3))': + '@hoppscotch/ui@0.2.5(eslint@9.39.2(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3))': dependencies: - '@boringer-avatars/vue3': 0.2.1(vue@3.5.33(typescript@5.9.3)) + '@boringer-avatars/vue3': 0.2.1(vue@3.5.34(typescript@5.9.3)) '@fontsource-variable/inter': 5.2.8 '@fontsource-variable/material-symbols-rounded': 5.2.38 '@fontsource-variable/roboto-mono': 5.2.8 '@hoppscotch/vue-sonner': 1.2.3 - '@hoppscotch/vue-toasted': 0.1.0(vue@3.5.33(typescript@5.9.3)) + '@hoppscotch/vue-toasted': 0.1.0(vue@3.5.34(typescript@5.9.3)) '@vitejs/plugin-legacy': 2.3.1(terser@5.46.1)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) - '@vueuse/core': 8.9.4(vue@3.5.33(typescript@5.9.3)) + '@vueuse/core': 8.9.4(vue@3.5.34(typescript@5.9.3)) fp-ts: 2.16.11 lodash-es: 4.18.1 path: 0.12.7 vite-plugin-eslint: 1.8.1(eslint@9.39.2(jiti@2.6.1))(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) vue-promise-modals: 0.1.0(typescript@5.9.3) - vuedraggable-es: 4.1.1(vue@3.5.33(typescript@5.9.3)) + vuedraggable-es: 4.1.1(vue@3.5.34(typescript@5.9.3)) transitivePeerDependencies: - '@vue/composition-api' - eslint @@ -15808,23 +16500,23 @@ snapshots: - typescript - vite - '@hoppscotch/ui@0.2.5(eslint@9.39.2(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3))': + '@hoppscotch/ui@0.2.5(eslint@9.39.2(jiti@2.6.1))(terser@5.46.1)(typescript@5.9.3)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3))': dependencies: - '@boringer-avatars/vue3': 0.2.1(vue@3.5.33(typescript@5.9.3)) + '@boringer-avatars/vue3': 0.2.1(vue@3.5.34(typescript@5.9.3)) '@fontsource-variable/inter': 5.2.8 '@fontsource-variable/material-symbols-rounded': 5.2.38 '@fontsource-variable/roboto-mono': 5.2.8 '@hoppscotch/vue-sonner': 1.2.3 - '@hoppscotch/vue-toasted': 0.1.0(vue@3.5.33(typescript@5.9.3)) - '@vitejs/plugin-legacy': 2.3.1(terser@5.46.1)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) - '@vueuse/core': 8.9.4(vue@3.5.33(typescript@5.9.3)) + '@hoppscotch/vue-toasted': 0.1.0(vue@3.5.34(typescript@5.9.3)) + '@vitejs/plugin-legacy': 2.3.1(terser@5.46.1)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + '@vueuse/core': 8.9.4(vue@3.5.34(typescript@5.9.3)) fp-ts: 2.16.11 lodash-es: 4.18.1 path: 0.12.7 - vite-plugin-eslint: 1.8.1(eslint@9.39.2(jiti@2.6.1))(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) - vue: 3.5.33(typescript@5.9.3) + vite-plugin-eslint: 1.8.1(eslint@9.39.2(jiti@2.6.1))(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + vue: 3.5.34(typescript@5.9.3) vue-promise-modals: 0.1.0(typescript@5.9.3) - vuedraggable-es: 4.1.1(vue@3.5.33(typescript@5.9.3)) + vuedraggable-es: 4.1.1(vue@3.5.34(typescript@5.9.3)) transitivePeerDependencies: - '@vue/composition-api' - eslint @@ -15834,9 +16526,9 @@ snapshots: '@hoppscotch/vue-sonner@1.2.3': {} - '@hoppscotch/vue-toasted@0.1.0(vue@3.5.33(typescript@5.9.3))': + '@hoppscotch/vue-toasted@0.1.0(vue@3.5.34(typescript@5.9.3))': dependencies: - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) '@humanfs/core@0.19.1': {} @@ -15853,6 +16545,10 @@ snapshots: dependencies: '@iconify/types': 2.0.0 + '@iconify-json/lucide@1.2.107': + dependencies: + '@iconify/types': 2.0.0 + '@iconify/types@2.0.0': {} '@iconify/utils@3.1.0': @@ -15891,15 +16587,15 @@ snapshots: optionalDependencies: '@types/node': 24.10.1 - '@inquirer/checkbox@4.3.2(@types/node@25.6.0)': + '@inquirer/checkbox@4.3.2(@types/node@25.9.0)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@25.6.0) + '@inquirer/core': 10.3.2(@types/node@25.9.0) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@25.6.0) + '@inquirer/type': 3.0.10(@types/node@25.9.0) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@inquirer/confirm@5.1.21(@types/node@24.10.1)': dependencies: @@ -15908,12 +16604,12 @@ snapshots: optionalDependencies: '@types/node': 24.10.1 - '@inquirer/confirm@5.1.21(@types/node@25.6.0)': + '@inquirer/confirm@5.1.21(@types/node@25.9.0)': dependencies: - '@inquirer/core': 10.3.2(@types/node@25.6.0) - '@inquirer/type': 3.0.10(@types/node@25.6.0) + '@inquirer/core': 10.3.2(@types/node@25.9.0) + '@inquirer/type': 3.0.10(@types/node@25.9.0) optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@inquirer/core@10.3.2(@types/node@24.10.1)': dependencies: @@ -15928,18 +16624,18 @@ snapshots: optionalDependencies: '@types/node': 24.10.1 - '@inquirer/core@10.3.2(@types/node@25.6.0)': + '@inquirer/core@10.3.2(@types/node@25.9.0)': dependencies: '@inquirer/ansi': 1.0.2 '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@25.6.0) + '@inquirer/type': 3.0.10(@types/node@25.9.0) cli-width: 4.1.0 mute-stream: 2.0.0 signal-exit: 4.1.0 wrap-ansi: 6.2.0 yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@inquirer/editor@4.2.23(@types/node@24.10.1)': dependencies: @@ -15949,13 +16645,13 @@ snapshots: optionalDependencies: '@types/node': 24.10.1 - '@inquirer/editor@4.2.23(@types/node@25.6.0)': + '@inquirer/editor@4.2.23(@types/node@25.9.0)': dependencies: - '@inquirer/core': 10.3.2(@types/node@25.6.0) - '@inquirer/external-editor': 1.0.3(@types/node@25.6.0) - '@inquirer/type': 3.0.10(@types/node@25.6.0) + '@inquirer/core': 10.3.2(@types/node@25.9.0) + '@inquirer/external-editor': 1.0.3(@types/node@25.9.0) + '@inquirer/type': 3.0.10(@types/node@25.9.0) optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@inquirer/expand@4.0.23(@types/node@24.10.1)': dependencies: @@ -15965,13 +16661,13 @@ snapshots: optionalDependencies: '@types/node': 24.10.1 - '@inquirer/expand@4.0.23(@types/node@25.6.0)': + '@inquirer/expand@4.0.23(@types/node@25.9.0)': dependencies: - '@inquirer/core': 10.3.2(@types/node@25.6.0) - '@inquirer/type': 3.0.10(@types/node@25.6.0) + '@inquirer/core': 10.3.2(@types/node@25.9.0) + '@inquirer/type': 3.0.10(@types/node@25.9.0) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@inquirer/external-editor@1.0.3(@types/node@24.10.1)': dependencies: @@ -15980,12 +16676,12 @@ snapshots: optionalDependencies: '@types/node': 24.10.1 - '@inquirer/external-editor@1.0.3(@types/node@25.6.0)': + '@inquirer/external-editor@1.0.3(@types/node@25.9.0)': dependencies: chardet: 2.1.1 iconv-lite: 0.7.2 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@inquirer/figures@1.0.15': {} @@ -15996,12 +16692,12 @@ snapshots: optionalDependencies: '@types/node': 24.10.1 - '@inquirer/input@4.3.1(@types/node@25.6.0)': + '@inquirer/input@4.3.1(@types/node@25.9.0)': dependencies: - '@inquirer/core': 10.3.2(@types/node@25.6.0) - '@inquirer/type': 3.0.10(@types/node@25.6.0) + '@inquirer/core': 10.3.2(@types/node@25.9.0) + '@inquirer/type': 3.0.10(@types/node@25.9.0) optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@inquirer/number@3.0.23(@types/node@24.10.1)': dependencies: @@ -16010,12 +16706,12 @@ snapshots: optionalDependencies: '@types/node': 24.10.1 - '@inquirer/number@3.0.23(@types/node@25.6.0)': + '@inquirer/number@3.0.23(@types/node@25.9.0)': dependencies: - '@inquirer/core': 10.3.2(@types/node@25.6.0) - '@inquirer/type': 3.0.10(@types/node@25.6.0) + '@inquirer/core': 10.3.2(@types/node@25.9.0) + '@inquirer/type': 3.0.10(@types/node@25.9.0) optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@inquirer/password@4.0.23(@types/node@24.10.1)': dependencies: @@ -16025,13 +16721,13 @@ snapshots: optionalDependencies: '@types/node': 24.10.1 - '@inquirer/password@4.0.23(@types/node@25.6.0)': + '@inquirer/password@4.0.23(@types/node@25.9.0)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@25.6.0) - '@inquirer/type': 3.0.10(@types/node@25.6.0) + '@inquirer/core': 10.3.2(@types/node@25.9.0) + '@inquirer/type': 3.0.10(@types/node@25.9.0) optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@inquirer/prompts@7.10.1(@types/node@24.10.1)': dependencies: @@ -16048,35 +16744,35 @@ snapshots: optionalDependencies: '@types/node': 24.10.1 - '@inquirer/prompts@7.10.1(@types/node@25.6.0)': - dependencies: - '@inquirer/checkbox': 4.3.2(@types/node@25.6.0) - '@inquirer/confirm': 5.1.21(@types/node@25.6.0) - '@inquirer/editor': 4.2.23(@types/node@25.6.0) - '@inquirer/expand': 4.0.23(@types/node@25.6.0) - '@inquirer/input': 4.3.1(@types/node@25.6.0) - '@inquirer/number': 3.0.23(@types/node@25.6.0) - '@inquirer/password': 4.0.23(@types/node@25.6.0) - '@inquirer/rawlist': 4.1.11(@types/node@25.6.0) - '@inquirer/search': 3.2.2(@types/node@25.6.0) - '@inquirer/select': 4.4.2(@types/node@25.6.0) + '@inquirer/prompts@7.10.1(@types/node@25.9.0)': + dependencies: + '@inquirer/checkbox': 4.3.2(@types/node@25.9.0) + '@inquirer/confirm': 5.1.21(@types/node@25.9.0) + '@inquirer/editor': 4.2.23(@types/node@25.9.0) + '@inquirer/expand': 4.0.23(@types/node@25.9.0) + '@inquirer/input': 4.3.1(@types/node@25.9.0) + '@inquirer/number': 3.0.23(@types/node@25.9.0) + '@inquirer/password': 4.0.23(@types/node@25.9.0) + '@inquirer/rawlist': 4.1.11(@types/node@25.9.0) + '@inquirer/search': 3.2.2(@types/node@25.9.0) + '@inquirer/select': 4.4.2(@types/node@25.9.0) optionalDependencies: - '@types/node': 25.6.0 - - '@inquirer/prompts@7.3.2(@types/node@25.6.0)': - dependencies: - '@inquirer/checkbox': 4.3.2(@types/node@25.6.0) - '@inquirer/confirm': 5.1.21(@types/node@25.6.0) - '@inquirer/editor': 4.2.23(@types/node@25.6.0) - '@inquirer/expand': 4.0.23(@types/node@25.6.0) - '@inquirer/input': 4.3.1(@types/node@25.6.0) - '@inquirer/number': 3.0.23(@types/node@25.6.0) - '@inquirer/password': 4.0.23(@types/node@25.6.0) - '@inquirer/rawlist': 4.1.11(@types/node@25.6.0) - '@inquirer/search': 3.2.2(@types/node@25.6.0) - '@inquirer/select': 4.4.2(@types/node@25.6.0) + '@types/node': 25.9.0 + + '@inquirer/prompts@7.3.2(@types/node@25.9.0)': + dependencies: + '@inquirer/checkbox': 4.3.2(@types/node@25.9.0) + '@inquirer/confirm': 5.1.21(@types/node@25.9.0) + '@inquirer/editor': 4.2.23(@types/node@25.9.0) + '@inquirer/expand': 4.0.23(@types/node@25.9.0) + '@inquirer/input': 4.3.1(@types/node@25.9.0) + '@inquirer/number': 3.0.23(@types/node@25.9.0) + '@inquirer/password': 4.0.23(@types/node@25.9.0) + '@inquirer/rawlist': 4.1.11(@types/node@25.9.0) + '@inquirer/search': 3.2.2(@types/node@25.9.0) + '@inquirer/select': 4.4.2(@types/node@25.9.0) optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@inquirer/rawlist@4.1.11(@types/node@24.10.1)': dependencies: @@ -16086,13 +16782,13 @@ snapshots: optionalDependencies: '@types/node': 24.10.1 - '@inquirer/rawlist@4.1.11(@types/node@25.6.0)': + '@inquirer/rawlist@4.1.11(@types/node@25.9.0)': dependencies: - '@inquirer/core': 10.3.2(@types/node@25.6.0) - '@inquirer/type': 3.0.10(@types/node@25.6.0) + '@inquirer/core': 10.3.2(@types/node@25.9.0) + '@inquirer/type': 3.0.10(@types/node@25.9.0) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@inquirer/search@3.2.2(@types/node@24.10.1)': dependencies: @@ -16103,14 +16799,14 @@ snapshots: optionalDependencies: '@types/node': 24.10.1 - '@inquirer/search@3.2.2(@types/node@25.6.0)': + '@inquirer/search@3.2.2(@types/node@25.9.0)': dependencies: - '@inquirer/core': 10.3.2(@types/node@25.6.0) + '@inquirer/core': 10.3.2(@types/node@25.9.0) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@25.6.0) + '@inquirer/type': 3.0.10(@types/node@25.9.0) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@inquirer/select@4.4.2(@types/node@24.10.1)': dependencies: @@ -16122,25 +16818,25 @@ snapshots: optionalDependencies: '@types/node': 24.10.1 - '@inquirer/select@4.4.2(@types/node@25.6.0)': + '@inquirer/select@4.4.2(@types/node@25.9.0)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@25.6.0) + '@inquirer/core': 10.3.2(@types/node@25.9.0) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@25.6.0) + '@inquirer/type': 3.0.10(@types/node@25.9.0) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@inquirer/type@3.0.10(@types/node@24.10.1)': optionalDependencies: '@types/node': 24.10.1 - '@inquirer/type@3.0.10(@types/node@25.6.0)': + '@inquirer/type@3.0.10(@types/node@25.9.0)': optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 - '@intlify/bundle-utils@11.1.2(vue-i18n@11.4.0(vue@3.5.33(typescript@5.9.3)))': + '@intlify/bundle-utils@11.1.2(vue-i18n@11.4.0(vue@3.5.34(typescript@5.9.3)))': dependencies: '@intlify/message-compiler': 11.4.0 '@intlify/shared': 11.4.0 @@ -16152,7 +16848,7 @@ snapshots: source-map-js: 1.2.1 yaml-eslint-parser: 1.3.2 optionalDependencies: - vue-i18n: 11.4.0(vue@3.5.33(typescript@5.9.3)) + vue-i18n: 11.4.0(vue@3.5.34(typescript@5.9.3)) '@intlify/core-base@11.4.0': dependencies: @@ -16172,12 +16868,12 @@ snapshots: '@intlify/shared@11.4.0': {} - '@intlify/unplugin-vue-i18n@11.1.2(@vue/compiler-dom@3.5.33)(eslint@10.2.1(jiti@2.6.1))(rollup@4.60.2)(typescript@5.9.3)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-i18n@11.4.0(vue@3.5.33(typescript@5.9.3)))(vue@3.5.33(typescript@5.9.3))': + '@intlify/unplugin-vue-i18n@11.1.2(@vue/compiler-dom@3.5.34)(eslint@10.4.0(jiti@2.6.1))(rollup@4.60.2)(typescript@5.9.3)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-i18n@11.4.0(vue@3.5.34(typescript@5.9.3)))(vue@3.5.34(typescript@5.9.3))': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.2.1(jiti@2.6.1)) - '@intlify/bundle-utils': 11.1.2(vue-i18n@11.4.0(vue@3.5.33(typescript@5.9.3))) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.4.0(jiti@2.6.1)) + '@intlify/bundle-utils': 11.1.2(vue-i18n@11.4.0(vue@3.5.34(typescript@5.9.3))) '@intlify/shared': 11.4.0 - '@intlify/vue-i18n-extensions': 8.0.0(@intlify/shared@11.4.0)(@vue/compiler-dom@3.5.33)(vue-i18n@11.4.0(vue@3.5.33(typescript@5.9.3)))(vue@3.5.33(typescript@5.9.3)) + '@intlify/vue-i18n-extensions': 8.0.0(@intlify/shared@11.4.0)(@vue/compiler-dom@3.5.34)(vue-i18n@11.4.0(vue@3.5.34(typescript@5.9.3)))(vue@3.5.34(typescript@5.9.3)) '@rollup/pluginutils': 5.3.0(rollup@4.60.2) '@typescript-eslint/scope-manager': 8.59.0 '@typescript-eslint/typescript-estree': 8.59.0(typescript@5.9.3) @@ -16186,10 +16882,10 @@ snapshots: pathe: 2.0.3 picocolors: 1.1.1 unplugin: 2.3.11 - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) optionalDependencies: - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - vue-i18n: 11.4.0(vue@3.5.33(typescript@5.9.3)) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vue-i18n: 11.4.0(vue@3.5.34(typescript@5.9.3)) transitivePeerDependencies: - '@vue/compiler-dom' - eslint @@ -16197,12 +16893,12 @@ snapshots: - supports-color - typescript - '@intlify/unplugin-vue-i18n@11.1.2(@vue/compiler-dom@3.5.33)(eslint@9.39.2(jiti@2.6.1))(rollup@4.60.2)(typescript@5.9.3)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-i18n@11.4.0(vue@3.5.33(typescript@5.9.3)))(vue@3.5.33(typescript@5.9.3))': + '@intlify/unplugin-vue-i18n@11.1.2(@vue/compiler-dom@3.5.34)(eslint@9.39.2(jiti@2.6.1))(rollup@4.60.2)(typescript@5.9.3)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-i18n@11.4.0(vue@3.5.34(typescript@5.9.3)))(vue@3.5.34(typescript@5.9.3))': dependencies: '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1)) - '@intlify/bundle-utils': 11.1.2(vue-i18n@11.4.0(vue@3.5.33(typescript@5.9.3))) + '@intlify/bundle-utils': 11.1.2(vue-i18n@11.4.0(vue@3.5.34(typescript@5.9.3))) '@intlify/shared': 11.4.0 - '@intlify/vue-i18n-extensions': 8.0.0(@intlify/shared@11.4.0)(@vue/compiler-dom@3.5.33)(vue-i18n@11.4.0(vue@3.5.33(typescript@5.9.3)))(vue@3.5.33(typescript@5.9.3)) + '@intlify/vue-i18n-extensions': 8.0.0(@intlify/shared@11.4.0)(@vue/compiler-dom@3.5.34)(vue-i18n@11.4.0(vue@3.5.34(typescript@5.9.3)))(vue@3.5.34(typescript@5.9.3)) '@rollup/pluginutils': 5.3.0(rollup@4.60.2) '@typescript-eslint/scope-manager': 8.59.0 '@typescript-eslint/typescript-estree': 8.59.0(typescript@5.9.3) @@ -16211,10 +16907,10 @@ snapshots: pathe: 2.0.3 picocolors: 1.1.1 unplugin: 2.3.11 - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) optionalDependencies: vite: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - vue-i18n: 11.4.0(vue@3.5.33(typescript@5.9.3)) + vue-i18n: 11.4.0(vue@3.5.34(typescript@5.9.3)) transitivePeerDependencies: - '@vue/compiler-dom' - eslint @@ -16222,12 +16918,12 @@ snapshots: - supports-color - typescript - '@intlify/unplugin-vue-i18n@11.1.2(@vue/compiler-dom@3.5.33)(eslint@9.39.2(jiti@2.6.1))(rollup@4.60.2)(typescript@5.9.3)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-i18n@11.4.0(vue@3.5.33(typescript@5.9.3)))(vue@3.5.33(typescript@5.9.3))': + '@intlify/unplugin-vue-i18n@11.1.2(@vue/compiler-dom@3.5.34)(eslint@9.39.2(jiti@2.6.1))(rollup@4.60.2)(typescript@5.9.3)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-i18n@11.4.0(vue@3.5.34(typescript@5.9.3)))(vue@3.5.34(typescript@5.9.3))': dependencies: '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1)) - '@intlify/bundle-utils': 11.1.2(vue-i18n@11.4.0(vue@3.5.33(typescript@5.9.3))) + '@intlify/bundle-utils': 11.1.2(vue-i18n@11.4.0(vue@3.5.34(typescript@5.9.3))) '@intlify/shared': 11.4.0 - '@intlify/vue-i18n-extensions': 8.0.0(@intlify/shared@11.4.0)(@vue/compiler-dom@3.5.33)(vue-i18n@11.4.0(vue@3.5.33(typescript@5.9.3)))(vue@3.5.33(typescript@5.9.3)) + '@intlify/vue-i18n-extensions': 8.0.0(@intlify/shared@11.4.0)(@vue/compiler-dom@3.5.34)(vue-i18n@11.4.0(vue@3.5.34(typescript@5.9.3)))(vue@3.5.34(typescript@5.9.3)) '@rollup/pluginutils': 5.3.0(rollup@4.60.2) '@typescript-eslint/scope-manager': 8.59.0 '@typescript-eslint/typescript-estree': 8.59.0(typescript@5.9.3) @@ -16236,10 +16932,10 @@ snapshots: pathe: 2.0.3 picocolors: 1.1.1 unplugin: 2.3.11 - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) optionalDependencies: - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - vue-i18n: 11.4.0(vue@3.5.33(typescript@5.9.3)) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vue-i18n: 11.4.0(vue@3.5.34(typescript@5.9.3)) transitivePeerDependencies: - '@vue/compiler-dom' - eslint @@ -16247,14 +16943,14 @@ snapshots: - supports-color - typescript - '@intlify/vue-i18n-extensions@8.0.0(@intlify/shared@11.4.0)(@vue/compiler-dom@3.5.33)(vue-i18n@11.4.0(vue@3.5.33(typescript@5.9.3)))(vue@3.5.33(typescript@5.9.3))': + '@intlify/vue-i18n-extensions@8.0.0(@intlify/shared@11.4.0)(@vue/compiler-dom@3.5.34)(vue-i18n@11.4.0(vue@3.5.34(typescript@5.9.3)))(vue@3.5.34(typescript@5.9.3))': dependencies: '@babel/parser': 7.29.2 optionalDependencies: '@intlify/shared': 11.4.0 - '@vue/compiler-dom': 3.5.33 - vue: 3.5.33(typescript@5.9.3) - vue-i18n: 11.4.0(vue@3.5.33(typescript@5.9.3)) + '@vue/compiler-dom': 3.5.34 + vue: 3.5.34(typescript@5.9.3) + vue-i18n: 11.4.0(vue@3.5.34(typescript@5.9.3)) '@ioredis/commands@1.5.1': optional: true @@ -16280,43 +16976,44 @@ snapshots: '@istanbuljs/schema@0.1.3': {} - '@jest/console@30.3.0': + '@jest/console@30.4.1': dependencies: - '@jest/types': 30.3.0 - '@types/node': 25.6.0 + '@jest/types': 30.4.1 + '@types/node': 25.9.0 chalk: 4.1.2 - jest-message-util: 30.3.0 - jest-util: 30.3.0 + jest-message-util: 30.4.1 + jest-util: 30.4.1 slash: 3.0.0 - '@jest/core@30.3.0(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3))': + '@jest/core@30.4.2(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3))': dependencies: - '@jest/console': 30.3.0 - '@jest/pattern': 30.0.1 - '@jest/reporters': 30.3.0 - '@jest/test-result': 30.3.0 - '@jest/transform': 30.3.0 - '@jest/types': 30.3.0 - '@types/node': 25.6.0 + '@jest/console': 30.4.1 + '@jest/pattern': 30.4.0 + '@jest/reporters': 30.4.1 + '@jest/test-result': 30.4.1 + '@jest/transform': 30.4.1 + '@jest/types': 30.4.1 + '@types/node': 25.9.0 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 4.4.0 exit-x: 0.2.2 + fast-json-stable-stringify: 2.1.0 graceful-fs: 4.2.11 - jest-changed-files: 30.3.0 - jest-config: 30.3.0(@types/node@25.6.0)(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)) - jest-haste-map: 30.3.0 - jest-message-util: 30.3.0 - jest-regex-util: 30.0.1 - jest-resolve: 30.3.0 - jest-resolve-dependencies: 30.3.0 - jest-runner: 30.3.0 - jest-runtime: 30.3.0 - jest-snapshot: 30.3.0 - jest-util: 30.3.0 - jest-validate: 30.3.0 - jest-watcher: 30.3.0 - pretty-format: 30.3.0 + jest-changed-files: 30.4.1 + jest-config: 30.4.2(@types/node@25.9.0)(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)) + jest-haste-map: 30.4.1 + jest-message-util: 30.4.1 + jest-regex-util: 30.4.0 + jest-resolve: 30.4.1 + jest-resolve-dependencies: 30.4.2 + jest-runner: 30.4.2 + jest-runtime: 30.4.2 + jest-snapshot: 30.4.1 + jest-util: 30.4.1 + jest-validate: 30.4.1 + jest-watcher: 30.4.1 + pretty-format: 30.4.1 slash: 3.0.0 transitivePeerDependencies: - babel-plugin-macros @@ -16326,12 +17023,14 @@ snapshots: '@jest/diff-sequences@30.3.0': {} - '@jest/environment@30.3.0': + '@jest/diff-sequences@30.4.0': {} + + '@jest/environment@30.4.1': dependencies: - '@jest/fake-timers': 30.3.0 - '@jest/types': 30.3.0 - '@types/node': 25.6.0 - jest-mock: 30.3.0 + '@jest/fake-timers': 30.4.1 + '@jest/types': 30.4.1 + '@types/node': 25.9.0 + jest-mock: 30.4.1 '@jest/expect-utils@29.7.0': dependencies: @@ -16341,47 +17040,56 @@ snapshots: dependencies: '@jest/get-type': 30.1.0 - '@jest/expect@30.3.0': + '@jest/expect-utils@30.4.1': dependencies: - expect: 30.3.0 - jest-snapshot: 30.3.0 + '@jest/get-type': 30.1.0 + + '@jest/expect@30.4.1': + dependencies: + expect: 30.4.1 + jest-snapshot: 30.4.1 transitivePeerDependencies: - supports-color - '@jest/fake-timers@30.3.0': + '@jest/fake-timers@30.4.1': dependencies: - '@jest/types': 30.3.0 - '@sinonjs/fake-timers': 15.1.1 - '@types/node': 25.6.0 - jest-message-util: 30.3.0 - jest-mock: 30.3.0 - jest-util: 30.3.0 + '@jest/types': 30.4.1 + '@sinonjs/fake-timers': 15.4.0 + '@types/node': 25.9.0 + jest-message-util: 30.4.1 + jest-mock: 30.4.1 + jest-util: 30.4.1 '@jest/get-type@30.1.0': {} - '@jest/globals@30.3.0': + '@jest/globals@30.4.1': dependencies: - '@jest/environment': 30.3.0 - '@jest/expect': 30.3.0 - '@jest/types': 30.3.0 - jest-mock: 30.3.0 + '@jest/environment': 30.4.1 + '@jest/expect': 30.4.1 + '@jest/types': 30.4.1 + jest-mock: 30.4.1 transitivePeerDependencies: - supports-color '@jest/pattern@30.0.1': dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 jest-regex-util: 30.0.1 - '@jest/reporters@30.3.0': + '@jest/pattern@30.4.0': + dependencies: + '@types/node': 25.9.0 + jest-regex-util: 30.4.0 + + '@jest/reporters@30.4.1': dependencies: '@bcoe/v8-coverage': 0.2.3 - '@jest/console': 30.3.0 - '@jest/test-result': 30.3.0 - '@jest/transform': 30.3.0 - '@jest/types': 30.3.0 + '@jest/console': 30.4.1 + '@jest/test-result': 30.4.1 + '@jest/transform': 30.4.1 + '@jest/types': 30.4.1 '@jridgewell/trace-mapping': 0.3.31 - '@types/node': 25.6.0 + '@types/node': 25.9.0 chalk: 4.1.2 collect-v8-coverage: 1.0.3 exit-x: 0.2.2 @@ -16392,9 +17100,9 @@ snapshots: istanbul-lib-report: 3.0.1 istanbul-lib-source-maps: 5.0.6 istanbul-reports: 3.2.0 - jest-message-util: 30.3.0 - jest-util: 30.3.0 - jest-worker: 30.3.0 + jest-message-util: 30.4.1 + jest-util: 30.4.1 + jest-worker: 30.4.1 slash: 3.0.0 string-length: 4.0.2 v8-to-istanbul: 9.3.0 @@ -16409,9 +17117,13 @@ snapshots: dependencies: '@sinclair/typebox': 0.34.48 - '@jest/snapshot-utils@30.3.0': + '@jest/schemas@30.4.1': dependencies: - '@jest/types': 30.3.0 + '@sinclair/typebox': 0.34.48 + + '@jest/snapshot-utils@30.4.1': + dependencies: + '@jest/types': 30.4.1 chalk: 4.1.2 graceful-fs: 4.2.11 natural-compare: 1.4.0 @@ -16422,33 +17134,33 @@ snapshots: callsites: 3.1.0 graceful-fs: 4.2.11 - '@jest/test-result@30.3.0': + '@jest/test-result@30.4.1': dependencies: - '@jest/console': 30.3.0 - '@jest/types': 30.3.0 + '@jest/console': 30.4.1 + '@jest/types': 30.4.1 '@types/istanbul-lib-coverage': 2.0.6 collect-v8-coverage: 1.0.3 - '@jest/test-sequencer@30.3.0': + '@jest/test-sequencer@30.4.1': dependencies: - '@jest/test-result': 30.3.0 + '@jest/test-result': 30.4.1 graceful-fs: 4.2.11 - jest-haste-map: 30.3.0 + jest-haste-map: 30.4.1 slash: 3.0.0 - '@jest/transform@30.3.0': + '@jest/transform@30.4.1': dependencies: '@babel/core': 7.29.0 - '@jest/types': 30.3.0 + '@jest/types': 30.4.1 '@jridgewell/trace-mapping': 0.3.31 babel-plugin-istanbul: 7.0.1 chalk: 4.1.2 convert-source-map: 2.0.0 fast-json-stable-stringify: 2.1.0 graceful-fs: 4.2.11 - jest-haste-map: 30.3.0 - jest-regex-util: 30.0.1 - jest-util: 30.3.0 + jest-haste-map: 30.4.1 + jest-regex-util: 30.4.0 + jest-util: 30.4.1 pirates: 4.0.7 slash: 3.0.0 write-file-atomic: 5.0.1 @@ -16460,7 +17172,7 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/yargs': 17.0.35 chalk: 4.1.2 @@ -16470,7 +17182,17 @@ snapshots: '@jest/schemas': 30.0.5 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 25.6.0 + '@types/node': 25.9.0 + '@types/yargs': 17.0.35 + chalk: 4.1.2 + + '@jest/types@30.4.1': + dependencies: + '@jest/pattern': 30.4.0 + '@jest/schemas': 30.4.1 + '@types/istanbul-lib-coverage': 2.0.6 + '@types/istanbul-reports': 3.0.4 + '@types/node': 25.9.0 '@types/yargs': 17.0.35 chalk: 4.1.2 @@ -16627,16 +17349,16 @@ snapshots: '@tybys/wasm-util': 0.10.1 optional: true - '@nestjs-modules/mailer@2.3.4(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(@nestjs/terminus@11.1.1(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(@prisma/client@7.8.0(prisma@7.8.0(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(reflect-metadata@0.2.2)(rxjs@7.8.2))(chokidar@4.0.3)(nodemailer@8.0.7)(terser@5.46.1)(typescript@5.9.3)': + '@nestjs-modules/mailer@2.3.5(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(@nestjs/terminus@11.1.1(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(@prisma/client@7.8.0(prisma@7.8.0(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(reflect-metadata@0.2.2)(rxjs@7.8.2))(chokidar@4.0.3)(nodemailer@8.0.7)(terser@5.46.1)(typescript@5.9.3)': dependencies: '@css-inline/css-inline': 0.20.0 - '@nestjs/common': 11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) - '@nestjs/core': 11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.19)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/common': 11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/core': 11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.21)(reflect-metadata@0.2.2)(rxjs@7.8.2) glob: 13.0.6 nodemailer: 8.0.7 tslib: 2.8.1 optionalDependencies: - '@nestjs/terminus': 11.1.1(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(@prisma/client@7.8.0(prisma@7.8.0(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/terminus': 11.1.1(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(@prisma/client@7.8.0(prisma@7.8.0(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(reflect-metadata@0.2.2)(rxjs@7.8.2) '@types/ejs': 3.1.5 '@types/mjml': 4.7.4 '@types/pug': 2.0.10 @@ -16658,26 +17380,26 @@ snapshots: - typescript - uncss - '@nestjs/apollo@13.3.0(@apollo/server@5.5.0(graphql@16.13.2))(@as-integrations/express5@1.1.2(@apollo/server@5.5.0(graphql@16.13.2))(express@5.2.1))(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(@nestjs/graphql@13.3.0(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(class-transformer@0.5.1)(class-validator@0.15.1)(graphql@16.13.2)(reflect-metadata@0.2.2))(graphql@16.13.2)': + '@nestjs/apollo@13.4.0(@apollo/server@5.5.1(graphql@16.14.0))(@as-integrations/express5@1.1.2(@apollo/server@5.5.1(graphql@16.14.0))(express@5.2.1))(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(@nestjs/graphql@13.4.0(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(class-transformer@0.5.1)(class-validator@0.15.1)(graphql@16.14.0)(reflect-metadata@0.2.2))(graphql@16.14.0)': dependencies: - '@apollo/server': 5.5.0(graphql@16.13.2) - '@apollo/server-plugin-landing-page-graphql-playground': 4.0.1(@apollo/server@5.5.0(graphql@16.13.2)) - '@nestjs/common': 11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) - '@nestjs/core': 11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.19)(reflect-metadata@0.2.2)(rxjs@7.8.2) - '@nestjs/graphql': 13.3.0(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(class-transformer@0.5.1)(class-validator@0.15.1)(graphql@16.13.2)(reflect-metadata@0.2.2) - graphql: 16.13.2 + '@apollo/server': 5.5.1(graphql@16.14.0) + '@apollo/server-plugin-landing-page-graphql-playground': 4.0.1(@apollo/server@5.5.1(graphql@16.14.0)) + '@nestjs/common': 11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/core': 11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.21)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/graphql': 13.4.0(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(class-transformer@0.5.1)(class-validator@0.15.1)(graphql@16.14.0)(reflect-metadata@0.2.2) + graphql: 16.14.0 iterall: 1.3.0 lodash.omit: 4.18.0 tslib: 2.8.1 optionalDependencies: - '@as-integrations/express5': 1.1.2(@apollo/server@5.5.0(graphql@16.13.2))(express@5.2.1) + '@as-integrations/express5': 1.1.2(@apollo/server@5.5.1(graphql@16.14.0))(express@5.2.1) - '@nestjs/cli@11.0.21(@types/node@25.6.0)(prettier@3.8.3)': + '@nestjs/cli@11.0.21(@types/node@25.9.0)(prettier@3.8.3)': dependencies: '@angular-devkit/core': 19.2.24(chokidar@4.0.3) '@angular-devkit/schematics': 19.2.24(chokidar@4.0.3) - '@angular-devkit/schematics-cli': 19.2.24(@types/node@25.6.0)(chokidar@4.0.3) - '@inquirer/prompts': 7.10.1(@types/node@25.6.0) + '@angular-devkit/schematics-cli': 19.2.24(@types/node@25.9.0)(chokidar@4.0.3) + '@inquirer/prompts': 7.10.1(@types/node@25.9.0) '@nestjs/schematics': 11.1.0(chokidar@4.0.3)(prettier@3.8.3)(typescript@5.9.3) ansis: 4.2.0 chokidar: 4.0.3 @@ -16699,7 +17421,7 @@ snapshots: - uglify-js - webpack-cli - '@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2)': + '@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2)': dependencies: file-type: 21.3.4 iterare: 1.2.1 @@ -16714,17 +17436,17 @@ snapshots: transitivePeerDependencies: - supports-color - '@nestjs/config@4.0.4(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(rxjs@7.8.2)': + '@nestjs/config@4.0.4(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(rxjs@7.8.2)': dependencies: - '@nestjs/common': 11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/common': 11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) dotenv: 17.4.1 dotenv-expand: 12.0.3 lodash: 4.18.1 rxjs: 7.8.2 - '@nestjs/core@11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.19)(reflect-metadata@0.2.2)(rxjs@7.8.2)': + '@nestjs/core@11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.21)(reflect-metadata@0.2.2)(rxjs@7.8.2)': dependencies: - '@nestjs/common': 11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/common': 11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) '@nuxt/opencollective': 0.4.1 fast-safe-stringify: 2.1.1 iterare: 1.2.1 @@ -16734,25 +17456,25 @@ snapshots: tslib: 2.8.1 uid: 2.0.2 optionalDependencies: - '@nestjs/platform-express': 11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19) + '@nestjs/platform-express': 11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21) - '@nestjs/graphql@13.3.0(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(class-transformer@0.5.1)(class-validator@0.15.1)(graphql@16.13.2)(reflect-metadata@0.2.2)': + '@nestjs/graphql@13.4.0(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(class-transformer@0.5.1)(class-validator@0.15.1)(graphql@16.14.0)(reflect-metadata@0.2.2)': dependencies: - '@graphql-tools/merge': 9.1.8(graphql@16.13.2) - '@graphql-tools/schema': 10.0.32(graphql@16.13.2) - '@graphql-tools/utils': 11.0.1(graphql@16.13.2) - '@nestjs/common': 11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) - '@nestjs/core': 11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.19)(reflect-metadata@0.2.2)(rxjs@7.8.2) - '@nestjs/mapped-types': 2.1.1(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2) + '@graphql-tools/merge': 9.1.9(graphql@16.14.0) + '@graphql-tools/schema': 10.0.33(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + '@nestjs/common': 11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/core': 11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.21)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/mapped-types': 2.1.1(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2) chokidar: 4.0.3 fast-glob: 3.3.3 - graphql: 16.13.2 - graphql-tag: 2.12.6(graphql@16.13.2) - graphql-ws: 6.0.8(graphql@16.13.2)(ws@8.17.1) + graphql: 16.14.0 + graphql-tag: 2.12.6(graphql@16.14.0) + graphql-ws: 6.0.8(graphql@16.14.0)(ws@8.17.1) lodash: 4.18.1 normalize-path: 3.0.0 reflect-metadata: 0.2.2 - subscriptions-transport-ws: 0.11.0(graphql@16.13.2) + subscriptions-transport-ws: 0.11.0(graphql@16.14.0) tslib: 2.8.1 ws: 8.17.1 optionalDependencies: @@ -16764,29 +17486,29 @@ snapshots: - crossws - utf-8-validate - '@nestjs/jwt@11.0.2(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))': + '@nestjs/jwt@11.0.2(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))': dependencies: - '@nestjs/common': 11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/common': 11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) '@types/jsonwebtoken': 9.0.10 jsonwebtoken: 9.0.3 - '@nestjs/mapped-types@2.1.1(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)': + '@nestjs/mapped-types@2.1.1(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)': dependencies: - '@nestjs/common': 11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/common': 11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) reflect-metadata: 0.2.2 optionalDependencies: class-transformer: 0.5.1 class-validator: 0.15.1 - '@nestjs/passport@11.0.0(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(passport@0.7.0)': + '@nestjs/passport@11.0.0(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(passport@0.7.0)': dependencies: - '@nestjs/common': 11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/common': 11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) passport: 0.7.0 - '@nestjs/platform-express@11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)': + '@nestjs/platform-express@11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)': dependencies: - '@nestjs/common': 11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) - '@nestjs/core': 11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.19)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/common': 11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/core': 11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.21)(reflect-metadata@0.2.2)(rxjs@7.8.2) cors: 2.8.6 express: 5.2.1 multer: 2.1.1 @@ -16795,10 +17517,10 @@ snapshots: transitivePeerDependencies: - supports-color - '@nestjs/schedule@6.1.3(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)': + '@nestjs/schedule@6.1.3(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)': dependencies: - '@nestjs/common': 11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) - '@nestjs/core': 11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.19)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/common': 11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/core': 11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.21)(reflect-metadata@0.2.2)(rxjs@7.8.2) cron: 4.4.0 '@nestjs/schematics@11.1.0(chokidar@4.0.3)(prettier@3.8.3)(typescript@5.9.3)': @@ -16814,25 +17536,25 @@ snapshots: transitivePeerDependencies: - chokidar - '@nestjs/swagger@11.4.2(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)': + '@nestjs/swagger@11.4.3(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)': dependencies: '@microsoft/tsdoc': 0.16.0 - '@nestjs/common': 11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) - '@nestjs/core': 11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.19)(reflect-metadata@0.2.2)(rxjs@7.8.2) - '@nestjs/mapped-types': 2.1.1(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2) + '@nestjs/common': 11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/core': 11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.21)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/mapped-types': 2.1.1(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2) js-yaml: 4.1.1 lodash: 4.18.1 path-to-regexp: 8.4.2 reflect-metadata: 0.2.2 - swagger-ui-dist: 5.32.4 + swagger-ui-dist: 5.32.6 optionalDependencies: class-transformer: 0.5.1 class-validator: 0.15.1 - '@nestjs/terminus@11.1.1(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(@prisma/client@7.8.0(prisma@7.8.0(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(reflect-metadata@0.2.2)(rxjs@7.8.2)': + '@nestjs/terminus@11.1.1(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(@prisma/client@7.8.0(prisma@7.8.0(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3))(reflect-metadata@0.2.2)(rxjs@7.8.2)': dependencies: - '@nestjs/common': 11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) - '@nestjs/core': 11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.19)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/common': 11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/core': 11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.21)(reflect-metadata@0.2.2)(rxjs@7.8.2) boxen: 5.1.2 check-disk-space: 3.4.0 reflect-metadata: 0.2.2 @@ -16840,18 +17562,18 @@ snapshots: optionalDependencies: '@prisma/client': 7.8.0(prisma@7.8.0(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3))(typescript@5.9.3) - '@nestjs/testing@11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(@nestjs/platform-express@11.1.19)': + '@nestjs/testing@11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(@nestjs/platform-express@11.1.21)': dependencies: - '@nestjs/common': 11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) - '@nestjs/core': 11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.19)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/common': 11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/core': 11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.21)(reflect-metadata@0.2.2)(rxjs@7.8.2) tslib: 2.8.1 optionalDependencies: - '@nestjs/platform-express': 11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19) + '@nestjs/platform-express': 11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21) - '@nestjs/throttler@6.5.0(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.19)(reflect-metadata@0.2.2)': + '@nestjs/throttler@6.5.0(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/core@11.1.21)(reflect-metadata@0.2.2)': dependencies: - '@nestjs/common': 11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) - '@nestjs/core': 11.1.19(@nestjs/common@11.1.19(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.19)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/common': 11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2) + '@nestjs/core': 11.1.21(@nestjs/common@11.1.21(class-transformer@0.5.1)(class-validator@0.15.1)(reflect-metadata@0.2.2)(rxjs@7.8.2))(@nestjs/platform-express@11.1.21)(reflect-metadata@0.2.2)(rxjs@7.8.2) reflect-metadata: 0.2.2 '@noble/curves@2.2.0': @@ -16989,17 +17711,17 @@ snapshots: '@popperjs/core@2.11.8': {} - '@posthog/core@1.27.7': + '@posthog/core@1.29.5': dependencies: - '@posthog/types': 1.372.3 + '@posthog/types': 1.374.2 - '@posthog/types@1.372.3': {} + '@posthog/types@1.374.2': {} '@prisma/adapter-pg@7.8.0': dependencies: '@prisma/driver-adapter-utils': 7.8.0 '@types/pg': 8.20.0 - pg: 8.20.0 + pg: 8.21.0 postgres-array: 3.0.4 transitivePeerDependencies: - pg-native @@ -17473,7 +18195,7 @@ snapshots: dependencies: type-detect: 4.0.8 - '@sinonjs/fake-timers@15.1.1': + '@sinonjs/fake-timers@15.4.0': dependencies: '@sinonjs/commons': 3.0.1 @@ -17488,7 +18210,7 @@ snapshots: magic-string: 0.25.9 string.prototype.matchall: 4.0.12 - '@sveltejs/vite-plugin-svelte@1.4.0(svelte@3.59.2)(vite@3.2.11(@types/node@25.6.0)(sass@1.99.0)(terser@5.46.1))': + '@sveltejs/vite-plugin-svelte@1.4.0(svelte@3.59.2)(vite@3.2.11(@types/node@25.9.0)(sass@1.99.0)(terser@5.46.1))': dependencies: debug: 4.4.3(supports-color@8.1.1) deepmerge: 4.3.1 @@ -17496,8 +18218,8 @@ snapshots: magic-string: 0.26.7 svelte: 3.59.2 svelte-hmr: 0.15.3(svelte@3.59.2) - vite: 3.2.11(@types/node@25.6.0)(sass@1.99.0)(terser@5.46.1) - vitefu: 0.2.5(vite@3.2.11(@types/node@25.6.0)(sass@1.99.0)(terser@5.46.1)) + vite: 3.2.11(@types/node@25.9.0)(sass@1.99.0)(terser@5.46.1) + vitefu: 0.2.5(vite@3.2.11(@types/node@25.9.0)(sass@1.99.0)(terser@5.46.1)) transitivePeerDependencies: - supports-color @@ -17600,7 +18322,7 @@ snapshots: '@types/babel__core@7.20.5': dependencies: - '@babel/parser': 7.29.2 + '@babel/parser': 7.29.3 '@babel/types': 7.29.0 '@types/babel__generator': 7.27.0 '@types/babel__template': 7.4.4 @@ -17612,7 +18334,7 @@ snapshots: '@types/babel__template@7.4.4': dependencies: - '@babel/parser': 7.29.2 + '@babel/parser': 7.29.3 '@babel/types': 7.29.0 '@types/babel__traverse@7.28.0': @@ -17621,12 +18343,12 @@ snapshots: '@types/bcrypt@6.0.0': dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/body-parser@1.19.6': dependencies: '@types/connect': 3.4.38 - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/caseless@0.12.5': {} @@ -17639,7 +18361,7 @@ snapshots: '@types/connect@3.4.38': dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/cookie-parser@1.4.10(@types/express@5.0.6)': dependencies: @@ -17649,7 +18371,7 @@ snapshots: '@types/cors@2.8.19': dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/crypto-js@4.2.2': {} @@ -17685,8 +18407,8 @@ snapshots: '@types/express-serve-static-core@5.1.1': dependencies: - '@types/node': 25.6.0 - '@types/qs': 6.15.0 + '@types/node': 25.9.0 + '@types/qs': 6.15.1 '@types/range-parser': 1.2.7 '@types/send': 1.2.1 @@ -17702,7 +18424,7 @@ snapshots: dependencies: '@hapi/boom': 9.1.4 '@types/crypto-js': 4.2.2 - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/request': 2.48.13 '@types/http-errors@2.0.5': {} @@ -17731,7 +18453,7 @@ snapshots: '@types/jsonwebtoken@9.0.10': dependencies: '@types/ms': 2.1.0 - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/linkify-it@5.0.0': {} @@ -17774,25 +18496,25 @@ snapshots: dependencies: undici-types: 7.16.0 - '@types/node@25.6.0': + '@types/node@25.9.0': dependencies: - undici-types: 7.19.2 + undici-types: 7.24.6 '@types/nodemailer@8.0.0': dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/nprogress@0.2.3': {} '@types/oauth@0.9.6': dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/paho-mqtt@1.0.10': {} '@types/papaparse@5.5.2': dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/passport-github2@1.2.9': dependencies: @@ -17832,18 +18554,18 @@ snapshots: '@types/pg@8.20.0': dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 pg-protocol: 1.13.0 pg-types: 2.2.0 '@types/postman-collection@3.5.11': dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/pug@2.0.10': optional: true - '@types/qs@6.15.0': {} + '@types/qs@6.15.1': {} '@types/range-parser@1.2.7': {} @@ -17857,7 +18579,7 @@ snapshots: '@types/request@2.48.13': dependencies: '@types/caseless': 0.12.5 - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/tough-cookie': 4.0.5 form-data: 4.0.4 @@ -17865,20 +18587,20 @@ snapshots: '@types/sax@1.2.7': dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/send@1.2.1': dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/serve-static@2.2.0': dependencies: '@types/http-errors': 2.0.5 - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/splitpanes@2.2.6(typescript@5.9.3)': dependencies: - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) transitivePeerDependencies: - typescript @@ -17892,7 +18614,7 @@ snapshots: dependencies: '@types/cookiejar': 2.1.5 '@types/methods': 1.1.4 - '@types/node': 25.6.0 + '@types/node': 25.9.0 form-data: 4.0.4 '@types/supertest@7.2.0': @@ -17912,7 +18634,7 @@ snapshots: '@types/ws@8.18.1': dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@types/yargs-parser@21.0.3': {} @@ -17952,15 +18674,31 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/eslint-plugin@8.59.1(@typescript-eslint/parser@8.59.1(eslint@10.2.1(jiti@2.6.1))(typescript@5.9.3))(eslint@10.2.1(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@8.59.3(@typescript-eslint/parser@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@eslint-community/regexpp': 4.12.2 + '@typescript-eslint/parser': 8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.59.3 + '@typescript-eslint/type-utils': 8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.59.3 + eslint: 9.39.2(jiti@2.6.1) + ignore: 7.0.5 + natural-compare: 1.4.0 + ts-api-utils: 2.5.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/eslint-plugin@8.59.4(@typescript-eslint/parser@8.59.4(eslint@10.4.0(jiti@2.6.1))(typescript@5.9.3))(eslint@10.4.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.59.1(eslint@10.2.1(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/scope-manager': 8.59.1 - '@typescript-eslint/type-utils': 8.59.1(eslint@10.2.1(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/utils': 8.59.1(eslint@10.2.1(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.59.1 - eslint: 10.2.1(jiti@2.6.1) + '@typescript-eslint/parser': 8.59.4(eslint@10.4.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.59.4 + '@typescript-eslint/type-utils': 8.59.4(eslint@10.4.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.59.4(eslint@10.4.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.59.4 + eslint: 10.4.0(jiti@2.6.1) ignore: 7.0.5 natural-compare: 1.4.0 ts-api-utils: 2.5.0(typescript@5.9.3) @@ -17992,14 +18730,26 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.59.1(eslint@10.2.1(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/parser@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)': dependencies: - '@typescript-eslint/scope-manager': 8.59.1 - '@typescript-eslint/types': 8.59.1 - '@typescript-eslint/typescript-estree': 8.59.1(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.59.1 + '@typescript-eslint/scope-manager': 8.59.3 + '@typescript-eslint/types': 8.59.3 + '@typescript-eslint/typescript-estree': 8.59.3(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.59.3 debug: 4.4.3(supports-color@8.1.1) - eslint: 10.2.1(jiti@2.6.1) + eslint: 9.39.2(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@8.59.4(eslint@10.4.0(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/scope-manager': 8.59.4 + '@typescript-eslint/types': 8.59.4 + '@typescript-eslint/typescript-estree': 8.59.4(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.59.4 + debug: 4.4.3(supports-color@8.1.1) + eslint: 10.4.0(jiti@2.6.1) typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -18022,10 +18772,19 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/project-service@8.59.1(typescript@5.9.3)': + '@typescript-eslint/project-service@8.59.3(typescript@5.9.3)': + dependencies: + '@typescript-eslint/tsconfig-utils': 8.59.4(typescript@5.9.3) + '@typescript-eslint/types': 8.59.4 + debug: 4.4.3(supports-color@8.1.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/project-service@8.59.4(typescript@5.9.3)': dependencies: - '@typescript-eslint/tsconfig-utils': 8.59.1(typescript@5.9.3) - '@typescript-eslint/types': 8.59.1 + '@typescript-eslint/tsconfig-utils': 8.59.4(typescript@5.9.3) + '@typescript-eslint/types': 8.59.4 debug: 4.4.3(supports-color@8.1.1) typescript: 5.9.3 transitivePeerDependencies: @@ -18041,10 +18800,15 @@ snapshots: '@typescript-eslint/types': 8.59.0 '@typescript-eslint/visitor-keys': 8.59.0 - '@typescript-eslint/scope-manager@8.59.1': + '@typescript-eslint/scope-manager@8.59.3': + dependencies: + '@typescript-eslint/types': 8.59.3 + '@typescript-eslint/visitor-keys': 8.59.3 + + '@typescript-eslint/scope-manager@8.59.4': dependencies: - '@typescript-eslint/types': 8.59.1 - '@typescript-eslint/visitor-keys': 8.59.1 + '@typescript-eslint/types': 8.59.4 + '@typescript-eslint/visitor-keys': 8.59.4 '@typescript-eslint/tsconfig-utils@8.57.2(typescript@5.9.3)': dependencies: @@ -18054,7 +18818,11 @@ snapshots: dependencies: typescript: 5.9.3 - '@typescript-eslint/tsconfig-utils@8.59.1(typescript@5.9.3)': + '@typescript-eslint/tsconfig-utils@8.59.3(typescript@5.9.3)': + dependencies: + typescript: 5.9.3 + + '@typescript-eslint/tsconfig-utils@8.59.4(typescript@5.9.3)': dependencies: typescript: 5.9.3 @@ -18082,13 +18850,25 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/type-utils@8.59.1(eslint@10.2.1(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/type-utils@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/types': 8.59.3 + '@typescript-eslint/typescript-estree': 8.59.3(typescript@5.9.3) + '@typescript-eslint/utils': 8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + debug: 4.4.3(supports-color@8.1.1) + eslint: 9.39.2(jiti@2.6.1) + ts-api-utils: 2.5.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/type-utils@8.59.4(eslint@10.4.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: - '@typescript-eslint/types': 8.59.1 - '@typescript-eslint/typescript-estree': 8.59.1(typescript@5.9.3) - '@typescript-eslint/utils': 8.59.1(eslint@10.2.1(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/types': 8.59.4 + '@typescript-eslint/typescript-estree': 8.59.4(typescript@5.9.3) + '@typescript-eslint/utils': 8.59.4(eslint@10.4.0(jiti@2.6.1))(typescript@5.9.3) debug: 4.4.3(supports-color@8.1.1) - eslint: 10.2.1(jiti@2.6.1) + eslint: 10.4.0(jiti@2.6.1) ts-api-utils: 2.5.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: @@ -18098,7 +18878,9 @@ snapshots: '@typescript-eslint/types@8.59.0': {} - '@typescript-eslint/types@8.59.1': {} + '@typescript-eslint/types@8.59.3': {} + + '@typescript-eslint/types@8.59.4': {} '@typescript-eslint/typescript-estree@8.57.2(typescript@5.9.3)': dependencies: @@ -18108,8 +18890,8 @@ snapshots: '@typescript-eslint/visitor-keys': 8.57.2 debug: 4.4.3(supports-color@8.1.1) minimatch: 10.2.4 - semver: 7.7.4 - tinyglobby: 0.2.15 + semver: 7.8.0 + tinyglobby: 0.2.16 ts-api-utils: 2.5.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: @@ -18123,22 +18905,37 @@ snapshots: '@typescript-eslint/visitor-keys': 8.59.0 debug: 4.4.3(supports-color@8.1.1) minimatch: 10.2.3 - semver: 7.7.4 + semver: 7.8.0 tinyglobby: 0.2.16 ts-api-utils: 2.5.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@8.59.1(typescript@5.9.3)': + '@typescript-eslint/typescript-estree@8.59.3(typescript@5.9.3)': dependencies: - '@typescript-eslint/project-service': 8.59.1(typescript@5.9.3) - '@typescript-eslint/tsconfig-utils': 8.59.1(typescript@5.9.3) - '@typescript-eslint/types': 8.59.1 - '@typescript-eslint/visitor-keys': 8.59.1 + '@typescript-eslint/project-service': 8.59.3(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.59.3(typescript@5.9.3) + '@typescript-eslint/types': 8.59.3 + '@typescript-eslint/visitor-keys': 8.59.3 debug: 4.4.3(supports-color@8.1.1) - minimatch: 10.2.3 - semver: 7.7.4 + minimatch: 10.2.4 + semver: 7.8.0 + tinyglobby: 0.2.16 + ts-api-utils: 2.5.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/typescript-estree@8.59.4(typescript@5.9.3)': + dependencies: + '@typescript-eslint/project-service': 8.59.4(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.59.4(typescript@5.9.3) + '@typescript-eslint/types': 8.59.4 + '@typescript-eslint/visitor-keys': 8.59.4 + debug: 4.4.3(supports-color@8.1.1) + minimatch: 10.2.4 + semver: 7.8.0 tinyglobby: 0.2.16 ts-api-utils: 2.5.0(typescript@5.9.3) typescript: 5.9.3 @@ -18167,13 +18964,24 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.59.1(eslint@10.2.1(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/utils@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1)) + '@typescript-eslint/scope-manager': 8.59.3 + '@typescript-eslint/types': 8.59.3 + '@typescript-eslint/typescript-estree': 8.59.3(typescript@5.9.3) + eslint: 9.39.2(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@8.59.4(eslint@10.4.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.2.1(jiti@2.6.1)) - '@typescript-eslint/scope-manager': 8.59.1 - '@typescript-eslint/types': 8.59.1 - '@typescript-eslint/typescript-estree': 8.59.1(typescript@5.9.3) - eslint: 10.2.1(jiti@2.6.1) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.4.0(jiti@2.6.1)) + '@typescript-eslint/scope-manager': 8.59.4 + '@typescript-eslint/types': 8.59.4 + '@typescript-eslint/typescript-estree': 8.59.4(typescript@5.9.3) + eslint: 10.4.0(jiti@2.6.1) typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -18188,18 +18996,23 @@ snapshots: '@typescript-eslint/types': 8.59.0 eslint-visitor-keys: 5.0.1 - '@typescript-eslint/visitor-keys@8.59.1': + '@typescript-eslint/visitor-keys@8.59.3': + dependencies: + '@typescript-eslint/types': 8.59.3 + eslint-visitor-keys: 5.0.1 + + '@typescript-eslint/visitor-keys@8.59.4': dependencies: - '@typescript-eslint/types': 8.59.1 + '@typescript-eslint/types': 8.59.4 eslint-visitor-keys: 5.0.1 '@ungap/structured-clone@1.3.0': {} - '@unhead/vue@2.1.12(vue@3.5.33(typescript@5.9.3))': + '@unhead/vue@2.1.12(vue@3.5.34(typescript@5.9.3))': dependencies: hookable: 6.1.0 unhead: 2.1.12 - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) '@unrs/resolver-binding-android-arm-eabi@1.11.1': optional: true @@ -18267,6 +19080,13 @@ snapshots: transitivePeerDependencies: - graphql + '@urql/core@6.0.1(graphql@16.14.0)': + dependencies: + '@0no-co/graphql.web': 1.2.0(graphql@16.14.0) + wonka: 6.3.6 + transitivePeerDependencies: + - graphql + '@urql/devtools@2.0.3(@urql/core@6.0.1(graphql@16.13.2))(graphql@16.13.2)': dependencies: '@urql/core': 6.0.1(graphql@16.13.2) @@ -18286,14 +19106,26 @@ snapshots: transitivePeerDependencies: - graphql + '@urql/exchange-graphcache@7.2.4(@urql/core@6.0.1(graphql@16.14.0))(graphql@16.14.0)': + dependencies: + '@0no-co/graphql.web': 1.2.0(graphql@16.14.0) + '@urql/core': 6.0.1(graphql@16.14.0) + wonka: 6.3.6 + transitivePeerDependencies: + - graphql + '@urql/introspection@0.3.3(graphql@16.13.2)': dependencies: graphql: 16.13.2 - '@urql/vue@2.1.0(@urql/core@6.0.1(graphql@16.13.2))(vue@3.5.33(typescript@5.9.3))': + '@urql/introspection@0.3.3(graphql@16.14.0)': + dependencies: + graphql: 16.14.0 + + '@urql/vue@2.1.0(@urql/core@6.0.1(graphql@16.13.2))(vue@3.5.34(typescript@5.9.3))': dependencies: '@urql/core': 6.0.1(graphql@16.13.2) - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) wonka: 6.3.6 '@vitejs/plugin-legacy@2.3.1(terser@5.46.1)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))': @@ -18306,7 +19138,7 @@ snapshots: terser: 5.46.1 vite: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - '@vitejs/plugin-legacy@2.3.1(terser@5.46.1)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))': + '@vitejs/plugin-legacy@2.3.1(terser@5.46.1)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))': dependencies: '@babel/standalone': 7.29.2 core-js: 3.49.0 @@ -18314,9 +19146,9 @@ snapshots: regenerator-runtime: 0.13.11 systemjs: 6.15.1 terser: 5.46.1 - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - '@vitejs/plugin-legacy@7.2.1(terser@5.46.1)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))': + '@vitejs/plugin-legacy@7.2.1(terser@5.46.1)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))': dependencies: '@babel/core': 7.29.0 '@babel/plugin-transform-dynamic-import': 7.27.1(@babel/core@7.29.0) @@ -18331,21 +19163,21 @@ snapshots: regenerator-runtime: 0.14.1 systemjs: 6.15.1 terser: 5.46.1 - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) transitivePeerDependencies: - supports-color - '@vitejs/plugin-vue@6.0.6(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3))': + '@vitejs/plugin-vue@6.0.6(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3))': dependencies: '@rolldown/pluginutils': 1.0.0-rc.13 vite: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) - '@vitejs/plugin-vue@6.0.6(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.33(typescript@5.9.3))': + '@vitejs/plugin-vue@6.0.6(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue@3.5.34(typescript@5.9.3))': dependencies: '@rolldown/pluginutils': 1.0.0-rc.13 - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - vue: 3.5.33(typescript@5.9.3) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vue: 3.5.34(typescript@5.9.3) '@vitest/expect@4.1.5': dependencies: @@ -18356,6 +19188,15 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.1.0 + '@vitest/expect@4.1.6': + dependencies: + '@standard-schema/spec': 1.1.0 + '@types/chai': 5.2.3 + '@vitest/spy': 4.1.6 + '@vitest/utils': 4.1.6 + chai: 6.2.2 + tinyrainbow: 3.1.0 + '@vitest/mocker@4.1.5(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))': dependencies: '@vitest/spy': 4.1.5 @@ -18364,23 +19205,40 @@ snapshots: optionalDependencies: vite: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - '@vitest/mocker@4.1.5(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))': + '@vitest/mocker@4.1.6(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))': dependencies: - '@vitest/spy': 4.1.5 + '@vitest/spy': 4.1.6 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + + '@vitest/mocker@4.1.6(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))': + dependencies: + '@vitest/spy': 4.1.6 + estree-walker: 3.0.3 + magic-string: 0.30.21 + optionalDependencies: + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) '@vitest/pretty-format@4.1.5': dependencies: tinyrainbow: 3.1.0 + '@vitest/pretty-format@4.1.6': + dependencies: + tinyrainbow: 3.1.0 + '@vitest/runner@4.1.5': dependencies: '@vitest/utils': 4.1.5 pathe: 2.0.3 + '@vitest/runner@4.1.6': + dependencies: + '@vitest/utils': 4.1.6 + pathe: 2.0.3 + '@vitest/snapshot@4.1.5': dependencies: '@vitest/pretty-format': 4.1.5 @@ -18388,14 +19246,29 @@ snapshots: magic-string: 0.30.21 pathe: 2.0.3 + '@vitest/snapshot@4.1.6': + dependencies: + '@vitest/pretty-format': 4.1.6 + '@vitest/utils': 4.1.6 + magic-string: 0.30.21 + pathe: 2.0.3 + '@vitest/spy@4.1.5': {} + '@vitest/spy@4.1.6': {} + '@vitest/utils@4.1.5': dependencies: '@vitest/pretty-format': 4.1.5 convert-source-map: 2.0.0 tinyrainbow: 3.1.0 + '@vitest/utils@4.1.6': + dependencies: + '@vitest/pretty-format': 4.1.6 + convert-source-map: 2.0.0 + tinyrainbow: 3.1.0 + '@volar/language-core@1.10.10': dependencies: '@volar/source-map': 1.10.10 @@ -18423,16 +19296,16 @@ snapshots: '@vue/compiler-core@3.5.31': dependencies: - '@babel/parser': 7.29.2 + '@babel/parser': 7.29.3 '@vue/shared': 3.5.31 entities: 7.0.1 estree-walker: 2.0.2 source-map-js: 1.2.1 - '@vue/compiler-core@3.5.33': + '@vue/compiler-core@3.5.34': dependencies: - '@babel/parser': 7.29.2 - '@vue/shared': 3.5.33 + '@babel/parser': 7.29.3 + '@vue/shared': 3.5.34 entities: 7.0.1 estree-walker: 2.0.2 source-map-js: 1.2.1 @@ -18442,27 +19315,27 @@ snapshots: '@vue/compiler-core': 3.5.31 '@vue/shared': 3.5.31 - '@vue/compiler-dom@3.5.33': + '@vue/compiler-dom@3.5.34': dependencies: - '@vue/compiler-core': 3.5.33 - '@vue/shared': 3.5.33 + '@vue/compiler-core': 3.5.34 + '@vue/shared': 3.5.34 - '@vue/compiler-sfc@3.5.33': + '@vue/compiler-sfc@3.5.34': dependencies: - '@babel/parser': 7.29.2 - '@vue/compiler-core': 3.5.33 - '@vue/compiler-dom': 3.5.33 - '@vue/compiler-ssr': 3.5.33 - '@vue/shared': 3.5.33 + '@babel/parser': 7.29.3 + '@vue/compiler-core': 3.5.34 + '@vue/compiler-dom': 3.5.34 + '@vue/compiler-ssr': 3.5.34 + '@vue/shared': 3.5.34 estree-walker: 2.0.2 magic-string: 0.30.21 - postcss: 8.5.10 + postcss: 8.5.14 source-map-js: 1.2.1 - '@vue/compiler-ssr@3.5.33': + '@vue/compiler-ssr@3.5.34': dependencies: - '@vue/compiler-dom': 3.5.33 - '@vue/shared': 3.5.33 + '@vue/compiler-dom': 3.5.34 + '@vue/shared': 3.5.34 '@vue/compiler-vue2@2.7.16': dependencies: @@ -18484,6 +19357,32 @@ snapshots: transitivePeerDependencies: - supports-color + '@vue/eslint-config-typescript@14.7.0(eslint-plugin-vue@10.9.0(@typescript-eslint/parser@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/utils': 8.57.2(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.2(jiti@2.6.1) + eslint-plugin-vue: 10.9.0(@typescript-eslint/parser@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))) + fast-glob: 3.3.3 + typescript-eslint: 8.57.2(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + vue-eslint-parser: 10.4.0(eslint@9.39.2(jiti@2.6.1)) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@vue/eslint-config-typescript@14.7.0(eslint-plugin-vue@10.9.1(@typescript-eslint/parser@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/utils': 8.57.2(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.2(jiti@2.6.1) + eslint-plugin-vue: 10.9.1(@typescript-eslint/parser@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))) + fast-glob: 3.3.3 + typescript-eslint: 8.57.2(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + vue-eslint-parser: 10.4.0(eslint@9.39.2(jiti@2.6.1)) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + '@vue/language-core@1.8.8(typescript@5.9.3)': dependencies: '@volar/language-core': 1.10.10 @@ -18500,9 +19399,9 @@ snapshots: '@vue/language-core@2.1.6(typescript@5.9.3)': dependencies: '@volar/language-core': 2.4.28 - '@vue/compiler-dom': 3.5.31 + '@vue/compiler-dom': 3.5.34 '@vue/compiler-vue2': 2.7.16 - '@vue/shared': 3.5.31 + '@vue/shared': 3.5.34 computeds: 0.0.1 minimatch: 9.0.9 muggle-string: 0.4.1 @@ -18527,31 +19426,31 @@ snapshots: dependencies: '@vue/shared': 3.5.31 - '@vue/reactivity@3.5.33': + '@vue/reactivity@3.5.34': dependencies: - '@vue/shared': 3.5.33 + '@vue/shared': 3.5.34 - '@vue/runtime-core@3.5.33': + '@vue/runtime-core@3.5.34': dependencies: - '@vue/reactivity': 3.5.33 - '@vue/shared': 3.5.33 + '@vue/reactivity': 3.5.34 + '@vue/shared': 3.5.34 - '@vue/runtime-dom@3.5.33': + '@vue/runtime-dom@3.5.34': dependencies: - '@vue/reactivity': 3.5.33 - '@vue/runtime-core': 3.5.33 - '@vue/shared': 3.5.33 + '@vue/reactivity': 3.5.34 + '@vue/runtime-core': 3.5.34 + '@vue/shared': 3.5.34 csstype: 3.2.3 - '@vue/server-renderer@3.5.33(vue@3.5.33(typescript@5.9.3))': + '@vue/server-renderer@3.5.34(vue@3.5.34(typescript@5.9.3))': dependencies: - '@vue/compiler-ssr': 3.5.33 - '@vue/shared': 3.5.33 - vue: 3.5.33(typescript@5.9.3) + '@vue/compiler-ssr': 3.5.34 + '@vue/shared': 3.5.34 + vue: 3.5.34(typescript@5.9.3) '@vue/shared@3.5.31': {} - '@vue/shared@3.5.33': {} + '@vue/shared@3.5.34': {} '@vue/typescript@1.8.8(typescript@5.9.3)': dependencies: @@ -18560,35 +19459,48 @@ snapshots: transitivePeerDependencies: - typescript - '@vueuse/core@14.2.1(vue@3.5.33(typescript@5.9.3))': + '@vueuse/core@14.2.1(vue@3.5.34(typescript@5.9.3))': dependencies: '@types/web-bluetooth': 0.0.21 '@vueuse/metadata': 14.2.1 - '@vueuse/shared': 14.2.1(vue@3.5.33(typescript@5.9.3)) - vue: 3.5.33(typescript@5.9.3) + '@vueuse/shared': 14.2.1(vue@3.5.34(typescript@5.9.3)) + vue: 3.5.34(typescript@5.9.3) + + '@vueuse/core@14.3.0(vue@3.5.34(typescript@5.9.3))': + dependencies: + '@types/web-bluetooth': 0.0.21 + '@vueuse/metadata': 14.3.0 + '@vueuse/shared': 14.3.0(vue@3.5.34(typescript@5.9.3)) + vue: 3.5.34(typescript@5.9.3) - '@vueuse/core@8.9.4(vue@3.5.33(typescript@5.9.3))': + '@vueuse/core@8.9.4(vue@3.5.34(typescript@5.9.3))': dependencies: '@types/web-bluetooth': 0.0.14 '@vueuse/metadata': 8.9.4 - '@vueuse/shared': 8.9.4(vue@3.5.33(typescript@5.9.3)) - vue-demi: 0.14.10(vue@3.5.33(typescript@5.9.3)) + '@vueuse/shared': 8.9.4(vue@3.5.34(typescript@5.9.3)) + vue-demi: 0.14.10(vue@3.5.34(typescript@5.9.3)) optionalDependencies: - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) '@vueuse/metadata@14.2.1': {} + '@vueuse/metadata@14.3.0': {} + '@vueuse/metadata@8.9.4': {} - '@vueuse/shared@14.2.1(vue@3.5.33(typescript@5.9.3))': + '@vueuse/shared@14.2.1(vue@3.5.34(typescript@5.9.3))': + dependencies: + vue: 3.5.34(typescript@5.9.3) + + '@vueuse/shared@14.3.0(vue@3.5.34(typescript@5.9.3))': dependencies: - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) - '@vueuse/shared@8.9.4(vue@3.5.33(typescript@5.9.3))': + '@vueuse/shared@8.9.4(vue@3.5.34(typescript@5.9.3))': dependencies: - vue-demi: 0.14.10(vue@3.5.33(typescript@5.9.3)) + vue-demi: 0.14.10(vue@3.5.34(typescript@5.9.3)) optionalDependencies: - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) '@webassemblyjs/ast@1.14.1': dependencies: @@ -18790,14 +19702,14 @@ snapshots: ajv@8.18.0: dependencies: fast-deep-equal: 3.1.3 - fast-uri: 3.1.0 + fast-uri: 3.1.2 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 ajv@8.20.0: dependencies: fast-deep-equal: 3.1.3 - fast-uri: 3.1.0 + fast-uri: 3.1.2 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 @@ -18942,6 +19854,15 @@ snapshots: postcss: 8.5.10 postcss-value-parser: 4.2.0 + autoprefixer@10.5.0(postcss@8.5.14): + dependencies: + browserslist: 4.28.2 + caniuse-lite: 1.0.30001791 + fraction.js: 5.3.4 + picocolors: 1.1.1 + postcss: 8.5.14 + postcss-value-parser: 4.2.0 + available-typed-arrays@1.0.7: dependencies: possible-typed-array-names: 1.1.0 @@ -18966,13 +19887,13 @@ snapshots: transitivePeerDependencies: - debug - babel-jest@30.3.0(@babel/core@7.29.0): + babel-jest@30.4.1(@babel/core@7.29.0): dependencies: '@babel/core': 7.29.0 - '@jest/transform': 30.3.0 + '@jest/transform': 30.4.1 '@types/babel__core': 7.20.5 babel-plugin-istanbul: 7.0.1 - babel-preset-jest: 30.3.0(@babel/core@7.29.0) + babel-preset-jest: 30.4.0(@babel/core@7.29.0) chalk: 4.1.2 graceful-fs: 4.2.11 slash: 3.0.0 @@ -18989,7 +19910,7 @@ snapshots: transitivePeerDependencies: - supports-color - babel-plugin-jest-hoist@30.3.0: + babel-plugin-jest-hoist@30.4.0: dependencies: '@types/babel__core': 7.20.5 @@ -19079,10 +20000,10 @@ snapshots: transitivePeerDependencies: - supports-color - babel-preset-jest@30.3.0(@babel/core@7.29.0): + babel-preset-jest@30.4.0(@babel/core@7.29.0): dependencies: '@babel/core': 7.29.0 - babel-plugin-jest-hoist: 30.3.0 + babel-plugin-jest-hoist: 30.4.0 babel-preset-current-node-syntax: 1.2.0(@babel/core@7.29.0) babel-walk@3.0.0-canary-5: @@ -19575,7 +20496,7 @@ snapshots: constantinople@4.0.1: dependencies: - '@babel/parser': 7.29.2 + '@babel/parser': 7.29.3 '@babel/types': 7.29.0 optional: true @@ -19709,9 +20630,9 @@ snapshots: crypto-random-string@2.0.0: {} - css-declaration-sorter@7.3.1(postcss@8.5.10): + css-declaration-sorter@7.3.1(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 optional: true css-select@5.2.2: @@ -19741,51 +20662,51 @@ snapshots: cssfilter@0.0.10: {} - cssnano-preset-default@7.0.11(postcss@8.5.10): + cssnano-preset-default@7.0.11(postcss@8.5.14): dependencies: browserslist: 4.28.2 - css-declaration-sorter: 7.3.1(postcss@8.5.10) - cssnano-utils: 5.0.1(postcss@8.5.10) - postcss: 8.5.10 - postcss-calc: 10.1.1(postcss@8.5.10) - postcss-colormin: 7.0.6(postcss@8.5.10) - postcss-convert-values: 7.0.9(postcss@8.5.10) - postcss-discard-comments: 7.0.6(postcss@8.5.10) - postcss-discard-duplicates: 7.0.2(postcss@8.5.10) - postcss-discard-empty: 7.0.1(postcss@8.5.10) - postcss-discard-overridden: 7.0.1(postcss@8.5.10) - postcss-merge-longhand: 7.0.5(postcss@8.5.10) - postcss-merge-rules: 7.0.8(postcss@8.5.10) - postcss-minify-font-values: 7.0.1(postcss@8.5.10) - postcss-minify-gradients: 7.0.1(postcss@8.5.10) - postcss-minify-params: 7.0.6(postcss@8.5.10) - postcss-minify-selectors: 7.0.6(postcss@8.5.10) - postcss-normalize-charset: 7.0.1(postcss@8.5.10) - postcss-normalize-display-values: 7.0.1(postcss@8.5.10) - postcss-normalize-positions: 7.0.1(postcss@8.5.10) - postcss-normalize-repeat-style: 7.0.1(postcss@8.5.10) - postcss-normalize-string: 7.0.1(postcss@8.5.10) - postcss-normalize-timing-functions: 7.0.1(postcss@8.5.10) - postcss-normalize-unicode: 7.0.6(postcss@8.5.10) - postcss-normalize-url: 7.0.1(postcss@8.5.10) - postcss-normalize-whitespace: 7.0.1(postcss@8.5.10) - postcss-ordered-values: 7.0.2(postcss@8.5.10) - postcss-reduce-initial: 7.0.6(postcss@8.5.10) - postcss-reduce-transforms: 7.0.1(postcss@8.5.10) - postcss-svgo: 7.1.1(postcss@8.5.10) - postcss-unique-selectors: 7.0.5(postcss@8.5.10) - optional: true - - cssnano-utils@5.0.1(postcss@8.5.10): - dependencies: - postcss: 8.5.10 - optional: true - - cssnano@7.1.3(postcss@8.5.10): - dependencies: - cssnano-preset-default: 7.0.11(postcss@8.5.10) + css-declaration-sorter: 7.3.1(postcss@8.5.14) + cssnano-utils: 5.0.1(postcss@8.5.14) + postcss: 8.5.14 + postcss-calc: 10.1.1(postcss@8.5.14) + postcss-colormin: 7.0.6(postcss@8.5.14) + postcss-convert-values: 7.0.9(postcss@8.5.14) + postcss-discard-comments: 7.0.6(postcss@8.5.14) + postcss-discard-duplicates: 7.0.2(postcss@8.5.14) + postcss-discard-empty: 7.0.1(postcss@8.5.14) + postcss-discard-overridden: 7.0.1(postcss@8.5.14) + postcss-merge-longhand: 7.0.5(postcss@8.5.14) + postcss-merge-rules: 7.0.8(postcss@8.5.14) + postcss-minify-font-values: 7.0.1(postcss@8.5.14) + postcss-minify-gradients: 7.0.1(postcss@8.5.14) + postcss-minify-params: 7.0.6(postcss@8.5.14) + postcss-minify-selectors: 7.0.6(postcss@8.5.14) + postcss-normalize-charset: 7.0.1(postcss@8.5.14) + postcss-normalize-display-values: 7.0.1(postcss@8.5.14) + postcss-normalize-positions: 7.0.1(postcss@8.5.14) + postcss-normalize-repeat-style: 7.0.1(postcss@8.5.14) + postcss-normalize-string: 7.0.1(postcss@8.5.14) + postcss-normalize-timing-functions: 7.0.1(postcss@8.5.14) + postcss-normalize-unicode: 7.0.6(postcss@8.5.14) + postcss-normalize-url: 7.0.1(postcss@8.5.14) + postcss-normalize-whitespace: 7.0.1(postcss@8.5.14) + postcss-ordered-values: 7.0.2(postcss@8.5.14) + postcss-reduce-initial: 7.0.6(postcss@8.5.14) + postcss-reduce-transforms: 7.0.1(postcss@8.5.14) + postcss-svgo: 7.1.1(postcss@8.5.14) + postcss-unique-selectors: 7.0.5(postcss@8.5.14) + optional: true + + cssnano-utils@5.0.1(postcss@8.5.14): + dependencies: + postcss: 8.5.14 + optional: true + + cssnano@7.1.3(postcss@8.5.14): + dependencies: + cssnano-preset-default: 7.0.11(postcss@8.5.14) lilconfig: 3.1.3 - postcss: 8.5.10 + postcss: 8.5.14 optional: true csso@5.0.5: @@ -19934,11 +20855,11 @@ snapshots: diff@7.0.0: {} - dioc@3.0.2(vue@3.5.33(typescript@5.9.3)): + dioc@3.0.2(vue@3.5.34(typescript@5.9.3)): dependencies: rxjs: 7.8.2 optionalDependencies: - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) dir-glob@3.0.1: dependencies: @@ -19991,7 +20912,7 @@ snapshots: optionalDependencies: '@types/trusted-types': 2.0.7 - dompurify@3.4.1: + dompurify@3.4.3: optionalDependencies: '@types/trusted-types': 2.0.7 @@ -20213,7 +21134,7 @@ snapshots: has-property-descriptors: 1.0.2 has-proto: 1.2.0 has-symbols: 1.1.0 - hasown: 2.0.2 + hasown: 2.0.3 internal-slot: 1.1.0 is-array-buffer: 3.0.5 is-callable: 1.2.7 @@ -20318,7 +21239,7 @@ snapshots: es-errors: 1.3.0 get-intrinsic: 1.3.0 has-tostringtag: 1.0.2 - hasown: 2.0.2 + hasown: 2.0.3 es-to-primitive@1.3.0: dependencies: @@ -20520,23 +21441,23 @@ snapshots: optionalDependencies: source-map: 0.6.1 - eslint-config-prettier@10.1.8(eslint@10.2.1(jiti@2.6.1)): + eslint-config-prettier@10.1.8(eslint@10.4.0(jiti@2.6.1)): dependencies: - eslint: 10.2.1(jiti@2.6.1) + eslint: 10.4.0(jiti@2.6.1) eslint-config-prettier@10.1.8(eslint@9.39.2(jiti@2.6.1)): dependencies: eslint: 9.39.2(jiti@2.6.1) - eslint-plugin-prettier@5.5.5(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@10.2.1(jiti@2.6.1)))(eslint@10.2.1(jiti@2.6.1))(prettier@3.8.3): + eslint-plugin-prettier@5.5.5(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@10.4.0(jiti@2.6.1)))(eslint@10.4.0(jiti@2.6.1))(prettier@3.8.3): dependencies: - eslint: 10.2.1(jiti@2.6.1) + eslint: 10.4.0(jiti@2.6.1) prettier: 3.8.3 prettier-linter-helpers: 1.0.1 synckit: 0.11.12 optionalDependencies: '@types/eslint': 9.6.1 - eslint-config-prettier: 10.1.8(eslint@10.2.1(jiti@2.6.1)) + eslint-config-prettier: 10.1.8(eslint@10.4.0(jiti@2.6.1)) eslint-plugin-prettier@5.5.5(@types/eslint@9.6.1)(eslint-config-prettier@10.1.8(eslint@9.39.2(jiti@2.6.1)))(eslint@9.39.2(jiti@2.6.1))(prettier@3.8.3): dependencies: @@ -20548,7 +21469,20 @@ snapshots: '@types/eslint': 9.6.1 eslint-config-prettier: 10.1.8(eslint@9.39.2(jiti@2.6.1)) - eslint-plugin-vue@10.9.0(@typescript-eslint/parser@8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))): + eslint-plugin-vue@10.9.0(@typescript-eslint/parser@8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1)) + eslint: 9.39.2(jiti@2.6.1) + natural-compare: 1.4.0 + nth-check: 2.1.1 + postcss-selector-parser: 7.1.1 + semver: 7.7.4 + vue-eslint-parser: 10.4.0(eslint@9.39.2(jiti@2.6.1)) + xml-name-validator: 4.0.0 + optionalDependencies: + '@typescript-eslint/parser': 8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + + eslint-plugin-vue@10.9.0(@typescript-eslint/parser@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))): dependencies: '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1)) eslint: 9.39.2(jiti@2.6.1) @@ -20559,7 +21493,20 @@ snapshots: vue-eslint-parser: 10.4.0(eslint@9.39.2(jiti@2.6.1)) xml-name-validator: 4.0.0 optionalDependencies: - '@typescript-eslint/parser': 8.59.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + + eslint-plugin-vue@10.9.1(@typescript-eslint/parser@8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1))): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.2(jiti@2.6.1)) + eslint: 9.39.2(jiti@2.6.1) + natural-compare: 1.4.0 + nth-check: 2.1.1 + postcss-selector-parser: 7.1.1 + semver: 7.8.0 + vue-eslint-parser: 10.4.0(eslint@9.39.2(jiti@2.6.1)) + xml-name-validator: 4.0.0 + optionalDependencies: + '@typescript-eslint/parser': 8.59.3(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) eslint-scope@5.1.1: dependencies: @@ -20584,12 +21531,12 @@ snapshots: eslint-visitor-keys@5.0.1: {} - eslint@10.2.1(jiti@2.6.1): + eslint@10.4.0(jiti@2.6.1): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.2.1(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.4.0(jiti@2.6.1)) '@eslint-community/regexpp': 4.12.2 '@eslint/config-array': 0.23.5 - '@eslint/config-helpers': 0.5.5 + '@eslint/config-helpers': 0.6.0 '@eslint/core': 1.2.1 '@eslint/plugin-kit': 0.7.1 '@humanfs/node': 0.16.7 @@ -20783,6 +21730,15 @@ snapshots: jest-mock: 30.3.0 jest-util: 30.3.0 + expect@30.4.1: + dependencies: + '@jest/expect-utils': 30.4.1 + '@jest/get-type': 30.1.0 + jest-matcher-utils: 30.4.1 + jest-message-util: 30.4.1 + jest-mock: 30.4.1 + jest-util: 30.4.1 + express@5.2.1: dependencies: accepts: 2.0.0 @@ -20862,7 +21818,7 @@ snapshots: fast-safe-stringify@2.1.1: {} - fast-uri@3.1.0: {} + fast-uri@3.1.2: {} fast-url-parser@1.1.3: dependencies: @@ -20995,7 +21951,7 @@ snapshots: minimatch: 3.1.5 node-abort-controller: 3.1.1 schema-utils: 3.3.0 - semver: 7.7.4 + semver: 7.8.0 tapable: 2.3.2 typescript: 5.9.3 webpack: 5.106.0 @@ -21056,7 +22012,7 @@ snapshots: call-bound: 1.0.4 define-properties: 1.2.1 functions-have-names: 1.2.3 - hasown: 2.0.2 + hasown: 2.0.3 is-callable: 1.2.7 functions-have-names@1.2.3: {} @@ -21083,7 +22039,7 @@ snapshots: get-proto: 1.0.1 gopd: 1.2.0 has-symbols: 1.1.0 - hasown: 2.0.2 + hasown: 2.0.3 math-intrinsics: 1.1.0 get-own-enumerable-property-symbols@3.0.2: {} @@ -21174,7 +22130,7 @@ snapshots: globals@16.5.0: {} - globals@17.5.0: {} + globals@17.6.0: {} globalthis@1.0.4: dependencies: @@ -21240,13 +22196,13 @@ snapshots: - typescript - utf-8-validate - graphql-config@5.1.6(@types/node@25.6.0)(graphql@16.13.2)(typescript@5.9.3): + graphql-config@5.1.6(@types/node@25.9.0)(graphql@16.13.2)(typescript@5.9.3): dependencies: '@graphql-tools/graphql-file-loader': 8.1.14(graphql@16.13.2) '@graphql-tools/json-file-loader': 8.0.28(graphql@16.13.2) '@graphql-tools/load': 8.1.10(graphql@16.13.2) '@graphql-tools/merge': 9.1.9(graphql@16.13.2) - '@graphql-tools/url-loader': 9.1.2(@types/node@25.6.0)(graphql@16.13.2) + '@graphql-tools/url-loader': 9.1.2(@types/node@25.9.0)(graphql@16.13.2) '@graphql-tools/utils': 11.1.0(graphql@16.13.2) cosmiconfig: 8.3.6(typescript@5.9.3) graphql: 16.13.2 @@ -21262,6 +22218,28 @@ snapshots: - typescript - utf-8-validate + graphql-config@5.1.6(@types/node@25.9.0)(graphql@16.14.0)(typescript@5.9.3): + dependencies: + '@graphql-tools/graphql-file-loader': 8.1.14(graphql@16.14.0) + '@graphql-tools/json-file-loader': 8.0.28(graphql@16.14.0) + '@graphql-tools/load': 8.1.10(graphql@16.14.0) + '@graphql-tools/merge': 9.1.9(graphql@16.14.0) + '@graphql-tools/url-loader': 9.1.2(@types/node@25.9.0)(graphql@16.14.0) + '@graphql-tools/utils': 11.1.0(graphql@16.14.0) + cosmiconfig: 8.3.6(typescript@5.9.3) + graphql: 16.14.0 + jiti: 2.6.1 + minimatch: 10.2.4 + string-env-interpolation: 1.0.1 + tslib: 2.8.1 + transitivePeerDependencies: + - '@fastify/websocket' + - '@types/node' + - bufferutil + - crossws + - typescript + - utf-8-validate + graphql-language-service-interface@2.10.2(@types/node@24.10.1)(graphql@16.13.2): dependencies: graphql: 16.13.2 @@ -21313,28 +22291,33 @@ snapshots: - encoding - utf-8-validate - graphql-query-complexity@1.1.0(graphql@16.13.2): + graphql-query-complexity@1.1.0(graphql@16.14.0): dependencies: - graphql: 16.13.2 + graphql: 16.14.0 lodash.get: 4.4.2 - graphql-redis-subscriptions@2.7.0(graphql-subscriptions@3.0.0(graphql@16.13.2)): + graphql-redis-subscriptions@2.7.0(graphql-subscriptions@3.0.0(graphql@16.14.0)): dependencies: - graphql-subscriptions: 3.0.0(graphql@16.13.2) + graphql-subscriptions: 3.0.0(graphql@16.14.0) optionalDependencies: ioredis: 5.10.1 transitivePeerDependencies: - supports-color - graphql-subscriptions@3.0.0(graphql@16.13.2): + graphql-subscriptions@3.0.0(graphql@16.14.0): dependencies: - graphql: 16.13.2 + graphql: 16.14.0 graphql-tag@2.12.6(graphql@16.13.2): dependencies: graphql: 16.13.2 tslib: 2.8.1 + graphql-tag@2.12.6(graphql@16.14.0): + dependencies: + graphql: 16.14.0 + tslib: 2.8.1 + graphql-ws@5.12.1(graphql@16.13.2): dependencies: graphql: 16.13.2 @@ -21345,8 +22328,16 @@ snapshots: optionalDependencies: ws: 8.17.1 + graphql-ws@6.0.8(graphql@16.14.0)(ws@8.17.1): + dependencies: + graphql: 16.14.0 + optionalDependencies: + ws: 8.17.1 + graphql@16.13.2: {} + graphql@16.14.0: {} + handlebars@4.7.9: dependencies: minimist: 1.2.8 @@ -21437,14 +22428,14 @@ snapshots: selderee: 0.11.0 optional: true - htmlnano@2.1.5(cssnano@7.1.3(postcss@8.5.10))(postcss@8.5.10)(terser@5.46.1)(typescript@5.9.3): + htmlnano@2.1.5(cssnano@7.1.3(postcss@8.5.14))(postcss@8.5.14)(terser@5.46.1)(typescript@5.9.3): dependencies: '@types/relateurl': 0.2.33 cosmiconfig: 9.0.1(typescript@5.9.3) posthtml: 0.16.7 optionalDependencies: - cssnano: 7.1.3(postcss@8.5.10) - postcss: 8.5.10 + cssnano: 7.1.3(postcss@8.5.14) + postcss: 8.5.14 terser: 5.46.1 transitivePeerDependencies: - typescript @@ -21617,7 +22608,7 @@ snapshots: internal-slot@1.1.0: dependencies: es-errors: 1.3.0 - hasown: 2.0.2 + hasown: 2.0.3 side-channel: 1.1.0 invariant@2.2.4: @@ -21788,7 +22779,7 @@ snapshots: call-bound: 1.0.4 gopd: 1.2.0 has-tostringtag: 1.0.2 - hasown: 2.0.2 + hasown: 2.0.3 is-regexp@1.0.0: {} @@ -21880,10 +22871,10 @@ snapshots: istanbul-lib-instrument@6.0.3: dependencies: '@babel/core': 7.29.0 - '@babel/parser': 7.29.2 + '@babel/parser': 7.29.3 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.2 - semver: 7.7.4 + semver: 7.8.0 transitivePeerDependencies: - supports-color @@ -21926,31 +22917,31 @@ snapshots: filelist: 1.0.6 picocolors: 1.1.1 - jest-changed-files@30.3.0: + jest-changed-files@30.4.1: dependencies: execa: 5.1.1 - jest-util: 30.3.0 + jest-util: 30.4.1 p-limit: 3.1.0 - jest-circus@30.3.0: + jest-circus@30.4.2: dependencies: - '@jest/environment': 30.3.0 - '@jest/expect': 30.3.0 - '@jest/test-result': 30.3.0 - '@jest/types': 30.3.0 - '@types/node': 25.6.0 + '@jest/environment': 30.4.1 + '@jest/expect': 30.4.1 + '@jest/test-result': 30.4.1 + '@jest/types': 30.4.1 + '@types/node': 25.9.0 chalk: 4.1.2 co: 4.6.0 dedent: 1.7.2 is-generator-fn: 2.1.0 - jest-each: 30.3.0 - jest-matcher-utils: 30.3.0 - jest-message-util: 30.3.0 - jest-runtime: 30.3.0 - jest-snapshot: 30.3.0 - jest-util: 30.3.0 + jest-each: 30.4.1 + jest-matcher-utils: 30.4.1 + jest-message-util: 30.4.1 + jest-runtime: 30.4.2 + jest-snapshot: 30.4.1 + jest-util: 30.4.1 p-limit: 3.1.0 - pretty-format: 30.3.0 + pretty-format: 30.4.1 pure-rand: 7.0.1 slash: 3.0.0 stack-utils: 2.0.6 @@ -21958,17 +22949,17 @@ snapshots: - babel-plugin-macros - supports-color - jest-cli@30.3.0(@types/node@25.6.0)(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)): + jest-cli@30.4.2(@types/node@25.9.0)(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)): dependencies: - '@jest/core': 30.3.0(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)) - '@jest/test-result': 30.3.0 - '@jest/types': 30.3.0 + '@jest/core': 30.4.2(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)) + '@jest/test-result': 30.4.1 + '@jest/types': 30.4.1 chalk: 4.1.2 exit-x: 0.2.2 import-local: 3.2.0 - jest-config: 30.3.0(@types/node@25.6.0)(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)) - jest-util: 30.3.0 - jest-validate: 30.3.0 + jest-config: 30.4.2(@types/node@25.9.0)(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)) + jest-util: 30.4.1 + jest-validate: 30.4.1 yargs: 17.7.2 transitivePeerDependencies: - '@types/node' @@ -21977,34 +22968,34 @@ snapshots: - supports-color - ts-node - jest-config@30.3.0(@types/node@25.6.0)(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)): + jest-config@30.4.2(@types/node@25.9.0)(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)): dependencies: '@babel/core': 7.29.0 '@jest/get-type': 30.1.0 - '@jest/pattern': 30.0.1 - '@jest/test-sequencer': 30.3.0 - '@jest/types': 30.3.0 - babel-jest: 30.3.0(@babel/core@7.29.0) + '@jest/pattern': 30.4.0 + '@jest/test-sequencer': 30.4.1 + '@jest/types': 30.4.1 + babel-jest: 30.4.1(@babel/core@7.29.0) chalk: 4.1.2 ci-info: 4.4.0 deepmerge: 4.3.1 glob: 10.5.0 graceful-fs: 4.2.11 - jest-circus: 30.3.0 - jest-docblock: 30.2.0 - jest-environment-node: 30.3.0 - jest-regex-util: 30.0.1 - jest-resolve: 30.3.0 - jest-runner: 30.3.0 - jest-util: 30.3.0 - jest-validate: 30.3.0 + jest-circus: 30.4.2 + jest-docblock: 30.4.0 + jest-environment-node: 30.4.1 + jest-regex-util: 30.4.0 + jest-resolve: 30.4.1 + jest-runner: 30.4.2 + jest-util: 30.4.1 + jest-validate: 30.4.1 parse-json: 5.2.0 - pretty-format: 30.3.0 + pretty-format: 30.4.1 slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 25.6.0 - ts-node: 10.9.2(@types/node@25.6.0)(typescript@5.9.3) + '@types/node': 25.9.0 + ts-node: 10.9.2(@types/node@25.9.0)(typescript@5.9.3) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -22023,49 +23014,56 @@ snapshots: chalk: 4.1.2 pretty-format: 30.3.0 - jest-docblock@30.2.0: + jest-diff@30.4.1: + dependencies: + '@jest/diff-sequences': 30.4.0 + '@jest/get-type': 30.1.0 + chalk: 4.1.2 + pretty-format: 30.4.1 + + jest-docblock@30.4.0: dependencies: detect-newline: 3.1.0 - jest-each@30.3.0: + jest-each@30.4.1: dependencies: '@jest/get-type': 30.1.0 - '@jest/types': 30.3.0 + '@jest/types': 30.4.1 chalk: 4.1.2 - jest-util: 30.3.0 - pretty-format: 30.3.0 + jest-util: 30.4.1 + pretty-format: 30.4.1 - jest-environment-node@30.3.0: + jest-environment-node@30.4.1: dependencies: - '@jest/environment': 30.3.0 - '@jest/fake-timers': 30.3.0 - '@jest/types': 30.3.0 - '@types/node': 25.6.0 - jest-mock: 30.3.0 - jest-util: 30.3.0 - jest-validate: 30.3.0 + '@jest/environment': 30.4.1 + '@jest/fake-timers': 30.4.1 + '@jest/types': 30.4.1 + '@types/node': 25.9.0 + jest-mock: 30.4.1 + jest-util: 30.4.1 + jest-validate: 30.4.1 jest-get-type@29.6.3: {} - jest-haste-map@30.3.0: + jest-haste-map@30.4.1: dependencies: - '@jest/types': 30.3.0 - '@types/node': 25.6.0 + '@jest/types': 30.4.1 + '@types/node': 25.9.0 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.11 - jest-regex-util: 30.0.1 - jest-util: 30.3.0 - jest-worker: 30.3.0 + jest-regex-util: 30.4.0 + jest-util: 30.4.1 + jest-worker: 30.4.1 picomatch: 4.0.4 walker: 1.0.8 optionalDependencies: fsevents: 2.3.3 - jest-leak-detector@30.3.0: + jest-leak-detector@30.4.1: dependencies: '@jest/get-type': 30.1.0 - pretty-format: 30.3.0 + pretty-format: 30.4.1 jest-matcher-utils@29.7.0: dependencies: @@ -22081,6 +23079,13 @@ snapshots: jest-diff: 30.3.0 pretty-format: 30.3.0 + jest-matcher-utils@30.4.1: + dependencies: + '@jest/get-type': 30.1.0 + chalk: 4.1.2 + jest-diff: 30.4.1 + pretty-format: 30.4.1 + jest-message-util@29.7.0: dependencies: '@babel/code-frame': 7.29.0 @@ -22105,10 +23110,23 @@ snapshots: slash: 3.0.0 stack-utils: 2.0.6 - jest-mock-extended@4.0.1(@jest/globals@30.3.0)(jest@30.3.0(@types/node@25.6.0)(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)))(typescript@5.9.3): + jest-message-util@30.4.1: + dependencies: + '@babel/code-frame': 7.29.0 + '@jest/types': 30.4.1 + '@types/stack-utils': 2.0.3 + chalk: 4.1.2 + graceful-fs: 4.2.11 + jest-util: 30.4.1 + picomatch: 4.0.4 + pretty-format: 30.4.1 + slash: 3.0.0 + stack-utils: 2.0.6 + + jest-mock-extended@4.0.1(@jest/globals@30.4.1)(jest@30.4.2(@types/node@25.9.0)(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)))(typescript@5.9.3): dependencies: - '@jest/globals': 30.3.0 - jest: 30.3.0(@types/node@25.6.0)(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)) + '@jest/globals': 30.4.1 + jest: 30.4.2(@types/node@25.9.0)(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)) lodash.isequal: 4.5.0 ts-essentials: 10.1.1(typescript@5.9.3) typescript: 5.9.3 @@ -22116,109 +23134,117 @@ snapshots: jest-mock@30.3.0: dependencies: '@jest/types': 30.3.0 - '@types/node': 25.6.0 + '@types/node': 25.9.0 jest-util: 30.3.0 - jest-pnp-resolver@1.2.3(jest-resolve@30.3.0): + jest-mock@30.4.1: + dependencies: + '@jest/types': 30.4.1 + '@types/node': 25.9.0 + jest-util: 30.4.1 + + jest-pnp-resolver@1.2.3(jest-resolve@30.4.1): optionalDependencies: - jest-resolve: 30.3.0 + jest-resolve: 30.4.1 jest-regex-util@30.0.1: {} - jest-resolve-dependencies@30.3.0: + jest-regex-util@30.4.0: {} + + jest-resolve-dependencies@30.4.2: dependencies: - jest-regex-util: 30.0.1 - jest-snapshot: 30.3.0 + jest-regex-util: 30.4.0 + jest-snapshot: 30.4.1 transitivePeerDependencies: - supports-color - jest-resolve@30.3.0: + jest-resolve@30.4.1: dependencies: chalk: 4.1.2 graceful-fs: 4.2.11 - jest-haste-map: 30.3.0 - jest-pnp-resolver: 1.2.3(jest-resolve@30.3.0) - jest-util: 30.3.0 - jest-validate: 30.3.0 + jest-haste-map: 30.4.1 + jest-pnp-resolver: 1.2.3(jest-resolve@30.4.1) + jest-util: 30.4.1 + jest-validate: 30.4.1 slash: 3.0.0 unrs-resolver: 1.11.1 - jest-runner@30.3.0: + jest-runner@30.4.2: dependencies: - '@jest/console': 30.3.0 - '@jest/environment': 30.3.0 - '@jest/test-result': 30.3.0 - '@jest/transform': 30.3.0 - '@jest/types': 30.3.0 - '@types/node': 25.6.0 + '@jest/console': 30.4.1 + '@jest/environment': 30.4.1 + '@jest/test-result': 30.4.1 + '@jest/transform': 30.4.1 + '@jest/types': 30.4.1 + '@types/node': 25.9.0 chalk: 4.1.2 emittery: 0.13.1 exit-x: 0.2.2 graceful-fs: 4.2.11 - jest-docblock: 30.2.0 - jest-environment-node: 30.3.0 - jest-haste-map: 30.3.0 - jest-leak-detector: 30.3.0 - jest-message-util: 30.3.0 - jest-resolve: 30.3.0 - jest-runtime: 30.3.0 - jest-util: 30.3.0 - jest-watcher: 30.3.0 - jest-worker: 30.3.0 + jest-docblock: 30.4.0 + jest-environment-node: 30.4.1 + jest-haste-map: 30.4.1 + jest-leak-detector: 30.4.1 + jest-message-util: 30.4.1 + jest-resolve: 30.4.1 + jest-runtime: 30.4.2 + jest-util: 30.4.1 + jest-watcher: 30.4.1 + jest-worker: 30.4.1 p-limit: 3.1.0 source-map-support: 0.5.13 transitivePeerDependencies: - supports-color - jest-runtime@30.3.0: + jest-runtime@30.4.2: dependencies: - '@jest/environment': 30.3.0 - '@jest/fake-timers': 30.3.0 - '@jest/globals': 30.3.0 + '@jest/environment': 30.4.1 + '@jest/fake-timers': 30.4.1 + '@jest/globals': 30.4.1 '@jest/source-map': 30.0.1 - '@jest/test-result': 30.3.0 - '@jest/transform': 30.3.0 - '@jest/types': 30.3.0 - '@types/node': 25.6.0 + '@jest/test-result': 30.4.1 + '@jest/transform': 30.4.1 + '@jest/types': 30.4.1 + '@types/node': 25.9.0 chalk: 4.1.2 cjs-module-lexer: 2.2.0 collect-v8-coverage: 1.0.3 glob: 10.5.0 graceful-fs: 4.2.11 - jest-haste-map: 30.3.0 - jest-message-util: 30.3.0 - jest-mock: 30.3.0 - jest-regex-util: 30.0.1 - jest-resolve: 30.3.0 - jest-snapshot: 30.3.0 - jest-util: 30.3.0 + jest-haste-map: 30.4.1 + jest-message-util: 30.4.1 + jest-mock: 30.4.1 + jest-regex-util: 30.4.0 + jest-resolve: 30.4.1 + jest-snapshot: 30.4.1 + jest-util: 30.4.1 slash: 3.0.0 strip-bom: 4.0.0 transitivePeerDependencies: - supports-color - jest-snapshot@30.3.0: + jest-snapshot@30.4.1: dependencies: '@babel/core': 7.29.0 '@babel/generator': 7.29.1 '@babel/plugin-syntax-jsx': 7.28.6(@babel/core@7.29.0) '@babel/plugin-syntax-typescript': 7.28.6(@babel/core@7.29.0) '@babel/types': 7.29.0 - '@jest/expect-utils': 30.3.0 + '@jest/expect-utils': 30.4.1 '@jest/get-type': 30.1.0 - '@jest/snapshot-utils': 30.3.0 - '@jest/transform': 30.3.0 - '@jest/types': 30.3.0 + '@jest/snapshot-utils': 30.4.1 + '@jest/transform': 30.4.1 + '@jest/types': 30.4.1 babel-preset-current-node-syntax: 1.2.0(@babel/core@7.29.0) chalk: 4.1.2 - expect: 30.3.0 + expect: 30.4.1 graceful-fs: 4.2.11 - jest-diff: 30.3.0 - jest-matcher-utils: 30.3.0 - jest-message-util: 30.3.0 - jest-util: 30.3.0 - pretty-format: 30.3.0 - semver: 7.7.4 + jest-diff: 30.4.1 + jest-matcher-utils: 30.4.1 + jest-message-util: 30.4.1 + jest-util: 30.4.1 + pretty-format: 30.4.1 + semver: 7.8.0 synckit: 0.11.12 transitivePeerDependencies: - supports-color @@ -22226,7 +23252,7 @@ snapshots: jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 25.6.0 + '@types/node': 25.9.0 chalk: 4.1.2 ci-info: 3.9.0 graceful-fs: 4.2.11 @@ -22235,52 +23261,61 @@ snapshots: jest-util@30.3.0: dependencies: '@jest/types': 30.3.0 - '@types/node': 25.6.0 + '@types/node': 25.9.0 + chalk: 4.1.2 + ci-info: 4.4.0 + graceful-fs: 4.2.11 + picomatch: 4.0.4 + + jest-util@30.4.1: + dependencies: + '@jest/types': 30.4.1 + '@types/node': 25.9.0 chalk: 4.1.2 ci-info: 4.4.0 graceful-fs: 4.2.11 picomatch: 4.0.4 - jest-validate@30.3.0: + jest-validate@30.4.1: dependencies: '@jest/get-type': 30.1.0 - '@jest/types': 30.3.0 + '@jest/types': 30.4.1 camelcase: 6.3.0 chalk: 4.1.2 leven: 3.1.0 - pretty-format: 30.3.0 + pretty-format: 30.4.1 - jest-watcher@30.3.0: + jest-watcher@30.4.1: dependencies: - '@jest/test-result': 30.3.0 - '@jest/types': 30.3.0 - '@types/node': 25.6.0 + '@jest/test-result': 30.4.1 + '@jest/types': 30.4.1 + '@types/node': 25.9.0 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.13.1 - jest-util: 30.3.0 + jest-util: 30.4.1 string-length: 4.0.2 jest-worker@27.5.1: dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 merge-stream: 2.0.0 supports-color: 8.1.1 - jest-worker@30.3.0: + jest-worker@30.4.1: dependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 '@ungap/structured-clone': 1.3.0 - jest-util: 30.3.0 + jest-util: 30.4.1 merge-stream: 2.0.0 supports-color: 8.1.1 - jest@30.3.0(@types/node@25.6.0)(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)): + jest@30.4.2(@types/node@25.9.0)(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)): dependencies: - '@jest/core': 30.3.0(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)) - '@jest/types': 30.3.0 + '@jest/core': 30.4.2(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)) + '@jest/types': 30.4.1 import-local: 3.2.0 - jest-cli: 30.3.0(@types/node@25.6.0)(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)) + jest-cli: 30.4.2(@types/node@25.9.0)(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)) transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -22294,7 +23329,7 @@ snapshots: jiti@2.6.1: {} - jose@6.2.2: {} + jose@6.2.3: {} joycon@3.1.1: {} @@ -22372,7 +23407,7 @@ snapshots: acorn: 8.16.0 eslint-visitor-keys: 3.4.3 espree: 9.6.1 - semver: 7.7.4 + semver: 7.8.0 jsonc-parser@3.3.1: {} @@ -22401,7 +23436,7 @@ snapshots: lodash.isstring: 4.0.1 lodash.once: 4.1.1 ms: 2.1.3 - semver: 7.7.4 + semver: 7.8.0 jstransformer@1.0.0: dependencies: @@ -22664,7 +23699,7 @@ snapshots: make-dir@4.0.0: dependencies: - semver: 7.7.4 + semver: 7.8.0 make-error@1.3.6: {} @@ -22726,9 +23761,9 @@ snapshots: optionalDependencies: '@types/node': 24.10.1 - meros@1.3.2(@types/node@25.6.0): + meros@1.3.2(@types/node@25.9.0): optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 methods@1.1.2: {} @@ -22899,14 +23934,14 @@ snapshots: dependencies: '@babel/runtime': 7.29.2 cheerio: 1.0.0-rc.12 - cssnano: 7.1.3(postcss@8.5.10) + cssnano: 7.1.3(postcss@8.5.14) detect-node: 2.1.0 - htmlnano: 2.1.5(cssnano@7.1.3(postcss@8.5.10))(postcss@8.5.10)(terser@5.46.1)(typescript@5.9.3) + htmlnano: 2.1.5(cssnano@7.1.3(postcss@8.5.14))(postcss@8.5.14)(terser@5.46.1)(typescript@5.9.3) juice: 10.0.1 lodash: 4.18.1 mjml-parser-xml: 5.0.0-alpha.4 mjml-validator: 5.0.0-alpha.4 - postcss: 8.5.10 + postcss: 8.5.14 prettier: 3.8.3 transitivePeerDependencies: - encoding @@ -23857,19 +24892,21 @@ snapshots: perfect-debounce@2.1.0: {} - pg-cloudflare@1.3.0: + pg-cloudflare@1.4.0: optional: true - pg-connection-string@2.12.0: {} + pg-connection-string@2.13.0: {} pg-int8@1.0.1: {} - pg-pool@3.13.0(pg@8.20.0): + pg-pool@3.14.0(pg@8.21.0): dependencies: - pg: 8.20.0 + pg: 8.21.0 pg-protocol@1.13.0: {} + pg-protocol@1.14.0: {} + pg-types@2.2.0: dependencies: pg-int8: 1.0.1 @@ -23878,15 +24915,15 @@ snapshots: postgres-date: 1.0.7 postgres-interval: 1.2.0 - pg@8.20.0: + pg@8.21.0: dependencies: - pg-connection-string: 2.12.0 - pg-pool: 3.13.0(pg@8.20.0) - pg-protocol: 1.13.0 + pg-connection-string: 2.13.0 + pg-pool: 3.14.0(pg@8.21.0) + pg-protocol: 1.14.0 pg-types: 2.2.0 pgpass: 1.0.5 optionalDependencies: - pg-cloudflare: 1.3.0 + pg-cloudflare: 1.4.0 pgpass@1.0.5: dependencies: @@ -23933,48 +24970,48 @@ snapshots: possible-typed-array-names@1.1.0: {} - postcss-calc@10.1.1(postcss@8.5.10): + postcss-calc@10.1.1(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 postcss-selector-parser: 7.1.1 postcss-value-parser: 4.2.0 optional: true - postcss-colormin@7.0.6(postcss@8.5.10): + postcss-colormin@7.0.6(postcss@8.5.14): dependencies: browserslist: 4.28.2 caniuse-api: 3.0.0 colord: 2.9.3 - postcss: 8.5.10 + postcss: 8.5.14 postcss-value-parser: 4.2.0 optional: true - postcss-convert-values@7.0.9(postcss@8.5.10): + postcss-convert-values@7.0.9(postcss@8.5.14): dependencies: browserslist: 4.28.2 - postcss: 8.5.10 + postcss: 8.5.14 postcss-value-parser: 4.2.0 optional: true - postcss-discard-comments@7.0.6(postcss@8.5.10): + postcss-discard-comments@7.0.6(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 postcss-selector-parser: 7.1.1 optional: true - postcss-discard-duplicates@7.0.2(postcss@8.5.10): + postcss-discard-duplicates@7.0.2(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 optional: true - postcss-discard-empty@7.0.1(postcss@8.5.10): + postcss-discard-empty@7.0.1(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 optional: true - postcss-discard-overridden@7.0.1(postcss@8.5.10): + postcss-discard-overridden@7.0.1(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 optional: true postcss-import@15.1.0(postcss@8.5.10): @@ -23997,13 +25034,13 @@ snapshots: postcss: 8.5.10 ts-node: 10.9.2(@types/node@24.10.1)(typescript@5.9.3) - postcss-load-config@4.0.2(postcss@8.5.10)(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)): + postcss-load-config@4.0.2(postcss@8.5.10)(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)): dependencies: lilconfig: 3.1.3 yaml: 2.8.3 optionalDependencies: postcss: 8.5.10 - ts-node: 10.9.2(@types/node@25.6.0)(typescript@5.9.3) + ts-node: 10.9.2(@types/node@25.9.0)(typescript@5.9.3) postcss-load-config@6.0.1(jiti@2.6.1)(postcss@8.5.10)(yaml@2.8.3): dependencies: @@ -24013,48 +25050,56 @@ snapshots: postcss: 8.5.10 yaml: 2.8.3 - postcss-merge-longhand@7.0.5(postcss@8.5.10): + postcss-load-config@6.0.1(jiti@2.6.1)(postcss@8.5.14)(yaml@2.8.3): dependencies: - postcss: 8.5.10 + lilconfig: 3.1.3 + optionalDependencies: + jiti: 2.6.1 + postcss: 8.5.14 + yaml: 2.8.3 + + postcss-merge-longhand@7.0.5(postcss@8.5.14): + dependencies: + postcss: 8.5.14 postcss-value-parser: 4.2.0 - stylehacks: 7.0.8(postcss@8.5.10) + stylehacks: 7.0.8(postcss@8.5.14) optional: true - postcss-merge-rules@7.0.8(postcss@8.5.10): + postcss-merge-rules@7.0.8(postcss@8.5.14): dependencies: browserslist: 4.28.2 caniuse-api: 3.0.0 - cssnano-utils: 5.0.1(postcss@8.5.10) - postcss: 8.5.10 + cssnano-utils: 5.0.1(postcss@8.5.14) + postcss: 8.5.14 postcss-selector-parser: 7.1.1 optional: true - postcss-minify-font-values@7.0.1(postcss@8.5.10): + postcss-minify-font-values@7.0.1(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 postcss-value-parser: 4.2.0 optional: true - postcss-minify-gradients@7.0.1(postcss@8.5.10): + postcss-minify-gradients@7.0.1(postcss@8.5.14): dependencies: colord: 2.9.3 - cssnano-utils: 5.0.1(postcss@8.5.10) - postcss: 8.5.10 + cssnano-utils: 5.0.1(postcss@8.5.14) + postcss: 8.5.14 postcss-value-parser: 4.2.0 optional: true - postcss-minify-params@7.0.6(postcss@8.5.10): + postcss-minify-params@7.0.6(postcss@8.5.14): dependencies: browserslist: 4.28.2 - cssnano-utils: 5.0.1(postcss@8.5.10) - postcss: 8.5.10 + cssnano-utils: 5.0.1(postcss@8.5.14) + postcss: 8.5.14 postcss-value-parser: 4.2.0 optional: true - postcss-minify-selectors@7.0.6(postcss@8.5.10): + postcss-minify-selectors@7.0.6(postcss@8.5.14): dependencies: cssesc: 3.0.0 - postcss: 8.5.10 + postcss: 8.5.14 postcss-selector-parser: 7.1.1 optional: true @@ -24063,77 +25108,77 @@ snapshots: postcss: 8.5.10 postcss-selector-parser: 6.1.2 - postcss-normalize-charset@7.0.1(postcss@8.5.10): + postcss-normalize-charset@7.0.1(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 optional: true - postcss-normalize-display-values@7.0.1(postcss@8.5.10): + postcss-normalize-display-values@7.0.1(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 postcss-value-parser: 4.2.0 optional: true - postcss-normalize-positions@7.0.1(postcss@8.5.10): + postcss-normalize-positions@7.0.1(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 postcss-value-parser: 4.2.0 optional: true - postcss-normalize-repeat-style@7.0.1(postcss@8.5.10): + postcss-normalize-repeat-style@7.0.1(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 postcss-value-parser: 4.2.0 optional: true - postcss-normalize-string@7.0.1(postcss@8.5.10): + postcss-normalize-string@7.0.1(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 postcss-value-parser: 4.2.0 optional: true - postcss-normalize-timing-functions@7.0.1(postcss@8.5.10): + postcss-normalize-timing-functions@7.0.1(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 postcss-value-parser: 4.2.0 optional: true - postcss-normalize-unicode@7.0.6(postcss@8.5.10): + postcss-normalize-unicode@7.0.6(postcss@8.5.14): dependencies: browserslist: 4.28.2 - postcss: 8.5.10 + postcss: 8.5.14 postcss-value-parser: 4.2.0 optional: true - postcss-normalize-url@7.0.1(postcss@8.5.10): + postcss-normalize-url@7.0.1(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 postcss-value-parser: 4.2.0 optional: true - postcss-normalize-whitespace@7.0.1(postcss@8.5.10): + postcss-normalize-whitespace@7.0.1(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 postcss-value-parser: 4.2.0 optional: true - postcss-ordered-values@7.0.2(postcss@8.5.10): + postcss-ordered-values@7.0.2(postcss@8.5.14): dependencies: - cssnano-utils: 5.0.1(postcss@8.5.10) - postcss: 8.5.10 + cssnano-utils: 5.0.1(postcss@8.5.14) + postcss: 8.5.14 postcss-value-parser: 4.2.0 optional: true - postcss-reduce-initial@7.0.6(postcss@8.5.10): + postcss-reduce-initial@7.0.6(postcss@8.5.14): dependencies: browserslist: 4.28.2 caniuse-api: 3.0.0 - postcss: 8.5.10 + postcss: 8.5.14 optional: true - postcss-reduce-transforms@7.0.1(postcss@8.5.10): + postcss-reduce-transforms@7.0.1(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 postcss-value-parser: 4.2.0 optional: true @@ -24147,16 +25192,16 @@ snapshots: cssesc: 3.0.0 util-deprecate: 1.0.2 - postcss-svgo@7.1.1(postcss@8.5.10): + postcss-svgo@7.1.1(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 postcss-value-parser: 4.2.0 svgo: 4.0.1 optional: true - postcss-unique-selectors@7.0.5(postcss@8.5.10): + postcss-unique-selectors@7.0.5(postcss@8.5.14): dependencies: - postcss: 8.5.10 + postcss: 8.5.14 postcss-selector-parser: 7.1.1 optional: true @@ -24168,6 +25213,12 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.1 + postcss@8.5.14: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + postgres-array@2.0.0: {} postgres-array@3.0.4: {} @@ -24182,9 +25233,9 @@ snapshots: postgres@3.4.7: {} - posthog-node@5.30.6(rxjs@7.8.2): + posthog-node@5.34.6(rxjs@7.8.2): dependencies: - '@posthog/core': 1.27.7 + '@posthog/core': 1.29.5 optionalDependencies: rxjs: 7.8.2 @@ -24254,6 +25305,13 @@ snapshots: ansi-styles: 5.2.0 react-is: 18.3.1 + pretty-format@30.4.1: + dependencies: + '@jest/schemas': 30.4.1 + ansi-styles: 5.2.0 + react-is-18: react-is@18.3.1 + react-is-19: react-is@19.2.6 + preview-email@3.1.1: dependencies: ci-info: 3.9.0 @@ -24337,7 +25395,7 @@ snapshots: jstransformer: 1.0.0 pug-error: 2.1.0 pug-walk: 2.0.0 - resolve: 1.22.11 + resolve: 1.22.12 optional: true pug-lexer@5.0.1: @@ -24488,6 +25546,8 @@ snapshots: react-is@18.3.1: {} + react-is@19.2.6: {} + react@19.2.4: {} read-cache@1.0.0: @@ -24854,6 +25914,8 @@ snapshots: semver@7.7.4: {} + semver@7.8.0: {} + send@1.2.1: dependencies: debug: 4.4.3(supports-color@8.1.1) @@ -25308,10 +26370,10 @@ snapshots: style-mod@4.1.3: {} - stylehacks@7.0.8(postcss@8.5.10): + stylehacks@7.0.8(postcss@8.5.14): dependencies: browserslist: 4.28.2 - postcss: 8.5.10 + postcss: 8.5.14 postcss-selector-parser: 7.1.1 optional: true @@ -25327,6 +26389,18 @@ snapshots: - bufferutil - utf-8-validate + subscriptions-transport-ws@0.11.0(graphql@16.14.0): + dependencies: + backo2: 1.0.2 + eventemitter3: 3.1.2 + graphql: 16.14.0 + iterall: 1.3.0 + symbol-observable: 1.2.0 + ws: 7.5.10 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + sucrase@3.35.1: dependencies: '@jridgewell/gen-mapping': 0.3.13 @@ -25400,7 +26474,7 @@ snapshots: transitivePeerDependencies: - openapi-types - swagger-ui-dist@5.32.4: + swagger-ui-dist@5.32.6: dependencies: '@scarf/scarf': 1.4.0 @@ -25469,7 +26543,7 @@ snapshots: transitivePeerDependencies: - ts-node - tailwindcss@3.4.16(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)): + tailwindcss@3.4.16(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)): dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -25488,7 +26562,7 @@ snapshots: postcss: 8.5.10 postcss-import: 15.1.0(postcss@8.5.10) postcss-js: 4.1.0(postcss@8.5.10) - postcss-load-config: 4.0.2(postcss@8.5.10)(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)) + postcss-load-config: 4.0.2(postcss@8.5.10)(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)) postcss-nested: 6.2.0(postcss@8.5.10) postcss-selector-parser: 6.1.2 resolve: 1.22.11 @@ -25648,25 +26722,25 @@ snapshots: ts-interface-checker@0.1.13: {} - ts-jest@29.4.9(@babel/core@7.29.0)(@jest/transform@30.3.0)(@jest/types@30.3.0)(babel-jest@30.3.0(@babel/core@7.29.0))(jest-util@30.3.0)(jest@30.3.0(@types/node@25.6.0)(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)))(typescript@5.9.3): + ts-jest@29.4.10(@babel/core@7.29.0)(@jest/transform@30.4.1)(@jest/types@30.4.1)(babel-jest@30.4.1(@babel/core@7.29.0))(jest-util@30.4.1)(jest@30.4.2(@types/node@25.9.0)(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)))(typescript@5.9.3): dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 handlebars: 4.7.9 - jest: 30.3.0(@types/node@25.6.0)(ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3)) + jest: 30.4.2(@types/node@25.9.0)(ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3)) json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 - semver: 7.7.4 + semver: 7.8.0 type-fest: 4.41.0 typescript: 5.9.3 yargs-parser: 21.1.1 optionalDependencies: '@babel/core': 7.29.0 - '@jest/transform': 30.3.0 - '@jest/types': 30.3.0 - babel-jest: 30.3.0(@babel/core@7.29.0) - jest-util: 30.3.0 + '@jest/transform': 30.4.1 + '@jest/types': 30.4.1 + babel-jest: 30.4.1(@babel/core@7.29.0) + jest-util: 30.4.1 ts-loader@9.5.7(typescript@5.9.3)(webpack@5.106.0): dependencies: @@ -25680,7 +26754,7 @@ snapshots: ts-log@2.2.7: {} - ts-node-dev@2.0.0(@types/node@25.6.0)(typescript@5.9.3): + ts-node-dev@2.0.0(@types/node@25.9.0)(typescript@5.9.3): dependencies: chokidar: 3.6.0 dynamic-dedupe: 0.3.0 @@ -25690,7 +26764,7 @@ snapshots: rimraf: 2.7.1 source-map-support: 0.5.21 tree-kill: 1.2.2 - ts-node: 10.9.2(@types/node@25.6.0)(typescript@5.9.3) + ts-node: 10.9.2(@types/node@25.9.0)(typescript@5.9.3) tsconfig: 7.0.0 typescript: 5.9.3 transitivePeerDependencies: @@ -25717,14 +26791,14 @@ snapshots: yn: 3.1.1 optional: true - ts-node@10.9.2(@types/node@25.6.0)(typescript@5.9.3): + ts-node@10.9.2(@types/node@25.9.0)(typescript@5.9.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.12 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 25.6.0 + '@types/node': 25.9.0 acorn: 8.16.0 acorn-walk: 8.3.5 arg: 4.1.3 @@ -25787,6 +26861,34 @@ snapshots: - tsx - yaml + tsup@8.5.1(jiti@2.6.1)(postcss@8.5.14)(typescript@5.9.3)(yaml@2.8.3): + dependencies: + bundle-require: 5.1.0(esbuild@0.27.4) + cac: 6.7.14 + chokidar: 4.0.3 + consola: 3.4.2 + debug: 4.4.3(supports-color@8.1.1) + esbuild: 0.27.4 + fix-dts-default-cjs-exports: 1.0.1 + joycon: 3.1.1 + picocolors: 1.1.1 + postcss-load-config: 6.0.1(jiti@2.6.1)(postcss@8.5.14)(yaml@2.8.3) + resolve-from: 5.0.0 + rollup: 4.59.0 + source-map: 0.7.6 + sucrase: 3.35.1 + tinyexec: 0.3.2 + tinyglobby: 0.2.15 + tree-kill: 1.2.2 + optionalDependencies: + postcss: 8.5.14 + typescript: 5.9.3 + transitivePeerDependencies: + - jiti + - supports-color + - tsx + - yaml + type-check@0.4.0: dependencies: prelude-ls: 1.2.1 @@ -25890,7 +26992,7 @@ snapshots: undici-types@7.16.0: {} - undici-types@7.19.2: {} + undici-types@7.24.6: {} unhead@2.1.12: dependencies: @@ -25941,13 +27043,13 @@ snapshots: unplugin: 2.3.5 vite: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - unplugin-fonts@1.4.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): + unplugin-fonts@1.4.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): dependencies: fast-glob: 3.3.3 unplugin: 2.3.5 - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - unplugin-icons@22.5.0(@vue/compiler-sfc@3.5.33)(svelte@3.59.2)(vue-template-compiler@2.7.16): + unplugin-icons@22.5.0(@vue/compiler-sfc@3.5.34)(svelte@3.59.2)(vue-template-compiler@2.7.16): dependencies: '@antfu/install-pkg': 1.1.0 '@iconify/utils': 3.1.0 @@ -25955,7 +27057,7 @@ snapshots: local-pkg: 1.1.2 unplugin: 2.3.11 optionalDependencies: - '@vue/compiler-sfc': 3.5.33 + '@vue/compiler-sfc': 3.5.34 svelte: 3.59.2 vue-template-compiler: 2.7.16 transitivePeerDependencies: @@ -25966,7 +27068,7 @@ snapshots: pathe: 2.0.3 picomatch: 4.0.4 - unplugin-vue-components@30.0.0(@babel/parser@7.29.2)(vue@3.5.33(typescript@5.9.3)): + unplugin-vue-components@30.0.0(@babel/parser@7.29.3)(vue@3.5.34(typescript@5.9.3)): dependencies: chokidar: 4.0.3 debug: 4.4.3(supports-color@8.1.1) @@ -25976,9 +27078,9 @@ snapshots: tinyglobby: 0.2.15 unplugin: 2.3.11 unplugin-utils: 0.3.1 - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) optionalDependencies: - '@babel/parser': 7.29.2 + '@babel/parser': 7.29.3 transitivePeerDependencies: - supports-color @@ -26079,8 +27181,6 @@ snapshots: utils-merge@1.0.1: {} - uuid@11.1.0: {} - uuid@13.0.0: {} uuid@8.3.2: {} @@ -26118,15 +27218,15 @@ snapshots: dependencies: zod: 3.25.32 - vite-dev-rpc@1.1.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): + vite-dev-rpc@1.1.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): dependencies: birpc: 2.9.0 - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - vite-hot-client: 2.1.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite-hot-client: 2.1.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) - vite-hot-client@2.1.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): + vite-hot-client@2.1.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): dependencies: - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) vite-plugin-checker@0.12.0(eslint@9.39.2(jiti@2.6.1))(meow@13.2.0)(optionator@0.9.4)(typescript@5.9.3)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-tsc@1.8.8(typescript@5.9.3)): dependencies: @@ -26146,21 +27246,21 @@ snapshots: typescript: 5.9.3 vue-tsc: 1.8.8(typescript@5.9.3) - vite-plugin-eslint@1.8.1(eslint@10.2.1(jiti@2.6.1))(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): + vite-plugin-eslint@1.8.1(eslint@10.4.0(jiti@2.6.1))(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): dependencies: '@rollup/pluginutils': 4.2.1 '@types/eslint': 8.56.12 - eslint: 10.2.1(jiti@2.6.1) + eslint: 10.4.0(jiti@2.6.1) rollup: 2.80.0 vite: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - vite-plugin-eslint@1.8.1(eslint@10.2.1(jiti@2.6.1))(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): + vite-plugin-eslint@1.8.1(eslint@10.4.0(jiti@2.6.1))(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): dependencies: '@rollup/pluginutils': 4.2.1 '@types/eslint': 8.56.12 - eslint: 10.2.1(jiti@2.6.1) + eslint: 10.4.0(jiti@2.6.1) rollup: 2.80.0 - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) vite-plugin-eslint@1.8.1(eslint@9.39.2(jiti@2.6.1))(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): dependencies: @@ -26170,33 +27270,33 @@ snapshots: rollup: 2.80.0 vite: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - vite-plugin-eslint@1.8.1(eslint@9.39.2(jiti@2.6.1))(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): + vite-plugin-eslint@1.8.1(eslint@9.39.2(jiti@2.6.1))(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): dependencies: '@rollup/pluginutils': 4.2.1 '@types/eslint': 8.56.12 eslint: 9.39.2(jiti@2.6.1) rollup: 2.80.0 - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) vite-plugin-fonts@0.7.0(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): dependencies: fast-glob: 3.3.3 vite: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - vite-plugin-fonts@0.7.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): + vite-plugin-fonts@0.7.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): dependencies: fast-glob: 3.3.3 - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) vite-plugin-html-config@2.0.2(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): dependencies: vite: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - vite-plugin-html-config@2.0.2(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): + vite-plugin-html-config@2.0.2(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): dependencies: - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - vite-plugin-inspect@11.3.3(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): + vite-plugin-inspect@11.3.3(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): dependencies: ansis: 4.2.0 debug: 4.4.3(supports-color@8.1.1) @@ -26206,8 +27306,8 @@ snapshots: perfect-debounce: 2.1.0 sirv: 3.0.2 unplugin-utils: 0.3.1 - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - vite-dev-rpc: 1.1.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite-dev-rpc: 1.1.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) transitivePeerDependencies: - supports-color @@ -26216,7 +27316,7 @@ snapshots: sitemap: 8.0.3 xml-formatter: 3.7.0 - vite-plugin-pages@0.33.2(@vue/compiler-sfc@3.5.33)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.33(typescript@5.9.3))): + vite-plugin-pages@0.33.2(@vue/compiler-sfc@3.5.34)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.34(typescript@5.9.3))): dependencies: '@types/debug': 4.1.13 debug: 4.4.3(supports-color@8.1.1) @@ -26227,15 +27327,15 @@ snapshots: micromatch: 4.0.8 picocolors: 1.1.1 tinyglobby: 0.2.15 - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) yaml: 2.8.3 optionalDependencies: - '@vue/compiler-sfc': 3.5.33 - vue-router: 4.6.4(vue@3.5.33(typescript@5.9.3)) + '@vue/compiler-sfc': 3.5.34 + vue-router: 4.6.4(vue@3.5.34(typescript@5.9.3)) transitivePeerDependencies: - supports-color - vite-plugin-pages@0.33.3(@vue/compiler-sfc@3.5.33)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.33(typescript@5.9.3))): + vite-plugin-pages@0.33.3(@vue/compiler-sfc@3.5.34)(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.34(typescript@5.9.3))): dependencies: '@types/debug': 4.1.13 debug: 4.4.3(supports-color@8.1.1) @@ -26249,12 +27349,12 @@ snapshots: vite: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) yaml: 2.8.3 optionalDependencies: - '@vue/compiler-sfc': 3.5.33 - vue-router: 4.6.4(vue@3.5.33(typescript@5.9.3)) + '@vue/compiler-sfc': 3.5.34 + vue-router: 4.6.4(vue@3.5.34(typescript@5.9.3)) transitivePeerDependencies: - supports-color - vite-plugin-pages@0.33.3(@vue/compiler-sfc@3.5.33)(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.33(typescript@5.9.3))): + vite-plugin-pages@0.33.3(@vue/compiler-sfc@3.5.34)(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.34(typescript@5.9.3))): dependencies: '@types/debug': 4.1.13 debug: 4.4.3(supports-color@8.1.1) @@ -26265,11 +27365,11 @@ snapshots: micromatch: 4.0.8 picocolors: 1.1.1 tinyglobby: 0.2.15 - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) yaml: 2.8.3 optionalDependencies: - '@vue/compiler-sfc': 3.5.33 - vue-router: 4.6.4(vue@3.5.33(typescript@5.9.3)) + '@vue/compiler-sfc': 3.5.34 + vue-router: 4.6.4(vue@3.5.34(typescript@5.9.3)) transitivePeerDependencies: - supports-color @@ -26284,53 +27384,53 @@ snapshots: transitivePeerDependencies: - supports-color - vite-plugin-pwa@1.2.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(workbox-build@7.4.0(@types/babel__core@7.20.5))(workbox-window@7.4.0): + vite-plugin-pwa@1.2.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(workbox-build@7.4.0(@types/babel__core@7.20.5))(workbox-window@7.4.1): dependencies: debug: 4.4.3(supports-color@8.1.1) pretty-bytes: 6.1.1 tinyglobby: 0.2.15 - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) workbox-build: 7.4.0(@types/babel__core@7.20.5) - workbox-window: 7.4.0 + workbox-window: 7.4.1 transitivePeerDependencies: - supports-color - vite-plugin-static-copy@3.3.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): + vite-plugin-static-copy@3.3.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): dependencies: chokidar: 3.6.0 p-map: 7.0.4 picocolors: 1.1.1 tinyglobby: 0.2.15 - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - vite-plugin-vue-layouts@0.11.0(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.33(typescript@5.9.3)))(vue@3.5.33(typescript@5.9.3)): + vite-plugin-vue-layouts@0.11.0(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.34(typescript@5.9.3)))(vue@3.5.34(typescript@5.9.3)): dependencies: debug: 4.4.3(supports-color@8.1.1) fast-glob: 3.3.3 vite: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - vue: 3.5.33(typescript@5.9.3) - vue-router: 4.6.4(vue@3.5.33(typescript@5.9.3)) + vue: 3.5.34(typescript@5.9.3) + vue-router: 4.6.4(vue@3.5.34(typescript@5.9.3)) transitivePeerDependencies: - supports-color - vite-plugin-vue-layouts@0.11.0(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.33(typescript@5.9.3)))(vue@3.5.33(typescript@5.9.3)): + vite-plugin-vue-layouts@0.11.0(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))(vue-router@4.6.4(vue@3.5.34(typescript@5.9.3)))(vue@3.5.34(typescript@5.9.3)): dependencies: debug: 4.4.3(supports-color@8.1.1) fast-glob: 3.3.3 - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) - vue: 3.5.33(typescript@5.9.3) - vue-router: 4.6.4(vue@3.5.33(typescript@5.9.3)) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vue: 3.5.34(typescript@5.9.3) + vue-router: 4.6.4(vue@3.5.34(typescript@5.9.3)) transitivePeerDependencies: - supports-color - vite@3.2.11(@types/node@25.6.0)(sass@1.99.0)(terser@5.46.1): + vite@3.2.11(@types/node@25.9.0)(sass@1.99.0)(terser@5.46.1): dependencies: esbuild: 0.15.18 postcss: 8.5.10 resolve: 1.22.11 rollup: 2.80.0 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 fsevents: 2.3.3 sass: 1.99.0 terser: 5.46.1 @@ -26367,7 +27467,7 @@ snapshots: terser: 5.46.1 yaml: 2.8.3 - vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3): + vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3): dependencies: esbuild: 0.27.4 fdir: 6.5.0(picomatch@4.0.4) @@ -26376,16 +27476,16 @@ snapshots: rollup: 4.59.0 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 fsevents: 2.3.3 jiti: 2.6.1 sass: 1.99.0 terser: 5.46.1 yaml: 2.8.3 - vitefu@0.2.5(vite@3.2.11(@types/node@25.6.0)(sass@1.99.0)(terser@5.46.1)): + vitefu@0.2.5(vite@3.2.11(@types/node@25.9.0)(sass@1.99.0)(terser@5.46.1)): optionalDependencies: - vite: 3.2.11(@types/node@25.6.0)(sass@1.99.0)(terser@5.46.1) + vite: 3.2.11(@types/node@25.9.0)(sass@1.99.0)(terser@5.46.1) vitest@4.1.5(@types/node@24.10.1)(jsdom@27.4.0(@noble/hashes@2.2.0))(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): dependencies: @@ -26415,15 +27515,15 @@ snapshots: transitivePeerDependencies: - msw - vitest@4.1.5(@types/node@25.6.0)(jsdom@27.4.0(@noble/hashes@2.2.0))(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): + vitest@4.1.6(@types/node@24.10.1)(jsdom@27.4.0(@noble/hashes@2.2.0))(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): dependencies: - '@vitest/expect': 4.1.5 - '@vitest/mocker': 4.1.5(vite@7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) - '@vitest/pretty-format': 4.1.5 - '@vitest/runner': 4.1.5 - '@vitest/snapshot': 4.1.5 - '@vitest/spy': 4.1.5 - '@vitest/utils': 4.1.5 + '@vitest/expect': 4.1.6 + '@vitest/mocker': 4.1.6(vite@7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + '@vitest/pretty-format': 4.1.6 + '@vitest/runner': 4.1.6 + '@vitest/snapshot': 4.1.6 + '@vitest/spy': 4.1.6 + '@vitest/utils': 4.1.6 es-module-lexer: 2.0.0 expect-type: 1.3.0 magic-string: 0.30.21 @@ -26432,13 +27532,41 @@ snapshots: picomatch: 4.0.4 std-env: 4.0.0 tinybench: 2.9.0 - tinyexec: 1.0.4 - tinyglobby: 0.2.15 + tinyexec: 1.1.1 + tinyglobby: 0.2.16 + tinyrainbow: 3.1.0 + vite: 7.3.2(@types/node@24.10.1)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 24.10.1 + jsdom: 27.4.0(@noble/hashes@2.2.0) + transitivePeerDependencies: + - msw + + vitest@4.1.6(@types/node@25.9.0)(jsdom@27.4.0(@noble/hashes@2.2.0))(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)): + dependencies: + '@vitest/expect': 4.1.6 + '@vitest/mocker': 4.1.6(vite@7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)) + '@vitest/pretty-format': 4.1.6 + '@vitest/runner': 4.1.6 + '@vitest/snapshot': 4.1.6 + '@vitest/spy': 4.1.6 + '@vitest/utils': 4.1.6 + es-module-lexer: 2.0.0 + expect-type: 1.3.0 + magic-string: 0.30.21 + obug: 2.1.1 + pathe: 2.0.3 + picomatch: 4.0.4 + std-env: 4.0.0 + tinybench: 2.9.0 + tinyexec: 1.1.1 + tinyglobby: 0.2.16 tinyrainbow: 3.1.0 - vite: 7.3.2(@types/node@25.6.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) + vite: 7.3.2(@types/node@25.9.0)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 25.6.0 + '@types/node': 25.9.0 jsdom: 27.4.0(@noble/hashes@2.2.0) transitivePeerDependencies: - msw @@ -26450,9 +27578,9 @@ snapshots: vscode-uri@3.1.0: {} - vue-demi@0.14.10(vue@3.5.33(typescript@5.9.3)): + vue-demi@0.14.10(vue@3.5.34(typescript@5.9.3)): dependencies: - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) vue-eslint-parser@10.4.0(eslint@9.39.2(jiti@2.6.1)): dependencies: @@ -26462,60 +27590,60 @@ snapshots: eslint-visitor-keys: 5.0.1 espree: 11.2.0 esquery: 1.7.0 - semver: 7.7.4 + semver: 7.8.0 transitivePeerDependencies: - supports-color - vue-i18n@11.4.0(vue@3.5.33(typescript@5.9.3)): + vue-i18n@11.4.0(vue@3.5.34(typescript@5.9.3)): dependencies: '@intlify/core-base': 11.4.0 '@intlify/devtools-types': 11.4.0 '@intlify/shared': 11.4.0 '@vue/devtools-api': 6.6.4 - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) - vue-json-pretty@2.6.0(vue@3.5.33(typescript@5.9.3)): + vue-json-pretty@2.6.0(vue@3.5.34(typescript@5.9.3)): dependencies: - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) - vue-pdf-embed@2.1.4(vue@3.5.33(typescript@5.9.3)): + vue-pdf-embed@2.1.4(vue@3.5.34(typescript@5.9.3)): dependencies: pdfjs-dist: 4.10.38 - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) vue-promise-modals@0.1.0(typescript@5.9.3): dependencies: - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) transitivePeerDependencies: - typescript - vue-router@4.6.4(vue@3.5.33(typescript@5.9.3)): + vue-router@4.6.4(vue@3.5.34(typescript@5.9.3)): dependencies: '@vue/devtools-api': 6.6.4 - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) vue-template-compiler@2.7.16: dependencies: de-indent: 1.0.2 he: 1.2.0 - vue-tippy@6.7.1(vue@3.5.33(typescript@5.9.3)): + vue-tippy@6.7.1(vue@3.5.34(typescript@5.9.3)): dependencies: tippy.js: 6.3.7 - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) vue-tsc@1.8.8(typescript@5.9.3): dependencies: '@vue/language-core': 1.8.8(typescript@5.9.3) '@vue/typescript': 1.8.8(typescript@5.9.3) - semver: 7.7.4 + semver: 7.8.0 typescript: 5.9.3 vue-tsc@2.1.6(typescript@5.9.3): dependencies: '@volar/typescript': 2.4.28 '@vue/language-core': 2.1.6(typescript@5.9.3) - semver: 7.7.4 + semver: 7.8.0 typescript: 5.9.3 vue-tsc@2.2.0(typescript@5.9.3): @@ -26524,20 +27652,20 @@ snapshots: '@vue/language-core': 2.2.0(typescript@5.9.3) typescript: 5.9.3 - vue@3.5.33(typescript@5.9.3): + vue@3.5.34(typescript@5.9.3): dependencies: - '@vue/compiler-dom': 3.5.33 - '@vue/compiler-sfc': 3.5.33 - '@vue/runtime-dom': 3.5.33 - '@vue/server-renderer': 3.5.33(vue@3.5.33(typescript@5.9.3)) - '@vue/shared': 3.5.33 + '@vue/compiler-dom': 3.5.34 + '@vue/compiler-sfc': 3.5.34 + '@vue/runtime-dom': 3.5.34 + '@vue/server-renderer': 3.5.34(vue@3.5.34(typescript@5.9.3)) + '@vue/shared': 3.5.34 optionalDependencies: typescript: 5.9.3 - vuedraggable-es@4.1.1(vue@3.5.33(typescript@5.9.3)): + vuedraggable-es@4.1.1(vue@3.5.34(typescript@5.9.3)): dependencies: sortablejs: 1.14.0 - vue: 3.5.33(typescript@5.9.3) + vue: 3.5.34(typescript@5.9.3) w3c-keyname@2.2.8: {} @@ -26706,7 +27834,7 @@ snapshots: with@7.0.2: dependencies: - '@babel/parser': 7.29.2 + '@babel/parser': 7.29.3 '@babel/types': 7.29.0 assert-never: 1.4.0 babel-walk: 3.0.0-canary-5 @@ -26776,6 +27904,8 @@ snapshots: workbox-core@7.4.0: {} + workbox-core@7.4.1: {} + workbox-expiration@7.4.0: dependencies: idb: 7.1.1 @@ -26831,6 +27961,11 @@ snapshots: '@types/trusted-types': 2.0.7 workbox-core: 7.4.0 + workbox-window@7.4.1: + dependencies: + '@types/trusted-types': 2.0.7 + workbox-core: 7.4.1 + workerpool@9.3.4: {} wrap-ansi@6.2.0: diff --git a/prod.Dockerfile b/prod.Dockerfile index 66ec5bcb787..eaae877ed2c 100644 --- a/prod.Dockerfile +++ b/prod.Dockerfile @@ -5,14 +5,14 @@ FROM alpine:3.23.4 AS go_builder RUN apk add --no-cache curl git openssh-client ARG TARGETARCH -ENV GOLANG_VERSION=1.26.2 +ENV GOLANG_VERSION=1.26.3 # Download Go tarball RUN case "${TARGETARCH}" in amd64) GOARCH=amd64 ;; arm64) GOARCH=arm64 ;; *) echo "Unsupported arch: ${TARGETARCH}" && exit 1 ;; esac && \ curl -fsSL "https://go.dev/dl/go${GOLANG_VERSION}.linux-${GOARCH}.tar.gz" -o go.tar.gz # Checksum verification of Go tarball RUN case "${TARGETARCH}" in \ - amd64) expected="990e6b4bbba816dc3ee129eaeaf4b42f17c2800b88a2166c265ac1a200262282" ;; \ - arm64) expected="c958a1fe1b361391db163a485e21f5f228142d6f8b584f6bef89b26f66dc5b23" ;; \ + amd64) expected="2b2cfc7148493da5e73981bffbf3353af381d5f93e789c82c79aff64962eb556" ;; \ + arm64) expected="9d89a3ea57d141c2b22d70083f2c8459ba3890f2d9e818e7e933b75614936565" ;; \ esac && \ actual=$(sha256sum go.tar.gz | cut -d' ' -f1) && \ [ "$actual" = "$expected" ] && \ @@ -30,30 +30,17 @@ ENV PATH="/usr/local/go/bin:${PATH}" \ # Build Caddy from the Go base FROM go_builder AS caddy_builder RUN mkdir -p /tmp/caddy-build && \ - curl -L -o /tmp/caddy-build/src.tar.gz https://github.com/caddyserver/caddy/releases/download/v2.11.2/caddy_2.11.2_src.tar.gz + curl -fsSL -o /tmp/caddy-build/src.tar.gz https://github.com/caddyserver/caddy/releases/download/v2.11.3/caddy_2.11.3_src.tar.gz # Checksum verification of caddy source -RUN expected="40cb9dc5e0b005bba635e830ba2354450248831fca3b58f5c49892a4747d0e76" && \ +RUN expected="ea407ab88e3d2b1fae216fbdeec98186dad09a22f0dd51c9859f398b7fc82486" && \ actual=$(sha256sum /tmp/caddy-build/src.tar.gz | cut -d' ' -f1) && \ [ "$actual" = "$expected" ] && \ echo "✅ Caddy Source Checksum OK" || \ (echo "❌ Caddy Source Checksum failed!" && exit 1) WORKDIR /tmp/caddy-build RUN tar -xzf /tmp/caddy-build/src.tar.gz && \ - # Fix CVE-2026-33186: upgrade google.golang.org/grpc to 1.79.3 (CRITICAL - gRPC-Go authorization bypass) - go get google.golang.org/grpc@v1.79.3 && \ - # Fix CVE-2026-30836 + CVE-2026-40097: upgrade github.com/smallstep/certificates to 0.30.0 (CRITICAL - unauthenticated cert issuance via SCEP) - go get github.com/smallstep/certificates@v0.30.0 && \ - # Fix CVE-2026-33816 + GHSA-j88v-2chj-qfwx: upgrade github.com/jackc/pgx/v5 to 5.9.2 (CRITICAL - memory-safety + SQL injection) - go get github.com/jackc/pgx/v5@v5.9.2 && \ - # Fix CVE-2026-34986: upgrade go-jose v3 and v4 (HIGH - DoS via crafted JWE) + # Fix CVE-2026-34986: upgrade go-jose v3 (HIGH - DoS via crafted JWE) go get github.com/go-jose/go-jose/v3@v3.0.5 && \ - go get github.com/go-jose/go-jose/v4@v4.1.4 && \ - # Fix CVE-2026-39883: upgrade go.opentelemetry.io/otel/sdk to 1.43.0 (HIGH - PATH hijacking) - go get go.opentelemetry.io/otel/sdk@v1.43.0 && \ - # Fix CVE-2026-39882: upgrade OpenTelemetry OTLP exporters (MEDIUM) - go get go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp@v0.19.0 && \ - go get go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp@v1.43.0 && \ - go get go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp@v1.43.0 && \ # Clean up any existing vendor directory and regenerate with updated deps rm -rf vendor && \ go mod tidy && \ @@ -84,9 +71,9 @@ RUN apk upgrade --no-cache && \ RUN mkdir -p /tmp/npm-install WORKDIR /tmp/npm-install # Download NPM tarball -RUN curl -fsSL https://registry.npmjs.org/npm/-/npm-11.13.0.tgz -o npm.tgz +RUN curl -fsSL https://registry.npmjs.org/npm/-/npm-11.14.1.tgz -o npm.tgz # Verify checksum -RUN expected="a4ffa1de3bf1c7f9d5e3dd24fe2921970bdb1589d647f4083eaaaab3be974b7e" \ +RUN expected="bddc8ec2a698d283674cf0a798ef444ba7332497f330dd166056281fcafaca7a" \ && actual=$(sha256sum npm.tgz | cut -d' ' -f1) \ && [ "$actual" = "$expected" ] \ && echo "✅ NPM Tarball Checksum OK" \ @@ -94,10 +81,16 @@ RUN expected="a4ffa1de3bf1c7f9d5e3dd24fe2921970bdb1589d647f4083eaaaab3be974b7e" # Install NPM from verified tarball and global packages RUN tar -xzf npm.tgz && \ cd package && \ - node bin/npm-cli.js install -g npm@11.13.0 && \ + node bin/npm-cli.js install -g /tmp/npm-install/npm.tgz && \ cd / && \ rm -rf /tmp/npm-install -RUN npm install -g pnpm@10.33.2 @import-meta-env/cli@0.7.4 +RUN mkdir -p /tmp/pnpm-install && cd /tmp/pnpm-install && \ + curl -fsSL https://registry.npmjs.org/pnpm/-/pnpm-10.33.4.tgz -o pnpm.tgz && \ + curl -fsSL https://registry.npmjs.org/@import-meta-env/cli/-/cli-0.7.4.tgz -o cli.tgz && \ + echo "8e70ddc6649b18bc3d895cf3a908c0291ea4c38039ad8722c47e018daf1e9cfc pnpm.tgz" | sha256sum -c - && \ + echo "9edada700b616b4224ba69ce713e68c36e22cb2548be9134dd3af00c164d8ca0 cli.tgz" | sha256sum -c - && \ + npm install -g ./pnpm.tgz ./cli.tgz && \ + cd / && rm -rf /tmp/pnpm-install # Fix CVE-2025-64756 by replacing vulnerable glob in @import-meta-env/cli (ships glob@11.0.2, fix requires >=11.1.0) RUN mkdir -p /tmp/glob-fix && \ @@ -134,6 +127,7 @@ RUN pnpm install -f --prefer-offline FROM base_builder AS backend_builder + WORKDIR /usr/src/app/packages/hoppscotch-backend ENV DATABASE_URL="postgresql://placeholder:placeholder@localhost:5432/placeholder" RUN pnpm exec prisma generate From 44f58d13c86ce3049645d6bb075a834315105bbe Mon Sep 17 00:00:00 2001 From: Nivedin <53208152+nivedin@users.noreply.github.com> Date: Fri, 22 May 2026 18:26:46 +0530 Subject: [PATCH 04/14] fix: stop secret variable values from leaking to backend (#6279) Co-authored-by: James George <25279263+jamesgeorge007@users.noreply.github.com> --- .../components/collections/ImportExport.vue | 51 +- .../collections/documentation/index.vue | 7 +- .../collections/graphql/Collection.vue | 3 + .../components/collections/graphql/Folder.vue | 3 + .../collections/graphql/ImportExport.vue | 20 +- .../src/components/collections/index.vue | 122 +-- .../src/components/environments/Add.vue | 3 +- .../components/environments/ImportExport.vue | 111 ++- .../src/components/environments/Selector.vue | 7 +- .../src/components/environments/index.vue | 39 +- .../components/environments/my/Details.vue | 54 +- .../components/environments/teams/Details.vue | 62 +- .../src/components/http/TestResult.vue | 5 +- .../src/components/http/test/TestResult.vue | 5 +- .../src/composables/useMockServer.ts | 11 +- .../src/helpers/RequestRunner.ts | 163 ++-- .../helpers/__tests__/globalEnvShape.spec.ts | 84 ++ .../helpers/__tests__/secretVariables.spec.ts | 773 ++++++++++++++++++ .../src/helpers/backend/helpers.ts | 21 +- .../src/helpers/collection/collection.ts | 8 +- .../helpers/curl/__tests__/curlparser.spec.js | 29 + .../src/helpers/curl/curlparser.ts | 1 + .../src/helpers/globalEnvShape.ts | 44 + .../import-export/export/environment.ts | 18 +- .../import-export/export/environments.ts | 7 +- .../import-export/export/gqlCollections.ts | 4 +- .../import-export/export/myCollections.ts | 4 +- .../import/__tests__/postmanEnv.spec.ts | 104 +++ .../helpers/import-export/import/postman.ts | 8 +- .../import-export/import/postmanEnv.ts | 8 +- .../helpers/mockServer/exampleCollection.ts | 5 + .../mockServer/exampleMockCollection.ts | 12 +- .../src/helpers/rest/default.ts | 1 + .../src/helpers/secretVariables.ts | 266 ++++++ .../src/newstore/collections.ts | 23 +- .../src/newstore/environments.ts | 30 +- .../hoppscotch-common/src/pages/import.vue | 14 +- .../current-environment-value.service.ts | 13 +- .../services/secret-environment.service.ts | 13 +- .../src/services/team-collection.service.ts | 40 + .../src/global-environment/index.ts | 4 +- .../desktop/gqlCollections.sync.ts | 12 +- .../src/platform/collections/desktop/sync.ts | 12 +- .../collections/web/gqlCollections.sync.ts | 12 +- .../src/platform/collections/web/import.ts | 166 +++- .../src/platform/collections/web/sync.ts | 12 +- .../src/platform/environments/desktop/api.ts | 12 +- .../platform/environments/desktop/index.ts | 33 +- .../src/platform/environments/desktop/sync.ts | 153 +++- .../src/platform/environments/web/api.ts | 12 +- .../src/platform/environments/web/index.ts | 33 +- .../src/platform/environments/web/sync.ts | 152 +++- 52 files changed, 2382 insertions(+), 427 deletions(-) create mode 100644 packages/hoppscotch-common/src/helpers/__tests__/globalEnvShape.spec.ts create mode 100644 packages/hoppscotch-common/src/helpers/__tests__/secretVariables.spec.ts create mode 100644 packages/hoppscotch-common/src/helpers/globalEnvShape.ts create mode 100644 packages/hoppscotch-common/src/helpers/import-export/import/__tests__/postmanEnv.spec.ts create mode 100644 packages/hoppscotch-common/src/helpers/secretVariables.ts diff --git a/packages/hoppscotch-common/src/components/collections/ImportExport.vue b/packages/hoppscotch-common/src/components/collections/ImportExport.vue index 485d2bc5fb8..056d1c1f5b5 100644 --- a/packages/hoppscotch-common/src/components/collections/ImportExport.vue +++ b/packages/hoppscotch-common/src/components/collections/ImportExport.vue @@ -35,6 +35,12 @@ import AllCollectionImport from "~/components/importExport/ImportExportSteps/All import { useI18n } from "~/composables/i18n" import { useToast } from "~/composables/toast" import { appendRESTCollections, restCollections$ } from "~/newstore/collections" +import { + ensureRefIds, + flushUnmatchedRefIdsFromTree, + populateLocalStoresFromCollectionTree, + stripCollectionTreeForStore, +} from "~/helpers/secretVariables" import IconInsomnia from "~icons/hopp/insomnia" import IconPostman from "~icons/hopp/postman" @@ -50,7 +56,10 @@ import { getTeamCollectionJSON } from "~/helpers/backend/helpers" import { platform } from "~/platform" -import { initializeDownloadFile } from "~/helpers/import-export/export" +import { + initializeDownloadFile, + stripRefIdReplacer, +} from "~/helpers/import-export/export" import { gistExporter } from "~/helpers/import-export/export/gist" import { myCollectionsExporter } from "~/helpers/import-export/export/myCollections" import { teamCollectionsExporter } from "~/helpers/import-export/export/teamCollections" @@ -121,7 +130,11 @@ const handleImportToStore = async (collections: HoppCollection[]) => { */ const importToPersonalWorkspace = (collections: HoppCollection[]) => { // Remove old id from the imported collection and folders and transform it to new collection format - const sanitizedCollections = collections.map(sanitizeCollection) + const sanitizedCollections = collections + .map(sanitizeCollection) + .map(ensureRefIds) + + sanitizedCollections.forEach(populateLocalStoresFromCollectionTree) if ( platform.sync.collections.importToPersonalWorkspace && @@ -134,14 +147,17 @@ const importToPersonalWorkspace = (collections: HoppCollection[]) => { ) } - appendRESTCollections(sanitizedCollections) + appendRESTCollections(sanitizedCollections.map(stripCollectionTreeForStore)) return E.right({ success: true }) } /** - * Import collections to teams workspace - * No need to sanitize the collections before importing to teams workspace because the BE handles this and add the new id to the collection and folders - * @param collections Collections to import + * Import collections to teams workspace. Stamps `_ref_id` and seeds the + * device-local secret stores under it; on the team-collection-added + * subscription, `TeamCollectionsService.addCollection` migrates entries + * from `_ref_id` to the backend-assigned `id`. Wire payload is stripped + * of secrets via `transformCollectionForImport`; secrets stay + * device-local per the team-isolation model. */ const importToTeamsWorkspace = async (collections: HoppCollection[]) => { if (!hasTeamWriteAccess.value || !selectedTeamID.value) { @@ -150,7 +166,10 @@ const importToTeamsWorkspace = async (collections: HoppCollection[]) => { }) } - const transformedCollection = collections.map((collection) => + const collectionsWithRefIds = collections.map(ensureRefIds) + collectionsWithRefIds.forEach(populateLocalStoresFromCollectionTree) + + const transformedCollection = collectionsWithRefIds.map((collection) => transformCollectionForImport(collection) ) @@ -159,11 +178,16 @@ const importToTeamsWorkspace = async (collections: HoppCollection[]) => { selectedTeamID.value )() - return E.isRight(res) - ? E.right({ success: true }) - : E.left({ - success: false, - }) + if (E.isLeft(res)) { + // Backend rejected — flush ONLY `_ref_id`-keyed entries we just + // seeded. `flushLocalStoresForCollectionTree` would also delete by + // `node.id`, which could be a live backend id from a same-workspace + // re-import and would wipe existing collections' in-memory secrets. + // Empty `keptRefIds` ⇒ every `_ref_id` in the tree is flushed. + flushUnmatchedRefIdsFromTree(collectionsWithRefIds, new Set()) + return E.left({ success: false }) + } + return E.right({ success: true }) } const emit = defineEmits<{ @@ -831,7 +855,8 @@ const getCollectionJSON = async () => { } if (props.collectionsType.type === "my-collections") { - return E.right(JSON.stringify(myCollections.value, null, 2)) + const stripped = myCollections.value.map(stripCollectionTreeForStore) + return E.right(JSON.stringify(stripped, stripRefIdReplacer, 2)) } return E.left("INVALID_SELECTED_TEAM_OR_INVALID_COLLECTION_TYPE") diff --git a/packages/hoppscotch-common/src/components/collections/documentation/index.vue b/packages/hoppscotch-common/src/components/collections/documentation/index.vue index c82ecbb1f05..6100f360f6e 100644 --- a/packages/hoppscotch-common/src/components/collections/documentation/index.vue +++ b/packages/hoppscotch-common/src/components/collections/documentation/index.vue @@ -270,6 +270,7 @@ import { import { updateTeamCollection } from "~/helpers/backend/mutations/TeamCollection" import { updateTeamRequest } from "~/helpers/backend/mutations/TeamRequest" +import { stripSecretVariableValuesForWire } from "~/helpers/secretVariables" import { CollectionDataProps, getSingleTeamCollectionJSON, @@ -735,7 +736,7 @@ const saveCollectionDocumentation = async () => { const data: CollectionDataProps = { auth: collection.auth || { authType: "inherit", authActive: true }, headers: collection.headers || [], - variables: collection.variables || [], + variables: stripSecretVariableValuesForWire(collection.variables || []), description: documentationDescription.value, preRequestScript: collection.preRequestScript || "", testScript: collection.testScript || "", @@ -831,7 +832,9 @@ const saveCollectionDocumentationById = async ( const data: CollectionDataProps = { auth: collectionData.auth || { authType: "inherit", authActive: true }, headers: collectionData.headers || [], - variables: collectionData.variables || [], + variables: stripSecretVariableValuesForWire( + collectionData.variables || [] + ), description: documentation, preRequestScript: collectionData.preRequestScript || "", testScript: collectionData.testScript || "", diff --git a/packages/hoppscotch-common/src/components/collections/graphql/Collection.vue b/packages/hoppscotch-common/src/components/collections/graphql/Collection.vue index df4d38b3672..14803af4914 100644 --- a/packages/hoppscotch-common/src/components/collections/graphql/Collection.vue +++ b/packages/hoppscotch-common/src/components/collections/graphql/Collection.vue @@ -250,6 +250,7 @@ import { useService } from "dioc/vue" import { computed, ref } from "vue" import { Picked } from "~/helpers/types/HoppPicked" import { removeGraphqlCollection } from "~/newstore/collections" +import { flushLocalStoresForCollectionTree } from "~/helpers/secretVariables" import { handleTokenValidation } from "~/helpers/handleTokenValidation" import { GQLTabService } from "~/services/tab/graphql" import IconCheckCircle from "~icons/lucide/check-circle" @@ -382,6 +383,8 @@ const removeCollection = async () => { tab.value.document.isDirty = true } + flushLocalStoresForCollectionTree(props.collection) + removeGraphqlCollection(props.collectionIndex, props.collection.id) toast.success(`${t("state.deleted")}`) } diff --git a/packages/hoppscotch-common/src/components/collections/graphql/Folder.vue b/packages/hoppscotch-common/src/components/collections/graphql/Folder.vue index a2cb4e381ac..2b710b144f2 100644 --- a/packages/hoppscotch-common/src/components/collections/graphql/Folder.vue +++ b/packages/hoppscotch-common/src/components/collections/graphql/Folder.vue @@ -235,6 +235,7 @@ import { computed, ref } from "vue" import { handleTokenValidation } from "~/helpers/handleTokenValidation" import { Picked } from "~/helpers/types/HoppPicked" import { removeGraphqlFolder } from "~/newstore/collections" +import { flushLocalStoresForCollectionTree } from "~/helpers/secretVariables" import { GQLTabService } from "~/services/tab/graphql" import IconCheckCircle from "~icons/lucide/check-circle" import IconCopy from "~icons/lucide/copy" @@ -345,6 +346,8 @@ const removeFolder = async () => { tab.value.document.isDirty = true } + flushLocalStoresForCollectionTree(props.folder) + removeGraphqlFolder(props.folderPath, props.folder.id) toast.success(t("state.deleted")) } diff --git a/packages/hoppscotch-common/src/components/collections/graphql/ImportExport.vue b/packages/hoppscotch-common/src/components/collections/graphql/ImportExport.vue index 08f8570422d..77ebdf16c42 100644 --- a/packages/hoppscotch-common/src/components/collections/graphql/ImportExport.vue +++ b/packages/hoppscotch-common/src/components/collections/graphql/ImportExport.vue @@ -35,6 +35,11 @@ import { gistExporter } from "~/helpers/import-export/export/gist" import { computed } from "vue" import { hoppGQLImporter } from "~/helpers/import-export/import/hopp" import { ReqType } from "~/helpers/backend/graphql" +import { + ensureRefIds, + populateLocalStoresFromCollectionTree, + stripCollectionTreeForStore, +} from "~/helpers/secretVariables" const t = useI18n() const toast = useToast() @@ -191,10 +196,8 @@ const GqlCollectionsGistExporter: ImporterOrExporter = { const accessToken = currentUser.value?.accessToken if (accessToken) { - const res = await gistExporter( - JSON.stringify(gqlCollections.value), - accessToken - ) + const stripped = gqlCollections.value.map(stripCollectionTreeForStore) + const res = await gistExporter(JSON.stringify(stripped), accessToken) if (E.isLeft(res)) { toast.error(t("export.failed")) @@ -233,17 +236,22 @@ const showImportFailedError = () => { } const handleImportToStore = (gqlCollections: HoppCollection[]) => { + const collectionsWithRefIds = gqlCollections.map(ensureRefIds) + collectionsWithRefIds.forEach(populateLocalStoresFromCollectionTree) + if ( platform.sync.collections.importToPersonalWorkspace && currentUser.value ) { return platform.sync.collections.importToPersonalWorkspace( - gqlCollections, + collectionsWithRefIds, ReqType.Gql ) } - appendGraphqlCollections(gqlCollections) + appendGraphqlCollections( + collectionsWithRefIds.map(stripCollectionTreeForStore) + ) toast.success(t("state.file_imported")) } diff --git a/packages/hoppscotch-common/src/components/collections/index.vue b/packages/hoppscotch-common/src/components/collections/index.vue index f9387c91fbe..88a964efa5b 100644 --- a/packages/hoppscotch-common/src/components/collections/index.vue +++ b/packages/hoppscotch-common/src/components/collections/index.vue @@ -399,6 +399,12 @@ import { CurrentValueService } from "~/services/current-environment-value.servic import { TeamCollectionsService } from "~/services/team-collection.service" import { SortOptions } from "~/helpers/backend/graphql" import { CurrentSortValuesService } from "~/services/current-sort.service" +import { + flushLocalStoresForCollectionTree, + flushLocalStoresForTeamCollectionTree, + stripCollectionTreeForStore, + stripSecretVariableValuesForWire, +} from "~/helpers/secretVariables" const t = useI18n() const toast = useToast() @@ -1992,15 +1998,8 @@ const onRemoveCollection = async () => { toast.success(t("state.deleted")) displayConfirmModal(false) - // delete the secret collection variables - // and current collection variables value if the collection is removed if (collectionToRemove) { - secretEnvironmentService.deleteSecretEnvironment( - collectionToRemove._ref_id ?? `${collectionIndex}` - ) - currentEnvironmentValueService.deleteEnvironment( - collectionToRemove._ref_id ?? `${collectionIndex}` - ) + flushLocalStoresForCollectionTree(collectionToRemove) } } else if (hasTeamWriteAccess.value) { const collectionID = editingCollectionID.value @@ -2015,12 +2014,20 @@ const onRemoveCollection = async () => { emit("select", null) } + // Capture the subtree BEFORE the mutation so the + // team-collection-removed subscription can't drop it from FE state + // before we flush nested entries. + const subtreeSnapshot = + teamCollectionService.findCollectionByID(collectionID) + removeTeamCollectionOrFolder(collectionID).then(() => { resetTeamRequestsContext() - // delete the secret collection variables - // and current collection variables value if the collection is removed - if (collectionID) { + if (subtreeSnapshot) { + flushLocalStoresForTeamCollectionTree(subtreeSnapshot) + } else if (collectionID) { + // Snapshot miss (already removed from tree). Flush at least the + // top-level id so the secret service doesn't leak this entry. secretEnvironmentService.deleteSecretEnvironment(collectionID) currentEnvironmentValueService.deleteEnvironment(collectionID) } @@ -2053,8 +2060,6 @@ const onRemoveFolder = async () => { emit("select", null) } - const folderIndex = pathToLastIndex(folderPath) - const folderToRemove = folderPath ? navigateToFolderWithIndexPath( restCollectionStore.value.state, @@ -2075,15 +2080,8 @@ const onRemoveFolder = async () => { toast.success(t("state.deleted")) displayConfirmModal(false) - // delete the secret collection variables - // and current collection variables value if the collection is removed if (folderToRemove) { - secretEnvironmentService.deleteSecretEnvironment( - folderToRemove.id ?? `${folderIndex}` - ) - currentEnvironmentValueService.deleteEnvironment( - folderToRemove.id ?? `${folderIndex}` - ) + flushLocalStoresForCollectionTree(folderToRemove) } } else if (hasTeamWriteAccess.value) { const collectionID = editingCollectionID.value @@ -2098,12 +2096,15 @@ const onRemoveFolder = async () => { emit("select", null) } + const subtreeSnapshot = + teamCollectionService.findCollectionByID(collectionID) + removeTeamCollectionOrFolder(collectionID).then(() => { resetTeamRequestsContext() - // delete the secret collection variables - // and current collection variables value if the collection is removed - if (collectionID) { + if (subtreeSnapshot) { + flushLocalStoresForTeamCollectionTree(subtreeSnapshot) + } else if (collectionID) { secretEnvironmentService.deleteSecretEnvironment(collectionID) currentEnvironmentValueService.deleteEnvironment(collectionID) } @@ -3155,7 +3156,11 @@ const initializeDownloadCollection = async ( */ const exportData = async (collection: HoppCollection | TeamCollection) => { if (collectionsType.value.type === "my-collections") { - const collectionJSON = JSON.stringify(collection, stripRefIdReplacer, 2) + const collectionJSON = JSON.stringify( + stripCollectionTreeForStore(collection as HoppCollection), + stripRefIdReplacer, + 2 + ) // Strip `export {};\n` from `testScript` and `preRequestScript` fields const cleanedCollectionJSON = @@ -3179,7 +3184,7 @@ const exportData = async (collection: HoppCollection | TeamCollection) => { async (coll) => { const hoppColl = teamCollToHoppRESTColl(coll) const collectionJSONString = JSON.stringify( - hoppColl, + stripCollectionTreeForStore(hoppColl), stripRefIdReplacer, 2 ) @@ -3235,6 +3240,26 @@ const getCurrentValue = ( )?.currentValue } +/** + * Restore both `initialValue` and `currentValue` for a secret variable from + * the local secret store. Both fields are blanked at the wire boundary + * before the variable is sent to the backend, so when the user reopens the + * Properties modal we re-populate from `secretEnvironmentService`. + * Returns null for non-secret variables (callers fall back to existing + * current-value lookup) or when the slot has no entry in the secret store. + */ +const getSecretValues = ( + isSecret: boolean, + varIndex: number, + collectionID: string +): { value: string; initialValue: string } | null => { + if (!isSecret) return null + return secretEnvironmentService.getSecretEnvironmentVariableValue( + collectionID, + varIndex + ) +} + const editProperties = async (payload: { collectionIndex: string collection: HoppCollection | TeamCollection @@ -3272,14 +3297,15 @@ const editProperties = async (payload: { const collectionVariables = pipe( (collection as HoppCollection).variables ?? [], A.mapWithIndex((index, e) => { + const storeID = (collection as HoppCollection)._ref_id ?? collectionId! + const stored = getSecretValues(e.secret, index, storeID) return { ...e, currentValue: - getCurrentValue( - e.secret, - index, - (collection as HoppCollection)._ref_id ?? collectionId! - ) ?? e.currentValue, + stored?.value ?? + getCurrentValue(e.secret, index, storeID) ?? + e.currentValue, + initialValue: stored?.initialValue ?? e.initialValue, } }) ) @@ -3333,10 +3359,14 @@ const editProperties = async (payload: { const collectionVariables = pipe( (data.variables ?? []) as HoppCollectionVariable[], A.mapWithIndex((index, e) => { + const stored = getSecretValues(e.secret, index, collectionId!) return { ...e, currentValue: - getCurrentValue(e.secret, index, collectionId!) ?? e.currentValue, + stored?.value ?? + getCurrentValue(e.secret, index, collectionId!) ?? + e.currentValue, + initialValue: stored?.initialValue ?? e.initialValue, } }) ) @@ -3399,6 +3429,7 @@ const setCollectionProperties = (newCollection: { ? O.some({ key: e.key, value: e.currentValue, + initialValue: e.initialValue, varIndex: i, }) : O.none @@ -3419,24 +3450,17 @@ const setCollectionProperties = (newCollection: { ) ) - secretEnvironmentService.addSecretEnvironment( - collection._ref_id ?? collectionId!, - secretVariables - ) + // Mirror the read-side keying in `editProperties`. + const storeKey = + collectionsType.value.type === "team-collections" + ? collectionId! + : (collection._ref_id ?? collectionId!) - currentEnvironmentValueService.addEnvironment( - collection._ref_id ?? collectionId!, - nonSecretVariables - ) + secretEnvironmentService.addSecretEnvironment(storeKey, secretVariables) - //set current value and secret values to empty string - collection.variables = pipe( - filteredVariables, - A.map((e) => ({ - ...e, - currentValue: "", - })) - ) + currentEnvironmentValueService.addEnvironment(storeKey, nonSecretVariables) + + collection.variables = stripSecretVariableValuesForWire(filteredVariables) } if (collectionsType.value.type === "my-collections") { @@ -3451,7 +3475,7 @@ const setCollectionProperties = (newCollection: { }) toast.success(t("collection.properties_updated")) } else if (hasTeamWriteAccess.value && collectionId) { - const data = { + const data: CollectionDataProps = { auth: collection.auth ?? { authType: "inherit", authActive: true, diff --git a/packages/hoppscotch-common/src/components/environments/Add.vue b/packages/hoppscotch-common/src/components/environments/Add.vue index 71dedb1da11..1a9ec22c80d 100644 --- a/packages/hoppscotch-common/src/components/environments/Add.vue +++ b/packages/hoppscotch-common/src/components/environments/Add.vue @@ -79,6 +79,7 @@ import { useToast } from "~/composables/toast" import { GQLError } from "~/helpers/backend/GQLClient" import { updateTeamEnvironment } from "~/helpers/backend/mutations/TeamEnvironment" import { getEnvActionErrorMessage } from "~/helpers/error-messages" +import { stripSecretVariableValuesForWire } from "~/helpers/secretVariables" import { setGlobalEnvVariables, updateEnvironment, @@ -205,7 +206,7 @@ const addEnvironment = async () => { await pipe( updateTeamEnvironment( - JSON.stringify(newVariables), + JSON.stringify(stripSecretVariableValuesForWire(newVariables)), scope.value.environment.id, scope.value.environment.environment.name ), diff --git a/packages/hoppscotch-common/src/components/environments/ImportExport.vue b/packages/hoppscotch-common/src/components/environments/ImportExport.vue index 7db641fa224..b1a168d5365 100644 --- a/packages/hoppscotch-common/src/components/environments/ImportExport.vue +++ b/packages/hoppscotch-common/src/components/environments/ImportExport.vue @@ -9,7 +9,12 @@ diff --git a/packages/hoppscotch-sh-admin/src/components/settings/SmtpConfiguration.vue b/packages/hoppscotch-sh-admin/src/components/settings/SmtpConfiguration.vue index 9da090f3e65..ad464844611 100644 --- a/packages/hoppscotch-sh-admin/src/components/settings/SmtpConfiguration.vue +++ b/packages/hoppscotch-sh-admin/src/components/settings/SmtpConfiguration.vue @@ -393,7 +393,7 @@ const fieldErrors = computed(() => { const getFieldError = (fieldKey: StringFieldKey) => fieldErrors.value[fieldKey]; watch(fieldErrors, (errors) => { - hasInputValidationFailed.value = Object.values(errors).some(Boolean); + hasInputValidationFailed.value.smtpUrl = Object.values(errors).some(Boolean); }); const LOGIN_KEYS: StringFieldKey[] = [ diff --git a/packages/hoppscotch-sh-admin/src/composables/useConfigHandler.ts b/packages/hoppscotch-sh-admin/src/composables/useConfigHandler.ts index 1eda5199564..47e14b4b5d8 100644 --- a/packages/hoppscotch-sh-admin/src/composables/useConfigHandler.ts +++ b/packages/hoppscotch-sh-admin/src/composables/useConfigHandler.ts @@ -27,6 +27,7 @@ import { MAIL_CONFIGS, MICROSOFT_CONFIGS, MOCK_SERVER_CONFIGS, + PROXY_URL_CONFIGS, ServerConfigs, TOKEN_VALIDATION_CONFIGS, UpdatedConfigs, @@ -212,6 +213,12 @@ export function useConfigHandler(updatedConfigs?: ServerConfigs) { ), }, }, + proxyUrlConfigs: { + name: 'proxy_app_url', + fields: { + proxy_app_url: getFieldValue(InfraConfigEnum.ProxyAppUrl), + }, + }, }; // Cloning the current configs to working configs @@ -286,6 +293,7 @@ export function useConfigHandler(updatedConfigs?: ServerConfigs) { config.mailConfigs, config.rateLimitConfigs, config.tokenConfigs, + config.proxyUrlConfigs, ]; const hasSectionWithEmptyFields = sections.some((section) => { @@ -336,6 +344,10 @@ export function useConfigHandler(updatedConfigs?: ServerConfigs) { if (section.name === 'rate_limit') return Object.values(section.fields).some(isNotValidNumber); + // Proxy URL section has no enabled toggle; ensure it isn't left empty + if (section.name === 'proxy_app_url') + return Object.values(section.fields).some(isFieldEmpty); + return ( section.enabled && Object.values(section.fields).some(isFieldEmpty) ); @@ -417,6 +429,11 @@ export function useConfigHandler(updatedConfigs?: ServerConfigs) { enabled: true, fields: updatedConfigs?.mockServerConfigs?.fields ?? {}, }, + { + config: PROXY_URL_CONFIGS, + enabled: true, + fields: updatedConfigs?.proxyUrlConfigs?.fields, + }, ]; const transformedConfigs: UpdatedConfigs[] = []; @@ -429,6 +446,10 @@ export function useConfigHandler(updatedConfigs?: ServerConfigs) { else if (enabled && fields) { const value = typeof fields === 'string' ? fields : String(fields[key]); + // BE rejects empty PROXY_APP_URL and would fail the whole batch. + // The form-level guard already blocks the save, but skip here too + // so a stray empty value can't blackhole unrelated settings. + if (name === InfraConfigEnum.ProxyAppUrl && !value.trim()) return; transformedConfigs.push({ name, value }); } }); diff --git a/packages/hoppscotch-sh-admin/src/helpers/configs.ts b/packages/hoppscotch-sh-admin/src/helpers/configs.ts index 14f5120442f..eb05938be59 100644 --- a/packages/hoppscotch-sh-admin/src/helpers/configs.ts +++ b/packages/hoppscotch-sh-admin/src/helpers/configs.ts @@ -1,8 +1,16 @@ import { ref } from 'vue'; import { InfraConfigEnum } from './backend/graphql'; +export type InputValidationStatus = { + proxyUrl: boolean; + smtpUrl: boolean; +}; + // Check if any input validation has failed -export const hasInputValidationFailed = ref(false); +export const hasInputValidationFailed = ref({ + proxyUrl: false, + smtpUrl: false, +}); export type SsoAuthProviders = 'google' | 'microsoft' | 'github'; @@ -101,6 +109,13 @@ export type ServerConfigs = { mock_server_wildcard_domain: string; }; }; + + proxyUrlConfigs: { + name: string; + fields: { + proxy_app_url: string; + }; + }; }; export type UpdatedConfigs = { @@ -325,6 +340,20 @@ export const MOCK_SERVER_CONFIGS: Config[] = [ }, ]; +export const PROXY_URL_CONFIGS: Config[] = [ + { + name: InfraConfigEnum.ProxyAppUrl, + key: 'proxy_app_url', + }, +]; + +// Mirrors the backend validateUrl regex (packages/hoppscotch-backend/src/utils.ts). +// Keep these in sync — the backend rejects PROXY_APP_URL values that don't match. +export const PROXY_URL_REGEX = /^(http|https):\/\/[^ "]+$/; + +export const isValidProxyUrl = (value: string): boolean => + PROXY_URL_REGEX.test(value); + export const ALL_CONFIGS = [ GOOGLE_CONFIGS, MICROSOFT_CONFIGS, @@ -336,4 +365,5 @@ export const ALL_CONFIGS = [ RATE_LIMIT_CONFIGS, TOKEN_VALIDATION_CONFIGS, MOCK_SERVER_CONFIGS, + PROXY_URL_CONFIGS, ]; diff --git a/packages/hoppscotch-sh-admin/src/pages/settings.vue b/packages/hoppscotch-sh-admin/src/pages/settings.vue index 2813f099043..8407d7bb28b 100644 --- a/packages/hoppscotch-sh-admin/src/pages/settings.vue +++ b/packages/hoppscotch-sh-admin/src/pages/settings.vue @@ -31,13 +31,18 @@ + + +
-
@@ -83,7 +88,15 @@ const showSaveChangesModal = ref(false); const initiateServerRestart = ref(false); // Tabs -type OptionTabs = 'auth' | 'smtp' | 'token' | 'miscellaneous' | 'rate-limit'; +type OptionTabs = + | 'auth' + | 'smtp' + | 'token' + | 'proxy' + | 'miscellaneous' + | 'rate-limit' + | 'mock'; + const selectedOptionTab = ref('auth'); // Obtain the current and working configs from the useConfigHandler composable @@ -102,12 +115,12 @@ const { const isConfigUpdated = computed(() => currentConfigs.value && workingConfigs.value ? !isEqual(currentConfigs.value, workingConfigs.value) - : false + : false, ); // Check if any of the fields in workingConfigs are empty const areAnyFieldsEmpty = computed(() => - workingConfigs.value ? AreAnyConfigFieldsEmpty(workingConfigs.value) : false + workingConfigs.value ? AreAnyConfigFieldsEmpty(workingConfigs.value) : false, ); const triggerSaveChangesModal = () => { @@ -119,7 +132,8 @@ const triggerSaveChangesModal = () => { return toast.error(t('configs.mail_configs.smtp_auth_incomplete')); } - if (hasInputValidationFailed.value) { + // Check if any of the input validations have failed + if (Object.values(hasInputValidationFailed.value).some(Boolean)) { return toast.error(t('configs.input_validation_error')); } showSaveChangesModal.value = true; From 5456b47c52e23e8c1a018a7c470153e989216cf9 Mon Sep 17 00:00:00 2001 From: Shreyas Date: Tue, 26 May 2026 00:37:49 +0530 Subject: [PATCH 07/14] feat(desktop): zoom level control in settings (#6358) Co-authored-by: James George <25279263+jamesgeorge007@users.noreply.github.com> --- packages/hoppscotch-common/locales/en.json | 9 +- packages/hoppscotch-common/package.json | 2 +- .../src/components/settings/Desktop.vue | 61 +++++++++++ .../src/composables/desktop-settings.ts | 38 ++++++- .../src/composables/desktop-zoom.ts | 66 +++++++++++ .../src/platform/desktop-settings.ts | 8 +- packages/hoppscotch-desktop/package.json | 2 +- .../tauri-plugin-appload/devenv.nix | 16 +-- .../tauri-plugin-appload/guest-js/index.ts | 7 ++ .../tauri-plugin-appload/src/commands.rs | 13 +++ .../tauri-plugin-appload/src/models.rs | 9 ++ .../hoppscotch-desktop/src-tauri/Cargo.lock | 2 +- .../hoppscotch-desktop/src-tauri/Cargo.toml | 2 +- .../src-tauri/capabilities/default.json | 1 + .../src/composables/useAppInitialization.ts | 33 +++++- packages/hoppscotch-desktop/src/main.ts | 7 ++ .../hoppscotch-desktop/src/views/Home.vue | 17 ++- packages/hoppscotch-selfhost-web/package.json | 2 +- packages/hoppscotch-selfhost-web/src/main.ts | 6 + pnpm-lock.yaml | 103 ++++++++++-------- 20 files changed, 336 insertions(+), 68 deletions(-) create mode 100644 packages/hoppscotch-common/src/composables/desktop-zoom.ts diff --git a/packages/hoppscotch-common/locales/en.json b/packages/hoppscotch-common/locales/en.json index e1a25f42468..3a8c2c917df 100644 --- a/packages/hoppscotch-common/locales/en.json +++ b/packages/hoppscotch-common/locales/en.json @@ -1289,7 +1289,8 @@ "delete_account": "Delete account", "delete_account_description": "Once you delete your account, all your data will be permanently deleted. This action cannot be undone.", "desktop": "Desktop", - "desktop_description": "Update behavior and keyboard handling for the Hoppscotch desktop app.", + "desktop_description": "Update behavior, keyboard handling, and display preferences for the Hoppscotch desktop app.", + "desktop_display": "Display", "desktop_keyboard": "Keyboard", "desktop_keyboard_strategy_label": "Match shortcuts by typed letter or physical position", "desktop_keyboard_strategy_description": "On non-QWERTY layouts, the same letter can come from different physical keys. The default works for most layouts; switch options if shortcuts don't fire as expected on yours.", @@ -1303,6 +1304,12 @@ "disable_encode_mode_tooltip": "Never encode the parameters in the request", "disable_update_checks": "Disable automatic update checks", "disable_update_checks_description": "Skip the update check at app startup. Use the button above to check on demand.", + "zoom_level": "Zoom level", + "zoom_level_description": "Scales the entire interface. Higher values make text and controls larger on high-resolution screens.", + "zoom_level_100": "100%", + "zoom_level_110": "110%", + "zoom_level_125": "125%", + "zoom_level_150": "150%", "enable_encode_mode_tooltip": "Always encode the parameters in the request", "enter_otp": "Enter Agent's code", "expand_navigation": "Expand navigation", diff --git a/packages/hoppscotch-common/package.json b/packages/hoppscotch-common/package.json index 66a1b2f41e4..66bea4446c1 100644 --- a/packages/hoppscotch-common/package.json +++ b/packages/hoppscotch-common/package.json @@ -40,7 +40,7 @@ "@hoppscotch/httpsnippet": "3.0.9", "@hoppscotch/js-sandbox": "workspace:^", "@hoppscotch/kernel": "workspace:^", - "@hoppscotch/plugin-appload": "github:CuriousCorrelation/tauri-plugin-appload#0d58d53be2bc75aeb5916bd0d77794fd209426af", + "@hoppscotch/plugin-appload": "github:CuriousCorrelation/tauri-plugin-appload#1d13dd1cfe6dde56398ea71dfec9e7bbb4376dbf", "@hoppscotch/ui": "0.2.5", "@hoppscotch/vue-toasted": "0.1.0", "@lezer/highlight": "1.2.1", diff --git a/packages/hoppscotch-common/src/components/settings/Desktop.vue b/packages/hoppscotch-common/src/components/settings/Desktop.vue index a7384e0b4b0..d09a2b50590 100644 --- a/packages/hoppscotch-common/src/components/settings/Desktop.vue +++ b/packages/hoppscotch-common/src/components/settings/Desktop.vue @@ -110,6 +110,35 @@ + +
+

+ {{ t("settings.desktop_display") }} +

+ + +
+ +
+ +
+

+ {{ t("settings.zoom_level_description") }} +

+
+
@@ -119,6 +148,7 @@ import { computed, onBeforeUnmount, ref, watch, type Component } from "vue" import { HoppButtonSecondary, HoppSmartRadio, + HoppSmartRadioGroup, HoppSmartToggle, } from "@hoppscotch/ui" import { useI18n } from "~/composables/i18n" @@ -342,6 +372,37 @@ const keyboardStrategyOptions = computed< async function setKeyboardStrategy(value: KeyboardStrategy): Promise { await desktopSettings.update("keyboardLayoutStrategy", value) } + +// Zoom presets as `{ value, label }` pairs, in the order the control +// renders. `value` is the string id the radio group emits, kept distinct +// from the stored float so the radio's `model-value` comparison never +// trips on float equality. The float-to-string mapping lives in one +// place (`zoomPresets`) and gets inverted by `setZoomPreset()` when the +// user picks an option. +const zoomPresets = computed(() => [ + { value: "1.0", label: t("settings.zoom_level_100") }, + { value: "1.1", label: t("settings.zoom_level_110") }, + { value: "1.25", label: t("settings.zoom_level_125") }, + { value: "1.5", label: t("settings.zoom_level_150") }, +]) + +// Maps the persisted float back to a radio id. Falls through to "1.0" +// for any value not in the preset set (a future schema migration could +// introduce values outside the shipped range, and the control reads as +// 100% rather than as no-selection in that case). +const selectedZoomPreset = computed(() => { + const stored = desktopSettings.settings.zoomLevel + const match = zoomPresets.value.find( + (preset) => parseFloat(preset.value) === stored + ) + return match?.value ?? "1.0" +}) + +async function setZoomPreset(value: string): Promise { + const factor = parseFloat(value) + if (Number.isNaN(factor)) return + await desktopSettings.update("zoomLevel", factor) +}