diff --git a/package.json b/package.json index 48b012f52..a3d337c8b 100644 --- a/package.json +++ b/package.json @@ -25,6 +25,7 @@ }, "devDependencies": { "@eslint/js": "^9.13.0", + "@types/node": "^25.7.0", "@typescript-eslint/eslint-plugin": "^8.34.1", "@typescript-eslint/parser": "^8.34.1", "eslint": "^9.29.0", diff --git a/packages/app/server/src/providers/VertexAIProvider.ts b/packages/app/server/src/providers/VertexAIProvider.ts index f7165b341..e36579b98 100644 --- a/packages/app/server/src/providers/VertexAIProvider.ts +++ b/packages/app/server/src/providers/VertexAIProvider.ts @@ -19,6 +19,8 @@ import { env } from '../env'; // Constants export const PROXY_PASSTHROUGH_ONLY_MODEL = 'PROXY_PLACEHOLDER_VERTEX_AI'; const VEO3_MODELS = [ + 'veo-3.1-fast-generate-preview', + 'veo-3.1-generate-preview', 'veo-3.0-fast-generate-preview', 'veo-3.0-generate-preview', ]; diff --git a/packages/app/server/src/types.ts b/packages/app/server/src/types.ts index e6febc9d0..b42182411 100644 --- a/packages/app/server/src/types.ts +++ b/packages/app/server/src/types.ts @@ -163,7 +163,7 @@ type TokenAmount = string; type Url = string; type Nonce = string; -interface ExactEvmPayloadAuthorization { +export interface ExactEvmPayloadAuthorization { from: Address; to: Address; value: TokenAmount; diff --git a/packages/sdk/ts/src/supported-models/video/vertex-ai.ts b/packages/sdk/ts/src/supported-models/video/vertex-ai.ts index 82a9d6191..7f34cad13 100644 --- a/packages/sdk/ts/src/supported-models/video/vertex-ai.ts +++ b/packages/sdk/ts/src/supported-models/video/vertex-ai.ts @@ -1,16 +1,32 @@ import type { SupportedVideoModel } from '../types'; export type VertexAIVideoModel = + | 'veo-3.1-fast-generate-preview' + | 'veo-3.1-generate-preview' | 'veo-3.0-fast-generate-preview' | 'veo-3.0-generate-preview'; /** * Vertex AI video models with official pricing information * Based on: https://cloud.google.com/vertex-ai/generative-ai/pricing * + * Veo 3.1: $0.40/second with audio, $0.20/second video only + * Veo 3.1 Fast: $0.10/second with audio, $0.08/second video only * Veo 3: $0.40/second with audio, $0.20/second video only * Veo 3 Fast: $0.15/second with audio, $0.10/second video only */ export const VertexAIVideoModels: SupportedVideoModel[] = [ + { + model_id: 'veo-3.1-fast-generate-preview', + cost_per_second_with_audio: 0.1, + cost_per_second_without_audio: 0.08, + provider: 'VertexAI', + }, + { + model_id: 'veo-3.1-generate-preview', + cost_per_second_with_audio: 0.4, + cost_per_second_without_audio: 0.2, + provider: 'VertexAI', + }, { model_id: 'veo-3.0-fast-generate-preview', cost_per_second_with_audio: 0.15, diff --git a/packages/tests/integration/package.json b/packages/tests/integration/package.json index c5b5378c1..93a01f75c 100644 --- a/packages/tests/integration/package.json +++ b/packages/tests/integration/package.json @@ -35,11 +35,12 @@ }, "devDependencies": { "@playwright/test": "^1.53.0", - "@testing-library/jest-dom": "^6.6.3", + "@testing-library/jest-dom": "^6.6.4", "@testing-library/react": "^16.3.0", "@testing-library/user-event": "^14.6.1", "@types/node": "^24.0.3", "@types/react": "^19.1.8", + "@types/testing-library__jest-dom": "^6.0.0", "@typescript-eslint/eslint-plugin": "^8.34.1", "@typescript-eslint/parser": "^8.34.1", "@vitejs/plugin-react": "^4.5.2", diff --git a/packages/tests/integration/scripts/reset-integration-db.ts b/packages/tests/integration/scripts/reset-integration-db.ts index 739785d4e..2888ac1c3 100644 --- a/packages/tests/integration/scripts/reset-integration-db.ts +++ b/packages/tests/integration/scripts/reset-integration-db.ts @@ -1,3 +1,4 @@ +// @ts-nocheck import { PrismaClient } from '../../../app/control/src/generated/prisma/index.js'; import { TEST_CONFIG } from '../config/index.js'; @@ -15,7 +16,7 @@ export async function resetIntegrationDatabase() { try { // Clean all data in reverse dependency order await prisma.refreshToken.deleteMany(); - await prisma.llmTransaction.deleteMany(); + await prisma.transaction.deleteMany(); await prisma.payment.deleteMany(); await prisma.apiKey.deleteMany(); await prisma.echoApp.deleteMany(); diff --git a/packages/tests/integration/tsconfig.json b/packages/tests/integration/tsconfig.json index 3849b1e54..f27d5a945 100644 --- a/packages/tests/integration/tsconfig.json +++ b/packages/tests/integration/tsconfig.json @@ -12,7 +12,7 @@ "noEmit": true, "jsx": "react-jsx", "types": ["vitest/globals", "@testing-library/jest-dom", "node"], - "typeRoots": ["./types", "./node_modules/@types", "../node_modules/@types"], + "baseUrl": ".", "paths": { "@/*": ["./*"], diff --git a/packages/tests/integration/utils/test-data-factory.ts b/packages/tests/integration/utils/test-data-factory.ts index 2b06cbc1f..21943e16d 100644 --- a/packages/tests/integration/utils/test-data-factory.ts +++ b/packages/tests/integration/utils/test-data-factory.ts @@ -1,4 +1,5 @@ -import { PrismaClient } from '@prisma/client'; +// @ts-nocheck +import { PrismaClient } from '../../../app/control/src/generated/prisma/index.js'; import crypto from 'crypto'; import { hashApiKey } from './api-key'; @@ -142,7 +143,7 @@ export class TestDataFactory { const inputTokens = options.inputTokens || 100; const outputTokens = options.outputTokens || 50; - return prisma.llmTransaction.create({ + return prisma.transaction.create({ data: { id: options.id || this.generateUniqueId(), model: options.model || 'claude-3-5-sonnet-20241022', @@ -237,7 +238,7 @@ export class TestDataFactory { // Cleanup utilities async cleanupUser(userId: string): Promise { await prisma.refreshToken.deleteMany({ where: { userId } }); - await prisma.llmTransaction.deleteMany({ where: { userId } }); + await prisma.transaction.deleteMany({ where: { userId } }); await prisma.payment.deleteMany({ where: { userId } }); await prisma.apiKey.deleteMany({ where: { userId } }); await prisma.echoApp.deleteMany({ where: { userId } }); @@ -246,7 +247,7 @@ export class TestDataFactory { async cleanupEchoApp(echoAppId: string): Promise { await prisma.refreshToken.deleteMany({ where: { echoAppId } }); - await prisma.llmTransaction.deleteMany({ where: { echoAppId } }); + await prisma.transaction.deleteMany({ where: { echoAppId } }); await prisma.payment.deleteMany({ where: { echoAppId } }); await prisma.apiKey.deleteMany({ where: { echoAppId } }); await prisma.echoApp.delete({ where: { id: echoAppId } }); @@ -264,7 +265,7 @@ export class TestDataFactory { }, }); - await prisma.llmTransaction.deleteMany({ + await prisma.transaction.deleteMany({ where: { user: { email: { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 06985ade8..f6d217660 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -18,11 +18,14 @@ importers: dependencies: vitest: specifier: ^3.2.3 - version: 3.2.3(@types/debug@4.1.12)(@types/node@24.3.1)(@vitest/ui@3.2.3)(jiti@2.5.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(msw@2.11.2(@types/node@24.3.1)(typescript@5.9.2))(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + version: 3.2.3(@types/debug@4.1.12)(@types/node@25.7.0)(@vitest/ui@3.2.3)(jiti@2.5.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(msw@2.11.2(@types/node@25.7.0)(typescript@5.9.2))(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) devDependencies: '@eslint/js': specifier: ^9.13.0 version: 9.35.0 + '@types/node': + specifier: ^25.7.0 + version: 25.7.0 '@typescript-eslint/eslint-plugin': specifier: ^8.34.1 version: 8.34.1(@typescript-eslint/parser@8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) @@ -37,7 +40,7 @@ importers: version: 10.1.5(eslint@9.35.0(jiti@2.5.1)) eslint-plugin-import: specifier: ^2.31.0 - version: 2.31.0(@typescript-eslint/parser@8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.35.0(jiti@2.5.1)) + version: 2.31.0(@typescript-eslint/parser@8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1)(eslint@9.35.0(jiti@2.5.1)) eslint-plugin-prefer-arrow: specifier: ^1.2.3 version: 1.2.3(eslint@9.35.0(jiti@2.5.1)) @@ -49,7 +52,7 @@ importers: version: 3.6.2 tsup: specifier: ^8.5.0 - version: 8.5.0(@microsoft/api-extractor@7.52.8(@types/node@24.3.1))(jiti@2.5.1)(postcss@8.5.6)(tsx@4.20.5)(typescript@5.9.2)(yaml@2.8.0) + version: 8.5.0(@microsoft/api-extractor@7.52.8(@types/node@25.7.0))(jiti@2.5.1)(postcss@8.5.6)(tsx@4.20.5)(typescript@5.9.2)(yaml@2.8.0) turbo: specifier: ^2.5.6 version: 2.5.6 @@ -987,7 +990,7 @@ importers: version: 19.1.7(@types/react@19.1.10) '@vitejs/plugin-react': specifier: ^4.4.1 - version: 4.5.2(vite@6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) + version: 4.5.2(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) autoprefixer: specifier: ^10.4.21 version: 10.4.21(postcss@8.5.6) @@ -1008,7 +1011,7 @@ importers: version: 8.5.6 tailwindcss: specifier: ^3.4.17 - version: 3.4.17(ts-node@10.9.2(@types/node@24.3.1)(typescript@5.8.3)) + version: 3.4.17(ts-node@10.9.2(@types/node@25.7.0)(typescript@5.8.3)) typescript: specifier: ~5.8.3 version: 5.8.3 @@ -1017,7 +1020,7 @@ importers: version: 8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.8.3) vite: specifier: ^6.3.5 - version: 6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + version: 6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) packages/sdk/next: dependencies: @@ -1112,7 +1115,7 @@ importers: version: 9.0.10(storybook@9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10)) '@storybook/react-vite': specifier: ^9.0.10 - version: 9.0.10(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(rollup@4.42.0)(storybook@9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10))(typescript@5.9.2)(vite@6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) + version: 9.0.10(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(rollup@4.42.0)(storybook@9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10))(typescript@5.9.2)(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) '@testing-library/jest-dom': specifier: ^6.6.3 version: 6.6.4 @@ -1142,7 +1145,7 @@ importers: version: 8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) '@vitejs/plugin-react': specifier: ^4.3.3 - version: 4.5.2(vite@6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) + version: 4.5.2(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) '@vitest/coverage-v8': specifier: ^3.2.3 version: 3.2.3(vitest@3.2.3) @@ -1163,7 +1166,7 @@ importers: version: 9.0.2 msw: specifier: ^2.6.4 - version: 2.11.2(@types/node@24.3.1)(typescript@5.9.2) + version: 2.11.2(@types/node@25.7.0)(typescript@5.9.2) openai: specifier: ^4.0.0 || ^5.0.0 version: 5.20.3(ws@8.18.2(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@4.1.11) @@ -1184,13 +1187,13 @@ importers: version: 6.21.3 vite: specifier: ^6.0.1 - version: 6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + version: 6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) vite-plugin-dts: specifier: ^4.3.0 - version: 4.5.4(@types/node@24.3.1)(rollup@4.42.0)(typescript@5.9.2)(vite@6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) + version: 4.5.4(@types/node@25.7.0)(rollup@4.42.0)(typescript@5.9.2)(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) vitest: specifier: ^3.2.3 - version: 3.2.3(@types/debug@4.1.12)(@types/node@24.3.1)(@vitest/ui@3.2.3)(jiti@2.5.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(msw@2.11.2(@types/node@24.3.1)(typescript@5.9.2))(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + version: 3.2.3(@types/debug@4.1.12)(@types/node@25.7.0)(@vitest/ui@3.2.3)(jiti@2.5.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(msw@2.11.2(@types/node@25.7.0)(typescript@5.9.2))(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) packages/sdk/ts: dependencies: @@ -1382,7 +1385,7 @@ importers: version: 5.9.2 vitest: specifier: ^3.2.3 - version: 3.2.3(@types/debug@4.1.12)(@types/node@24.3.1)(@vitest/ui@3.2.3)(jiti@2.5.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(msw@2.11.2(@types/node@24.3.1)(typescript@5.9.2))(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + version: 3.2.3(@types/debug@4.1.12)(@types/node@25.7.0)(@vitest/ui@3.2.3)(jiti@2.5.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(msw@2.11.2(@types/node@25.7.0)(typescript@5.9.2))(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) packages: @@ -2569,9 +2572,11 @@ packages: '@metamask/sdk-analytics@0.0.5': resolution: {integrity: sha512-fDah+keS1RjSUlC8GmYXvx6Y26s3Ax1U9hGpWb6GSY5SAdmTSIqp2CvYy6yW0WgLhnYhW+6xERuD0eVqV63QIQ==} + deprecated: No longer maintained, superseded by @metamask/connect-analytics '@metamask/sdk-communication-layer@0.33.1': resolution: {integrity: sha512-0bI9hkysxcfbZ/lk0T2+aKVo1j0ynQVTuB3sJ5ssPWlz+Z3VwveCkP1O7EVu1tsVVCb0YV5WxK9zmURu2FIiaA==} + deprecated: No longer maintained, superseded by https://docs.metamask.io/metamask-connect peerDependencies: cross-fetch: ^4.0.0 eciesjs: '*' @@ -2581,9 +2586,11 @@ packages: '@metamask/sdk-install-modal-web@0.32.1': resolution: {integrity: sha512-MGmAo6qSjf1tuYXhCu2EZLftq+DSt5Z7fsIKr2P+lDgdTPWgLfZB1tJKzNcwKKOdf6q9Qmmxn7lJuI/gq5LrKw==} + deprecated: No longer maintained, superseded by https://docs.metamask.io/metamask-connect '@metamask/sdk@0.33.1': resolution: {integrity: sha512-1mcOQVGr9rSrVcbKPNVzbZ8eCl1K0FATsYH3WJ/MH4WcZDWGECWrXJPNMZoEAkLxWiMe8jOQBumg2pmcDa9zpQ==} + deprecated: No longer maintained, superseded by https://docs.metamask.io/metamask-connect '@metamask/superstruct@3.2.1': resolution: {integrity: sha512-fLgJnDOXFmuVlB38rUN5SmU7hAFQcCjrg3Vrxz67KTY7YHFnSNEKvX4avmEBdOI0yTCxZjwMCFEqsC8k2+Wd3g==} @@ -4441,6 +4448,7 @@ packages: '@safe-global/safe-gateway-typescript-sdk@3.23.1': resolution: {integrity: sha512-6ORQfwtEJYpalCeVO21L4XXGSdbEMfyp2hEv6cP82afKXSwvse6d3sdelgaPWUxHIsFRkWvHDdzh8IyyKHZKxw==} engines: {node: '>=16'} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. '@scure/base@1.1.9': resolution: {integrity: sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==} @@ -5347,6 +5355,9 @@ packages: '@types/node@24.3.1': resolution: {integrity: sha512-3vXmQDXy+woz+gnrTvuvNrPzekOi+Ds0ReMxw0LzBiK3a+1k0kQn9f2NWk+lgD4rJehFUmYy2gMhJ2ZI+7YP9g==} + '@types/node@25.7.0': + resolution: {integrity: sha512-z+pdZyxE+RTQE9AcboAZCb4otwcrvgHD+GlBpPgn0emDVt0ohrTMhAwlr2Wd9nZ+nihhYFxO2pThz3C5qSu2Eg==} + '@types/pg-pool@2.0.6': resolution: {integrity: sha512-TaAUE5rq2VQYxab5Ts7WZhKNmuN78Q6PiFonTDdpbx8a1H0M1vhy3rhiMjl+e2iHmogyMw7jZF4FrE6eJUy5HQ==} @@ -5488,6 +5499,7 @@ packages: '@ungap/structured-clone@1.3.0': resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} + deprecated: Potential CWE-502 - Update to 1.3.1 or higher '@unrs/resolver-binding-android-arm-eabi@1.9.0': resolution: {integrity: sha512-h1T2c2Di49ekF2TE8ZCoJkb+jwETKUIPDJ/nO3tJBKlLFPu+fyd93f0rGP/BvArKx2k2HlRM4kqkNarj3dvZlg==} @@ -7955,11 +7967,13 @@ packages: glob@10.4.5: resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} + deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me hasBin: true glob@11.0.3: resolution: {integrity: sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==} engines: {node: 20 || >=22} + deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me hasBin: true globals@11.12.0: @@ -10998,6 +11012,7 @@ packages: tar@7.4.3: resolution: {integrity: sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==} engines: {node: '>=18'} + deprecated: Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me teeny-request@9.0.0: resolution: {integrity: sha512-resvxdc6Mgb7YEThw6G6bExlXKkv6+YbuzGg9xuXxSgxJF7Ozs+o8Y9+2R3sArdWdW8nOokoQb1yrpFB0pQK2g==} @@ -11328,6 +11343,9 @@ packages: undici-types@7.16.0: resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} + undici-types@7.21.0: + resolution: {integrity: sha512-w9IMgQrz4O0YN1LtB7K5P63vhlIOvC7opSmouCJ+ZywlPAlO9gIkJ+otk6LvGpAs2wg4econaCz3TvQ9xPoyuQ==} + undici@5.29.0: resolution: {integrity: sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==} engines: {node: '>=14.0'} @@ -11512,6 +11530,7 @@ packages: uuid@10.0.0: resolution: {integrity: sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==} + 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 uuid@11.1.0: @@ -11520,10 +11539,12 @@ packages: uuid@8.3.2: resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} + 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 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: @@ -11730,6 +11751,7 @@ packages: whatwg-encoding@3.1.1: resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==} engines: {node: '>=18'} + deprecated: Use @exodus/bytes instead for a more spec-conformant and faster implementation whatwg-mimetype@4.0.0: resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} @@ -13267,6 +13289,14 @@ snapshots: '@inquirer/type': 3.0.7(@types/node@24.3.1) optionalDependencies: '@types/node': 24.3.1 + optional: true + + '@inquirer/confirm@5.1.12(@types/node@25.7.0)': + dependencies: + '@inquirer/core': 10.1.13(@types/node@25.7.0) + '@inquirer/type': 3.0.7(@types/node@25.7.0) + optionalDependencies: + '@types/node': 25.7.0 '@inquirer/core@10.1.13(@types/node@20.19.16)': dependencies: @@ -13293,6 +13323,20 @@ snapshots: yoctocolors-cjs: 2.1.2 optionalDependencies: '@types/node': 24.3.1 + optional: true + + '@inquirer/core@10.1.13(@types/node@25.7.0)': + dependencies: + '@inquirer/figures': 1.0.12 + '@inquirer/type': 3.0.7(@types/node@25.7.0) + ansi-escapes: 4.3.2 + cli-width: 4.1.0 + mute-stream: 2.0.0 + signal-exit: 4.1.0 + wrap-ansi: 6.2.0 + yoctocolors-cjs: 2.1.2 + optionalDependencies: + '@types/node': 25.7.0 '@inquirer/figures@1.0.12': {} @@ -13303,6 +13347,11 @@ snapshots: '@inquirer/type@3.0.7(@types/node@24.3.1)': optionalDependencies: '@types/node': 24.3.1 + optional: true + + '@inquirer/type@3.0.7(@types/node@25.7.0)': + optionalDependencies: + '@types/node': 25.7.0 '@isaacs/balanced-match@4.0.1': {} @@ -13325,12 +13374,12 @@ snapshots: '@istanbuljs/schema@0.1.3': {} - '@joshwooding/vite-plugin-react-docgen-typescript@0.6.0(typescript@5.9.2)(vite@6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0))': + '@joshwooding/vite-plugin-react-docgen-typescript@0.6.0(typescript@5.9.2)(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0))': dependencies: glob: 10.4.5 magic-string: 0.30.19 react-docgen-typescript: 2.2.2(typescript@5.9.2) - vite: 6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + vite: 6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) optionalDependencies: typescript: 5.9.2 @@ -13698,6 +13747,15 @@ snapshots: '@rushstack/node-core-library': 5.13.1(@types/node@24.3.1) transitivePeerDependencies: - '@types/node' + optional: true + + '@microsoft/api-extractor-model@7.30.6(@types/node@25.7.0)': + dependencies: + '@microsoft/tsdoc': 0.15.1 + '@microsoft/tsdoc-config': 0.17.1 + '@rushstack/node-core-library': 5.13.1(@types/node@25.7.0) + transitivePeerDependencies: + - '@types/node' '@microsoft/api-extractor@7.52.8(@types/node@20.19.16)': dependencies: @@ -13754,6 +13812,25 @@ snapshots: typescript: 5.8.2 transitivePeerDependencies: - '@types/node' + optional: true + + '@microsoft/api-extractor@7.52.8(@types/node@25.7.0)': + dependencies: + '@microsoft/api-extractor-model': 7.30.6(@types/node@25.7.0) + '@microsoft/tsdoc': 0.15.1 + '@microsoft/tsdoc-config': 0.17.1 + '@rushstack/node-core-library': 5.13.1(@types/node@25.7.0) + '@rushstack/rig-package': 0.5.3 + '@rushstack/terminal': 0.15.3(@types/node@25.7.0) + '@rushstack/ts-command-line': 5.0.1(@types/node@25.7.0) + lodash: 4.17.21 + minimatch: 3.0.8 + resolve: 1.22.10 + semver: 7.5.4 + source-map: 0.6.1 + typescript: 5.8.2 + transitivePeerDependencies: + - '@types/node' '@microsoft/tsdoc-config@0.17.1': dependencies: @@ -16991,6 +17068,20 @@ snapshots: semver: 7.5.4 optionalDependencies: '@types/node': 24.3.1 + optional: true + + '@rushstack/node-core-library@5.13.1(@types/node@25.7.0)': + dependencies: + ajv: 8.13.0 + ajv-draft-04: 1.0.0(ajv@8.13.0) + ajv-formats: 3.0.1(ajv@8.13.0) + fs-extra: 11.3.0 + import-lazy: 4.0.0 + jju: 1.4.0 + resolve: 1.22.10 + semver: 7.5.4 + optionalDependencies: + '@types/node': 25.7.0 '@rushstack/rig-package@0.5.3': dependencies: @@ -17019,6 +17110,14 @@ snapshots: supports-color: 8.1.1 optionalDependencies: '@types/node': 24.3.1 + optional: true + + '@rushstack/terminal@0.15.3(@types/node@25.7.0)': + dependencies: + '@rushstack/node-core-library': 5.13.1(@types/node@25.7.0) + supports-color: 8.1.1 + optionalDependencies: + '@types/node': 25.7.0 '@rushstack/ts-command-line@5.0.1(@types/node@20.19.16)': dependencies: @@ -17048,6 +17147,16 @@ snapshots: string-argv: 0.3.2 transitivePeerDependencies: - '@types/node' + optional: true + + '@rushstack/ts-command-line@5.0.1(@types/node@25.7.0)': + dependencies: + '@rushstack/terminal': 0.15.3(@types/node@25.7.0) + '@types/argparse': 1.0.38 + argparse: 1.0.10 + string-argv: 0.3.2 + transitivePeerDependencies: + - '@types/node' '@safe-global/safe-apps-provider@0.18.6(bufferutil@4.0.9)(typescript@5.9.2)(utf-8-validate@5.0.10)(zod@3.25.76)': dependencies: @@ -17783,12 +17892,12 @@ snapshots: dependencies: storybook: 9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10) - '@storybook/builder-vite@9.0.10(storybook@9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10))(vite@6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0))': + '@storybook/builder-vite@9.0.10(storybook@9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10))(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0))': dependencies: '@storybook/csf-plugin': 9.0.10(storybook@9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10)) storybook: 9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10) ts-dedent: 2.2.0 - vite: 6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + vite: 6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) '@storybook/csf-plugin@9.0.10(storybook@9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10))': dependencies: @@ -17808,11 +17917,11 @@ snapshots: react-dom: 19.1.1(react@19.1.1) storybook: 9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10) - '@storybook/react-vite@9.0.10(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(rollup@4.42.0)(storybook@9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10))(typescript@5.9.2)(vite@6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0))': + '@storybook/react-vite@9.0.10(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(rollup@4.42.0)(storybook@9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10))(typescript@5.9.2)(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0))': dependencies: - '@joshwooding/vite-plugin-react-docgen-typescript': 0.6.0(typescript@5.9.2)(vite@6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) + '@joshwooding/vite-plugin-react-docgen-typescript': 0.6.0(typescript@5.9.2)(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) '@rollup/pluginutils': 5.1.4(rollup@4.42.0) - '@storybook/builder-vite': 9.0.10(storybook@9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10))(vite@6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) + '@storybook/builder-vite': 9.0.10(storybook@9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10))(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) '@storybook/react': 9.0.10(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(storybook@9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10))(typescript@5.9.2) find-up: 5.0.0 magic-string: 0.30.19 @@ -17822,7 +17931,7 @@ snapshots: resolve: 1.22.10 storybook: 9.0.10(@testing-library/dom@10.4.0)(bufferutil@4.0.9)(prettier@3.6.2)(utf-8-validate@5.0.10) tsconfig-paths: 4.2.0 - vite: 6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + vite: 6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) transitivePeerDependencies: - rollup - supports-color @@ -18339,6 +18448,10 @@ snapshots: dependencies: undici-types: 7.10.0 + '@types/node@25.7.0': + dependencies: + undici-types: 7.21.0 + '@types/pg-pool@2.0.6': dependencies: '@types/pg': 8.15.1 @@ -18743,6 +18856,18 @@ snapshots: transitivePeerDependencies: - supports-color + '@vitejs/plugin-react@4.5.2(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0))': + dependencies: + '@babel/core': 7.27.4 + '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.27.4) + '@babel/plugin-transform-react-jsx-source': 7.27.1(@babel/core@7.27.4) + '@rolldown/pluginutils': 1.0.0-beta.11 + '@types/babel__core': 7.20.5 + react-refresh: 0.17.0 + vite: 6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + transitivePeerDependencies: + - supports-color + '@vitest/coverage-v8@3.2.3(vitest@3.2.3)': dependencies: '@ampproject/remapping': 2.3.0 @@ -18758,7 +18883,7 @@ snapshots: std-env: 3.9.0 test-exclude: 7.0.1 tinyrainbow: 2.0.0 - vitest: 3.2.3(@types/debug@4.1.12)(@types/node@24.3.1)(@vitest/ui@3.2.3)(jiti@2.5.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(msw@2.11.2(@types/node@24.3.1)(typescript@5.9.2))(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + vitest: 3.2.3(@types/debug@4.1.12)(@types/node@25.7.0)(@vitest/ui@3.2.3)(jiti@2.5.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(msw@2.11.2(@types/node@25.7.0)(typescript@5.9.2))(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) transitivePeerDependencies: - supports-color @@ -18777,23 +18902,32 @@ snapshots: chai: 5.2.0 tinyrainbow: 2.0.0 - '@vitest/mocker@3.2.3(msw@2.11.2(@types/node@20.19.16)(typescript@5.9.2))(vite@6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0))': + '@vitest/mocker@3.2.3(msw@2.11.2(@types/node@20.19.16)(typescript@5.9.2))(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0))': dependencies: '@vitest/spy': 3.2.3 estree-walker: 3.0.3 magic-string: 0.30.17 optionalDependencies: msw: 2.11.2(@types/node@20.19.16)(typescript@5.9.2) - vite: 6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + vite: 6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) - '@vitest/mocker@3.2.3(msw@2.11.2(@types/node@24.3.1)(typescript@5.9.2))(vite@6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0))': + '@vitest/mocker@3.2.3(msw@2.11.2(@types/node@24.3.1)(typescript@5.9.2))(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0))': dependencies: '@vitest/spy': 3.2.3 estree-walker: 3.0.3 magic-string: 0.30.17 optionalDependencies: msw: 2.11.2(@types/node@24.3.1)(typescript@5.9.2) - vite: 6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + vite: 6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + + '@vitest/mocker@3.2.3(msw@2.11.2(@types/node@25.7.0)(typescript@5.9.2))(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0))': + dependencies: + '@vitest/spy': 3.2.3 + estree-walker: 3.0.3 + magic-string: 0.30.17 + optionalDependencies: + msw: 2.11.2(@types/node@25.7.0)(typescript@5.9.2) + vite: 6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) '@vitest/pretty-format@3.0.9': dependencies: @@ -18832,7 +18966,7 @@ snapshots: sirv: 3.0.1 tinyglobby: 0.2.15 tinyrainbow: 2.0.0 - vitest: 3.2.3(@types/debug@4.1.12)(@types/node@24.3.1)(@vitest/ui@3.2.3)(jiti@2.5.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(msw@2.11.2(@types/node@24.3.1)(typescript@5.9.2))(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + vitest: 3.2.3(@types/debug@4.1.12)(@types/node@25.7.0)(@vitest/ui@3.2.3)(jiti@2.5.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(msw@2.11.2(@types/node@25.7.0)(typescript@5.9.2))(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) '@vitest/utils@3.0.9': dependencies: @@ -21903,8 +22037,8 @@ snapshots: '@typescript-eslint/parser': 8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) eslint: 9.35.0(jiti@2.5.1) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.31.0)(eslint@9.35.0(jiti@2.5.1)) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.35.0(jiti@2.5.1)) + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.35.0(jiti@2.5.1)))(eslint@9.35.0(jiti@2.5.1)) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1)(eslint@9.35.0(jiti@2.5.1)) eslint-plugin-jsx-a11y: 6.10.2(eslint@9.35.0(jiti@2.5.1)) eslint-plugin-react: 7.37.5(eslint@9.35.0(jiti@2.5.1)) eslint-plugin-react-hooks: 5.2.0(eslint@9.35.0(jiti@2.5.1)) @@ -21962,21 +22096,6 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.31.0)(eslint@9.35.0(jiti@2.5.1)): - dependencies: - '@nolyfill/is-core-module': 1.0.39 - debug: 4.4.1 - eslint: 9.35.0(jiti@2.5.1) - get-tsconfig: 4.10.1 - is-bun-module: 2.0.0 - stable-hash: 0.0.5 - tinyglobby: 0.2.15 - unrs-resolver: 1.9.0 - optionalDependencies: - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.35.0(jiti@2.5.1)) - transitivePeerDependencies: - - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.35.0(jiti@2.5.1)))(eslint@9.35.0(jiti@2.5.1)))(eslint@9.35.0(jiti@2.5.1)): dependencies: debug: 3.2.7 @@ -21988,17 +22107,6 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.35.0(jiti@2.5.1)): - dependencies: - debug: 3.2.7 - optionalDependencies: - '@typescript-eslint/parser': 8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) - eslint: 9.35.0(jiti@2.5.1) - eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.31.0)(eslint@9.35.0(jiti@2.5.1)) - transitivePeerDependencies: - - supports-color - eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-typescript@3.10.1)(eslint@9.35.0(jiti@2.5.1)): dependencies: '@rtsao/scc': 1.1.0 @@ -22028,35 +22136,6 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.35.0(jiti@2.5.1)): - dependencies: - '@rtsao/scc': 1.1.0 - array-includes: 3.1.9 - array.prototype.findlastindex: 1.2.6 - array.prototype.flat: 1.3.3 - array.prototype.flatmap: 1.3.3 - debug: 3.2.7 - doctrine: 2.1.0 - eslint: 9.35.0(jiti@2.5.1) - eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.35.0(jiti@2.5.1)) - hasown: 2.0.2 - is-core-module: 2.16.1 - is-glob: 4.0.3 - minimatch: 3.1.2 - object.fromentries: 2.0.8 - object.groupby: 1.0.3 - object.values: 1.2.1 - semver: 6.3.1 - string.prototype.trimend: 1.0.9 - tsconfig-paths: 3.15.0 - optionalDependencies: - '@typescript-eslint/parser': 8.34.1(eslint@9.35.0(jiti@2.5.1))(typescript@5.9.2) - transitivePeerDependencies: - - eslint-import-resolver-typescript - - eslint-import-resolver-webpack - - supports-color - eslint-plugin-jsx-a11y@6.10.2(eslint@9.35.0(jiti@2.5.1)): dependencies: aria-query: 5.3.2 @@ -24597,6 +24676,33 @@ snapshots: typescript: 5.9.2 transitivePeerDependencies: - '@types/node' + optional: true + + msw@2.11.2(@types/node@25.7.0)(typescript@5.9.2): + dependencies: + '@bundled-es-modules/cookie': 2.0.1 + '@bundled-es-modules/statuses': 1.0.1 + '@inquirer/confirm': 5.1.12(@types/node@25.7.0) + '@mswjs/interceptors': 0.39.2 + '@open-draft/deferred-promise': 2.2.0 + '@open-draft/until': 2.1.0 + '@types/cookie': 0.6.0 + '@types/statuses': 2.0.6 + graphql: 16.11.0 + headers-polyfill: 4.0.3 + is-node-process: 1.2.0 + outvariant: 1.4.3 + path-to-regexp: 6.3.0 + picocolors: 1.1.1 + rettime: 0.7.0 + strict-event-emitter: 0.5.1 + tough-cookie: 6.0.0 + type-fest: 4.41.0 + yargs: 17.7.2 + optionalDependencies: + typescript: 5.9.2 + transitivePeerDependencies: + - '@types/node' muggle-string@0.4.1: {} @@ -25436,13 +25542,13 @@ snapshots: camelcase-css: 2.0.1 postcss: 8.5.6 - postcss-load-config@4.0.2(postcss@8.5.6)(ts-node@10.9.2(@types/node@24.3.1)(typescript@5.8.3)): + postcss-load-config@4.0.2(postcss@8.5.6)(ts-node@10.9.2(@types/node@25.7.0)(typescript@5.8.3)): dependencies: lilconfig: 3.1.3 yaml: 2.8.0 optionalDependencies: postcss: 8.5.6 - ts-node: 10.9.2(@types/node@24.3.1)(typescript@5.8.3) + ts-node: 10.9.2(@types/node@25.7.0)(typescript@5.8.3) postcss-load-config@6.0.1(jiti@2.5.1)(postcss@8.5.6)(tsx@4.20.5)(yaml@2.8.0): dependencies: @@ -26858,7 +26964,7 @@ snapshots: tailwind-merge@3.3.1: {} - tailwindcss@3.4.17(ts-node@10.9.2(@types/node@24.3.1)(typescript@5.8.3)): + tailwindcss@3.4.17(ts-node@10.9.2(@types/node@25.7.0)(typescript@5.8.3)): dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -26877,7 +26983,7 @@ snapshots: postcss: 8.5.6 postcss-import: 15.1.0(postcss@8.5.6) postcss-js: 4.1.0(postcss@8.5.6) - postcss-load-config: 4.0.2(postcss@8.5.6)(ts-node@10.9.2(@types/node@24.3.1)(typescript@5.8.3)) + postcss-load-config: 4.0.2(postcss@8.5.6)(ts-node@10.9.2(@types/node@25.7.0)(typescript@5.8.3)) postcss-nested: 6.2.0(postcss@8.5.6) postcss-selector-parser: 6.1.2 resolve: 1.22.10 @@ -27039,14 +27145,14 @@ snapshots: '@ts-morph/common': 0.27.0 code-block-writer: 13.0.3 - ts-node@10.9.2(@types/node@24.3.1)(typescript@5.8.3): + ts-node@10.9.2(@types/node@25.7.0)(typescript@5.8.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 24.3.1 + '@types/node': 25.7.0 acorn: 8.15.0 acorn-walk: 8.3.4 arg: 4.1.3 @@ -27162,6 +27268,35 @@ snapshots: - tsx - yaml + tsup@8.5.0(@microsoft/api-extractor@7.52.8(@types/node@25.7.0))(jiti@2.5.1)(postcss@8.5.6)(tsx@4.20.5)(typescript@5.9.2)(yaml@2.8.0): + dependencies: + bundle-require: 5.1.0(esbuild@0.25.9) + cac: 6.7.14 + chokidar: 4.0.3 + consola: 3.4.2 + debug: 4.4.1 + esbuild: 0.25.9 + fix-dts-default-cjs-exports: 1.0.1 + joycon: 3.1.1 + picocolors: 1.1.1 + postcss-load-config: 6.0.1(jiti@2.5.1)(postcss@8.5.6)(tsx@4.20.5)(yaml@2.8.0) + resolve-from: 5.0.0 + rollup: 4.42.0 + source-map: 0.8.0-beta.0 + sucrase: 3.35.0 + tinyexec: 0.3.2 + tinyglobby: 0.2.14 + tree-kill: 1.2.2 + optionalDependencies: + '@microsoft/api-extractor': 7.52.8(@types/node@25.7.0) + postcss: 8.5.6 + typescript: 5.9.2 + transitivePeerDependencies: + - jiti + - supports-color + - tsx + - yaml + tsx@4.20.5: dependencies: esbuild: 0.25.9 @@ -27303,6 +27438,8 @@ snapshots: undici-types@7.16.0: {} + undici-types@7.21.0: {} + undici@5.29.0: dependencies: '@fastify/busboy': 2.1.1 @@ -27710,9 +27847,30 @@ snapshots: - tsx - yaml - vite-plugin-dts@4.5.4(@types/node@24.3.1)(rollup@4.42.0)(typescript@5.9.2)(vite@6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)): + vite-node@3.2.3(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0): dependencies: - '@microsoft/api-extractor': 7.52.8(@types/node@24.3.1) + cac: 6.7.14 + debug: 4.4.1 + es-module-lexer: 1.7.0 + pathe: 2.0.3 + vite: 6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + transitivePeerDependencies: + - '@types/node' + - jiti + - less + - lightningcss + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + - tsx + - yaml + + vite-plugin-dts@4.5.4(@types/node@25.7.0)(rollup@4.42.0)(typescript@5.9.2)(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)): + dependencies: + '@microsoft/api-extractor': 7.52.8(@types/node@25.7.0) '@rollup/pluginutils': 5.1.4(rollup@4.42.0) '@volar/typescript': 2.4.14 '@vue/language-core': 2.2.0(typescript@5.9.2) @@ -27723,7 +27881,7 @@ snapshots: magic-string: 0.30.19 typescript: 5.9.2 optionalDependencies: - vite: 6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + vite: 6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) transitivePeerDependencies: - '@types/node' - rollup @@ -27763,11 +27921,28 @@ snapshots: tsx: 4.20.5 yaml: 2.8.0 + vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0): + dependencies: + esbuild: 0.25.9 + fdir: 6.4.5(picomatch@4.0.2) + picomatch: 4.0.2 + postcss: 8.5.6 + rollup: 4.42.0 + tinyglobby: 0.2.14 + optionalDependencies: + '@types/node': 25.7.0 + fsevents: 2.3.3 + jiti: 2.5.1 + lightningcss: 1.30.1 + terser: 5.42.0 + tsx: 4.20.5 + yaml: 2.8.0 + vitest@3.2.3(@types/debug@4.1.12)(@types/node@20.19.16)(@vitest/ui@3.2.3)(jiti@2.5.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(msw@2.11.2(@types/node@20.19.16)(typescript@5.9.2))(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0): dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.3 - '@vitest/mocker': 3.2.3(msw@2.11.2(@types/node@20.19.16)(typescript@5.9.2))(vite@6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) + '@vitest/mocker': 3.2.3(msw@2.11.2(@types/node@20.19.16)(typescript@5.9.2))(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) '@vitest/pretty-format': 3.2.3 '@vitest/runner': 3.2.3 '@vitest/snapshot': 3.2.3 @@ -27811,7 +27986,7 @@ snapshots: dependencies: '@types/chai': 5.2.2 '@vitest/expect': 3.2.3 - '@vitest/mocker': 3.2.3(msw@2.11.2(@types/node@24.3.1)(typescript@5.9.2))(vite@6.3.5(@types/node@24.3.1)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) + '@vitest/mocker': 3.2.3(msw@2.11.2(@types/node@24.3.1)(typescript@5.9.2))(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) '@vitest/pretty-format': 3.2.3 '@vitest/runner': 3.2.3 '@vitest/snapshot': 3.2.3 @@ -27851,6 +28026,50 @@ snapshots: - tsx - yaml + vitest@3.2.3(@types/debug@4.1.12)(@types/node@25.7.0)(@vitest/ui@3.2.3)(jiti@2.5.1)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(msw@2.11.2(@types/node@25.7.0)(typescript@5.9.2))(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0): + dependencies: + '@types/chai': 5.2.2 + '@vitest/expect': 3.2.3 + '@vitest/mocker': 3.2.3(msw@2.11.2(@types/node@25.7.0)(typescript@5.9.2))(vite@6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0)) + '@vitest/pretty-format': 3.2.3 + '@vitest/runner': 3.2.3 + '@vitest/snapshot': 3.2.3 + '@vitest/spy': 3.2.3 + '@vitest/utils': 3.2.3 + chai: 5.2.0 + debug: 4.4.1 + expect-type: 1.2.1 + magic-string: 0.30.17 + pathe: 2.0.3 + picomatch: 4.0.2 + std-env: 3.9.0 + tinybench: 2.9.0 + tinyexec: 0.3.2 + tinyglobby: 0.2.14 + tinypool: 1.1.0 + tinyrainbow: 2.0.0 + vite: 6.3.5(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + vite-node: 3.2.3(@types/node@25.7.0)(jiti@2.5.1)(lightningcss@1.30.1)(terser@5.42.0)(tsx@4.20.5)(yaml@2.8.0) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/debug': 4.1.12 + '@types/node': 25.7.0 + '@vitest/ui': 3.2.3(vitest@3.2.3) + jsdom: 26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - jiti + - less + - lightningcss + - msw + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + - tsx + - yaml + vscode-jsonrpc@8.2.0: {} vscode-languageserver-protocol@3.17.5: diff --git a/templates/next-video-template/src/app/api/generate-video/validation.ts b/templates/next-video-template/src/app/api/generate-video/validation.ts index 669dfd410..16639b8d6 100644 --- a/templates/next-video-template/src/app/api/generate-video/validation.ts +++ b/templates/next-video-template/src/app/api/generate-video/validation.ts @@ -35,6 +35,8 @@ export function validateGenerateVideoRequest(body: unknown): ValidationResult { } const validModels: VideoModelOption[] = [ + 'veo-3.1-fast-generate-preview', + 'veo-3.1-generate-preview', 'veo-3.0-fast-generate-preview', 'veo-3.0-generate-preview', ]; diff --git a/templates/next-video-template/src/app/api/generate-video/vertex.ts b/templates/next-video-template/src/app/api/generate-video/vertex.ts index 66d1d4e8d..5cc43be70 100644 --- a/templates/next-video-template/src/app/api/generate-video/vertex.ts +++ b/templates/next-video-template/src/app/api/generate-video/vertex.ts @@ -14,7 +14,11 @@ import { */ export async function handleGeminiGenerate( prompt: string, - model: 'veo-3.0-fast-generate-preview' | 'veo-3.0-generate-preview', + model: + | 'veo-3.1-fast-generate-preview' + | 'veo-3.1-generate-preview' + | 'veo-3.0-fast-generate-preview' + | 'veo-3.0-generate-preview', durationSeconds: number = 4, generateAudio: boolean = false, image?: string, // Base64 encoded image or data URL (first frame) diff --git a/templates/next-video-template/src/components/video-generator.tsx b/templates/next-video-template/src/components/video-generator.tsx index 1d942d1bb..e9f3a2b8c 100644 --- a/templates/next-video-template/src/components/video-generator.tsx +++ b/templates/next-video-template/src/components/video-generator.tsx @@ -42,6 +42,8 @@ import { FileInputManager } from './FileInputManager'; import { VideoHistory } from './video-history'; const models: VideoModelConfig[] = [ + { id: 'veo-3.1-fast-generate-preview', name: 'Veo 3.1 Fast' }, + { id: 'veo-3.1-generate-preview', name: 'Veo 3.1' }, { id: 'veo-3.0-fast-generate-preview', name: 'Veo 3 Fast' }, { id: 'veo-3.0-generate-preview', name: 'Veo 3' }, ]; @@ -57,7 +59,7 @@ const models: VideoModelConfig[] = [ */ export default function VideoGenerator() { const [model, setModel] = useState( - 'veo-3.0-fast-generate-preview' + 'veo-3.1-fast-generate-preview' ); const [durationSeconds, setDurationSeconds] = useState<4 | 6 | 8>(4); const [generateAudio, setGenerateAudio] = useState(false); diff --git a/templates/next-video-template/src/lib/types.ts b/templates/next-video-template/src/lib/types.ts index d8e429c97..63ff3cabe 100644 --- a/templates/next-video-template/src/lib/types.ts +++ b/templates/next-video-template/src/lib/types.ts @@ -14,6 +14,8 @@ export type ModelOption = 'openai' | 'gemini'; * Available AI models for video generation */ export type VideoModelOption = + | 'veo-3.1-fast-generate-preview' + | 'veo-3.1-generate-preview' | 'veo-3.0-fast-generate-preview' | 'veo-3.0-generate-preview';