diff --git a/.gitignore b/.gitignore index f2719989ee..43b39b1cf3 100644 --- a/.gitignore +++ b/.gitignore @@ -66,3 +66,6 @@ target /wasi-sdk* vite.config.*.timestamp* + + +storybook-static \ No newline at end of file diff --git a/docs/generated/manifests/menus.json b/docs/generated/manifests/menus.json index a069f962fc..2d77e74c45 100644 --- a/docs/generated/manifests/menus.json +++ b/docs/generated/manifests/menus.json @@ -1414,6 +1414,14 @@ "children": [], "disableCollapsible": false }, + { + "name": "Migrate UI", + "path": "/recipes/nx-console/console-migrate-ui", + "id": "console-migrate-ui", + "isExternal": false, + "children": [], + "disableCollapsible": false + }, { "name": "Run Command", "path": "/recipes/nx-console/console-run-command", @@ -2772,6 +2780,14 @@ "children": [], "disableCollapsible": false }, + { + "name": "Migrate UI", + "path": "/recipes/nx-console/console-migrate-ui", + "id": "console-migrate-ui", + "isExternal": false, + "children": [], + "disableCollapsible": false + }, { "name": "Run Command", "path": "/recipes/nx-console/console-run-command", @@ -2823,6 +2839,14 @@ "children": [], "disableCollapsible": false }, + { + "name": "Migrate UI", + "path": "/recipes/nx-console/console-migrate-ui", + "id": "console-migrate-ui", + "isExternal": false, + "children": [], + "disableCollapsible": false + }, { "name": "Run Command", "path": "/recipes/nx-console/console-run-command", diff --git a/docs/generated/manifests/nx.json b/docs/generated/manifests/nx.json index 70cf98c037..2be66861cd 100644 --- a/docs/generated/manifests/nx.json +++ b/docs/generated/manifests/nx.json @@ -1937,6 +1937,17 @@ "path": "/recipes/nx-console/console-generate-command", "tags": ["editor-setup"] }, + { + "id": "console-migrate-ui", + "name": "Migrate UI", + "description": "", + "mediaImage": "", + "file": "shared/recipes/console-migrate-ui", + "itemList": [], + "isExternal": false, + "path": "/recipes/nx-console/console-migrate-ui", + "tags": ["editor-setup"] + }, { "id": "console-run-command", "name": "Run Command", @@ -3798,6 +3809,17 @@ "path": "/recipes/nx-console/console-generate-command", "tags": ["editor-setup"] }, + { + "id": "console-migrate-ui", + "name": "Migrate UI", + "description": "", + "mediaImage": "", + "file": "shared/recipes/console-migrate-ui", + "itemList": [], + "isExternal": false, + "path": "/recipes/nx-console/console-migrate-ui", + "tags": ["editor-setup"] + }, { "id": "console-run-command", "name": "Run Command", @@ -3869,6 +3891,17 @@ "path": "/recipes/nx-console/console-generate-command", "tags": ["editor-setup"] }, + "/recipes/nx-console/console-migrate-ui": { + "id": "console-migrate-ui", + "name": "Migrate UI", + "description": "", + "mediaImage": "", + "file": "shared/recipes/console-migrate-ui", + "itemList": [], + "isExternal": false, + "path": "/recipes/nx-console/console-migrate-ui", + "tags": ["editor-setup"] + }, "/recipes/nx-console/console-run-command": { "id": "console-run-command", "name": "Run Command", diff --git a/docs/generated/manifests/tags.json b/docs/generated/manifests/tags.json index 4c68a40bf5..4d91cb28bd 100644 --- a/docs/generated/manifests/tags.json +++ b/docs/generated/manifests/tags.json @@ -28,6 +28,13 @@ "name": "Generate Command", "path": "/recipes/nx-console/console-generate-command" }, + { + "description": "", + "file": "shared/recipes/console-migrate-ui", + "id": "console-migrate-ui", + "name": "Migrate UI", + "path": "/recipes/nx-console/console-migrate-ui" + }, { "description": "", "file": "shared/recipes/console-run-command", diff --git a/docs/map.json b/docs/map.json index 1f5412f1b2..c22a378cfb 100644 --- a/docs/map.json +++ b/docs/map.json @@ -631,6 +631,12 @@ "tags": ["editor-setup"], "file": "shared/recipes/console-generate-command" }, + { + "name": "Migrate UI", + "id": "console-migrate-ui", + "tags": ["editor-setup"], + "file": "shared/recipes/console-migrate-ui" + }, { "name": "Run Command", "id": "console-run-command", diff --git a/docs/shared/recipes/console-migrate-ui.md b/docs/shared/recipes/console-migrate-ui.md new file mode 100644 index 0000000000..5f64587dbd --- /dev/null +++ b/docs/shared/recipes/console-migrate-ui.md @@ -0,0 +1,40 @@ +--- +title: 'Nx Console Migrate UI' +description: Overview over the Migrate UI feature for guided migrations in Nx Console +--- + +# Nx Console Migrate UI + +The Nx Console Migrate UI provides a visual, guided way to execute migrations in your workspace while following Nx best practices. This tool simplifies the process of upgrading your Nx workspace by offering an easy-to-use interface that walks you through each step of the migration process. + +## Accessing the Migrate UI + +The Migrate UI is available on the latest version of Nx Console in VSCode or Cursor if you have enabled the `nxConsole.enableMigrateUi` setting. If enabled, a dedicated `Nx Migrate` view will appear in the sidebar. Unless you're on the latest version of Nx, you'll notice a button prompting you to start the migration. + +{% callout type="note" %} +Ensure you have stashed or committed all your changes before initiating a migration. +{% /callout %} + +## Starting a Migration + +By default, clicking the migration button starts the migration process by upgrading to the recommended Nx version — the latest version of the next major release. This method ensures you upgrade one major version at a time in order to [avoid breakages](recipes/tips-n-tricks/advanced-update#one-major-version-at-a-time-small-steps) + +{%callout type="note"%} +If you need more control, a smaller edit button is provided. You can use it to customize the migration process by specifying an exact version and passing custom CLI options like `--to` or `--from`. +{% /callout %} + +Once you start the migration, Nx Console runs the `nx migrate` command to update your dependency versions and generate a `migrations.json` file. You'll be prompted to inspect the changes made to your `package.json` before installing them and proceedig. + +## The Migration Process + +After confirming the changes, the Migrate UI opens and guides you step-by-step through each migration action. Simply click on `Run Migrations` and each migration will be executed in order. + +If a migration step encounters an error, the process pauses so you can inspect the error details. +You can click through to view the migration source code, giving you the opportunity to patch it for your specific use-case or make necessary adjustments to your repository before rerunning the migration. +Alternatively, you may choose to skip a problematic migration. + +For successful migration steps that modify files, the UI pauses to let you review the changes. You must approve these changes before the migration continues. + +## Finalizing the Migration + +When all migration steps are complete or you don't want to run further migrations, you can finish the process by clicking the Finish button. By default, this will squash all commits created during the migration together, but you can opt into preserving them. diff --git a/docs/shared/reference/sitemap.md b/docs/shared/reference/sitemap.md index 98a3256747..1aac3aed53 100644 --- a/docs/shared/reference/sitemap.md +++ b/docs/shared/reference/sitemap.md @@ -96,6 +96,7 @@ - [Telemetry](/recipes/nx-console/console-telemetry) - [Project Details View](/recipes/nx-console/console-project-details) - [Generate Command](/recipes/nx-console/console-generate-command) + - [Migrate UI](/recipes/nx-console/console-migrate-ui) - [Run Command](/recipes/nx-console/console-run-command) - [Nx Cloud Integration](/recipes/nx-console/console-nx-cloud) - [Troubleshooting](/recipes/nx-console/console-troubleshooting) diff --git a/graph/client/src/app/console-migrate/migrate.app.tsx b/graph/client/src/app/console-migrate/migrate.app.tsx new file mode 100644 index 0000000000..d30784a068 --- /dev/null +++ b/graph/client/src/app/console-migrate/migrate.app.tsx @@ -0,0 +1,117 @@ +/* eslint-disable @nx/enforce-module-boundaries */ +// nx-ignore-next-line +import type { MigrationDetailsWithId } from 'nx/src/config/misc-interfaces'; +// nx-ignore-next-line +import { type FileChange } from 'nx/src/devkit-exports'; +// nx-ignore-next-line +import { MigrateUI } from '@nx/graph-migrate'; +/* eslint-enable @nx/enforce-module-boundaries */ + +import { getExternalApiService } from '@nx/graph/legacy/shared'; +import { useSelector } from '@xstate/react'; +import { Interpreter } from 'xstate'; +import { MigrateEvents, MigrateState } from './migrate.machine'; + +export function MigrateApp({ + service, +}: { + service: Interpreter; +}) { + const externalApiService = getExternalApiService(); + + const onRunMigration = ( + migration: MigrationDetailsWithId, + configuration: { + createCommits: boolean; + } + ) => { + externalApiService.postEvent({ + type: 'run-migration', + payload: { + migration, + configuration, + }, + }); + }; + + const onRunMany = ( + migrations: MigrationDetailsWithId[], + configuration: { + createCommits: boolean; + } + ) => { + externalApiService.postEvent({ + type: 'run-many', + payload: { + migrations, + configuration, + }, + }); + }; + + const onCancel = () => { + externalApiService.postEvent({ + type: 'cancel', + }); + }; + + const onFinish = (squashCommits: boolean) => { + externalApiService.postEvent({ + type: 'finish', + payload: { + squashCommits, + }, + }); + }; + + const migrations = useSelector(service, (state) => state.context.migrations); + const nxConsoleMetadata = useSelector( + service, + (state) => state.context.nxConsoleMetadata + ); + const onFileClick = (migration: MigrationDetailsWithId, file: FileChange) => { + externalApiService.postEvent({ + type: 'file-click', + payload: { + path: file.path, + migration: migration, + }, + }); + }; + + const onSkipMigration = (migration: MigrationDetailsWithId) => { + externalApiService.postEvent({ + type: 'skip-migration', + payload: { migration }, + }); + }; + + const onViewImplementation = (migration: MigrationDetailsWithId) => { + externalApiService.postEvent({ + type: 'view-implementation', + payload: { migration }, + }); + }; + + const onViewDocumentation = (migration: MigrationDetailsWithId) => { + externalApiService.postEvent({ + type: 'view-documentation', + payload: { migration }, + }); + }; + + return ( + + ); +} diff --git a/graph/client/src/app/console-migrate/migrate.machine.ts b/graph/client/src/app/console-migrate/migrate.machine.ts new file mode 100644 index 0000000000..d673115a31 --- /dev/null +++ b/graph/client/src/app/console-migrate/migrate.machine.ts @@ -0,0 +1,63 @@ +/* eslint-disable @nx/enforce-module-boundaries */ +// nx-ignore-next-line +import { assign } from '@xstate/immer'; +import type { + GeneratedMigrationDetails, + MigrationDetailsWithId, +} from 'nx/src/config/misc-interfaces'; +// nx-ignore-next-line +import { MigrationsJsonMetadata } from 'nx/src/command-line/migrate/migrate-ui-api'; +/* eslint-enable @nx/enforce-module-boundaries */ +import { createMachine } from 'xstate'; +export interface MigrateState { + migrations: MigrationDetailsWithId[]; + nxConsoleMetadata: MigrationsJsonMetadata; +} + +export type MigrateEvents = { + type: 'loadData'; + migrations: GeneratedMigrationDetails[]; + 'nx-console': MigrationsJsonMetadata; +}; + +const initialContext: MigrateState = { + migrations: [], + nxConsoleMetadata: {}, +}; + +export const migrateMachine = createMachine({ + /** @xstate-layout N4IgpgJg5mDOIC5QFsCWUBOBDALmAxADYD2WEAIrlgNoAMAuoqAA7Gyo6rEB2TIAHogAsAJgA0IAJ6IAjAGYAnADoAHDJFCAbAFYVtGTNpHtAXzMTuxCHD5pMuMH1btOPPoIQBaTROlfNSkZBwSEA7OYgdth4SqgQhI5IIM4cXLxJHpoySiIqcira2gqitEJBPlKIakpyIiIKMrql6kIqKhFRDkokZJBObKluGbKaynU6oXKKIjKaU+KVCLMiSqG02uvF2jqaeiJmZkA */ + predictableActionArguments: true, + preserveActionOrder: true, + id: 'migrate', + initial: 'idle', + context: initialContext, + states: { + idle: {}, + loaded: {}, + }, + on: { + loadData: [ + { + target: 'loaded', + actions: [ + assign((ctx, event) => { + ctx.migrations = event.migrations.map((migration, index) => { + const duplicateCount = event.migrations + .slice(0, index) + .filter((m) => m.name === migration.name).length; + return { + ...migration, + id: + duplicateCount === 0 + ? migration.name + : `${migration.name}-${duplicateCount}`, + }; + }); + ctx.nxConsoleMetadata = event['nx-console']; + }), + ], + }, + ], + }, +}); diff --git a/graph/client/src/globals.d.ts b/graph/client/src/globals.d.ts index cee748a801..a22e33d4c5 100644 --- a/graph/client/src/globals.d.ts +++ b/graph/client/src/globals.d.ts @@ -33,6 +33,9 @@ export declare global { data: any ) => Interpreter; renderError?: (data: any) => void; + renderMigrate?: ( + data: any + ) => Interpreter; } } declare module 'cytoscape' { diff --git a/graph/client/src/main.tsx b/graph/client/src/main.tsx index 6849ff6588..5cd39a02d9 100644 --- a/graph/client/src/main.tsx +++ b/graph/client/src/main.tsx @@ -10,6 +10,10 @@ import { projectDetailsMachine } from './app/console-project-details/project-det import type { ProjectGraphProjectNode } from '@nx/devkit'; // nx-ignore-next-line import type { GraphError } from 'nx/src/command-line/graph/graph'; +// nx-ignore-next-line +import { MigrationsJsonMetadata } from 'nx/src/command-line/migrate/migrate-ui-api'; +// nx-ignore-next-line +import { GeneratedMigrationDetails } from 'nx/src/config/misc-interfaces'; /* eslint-enable @nx/enforce-module-boundaries */ import { StrictMode } from 'react'; import { inspect } from '@xstate/inspect'; @@ -19,6 +23,8 @@ import { render } from 'preact'; import { ErrorPage } from './app/ui-components/error-page'; import { ProjectDetailsApp } from './app/console-project-details/project-details.app'; import { interpret } from 'xstate'; +import { MigrateApp } from './app/console-migrate/migrate.app'; +import { migrateMachine } from './app/console-migrate/migrate.machine'; if (window.__NX_RENDER_GRAPH__ === false) { window.externalApi = new ExternalApiImpl(); @@ -58,6 +64,27 @@ if (window.__NX_RENDER_GRAPH__ === false) { document.getElementById('app') ); }; + + window.renderMigrate = (data: { + migrations: GeneratedMigrationDetails[]; + 'nx-console': MigrationsJsonMetadata; + }) => { + const service = interpret(migrateMachine).start(); + + service.send({ + type: 'loadData', + ...data, + }); + + render( + + + , + document.getElementById('app') + ); + + return service; + }; } else { if (window.useXstateInspect === true) { inspect({ diff --git a/graph/migrate/.babelrc b/graph/migrate/.babelrc new file mode 100644 index 0000000000..1ea870ead4 --- /dev/null +++ b/graph/migrate/.babelrc @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "@nx/react/babel", + { + "runtime": "automatic", + "useBuiltIns": "usage" + } + ] + ], + "plugins": [] +} diff --git a/graph/migrate/.eslintrc.json b/graph/migrate/.eslintrc.json new file mode 100644 index 0000000000..b96a5b888e --- /dev/null +++ b/graph/migrate/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["plugin:@nx/react", "../../.eslintrc.json"], + "ignorePatterns": ["!**/*", "storybook-static"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/graph/migrate/.storybook/main.ts b/graph/migrate/.storybook/main.ts new file mode 100644 index 0000000000..cfdbf33b53 --- /dev/null +++ b/graph/migrate/.storybook/main.ts @@ -0,0 +1,29 @@ +/* eslint-disable @nx/enforce-module-boundaries */ +import type { StorybookConfig } from '@storybook/react-vite'; + +// nx-ignore-next-line +import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin'; +import { mergeConfig } from 'vite'; + +const config: StorybookConfig = { + stories: ['../src/lib/**/*.stories.@(js|jsx|ts|tsx|mdx)'], + addons: ['@storybook/addon-essentials', '@storybook/addon-interactions'], + + framework: { + name: '@storybook/react-vite', + options: {}, + }, + + viteFinal: async (config) => + mergeConfig(config, { + plugins: [nxViteTsPaths()], + }), + + docs: {}, +}; + +export default config; + +// To customize your Vite configuration you can use the viteFinal field. +// Check https://storybook.js.org/docs/react/builders/vite#configuration +// and https://nx.dev/recipes/storybook/custom-builder-configs diff --git a/graph/migrate/.storybook/preview.ts b/graph/migrate/.storybook/preview.ts new file mode 100644 index 0000000000..98756a1850 --- /dev/null +++ b/graph/migrate/.storybook/preview.ts @@ -0,0 +1,2 @@ +import './tailwind.css'; +export const tags = ['autodocs']; diff --git a/graph/migrate/.storybook/tailwind.css b/graph/migrate/.storybook/tailwind.css new file mode 100644 index 0000000000..dd1df597d0 --- /dev/null +++ b/graph/migrate/.storybook/tailwind.css @@ -0,0 +1,33 @@ +@tailwind components; +@tailwind base; +@tailwind utilities; + +@keyframes fadeIn { + from { + opacity: 0; + transform: scale(0.95); + } + to { + opacity: 1; + transform: scale(1); + } +} + +@keyframes fadeOut { + from { + opacity: 1; + transform: scale(1); + } + to { + opacity: 0; + transform: scale(0.95); + } +} + +.animate-fadeIn { + animation: fadeIn 0.2s ease-out forwards; +} + +.animate-fadeOut { + animation: fadeOut 0.2s ease-out forwards; +} diff --git a/graph/migrate/README.md b/graph/migrate/README.md new file mode 100644 index 0000000000..13513125fa --- /dev/null +++ b/graph/migrate/README.md @@ -0,0 +1,7 @@ +# graph-migrate + +This library was generated with [Nx](https://nx.dev). + +## Running unit tests + +Run `nx test graph-migrate` to execute the unit tests via [Jest](https://jestjs.io). diff --git a/graph/migrate/jest.config.ts b/graph/migrate/jest.config.ts new file mode 100644 index 0000000000..4ceb7f824a --- /dev/null +++ b/graph/migrate/jest.config.ts @@ -0,0 +1,19 @@ +/* eslint-disable */ +// nx-ignore-next-line +const nxPreset = require('@nx/jest/preset').default; + +export default { + ...nxPreset, + displayName: 'graph-migrate', + transform: { + '^(?!.*\\.(js|jsx|ts|tsx|css|json)$)': '@nx/react/plugins/jest', + '^.+\\.[tj]sx?$': ['babel-jest', { presets: ['@nx/next/babel'] }], + }, + moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx'], + coverageDirectory: '../../coverage/graph/migrate', + // The mock for widnow.matchMedia has to be in a separete file and imported before the components to test + // for more info check : // https://jestjs.io/docs/manual-mocks#mocking-methods-which-are-not-implemented-in-jsdom + modulePathIgnorePatterns: [ + '/graph/client/src/app/machines/match-media-mock.spec.ts', + ], +}; diff --git a/graph/migrate/postcss.config.js b/graph/migrate/postcss.config.js new file mode 100644 index 0000000000..c72626d6ce --- /dev/null +++ b/graph/migrate/postcss.config.js @@ -0,0 +1,15 @@ +const { join } = require('path'); + +// Note: If you use library-specific PostCSS/Tailwind configuration then you should remove the `postcssConfig` build +// option from your application's configuration (i.e. project.json). +// +// See: https://nx.dev/guides/using-tailwind-css-in-react#step-4:-applying-configuration-to-libraries + +module.exports = { + plugins: { + tailwindcss: { + config: join(__dirname, 'tailwind.config.js'), + }, + autoprefixer: {}, + }, +}; diff --git a/graph/migrate/project.json b/graph/migrate/project.json new file mode 100644 index 0000000000..035b9a8b77 --- /dev/null +++ b/graph/migrate/project.json @@ -0,0 +1,9 @@ +{ + "name": "graph-migrate", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "graph/migrate/src", + "projectType": "library", + "tags": [], + "// targets": "to see all targets run: nx show project graph-migrate --web", + "targets": {} +} diff --git a/graph/migrate/src/index.ts b/graph/migrate/src/index.ts new file mode 100644 index 0000000000..16fa0593b9 --- /dev/null +++ b/graph/migrate/src/index.ts @@ -0,0 +1 @@ +export * from './lib/migrate'; diff --git a/graph/migrate/src/lib/components/automatic-migration.tsx b/graph/migrate/src/lib/components/automatic-migration.tsx new file mode 100644 index 0000000000..ffa9404974 --- /dev/null +++ b/graph/migrate/src/lib/components/automatic-migration.tsx @@ -0,0 +1,96 @@ +/* eslint-disable @nx/enforce-module-boundaries */ +import { FileChange } from '@nx/devkit'; +import type { MigrationDetailsWithId } from 'nx/src/config/misc-interfaces'; +import type { MigrationsJsonMetadata } from 'nx/src/command-line/migrate/migrate-ui-api'; +/* eslint-enable @nx/enforce-module-boundaries */ +import { useSelector } from '@xstate/react'; +import { + currentMigrationHasChanges, + currentMigrationHasFailed, + currentMigrationHasSucceeded, +} from '../state/automatic/selectors'; +import { MigrationTimeline } from './migration-timeline'; +import { Interpreter } from 'xstate'; +import type { + AutomaticMigrationEvents, + AutomaticMigrationState, +} from '../state/automatic/types'; + +export function AutomaticMigration(props: { + migrations: MigrationDetailsWithId[]; + nxConsoleMetadata: MigrationsJsonMetadata; + onRunMigration: (migration: MigrationDetailsWithId) => void; + onSkipMigration: (migration: MigrationDetailsWithId) => void; + onFileClick: ( + migration: MigrationDetailsWithId, + file: Omit + ) => void; + onViewImplementation: (migration: MigrationDetailsWithId) => void; + onViewDocumentation: (migration: MigrationDetailsWithId) => void; + actor: Interpreter< + AutomaticMigrationState, + any, + AutomaticMigrationEvents, + any, + any + >; +}) { + const currentMigration = useSelector( + props.actor, + (state) => state.context.currentMigration + ); + + const currentMigrationIndex = props.migrations.findIndex( + (migration) => migration.id === currentMigration?.id + ); + + const currentMigrationRunning = useSelector( + props.actor, + (state) => state.context.currentMigrationRunning + ); + + const currentMigrationFailed = useSelector(props.actor, (state) => + currentMigrationHasFailed(state.context) + ); + + const currentMigrationSuccess = useSelector(props.actor, (state) => + currentMigrationHasSucceeded(state.context) + ); + + const currentMigrationChanges = useSelector(props.actor, (state) => + currentMigrationHasChanges(state.context) + ); + + const isDone = useSelector(props.actor, (state) => state.matches('done')); + + const isInit = useSelector(props.actor, (state) => state.matches('init')); + + const handleReviewMigration = (migrationId: string) => { + props.actor.send({ + type: 'reviewMigration', + migrationId, + }); + }; + + return ( + = 0 ? currentMigrationIndex : 0 + } + currentMigrationRunning={currentMigrationRunning} + currentMigrationFailed={currentMigrationFailed} + currentMigrationSuccess={currentMigrationSuccess} + currentMigrationHasChanges={currentMigrationChanges} + isDone={isDone} + isInit={isInit} + onRunMigration={props.onRunMigration} + onSkipMigration={props.onSkipMigration} + onFileClick={props.onFileClick} + onViewImplementation={props.onViewImplementation} + onViewDocumentation={props.onViewDocumentation} + onReviewMigration={handleReviewMigration} + /> + ); +} diff --git a/graph/migrate/src/lib/components/index.ts b/graph/migrate/src/lib/components/index.ts new file mode 100644 index 0000000000..9bc6978ad4 --- /dev/null +++ b/graph/migrate/src/lib/components/index.ts @@ -0,0 +1,7 @@ +export * from './automatic-migration'; +export * from './migration-card'; +export * from './migration-list'; +export * from './migration-done'; +export * from './migration-init'; +export * from './migration-settings-panel'; +export * from './migration-timeline'; diff --git a/graph/migrate/src/lib/components/migration-card.tsx b/graph/migrate/src/lib/components/migration-card.tsx new file mode 100644 index 0000000000..8b0b95b469 --- /dev/null +++ b/graph/migrate/src/lib/components/migration-card.tsx @@ -0,0 +1,279 @@ +/* eslint-disable @nx/enforce-module-boundaries */ +import type { MigrationDetailsWithId } from 'nx/src/config/misc-interfaces'; +import { FileChange } from 'nx/src/devkit-exports'; +import type { MigrationsJsonMetadata } from 'nx/src/command-line/migrate/migrate-ui-api'; +/* eslint-enable @nx/enforce-module-boundaries */ + +import { + ArrowPathIcon, + CodeBracketIcon, + ExclamationCircleIcon, + ListBulletIcon, + PlayIcon, +} from '@heroicons/react/24/outline'; +import { Pill } from '@nx/graph-internal/ui-project-details'; +import { useState, forwardRef, useImperativeHandle, useEffect } from 'react'; +import { AnimatePresence, motion } from 'framer-motion'; + +export interface MigrationCardHandle { + expand: () => void; + collapse: () => void; + toggle: () => void; +} + +export const MigrationCard = forwardRef< + MigrationCardHandle, + { + migration: MigrationDetailsWithId; + nxConsoleMetadata: MigrationsJsonMetadata; + isSelected?: boolean; + onSelect?: (isSelected: boolean) => void; + onRunMigration?: () => void; + onFileClick: (file: Omit) => void; + onViewImplementation: () => void; + onViewDocumentation: () => void; + forceIsRunning?: boolean; + isExpanded?: boolean; + } +>(function MigrationCard( + { + migration, + nxConsoleMetadata, + isSelected, + onSelect, + onRunMigration, + onFileClick, + onViewImplementation, + onViewDocumentation, + forceIsRunning, + isExpanded: isExpandedProp, + }, + ref +) { + const [isExpanded, setIsExpanded] = useState(isExpandedProp ?? false); + + useImperativeHandle( + ref, + () => ({ + expand: () => setIsExpanded(true), + collapse: () => setIsExpanded(false), + toggle: () => setIsExpanded((prev) => !prev), + }), + [] + ); + + useEffect(() => { + if (isExpandedProp !== undefined) { + setIsExpanded(isExpandedProp); + } + }, [isExpandedProp]); + + const migrationResult = nxConsoleMetadata.completedMigrations?.[migration.id]; + const succeeded = migrationResult?.type === 'successful'; + const failed = migrationResult?.type === 'failed'; + const skipped = migrationResult?.type === 'skipped'; + const inProgress = nxConsoleMetadata.runningMigrations?.includes( + migration.id + ); + + const madeChanges = succeeded && !!migrationResult?.changedFiles.length; + + const renderSelectBox = onSelect && isSelected !== undefined; + + const isNxMigration = + migration.package.startsWith('@nx') || migration.package.startsWith('nx'); + + return ( +
+
+
+ {renderSelectBox && ( +
+ onSelect((e.target as any).checked)} + id={migration.id} + name={migration.id} + value={migration.id} + type="checkbox" + className={`h-4 w-4 ${ + succeeded + ? 'accent-green-600 dark:accent-green-500' + : failed + ? 'accent-red-600 dark:accent-red-500' + : 'accent-blue-500 dark:accent-sky-500' + }`} + /> +
+ )} +
+
{ + if (isNxMigration) { + onViewDocumentation(); + } + }} + > + {/*
{migration.name}
+ {isNxMigration && ( + + )} */} +
+ {migration.description} +
+ {migration.package && ( + + )} +
+
+
+ +
+ {' '} + {succeeded && !madeChanges && ( + + )} + {succeeded && madeChanges && ( +
+
{ + setIsExpanded(!isExpanded); + }} + > + +
+
+ )} + {failed && ( +
+ +
+ )} + {skipped && ( +
+ +
+ )} + {(onRunMigration || forceIsRunning) && ( + + {inProgress || forceIsRunning ? ( + + ) : !succeeded && !failed ? ( + + ) : ( + + )} + + )} +
+
+
+ + {failed && ( + + )} + {succeeded && madeChanges && ( + + )} +
+ + {failed && isExpanded && ( + +
{migrationResult?.error}
+
+ )} +
+ + + {succeeded && madeChanges && isExpanded && ( + +
+ File Changes +
    + {migrationResult?.changedFiles.map((file) => { + return ( +
  • { + onFileClick(file); + }} + > + {file.path} +
  • + ); + })} +
+
+ )} +
+
+ ); +}); diff --git a/graph/migrate/src/lib/components/migration-done.tsx b/graph/migrate/src/lib/components/migration-done.tsx new file mode 100644 index 0000000000..a42ec80a21 --- /dev/null +++ b/graph/migrate/src/lib/components/migration-done.tsx @@ -0,0 +1,144 @@ +import { motion } from 'framer-motion'; +import { + CheckCircleIcon, + CheckIcon, + ChevronDownIcon, +} from '@heroicons/react/24/outline'; +import { useState } from 'react'; +import { Popover } from '@nx/graph/ui-common'; +import { PrimaryAction } from '../migrate'; + +export interface MigrationDoneProps { + onCancel: () => void; + onFinish: (squash: boolean) => void; + shouldSquashCommits: boolean; +} + +export function MigrationDone({ + onCancel, + onFinish, + shouldSquashCommits, +}: MigrationDoneProps) { + const [isOpen, setIsOpen] = useState(false); + const [squashCommits, setSquashCommits] = useState(shouldSquashCommits); + + return ( + + + + + + + + +

+ All migrations completed +

+
+
+ + Cancel + +
+ onFinish(squashCommits)} + type="button" + title={ + squashCommits + ? PrimaryAction.FinishSquashingCommits + : PrimaryAction.FinishWithoutSquashingCommits + } + className="whitespace-nowrap rounded-l-md border border-blue-700 bg-blue-500 px-6 py-3 text-sm font-medium text-white shadow-sm hover:bg-blue-600 dark:border-blue-700 dark:bg-blue-600 dark:text-white hover:dark:bg-blue-700" + > + {squashCommits + ? PrimaryAction.FinishSquashingCommits + : PrimaryAction.FinishWithoutSquashingCommits} + +
+ setIsOpen((prev) => !prev)} + className="border-l-1 flex items-center rounded-r-md border border-blue-700 bg-blue-500 px-2 py-2 text-sm font-medium text-white shadow-sm hover:bg-blue-700 dark:border-blue-700 dark:bg-blue-700 dark:text-white hover:dark:bg-blue-800" + > + + + setIsOpen(false)} + position={{ + left: '-2rem', + top: '-6.75rem', + }} + > +
    +
  • { + setSquashCommits(true); + setIsOpen(false); + }} + > + + + + Squash commits +
  • +
  • { + setSquashCommits(false); + setIsOpen(false); + }} + > + + + + Do not squash commits +
  • +
+
+
+
+
+
+ ); +} diff --git a/graph/migrate/src/lib/components/migration-init.tsx b/graph/migrate/src/lib/components/migration-init.tsx new file mode 100644 index 0000000000..304423ffdc --- /dev/null +++ b/graph/migrate/src/lib/components/migration-init.tsx @@ -0,0 +1,55 @@ +import { WrenchScrewdriverIcon } from '@heroicons/react/24/outline'; +import { motion } from 'framer-motion'; + +export function MigrationInit({ onStart }: { onStart: () => void }) { + return ( + + + + + + + + + Ready to Migrate + + + + Welcome to the Migrate UI. This tool will guide you through updating + your workspace. Click the button below to start running migrations. + + + + Start Migration + + + ); +} diff --git a/graph/migrate/src/lib/components/migration-list.tsx b/graph/migrate/src/lib/components/migration-list.tsx new file mode 100644 index 0000000000..93b05e2297 --- /dev/null +++ b/graph/migrate/src/lib/components/migration-list.tsx @@ -0,0 +1,161 @@ +/* eslint-disable @nx/enforce-module-boundaries */ +import { FileChange } from '@nx/devkit'; +import { MigrationsJsonMetadata } from 'nx/src/command-line/migrate/migrate-ui-api'; +import type { MigrationDetailsWithId } from 'nx/src/config/misc-interfaces'; +/* eslint-enable @nx/enforce-module-boundaries */ + +import { PlayIcon } from '@heroicons/react/24/outline'; +import { useCallback, useMemo, useState } from 'react'; +import { MigrationCard } from './migration-card'; + +export function MigrationList(props: { + migrations: MigrationDetailsWithId[]; + nxConsoleMetadata: MigrationsJsonMetadata; + onRunMigration: (migration: MigrationDetailsWithId) => void; + onRunMany: (migrations: MigrationDetailsWithId[]) => void; + onFileClick: ( + migration: MigrationDetailsWithId, + file: Omit + ) => void; + onViewImplementation: (migration: MigrationDetailsWithId) => void; + onViewDocumentation: (migration: MigrationDetailsWithId) => void; +}) { + const [selectedMigrations, setSelectedMigrations] = useState< + Record + >( + props.migrations.reduce((acc, migration) => { + acc[migration.id] = false; + return acc; + }, {} as Record) + ); + + const numberSelected = useMemo( + () => + Object.values(selectedMigrations).filter((selected) => selected).length, + [selectedMigrations] + ); + + const anySelected = useMemo( + () => + Object.values(selectedMigrations).filter((selected) => selected).length > + 0, + [selectedMigrations] + ); + + const allSelected = useMemo( + () => props.migrations.length === numberSelected, + [props.migrations, numberSelected] + ); + + const numberFailed = useMemo( + () => + Object.values(props.nxConsoleMetadata.completedMigrations ?? {}).filter( + (migration) => migration.type === 'failed' + ).length, + [props.nxConsoleMetadata.completedMigrations] + ); + + const handleHeaderCheckboxClick = () => { + const newSelectedState = !anySelected; + setSelectedMigrations( + Object.keys(selectedMigrations).reduce((acc, migrationId) => { + acc[migrationId] = newSelectedState; + return acc; + }, {} as Record) + ); + }; + + const selectAllCheckboxRef = useCallback( + (el: HTMLInputElement | null) => { + if (!el) return; + el.checked = allSelected; + el.indeterminate = anySelected && !allSelected; + }, + [allSelected, anySelected] + ); + + const handleRunMany = () => { + props.onRunMany( + props.migrations.filter((migration) => selectedMigrations[migration.id]) + ); + }; + + const handleRerunFailed = () => { + props.onRunMany( + props.migrations.filter( + (migration) => + props.nxConsoleMetadata.completedMigrations?.[migration.id]?.type === + 'failed' + ) + ); + }; + + return ( + <> +
+
+ + + {anySelected && ( + + )} + {numberFailed > 0 && ( + + )} +
+
+
+ {props.migrations.map((migration) => ( + + setSelectedMigrations({ + ...selectedMigrations, + [migration.id]: isSelected, + }) + } + onRunMigration={() => props.onRunMigration(migration)} + onViewImplementation={() => { + props.onViewImplementation(migration); + }} + onViewDocumentation={() => { + props.onViewDocumentation(migration); + }} + onFileClick={(file) => { + props.onFileClick(migration, file); + }} + /> + ))} +
+ + ); +} diff --git a/graph/migrate/src/lib/components/migration-settings-panel.tsx b/graph/migrate/src/lib/components/migration-settings-panel.tsx new file mode 100644 index 0000000000..3f2a713fc5 --- /dev/null +++ b/graph/migrate/src/lib/components/migration-settings-panel.tsx @@ -0,0 +1,63 @@ +import { useState } from 'react'; +import { Popover } from '@nx/graph/ui-common'; + +export interface MigrationSettingsPanelProps { + createCommits: boolean; + setCreateCommits: (createCommits: boolean) => void; + commitPrefix: string; + setCommitPrefix: (commitPrefix: string) => void; +} + +export function MigrationSettingsPanel({ + createCommits, + setCreateCommits, + commitPrefix, + setCommitPrefix, +}: MigrationSettingsPanelProps) { + const [isOpen, setIsOpen] = useState(false); + + return ( +
+ + setIsOpen(false)} + position={{ left: '-12rem', top: '2.75rem' }} + > +
+
+ setCreateCommits(e.target.checked)} + id="create-commits" + name="create-commits" + value="create-commits" + type="checkbox" + className="h-4 w-4" + /> + +
+
+
+ + setCommitPrefix(event.currentTarget.value)} + value={commitPrefix} + /> +
+
+
+
+ ); +} diff --git a/graph/migrate/src/lib/components/migration-timeline.tsx b/graph/migrate/src/lib/components/migration-timeline.tsx new file mode 100644 index 0000000000..de53cdd602 --- /dev/null +++ b/graph/migrate/src/lib/components/migration-timeline.tsx @@ -0,0 +1,564 @@ +/* eslint-disable @nx/enforce-module-boundaries */ +import { FileChange } from '@nx/devkit'; +import type { MigrationDetailsWithId } from 'nx/src/config/misc-interfaces'; +import type { MigrationsJsonMetadata } from 'nx/src/command-line/migrate/migrate-ui-api'; + +/* eslint-enable @nx/enforce-module-boundaries */ + +import { + ChevronUpIcon, + ChevronDownIcon, + ExclamationCircleIcon, + CheckCircleIcon, + ClockIcon, + MinusIcon, +} from '@heroicons/react/24/outline'; +import { useEffect, useState, useRef } from 'react'; +import { MigrationCard, MigrationCardHandle } from './migration-card'; +import { Collapsible } from '@nx/graph/ui-common'; +import { twMerge } from 'tailwind-merge'; + +export interface MigrationTimelineProps { + migrations: MigrationDetailsWithId[]; + nxConsoleMetadata: MigrationsJsonMetadata; + currentMigrationIndex: number; + currentMigrationRunning?: boolean; + currentMigrationFailed?: boolean; + currentMigrationSuccess?: boolean; + currentMigrationHasChanges?: boolean; + isDone?: boolean; + isInit: boolean; + onRunMigration: (migration: MigrationDetailsWithId) => void; + onSkipMigration: (migration: MigrationDetailsWithId) => void; + onFileClick: ( + migration: MigrationDetailsWithId, + file: Omit + ) => void; + onViewImplementation: (migration: MigrationDetailsWithId) => void; + onViewDocumentation: (migration: MigrationDetailsWithId) => void; + onCancel?: () => void; + onReviewMigration: (migrationId: string) => void; +} + +export function MigrationTimeline({ + migrations, + nxConsoleMetadata, + currentMigrationIndex, + currentMigrationRunning, + currentMigrationFailed, + currentMigrationSuccess, + currentMigrationHasChanges, + onRunMigration, + onSkipMigration, + onFileClick, + onViewImplementation, + onViewDocumentation, + onCancel, + onReviewMigration, +}: MigrationTimelineProps) { + const [showAllPastMigrations, setShowAllPastMigrations] = useState(false); + const [showAllFutureMigrations, setShowAllFutureMigrations] = useState(false); + const [expandedMigrations, setExpandedMigrations] = useState<{ + [key: string]: boolean; + }>({}); + + const currentMigration = migrations[currentMigrationIndex]; + const pastMigrations = migrations.slice(0, currentMigrationIndex); + const futureMigrations = migrations.slice(currentMigrationIndex + 1); + + // Number of visible migrations when collapsed + const visiblePastCount = 0; + const visibleFutureCount = 2; + const visiblePastMigrations = showAllPastMigrations + ? pastMigrations + : pastMigrations.slice( + Math.max(0, pastMigrations.length - visiblePastCount) + ); + const visibleFutureMigrations = showAllFutureMigrations + ? futureMigrations + : futureMigrations.slice(0, visibleFutureCount); + + const hasPastMigrationsHidden = + pastMigrations.length > visiblePastCount && !showAllPastMigrations; + const hasFutureMigrationsHidden = + futureMigrations.length > visibleFutureCount && !showAllFutureMigrations; + + const currentMigrationRef = useRef(null); + + // Auto-expand when entering a failed migration or requires review + useEffect(() => { + if (currentMigrationFailed || currentMigrationHasChanges) { + toggleMigrationExpanded(currentMigration.id, true); + } + }, [currentMigrationHasChanges, currentMigrationFailed, currentMigration]); + + const toggleMigrationExpanded = (migrationId: string, state?: boolean) => { + setExpandedMigrations((prev) => ({ + ...prev, + [migrationId]: state ?? !prev[migrationId], + })); + }; + + return ( +
+
+ {onCancel && ( + + )} +
+ +
+ {/* Timeline lines */} + {/* Solid line for visible migrations */} +
+ + {/* Dashed line for the section after the last visible migration */} + {hasFutureMigrationsHidden && ( +
+ )} + + {/* Timeline container */} +
+ {/* Past migrations section */} + {pastMigrations.length > 0 && ( + <> + {showAllPastMigrations && ( +
+ setShowAllPastMigrations(false)} + /> + +
+
setShowAllPastMigrations(false)} + > + + Hide Past Migrations + +
+
+
+ )} + {visiblePastMigrations.map((migration) => ( +
+ toggleMigrationExpanded(migration.id)} + /> + +
+
+
+ toggleMigrationExpanded(migration.id)} + className={`flex-shrink-0 cursor-pointer whitespace-nowrap text-base ${ + nxConsoleMetadata.completedMigrations?.[ + migration.id + ]?.type === 'successful' + ? 'text-green-600' + : 'text-slate-600' + }`} + > + {migration.name} + + {!expandedMigrations[migration.id] && ( + + {' '} + {migration.description}{' '} + + )} +
+ {expandedMigrations[migration.id] && ( +
+ {nxConsoleMetadata.completedMigrations?.[migration.id] + ?.type === 'failed' && ( + + )} +
+ )} +
+ + + onFileClick(migration, file)} + onViewImplementation={() => + onViewImplementation(migration) + } + onViewDocumentation={() => + onViewDocumentation(migration) + } + /> + +
+
+ ))} + + {hasPastMigrationsHidden && ( +
+ setShowAllPastMigrations(true)} + /> + +
+
setShowAllPastMigrations(true)} + > + + Show Past Migrations + +
+
+
+ )} + + )} + + {/* Current migration */} +
+ {/* TODO: Change this to be a clickable element li, button etc... */} +
+ toggleMigrationExpanded(currentMigration.id)} + /> +
+
+
+ + toggleMigrationExpanded(currentMigration.id) + } + > + {currentMigration.name} + + {!expandedMigrations[currentMigration.id] && ( +

+ {currentMigration.description} +

+ )} +
+ {expandedMigrations[currentMigration.id] && ( +
+ {currentMigrationFailed && ( + + )} + {!currentMigrationSuccess && ( + + )} + + {currentMigrationHasChanges && ( + + )} +
+ )} +
+ + + {/* Migration Card */} + onFileClick(currentMigration, file)} + forceIsRunning={currentMigrationRunning} + onViewImplementation={() => + onViewImplementation(currentMigration) + } + onViewDocumentation={() => + onViewDocumentation(currentMigration) + } + /> + +
+
+
+ + {/* Future migrations */} + {futureMigrations.length > 0 && ( + <> + {visibleFutureMigrations.map((migration) => ( +
+ toggleMigrationExpanded(migration.id)} + /> + +
+
+
+ toggleMigrationExpanded(migration.id)} + > + {migration.name} + + {!expandedMigrations[migration.id] && ( + + {migration.description}{' '} + + )} +
+ {/* ONLY SHOW BUTTONS FOR PENDING MIGRATIONS */} + {expandedMigrations[migration.id] && + !nxConsoleMetadata.completedMigrations?.[ + migration.id + ] && ( +
+ +
+ )} +
+ + onFileClick(migration, file)} + onViewImplementation={() => + onViewImplementation(migration) + } + onViewDocumentation={() => + onViewDocumentation(migration) + } + /> + +
+
+ ))} + + {hasFutureMigrationsHidden && ( +
+ setShowAllFutureMigrations(true)} + /> + +
+
setShowAllFutureMigrations(true)} + > + + Show more + +
+
+
+ )} + + {showAllFutureMigrations && ( +
+ setShowAllFutureMigrations(false)} + /> + +
+
setShowAllFutureMigrations(false)} + > + + Show fewer + +
+
+
+ )} + + )} +
+
+
+ ); +} + +interface TimelineButtonProps { + icon: React.ElementType; + onClick: () => void; +} + +function TimelineButton({ icon: Icon, onClick }: TimelineButtonProps) { + return ( +
+ +
+ ); +} + +interface MigrationStateCircleProps { + migration: MigrationDetailsWithId; + nxConsoleMetadata: MigrationsJsonMetadata; + isRunning?: boolean; + onClick: () => void; +} + +function MigrationStateCircle({ + migration, + nxConsoleMetadata, + isRunning, + onClick, +}: MigrationStateCircleProps) { + let bgColor = ''; + let textColor = ''; + let Icon = ClockIcon; + + // Check if this migration is in the completed migrations + const completedMigration = + nxConsoleMetadata.completedMigrations?.[migration.id]; + + const isSkipped = completedMigration?.type === 'skipped'; + const isError = completedMigration?.type === 'failed'; + const isSuccess = completedMigration?.type === 'successful'; + + if (isSkipped) { + bgColor = 'bg-slate-300'; + textColor = 'text-slate-700'; + Icon = MinusIcon; + } else if (isError) { + bgColor = 'bg-red-500'; + textColor = 'text-white'; + Icon = ExclamationCircleIcon; + } else if (isRunning) { + bgColor = 'bg-blue-500'; + textColor = 'text-white'; + Icon = ClockIcon; + } else if (isSuccess) { + bgColor = 'bg-green-500'; + textColor = 'text-white'; + Icon = CheckCircleIcon; + } else { + // Future migration (none of the states above) + bgColor = 'bg-slate-300'; + textColor = 'text-slate-700'; + Icon = ClockIcon; + } + + return ( +
+ {isRunning ? ( + + ) : ( + + )} +
+ ); +} diff --git a/graph/migrate/src/lib/migrate.stories.tsx b/graph/migrate/src/lib/migrate.stories.tsx new file mode 100644 index 0000000000..fce2941be7 --- /dev/null +++ b/graph/migrate/src/lib/migrate.stories.tsx @@ -0,0 +1,236 @@ +import type { Meta, StoryObj } from '@storybook/react'; +import { MigrateUI } from './migrate'; + +const meta: Meta = { + component: MigrateUI, + title: 'MigrateUI', +}; +export default meta; +type Story = StoryObj; + +export const Automatic: Story = { + args: { + migrations: [ + { + id: 'migration-1', + name: 'migration-1', + description: 'This is a migration that does a thing labeled with one.', + version: '1.0.0', + package: 'nx', + implementation: './src/migrations/migration-1.ts', + }, + { + id: 'migration-2', + name: 'migration-2', + description: + 'Funnily, this is another migration that does a thing labeled with two.', + version: '1.0.1', + package: '@nx/react', + implementation: './src/migrations/migration-2.ts', + }, + { + id: 'migration-3', + name: 'migration-3', + description: + 'This is a migration that does a thing labeled with three.', + version: '1.0.1', + package: '@nx/js', + implementation: './src/migrations/migration-3.ts', + }, + { + id: 'migration-4', + name: 'migration-4', + description: 'This is a migration that does a thing labeled with four.', + version: '1.0.2', + package: 'nx', + implementation: './src/migrations/migration-4.ts', + }, + { + id: 'migration-3-1', + name: 'migration-3', + description: + 'This is a migration that does a thing labeled with three.', + version: '1.0.1', + package: '@nx/js', + implementation: './src/migrations/migration-3.ts', + }, + { + id: 'migration-6', + name: 'migration-6', + description: 'This migration performs updates labeled as number six.', + version: '1.0.3', + package: '@nx/workspace', + implementation: './src/migrations/migration-6.ts', + }, + { + id: 'migration-7', + name: 'migration-7', + description: + 'Lucky number seven migration that updates configurations.', + version: '1.0.3', + package: '@nx/devkit', + implementation: './src/migrations/migration-7.ts', + }, + ], + nxConsoleMetadata: { + completedMigrations: { + 'migration-1': { + name: 'migration-1', + type: 'successful', + changedFiles: [], + ref: '123', + }, + 'migration-2': { + type: 'skipped', + }, + 'migration-3': { + name: 'migration-3', + type: 'failed', + error: 'This is an error', + }, + }, + targetVersion: '20.3.2', + }, + onFinish: (squash: boolean) => { + console.log('finished', squash); + }, + }, +}; + +export const AllCompleted: Story = { + args: { + migrations: [ + { + id: 'migration-1', + name: 'migration-1', + description: 'This is a migration that does a thing labeled with one.', + version: '1.0.0', + package: 'nx', + implementation: './src/migrations/migration-1.ts', + }, + { + id: 'migration-2', + name: 'migration-2', + description: + 'Funnily, this is another migration that does a thing labeled with two.', + version: '1.0.1', + package: '@nx/react', + implementation: './src/migrations/migration-2.ts', + }, + { + id: 'migration-3', + name: 'migration-3', + description: + 'This is a migration that does a thing labeled with three.', + version: '1.0.1', + package: '@nx/js', + implementation: './src/migrations/migration-3.ts', + }, + { + id: 'migration-4', + name: 'migration-4', + description: 'This is a migration that does a thing labeled with four.', + version: '1.0.2', + package: 'nx', + implementation: './src/migrations/migration-4.ts', + }, + { + id: 'migration-3-1', + name: 'migration-3', + description: + 'This is a migration that does a thing labeled with three.', + version: '1.0.1', + package: '@nx/js', + implementation: './src/migrations/migration-3.ts', + }, + { + id: 'migration-6', + name: 'migration-6', + description: 'This migration performs updates labeled as number six.', + version: '1.0.3', + package: '@nx/workspace', + implementation: './src/migrations/migration-6.ts', + }, + { + id: 'migration-7', + name: 'migration-7', + description: + 'Lucky number seven migration that updates configurations.', + version: '1.0.3', + package: '@nx/devkit', + implementation: './src/migrations/migration-7.ts', + }, + ], + nxConsoleMetadata: { + completedMigrations: { + 'migration-1': { + name: 'migration-1', + type: 'successful', + changedFiles: [], + ref: '123', + }, + 'migration-2': { + name: 'migration-2', + type: 'successful', + changedFiles: [], + ref: '124', + }, + 'migration-3': { + name: 'migration-3', + type: 'successful', + changedFiles: [], + ref: '125', + }, + 'migration-4': { + name: 'migration-4', + type: 'successful', + changedFiles: [], + ref: '126', + }, + 'migration-3-1': { + name: 'migration-3', + type: 'successful', + changedFiles: [], + ref: '127', + }, + 'migration-6': { + name: 'migration-6', + type: 'successful', + changedFiles: [], + ref: '128', + }, + 'migration-7': { + name: 'migration-7', + type: 'successful', + changedFiles: [], + ref: '129', + }, + }, + targetVersion: '20.3.2', + }, + onRunMigration: (migration) => { + console.log('run migration', migration); + }, + onRunMany: (migrations, configuration) => { + console.log('run many migrations', migrations, configuration); + }, + onSkipMigration: (migration) => { + console.log('skip migration', migration); + }, + onFileClick: (migration, file) => { + console.log('file click', migration, file); + }, + onViewImplementation: (migration) => { + console.log('view implementation', migration); + }, + onViewDocumentation: (migration) => { + console.log('view documentation', migration); + }, + onCancel: () => { + console.log('cancel'); + }, + onFinish: (squash: boolean) => { + console.log('finished', squash); + }, + }, +}; diff --git a/graph/migrate/src/lib/migrate.tsx b/graph/migrate/src/lib/migrate.tsx new file mode 100644 index 0000000000..b7827b8ec7 --- /dev/null +++ b/graph/migrate/src/lib/migrate.tsx @@ -0,0 +1,319 @@ +/* eslint-disable @nx/enforce-module-boundaries */ +// nx-ignore-next-line +import type { MigrationDetailsWithId } from 'nx/src/config/misc-interfaces'; +// nx-ignore-next-line +import type { MigrationsJsonMetadata } from 'nx/src/command-line/migrate/migrate-ui-api'; +// nx-ignore-next-line +import { type FileChange } from 'nx/src/devkit-exports'; +/* eslint-enable @nx/enforce-module-boundaries */ +import { useEffect, useState } from 'react'; +import { CheckIcon, ChevronDownIcon } from '@heroicons/react/24/outline'; +import { Popover } from '@nx/graph/ui-common'; +import { useInterpret, useSelector } from '@xstate/react'; +import { machine as automaticMigrationMachine } from './state/automatic/machine'; +import { + MigrationInit, + MigrationDone, + MigrationSettingsPanel, + AutomaticMigration, +} from './components'; + +export interface MigrateUIProps { + migrations: MigrationDetailsWithId[]; + nxConsoleMetadata: MigrationsJsonMetadata; + onRunMigration: ( + migration: MigrationDetailsWithId, + configuration: { + createCommits: boolean; + } + ) => void; + onRunMany: ( + migrations: MigrationDetailsWithId[], + configuration: { + createCommits: boolean; + commitPrefix: string; + } + ) => void; + onSkipMigration: (migration: MigrationDetailsWithId) => void; + onCancel: () => void; + onFinish: (squashCommits: boolean) => void; + onFileClick: ( + migration: MigrationDetailsWithId, + file: Omit + ) => void; + onViewImplementation: (migration: MigrationDetailsWithId) => void; + onViewDocumentation: (migration: MigrationDetailsWithId) => void; +} + +export enum PrimaryAction { + RunMigrations = 'Run Migrations', + PauseMigrations = 'Pause Migrations', + FinishWithoutSquashingCommits = 'Finish without squashing commits', + FinishSquashingCommits = 'Finish (squash commits)', +} + +export function MigrateUI(props: MigrateUIProps) { + const [createCommits, setCreateCommits] = useState(true); + const [commitPrefix, setCommitPrefix] = useState(''); + const [primaryAction, setPrimaryAction] = useState( + PrimaryAction.RunMigrations + ); + // For popover + const [isOpen, setIsOpen] = useState(false); + + const actor = useInterpret(automaticMigrationMachine, { + actions: { + runMigration: (ctx) => { + console.log('runMigration', ctx.currentMigration); + if (ctx.currentMigration) { + props.onRunMigration(ctx.currentMigration, { createCommits }); + } + }, + }, + }); + const isDone = useSelector(actor, (state) => state.matches('done')); + const isInit = useSelector(actor, (state) => state.matches('init')); + const running = useSelector(actor, (state) => state.matches('running')); + + useEffect(() => { + actor.send({ + type: 'loadInitialData', + migrations: props.migrations, + metadata: props.nxConsoleMetadata, + }); + // eslint-disable-next-line react-hooks/exhaustive-deps -- only load initial data when migrations change + }, [JSON.stringify(props.migrations)]); + + useEffect(() => { + actor.send({ + type: 'updateMetadata', + metadata: props.nxConsoleMetadata, + }); + }, [props.nxConsoleMetadata, actor]); + + useEffect(() => { + if (isDone) { + setPrimaryAction(PrimaryAction.FinishSquashingCommits); + } + }, [isDone, primaryAction]); + + useEffect(() => { + if ( + (primaryAction === PrimaryAction.RunMigrations || + primaryAction === PrimaryAction.PauseMigrations) && + !isInit + ) { + setPrimaryAction( + running ? PrimaryAction.PauseMigrations : PrimaryAction.RunMigrations + ); + } + }, [running, primaryAction, isInit]); + + const handlePauseResume = () => { + if (running) { + actor.send({ type: 'pause' }); + } else { + actor.send({ type: 'startRunning' }); + } + }; + + const handlePrimaryActionSelection = () => { + if ( + primaryAction === PrimaryAction.RunMigrations || + primaryAction === PrimaryAction.PauseMigrations + ) { + handlePauseResume(); + } else if ( + primaryAction === PrimaryAction.FinishWithoutSquashingCommits || + primaryAction === PrimaryAction.FinishSquashingCommits + ) { + props.onFinish(primaryAction === PrimaryAction.FinishSquashingCommits); + } + }; + + if (isInit) { + return ( + actor.send({ type: 'startRunning' })} /> + ); + } + + if (isDone) { + return ( + + ); + } + + return ( +
+ {/* Page Header */} +
+
+

+ Migrating to {props.nxConsoleMetadata.targetVersion} +

+ + {/* Migration Controls */} +
+ + { + + } +
+
+ + props.onRunMigration(migration, { createCommits }) + } + onSkipMigration={(migration) => props.onSkipMigration(migration)} + onViewImplementation={(migration) => + props.onViewImplementation(migration) + } + onViewDocumentation={(migration) => + props.onViewDocumentation(migration) + } + onFileClick={props.onFileClick} + /> +
+
+
+ +
+ +
+ + setIsOpen(false)} + position={{ + left: '-14rem', + top: isDone ? '2.75rem' : '-9.75rem', + }} + > +
    + {!isDone && ( + <> + {' '} + {!running && ( +
  • { + setPrimaryAction(PrimaryAction.RunMigrations); + setIsOpen(false); + }} + > + + + + {'Run Migrations'} +
  • + )} + {running && ( +
  • { + setPrimaryAction(PrimaryAction.PauseMigrations); + setIsOpen(false); + }} + > + + + + {'Pause Migrations'} +
  • + )} +
    + + )} +
  • { + setPrimaryAction(PrimaryAction.FinishSquashingCommits); + setIsOpen(false); + }} + > + + + + Squash commits +
  • +
  • { + setPrimaryAction( + PrimaryAction.FinishWithoutSquashingCommits + ); + setIsOpen(false); + }} + > + + + + Do not squash commits +
  • +
+
+
+
+
+
+
+ ); +} + +export default MigrateUI; diff --git a/graph/migrate/src/lib/state/automatic/actions.ts b/graph/migrate/src/lib/state/automatic/actions.ts new file mode 100644 index 0000000000..e69de29bb2 diff --git a/graph/migrate/src/lib/state/automatic/guards.ts b/graph/migrate/src/lib/state/automatic/guards.ts new file mode 100644 index 0000000000..dd3f1cd40c --- /dev/null +++ b/graph/migrate/src/lib/state/automatic/guards.ts @@ -0,0 +1,49 @@ +import { AutomaticMigrationState } from './types'; +import { + currentMigrationCanLeaveReview, + currentMigrationHasChanges, + currentMigrationHasFailed, + currentMigrationIsSkipped, +} from './selectors'; + +export const guards = { + canStartRunningCurrentMigration: (ctx: AutomaticMigrationState) => { + return ( + !!ctx.currentMigration && + !ctx.currentMigrationRunning && + ((!currentMigrationHasFailed(ctx) && !currentMigrationHasChanges(ctx)) || + currentMigrationIsSkipped(ctx)) + ); + }, + currentMigrationIsDone: (ctx: AutomaticMigrationState) => { + if (!ctx.currentMigration) { + return false; + } + + return ( + !!ctx.currentMigration && + !ctx.currentMigrationRunning && + currentMigrationCanLeaveReview(ctx) + ); + }, + currentMigrationCanLeaveReview: (ctx: AutomaticMigrationState) => + currentMigrationCanLeaveReview(ctx), + lastMigrationIsDone: (ctx: AutomaticMigrationState) => { + if (!ctx.migrations) { + return false; + } + const currentMigrationIndex = ctx.migrations.findIndex( + (migration) => migration.id === ctx.currentMigration?.id + ); + return ( + currentMigrationIndex === ctx.migrations.length - 1 && + currentMigrationCanLeaveReview(ctx) + ); + }, + needsReview: (ctx: AutomaticMigrationState) => { + return ( + !ctx.currentMigrationRunning && + !guards.canStartRunningCurrentMigration(ctx) + ); + }, +}; diff --git a/graph/migrate/src/lib/state/automatic/machine.spec.ts b/graph/migrate/src/lib/state/automatic/machine.spec.ts new file mode 100644 index 0000000000..50f0c8f96c --- /dev/null +++ b/graph/migrate/src/lib/state/automatic/machine.spec.ts @@ -0,0 +1,365 @@ +/* eslint-disable @nx/enforce-module-boundaries */ +// nx-ignore-next-line +import type { MigrationDetailsWithId } from 'nx/src/config/misc-interfaces'; +// nx-ignore-next-line +import { + addFailedMigration, + addSkippedMigration, + addSuccessfulMigration, + MigrationsJsonMetadata, +} from 'nx/src/command-line/migrate/migrate-ui-api'; +/* eslint-enable @nx/enforce-module-boundaries */ + +import { interpret } from 'xstate'; +import { machine } from './machine'; + +const dummyMigrations: MigrationDetailsWithId[] = [ + { + id: 'migration-1', + name: 'migration-1', + description: 'This is a migration that does a thing labeled with one.', + version: '1.0.0', + package: 'nx', + implementation: '/path/to/migration-1', + }, + { + id: 'migration-2', + name: 'migration-2', + description: + 'Funnily, this is another migration that does a thing labeled with two.', + version: '1.0.1', + package: '@nx/react', + implementation: '/path/to/migration-2', + }, + { + id: 'migration-3', + name: 'migration-3', + description: 'This is a migration that does a thing labeled with three.', + version: '1.0.1', + package: '@nx/js', + implementation: '/path/to/migration-3', + }, + { + id: 'migration-4', + name: 'migration-4', + description: 'This is a migration that does a thing labeled with four.', + version: '1.0.2', + package: 'nx', + implementation: '/path/to/migration-4', + }, + { + id: 'migration-3-1', + name: 'migration-3', + description: 'This is a migration that does a thing labeled with three.', + version: '1.0.1', + package: '@nx/js', + implementation: '/path/to/migration-3', + }, + { + id: 'migration-6', + name: 'migration-6', + description: 'This migration performs updates labeled as number six.', + version: '1.0.3', + package: '@nx/workspace', + implementation: '/path/to/migration-6', + }, + { + id: 'migration-7', + name: 'migration-7', + description: 'Lucky number seven migration that updates configurations.', + version: '1.0.3', + package: '@nx/devkit', + implementation: '/path/to/migration-7', + }, +]; + +describe('Automatic Migration Machine', () => { + it('should start in init state', () => { + const service = interpret(machine); + service.start(); + expect(service.getSnapshot().value).toBe('init'); + service.stop(); + }); + + it('should keep running migrations until one fails', async () => { + let metadata: MigrationsJsonMetadata = { + targetVersion: '20.3.2', + }; + const service = interpret( + machine.withConfig({ + actions: { + runMigration: (ctx) => { + const migration = ctx.currentMigration; + if (!migration) { + return; + } + console.log('running migration', migration.id); + if (migration.id !== 'migration-3') { + metadata = addSuccessfulMigration( + migration.id, + [], + 'commit-123' + )(metadata); + } else { + metadata = addFailedMigration(migration.id, 'error')(metadata); + } + service.send({ + type: 'updateMetadata', + metadata, + }); + }, + }, + }) + ); + service.start(); + service.send({ + type: 'loadInitialData', + migrations: dummyMigrations, + metadata: metadata, + }); + + service.send('startRunning'); + expect(service.getSnapshot().value).toBe('needsReview'); + expect(service.getSnapshot().context.currentMigration?.id).toEqual( + 'migration-3' + ); + + service.stop(); + }); + + it('should continue running migrations after failed one is skipped', async () => { + let metadata: MigrationsJsonMetadata = { + targetVersion: '20.3.2', + }; + const service = interpret( + machine.withConfig({ + actions: { + runMigration: (ctx) => { + const migration = ctx.currentMigration; + if (!migration) { + return; + } + console.log('running migration', migration.id); + if (migration.id !== 'migration-3') { + metadata = addSuccessfulMigration( + migration.id, + [], + 'commit-123' + )(metadata); + } else { + metadata = addFailedMigration(migration.id, 'error')(metadata); + } + service.send({ + type: 'updateMetadata', + metadata, + }); + }, + }, + }) + ); + service.start(); + service.send({ + type: 'loadInitialData', + migrations: dummyMigrations, + metadata: metadata, + }); + + service.send('startRunning'); + expect(service.getSnapshot().value).toBe('needsReview'); + expect(service.getSnapshot().context.currentMigration?.id).toEqual( + 'migration-3' + ); + + metadata = addSkippedMigration('migration-3')(metadata); + + service.send({ + type: 'updateMetadata', + metadata, + }); + + expect(service.getSnapshot().value).toBe('done'); + expect(service.getSnapshot().context.currentMigration?.id).toEqual( + 'migration-7' + ); + + service.stop(); + }); + + it('should keep running migrations until one has changes', async () => { + let metadata: MigrationsJsonMetadata = { + targetVersion: '20.3.2', + }; + const service = interpret( + machine.withConfig({ + actions: { + runMigration: (ctx) => { + const migration = ctx.currentMigration; + if (!migration) { + return; + } + console.log('running migration', migration.id); + if (migration.id !== 'migration-3') { + metadata = addSuccessfulMigration( + migration.id, + [], + 'commit-123' + )(metadata); + } else { + metadata = addSuccessfulMigration( + migration.id, + [ + { + type: 'UPDATE', + path: 'apps/app/tsconfig.json', + }, + ], + 'commit-123' + )(metadata); + } + service.send({ + type: 'updateMetadata', + metadata, + }); + }, + }, + }) + ); + service.start(); + service.send({ + type: 'loadInitialData', + migrations: dummyMigrations, + metadata: metadata, + }); + + service.send('startRunning'); + expect(service.getSnapshot().value).toBe('needsReview'); + expect(service.getSnapshot().context.currentMigration?.id).toEqual( + 'migration-3' + ); + + service.stop(); + }); + + it('should keep running migrations after changes are reviewed', async () => { + let metadata: MigrationsJsonMetadata = { + targetVersion: '20.3.2', + }; + const service = interpret( + machine.withConfig({ + actions: { + runMigration: (ctx) => { + const migration = ctx.currentMigration; + if (!migration) { + return; + } + console.log('running migration', migration.id); + if (migration.id !== 'migration-3') { + metadata = addSuccessfulMigration( + migration.id, + [], + 'commit-123' + )(metadata); + } else { + metadata = addSuccessfulMigration( + migration.id, + [ + { + type: 'UPDATE', + path: 'apps/app/tsconfig.json', + }, + ], + 'commit-123' + )(metadata); + } + service.send({ + type: 'updateMetadata', + metadata, + }); + }, + }, + }) + ); + service.start(); + service.send({ + type: 'loadInitialData', + migrations: dummyMigrations, + metadata: metadata, + }); + + service.send('startRunning'); + expect(service.getSnapshot().value).toBe('needsReview'); + expect(service.getSnapshot().context.currentMigration?.id).toEqual( + 'migration-3' + ); + + service.send({ + type: 'reviewMigration', + migrationId: 'migration-3', + }); + expect(service.getSnapshot().value).toBe('done'); + expect(service.getSnapshot().context.currentMigration?.id).toEqual( + 'migration-7' + ); + service.stop(); + }); + + it('should not continue running migrations after failed one is skipped if state is paused', async () => { + let metadata: MigrationsJsonMetadata = { + targetVersion: '20.3.2', + }; + const service = interpret( + machine.withConfig({ + actions: { + runMigration: (ctx) => { + const migration = ctx.currentMigration; + if (!migration) { + return; + } + console.log('running migration', migration.id); + if (migration.id !== 'migration-3') { + metadata = addSuccessfulMigration( + migration.id, + [], + 'commit-123' + )(metadata); + } else { + metadata = addFailedMigration(migration.id, 'error')(metadata); + } + service.send({ + type: 'updateMetadata', + metadata, + }); + }, + }, + }) + ); + service.start(); + service.send({ + type: 'loadInitialData', + migrations: dummyMigrations, + metadata: metadata, + }); + + service.send('startRunning'); + expect(service.getSnapshot().value).toBe('needsReview'); + expect(service.getSnapshot().context.currentMigration?.id).toEqual( + 'migration-3' + ); + + service.send('pause'); + + metadata = addSkippedMigration('migration-3')(metadata); + + service.send({ + type: 'updateMetadata', + metadata, + }); + + expect(service.getSnapshot().value).toBe('paused'); + expect(service.getSnapshot().context.currentMigration?.id).toEqual( + 'migration-3' + ); + + service.stop(); + }); +}); diff --git a/graph/migrate/src/lib/state/automatic/machine.ts b/graph/migrate/src/lib/state/automatic/machine.ts new file mode 100644 index 0000000000..72f6398fb3 --- /dev/null +++ b/graph/migrate/src/lib/state/automatic/machine.ts @@ -0,0 +1,157 @@ +import { assign } from '@xstate/immer'; +import { createMachine } from 'xstate'; +import { guards } from './guards'; +import type { + AutomaticMigrationEvents, + AutomaticMigrationState, +} from './types'; +import { findFirstIncompleteMigration } from './selectors'; + +export const machine = createMachine< + AutomaticMigrationState, + AutomaticMigrationEvents +>( + { + /** @xstate-layout N4IgpgJg5mDOIC5QFsCWUBOBDALmAxADYD2WEAkgHao6paEAiuWA2gAwC6ioADsbDVTFK3EAA9EbAHQAmAIwAOBXLkB2AJyqALADYtbLTIA0IAJ6IdO9VJ0GAzGx0yZOgKwGAvh5NpMuAgCuPBD+ALJgOGTM7FxIIHwCtMKiEgiKOlJauuqu6mzqCqquyibmCG4ZMppsMmxsdupy6k5ePujYeFI8WAGwkPiwkRg4AEoBlNSUUDGiCYLJcalyupmqVa6ubjLKdtqliHIyNgquLpZshzraWnatIL4dYFIY45NQ+N29YDNxc0kiiwOqjkUk2qjsWjUkMsy32aQUdlkWRceS06js2wxdwe-mer1QU3wP14-HmANAqWKINUOgUVS0SkU+nUcO0oI0lgxllcWTU2PauJeEwJ7xYcliJMSQnJ4kQm0R8kMtg2+RkuzhyxBclcTVcawMbFcENU-L8nSFbyJMgl8VJ-xScrsiMMevUMlUbGBemMZkQLkRbo2BQ2Gl0rlNjzxwsJLDsNr+0odCFy1jq2jkTlpCNUCjhLqk6kLymKVXyWhpEdxlDAkFgIzAADdUGAAO4fHp9Ym2qULCmIAC0y1BhuUarUPIUzVccIcCikRScwLYk6KDRN3nuAs61dr9abraJnFmdsTgIQ7qOwPcziyy9pPrK+mk6Lccgh2rkBgUOi8G8oxAgOBRBxPBjx7GVUn7JxhypMcigZKc4X7NkdF2Nx8mKBDNErTpPj6CAwLJJN+2sKwXCURdilpcs4TdKQMTsJwZB1eoaTpHCngtEVCPtM9GMqZQ6TdHQVEMAxWTnL9tTydQshzdEOKkHcIDrRtmxbHjTz7BA7CaKRs3cXZCyqSw4UM0E1TyXTyLsBQtEUiBhDATTe1lBAdn01RgWcK4GiyLQ8znYp6i0TZJ3cE51F-DwgA */ + predictableActionArguments: true, + preserveActionOrder: true, + id: 'migrate', + initial: 'init', + context: { + reviewedMigrations: [], + }, + states: { + init: { + on: { + startRunning: [ + { + target: 'running', + }, + ], + }, + }, + paused: { + on: { + startRunning: [ + { + target: 'running', + }, + ], + }, + }, + running: { + on: { + pause: [ + { + target: 'paused', + }, + ], + }, + always: [ + { + cond: 'lastMigrationIsDone', + target: 'done', + }, + { + cond: 'currentMigrationIsDone', + target: 'running', + actions: ['incrementCurrentMigration'], + }, + { + cond: 'canStartRunningCurrentMigration', + actions: ['setCurrentMigrationRunning', 'runMigration'], + }, + { + target: 'needsReview', + cond: 'needsReview', + }, + ], + }, + needsReview: { + on: { + pause: [ + { + target: 'paused', + }, + ], + }, + always: [ + { + cond: 'currentMigrationCanLeaveReview', + target: 'running', + }, + ], + }, + done: {}, + }, + on: { + loadInitialData: [ + { + actions: [ + assign((ctx, event) => { + ctx.migrations = event.migrations; + ctx.nxConsoleMetadata = event.metadata; + ctx.currentMigration = findFirstIncompleteMigration( + event.migrations, + event.metadata + ); + }), + ], + }, + ], + updateMetadata: [ + { + actions: [ + assign((ctx, event) => { + ctx.nxConsoleMetadata = event.metadata; + + if ( + ctx.currentMigration && + ctx.nxConsoleMetadata.completedMigrations?.[ + ctx.currentMigration.id + ] + ) { + ctx.currentMigrationRunning = false; + } + }), + ], + }, + ], + reviewMigration: [ + { + actions: [ + assign((ctx, event) => { + ctx.reviewedMigrations = [ + ...ctx.reviewedMigrations, + event.migrationId, + ]; + }), + ], + }, + ], + }, + }, + { + guards, + actions: { + incrementCurrentMigration: assign((ctx) => { + if (!ctx.migrations) { + return; + } + const currentMigrationIndex = ctx.migrations?.findIndex( + (migration) => migration.id === ctx.currentMigration?.id + ); + if ( + currentMigrationIndex === undefined || + currentMigrationIndex === ctx.migrations.length - 1 + ) { + return; + } + ctx.currentMigration = ctx.migrations?.[currentMigrationIndex + 1]; + }), + setCurrentMigrationRunning: assign((ctx) => { + ctx.currentMigrationRunning = true; + }), + }, + } +); diff --git a/graph/migrate/src/lib/state/automatic/selectors.ts b/graph/migrate/src/lib/state/automatic/selectors.ts new file mode 100644 index 0000000000..b4f162c3a7 --- /dev/null +++ b/graph/migrate/src/lib/state/automatic/selectors.ts @@ -0,0 +1,78 @@ +/* eslint-disable @nx/enforce-module-boundaries */ +import { MigrationsJsonMetadata } from 'nx/src/command-line/migrate/migrate-ui-api'; +import { MigrationDetailsWithId } from 'nx/src/config/misc-interfaces'; +/* eslint-enable @nx/enforce-module-boundaries */ +import type { AutomaticMigrationState } from './types'; + +// this is where the ui should start off on +// we assume completed migrations in the past are reviewed +export function findFirstIncompleteMigration( + migrations: MigrationDetailsWithId[], + nxConsoleMetadata: MigrationsJsonMetadata +) { + return ( + migrations.find( + (migration) => + nxConsoleMetadata.completedMigrations?.[migration.id]?.type !== + 'successful' && + nxConsoleMetadata.completedMigrations?.[migration.id]?.type !== + 'skipped' + ) ?? migrations[0] + ); +} + +export function currentMigrationHasSucceeded(ctx: AutomaticMigrationState) { + if (!ctx.currentMigration) { + return false; + } + const completedMigration = + ctx.nxConsoleMetadata?.completedMigrations?.[ctx.currentMigration.id]; + return completedMigration?.type === 'successful'; +} + +export function currentMigrationHasChanges(ctx: AutomaticMigrationState) { + if (!ctx.currentMigration) { + return false; + } + const completedMigration = + ctx.nxConsoleMetadata?.completedMigrations?.[ctx.currentMigration.id]; + return ( + completedMigration?.type === 'successful' && + completedMigration.changedFiles.length > 0 + ); +} + +export function currentMigrationIsSkipped(ctx: AutomaticMigrationState) { + if (!ctx.currentMigration) { + return false; + } + const completedMigration = + ctx.nxConsoleMetadata?.completedMigrations?.[ctx.currentMigration.id]; + return completedMigration?.type === 'skipped'; +} + +export function currentMigrationIsReviewed(ctx: AutomaticMigrationState) { + if (!ctx.currentMigration) { + return false; + } + return ctx.reviewedMigrations.includes(ctx.currentMigration.id); +} + +export function currentMigrationCanLeaveReview(ctx: AutomaticMigrationState) { + return ( + currentMigrationIsReviewed(ctx) || + currentMigrationIsSkipped(ctx) || + (currentMigrationHasSucceeded(ctx) && !currentMigrationHasChanges(ctx)) + ); +} + +export function currentMigrationHasFailed( + ctx: AutomaticMigrationState +): boolean { + if (!ctx.currentMigration) { + return false; + } + const completedMigration = + ctx.nxConsoleMetadata?.completedMigrations?.[ctx.currentMigration.id]; + return completedMigration?.type === 'failed'; +} diff --git a/graph/migrate/src/lib/state/automatic/types.ts b/graph/migrate/src/lib/state/automatic/types.ts new file mode 100644 index 0000000000..ff497d2bab --- /dev/null +++ b/graph/migrate/src/lib/state/automatic/types.ts @@ -0,0 +1,33 @@ +/* eslint-disable @nx/enforce-module-boundaries */ +import { MigrationsJsonMetadata } from 'nx/src/command-line/migrate/migrate-ui-api'; +import { MigrationDetailsWithId } from 'nx/src/config/misc-interfaces'; +/* eslint-enable @nx/enforce-module-boundaries */ + +export type AutomaticMigrationState = { + migrations?: MigrationDetailsWithId[]; + nxConsoleMetadata?: MigrationsJsonMetadata; + currentMigration?: MigrationDetailsWithId; + currentMigrationRunning?: boolean; + reviewedMigrations: string[]; +}; + +export type AutomaticMigrationEvents = + | { + type: 'loadInitialData'; + migrations: MigrationDetailsWithId[]; + metadata: MigrationsJsonMetadata; + } + | { + type: 'updateMetadata'; + metadata: MigrationsJsonMetadata; + } + | { + type: 'pause'; + } + | { + type: 'startRunning'; + } + | { + type: 'reviewMigration'; + migrationId: string; + }; diff --git a/graph/migrate/tailwind.config.js b/graph/migrate/tailwind.config.js new file mode 100644 index 0000000000..b96f339e7d --- /dev/null +++ b/graph/migrate/tailwind.config.js @@ -0,0 +1,20 @@ +/* eslint-disable @nx/enforce-module-boundaries */ +// nx-ignore-next-line +const { createGlobPatternsForDependencies } = require('@nx/react/tailwind'); +/* eslint-enable @nx/enforce-module-boundaries */ +const { join } = require('path'); + +/** @type {import('tailwindcss').Config} */ +module.exports = { + content: [ + join( + __dirname, + '{src,pages,components,app}/**/*!(*.stories|*.spec).{ts,tsx,html}' + ), + ...createGlobPatternsForDependencies(__dirname), + ], + theme: { + extend: {}, + }, + plugins: [], +}; diff --git a/graph/migrate/tsconfig.json b/graph/migrate/tsconfig.json new file mode 100644 index 0000000000..79d9ca983d --- /dev/null +++ b/graph/migrate/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "jsx": "react-jsx", + "allowJs": false, + "esModuleInterop": false, + "allowSyntheticDefaultImports": true, + "strict": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + }, + { + "path": "./tsconfig.storybook.json" + } + ], + "extends": "../../tsconfig.base.json" +} diff --git a/graph/migrate/tsconfig.lib.json b/graph/migrate/tsconfig.lib.json new file mode 100644 index 0000000000..15785607d1 --- /dev/null +++ b/graph/migrate/tsconfig.lib.json @@ -0,0 +1,28 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "types": [ + "node", + "@nx/react/typings/cssmodule.d.ts", + "@nx/react/typings/image.d.ts" + ], + "lib": ["DOM"] + }, + "exclude": [ + "jest.config.ts", + "src/**/*.spec.ts", + "src/**/*.test.ts", + "src/**/*.spec.tsx", + "src/**/*.test.tsx", + "src/**/*.spec.js", + "src/**/*.test.js", + "src/**/*.spec.jsx", + "src/**/*.test.jsx", + "**/*.stories.ts", + "**/*.stories.js", + "**/*.stories.jsx", + "**/*.stories.tsx" + ], + "include": ["src/**/*.js", "src/**/*.jsx", "src/**/*.ts", "src/**/*.tsx"] +} diff --git a/graph/migrate/tsconfig.spec.json b/graph/migrate/tsconfig.spec.json new file mode 100644 index 0000000000..26ef046ac5 --- /dev/null +++ b/graph/migrate/tsconfig.spec.json @@ -0,0 +1,20 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "module": "commonjs", + "types": ["jest", "node"] + }, + "include": [ + "jest.config.ts", + "src/**/*.test.ts", + "src/**/*.spec.ts", + "src/**/*.test.tsx", + "src/**/*.spec.tsx", + "src/**/*.test.js", + "src/**/*.spec.js", + "src/**/*.test.jsx", + "src/**/*.spec.jsx", + "src/**/*.d.ts" + ] +} diff --git a/graph/migrate/tsconfig.storybook.json b/graph/migrate/tsconfig.storybook.json new file mode 100644 index 0000000000..9e70826fb9 --- /dev/null +++ b/graph/migrate/tsconfig.storybook.json @@ -0,0 +1,31 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "emitDecoratorMetadata": true, + "outDir": "" + }, + "exclude": [ + "src/**/*.spec.ts", + "src/**/*.test.ts", + "src/**/*.spec.js", + "src/**/*.test.js", + "src/**/*.spec.tsx", + "src/**/*.test.tsx", + "src/**/*.spec.jsx", + "src/**/*.test.js" + ], + "include": [ + "src/**/*.stories.ts", + "src/**/*.stories.js", + "src/**/*.stories.jsx", + "src/**/*.stories.tsx", + "src/**/*.stories.mdx", + ".storybook/*.js", + ".storybook/*.ts" + ], + "files": [ + "../../node_modules/@nx/react/typings/styled-jsx.d.ts", + "../../node_modules/@nx/react/typings/cssmodule.d.ts", + "../../node_modules/@nx/react/typings/image.d.ts" + ] +} diff --git a/graph/ui-common/.eslintrc.json b/graph/ui-common/.eslintrc.json new file mode 100644 index 0000000000..9d9c0db55b --- /dev/null +++ b/graph/ui-common/.eslintrc.json @@ -0,0 +1,18 @@ +{ + "extends": ["../../.eslintrc.json"], + "ignorePatterns": ["!**/*"], + "overrides": [ + { + "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], + "rules": {} + }, + { + "files": ["*.ts", "*.tsx"], + "rules": {} + }, + { + "files": ["*.js", "*.jsx"], + "rules": {} + } + ] +} diff --git a/graph/ui-common/README.md b/graph/ui-common/README.md new file mode 100644 index 0000000000..9b3d3e6a01 --- /dev/null +++ b/graph/ui-common/README.md @@ -0,0 +1,3 @@ +# ui-common + +This library was generated with [Nx](https://nx.dev). diff --git a/graph/ui-common/project.json b/graph/ui-common/project.json new file mode 100644 index 0000000000..e316a33ef9 --- /dev/null +++ b/graph/ui-common/project.json @@ -0,0 +1,9 @@ +{ + "name": "ui-common", + "$schema": "../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "graph/ui-common/src", + "projectType": "library", + "tags": [], + "// targets": "to see all targets run: nx show project ui-common --web", + "targets": {} +} diff --git a/graph/ui-common/src/index.ts b/graph/ui-common/src/index.ts new file mode 100644 index 0000000000..2c6de44d72 --- /dev/null +++ b/graph/ui-common/src/index.ts @@ -0,0 +1,3 @@ +export * from './lib/collapsible'; +export * from './lib/popover'; +export * from './lib/button'; diff --git a/graph/ui-common/src/lib/button.tsx b/graph/ui-common/src/lib/button.tsx new file mode 100644 index 0000000000..516036e9b6 --- /dev/null +++ b/graph/ui-common/src/lib/button.tsx @@ -0,0 +1,31 @@ +import { ReactNode } from 'react'; + +interface ButtonProps { + onClick: () => void; + children: ReactNode; + disabled?: boolean; + className?: string; +} + +export function Button({ + children, + onClick, + disabled, + className = '', +}: ButtonProps) { + return ( +
+ +
+ ); +} diff --git a/graph/ui-common/src/lib/collapsible.tsx b/graph/ui-common/src/lib/collapsible.tsx new file mode 100644 index 0000000000..e0be432e9e --- /dev/null +++ b/graph/ui-common/src/lib/collapsible.tsx @@ -0,0 +1,26 @@ +import { motion, AnimatePresence } from 'framer-motion'; +import { ReactNode } from 'react'; + +interface CollapsibleProps { + isOpen: boolean; + children: ReactNode; + className?: string; +} + +export function Collapsible({ isOpen, children, className }: CollapsibleProps) { + return ( + + {isOpen && ( + + {children} + + )} + + ); +} diff --git a/graph/ui-common/src/lib/popover.tsx b/graph/ui-common/src/lib/popover.tsx new file mode 100644 index 0000000000..08b0c40d55 --- /dev/null +++ b/graph/ui-common/src/lib/popover.tsx @@ -0,0 +1,33 @@ +import { useFloating, useDismiss, useInteractions } from '@floating-ui/react'; + +export interface PopoverProps { + children: React.ReactNode; + isOpen: boolean; + onClose: () => void; + position?: { top?: string; left?: string; right?: string; bottom?: string }; +} + +export function Popover({ isOpen, onClose, children, position }: PopoverProps) { + const { refs, floatingStyles, context } = useFloating({ + open: isOpen, + onOpenChange: (open) => { + if (!open) onClose(); + }, + }); + + const dismiss = useDismiss(context, { referencePress: false }); + const { getFloatingProps } = useInteractions([dismiss]); + + if (!isOpen) return null; + + return ( +
+ {children} +
+ ); +} diff --git a/graph/ui-common/tsconfig.json b/graph/ui-common/tsconfig.json new file mode 100644 index 0000000000..6d076c06d5 --- /dev/null +++ b/graph/ui-common/tsconfig.json @@ -0,0 +1,20 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "jsx": "react-jsx", + "allowJs": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "forceConsistentCasingInFileNames": true, + "strict": true, + "noImplicitReturns": true, + "noFallthroughCasesInSwitch": true + }, + "files": [], + "include": [], + "references": [ + { + "path": "./tsconfig.lib.json" + } + ] +} diff --git a/graph/ui-common/tsconfig.lib.json b/graph/ui-common/tsconfig.lib.json new file mode 100644 index 0000000000..4cdfabb3c6 --- /dev/null +++ b/graph/ui-common/tsconfig.lib.json @@ -0,0 +1,19 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "../../dist/out-tsc", + "types": ["node"] + }, + "files": [ + "../../node_modules/@nx/react/typings/cssmodule.d.ts", + "../../node_modules/@nx/react/typings/image.d.ts" + ], + "exclude": [ + "**/*.spec.ts", + "**/*.test.ts", + "**/*.spec.tsx", + "**/*.test.tsx", + "jest.config.ts" + ], + "include": ["**/*.js", "**/*.jsx", "**/*.ts", "**/*.tsx"] +} diff --git a/graph/ui-project-details/src/index.ts b/graph/ui-project-details/src/index.ts index fa5bc208e1..640378f367 100644 --- a/graph/ui-project-details/src/index.ts +++ b/graph/ui-project-details/src/index.ts @@ -1,2 +1,3 @@ export * from './lib/project-details/project-details'; export * from './lib/utils/group-targets'; +export * from './lib/pill'; diff --git a/graph/ui-project-details/src/lib/pill.tsx b/graph/ui-project-details/src/lib/pill.tsx index c68b180d37..80cd13a349 100644 --- a/graph/ui-project-details/src/lib/pill.tsx +++ b/graph/ui-project-details/src/lib/pill.tsx @@ -6,7 +6,7 @@ export function Pill({ tooltip, }: { text: string; - color?: 'grey' | 'green' | 'yellow'; + color?: 'grey' | 'green' | 'yellow' | 'red'; tooltip?: string; }) { return ( @@ -19,7 +19,9 @@ export function Pill({ color === 'green' && 'bg-green-400/10 text-green-500 ring-green-500/40 dark:bg-green-500/10 dark:text-green-400 dark:ring-green-500/20', color === 'yellow' && - 'bg-yellow-50 text-yellow-600 ring-yellow-500/40 dark:bg-yellow-900/30 dark:text-yellow-400 dark:ring-yellow-500/20' + 'bg-yellow-50 text-yellow-600 ring-yellow-500/40 dark:bg-yellow-900/30 dark:text-yellow-400 dark:ring-yellow-500/20', + color === 'red' && + 'bg-red-50 text-red-600 ring-red-500/40 dark:bg-red-900/30 dark:text-red-400 dark:ring-red-500/20' )} > {text} diff --git a/nx.json b/nx.json index 4388e93a5c..66b8b2462b 100644 --- a/nx.json +++ b/nx.json @@ -240,7 +240,16 @@ "serveStaticTargetName": "serve-static" } }, - "@nx/powerpack-enterprise-cloud" + "@nx/powerpack-enterprise-cloud", + { + "plugin": "@nx/storybook/plugin", + "options": { + "serveStorybookTargetName": "serve:storybook", + "buildStorybookTargetName": "build:storybook", + "testStorybookTargetName": "test-storybook", + "staticStorybookTargetName": "static:storybook" + } + } ], "nxCloudId": "62d013ea0852fe0a2df74438", "nxCloudUrl": "https://staging.nx.app", @@ -371,5 +380,12 @@ } } ] + }, + "generators": { + "@nx/react": { + "library": { + "unitTestRunner": "jest" + } + } } } diff --git a/package.json b/package.json index 480d1b0345..10719a49ed 100644 --- a/package.json +++ b/package.json @@ -114,14 +114,15 @@ "@rspack/dev-server": "1.0.9", "@rspack/plugin-minify": "^0.7.5", "@rspack/plugin-react-refresh": "^1.0.0", - "@schematics/angular": "19.2.0", - "@storybook/addon-essentials": "8.6.12", - "@storybook/addon-interactions": "8.6.12", - "@storybook/core-server": "8.6.12", - "@storybook/react": "8.6.12", - "@storybook/react-vite": "8.6.12", - "@storybook/react-webpack5": "8.6.12", - "@storybook/types": "8.6.12", + "@schematics/angular": "~19.2.0", + "@storybook/addon-essentials": "8.4.6", + "@storybook/addon-interactions": "8.4.6", + "@storybook/core-server": "8.4.6", + "@storybook/react": "8.4.6", + "@storybook/react-vite": "8.4.6", + "@storybook/react-webpack5": "8.4.6", + "@storybook/test": "^8.5.1", + "@storybook/types": "^8.4.6", "@supabase/supabase-js": "^2.26.0", "@svgr/rollup": "^8.1.0", "@svgr/webpack": "^8.0.1", @@ -164,6 +165,7 @@ "@typescript-eslint/type-utils": "^8.19.0", "@typescript-eslint/utils": "^8.19.0", "@webcontainer/api": "1.5.1", + "@vitejs/plugin-react": "^4.2.0", "@xstate/immer": "0.3.1", "@xstate/inspect": "0.7.0", "@xstate/react": "3.0.1", diff --git a/packages/nx/src/command-line/migrate/migrate-ui-api.ts b/packages/nx/src/command-line/migrate/migrate-ui-api.ts new file mode 100644 index 0000000000..4d710b11ef --- /dev/null +++ b/packages/nx/src/command-line/migrate/migrate-ui-api.ts @@ -0,0 +1,321 @@ +import { execSync } from 'child_process'; +import { existsSync, readFileSync, rmSync, writeFileSync } from 'fs'; +import { join, resolve } from 'path'; +import type { MigrationDetailsWithId } from '../../config/misc-interfaces'; +import type { FileChange } from '../../generators/tree'; +import { + getImplementationPath as getMigrationImplementationPath, + nxCliPath, + readMigrationCollection, +} from './migrate'; + +export type MigrationsJsonMetadata = { + completedMigrations?: Record< + string, + SuccessfulMigration | FailedMigration | SkippedMigration + >; + runningMigrations?: string[]; + initialGitRef?: { + ref: string; + subject: string; + }; + confirmedPackageUpdates?: boolean; + targetVersion?: string; +}; + +export type SuccessfulMigration = { + type: 'successful'; + name: string; + changedFiles: Omit[]; + ref: string; +}; + +export type FailedMigration = { + type: 'failed'; + name: string; + error: string; +}; + +export type SkippedMigration = { + type: 'skipped'; +}; + +export function recordInitialMigrationMetadata( + workspacePath: string, + versionToMigrateTo: string +) { + const migrationsJsonPath = join(workspacePath, 'migrations.json'); + const parsedMigrationsJson = JSON.parse( + readFileSync(migrationsJsonPath, 'utf-8') + ); + + const gitRef = execSync('git rev-parse HEAD', { + cwd: workspacePath, + encoding: 'utf-8', + }).trim(); + + const gitSubject = execSync('git log -1 --pretty=%s', { + cwd: workspacePath, + encoding: 'utf-8', + }).trim(); + + parsedMigrationsJson['nx-console'] = { + initialGitRef: { + ref: gitRef, + subject: gitSubject, + }, + targetVersion: versionToMigrateTo, + }; + + writeFileSync( + migrationsJsonPath, + JSON.stringify(parsedMigrationsJson, null, 2) + ); +} + +export function finishMigrationProcess( + workspacePath: string, + squashCommits: boolean, + commitMessage: string +) { + const migrationsJsonPath = join(workspacePath, 'migrations.json'); + const parsedMigrationsJson = JSON.parse( + readFileSync(migrationsJsonPath, 'utf-8') + ); + const initialGitRef = ( + parsedMigrationsJson['nx-console'] as MigrationsJsonMetadata + ).initialGitRef; + + if (existsSync(migrationsJsonPath)) { + rmSync(migrationsJsonPath); + } + execSync('git add .', { + cwd: workspacePath, + encoding: 'utf-8', + }); + + execSync(`git commit -m "${commitMessage}" --no-verify`, { + cwd: workspacePath, + encoding: 'utf-8', + }); + + if (squashCommits && initialGitRef) { + execSync(`git reset --soft ${initialGitRef.ref}`, { + cwd: workspacePath, + encoding: 'utf-8', + }); + + execSync(`git commit -m "${commitMessage}" --no-verify`, { + cwd: workspacePath, + encoding: 'utf-8', + }); + } +} + +export async function runSingleMigration( + workspacePath: string, + migration: MigrationDetailsWithId, + configuration: { + createCommits: boolean; + commitPrefix?: string; + } +) { + try { + modifyMigrationsJsonMetadata( + workspacePath, + addRunningMigration(migration.id) + ); + + const gitRefBefore = execSync('git rev-parse HEAD', { + cwd: workspacePath, + encoding: 'utf-8', + }).trim(); + + const cliPath = nxCliPath(workspacePath); + const updatedMigrateLocation = resolve( + cliPath, + '..', + '..', + 'nx', + 'src', + 'command-line', + 'migrate', + 'migrate.js' + ); + + const updatedMigrateModule: typeof import('./migrate') = await import( + updatedMigrateLocation + ); + + const fileChanges = await updatedMigrateModule.runNxOrAngularMigration( + workspacePath, + migration, + false, + configuration.createCommits, + configuration.commitPrefix || 'chore: [nx migration] ', + undefined, + true + ); + + const gitRefAfter = execSync('git rev-parse HEAD', { + cwd: workspacePath, + encoding: 'utf-8', + }).trim(); + + modifyMigrationsJsonMetadata( + workspacePath, + addSuccessfulMigration( + migration.id, + fileChanges.map((change) => ({ + path: change.path, + type: change.type, + })), + gitRefAfter + ) + ); + + if (gitRefBefore !== gitRefAfter) { + execSync('git add migrations.json', { + cwd: workspacePath, + encoding: 'utf-8', + }); + execSync('git commit --amend --no-verify --no-edit', { + cwd: workspacePath, + encoding: 'utf-8', + }); + } + } catch (e) { + modifyMigrationsJsonMetadata( + workspacePath, + addFailedMigration(migration.id, e.message) + ); + } finally { + modifyMigrationsJsonMetadata( + workspacePath, + removeRunningMigration(migration.id) + ); + + execSync('git add migrations.json', { + cwd: workspacePath, + encoding: 'utf-8', + }); + } +} + +export async function getImplementationPath( + workspacePath: string, + migration: MigrationDetailsWithId +) { + const { collection, collectionPath } = readMigrationCollection( + migration.package, + workspacePath + ); + + const { path } = getMigrationImplementationPath( + collection, + collectionPath, + migration.name + ); + + return path; +} + +export function modifyMigrationsJsonMetadata( + workspacePath: string, + modify: ( + migrationsJsonMetadata: MigrationsJsonMetadata + ) => MigrationsJsonMetadata +) { + const migrationsJsonPath = join(workspacePath, 'migrations.json'); + const migrationsJson = JSON.parse(readFileSync(migrationsJsonPath, 'utf-8')); + migrationsJson['nx-console'] = modify(migrationsJson['nx-console']); + writeFileSync(migrationsJsonPath, JSON.stringify(migrationsJson, null, 2)); +} + +export function addSuccessfulMigration( + id: string, + fileChanges: Omit[], + ref: string +) { + return ( + migrationsJsonMetadata: MigrationsJsonMetadata + ): MigrationsJsonMetadata => { + const copied = { ...migrationsJsonMetadata }; + if (!copied.completedMigrations) { + copied.completedMigrations = {}; + } + copied.completedMigrations = { + ...copied.completedMigrations, + [id]: { + type: 'successful', + name: id, + changedFiles: fileChanges, + ref, + }, + }; + return copied; + }; +} + +export function addFailedMigration(id: string, error: string) { + return (migrationsJsonMetadata: MigrationsJsonMetadata) => { + const copied = { ...migrationsJsonMetadata }; + if (!copied.completedMigrations) { + copied.completedMigrations = {}; + } + copied.completedMigrations = { + ...copied.completedMigrations, + [id]: { + type: 'failed', + name: id, + error, + }, + }; + return copied; + }; +} + +export function addSkippedMigration(id: string) { + return (migrationsJsonMetadata: MigrationsJsonMetadata) => { + const copied = { ...migrationsJsonMetadata }; + if (!copied.completedMigrations) { + copied.completedMigrations = {}; + } + copied.completedMigrations = { + ...copied.completedMigrations, + [id]: { + type: 'skipped', + }, + }; + return copied; + }; +} + +function addRunningMigration(id: string) { + return (migrationsJsonMetadata: MigrationsJsonMetadata) => { + migrationsJsonMetadata.runningMigrations = [ + ...(migrationsJsonMetadata.runningMigrations ?? []), + id, + ]; + return migrationsJsonMetadata; + }; +} + +function removeRunningMigration(id: string) { + return (migrationsJsonMetadata: MigrationsJsonMetadata) => { + migrationsJsonMetadata.runningMigrations = + migrationsJsonMetadata.runningMigrations?.filter((n) => n !== id); + if (migrationsJsonMetadata.runningMigrations?.length === 0) { + delete migrationsJsonMetadata.runningMigrations; + } + return migrationsJsonMetadata; + }; +} + +export function readMigrationsJsonMetadata( + workspacePath: string +): MigrationsJsonMetadata { + const migrationsJsonPath = join(workspacePath, 'migrations.json'); + const migrationsJson = JSON.parse(readFileSync(migrationsJsonPath, 'utf-8')); + return migrationsJson['nx-console']; +} diff --git a/packages/nx/src/command-line/migrate/migrate.ts b/packages/nx/src/command-line/migrate/migrate.ts index 3a94c02a53..db40c6e5ac 100644 --- a/packages/nx/src/command-line/migrate/migrate.ts +++ b/packages/nx/src/command-line/migrate/migrate.ts @@ -23,7 +23,12 @@ import { PackageJsonUpdates, } from '../../config/misc-interfaces'; import { NxJsonConfiguration } from '../../config/nx-json'; -import { flushChanges, FsTree, printChanges } from '../../generators/tree'; +import { + FileChange, + flushChanges, + FsTree, + printChanges, +} from '../../generators/tree'; import { extractFileFromTarball, fileExists, @@ -46,6 +51,8 @@ import { createTempNpmDirectory, detectPackageManager, getPackageManagerCommand, + PackageManager, + PackageManagerCommands, packageRegistryPack, packageRegistryView, resolvePackageVersionUsingRegistry, @@ -1311,31 +1318,38 @@ async function generateMigrationsJsonAndUpdatePackageJson( // If for some reason it fails, it shouldn't affect the overall migration process } + const bodyLines = process.env['NX_CONSOLE'] + ? [ + '- Inspect the package.json changes in the built-in diff editor [Click to open]', + '- Confirm the changes to install the new dependencies and continue the migration', + ] + : [ + `- Make sure package.json changes make sense and then run '${pmc.install}',`, + ...(migrations.length > 0 + ? [`- Run '${pmc.exec} nx migrate --run-migrations'`] + : []), + ...(opts.interactive && minVersionWithSkippedUpdates + ? [ + `- You opted out of some migrations for now. Write the following command down somewhere to apply these migrations later:`, + ` nx migrate ${opts.targetVersion} --from ${opts.targetPackage}@${minVersionWithSkippedUpdates} --exclude-applied-migrations`, + `- To learn more go to https://nx.dev/recipes/tips-n-tricks/advanced-update`, + ] + : [ + `- To learn more go to https://nx.dev/features/automate-updating-dependencies`, + ]), + ...(showConnectToCloudMessage() + ? [ + `- You may run '${pmc.run( + 'nx', + 'connect-to-nx-cloud' + )}' to get faster builds, GitHub integration, and more. Check out https://nx.app`, + ] + : []), + ]; + output.log({ title: 'Next steps:', - bodyLines: [ - `- Make sure package.json changes make sense and then run '${pmc.install}',`, - ...(migrations.length > 0 - ? [`- Run '${pmc.exec} nx migrate --run-migrations'`] - : []), - ...(opts.interactive && minVersionWithSkippedUpdates - ? [ - `- You opted out of some migrations for now. Write the following command down somewhere to apply these migrations later:`, - ` nx migrate ${opts.targetVersion} --from ${opts.targetPackage}@${minVersionWithSkippedUpdates} --exclude-applied-migrations`, - `- To learn more go to https://nx.dev/recipes/tips-n-tricks/advanced-update`, - ] - : [ - `- To learn more go to https://nx.dev/features/automate-updating-dependencies`, - ]), - ...(showConnectToCloudMessage() - ? [ - `- You may run '${pmc.run( - 'nx', - 'connect-to-nx-cloud' - )}' to get faster builds, GitHub integration, and more. Check out https://nx.app`, - ] - : []), - ], + bodyLines, }); } catch (e) { output.error({ @@ -1402,17 +1416,28 @@ function showConnectToCloudMessage() { } } -function runInstall() { - const pmCommands = getPackageManagerCommand(); +function runInstall(nxWorkspaceRoot?: string) { + let packageManager: PackageManager; + let pmCommands: PackageManagerCommands; + if (nxWorkspaceRoot) { + packageManager = detectPackageManager(nxWorkspaceRoot); + pmCommands = getPackageManagerCommand(packageManager, nxWorkspaceRoot); + } else { + pmCommands = getPackageManagerCommand(); + } // TODO: remove this - if (detectPackageManager() === 'npm') { + if (packageManager ?? detectPackageManager() === 'npm') { process.env.npm_config_legacy_peer_deps ??= 'true'; } output.log({ title: `Running '${pmCommands.install}' to make sure necessary packages are installed`, }); - execSync(pmCommands.install, { stdio: [0, 1, 2], windowsHide: false }); + execSync(pmCommands.install, { + stdio: [0, 1, 2], + windowsHide: false, + cwd: nxWorkspaceRoot ?? process.cwd(), + }); } export async function executeMigrations( @@ -1428,14 +1453,7 @@ export async function executeMigrations( shouldCreateCommits: boolean, commitPrefix: string ) { - let initialDeps = getStringifiedPackageJsonDeps(root); - const installDepsIfChanged = () => { - const currentDeps = getStringifiedPackageJsonDeps(root); - if (initialDeps !== currentDeps) { - runInstall(); - } - initialDeps = currentDeps; - }; + const changedDepInstaller = new ChangedDepInstaller(root); const migrationsWithNoChanges: typeof migrations = []; const sortedMigrations = migrations.sort((a, b) => { @@ -1461,75 +1479,16 @@ export async function executeMigrations( for (const m of sortedMigrations) { logger.info(`Running migration ${m.package}: ${m.name}`); try { - const { collection, collectionPath } = readMigrationCollection( - m.package, - root + const changes = await runNxOrAngularMigration( + root, + m, + isVerbose, + shouldCreateCommits, + commitPrefix, + () => changedDepInstaller.installDepsIfChanged() ); - if (!isAngularMigration(collection, collectionPath, m.name)) { - const changes = await runNxMigration( - root, - collectionPath, - collection, - m.name - ); - - logger.info(`Ran ${m.name} from ${m.package}`); - logger.info(` ${m.description}\n`); - if (changes.length < 1) { - logger.info(`No changes were made\n`); - migrationsWithNoChanges.push(m); - continue; - } - - logger.info('Changes:'); - printChanges(changes, ' '); - logger.info(''); - } else { - const ngCliAdapter = await getNgCompatLayer(); - const { madeChanges, loggingQueue } = await ngCliAdapter.runMigration( - root, - m.package, - m.name, - readProjectsConfigurationFromProjectGraph( - await createProjectGraphAsync() - ).projects, - isVerbose - ); - - logger.info(`Ran ${m.name} from ${m.package}`); - logger.info(` ${m.description}\n`); - if (!madeChanges) { - logger.info(`No changes were made\n`); - migrationsWithNoChanges.push(m); - continue; - } - - logger.info('Changes:'); - loggingQueue.forEach((log) => logger.info(' ' + log)); - logger.info(''); - } - - if (shouldCreateCommits) { - installDepsIfChanged(); - - const commitMessage = `${commitPrefix}${m.name}`; - try { - const committedSha = commitChanges(commitMessage); - - if (committedSha) { - logger.info( - chalk.dim(`- Commit created for changes: ${committedSha}`) - ); - } else { - logger.info( - chalk.red( - `- A commit could not be created/retrieved for an unknown reason` - ) - ); - } - } catch (e) { - logger.info(chalk.red(`- ${e.message}`)); - } + if (changes.length === 0) { + migrationsWithNoChanges.push(m); } logger.info(`---------------------------------------------------------`); } catch (e) { @@ -1541,12 +1500,119 @@ export async function executeMigrations( } if (!shouldCreateCommits) { - installDepsIfChanged(); + changedDepInstaller.installDepsIfChanged(); } return migrationsWithNoChanges; } +class ChangedDepInstaller { + private initialDeps: string; + constructor(private readonly root: string) { + this.initialDeps = getStringifiedPackageJsonDeps(root); + } + + public installDepsIfChanged() { + const currentDeps = getStringifiedPackageJsonDeps(this.root); + if (this.initialDeps !== currentDeps) { + runInstall(this.root); + } + this.initialDeps = currentDeps; + } +} + +export async function runNxOrAngularMigration( + root: string, + migration: { + package: string; + name: string; + description?: string; + version: string; + cli?: 'nx' | 'angular'; + }, + isVerbose: boolean, + shouldCreateCommits: boolean, + commitPrefix: string, + installDepsIfChanged?: () => void, + handleInstallDeps = false +): Promise { + if (!installDepsIfChanged) { + const changedDepInstaller = new ChangedDepInstaller(root); + installDepsIfChanged = () => changedDepInstaller.installDepsIfChanged(); + } + const { collection, collectionPath } = readMigrationCollection( + migration.package, + root + ); + let changes: FileChange[] = []; + if (!isAngularMigration(collection, collectionPath, migration.name)) { + changes = await runNxMigration( + root, + collectionPath, + collection, + migration.name + ); + + logger.info(`Ran ${migration.name} from ${migration.package}`); + logger.info(` ${migration.description}\n`); + if (changes.length < 1) { + logger.info(`No changes were made\n`); + return []; + } + + logger.info('Changes:'); + printChanges(changes, ' '); + logger.info(''); + } else { + const ngCliAdapter = await getNgCompatLayer(); + const { madeChanges, loggingQueue } = await ngCliAdapter.runMigration( + root, + migration.package, + migration.name, + readProjectsConfigurationFromProjectGraph(await createProjectGraphAsync()) + .projects, + isVerbose + ); + + logger.info(`Ran ${migration.name} from ${migration.package}`); + logger.info(` ${migration.description}\n`); + if (!madeChanges) { + logger.info(`No changes were made\n`); + return []; + } + + logger.info('Changes:'); + loggingQueue.forEach((log) => logger.info(' ' + log)); + logger.info(''); + } + + if (shouldCreateCommits) { + installDepsIfChanged(); + + const commitMessage = `${commitPrefix}${migration.name}`; + try { + const committedSha = commitChanges(commitMessage, root); + + if (committedSha) { + logger.info(chalk.dim(`- Commit created for changes: ${committedSha}`)); + } else { + logger.info( + chalk.red( + `- A commit could not be created/retrieved for an unknown reason` + ) + ); + } + } catch (e) { + logger.info(chalk.red(`- ${e.message}`)); + } + // if we are running this function alone, we need to install deps internally + } else if (handleInstallDeps) { + installDepsIfChanged(); + } + + return changes; +} + async function runMigrations( root: string, opts: { runMigrations: string; ifExists: boolean }, @@ -1711,7 +1777,7 @@ export function runMigration() { } } -function readMigrationCollection(packageName: string, root: string) { +export function readMigrationCollection(packageName: string, root: string) { const collectionPath = readPackageMigrationConfig( packageName, root @@ -1724,7 +1790,7 @@ function readMigrationCollection(packageName: string, root: string) { }; } -function getImplementationPath( +export function getImplementationPath( collection: MigrationsJson, collectionPath: string, name: string @@ -1755,7 +1821,7 @@ function getImplementationPath( return { path: implPath, fnSymbol }; } -function nxCliPath() { +export function nxCliPath(nxWorkspaceRoot?: string) { const version = process.env.NX_MIGRATE_CLI_VERSION || 'latest'; try { const packageManager = detectPackageManager(); @@ -1769,7 +1835,10 @@ function nxCliPath() { }, license: 'MIT', }); - copyPackageManagerConfigurationFiles(workspaceRoot, tmpDir); + copyPackageManagerConfigurationFiles( + nxWorkspaceRoot ?? workspaceRoot, + tmpDir + ); if (pmc.preInstall) { // ensure package.json and repo in tmp folder is set to a proper package manager state execSync(pmc.preInstall, { @@ -1795,7 +1864,7 @@ function nxCliPath() { // Set NODE_PATH so that these modules can be used for module resolution addToNodePath(join(tmpDir, 'node_modules')); - addToNodePath(join(workspaceRoot, 'node_modules')); + addToNodePath(join(nxWorkspaceRoot ?? workspaceRoot, 'node_modules')); return join(tmpDir, `node_modules`, '.bin', 'nx'); } catch (e) { diff --git a/packages/nx/src/config/misc-interfaces.ts b/packages/nx/src/config/misc-interfaces.ts index 430c678ee1..82e5f1194e 100644 --- a/packages/nx/src/config/misc-interfaces.ts +++ b/packages/nx/src/config/misc-interfaces.ts @@ -75,6 +75,17 @@ export interface MigrationsJsonEntry { requires?: Record; } +export type MigrationDetailsWithId = GeneratedMigrationDetails & { + id: string; +}; +export interface GeneratedMigrationDetails { + name: string; + version: string; + package: string; + description: string; + implementation: string; +} + export interface MigrationsJson { name?: string; version?: string; diff --git a/packages/nx/src/utils/git-utils.ts b/packages/nx/src/utils/git-utils.ts index 3ad6221cdb..8a97df1d88 100644 --- a/packages/nx/src/utils/git-utils.ts +++ b/packages/nx/src/utils/git-utils.ts @@ -298,7 +298,11 @@ export function commitChanges( directory?: string ): string | null { try { - execSync('git add -A', { encoding: 'utf8', stdio: 'pipe' }); + execSync('git add -A', { + encoding: 'utf8', + stdio: 'pipe', + cwd: directory, + }); execSync('git commit --no-verify -F -', { encoding: 'utf8', stdio: 'pipe', @@ -318,15 +322,16 @@ export function commitChanges( } } - return getLatestCommitSha(); + return getLatestCommitSha(directory); } -export function getLatestCommitSha(): string | null { +export function getLatestCommitSha(directory?: string): string | null { try { return execSync('git rev-parse HEAD', { encoding: 'utf8', stdio: 'pipe', windowsHide: false, + cwd: directory, }).trim(); } catch { return null; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 44303f8fe2..da7a0a6ef2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -38,7 +38,7 @@ importers: version: 0.1.55 '@nx/graph': specifier: 0.4.2 - version: 0.4.2(@nx/devkit@21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react-router-dom@6.26.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + version: 0.4.2(@nx/devkit@21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react-router-dom@6.26.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) '@react-spring/three': specifier: ^9.7.3 version: 9.7.4(@react-three/fiber@8.17.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(three@0.166.1))(react@18.3.1)(three@0.166.1) @@ -264,13 +264,13 @@ importers: version: 1.38.0 '@module-federation/enhanced': specifier: ^0.9.0 - version: 0.9.1(@rspack/core@1.2.6(@swc/helpers@0.5.11))(bufferutil@4.0.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) + version: 0.9.0(@rspack/core@1.2.6(@swc/helpers@0.5.11))(bufferutil@4.0.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) '@module-federation/sdk': specifier: ^0.9.0 version: 0.9.0 '@monodon/rust': specifier: 2.1.1 - version: 2.1.1(@napi-rs/cli@3.0.0-alpha.56(@emnapi/runtime@1.2.0)(emnapi@1.3.1(node-addon-api@7.1.1)))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + version: 2.1.1(@napi-rs/cli@3.0.0-alpha.56(@emnapi/runtime@1.2.0)(emnapi@1.3.1(node-addon-api@7.1.1)))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) '@napi-rs/cli': specifier: 3.0.0-alpha.56 version: 3.0.0-alpha.56(@emnapi/runtime@1.2.0)(emnapi@1.3.1(node-addon-api@7.1.1)) @@ -315,67 +315,67 @@ importers: version: 3.13.2(rollup@4.22.0)(webpack-sources@3.2.3) '@nx/angular': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(3mujlmhi6inc7piqc7p33vqkpy) + version: 21.0.0-beta.4(m2fpeifx3zewnwiuits4v2eyjm) '@nx/cypress': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(cypress@14.3.0)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(cypress@14.3.0)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@nx/devkit': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + version: 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) '@nx/esbuild': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@nx/eslint': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@nx/eslint-plugin': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@typescript-eslint/parser@8.20.0(eslint@8.57.0)(typescript@5.7.3))(eslint-config-prettier@10.1.2(eslint@8.57.0))(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@typescript-eslint/parser@8.20.0(eslint@8.57.0)(typescript@5.7.3))(eslint-config-prettier@10.1.2(eslint@8.57.0))(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@nx/jest': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@types/node@20.16.10)(babel-plugin-macros@3.1.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(ts-node@10.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@types/node@20.16.10)(typescript@5.7.3))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@types/node@20.16.10)(babel-plugin-macros@3.1.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(ts-node@10.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@types/node@20.16.10)(typescript@5.7.3))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@nx/js': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@nx/key': specifier: 1.3.0-beta.11 version: 1.3.0-beta.11 '@nx/next': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(6glqd352bscyejapf6c2doambe) + version: 21.0.0-beta.4(m6qvbv3x7azwoqxph4efgoxvje) '@nx/playwright': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@playwright/test@1.47.1)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@playwright/test@1.47.1)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@nx/powerpack-conformance': specifier: 1.3.0-beta.11 - version: 1.3.0-beta.11(@nx/js@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + version: 1.3.0-beta.11(@nx/js@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) '@nx/powerpack-enterprise-cloud': specifier: 1.3.0-beta.11 - version: 1.3.0-beta.11(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + version: 1.3.0-beta.11(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) '@nx/powerpack-license': specifier: 1.3.0-beta.11 version: 1.3.0-beta.11 '@nx/react': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(@zkochan/js-yaml@0.0.7)(bufferutil@4.0.7)(esbuild@0.25.0)(eslint@8.57.0)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) + version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(@zkochan/js-yaml@0.0.7)(bufferutil@4.0.7)(esbuild@0.25.0)(eslint@8.57.0)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) '@nx/rsbuild': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@nx/rspack': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(z36hr747kwn6jfof5tsepjpbme) + version: 21.0.0-beta.4(3rkozrjia44o7a5hsza4wqcyli) '@nx/storybook': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(cypress@14.3.0)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(cypress@14.3.0)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@nx/vite': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.16.10)(jiti@1.21.6)(jsdom@20.0.3(bufferutil@4.0.7))(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)) + version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.16.10)(jiti@1.21.6)(jsdom@20.0.3(bufferutil@4.0.7))(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)) '@nx/web': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@nx/webpack': specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(bufferutil@4.0.7)(esbuild@0.25.0)(html-webpack-plugin@5.5.0(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + version: 21.0.0-beta.4(@babel/traverse@7.26.9)(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(bufferutil@4.0.7)(esbuild@0.25.0)(html-webpack-plugin@5.5.0(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) '@phenomnomnominal/tsquery': specifier: ~5.0.1 version: 5.0.1(typescript@5.7.3) @@ -431,29 +431,32 @@ importers: specifier: ^1.0.0 version: 1.0.0(react-refresh@0.10.0) '@schematics/angular': - specifier: 19.2.0 + specifier: ~19.2.0 version: 19.2.0(chokidar@3.6.0) '@storybook/addon-essentials': - specifier: 8.6.12 - version: 8.6.12(@types/react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(webpack-sources@3.2.3) + specifier: 8.4.6 + version: 8.4.6(@types/react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(webpack-sources@3.2.3) '@storybook/addon-interactions': - specifier: 8.6.12 - version: 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + specifier: 8.4.6 + version: 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) '@storybook/core-server': - specifier: 8.6.12 - version: 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + specifier: 8.4.6 + version: 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) '@storybook/react': - specifier: 8.6.12 - version: 8.6.12(@storybook/test@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3) + specifier: 8.4.6 + version: 8.4.6(@storybook/test@8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3) '@storybook/react-vite': - specifier: 8.6.12 - version: 8.6.12(@storybook/test@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.22.0)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(webpack-sources@3.2.3) + specifier: 8.4.6 + version: 8.4.6(@storybook/test@8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.22.0)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(webpack-sources@3.2.3) '@storybook/react-webpack5': - specifier: 8.6.12 - version: 8.6.12(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@storybook/test@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + specifier: 8.4.6 + version: 8.4.6(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@storybook/test@8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + '@storybook/test': + specifier: ^8.5.1 + version: 8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) '@storybook/types': - specifier: 8.6.12 - version: 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + specifier: ^8.4.6 + version: 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) '@supabase/supabase-js': specifier: ^2.26.0 version: 2.45.4(bufferutil@4.0.7) @@ -465,7 +468,7 @@ importers: version: 8.1.0(typescript@5.7.3) '@swc-node/register': specifier: 1.9.1 - version: 1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3) + version: 1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3) '@swc/cli': specifier: 0.6.0 version: 0.6.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(chokidar@3.6.0) @@ -577,6 +580,9 @@ importers: '@typescript-eslint/utils': specifier: ^8.19.0 version: 8.20.0(eslint@8.57.0)(typescript@5.7.3) + '@vitejs/plugin-react': + specifier: ^4.2.0 + version: 4.3.4(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)) '@webcontainer/api': specifier: 1.5.1 version: 1.5.1 @@ -885,7 +891,7 @@ importers: version: 3.13.2(@azure/identity@4.5.0)(@azure/storage-blob@12.25.0)(@parcel/watcher@2.4.1)(@types/node@20.16.10)(bufferutil@4.0.7)(encoding@0.1.13)(eslint@8.57.0)(ioredis@5.4.1)(less@4.1.3)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.22.0)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(webpack-sources@3.2.3) nx: specifier: 21.0.0-beta.4 - version: 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) + version: 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) octokit: specifier: ^2.0.14 version: 2.1.0(encoding@0.1.13) @@ -2677,6 +2683,10 @@ packages: resolution: {integrity: sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==} engines: {node: '>=6.9.0'} + '@babel/runtime@7.26.0': + resolution: {integrity: sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==} + engines: {node: '>=6.9.0'} + '@babel/runtime@7.26.9': resolution: {integrity: sha512-aA63XwOkcl4xxQa3HjPMqOP6LiK0ZDv3mUPYEFXkpHbaFjtGggE1A61FjFzJnB+p7/oy2gA8E+rcBNl/zC1tMg==} engines: {node: '>=6.9.0'} @@ -2738,8 +2748,8 @@ packages: '@codemirror/autocomplete@6.18.6': resolution: {integrity: sha512-PHHBXFomUs5DF+9tCOM/UoW6XQ4R44lLNNhRaW9PKPTU0D7lIjRg3ElxaJnTwsl/oHiR93WSXDBrekhoUGCPtg==} - '@codemirror/commands@6.8.0': - resolution: {integrity: sha512-q8VPEFaEP4ikSlt6ZxjB3zW72+7osfAYW9i8Zu943uqbKuz6utc1+F170hyLUCUltXORjQXRyYQNfkckzA/bPQ==} + '@codemirror/commands@6.8.1': + resolution: {integrity: sha512-KlGVYufHMQzxbdQONiLyGQDUW0itrLZwq3CcY7xpv9ZLRHqzkBSoteocBHtMCoY7/Ci4xhzSrToIeLg7FxHuaw==} '@codemirror/lang-css@6.3.1': resolution: {integrity: sha512-kr5fwBGiGtmz6l0LSJIbno9QrifNMUusivHbnA1H6Dmqy4HZFte3UAICix1VuKo0lMPKQr2rqB+0BkKi/S3Ejg==} @@ -2777,8 +2787,8 @@ packages: '@codemirror/state@6.5.2': resolution: {integrity: sha512-FVqsPqtPWKVVL3dPSxy8wEF/ymIEuVzF1PK3VbUgrxXpJUSHQWWZz4JMToquRxnkw+36LTamCZG2iua2Ptq0fA==} - '@codemirror/view@6.36.4': - resolution: {integrity: sha512-ZQ0V5ovw/miKEXTvjgzRyjnrk9TwriUB1k4R5p7uNnHR9Hus+D1SXHGdJshijEzPFjU25xea/7nhIeSqYFKdbA==} + '@codemirror/view@6.36.5': + resolution: {integrity: sha512-cd+FZEUlu3GQCYnguYm3EkhJ8KJVisqqUsCOKedBoAt/d9c76JUUap6U0UrpElln5k6VyrEOYliMuDAKIeDQLg==} '@colors/colors@1.5.0': resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} @@ -4124,8 +4134,8 @@ packages: '@floating-ui/utils@0.2.8': resolution: {integrity: sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==} - '@grafana/faro-core@1.13.3': - resolution: {integrity: sha512-EC94lAKV5mG01WImV08uFjds8mqZjQCEqE2kLS90i5Ke32RaXD5iaNZjNNdz4/2lTHwbtXDixLIllXuB+lXiuA==} + '@grafana/faro-core@1.14.1': + resolution: {integrity: sha512-wPQEJ3Ow4s5m+scrHUHAbwCTMoXlXgwdjtO5PCKCimaI5q4nzFHp5D2FpFGDul2WfRVzwWvkhX6A7CGTui/myw==} engines: {node: '>=18.0.0'} '@grafana/faro-web-sdk@1.13.3': @@ -4494,8 +4504,8 @@ packages: resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@joshwooding/vite-plugin-react-docgen-typescript@0.5.0': - resolution: {integrity: sha512-qYDdL7fPwLRI+bJNurVcis+tNgJmvWjH4YTBGXTA8xMuxFrnAz6E5o35iyzyKbq5J5Lr8mJGfrR5GXl+WGwhgQ==} + '@joshwooding/vite-plugin-react-docgen-typescript@0.4.2': + resolution: {integrity: sha512-feQ+ntr+8hbVudnsTUapiMN9q8T90XA1d5jn9QzY09sNoj4iD9wi0PY1vsBFTda4ZjEaxRK9S81oarR2nj7TFQ==} peerDependencies: typescript: '>= 4.3.x' vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 @@ -4668,15 +4678,33 @@ packages: '@mediapipe/tasks-vision@0.10.8': resolution: {integrity: sha512-Rp7ll8BHrKB3wXaRFKhrltwZl1CiXGdibPxuWXvqGnKTnv8fqa/nvftYNuSbf+pbJWKYCXdBtYTITdAUTGGh0Q==} + '@module-federation/bridge-react-webpack-plugin@0.9.0': + resolution: {integrity: sha512-EaUMMmNVx5IRXB8o39tPU05uWuDN38noQbUjwE2xi8Y5xTx3CFZ9tkgXX+tvzcWc+bu4RnaziaI0RtyBfHhHKw==} + '@module-federation/bridge-react-webpack-plugin@0.9.1': resolution: {integrity: sha512-znN/Qm6M0U1t3iF10gu1hSxDkk18yz78yvk+AMB34UDzpXHiC1zbpIeV2CQNV5GCeafmCICmcn9y1qh7F54KTg==} + '@module-federation/data-prefetch@0.9.0': + resolution: {integrity: sha512-KFC3lOzW/Hwvcgm/tn7075fqC/ONhA+5zPqDz090EsCQqnWQHodzx0XF88/tTvWdfc3mYK9BGYfsnpjlVGT1zA==} + peerDependencies: + react: '>=16.9.0' + react-dom: '>=16.9.0' + '@module-federation/data-prefetch@0.9.1': resolution: {integrity: sha512-rS1AsgRvIMAWK8oMprEBF0YQ3WvsqnumjinvAZU1Dqut5DICmpQMTPEO1OrAKyjO+PQgEhmq13HggzN6ebGLrQ==} peerDependencies: react: '>=16.9.0' react-dom: '>=16.9.0' + '@module-federation/dts-plugin@0.9.0': + resolution: {integrity: sha512-2Uu1sPRT9/uB+pG4vQGkLdpsMVM6FK7howulTdy42u6Dz0c2Ivc//od/noM0KEgWf1p54FAtWzpjkqjO5PyciA==} + peerDependencies: + typescript: ^4.9.0 || ^5.0.0 + vue-tsc: '>=1.0.24' + peerDependenciesMeta: + vue-tsc: + optional: true + '@module-federation/dts-plugin@0.9.1': resolution: {integrity: sha512-DezBrFaIKfDcEY7UhqyO1WbYocERYsR/CDN8AV6OvMnRlQ8u0rgM8qBUJwx0s+K59f+CFQFKEN4C8p7naCiHrw==} peerDependencies: @@ -4686,6 +4714,20 @@ packages: vue-tsc: optional: true + '@module-federation/enhanced@0.9.0': + resolution: {integrity: sha512-/fiIc+lZvP7pEiVWe0/0v2ueVcEumew2UNewguHFj3bxyyU5/+/5rHPRV5QIKcLzydrVLvTiS4/dB2Mqd7CVAg==} + peerDependencies: + typescript: ^4.9.0 || ^5.0.0 + vue-tsc: '>=1.0.24' + webpack: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + vue-tsc: + optional: true + webpack: + optional: true + '@module-federation/enhanced@0.9.1': resolution: {integrity: sha512-c9siKVjcgT2gtDdOTqEr+GaP2X/PWAS0OV424ljKLstFL1lcS/BIsxWFDmxPPl5hDByAH+1q4YhC1LWY4LNDQw==} peerDependencies: @@ -4703,17 +4745,31 @@ packages: '@module-federation/error-codes@0.8.4': resolution: {integrity: sha512-55LYmrDdKb4jt+qr8qE8U3al62ZANp3FhfVaNPOaAmdTh0jHdD8M3yf5HKFlr5xVkVO4eV/F/J2NCfpbh+pEXQ==} + '@module-federation/error-codes@0.9.0': + resolution: {integrity: sha512-dNqIs5cQfE4p+WIdiZ64cTSRJ5KjGaV+epvZkGttrNjXW9XAAtE7zgpo7cMQ8GWA3wCGaKnFw7Dn48XcU5ZMNw==} + '@module-federation/error-codes@0.9.1': resolution: {integrity: sha512-q8spCvlwUzW42iX1irnlBTcwcZftRNHyGdlaoFO1z/fW4iphnBIfijzkigWQzOMhdPgzqN/up7XN+g5hjBGBtw==} + '@module-federation/inject-external-runtime-core-plugin@0.9.0': + resolution: {integrity: sha512-gDvYmcJyuXy1qzBZ6c+AndQUm50iOXmc56C2GN+F9ILAOQ/dcWFfD+OxyjXr80Pvej6qawW9CTEEWHNF4m4a+w==} + peerDependencies: + '@module-federation/runtime-tools': 0.9.0 + '@module-federation/inject-external-runtime-core-plugin@0.9.1': resolution: {integrity: sha512-BPfzu1cqDU5BhM493enVF1VfxJWmruen0ktlHrWdJJlcddhZzyFBGaLAGoGc+83fS75aEllvJTEthw4kMViMQQ==} peerDependencies: '@module-federation/runtime-tools': 0.9.1 + '@module-federation/managers@0.9.0': + resolution: {integrity: sha512-km8fVdS/r3TRLbSCV8IytKaQVuMbXbHvdZsgK4HRIWqGyBbA2q+gbXfWSC90OhdxNA9hhPEipmx+4hvuXDwaFg==} + '@module-federation/managers@0.9.1': resolution: {integrity: sha512-8hpIrvGfiODxS1qelTd7eaLRVF7jrp17RWgeH1DWoprxELANxm5IVvqUryB+7j+BhoQzamog9DL5q4MuNfGgIA==} + '@module-federation/manifest@0.9.0': + resolution: {integrity: sha512-o6+AyKdznP/Pyd6x/1staafUKNxIuXbmmpZxeL3VDvg8uR+6QM5bd/iXnBUgxaznIGQvUwvW/F1JixdgXwp7ug==} + '@module-federation/manifest@0.9.1': resolution: {integrity: sha512-+GteKBXrAUkq49i2CSyWZXM4vYa+mEVXxR9Du71R55nXXxgbzAIoZj9gxjRunj9pcE8+YpAOyfHxLEdWngxWdg==} @@ -4732,6 +4788,18 @@ packages: react-dom: optional: true + '@module-federation/rspack@0.9.0': + resolution: {integrity: sha512-Cw5/OGknuPwmkWc3jVj+T/uqtQ33cxDVMuaFIA6qGAiy/WfMyElKnOBe0n3JRaigH/A8qkyN/rNvMynYlTczLA==} + peerDependencies: + '@rspack/core': '>=0.7' + typescript: ^4.9.0 || ^5.0.0 + vue-tsc: '>=1.0.24' + peerDependenciesMeta: + typescript: + optional: true + vue-tsc: + optional: true + '@module-federation/rspack@0.9.1': resolution: {integrity: sha512-ZJqG75dWHhyTMa9I0YPJEV2XRt0MFxnDiuMOpI92esdmwWY633CBKyNh1XxcLd629YVeTv03+whr+Fz/f91JEw==} peerDependencies: @@ -4744,6 +4812,9 @@ packages: vue-tsc: optional: true + '@module-federation/runtime-core@0.6.21': + resolution: {integrity: sha512-CLQiPP3kpcPbgPkiu/A1VURI2v4geFnEdizlB1tq0c6eDZqb5aLzvp87ZCGDVSuwY7DCq6jh1k+CM2WGge/2xA==} + '@module-federation/runtime-core@0.9.1': resolution: {integrity: sha512-r61ufhKt5pjl81v7TkmhzeIoSPOaNtLynW6+aCy3KZMa3RfRevFxmygJqv4Nug1L0NhqUeWtdLejh4VIglNy5Q==} @@ -4753,6 +4824,9 @@ packages: '@module-federation/runtime-tools@0.8.4': resolution: {integrity: sha512-fjVOsItJ1u5YY6E9FnS56UDwZgqEQUrWFnouRiPtK123LUuqUI9FH4redZoKWlE1PB0ir1Z3tnqy8eFYzPO38Q==} + '@module-federation/runtime-tools@0.9.0': + resolution: {integrity: sha512-ioYVUsUfQjS7tgRBpZ6KFbz8YET2wD/2KmrO4zVaVHZ3RPyJzwVP9sLlDDdyf/Cn/1sQjNLg57FpyBADmY5M1Q==} + '@module-federation/runtime-tools@0.9.1': resolution: {integrity: sha512-JQZ//ab+lEXoU2DHAH+JtYASGzxEjXB0s4rU+6VJXc8c+oUPxH3kWIwzjdncg2mcWBmC1140DCk+K+kDfOZ5CQ==} @@ -4762,6 +4836,9 @@ packages: '@module-federation/runtime@0.8.4': resolution: {integrity: sha512-yZeZ7z2Rx4gv/0E97oLTF3V6N25vglmwXGgoeju/W2YjsFvWzVtCDI7zRRb0mJhU6+jmSM8jP1DeQGbea/AiZQ==} + '@module-federation/runtime@0.9.0': + resolution: {integrity: sha512-WByDEbJ/9fEUBOQILQRYX9CpAjCEmiU1MBSRoTg0emRKBcE9Ms5vTBN0XVuO+3gZSeyk08SfmaLtnCaeHK8ABA==} + '@module-federation/runtime@0.9.1': resolution: {integrity: sha512-jp7K06weabM5BF5sruHr/VLyalO+cilvRDy7vdEBqq88O9mjc0RserD8J+AP4WTl3ZzU7/GRqwRsiwjjN913dA==} @@ -4777,6 +4854,9 @@ packages: '@module-federation/sdk@0.9.1': resolution: {integrity: sha512-YQonPTImgnCqZjE/A+3N2g3J5ypR6kx1tbBzc9toUANKr/dw/S63qlh/zHKzWQzxjjNNVMdXRtTMp07g3kgEWg==} + '@module-federation/third-party-dts-extractor@0.9.0': + resolution: {integrity: sha512-gNMiFxSAkyy85KmdcdapKOP0RVqfuhzosdj92T9xXxR9juuILNS0TtgKbgYwNwvDs/WjOhTON5gz2lsX0kFKRg==} + '@module-federation/third-party-dts-extractor@0.9.1': resolution: {integrity: sha512-KeIByP718hHyq+Mc53enZ419pZZ1fh9Ns6+/bYLkc3iCoJr/EDBeiLzkbMwh2AS4Qk57WW0yNC82xzf7r0Zrrw==} @@ -4801,6 +4881,9 @@ packages: '@module-federation/webpack-bundler-runtime@0.8.4': resolution: {integrity: sha512-HggROJhvHPUX7uqBD/XlajGygMNM1DG0+4OAkk8MBQe4a18QzrRNzZt6XQbRTSG4OaEoyRWhQHvYD3Yps405tQ==} + '@module-federation/webpack-bundler-runtime@0.9.0': + resolution: {integrity: sha512-banXhVcgNYTqH13C6E9KrpwJ+UHaTvHfkvCRPs1y2EVvB9guPO6MnQ9Fd1DCwVMfpq3zMtJpPHobAqF5AmkCHQ==} + '@module-federation/webpack-bundler-runtime@0.9.1': resolution: {integrity: sha512-CxySX01gT8cBowKl9xZh+voiHvThMZ471icasWnlDIZb14KasZoX1eCh9wpGvwoOdIk9rIRT7h70UvW9nmop6w==} @@ -6350,11 +6433,11 @@ packages: '@protobufjs/utf8@1.1.0': resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} - '@radix-ui/primitive@1.1.1': - resolution: {integrity: sha512-SJ31y+Q/zAyShtXJc8x83i9TYdbAfHZ++tUZnvjJJqFjzsdUnKsxPL6IEtBlxKkU7yzer//GQtZSV4GbldL3YA==} + '@radix-ui/primitive@1.1.2': + resolution: {integrity: sha512-XnbHrrprsNqZKQhStrSwgRUQzoCI1glLzdw79xiZPoofhGICeZRSQ3dIxAKH1gb3OHfNf4d6f+vAv3kil2eggA==} - '@radix-ui/react-accordion@1.2.3': - resolution: {integrity: sha512-RIQ15mrcvqIkDARJeERSuXSry2N8uYnxkdDetpfmalT/+0ntOXLkFOsh9iwlAsCv+qcmhZjbdJogIm6WBa6c4A==} + '@radix-ui/react-accordion@1.2.4': + resolution: {integrity: sha512-SGCxlSBaMvEzDROzyZjsVNzu9XY5E28B3k8jOENyrz6csOv/pG1eHyYfLJai1n9tRjwG61coXDhfpgtxKxUv5g==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6366,8 +6449,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-arrow@1.1.2': - resolution: {integrity: sha512-G+KcpzXHq24iH0uGG/pF8LyzpFJYGD4RfLjCIBfGdSLXvjLHST31RUiRVrupIBMvIppMgSzQ6l66iAxl03tdlg==} + '@radix-ui/react-arrow@1.1.3': + resolution: {integrity: sha512-2dvVU4jva0qkNZH6HHWuSz5FN5GeU5tymvCgutF8WaXz9WnD1NgUhy73cqzkjkN4Zkn8lfTPv5JIfrC221W+Nw==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6379,8 +6462,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-collapsible@1.1.3': - resolution: {integrity: sha512-jFSerheto1X03MUC0g6R7LedNW9EEGWdg9W1+MlpkMLwGkgkbUXLPBH/KIuWKXUoeYRVY11llqbTBDzuLg7qrw==} + '@radix-ui/react-collapsible@1.1.4': + resolution: {integrity: sha512-u7LCw1EYInQtBNLGjm9nZ89S/4GcvX1UR5XbekEgnQae2Hkpq39ycJ1OhdeN1/JDfVNG91kWaWoest127TaEKQ==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6392,8 +6475,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-collection@1.1.2': - resolution: {integrity: sha512-9z54IEKRxIa9VityapoEYMuByaG42iSy1ZXlY2KcuLSEtq8x4987/N6m15ppoMffgZX72gER2uHe1D9Y6Unlcw==} + '@radix-ui/react-collection@1.1.3': + resolution: {integrity: sha512-mM2pxoQw5HJ49rkzwOs7Y6J4oYH22wS8BfK2/bBxROlI4xuR0c4jEenQP63LlTlDkO6Buj2Vt+QYAYcOgqtrXA==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6405,8 +6488,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-compose-refs@1.1.1': - resolution: {integrity: sha512-Y9VzoRDSJtgFMUCoiZBDVo084VQ5hfpXxVE+NgkdNsjiDBByiImMZKKhxMwCbdHvhlENG6a833CbFkOQvTricw==} + '@radix-ui/react-compose-refs@1.1.2': + resolution: {integrity: sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==} peerDependencies: '@types/react': '*' react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc @@ -6414,8 +6497,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-context-menu@2.2.6': - resolution: {integrity: sha512-aUP99QZ3VU84NPsHeaFt4cQUNgJqFsLLOt/RbbWXszZ6MP0DpDyjkFZORr4RpAEx3sUBk+Kc8h13yGtC5Qw8dg==} + '@radix-ui/react-context-menu@2.2.7': + resolution: {integrity: sha512-EwO3tyyqwGaLPg0P64jmIKJnBywD0yjiL1eRuMPyhUXPkWWpa5JPDS+oyeIWHy2JbhF+NUlfUPVq6vE7OqgZww==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6427,8 +6510,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-context@1.1.1': - resolution: {integrity: sha512-UASk9zi+crv9WteK/NU4PLvOoL3OuE6BWVKNF6hPRBtYBDXQ2u5iu3O59zUlJiTVvkyuycnqrztsHVJwcK9K+Q==} + '@radix-ui/react-context@1.1.2': + resolution: {integrity: sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==} peerDependencies: '@types/react': '*' react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc @@ -6436,8 +6519,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-dialog@1.1.6': - resolution: {integrity: sha512-/IVhJV5AceX620DUJ4uYVMymzsipdKBzo3edo+omeskCKGm9FRHM0ebIdbPnlQVJqyuHbuBltQUOG2mOTq2IYw==} + '@radix-ui/react-dialog@1.1.7': + resolution: {integrity: sha512-EIdma8C0C/I6kL6sO02avaCRqi3fmWJpxH6mqbVScorW6nNktzKJT/le7VPho3o/7wCsyRg3z0+Q+Obr0Gy/VQ==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6449,8 +6532,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-direction@1.1.0': - resolution: {integrity: sha512-BUuBvgThEiAXh2DWu93XsT+a3aWrGqolGlqqw5VU1kG7p/ZH2cuDlM1sRLNnY3QcBS69UIz2mcKhMxDsdewhjg==} + '@radix-ui/react-direction@1.1.1': + resolution: {integrity: sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==} peerDependencies: '@types/react': '*' react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc @@ -6458,8 +6541,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-dismissable-layer@1.1.5': - resolution: {integrity: sha512-E4TywXY6UsXNRhFrECa5HAvE5/4BFcGyfTyK36gP+pAW1ed7UTK4vKwdr53gAJYwqbfCWC6ATvJa3J3R/9+Qrg==} + '@radix-ui/react-dismissable-layer@1.1.6': + resolution: {integrity: sha512-7gpgMT2gyKym9Jz2ZhlRXSg2y6cNQIK8d/cqBZ0RBCaps8pFryCWXiUKI+uHGFrhMrbGUP7U6PWgiXzIxoyF3Q==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6471,8 +6554,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-focus-guards@1.1.1': - resolution: {integrity: sha512-pSIwfrT1a6sIoDASCSpFwOasEwKTZWDw/iBdtnqKO7v6FeOzYJ7U53cPzYFVR3geGGXgVHaH+CdngrrAzqUGxg==} + '@radix-ui/react-focus-guards@1.1.2': + resolution: {integrity: sha512-fyjAACV62oPV925xFCrH8DR5xWhg9KYtJT4s3u54jxp+L/hbpTY2kIeEFFbFe+a/HCE94zGQMZLIpVTPVZDhaA==} peerDependencies: '@types/react': '*' react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc @@ -6480,8 +6563,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-focus-scope@1.1.2': - resolution: {integrity: sha512-zxwE80FCU7lcXUGWkdt6XpTTCKPitG1XKOwViTxHVKIJhZl9MvIl2dVHeZENCWD9+EdWv05wlaEkRXUykU27RA==} + '@radix-ui/react-focus-scope@1.1.3': + resolution: {integrity: sha512-4XaDlq0bPt7oJwR+0k0clCiCO/7lO7NKZTAaJBYxDNQT/vj4ig0/UvctrRscZaFREpRvUTkpKR96ov1e6jptQg==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6493,8 +6576,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-id@1.1.0': - resolution: {integrity: sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==} + '@radix-ui/react-id@1.1.1': + resolution: {integrity: sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==} peerDependencies: '@types/react': '*' react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc @@ -6502,8 +6585,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-menu@2.1.6': - resolution: {integrity: sha512-tBBb5CXDJW3t2mo9WlO7r6GTmWV0F0uzHZVFmlRmYpiSK1CDU5IKojP1pm7oknpBOrFZx/YgBRW9oorPO2S/Lg==} + '@radix-ui/react-menu@2.1.7': + resolution: {integrity: sha512-tBODsrk68rOi1/iQzbM54toFF+gSw/y+eQgttFflqlGekuSebNqvFNHjJgjqPhiMb4Fw9A0zNFly1QT6ZFdQ+Q==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6515,8 +6598,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-popper@1.2.2': - resolution: {integrity: sha512-Rvqc3nOpwseCyj/rgjlJDYAgyfw7OC1tTkKn2ivhaMGcYt8FSBlahHOZak2i3QwkRXUXgGgzeEe2RuqeEHuHgA==} + '@radix-ui/react-popper@1.2.3': + resolution: {integrity: sha512-iNb9LYUMkne9zIahukgQmHlSBp9XWGeQQ7FvUGNk45ywzOb6kQa+Ca38OphXlWDiKvyneo9S+KSJsLfLt8812A==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6528,8 +6611,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-portal@1.1.4': - resolution: {integrity: sha512-sn2O9k1rPFYVyKd5LAJfo96JlSGVFpa1fS6UuBJfrZadudiw5tAmru+n1x7aMRQ84qDM71Zh1+SzK5QwU0tJfA==} + '@radix-ui/react-portal@1.1.5': + resolution: {integrity: sha512-ps/67ZqsFm+Mb6lSPJpfhRLrVL2i2fntgCmGMqqth4eaGUf+knAuuRtWVJrNjUhExgmdRqftSgzpf0DF0n6yXA==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6541,8 +6624,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-presence@1.1.2': - resolution: {integrity: sha512-18TFr80t5EVgL9x1SwF/YGtfG+l0BS0PRAlCWBDoBEiDQjeKgnNZRVJp/oVBl24sr3Gbfwc/Qpj4OcWTQMsAEg==} + '@radix-ui/react-presence@1.1.3': + resolution: {integrity: sha512-IrVLIhskYhH3nLvtcBLQFZr61tBG7wx7O3kEmdzcYwRGAEBmBicGGL7ATzNgruYJ3xBTbuzEEq9OXJM3PAX3tA==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6554,8 +6637,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-primitive@2.0.2': - resolution: {integrity: sha512-Ec/0d38EIuvDF+GZjcMU/Ze6MxntVJYO/fRlCPhCaVUyPY9WTalHJw54tp9sXeJo3tlShWpy41vQRgLRGOuz+w==} + '@radix-ui/react-primitive@2.0.3': + resolution: {integrity: sha512-Pf/t/GkndH7CQ8wE2hbkXA+WyZ83fhQQn5DDmwDiDo6AwN/fhaH8oqZ0jRjMrO2iaMhDi6P1HRx6AZwyMinY1g==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6567,8 +6650,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-roving-focus@1.1.2': - resolution: {integrity: sha512-zgMQWkNO169GtGqRvYrzb0Zf8NhMHS2DuEB/TiEmVnpr5OqPU3i8lfbxaAmC2J/KYuIQxyoQQ6DxepyXp61/xw==} + '@radix-ui/react-roving-focus@1.1.3': + resolution: {integrity: sha512-ufbpLUjZiOg4iYgb2hQrWXEPYX6jOLBbR27bDyAff5GYMRrCzcze8lukjuXVUQvJ6HZe8+oL+hhswDcjmcgVyg==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6580,8 +6663,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-slot@1.1.2': - resolution: {integrity: sha512-YAKxaiGsSQJ38VzKH86/BPRC4rh+b1Jpa+JneA5LRE7skmLPNAyeG8kPJj/oo4STLvlrs8vkf/iYyc3A5stYCQ==} + '@radix-ui/react-slot@1.2.0': + resolution: {integrity: sha512-ujc+V6r0HNDviYqIK3rW4ffgYiZ8g5DEHrGJVk4x7kTlLXRDILnKX9vAUYeIsLOoDpDJ0ujpqMkjH4w2ofuo6w==} peerDependencies: '@types/react': '*' react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc @@ -6589,8 +6672,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-use-callback-ref@1.1.0': - resolution: {integrity: sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==} + '@radix-ui/react-use-callback-ref@1.1.1': + resolution: {integrity: sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==} peerDependencies: '@types/react': '*' react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc @@ -6598,8 +6681,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-use-controllable-state@1.1.0': - resolution: {integrity: sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==} + '@radix-ui/react-use-controllable-state@1.1.1': + resolution: {integrity: sha512-YnEXIy8/ga01Y1PN0VfaNH//MhA91JlEGVBDxDzROqwrAtG5Yr2QGEPz8A/rJA3C7ZAHryOYGaUv8fLSW2H/mg==} peerDependencies: '@types/react': '*' react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc @@ -6607,8 +6690,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-use-escape-keydown@1.1.0': - resolution: {integrity: sha512-L7vwWlR1kTTQ3oh7g1O0CBF3YCyyTj8NmhLR+phShpyA50HCfBFKVJTpshm9PzLiKmehsrQzTYTpX9HvmC9rhw==} + '@radix-ui/react-use-escape-keydown@1.1.1': + resolution: {integrity: sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==} peerDependencies: '@types/react': '*' react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc @@ -6616,8 +6699,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-use-layout-effect@1.1.0': - resolution: {integrity: sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==} + '@radix-ui/react-use-layout-effect@1.1.1': + resolution: {integrity: sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==} peerDependencies: '@types/react': '*' react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc @@ -6625,8 +6708,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-use-rect@1.1.0': - resolution: {integrity: sha512-0Fmkebhr6PiseyZlYAOtLS+nb7jLmpqTrJyv61Pe68MKYW6OWdRE2kI70TaYY27u7H0lajqM3hSMMLFq18Z7nQ==} + '@radix-ui/react-use-rect@1.1.1': + resolution: {integrity: sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==} peerDependencies: '@types/react': '*' react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc @@ -6634,8 +6717,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-use-size@1.1.0': - resolution: {integrity: sha512-XW3/vWuIXHa+2Uwcc2ABSfcCledmXhhQPlGbfcRXbiUQI5Icjcg19BGCZVKKInYbvUCut/ufbbLLPFC5cbb1hw==} + '@radix-ui/react-use-size@1.1.1': + resolution: {integrity: sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==} peerDependencies: '@types/react': '*' react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc @@ -6643,8 +6726,8 @@ packages: '@types/react': optional: true - '@radix-ui/rect@1.1.0': - resolution: {integrity: sha512-A9+lCBZoaMJlVKcRBz2YByCG+Cp2t6nAnMnNba+XiWxnj6r4JUFqfsgwocMBZU9LPtdxC6wB56ySYpc7LQIoJg==} + '@radix-ui/rect@1.1.1': + resolution: {integrity: sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==} '@react-aria/focus@3.19.0': resolution: {integrity: sha512-hPF9EXoUQeQl1Y21/rbV2H4FdUR2v+4/I0/vB+8U3bT1CJ+1AFj1hc/rqx2DqEwDlEwOHN+E4+mRahQmlybq0A==} @@ -7479,83 +7562,83 @@ packages: '@stackblitz/sdk@1.11.0': resolution: {integrity: sha512-DFQGANNkEZRzFk1/rDP6TcFdM82ycHE+zfl9C/M/jXlH68jiqHWHFMQURLELoD8koxvu/eW5uhg94NSAZlYrUQ==} - '@storybook/addon-actions@8.6.12': - resolution: {integrity: sha512-B5kfiRvi35oJ0NIo53CGH66H471A3XTzrfaa6SxXEJsgxxSeKScG5YeXcCvLiZfvANRQ7QDsmzPUgg0o3hdMXw==} + '@storybook/addon-actions@8.4.6': + resolution: {integrity: sha512-vbplwjMj7UXbdzoFhQkqFHLQAPJX8OVGTM9Q+yjuWDHViaKKUlgRWp0jclT7aIDNJQU2a6wJbTimHgJeF16Vhg==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 - '@storybook/addon-backgrounds@8.6.12': - resolution: {integrity: sha512-lmIAma9BiiCTbJ8YfdZkXjpnAIrOUcgboLkt1f6XJ78vNEMnLNzD9gnh7Tssz1qrqvm34v9daDjIb+ggdiKp3Q==} + '@storybook/addon-backgrounds@8.4.6': + resolution: {integrity: sha512-RSjJ3iElxlQXebZrz1s5LeoLpAXr9LAGifX7w0abMzN5sg6QSwNeUHko2eT3V57M3k1Fa/5Eelso/QBQifFEog==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 - '@storybook/addon-controls@8.6.12': - resolution: {integrity: sha512-9VSRPJWQVb9wLp21uvpxDGNctYptyUX0gbvxIWOHMH3R2DslSoq41lsC/oQ4l4zSHVdL+nq8sCTkhBxIsjKqdQ==} + '@storybook/addon-controls@8.4.6': + resolution: {integrity: sha512-70pEGWh0C2g8s0DYsISElOzsMbQS6p/K9iU5EqfotDF+hvEqstjsV/bTbR5f3OK4vR/7Gxamk7j8RVd14Nql6A==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 - '@storybook/addon-docs@8.6.12': - resolution: {integrity: sha512-kEezQjAf/p3SpDzLABgg4fbT48B6dkT2LiZCKTRmCrJVtuReaAr4R9MMM6Jsph6XjbIj/SvOWf3CMeOPXOs9sg==} + '@storybook/addon-docs@8.4.6': + resolution: {integrity: sha512-olxz61W7PW/EsXrKhLrYbI3rn9GMBhY3KIOF/6tumbRkh0Siu/qe4EAImaV9NNwiC1R7+De/1OIVMY6o0EIZVw==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 - '@storybook/addon-essentials@8.6.12': - resolution: {integrity: sha512-Y/7e8KFlttaNfv7q2zoHMPdX6hPXHdsuQMAjYl5NG9HOAJREu4XBy4KZpbcozRe4ApZ78rYsN/MO1EuA+bNMIA==} + '@storybook/addon-essentials@8.4.6': + resolution: {integrity: sha512-TbFqyvWFUKw8LBpVcZuGQydzVB/3kSuHxDHi+Wj3Qas3cxBl7+w4/HjwomT2D2Tni1dZ1uPDOsAtNLmwp1POsg==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 - '@storybook/addon-highlight@8.6.12': - resolution: {integrity: sha512-9FITVxdoycZ+eXuAZL9ElWyML/0fPPn9UgnnAkrU7zkMi+Segq/Tx7y+WWanC5zfWZrXAuG6WTOYEXeWQdm//w==} + '@storybook/addon-highlight@8.4.6': + resolution: {integrity: sha512-m8wedbqDMbwkP99dNHkHAiAUkx5E7FEEEyLPX1zfkhZWOGtTkavXHH235SGp50zD75LQ6eC/BvgegrzxSQa9Wg==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 - '@storybook/addon-interactions@8.6.12': - resolution: {integrity: sha512-cTAJlTq6uVZBEbtwdXkXoPQ4jHOAGKQnYSezBT4pfNkdjn/FnEeaQhMBDzf14h2wr5OgBnJa6Lmd8LD9ficz4A==} + '@storybook/addon-interactions@8.4.6': + resolution: {integrity: sha512-sR2oUSYIGUoAdrHT+fM1zgykhad98bsJ11c79r7HfBMXEPWc1yRcjIMmz8Xz06FMROMfebqduYDf60V++/I0Jw==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 - '@storybook/addon-measure@8.6.12': - resolution: {integrity: sha512-tACmwqqOvutaQSduw8SMb62wICaT1rWaHtMN3vtWXuxgDPSdJQxLP+wdVyRYMAgpxhLyIO7YRf++Hfha9RHgFg==} + '@storybook/addon-measure@8.4.6': + resolution: {integrity: sha512-N2IRpr39g5KpexCAS1vIHJT+phc9Yilwm3PULds2rQ66VMTbkxobXJDdt0NS05g5n9/eDniroNQwdCeLg4tkpw==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 - '@storybook/addon-outline@8.6.12': - resolution: {integrity: sha512-1ylwm+n1s40S91No0v9T4tCjZORu3GbnjINlyjYTDLLhQHyBQd3nWR1Y1eewU4xH4cW9SnSLcMQFS/82xHqU6A==} + '@storybook/addon-outline@8.4.6': + resolution: {integrity: sha512-EhcWx8OpK85HxQulLWzpWUHEwQpDYuAiKzsFj9ivAbfeljkIWNTG04mierfaH1xX016uL9RtLJL/zwBS5ChnFg==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 - '@storybook/addon-toolbars@8.6.12': - resolution: {integrity: sha512-HEcSzo1DyFtIu5/ikVOmh5h85C1IvK9iFKSzBR6ice33zBOaehVJK+Z5f487MOXxPsZ63uvWUytwPyViGInj+g==} + '@storybook/addon-toolbars@8.4.6': + resolution: {integrity: sha512-+Xao/uGa8FnYsyUiREUkYXWNysm3Aba8tL/Bwd+HufHtdiKJGa9lrXaC7VLCqBUaEjwqM3aaPwqEWIROsthmPQ==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 - '@storybook/addon-viewport@8.6.12': - resolution: {integrity: sha512-EXK2LArAnABsPP0leJKy78L/lbMWow+EIJfytEP5fHaW4EhMR6h7Hzaqzre6U0IMMr/jVFa1ci+m0PJ0eQc2bw==} + '@storybook/addon-viewport@8.4.6': + resolution: {integrity: sha512-BuQll5YzOCpMS7p5Rsw9wcmi8hTnEKyg6+qAbkZNfiZ2JhXCa1GFUqX725fF1whpYVQULtkQxU8r+vahoRn7Yg==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 - '@storybook/blocks@8.6.12': - resolution: {integrity: sha512-DohlTq6HM1jDbHYiXL4ZvZ00VkhpUp5uftzj/CZDLY1fYHRjqtaTwWm2/OpceivMA8zDitLcq5atEZN+f+siTg==} + '@storybook/blocks@8.4.6': + resolution: {integrity: sha512-Gzbx8hM7ZQIHlQELcFIMbY1v+r1Po4mlinq0QVPtKS4lBcW4eZIsesbxOaL+uFNrxb583TLFzXo0DbRPzS46sg==} peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - storybook: ^8.6.12 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta + storybook: ^8.4.6 peerDependenciesMeta: react: optional: true react-dom: optional: true - '@storybook/builder-vite@8.6.12': - resolution: {integrity: sha512-Gju21ud/3Qw4v2vLNaa5SuJECsI9ICNRr2G0UyCCzRvCHg8jpA9lDReu2NqhLDyFIuDG+ZYT38gcaHEUoNQ8KQ==} + '@storybook/builder-vite@8.4.6': + resolution: {integrity: sha512-PyJsaEPyuRFFEplpNUi+nbuJd7d1DC2dAZjpsaHTXyqg5iPIbkIgsbCJLUDeIXnUDqM/utjmMpN0sQKJuhIc6w==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 vite: ^4.0.0 || ^5.0.0 || ^6.0.0 - '@storybook/builder-webpack5@8.6.12': - resolution: {integrity: sha512-Z7RsQ/1+HbxdbM69JrEFcTL+pnVKUTMmeURMn5/eOvYTGjBtM18vbQTj0LjCUDIjC+v9U+uX8ZJEUVxFbGcxBw==} + '@storybook/builder-webpack5@8.4.6': + resolution: {integrity: sha512-/ZInCFk2myJZinnAU05bATe+9iJn3+YRoxl+CUpYljxzsjoqb7iAwaNaMNolZCDOnMj24Kg2Pt87WtzAhu+ilw==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 typescript: '*' peerDependenciesMeta: typescript: @@ -7566,8 +7649,8 @@ packages: peerDependencies: storybook: ^8.3.2 - '@storybook/components@8.6.12': - resolution: {integrity: sha512-FiaE8xvCdvKC2arYusgtlDNZ77b8ysr8njAYQZwwaIHjy27TbR2tEpLDCmUwSbANNmivtc/xGEiDDwcNppMWlQ==} + '@storybook/components@8.4.6': + resolution: {integrity: sha512-9tKSJJCyFT5RZMRGyozTBJkr9C9Yfk1nuOE9XbDEE1Z+3/IypKR9+iwc5mfNBStDNY+rxtYWNLKBb5GPR2yhzA==} peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 @@ -7576,15 +7659,15 @@ packages: peerDependencies: storybook: ^8.3.2 - '@storybook/core-server@8.6.12': - resolution: {integrity: sha512-y6x5jbx2BsverwQIv5msIYRAxQzOXsHLv+6tNtt2hvcp5w9jvRVtsRO93yQl1st+IZ9BUIhhV5EJQkiCTKbdmg==} + '@storybook/core-server@8.4.6': + resolution: {integrity: sha512-FQm9G4XSXKwDHTmoNadRoPloPPKqlluCwoukdNQw/Shdne77PXZDPCICkL2w25kaVoGwnh9AOh47WrggG83r5Q==} peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 - '@storybook/core-webpack@8.6.12': - resolution: {integrity: sha512-TiE+KOm0hxb/p0JxeGHKxqTNX+xnTOFsBh6uloCSuvodutJ5pR/XpxKVxwo1gtSc0Uq3qpgbMhW6qYlYQetnKA==} + '@storybook/core-webpack@8.4.6': + resolution: {integrity: sha512-5NE4pUy0iHKc8UKHm7A7SikxSMOO92udl7kcBUlQKwcAgrAk1rFpvfXGodDb48AVgfK+07qAOSjBm7GcZ7X1jw==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 '@storybook/core@8.4.6': resolution: {integrity: sha512-WeojVtHy0/t50tzw/15S+DLzKsj8BN9yWdo3vJMvm+nflLFvfq1XvD9WGOWeaFp8E/o3AP+4HprXG0r42KEJtA==} @@ -7594,10 +7677,10 @@ packages: prettier: optional: true - '@storybook/csf-plugin@8.6.12': - resolution: {integrity: sha512-6s8CnP1aoKPb3XtC0jRLUp8M5vTA8RhGAwQDKUsFpCC7g89JR9CaKs9FY2ZSzsNbjR15uASi7b3K8BzeYumYQg==} + '@storybook/csf-plugin@8.4.6': + resolution: {integrity: sha512-JDIT0czC4yMgKGNf39KTZr3zm5MusAZdn6LBrTfvWb7CrTCR4iVHa4lp2yb7EJk41vHsBec0QUYDDuiFH/vV0g==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 '@storybook/csf@0.0.1': resolution: {integrity: sha512-USTLkZze5gkel8MYCujSRBVIrUQ3YPBrLOx7GNk/0wttvVtlzWXAq9eLbQ4p/NicGxP+3T7KPEMVV//g+yubpw==} @@ -7605,6 +7688,9 @@ packages: '@storybook/csf@0.1.11': resolution: {integrity: sha512-dHYFQH3mA+EtnCkHXzicbLgsvzYjcDJ1JWsogbItZogkPHgSJM/Wr71uMkcvw8v9mmCyP4NpXJuu6bPoVsOnzg==} + '@storybook/csf@0.1.12': + resolution: {integrity: sha512-9/exVhabisyIVL0VxTCxo01Tdm8wefIXKXfltAPTSr8cbLn5JAxGQ6QV3mjdecLGEOucfoVhAKtJfVHxEK1iqw==} + '@storybook/global@5.0.0': resolution: {integrity: sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ==} @@ -7615,35 +7701,40 @@ packages: react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - '@storybook/instrumenter@8.6.12': - resolution: {integrity: sha512-VK5fYAF8jMwWP/u3YsmSwKGh+FeSY8WZn78flzRUwirp2Eg1WWjsqPRubAk7yTpcqcC/km9YMF3KbqfzRv2s/A==} + '@storybook/instrumenter@8.4.6': + resolution: {integrity: sha512-snXjlgbp065A6KoK9zkjBYEIMCSlN5JefPKzt1FC0rbcbtahhD+iPpqISKhDSczwgOku/JVhVUDp/vU7AIf4mg==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 + + '@storybook/instrumenter@8.5.1': + resolution: {integrity: sha512-wMAhsIzwOh/xXKANAP3IbtXxRWFAZtpRisB0sy8WVTPS3a1L1cA6X+U80Ex/omek6L0FZwKZSKmmfkDeZkYnCQ==} + peerDependencies: + storybook: ^8.5.1 '@storybook/manager-api@8.3.2': resolution: {integrity: sha512-8FuwE3BGsLPF0H154+1X/4krSbvmH5xu5YmaVTVDV8DRPlBeRIlNV0HDiZfBvftF4EB7fRYolzghXQplHIX8Fg==} peerDependencies: storybook: ^8.3.2 - '@storybook/manager-api@8.6.12': - resolution: {integrity: sha512-O0SpISeJLNTQvhSBOsWzzkCgs8vCjOq1578rwqHlC6jWWm4QmtfdyXqnv7rR1Hk08kQ+Dzqh0uhwHx0nfwy4nQ==} + '@storybook/manager-api@8.4.6': + resolution: {integrity: sha512-TsXlQ5m5rTl2KNT9icPFyy822AqXrx1QplZBt/L7cFn7SpqQKDeSta21FH7MG0piAvzOweXebVSqKngJ6cCWWQ==} peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 - '@storybook/preset-react-webpack@8.6.12': - resolution: {integrity: sha512-aCCHjR/jsVPVThRH7nK70wS0Od44M6hqkkakg3xr7LETZZGj99heen6t4VHvz8gcQYT9l6R/oZwCl7f/PQ3ZBQ==} + '@storybook/preset-react-webpack@8.4.6': + resolution: {integrity: sha512-4AdsRug6NaWras/bbcFx7KEnJY5GLt3REPlSqMtZwhdY3f7LF0W++Wyo/F2ly82f57welquGURyL+YxjQ9yFkA==} engines: {node: '>=18.0.0'} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.6.12 + storybook: ^8.4.6 typescript: '*' peerDependenciesMeta: typescript: optional: true - '@storybook/preview-api@8.6.12': - resolution: {integrity: sha512-84FE3Hrs0AYKHqpDZOwx1S/ffOfxBdL65lhCoeI8GoWwCkzwa9zEP3kvXBo/BnEDO7nAfxvMhjASTZXbKRJh5Q==} + '@storybook/preview-api@8.4.6': + resolution: {integrity: sha512-LbD+lR1FGvWaJBXteVx5xdgs1x1D7tyidBg2CsW2ex+cP0iJ176JgjPfutZxlWOfQnhfRYNnJ3WKoCIfxFOTKA==} peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 @@ -7653,46 +7744,42 @@ packages: typescript: '>= 4.x' webpack: '>= 4' - '@storybook/react-dom-shim@8.6.12': - resolution: {integrity: sha512-51QvoimkBzYs8s3rCYnY5h0cFqLz/Mh0vRcughwYaXckWzDBV8l67WBO5Xf5nBsukCbWyqBVPpEQLww8s7mrLA==} + '@storybook/react-dom-shim@8.4.6': + resolution: {integrity: sha512-f7RM8GO++fqMxbjNdEzeGS1P821jXuwRnAraejk5hyjB5SqetauFxMwoFYEYfJXPaLX2qIubnIJ78hdJ/IBaEA==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.6.12 + storybook: ^8.4.6 - '@storybook/react-vite@8.6.12': - resolution: {integrity: sha512-UA2Kule99oyFgHdhcuhrRwCKyWu/yMbqbl9U7NwowFHNwWWFjVMMir/AmfShb/H1C1DQ3LqOad6/QwJyPLjP8g==} + '@storybook/react-vite@8.4.6': + resolution: {integrity: sha512-bVoYj3uJRz0SknK2qN3vBVSoEXsvyARQLuHjP9eX0lWBd9XSxZinmVbexPdD0OeJYcJIdmbli2/Gw7/hu5CjFA==} engines: {node: '>=18.0.0'} peerDependencies: - '@storybook/test': 8.6.12 react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.6.12 + storybook: ^8.4.6 vite: ^4.0.0 || ^5.0.0 || ^6.0.0 - peerDependenciesMeta: - '@storybook/test': - optional: true - '@storybook/react-webpack5@8.6.12': - resolution: {integrity: sha512-wZOjPQ00gu85iQoKgwz5uvM3+bhXrQDVR0ppVAj7vVy6cvLEsJXmqNLHbXPCZuKPmvwzYr1QkslMLCIkF8OGdA==} + '@storybook/react-webpack5@8.4.6': + resolution: {integrity: sha512-qUCOUoYW09voRhk0PzEZpZz6F5Ek9aHvVto8KW3lyYEuk6qujqUTNO6Y/X7hMraVt/C3l0+Ds4D5LEmxNBvd8g==} engines: {node: '>=18.0.0'} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.6.12 + storybook: ^8.4.6 typescript: '>= 4.2.x' peerDependenciesMeta: typescript: optional: true - '@storybook/react@8.6.12': - resolution: {integrity: sha512-NzxlHLA5DkDgZM/dMwTYinuzRs6rsUPmlqP+NIv6YaciQ4NGnTYyOC7R/SqI6HHFm8ZZ5eMYvpfiFmhZ9rU+rQ==} + '@storybook/react@8.4.6': + resolution: {integrity: sha512-QAT23beoYNLhFGAXPimtuMErvpcI7eZbZ4AlLqW1fhiTZrRYw06cjC1bs9H3tODMcHH9LS5p3Wz9b29jtV2XGw==} engines: {node: '>=18.0.0'} peerDependencies: - '@storybook/test': 8.6.12 + '@storybook/test': 8.4.6 react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta - storybook: ^8.6.12 + storybook: ^8.4.6 typescript: '>= 4.2.x' peerDependenciesMeta: '@storybook/test': @@ -7700,23 +7787,28 @@ packages: typescript: optional: true - '@storybook/test@8.6.12': - resolution: {integrity: sha512-0BK1Eg+VD0lNMB1BtxqHE3tP9FdkUmohtvWG7cq6lWvMrbCmAmh3VWai3RMCCDOukPFpjabOr8BBRLVvhNpv2w==} + '@storybook/test@8.4.6': + resolution: {integrity: sha512-MeU1g65YgU66M2NtmEIL9gVeHk+en0k9Hp0wfxEO7NT/WLfaOD5RXLRDJVhbAlrH/6tLeWKIPNh/D26y27vO/g==} peerDependencies: - storybook: ^8.6.12 + storybook: ^8.4.6 + + '@storybook/test@8.5.1': + resolution: {integrity: sha512-V0sEXqL5kS0YKugCqWgmCpNODdlCCiVlPqm3i+E2+G97DR980BwXf8J6VPscQDRS9ZG39BrM83Aau6Anxrt1Tg==} + peerDependencies: + storybook: ^8.5.1 '@storybook/theming@8.3.2': resolution: {integrity: sha512-JXAVc08Tlbu4GTTMGNmwUy69lShqSpJixAJc4bvWTnNAtPTRltiNJCg/KJ0GauEyRFk8ZR2Ha4KhN3DB1felNQ==} peerDependencies: storybook: ^8.3.2 - '@storybook/theming@8.6.12': - resolution: {integrity: sha512-6VjZg8HJ2Op7+KV7ihJpYrDnFtd9D1jrQnUS8LckcpuBXrIEbaut5+34ObY8ssQnSqkk2GwIZBBBQYQBCVvkOw==} + '@storybook/theming@8.4.6': + resolution: {integrity: sha512-q7vDPN/mgj7cXIVQ9R1/V75hrzNgKkm2G0LjMo57//9/djQ+7LxvBsR1iScbFIRSEqppvMiBFzkts+2uXidySA==} peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 - '@storybook/types@8.6.12': - resolution: {integrity: sha512-G/nR+js7KV1qKH3nAcOfwceERBic5e03dpkeA6PDmqBiQ8XeM9B6N4NTMhXi/2gM5ZAGJ+NxJMaW6zLnc32DjA==} + '@storybook/types@8.4.6': + resolution: {integrity: sha512-W5cxyzji35Q0N4oLyani/4184m2bb07PiHSB88bgLRZR1/2Pi8ICRBv/sFQG+76cGP6x01RxddDwQmulCxieNg==} peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 @@ -7938,8 +8030,8 @@ packages: peerDependencies: '@swc/core': '*' - '@swc/types@0.1.12': - resolution: {integrity: sha512-wBJA+SdtkbFhHjTMYH+dEH1y4VpfGdAc2Kw/LK09i9bXd/K6j6PkDcFCEzb6iVfZMkPRrl/q0e3toqTAJdkIVA==} + '@swc/types@0.1.21': + resolution: {integrity: sha512-2YEtj5HJVbKivud9N4bpPBAyZhj4S2Ipe5LkUG94alTpr7in/GU/EARgPAd3BwU+YOmFVJC2+kjqhGRi3r0ZpQ==} '@swc/types@0.1.7': resolution: {integrity: sha512-scHWahbHF0eyj3JsxG9CFJgFdFNaVQCNAimBlT6PzS3n/HptxqREjsm4OH6AN3lYcffZYSPxXW8ua2BEHp0lJQ==} @@ -8267,6 +8359,9 @@ packages: '@types/node@20.16.10': resolution: {integrity: sha512-vQUKgWTjEIRFCvK6CyriPH3MZYiYlNy0fKiEYHWbcoWLEgs4opurGGKlebrTLqdSMIbXImH6XExNiIyNUv3WpA==} + '@types/node@22.5.5': + resolution: {integrity: sha512-Xjs4y5UPO/CLdzpgR6GirZJx36yScjh73+2NlLlkFRSoQN8B0DpfXPdZGnvVmLRLOsqDpOfTNv7D9trgGhmOIA==} + '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} @@ -9110,6 +9205,12 @@ packages: acorn-globals@7.0.1: resolution: {integrity: sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==} + acorn-import-assertions@1.9.0: + resolution: {integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==} + deprecated: package has been renamed to acorn-import-attributes + peerDependencies: + acorn: ^8 + acorn-import-attributes@1.9.5: resolution: {integrity: sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==} peerDependencies: @@ -9925,6 +10026,10 @@ packages: ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + chai@5.1.1: + resolution: {integrity: sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==} + engines: {node: '>=12'} + chai@5.1.2: resolution: {integrity: sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==} engines: {node: '>=12'} @@ -10278,8 +10383,8 @@ packages: confbox@0.1.8: resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} - confbox@0.2.1: - resolution: {integrity: sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg==} + confbox@0.2.2: + resolution: {integrity: sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==} confusing-browser-globals@1.0.11: resolution: {integrity: sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==} @@ -10632,8 +10737,8 @@ packages: css-select@5.1.0: resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} - css-selector-parser@3.1.1: - resolution: {integrity: sha512-Y+DuvJ7JAjpL1f4DeILe5sXCC3kRXMl0DxM4lAWbS8/jEZ29o3V0L5TL6zIifj4Csmj6c+jiF2ENjida2OVOGA==} + css-selector-parser@3.1.2: + resolution: {integrity: sha512-WfUcL99xWDs7b3eZPoRszWVfbNo8ErCF15PTvVROjkShGlAfjIkG6hlfj/sl6/rfo5Q9x9ryJ3VqVnAZDA+gcw==} css-tree@1.1.3: resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} @@ -11510,6 +11615,27 @@ packages: eslint-plugin-import-x: optional: true + eslint-module-utils@2.11.0: + resolution: {integrity: sha512-gbBE5Hitek/oG6MUVj6sFuzEjA/ClzNflVrLovHi/JgLdC7fiN5gLAY1WIPW1a0V5I999MnsrvVrCOGmmVqDBQ==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: '*' + eslint-import-resolver-node: '*' + eslint-import-resolver-typescript: '*' + eslint-import-resolver-webpack: '*' + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + eslint: + optional: true + eslint-import-resolver-node: + optional: true + eslint-import-resolver-typescript: + optional: true + eslint-import-resolver-webpack: + optional: true + eslint-module-utils@2.12.0: resolution: {integrity: sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==} engines: {node: '>=4'} @@ -11757,8 +11883,8 @@ packages: resolution: {integrity: sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==} engines: {node: '>=0.10.0'} - expect-type@1.1.0: - resolution: {integrity: sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA==} + expect-type@1.2.0: + resolution: {integrity: sha512-80F22aiJ3GLyVnS/B3HzgR6RelZVumzj9jkL0Rhz4h0xYbNW9PjlQz5h3J/SShErbXBc295vseR4/MIbVmUbeA==} engines: {node: '>=12.0.0'} expect@29.7.0: @@ -12677,15 +12803,6 @@ packages: resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} engines: {node: '>= 14'} - http-proxy-middleware@2.0.6: - resolution: {integrity: sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==} - engines: {node: '>=12.0.0'} - peerDependencies: - '@types/express': ^4.17.13 - peerDependenciesMeta: - '@types/express': - optional: true - http-proxy-middleware@2.0.7: resolution: {integrity: sha512-fgVY8AV7qU7z/MmXJ/rxwbrtQH4jBQ9m7kp3llF0liB7glmFeVZFBepQb32T3y8n8k2+AEYuMPCpinYW+/CuRA==} engines: {node: '>=12.0.0'} @@ -14111,6 +14228,9 @@ packages: magic-string@0.30.11: resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==} + magic-string@0.30.12: + resolution: {integrity: sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==} + magic-string@0.30.15: resolution: {integrity: sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==} @@ -17126,8 +17246,8 @@ packages: remark-rehype@10.1.0: resolution: {integrity: sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==} - remark-rehype@11.1.1: - resolution: {integrity: sha512-g/osARvjkBXb6Wo0XvAeXQohVta8i84ACbenPpoSsxTOQH/Ae0/RGP4WZgnMH5pMLpsj4FG7OHmcIcXxpza8eQ==} + remark-rehype@11.1.2: + resolution: {integrity: sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw==} remark-smartypants@3.0.2: resolution: {integrity: sha512-ILTWeOriIluwEvPjv67v7Blgrcx+LZOkAUVtKI3putuhlZm84FnqDORNXPPm+HY3NdZOMhyDwZ1E+eZB/Df5dA==} @@ -17270,6 +17390,7 @@ packages: rimraf@3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + deprecated: Rimraf versions prior to v4 are no longer supported hasBin: true rimraf@5.0.10: @@ -19615,8 +19736,8 @@ packages: '@volar/language-service': optional: true - vscode-css-languageservice@6.3.3: - resolution: {integrity: sha512-xXa+ftMPv6JxRgzkvPwZuDCafIdwDW3kyijGcfij1a2qBVScr2qli6MfgJzYm/AMYdbHq9I/4hdpKV0Thim2EA==} + vscode-css-languageservice@6.3.4: + resolution: {integrity: sha512-qutdhFg4hnlf6IsOynwtfsN8W0Xc7g3SZd+KK9F2moUEjHtkcZoj5p8uH7BSwHx9hSEXjwKgSRRyHTXThfwAkQ==} vscode-html-languageservice@5.3.3: resolution: {integrity: sha512-AK/jJM0VIWRrlfqkDBMZxNMnxYT5I2uoMVRoNJ5ePSplnSaT9mbYjqJlxxeLvUrOW7MEH0vVIDzU48u44QZE0w==} @@ -19856,6 +19977,16 @@ packages: webpack-virtual-modules@0.6.2: resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==} + webpack@5.88.0: + resolution: {integrity: sha512-O3jDhG5e44qIBSi/P6KpcCcH7HD+nYIHVBhdWFxcLOcIGN8zGo5nqF3BjyNCxIh4p1vFdNnreZv2h2KkoAw3lw==} + engines: {node: '>=10.13.0'} + hasBin: true + peerDependencies: + webpack-cli: '*' + peerDependenciesMeta: + webpack-cli: + optional: true + webpack@5.94.0: resolution: {integrity: sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==} engines: {node: '>=10.13.0'} @@ -20766,7 +20897,7 @@ snapshots: rehype-stringify: 10.0.1 remark-gfm: 4.0.1 remark-parse: 11.0.0 - remark-rehype: 11.1.1 + remark-rehype: 11.1.2 remark-smartypants: 3.0.2 shiki: 1.29.2 unified: 11.0.5 @@ -20789,7 +20920,7 @@ snapshots: rehype-stringify: 10.0.1 remark-gfm: 4.0.1 remark-parse: 11.0.0 - remark-rehype: 11.1.1 + remark-rehype: 11.1.2 remark-smartypants: 3.0.2 shiki: 1.29.2 unified: 11.0.5 @@ -21228,8 +21359,8 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-compilation-targets': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 - debug: 4.3.7 + '@babel/helper-plugin-utils': 7.26.5 + debug: 4.4.0(supports-color@8.1.1) lodash.debounce: 4.0.8 resolve: 1.22.10 transitivePeerDependencies: @@ -21239,8 +21370,8 @@ snapshots: dependencies: '@babel/core': 7.26.9 '@babel/helper-compilation-targets': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 - debug: 4.3.7 + '@babel/helper-plugin-utils': 7.26.5 + debug: 4.4.0(supports-color@8.1.1) lodash.debounce: 4.0.8 resolve: 1.22.10 transitivePeerDependencies: @@ -21447,7 +21578,7 @@ snapshots: '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/traverse': 7.25.9 transitivePeerDependencies: - supports-color @@ -21463,7 +21594,7 @@ snapshots: '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.0(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.9(@babel/core@7.26.9)': dependencies: @@ -21473,7 +21604,7 @@ snapshots: '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.0(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.9(@babel/core@7.26.9)': dependencies: @@ -21483,7 +21614,7 @@ snapshots: '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.25.2) transitivePeerDependencies: @@ -21501,7 +21632,7 @@ snapshots: '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.0(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/traverse': 7.25.9 transitivePeerDependencies: - supports-color @@ -21543,62 +21674,62 @@ snapshots: '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-decorators@7.24.7(@babel/core@7.25.2)': dependencies: @@ -21618,17 +21749,17 @@ snapshots: '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-import-assertions@7.25.6(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-import-assertions@7.26.0(@babel/core@7.26.9)': dependencies: @@ -21638,17 +21769,17 @@ snapshots: '@babel/plugin-syntax-import-attributes@7.25.6(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-import-attributes@7.25.6(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-import-attributes@7.25.6(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-import-attributes@7.26.0(@babel/core@7.26.9)': dependencies: @@ -21658,32 +21789,32 @@ snapshots: '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.25.2)': dependencies: @@ -21703,154 +21834,154 @@ snapshots: '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-typescript@7.25.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-typescript@7.25.4(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-typescript@7.25.4(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.9) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-arrow-functions@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-arrow-functions@7.25.9(@babel/core@7.26.9)': dependencies: @@ -21860,7 +21991,7 @@ snapshots: '@babel/plugin-transform-async-generator-functions@7.25.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.25.2) '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.2) '@babel/traverse': 7.25.9 @@ -21880,7 +22011,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-module-imports': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.25.2) transitivePeerDependencies: - supports-color @@ -21897,7 +22028,7 @@ snapshots: '@babel/plugin-transform-block-scoped-functions@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-block-scoped-functions@7.26.5(@babel/core@7.26.9)': dependencies: @@ -21907,7 +22038,7 @@ snapshots: '@babel/plugin-transform-block-scoping@7.25.0(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-block-scoping@7.25.9(@babel/core@7.26.9)': dependencies: @@ -21918,7 +22049,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 transitivePeerDependencies: - supports-color @@ -21934,7 +22065,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.25.2) transitivePeerDependencies: - supports-color @@ -21952,7 +22083,7 @@ snapshots: '@babel/core': 7.25.2 '@babel/helper-annotate-as-pure': 7.25.9 '@babel/helper-compilation-targets': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-replace-supers': 7.25.9(@babel/core@7.25.2) '@babel/traverse': 7.25.9 globals: 11.12.0 @@ -21974,7 +22105,7 @@ snapshots: '@babel/plugin-transform-computed-properties@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/template': 7.25.9 '@babel/plugin-transform-computed-properties@7.25.9(@babel/core@7.26.9)': @@ -21986,7 +22117,7 @@ snapshots: '@babel/plugin-transform-destructuring@7.24.8(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-destructuring@7.25.9(@babel/core@7.26.9)': dependencies: @@ -21997,7 +22128,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-dotall-regex@7.25.9(@babel/core@7.26.9)': dependencies: @@ -22008,7 +22139,7 @@ snapshots: '@babel/plugin-transform-duplicate-keys@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-duplicate-keys@7.25.9(@babel/core@7.26.9)': dependencies: @@ -22019,7 +22150,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.9(@babel/core@7.26.9)': dependencies: @@ -22030,7 +22161,7 @@ snapshots: '@babel/plugin-transform-dynamic-import@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.2) '@babel/plugin-transform-dynamic-import@7.25.9(@babel/core@7.26.9)': @@ -22042,7 +22173,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-builder-binary-assignment-operator-visitor': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 transitivePeerDependencies: - supports-color @@ -22054,7 +22185,7 @@ snapshots: '@babel/plugin-transform-export-namespace-from@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.25.2) '@babel/plugin-transform-export-namespace-from@7.25.9(@babel/core@7.26.9)': @@ -22065,7 +22196,7 @@ snapshots: '@babel/plugin-transform-for-of@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 transitivePeerDependencies: - supports-color @@ -22082,7 +22213,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-compilation-targets': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/traverse': 7.25.9 transitivePeerDependencies: - supports-color @@ -22099,7 +22230,7 @@ snapshots: '@babel/plugin-transform-json-strings@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.25.2) '@babel/plugin-transform-json-strings@7.25.9(@babel/core@7.26.9)': @@ -22110,7 +22241,7 @@ snapshots: '@babel/plugin-transform-literals@7.25.2(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-literals@7.25.9(@babel/core@7.26.9)': dependencies: @@ -22120,7 +22251,7 @@ snapshots: '@babel/plugin-transform-logical-assignment-operators@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.25.2) '@babel/plugin-transform-logical-assignment-operators@7.25.9(@babel/core@7.26.9)': @@ -22131,7 +22262,7 @@ snapshots: '@babel/plugin-transform-member-expression-literals@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-member-expression-literals@7.25.9(@babel/core@7.26.9)': dependencies: @@ -22142,7 +22273,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 transitivePeerDependencies: - supports-color @@ -22193,7 +22324,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-validator-identifier': 7.25.9 '@babel/traverse': 7.25.9 transitivePeerDependencies: @@ -22213,7 +22344,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 transitivePeerDependencies: - supports-color @@ -22229,7 +22360,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-named-capturing-groups-regex@7.25.9(@babel/core@7.26.9)': dependencies: @@ -22240,7 +22371,7 @@ snapshots: '@babel/plugin-transform-new-target@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-new-target@7.25.9(@babel/core@7.26.9)': dependencies: @@ -22250,7 +22381,7 @@ snapshots: '@babel/plugin-transform-nullish-coalescing-operator@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.2) '@babel/plugin-transform-nullish-coalescing-operator@7.26.6(@babel/core@7.26.9)': @@ -22261,7 +22392,7 @@ snapshots: '@babel/plugin-transform-numeric-separator@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.25.2) '@babel/plugin-transform-numeric-separator@7.25.9(@babel/core@7.26.9)': @@ -22273,7 +22404,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-compilation-targets': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.2) '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.25.2) @@ -22287,7 +22418,7 @@ snapshots: '@babel/plugin-transform-object-super@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-replace-supers': 7.25.9(@babel/core@7.25.2) transitivePeerDependencies: - supports-color @@ -22303,7 +22434,7 @@ snapshots: '@babel/plugin-transform-optional-catch-binding@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.25.2) '@babel/plugin-transform-optional-catch-binding@7.25.9(@babel/core@7.26.9)': @@ -22314,7 +22445,7 @@ snapshots: '@babel/plugin-transform-optional-chaining@7.24.8(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.2) transitivePeerDependencies: @@ -22323,7 +22454,7 @@ snapshots: '@babel/plugin-transform-optional-chaining@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 transitivePeerDependencies: - supports-color @@ -22331,7 +22462,7 @@ snapshots: '@babel/plugin-transform-optional-chaining@7.25.9(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 transitivePeerDependencies: - supports-color @@ -22339,23 +22470,23 @@ snapshots: '@babel/plugin-transform-parameters@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-parameters@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-parameters@7.25.9(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-private-methods@7.25.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 transitivePeerDependencies: - supports-color @@ -22372,7 +22503,7 @@ snapshots: '@babel/core': 7.25.2 '@babel/helper-annotate-as-pure': 7.25.9 '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.25.2) transitivePeerDependencies: - supports-color @@ -22389,7 +22520,7 @@ snapshots: '@babel/plugin-transform-property-literals@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-property-literals@7.25.9(@babel/core@7.26.9)': dependencies: @@ -22413,14 +22544,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.26.9)': + '@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.26.0)': dependencies: - '@babel/core': 7.26.9 + '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.26.5 - '@babel/plugin-transform-react-jsx-source@7.25.9(@babel/core@7.26.9)': + '@babel/plugin-transform-react-jsx-source@7.25.9(@babel/core@7.26.0)': dependencies: - '@babel/core': 7.26.9 + '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-react-jsx@7.25.2(@babel/core@7.25.2)': @@ -22454,7 +22585,7 @@ snapshots: '@babel/plugin-transform-regenerator@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 regenerator-transform: 0.15.2 '@babel/plugin-transform-regenerator@7.25.9(@babel/core@7.26.9)': @@ -22472,7 +22603,7 @@ snapshots: '@babel/plugin-transform-reserved-words@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-reserved-words@7.25.9(@babel/core@7.26.9)': dependencies: @@ -22506,7 +22637,7 @@ snapshots: '@babel/plugin-transform-shorthand-properties@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-shorthand-properties@7.25.9(@babel/core@7.26.9)': dependencies: @@ -22516,7 +22647,7 @@ snapshots: '@babel/plugin-transform-spread@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 transitivePeerDependencies: - supports-color @@ -22532,7 +22663,7 @@ snapshots: '@babel/plugin-transform-sticky-regex@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-sticky-regex@7.25.9(@babel/core@7.26.9)': dependencies: @@ -22542,7 +22673,7 @@ snapshots: '@babel/plugin-transform-template-literals@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-template-literals@7.26.8(@babel/core@7.26.9)': dependencies: @@ -22552,7 +22683,7 @@ snapshots: '@babel/plugin-transform-typeof-symbol@7.24.8(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-typeof-symbol@7.26.7(@babel/core@7.26.9)': dependencies: @@ -22595,7 +22726,7 @@ snapshots: '@babel/plugin-transform-unicode-escapes@7.24.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-unicode-escapes@7.25.9(@babel/core@7.26.9)': dependencies: @@ -22606,7 +22737,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-unicode-property-regex@7.25.9(@babel/core@7.26.9)': dependencies: @@ -22618,7 +22749,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-unicode-regex@7.25.9(@babel/core@7.26.9)': dependencies: @@ -22630,7 +22761,7 @@ snapshots: dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-unicode-sets-regex@7.25.9(@babel/core@7.26.9)': dependencies: @@ -22805,14 +22936,14 @@ snapshots: '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/types': 7.26.3 esutils: 2.0.3 '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.26.9)': dependencies: '@babel/core': 7.26.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/types': 7.26.3 esutils: 2.0.3 @@ -22867,6 +22998,10 @@ snapshots: dependencies: regenerator-runtime: 0.14.1 + '@babel/runtime@7.26.0': + dependencies: + regenerator-runtime: 0.14.1 + '@babel/runtime@7.26.9': dependencies: regenerator-runtime: 0.14.1 @@ -22960,14 +23095,14 @@ snapshots: dependencies: '@codemirror/language': 6.11.0 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.4 + '@codemirror/view': 6.36.5 '@lezer/common': 1.2.3 - '@codemirror/commands@6.8.0': + '@codemirror/commands@6.8.1': dependencies: '@codemirror/language': 6.11.0 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.4 + '@codemirror/view': 6.36.5 '@lezer/common': 1.2.3 '@codemirror/lang-css@6.3.1': @@ -22985,7 +23120,7 @@ snapshots: '@codemirror/lang-javascript': 6.2.3 '@codemirror/language': 6.11.0 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.4 + '@codemirror/view': 6.36.5 '@lezer/common': 1.2.3 '@lezer/css': 1.1.11 '@lezer/html': 1.3.10 @@ -22996,7 +23131,7 @@ snapshots: '@codemirror/language': 6.11.0 '@codemirror/lint': 6.8.5 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.4 + '@codemirror/view': 6.36.5 '@lezer/common': 1.2.3 '@lezer/javascript': 1.4.21 @@ -23011,7 +23146,7 @@ snapshots: '@codemirror/lang-html': 6.4.9 '@codemirror/language': 6.11.0 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.4 + '@codemirror/view': 6.36.5 '@lezer/common': 1.2.3 '@lezer/markdown': 1.4.2 @@ -23042,7 +23177,7 @@ snapshots: '@codemirror/language@6.11.0': dependencies: '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.4 + '@codemirror/view': 6.36.5 '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 @@ -23051,20 +23186,20 @@ snapshots: '@codemirror/lint@6.8.5': dependencies: '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.4 + '@codemirror/view': 6.36.5 crelt: 1.0.6 '@codemirror/search@6.5.10': dependencies: '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.4 + '@codemirror/view': 6.36.5 crelt: 1.0.6 '@codemirror/state@6.5.2': dependencies: '@marijn/find-cluster-break': 1.0.2 - '@codemirror/view@6.36.4': + '@codemirror/view@6.36.5': dependencies: '@codemirror/state': 6.5.2 style-mod: 4.1.2 @@ -23898,14 +24033,14 @@ snapshots: '@floating-ui/utils@0.2.8': {} - '@grafana/faro-core@1.13.3': + '@grafana/faro-core@1.14.1': dependencies: '@opentelemetry/api': 1.9.0 '@opentelemetry/otlp-transformer': 0.57.1(@opentelemetry/api@1.9.0) '@grafana/faro-web-sdk@1.13.3': dependencies: - '@grafana/faro-core': 1.13.3 + '@grafana/faro-core': 1.14.1 ua-parser-js: 1.0.40 web-vitals: 4.2.4 @@ -24362,9 +24497,8 @@ snapshots: '@types/yargs': 17.0.10 chalk: 4.1.2 - '@joshwooding/vite-plugin-react-docgen-typescript@0.5.0(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))': + '@joshwooding/vite-plugin-react-docgen-typescript@0.4.2(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))': dependencies: - glob: 10.4.5 magic-string: 0.27.0 react-docgen-typescript: 2.2.2(typescript@5.7.3) vite: 6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1) @@ -24568,7 +24702,7 @@ snapshots: rehype-recma: 1.0.0 remark-mdx: 3.1.0 remark-parse: 11.0.0 - remark-rehype: 11.1.1 + remark-rehype: 11.1.2 source-map: 0.7.4 unified: 11.0.5 unist-util-position-from-estree: 2.0.0 @@ -24587,12 +24721,26 @@ snapshots: '@mediapipe/tasks-vision@0.10.8': {} + '@module-federation/bridge-react-webpack-plugin@0.9.0': + dependencies: + '@module-federation/sdk': 0.9.0 + '@types/semver': 7.5.8 + semver: 7.6.3 + '@module-federation/bridge-react-webpack-plugin@0.9.1': dependencies: '@module-federation/sdk': 0.9.1 '@types/semver': 7.5.8 semver: 7.6.3 + '@module-federation/data-prefetch@0.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@module-federation/runtime': 0.9.0 + '@module-federation/sdk': 0.9.0 + fs-extra: 9.1.0 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + '@module-federation/data-prefetch@0.9.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@module-federation/runtime': 0.9.1 @@ -24601,6 +24749,31 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + '@module-federation/dts-plugin@0.9.0(bufferutil@4.0.7)(typescript@5.7.3)': + dependencies: + '@module-federation/error-codes': 0.9.0 + '@module-federation/managers': 0.9.0 + '@module-federation/sdk': 0.9.0 + '@module-federation/third-party-dts-extractor': 0.9.0 + adm-zip: 0.5.16 + ansi-colors: 4.1.3 + axios: 1.8.3 + chalk: 3.0.0 + fs-extra: 9.1.0 + isomorphic-ws: 5.0.0(ws@8.18.0(bufferutil@4.0.7)) + koa: 2.15.4 + lodash.clonedeepwith: 4.5.0 + log4js: 6.9.1 + node-schedule: 2.1.1 + rambda: 9.3.0 + typescript: 5.7.3 + ws: 8.18.0(bufferutil@4.0.7) + transitivePeerDependencies: + - bufferutil + - debug + - supports-color + - utf-8-validate + '@module-federation/dts-plugin@0.9.1(bufferutil@4.0.7)(typescript@5.7.3)': dependencies: '@module-federation/error-codes': 0.9.1 @@ -24626,6 +24799,32 @@ snapshots: - supports-color - utf-8-validate + '@module-federation/enhanced@0.9.0(@rspack/core@1.2.6(@swc/helpers@0.5.11))(bufferutil@4.0.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)))': + dependencies: + '@module-federation/bridge-react-webpack-plugin': 0.9.0 + '@module-federation/data-prefetch': 0.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@module-federation/dts-plugin': 0.9.0(bufferutil@4.0.7)(typescript@5.7.3) + '@module-federation/error-codes': 0.9.0 + '@module-federation/inject-external-runtime-core-plugin': 0.9.0(@module-federation/runtime-tools@0.9.0) + '@module-federation/managers': 0.9.0 + '@module-federation/manifest': 0.9.0(bufferutil@4.0.7)(typescript@5.7.3) + '@module-federation/rspack': 0.9.0(@rspack/core@1.2.6(@swc/helpers@0.5.11))(bufferutil@4.0.7)(typescript@5.7.3) + '@module-federation/runtime-tools': 0.9.0 + '@module-federation/sdk': 0.9.0 + btoa: 1.2.1 + upath: 2.0.1 + optionalDependencies: + typescript: 5.7.3 + webpack: 5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + transitivePeerDependencies: + - '@rspack/core' + - bufferutil + - debug + - react + - react-dom + - supports-color + - utf-8-validate + '@module-federation/enhanced@0.9.1(@rspack/core@1.2.6(@swc/helpers@0.5.11))(bufferutil@4.0.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)))': dependencies: '@module-federation/bridge-react-webpack-plugin': 0.9.1 @@ -24654,18 +24853,45 @@ snapshots: '@module-federation/error-codes@0.8.4': {} + '@module-federation/error-codes@0.9.0': {} + '@module-federation/error-codes@0.9.1': {} + '@module-federation/inject-external-runtime-core-plugin@0.9.0(@module-federation/runtime-tools@0.9.0)': + dependencies: + '@module-federation/runtime-tools': 0.9.0 + '@module-federation/inject-external-runtime-core-plugin@0.9.1(@module-federation/runtime-tools@0.9.1)': dependencies: '@module-federation/runtime-tools': 0.9.1 + '@module-federation/managers@0.9.0': + dependencies: + '@module-federation/sdk': 0.9.0 + find-pkg: 2.0.0 + fs-extra: 9.1.0 + '@module-federation/managers@0.9.1': dependencies: '@module-federation/sdk': 0.9.1 find-pkg: 2.0.0 fs-extra: 9.1.0 + '@module-federation/manifest@0.9.0(bufferutil@4.0.7)(typescript@5.7.3)': + dependencies: + '@module-federation/dts-plugin': 0.9.0(bufferutil@4.0.7)(typescript@5.7.3) + '@module-federation/managers': 0.9.0 + '@module-federation/sdk': 0.9.0 + chalk: 3.0.0 + find-pkg: 2.0.0 + transitivePeerDependencies: + - bufferutil + - debug + - supports-color + - typescript + - utf-8-validate + - vue-tsc + '@module-federation/manifest@0.9.1(bufferutil@4.0.7)(typescript@5.7.3)': dependencies: '@module-federation/dts-plugin': 0.9.1(bufferutil@4.0.7)(typescript@5.7.3) @@ -24704,6 +24930,24 @@ snapshots: - utf-8-validate - vue-tsc + '@module-federation/rspack@0.9.0(@rspack/core@1.2.6(@swc/helpers@0.5.11))(bufferutil@4.0.7)(typescript@5.7.3)': + dependencies: + '@module-federation/bridge-react-webpack-plugin': 0.9.0 + '@module-federation/dts-plugin': 0.9.0(bufferutil@4.0.7)(typescript@5.7.3) + '@module-federation/inject-external-runtime-core-plugin': 0.9.0(@module-federation/runtime-tools@0.9.0) + '@module-federation/managers': 0.9.0 + '@module-federation/manifest': 0.9.0(bufferutil@4.0.7)(typescript@5.7.3) + '@module-federation/runtime-tools': 0.9.0 + '@module-federation/sdk': 0.9.0 + '@rspack/core': 1.2.6(@swc/helpers@0.5.11) + optionalDependencies: + typescript: 5.7.3 + transitivePeerDependencies: + - bufferutil + - debug + - supports-color + - utf-8-validate + '@module-federation/rspack@0.9.1(@rspack/core@1.2.6(@swc/helpers@0.5.11))(bufferutil@4.0.7)(typescript@5.7.3)': dependencies: '@module-federation/bridge-react-webpack-plugin': 0.9.1 @@ -24722,6 +24966,11 @@ snapshots: - supports-color - utf-8-validate + '@module-federation/runtime-core@0.6.21': + dependencies: + '@module-federation/error-codes': 0.9.0 + '@module-federation/sdk': 0.9.0 + '@module-federation/runtime-core@0.9.1': dependencies: '@module-federation/error-codes': 0.9.1 @@ -24737,6 +24986,11 @@ snapshots: '@module-federation/runtime': 0.8.4 '@module-federation/webpack-bundler-runtime': 0.8.4 + '@module-federation/runtime-tools@0.9.0': + dependencies: + '@module-federation/runtime': 0.9.0 + '@module-federation/webpack-bundler-runtime': 0.9.0 + '@module-federation/runtime-tools@0.9.1': dependencies: '@module-federation/runtime': 0.9.1 @@ -24751,6 +25005,12 @@ snapshots: '@module-federation/error-codes': 0.8.4 '@module-federation/sdk': 0.8.4 + '@module-federation/runtime@0.9.0': + dependencies: + '@module-federation/error-codes': 0.9.0 + '@module-federation/runtime-core': 0.6.21 + '@module-federation/sdk': 0.9.0 + '@module-federation/runtime@0.9.1': dependencies: '@module-federation/error-codes': 0.9.1 @@ -24769,6 +25029,12 @@ snapshots: '@module-federation/sdk@0.9.1': {} + '@module-federation/third-party-dts-extractor@0.9.0': + dependencies: + find-pkg: 2.0.0 + fs-extra: 9.1.0 + resolve: 1.22.8 + '@module-federation/third-party-dts-extractor@0.9.1': dependencies: find-pkg: 2.0.0 @@ -24794,6 +25060,11 @@ snapshots: '@module-federation/runtime': 0.8.4 '@module-federation/sdk': 0.8.4 + '@module-federation/webpack-bundler-runtime@0.9.0': + dependencies: + '@module-federation/runtime': 0.9.0 + '@module-federation/sdk': 0.9.0 + '@module-federation/webpack-bundler-runtime@0.9.1': dependencies: '@module-federation/runtime': 0.9.1 @@ -24811,11 +25082,11 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@monodon/rust@2.1.1(@napi-rs/cli@3.0.0-alpha.56(@emnapi/runtime@1.2.0)(emnapi@1.3.1(node-addon-api@7.1.1)))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))': + '@monodon/rust@2.1.1(@napi-rs/cli@3.0.0-alpha.56(@emnapi/runtime@1.2.0)(emnapi@1.3.1(node-addon-api@7.1.1)))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))': dependencies: '@ltd/j-toml': 1.38.0 '@napi-rs/cli': 3.0.0-alpha.56(@emnapi/runtime@1.2.0)(emnapi@1.3.1(node-addon-api@7.1.1)) - '@nx/devkit': 20.2.2(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/devkit': 20.2.2(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) chalk: 4.1.2 npm-run-path: 4.0.1 semver: 7.5.4 @@ -25718,19 +25989,19 @@ snapshots: transitivePeerDependencies: - encoding - '@nx/angular@21.0.0-beta.4(3mujlmhi6inc7piqc7p33vqkpy)': + '@nx/angular@21.0.0-beta.4(m2fpeifx3zewnwiuits4v2eyjm)': dependencies: '@angular-devkit/build-angular': 19.2.0(stndy3yfcthbju7r3pdqp75gku) '@angular-devkit/core': 19.2.0(chokidar@3.6.0) '@angular-devkit/schematics': 19.2.0(chokidar@3.6.0) - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/eslint': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) - '@nx/module-federation': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(bufferutil@4.0.7)(esbuild@0.25.0)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) - '@nx/rspack': 21.0.0-beta.4(z36hr747kwn6jfof5tsepjpbme) - '@nx/web': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) - '@nx/webpack': 21.0.0-beta.4(@babel/traverse@7.26.9)(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(bufferutil@4.0.7)(esbuild@0.25.0)(html-webpack-plugin@5.5.0(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) - '@nx/workspace': 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/eslint': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/module-federation': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(bufferutil@4.0.7)(esbuild@0.25.0)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + '@nx/rspack': 21.0.0-beta.4(3rkozrjia44o7a5hsza4wqcyli) + '@nx/web': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/webpack': 21.0.0-beta.4(@babel/traverse@7.26.9)(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(bufferutil@4.0.7)(esbuild@0.25.0)(html-webpack-plugin@5.5.0(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + '@nx/workspace': 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) '@phenomnomnominal/tsquery': 5.0.1(typescript@5.7.3) '@schematics/angular': 19.2.0(chokidar@3.6.0) '@typescript-eslint/type-utils': 8.20.0(eslint@8.57.0)(typescript@5.7.3) @@ -25780,25 +26051,25 @@ snapshots: - vue-tsc - webpack-cli - '@nx/conformance@1.3.0-beta.11(@nx/js@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))': + '@nx/conformance@1.3.0-beta.11(@nx/js@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))': dependencies: - '@nx/devkit': 20.2.2(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/devkit': 20.2.2(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@nx/key': 1.3.0-beta.11 ajv: 8.17.1 esbuild: 0.21.5 - nx: 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) + nx: 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) picocolors: 1.1.1 semver: 7.5.4 yargs: 17.7.2 transitivePeerDependencies: - debug - '@nx/cypress@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(cypress@14.3.0)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': + '@nx/cypress@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(cypress@14.3.0)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': dependencies: - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/eslint': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/eslint': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@phenomnomnominal/tsquery': 5.0.1(typescript@5.7.3) detect-port: 1.6.1 semver: 7.7.1 @@ -25818,43 +26089,43 @@ snapshots: - typescript - verdaccio - '@nx/devkit@20.2.2(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))': + '@nx/devkit@20.2.2(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))': dependencies: ejs: 3.1.10 enquirer: 2.3.6 ignore: 5.3.2 minimatch: 9.0.3 - nx: 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) + nx: 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) semver: 7.7.1 tmp: 0.2.3 tslib: 2.8.1 yargs-parser: 21.1.1 - '@nx/devkit@21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))': + '@nx/devkit@21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))': dependencies: ejs: 3.1.10 enquirer: 2.3.6 ignore: 5.3.2 minimatch: 9.0.3 - nx: 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) + nx: 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) semver: 7.7.1 tmp: 0.2.3 tslib: 2.8.1 yargs-parser: 21.1.1 - '@nx/enterprise-cloud@1.3.0-beta.11(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))': + '@nx/enterprise-cloud@1.3.0-beta.11(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))': dependencies: - '@nx/devkit': 20.2.2(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/devkit': 20.2.2(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) '@nx/key': 1.3.0-beta.11 - nx: 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) + nx: 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) semver: 7.5.4 transitivePeerDependencies: - debug - '@nx/esbuild@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': + '@nx/esbuild@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': dependencies: - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) picocolors: 1.1.1 tinyglobby: 0.2.12 tsconfig-paths: 4.2.0 @@ -25870,10 +26141,10 @@ snapshots: - supports-color - verdaccio - '@nx/eslint-plugin@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@typescript-eslint/parser@8.20.0(eslint@8.57.0)(typescript@5.7.3))(eslint-config-prettier@10.1.2(eslint@8.57.0))(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': + '@nx/eslint-plugin@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@typescript-eslint/parser@8.20.0(eslint@8.57.0)(typescript@5.7.3))(eslint-config-prettier@10.1.2(eslint@8.57.0))(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': dependencies: - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@typescript-eslint/parser': 8.20.0(eslint@8.57.0)(typescript@5.7.3) '@typescript-eslint/type-utils': 8.20.0(eslint@8.57.0)(typescript@5.7.3) '@typescript-eslint/utils': 8.20.0(eslint@8.57.0)(typescript@5.7.3) @@ -25896,10 +26167,10 @@ snapshots: - typescript - verdaccio - '@nx/eslint@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': + '@nx/eslint@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': dependencies: - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) eslint: 8.57.0 semver: 7.7.1 tslib: 2.8.1 @@ -25915,20 +26186,20 @@ snapshots: - supports-color - verdaccio - '@nx/graph@0.4.2(@nx/devkit@21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react-router-dom@6.26.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)': + '@nx/graph@0.4.2(@nx/devkit@21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react-router-dom@6.26.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)': dependencies: - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - nx: 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + nx: 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) react-router-dom: 6.26.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@nx/jest@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@types/node@20.16.10)(babel-plugin-macros@3.1.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(ts-node@10.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@types/node@20.16.10)(typescript@5.7.3))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': + '@nx/jest@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@types/node@20.16.10)(babel-plugin-macros@3.1.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(ts-node@10.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@types/node@20.16.10)(typescript@5.7.3))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': dependencies: '@jest/reporters': 29.7.0 '@jest/test-result': 29.7.0 - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@phenomnomnominal/tsquery': 5.0.1(typescript@5.7.3) identity-obj-proxy: 3.0.0 jest-config: 29.7.0(@types/node@20.16.10)(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@types/node@20.16.10)(typescript@5.7.3)) @@ -25954,7 +26225,7 @@ snapshots: - typescript - verdaccio - '@nx/js@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': + '@nx/js@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': dependencies: '@babel/core': 7.26.9 '@babel/plugin-proposal-decorators': 7.24.7(@babel/core@7.26.9) @@ -25963,8 +26234,8 @@ snapshots: '@babel/preset-env': 7.26.9(@babel/core@7.26.9) '@babel/preset-typescript': 7.24.7(@babel/core@7.26.9) '@babel/runtime': 7.26.9 - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/workspace': 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/workspace': 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) '@zkochan/js-yaml': 0.0.7 babel-plugin-const-enum: 1.2.0(@babel/core@7.26.9) babel-plugin-macros: 3.1.0 @@ -26043,14 +26314,14 @@ snapshots: transitivePeerDependencies: - debug - '@nx/module-federation@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(bufferutil@4.0.7)(esbuild@0.25.0)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))': + '@nx/module-federation@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(bufferutil@4.0.7)(esbuild@0.25.0)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))': dependencies: '@module-federation/enhanced': 0.9.1(@rspack/core@1.2.6(@swc/helpers@0.5.11))(bufferutil@4.0.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) '@module-federation/node': 2.6.27(@rspack/core@1.2.6(@swc/helpers@0.5.11))(bufferutil@4.0.7)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) '@module-federation/sdk': 0.9.1 - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) - '@nx/web': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/web': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@rspack/core': 1.2.6(@swc/helpers@0.5.11) express: 4.21.2 http-proxy-middleware: 3.0.3 @@ -26078,15 +26349,15 @@ snapshots: - vue-tsc - webpack-cli - '@nx/next@21.0.0-beta.4(6glqd352bscyejapf6c2doambe)': + '@nx/next@21.0.0-beta.4(m6qvbv3x7azwoqxph4efgoxvje)': dependencies: '@babel/plugin-proposal-decorators': 7.24.7(@babel/core@7.25.2) - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/eslint': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) - '@nx/react': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(@zkochan/js-yaml@0.0.7)(bufferutil@4.0.7)(esbuild@0.25.0)(eslint@8.57.0)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) - '@nx/web': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) - '@nx/webpack': 21.0.0-beta.4(@babel/traverse@7.26.9)(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(bufferutil@4.0.7)(esbuild@0.25.0)(html-webpack-plugin@5.5.0(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/eslint': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/react': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(@zkochan/js-yaml@0.0.7)(bufferutil@4.0.7)(esbuild@0.25.0)(eslint@8.57.0)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) + '@nx/web': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/webpack': 21.0.0-beta.4(@babel/traverse@7.26.9)(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(bufferutil@4.0.7)(esbuild@0.25.0)(html-webpack-plugin@5.5.0(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) '@phenomnomnominal/tsquery': 5.0.1(typescript@5.7.3) '@svgr/webpack': 8.1.0(typescript@5.7.3) copy-webpack-plugin: 10.2.4(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) @@ -26159,11 +26430,11 @@ snapshots: '@nx/nx-win32-x64-msvc@21.0.0-beta.4': optional: true - '@nx/playwright@21.0.0-beta.4(@babel/traverse@7.26.9)(@playwright/test@1.47.1)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': + '@nx/playwright@21.0.0-beta.4(@babel/traverse@7.26.9)(@playwright/test@1.47.1)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': dependencies: - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/eslint': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/eslint': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@phenomnomnominal/tsquery': 5.0.1(typescript@5.7.3) minimatch: 9.0.3 tslib: 2.8.1 @@ -26181,17 +26452,17 @@ snapshots: - typescript - verdaccio - '@nx/powerpack-conformance@1.3.0-beta.11(@nx/js@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))': + '@nx/powerpack-conformance@1.3.0-beta.11(@nx/js@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))': dependencies: - '@nx/conformance': 1.3.0-beta.11(@nx/js@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/conformance': 1.3.0-beta.11(@nx/js@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) transitivePeerDependencies: - '@nx/js' - debug - nx - '@nx/powerpack-enterprise-cloud@1.3.0-beta.11(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))': + '@nx/powerpack-enterprise-cloud@1.3.0-beta.11(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))': dependencies: - '@nx/enterprise-cloud': 1.3.0-beta.11(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/enterprise-cloud': 1.3.0-beta.11(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) transitivePeerDependencies: - debug - nx @@ -26202,13 +26473,13 @@ snapshots: transitivePeerDependencies: - debug - '@nx/react@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(@zkochan/js-yaml@0.0.7)(bufferutil@4.0.7)(esbuild@0.25.0)(eslint@8.57.0)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)))': + '@nx/react@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(@zkochan/js-yaml@0.0.7)(bufferutil@4.0.7)(esbuild@0.25.0)(eslint@8.57.0)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)))': dependencies: - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/eslint': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) - '@nx/module-federation': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(bufferutil@4.0.7)(esbuild@0.25.0)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) - '@nx/web': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/eslint': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/module-federation': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(bufferutil@4.0.7)(esbuild@0.25.0)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + '@nx/web': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@phenomnomnominal/tsquery': 5.0.1(typescript@5.7.3) '@svgr/webpack': 8.1.0(typescript@5.7.3) express: 4.21.2 @@ -26242,10 +26513,10 @@ snapshots: - webpack - webpack-cli - '@nx/rsbuild@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': + '@nx/rsbuild@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': dependencies: - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@phenomnomnominal/tsquery': 5.0.1(typescript@5.7.3) '@rsbuild/core': 1.1.8 minimatch: 9.0.3 @@ -26260,14 +26531,14 @@ snapshots: - typescript - verdaccio - '@nx/rspack@21.0.0-beta.4(z36hr747kwn6jfof5tsepjpbme)': + '@nx/rspack@21.0.0-beta.4(3rkozrjia44o7a5hsza4wqcyli)': dependencies: - '@module-federation/enhanced': 0.9.1(@rspack/core@1.2.6(@swc/helpers@0.5.11))(bufferutil@4.0.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) + '@module-federation/enhanced': 0.9.0(@rspack/core@1.2.6(@swc/helpers@0.5.11))(bufferutil@4.0.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) '@module-federation/node': 2.6.27(@rspack/core@1.2.6(@swc/helpers@0.5.11))(bufferutil@4.0.7)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) - '@nx/module-federation': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(bufferutil@4.0.7)(esbuild@0.25.0)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) - '@nx/web': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/module-federation': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(bufferutil@4.0.7)(esbuild@0.25.0)(next@14.2.28(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.47.1)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.55.0))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + '@nx/web': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@phenomnomnominal/tsquery': 5.0.1(typescript@5.7.3) '@rspack/core': 1.2.6(@swc/helpers@0.5.11) '@rspack/dev-server': 1.0.9(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@types/express@4.17.21)(bufferutil@4.0.7)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) @@ -26319,12 +26590,12 @@ snapshots: - vue-tsc - webpack-cli - '@nx/storybook@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(cypress@14.3.0)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': + '@nx/storybook@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(cypress@14.3.0)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': dependencies: - '@nx/cypress': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(cypress@14.3.0)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/eslint': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/cypress': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(cypress@14.3.0)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/eslint': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(@zkochan/js-yaml@0.0.7)(eslint@8.57.0)(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@phenomnomnominal/tsquery': 5.0.1(typescript@5.7.3) semver: 7.7.1 tslib: 2.8.1 @@ -26341,10 +26612,10 @@ snapshots: - typescript - verdaccio - '@nx/vite@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.16.10)(jiti@1.21.6)(jsdom@20.0.3(bufferutil@4.0.7))(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))': + '@nx/vite@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.16.10)(jiti@1.21.6)(jsdom@20.0.3(bufferutil@4.0.7))(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))': dependencies: - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@phenomnomnominal/tsquery': 5.0.1(typescript@5.7.3) '@swc/helpers': 0.5.11 enquirer: 2.3.6 @@ -26363,10 +26634,10 @@ snapshots: - typescript - verdaccio - '@nx/web@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': + '@nx/web@21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))': dependencies: - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) detect-port: 1.6.1 http-server: 14.1.0 picocolors: 1.1.1 @@ -26380,11 +26651,11 @@ snapshots: - supports-color - verdaccio - '@nx/webpack@21.0.0-beta.4(@babel/traverse@7.26.9)(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(bufferutil@4.0.7)(esbuild@0.25.0)(html-webpack-plugin@5.5.0(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))': + '@nx/webpack@21.0.0-beta.4(@babel/traverse@7.26.9)(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(bufferutil@4.0.7)(esbuild@0.25.0)(html-webpack-plugin@5.5.0(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(typescript@5.7.3)(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0))(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))': dependencies: '@babel/core': 7.26.9 - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) - '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/js': 21.0.0-beta.4(@babel/traverse@7.26.9)(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)))(verdaccio@6.0.5(encoding@0.1.13)(typanion@3.14.0)) '@phenomnomnominal/tsquery': 5.0.1(typescript@5.7.3) ajv: 8.17.1 autoprefixer: 10.4.13(postcss@8.4.38) @@ -26444,13 +26715,13 @@ snapshots: - vue-template-compiler - webpack-cli - '@nx/workspace@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))': + '@nx/workspace@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))': dependencies: - '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) + '@nx/devkit': 21.0.0-beta.4(nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))) '@zkochan/js-yaml': 0.0.7 chalk: 4.1.2 enquirer: 2.3.6 - nx: 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) + nx: 21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)) picomatch: 4.0.2 tslib: 2.8.1 yargs-parser: 21.1.1 @@ -26942,182 +27213,182 @@ snapshots: '@protobufjs/utf8@1.1.0': {} - '@radix-ui/primitive@1.1.1': {} + '@radix-ui/primitive@1.1.2': {} - '@radix-ui/react-accordion@1.2.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-accordion@1.2.4(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-collapsible': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-collection': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-direction': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-id': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-collapsible': 1.1.4(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-collection': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-direction': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.1 '@types/react-dom': 18.3.0 - '@radix-ui/react-accordion@1.2.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-accordion@1.2.4(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-collapsible': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-collection': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-direction': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-id': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-collapsible': 1.1.4(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-collection': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-direction': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.20)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.20 '@types/react-dom': 18.3.0 - '@radix-ui/react-arrow@1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-arrow@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.1 '@types/react-dom': 18.3.0 - '@radix-ui/react-arrow@1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-arrow@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.20 '@types/react-dom': 18.3.0 - '@radix-ui/react-collapsible@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-collapsible@1.1.4(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-id': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-presence': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.1 '@types/react-dom': 18.3.0 - '@radix-ui/react-collapsible@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-collapsible@1.1.4(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-id': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-presence': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.20)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.20 '@types/react-dom': 18.3.0 - '@radix-ui/react-collection@1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-collection@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.2.0(@types/react@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.1 '@types/react-dom': 18.3.0 - '@radix-ui/react-collection@1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-collection@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.2.0(@types/react@18.3.20)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.20 '@types/react-dom': 18.3.0 - '@radix-ui/react-compose-refs@1.1.1(@types/react@18.3.1)(react@18.3.1)': + '@radix-ui/react-compose-refs@1.1.2(@types/react@18.3.1)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: '@types/react': 18.3.1 - '@radix-ui/react-compose-refs@1.1.1(@types/react@18.3.20)(react@18.3.1)': + '@radix-ui/react-compose-refs@1.1.2(@types/react@18.3.20)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: '@types/react': 18.3.20 - '@radix-ui/react-context-menu@2.2.6(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-context-menu@2.2.7(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-context': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-menu': 2.1.6(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-context': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-menu': 2.1.7(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.1 '@types/react-dom': 18.3.0 - '@radix-ui/react-context-menu@2.2.6(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-context-menu@2.2.7(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-context': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-menu': 2.1.6(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-context': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-menu': 2.1.7(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.20)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.20 '@types/react-dom': 18.3.0 - '@radix-ui/react-context@1.1.1(@types/react@18.3.1)(react@18.3.1)': + '@radix-ui/react-context@1.1.2(@types/react@18.3.1)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: '@types/react': 18.3.1 - '@radix-ui/react-context@1.1.1(@types/react@18.3.20)(react@18.3.1)': + '@radix-ui/react-context@1.1.2(@types/react@18.3.20)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: '@types/react': 18.3.20 - '@radix-ui/react-dialog@1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-dialog@1.1.7(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-dismissable-layer': 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-focus-guards': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-focus-scope': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-id': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-portal': 1.1.4(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.1.2(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-focus-guards': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-focus-scope': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-portal': 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.2.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.1)(react@18.3.1) aria-hidden: 1.2.4 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -27126,20 +27397,20 @@ snapshots: '@types/react': 18.3.1 '@types/react-dom': 18.3.0 - '@radix-ui/react-dialog@1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-dialog@1.1.7(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-dismissable-layer': 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-focus-guards': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-focus-scope': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-id': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-portal': 1.1.4(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.1.2(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-focus-guards': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-focus-scope': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-portal': 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.2.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.20)(react@18.3.1) aria-hidden: 1.2.4 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -27148,110 +27419,110 @@ snapshots: '@types/react': 18.3.20 '@types/react-dom': 18.3.0 - '@radix-ui/react-direction@1.1.0(@types/react@18.3.1)(react@18.3.1)': + '@radix-ui/react-direction@1.1.1(@types/react@18.3.1)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: '@types/react': 18.3.1 - '@radix-ui/react-direction@1.1.0(@types/react@18.3.20)(react@18.3.1)': + '@radix-ui/react-direction@1.1.1(@types/react@18.3.20)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: '@types/react': 18.3.20 - '@radix-ui/react-dismissable-layer@1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-dismissable-layer@1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.1 '@types/react-dom': 18.3.0 - '@radix-ui/react-dismissable-layer@1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-dismissable-layer@1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@18.3.20)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.20 '@types/react-dom': 18.3.0 - '@radix-ui/react-focus-guards@1.1.1(@types/react@18.3.1)(react@18.3.1)': + '@radix-ui/react-focus-guards@1.1.2(@types/react@18.3.1)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: '@types/react': 18.3.1 - '@radix-ui/react-focus-guards@1.1.1(@types/react@18.3.20)(react@18.3.1)': + '@radix-ui/react-focus-guards@1.1.2(@types/react@18.3.20)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: '@types/react': 18.3.20 - '@radix-ui/react-focus-scope@1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-focus-scope@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.1 '@types/react-dom': 18.3.0 - '@radix-ui/react-focus-scope@1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-focus-scope@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.20)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.20 '@types/react-dom': 18.3.0 - '@radix-ui/react-id@1.1.0(@types/react@18.3.1)(react@18.3.1)': + '@radix-ui/react-id@1.1.1(@types/react@18.3.1)(react@18.3.1)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.1)(react@18.3.1) react: 18.3.1 optionalDependencies: '@types/react': 18.3.1 - '@radix-ui/react-id@1.1.0(@types/react@18.3.20)(react@18.3.1)': + '@radix-ui/react-id@1.1.1(@types/react@18.3.20)(react@18.3.1)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.20)(react@18.3.1) react: 18.3.1 optionalDependencies: '@types/react': 18.3.20 - '@radix-ui/react-menu@2.1.6(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-menu@2.1.7(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-collection': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-direction': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-dismissable-layer': 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-focus-guards': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-focus-scope': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-id': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-popper': 1.2.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-portal': 1.1.4(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-roving-focus': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.1.2(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-collection': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-direction': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-focus-guards': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-focus-scope': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-popper': 1.2.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-portal': 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-roving-focus': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.2.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.1)(react@18.3.1) aria-hidden: 1.2.4 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -27260,24 +27531,24 @@ snapshots: '@types/react': 18.3.1 '@types/react-dom': 18.3.0 - '@radix-ui/react-menu@2.1.6(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-menu@2.1.7(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-collection': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-direction': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-dismissable-layer': 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-focus-guards': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-focus-scope': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-id': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-popper': 1.2.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-portal': 1.1.4(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-roving-focus': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.1.2(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-collection': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-direction': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-focus-guards': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-focus-scope': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-popper': 1.2.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-portal': 1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-roving-focus': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.2.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.20)(react@18.3.1) aria-hidden: 1.2.4 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -27286,229 +27557,229 @@ snapshots: '@types/react': 18.3.20 '@types/react-dom': 18.3.0 - '@radix-ui/react-popper@1.2.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-popper@1.2.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@floating-ui/react-dom': 2.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-arrow': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-use-rect': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-use-size': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/rect': 1.1.0 + '@radix-ui/react-arrow': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-use-rect': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-use-size': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/rect': 1.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.1 '@types/react-dom': 18.3.0 - '@radix-ui/react-popper@1.2.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-popper@1.2.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@floating-ui/react-dom': 2.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-arrow': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-use-rect': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-use-size': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/rect': 1.1.0 + '@radix-ui/react-arrow': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-use-rect': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-use-size': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/rect': 1.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.20 '@types/react-dom': 18.3.0 - '@radix-ui/react-portal@1.1.4(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-portal@1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.1 '@types/react-dom': 18.3.0 - '@radix-ui/react-portal@1.1.4(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-portal@1.1.5(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.20)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.20 '@types/react-dom': 18.3.0 - '@radix-ui/react-presence@1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-presence@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.1 '@types/react-dom': 18.3.0 - '@radix-ui/react-presence@1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-presence@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.20)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.20 '@types/react-dom': 18.3.0 - '@radix-ui/react-primitive@2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-primitive@2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-slot': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-slot': 1.2.0(@types/react@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.1 '@types/react-dom': 18.3.0 - '@radix-ui/react-primitive@2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-primitive@2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-slot': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-slot': 1.2.0(@types/react@18.3.20)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.20 '@types/react-dom': 18.3.0 - '@radix-ui/react-roving-focus@1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-roving-focus@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-collection': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-direction': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-id': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.1)(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-collection': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-direction': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.1 '@types/react-dom': 18.3.0 - '@radix-ui/react-roving-focus@1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-roving-focus@1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-collection': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-context': 1.1.1(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-direction': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-id': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.2(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.20)(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/primitive': 1.1.2 + '@radix-ui/react-collection': 1.1.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-direction': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.1(@types/react@18.3.20)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.20 '@types/react-dom': 18.3.0 - '@radix-ui/react-slot@1.1.2(@types/react@18.3.1)(react@18.3.1)': + '@radix-ui/react-slot@1.2.0(@types/react@18.3.1)(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.1)(react@18.3.1) react: 18.3.1 optionalDependencies: '@types/react': 18.3.1 - '@radix-ui/react-slot@1.1.2(@types/react@18.3.20)(react@18.3.1)': + '@radix-ui/react-slot@1.2.0(@types/react@18.3.20)(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.20)(react@18.3.1) react: 18.3.1 optionalDependencies: '@types/react': 18.3.20 - '@radix-ui/react-use-callback-ref@1.1.0(@types/react@18.3.1)(react@18.3.1)': + '@radix-ui/react-use-callback-ref@1.1.1(@types/react@18.3.1)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: '@types/react': 18.3.1 - '@radix-ui/react-use-callback-ref@1.1.0(@types/react@18.3.20)(react@18.3.1)': + '@radix-ui/react-use-callback-ref@1.1.1(@types/react@18.3.20)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: '@types/react': 18.3.20 - '@radix-ui/react-use-controllable-state@1.1.0(@types/react@18.3.1)(react@18.3.1)': + '@radix-ui/react-use-controllable-state@1.1.1(@types/react@18.3.1)(react@18.3.1)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.1)(react@18.3.1) react: 18.3.1 optionalDependencies: '@types/react': 18.3.1 - '@radix-ui/react-use-controllable-state@1.1.0(@types/react@18.3.20)(react@18.3.1)': + '@radix-ui/react-use-controllable-state@1.1.1(@types/react@18.3.20)(react@18.3.1)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.20)(react@18.3.1) react: 18.3.1 optionalDependencies: '@types/react': 18.3.20 - '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@18.3.1)(react@18.3.1)': + '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@18.3.1)(react@18.3.1)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.1)(react@18.3.1) react: 18.3.1 optionalDependencies: '@types/react': 18.3.1 - '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@18.3.20)(react@18.3.1)': + '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@18.3.20)(react@18.3.1)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.20)(react@18.3.1) react: 18.3.1 optionalDependencies: '@types/react': 18.3.20 - '@radix-ui/react-use-layout-effect@1.1.0(@types/react@18.3.1)(react@18.3.1)': + '@radix-ui/react-use-layout-effect@1.1.1(@types/react@18.3.1)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: '@types/react': 18.3.1 - '@radix-ui/react-use-layout-effect@1.1.0(@types/react@18.3.20)(react@18.3.1)': + '@radix-ui/react-use-layout-effect@1.1.1(@types/react@18.3.20)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: '@types/react': 18.3.20 - '@radix-ui/react-use-rect@1.1.0(@types/react@18.3.1)(react@18.3.1)': + '@radix-ui/react-use-rect@1.1.1(@types/react@18.3.1)(react@18.3.1)': dependencies: - '@radix-ui/rect': 1.1.0 + '@radix-ui/rect': 1.1.1 react: 18.3.1 optionalDependencies: '@types/react': 18.3.1 - '@radix-ui/react-use-rect@1.1.0(@types/react@18.3.20)(react@18.3.1)': + '@radix-ui/react-use-rect@1.1.1(@types/react@18.3.20)(react@18.3.1)': dependencies: - '@radix-ui/rect': 1.1.0 + '@radix-ui/rect': 1.1.1 react: 18.3.1 optionalDependencies: '@types/react': 18.3.20 - '@radix-ui/react-use-size@1.1.0(@types/react@18.3.1)(react@18.3.1)': + '@radix-ui/react-use-size@1.1.1(@types/react@18.3.1)(react@18.3.1)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.1)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.1)(react@18.3.1) react: 18.3.1 optionalDependencies: '@types/react': 18.3.1 - '@radix-ui/react-use-size@1.1.0(@types/react@18.3.20)(react@18.3.1)': + '@radix-ui/react-use-size@1.1.1(@types/react@18.3.20)(react@18.3.1)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.20)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.20)(react@18.3.1) react: 18.3.1 optionalDependencies: '@types/react': 18.3.20 - '@radix-ui/rect@1.1.0': {} + '@radix-ui/rect@1.1.1': {} '@react-aria/focus@3.19.0(react@18.3.1)': dependencies: @@ -27838,7 +28109,7 @@ snapshots: dependencies: web-streams-polyfill: 3.3.3 - '@replit/codemirror-lang-svelte@6.0.0(@codemirror/autocomplete@6.18.6)(@codemirror/lang-css@6.3.1)(@codemirror/lang-html@6.4.9)(@codemirror/lang-javascript@6.2.3)(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.4)(@lezer/common@1.2.3)(@lezer/highlight@1.2.1)(@lezer/javascript@1.4.21)(@lezer/lr@1.4.2)': + '@replit/codemirror-lang-svelte@6.0.0(@codemirror/autocomplete@6.18.6)(@codemirror/lang-css@6.3.1)(@codemirror/lang-html@6.4.9)(@codemirror/lang-javascript@6.2.3)(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.5)(@lezer/common@1.2.3)(@lezer/highlight@1.2.1)(@lezer/javascript@1.4.21)(@lezer/lr@1.4.2)': dependencies: '@codemirror/autocomplete': 6.18.6 '@codemirror/lang-css': 6.3.1 @@ -27846,7 +28117,7 @@ snapshots: '@codemirror/lang-javascript': 6.2.3 '@codemirror/language': 6.11.0 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.4 + '@codemirror/view': 6.36.5 '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 '@lezer/javascript': 1.4.21 @@ -28409,7 +28680,7 @@ snapshots: '@stackblitz/sdk@1.11.0': {} - '@storybook/addon-actions@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/addon-actions@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: '@storybook/global': 5.0.0 '@types/uuid': 9.0.8 @@ -28418,26 +28689,26 @@ snapshots: storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) uuid: 9.0.1 - '@storybook/addon-backgrounds@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/addon-backgrounds@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: '@storybook/global': 5.0.0 memoizerific: 1.11.3 storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) ts-dedent: 2.2.0 - '@storybook/addon-controls@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/addon-controls@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: '@storybook/global': 5.0.0 dequal: 2.0.3 storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) ts-dedent: 2.2.0 - '@storybook/addon-docs@8.6.12(@types/react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(webpack-sources@3.2.3)': + '@storybook/addon-docs@8.4.6(@types/react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(webpack-sources@3.2.3)': dependencies: '@mdx-js/react': 3.0.1(@types/react@18.3.1)(react@18.3.1) - '@storybook/blocks': 8.6.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) - '@storybook/csf-plugin': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(webpack-sources@3.2.3) - '@storybook/react-dom-shim': 8.6.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/blocks': 8.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/csf-plugin': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(webpack-sources@3.2.3) + '@storybook/react-dom-shim': 8.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) @@ -28446,60 +28717,61 @@ snapshots: - '@types/react' - webpack-sources - '@storybook/addon-essentials@8.6.12(@types/react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(webpack-sources@3.2.3)': + '@storybook/addon-essentials@8.4.6(@types/react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(webpack-sources@3.2.3)': dependencies: - '@storybook/addon-actions': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) - '@storybook/addon-backgrounds': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) - '@storybook/addon-controls': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) - '@storybook/addon-docs': 8.6.12(@types/react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(webpack-sources@3.2.3) - '@storybook/addon-highlight': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) - '@storybook/addon-measure': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) - '@storybook/addon-outline': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) - '@storybook/addon-toolbars': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) - '@storybook/addon-viewport': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/addon-actions': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/addon-backgrounds': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/addon-controls': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/addon-docs': 8.4.6(@types/react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(webpack-sources@3.2.3) + '@storybook/addon-highlight': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/addon-measure': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/addon-outline': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/addon-toolbars': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/addon-viewport': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) ts-dedent: 2.2.0 transitivePeerDependencies: - '@types/react' - webpack-sources - '@storybook/addon-highlight@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/addon-highlight@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: '@storybook/global': 5.0.0 storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) - '@storybook/addon-interactions@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/addon-interactions@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: '@storybook/global': 5.0.0 - '@storybook/instrumenter': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) - '@storybook/test': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/instrumenter': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/test': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) polished: 4.3.1 storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) ts-dedent: 2.2.0 - '@storybook/addon-measure@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/addon-measure@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: '@storybook/global': 5.0.0 storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) tiny-invariant: 1.3.3 - '@storybook/addon-outline@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/addon-outline@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: '@storybook/global': 5.0.0 storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) ts-dedent: 2.2.0 - '@storybook/addon-toolbars@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/addon-toolbars@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) - '@storybook/addon-viewport@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/addon-viewport@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: memoizerific: 1.11.3 storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) - '@storybook/blocks@8.6.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/blocks@8.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: + '@storybook/csf': 0.1.11 '@storybook/icons': 1.2.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) ts-dedent: 2.2.0 @@ -28507,9 +28779,9 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@storybook/builder-vite@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(webpack-sources@3.2.3)': + '@storybook/builder-vite@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(webpack-sources@3.2.3)': dependencies: - '@storybook/csf-plugin': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(webpack-sources@3.2.3) + '@storybook/csf-plugin': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(webpack-sources@3.2.3) browser-assert: 1.2.1 storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) ts-dedent: 2.2.0 @@ -28517,31 +28789,32 @@ snapshots: transitivePeerDependencies: - webpack-sources - '@storybook/builder-webpack5@8.6.12(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))': + '@storybook/builder-webpack5@8.4.6(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))': dependencies: - '@storybook/core-webpack': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/core-webpack': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@types/node': 22.5.5 '@types/semver': 7.5.8 browser-assert: 1.2.1 case-sensitive-paths-webpack-plugin: 2.4.0 cjs-module-lexer: 1.4.1 constants-browserify: 1.0.0 - css-loader: 6.11.0(@rspack/core@1.2.6(@swc/helpers@0.5.11))(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) + css-loader: 6.11.0(@rspack/core@1.2.6(@swc/helpers@0.5.11))(webpack@5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) es-module-lexer: 1.6.0 - fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.7.3)(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) - html-webpack-plugin: 5.5.0(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) + fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.7.3)(webpack@5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) + html-webpack-plugin: 5.5.0(webpack@5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) magic-string: 0.30.17 path-browserify: 1.0.1 process: 0.11.10 semver: 7.7.1 storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) - style-loader: 3.3.4(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) - terser-webpack-plugin: 5.3.11(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) + style-loader: 3.3.4(webpack@5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) + terser-webpack-plugin: 5.3.11(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack@5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) ts-dedent: 2.2.0 url: 0.11.4 util: 0.12.5 util-deprecate: 1.0.2 - webpack: 5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) - webpack-dev-middleware: 6.1.3(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) + webpack: 5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + webpack-dev-middleware: 6.1.3(webpack@5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) webpack-hot-middleware: 2.26.1 webpack-virtual-modules: 0.6.2 optionalDependencies: @@ -28557,7 +28830,7 @@ snapshots: dependencies: storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) - '@storybook/components@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/components@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) @@ -28565,12 +28838,13 @@ snapshots: dependencies: storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) - '@storybook/core-server@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/core-server@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) - '@storybook/core-webpack@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/core-webpack@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: + '@types/node': 22.5.5 storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) ts-dedent: 2.2.0 @@ -28594,7 +28868,7 @@ snapshots: - supports-color - utf-8-validate - '@storybook/csf-plugin@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(webpack-sources@3.2.3)': + '@storybook/csf-plugin@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(webpack-sources@3.2.3)': dependencies: storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) unplugin: 1.14.1(webpack-sources@3.2.3) @@ -28609,6 +28883,10 @@ snapshots: dependencies: type-fest: 2.19.0 + '@storybook/csf@0.1.12': + dependencies: + type-fest: 2.19.0 + '@storybook/global@5.0.0': {} '@storybook/icons@1.2.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': @@ -28616,7 +28894,13 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@storybook/instrumenter@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/instrumenter@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + dependencies: + '@storybook/global': 5.0.0 + '@vitest/utils': 2.1.1 + storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) + + '@storybook/instrumenter@8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: '@storybook/global': 5.0.0 '@vitest/utils': 2.1.1 @@ -28626,15 +28910,16 @@ snapshots: dependencies: storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) - '@storybook/manager-api@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/manager-api@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) - '@storybook/preset-react-webpack@8.6.12(@storybook/test@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))': + '@storybook/preset-react-webpack@8.4.6(@storybook/test@8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))': dependencies: - '@storybook/core-webpack': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) - '@storybook/react': 8.6.12(@storybook/test@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3) + '@storybook/core-webpack': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/react': 8.4.6(@storybook/test@8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3) '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.7.3)(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) + '@types/node': 22.5.5 '@types/semver': 7.5.8 find-up: 5.0.0 magic-string: 0.30.17 @@ -28656,7 +28941,7 @@ snapshots: - uglify-js - webpack-cli - '@storybook/preview-api@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/preview-api@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) @@ -28674,40 +28959,40 @@ snapshots: transitivePeerDependencies: - supports-color - '@storybook/react-dom-shim@8.6.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/react-dom-shim@8.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) - '@storybook/react-vite@8.6.12(@storybook/test@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.22.0)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(webpack-sources@3.2.3)': + '@storybook/react-vite@8.4.6(@storybook/test@8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.22.0)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(webpack-sources@3.2.3)': dependencies: - '@joshwooding/vite-plugin-react-docgen-typescript': 0.5.0(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)) + '@joshwooding/vite-plugin-react-docgen-typescript': 0.4.2(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)) '@rollup/pluginutils': 5.1.0(rollup@4.22.0) - '@storybook/builder-vite': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(webpack-sources@3.2.3) - '@storybook/react': 8.6.12(@storybook/test@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3) + '@storybook/builder-vite': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(webpack-sources@3.2.3) + '@storybook/react': 8.4.6(@storybook/test@8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3) find-up: 5.0.0 - magic-string: 0.30.17 + magic-string: 0.30.12 react: 18.3.1 react-docgen: 7.0.3 react-dom: 18.3.1(react@18.3.1) - resolve: 1.22.10 + resolve: 1.22.8 storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) tsconfig-paths: 4.2.0 vite: 6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1) - optionalDependencies: - '@storybook/test': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) transitivePeerDependencies: + - '@storybook/test' - rollup - supports-color - typescript - webpack-sources - '@storybook/react-webpack5@8.6.12(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@storybook/test@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))': + '@storybook/react-webpack5@8.4.6(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@storybook/test@8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))': dependencies: - '@storybook/builder-webpack5': 8.6.12(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) - '@storybook/preset-react-webpack': 8.6.12(@storybook/test@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) - '@storybook/react': 8.6.12(@storybook/test@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3) + '@storybook/builder-webpack5': 8.4.6(@rspack/core@1.2.6(@swc/helpers@0.5.11))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + '@storybook/preset-react-webpack': 8.4.6(@storybook/test@8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + '@storybook/react': 8.4.6(@storybook/test@8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3) + '@types/node': 22.5.5 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) @@ -28722,25 +29007,38 @@ snapshots: - uglify-js - webpack-cli - '@storybook/react@8.6.12(@storybook/test@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)': + '@storybook/react@8.4.6(@storybook/test@8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))(typescript@5.7.3)': dependencies: - '@storybook/components': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/components': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) '@storybook/global': 5.0.0 - '@storybook/manager-api': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) - '@storybook/preview-api': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) - '@storybook/react-dom-shim': 8.6.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) - '@storybook/theming': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/manager-api': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/preview-api': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/react-dom-shim': 8.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/theming': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) optionalDependencies: - '@storybook/test': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/test': 8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) typescript: 5.7.3 - '@storybook/test@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/test@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: + '@storybook/csf': 0.1.11 '@storybook/global': 5.0.0 - '@storybook/instrumenter': 8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@storybook/instrumenter': 8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) + '@testing-library/dom': 10.4.0 + '@testing-library/jest-dom': 6.5.0 + '@testing-library/user-event': 14.5.2(@testing-library/dom@10.4.0) + '@vitest/expect': 2.0.5 + '@vitest/spy': 2.0.5 + storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) + + '@storybook/test@8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + dependencies: + '@storybook/csf': 0.1.12 + '@storybook/global': 5.0.0 + '@storybook/instrumenter': 8.5.1(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8)) '@testing-library/dom': 10.4.0 '@testing-library/jest-dom': 6.5.0 '@testing-library/user-event': 14.5.2(@testing-library/dom@10.4.0) @@ -28752,11 +29050,11 @@ snapshots: dependencies: storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) - '@storybook/theming@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/theming@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) - '@storybook/types@8.6.12(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': + '@storybook/types@8.4.6(storybook@8.4.6(bufferutil@4.0.7)(prettier@2.8.8))': dependencies: storybook: 8.4.6(bufferutil@4.0.7)(prettier@2.8.8) @@ -28859,7 +29157,7 @@ snapshots: '@svgr/hast-util-to-babel-ast@8.0.0': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.26.0 entities: 4.5.0 '@svgr/plugin-jsx@8.1.0(@svgr/core@8.1.0(typescript@5.7.3))': @@ -28911,14 +29209,14 @@ snapshots: - supports-color - typescript - '@swc-node/core@1.13.3(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)': + '@swc-node/core@1.13.3(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)': dependencies: '@swc/core': 1.5.7(@swc/helpers@0.5.11) - '@swc/types': 0.1.12 + '@swc/types': 0.1.21 - '@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3)': + '@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3)': dependencies: - '@swc-node/core': 1.13.3(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12) + '@swc-node/core': 1.13.3(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21) '@swc-node/sourcemap-support': 0.5.1 '@swc/core': 1.5.7(@swc/helpers@0.5.11) colorette: 2.0.20 @@ -29019,7 +29317,7 @@ snapshots: '@swc/counter': 0.1.3 jsonc-parser: 3.2.0 - '@swc/types@0.1.12': + '@swc/types@0.1.21': dependencies: '@swc/counter': 0.1.3 @@ -29058,8 +29356,8 @@ snapshots: '@testing-library/dom@10.4.0': dependencies: - '@babel/code-frame': 7.24.7 - '@babel/runtime': 7.25.6 + '@babel/code-frame': 7.26.2 + '@babel/runtime': 7.26.0 '@types/aria-query': 5.0.4 aria-query: 5.3.0 chalk: 4.1.2 @@ -29164,7 +29462,7 @@ snapshots: '@tutorialkit/react@1.3.1(@types/react-dom@18.3.0)(@types/react@18.3.1)(postcss@8.4.38)(react-dom@18.3.1(react@18.3.1))(rollup@4.22.0)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))': dependencies: '@codemirror/autocomplete': 6.18.6 - '@codemirror/commands': 6.8.0 + '@codemirror/commands': 6.8.1 '@codemirror/lang-css': 6.3.1 '@codemirror/lang-html': 6.4.9 '@codemirror/lang-javascript': 6.2.3 @@ -29175,16 +29473,16 @@ snapshots: '@codemirror/lang-wast': 6.0.2 '@codemirror/language': 6.11.0 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.4 + '@codemirror/view': 6.36.5 '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 '@lezer/javascript': 1.4.21 '@lezer/lr': 1.4.2 '@nanostores/react': 0.7.2(nanostores@0.10.3)(react@18.3.1) - '@radix-ui/react-accordion': 1.2.3(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-context-menu': 2.2.6(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-dialog': 1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@replit/codemirror-lang-svelte': 6.0.0(@codemirror/autocomplete@6.18.6)(@codemirror/lang-css@6.3.1)(@codemirror/lang-html@6.4.9)(@codemirror/lang-javascript@6.2.3)(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.4)(@lezer/common@1.2.3)(@lezer/highlight@1.2.1)(@lezer/javascript@1.4.21)(@lezer/lr@1.4.2) + '@radix-ui/react-accordion': 1.2.4(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-context-menu': 2.2.7(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-dialog': 1.1.7(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@replit/codemirror-lang-svelte': 6.0.0(@codemirror/autocomplete@6.18.6)(@codemirror/lang-css@6.3.1)(@codemirror/lang-html@6.4.9)(@codemirror/lang-javascript@6.2.3)(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.5)(@lezer/common@1.2.3)(@lezer/highlight@1.2.1)(@lezer/javascript@1.4.21)(@lezer/lr@1.4.2) '@tutorialkit/runtime': 1.3.1 '@tutorialkit/theme': 1.3.1(postcss@8.4.38)(rollup@4.22.0)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)) '@webcontainer/api': 1.5.1 @@ -29211,7 +29509,7 @@ snapshots: '@tutorialkit/react@1.3.1(@types/react-dom@18.3.0)(@types/react@18.3.20)(postcss@8.4.38)(react-dom@18.3.1(react@18.3.1))(rollup@4.22.0)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))': dependencies: '@codemirror/autocomplete': 6.18.6 - '@codemirror/commands': 6.8.0 + '@codemirror/commands': 6.8.1 '@codemirror/lang-css': 6.3.1 '@codemirror/lang-html': 6.4.9 '@codemirror/lang-javascript': 6.2.3 @@ -29222,16 +29520,16 @@ snapshots: '@codemirror/lang-wast': 6.0.2 '@codemirror/language': 6.11.0 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.4 + '@codemirror/view': 6.36.5 '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 '@lezer/javascript': 1.4.21 '@lezer/lr': 1.4.2 '@nanostores/react': 0.7.2(nanostores@0.10.3)(react@18.3.1) - '@radix-ui/react-accordion': 1.2.3(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-context-menu': 2.2.6(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-dialog': 1.1.6(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@replit/codemirror-lang-svelte': 6.0.0(@codemirror/autocomplete@6.18.6)(@codemirror/lang-css@6.3.1)(@codemirror/lang-html@6.4.9)(@codemirror/lang-javascript@6.2.3)(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.4)(@lezer/common@1.2.3)(@lezer/highlight@1.2.1)(@lezer/javascript@1.4.21)(@lezer/lr@1.4.2) + '@radix-ui/react-accordion': 1.2.4(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-context-menu': 2.2.7(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-dialog': 1.1.7(@types/react-dom@18.3.0)(@types/react@18.3.20)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@replit/codemirror-lang-svelte': 6.0.0(@codemirror/autocomplete@6.18.6)(@codemirror/lang-css@6.3.1)(@codemirror/lang-html@6.4.9)(@codemirror/lang-javascript@6.2.3)(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.5)(@lezer/common@1.2.3)(@lezer/highlight@1.2.1)(@lezer/javascript@1.4.21)(@lezer/lr@1.4.2) '@tutorialkit/runtime': 1.3.1 '@tutorialkit/theme': 1.3.1(postcss@8.4.38)(rollup@4.22.0)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)) '@webcontainer/api': 1.5.1 @@ -29303,12 +29601,12 @@ snapshots: '@types/babel__generator@7.6.8': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.26.0 '@types/babel__template@7.4.4': dependencies: '@babel/parser': 7.25.6 - '@babel/types': 7.25.6 + '@babel/types': 7.26.0 '@types/babel__traverse@7.20.6': dependencies: @@ -29538,6 +29836,10 @@ snapshots: dependencies: undici-types: 6.19.8 + '@types/node@22.5.5': + dependencies: + undici-types: 6.19.8 + '@types/normalize-package-data@2.4.4': {} '@types/npm-package-arg@6.1.1': {} @@ -30235,15 +30537,26 @@ snapshots: '@vitejs/plugin-react@4.3.4(vite@5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0))': dependencies: - '@babel/core': 7.26.9 - '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.9) - '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.9) + '@babel/core': 7.26.0 + '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.0) '@types/babel__core': 7.20.5 react-refresh: 0.14.2 vite: 5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0) transitivePeerDependencies: - supports-color + '@vitejs/plugin-react@4.3.4(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))': + dependencies: + '@babel/core': 7.26.0 + '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.0) + '@types/babel__core': 7.20.5 + react-refresh: 0.14.2 + vite: 6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1) + transitivePeerDependencies: + - supports-color + '@vitejs/plugin-vue-jsx@4.0.1(vite@5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0))(vue@3.5.6(typescript@5.7.3))': dependencies: '@babel/core': 7.26.9 @@ -30263,7 +30576,7 @@ snapshots: dependencies: '@vitest/spy': 2.0.5 '@vitest/utils': 2.0.5 - chai: 5.1.2 + chai: 5.1.1 tinyrainbow: 1.2.0 '@vitest/expect@3.0.5': @@ -30316,13 +30629,13 @@ snapshots: dependencies: '@vitest/pretty-format': 2.0.5 estree-walker: 3.0.3 - loupe: 3.1.3 + loupe: 3.1.1 tinyrainbow: 1.2.0 '@vitest/utils@2.1.1': dependencies: '@vitest/pretty-format': 2.1.1 - loupe: 3.1.3 + loupe: 3.1.1 tinyrainbow: 1.2.0 '@vitest/utils@3.0.5': @@ -30823,6 +31136,10 @@ snapshots: acorn: 8.14.0 acorn-walk: 8.3.4 + acorn-import-assertions@1.9.0(acorn@8.12.1): + dependencies: + acorn: 8.12.1 + acorn-import-attributes@1.9.5(acorn@8.14.0): dependencies: acorn: 8.14.0 @@ -31425,8 +31742,8 @@ snapshots: babel-plugin-jest-hoist@29.6.3: dependencies: - '@babel/template': 7.25.0 - '@babel/types': 7.25.6 + '@babel/template': 7.25.9 + '@babel/types': 7.26.0 '@types/babel__core': 7.20.5 '@types/babel__traverse': 7.20.6 @@ -31975,6 +32292,14 @@ snapshots: ccount@2.0.1: {} + chai@5.1.1: + dependencies: + assertion-error: 2.0.1 + check-error: 2.1.1 + deep-eql: 5.0.2 + loupe: 3.1.1 + pathval: 2.0.0 + chai@5.1.2: dependencies: assertion-error: 2.0.1 @@ -32168,12 +32493,12 @@ snapshots: codemirror@6.0.1: dependencies: '@codemirror/autocomplete': 6.18.6 - '@codemirror/commands': 6.8.0 + '@codemirror/commands': 6.8.1 '@codemirror/language': 6.11.0 '@codemirror/lint': 6.8.5 '@codemirror/search': 6.5.10 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.36.4 + '@codemirror/view': 6.36.5 collapse-white-space@2.1.0: {} @@ -32318,7 +32643,7 @@ snapshots: confbox@0.1.8: {} - confbox@0.2.1: {} + confbox@0.2.2: {} confusing-browser-globals@1.0.11: {} @@ -32646,6 +32971,20 @@ snapshots: postcss: 8.4.38 postcss-selector-parser: 6.1.2 + css-loader@6.11.0(@rspack/core@1.2.6(@swc/helpers@0.5.11))(webpack@5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): + dependencies: + icss-utils: 5.1.0(postcss@8.4.38) + postcss: 8.4.38 + postcss-modules-extract-imports: 3.1.0(postcss@8.4.38) + postcss-modules-local-by-default: 4.0.5(postcss@8.4.38) + postcss-modules-scope: 3.2.0(postcss@8.4.38) + postcss-modules-values: 4.0.0(postcss@8.4.38) + postcss-value-parser: 4.2.0 + semver: 7.7.1 + optionalDependencies: + '@rspack/core': 1.2.6(@swc/helpers@0.5.11) + webpack: 5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + css-loader@6.11.0(@rspack/core@1.2.6(@swc/helpers@0.5.11))(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): dependencies: icss-utils: 5.1.0(postcss@8.4.38) @@ -32706,7 +33045,7 @@ snapshots: domutils: 3.1.0 nth-check: 2.1.1 - css-selector-parser@3.1.1: {} + css-selector-parser@3.1.2: {} css-tree@1.1.3: dependencies: @@ -33927,7 +34266,7 @@ snapshots: debug: 4.4.0(supports-color@8.1.1) enhanced-resolve: 5.17.1 eslint: 8.57.0 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.20.0(eslint@8.57.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.20.0(eslint@8.57.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.57.0))(eslint@8.57.0) + eslint-module-utils: 2.11.0(@typescript-eslint/parser@8.20.0(eslint@8.57.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.20.0(eslint@8.57.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.57.0))(eslint@8.57.0) fast-glob: 3.3.3 get-tsconfig: 4.8.1 is-bun-module: 1.2.1 @@ -33940,6 +34279,17 @@ snapshots: - eslint-import-resolver-webpack - supports-color + eslint-module-utils@2.11.0(@typescript-eslint/parser@8.20.0(eslint@8.57.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.20.0(eslint@8.57.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.57.0))(eslint@8.57.0): + dependencies: + debug: 3.2.7(supports-color@8.1.1) + optionalDependencies: + '@typescript-eslint/parser': 8.20.0(eslint@8.57.0)(typescript@5.7.3) + eslint: 8.57.0 + eslint-import-resolver-node: 0.3.9 + eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@8.20.0(eslint@8.57.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.57.0) + transitivePeerDependencies: + - supports-color + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.20.0(eslint@8.57.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.20.0(eslint@8.57.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0)(eslint@8.57.0))(eslint@8.57.0): dependencies: debug: 3.2.7(supports-color@8.1.1) @@ -34310,7 +34660,7 @@ snapshots: dependencies: homedir-polyfill: 1.0.3 - expect-type@1.1.0: {} + expect-type@1.2.0: {} expect@29.7.0: dependencies: @@ -34703,7 +35053,7 @@ snapshots: typescript: 5.7.3 webpack: 5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) - fork-ts-checker-webpack-plugin@8.0.0(typescript@5.7.3)(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): + fork-ts-checker-webpack-plugin@8.0.0(typescript@5.7.3)(webpack@5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): dependencies: '@babel/code-frame': 7.26.2 chalk: 4.1.2 @@ -34718,7 +35068,7 @@ snapshots: semver: 7.7.1 tapable: 2.2.1 typescript: 5.7.3 - webpack: 5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + webpack: 5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) fork-ts-checker-webpack-plugin@9.0.2(typescript@5.3.3)(webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): dependencies: @@ -34732,7 +35082,7 @@ snapshots: minimatch: 3.1.2 node-abort-controller: 3.1.1 schema-utils: 3.3.0 - semver: 7.6.3 + semver: 7.7.1 tapable: 2.2.1 typescript: 5.3.3 webpack: 5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) @@ -35311,7 +35661,7 @@ snapshots: '@types/unist': 3.0.3 bcp-47-match: 2.0.3 comma-separated-tokens: 2.0.3 - css-selector-parser: 3.1.1 + css-selector-parser: 3.1.2 devlop: 1.1.0 direction: 2.0.1 hast-util-has-property: 3.0.0 @@ -35512,6 +35862,15 @@ snapshots: html-void-elements@3.0.0: {} + html-webpack-plugin@5.5.0(webpack@5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): + dependencies: + '@types/html-minifier-terser': 6.1.0 + html-minifier-terser: 6.1.0 + lodash: 4.17.21 + pretty-error: 4.0.0 + tapable: 2.2.1 + webpack: 5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + html-webpack-plugin@5.5.0(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): dependencies: '@types/html-minifier-terser': 6.1.0 @@ -35584,18 +35943,6 @@ snapshots: transitivePeerDependencies: - supports-color - http-proxy-middleware@2.0.6(@types/express@4.17.21): - dependencies: - '@types/http-proxy': 1.17.15 - http-proxy: 1.18.1(debug@4.3.7) - is-glob: 4.0.3 - is-plain-obj: 3.0.0 - micromatch: 4.0.8 - optionalDependencies: - '@types/express': 4.17.21 - transitivePeerDependencies: - - debug - http-proxy-middleware@2.0.7(@types/express@4.17.21): dependencies: '@types/http-proxy': 1.17.15 @@ -35856,7 +36203,7 @@ snapshots: dependencies: es-errors: 1.3.0 hasown: 2.0.2 - side-channel: 1.0.6 + side-channel: 1.1.0 internal-slot@1.1.0: dependencies: @@ -35913,7 +36260,7 @@ snapshots: is-arguments@1.1.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 has-tostringtag: 1.0.2 is-array-buffer@3.0.4: @@ -35950,7 +36297,7 @@ snapshots: is-boolean-object@1.1.2: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 has-tostringtag: 1.0.2 is-boolean-object@1.2.2: @@ -36021,7 +36368,7 @@ snapshots: is-finalizationregistry@1.0.2: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 is-finalizationregistry@1.1.1: dependencies: @@ -36209,8 +36556,8 @@ snapshots: is-weakset@2.0.3: dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 + call-bind: 1.0.8 + get-intrinsic: 1.3.0 is-what@3.14.1: {} @@ -37312,6 +37659,10 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 + magic-string@0.30.12: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.0 + magic-string@0.30.15: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 @@ -39189,7 +39540,7 @@ snapshots: nwsapi@2.2.12: {} - nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)): + nx@21.0.0-beta.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11)): dependencies: '@napi-rs/wasm-runtime': 0.2.4 '@yarnpkg/lockfile': 1.1.0 @@ -39237,7 +39588,7 @@ snapshots: '@nx/nx-linux-x64-musl': 21.0.0-beta.4 '@nx/nx-win32-arm64-msvc': 21.0.0-beta.4 '@nx/nx-win32-x64-msvc': 21.0.0-beta.4 - '@swc-node/register': 1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3) + '@swc-node/register': 1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.21)(typescript@5.7.3) '@swc/core': 1.5.7(@swc/helpers@0.5.11) transitivePeerDependencies: - debug @@ -39277,7 +39628,7 @@ snapshots: call-bind: 1.0.8 call-bound: 1.0.4 define-properties: 1.2.1 - es-object-atoms: 1.0.0 + es-object-atoms: 1.1.1 has-symbols: 1.1.0 object-keys: 1.1.1 @@ -39837,7 +40188,7 @@ snapshots: pkg-types@2.1.0: dependencies: - confbox: 0.2.1 + confbox: 0.2.2 exsolve: 1.0.4 pathe: 2.0.3 @@ -39855,7 +40206,7 @@ snapshots: polished@4.3.1: dependencies: - '@babel/runtime': 7.26.9 + '@babel/runtime': 7.26.0 portfinder@1.0.32: dependencies: @@ -40839,7 +41190,7 @@ snapshots: qs@6.13.1: dependencies: - side-channel: 1.0.6 + side-channel: 1.1.0 qs@6.14.0: dependencies: @@ -40910,8 +41261,8 @@ snapshots: react-docgen@7.0.3: dependencies: '@babel/core': 7.26.9 - '@babel/traverse': 7.26.9 - '@babel/types': 7.26.9 + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.0 '@types/babel__core': 7.20.5 '@types/babel__traverse': 7.20.6 '@types/doctrine': 0.0.9 @@ -41236,7 +41587,7 @@ snapshots: define-properties: 1.2.1 es-abstract: 1.23.9 es-errors: 1.3.0 - es-object-atoms: 1.0.0 + es-object-atoms: 1.1.1 get-intrinsic: 1.3.0 get-proto: 1.0.1 which-builtin-type: 1.2.1 @@ -41439,7 +41790,7 @@ snapshots: mdast-util-to-hast: 12.3.0 unified: 10.1.2 - remark-rehype@11.1.1: + remark-rehype@11.1.2: dependencies: '@types/hast': 3.0.4 '@types/mdast': 4.0.4 @@ -42106,7 +42457,7 @@ snapshots: dependencies: dunder-proto: 1.0.1 es-errors: 1.3.0 - es-object-atoms: 1.0.0 + es-object-atoms: 1.1.1 setprototypeof@1.1.0: {} @@ -42417,7 +42768,7 @@ snapshots: spdy@4.0.2: dependencies: - debug: 4.4.0(supports-color@8.1.1) + debug: 4.3.7 handle-thing: 2.0.1 http-deceiver: 1.2.7 select-hose: 2.0.0 @@ -42624,7 +42975,7 @@ snapshots: define-data-property: 1.1.4 define-properties: 1.2.1 es-abstract: 1.23.9 - es-object-atoms: 1.0.0 + es-object-atoms: 1.1.1 has-property-descriptors: 1.0.2 string.prototype.trim@1.2.9: @@ -42645,7 +42996,7 @@ snapshots: call-bind: 1.0.8 call-bound: 1.0.4 define-properties: 1.2.1 - es-object-atoms: 1.0.0 + es-object-atoms: 1.1.1 string.prototype.trimstart@1.0.8: dependencies: @@ -42717,6 +43068,10 @@ snapshots: style-inject@0.3.0: {} + style-loader@3.3.4(webpack@5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): + dependencies: + webpack: 5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + style-loader@3.3.4(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): dependencies: webpack: 5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) @@ -42996,6 +43351,18 @@ snapshots: '@swc/core': 1.5.7(@swc/helpers@0.5.11) esbuild: 0.25.0 + terser-webpack-plugin@5.3.11(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack@5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): + dependencies: + '@jridgewell/trace-mapping': 0.3.25 + jest-worker: 27.5.1 + schema-utils: 4.3.0 + serialize-javascript: 6.0.2 + terser: 5.39.0 + webpack: 5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + optionalDependencies: + '@swc/core': 1.5.7(@swc/helpers@0.5.11) + esbuild: 0.25.0 + terser-webpack-plugin@5.3.11(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): dependencies: '@jridgewell/trace-mapping': 0.3.25 @@ -43894,7 +44261,7 @@ snapshots: url@0.11.4: dependencies: punycode: 1.4.1 - qs: 6.13.1 + qs: 6.14.0 urlpattern-polyfill@8.0.2: {} @@ -43958,8 +44325,8 @@ snapshots: inherits: 2.0.4 is-arguments: 1.1.1 is-generator-function: 1.0.10 - is-typed-array: 1.1.13 - which-typed-array: 1.1.15 + is-typed-array: 1.1.15 + which-typed-array: 1.1.19 utila@0.4.0: {} @@ -44284,7 +44651,7 @@ snapshots: '@vitest/utils': 3.0.5 chai: 5.1.2 debug: 4.4.0(supports-color@8.1.1) - expect-type: 1.1.0 + expect-type: 1.2.0 magic-string: 0.30.17 pathe: 2.0.2 std-env: 3.8.0 @@ -44317,7 +44684,7 @@ snapshots: volar-service-css@0.0.62(@volar/language-service@2.4.12): dependencies: - vscode-css-languageservice: 6.3.3 + vscode-css-languageservice: 6.3.4 vscode-languageserver-textdocument: 1.0.12 vscode-uri: 3.0.8 optionalDependencies: @@ -44371,12 +44738,12 @@ snapshots: optionalDependencies: '@volar/language-service': 2.4.12 - vscode-css-languageservice@6.3.3: + vscode-css-languageservice@6.3.4: dependencies: '@vscode/l10n': 0.0.18 vscode-languageserver-textdocument: 1.0.12 vscode-languageserver-types: 3.17.5 - vscode-uri: 3.0.8 + vscode-uri: 3.1.0 vscode-html-languageservice@5.3.3: dependencies: @@ -44527,7 +44894,7 @@ snapshots: optionalDependencies: webpack-dev-server: 5.2.1(bufferutil@4.0.7)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) - webpack-dev-middleware@6.1.3(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): + webpack-dev-middleware@6.1.3(webpack@5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): dependencies: colorette: 2.0.20 memfs: 3.6.0 @@ -44535,7 +44902,7 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.3.0 optionalDependencies: - webpack: 5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) + webpack: 5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) webpack-dev-middleware@7.4.2(webpack@5.98.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): dependencies: @@ -44567,7 +44934,7 @@ snapshots: express: 4.21.2 graceful-fs: 4.2.11 html-entities: 2.5.2 - http-proxy-middleware: 2.0.6(@types/express@4.17.21) + http-proxy-middleware: 2.0.7(@types/express@4.17.21) ipaddr.js: 2.2.0 launch-editor: 2.9.1 open: 10.1.0 @@ -44697,6 +45064,39 @@ snapshots: webpack-virtual-modules@0.6.2: {} + webpack@5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)): + dependencies: + '@types/eslint-scope': 3.7.7 + '@types/estree': 1.0.6 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/wasm-edit': 1.12.1 + '@webassemblyjs/wasm-parser': 1.12.1 + acorn: 8.12.1 + acorn-import-assertions: 1.9.0(acorn@8.12.1) + browserslist: 4.24.4 + chrome-trace-event: 1.0.4 + enhanced-resolve: 5.17.1 + es-module-lexer: 1.5.4 + eslint-scope: 5.1.1 + events: 3.3.0 + glob-to-regexp: 0.4.1 + graceful-fs: 4.2.11 + json-parse-even-better-errors: 2.3.1 + loader-runner: 4.3.0 + mime-types: 2.1.35 + neo-async: 2.6.2 + schema-utils: 3.3.0 + tapable: 2.2.1 + terser-webpack-plugin: 5.3.11(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack@5.88.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) + watchpack: 2.4.2 + webpack-sources: 3.2.3 + optionalDependencies: + webpack-cli: 5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0) + transitivePeerDependencies: + - '@swc/core' + - esbuild + - uglify-js + webpack@5.94.0(@swc/core@1.5.7(@swc/helpers@0.5.11))(esbuild@0.25.0)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)): dependencies: '@types/estree': 1.0.6 diff --git a/tsconfig.base.json b/tsconfig.base.json index 300eb202a6..9019aa1a2a 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -43,6 +43,8 @@ "graph/ui-project-details/src/index.ts" ], "@nx/graph-internal/ui-theme": ["graph/ui-theme/src/index.ts"], + "@nx/graph-migrate": ["graph/migrate/src/index.ts"], + "@nx/graph/ui-common": ["graph/ui-common/src/index.ts"], "@nx/jest": ["packages/jest"], "@nx/jest/*": ["packages/jest/*"], "@nx/js": ["packages/js/src/index.ts"],