diff --git a/.agents/skills/canary/SKILL.md b/.agents/skills/canary/SKILL.md index df58c93c3ff6..2747edf779bb 100644 --- a/.agents/skills/canary/SKILL.md +++ b/.agents/skills/canary/SKILL.md @@ -1,7 +1,6 @@ --- name: canary description: Triggers a canary release for a Storybook PR. Use when the user wants to publish a canary version, create a pre-release, or test a PR via npm. -allowed-tools: Bash --- # Publish Canary Release diff --git a/.agents/skills/github-qa-labels/SKILL.md b/.agents/skills/github-qa-labels/SKILL.md index 6783e7a09892..38aa20772625 100644 --- a/.agents/skills/github-qa-labels/SKILL.md +++ b/.agents/skills/github-qa-labels/SKILL.md @@ -1,7 +1,6 @@ --- name: github-qa-labels description: Label GitHub issues and PRs found during QA testing. Use when organizing QA findings with proper labels. -allowed-tools: Bash --- # GitHub QA Labels diff --git a/.agents/skills/pr/SKILL.md b/.agents/skills/pr/SKILL.md index ba97bec26cd9..95be100bca5a 100644 --- a/.agents/skills/pr/SKILL.md +++ b/.agents/skills/pr/SKILL.md @@ -1,7 +1,6 @@ --- name: pr description: Creates a pull request following Storybook conventions. Use when creating PRs, opening pull requests, or submitting changes for review. -allowed-tools: Bash, Read --- # Create Pull Request diff --git a/.agents/skills/sandbox-rebuild/SKILL.md b/.agents/skills/sandbox-rebuild/SKILL.md new file mode 100644 index 000000000000..62320107974b --- /dev/null +++ b/.agents/skills/sandbox-rebuild/SKILL.md @@ -0,0 +1,82 @@ +--- +name: sandbox-rebuild +description: Propagate local source changes from a Storybook package into an existing sandbox — without regenerating the sandbox from scratch. +--- + +## When to use + +Use this skill after editing source files in any `code/` package when you want to test the change in a running sandbox Storybook. This is faster than a full `yarn nx sandbox` regeneration. + +## Steps + +Follow these steps **in order**. Do not skip any step, especially step 3. + +### 1. Compile the changed package + +```bash +yarn nx compile +``` + +Run from the repo root (`/Users/valentinpalkovic/Projects/storybook`). Replace `` with the NX project name (e.g. `builder-vite`, `core`, `react-vite`). + +### 2. Copy the compiled `dist/` into the sandbox + +```bash +/bin/cp -R code//dist/ ../storybook-sandboxes//node_modules//dist/ +``` + +Always use `/bin/cp` (not bare `cp`) to avoid shell alias prompts that block execution. + +**Common package mappings:** + +| NX project name | Code path | npm package name | +| -------------------- | -------------------------------- | ------------------------------- | +| `builder-vite` | `code/builders/builder-vite` | `@storybook/builder-vite` | +| `builder-webpack5` | `code/builders/builder-webpack5` | `@storybook/builder-webpack5` | +| `core` | `code/core` | `storybook` | +| `react-vite` | `code/frameworks/react-vite` | `@storybook/react-vite` | +| `react-webpack5` | `code/frameworks/react-webpack5` | `@storybook/react-webpack5` | +| `react` | `code/renderers/react` | `@storybook/react` | +| `addon-essentials` | `code/addons/essentials` | `@storybook/addon-essentials` | +| `addon-interactions` | `code/addons/interactions` | `@storybook/addon-interactions` | +| `addon-vitest` | `code/addons/vitest` | `@storybook/addon-vitest` | + +**Sandbox directory name** is the template name with `/` replaced by `-` (e.g. `react-vite/default-ts` → `react-vite-default-ts`). + +### 3. ⚠️ Delete the sandbox cache (MANDATORY) + +```bash +/bin/rm -rf ../storybook-sandboxes//node_modules/.cache +``` + +This step is **required** after every dist copy. Skipping it means Vite will serve stale cached output and the change will not be visible. + +### 4. Restart Storybook + +Run Storybook directly from the sandbox directory (do **not** use `yarn nx dev` as that re-triggers the full sandbox chain): + +```bash +cd ../storybook-sandboxes/ && yarn storybook +``` + +## Default sandbox + +If no sandbox is specified, assume `react-vite/default-ts` → `react-vite-default-ts`. + +## Example + +Rebuild `builder-vite` and update the `react-vite/default-ts` sandbox: + +```bash +# 1. Compile +yarn nx compile builder-vite + +# 2. Copy dist +/bin/cp -R code/builders/builder-vite/dist/ ../storybook-sandboxes/react-vite-default-ts/node_modules/@storybook/builder-vite/dist/ + +# 3. Clear cache +/bin/rm -rf ../storybook-sandboxes/react-vite-default-ts/node_modules/.cache + +# 4. Restart +cd ../storybook-sandboxes/react-vite-default-ts && yarn storybook +``` diff --git a/.agents/skills/storybook-upgrade/SKILL.md b/.agents/skills/storybook-upgrade/SKILL.md index e33c8372cd37..67d217d330fd 100644 --- a/.agents/skills/storybook-upgrade/SKILL.md +++ b/.agents/skills/storybook-upgrade/SKILL.md @@ -1,7 +1,6 @@ --- name: storybook-upgrade description: Upgrade Storybook to a specific version (canary or release). Use this when upgrading Storybook packages in an external app, reproduction, or test project. -allowed-tools: Bash --- # Storybook Upgrade diff --git a/.claude/skills/canary/SKILL.md b/.claude/skills/canary/SKILL.md deleted file mode 100644 index 409383aedfcc..000000000000 --- a/.claude/skills/canary/SKILL.md +++ /dev/null @@ -1 +0,0 @@ -@../../../.agents/skills/canary/SKILL.md diff --git a/.claude/skills/canary/SKILL.md b/.claude/skills/canary/SKILL.md new file mode 120000 index 000000000000..84a89df9f83f --- /dev/null +++ b/.claude/skills/canary/SKILL.md @@ -0,0 +1 @@ +.agents/skills/canary/SKILL.md \ No newline at end of file diff --git a/.claude/skills/github-qa-labels/SKILL.md b/.claude/skills/github-qa-labels/SKILL.md deleted file mode 100644 index 3f2d5d88f721..000000000000 --- a/.claude/skills/github-qa-labels/SKILL.md +++ /dev/null @@ -1 +0,0 @@ -@../../../.agents/skills/github-qa-labels/SKILL.md diff --git a/.claude/skills/github-qa-labels/SKILL.md b/.claude/skills/github-qa-labels/SKILL.md new file mode 120000 index 000000000000..2e0dee31e19e --- /dev/null +++ b/.claude/skills/github-qa-labels/SKILL.md @@ -0,0 +1 @@ +.agents/skills/github-qa-labels/SKILL.md \ No newline at end of file diff --git a/.claude/skills/pr/SKILL.md b/.claude/skills/pr/SKILL.md deleted file mode 100644 index e49c172623d4..000000000000 --- a/.claude/skills/pr/SKILL.md +++ /dev/null @@ -1 +0,0 @@ -@../../../.agents/skills/pr/SKILL.md diff --git a/.claude/skills/pr/SKILL.md b/.claude/skills/pr/SKILL.md new file mode 120000 index 000000000000..7bd9710a24d5 --- /dev/null +++ b/.claude/skills/pr/SKILL.md @@ -0,0 +1 @@ +.agents/skills/pr/SKILL.md \ No newline at end of file diff --git a/.claude/skills/sandbox-rebuild/SKILL.md b/.claude/skills/sandbox-rebuild/SKILL.md new file mode 120000 index 000000000000..ca666bafbc13 --- /dev/null +++ b/.claude/skills/sandbox-rebuild/SKILL.md @@ -0,0 +1 @@ +.agents/skills/sandbox-rebuild/SKILL.md \ No newline at end of file diff --git a/.claude/skills/storybook-upgrade/SKILL.md b/.claude/skills/storybook-upgrade/SKILL.md deleted file mode 100644 index 5fc27a1e7e57..000000000000 --- a/.claude/skills/storybook-upgrade/SKILL.md +++ /dev/null @@ -1 +0,0 @@ -@../../../.agents/skills/storybook-upgrade/SKILL.md diff --git a/.claude/skills/storybook-upgrade/SKILL.md b/.claude/skills/storybook-upgrade/SKILL.md new file mode 120000 index 000000000000..c2a2b6bced34 --- /dev/null +++ b/.claude/skills/storybook-upgrade/SKILL.md @@ -0,0 +1 @@ +.agents/skills/storybook-upgrade/SKILL.md \ No newline at end of file diff --git a/.codex/config.toml b/.codex/config.toml new file mode 100644 index 000000000000..4b3aa90d1678 --- /dev/null +++ b/.codex/config.toml @@ -0,0 +1,3 @@ +[mcp_servers."nx-mcp"] +command = "npx" +args = ["nx", "mcp", "--project"] \ No newline at end of file diff --git a/.cursor/mcp.json b/.cursor/mcp.json index 8857b2b28278..91a7d6ef9031 100644 --- a/.cursor/mcp.json +++ b/.cursor/mcp.json @@ -3,8 +3,8 @@ "nx": { "command": "npx", "args": [ - "-y", - "nx-mcp@latest" + "nx", + "mcp" ] }, "wallaby": { diff --git a/.gitignore b/.gitignore index 1af774b4eddf..cbcb9a8708a9 100644 --- a/.gitignore +++ b/.gitignore @@ -75,4 +75,4 @@ code/core/report .junie CLAUDE.local.md -.claude +.claude/settings.local.json diff --git a/.mcp.json b/.mcp.json index 8a383b5f75d0..156f7652aa2c 100644 --- a/.mcp.json +++ b/.mcp.json @@ -1,8 +1,9 @@ { "mcpServers": { - "nx": { + "nx-mcp": { + "type": "stdio", "command": "npx", - "args": ["-y", "nx-mcp@latest"] + "args": ["nx", "mcp"] } } } diff --git a/.vscode/mcp.json b/.vscode/mcp.json index 4e1c9e04a7bf..ac35f63da347 100644 --- a/.vscode/mcp.json +++ b/.vscode/mcp.json @@ -3,7 +3,7 @@ "nx": { "type": "stdio", "command": "npx", - "args": ["-y", "nx-mcp@latest"] + "args": ["nx", "mcp"] } } } diff --git a/AGENTS.md b/AGENTS.md index a62d7ddb5bf1..2ec908d1de95 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -10,7 +10,7 @@ Storybook is a large TypeScript monorepo. The git root is the repo root, the mai - **Node.js**: `22.21.1` (see `.nvmrc`) - **Package Manager**: Yarn Berry -- **Task orchestration**: NX plus the custom `yarn task` runner +- **Task orchestration**: NX - **CI environment**: Linux and Windows ## Repository Structure @@ -86,78 +86,50 @@ AST indexing keeps the sidebar fast and prevents one broken story file from brea Run commands from the repository root unless stated otherwise. -For routine agent work, prefer the faster non-production commands first. Add `-c production` only when you need sandbox-related NX tasks or you are explicitly matching CI behavior. - -### Install and compile - -```bash -yarn -yarn task compile -yarn nx run-many -t compile -yarn nx compile -``` - -### Lint and typecheck - -```bash -yarn lint -yarn --cwd code lint:js:cmd --fix -yarn task check -yarn nx run-many -t check -``` - -### Development and tests - -```bash -cd code && yarn storybook:ui -cd code && yarn storybook:ui:build -cd code && yarn test -cd code && yarn test:watch -cd code && yarn storybook:vitest -``` +For routine agent work, prefer the faster non-production commands first. Add `-c production` only when you need CI-parity behavior (it adds `--prod` to compile steps). ### Common task scenarios -| Scenario | Command | -| ------------------------------- | ------------------------------------------------------------------------------ | -| Compile everything quickly | `yarn nx run-many -t compile` | -| Compile one package | `yarn nx compile ` | -| Check TypeScript errors quickly | `yarn nx run-many -t check` | -| Start the internal Storybook UI | `cd code && yarn storybook:ui` | -| Build the internal Storybook UI | `cd code && yarn storybook:ui:build` | -| Run unit tests | `cd code && yarn test` | -| Run Storybook Vitest tests | `cd code && yarn storybook:vitest` | -| Generate a sandbox | `yarn task sandbox --template react-vite/default-ts --start-from auto` | -| Run sandbox E2E tests | `yarn task e2e-tests-dev --template react-vite/default-ts --start-from auto` | -| Run sandbox test-runner tests | `yarn task test-runner-dev --template react-vite/default-ts --start-from auto` | - -## NX and `yarn task` - -Use NX when you want better caching and dependency tracking. Prefer these faster defaults first, and only add `-c production` or `--no-link` when you specifically need sandbox parity or CI-like behavior. +| Scenario | Command | +| ------------------------------- | ----------------------------------------------------------------------- | +| Install dependencies | `yarn` | +| Compile everything quickly | `yarn nx run-many -t compile` | +| Compile one package | `yarn nx compile ` | +| Lint a specific file | `yarn nx run code:lint-js --cache --fix` | +| Check TypeScript errors quickly | `yarn nx run-many -t check` | +| Start the internal Storybook UI | `cd code && yarn storybook:ui` | +| Build the internal Storybook UI | `cd code && yarn storybook:ui:build` | +| Run unit tests | `cd code && yarn test` | +| Run unit tests in watch mode | `cd code && yarn test:watch` | +| Run Storybook Vitest tests | `cd code && yarn storybook:vitest` | +| Generate a sandbox | `yarn nx sandbox react-vite/default-ts` | +| Run a sandbox Storybook UI | `yarn nx dev react-vite/default-ts` | +| Run sandbox E2E tests | `yarn nx e2e-tests-dev react-vite/default-ts` | +| Run sandbox test-runner tests | `yarn nx test-runner-dev react-vite/default-ts` | + +## NX + +Use NX when you want better caching and dependency tracking. Prefer these faster defaults first, and only add `-c production` or `--no-link` when you specifically need sandbox parity or CI-like behavior. Use the NX MCP graph to understand task dependencies and what will be affected by each command. ```bash # Compile all packages -yarn task compile yarn nx run-many -t compile -# Check all packages -yarn task check +# Check all packages (depends on ALL packages compiling first) yarn nx run-many -t check -# Run E2E tests for a template -yarn task e2e-tests-dev --template react-vite/default-ts --start-from auto -yarn nx e2e-tests-dev react-vite/default-ts -c production +# Run E2E tests for a template (triggers full sandbox chain: compile → publish → registry → sandbox → dev) +yarn nx e2e-tests-dev react-vite/default-ts -# Jump to a later step -yarn task e2e-tests-dev --start-from e2e-tests --template react-vite/default-ts -yarn nx e2e-tests-dev -c production --exclude-task-dependencies +# Skip dependency chain (only if you've already run the prerequisite steps manually) +yarn nx e2e-tests-dev --exclude-task-dependencies ``` Key points: -- `-c production` is required for sandbox-related NX commands and CI-parity runs -- `react-vite/default-ts` is the default sandbox template -- `--no-link` is opt-in, not the default +- `react-vite/default-ts` is the default sandbox template (`defaultProject` in `nx.json`) +- `-c production` adds `--prod` to compile steps for CI-parity but is not required for sandbox commands to work +- `check`, `test`, and `lint-js` all depend on `{ projects: ["*"], target: "compile" }` — running them via NX will first compile ALL packages - NX handles task dependencies via `nx.json` ## Sandbox Notes @@ -166,18 +138,8 @@ Sandboxes are generated outside the repository at `../storybook-sandboxes/` by d - `STORYBOOK_SANDBOX_ROOT=./sandbox` forces local output, but is usually not preferred - `./sandbox` inside the repo mainly exists for NX outputs, not CI sandboxes -- If sandbox generation fails, fall back to `cd code && yarn storybook:ui` -Generate and use a sandbox with the same `sandbox` command shape used elsewhere in this file: - -```bash -yarn task sandbox --template react-vite/default-ts --start-from auto -# Same sandbox step via NX -yarn nx sandbox react-vite/default-ts -c production -cd ../storybook-sandboxes/react-vite-default-ts -yarn install -yarn storybook -``` +Sandbox dependency chain: `*:compile` → `scripts:publish` → `scripts:run-registry` → `sandbox` → `prepare-sandbox` → `dev`/`build`/etc. This is a heavy operation. If sandbox generation fails, fall back to `cd code && yarn storybook:ui`. Common templates: @@ -188,6 +150,10 @@ Common templates: - `vue3-vite/default-ts` - `nextjs/default-ts` +### Propagating local changes to an existing sandbox + +Use the sandbox-rebuild skill (.agents/skills/sandbox-rebuild) to copy compiled output from a local package into an existing sandbox without regenerating the whole sandbox. + ## How To Work In This Repo ### For normal code changes @@ -197,8 +163,9 @@ Common templates: 3. Make changes 4. Recompile affected packages 5. Validate there are no TypeScript errors with `yarn nx run-many -t check` -6. Run relevant lint and tests -7. Validate behavior in the internal Storybook UI first, then switch to sandbox or `-c production` flows only if you need template or CI parity +6. Run `yarn nx run code:test --changed` +7. Run `yarn nx run code:lint-js --cache --fix` +8. Validate behavior in the internal Storybook UI first, then switch to sandbox or `-c production` flows only if you need template or CI parity ### For addon, framework, or renderer work @@ -207,22 +174,6 @@ Common templates: 3. Generate a matching sandbox 4. Run the relevant test-runner, E2E, or Storybook UI validation flow -## Testing Expectations - -- Use `cd code && yarn test` for unit tests -- Use Storybook UI or Chromatic for visual validation -- Use `yarn task e2e-tests --start-from auto` or `yarn task e2e-tests-dev --start-from auto` for E2E coverage -- Use `yarn task test-runner --start-from auto` or `yarn task test-runner-dev --start-from auto` for test-runner scenarios -- Use `yarn task smoke-test --start-from auto` for smoke checks - -Watch-mode commands: - -```bash -cd code && yarn test:watch -yarn affected:test -cd code && yarn storybook:vitest -``` - When writing tests: - Export functions that need direct tests @@ -232,12 +183,6 @@ When writing tests: ## Quality and Logging -After changing files: - -1. Format with `yarn prettier --write ` -2. Lint with `yarn --cwd code lint:js:cmd --fix` or `cd code && yarn lint:js:cmd ` -3. Run relevant tests before submitting a PR - Use Storybook loggers instead of raw `console.*` in normal code paths: - Server-side: `storybook/internal/node-logger` @@ -251,6 +196,8 @@ Avoid `console.log`, `console.warn`, and `console.error` unless the file is isol - Storybook UI uses port `6006` by default - Large compiles may require more Node.js memory - Sandbox paths are `../storybook-sandboxes/`, not `./sandbox` or `code/sandbox/` +- If `scripts:publish` fails with `Error: No process running on port` (from `kill-port`), rerun the sandbox flow or run Storybook directly from the sandbox directory. +- If running Storybook in a sandbox fails with `EPERM` creating `node_modules/.cache/...`, ensure the sandbox directory is writable (agents may need escalated permissions). - Use `--debug` for verbose CLI output - Check generated sandbox directories and `.cache/` for build artifacts @@ -270,9 +217,27 @@ Avoid `console.log`, `console.warn`, and `console.error` unless the file is isol These usually start long-running development servers and are the wrong default for agents. +## Shell Pitfalls + +- **Interactive prompts:** Common shell aliases (e.g. `cp -i`, `mv -i`, `rm -i`) will block agents waiting for confirmation. Always use the full binary path (`/bin/cp`, `/bin/mv`, `/bin/rm`) to bypass aliases and ensure non-interactive execution. + ## Maintenance Rules For Agents - Use this file as the canonical instruction source - Update `AGENTS.md` when architecture, commands, versions, release flows, or contributor guidance changes - Keep `CLAUDE.md` and other agent entrypoints as thin references to `AGENTS.md` - Do not reintroduce duplicated instruction files when a reference will do + + + + +# General Guidelines for working with Nx + +- When running tasks (for example build, lint, test, e2e, etc.), always prefer running the task through `nx` (i.e. `nx run`, `nx run-many`, `nx affected`) instead of using the underlying tooling directly +- You have access to the Nx MCP server and its tools, use them to help the user +- When answering questions about the repository, use the `nx_workspace` tool first to gain an understanding of the workspace architecture where applicable. +- When working in individual projects, use the `nx_project_details` mcp tool to analyze and understand the specific project structure and dependencies +- For questions around nx configuration, best practices or if you're unsure, use the `nx_docs` tool to get relevant, up-to-date docs. Always use this instead of assuming things about nx configuration +- If the user needs help with an Nx configuration or project graph error, use the `nx_workspace` tool to get any errors + + diff --git a/code/project.json b/code/project.json index 93ce34f937cd..2956fa5ea45d 100644 --- a/code/project.json +++ b/code/project.json @@ -10,6 +10,14 @@ "inputs": ["default"], "configurations": { "production": {} } }, + "lint-js": { + "dependsOn": [{ "projects": ["*"], "target": "compile" }], + "executor": "nx:run-commands", + "options": { "cwd": "{projectRoot}", "command": "yarn lint:js:cmd" }, + "cache": true, + "inputs": ["default"], + "configurations": { "production": {} } + }, "test": { "dependsOn": [{ "projects": ["*"], "target": "compile" }], "executor": "nx:run-commands", diff --git a/package.json b/package.json index 00526f3ff9e2..712224a7ae22 100644 --- a/package.json +++ b/package.json @@ -59,14 +59,14 @@ "typescript": "^5.9.3" }, "devDependencies": { - "@nx/workspace": "^22.1.3", + "@nx/workspace": "^22.5.4", "@playwright/test": "^1.58.2", "@types/kill-port": "^2.0.3", "http-server": "^14.1.1", "husky": "^9.1.7", "jiti": "^2.6.1", "kill-port": "^2.0.1", - "nx": "^22.1.3", + "nx": "^22.5.4", "prettier": "^3.7.1" }, "packageManager": "yarn@4.10.3" diff --git a/yarn.lock b/yarn.lock index 728a4a89bdc6..d35c8857e98b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4108,107 +4108,107 @@ __metadata: languageName: node linkType: hard -"@nx/devkit@npm:22.1.3": - version: 22.1.3 - resolution: "@nx/devkit@npm:22.1.3" +"@nx/devkit@npm:22.5.4": + version: 22.5.4 + resolution: "@nx/devkit@npm:22.5.4" dependencies: "@zkochan/js-yaml": "npm:0.0.7" ejs: "npm:^3.1.7" enquirer: "npm:~2.3.6" - minimatch: "npm:9.0.3" + minimatch: "npm:10.2.4" semver: "npm:^7.6.3" tslib: "npm:^2.3.0" yargs-parser: "npm:21.1.1" peerDependencies: nx: ">= 21 <= 23 || ^22.0.0-0" - checksum: 10c0/9b75154962edf6b1aeee4392c1db5218964ed95eb0b5cc66f499c802acd957789fef2551964dac21682768f78552502bdb43bfe5f364b89dbd9f8ecb637e2e42 + checksum: 10c0/ad973e41963dbb8bb1d2c5bfa91b31b332bb98753b417e41f4a212af414fad8823e2a0115d38e94df53ef0b1061c0a798f512beec79babe19e22770141b43018 languageName: node linkType: hard -"@nx/nx-darwin-arm64@npm:22.1.3": - version: 22.1.3 - resolution: "@nx/nx-darwin-arm64@npm:22.1.3" +"@nx/nx-darwin-arm64@npm:22.5.4": + version: 22.5.4 + resolution: "@nx/nx-darwin-arm64@npm:22.5.4" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@nx/nx-darwin-x64@npm:22.1.3": - version: 22.1.3 - resolution: "@nx/nx-darwin-x64@npm:22.1.3" +"@nx/nx-darwin-x64@npm:22.5.4": + version: 22.5.4 + resolution: "@nx/nx-darwin-x64@npm:22.5.4" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@nx/nx-freebsd-x64@npm:22.1.3": - version: 22.1.3 - resolution: "@nx/nx-freebsd-x64@npm:22.1.3" +"@nx/nx-freebsd-x64@npm:22.5.4": + version: 22.5.4 + resolution: "@nx/nx-freebsd-x64@npm:22.5.4" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard -"@nx/nx-linux-arm-gnueabihf@npm:22.1.3": - version: 22.1.3 - resolution: "@nx/nx-linux-arm-gnueabihf@npm:22.1.3" +"@nx/nx-linux-arm-gnueabihf@npm:22.5.4": + version: 22.5.4 + resolution: "@nx/nx-linux-arm-gnueabihf@npm:22.5.4" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@nx/nx-linux-arm64-gnu@npm:22.1.3": - version: 22.1.3 - resolution: "@nx/nx-linux-arm64-gnu@npm:22.1.3" +"@nx/nx-linux-arm64-gnu@npm:22.5.4": + version: 22.5.4 + resolution: "@nx/nx-linux-arm64-gnu@npm:22.5.4" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@nx/nx-linux-arm64-musl@npm:22.1.3": - version: 22.1.3 - resolution: "@nx/nx-linux-arm64-musl@npm:22.1.3" +"@nx/nx-linux-arm64-musl@npm:22.5.4": + version: 22.5.4 + resolution: "@nx/nx-linux-arm64-musl@npm:22.5.4" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@nx/nx-linux-x64-gnu@npm:22.1.3": - version: 22.1.3 - resolution: "@nx/nx-linux-x64-gnu@npm:22.1.3" +"@nx/nx-linux-x64-gnu@npm:22.5.4": + version: 22.5.4 + resolution: "@nx/nx-linux-x64-gnu@npm:22.5.4" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@nx/nx-linux-x64-musl@npm:22.1.3": - version: 22.1.3 - resolution: "@nx/nx-linux-x64-musl@npm:22.1.3" +"@nx/nx-linux-x64-musl@npm:22.5.4": + version: 22.5.4 + resolution: "@nx/nx-linux-x64-musl@npm:22.5.4" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@nx/nx-win32-arm64-msvc@npm:22.1.3": - version: 22.1.3 - resolution: "@nx/nx-win32-arm64-msvc@npm:22.1.3" +"@nx/nx-win32-arm64-msvc@npm:22.5.4": + version: 22.5.4 + resolution: "@nx/nx-win32-arm64-msvc@npm:22.5.4" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@nx/nx-win32-x64-msvc@npm:22.1.3": - version: 22.1.3 - resolution: "@nx/nx-win32-x64-msvc@npm:22.1.3" +"@nx/nx-win32-x64-msvc@npm:22.5.4": + version: 22.5.4 + resolution: "@nx/nx-win32-x64-msvc@npm:22.5.4" conditions: os=win32 & cpu=x64 languageName: node linkType: hard -"@nx/workspace@npm:^22.1.3": - version: 22.1.3 - resolution: "@nx/workspace@npm:22.1.3" +"@nx/workspace@npm:^22.5.4": + version: 22.5.4 + resolution: "@nx/workspace@npm:22.5.4" dependencies: - "@nx/devkit": "npm:22.1.3" + "@nx/devkit": "npm:22.5.4" "@zkochan/js-yaml": "npm:0.0.7" chalk: "npm:^4.1.0" enquirer: "npm:~2.3.6" - nx: "npm:22.1.3" + nx: "npm:22.5.4" picomatch: "npm:4.0.2" semver: "npm:^7.6.3" tslib: "npm:^2.3.0" yargs-parser: "npm:21.1.1" - checksum: 10c0/0e67d7bd353f749dab4b7a3f55fc84586b38281a6591454b6a0594f7c33602c8c2121d138c434818b2c19241928200d103155f9b3d7b55eae30383b7314b222c + checksum: 10c0/686c5c21fdd86302b2df5d46926f719e673c5893f9dd8fd3c4aa7f4c9d08e6890bf7b8d3bd0f843ef5344515d3c96a1102839816120749e2c962eda589090129 languageName: node linkType: hard @@ -8452,14 +8452,14 @@ __metadata: version: 0.0.0-use.local resolution: "@storybook/root@workspace:." dependencies: - "@nx/workspace": "npm:^22.1.3" + "@nx/workspace": "npm:^22.5.4" "@playwright/test": "npm:^1.58.2" "@types/kill-port": "npm:^2.0.3" http-server: "npm:^14.1.1" husky: "npm:^9.1.7" jiti: "npm:^2.6.1" kill-port: "npm:^2.0.1" - nx: "npm:^22.1.3" + nx: "npm:^22.5.4" prettier: "npm:^3.7.1" languageName: unknown linkType: soft @@ -12375,6 +12375,13 @@ __metadata: languageName: node linkType: hard +"balanced-match@npm:^4.0.2": + version: 4.0.4 + resolution: "balanced-match@npm:4.0.4" + checksum: 10c0/07e86102a3eb2ee2a6a1a89164f29d0dbaebd28f2ca3f5ca786f36b8b23d9e417eb3be45a4acf754f837be5ac0a2317de90d3fcb7f4f4dc95720a1f36b26a17b + languageName: node + linkType: hard + "bare-events@npm:^2.2.0": version: 2.3.1 resolution: "bare-events@npm:2.3.1" @@ -12638,6 +12645,15 @@ __metadata: languageName: node linkType: hard +"brace-expansion@npm:^5.0.2": + version: 5.0.4 + resolution: "brace-expansion@npm:5.0.4" + dependencies: + balanced-match: "npm:^4.0.2" + checksum: 10c0/359cbcfa80b2eb914ca1f3440e92313fbfe7919ee6b274c35db55bec555aded69dac5ee78f102cec90c35f98c20fa43d10936d0cd9978158823c249257e1643a + languageName: node + linkType: hard + "braces@npm:^3.0.3, braces@npm:~3.0.2": version: 3.0.3 resolution: "braces@npm:3.0.3" @@ -22358,6 +22374,15 @@ __metadata: languageName: node linkType: hard +"minimatch@npm:10.2.4": + version: 10.2.4 + resolution: "minimatch@npm:10.2.4" + dependencies: + brace-expansion: "npm:^5.0.2" + checksum: 10c0/35f3dfb7b99b51efd46afd378486889f590e7efb10e0f6a10ba6800428cf65c9a8dedb74427d0570b318d749b543dc4e85f06d46d2858bc8cac7e1eb49a95945 + languageName: node + linkType: hard + "minimatch@npm:2 || 3, minimatch@npm:^3.0.0, minimatch@npm:^3.0.2, minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" @@ -22385,15 +22410,6 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:9.0.3": - version: 9.0.3 - resolution: "minimatch@npm:9.0.3" - dependencies: - brace-expansion: "npm:^2.0.1" - checksum: 10c0/85f407dcd38ac3e180f425e86553911d101455ca3ad5544d6a7cec16286657e4f8a9aa6695803025c55e31e35a91a2252b5dc8e7d527211278b8b65b4dbd5eac - languageName: node - linkType: hard - "minimatch@npm:^10.0.1, minimatch@npm:^10.1.2, minimatch@npm:^9.0.3 || ^10.0.1": version: 10.1.2 resolution: "minimatch@npm:10.1.2" @@ -23276,31 +23292,31 @@ __metadata: languageName: node linkType: hard -"nx@npm:22.1.3, nx@npm:^22.1.3": - version: 22.1.3 - resolution: "nx@npm:22.1.3" +"nx@npm:22.5.4, nx@npm:^22.5.4": + version: 22.5.4 + resolution: "nx@npm:22.5.4" dependencies: "@napi-rs/wasm-runtime": "npm:0.2.4" - "@nx/nx-darwin-arm64": "npm:22.1.3" - "@nx/nx-darwin-x64": "npm:22.1.3" - "@nx/nx-freebsd-x64": "npm:22.1.3" - "@nx/nx-linux-arm-gnueabihf": "npm:22.1.3" - "@nx/nx-linux-arm64-gnu": "npm:22.1.3" - "@nx/nx-linux-arm64-musl": "npm:22.1.3" - "@nx/nx-linux-x64-gnu": "npm:22.1.3" - "@nx/nx-linux-x64-musl": "npm:22.1.3" - "@nx/nx-win32-arm64-msvc": "npm:22.1.3" - "@nx/nx-win32-x64-msvc": "npm:22.1.3" + "@nx/nx-darwin-arm64": "npm:22.5.4" + "@nx/nx-darwin-x64": "npm:22.5.4" + "@nx/nx-freebsd-x64": "npm:22.5.4" + "@nx/nx-linux-arm-gnueabihf": "npm:22.5.4" + "@nx/nx-linux-arm64-gnu": "npm:22.5.4" + "@nx/nx-linux-arm64-musl": "npm:22.5.4" + "@nx/nx-linux-x64-gnu": "npm:22.5.4" + "@nx/nx-linux-x64-musl": "npm:22.5.4" + "@nx/nx-win32-arm64-msvc": "npm:22.5.4" + "@nx/nx-win32-x64-msvc": "npm:22.5.4" "@yarnpkg/lockfile": "npm:^1.1.0" "@yarnpkg/parsers": "npm:3.0.2" "@zkochan/js-yaml": "npm:0.0.7" axios: "npm:^1.12.0" - chalk: "npm:^4.1.0" cli-cursor: "npm:3.1.0" cli-spinners: "npm:2.6.1" cliui: "npm:^8.0.1" dotenv: "npm:~16.4.5" dotenv-expand: "npm:~11.0.6" + ejs: "npm:^3.1.7" enquirer: "npm:~2.3.6" figures: "npm:3.2.0" flat: "npm:^5.0.2" @@ -23309,11 +23325,12 @@ __metadata: jest-diff: "npm:^30.0.2" jsonc-parser: "npm:3.2.0" lines-and-columns: "npm:2.0.3" - minimatch: "npm:9.0.3" + minimatch: "npm:10.2.4" node-machine-id: "npm:1.1.12" npm-run-path: "npm:^4.0.1" open: "npm:^8.4.0" ora: "npm:5.3.0" + picocolors: "npm:^1.1.0" resolve.exports: "npm:2.0.3" semver: "npm:^7.6.3" string-width: "npm:^4.2.3" @@ -23326,8 +23343,8 @@ __metadata: yargs: "npm:^17.6.2" yargs-parser: "npm:21.1.1" peerDependencies: - "@swc-node/register": ^1.8.0 - "@swc/core": ^1.3.85 + "@swc-node/register": ^1.11.1 + "@swc/core": ^1.15.8 dependenciesMeta: "@nx/nx-darwin-arm64": optional: true @@ -23357,7 +23374,7 @@ __metadata: bin: nx: bin/nx.js nx-cloud: bin/nx-cloud.js - checksum: 10c0/d6bbc6bb4df78cd84b0f02a51dca7e94c31a7f102b29b24b67dea6c32063704bd9ba2083b6b27b4ec60f91484b7ed4ae7370ef46ab77646d88e98f9da58500c2 + checksum: 10c0/39b605a13d56c16cc4d14976780b522af55d77fb1c8d2a6e60d34dd95c910d49d179fd1b4568ff2de7712613dce603fa598d443cef57efd861bca390b95a49c6 languageName: node linkType: hard