From 500526abbb0d429787402ae6611058f31a9cc7f6 Mon Sep 17 00:00:00 2001 From: ashfame Date: Mon, 27 Jul 2026 23:26:36 +0400 Subject: [PATCH 01/40] docs(plan): record approved maintenance plan - preserve the approved maintenance and remediation scope verbatim - establish the integration branch before child work begins --- plan.md | 106 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 106 insertions(+) create mode 100644 plan.md diff --git a/plan.md b/plan.md new file mode 100644 index 00000000..2262ec6e --- /dev/null +++ b/plan.md @@ -0,0 +1,106 @@ +# Try WordPress Maintenance and Dependabot Remediation + +## Summary + +Write the exact Markdown contained in this approved plan to root-level `plan.md` as the first repository change, without paraphrasing or substituting a different planning document. Commit it first, push `agent/maintenance-security-and-hygiene`, and immediately open a draft maintenance PR targeting `trunk`. + +Perform all work through small child PRs targeting the maintenance branch. Merge validated child PRs with merge commits, but leave the integration PR draft and unmerged for the user’s manual testing. + +Use Node 24 because the current locked dependencies already install, lint, type-check, and produce both production builds successfully under Node 24. Generate the schema before type-checking. + +## Eight Maintenance Workstreams + +1. **Fix documented commands and remove abandoned test scaffolding** + - Make `npm run build` build both development browser targets and `npm run build:production` build both production targets. + - Correct CONTRIBUTING so every documented command exists and accurately describes its output. + - Remove `jest.config.cjs`, `jest.setup.js`, and obsolete Jest ESLint configuration. + - Do not restore frontend tests in this effort: commit `ef1ea24` intentionally removed them, the deleted Jest test only asserted `true === true`, and the separate Playwright smoke test was also removed. + - Replace the nonexistent frontend test instructions with the actual lint, type-check, build, manifest-validation, and PHP test commands. + +2. **Make Node CI reproducible** + - Add `.nvmrc` selecting Node 24 and declare `>=24 <25` in `package.json`. + - Configure `actions/setup-node` to use `.nvmrc`, enable npm lockfile caching, and replace every CI `npm install` with `npm ci`. + - Add scripts and CI steps for schema generation followed by `tsc --noEmit`. + - Run linting, type-checking, and both production builds on pull requests and pushes to `trunk`. + - Add workflow concurrency so obsolete runs are cancelled. + +3. **Validate extension builds and manifests in CI** + - Correct `icons/icon-128` to `icons/icon-128.png` in both browser manifests. + - Add the Firefox Manifest V3 Gecko ID `try-your-website-in-wordpress@wordpress.org`. + - Document that this Gecko ID is provisional and may be changed until the browser extension is first published; after publication, treat the published ID as stable because changing it would create a distinct Firefox extension identity. + - Run `web-ext lint` against the production Firefox build. + - Ignore only the generated `app.js` during `web-ext lint` because its existing 4.67 MiB size exceeds the linter’s parsing limit; continue validating it through TypeScript, webpack, and production builds. + - Allow the existing Firefox unsupported-Chrome-API warning, but require zero manifest errors. + - Confirm every manifest-referenced script, page, and icon exists in both packaged builds. + +4. **Align local and CI test environments** + - Remove the WordPress 6.6.2 pin so local `wp-env` and CI consistently use latest stable WordPress. + - Test PHP 8.3 and 8.4 in CI, with local `wp-env` defaulting to PHP 8.4. + - Replace MySQL 5.7 with MySQL 8.0. + - Keep schema generation and WordPress test-library installation deterministic within each matrix job. + - Document the supported WordPress/PHP/MySQL targets in CONTRIBUTING. + +5. **Align and secure PHPUnit configuration** + - Upgrade PHPUnit to at least 9.6.33 to resolve its Dependabot advisory while retaining WordPress test-suite compatibility. + - Change `phpunit.xml.dist` from the PHPUnit 10.5 schema to the matching PHPUnit 9.6 schema. + - Run the complete PHPUnit suite and PHPCS under the maintained PHP versions. + +6. **Automate dependency upkeep** + - Add `.github/dependabot.yml` for npm and Composer. + - Schedule grouped monthly version updates with separate production and development groups and a bounded open-PR limit. + - Keep security remediation causal and reviewable rather than combining unrelated major upgrades. + +7. **Complete repository metadata and backup ignores** + - Add an accurate Composer description. + - Add npm package name/version metadata, `"private": true`, and Node engine metadata. + - Do not modify `LICENSE` or add/change license metadata in Composer, npm, plugin, or extension files. + - Add `/backup.sql` and `/backup-*.sql` to `.gitignore`; these match the repository-root files generated by `composer run dev:db` and `composer run dev:db:backup`. + - Do not broadly ignore all SQL files. + +8. **Triage stale remote branches without losing work** + - Inventory all fourteen stale non-trunk branches with branch name, tip SHA, last commit date, reachability from `trunk`, and associated PR URL/state. + - Record that inventory in `plan.md` through a documentation child PR before deleting anything. + - Delete a remote branch only if it has an associated PR of any state or its tip is already reachable from `trunk`. + - Preserve every unmerged branch without an associated PR. Based on the current inventory, `attempt-twitter`, `fix-test-wix`, and `npm_package_updates` must be preserved unless new recoverability evidence is found. + - Record each deletion and its recovery reference in `plan.md`. Branch deletion is an external maintenance action associated with the documented child PR, not represented as source-code deletion. + +## Dependabot Alert Remediation + +- Add an execution appendix to `plan.md` through the first child PR containing all 124 baseline alert numbers, GHSAs, severities, ecosystems, affected packages, dependency relationships, patched versions, causal direct parents, child PR links, and statuses. +- Process one causal direct dependency or tightly coupled WordPress package family per child PR. One child PR may resolve multiple alerts caused by that dependency. +- Prioritize critical runtime alerts, critical development alerts, high, medium, and low alerts in that order. +- Initial causal groups include `web-ext`, `@wp-playground/client`, the coupled WordPress Blocks packages, `@wordpress/scripts`, React Router, webpack, copy-webpack-plugin, PHPUnit, and any remaining direct parent identified through dependency analysis. +- Upgrade the causal direct parent to the minimum stable release that removes its vulnerable transitive packages. Do not use npm overrides, downgrade packages, dismiss alerts, or include unrelated upgrades. +- Resolve the unpatched Showdown advisory by upgrading or replacing its parent until the vulnerable Showdown dependency is absent. +- Permit only compatibility changes directly required by the dependency being upgraded. If a fix requires a broad application migration, record the blocker and pause that group instead of expanding scope silently. +- Recalculate the remaining local audit and lockfile state after every child merge because one causal upgrade may resolve many alerts. +- Include any new applicable alerts published before manual-test handoff. + +## Branch, PR, and Documentation Workflow + +- Keep the primary checkout clean on `trunk`. +- Use `/home/ashfame/git-worktrees/try-wordpress-maintenance-2026` for the integration branch and `/home/ashfame/git-worktrees/try-wordpress-maintenance-NNN-slug` for each child. +- Create child branches as `agent/maintenance-NNN-slug` from the latest integration branch. +- Each child PR must target `agent/maintenance-security-and-hygiene` and describe the change, root cause, affected alert IDs, impact, and checks performed. +- Update `plan.md` in each child PR without changing the approved plan text; append or update only execution status, alert mappings, PR URLs, versions, validation results, and branch-triage records. +- Merge green child PRs with merge commits and remove their worktrees and local/remote branches after verifying the merge. +- Dependabot evaluates default-branch manifests, so GitHub may continue displaying alerts until the integration PR reaches `trunk`. Before then, validate fixes from the integration branch using clean installs, audits, locked versions, dependency paths, and GHSA patched-version data. +- Keep the integration PR draft after automated completion. The user alone marks it ready and merges it after manual testing. + +## Validation and Acceptance + +- Every npm child must pass Node 24 `npm ci`, schema generation, JavaScript/style linting, TypeScript checking, Firefox and Chrome production builds, Firefox manifest linting, and `npm audit`. +- Every Composer child must pass a clean locked install, `composer audit`, PHPCS, schema generation, and the complete PHPUnit matrix. +- An assigned alert is resolved only when the vulnerable version is absent from every relevant lockfile path; reducing aggregate audit counts is insufficient. +- Final automated acceptance requires all 124 baseline alerts and any newly published applicable alerts mapped to validated fixes, no dismissed alerts, green CI, clean worktrees, and a complete execution appendix. +- The final manual checklist will cover loading both unpacked builds, opening the sidebar/side panel, starting WordPress Playground, importing representative navigation and pages, previewing imported content, verifying session persistence, and checking browser and WordPress logs. +- After the user merges the maintenance PR, verify Dependabot recalculates the default branch without unresolved baseline alerts, address discrepancies, confirm the merge is upstream, and then remove the integration worktree and branches. + +## Interfaces and Defaults + +- No application public API or stored-data schema changes are intended. +- Developer-facing changes include corrected npm commands, Node 24 support, expanded CI gates, updated test environments, the provisional Firefox extension ID, and Dependabot configuration. +- The Firefox extension ID may be revised before first publication; once published, changing it is outside ordinary maintenance because it changes the extension’s identity. +- License files and license metadata are explicitly out of scope. +- The maintenance PR remains draft and unmerged until the user completes manual testing. +- All Markdown prose and list items remain unwrapped as required by the repository instructions. From 4ea93903e8b72c4c1720cba7c882133b77e27ce4 Mon Sep 17 00:00:00 2001 From: ashfame Date: Mon, 27 Jul 2026 23:52:13 +0400 Subject: [PATCH 02/40] docs(plan): capture maintenance execution baseline - map 124 Dependabot alerts to locked causal dependency families - inventory fourteen stale branches with recovery evidence - preserve the approved plan text and record validation --- plan.md | 204 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 204 insertions(+) diff --git a/plan.md b/plan.md index 2262ec6e..73792617 100644 --- a/plan.md +++ b/plan.md @@ -104,3 +104,207 @@ Use Node 24 because the current locked dependencies already install, lint, type- - License files and license metadata are explicitly out of scope. - The maintenance PR remains draft and unmerged until the user completes manual testing. - All Markdown prose and list items remain unwrapped as required by the repository instructions. + +## Execution Appendix + +### Integration Status + +Baseline capture date: 2026-07-27. + +The integration branch `agent/maintenance-security-and-hygiene` is represented by commit `500526abbb0d429787402ae6611058f31a9cc7f6` and draft pull request [#199](https://github.com/WordPress/try-wordpress/pull/199), which is open against `trunk`. This execution-baseline child remains documentation-only. + +### Baseline Dependabot Summary + +The read-only GitHub Dependabot API returned exactly 124 open alerts. The severity and ecosystem totals below independently sum to 124. + +| Dimension | Count | +| --- | ---: | +| Critical | 5 | +| High | 57 | +| Medium | 48 | +| Low | 14 | +| npm | 123 | +| Composer | 1 | +| **Severity total** | **124** | +| **Ecosystem total** | **124** | + +Causal-family labels represent the locked direct dependencies that can introduce the vulnerable package in the alert scope. A family label may cover multiple direct parents when the same locked vulnerable instance is shared; the representative path shows one actual shortest path, while the locked vulnerable version column records every affected installed version for that alert range. + +| Label | Locked causal direct parent or tightly coupled family | +| --- | --- | +| AJV | `ajv@8.17.1` | +| BABEL | `@babel/preset-env@7.26.0` | +| BLK | Coupled WordPress Blocks roots `@wordpress/block-library@9.12.0` and `@wordpress/blocks@13.10.0` | +| CONCURRENTLY | `concurrently@9.1.0` | +| ESLINT-RESOLVER | `eslint-import-resolver-typescript@3.6.3` | +| PGL | `@wp-playground/client@1.0.13` | +| PHPUNIT | `phpunit/phpunit@9.6.21` from Composer `require-dev` | +| ROUTER | `react-router-dom@6.28.0` | +| WEBEXT | `web-ext@8.3.0` | +| WEBPACK | The locked webpack family roots `webpack@5.96.1`, `copy-webpack-plugin@12.0.2`, `css-loader@7.1.2`, `filemanager-webpack-plugin@8.0.0`, `mini-css-extract-plugin@2.9.2`, `style-loader@4.0.0`, and `ts-loader@9.5.1` | +| WPS | `@wordpress/scripts@30.4.0` | + +### Baseline Dependabot Alerts + +Rows are ordered by remediation priority: severity first, runtime before development within a severity, then alert number. Duplicate advisory/package rows are retained because GitHub assigned distinct alert numbers. + +| Alert | GHSA | Severity | Ecosystem | Affected package | Relationship / scope | Locked vulnerable version(s) | First patched | Causal family set | Representative locked path | Child PR | Status | +| ---: | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | +| 44 | GHSA-95m3-7q98-8xr5 | critical | npm | `sha.js` | transitive / runtime | `2.4.11` | `2.4.12` | PGL | `sha.js@2.4.11 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 42 | GHSA-fjxv-7rqg-78g4 | critical | npm | `form-data` | transitive / development | `4.0.0` | `4.0.4` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 77 | GHSA-5rq4-664w-9x2c | critical | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.0` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 146 | GHSA-w7jw-789q-3m8p | critical | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.8.4` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | unassigned | baseline open | +| 164 | GHSA-xv26-6w52-cph6 | critical | npm | `websocket-driver` | transitive / development | `0.7.4` | `0.7.5` | WPS | `websocket-driver@0.7.4 ← sockjs@0.3.24 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 3 | GHSA-pwfr-8pq7-x9qv | high | npm | `octokit` | transitive / runtime | `3.1.1` | `3.1.2` | PGL | `octokit@3.1.1 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 58 | GHSA-2w69-qvjg-hvjx | high | npm | `@remix-run/router` | transitive / runtime | `1.21.0` | `1.23.2` | ROUTER | `@remix-run/router@1.21.0 ← react-router-dom@6.28.0` | unassigned | baseline open | +| 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 192 | GHSA-6g55-p6wh-862q | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.12` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | +| 195 | GHSA-r28c-9q8g-f849 | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.18` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | +| 6 | GHSA-3h5v-q93c-6h6q | high | npm | `ws` | transitive / development | `8.13.0` | `8.17.1` | WPS | `ws@8.13.0 ← puppeteer-core@20.9.0 ← lighthouse@10.4.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 33 | GHSA-pq67-2wwv-3xjx | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.7` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 37 | GHSA-8cj5-5rvv-wf4v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.9` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 46 | GHSA-vj76-c3g6-qr5v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.1.1` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 49 | GHSA-7mvr-c777-76hp | high | npm | `playwright` | transitive / development | `1.48.2` | `1.55.1` | WPS | `playwright@1.48.2 ← @playwright/test@1.48.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 54 | GHSA-5gfm-wpxj-wjgq | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | unassigned | baseline open | +| 63 | GHSA-vvj3-c3rp-c85p | high | composer | `phpunit/phpunit` | unknown / development | `9.6.21` | `9.6.33` | PHPUNIT | `phpunit/phpunit@9.6.21 (direct require-dev in composer.json)` | unassigned | baseline open | +| 70 | GHSA-43fc-jf86-j433 | high | npm | `axios` | transitive / development | `1.7.7` | `1.13.5` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 79 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `9.0.3` | `9.0.7` | WPS | `minimatch@9.0.3 ← @typescript-eslint/typescript-estree@6.21.0 ← @typescript-eslint/parser@6.21.0 ← @wordpress/eslint-plugin@21.0.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 80 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `5.1.6` | `5.1.8` | WEBPACK | `minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | unassigned | baseline open | +| 83 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `3.0.8, 3.1.2` | `3.1.3` | ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS | `minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | unassigned | baseline open | +| 84 | GHSA-5c6j-r48x-rmvq | high | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.3` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | unassigned | baseline open | +| 85 | GHSA-xpqw-6gx7-v673 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.3` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 88 | GHSA-wf6x-7x77-mvgw | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.8` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 91 | GHSA-rf6f-7fwh-wjgh | high | npm | `flatted` | transitive / development | `3.3.1` | `3.4.2` | ESLINT-RESOLVER + WEBEXT + WPS | `flatted@3.3.1 ← flat-cache@3.2.0 ← file-entry-cache@6.0.1 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 93 | GHSA-ppp5-5v6c-4jwp | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | unassigned | baseline open | +| 94 | GHSA-q67f-28xg-22rw | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | unassigned | baseline open | +| 96 | GHSA-2328-f5f3-gj25 | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | unassigned | baseline open | +| 103 | GHSA-r5fr-rjxr-66jc | high | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | unassigned | baseline open | +| 104 | GHSA-6v7q-wjvx-w8wg | high | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.2` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 117 | GHSA-6chq-wfr3-2hj9 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 120 | GHSA-pf86-5x62-jrwf | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 125 | GHSA-q3j6-qgpj-74h6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.1` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | unassigned | baseline open | +| 126 | GHSA-v39h-62p7-jpjc | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.2` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | unassigned | baseline open | +| 127 | GHSA-fv7c-fp4j-7gwp | high | npm | `@babel/plugin-transform-modules-systemjs` | transitive / development | `7.25.9` | `7.29.4` | BABEL + WPS | `@babel/plugin-transform-modules-systemjs@7.25.9 ← @babel/preset-env@7.26.0` | unassigned | baseline open | +| 130 | GHSA-q8qp-cvcw-x6jj | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 136 | GHSA-ph9p-34f9-6g65 | high | npm | `tmp` | transitive / development | `0.2.3` | `0.2.6` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | unassigned | baseline open | +| 137 | GHSA-pmwg-cvhr-8vh7 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 141 | GHSA-j5f8-grm9-p9fc | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 143 | GHSA-p92q-9vqr-4j8v | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 144 | GHSA-3g43-6gmg-66jw | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 148 | GHSA-35jp-ww65-95wh | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 155 | GHSA-hmw2-7cc7-3qxx | high | npm | `form-data` | transitive / development | `4.0.0` | `4.0.6` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 158 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / development | `7.5.10` | `7.5.11` | WPS | `ws@7.5.10 ← webpack-bundle-analyzer@4.10.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 166 | GHSA-xcpc-8h2w-3j85 | high | npm | `adm-zip` | transitive / development | `0.5.16` | `0.6.0` | WEBEXT + WPS | `adm-zip@0.5.16 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 167 | GHSA-395f-4hp3-45gv | high | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.9.0` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | unassigned | baseline open | +| 172 | GHSA-v245-v573-v5vm | high | npm | `linkify-it` | transitive / development | `3.0.3` | `5.0.2` | WPS | `linkify-it@3.0.3 ← markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 173 | GHSA-2p49-hgcm-8545 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.4` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 174 | GHSA-4c8g-83qw-93j6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.3` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | unassigned | baseline open | +| 177 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 178 | GHSA-v2hh-gcrm-f6hx | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.4` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | unassigned | baseline open | +| 181 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `4.1.0` | `4.3.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 182 | GHSA-v56q-mh7h-f735 | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 183 | GHSA-xvcm-6775-5m9r | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 184 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `1.1.11` | `1.1.16` | ESLINT-RESOLVER + WEBEXT + WPS | `brace-expansion@1.1.11 ← minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | unassigned | baseline open | +| 187 | GHSA-jr5f-v2jv-69x6 | high | npm | `axios` | transitive / development | `1.7.7` | `1.8.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 191 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `2.0.1` | `2.1.2` | WEBPACK + WPS | `brace-expansion@2.0.1 ← minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | unassigned | baseline open | +| 24 | GHSA-mwcw-c2x4-8c55 | medium | npm | `nanoid` | transitive / runtime | `3.3.7` | `3.3.8` | BLK | `nanoid@3.3.7 ← postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | +| 29 | GHSA-x4c5-c7rf-jjgv | medium | npm | `@octokit/endpoint` | transitive / runtime | `9.0.5` | `9.0.6` | PGL | `@octokit/endpoint@9.0.5 ← @octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 30 | GHSA-xx4v-prfh-6cgc | medium | npm | `@octokit/request-error` | transitive / runtime | `5.1.0` | `5.1.1` | PGL | `@octokit/request-error@5.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 32 | GHSA-rmvr-2pp2-xj38 | medium | npm | `@octokit/request` | transitive / runtime | `8.4.0` | `8.4.1` | PGL | `@octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | +| 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | PGL | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | +| 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | +| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | +| 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | +| 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | +| 190 | GHSA-qx2v-qp2m-jg93 | medium | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.10` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | +| 193 | GHSA-337j-9hxr-rhxg | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | +| 194 | GHSA-wrjc-x8rr-h8h6 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | +| 36 | GHSA-4www-5p9h-95mh | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.8` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 38 | GHSA-4v9v-hfq4-rm2v | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 39 | GHSA-9jgg-88mc-972h | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 51 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.14.2` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 52 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.1.1` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 53 | GHSA-65ch-62r8-g69g | medium | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | unassigned | baseline open | +| 62 | GHSA-xxjr-mmjv-4gpg | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.17.23` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | unassigned | baseline open | +| 101 | GHSA-3v7f-55p6-f55p | medium | npm | `picomatch` | transitive / development | `2.3.1` | `2.3.2` | ESLINT-RESOLVER + WEBPACK + WPS | `picomatch@2.3.1 ← micromatch@4.0.8 ← ts-loader@9.5.1` | unassigned | baseline open | +| 102 | GHSA-f23m-r3pf-42rh | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | unassigned | baseline open | +| 108 | GHSA-r4q5-vmmm-2653 | medium | npm | `follow-redirects` | transitive / development | `1.15.9` | `1.16.0` | WPS | `follow-redirects@1.15.9 ← axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 109 | GHSA-fvcv-3m26-pcqx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 110 | GHSA-3p68-rc4w-qgx5 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 115 | GHSA-v2v4-37r5-5v8g | medium | npm | `ip-address` | transitive / development | `9.0.5` | `10.1.1` | WPS | `ip-address@9.0.5 ← socks@2.8.3 ← socks-proxy-agent@8.0.4 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 119 | GHSA-3w6x-2g7m-8v23 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 121 | GHSA-m7pr-hjqh-92cm | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 122 | GHSA-445q-vr5w-6q77 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 129 | GHSA-xx6v-rp6x-q39c | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 131 | GHSA-79cf-xcqc-c78w | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.4` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 134 | GHSA-qj8w-gfj5-8c6v | medium | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.5` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | unassigned | baseline open | +| 138 | GHSA-w9j2-pvgh-6h63 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 147 | GHSA-898c-q2cr-xwhg | medium | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 151 | GHSA-6v5v-wf23-fmfq | medium | npm | `markdown-it` | transitive / development | `12.3.2` | `14.2.0` | WPS | `markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 152 | GHSA-v6wh-96g9-6wx3 | medium | npm | `launch-editor` | transitive / development | `2.9.1` | `2.14.1` | WPS | `launch-editor@2.9.1 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 154 | GHSA-mx8g-39q3-5c79 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.5` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 160 | GHSA-64mm-vxmg-q3vj | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.10` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 162 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 163 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.2.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 169 | GHSA-f5vj-f2hx-8m93 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 170 | GHSA-m28w-2pqf-7qgj | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 179 | GHSA-mmx7-hfxf-jppx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 180 | GHSA-7q8q-rj6j-mhjq | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 64 | GHSA-73rr-hh4g-fpgx | low | npm | `diff` | transitive / runtime | `4.0.2` | `4.0.4` | BLK | `diff@4.0.2 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | +| 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 41 | GHSA-76c9-3jph-rj3q | low | npm | `on-headers` | transitive / development | `1.0.2` | `1.1.0` | WPS | `on-headers@1.0.2 ← compression@1.7.4 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 43 | GHSA-52f5-9888-hmc6 | low | npm | `tmp` | transitive / development | `0.2.3` | `0.2.4` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | unassigned | baseline open | +| 65 | GHSA-38r7-794h-5758 | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.0` | WEBPACK | `webpack@5.96.1` | unassigned | baseline open | +| 66 | GHSA-8fgc-7cc6-rx7x | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.1` | WEBPACK | `webpack@5.96.1` | unassigned | baseline open | +| 118 | GHSA-xhjh-pmcv-23jw | low | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 133 | GHSA-vpq2-c234-7xj6 | low | npm | `@tootallnate/once` | transitive / development | `2.0.0` | `2.0.1` | WPS | `@tootallnate/once@2.0.0 ← http-proxy-agent@5.0.0 ← jsdom@20.0.3 ← jest-environment-jsdom@29.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 159 | GHSA-4x5r-pxfx-6jf8 | low | npm | `@babel/core` | transitive / development | `7.25.7` | `7.29.6` | BABEL + WPS | `@babel/core@7.25.7 ← @babel/preset-env@7.26.0` | unassigned | baseline open | + +### Stale Branch Baseline Inventory + +Reachability was evaluated against local `origin/trunk` at `98f7c74d195d0b1ee95e4f9c16c7a9b527149980`. Thirteen named stale branches were present in the live branches API; `crawler` was already absent remotely when captured, so its cached `origin/crawler` ref is retained only as a recovery reference and this maintenance run does not claim to have deleted it. + +| Branch | Baseline tip SHA | Last commit date | Reachable from `origin/trunk` | Associated PR / state | Initial disposition and recovery reference | +| --- | --- | --- | --- | --- | --- | +| `add-navigation` | `55fbcd77ed9f6bcd3bf9528c9898816b02be29ba` | `2024-11-07T17:04:03+01:00` | No | [#98](https://github.com/WordPress/try-wordpress/pull/98), closed (unmerged) | Eligible for deletion only after this child PR merges; recover from the tip SHA or PR #98. | +| `api-docs` | `d6af87dd5891f64539d5dfde819fa2d563095caf` | `2024-10-25T15:34:17+01:00` | No | [#86](https://github.com/WordPress/try-wordpress/pull/86), closed (unmerged) | Eligible for deletion only after this child PR merges; recover from the tip SHA or PR #86. | +| `attempt-twitter` | `09ea6328c0a7553328b1dddf78a2b35958e2fa15` | `2024-08-01T13:25:16+02:00` | No | None found | Preserve: unmerged and no associated PR; recover from the live branch and tip SHA. | +| `crawler` | `ba0be4d3c71b5dfeeff71b9e5d81789cdc0ab27a` | `2024-12-02T12:50:08+04:00` | No (cached tip) | [#131](https://github.com/WordPress/try-wordpress/pull/131), closed (unmerged) | No action: already absent remotely at baseline capture; recover from cached `origin/crawler`, the tip SHA, or PR #131. | +| `devex` | `1f10e37b8b698965abdb3a2c2d7db9d40defa003` | `2024-11-19T16:21:02+04:00` | No | [#123](https://github.com/WordPress/try-wordpress/pull/123), closed (unmerged) | Eligible for deletion only after this child PR merges; recover from the tip SHA or PR #123. | +| `docs/extend` | `361343c169e69bca2357bb4a25d9225f9a774109` | `2024-12-04T18:28:39+04:00` | No | [#125](https://github.com/WordPress/try-wordpress/pull/125), closed (unmerged) | Eligible for deletion only after this child PR merges; recover from the tip SHA or PR #125. | +| `docs-definitions` | `343cbb6e8ab61ed5b6a910ca87b50a1af89e41ed` | `2024-11-22T15:24:36+01:00` | No | [#124](https://github.com/WordPress/try-wordpress/pull/124), closed (unmerged) | Eligible for deletion only after this child PR merges; recover from the tip SHA or PR #124. | +| `feedback_auto_preview_filter` | `0d3ca5c76aec03956f561161376631f334ddbedc` | `2024-11-26T01:10:02+04:00` | No | [#128](https://github.com/WordPress/try-wordpress/pull/128), closed (unmerged) | Eligible for deletion only after this child PR merges; recover from the tip SHA or PR #128. | +| `feedback_simulate_liberation` | `1899e033db7ecf42aeb005aec3dd0c00ca89e55d` | `2024-11-25T19:37:15+04:00` | No | [#126](https://github.com/WordPress/try-wordpress/pull/126), closed (unmerged) | Eligible for deletion only after this child PR merges; recover from the tip SHA or PR #126. | +| `fix-test-wix` | `960f2d793bdf975e39c31304a296c168c0301aff` | `2024-11-12T15:09:21+01:00` | No | None found | Preserve: unmerged and no associated PR; recover from the live branch and tip SHA. | +| `local-playground-client` | `2a34ea44ea3ae8d8abb0c9365a866cbdc65338b5` | `2024-07-24T10:41:15+02:00` | Yes | None found | Eligible for deletion only after this child PR merges because the tip is already reachable; recover from `origin/trunk` or the tip SHA. | +| `npm_package_updates` | `c9070d9d1bdd66ccf7a374d463b45c99e14e7683` | `2024-09-11T21:19:31+04:00` | No | None found | Preserve: unmerged and no associated PR; recover from the live branch and tip SHA. | +| `pages` | `b1ed8fa5872402690a3a7286742337526d42dd10` | `2024-11-07T15:54:07+01:00` | No | [#96](https://github.com/WordPress/try-wordpress/pull/96), closed (unmerged) | Eligible for deletion only after this child PR merges; recover from the tip SHA or PR #96. | +| `schemas` | `85e269198e8f0d2c9d6039af89e1cd5d0188003d` | `2024-12-03T15:19:15+00:00` | No | [#132](https://github.com/WordPress/try-wordpress/pull/132), closed (unmerged) | Eligible for deletion only after this child PR merges; recover from the tip SHA or PR #132. | + +No remote branch was deleted during baseline capture. Any later eligible deletion must be appended here with its deletion result and recovery reference; `attempt-twitter`, `fix-test-wix`, and `npm_package_updates` remain preservation-required unless new factual recoverability evidence satisfies the approved rule. + +### Baseline Validation Record + +- `gh api --paginate 'repos/WordPress/try-wordpress/dependabot/alerts?state=open&per_page=100'` returned 124 rows with 124 unique alert numbers; the captured alert-number set exactly matched the live open set at validation time. +- `gh api --paginate 'repos/WordPress/try-wordpress/branches?per_page=100'` returned thirteen of the fourteen named stale branches and confirmed `crawler` was already absent remotely; `origin/crawler` retained the cached recovery SHA documented above. +- `gh api --paginate 'repos/WordPress/try-wordpress/pulls?state=all&per_page=100&sort=created&direction=asc'` supplied the direct head-branch PR associations and states recorded above. +- `git for-each-ref --format='%(refname:short)%09%(objectname)%09%(committerdate:iso-strict)' refs/remotes/origin` supplied cached/live tip SHAs and commit dates; `git merge-base --is-ancestor origin/trunk` found only `local-playground-client` reachable from the captured `origin/trunk`. +- `source /home/ashfame/.nvm/nvm.sh && nvm use 24 && npm ci` completed under Node `v24.18.0` with npm `11.16.0`; range- and scope-aware comparison against every matching `package-lock.json` package entry, followed by version-qualified `npm explain @ --json` checks for documented representative paths, resolved every npm alert to its locked scope-relevant causal family and representative path. +- Composer lockfile inspection established `phpunit/phpunit@9.6.21` as the direct `require-dev` cause for alert 63; GitHub reports its relationship as `unknown`, so the alert table preserves that API value rather than rewriting it to `direct`. +- `npm audit --json` exited 1 with 125 vulnerable/effect package keys and 143 unique npm GHSA references, while GitHub exposed 123 npm alert rows covering 116 unique npm GHSAs plus one Composer alert. These counts are not expected to match because npm audit reports the npm registry snapshot and propagates advisories through affected package/effect nodes, whereas the approved baseline is the GitHub repository alert-row set; no GitHub alert row was inferred from npm-only data. +- The only baseline advisory with no first patched version is alert 113, `GHSA-rmmh-p597-ppvv` in `showdown`; its causal family remains BLK and remediation must remove the vulnerable dependency through that parent family. From d446193878c6654e7822911cc8d7ba3657b88a9a Mon Sep 17 00:00:00 2001 From: ashfame Date: Mon, 27 Jul 2026 23:52:55 +0400 Subject: [PATCH 03/40] docs(plan): link execution baseline child PR --- plan.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plan.md b/plan.md index 73792617..912470ce 100644 --- a/plan.md +++ b/plan.md @@ -111,7 +111,7 @@ Use Node 24 because the current locked dependencies already install, lint, type- Baseline capture date: 2026-07-27. -The integration branch `agent/maintenance-security-and-hygiene` is represented by commit `500526abbb0d429787402ae6611058f31a9cc7f6` and draft pull request [#199](https://github.com/WordPress/try-wordpress/pull/199), which is open against `trunk`. This execution-baseline child remains documentation-only. +The integration branch `agent/maintenance-security-and-hygiene` is represented by commit `500526abbb0d429787402ae6611058f31a9cc7f6` and draft pull request [#199](https://github.com/WordPress/try-wordpress/pull/199), which is open against `trunk`. Documentation-only execution-baseline child pull request [#200](https://github.com/WordPress/try-wordpress/pull/200) targets the integration branch. ### Baseline Dependabot Summary From c2f1c80f97f528362b9f74862498f4e12a999014 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 00:27:04 +0400 Subject: [PATCH 04/40] fix(deps): secure Playground client paths - upgrade @wp-playground/client to the first source-secure 3.1.38 release - remove vulnerable Playground lockfile paths without unrelated version changes - document resolved, partial, and upstream-blocked alerts --- package-lock.json | 1381 ++++----------------------------------------- package.json | 2 +- plan.md | 58 +- 3 files changed, 138 insertions(+), 1303 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6423cd0f..4cb66b6e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,7 +7,7 @@ "dependencies": { "@wordpress/block-library": "^9.12.0", "@wordpress/blocks": "^13.10.0", - "@wp-playground/client": "^1.0.13", + "@wp-playground/client": "^3.1.38", "react": "^18.3.1", "react-dom": "^18.3.1", "react-router-dom": "^6.28.0", @@ -3173,656 +3173,6 @@ "node": ">=12.4.0" } }, - "node_modules/@octokit/app": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/@octokit/app/-/app-14.1.0.tgz", - "integrity": "sha512-g3uEsGOQCBl1+W1rgfwoRFUIR6PtvB2T1E4RpygeUU5LrLvlOqcxrt5lfykIeRpUPpupreGJUYl70fqMDXdTpw==", - "license": "MIT", - "dependencies": { - "@octokit/auth-app": "^6.0.0", - "@octokit/auth-unauthenticated": "^5.0.0", - "@octokit/core": "^5.0.0", - "@octokit/oauth-app": "^6.0.0", - "@octokit/plugin-paginate-rest": "^9.0.0", - "@octokit/types": "^12.0.0", - "@octokit/webhooks": "^12.0.4" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/auth-app": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/@octokit/auth-app/-/auth-app-6.1.3.tgz", - "integrity": "sha512-dcaiteA6Y/beAlDLZOPNReN3FGHu+pARD6OHfh3T9f3EO09++ec+5wt3KtGGSSs2Mp5tI8fQwdMOEnrzBLfgUA==", - "license": "MIT", - "dependencies": { - "@octokit/auth-oauth-app": "^7.1.0", - "@octokit/auth-oauth-user": "^4.1.0", - "@octokit/request": "^8.3.1", - "@octokit/request-error": "^5.1.0", - "@octokit/types": "^13.1.0", - "deprecation": "^2.3.1", - "lru-cache": "npm:@wolfy1339/lru-cache@^11.0.2-patch.1", - "universal-github-app-jwt": "^1.1.2", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/auth-app/node_modules/@octokit/openapi-types": { - "version": "22.2.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-22.2.0.tgz", - "integrity": "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==", - "license": "MIT" - }, - "node_modules/@octokit/auth-app/node_modules/@octokit/types": { - "version": "13.6.2", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.6.2.tgz", - "integrity": "sha512-WpbZfZUcZU77DrSW4wbsSgTPfKcp286q3ItaIgvSbBpZJlu6mnYXAkjZz6LVZPXkEvLIM8McanyZejKTYUHipA==", - "license": "MIT", - "dependencies": { - "@octokit/openapi-types": "^22.2.0" - } - }, - "node_modules/@octokit/auth-app/node_modules/lru-cache": { - "name": "@wolfy1339/lru-cache", - "version": "11.0.2-patch.1", - "resolved": "https://registry.npmjs.org/@wolfy1339/lru-cache/-/lru-cache-11.0.2-patch.1.tgz", - "integrity": "sha512-BgYZfL2ADCXKOw2wJtkM3slhHotawWkgIRRxq4wEybnZQPjvAp71SPX35xepMykTw8gXlzWcWPTY31hlbnRsDA==", - "license": "ISC", - "engines": { - "node": "18 >=18.20 || 20 || >=22" - } - }, - "node_modules/@octokit/auth-oauth-app": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@octokit/auth-oauth-app/-/auth-oauth-app-7.1.0.tgz", - "integrity": "sha512-w+SyJN/b0l/HEb4EOPRudo7uUOSW51jcK1jwLa+4r7PA8FPFpoxEnHBHMITqCsc/3Vo2qqFjgQfz/xUUvsSQnA==", - "license": "MIT", - "dependencies": { - "@octokit/auth-oauth-device": "^6.1.0", - "@octokit/auth-oauth-user": "^4.1.0", - "@octokit/request": "^8.3.1", - "@octokit/types": "^13.0.0", - "@types/btoa-lite": "^1.0.0", - "btoa-lite": "^1.0.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/auth-oauth-app/node_modules/@octokit/openapi-types": { - "version": "22.2.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-22.2.0.tgz", - "integrity": "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==", - "license": "MIT" - }, - "node_modules/@octokit/auth-oauth-app/node_modules/@octokit/types": { - "version": "13.6.2", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.6.2.tgz", - "integrity": "sha512-WpbZfZUcZU77DrSW4wbsSgTPfKcp286q3ItaIgvSbBpZJlu6mnYXAkjZz6LVZPXkEvLIM8McanyZejKTYUHipA==", - "license": "MIT", - "dependencies": { - "@octokit/openapi-types": "^22.2.0" - } - }, - "node_modules/@octokit/auth-oauth-device": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@octokit/auth-oauth-device/-/auth-oauth-device-6.1.0.tgz", - "integrity": "sha512-FNQ7cb8kASufd6Ej4gnJ3f1QB5vJitkoV1O0/g6e6lUsQ7+VsSNRHRmFScN2tV4IgKA12frrr/cegUs0t+0/Lw==", - "license": "MIT", - "dependencies": { - "@octokit/oauth-methods": "^4.1.0", - "@octokit/request": "^8.3.1", - "@octokit/types": "^13.0.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/auth-oauth-device/node_modules/@octokit/openapi-types": { - "version": "22.2.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-22.2.0.tgz", - "integrity": "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==", - "license": "MIT" - }, - "node_modules/@octokit/auth-oauth-device/node_modules/@octokit/types": { - "version": "13.6.2", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.6.2.tgz", - "integrity": "sha512-WpbZfZUcZU77DrSW4wbsSgTPfKcp286q3ItaIgvSbBpZJlu6mnYXAkjZz6LVZPXkEvLIM8McanyZejKTYUHipA==", - "license": "MIT", - "dependencies": { - "@octokit/openapi-types": "^22.2.0" - } - }, - "node_modules/@octokit/auth-oauth-user": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@octokit/auth-oauth-user/-/auth-oauth-user-4.1.0.tgz", - "integrity": "sha512-FrEp8mtFuS/BrJyjpur+4GARteUCrPeR/tZJzD8YourzoVhRics7u7we/aDcKv+yywRNwNi/P4fRi631rG/OyQ==", - "license": "MIT", - "dependencies": { - "@octokit/auth-oauth-device": "^6.1.0", - "@octokit/oauth-methods": "^4.1.0", - "@octokit/request": "^8.3.1", - "@octokit/types": "^13.0.0", - "btoa-lite": "^1.0.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/auth-oauth-user/node_modules/@octokit/openapi-types": { - "version": "22.2.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-22.2.0.tgz", - "integrity": "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==", - "license": "MIT" - }, - "node_modules/@octokit/auth-oauth-user/node_modules/@octokit/types": { - "version": "13.6.2", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.6.2.tgz", - "integrity": "sha512-WpbZfZUcZU77DrSW4wbsSgTPfKcp286q3ItaIgvSbBpZJlu6mnYXAkjZz6LVZPXkEvLIM8McanyZejKTYUHipA==", - "license": "MIT", - "dependencies": { - "@octokit/openapi-types": "^22.2.0" - } - }, - "node_modules/@octokit/auth-token": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-4.0.0.tgz", - "integrity": "sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==", - "license": "MIT", - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/auth-unauthenticated": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@octokit/auth-unauthenticated/-/auth-unauthenticated-5.0.1.tgz", - "integrity": "sha512-oxeWzmBFxWd+XolxKTc4zr+h3mt+yofn4r7OfoIkR/Cj/o70eEGmPsFbueyJE2iBAGpjgTnEOKM3pnuEGVmiqg==", - "license": "MIT", - "dependencies": { - "@octokit/request-error": "^5.0.0", - "@octokit/types": "^12.0.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/core": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@octokit/core/-/core-5.2.0.tgz", - "integrity": "sha512-1LFfa/qnMQvEOAdzlQymH0ulepxbxnCYAKJZfMci/5XJyIHWgEYnDmgnKakbTh7CH2tFQ5O60oYDvns4i9RAIg==", - "license": "MIT", - "dependencies": { - "@octokit/auth-token": "^4.0.0", - "@octokit/graphql": "^7.1.0", - "@octokit/request": "^8.3.1", - "@octokit/request-error": "^5.1.0", - "@octokit/types": "^13.0.0", - "before-after-hook": "^2.2.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/core/node_modules/@octokit/openapi-types": { - "version": "22.2.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-22.2.0.tgz", - "integrity": "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==", - "license": "MIT" - }, - "node_modules/@octokit/core/node_modules/@octokit/types": { - "version": "13.6.2", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.6.2.tgz", - "integrity": "sha512-WpbZfZUcZU77DrSW4wbsSgTPfKcp286q3ItaIgvSbBpZJlu6mnYXAkjZz6LVZPXkEvLIM8McanyZejKTYUHipA==", - "license": "MIT", - "dependencies": { - "@octokit/openapi-types": "^22.2.0" - } - }, - "node_modules/@octokit/endpoint": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-9.0.5.tgz", - "integrity": "sha512-ekqR4/+PCLkEBF6qgj8WqJfvDq65RH85OAgrtnVp1mSxaXF03u2xW/hUdweGS5654IlC0wkNYC18Z50tSYTAFw==", - "license": "MIT", - "dependencies": { - "@octokit/types": "^13.1.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/endpoint/node_modules/@octokit/openapi-types": { - "version": "22.2.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-22.2.0.tgz", - "integrity": "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==", - "license": "MIT" - }, - "node_modules/@octokit/endpoint/node_modules/@octokit/types": { - "version": "13.6.2", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.6.2.tgz", - "integrity": "sha512-WpbZfZUcZU77DrSW4wbsSgTPfKcp286q3ItaIgvSbBpZJlu6mnYXAkjZz6LVZPXkEvLIM8McanyZejKTYUHipA==", - "license": "MIT", - "dependencies": { - "@octokit/openapi-types": "^22.2.0" - } - }, - "node_modules/@octokit/graphql": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-7.1.0.tgz", - "integrity": "sha512-r+oZUH7aMFui1ypZnAvZmn0KSqAUgE1/tUXIWaqUCa1758ts/Jio84GZuzsvUkme98kv0WFY8//n0J1Z+vsIsQ==", - "license": "MIT", - "dependencies": { - "@octokit/request": "^8.3.0", - "@octokit/types": "^13.0.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/graphql/node_modules/@octokit/openapi-types": { - "version": "22.2.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-22.2.0.tgz", - "integrity": "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==", - "license": "MIT" - }, - "node_modules/@octokit/graphql/node_modules/@octokit/types": { - "version": "13.6.2", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.6.2.tgz", - "integrity": "sha512-WpbZfZUcZU77DrSW4wbsSgTPfKcp286q3ItaIgvSbBpZJlu6mnYXAkjZz6LVZPXkEvLIM8McanyZejKTYUHipA==", - "license": "MIT", - "dependencies": { - "@octokit/openapi-types": "^22.2.0" - } - }, - "node_modules/@octokit/oauth-app": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@octokit/oauth-app/-/oauth-app-6.1.0.tgz", - "integrity": "sha512-nIn/8eUJ/BKUVzxUXd5vpzl1rwaVxMyYbQkNZjHrF7Vk/yu98/YDF/N2KeWO7uZ0g3b5EyiFXFkZI8rJ+DH1/g==", - "license": "MIT", - "dependencies": { - "@octokit/auth-oauth-app": "^7.0.0", - "@octokit/auth-oauth-user": "^4.0.0", - "@octokit/auth-unauthenticated": "^5.0.0", - "@octokit/core": "^5.0.0", - "@octokit/oauth-authorization-url": "^6.0.2", - "@octokit/oauth-methods": "^4.0.0", - "@types/aws-lambda": "^8.10.83", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/oauth-authorization-url": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@octokit/oauth-authorization-url/-/oauth-authorization-url-6.0.2.tgz", - "integrity": "sha512-CdoJukjXXxqLNK4y/VOiVzQVjibqoj/xHgInekviUJV73y/BSIcwvJ/4aNHPBPKcPWFnd4/lO9uqRV65jXhcLA==", - "license": "MIT", - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/oauth-methods": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@octokit/oauth-methods/-/oauth-methods-4.1.0.tgz", - "integrity": "sha512-4tuKnCRecJ6CG6gr0XcEXdZtkTDbfbnD5oaHBmLERTjTMZNi2CbfEHZxPU41xXLDG4DfKf+sonu00zvKI9NSbw==", - "license": "MIT", - "dependencies": { - "@octokit/oauth-authorization-url": "^6.0.2", - "@octokit/request": "^8.3.1", - "@octokit/request-error": "^5.1.0", - "@octokit/types": "^13.0.0", - "btoa-lite": "^1.0.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/oauth-methods/node_modules/@octokit/openapi-types": { - "version": "22.2.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-22.2.0.tgz", - "integrity": "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==", - "license": "MIT" - }, - "node_modules/@octokit/oauth-methods/node_modules/@octokit/types": { - "version": "13.6.2", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.6.2.tgz", - "integrity": "sha512-WpbZfZUcZU77DrSW4wbsSgTPfKcp286q3ItaIgvSbBpZJlu6mnYXAkjZz6LVZPXkEvLIM8McanyZejKTYUHipA==", - "license": "MIT", - "dependencies": { - "@octokit/openapi-types": "^22.2.0" - } - }, - "node_modules/@octokit/openapi-types": { - "version": "20.0.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-20.0.0.tgz", - "integrity": "sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA==", - "license": "MIT" - }, - "node_modules/@octokit/plugin-paginate-graphql": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-graphql/-/plugin-paginate-graphql-4.0.1.tgz", - "integrity": "sha512-R8ZQNmrIKKpHWC6V2gum4x9LG2qF1RxRjo27gjQcG3j+vf2tLsEfE7I/wRWEPzYMaenr1M+qDAtNcwZve1ce1A==", - "license": "MIT", - "engines": { - "node": ">= 18" - }, - "peerDependencies": { - "@octokit/core": ">=5" - } - }, - "node_modules/@octokit/plugin-paginate-rest": { - "version": "9.2.1", - "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-9.2.1.tgz", - "integrity": "sha512-wfGhE/TAkXZRLjksFXuDZdmGnJQHvtU/joFQdweXUgzo1XwvBCD4o4+75NtFfjfLK5IwLf9vHTfSiU3sLRYpRw==", - "license": "MIT", - "dependencies": { - "@octokit/types": "^12.6.0" - }, - "engines": { - "node": ">= 18" - }, - "peerDependencies": { - "@octokit/core": "5" - } - }, - "node_modules/@octokit/plugin-rest-endpoint-methods": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-10.4.1.tgz", - "integrity": "sha512-xV1b+ceKV9KytQe3zCVqjg+8GTGfDYwaT1ATU5isiUyVtlVAO3HNdzpS4sr4GBx4hxQ46s7ITtZrAsxG22+rVg==", - "license": "MIT", - "dependencies": { - "@octokit/types": "^12.6.0" - }, - "engines": { - "node": ">= 18" - }, - "peerDependencies": { - "@octokit/core": "5" - } - }, - "node_modules/@octokit/plugin-retry": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@octokit/plugin-retry/-/plugin-retry-6.0.1.tgz", - "integrity": "sha512-SKs+Tz9oj0g4p28qkZwl/topGcb0k0qPNX/i7vBKmDsjoeqnVfFUquqrE/O9oJY7+oLzdCtkiWSXLpLjvl6uog==", - "license": "MIT", - "dependencies": { - "@octokit/request-error": "^5.0.0", - "@octokit/types": "^12.0.0", - "bottleneck": "^2.15.3" - }, - "engines": { - "node": ">= 18" - }, - "peerDependencies": { - "@octokit/core": ">=5" - } - }, - "node_modules/@octokit/plugin-throttling": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-8.2.0.tgz", - "integrity": "sha512-nOpWtLayKFpgqmgD0y3GqXafMFuKcA4tRPZIfu7BArd2lEZeb1988nhWhwx4aZWmjDmUfdgVf7W+Tt4AmvRmMQ==", - "license": "MIT", - "dependencies": { - "@octokit/types": "^12.2.0", - "bottleneck": "^2.15.3" - }, - "engines": { - "node": ">= 18" - }, - "peerDependencies": { - "@octokit/core": "^5.0.0" - } - }, - "node_modules/@octokit/request": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-8.4.0.tgz", - "integrity": "sha512-9Bb014e+m2TgBeEJGEbdplMVWwPmL1FPtggHQRkV+WVsMggPtEkLKPlcVYm/o8xKLkpJ7B+6N8WfQMtDLX2Dpw==", - "license": "MIT", - "dependencies": { - "@octokit/endpoint": "^9.0.1", - "@octokit/request-error": "^5.1.0", - "@octokit/types": "^13.1.0", - "universal-user-agent": "^6.0.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/request-error": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-5.1.0.tgz", - "integrity": "sha512-GETXfE05J0+7H2STzekpKObFe765O5dlAKUTLNGeH+x47z7JjXHfsHKo5z21D/o/IOZTUEI6nyWyR+bZVP/n5Q==", - "license": "MIT", - "dependencies": { - "@octokit/types": "^13.1.0", - "deprecation": "^2.0.0", - "once": "^1.4.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/request-error/node_modules/@octokit/openapi-types": { - "version": "22.2.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-22.2.0.tgz", - "integrity": "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==", - "license": "MIT" - }, - "node_modules/@octokit/request-error/node_modules/@octokit/types": { - "version": "13.6.2", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.6.2.tgz", - "integrity": "sha512-WpbZfZUcZU77DrSW4wbsSgTPfKcp286q3ItaIgvSbBpZJlu6mnYXAkjZz6LVZPXkEvLIM8McanyZejKTYUHipA==", - "license": "MIT", - "dependencies": { - "@octokit/openapi-types": "^22.2.0" - } - }, - "node_modules/@octokit/request/node_modules/@octokit/openapi-types": { - "version": "22.2.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-22.2.0.tgz", - "integrity": "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==", - "license": "MIT" - }, - "node_modules/@octokit/request/node_modules/@octokit/types": { - "version": "13.6.2", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.6.2.tgz", - "integrity": "sha512-WpbZfZUcZU77DrSW4wbsSgTPfKcp286q3ItaIgvSbBpZJlu6mnYXAkjZz6LVZPXkEvLIM8McanyZejKTYUHipA==", - "license": "MIT", - "dependencies": { - "@octokit/openapi-types": "^22.2.0" - } - }, - "node_modules/@octokit/types": { - "version": "12.6.0", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-12.6.0.tgz", - "integrity": "sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw==", - "license": "MIT", - "dependencies": { - "@octokit/openapi-types": "^20.0.0" - } - }, - "node_modules/@octokit/webhooks": { - "version": "12.3.1", - "resolved": "https://registry.npmjs.org/@octokit/webhooks/-/webhooks-12.3.1.tgz", - "integrity": "sha512-BVwtWE3rRXB9IugmQTfKspqjNa8q+ab73ddkV9k1Zok3XbuOxJUi4lTYk5zBZDhfWb/Y2H+RO9Iggm25gsqeow==", - "license": "MIT", - "dependencies": { - "@octokit/request-error": "^5.0.0", - "@octokit/webhooks-methods": "^4.1.0", - "@octokit/webhooks-types": "7.6.1", - "aggregate-error": "^3.1.0" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/webhooks-methods": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@octokit/webhooks-methods/-/webhooks-methods-4.1.0.tgz", - "integrity": "sha512-zoQyKw8h9STNPqtm28UGOYFE7O6D4Il8VJwhAtMHFt2C4L0VQT1qGKLeefUOqHNs1mNRYSadVv7x0z8U2yyeWQ==", - "license": "MIT", - "engines": { - "node": ">= 18" - } - }, - "node_modules/@octokit/webhooks-types": { - "version": "7.6.1", - "resolved": "https://registry.npmjs.org/@octokit/webhooks-types/-/webhooks-types-7.6.1.tgz", - "integrity": "sha512-S8u2cJzklBC0FgTwWVLaM8tMrDuDMVE4xiTK4EYXM9GntyvrdbSoxqDQa+Fh57CCNApyIpyeqPhhFEmHPfrXgw==", - "license": "MIT" - }, - "node_modules/@php-wasm/fs-journal": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@php-wasm/fs-journal/-/fs-journal-1.0.13.tgz", - "integrity": "sha512-0F7xIrwBvvJ2bnwcllpqji8eJo0H/4krDd58XqzHDBw9FRd4ic/qnFXYPw+OA/vC9MFePsTyk/I0S18wiu1X4A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@php-wasm/logger": "1.0.13", - "@php-wasm/node": "1.0.13", - "@php-wasm/universal": "1.0.13", - "@php-wasm/util": "1.0.13", - "comlink": "^4.4.1", - "events": "3.3.0", - "express": "4.19.2", - "ini": "4.1.2", - "wasm-feature-detect": "1.8.0", - "ws": "8.18.0", - "yargs": "17.7.2" - }, - "engines": { - "node": ">=18.18.0", - "npm": ">=8.11.0" - } - }, - "node_modules/@php-wasm/logger": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@php-wasm/logger/-/logger-1.0.13.tgz", - "integrity": "sha512-18HpLEFTIfkxwAJ0GcF2r+2zvrJBarwuVMhug5lTzWdWdJavNB/KpQbF57CWteZbsGu+NHvhBObUd93QPM5WeA==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@php-wasm/node-polyfills": "1.0.13" - }, - "engines": { - "node": ">=18.18.0", - "npm": ">=8.11.0" - } - }, - "node_modules/@php-wasm/node": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@php-wasm/node/-/node-1.0.13.tgz", - "integrity": "sha512-fRcDW/bVT80nXpZ96XhSAA26RDLjTdU7dEzX66Y2OfN7R/jiNY++Ls5EEUsR6qEKd6CrdL6xgPZBlS2QhG0wjw==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@php-wasm/logger": "1.0.13", - "@php-wasm/node-polyfills": "1.0.13", - "@php-wasm/universal": "1.0.13", - "@php-wasm/util": "1.0.13", - "@wp-playground/common": "1.0.13", - "@wp-playground/wordpress": "1.0.13", - "comlink": "^4.4.1", - "events": "3.3.0", - "express": "4.19.2", - "ini": "4.1.2", - "wasm-feature-detect": "1.8.0", - "ws": "8.18.0", - "yargs": "17.7.2" - }, - "engines": { - "node": ">=18.18.0", - "npm": ">=8.11.0" - } - }, - "node_modules/@php-wasm/node-polyfills": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@php-wasm/node-polyfills/-/node-polyfills-1.0.13.tgz", - "integrity": "sha512-Blr/d8RXGvVeaZHcfW9cVUHjppkcyTJien2f3F7wVuF3oH7k2wsBgVp2cOHsAvTU3ljV6C9h/xBa+5DU3r0LcA==", - "license": "GPL-2.0-or-later" - }, - "node_modules/@php-wasm/progress": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@php-wasm/progress/-/progress-1.0.13.tgz", - "integrity": "sha512-kgBIZp8J5O7143zCjE/DfDVAUIwAsGC/YkObBx/funggHdZjCwKpry9aaJZauD0Aob155iPFx/Af0jJSM7bY1g==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@php-wasm/logger": "1.0.13", - "@php-wasm/node-polyfills": "1.0.13" - }, - "engines": { - "node": ">=18.18.0", - "npm": ">=8.11.0" - } - }, - "node_modules/@php-wasm/stream-compression": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@php-wasm/stream-compression/-/stream-compression-1.0.13.tgz", - "integrity": "sha512-oLSuDEFaJ095G0tvMcvnVPWEPo7oq2DRVrhTk6i18XLR7mW3pBprcFHN9n+ZMyqg5j4vBRgKIxiKs5y2CzQjbg==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@php-wasm/node-polyfills": "1.0.13", - "@php-wasm/util": "1.0.13" - } - }, - "node_modules/@php-wasm/universal": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@php-wasm/universal/-/universal-1.0.13.tgz", - "integrity": "sha512-iX5RDB3WlVEsD0urLxMEKr6kheuKKxKkKgCKm8X/03Zq7dJVJumMA4s1HSAbRZs5JfbB6RG9PfXGjbYJWy+bBg==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@php-wasm/logger": "1.0.13", - "@php-wasm/node-polyfills": "1.0.13", - "@php-wasm/progress": "1.0.13", - "@php-wasm/stream-compression": "1.0.13", - "@php-wasm/util": "1.0.13", - "comlink": "^4.4.1", - "ini": "4.1.2" - }, - "engines": { - "node": ">=18.18.0", - "npm": ">=8.11.0" - } - }, - "node_modules/@php-wasm/util": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@php-wasm/util/-/util-1.0.13.tgz", - "integrity": "sha512-mHrV67oe6o7j8UdwruOA3Qc341PNq9xxOTmrNi4uAyJOCDqpTyYxAziqmdNBHJTVBfDGdSG+rezHZgsXFUq5cA==", - "engines": { - "node": ">=18.18.0", - "npm": ">=8.11.0" - } - }, - "node_modules/@php-wasm/web": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@php-wasm/web/-/web-1.0.13.tgz", - "integrity": "sha512-85082d2cee1C+ZUMl5ZZlnh5xX4iEfeGgmZpciICcf7Kqg2MU5NGP+LJYklowTSf4mDWR8oumPUtIxJU40oEPw==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@php-wasm/fs-journal": "1.0.13", - "@php-wasm/logger": "1.0.13", - "@php-wasm/universal": "1.0.13", - "@php-wasm/util": "1.0.13", - "comlink": "^4.4.1", - "events": "3.3.0", - "express": "4.19.2", - "ini": "4.1.2", - "wasm-feature-detect": "1.8.0", - "ws": "8.18.0", - "yargs": "17.7.2" - }, - "engines": { - "node": ">=16.15.1", - "npm": ">=8.11.0" - } - }, "node_modules/@pkgr/core": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", @@ -4982,12 +4332,6 @@ "@types/readdir-glob": "*" } }, - "node_modules/@types/aws-lambda": { - "version": "8.10.146", - "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.146.tgz", - "integrity": "sha512-3BaDXYTh0e6UCJYL/jwV/3+GRslSc08toAiZSmleYtkAUyV5rtvdPYxrG/88uqvTuT6sb27WE9OS90ZNTIuQ0g==", - "license": "MIT" - }, "node_modules/@types/babel__core": { "version": "7.20.5", "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", @@ -5054,12 +4398,6 @@ "@types/node": "*" } }, - "node_modules/@types/btoa-lite": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@types/btoa-lite/-/btoa-lite-1.0.2.tgz", - "integrity": "sha512-ZYbcE2x7yrvNFJiU7xJGrpF/ihpkM7zKgw8bha3LNJSesvTtUNxbpzaT7WXBIryf6jovisrxTBvymxMeLLj1Mg==", - "license": "MIT" - }, "node_modules/@types/chrome": { "version": "0.0.281", "resolved": "https://registry.npmjs.org/@types/chrome/-/chrome-0.0.281.tgz", @@ -5281,15 +4619,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@types/jsonwebtoken": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-9.0.7.tgz", - "integrity": "sha512-ugo316mmTYBl2g81zDFnZ7cfxlut3o+/EQdaP7J8QN2kY6lJ22hmQYCK5EHcJHbrW+dkCGSCPgbG8JtYj6qSrg==", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/mime": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", @@ -10255,318 +9584,14 @@ "npm": ">=8.19.2" } }, - "node_modules/@wp-playground/blueprints": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@wp-playground/blueprints/-/blueprints-1.0.13.tgz", - "integrity": "sha512-YTSBNiyw4USyuQdR1tX/DN/mWTkGYwUKwiEfMbmZo97+GMEiFi2qH7h7uBb5omF9YObKr22+VFRyRepWVGeZdA==", - "dependencies": { - "@php-wasm/logger": "1.0.13", - "@php-wasm/node": "1.0.13", - "@php-wasm/node-polyfills": "1.0.13", - "@php-wasm/progress": "1.0.13", - "@php-wasm/universal": "1.0.13", - "@php-wasm/util": "1.0.13", - "@wp-playground/common": "1.0.13", - "@wp-playground/storage": "1.0.13", - "@wp-playground/wordpress": "1.0.13", - "ajv": "8.12.0", - "async-lock": "1.4.1", - "buffer": "6.0.3", - "clean-git-ref": "2.0.1", - "comlink": "^4.4.1", - "crc-32": "1.2.2", - "diff3": "0.0.4", - "ignore": "5.2.4", - "ini": "4.1.2", - "minimisted": "2.0.1", - "octokit": "3.1.1", - "pako": "1.0.10", - "pify": "5.0.0", - "readable-stream": "3.6.2", - "sha.js": "2.4.11", - "simple-get": "4.0.1", - "wasm-feature-detect": "1.8.0" - }, - "engines": { - "node": ">=18.18.0", - "npm": ">=8.11.0" - } - }, - "node_modules/@wp-playground/blueprints/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/@wp-playground/blueprints/node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/@wp-playground/blueprints/node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/@wp-playground/blueprints/node_modules/pako": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz", - "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==", - "license": "(MIT AND Zlib)" - }, - "node_modules/@wp-playground/blueprints/node_modules/pify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", - "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@wp-playground/client": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@wp-playground/client/-/client-1.0.13.tgz", - "integrity": "sha512-TW5SA3lMch1ai/ronBc5cJdXc835dqyDgoKf17slkrd6ytOcJ9o1znwQbL95zoycH26cOL4jQp67hN82B8ZSkA==", + "version": "3.1.38", + "resolved": "https://registry.npmjs.org/@wp-playground/client/-/client-3.1.38.tgz", + "integrity": "sha512-Zw2/i0zbt8CMf4oVAdtWvQt1QXrH+VpO/v0X6XMn/odiSznLHxA8HM7fdS57WVdfVpF5w1VQtHa5cf0sOG02kg==", "license": "GPL-2.0-or-later", - "dependencies": { - "@php-wasm/logger": "1.0.13", - "@php-wasm/progress": "1.0.13", - "@php-wasm/universal": "1.0.13", - "@php-wasm/util": "1.0.13", - "@php-wasm/web": "1.0.13", - "@wp-playground/blueprints": "1.0.13", - "@wp-playground/remote": "1.0.13", - "ajv": "8.12.0", - "async-lock": "1.4.1", - "buffer": "6.0.3", - "clean-git-ref": "2.0.1", - "comlink": "^4.4.1", - "crc-32": "1.2.2", - "diff3": "0.0.4", - "ignore": "5.2.4", - "ini": "4.1.2", - "minimisted": "2.0.1", - "octokit": "3.1.1", - "pako": "1.0.10", - "pify": "5.0.0", - "readable-stream": "3.6.2", - "sha.js": "2.4.11", - "simple-get": "4.0.1", - "wasm-feature-detect": "1.8.0" - }, - "engines": { - "node": ">=18.18.0", - "npm": ">=8.11.0" - } - }, - "node_modules/@wp-playground/client/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/@wp-playground/client/node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/@wp-playground/client/node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "license": "MIT", "engines": { - "node": ">= 4" - } - }, - "node_modules/@wp-playground/client/node_modules/pako": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz", - "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==", - "license": "(MIT AND Zlib)" - }, - "node_modules/@wp-playground/client/node_modules/pify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", - "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@wp-playground/common": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@wp-playground/common/-/common-1.0.13.tgz", - "integrity": "sha512-yL/ClfsWFLdjXnREw4l2dgthY40NxqbnKqoqKZqI68k4AiaOXoqcnrpbwBR2tnA20akwvTH1OeY1UueR1F3+3w==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@php-wasm/universal": "1.0.13", - "@php-wasm/util": "1.0.13", - "comlink": "^4.4.1", - "ini": "4.1.2" - }, - "engines": { - "node": ">=18.18.0", - "npm": ">=8.11.0" - } - }, - "node_modules/@wp-playground/remote": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@wp-playground/remote/-/remote-1.0.13.tgz", - "integrity": "sha512-onrtnvfRxHp5iMIvLnUIBBPGh/qhRsWju95I3u5D2ZXTidYNe7jSHLFf8JgLg4hee1VVutfVn5w3butWZ8D8nA==", - "license": "GPL-2.0-or-later" - }, - "node_modules/@wp-playground/storage": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@wp-playground/storage/-/storage-1.0.13.tgz", - "integrity": "sha512-WmJch3qC1CgpcH55pLLpQ78JeIEi9u3sNm7guk42p15GnFR1l+BvQ+KegNXW8KHgU3fAlxQNL6yGCTcMoxdJyw==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@php-wasm/universal": "1.0.13", - "@php-wasm/util": "1.0.13", - "@php-wasm/web": "1.0.13", - "async-lock": "^1.4.1", - "buffer": "6.0.3", - "clean-git-ref": "^2.0.1", - "comlink": "^4.4.1", - "crc-32": "^1.2.0", - "diff3": "0.0.3", - "events": "3.3.0", - "express": "4.19.2", - "ignore": "^5.1.4", - "ini": "4.1.2", - "minimisted": "^2.0.0", - "octokit": "3.1.1", - "pako": "^1.0.10", - "pify": "^4.0.1", - "readable-stream": "^3.4.0", - "sha.js": "^2.4.9", - "simple-get": "^4.0.1", - "wasm-feature-detect": "1.8.0", - "ws": "8.18.0", - "yargs": "17.7.2" - } - }, - "node_modules/@wp-playground/storage/node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/@wp-playground/storage/node_modules/diff3": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/diff3/-/diff3-0.0.3.tgz", - "integrity": "sha512-iSq8ngPOt0K53A6eVr4d5Kn6GNrM2nQZtC740pzIriHtn4pOQ2lyzEXQMBeVcWERN0ye7fhBsk9PbLLQOnUx/g==", - "license": "MIT" - }, - "node_modules/@wp-playground/wordpress": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@wp-playground/wordpress/-/wordpress-1.0.13.tgz", - "integrity": "sha512-QKiqxIpvg302AI3XUPsC0eGoCq4IyGfdsLcTBzio8DEbE7ieRJouv8E+VRGmq8QHuucQWE1zypMEub54IUVD8A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@php-wasm/logger": "1.0.13", - "@php-wasm/node": "1.0.13", - "@php-wasm/universal": "1.0.13", - "@php-wasm/util": "1.0.13", - "@wp-playground/common": "1.0.13", - "comlink": "^4.4.1", - "events": "3.3.0", - "express": "4.19.2", - "ini": "4.1.2", - "wasm-feature-detect": "1.8.0", - "ws": "8.18.0", - "yargs": "17.7.2" - }, - "engines": { - "node": ">=18.18.0", - "npm": ">=8.11.0" + "node": ">=20.10.0", + "npm": ">=10.2.3" } }, "node_modules/@xtuc/ieee754": { @@ -10608,6 +9633,7 @@ "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, "license": "MIT", "dependencies": { "mime-types": "~2.1.34", @@ -10897,6 +9923,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, "license": "MIT", "dependencies": { "clean-stack": "^2.0.0", @@ -11030,6 +10057,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -11228,6 +10256,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "dev": true, "license": "MIT" }, "node_modules/array-includes": { @@ -11438,12 +10467,6 @@ "dev": true, "license": "MIT" }, - "node_modules/async-lock": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/async-lock/-/async-lock-1.4.1.tgz", - "integrity": "sha512-Az2ZTpuytrtqENulXwO3GGv1Bztugx6TT37NIo7imr/Qo0gsYiGtSdBa2B6fsXhTpVZDNfu1Qn3pk531e3q+nQ==", - "license": "MIT" - }, "node_modules/asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -11883,12 +10906,6 @@ "dev": true, "license": "MIT" }, - "node_modules/before-after-hook": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", - "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==", - "license": "Apache-2.0" - }, "node_modules/big-integer": { "version": "1.6.52", "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", @@ -11945,6 +10962,7 @@ "version": "1.20.2", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "dev": true, "license": "MIT", "dependencies": { "bytes": "3.1.2", @@ -11969,6 +10987,7 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -11978,6 +10997,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, "license": "MIT" }, "node_modules/bonjour-service": { @@ -11998,12 +11018,6 @@ "dev": true, "license": "ISC" }, - "node_modules/bottleneck": { - "version": "2.19.5", - "resolved": "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz", - "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==", - "license": "MIT" - }, "node_modules/boxen": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/boxen/-/boxen-8.0.1.tgz", @@ -12199,12 +11213,6 @@ "node-int64": "^0.4.0" } }, - "node_modules/btoa-lite": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/btoa-lite/-/btoa-lite-1.0.0.tgz", - "integrity": "sha512-gvW7InbIyF8AicrqWoptdW08pUxuhq8BEgowNajy9RhiE86fmGAGl+bLKo6oB8QP0CkqHLowfN0oJdKC/J6LbA==", - "license": "MIT" - }, "node_modules/buffer": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", @@ -12240,12 +11248,6 @@ "node": "*" } }, - "node_modules/buffer-equal-constant-time": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", - "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==", - "license": "BSD-3-Clause" - }, "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -12286,6 +11288,7 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.8" @@ -12295,6 +11298,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dev": true, "license": "MIT", "dependencies": { "es-define-property": "^1.0.0", @@ -12727,16 +11731,11 @@ "dev": true, "license": "MIT" }, - "node_modules/clean-git-ref": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/clean-git-ref/-/clean-git-ref-2.0.1.tgz", - "integrity": "sha512-bLSptAy2P0s6hU4PzuIMKmMJJSE6gLXGH1cntDu7bWJUksvuM+7ReOK61mozULErYvP6a15rnYl0zFDef+pyPw==", - "license": "Apache-2.0" - }, "node_modules/clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -12787,6 +11786,7 @@ "version": "8.0.1", "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, "license": "ISC", "dependencies": { "string-width": "^4.2.0", @@ -12801,6 +11801,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "license": "MIT", "dependencies": { "color-convert": "^2.0.1" @@ -12816,6 +11817,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "license": "MIT", "dependencies": { "color-name": "~1.1.4" @@ -12828,12 +11830,14 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, "license": "MIT" }, "node_modules/cliui/node_modules/wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", @@ -12970,12 +11974,6 @@ "node": ">= 0.8" } }, - "node_modules/comlink": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/comlink/-/comlink-4.4.2.tgz", - "integrity": "sha512-OxGdvBmJuNKSCMO4NTl1L47VRp6xn2wG4F/2hYzB6tiCb709otOxtEYCSvK80PtjODfXXZu8ds+Nw5kVCjqd2g==", - "license": "Apache-2.0" - }, "node_modules/commander": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", @@ -13286,6 +12284,7 @@ "version": "0.5.4", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, "license": "MIT", "dependencies": { "safe-buffer": "5.2.1" @@ -13298,6 +12297,7 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -13314,6 +12314,7 @@ "version": "0.6.0", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -13323,6 +12324,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "dev": true, "license": "MIT" }, "node_modules/copy-webpack-plugin": { @@ -13493,6 +12495,7 @@ "version": "1.2.2", "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "dev": true, "license": "Apache-2.0", "bin": { "crc32": "bin/crc32.njs" @@ -14094,21 +13097,6 @@ "dev": true, "license": "MIT" }, - "node_modules/decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "license": "MIT", - "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/dedent": { "version": "1.5.3", "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", @@ -14421,6 +13409,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, "license": "MIT", "dependencies": { "es-define-property": "^1.0.0", @@ -14556,21 +13545,17 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.8" } }, - "node_modules/deprecation": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", - "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==", - "license": "ISC" - }, "node_modules/destroy": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.8", @@ -14626,12 +13611,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/diff3": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/diff3/-/diff3-0.0.4.tgz", - "integrity": "sha512-f1rQ7jXDn/3i37hdwRk9ohqcvLRH3+gEIgmA6qEM280WUOh7cOr3GXV8Jm5sPwUs46Nzl48SE8YNLGJoaLuodg==", - "license": "MIT" - }, "node_modules/dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -14798,19 +13777,11 @@ "dev": true, "license": "MIT" }, - "node_modules/ecdsa-sig-formatter": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", - "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", - "license": "Apache-2.0", - "dependencies": { - "safe-buffer": "^5.0.1" - } - }, "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true, "license": "MIT" }, "node_modules/electron-to-chromium": { @@ -14854,6 +13825,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.8" @@ -15050,6 +14022,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dev": true, "license": "MIT", "dependencies": { "get-intrinsic": "^1.2.4" @@ -15062,6 +14035,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -15188,6 +14162,7 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -16283,6 +15258,7 @@ "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -16309,6 +15285,7 @@ "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, "license": "MIT", "engines": { "node": ">=0.8.x" @@ -16442,6 +15419,7 @@ "version": "4.19.2", "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "dev": true, "license": "MIT", "dependencies": { "accepts": "~1.3.8", @@ -16484,6 +15462,7 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -16493,6 +15472,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, "license": "MIT" }, "node_modules/extract-zip": { @@ -16819,6 +15799,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, "license": "MIT", "dependencies": { "debug": "2.6.9", @@ -16837,6 +15818,7 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -16846,6 +15828,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, "license": "MIT" }, "node_modules/find-cache-dir": { @@ -17215,6 +16198,7 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -17263,6 +16247,7 @@ "version": "0.5.2", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -17468,6 +16453,7 @@ "version": "1.2.4", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dev": true, "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -17809,6 +16795,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, "license": "MIT", "dependencies": { "get-intrinsic": "^1.1.3" @@ -17910,6 +16897,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, "license": "MIT", "dependencies": { "es-define-property": "^1.0.0" @@ -17922,6 +16910,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -17934,6 +16923,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -18187,6 +17177,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dev": true, "license": "MIT", "dependencies": { "depd": "2.0.0", @@ -18299,6 +17290,7 @@ "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, "license": "MIT", "dependencies": { "safer-buffer": ">= 2.1.2 < 3" @@ -18344,6 +17336,7 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, "license": "MIT", "engines": { "node": ">= 4" @@ -18499,6 +17492,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -18522,15 +17516,6 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "license": "ISC" }, - "node_modules/ini": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", - "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", - "license": "ISC", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/internal-slot": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", @@ -18621,6 +17606,7 @@ "version": "1.9.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.10" @@ -18907,6 +17893,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -20358,6 +19345,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, "license": "MIT" }, "node_modules/json-stable-stringify-without-jsonify": { @@ -20407,40 +19395,6 @@ "graceful-fs": "^4.1.6" } }, - "node_modules/jsonwebtoken": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz", - "integrity": "sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==", - "license": "MIT", - "dependencies": { - "jws": "^3.2.2", - "lodash.includes": "^4.3.0", - "lodash.isboolean": "^3.0.3", - "lodash.isinteger": "^4.0.4", - "lodash.isnumber": "^3.0.3", - "lodash.isplainobject": "^4.0.6", - "lodash.isstring": "^4.0.1", - "lodash.once": "^4.0.0", - "ms": "^2.1.1", - "semver": "^7.5.4" - }, - "engines": { - "node": ">=12", - "npm": ">=6" - } - }, - "node_modules/jsonwebtoken/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/jsx-ast-utils": { "version": "3.3.5", "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", @@ -20510,27 +19464,6 @@ "safe-buffer": "~5.1.0" } }, - "node_modules/jwa": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", - "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", - "license": "MIT", - "dependencies": { - "buffer-equal-constant-time": "1.0.1", - "ecdsa-sig-formatter": "1.0.11", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/jws": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", - "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", - "license": "MIT", - "dependencies": { - "jwa": "^1.4.1", - "safe-buffer": "^5.0.1" - } - }, "node_modules/keyv": { "version": "4.5.4", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", @@ -21252,40 +20185,11 @@ "dev": true, "license": "MIT" }, - "node_modules/lodash.includes": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", - "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==", - "license": "MIT" - }, - "node_modules/lodash.isboolean": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", - "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==", - "license": "MIT" - }, - "node_modules/lodash.isinteger": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", - "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==", - "license": "MIT" - }, - "node_modules/lodash.isnumber": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", - "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==", - "license": "MIT" - }, "node_modules/lodash.isplainobject": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", - "license": "MIT" - }, - "node_modules/lodash.isstring": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", - "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==", + "dev": true, "license": "MIT" }, "node_modules/lodash.memoize": { @@ -21302,12 +20206,6 @@ "dev": true, "license": "MIT" }, - "node_modules/lodash.once": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", - "license": "MIT" - }, "node_modules/lodash.truncate": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", @@ -21636,6 +20534,7 @@ "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -21744,6 +20643,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", + "dev": true, "license": "MIT" }, "node_modules/merge-stream": { @@ -21774,6 +20674,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -21810,6 +20711,7 @@ "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -21819,6 +20721,7 @@ "version": "2.1.35", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, "license": "MIT", "dependencies": { "mime-db": "1.52.0" @@ -21837,18 +20740,6 @@ "node": ">=6" } }, - "node_modules/mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/min-indent": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", @@ -21907,6 +20798,7 @@ "version": "1.2.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" @@ -21947,15 +20839,6 @@ "node": ">=0.10.0" } }, - "node_modules/minimisted": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/minimisted/-/minimisted-2.0.1.tgz", - "integrity": "sha512-1oPjfuLQa2caorJUM8HV8lGgWCc0qqAO1MNv/k05G4qslmsndV/5WdNZrqCiyqiz3wohia2Ij2B7w2Dr7/IyrA==", - "license": "MIT", - "dependencies": { - "minimist": "^1.2.5" - } - }, "node_modules/mitt": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", @@ -22143,6 +21026,7 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -22477,6 +21361,7 @@ "version": "1.13.2", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -22605,27 +21490,6 @@ "dev": true, "license": "MIT" }, - "node_modules/octokit": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/octokit/-/octokit-3.1.1.tgz", - "integrity": "sha512-AKJs5XYs7iAh7bskkYpxhUIpsYZdLqjnlnqrN5s9FFZuJ/a6ATUHivGpUKDpGB/xa+LGDtG9Lu8bOCfPM84vHQ==", - "license": "MIT", - "dependencies": { - "@octokit/app": "^14.0.0", - "@octokit/core": "^5.0.0", - "@octokit/oauth-app": "^6.0.0", - "@octokit/plugin-paginate-graphql": "^4.0.0", - "@octokit/plugin-paginate-rest": "^9.0.0", - "@octokit/plugin-rest-endpoint-methods": "^10.0.0", - "@octokit/plugin-retry": "^6.0.0", - "@octokit/plugin-throttling": "^8.0.0", - "@octokit/request-error": "^5.0.0", - "@octokit/types": "^12.0.0" - }, - "engines": { - "node": ">= 18" - } - }, "node_modules/on-exit-leak-free": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/on-exit-leak-free/-/on-exit-leak-free-2.1.2.tgz", @@ -22640,6 +21504,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, "license": "MIT", "dependencies": { "ee-first": "1.1.1" @@ -22662,6 +21527,7 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, "license": "ISC", "dependencies": { "wrappy": "1" @@ -23079,6 +21945,7 @@ "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "dev": true, "license": "(MIT AND Zlib)" }, "node_modules/param-case": { @@ -23174,6 +22041,7 @@ "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.8" @@ -23246,6 +22114,7 @@ "version": "0.1.7", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", + "dev": true, "license": "MIT" }, "node_modules/path-type": { @@ -23287,6 +22156,7 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -24360,6 +23230,7 @@ "version": "2.0.7", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dev": true, "license": "MIT", "dependencies": { "forwarded": "0.2.0", @@ -24489,6 +23360,7 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -24556,6 +23428,7 @@ "version": "6.11.0", "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dev": true, "license": "BSD-3-Clause", "dependencies": { "side-channel": "^1.0.4" @@ -24641,6 +23514,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -24650,6 +23524,7 @@ "version": "2.5.2", "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "dev": true, "license": "MIT", "dependencies": { "bytes": "3.1.2", @@ -25323,6 +24198,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -25858,6 +24734,7 @@ "version": "0.18.0", "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, "license": "MIT", "dependencies": { "debug": "2.6.9", @@ -25882,6 +24759,7 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -25891,12 +24769,14 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, "license": "MIT" }, "node_modules/send/node_modules/mime": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, "license": "MIT", "bin": { "mime": "cli.js" @@ -26016,6 +24896,7 @@ "version": "1.15.0", "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dev": true, "license": "MIT", "dependencies": { "encodeurl": "~1.0.2", @@ -26037,6 +24918,7 @@ "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", @@ -26077,21 +24959,9 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true, "license": "ISC" }, - "node_modules/sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "license": "(MIT AND BSD-3-Clause)", - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - }, - "bin": { - "sha.js": "bin.js" - } - }, "node_modules/shallow-clone": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-0.1.2.tgz", @@ -26367,6 +25237,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.7", @@ -26388,51 +25259,6 @@ "dev": true, "license": "ISC" }, - "node_modules/simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/simple-get": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", - "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "decompress-response": "^6.0.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, "node_modules/simple-html-tokenizer": { "version": "0.5.11", "resolved": "https://registry.npmjs.org/simple-html-tokenizer/-/simple-html-tokenizer-0.5.11.tgz", @@ -26935,6 +25761,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.8" @@ -26995,6 +25822,7 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", @@ -27009,6 +25837,7 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, "license": "MIT" }, "node_modules/string.prototype.includes": { @@ -27116,6 +25945,7 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" @@ -27948,6 +26778,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true, "license": "MIT", "engines": { "node": ">=0.6" @@ -28227,6 +27058,7 @@ "version": "1.6.18", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, "license": "MIT", "dependencies": { "media-typer": "0.3.0", @@ -28461,22 +27293,6 @@ "node": ">=8" } }, - "node_modules/universal-github-app-jwt": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/universal-github-app-jwt/-/universal-github-app-jwt-1.2.0.tgz", - "integrity": "sha512-dncpMpnsKBk0eetwfN8D8OUHGfiDhhJ+mtsbMl+7PfW7mYjiH8LIcqRmYMtzYLgSh47HjfdBtrBwIQ/gizKR3g==", - "license": "MIT", - "dependencies": { - "@types/jsonwebtoken": "^9.0.0", - "jsonwebtoken": "^9.0.2" - } - }, - "node_modules/universal-user-agent": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz", - "integrity": "sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==", - "license": "ISC" - }, "node_modules/universalify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", @@ -28491,6 +27307,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.8" @@ -28682,6 +27499,7 @@ "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, "license": "BSD-2-Clause", "dependencies": { "punycode": "^2.1.0" @@ -28870,6 +27688,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4.0" @@ -28944,6 +27763,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.8" @@ -28992,12 +27812,6 @@ "makeerror": "1.0.12" } }, - "node_modules/wasm-feature-detect": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/wasm-feature-detect/-/wasm-feature-detect-1.8.0.tgz", - "integrity": "sha512-zksaLKM2fVlnB5jQQDqKXXwYHLQUVH9es+5TOOHwGOVJOCeRBCiPjwSg+3tN2AdTCzjgli4jijCH290kXb/zWQ==", - "license": "Apache-2.0" - }, "node_modules/watchpack": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", @@ -30186,6 +29000,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, "license": "ISC" }, "node_modules/write-file-atomic": { @@ -30206,6 +29021,7 @@ "version": "8.18.0", "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "devOptional": true, "license": "MIT", "engines": { "node": ">=10.0.0" @@ -30345,6 +29161,7 @@ "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, "license": "ISC", "engines": { "node": ">=10" @@ -30370,6 +29187,7 @@ "version": "17.7.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, "license": "MIT", "dependencies": { "cliui": "^8.0.1", @@ -30388,6 +29206,7 @@ "version": "21.1.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, "license": "ISC", "engines": { "node": ">=12" diff --git a/package.json b/package.json index 583e185b..90dbf5e5 100644 --- a/package.json +++ b/package.json @@ -56,7 +56,7 @@ "dependencies": { "@wordpress/block-library": "^9.12.0", "@wordpress/blocks": "^13.10.0", - "@wp-playground/client": "^1.0.13", + "@wp-playground/client": "^3.1.38", "react": "^18.3.1", "react-dom": "^18.3.1", "react-router-dom": "^6.28.0", diff --git a/plan.md b/plan.md index 912470ce..514c07e9 100644 --- a/plan.md +++ b/plan.md @@ -150,19 +150,19 @@ Rows are ordered by remediation priority: severity first, runtime before develop | Alert | GHSA | Severity | Ecosystem | Affected package | Relationship / scope | Locked vulnerable version(s) | First patched | Causal family set | Representative locked path | Child PR | Status | | ---: | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | -| 44 | GHSA-95m3-7q98-8xr5 | critical | npm | `sha.js` | transitive / runtime | `2.4.11` | `2.4.12` | PGL | `sha.js@2.4.11 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 44 | GHSA-95m3-7q98-8xr5 | critical | npm | `sha.js` | transitive / runtime | `2.4.11` | `2.4.12` | PGL | `sha.js@2.4.11 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | validated locally; PR pending | | 42 | GHSA-fjxv-7rqg-78g4 | critical | npm | `form-data` | transitive / development | `4.0.0` | `4.0.4` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | | 77 | GHSA-5rq4-664w-9x2c | critical | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.0` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | | 146 | GHSA-w7jw-789q-3m8p | critical | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.8.4` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | unassigned | baseline open | | 164 | GHSA-xv26-6w52-cph6 | critical | npm | `websocket-driver` | transitive / development | `0.7.4` | `0.7.5` | WPS | `websocket-driver@0.7.4 ← sockjs@0.3.24 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 3 | GHSA-pwfr-8pq7-x9qv | high | npm | `octokit` | transitive / runtime | `3.1.1` | `3.1.2` | PGL | `octokit@3.1.1 ← @wp-playground/client@1.0.13` | unassigned | baseline open | -| 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | -| 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | -| 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | -| 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 3 | GHSA-pwfr-8pq7-x9qv | high | npm | `octokit` | transitive / runtime | `3.1.1` | `3.1.2` | PGL | `octokit@3.1.1 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | validated locally; PR pending | +| 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | +| 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | +| 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | +| 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | validated locally; PR pending | | 58 | GHSA-2w69-qvjg-hvjx | high | npm | `@remix-run/router` | transitive / runtime | `1.21.0` | `1.23.2` | ROUTER | `@remix-run/router@1.21.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | -| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | +| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable BLK + WEBEXT + WPS paths remain; PR pending | | 192 | GHSA-6g55-p6wh-862q | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.12` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 195 | GHSA-r28c-9q8g-f849 | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.18` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 6 | GHSA-3h5v-q93c-6h6q | high | npm | `ws` | transitive / development | `8.13.0` | `8.17.1` | WPS | `ws@8.13.0 ← puppeteer-core@20.9.0 ← lighthouse@10.4.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | @@ -213,16 +213,16 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 187 | GHSA-jr5f-v2jv-69x6 | high | npm | `axios` | transitive / development | `1.7.7` | `1.8.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | | 191 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `2.0.1` | `2.1.2` | WEBPACK + WPS | `brace-expansion@2.0.1 ← minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | unassigned | baseline open | | 24 | GHSA-mwcw-c2x4-8c55 | medium | npm | `nanoid` | transitive / runtime | `3.3.7` | `3.3.8` | BLK | `nanoid@3.3.7 ← postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | -| 29 | GHSA-x4c5-c7rf-jjgv | medium | npm | `@octokit/endpoint` | transitive / runtime | `9.0.5` | `9.0.6` | PGL | `@octokit/endpoint@9.0.5 ← @octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | unassigned | baseline open | -| 30 | GHSA-xx4v-prfh-6cgc | medium | npm | `@octokit/request-error` | transitive / runtime | `5.1.0` | `5.1.1` | PGL | `@octokit/request-error@5.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | unassigned | baseline open | -| 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | unassigned | baseline open | -| 32 | GHSA-rmvr-2pp2-xj38 | medium | npm | `@octokit/request` | transitive / runtime | `8.4.0` | `8.4.1` | PGL | `@octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | unassigned | baseline open | -| 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 29 | GHSA-x4c5-c7rf-jjgv | medium | npm | `@octokit/endpoint` | transitive / runtime | `9.0.5` | `9.0.6` | PGL | `@octokit/endpoint@9.0.5 ← @octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | validated locally; PR pending | +| 30 | GHSA-xx4v-prfh-6cgc | medium | npm | `@octokit/request-error` | transitive / runtime | `5.1.0` | `5.1.1` | PGL | `@octokit/request-error@5.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | validated locally; PR pending | +| 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | validated locally; PR pending | +| 32 | GHSA-rmvr-2pp2-xj38 | medium | npm | `@octokit/request` | transitive / runtime | `8.4.0` | `8.4.1` | PGL | `@octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | validated locally; PR pending | +| 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | | 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | PGL | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; PR pending | | 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | -| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable BLK + WEBEXT + WPS paths remain; PR pending | | 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | | 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | | 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | @@ -260,13 +260,13 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 170 | GHSA-m28w-2pqf-7qgj | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | | 179 | GHSA-mmx7-hfxf-jppx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | | 180 | GHSA-7q8q-rj6j-mhjq | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | -| 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | -| 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | -| 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL + WEBEXT + WPS | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | +| 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL + WEBEXT + WPS | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | +| 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL + WEBEXT + WPS | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | +| 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL + WEBEXT + WPS | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | | 64 | GHSA-73rr-hh4g-fpgx | low | npm | `diff` | transitive / runtime | `4.0.2` | `4.0.4` | BLK | `diff@4.0.2 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | -| 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | -| 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | unassigned | baseline open | +| 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | +| 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | published PGL lock path removed, but bundled source remains vulnerable through current release; WEBEXT + WPS paths also remain; upstream blocked; PR pending | | 41 | GHSA-76c9-3jph-rj3q | low | npm | `on-headers` | transitive / development | `1.0.2` | `1.1.0` | WPS | `on-headers@1.0.2 ← compression@1.7.4 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | | 43 | GHSA-52f5-9888-hmc6 | low | npm | `tmp` | transitive / development | `0.2.3` | `0.2.4` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | unassigned | baseline open | | 65 | GHSA-38r7-794h-5758 | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.0` | WEBPACK | `webpack@5.96.1` | unassigned | baseline open | @@ -308,3 +308,19 @@ No remote branch was deleted during baseline capture. Any later eligible deletio - Composer lockfile inspection established `phpunit/phpunit@9.6.21` as the direct `require-dev` cause for alert 63; GitHub reports its relationship as `unknown`, so the alert table preserves that API value rather than rewriting it to `direct`. - `npm audit --json` exited 1 with 125 vulnerable/effect package keys and 143 unique npm GHSA references, while GitHub exposed 123 npm alert rows covering 116 unique npm GHSAs plus one Composer alert. These counts are not expected to match because npm audit reports the npm registry snapshot and propagates advisories through affected package/effect nodes, whereas the approved baseline is the GitHub repository alert-row set; no GitHub alert row was inferred from npm-only data. - The only baseline advisory with no first patched version is alert 113, `GHSA-rmmh-p597-ppvv` in `showdown`; its causal family remains BLK and remediation must remove the vulnerable dependency through that parent family. + +### Child Execution Record: `agent/maintenance-002-playground-client` + +Status: validated locally; pull request pending. + +- Direct dependency change: `@wp-playground/client` moves from declared range `^1.0.13` and locked version `1.0.13` to declared range `^3.1.38` and locked version `3.1.38`. +- Target alerts: 44, 3, 11, 13, 23, 56, 99, 153, 29, 30, 31, 32, 57, 72, 132, 15, 16, 17, 18, 68, and 171. +- Minimum genuine-remediation evidence: npm registry metadata for every stable release newer than `1.0.13` through `3.1.47`, plus the official source manifests and lockfiles at each npm `gitHead`, shows `sha.js` first patched from `2.4.11` to `2.4.12` at client `3.0.12` and `ajv` first patched from `8.12.0` to `8.18.0` at client `3.1.38`. The `3.1.38` source lock also contains assigned-family versions `ws@8.21.0`, `express@4.22.2`, `path-to-regexp@0.1.13`, `qs@6.14.2`, `serve-static@1.16.3`, `send@0.19.2`, `cookie@0.7.2`, `octokit@3.1.2`, and `jws@4.0.1`, making `3.1.38` the first stable source release that genuinely patches the critical client path and every other assigned source path except alert 171. +- Rejected scanner-only candidate and upstream blocker: stable `2.0.4` is the first published client manifest with no dependency declarations, but its bundled `index.js` is byte-identical to vulnerable `2.0.3`, so it was rejected as a declaration-only scanner change. The official `3.1.38` source lock contains `body-parser@1.20.5`, below alert 171's `1.20.6` patch, and every later stable client through current `3.1.47` retains that version; alert 171 therefore remains explicitly upstream-blocked rather than being marked resolved merely because published client manifests hide bundled dependencies. +- Compatibility result: the existing source compiles unchanged against client `3.1.38`; no application compatibility edit or broad migration was required. +- Fully absent assigned vulnerable packages and rows: `sha.js` for 44, `octokit` for 3, `jws` for 56, `@octokit/endpoint` for 29, `@octokit/request-error` for 30, `@octokit/plugin-paginate-rest` for 31, and `@octokit/request` for 32. +- Partially remediated assigned rows: all published PGL lockfile paths are absent and client `3.1.38` genuinely patches the bundled PGL source paths for every assigned row except upstream-blocked 171, but WEBEXT and WPS still introduce affected `path-to-regexp`, `body-parser`, `qs`, `express`, `serve-static`, `send`, and `cookie` versions for 11, 13, 23, 99, 57, 15, 16, 17, 18, 68, and 171; AJV, WEBEXT, WEBPACK, and WPS paths still introduce affected `ajv` versions for 72; BLK, WEBEXT, and WPS paths still introduce affected `ws` versions for shared rows 132 and 153. +- Clean install and static validation: Node `v24.18.0` with npm `11.16.0` completed `npm ci`, `npm run build:schema`, `npm run lint`, and `npx tsc --noEmit`; the install retained pre-existing React peer-dependency warnings. +- Build validation: `npm run build:production:firefox` and `npm run build:production:chrome` completed successfully with webpack asset-size warnings for `app.js` and the client-upgrade vendor chunk `498.app.js`; static inspection did not establish that the emitted chunk is requested at runtime, so its reachability and Playground startup remain required manual-test items. +- Firefox manifest lint gate: `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` exited 1 with the two pre-existing manifest errors `EXTENSION_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the allowed `UNSUPPORTED_API` warning; this dependency child does not modify the manifest/configuration workstream. +- Audit and path validation: `npm audit --json` remains nonzero and changes the aggregate vulnerable/effect-package counts from 125 before the upgrade to 111 after it: 12 low, 50 moderate, 43 high, and 6 critical. Range-aware inspection of every matching repository lockfile entry confirms published client `3.1.38` declares zero dependencies, has zero nested lockfile entries, and leaves no published PGL path for any target row; separate upstream source-lock inspection preserves alert 171 as blocked, and the alert table records every remaining non-PGL affected path as partial instead of claiming aggregate audit success. From ead129b8b9547f34b1c19e1edce7e83b91e0be69 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 00:27:43 +0400 Subject: [PATCH 05/40] docs(plan): link Playground remediation PR --- plan.md | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/plan.md b/plan.md index 514c07e9..055fb6a3 100644 --- a/plan.md +++ b/plan.md @@ -150,19 +150,19 @@ Rows are ordered by remediation priority: severity first, runtime before develop | Alert | GHSA | Severity | Ecosystem | Affected package | Relationship / scope | Locked vulnerable version(s) | First patched | Causal family set | Representative locked path | Child PR | Status | | ---: | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | -| 44 | GHSA-95m3-7q98-8xr5 | critical | npm | `sha.js` | transitive / runtime | `2.4.11` | `2.4.12` | PGL | `sha.js@2.4.11 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | validated locally; PR pending | +| 44 | GHSA-95m3-7q98-8xr5 | critical | npm | `sha.js` | transitive / runtime | `2.4.11` | `2.4.12` | PGL | `sha.js@2.4.11 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 42 | GHSA-fjxv-7rqg-78g4 | critical | npm | `form-data` | transitive / development | `4.0.0` | `4.0.4` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | | 77 | GHSA-5rq4-664w-9x2c | critical | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.0` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | | 146 | GHSA-w7jw-789q-3m8p | critical | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.8.4` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | unassigned | baseline open | | 164 | GHSA-xv26-6w52-cph6 | critical | npm | `websocket-driver` | transitive / development | `0.7.4` | `0.7.5` | WPS | `websocket-driver@0.7.4 ← sockjs@0.3.24 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 3 | GHSA-pwfr-8pq7-x9qv | high | npm | `octokit` | transitive / runtime | `3.1.1` | `3.1.2` | PGL | `octokit@3.1.1 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | validated locally; PR pending | -| 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | -| 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | -| 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | -| 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | validated locally; PR pending | +| 3 | GHSA-pwfr-8pq7-x9qv | high | npm | `octokit` | transitive / runtime | `3.1.1` | `3.1.2` | PGL | `octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | +| 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | +| 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | +| 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | +| 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 58 | GHSA-2w69-qvjg-hvjx | high | npm | `@remix-run/router` | transitive / runtime | `1.21.0` | `1.23.2` | ROUTER | `@remix-run/router@1.21.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | -| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable BLK + WEBEXT + WPS paths remain; PR pending | +| 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | +| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable BLK + WEBEXT + WPS paths remain; PR #201 open | | 192 | GHSA-6g55-p6wh-862q | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.12` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 195 | GHSA-r28c-9q8g-f849 | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.18` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 6 | GHSA-3h5v-q93c-6h6q | high | npm | `ws` | transitive / development | `8.13.0` | `8.17.1` | WPS | `ws@8.13.0 ← puppeteer-core@20.9.0 ← lighthouse@10.4.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | @@ -213,16 +213,16 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 187 | GHSA-jr5f-v2jv-69x6 | high | npm | `axios` | transitive / development | `1.7.7` | `1.8.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | | 191 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `2.0.1` | `2.1.2` | WEBPACK + WPS | `brace-expansion@2.0.1 ← minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | unassigned | baseline open | | 24 | GHSA-mwcw-c2x4-8c55 | medium | npm | `nanoid` | transitive / runtime | `3.3.7` | `3.3.8` | BLK | `nanoid@3.3.7 ← postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | -| 29 | GHSA-x4c5-c7rf-jjgv | medium | npm | `@octokit/endpoint` | transitive / runtime | `9.0.5` | `9.0.6` | PGL | `@octokit/endpoint@9.0.5 ← @octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | validated locally; PR pending | -| 30 | GHSA-xx4v-prfh-6cgc | medium | npm | `@octokit/request-error` | transitive / runtime | `5.1.0` | `5.1.1` | PGL | `@octokit/request-error@5.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | validated locally; PR pending | -| 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | validated locally; PR pending | -| 32 | GHSA-rmvr-2pp2-xj38 | medium | npm | `@octokit/request` | transitive / runtime | `8.4.0` | `8.4.1` | PGL | `@octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | validated locally; PR pending | -| 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | +| 29 | GHSA-x4c5-c7rf-jjgv | medium | npm | `@octokit/endpoint` | transitive / runtime | `9.0.5` | `9.0.6` | PGL | `@octokit/endpoint@9.0.5 ← @octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | +| 30 | GHSA-xx4v-prfh-6cgc | medium | npm | `@octokit/request-error` | transitive / runtime | `5.1.0` | `5.1.1` | PGL | `@octokit/request-error@5.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | +| 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | +| 32 | GHSA-rmvr-2pp2-xj38 | medium | npm | `@octokit/request` | transitive / runtime | `8.4.0` | `8.4.1` | PGL | `@octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | +| 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | | 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; PR pending | +| 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; PR #201 open | | 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | -| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable BLK + WEBEXT + WPS paths remain; PR pending | +| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable BLK + WEBEXT + WPS paths remain; PR #201 open | | 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | | 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | | 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | @@ -260,13 +260,13 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 170 | GHSA-m28w-2pqf-7qgj | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | | 179 | GHSA-mmx7-hfxf-jppx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | | 180 | GHSA-7q8q-rj6j-mhjq | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL + WEBEXT + WPS | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | -| 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL + WEBEXT + WPS | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | -| 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL + WEBEXT + WPS | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | -| 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL + WEBEXT + WPS | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | +| 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL + WEBEXT + WPS | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | +| 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL + WEBEXT + WPS | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | +| 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL + WEBEXT + WPS | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | +| 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL + WEBEXT + WPS | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | | 64 | GHSA-73rr-hh4g-fpgx | low | npm | `diff` | transitive / runtime | `4.0.2` | `4.0.4` | BLK | `diff@4.0.2 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | -| 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR pending | -| 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | `agent/maintenance-002-playground-client` | published PGL lock path removed, but bundled source remains vulnerable through current release; WEBEXT + WPS paths also remain; upstream blocked; PR pending | +| 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | +| 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | published PGL lock path removed, but bundled source remains vulnerable through current release; WEBEXT + WPS paths also remain; upstream blocked; PR #201 open | | 41 | GHSA-76c9-3jph-rj3q | low | npm | `on-headers` | transitive / development | `1.0.2` | `1.1.0` | WPS | `on-headers@1.0.2 ← compression@1.7.4 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | | 43 | GHSA-52f5-9888-hmc6 | low | npm | `tmp` | transitive / development | `0.2.3` | `0.2.4` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | unassigned | baseline open | | 65 | GHSA-38r7-794h-5758 | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.0` | WEBPACK | `webpack@5.96.1` | unassigned | baseline open | @@ -311,7 +311,7 @@ No remote branch was deleted during baseline capture. Any later eligible deletio ### Child Execution Record: `agent/maintenance-002-playground-client` -Status: validated locally; pull request pending. +Status: validated locally; child pull request [#201](https://github.com/WordPress/try-wordpress/pull/201) is open against the integration branch. - Direct dependency change: `@wp-playground/client` moves from declared range `^1.0.13` and locked version `1.0.13` to declared range `^3.1.38` and locked version `3.1.38`. - Target alerts: 44, 3, 11, 13, 23, 56, 99, 153, 29, 30, 31, 32, 57, 72, 132, 15, 16, 17, 18, 68, and 171. From 32e6cbd38078c61ea62d5bdfc4034e26dfc6a248 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 01:08:35 +0400 Subject: [PATCH 06/40] fix(deps): remove WordPress scripts critical paths - upgrade @wordpress/scripts to the first clean 30.7.0 boundary - refresh three compatible security transitives without overrides - document 32 resolved alerts and remaining upstream constraints --- package-lock.json | 2011 +++++++++++++++++++++++++-------------------- package.json | 2 +- plan.md | 214 ++--- 3 files changed, 1256 insertions(+), 971 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4cb66b6e..d6af28a8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,5 +1,5 @@ { - "name": "try-wordpress", + "name": "try-wordpress-maintenance-003-wordpress-scripts", "lockfileVersion": 3, "requires": true, "packages": { @@ -21,7 +21,7 @@ "@types/react-dom": "^18.3.1", "@types/wordpress__block-library": "^2.6.3", "@types/wordpress__blocks": "^12.5.14", - "@wordpress/scripts": "^30.4.0", + "@wordpress/scripts": "^30.7.0", "ajv": "^8.17.1", "concurrently": "^9.1.0", "copy-webpack-plugin": "^12.0.2", @@ -2604,21 +2604,58 @@ "npm": ">=7.0.0" } }, + "node_modules/@hapi/address": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@hapi/address/-/address-5.1.1.tgz", + "integrity": "sha512-A+po2d/dVoY7cYajycYI43ZbYMXukuopIsqCjh5QzsBCipDtdofHntljDlpccMjIfTy6UOkg+5KPriwYch2bXA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@hapi/hoek": "^11.0.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@hapi/formula": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@hapi/formula/-/formula-3.0.2.tgz", + "integrity": "sha512-hY5YPNXzw1He7s0iqkRQi+uMGh383CGdyyIGYtB+W5N3KHPXoqychklvHhKCC9M3Xtv0OCs/IHw+r4dcHtBYWw==", + "dev": true, + "license": "BSD-3-Clause" + }, "node_modules/@hapi/hoek": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", - "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==", + "version": "11.0.7", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.7.tgz", + "integrity": "sha512-HV5undWkKzcB4RZUusqOpcgxOaq6VOAH7zhhIr2g3G8NF/MlFO75SjOr2NfuSx0Mh40+1FqCkagKLJRykUWoFQ==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@hapi/pinpoint": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@hapi/pinpoint/-/pinpoint-2.0.1.tgz", + "integrity": "sha512-EKQmr16tM8s16vTT3cA5L0kZZcTMU5DUOZTuvpnY738m+jyP3JIUj+Mm1xc1rsLkGBQ/gVnfKYPwOmPg1tUR4Q==", "dev": true, "license": "BSD-3-Clause" }, + "node_modules/@hapi/tlds": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@hapi/tlds/-/tlds-1.1.7.tgz", + "integrity": "sha512-MgNjRwy9Ti92yVAixLmDc8dd1bJIKwO9qlWCfFQRwRmUEDPQHYn4G6hwPFvFGUTzAa0FsS+inMjLin7GnyBRhA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=14.0.0" + } + }, "node_modules/@hapi/topo": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", - "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-6.0.2.tgz", + "integrity": "sha512-KR3rD5inZbGMrHmgPxsJ9dbi6zEK+C3ZwUwTa+eMwWLz7oijWUTWD2pMSNNYJAU6Qq+65NkxXjqHr/7LM2Xkqg==", "dev": true, "license": "BSD-3-Clause", "dependencies": { - "@hapi/hoek": "^9.0.0" + "@hapi/hoek": "^11.0.2" } }, "node_modules/@humanwhocodes/config-array": { @@ -3173,6 +3210,326 @@ "node": ">=12.4.0" } }, + "node_modules/@parcel/watcher": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.6.0.tgz", + "integrity": "sha512-7FNeNl8NCE7aINx7WXiKQrPYZWC/hvrTsmk6zmxbI7LTXE7hVek/n8AfVgpe2y82zl3w0HvCHN0bVKMBoJcC0w==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "dependencies": { + "detect-libc": "^2.0.3", + "is-glob": "^4.0.3", + "node-addon-api": "^7.0.0", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.6.0", + "@parcel/watcher-darwin-arm64": "2.6.0", + "@parcel/watcher-darwin-x64": "2.6.0", + "@parcel/watcher-freebsd-x64": "2.6.0", + "@parcel/watcher-linux-arm-glibc": "2.6.0", + "@parcel/watcher-linux-arm-musl": "2.6.0", + "@parcel/watcher-linux-arm64-glibc": "2.6.0", + "@parcel/watcher-linux-arm64-musl": "2.6.0", + "@parcel/watcher-linux-x64-glibc": "2.6.0", + "@parcel/watcher-linux-x64-musl": "2.6.0", + "@parcel/watcher-win32-arm64": "2.6.0", + "@parcel/watcher-win32-x64": "2.6.0" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.6.0.tgz", + "integrity": "sha512-trgpLSCKRC/huFjXX/Smh+0sWe4+YtKfktIToiMl59ghz7z+qkH6kMvNnUbLyRs9N11t8l4svSCs1+5B3rOAhA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.6.0.tgz", + "integrity": "sha512-Y3QV0gl7Q1zbfueunkWIERICbEojQFCgpyG7YqOGNFLsckXyI1xu9mAIUpKY9QBYzBtSkN8dBPwd3yiAO9ovMw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.6.0.tgz", + "integrity": "sha512-Ohv6OpzhUfKYD7Beb8kDvG0jbIxORCYY1JRdZnaBtnjjkJxgD7ZVL0nw2sCYd0yTMKTvz3nnTnOF3cDifK+kvw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.6.0.tgz", + "integrity": "sha512-5HmXvDgs8VK+74jF9y9/2FE3/OnlcKmc56tjmSrEuZjpSZOGL+fvAu+HKJBdPs9uwoP2hE6TlSUpXZ/C5jUFmQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.6.0.tgz", + "integrity": "sha512-Ps/hui3A+vMbjdqlqAowK2ZL8+BO8dBjxeWXj6npTBs3jx4wWmbPpaLuqwrQrSqIVMCnpWo238bJ1U37GhQOYg==", + "cpu": [ + "arm" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-musl": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.6.0.tgz", + "integrity": "sha512-9c6AUHgHoG+IY88MRIHupztQiQnrbqHYQjkM2btA+Bf/wQnQMuiD0Wfk1EVv3TlNT3x41uU71rn6E4xh/+zvkw==", + "cpu": [ + "arm" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.6.0.tgz", + "integrity": "sha512-yHRqS2owEXe6Hic9z6Mh1ECsCd+ODVOGvZDyciqRd21+v+o+DnXMOrw50DSpIG2sb8GPEaPPmfeCAWKPJdq46g==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.6.0.tgz", + "integrity": "sha512-WhB2e/V7rqdHHWZusBSPuy5Ei8S6lSz6FE5TKKQz5h3a0O+C+mhY7vxU9b/stqvMb8beLnPY82ZrFTLKs+SrKA==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.6.0.tgz", + "integrity": "sha512-ulGE6x6Oz6iAwg75T8YQSoguBWasniIbX+QWpaYPcCnDOpdWX3k+4xbEYPZVLxOuoJI+svJJPD3sEj8G7lrQ3A==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.6.0.tgz", + "integrity": "sha512-tkBYKt7YQrjIJWYDnto2YgO8MRkjlMTSNoRHzsXinBqbLdeOM3L32wPZJvIZxqaLMfSlS/4sUjH/6STVP/XDLw==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.6.0.tgz", + "integrity": "sha512-gIZAP23jaHjGWasY/TY6yL7NHFClf0Ga7FN+iINvk+KN94rhm94lYZhFsbYFNcA04/onvGD9kKmiJLJB2HbNwQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.6.0.tgz", + "integrity": "sha512-cA+/pXV2YkfxlIcXOQ5fSWqAzzPyD78/x5qbK/I0vUkrlYHA8TIz+MXjAbGouguKVSI4bOmkTSJ1/poVSsgt+A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher/node_modules/picomatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.5.tgz", + "integrity": "sha512-RvwwcruNjI1ncT5xRakeyS9Lf8lcItv34KD+aif+VH9kduAyfYBipGh12274xtenIPZ119/R9BdTBa8gAwSh0A==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/@pkgr/core": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", @@ -3331,16 +3688,16 @@ } }, "node_modules/@puppeteer/browsers": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.4.0.tgz", - "integrity": "sha512-x8J1csfIygOwf6D6qUAZ0ASk3z63zPb7wkNeHRerCMh82qWKUrOgkuP005AJC8lDL6/evtXETGEJVcwykKT4/g==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.6.1.tgz", + "integrity": "sha512-aBSREisdsGH890S2rQqK82qmQYU3uFpSH8wcZWHgHzl3LfzsxAKbLNiAG9mO8v1Y0UICBeClICxPJvyr0rcuxg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "debug": "^4.3.6", + "debug": "^4.4.0", "extract-zip": "^2.0.1", "progress": "^2.0.3", - "proxy-agent": "^6.4.0", + "proxy-agent": "^6.5.0", "semver": "^7.6.3", "tar-fs": "^3.0.6", "unbzip2-stream": "^1.4.3", @@ -3353,10 +3710,28 @@ "node": ">=18" } }, + "node_modules/@puppeteer/browsers/node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, "node_modules/@puppeteer/browsers/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "version": "7.8.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", "dev": true, "license": "ISC", "bin": { @@ -3929,30 +4304,6 @@ "dev": true, "license": "0BSD" }, - "node_modules/@sideway/address": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.5.tgz", - "integrity": "sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@hapi/hoek": "^9.0.0" - } - }, - "node_modules/@sideway/formula": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", - "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/@sideway/pinpoint": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", - "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==", - "dev": true, - "license": "BSD-3-Clause" - }, "node_modules/@sinclair/typebox": { "version": "0.27.8", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", @@ -3993,6 +4344,13 @@ "@sinonjs/commons": "^3.0.0" } }, + "node_modules/@standard-schema/spec": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz", + "integrity": "sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==", + "dev": true, + "license": "MIT" + }, "node_modules/@svgr/babel-plugin-add-jsx-attribute": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz", @@ -4430,32 +4788,10 @@ "@types/node": "*" } }, - "node_modules/@types/eslint": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", - "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.7", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", - "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, "node_modules/@types/estree": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", - "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.9.tgz", + "integrity": "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==", "dev": true, "license": "MIT" }, @@ -5476,73 +5812,73 @@ } }, "node_modules/@webassemblyjs/ast": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", - "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.14.1.tgz", + "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", "dev": true, "license": "MIT", "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + "@webassemblyjs/helper-numbers": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2" } }, "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", - "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", + "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==", "dev": true, "license": "MIT" }, "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", - "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", + "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==", "dev": true, "license": "MIT" }, "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", - "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", + "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==", "dev": true, "license": "MIT" }, "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", - "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", + "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", "dev": true, "license": "MIT", "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/floating-point-hex-parser": "1.13.2", + "@webassemblyjs/helper-api-error": "1.13.2", "@xtuc/long": "4.2.2" } }, "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", - "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", + "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==", "dev": true, "license": "MIT" }, "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", - "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", + "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", "dev": true, "license": "MIT", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/wasm-gen": "1.14.1" } }, "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", - "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", + "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", "dev": true, "license": "MIT", "dependencies": { @@ -5550,9 +5886,9 @@ } }, "node_modules/@webassemblyjs/leb128": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", - "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", + "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -5560,79 +5896,79 @@ } }, "node_modules/@webassemblyjs/utf8": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", - "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", + "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==", "dev": true, "license": "MIT" }, "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", - "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", + "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", "dev": true, "license": "MIT", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-opt": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1", - "@webassemblyjs/wast-printer": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/helper-wasm-section": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-opt": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1", + "@webassemblyjs/wast-printer": "1.14.1" } }, "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", - "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", + "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", "dev": true, "license": "MIT", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" } }, "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", - "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", + "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", "dev": true, "license": "MIT", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1" } }, "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", - "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", + "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", "dev": true, "license": "MIT", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-api-error": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-api-error": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" } }, "node_modules/@webassemblyjs/wast-printer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", - "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", + "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", "dev": true, "license": "MIT", "dependencies": { - "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/ast": "1.14.1", "@xtuc/long": "4.2.2" } }, @@ -8601,9 +8937,9 @@ } }, "node_modules/@wordpress/scripts": { - "version": "30.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-30.4.0.tgz", - "integrity": "sha512-hAX8XB8hWlxAyktT4KkBpGttRwSynmtkpLvbVKeKnj+BjABFs4TGb/HCF9hFpUK3huCAg8Ft/sjjczW+5tqspQ==", + "version": "30.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-30.7.0.tgz", + "integrity": "sha512-vwrf6Xo1GXV2ug4xdYMgZ2CVpNNfArOEJyX6w9CafIRmLOm8GkVGSza0VlEoOh1BTqQPv/awq6uiOKVMbVNB5Q==", "dev": true, "license": "GPL-2.0-or-later", "dependencies": { @@ -8628,7 +8964,7 @@ "check-node-version": "^4.1.0", "clean-webpack-plugin": "^3.0.0", "copy-webpack-plugin": "^10.2.0", - "cross-spawn": "^5.1.0", + "cross-spawn": "^7.0.6", "css-loader": "^6.2.0", "cssnano": "^6.0.1", "cwd": "^0.10.0", @@ -8638,33 +8974,32 @@ "fast-glob": "^3.2.7", "filenamify": "^4.2.0", "jest": "^29.6.2", - "jest-dev-server": "^9.0.1", + "jest-dev-server": "^10.1.4", "jest-environment-jsdom": "^29.6.2", "jest-environment-node": "^29.6.2", "json2php": "^0.0.9", "markdownlint-cli": "^0.31.1", "merge-deep": "^3.0.3", - "mini-css-extract-plugin": "^2.5.1", + "mini-css-extract-plugin": "^2.9.2", "minimist": "^1.2.0", "npm-package-json-lint": "^6.4.0", "npm-packlist": "^3.0.0", "postcss": "^8.4.5", - "postcss-import": "^16.1.0", "postcss-loader": "^6.2.1", "prettier": "npm:wp-prettier@3.0.3", - "puppeteer-core": "^23.1.0", + "puppeteer-core": "^23.10.1", "react-refresh": "^0.14.0", "read-pkg-up": "^7.0.1", "resolve-bin": "^0.4.0", "rtlcss-webpack-plugin": "^4.0.7", - "sass": "^1.35.2", - "sass-loader": "^12.1.0", + "sass": "^1.50.1", + "sass-loader": "^16.0.3", "schema-utils": "^4.2.0", "source-map-loader": "^3.0.0", "stylelint": "^16.8.2", "terser-webpack-plugin": "^5.3.10", "url-loader": "^4.1.1", - "webpack": "^5.95.0", + "webpack": "^5.97.0", "webpack-bundle-analyzer": "^4.9.1", "webpack-cli": "^5.1.4", "webpack-dev-server": "^4.15.1" @@ -8910,13 +9245,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@wordpress/scripts/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true, - "license": "ISC" - }, "node_modules/@wordpress/scripts/node_modules/is-plain-object": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", @@ -9644,9 +9972,9 @@ } }, "node_modules/acorn": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", - "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "version": "8.17.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.17.0.tgz", + "integrity": "sha512-xRQbDb9BnwDafYNn6Vwl839DYVjqXYb1XVGtWAZ1kcDc6iwAL4hg3B1dZlRiuENFeO2H53gFG3in621AdERVAg==", "dev": true, "license": "MIT", "bin": { @@ -10565,15 +10893,26 @@ } }, "node_modules/axios": { - "version": "1.7.7", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", - "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.18.1.tgz", + "integrity": "sha512-3nTvFlvpn9Zu/RkHUqtc7/+al4UpRW5az71ap5zccp6e8RAYEzhMTecX8Dz1wWDYrPpUoB1HAQEGEAEvUr7S9g==", "dev": true, "license": "MIT", "dependencies": { - "follow-redirects": "^1.15.6", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" + "follow-redirects": "^1.16.0", + "form-data": "^4.0.5", + "https-proxy-agent": "^5.0.1", + "proxy-from-env": "^2.1.0" + } + }, + "node_modules/axios/node_modules/proxy-from-env": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-2.1.0.tgz", + "integrity": "sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" } }, "node_modules/axobject-query": { @@ -10818,55 +11157,103 @@ "license": "MIT" }, "node_modules/bare-events": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.4.2.tgz", - "integrity": "sha512-qMKFd2qG/36aA4GwvKq8MxnPgCQAmBWmSyLWsJcbn8v03wvIPQ/hG1Ms8bPzndZxMDoHpxez5VOS+gC9Yi24/Q==", + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.9.1.tgz", + "integrity": "sha512-Z0oHEHAFDZkffN8Qc39zNZjQlMDkPJRyyyZieU1VH7u8c5S+qHZ2S8ixdKIAxEjfHO7FJxXmJWgteOghVanIsg==", "dev": true, "license": "Apache-2.0", - "optional": true + "peerDependencies": { + "bare-abort-controller": "*" + }, + "peerDependenciesMeta": { + "bare-abort-controller": { + "optional": true + } + } }, "node_modules/bare-fs": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-2.3.4.tgz", - "integrity": "sha512-7YyxitZEq0ey5loOF5gdo1fZQFF7290GziT+VbAJ+JbYTJYaPZwuEz2r/Nq23sm4fjyTgUf2uJI2gkT3xAuSYA==", + "version": "4.7.4", + "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-4.7.4.tgz", + "integrity": "sha512-y1kC+ffIx/tPLdTE693uNjHfzTfr+ravR5tvWlMXe25nELbkqV400S71qHDwbkAQ1FVEZobB1NFRzFbCCcyBCQ==", "dev": true, "license": "Apache-2.0", - "optional": true, "dependencies": { - "bare-events": "^2.0.0", - "bare-path": "^2.0.0", - "bare-stream": "^2.0.0" + "bare-events": "^2.5.4", + "bare-path": "^3.0.0", + "bare-stream": "^2.6.4", + "bare-url": "^2.2.2", + "fast-fifo": "^1.3.2" + }, + "engines": { + "bare": ">=1.16.0" + }, + "peerDependencies": { + "bare-buffer": "*" + }, + "peerDependenciesMeta": { + "bare-buffer": { + "optional": true + } } }, - "node_modules/bare-os": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/bare-os/-/bare-os-2.4.3.tgz", - "integrity": "sha512-FjkNiU3AwTQNQkcxFOmDcCfoN1LjjtU+ofGJh5DymZZLTqdw2i/CzV7G0h3snvh6G8jrWtdmNSgZPH4L2VOAsQ==", + "node_modules/bare-path": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/bare-path/-/bare-path-3.1.1.tgz", + "integrity": "sha512-JprUlveX3QjApC1cTpsUOiscADftCGVWkzitbHsRqv84hzYwYHw2mbluddsq5TvI8mH/8Ov1f4BiMAdcB0oYnQ==", "dev": true, - "license": "Apache-2.0", - "optional": true + "license": "Apache-2.0" }, - "node_modules/bare-path": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/bare-path/-/bare-path-2.1.3.tgz", - "integrity": "sha512-lh/eITfU8hrj9Ru5quUp0Io1kJWIk1bTjzo7JH1P5dWmQ2EL4hFUlfI8FonAhSlgIfhn63p84CDY/x+PisgcXA==", + "node_modules/bare-stream": { + "version": "2.13.3", + "resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-2.13.3.tgz", + "integrity": "sha512-Kc+brLqvEqGkjyfiwJmImAOqLZL7OsoLKuavx+hJjgVV3nLTOjloJyPMFxjUPerGGHrNH0fLU06jjykMLWrERQ==", "dev": true, "license": "Apache-2.0", - "optional": true, "dependencies": { - "bare-os": "^2.1.0" + "b4a": "^1.8.1", + "streamx": "^2.25.0", + "teex": "^1.0.1" + }, + "peerDependencies": { + "bare-abort-controller": "*", + "bare-buffer": "*", + "bare-events": "*" + }, + "peerDependenciesMeta": { + "bare-abort-controller": { + "optional": true + }, + "bare-buffer": { + "optional": true + }, + "bare-events": { + "optional": true + } } }, - "node_modules/bare-stream": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-2.3.0.tgz", - "integrity": "sha512-pVRWciewGUeCyKEuRxwv06M079r+fRjAQjBEK2P6OYGrO43O+Z0LrPZZEjlc4mB6C2RpZ9AxJ1s7NLEtOHO6eA==", + "node_modules/bare-stream/node_modules/b4a": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.8.1.tgz", + "integrity": "sha512-aiqre1Nr0B/6DgE2N5vwTc+2/oQZ4Wh1t4NznYY4E00y8LCt6NqdRv81so00oo27D8MVKTpUa/MwUUtBLXCoDw==", + "dev": true, + "license": "Apache-2.0", + "peerDependencies": { + "react-native-b4a": "*" + }, + "peerDependenciesMeta": { + "react-native-b4a": { + "optional": true + } + } + }, + "node_modules/bare-url": { + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/bare-url/-/bare-url-2.4.6.tgz", + "integrity": "sha512-iQxPClE07hETVpbRoX7JXX3v/ZQViCxe/SYCxylRLzdEx1xJAufPptfiOqR8tqiCtmbtMDANKWszzjLu1PMAZQ==", "dev": true, "license": "Apache-2.0", - "optional": true, "dependencies": { - "b4a": "^1.6.6", - "streamx": "^2.20.0" + "bare-path": "^3.0.0" } }, "node_modules/base64-js": { @@ -10889,10 +11276,23 @@ ], "license": "MIT" }, + "node_modules/baseline-browser-mapping": { + "version": "2.11.5", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.11.5.tgz", + "integrity": "sha512-xJo6a6YZnwZfnyGmQKWMbVOcii7XRibjOskRh+WJ9UHQoX16xrQrcIgAMQOzfvs8XiLMx6ih/fsLPF73iY2D1A==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/basic-ftp": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.5.tgz", - "integrity": "sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.3.1.tgz", + "integrity": "sha512-bopVNp6ugyA150DDuZfPFdt1KZ5a94ZDiwX4hMgZDzF+GttD80lEy8kj98kbyhLXnPvhtIo93mdnLIjpCAeeOw==", "dev": true, "license": "MIT", "engines": { @@ -11171,9 +11571,9 @@ } }, "node_modules/browserslist": { - "version": "4.24.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", - "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", + "version": "4.28.7", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.7.tgz", + "integrity": "sha512-JxV13hNrFxqjOc8alRbq9dK1MM79NEXYpma2B2J4wAtpWS5zIEIKqWPGCl7N4o7Uc7B7itylh7SuDujATRyyTw==", "dev": true, "funding": [ { @@ -11191,10 +11591,11 @@ ], "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001669", - "electron-to-chromium": "^1.5.41", - "node-releases": "^2.0.18", - "update-browserslist-db": "^1.1.1" + "baseline-browser-mapping": "^2.10.44", + "caniuse-lite": "^1.0.30001806", + "electron-to-chromium": "^1.5.393", + "node-releases": "^2.0.51", + "update-browserslist-db": "^1.2.3" }, "bin": { "browserslist": "cli.js" @@ -11314,6 +11715,20 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -11388,9 +11803,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001680", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001680.tgz", - "integrity": "sha512-rPQy70G6AGUMnbwS1z6Xg+RkHYPAi18ihs47GH0jcxIG7wArmPgY3XbS2sRdBbxJljp3thdT8BIqv9ccCypiPA==", + "version": "1.0.30001806", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001806.tgz", + "integrity": "sha512-72Cuvd95zbSYPKq6Fhg8eDJRlzgWDf7/mtoZv6Qe/DYNCEBdNxoA3+rZAU2ZhGCpZlns3EssFavaZomckT5Uuw==", "dev": true, "funding": [ { @@ -11694,14 +12109,13 @@ } }, "node_modules/chromium-bidi": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.6.5.tgz", - "integrity": "sha512-RuLrmzYrxSb0s9SgpB+QN5jJucPduZQ/9SIe76MDxYJuecPW5mxMdacJ1f4EtgiV+R0p3sCkznTMvH0MPGFqjA==", + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.11.0.tgz", + "integrity": "sha512-6CJWHkNRoyZyjV9Rwv2lYONZf1Xm0IuDyNq97nwSsxxP3wf5Bwy15K5rOvVKMtJ127jJBmxFUanSAOjgFRxgrA==", "dev": true, "license": "Apache-2.0", "dependencies": { "mitt": "3.0.1", - "urlpattern-polyfill": "10.0.0", "zod": "3.23.8" }, "peerDependencies": { @@ -11975,13 +12389,13 @@ } }, "node_modules/commander": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", - "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", "dev": true, "license": "MIT", "engines": { - "node": ">= 6" + "node": ">=18" } }, "node_modules/comment-parser": { @@ -12221,13 +12635,6 @@ "proto-list": "~1.2.1" } }, - "node_modules/config-chain/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true, - "license": "ISC" - }, "node_modules/configstore": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", @@ -12597,35 +13004,36 @@ } }, "node_modules/cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "license": "MIT", "dependencies": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" } }, - "node_modules/cross-spawn/node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "node_modules/cross-spawn/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "license": "ISC", "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "node_modules/cross-spawn/node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", - "dev": true, - "license": "ISC" - }, "node_modules/crypto-random-string": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", @@ -13207,21 +13615,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/default-browser/node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/default-browser/node_modules/execa": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", @@ -13327,29 +13720,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/default-browser/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/default-browser/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/default-browser/node_modules/strip-final-newline": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", @@ -13363,22 +13733,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/default-browser/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/default-gateway": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", @@ -13562,6 +13916,17 @@ "npm": "1.2.8000 || >= 1.4.16" } }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "dev": true, + "license": "Apache-2.0", + "optional": true, + "engines": { + "node": ">=8" + } + }, "node_modules/detect-newline": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", @@ -13770,6 +14135,21 @@ "dev": true, "license": "MIT" }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/duplexer": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", @@ -13785,9 +14165,9 @@ "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.58", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.58.tgz", - "integrity": "sha512-al2l4r+24ZFL7WzyPTlyD0fC33LLzvxqLCwurtBibVPghRGO9hSTl+tis8t1kD7biPiH/en4U0I7o/nQbYeoVA==", + "version": "1.5.396", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.396.tgz", + "integrity": "sha512-yHiw2Y3C3H9U6TMbOfoWK/BPreiOPXRfTWPBwQBoZG6/8TB6eOPnsy5oaRYuatR7Fw2SJ4kKforgufeo7fq0EQ==", "dev": true, "license": "ISC" }, @@ -13863,14 +14243,14 @@ } }, "node_modules/enhanced-resolve": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", - "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", + "version": "5.24.3", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.24.3.tgz", + "integrity": "sha512-PwKooW9JUzh5chmYfHM3IQl5OkK2u2Nm011MgeZrss3JmFraUx/fqrf78kk8GUMYoibx/14MdwTl/1WKkG7TpQ==", "dev": true, "license": "MIT", "dependencies": { "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" + "tapable": "^2.3.3" }, "engines": { "node": ">=10.13.0" @@ -14019,14 +14399,11 @@ } }, "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", "dev": true, "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.2.4" - }, "engines": { "node": ">= 0.4" } @@ -14089,16 +14466,16 @@ } }, "node_modules/es-module-lexer": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz", - "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-2.3.1.tgz", + "integrity": "sha512-shc1dbU90Yl/xq1QrC7QRtfcwURZuVRfPhZbDoldJ1cn1gzDvBaBWlv0eFolj5+0znnPJz5TXLxsN77X/12KTA==", "dev": true, "license": "MIT" }, "node_modules/es-object-atoms": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", - "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.2.tgz", + "integrity": "sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==", "dev": true, "license": "MIT", "dependencies": { @@ -14109,15 +14486,16 @@ } }, "node_modules/es-set-tostringtag": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", - "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", "dev": true, "license": "MIT", "dependencies": { - "get-intrinsic": "^1.2.4", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", "has-tostringtag": "^1.0.2", - "hasown": "^2.0.1" + "hasown": "^2.0.2" }, "engines": { "node": ">= 0.4" @@ -14955,21 +15333,6 @@ "concat-map": "0.0.1" } }, - "node_modules/eslint/node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/eslint/node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -15111,29 +15474,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/eslint/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -15147,22 +15487,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/espree": { "version": "9.6.1", "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", @@ -15291,6 +15615,16 @@ "node": ">=0.8.x" } }, + "node_modules/events-universal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/events-universal/-/events-universal-1.0.1.tgz", + "integrity": "sha512-LUd5euvbMLpwOF8m6ivPCbhQeSiYVNb8Vs0fQ8QjXo0JTkEHpz8pxdQf0gStltaPpw0Cca8b39KxvK9cfKRiAw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "bare-events": "^2.7.0" + } + }, "node_modules/execa": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", @@ -15315,60 +15649,6 @@ "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/execa/node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/execa/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/execa/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/execa/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", @@ -15987,15 +16267,15 @@ } }, "node_modules/find-process": { - "version": "1.4.7", - "resolved": "https://registry.npmjs.org/find-process/-/find-process-1.4.7.tgz", - "integrity": "sha512-/U4CYp1214Xrp3u3Fqr9yNynUrr5Le4y0SsJh2lMDDSbpwYSz3M2SMWQC+wqcx79cN8PQtHQIL8KnuY9M66fdg==", + "version": "1.4.11", + "resolved": "https://registry.npmjs.org/find-process/-/find-process-1.4.11.tgz", + "integrity": "sha512-mAOh9gGk9WZ4ip5UjV0o6Vb4SrfnAmtsFNzkMRH9HQiFXVQnDyQFrSHTK5UoG6E+KV+s+cIznbtwpfN41l2nFA==", "dev": true, "license": "MIT", "dependencies": { - "chalk": "^4.0.0", - "commander": "^5.1.0", - "debug": "^4.1.1" + "chalk": "~4.1.2", + "commander": "^12.1.0", + "loglevel": "^1.9.2" }, "bin": { "find-process": "bin/find-process.js" @@ -16126,9 +16406,9 @@ "license": "ISC" }, "node_modules/follow-redirects": { - "version": "1.15.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", - "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.16.0.tgz", + "integrity": "sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==", "dev": true, "funding": [ { @@ -16180,15 +16460,17 @@ } }, "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.6.tgz", + "integrity": "sha512-vKatAh4SlVfgbv+YtmhiRjhEMJsYpsG1Y2rMQtR+SVSbytsSD1YGzDIcrAJmdFec88u/+VoGmxnl+80gL1tRCQ==", "dev": true, "license": "MIT", "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.4", + "mime-types": "^2.1.35" }, "engines": { "node": ">= 6" @@ -16450,17 +16732,22 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", "dev": true, "license": "MIT", "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -16501,6 +16788,20 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/get-stdin": { "version": "9.0.0", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", @@ -16721,13 +17022,6 @@ "node": ">=0.10.0" } }, - "node_modules/global-prefix/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true, - "license": "ISC" - }, "node_modules/globals": { "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", @@ -16792,13 +17086,13 @@ } }, "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", "dev": true, "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.1.3" + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -16920,9 +17214,9 @@ } }, "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", "dev": true, "license": "MIT", "engines": { @@ -16949,9 +17243,9 @@ } }, "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.4.tgz", + "integrity": "sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==", "license": "MIT", "dependencies": { "function-bind": "^1.1.2" @@ -17410,9 +17704,9 @@ "license": "MIT" }, "node_modules/immutable": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", - "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==", + "version": "5.1.9", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.9.tgz", + "integrity": "sha512-m8nVez3rwrgmWxtLMt1ZYXB2Lv7OKYn/disyxAlSDYAlKSlFoPPfIAmAM/M5xqL4m4C/wAPw7S2/CNaUii1Hxg==", "dev": true, "license": "MIT" }, @@ -17516,6 +17810,13 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "license": "ISC" }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true, + "license": "ISC" + }, "node_modules/internal-slot": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", @@ -18708,18 +19009,19 @@ } }, "node_modules/jest-dev-server": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/jest-dev-server/-/jest-dev-server-9.0.2.tgz", - "integrity": "sha512-Zc/JB0IlNNrpXkhBw+h86cGrde/Mey52KvF+FER2eyrtYJTHObOwW7Iarxm3rPyTKby5+3Y2QZtl8pRz/5GCxg==", + "version": "10.1.4", + "resolved": "https://registry.npmjs.org/jest-dev-server/-/jest-dev-server-10.1.4.tgz", + "integrity": "sha512-bGQ6sedNGtT6AFHhCVqGTXMPz7UyJi/ZrhNBgyqsP0XU9N8acCEIfqZEA22rOaZ+NdEVsaltk6tL7UT6aXfI7w==", "dev": true, + "license": "MIT", "dependencies": { "chalk": "^4.1.2", "cwd": "^0.10.0", "find-process": "^1.4.7", "prompts": "^2.4.2", - "spawnd": "^9.0.2", + "spawnd": "^10.1.4", "tree-kill": "^1.2.2", - "wait-on": "^7.2.0" + "wait-on": "^8.0.1" }, "engines": { "node": ">=16" @@ -19183,17 +19485,22 @@ } }, "node_modules/joi": { - "version": "17.13.3", - "resolved": "https://registry.npmjs.org/joi/-/joi-17.13.3.tgz", - "integrity": "sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA==", + "version": "18.2.3", + "resolved": "https://registry.npmjs.org/joi/-/joi-18.2.3.tgz", + "integrity": "sha512-N5A3KTWQpPWT4ExxxPlUx7WmykGXRzhNidWhV41d6Abu9YfI2NyWCJuxdPnslJCPWtbRpSVOWSnSS6GakLM/Rg==", "dev": true, "license": "BSD-3-Clause", "dependencies": { - "@hapi/hoek": "^9.3.0", - "@hapi/topo": "^5.1.0", - "@sideway/address": "^4.1.5", - "@sideway/formula": "^3.0.1", - "@sideway/pinpoint": "^2.0.0" + "@hapi/address": "^5.1.1", + "@hapi/formula": "^3.0.2", + "@hapi/hoek": "^11.0.7", + "@hapi/pinpoint": "^2.0.1", + "@hapi/tlds": "^1.1.1", + "@hapi/topo": "^6.0.2", + "@standard-schema/spec": "^1.1.0" + }, + "engines": { + "node": ">= 20" } }, "node_modules/jose": { @@ -20112,16 +20419,6 @@ "uc.micro": "^1.0.1" } }, - "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.11.5" - } - }, "node_modules/loader-utils": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", @@ -20244,6 +20541,20 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/loglevel": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.9.2.tgz", + "integrity": "sha512-HgMmCqIJSAKqo68l0rS2AanEWfkxaZ5wNiEFb5ggm08lDs9Xl2KxBlX3PTcaD2chBM1gXAYf491/M2Rv8Jwayg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6.0" + }, + "funding": { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/loglevel" + } + }, "node_modules/lookup-closest-locale": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/lookup-closest-locale/-/lookup-closest-locale-6.2.0.tgz", @@ -20505,6 +20816,16 @@ "dev": true, "license": "Apache-2.0" }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/mathml-tag-names": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", @@ -20839,6 +21160,98 @@ "node": ">=0.10.0" } }, + "node_modules/minimizer-webpack-plugin": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/minimizer-webpack-plugin/-/minimizer-webpack-plugin-5.6.1.tgz", + "integrity": "sha512-DoeAZz8Q1C1znwsUzej1fdoi4jCf7/+Em27ouLqfK/+3m8G+D7yDhUwrc3CNhjSzGUN1kn7Iv4sWmjflQHenpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.25", + "jest-worker": "^27.4.5", + "schema-utils": "^4.3.0", + "terser": "^5.31.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@minify-html/node": { + "optional": true + }, + "@swc/core": { + "optional": true + }, + "@swc/css": { + "optional": true + }, + "@swc/html": { + "optional": true + }, + "clean-css": { + "optional": true + }, + "cssnano": { + "optional": true + }, + "csso": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "html-minifier-terser": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "postcss": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/minimizer-webpack-plugin/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/minimizer-webpack-plugin/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, "node_modules/mitt": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", @@ -21059,6 +21472,14 @@ "tslib": "^2.0.3" } }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "dev": true, + "license": "MIT", + "optional": true + }, "node_modules/node-forge": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", @@ -21121,11 +21542,14 @@ } }, "node_modules/node-releases": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", - "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "version": "2.0.51", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.51.tgz", + "integrity": "sha512-wRNIrw4DmVLKQlbgOMdkMx27Wrpzes2hh5Jtbi2bjPd+4wJstWIqP5A+lscnqbm0xxmT5Bpg8Lec5ItEBwx6BQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "engines": { + "node": ">=18" + } }, "node_modules/normalize-package-data": { "version": "3.0.3", @@ -21623,21 +22047,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/os-locale/node_modules/cross-spawn": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.5.tgz", - "integrity": "sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/os-locale/node_modules/execa": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", @@ -21688,45 +22097,6 @@ "node": ">=8.12.0" } }, - "node_modules/os-locale/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/os-locale/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/os-locale/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/os-shim": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", @@ -21835,34 +22205,31 @@ } }, "node_modules/pac-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.2.tgz", - "integrity": "sha512-BFi3vZnO9X5Qt6NRz7ZOaPja3ic0PhlsmCRYLOpN11+mWBCR6XJDqW5RF3j8jm4WGGQZtBA+bTfxYzeKW73eHg==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.2.0.tgz", + "integrity": "sha512-TEB8ESquiLMc0lV8vcd5Ql/JAKAoyzHFXaStwjkzpOpC5Yv+pIzLfHvjTSdf3vpa2bMiUQrg9i6276yn8666aA==", "dev": true, "license": "MIT", "dependencies": { "@tootallnate/quickjs-emscripten": "^0.23.0", - "agent-base": "^7.0.2", + "agent-base": "^7.1.2", "debug": "^4.3.4", "get-uri": "^6.0.1", "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.5", + "https-proxy-agent": "^7.0.6", "pac-resolver": "^7.0.1", - "socks-proxy-agent": "^8.0.4" + "socks-proxy-agent": "^8.0.5" }, "engines": { "node": ">= 14" } }, "node_modules/pac-proxy-agent/node_modules/agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", "dev": true, "license": "MIT", - "dependencies": { - "debug": "^4.3.4" - }, "engines": { "node": ">= 14" } @@ -21882,13 +22249,13 @@ } }, "node_modules/pac-proxy-agent/node_modules/https-proxy-agent": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", - "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", "dev": true, "license": "MIT", "dependencies": { - "agent-base": "^7.0.2", + "agent-base": "^7.1.2", "debug": "4" }, "engines": { @@ -22500,24 +22867,6 @@ "postcss": "^8.4.31" } }, - "node_modules/postcss-import": { - "version": "16.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-16.1.0.tgz", - "integrity": "sha512-7hsAZ4xGXl4MW+OKEWCnF6T5jqBw80/EE9aXg1r2yyn1RsVEU8EtKXbijEODa+rg7iih4bKf7vlvTGYR4CnPNg==", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" - }, - "engines": { - "node": ">=18.0.0" - }, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, "node_modules/postcss-loader": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.2.1.tgz", @@ -23241,34 +23590,31 @@ } }, "node_modules/proxy-agent": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.4.0.tgz", - "integrity": "sha512-u0piLU+nCOHMgGjRbimiXmA9kM/L9EHh3zL81xCdp7m+Y2pHIsnmbdDoEDoAz5geaonNR6q6+yOPQs6n4T6sBQ==", + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.5.0.tgz", + "integrity": "sha512-TmatMXdr2KlRiA2CyDu8GqR8EjahTG3aY3nXjdzFyoZbmB8hrBsTyMezhULIXKnC0jpfjlmiZ3+EaCzoInSu/A==", "dev": true, "license": "MIT", "dependencies": { - "agent-base": "^7.0.2", + "agent-base": "^7.1.2", "debug": "^4.3.4", "http-proxy-agent": "^7.0.1", - "https-proxy-agent": "^7.0.3", + "https-proxy-agent": "^7.0.6", "lru-cache": "^7.14.1", - "pac-proxy-agent": "^7.0.1", + "pac-proxy-agent": "^7.1.0", "proxy-from-env": "^1.1.0", - "socks-proxy-agent": "^8.0.2" + "socks-proxy-agent": "^8.0.5" }, "engines": { "node": ">= 14" } }, "node_modules/proxy-agent/node_modules/agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", "dev": true, "license": "MIT", - "dependencies": { - "debug": "^4.3.4" - }, "engines": { "node": ">= 14" } @@ -23288,13 +23634,13 @@ } }, "node_modules/proxy-agent/node_modules/https-proxy-agent": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", - "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", "dev": true, "license": "MIT", "dependencies": { - "agent-base": "^7.0.2", + "agent-base": "^7.1.2", "debug": "4" }, "engines": { @@ -23331,13 +23677,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", - "dev": true, - "license": "ISC" - }, "node_modules/psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", @@ -23383,16 +23722,16 @@ } }, "node_modules/puppeteer-core": { - "version": "23.3.0", - "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-23.3.0.tgz", - "integrity": "sha512-sB2SsVMFs4gKad5OCdv6w5vocvtEUrRl0zQqSyRPbo/cj1Ktbarmhxy02Zyb9R9HrssBcJDZbkrvBnbaesPyYg==", + "version": "23.11.1", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-23.11.1.tgz", + "integrity": "sha512-3HZ2/7hdDKZvZQ7dhhITOUg4/wOrDRjyK2ZBllRB0ZCOi9u0cwq1ACHDjBB+nX+7+kltHjQvBRdeY7+W0T+7Gg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@puppeteer/browsers": "2.4.0", - "chromium-bidi": "0.6.5", - "debug": "^4.3.6", - "devtools-protocol": "0.0.1330662", + "@puppeteer/browsers": "2.6.1", + "chromium-bidi": "0.11.0", + "debug": "^4.4.0", + "devtools-protocol": "0.0.1367902", "typed-query-selector": "^2.12.0", "ws": "^8.18.0" }, @@ -23400,10 +23739,28 @@ "node": ">=18" } }, + "node_modules/puppeteer-core/node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, "node_modules/puppeteer-core/node_modules/devtools-protocol": { - "version": "0.0.1330662", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1330662.tgz", - "integrity": "sha512-pzh6YQ8zZfz3iKlCvgzVCu22NdpZ8hNmwU6WnQjNVquh0A9iVosPtNLWDwaWVGyrntQlltPFztTMK5Cg6lfCuw==", + "version": "0.0.1367902", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1367902.tgz", + "integrity": "sha512-XxtPuC3PGakY6PD7dG66/o8KwJ/LkH2/EKe19Dcw58w53dv4/vSQEkn/SzuyhHE2q4zPgCkxQBxus3VV4ql+Pg==", "dev": true, "license": "BSD-3-Clause" }, @@ -23477,13 +23834,6 @@ ], "license": "MIT" }, - "node_modules/queue-tick": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", - "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", - "dev": true, - "license": "MIT" - }, "node_modules/quick-format-unescaped": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz", @@ -23552,13 +23902,6 @@ "rc": "cli.js" } }, - "node_modules/rc/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true, - "license": "ISC" - }, "node_modules/rc/node_modules/strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", @@ -23761,26 +24104,6 @@ } } }, - "node_modules/read-cache": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "dev": true, - "license": "MIT", - "dependencies": { - "pify": "^2.3.0" - } - }, - "node_modules/read-cache/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/read-pkg": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", @@ -24505,9 +24828,9 @@ "license": "MIT" }, "node_modules/rxjs": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", - "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -24588,49 +24911,51 @@ "license": "MIT" }, "node_modules/sass": { - "version": "1.78.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.78.0.tgz", - "integrity": "sha512-AaIqGSrjo5lA2Yg7RvFZrlXDBCp3nV4XP73GrLGvdRWWwk+8H3l0SDvq/5bA4eF+0RFPLuWUk3E+P1U/YqnpsQ==", + "version": "1.102.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.102.0.tgz", + "integrity": "sha512-NSOyTnaQF7rTAEOtI2fwb386vL+akyiQLBZu8Na7hXCb+umJy0GAqlcMIaqACZ6Z1VgTBS4K9PG6B3IdjHGJsw==", "dev": true, "license": "MIT", "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", + "chokidar": "^5.0.0", + "immutable": "^5.1.5", "source-map-js": ">=0.6.2 <2.0.0" }, "bin": { "sass": "sass.js" }, "engines": { - "node": ">=14.0.0" + "node": ">=20.19.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" } }, "node_modules/sass-loader": { - "version": "12.6.0", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-12.6.0.tgz", - "integrity": "sha512-oLTaH0YCtX4cfnJZxKSLAyglED0naiYfNG1iXfU5w1LNZ+ukoA5DtyDIN5zmKVZwYNJP4KRc5Y3hkWga+7tYfA==", + "version": "16.0.8", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-16.0.8.tgz", + "integrity": "sha512-hcov4ZwZJIGbEuyNr9EmiTmZueyrxSToE6GOzoZnq5JM7ecRO7ttyvilPn+VmRsqiP16+VYZzVnGZj/hzZgKBA==", "dev": true, "license": "MIT", "dependencies": { - "klona": "^2.0.4", "neo-async": "^2.6.2" }, "engines": { - "node": ">= 12.13.0" + "node": ">= 18.12.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/webpack" }, "peerDependencies": { - "fibers": ">= 3.1.0", - "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", + "@rspack/core": "0.x || ^1.0.0 || ^2.0.0-0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", "sass": "^1.3.0", "sass-embedded": "*", "webpack": "^5.0.0" }, "peerDependenciesMeta": { - "fibers": { + "@rspack/core": { "optional": true }, "node-sass": { @@ -24641,9 +24966,42 @@ }, "sass-embedded": { "optional": true + }, + "webpack": { + "optional": true } } }, + "node_modules/sass/node_modules/chokidar": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-5.0.0.tgz", + "integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==", + "dev": true, + "license": "MIT", + "dependencies": { + "readdirp": "^5.0.0" + }, + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/sass/node_modules/readdirp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-5.0.0.tgz", + "integrity": "sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 20.19.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, "node_modules/sax": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", @@ -24674,9 +25032,9 @@ } }, "node_modules/schema-utils": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", - "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.3.tgz", + "integrity": "sha512-eflK8wEtyOE6+hsaRVPxvUKYCpRgzLqDTb8krvAsRIwOGlHoSgYLgBXoubGgLd2fT41/OUYdb48v4k4WWHQurA==", "dev": true, "license": "MIT", "dependencies": { @@ -24686,7 +25044,7 @@ "ajv-keywords": "^5.1.0" }, "engines": { - "node": ">= 12.13.0" + "node": ">= 10.13.0" }, "funding": { "type": "opencollective", @@ -25002,34 +25360,37 @@ } }, "node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "license": "MIT", "dependencies": { - "shebang-regex": "^1.0.0" + "shebang-regex": "^3.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/shell-quote": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", - "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.10.0.tgz", + "integrity": "sha512-w1aiOKwKuRgtwAReIIj89puqg+I7GvX4IbLrvmhXbzQsj1+Zwi4VO3+fa6ZF91TWSjIxoEkKnMeHcLEODK5ZXA==", "dev": true, "license": "MIT", + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -25453,13 +25814,13 @@ } }, "node_modules/socks-proxy-agent": { - "version": "8.0.4", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz", - "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==", + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz", + "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==", "dev": true, "license": "MIT", "dependencies": { - "agent-base": "^7.1.1", + "agent-base": "^7.1.2", "debug": "^4.3.4", "socks": "^2.8.3" }, @@ -25468,14 +25829,11 @@ } }, "node_modules/socks-proxy-agent/node_modules/agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", "dev": true, "license": "MIT", - "dependencies": { - "debug": "^4.3.4" - }, "engines": { "node": ">= 14" } @@ -25578,10 +25936,11 @@ } }, "node_modules/spawnd": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/spawnd/-/spawnd-9.0.2.tgz", - "integrity": "sha512-nl8DVHEDQ57IcKakzpjanspVChkMpGLuVwMR/eOn9cXE55Qr6luD2Kn06sA0ootRMdgrU4tInN6lA6ohTNvysw==", + "version": "10.1.4", + "resolved": "https://registry.npmjs.org/spawnd/-/spawnd-10.1.4.tgz", + "integrity": "sha512-drqHc0mKJmtMsiGMOCwzlc5eZ0RPtRvT7tQAluW2A0qUc0G7TQ8KLcn3E6K5qzkLkH2UkS3nYQiVGULvvsD9dw==", "dev": true, + "license": "MIT", "dependencies": { "signal-exit": "^4.1.0", "tree-kill": "^1.2.2" @@ -25781,18 +26140,15 @@ } }, "node_modules/streamx": { - "version": "2.20.0", - "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.20.0.tgz", - "integrity": "sha512-ZGd1LhDeGFucr1CUCTBOS58ZhEendd0ttpGT3usTvosS4ntIwKN9LJFp+OeCSprsCPL14BXVRZlHGRY1V9PVzQ==", + "version": "2.28.0", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.28.0.tgz", + "integrity": "sha512-1Yowhzjf0ivGMrTIkY9hav5TxobO9qIVqUE41fiCGMGgc3CLlf4MY+9AHmZqBWgDTue0fY9zWjYFVyf6Diuobw==", "dev": true, "license": "MIT", "dependencies": { + "events-universal": "^1.0.0", "fast-fifo": "^1.3.2", - "queue-tick": "^1.0.1", "text-decoder": "^1.1.0" - }, - "optionalDependencies": { - "bare-events": "^2.2.0" } }, "node_modules/string_decoder": { @@ -26243,14 +26599,6 @@ "node": ">=6" } }, - "node_modules/stylelint/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true, - "license": "ISC", - "peer": true - }, "node_modules/stylelint/node_modules/is-plain-object": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", @@ -26419,19 +26767,23 @@ } }, "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.3.tgz", + "integrity": "sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==", "dev": true, "license": "MIT", "engines": { "node": ">=6" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, "node_modules/tar-fs": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.6.tgz", - "integrity": "sha512-iokBDQQkUyeXhgPYaZxmczGPhnhXZ0CmrqI+MOb/WFGS9DW5wnfrLgtjUJBvz50vQ3qfRwJ62QVoCFu8mPVu5w==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.1.3.tgz", + "integrity": "sha512-/hU4AXnIdZu+Gvl1pk0oI5f5HxWsCJRtY2aFaJdk9VvyL48DWU6iU5WAIPG+wIi1YvWA6eTJvIviP/tMAZZNwQ==", "dev": true, "license": "MIT", "dependencies": { @@ -26439,18 +26791,19 @@ "tar-stream": "^3.1.5" }, "optionalDependencies": { - "bare-fs": "^2.1.1", - "bare-path": "^2.1.0" + "bare-fs": "^4.0.1", + "bare-path": "^3.0.0" } }, "node_modules/tar-fs/node_modules/tar-stream": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", - "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.2.0.tgz", + "integrity": "sha512-ojzvCvVaNp6aOTFmG7jaRD0meowIAuPc3cMMhSgKiVWws1GyHbGd/xvnyuRKcKlMpt3qvxx6r0hreCNITP9hIg==", "dev": true, "license": "MIT", "dependencies": { "b4a": "^1.6.4", + "bare-fs": "^4.5.5", "fast-fifo": "^1.2.0", "streamx": "^2.15.0" } @@ -26472,6 +26825,16 @@ "node": ">=6" } }, + "node_modules/teex": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/teex/-/teex-1.0.1.tgz", + "integrity": "sha512-eYE6iEI62Ni1H8oIa7KlDU6uQBtqr4Eajni3wX7rpfXD8ysFx8z0+dri+KWEPWpBsxXfxu58x/0jvTVT1ekOSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "streamx": "^2.12.5" + } + }, "node_modules/terser": { "version": "5.32.0", "resolved": "https://registry.npmjs.org/terser/-/terser-5.32.0.tgz", @@ -27146,9 +27509,9 @@ } }, "node_modules/typed-query-selector": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/typed-query-selector/-/typed-query-selector-2.12.0.tgz", - "integrity": "sha512-SbklCd1F0EiZOyPiW192rrHZzZ5sBijB6xM+cpmrwDqObvdtunOHHIk9fCGsoK5JVIYXoyEp4iEdE3upFH3PAg==", + "version": "2.12.2", + "resolved": "https://registry.npmjs.org/typed-query-selector/-/typed-query-selector-2.12.2.tgz", + "integrity": "sha512-EOPFbyIub4ngnEdqi2yOcNeDLaX/0jcE1JoAXQDDMIthap7FoN795lc/SHfIq2d416VufXpM8z/lD+WRm2gfOQ==", "dev": true, "license": "MIT" }, @@ -27335,9 +27698,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", - "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", "dev": true, "funding": [ { @@ -27356,7 +27719,7 @@ "license": "MIT", "dependencies": { "escalade": "^3.2.0", - "picocolors": "^1.1.0" + "picocolors": "^1.1.1" }, "bin": { "update-browserslist-db": "cli.js" @@ -27597,13 +27960,6 @@ "requires-port": "^1.0.0" } }, - "node_modules/urlpattern-polyfill": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-10.0.0.tgz", - "integrity": "sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg==", - "dev": true, - "license": "MIT" - }, "node_modules/use-callback-ref": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.2.tgz", @@ -27783,17 +28139,17 @@ } }, "node_modules/wait-on": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-7.2.0.tgz", - "integrity": "sha512-wCQcHkRazgjG5XoAq9jbTMLpNIjoSlZslrJ2+N9MxDsGEv1HnFoVjOCexL0ESva7Y9cu350j+DWADdk54s4AFQ==", + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-8.0.5.tgz", + "integrity": "sha512-J3WlS0txVHkhLRb2FsmRg3dkMTCV1+M6Xra3Ho7HzZDHpE7DCOnoSoCJsZotrmW3uRMhvIJGSKUKrh/MeF4iag==", "dev": true, "license": "MIT", "dependencies": { - "axios": "^1.6.1", - "joi": "^17.11.0", + "axios": "^1.12.1", + "joi": "^18.0.1", "lodash": "^4.17.21", "minimist": "^1.2.8", - "rxjs": "^7.8.1" + "rxjs": "^7.8.2" }, "bin": { "wait-on": "bin/wait-on" @@ -28159,35 +28515,32 @@ } }, "node_modules/webpack": { - "version": "5.96.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.96.1.tgz", - "integrity": "sha512-l2LlBSvVZGhL4ZrPwyr8+37AunkcYj5qh8o6u2/2rzoPc8gxFJkLj1WxNgooi9pnoc06jh0BjuXnamM4qlujZA==", + "version": "5.109.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.109.0.tgz", + "integrity": "sha512-vomrngskVVXEZF9sMZfYAd4pXZUnfaWdJGlF+BTNF+gJBCKYCQBnOeVPlrh39Ewl7nlCsirDplMy6o5g9xJHBg==", "dev": true, "license": "MIT", "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.14.0", - "browserslist": "^4.24.0", + "@types/estree": "^1.0.8", + "@types/json-schema": "^7.0.15", + "@webassemblyjs/ast": "^1.14.1", + "@webassemblyjs/wasm-edit": "^1.14.1", + "@webassemblyjs/wasm-parser": "^1.14.1", + "acorn": "^8.16.0", + "browserslist": "^4.28.1", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.17.1", - "es-module-lexer": "^1.2.1", + "enhanced-resolve": "^5.24.2", + "es-module-lexer": "^2.1.0", "eslint-scope": "5.1.1", "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.2.11", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", + "mime-db": "^1.54.0", + "minimizer-webpack-plugin": "^5.6.1", "neo-async": "^2.6.2", - "schema-utils": "^3.2.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.10", - "watchpack": "^2.4.1", - "webpack-sources": "^3.2.3" + "schema-utils": "^4.3.3", + "tapable": "^2.3.0", + "watchpack": "^2.5.2", + "webpack-sources": "^3.5.1" }, "bin": { "webpack": "bin/webpack.js" @@ -28333,60 +28686,6 @@ "node": ">=14" } }, - "node_modules/webpack-cli/node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/webpack-cli/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/webpack-cli/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/webpack-cli/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/webpack-dev-middleware": { "version": "5.3.4", "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz", @@ -28552,72 +28851,42 @@ } }, "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.5.1.tgz", + "integrity": "sha512-jyuiGJdtvY434z5bUZrjz67v76/ePNvFZTp9Mdz29IlH4+GPsgyGjiv0fKI+M7BdkU6ADjulUcKAd3tUK3WlEw==", "dev": true, "license": "MIT", "engines": { "node": ">=10.13.0" } }, - "node_modules/webpack/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/webpack/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "node_modules/webpack/node_modules/mime-db": { + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", "dev": true, "license": "MIT", - "peerDependencies": { - "ajv": "^6.9.1" + "engines": { + "node": ">= 0.6" } }, - "node_modules/webpack/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true, - "license": "MIT" - }, - "node_modules/webpack/node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "node_modules/webpack/node_modules/watchpack": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.5.2.tgz", + "integrity": "sha512-6i/00NBjP4yGPs+caKSyRfpTF/8Torsu0MOW3mMzIbhgISFder8i7xbqgHlLMwJrdiN8ndBV3UA1/AfzPSr+jg==", "dev": true, "license": "MIT", "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" + "graceful-fs": "^4.1.2" }, "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "node": ">=10.13.0" } }, "node_modules/websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.5.tgz", + "integrity": "sha512-ZL2+3c7kMBdIRCMz6l8jQMHyGVxj+UL+xVk74Ombiciboca8rHa15L86B19E5oh1pL9Ii/uj54gtsIrZGMo6zA==", "dev": true, "license": "Apache-2.0", "dependencies": { diff --git a/package.json b/package.json index 90dbf5e5..c6a4fb48 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,7 @@ "@types/react-dom": "^18.3.1", "@types/wordpress__block-library": "^2.6.3", "@types/wordpress__blocks": "^12.5.14", - "@wordpress/scripts": "^30.4.0", + "@wordpress/scripts": "^30.7.0", "ajv": "^8.17.1", "concurrently": "^9.1.0", "copy-webpack-plugin": "^12.0.2", diff --git a/plan.md b/plan.md index 055fb6a3..97f05b12 100644 --- a/plan.md +++ b/plan.md @@ -151,129 +151,129 @@ Rows are ordered by remediation priority: severity first, runtime before develop | Alert | GHSA | Severity | Ecosystem | Affected package | Relationship / scope | Locked vulnerable version(s) | First patched | Causal family set | Representative locked path | Child PR | Status | | ---: | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 44 | GHSA-95m3-7q98-8xr5 | critical | npm | `sha.js` | transitive / runtime | `2.4.11` | `2.4.12` | PGL | `sha.js@2.4.11 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | -| 42 | GHSA-fjxv-7rqg-78g4 | critical | npm | `form-data` | transitive / development | `4.0.0` | `4.0.4` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 77 | GHSA-5rq4-664w-9x2c | critical | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.0` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 146 | GHSA-w7jw-789q-3m8p | critical | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.8.4` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | unassigned | baseline open | -| 164 | GHSA-xv26-6w52-cph6 | critical | npm | `websocket-driver` | transitive / development | `0.7.4` | `0.7.5` | WPS | `websocket-driver@0.7.4 ← sockjs@0.3.24 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 42 | GHSA-fjxv-7rqg-78g4 | critical | npm | `form-data` | transitive / development | `4.0.0` | `4.0.4` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 77 | GHSA-5rq4-664w-9x2c | critical | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.0` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 146 | GHSA-w7jw-789q-3m8p | critical | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.8.4` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | `agent/maintenance-003-wordpress-scripts` | WPS + CONCURRENTLY paths removed; vulnerable WEBEXT path remains; child branch validated locally | +| 164 | GHSA-xv26-6w52-cph6 | critical | npm | `websocket-driver` | transitive / development | `0.7.4` | `0.7.5` | WPS | `websocket-driver@0.7.4 ← sockjs@0.3.24 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | | 3 | GHSA-pwfr-8pq7-x9qv | high | npm | `octokit` | transitive / runtime | `3.1.1` | `3.1.2` | PGL | `octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | -| 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | -| 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | -| 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | +| 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | | 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 58 | GHSA-2w69-qvjg-hvjx | high | npm | `@remix-run/router` | transitive / runtime | `1.21.0` | `1.23.2` | ROUTER | `@remix-run/router@1.21.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | -| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable BLK + WEBEXT + WPS paths remain; PR #201 open | +| 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable BLK + WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | | 192 | GHSA-6g55-p6wh-862q | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.12` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 195 | GHSA-r28c-9q8g-f849 | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.18` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | -| 6 | GHSA-3h5v-q93c-6h6q | high | npm | `ws` | transitive / development | `8.13.0` | `8.17.1` | WPS | `ws@8.13.0 ← puppeteer-core@20.9.0 ← lighthouse@10.4.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 33 | GHSA-pq67-2wwv-3xjx | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.7` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 37 | GHSA-8cj5-5rvv-wf4v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.9` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 46 | GHSA-vj76-c3g6-qr5v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.1.1` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 49 | GHSA-7mvr-c777-76hp | high | npm | `playwright` | transitive / development | `1.48.2` | `1.55.1` | WPS | `playwright@1.48.2 ← @playwright/test@1.48.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 54 | GHSA-5gfm-wpxj-wjgq | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | unassigned | baseline open | +| 6 | GHSA-3h5v-q93c-6h6q | high | npm | `ws` | transitive / development | `8.13.0` | `8.17.1` | WPS | `ws@8.13.0 ← puppeteer-core@20.9.0 ← lighthouse@10.4.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 33 | GHSA-pq67-2wwv-3xjx | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.7` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 37 | GHSA-8cj5-5rvv-wf4v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.9` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 46 | GHSA-vj76-c3g6-qr5v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.1.1` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 49 | GHSA-7mvr-c777-76hp | high | npm | `playwright` | transitive / development | `1.48.2` | `1.55.1` | WPS | `playwright@1.48.2 ← @playwright/test@1.48.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 54 | GHSA-5gfm-wpxj-wjgq | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | | 63 | GHSA-vvj3-c3rp-c85p | high | composer | `phpunit/phpunit` | unknown / development | `9.6.21` | `9.6.33` | PHPUNIT | `phpunit/phpunit@9.6.21 (direct require-dev in composer.json)` | unassigned | baseline open | -| 70 | GHSA-43fc-jf86-j433 | high | npm | `axios` | transitive / development | `1.7.7` | `1.13.5` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 79 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `9.0.3` | `9.0.7` | WPS | `minimatch@9.0.3 ← @typescript-eslint/typescript-estree@6.21.0 ← @typescript-eslint/parser@6.21.0 ← @wordpress/eslint-plugin@21.0.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 70 | GHSA-43fc-jf86-j433 | high | npm | `axios` | transitive / development | `1.7.7` | `1.13.5` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 79 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `9.0.3` | `9.0.7` | WPS | `minimatch@9.0.3 ← @typescript-eslint/typescript-estree@6.21.0 ← @typescript-eslint/parser@6.21.0 ← @wordpress/eslint-plugin@21.0.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | | 80 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `5.1.6` | `5.1.8` | WEBPACK | `minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | unassigned | baseline open | -| 83 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `3.0.8, 3.1.2` | `3.1.3` | ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS | `minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | unassigned | baseline open | -| 84 | GHSA-5c6j-r48x-rmvq | high | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.3` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | unassigned | baseline open | -| 85 | GHSA-xpqw-6gx7-v673 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.3` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 88 | GHSA-wf6x-7x77-mvgw | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.8` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 91 | GHSA-rf6f-7fwh-wjgh | high | npm | `flatted` | transitive / development | `3.3.1` | `3.4.2` | ESLINT-RESOLVER + WEBEXT + WPS | `flatted@3.3.1 ← flat-cache@3.2.0 ← file-entry-cache@6.0.1 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 93 | GHSA-ppp5-5v6c-4jwp | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | unassigned | baseline open | -| 94 | GHSA-q67f-28xg-22rw | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | unassigned | baseline open | -| 96 | GHSA-2328-f5f3-gj25 | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | unassigned | baseline open | -| 103 | GHSA-r5fr-rjxr-66jc | high | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | unassigned | baseline open | -| 104 | GHSA-6v7q-wjvx-w8wg | high | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.2` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 117 | GHSA-6chq-wfr3-2hj9 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 120 | GHSA-pf86-5x62-jrwf | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 125 | GHSA-q3j6-qgpj-74h6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.1` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | unassigned | baseline open | -| 126 | GHSA-v39h-62p7-jpjc | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.2` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | unassigned | baseline open | -| 127 | GHSA-fv7c-fp4j-7gwp | high | npm | `@babel/plugin-transform-modules-systemjs` | transitive / development | `7.25.9` | `7.29.4` | BABEL + WPS | `@babel/plugin-transform-modules-systemjs@7.25.9 ← @babel/preset-env@7.26.0` | unassigned | baseline open | -| 130 | GHSA-q8qp-cvcw-x6jj | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 83 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `3.0.8, 3.1.2` | `3.1.3` | ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS | `minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 84 | GHSA-5c6j-r48x-rmvq | high | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.3` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 85 | GHSA-xpqw-6gx7-v673 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.3` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 88 | GHSA-wf6x-7x77-mvgw | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.8` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 91 | GHSA-rf6f-7fwh-wjgh | high | npm | `flatted` | transitive / development | `3.3.1` | `3.4.2` | ESLINT-RESOLVER + WEBEXT + WPS | `flatted@3.3.1 ← flat-cache@3.2.0 ← file-entry-cache@6.0.1 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 93 | GHSA-ppp5-5v6c-4jwp | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 94 | GHSA-q67f-28xg-22rw | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 96 | GHSA-2328-f5f3-gj25 | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 103 | GHSA-r5fr-rjxr-66jc | high | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | +| 104 | GHSA-6v7q-wjvx-w8wg | high | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.2` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 117 | GHSA-6chq-wfr3-2hj9 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 120 | GHSA-pf86-5x62-jrwf | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 125 | GHSA-q3j6-qgpj-74h6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.1` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | `agent/maintenance-003-wordpress-scripts` | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 126 | GHSA-v39h-62p7-jpjc | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.2` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | `agent/maintenance-003-wordpress-scripts` | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 127 | GHSA-fv7c-fp4j-7gwp | high | npm | `@babel/plugin-transform-modules-systemjs` | transitive / development | `7.25.9` | `7.29.4` | BABEL + WPS | `@babel/plugin-transform-modules-systemjs@7.25.9 ← @babel/preset-env@7.26.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable BABEL + WPS paths remain; child branch documents upstream WPS residual | +| 130 | GHSA-q8qp-cvcw-x6jj | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | | 136 | GHSA-ph9p-34f9-6g65 | high | npm | `tmp` | transitive / development | `0.2.3` | `0.2.6` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | unassigned | baseline open | -| 137 | GHSA-pmwg-cvhr-8vh7 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 141 | GHSA-j5f8-grm9-p9fc | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 143 | GHSA-p92q-9vqr-4j8v | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 144 | GHSA-3g43-6gmg-66jw | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 148 | GHSA-35jp-ww65-95wh | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 155 | GHSA-hmw2-7cc7-3qxx | high | npm | `form-data` | transitive / development | `4.0.0` | `4.0.6` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 158 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / development | `7.5.10` | `7.5.11` | WPS | `ws@7.5.10 ← webpack-bundle-analyzer@4.10.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 166 | GHSA-xcpc-8h2w-3j85 | high | npm | `adm-zip` | transitive / development | `0.5.16` | `0.6.0` | WEBEXT + WPS | `adm-zip@0.5.16 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 167 | GHSA-395f-4hp3-45gv | high | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.9.0` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | unassigned | baseline open | -| 172 | GHSA-v245-v573-v5vm | high | npm | `linkify-it` | transitive / development | `3.0.3` | `5.0.2` | WPS | `linkify-it@3.0.3 ← markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 173 | GHSA-2p49-hgcm-8545 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.4` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 174 | GHSA-4c8g-83qw-93j6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.3` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | unassigned | baseline open | -| 177 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 178 | GHSA-v2hh-gcrm-f6hx | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.4` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | unassigned | baseline open | -| 181 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `4.1.0` | `4.3.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 182 | GHSA-v56q-mh7h-f735 | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 183 | GHSA-xvcm-6775-5m9r | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 184 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `1.1.11` | `1.1.16` | ESLINT-RESOLVER + WEBEXT + WPS | `brace-expansion@1.1.11 ← minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | unassigned | baseline open | -| 187 | GHSA-jr5f-v2jv-69x6 | high | npm | `axios` | transitive / development | `1.7.7` | `1.8.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 191 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `2.0.1` | `2.1.2` | WEBPACK + WPS | `brace-expansion@2.0.1 ← minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | unassigned | baseline open | +| 137 | GHSA-pmwg-cvhr-8vh7 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 141 | GHSA-j5f8-grm9-p9fc | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 143 | GHSA-p92q-9vqr-4j8v | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 144 | GHSA-3g43-6gmg-66jw | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 148 | GHSA-35jp-ww65-95wh | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 155 | GHSA-hmw2-7cc7-3qxx | high | npm | `form-data` | transitive / development | `4.0.0` | `4.0.6` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 158 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / development | `7.5.10` | `7.5.11` | WPS | `ws@7.5.10 ← webpack-bundle-analyzer@4.10.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 166 | GHSA-xcpc-8h2w-3j85 | high | npm | `adm-zip` | transitive / development | `0.5.16` | `0.6.0` | WEBEXT + WPS | `adm-zip@0.5.16 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 167 | GHSA-395f-4hp3-45gv | high | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.9.0` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | `agent/maintenance-003-wordpress-scripts` | WPS + CONCURRENTLY paths removed; vulnerable WEBEXT path remains; child branch validated locally | +| 172 | GHSA-v245-v573-v5vm | high | npm | `linkify-it` | transitive / development | `3.0.3` | `5.0.2` | WPS | `linkify-it@3.0.3 ← markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 173 | GHSA-2p49-hgcm-8545 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.4` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 174 | GHSA-4c8g-83qw-93j6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.3` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | `agent/maintenance-003-wordpress-scripts` | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 177 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 178 | GHSA-v2hh-gcrm-f6hx | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.4` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | `agent/maintenance-003-wordpress-scripts` | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 181 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `4.1.0` | `4.3.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 182 | GHSA-v56q-mh7h-f735 | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 183 | GHSA-xvcm-6775-5m9r | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 184 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `1.1.11` | `1.1.16` | ESLINT-RESOLVER + WEBEXT + WPS | `brace-expansion@1.1.11 ← minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 187 | GHSA-jr5f-v2jv-69x6 | high | npm | `axios` | transitive / development | `1.7.7` | `1.8.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 191 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `2.0.1` | `2.1.2` | WEBPACK + WPS | `brace-expansion@2.0.1 ← minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBPACK + WPS paths remain; child branch documents upstream WPS residual | | 24 | GHSA-mwcw-c2x4-8c55 | medium | npm | `nanoid` | transitive / runtime | `3.3.7` | `3.3.8` | BLK | `nanoid@3.3.7 ← postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 29 | GHSA-x4c5-c7rf-jjgv | medium | npm | `@octokit/endpoint` | transitive / runtime | `9.0.5` | `9.0.6` | PGL | `@octokit/endpoint@9.0.5 ← @octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 30 | GHSA-xx4v-prfh-6cgc | medium | npm | `@octokit/request-error` | transitive / runtime | `5.1.0` | `5.1.1` | PGL | `@octokit/request-error@5.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 32 | GHSA-rmvr-2pp2-xj38 | medium | npm | `@octokit/request` | transitive / runtime | `8.4.0` | `8.4.1` | PGL | `@octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | -| 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | +| 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | | 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; PR #201 open | +| 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents unchanged WPS residual | | 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | -| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable BLK + WEBEXT + WPS paths remain; PR #201 open | +| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable BLK + WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | | 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | | 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | | 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | | 190 | GHSA-qx2v-qp2m-jg93 | medium | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.10` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 193 | GHSA-337j-9hxr-rhxg | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | | 194 | GHSA-wrjc-x8rr-h8h6 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 36 | GHSA-4www-5p9h-95mh | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.8` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 38 | GHSA-4v9v-hfq4-rm2v | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 39 | GHSA-9jgg-88mc-972h | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 51 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.14.2` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 52 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.1.1` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 53 | GHSA-65ch-62r8-g69g | medium | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | unassigned | baseline open | -| 62 | GHSA-xxjr-mmjv-4gpg | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.17.23` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | unassigned | baseline open | -| 101 | GHSA-3v7f-55p6-f55p | medium | npm | `picomatch` | transitive / development | `2.3.1` | `2.3.2` | ESLINT-RESOLVER + WEBPACK + WPS | `picomatch@2.3.1 ← micromatch@4.0.8 ← ts-loader@9.5.1` | unassigned | baseline open | -| 102 | GHSA-f23m-r3pf-42rh | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | unassigned | baseline open | -| 108 | GHSA-r4q5-vmmm-2653 | medium | npm | `follow-redirects` | transitive / development | `1.15.9` | `1.16.0` | WPS | `follow-redirects@1.15.9 ← axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 109 | GHSA-fvcv-3m26-pcqx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 110 | GHSA-3p68-rc4w-qgx5 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 115 | GHSA-v2v4-37r5-5v8g | medium | npm | `ip-address` | transitive / development | `9.0.5` | `10.1.1` | WPS | `ip-address@9.0.5 ← socks@2.8.3 ← socks-proxy-agent@8.0.4 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 119 | GHSA-3w6x-2g7m-8v23 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 121 | GHSA-m7pr-hjqh-92cm | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 122 | GHSA-445q-vr5w-6q77 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 129 | GHSA-xx6v-rp6x-q39c | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 131 | GHSA-79cf-xcqc-c78w | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.4` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 134 | GHSA-qj8w-gfj5-8c6v | medium | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.5` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | unassigned | baseline open | -| 138 | GHSA-w9j2-pvgh-6h63 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 147 | GHSA-898c-q2cr-xwhg | medium | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 151 | GHSA-6v5v-wf23-fmfq | medium | npm | `markdown-it` | transitive / development | `12.3.2` | `14.2.0` | WPS | `markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 152 | GHSA-v6wh-96g9-6wx3 | medium | npm | `launch-editor` | transitive / development | `2.9.1` | `2.14.1` | WPS | `launch-editor@2.9.1 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 154 | GHSA-mx8g-39q3-5c79 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.5` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 160 | GHSA-64mm-vxmg-q3vj | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.10` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 162 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 163 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.2.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 169 | GHSA-f5vj-f2hx-8m93 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 170 | GHSA-m28w-2pqf-7qgj | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 179 | GHSA-mmx7-hfxf-jppx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 180 | GHSA-7q8q-rj6j-mhjq | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL + WEBEXT + WPS | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | -| 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL + WEBEXT + WPS | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | -| 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL + WEBEXT + WPS | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | -| 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL + WEBEXT + WPS | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | +| 36 | GHSA-4www-5p9h-95mh | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.8` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 38 | GHSA-4v9v-hfq4-rm2v | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 39 | GHSA-9jgg-88mc-972h | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 51 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.14.2` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 52 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.1.1` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 53 | GHSA-65ch-62r8-g69g | medium | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 62 | GHSA-xxjr-mmjv-4gpg | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.17.23` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | +| 101 | GHSA-3v7f-55p6-f55p | medium | npm | `picomatch` | transitive / development | `2.3.1` | `2.3.2` | ESLINT-RESOLVER + WEBPACK + WPS | `picomatch@2.3.1 ← micromatch@4.0.8 ← ts-loader@9.5.1` | `agent/maintenance-003-wordpress-scripts` | vulnerable ESLINT-RESOLVER + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 102 | GHSA-f23m-r3pf-42rh | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | +| 108 | GHSA-r4q5-vmmm-2653 | medium | npm | `follow-redirects` | transitive / development | `1.15.9` | `1.16.0` | WPS | `follow-redirects@1.15.9 ← axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 109 | GHSA-fvcv-3m26-pcqx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 110 | GHSA-3p68-rc4w-qgx5 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 115 | GHSA-v2v4-37r5-5v8g | medium | npm | `ip-address` | transitive / development | `9.0.5` | `10.1.1` | WPS | `ip-address@9.0.5 ← socks@2.8.3 ← socks-proxy-agent@8.0.4 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 119 | GHSA-3w6x-2g7m-8v23 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 121 | GHSA-m7pr-hjqh-92cm | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 122 | GHSA-445q-vr5w-6q77 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 129 | GHSA-xx6v-rp6x-q39c | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 131 | GHSA-79cf-xcqc-c78w | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.4` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 134 | GHSA-qj8w-gfj5-8c6v | medium | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.5` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 138 | GHSA-w9j2-pvgh-6h63 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 147 | GHSA-898c-q2cr-xwhg | medium | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 151 | GHSA-6v5v-wf23-fmfq | medium | npm | `markdown-it` | transitive / development | `12.3.2` | `14.2.0` | WPS | `markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 152 | GHSA-v6wh-96g9-6wx3 | medium | npm | `launch-editor` | transitive / development | `2.9.1` | `2.14.1` | WPS | `launch-editor@2.9.1 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 154 | GHSA-mx8g-39q3-5c79 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.5` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 160 | GHSA-64mm-vxmg-q3vj | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.10` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 162 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 163 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.2.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 169 | GHSA-f5vj-f2hx-8m93 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 170 | GHSA-m28w-2pqf-7qgj | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 179 | GHSA-mmx7-hfxf-jppx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 180 | GHSA-7q8q-rj6j-mhjq | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL + WEBEXT + WPS | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL + WEBEXT + WPS | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL + WEBEXT + WPS | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL + WEBEXT + WPS | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | | 64 | GHSA-73rr-hh4g-fpgx | low | npm | `diff` | transitive / runtime | `4.0.2` | `4.0.4` | BLK | `diff@4.0.2 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | -| 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | PGL path removed; vulnerable WEBEXT + WPS paths remain; PR #201 open | -| 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | published PGL lock path removed, but bundled source remains vulnerable through current release; WEBEXT + WPS paths also remain; upstream blocked; PR #201 open | -| 41 | GHSA-76c9-3jph-rj3q | low | npm | `on-headers` | transitive / development | `1.0.2` | `1.1.0` | WPS | `on-headers@1.0.2 ← compression@1.7.4 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | +| 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | published PGL path removed by PR #201, but its bundled source remains upstream-blocked; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 41 | GHSA-76c9-3jph-rj3q | low | npm | `on-headers` | transitive / development | `1.0.2` | `1.1.0` | WPS | `on-headers@1.0.2 ← compression@1.7.4 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | | 43 | GHSA-52f5-9888-hmc6 | low | npm | `tmp` | transitive / development | `0.2.3` | `0.2.4` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | unassigned | baseline open | -| 65 | GHSA-38r7-794h-5758 | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.0` | WEBPACK | `webpack@5.96.1` | unassigned | baseline open | -| 66 | GHSA-8fgc-7cc6-rx7x | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.1` | WEBPACK | `webpack@5.96.1` | unassigned | baseline open | -| 118 | GHSA-xhjh-pmcv-23jw | low | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 133 | GHSA-vpq2-c234-7xj6 | low | npm | `@tootallnate/once` | transitive / development | `2.0.0` | `2.0.1` | WPS | `@tootallnate/once@2.0.0 ← http-proxy-agent@5.0.0 ← jsdom@20.0.3 ← jest-environment-jsdom@29.7.0 ← @wordpress/scripts@30.4.0` | unassigned | baseline open | -| 159 | GHSA-4x5r-pxfx-6jf8 | low | npm | `@babel/core` | transitive / development | `7.25.7` | `7.29.6` | BABEL + WPS | `@babel/core@7.25.7 ← @babel/preset-env@7.26.0` | unassigned | baseline open | +| 65 | GHSA-38r7-794h-5758 | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.0` | WEBPACK | `webpack@5.96.1` | `agent/maintenance-003-wordpress-scripts` | shared root webpack resolved to `5.109.0` to satisfy `@wordpress/scripts@30.7.0` requirement `^5.97.0`; vulnerable version absent globally; validated locally | +| 66 | GHSA-8fgc-7cc6-rx7x | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.1` | WEBPACK | `webpack@5.96.1` | `agent/maintenance-003-wordpress-scripts` | shared root webpack resolved to `5.109.0` to satisfy `@wordpress/scripts@30.7.0` requirement `^5.97.0`; vulnerable version absent globally; validated locally | +| 118 | GHSA-xhjh-pmcv-23jw | low | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 133 | GHSA-vpq2-c234-7xj6 | low | npm | `@tootallnate/once` | transitive / development | `2.0.0` | `2.0.1` | WPS | `@tootallnate/once@2.0.0 ← http-proxy-agent@5.0.0 ← jsdom@20.0.3 ← jest-environment-jsdom@29.7.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 159 | GHSA-4x5r-pxfx-6jf8 | low | npm | `@babel/core` | transitive / development | `7.25.7` | `7.29.6` | BABEL + WPS | `@babel/core@7.25.7 ← @babel/preset-env@7.26.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable BABEL + WPS paths remain; child branch documents upstream WPS residual | ### Stale Branch Baseline Inventory @@ -324,3 +324,19 @@ Status: validated locally; child pull request [#201](https://github.com/WordPres - Build validation: `npm run build:production:firefox` and `npm run build:production:chrome` completed successfully with webpack asset-size warnings for `app.js` and the client-upgrade vendor chunk `498.app.js`; static inspection did not establish that the emitted chunk is requested at runtime, so its reachability and Playground startup remain required manual-test items. - Firefox manifest lint gate: `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` exited 1 with the two pre-existing manifest errors `EXTENSION_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the allowed `UNSUPPORTED_API` warning; this dependency child does not modify the manifest/configuration workstream. - Audit and path validation: `npm audit --json` remains nonzero and changes the aggregate vulnerable/effect-package counts from 125 before the upgrade to 111 after it: 12 low, 50 moderate, 43 high, and 6 critical. Range-aware inspection of every matching repository lockfile entry confirms published client `3.1.38` declares zero dependencies, has zero nested lockfile entries, and leaves no published PGL path for any target row; separate upstream source-lock inspection preserves alert 171 as blocked, and the alert table records every remaining non-PGL affected path as partial instead of claiming aggregate audit success. + +### Child Execution Record: `agent/maintenance-003-wordpress-scripts` + +Status: validated locally on the child branch; a child pull request has not yet been opened. + +- Direct dependency change: `@wordpress/scripts` moves from declared range `^30.4.0` and locked version `30.4.0` to declared range `^30.7.0` and locked version `30.7.0`; no other declared direct dependency changes. Root `package.json` continues to declare webpack `^5.96.1`, while the shared deduped `package-lock.json` resolution moves webpack from `5.96.1` to `5.109.0` because `@wordpress/scripts@30.7.0` requires webpack `^5.97.0`. +- Semantic lock scope: the lockfile contains 78 installed version changes, 43 package paths added, and 44 package paths removed; only the declared direct dependency `@wordpress/scripts` changes. +- Target alerts: 99 baseline rows total: 42, 77, 146, 164, 11, 13, 23, 99, 153, 6, 33, 37, 46, 49, 54, 70, 79, 83, 84, 85, 88, 91, 93, 94, 96, 103, 104, 117, 120, 125, 126, 127, 130, 137, 141, 143, 144, 148, 155, 158, 166, 167, 172, 173, 174, 177, 178, 181, 182, 183, 184, 187, 191, 57, 72, 132, 36, 38, 39, 51, 52, 53, 62, 101, 102, 108, 109, 110, 115, 119, 121, 122, 129, 131, 134, 138, 147, 151, 152, 154, 160, 162, 163, 169, 170, 179, 180, 15, 16, 17, 18, 68, 171, 41, 118, 133, 159, 65, and 66. +- Minimum-version evidence: registry manifests for every stable `@wordpress/scripts` release after `30.4.0` through `33.0.0` were compared. Sequential project-lock tests from the post-PR-201 baseline show that `30.5.0`, `30.5.1`, and `30.6.0` retain the same 111-effect-package audit result and critical versions as `30.4.0`, while `30.7.0` is the first release to change the vulnerable graph by moving `cross-spawn` from major 5 to major 7, `puppeteer-core` from `^23.1.0` to `^23.10.1`, `jest-dev-server` from major 9 to major 10, and webpack from `^5.95.0` to `^5.97.0`. Plain `30.7.0` resolution selects `form-data@4.0.6`; the three deliberate in-range transitive security refreshes select `basic-ftp@5.3.1`, `shell-quote@1.10.0`, and `websocket-driver@0.7.5`, removing every critical WPS path. +- Rejected later boundary: `30.8.0` is the first release that constrains `@wordpress/e2e-test-utils-playwright` above the baseline `1.7.0`; a clean explicit `30.8.0` project-lock generation resolves that range to current `1.51.0`, introduces `GHSA-8988-4f7v-96qf` through vulnerable `@opentelemetry/core`, and audits at 118 effect packages. Later tested releases `31.8.0`, `32.6.0`, and `33.0.0` introduce the same new advisory, and the 32.x and 33.x lines additionally require the ESLint 10 generation. They were rejected because this child may not introduce a new vulnerable advisory or broaden into a lint-configuration migration. +- Compatibility result: the direct upgrade requires no source or configuration changes; the existing webpack, Babel, ESLint, stylelint, and TypeScript configuration remains unchanged. +- Globally resolved rows: 32 overall: 42, 77, 164, 70, 88, 104, 117, 120, 130, 137, 141, 143, 144, 148, 155, 182, 183, 187, 108, 109, 110, 119, 121, 122, 129, 138, 147, 179, 180, 118, 65, and 66 have no installed version in the npm advisory range. Of these, 30 belong to the WPS-family row set and two are incidental shared-root webpack resolutions. +- Partially remediated shared rows: 146 and 167 lose their WPS and CONCURRENTLY paths through `shell-quote@1.10.0`, but `web-ext@8.3.0` retains its separate nested `shell-quote@1.7.3` path, so neither row is marked globally resolved. +- Upstream residual rows: 11, 13, 23, 99, 153, 6, 33, 37, 46, 49, 54, 79, 83, 84, 85, 91, 93, 94, 96, 103, 125, 126, 127, 158, 166, 172, 173, 174, 177, 178, 181, 184, 191, 57, 72, 132, 36, 38, 39, 51, 52, 53, 62, 101, 102, 115, 131, 134, 151, 152, 154, 160, 162, 163, 169, 170, 15, 16, 17, 18, 68, 171, 41, 133, and 159 retain an installed WPS path in the advisory range. The published scripts manifests through `33.0.0` continue to constrain core residual parents such as `webpack-dev-server` to major 4, `adm-zip` to major 0.5, and `markdownlint-cli` to major 0.31; the table records each shared remaining family rather than treating aggregate audit reduction as resolution. +- Audit delta: the post-PR-201 baseline of 111 vulnerable/effect packages (12 low, 50 moderate, 43 high, and 6 critical) becomes 102 (11 low, 48 moderate, 40 high, and 3 critical). The final GHSA set adds no advisory relative to that baseline. +- Validation: Node `v24.18.0` with npm `11.16.0` completed a clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. Both builds completed with the pre-existing Playground dynamic-request and asset-size warnings. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` reproduced only the two pre-existing manifest errors `EXTENSION_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the allowed `UNSUPPORTED_API` warning. Final `npm audit --json` is nonzero only because of documented remaining families and reports the exact 102-effect-package delta above; programmatic version- and installed-path checks passed for all 99 targeted baseline rows. The WPS-specific breakdown remains 97 rows: 30 globally resolved, two WPS paths removed but shared advisories remaining at 146 and 167, and 65 WPS residuals; the other two globally resolved target rows are incidental webpack alerts 65 and 66. From b0521248d7e269b57d3080e53b2e672c6eb0eb60 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 01:09:24 +0400 Subject: [PATCH 07/40] docs(plan): link WordPress scripts remediation PR --- plan.md | 202 ++++++++++++++++++++++++++++---------------------------- 1 file changed, 101 insertions(+), 101 deletions(-) diff --git a/plan.md b/plan.md index 97f05b12..ec5b677c 100644 --- a/plan.md +++ b/plan.md @@ -151,129 +151,129 @@ Rows are ordered by remediation priority: severity first, runtime before develop | Alert | GHSA | Severity | Ecosystem | Affected package | Relationship / scope | Locked vulnerable version(s) | First patched | Causal family set | Representative locked path | Child PR | Status | | ---: | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | 44 | GHSA-95m3-7q98-8xr5 | critical | npm | `sha.js` | transitive / runtime | `2.4.11` | `2.4.12` | PGL | `sha.js@2.4.11 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | -| 42 | GHSA-fjxv-7rqg-78g4 | critical | npm | `form-data` | transitive / development | `4.0.0` | `4.0.4` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 77 | GHSA-5rq4-664w-9x2c | critical | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.0` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 146 | GHSA-w7jw-789q-3m8p | critical | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.8.4` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | `agent/maintenance-003-wordpress-scripts` | WPS + CONCURRENTLY paths removed; vulnerable WEBEXT path remains; child branch validated locally | -| 164 | GHSA-xv26-6w52-cph6 | critical | npm | `websocket-driver` | transitive / development | `0.7.4` | `0.7.5` | WPS | `websocket-driver@0.7.4 ← sockjs@0.3.24 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 42 | GHSA-fjxv-7rqg-78g4 | critical | npm | `form-data` | transitive / development | `4.0.0` | `4.0.4` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 77 | GHSA-5rq4-664w-9x2c | critical | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.0` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 146 | GHSA-w7jw-789q-3m8p | critical | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.8.4` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | WPS + CONCURRENTLY paths removed; vulnerable WEBEXT path remains; child branch validated locally | +| 164 | GHSA-xv26-6w52-cph6 | critical | npm | `websocket-driver` | transitive / development | `0.7.4` | `0.7.5` | WPS | `websocket-driver@0.7.4 ← sockjs@0.3.24 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 3 | GHSA-pwfr-8pq7-x9qv | high | npm | `octokit` | transitive / runtime | `3.1.1` | `3.1.2` | PGL | `octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | -| 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | -| 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | -| 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | | 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 58 | GHSA-2w69-qvjg-hvjx | high | npm | `@remix-run/router` | transitive / runtime | `1.21.0` | `1.23.2` | ROUTER | `@remix-run/router@1.21.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | -| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable BLK + WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable BLK + WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | | 192 | GHSA-6g55-p6wh-862q | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.12` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 195 | GHSA-r28c-9q8g-f849 | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.18` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | -| 6 | GHSA-3h5v-q93c-6h6q | high | npm | `ws` | transitive / development | `8.13.0` | `8.17.1` | WPS | `ws@8.13.0 ← puppeteer-core@20.9.0 ← lighthouse@10.4.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 33 | GHSA-pq67-2wwv-3xjx | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.7` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 37 | GHSA-8cj5-5rvv-wf4v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.9` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 46 | GHSA-vj76-c3g6-qr5v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.1.1` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 49 | GHSA-7mvr-c777-76hp | high | npm | `playwright` | transitive / development | `1.48.2` | `1.55.1` | WPS | `playwright@1.48.2 ← @playwright/test@1.48.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 54 | GHSA-5gfm-wpxj-wjgq | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 6 | GHSA-3h5v-q93c-6h6q | high | npm | `ws` | transitive / development | `8.13.0` | `8.17.1` | WPS | `ws@8.13.0 ← puppeteer-core@20.9.0 ← lighthouse@10.4.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 33 | GHSA-pq67-2wwv-3xjx | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.7` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 37 | GHSA-8cj5-5rvv-wf4v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.9` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 46 | GHSA-vj76-c3g6-qr5v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.1.1` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 49 | GHSA-7mvr-c777-76hp | high | npm | `playwright` | transitive / development | `1.48.2` | `1.55.1` | WPS | `playwright@1.48.2 ← @playwright/test@1.48.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 54 | GHSA-5gfm-wpxj-wjgq | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | | 63 | GHSA-vvj3-c3rp-c85p | high | composer | `phpunit/phpunit` | unknown / development | `9.6.21` | `9.6.33` | PHPUNIT | `phpunit/phpunit@9.6.21 (direct require-dev in composer.json)` | unassigned | baseline open | -| 70 | GHSA-43fc-jf86-j433 | high | npm | `axios` | transitive / development | `1.7.7` | `1.13.5` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 79 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `9.0.3` | `9.0.7` | WPS | `minimatch@9.0.3 ← @typescript-eslint/typescript-estree@6.21.0 ← @typescript-eslint/parser@6.21.0 ← @wordpress/eslint-plugin@21.0.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 70 | GHSA-43fc-jf86-j433 | high | npm | `axios` | transitive / development | `1.7.7` | `1.13.5` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 79 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `9.0.3` | `9.0.7` | WPS | `minimatch@9.0.3 ← @typescript-eslint/typescript-estree@6.21.0 ← @typescript-eslint/parser@6.21.0 ← @wordpress/eslint-plugin@21.0.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 80 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `5.1.6` | `5.1.8` | WEBPACK | `minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | unassigned | baseline open | -| 83 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `3.0.8, 3.1.2` | `3.1.3` | ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS | `minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | -| 84 | GHSA-5c6j-r48x-rmvq | high | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.3` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBPACK + WPS paths remain; child branch documents upstream WPS residual | -| 85 | GHSA-xpqw-6gx7-v673 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.3` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 88 | GHSA-wf6x-7x77-mvgw | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.8` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 91 | GHSA-rf6f-7fwh-wjgh | high | npm | `flatted` | transitive / development | `3.3.1` | `3.4.2` | ESLINT-RESOLVER + WEBEXT + WPS | `flatted@3.3.1 ← flat-cache@3.2.0 ← file-entry-cache@6.0.1 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | -| 93 | GHSA-ppp5-5v6c-4jwp | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | -| 94 | GHSA-q67f-28xg-22rw | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | -| 96 | GHSA-2328-f5f3-gj25 | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | -| 103 | GHSA-r5fr-rjxr-66jc | high | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | -| 104 | GHSA-6v7q-wjvx-w8wg | high | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.2` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 117 | GHSA-6chq-wfr3-2hj9 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 120 | GHSA-pf86-5x62-jrwf | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 125 | GHSA-q3j6-qgpj-74h6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.1` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | `agent/maintenance-003-wordpress-scripts` | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | -| 126 | GHSA-v39h-62p7-jpjc | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.2` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | `agent/maintenance-003-wordpress-scripts` | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | -| 127 | GHSA-fv7c-fp4j-7gwp | high | npm | `@babel/plugin-transform-modules-systemjs` | transitive / development | `7.25.9` | `7.29.4` | BABEL + WPS | `@babel/plugin-transform-modules-systemjs@7.25.9 ← @babel/preset-env@7.26.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable BABEL + WPS paths remain; child branch documents upstream WPS residual | -| 130 | GHSA-q8qp-cvcw-x6jj | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | +| 83 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `3.0.8, 3.1.2` | `3.1.3` | ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS | `minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 84 | GHSA-5c6j-r48x-rmvq | high | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.3` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 85 | GHSA-xpqw-6gx7-v673 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.3` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 88 | GHSA-wf6x-7x77-mvgw | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.8` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 91 | GHSA-rf6f-7fwh-wjgh | high | npm | `flatted` | transitive / development | `3.3.1` | `3.4.2` | ESLINT-RESOLVER + WEBEXT + WPS | `flatted@3.3.1 ← flat-cache@3.2.0 ← file-entry-cache@6.0.1 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 93 | GHSA-ppp5-5v6c-4jwp | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 94 | GHSA-q67f-28xg-22rw | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 96 | GHSA-2328-f5f3-gj25 | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 103 | GHSA-r5fr-rjxr-66jc | high | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | +| 104 | GHSA-6v7q-wjvx-w8wg | high | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.2` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 117 | GHSA-6chq-wfr3-2hj9 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 120 | GHSA-pf86-5x62-jrwf | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 125 | GHSA-q3j6-qgpj-74h6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.1` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 126 | GHSA-v39h-62p7-jpjc | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.2` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 127 | GHSA-fv7c-fp4j-7gwp | high | npm | `@babel/plugin-transform-modules-systemjs` | transitive / development | `7.25.9` | `7.29.4` | BABEL + WPS | `@babel/plugin-transform-modules-systemjs@7.25.9 ← @babel/preset-env@7.26.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable BABEL + WPS paths remain; child branch documents upstream WPS residual | +| 130 | GHSA-q8qp-cvcw-x6jj | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 136 | GHSA-ph9p-34f9-6g65 | high | npm | `tmp` | transitive / development | `0.2.3` | `0.2.6` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | unassigned | baseline open | -| 137 | GHSA-pmwg-cvhr-8vh7 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 141 | GHSA-j5f8-grm9-p9fc | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 143 | GHSA-p92q-9vqr-4j8v | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 144 | GHSA-3g43-6gmg-66jw | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 148 | GHSA-35jp-ww65-95wh | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 155 | GHSA-hmw2-7cc7-3qxx | high | npm | `form-data` | transitive / development | `4.0.0` | `4.0.6` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 158 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / development | `7.5.10` | `7.5.11` | WPS | `ws@7.5.10 ← webpack-bundle-analyzer@4.10.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 166 | GHSA-xcpc-8h2w-3j85 | high | npm | `adm-zip` | transitive / development | `0.5.16` | `0.6.0` | WEBEXT + WPS | `adm-zip@0.5.16 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | -| 167 | GHSA-395f-4hp3-45gv | high | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.9.0` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | `agent/maintenance-003-wordpress-scripts` | WPS + CONCURRENTLY paths removed; vulnerable WEBEXT path remains; child branch validated locally | -| 172 | GHSA-v245-v573-v5vm | high | npm | `linkify-it` | transitive / development | `3.0.3` | `5.0.2` | WPS | `linkify-it@3.0.3 ← markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 173 | GHSA-2p49-hgcm-8545 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.4` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 174 | GHSA-4c8g-83qw-93j6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.3` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | `agent/maintenance-003-wordpress-scripts` | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | -| 177 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 178 | GHSA-v2hh-gcrm-f6hx | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.4` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | `agent/maintenance-003-wordpress-scripts` | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | -| 181 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `4.1.0` | `4.3.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | -| 182 | GHSA-v56q-mh7h-f735 | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 183 | GHSA-xvcm-6775-5m9r | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 184 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `1.1.11` | `1.1.16` | ESLINT-RESOLVER + WEBEXT + WPS | `brace-expansion@1.1.11 ← minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | -| 187 | GHSA-jr5f-v2jv-69x6 | high | npm | `axios` | transitive / development | `1.7.7` | `1.8.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 191 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `2.0.1` | `2.1.2` | WEBPACK + WPS | `brace-expansion@2.0.1 ← minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 137 | GHSA-pmwg-cvhr-8vh7 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 141 | GHSA-j5f8-grm9-p9fc | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 143 | GHSA-p92q-9vqr-4j8v | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 144 | GHSA-3g43-6gmg-66jw | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 148 | GHSA-35jp-ww65-95wh | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 155 | GHSA-hmw2-7cc7-3qxx | high | npm | `form-data` | transitive / development | `4.0.0` | `4.0.6` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 158 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / development | `7.5.10` | `7.5.11` | WPS | `ws@7.5.10 ← webpack-bundle-analyzer@4.10.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 166 | GHSA-xcpc-8h2w-3j85 | high | npm | `adm-zip` | transitive / development | `0.5.16` | `0.6.0` | WEBEXT + WPS | `adm-zip@0.5.16 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 167 | GHSA-395f-4hp3-45gv | high | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.9.0` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | WPS + CONCURRENTLY paths removed; vulnerable WEBEXT path remains; child branch validated locally | +| 172 | GHSA-v245-v573-v5vm | high | npm | `linkify-it` | transitive / development | `3.0.3` | `5.0.2` | WPS | `linkify-it@3.0.3 ← markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 173 | GHSA-2p49-hgcm-8545 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.4` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 174 | GHSA-4c8g-83qw-93j6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.3` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 177 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 178 | GHSA-v2hh-gcrm-f6hx | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.4` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 181 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `4.1.0` | `4.3.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 182 | GHSA-v56q-mh7h-f735 | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 183 | GHSA-xvcm-6775-5m9r | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 184 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `1.1.11` | `1.1.16` | ESLINT-RESOLVER + WEBEXT + WPS | `brace-expansion@1.1.11 ← minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 187 | GHSA-jr5f-v2jv-69x6 | high | npm | `axios` | transitive / development | `1.7.7` | `1.8.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 191 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `2.0.1` | `2.1.2` | WEBPACK + WPS | `brace-expansion@2.0.1 ← minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBPACK + WPS paths remain; child branch documents upstream WPS residual | | 24 | GHSA-mwcw-c2x4-8c55 | medium | npm | `nanoid` | transitive / runtime | `3.3.7` | `3.3.8` | BLK | `nanoid@3.3.7 ← postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 29 | GHSA-x4c5-c7rf-jjgv | medium | npm | `@octokit/endpoint` | transitive / runtime | `9.0.5` | `9.0.6` | PGL | `@octokit/endpoint@9.0.5 ← @octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 30 | GHSA-xx4v-prfh-6cgc | medium | npm | `@octokit/request-error` | transitive / runtime | `5.1.0` | `5.1.1` | PGL | `@octokit/request-error@5.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 32 | GHSA-rmvr-2pp2-xj38 | medium | npm | `@octokit/request` | transitive / runtime | `8.4.0` | `8.4.1` | PGL | `@octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | -| 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | | 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents unchanged WPS residual | +| 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents unchanged WPS residual | | 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | -| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable BLK + WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable BLK + WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | | 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | | 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | | 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | | 190 | GHSA-qx2v-qp2m-jg93 | medium | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.10` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 193 | GHSA-337j-9hxr-rhxg | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | | 194 | GHSA-wrjc-x8rr-h8h6 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 36 | GHSA-4www-5p9h-95mh | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.8` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 38 | GHSA-4v9v-hfq4-rm2v | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 39 | GHSA-9jgg-88mc-972h | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 51 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.14.2` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 52 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.1.1` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | -| 53 | GHSA-65ch-62r8-g69g | medium | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | -| 62 | GHSA-xxjr-mmjv-4gpg | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.17.23` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | -| 101 | GHSA-3v7f-55p6-f55p | medium | npm | `picomatch` | transitive / development | `2.3.1` | `2.3.2` | ESLINT-RESOLVER + WEBPACK + WPS | `picomatch@2.3.1 ← micromatch@4.0.8 ← ts-loader@9.5.1` | `agent/maintenance-003-wordpress-scripts` | vulnerable ESLINT-RESOLVER + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | -| 102 | GHSA-f23m-r3pf-42rh | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | -| 108 | GHSA-r4q5-vmmm-2653 | medium | npm | `follow-redirects` | transitive / development | `1.15.9` | `1.16.0` | WPS | `follow-redirects@1.15.9 ← axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 109 | GHSA-fvcv-3m26-pcqx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 110 | GHSA-3p68-rc4w-qgx5 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 115 | GHSA-v2v4-37r5-5v8g | medium | npm | `ip-address` | transitive / development | `9.0.5` | `10.1.1` | WPS | `ip-address@9.0.5 ← socks@2.8.3 ← socks-proxy-agent@8.0.4 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 119 | GHSA-3w6x-2g7m-8v23 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 121 | GHSA-m7pr-hjqh-92cm | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 122 | GHSA-445q-vr5w-6q77 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 129 | GHSA-xx6v-rp6x-q39c | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 131 | GHSA-79cf-xcqc-c78w | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.4` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 134 | GHSA-qj8w-gfj5-8c6v | medium | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.5` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | `agent/maintenance-003-wordpress-scripts` | vulnerable WEBPACK + WPS paths remain; child branch documents upstream WPS residual | -| 138 | GHSA-w9j2-pvgh-6h63 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 147 | GHSA-898c-q2cr-xwhg | medium | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 151 | GHSA-6v5v-wf23-fmfq | medium | npm | `markdown-it` | transitive / development | `12.3.2` | `14.2.0` | WPS | `markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 152 | GHSA-v6wh-96g9-6wx3 | medium | npm | `launch-editor` | transitive / development | `2.9.1` | `2.14.1` | WPS | `launch-editor@2.9.1 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 154 | GHSA-mx8g-39q3-5c79 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.5` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 160 | GHSA-64mm-vxmg-q3vj | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.10` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 162 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 163 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.2.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | -| 169 | GHSA-f5vj-f2hx-8m93 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 170 | GHSA-m28w-2pqf-7qgj | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 179 | GHSA-mmx7-hfxf-jppx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 180 | GHSA-7q8q-rj6j-mhjq | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL + WEBEXT + WPS | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | -| 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL + WEBEXT + WPS | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | -| 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL + WEBEXT + WPS | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | -| 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL + WEBEXT + WPS | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 36 | GHSA-4www-5p9h-95mh | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.8` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 38 | GHSA-4v9v-hfq4-rm2v | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 39 | GHSA-9jgg-88mc-972h | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 51 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.14.2` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 52 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.1.1` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 53 | GHSA-65ch-62r8-g69g | medium | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 62 | GHSA-xxjr-mmjv-4gpg | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.17.23` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | +| 101 | GHSA-3v7f-55p6-f55p | medium | npm | `picomatch` | transitive / development | `2.3.1` | `2.3.2` | ESLINT-RESOLVER + WEBPACK + WPS | `picomatch@2.3.1 ← micromatch@4.0.8 ← ts-loader@9.5.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 102 | GHSA-f23m-r3pf-42rh | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | +| 108 | GHSA-r4q5-vmmm-2653 | medium | npm | `follow-redirects` | transitive / development | `1.15.9` | `1.16.0` | WPS | `follow-redirects@1.15.9 ← axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 109 | GHSA-fvcv-3m26-pcqx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 110 | GHSA-3p68-rc4w-qgx5 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 115 | GHSA-v2v4-37r5-5v8g | medium | npm | `ip-address` | transitive / development | `9.0.5` | `10.1.1` | WPS | `ip-address@9.0.5 ← socks@2.8.3 ← socks-proxy-agent@8.0.4 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 119 | GHSA-3w6x-2g7m-8v23 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 121 | GHSA-m7pr-hjqh-92cm | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 122 | GHSA-445q-vr5w-6q77 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 129 | GHSA-xx6v-rp6x-q39c | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 131 | GHSA-79cf-xcqc-c78w | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.4` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 134 | GHSA-qj8w-gfj5-8c6v | medium | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.5` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 138 | GHSA-w9j2-pvgh-6h63 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 147 | GHSA-898c-q2cr-xwhg | medium | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 151 | GHSA-6v5v-wf23-fmfq | medium | npm | `markdown-it` | transitive / development | `12.3.2` | `14.2.0` | WPS | `markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 152 | GHSA-v6wh-96g9-6wx3 | medium | npm | `launch-editor` | transitive / development | `2.9.1` | `2.14.1` | WPS | `launch-editor@2.9.1 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 154 | GHSA-mx8g-39q3-5c79 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.5` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 160 | GHSA-64mm-vxmg-q3vj | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.10` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 162 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 163 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.2.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 169 | GHSA-f5vj-f2hx-8m93 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 170 | GHSA-m28w-2pqf-7qgj | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 179 | GHSA-mmx7-hfxf-jppx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 180 | GHSA-7q8q-rj6j-mhjq | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL + WEBEXT + WPS | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL + WEBEXT + WPS | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL + WEBEXT + WPS | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL + WEBEXT + WPS | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | | 64 | GHSA-73rr-hh4g-fpgx | low | npm | `diff` | transitive / runtime | `4.0.2` | `4.0.4` | BLK | `diff@4.0.2 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | -| 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | -| 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + `agent/maintenance-003-wordpress-scripts` | published PGL path removed by PR #201, but its bundled source remains upstream-blocked; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | -| 41 | GHSA-76c9-3jph-rj3q | low | npm | `on-headers` | transitive / development | `1.0.2` | `1.1.0` | WPS | `on-headers@1.0.2 ← compression@1.7.4 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | published PGL path removed by PR #201, but its bundled source remains upstream-blocked; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 41 | GHSA-76c9-3jph-rj3q | low | npm | `on-headers` | transitive / development | `1.0.2` | `1.1.0` | WPS | `on-headers@1.0.2 ← compression@1.7.4 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 43 | GHSA-52f5-9888-hmc6 | low | npm | `tmp` | transitive / development | `0.2.3` | `0.2.4` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | unassigned | baseline open | -| 65 | GHSA-38r7-794h-5758 | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.0` | WEBPACK | `webpack@5.96.1` | `agent/maintenance-003-wordpress-scripts` | shared root webpack resolved to `5.109.0` to satisfy `@wordpress/scripts@30.7.0` requirement `^5.97.0`; vulnerable version absent globally; validated locally | -| 66 | GHSA-8fgc-7cc6-rx7x | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.1` | WEBPACK | `webpack@5.96.1` | `agent/maintenance-003-wordpress-scripts` | shared root webpack resolved to `5.109.0` to satisfy `@wordpress/scripts@30.7.0` requirement `^5.97.0`; vulnerable version absent globally; validated locally | -| 118 | GHSA-xhjh-pmcv-23jw | low | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | validated locally on child branch; vulnerable version absent globally | -| 133 | GHSA-vpq2-c234-7xj6 | low | npm | `@tootallnate/once` | transitive / development | `2.0.0` | `2.0.1` | WPS | `@tootallnate/once@2.0.0 ← http-proxy-agent@5.0.0 ← jsdom@20.0.3 ← jest-environment-jsdom@29.7.0 ← @wordpress/scripts@30.4.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 159 | GHSA-4x5r-pxfx-6jf8 | low | npm | `@babel/core` | transitive / development | `7.25.7` | `7.29.6` | BABEL + WPS | `@babel/core@7.25.7 ← @babel/preset-env@7.26.0` | `agent/maintenance-003-wordpress-scripts` | vulnerable BABEL + WPS paths remain; child branch documents upstream WPS residual | +| 65 | GHSA-38r7-794h-5758 | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.0` | WEBPACK | `webpack@5.96.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | shared root webpack resolved to `5.109.0` to satisfy `@wordpress/scripts@30.7.0` requirement `^5.97.0`; vulnerable version absent globally; validated locally | +| 66 | GHSA-8fgc-7cc6-rx7x | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.1` | WEBPACK | `webpack@5.96.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | shared root webpack resolved to `5.109.0` to satisfy `@wordpress/scripts@30.7.0` requirement `^5.97.0`; vulnerable version absent globally; validated locally | +| 118 | GHSA-xhjh-pmcv-23jw | low | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 133 | GHSA-vpq2-c234-7xj6 | low | npm | `@tootallnate/once` | transitive / development | `2.0.0` | `2.0.1` | WPS | `@tootallnate/once@2.0.0 ← http-proxy-agent@5.0.0 ← jsdom@20.0.3 ← jest-environment-jsdom@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 159 | GHSA-4x5r-pxfx-6jf8 | low | npm | `@babel/core` | transitive / development | `7.25.7` | `7.29.6` | BABEL + WPS | `@babel/core@7.25.7 ← @babel/preset-env@7.26.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable BABEL + WPS paths remain; child branch documents upstream WPS residual | ### Stale Branch Baseline Inventory @@ -325,9 +325,9 @@ Status: validated locally; child pull request [#201](https://github.com/WordPres - Firefox manifest lint gate: `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` exited 1 with the two pre-existing manifest errors `EXTENSION_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the allowed `UNSUPPORTED_API` warning; this dependency child does not modify the manifest/configuration workstream. - Audit and path validation: `npm audit --json` remains nonzero and changes the aggregate vulnerable/effect-package counts from 125 before the upgrade to 111 after it: 12 low, 50 moderate, 43 high, and 6 critical. Range-aware inspection of every matching repository lockfile entry confirms published client `3.1.38` declares zero dependencies, has zero nested lockfile entries, and leaves no published PGL path for any target row; separate upstream source-lock inspection preserves alert 171 as blocked, and the alert table records every remaining non-PGL affected path as partial instead of claiming aggregate audit success. -### Child Execution Record: `agent/maintenance-003-wordpress-scripts` +### Child Execution Record: [#202](https://github.com/WordPress/try-wordpress/pull/202) -Status: validated locally on the child branch; a child pull request has not yet been opened. +Status: validated locally; child pull request [#202](https://github.com/WordPress/try-wordpress/pull/202) is open against the integration branch. - Direct dependency change: `@wordpress/scripts` moves from declared range `^30.4.0` and locked version `30.4.0` to declared range `^30.7.0` and locked version `30.7.0`; no other declared direct dependency changes. Root `package.json` continues to declare webpack `^5.96.1`, while the shared deduped `package-lock.json` resolution moves webpack from `5.96.1` to `5.109.0` because `@wordpress/scripts@30.7.0` requires webpack `^5.97.0`. - Semantic lock scope: the lockfile contains 78 installed version changes, 43 package paths added, and 44 package paths removed; only the declared direct dependency `@wordpress/scripts` changes. From deb28fa63a6160f59b83003af81106342cd8eea3 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 01:58:14 +0400 Subject: [PATCH 08/40] Update web-ext security boundary --- package-lock.json | 2596 ++++++++++++++++++++++++--------------------- package.json | 6 +- plan.md | 95 +- 3 files changed, 1469 insertions(+), 1228 deletions(-) diff --git a/package-lock.json b/package-lock.json index d6af28a8..9440f3fd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,5 +1,5 @@ { - "name": "try-wordpress-maintenance-003-wordpress-scripts", + "name": "try-wordpress-maintenance-004-web-ext", "lockfileVersion": 3, "requires": true, "packages": { @@ -33,7 +33,7 @@ "ts-loader": "^9.5.1", "tsconfig-paths-webpack-plugin": "^4.1.0", "typescript": "^5.6.3", - "web-ext": "^8.3.0", + "web-ext": "^10.4.0", "webpack": "^5.96.1", "wp-types": "^4.67.0" } @@ -1963,13 +1963,10 @@ } }, "node_modules/@babel/runtime": { - "version": "7.25.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.6.tgz", - "integrity": "sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==", + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.7.tgz", + "integrity": "sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw==", "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, "engines": { "node": ">=6.9.0" } @@ -2112,9 +2109,9 @@ } }, "node_modules/@devicefarmer/adbkit": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/@devicefarmer/adbkit/-/adbkit-3.2.6.tgz", - "integrity": "sha512-8lO1hSeTgtxcOHhp4tTWq/JaOysp5KNbbyFoxNEBnwkCDZu/Bji3ZfOaG++Riv9jN6c9bgdLBOZqJTC5VJPRKQ==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/@devicefarmer/adbkit/-/adbkit-3.3.8.tgz", + "integrity": "sha512-7rBLLzWQnBwutH2WZ0EWUkQdihqrnLYCUMaB44hSol9e0/cdIhuNFcqZO0xNheAU6qqHVA8sMiLofkYTgb+lmw==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -2386,17 +2383,20 @@ } }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.10.1.tgz", + "integrity": "sha512-cuadcxVFE8sDK6iWJbs8Sn0av2Nrh2QSGQhVlBW9AaAHqHwjWsZHT8LJ4hFGPh7ASBV2deFdM7H/DPjulmh8rg==", "dev": true, "license": "MIT", "dependencies": { - "eslint-visitor-keys": "^3.3.0" + "eslint-visitor-keys": "^3.4.3" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, + "funding": { + "url": "https://opencollective.com/eslint" + }, "peerDependencies": { "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } @@ -2415,15 +2415,80 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", - "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", + "version": "4.12.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", + "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", "dev": true, "license": "MIT", "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, + "node_modules/@eslint/config-array": { + "version": "0.21.2", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.2.tgz", + "integrity": "sha512-nJl2KGTlrf9GjLimgIru+V/mzgSK0ABCDQRvxw5BjURL7WfH5uoWmizbH7QB6MmnMBd8cIC9uceWnezL1VZWWw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/object-schema": "^2.1.7", + "debug": "^4.3.1", + "minimatch": "^3.1.5" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-array/node_modules/brace-expansion": { + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz", + "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@eslint/config-array/node_modules/minimatch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", + "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.17.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz", + "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, "node_modules/@eslint/eslintrc": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", @@ -2473,9 +2538,9 @@ "license": "Python-2.0" }, "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz", + "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==", "dev": true, "license": "MIT", "dependencies": { @@ -2500,10 +2565,20 @@ } }, "node_modules/@eslint/eslintrc/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.0.tgz", + "integrity": "sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/puzrin" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nodeca" + } + ], "license": "MIT", "dependencies": { "argparse": "^2.0.1" @@ -2520,9 +2595,9 @@ "license": "MIT" }, "node_modules/@eslint/eslintrc/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, "license": "ISC", "dependencies": { @@ -2555,6 +2630,30 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, + "node_modules/@eslint/object-schema": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", + "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", + "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.17.0", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, "node_modules/@floating-ui/core": { "version": "1.6.7", "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.7.tgz", @@ -2604,6 +2703,16 @@ "npm": ">=7.0.0" } }, + "node_modules/@fregante/relaxed-json": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@fregante/relaxed-json/-/relaxed-json-2.0.0.tgz", + "integrity": "sha512-PyUXQWB42s4jBli435TDiYuVsadwRHnMc27YaLouINktvTWsL3FcKrRMGawTayFk46X+n5bE23RjUTWQwrukWw==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">= 0.10.0" + } + }, "node_modules/@hapi/address": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/@hapi/address/-/address-5.1.1.tgz", @@ -2658,6 +2767,44 @@ "@hapi/hoek": "^11.0.2" } }, + "node_modules/@humanfs/core": { + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.2.tgz", + "integrity": "sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/types": "^0.15.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.8", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.8.tgz", + "integrity": "sha512-gE1eQNZ3R++kTzFUpdGlpmy8kDZD/MLyHqDwqjkVQI0JMdI1D51sy1H958PNXYkM2rAac7e5/CnIKZrHtPh3BQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/core": "^0.19.2", + "@humanfs/types": "^0.15.0", + "@humanwhocodes/retry": "^0.4.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/types": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@humanfs/types/-/types-0.15.0.tgz", + "integrity": "sha512-ZZ1w0aoQkwuUuC7Yf+7sdeaNfqQiiLcSRbfI08oAxqLtpXQr9AIVX7Ay7HLDuiLYAaFPu8oBYNq/QIi9URHJ3Q==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18.0" + } + }, "node_modules/@humanwhocodes/config-array": { "version": "0.13.0", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", @@ -2675,9 +2822,9 @@ } }, "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz", + "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==", "dev": true, "license": "MIT", "dependencies": { @@ -2686,9 +2833,9 @@ } }, "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, "license": "ISC", "dependencies": { @@ -2720,6 +2867,20 @@ "dev": true, "license": "BSD-3-Clause" }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, "node_modules/@istanbuljs/load-nyc-config": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", @@ -3146,9 +3307,9 @@ "license": "MIT" }, "node_modules/@mdn/browser-compat-data": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-5.6.0.tgz", - "integrity": "sha512-xArvLyzuk0r2m6hFVjTMYoLvhWwys3h7W8pO15tjSAea+U39cErWDNfoUs4g2C08HVg6bDHyDMBc0LC6FKRpVw==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-8.0.2.tgz", + "integrity": "sha512-bT8u6Ll/vuV8qC9tn8cqvxoAtBpKcCwhKMW51qJRK9+G3JUtAx3lc1wjij4GJzGCfqA0keRbJUFetCgwwYaskA==", "dev": true, "license": "CC0-1.0" }, @@ -3530,6 +3691,13 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/@pinojs/redact": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@pinojs/redact/-/redact-0.4.0.tgz", + "integrity": "sha512-k2ENnmBugE/rzQfEcdWHcCY+/FM3VLzH9cYEsbdsoqrvzAKRhUZeRNhAZvB8OitQJ1TBed3yqWtdjzS6wJKBwg==", + "dev": true, + "license": "MIT" + }, "node_modules/@pkgr/core": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", @@ -5532,6 +5700,7 @@ "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", "dev": true, "license": "MIT", + "optional": true, "dependencies": { "@types/node": "*" } @@ -6236,18 +6405,6 @@ "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, - "node_modules/@wordpress/block-editor/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@wordpress/block-editor/node_modules/@wordpress/components": { "version": "28.7.0", "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-28.7.0.tgz", @@ -7433,18 +7590,6 @@ "react-dom": "^18.0.0" } }, - "node_modules/@wordpress/core-data/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@wordpress/core-data/node_modules/uuid": { "version": "9.0.1", "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", @@ -8170,18 +8315,6 @@ "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, - "node_modules/@wordpress/patterns/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@wordpress/patterns/node_modules/@wordpress/components": { "version": "28.7.0", "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-28.7.0.tgz", @@ -8748,18 +8881,6 @@ "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, - "node_modules/@wordpress/reusable-blocks/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/components": { "version": "28.7.0", "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-28.7.0.tgz", @@ -9256,10 +9377,20 @@ } }, "node_modules/@wordpress/scripts/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.0.tgz", + "integrity": "sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/puzrin" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nodeca" + } + ], "license": "MIT", "dependencies": { "argparse": "^2.0.1" @@ -9598,18 +9729,6 @@ "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, - "node_modules/@wordpress/server-side-render/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@wordpress/server-side-render/node_modules/@wordpress/components": { "version": "28.7.0", "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-28.7.0.tgz", @@ -9944,19 +10063,6 @@ "dev": true, "license": "BSD-3-Clause" }, - "node_modules/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "dev": true, - "license": "MIT", - "dependencies": { - "event-target-shim": "^5.0.0" - }, - "engines": { - "node": ">=6.5" - } - }, "node_modules/accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -10019,51 +10125,89 @@ } }, "node_modules/addons-linter": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/addons-linter/-/addons-linter-7.1.0.tgz", - "integrity": "sha512-UmkUB3dZSpf8bqhlulGDbpoxBwcfOk8JvaJTRvJ+AAXKHvTjqeNlFC+GRMqa0EjJJh/0yqpBaJzyaUIx+fjl+A==", + "version": "10.7.0", + "resolved": "https://registry.npmjs.org/addons-linter/-/addons-linter-10.7.0.tgz", + "integrity": "sha512-WdfEuL2CUqE4BLzQ3kqVa0rTmnnuRZ8CM9xAP37vpdVqMS2eX0GlBXmC33I6ilkVWTcsW42xEGcLUYirLI4O1A==", "dev": true, "license": "MPL-2.0", "dependencies": { "@fluent/syntax": "0.19.0", - "@mdn/browser-compat-data": "5.6.0", + "@fregante/relaxed-json": "2.0.0", + "@mdn/browser-compat-data": "8.0.2", "addons-moz-compare": "1.3.0", - "addons-scanner-utils": "9.11.0", - "ajv": "8.17.1", - "chalk": "4.1.2", - "cheerio": "1.0.0-rc.12", + "addons-scanner-utils": "15.2.0", + "ajv": "8.20.0", + "cheerio": "1.2.0", "columnify": "1.6.0", "common-tags": "1.8.2", "deepmerge": "4.3.1", - "eslint": "8.57.1", - "eslint-plugin-no-unsanitized": "4.0.2", - "eslint-visitor-keys": "4.0.0", - "espree": "10.1.0", + "eslint": "9.39.4", + "eslint-plugin-no-unsanitized": "4.1.5", + "eslint-visitor-keys": "5.0.1", + "espree": "11.2.0", "esprima": "4.0.1", "fast-json-patch": "3.1.1", - "image-size": "1.1.1", - "jed": "1.1.1", + "image-size": "2.0.2", "json-merge-patch": "1.0.2", - "os-locale": "5.0.0", - "pino": "8.20.0", - "relaxed-json": "1.0.3", - "semver": "7.6.3", + "pino": "10.3.1", + "semver": "7.8.2", "source-map-support": "0.5.21", - "upath": "2.0.1", + "upath": "3.0.7", "yargs": "17.7.2", - "yauzl": "2.10.0" + "yauzl": "3.3.2" }, "bin": { "addons-linter": "bin/addons-linter" }, "engines": { - "node": ">=18.0.0" + "node": ">=20.0.0" } }, - "node_modules/addons-linter/node_modules/eslint-visitor-keys": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz", - "integrity": "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==", + "node_modules/addons-linter/node_modules/@eslint/eslintrc": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.6.tgz", + "integrity": "sha512-l2Ul9PrHsPCKcEY/ac7VgFj9D80C7S68sOKc618SyHDPK36s1XcFebXY0iTzUVn4Yq+YbwvSnDmCz9yxjX+QrA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.14.0", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.3.0", + "minimatch": "^3.1.5", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/addons-linter/node_modules/@eslint/eslintrc/node_modules/ajv": { + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz", + "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/addons-linter/node_modules/@eslint/eslintrc/node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", "dev": true, "license": "Apache-2.0", "engines": { @@ -10073,16 +10217,16 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/addons-linter/node_modules/espree": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.1.0.tgz", - "integrity": "sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==", + "node_modules/addons-linter/node_modules/@eslint/eslintrc/node_modules/espree": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", "dev": true, "license": "BSD-2-Clause", "dependencies": { - "acorn": "^8.12.0", + "acorn": "^8.15.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.0.0" + "eslint-visitor-keys": "^4.2.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -10091,64 +10235,418 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/addons-linter/node_modules/pino": { - "version": "8.20.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-8.20.0.tgz", - "integrity": "sha512-uhIfMj5TVp+WynVASaVEJFTncTUe4dHBq6CWplu/vBgvGHhvBvQfxz+vcOrnnBQdORH3izaGEurLfNlq3YxdFQ==", + "node_modules/addons-linter/node_modules/@eslint/js": { + "version": "9.39.4", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.4.tgz", + "integrity": "sha512-nE7DEIchvtiFTwBw4Lfbu59PG+kCofhjsKaCWzxTpt4lfRjRMqG6uMBzKXuEcyXhOHoUp9riAm7/aWYGhXZ9cw==", "dev": true, "license": "MIT", - "dependencies": { - "atomic-sleep": "^1.0.0", - "fast-redact": "^3.1.1", - "on-exit-leak-free": "^2.1.0", - "pino-abstract-transport": "^1.1.0", - "pino-std-serializers": "^6.0.0", - "process-warning": "^3.0.0", - "quick-format-unescaped": "^4.0.3", - "real-require": "^0.2.0", - "safe-stable-stringify": "^2.3.1", - "sonic-boom": "^3.7.0", - "thread-stream": "^2.0.0" + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, - "bin": { - "pino": "bin.js" + "funding": { + "url": "https://eslint.org/donate" } }, - "node_modules/addons-linter/node_modules/pino-std-serializers": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.2.2.tgz", - "integrity": "sha512-cHjPPsE+vhj/tnhCy/wiMh3M3z3h/j15zHQX+S9GkTBgqJuTuJzYJ4gUyACLhDaJ7kk9ba9iRDmbH2tJU03OiA==", - "dev": true, - "license": "MIT" - }, - "node_modules/addons-linter/node_modules/process-warning": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-3.0.0.tgz", - "integrity": "sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==", + "node_modules/addons-linter/node_modules/addons-scanner-utils": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/addons-scanner-utils/-/addons-scanner-utils-15.2.0.tgz", + "integrity": "sha512-SkjE3jE7Sfx67KuL8nI5DolqqQ35G1GMcMrgT9LufKnBJUW4YnoBO1sLAILj3N/FLhfSAT0hwWK1MSVLmgbASQ==", "dev": true, - "license": "MIT" - }, - "node_modules/addons-linter/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "license": "MPL-2.0", + "dependencies": { + "common-tags": "1.8.2", + "first-chunk-stream": "3.0.0", + "jsonwebtoken": "^9.0.3", + "strip-bom-stream": "4.0.0", + "upath": "3.0.7", + "yauzl": "3.3.0" + }, + "peerDependencies": { + "express": "5.2.1", + "safe-compare": "1.1.4" + }, + "peerDependenciesMeta": { + "express": { + "optional": true + }, + "safe-compare": { + "optional": true + } + } + }, + "node_modules/addons-linter/node_modules/addons-scanner-utils/node_modules/yauzl": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-3.3.0.tgz", + "integrity": "sha512-PtGEvEP30p7sbIBJKUBjUnqgTVOyMURc4dLo9iNyAJnNIEz9pm88cCXF21w94Kg3k6RXkeZh5DHOGS0qEONvNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-crc32": "~0.2.3", + "pend": "~1.2.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/addons-linter/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/addons-linter/node_modules/brace-expansion": { + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz", + "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/addons-linter/node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/addons-linter/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/addons-linter/node_modules/eslint": { + "version": "9.39.4", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.4.tgz", + "integrity": "sha512-XoMjdBOwe/esVgEvLmNsD3IRHkm7fbKIUGvrleloJXUZgDHig2IPWNniv+GwjyJXzuNqVjlr5+4yVUZjycJwfQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.8.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.21.2", + "@eslint/config-helpers": "^0.4.2", + "@eslint/core": "^0.17.0", + "@eslint/eslintrc": "^3.3.5", + "@eslint/js": "9.39.4", + "@eslint/plugin-kit": "^0.4.1", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "ajv": "^6.14.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.4.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.5", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/addons-linter/node_modules/eslint-plugin-no-unsanitized": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-no-unsanitized/-/eslint-plugin-no-unsanitized-4.1.5.tgz", + "integrity": "sha512-MSB4hXPVFQrI8weqzs6gzl7reP2k/qSjtCoL2vUMSDejIIq9YL1ZKvq5/ORBXab/PvfBBrWO2jWviYpL+4Ghfg==", + "dev": true, + "license": "MPL-2.0", + "peerDependencies": { + "eslint": "^9 || ^10" + } + }, + "node_modules/addons-linter/node_modules/eslint-scope": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/addons-linter/node_modules/eslint-visitor-keys": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/addons-linter/node_modules/eslint/node_modules/ajv": { + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz", + "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/addons-linter/node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/addons-linter/node_modules/eslint/node_modules/espree": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.15.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/addons-linter/node_modules/espree": { + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-11.2.0.tgz", + "integrity": "sha512-7p3DrVEIopW1B1avAGLuCSh1jubc01H2JHc8B4qqGblmg5gI9yumBgACjWo4JlIc04ufug4xJ3SQI8HkS/Rgzw==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.16.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^5.0.1" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/addons-linter/node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/addons-linter/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/addons-linter/node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/addons-linter/node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/addons-linter/node_modules/js-yaml": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.0.tgz", + "integrity": "sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/puzrin" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nodeca" + } + ], + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/addons-linter/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/addons-linter/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/addons-linter/node_modules/minimatch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, "license": "ISC", - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=10" + "node": "*" } }, - "node_modules/addons-linter/node_modules/sonic-boom": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.8.1.tgz", - "integrity": "sha512-y4Z8LCDBuum+PBP3lSV7RHrXscqksve/bi0as7mhwVnBW+/wUqKT/2Kb7um8yqcFy0duYbbPxzt89Zy2nOCaxg==", + "node_modules/addons-linter/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, "license": "MIT", "dependencies": { - "atomic-sleep": "^1.0.0" + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/addons-linter/node_modules/semver": { + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.2.tgz", + "integrity": "sha512-c8jsqUZm3omBOI66G90z1Dyw5z622G8oLG+omfsHBJf3CWQTlOcwOjvOG6wtiNfW6anKm/eA39LMwMtMez2TiQ==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, "node_modules/addons-linter/node_modules/source-map": { @@ -10172,14 +10670,17 @@ "source-map": "^0.6.0" } }, - "node_modules/addons-linter/node_modules/thread-stream": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-2.7.0.tgz", - "integrity": "sha512-qQiRWsU/wvNolI6tbbCKd9iKaTnCXsTwVxhhKM6nctPdujTyztjlbUkUTUymidWcMnZ5pWR0ej4a0tjsW021vw==", + "node_modules/addons-linter/node_modules/yauzl": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-3.3.2.tgz", + "integrity": "sha512-Md9ankxxN23wncAN8s7+Tn3Co52zLUPMtnrLAbVCnfG5d2tKBFfmygYSgXlqFgXObtzIgqkx7aNgDBpso9+4qA==", "dev": true, "license": "MIT", "dependencies": { - "real-require": "^0.2.0" + "pend": "~1.2.0" + }, + "engines": { + "node": ">=12" } }, "node_modules/addons-moz-compare": { @@ -10189,41 +10690,6 @@ "dev": true, "license": "MPL-2.0" }, - "node_modules/addons-scanner-utils": { - "version": "9.11.0", - "resolved": "https://registry.npmjs.org/addons-scanner-utils/-/addons-scanner-utils-9.11.0.tgz", - "integrity": "sha512-X95V8ymnue9EHmOLz3zJTGHvHDFlWKiavlH+kJKOlv2sJDWFvD3TWeJMHJgxS9GKOqT/545mOXvX3vuuGGum+g==", - "dev": true, - "license": "MPL-2.0", - "dependencies": { - "@types/yauzl": "2.10.3", - "common-tags": "1.8.2", - "first-chunk-stream": "3.0.0", - "strip-bom-stream": "4.0.0", - "upath": "2.0.1", - "yauzl": "2.10.0" - }, - "peerDependencies": { - "body-parser": "1.20.2", - "express": "4.19.2", - "node-fetch": "2.6.11", - "safe-compare": "1.1.4" - }, - "peerDependenciesMeta": { - "body-parser": { - "optional": true - }, - "express": { - "optional": true - }, - "node-fetch": { - "optional": true - }, - "safe-compare": { - "optional": true - } - } - }, "node_modules/adm-zip": { "version": "0.5.16", "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.16.tgz", @@ -10262,9 +10728,9 @@ } }, "node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", "dev": true, "license": "MIT", "dependencies": { @@ -11306,16 +11772,6 @@ "dev": true, "license": "MIT" }, - "node_modules/big-integer": { - "version": "1.6.52", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", - "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", - "dev": true, - "license": "Unlicense", - "engines": { - "node": ">=0.6" - } - }, "node_modules/big.js": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", @@ -11534,23 +11990,10 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/bplist-parser": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", - "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", - "dev": true, - "license": "MIT", - "dependencies": { - "big-integer": "^1.6.44" - }, - "engines": { - "node": ">= 5.10.0" - } - }, "node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.2.tgz", + "integrity": "sha512-w5JZcKgdhDOgOwm8H+KgbosopHMuGcl6qbulwjtz3SM7I7P3yW1eAjzMPLrIE+NQ9vjgANKHWeMHnrT0OXW1oA==", "dev": true, "license": "MIT", "dependencies": { @@ -11649,6 +12092,13 @@ "node": "*" } }, + "node_modules/buffer-equal-constant-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", + "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==", + "dev": true, + "license": "BSD-3-Clause" + }, "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -11670,16 +12120,16 @@ } }, "node_modules/bundle-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz", - "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-4.1.0.tgz", + "integrity": "sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==", "dev": true, "license": "MIT", "dependencies": { - "run-applescript": "^5.0.0" + "run-applescript": "^7.0.0" }, "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -11729,6 +12179,23 @@ "node": ">= 0.4" } }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -11989,22 +12456,26 @@ "license": "MIT" }, "node_modules/cheerio": { - "version": "1.0.0-rc.12", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", - "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.2.0.tgz", + "integrity": "sha512-WDrybc/gKFpTYQutKIK6UvfcuxijIZfMfXaYm8NMsPQxSYvf+13fXUJ4rztGGbJcBQ/GF55gvrZ0Bc0bj/mqvg==", "dev": true, "license": "MIT", "dependencies": { "cheerio-select": "^2.1.0", "dom-serializer": "^2.0.0", "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "htmlparser2": "^8.0.1", - "parse5": "^7.0.0", - "parse5-htmlparser2-tree-adapter": "^7.0.0" + "domutils": "^3.2.2", + "encoding-sniffer": "^0.2.1", + "htmlparser2": "^10.1.0", + "parse5": "^7.3.0", + "parse5-htmlparser2-tree-adapter": "^7.1.0", + "parse5-parser-stream": "^7.1.2", + "undici": "^7.19.0", + "whatwg-mimetype": "^4.0.0" }, "engines": { - "node": ">= 6" + "node": ">=20.18.1" }, "funding": { "url": "https://github.com/cheeriojs/cheerio?sponsor=1" @@ -12028,6 +12499,16 @@ "url": "https://github.com/sponsors/fb55" } }, + "node_modules/cheerio/node_modules/whatwg-mimetype": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", + "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, "node_modules/chokidar": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", @@ -12526,62 +13007,6 @@ "dev": true, "license": "MIT" }, - "node_modules/concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "engines": [ - "node >= 0.8" - ], - "license": "MIT", - "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "node_modules/concat-stream/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/concat-stream/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "license": "MIT", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/concat-stream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "license": "MIT" - }, - "node_modules/concat-stream/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/concurrently": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-9.1.0.tgz", @@ -12886,10 +13311,20 @@ "license": "Python-2.0" }, "node_modules/cosmiconfig/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.0.tgz", + "integrity": "sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/puzrin" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nodeca" + } + ], "license": "MIT", "dependencies": { "argparse": "^2.0.1" @@ -13570,164 +14005,40 @@ "dev": true, "license": "MIT" }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/default-browser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz", - "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==", - "dev": true, - "license": "MIT", - "dependencies": { - "bundle-name": "^3.0.0", - "default-browser-id": "^3.0.0", - "execa": "^7.1.1", - "titleize": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser-id": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz", - "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==", - "dev": true, - "license": "MIT", - "dependencies": { - "bplist-parser": "^0.2.0", - "untildify": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/execa": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", - "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", - "dev": true, - "license": "MIT", - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^4.3.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^3.0.7", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": "^14.18.0 || ^16.14.0 || >=18.0.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/default-browser/node_modules/human-signals": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", - "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=14.18.0" - } - }, - "node_modules/default-browser/node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/npm-run-path": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", - "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/npm-run-path/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "dev": true, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "license": "MIT", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/default-browser/node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "node_modules/default-browser": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.5.0.tgz", + "integrity": "sha512-H9LMLr5zwIbSxrmvikGuI/5KGhZ8E2zH3stkMgM5LpOWDutGM2JZaj460Udnf1a+946zc7YBgrqEWwbk7zHvGw==", "dev": true, "license": "MIT", "dependencies": { - "mimic-fn": "^4.0.0" + "bundle-name": "^4.1.0", + "default-browser-id": "^5.0.0" }, "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/default-browser/node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "node_modules/default-browser-id": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-5.0.1.tgz", + "integrity": "sha512-x1VCxdX4t+8wVfd1so/9w+vQ4vx7lKd2Qp5tDRutErwmR85OgmfX7RlLRMWafRMY7hbEiXIbudNrjOAPa/hL8Q==", "dev": true, "license": "MIT", "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -14074,9 +14385,9 @@ } }, "node_modules/domutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", - "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", + "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -14157,6 +14468,16 @@ "dev": true, "license": "MIT" }, + "node_modules/ecdsa-sig-formatter": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", + "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -14220,6 +14541,47 @@ "iconv-lite": "^0.6.2" } }, + "node_modules/encoding-sniffer": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.1.tgz", + "integrity": "sha512-5gvq20T6vfpekVtqrYQsSCFZ1wEg5+wW0/QaZMWkFr6BqD3NfKs0rLCx4rrVlSWJeZb5NBJgVLswK/w2MWU+Gw==", + "dev": true, + "license": "MIT", + "dependencies": { + "iconv-lite": "^0.6.3", + "whatwg-encoding": "^3.1.1" + }, + "funding": { + "url": "https://github.com/fb55/encoding-sniffer?sponsor=1" + } + }, + "node_modules/encoding-sniffer/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/encoding-sniffer/node_modules/whatwg-encoding": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", + "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", + "deprecated": "Use @exodus/bytes instead for a more spec-conformant and faster implementation", + "dev": true, + "license": "MIT", + "dependencies": { + "iconv-lite": "0.6.3" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/encoding/node_modules/iconv-lite": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", @@ -14798,9 +15160,9 @@ } }, "node_modules/eslint-plugin-import/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz", + "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==", "dev": true, "license": "MIT", "dependencies": { @@ -14832,9 +15194,9 @@ } }, "node_modules/eslint-plugin-import/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, "license": "ISC", "dependencies": { @@ -15083,9 +15445,9 @@ } }, "node_modules/eslint-plugin-jsx-a11y/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz", + "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==", "dev": true, "license": "MIT", "dependencies": { @@ -15094,9 +15456,9 @@ } }, "node_modules/eslint-plugin-jsx-a11y/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, "license": "ISC", "dependencies": { @@ -15106,16 +15468,6 @@ "node": "*" } }, - "node_modules/eslint-plugin-no-unsanitized": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-no-unsanitized/-/eslint-plugin-no-unsanitized-4.0.2.tgz", - "integrity": "sha512-Pry0S9YmHoz8NCEMRQh7N0Yexh2MYCNPIlrV52hTmS7qXnTghWsjXouF08bgsrrZqaW9tt1ZiK3j5NEmPE+EjQ==", - "dev": true, - "license": "MPL-2.0", - "peerDependencies": { - "eslint": "^6 || ^7 || ^8" - } - }, "node_modules/eslint-plugin-playwright": { "version": "0.15.3", "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-0.15.3.tgz", @@ -15210,9 +15562,9 @@ } }, "node_modules/eslint-plugin-react/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz", + "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==", "dev": true, "license": "MIT", "dependencies": { @@ -15234,9 +15586,9 @@ } }, "node_modules/eslint-plugin-react/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, "license": "ISC", "dependencies": { @@ -15323,9 +15675,9 @@ "license": "Python-2.0" }, "node_modules/eslint/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz", + "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==", "dev": true, "license": "MIT", "dependencies": { @@ -15410,10 +15762,20 @@ } }, "node_modules/eslint/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.0.tgz", + "integrity": "sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/puzrin" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nodeca" + } + ], "license": "MIT", "dependencies": { "argparse": "^2.0.1" @@ -15446,9 +15808,9 @@ } }, "node_modules/eslint/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, "license": "ISC", "dependencies": { @@ -15588,16 +15950,6 @@ "node": ">= 0.6" } }, - "node_modules/event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/eventemitter3": { "version": "4.0.7", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", @@ -15872,21 +16224,21 @@ "dev": true, "license": "MIT" }, - "node_modules/fast-redact": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.5.0.tgz", - "integrity": "sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/fast-uri": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.3.tgz", - "integrity": "sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==", + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.4.tgz", + "integrity": "sha512-8JnbkQ4juDyvYs4mgFGQqg4yCYtFDtUtmp2QIQq11ZZe5CFQ5wcqm1rqDgAh/QdMySuBnPzMUiJUNZG5N/AiQw==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], "license": "BSD-3-Clause" }, "node_modules/fastest-levenshtein": { @@ -16399,9 +16751,9 @@ } }, "node_modules/flatted": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", - "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.3.tgz", + "integrity": "sha512-/zipXxyO6rGvuNGDiULY9MvEGSkb2gaG4GGH4ygMi0ZZzyMHdUZBmntJmx5x1G2VuPytCwGN4xsJP6cw+sK+vQ==", "dev": true, "license": "ISC" }, @@ -16635,62 +16987,58 @@ } }, "node_modules/fx-runner": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/fx-runner/-/fx-runner-1.4.0.tgz", - "integrity": "sha512-rci1g6U0rdTg6bAaBboP7XdRu01dzTAaKXxFf+PUqGuCv6Xu7o8NZdY1D5MvKGIjb6EdS1g3VlXOgksir1uGkg==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/fx-runner/-/fx-runner-1.5.0.tgz", + "integrity": "sha512-EstfdRQu04tM+SXR3pBmc0+GYKZj9FMHAvA8XAbKPzTvUeHP0v1/F3aQ10bG7EluR6phvFqsvn5Z7SvYJsEgNw==", "dev": true, "license": "MPL-2.0", "dependencies": { - "commander": "2.9.0", - "shell-quote": "1.7.3", - "spawn-sync": "1.0.15", - "when": "3.7.7", - "which": "1.2.4", + "commander": "^12.1.0", + "shell-quote": "1.8.4", + "which": "^4.0.0", "winreg": "0.0.12" }, "bin": { "fx-runner": "bin/fx-runner" } }, - "node_modules/fx-runner/node_modules/commander": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", - "integrity": "sha512-bmkUukX8wAOjHdN26xj5c4ctEV22TQ7dQYhSmuckKhToXrkUn0iIaolHdIxYYqD55nhpSPA9zPQ1yP57GdXP2A==", + "node_modules/fx-runner/node_modules/isexe": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.5.tgz", + "integrity": "sha512-6B3tLtFqtQS4ekarvLVMZ+X+VlvQekbe4taUkf/rhVO3d/h0M2rfARm/pXLcPEsjjMsFgrFgSrhQIxcSVrBz8w==", "dev": true, - "license": "MIT", - "dependencies": { - "graceful-readlink": ">= 1.0.0" - }, + "license": "BlueOak-1.0.0", "engines": { - "node": ">= 0.6.x" + "node": ">=18" } }, - "node_modules/fx-runner/node_modules/isexe": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-1.1.2.tgz", - "integrity": "sha512-d2eJzK691yZwPHcv1LbeAOa91yMJ9QmfTgSO1oXB65ezVhXQsxBac2vEB4bMVms9cGzaA99n6V2viHMq82VLDw==", - "dev": true, - "license": "ISC" - }, "node_modules/fx-runner/node_modules/shell-quote": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.3.tgz", - "integrity": "sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==", + "version": "1.8.4", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.4.tgz", + "integrity": "sha512-VsC6n6vz1ihYYyZZwX7YZSF5l5x36ca17OC+a69h94YqB7X6XLwf+5MOgynYir2SLFUbl8gIYvBo8K8RoNQ6bQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/fx-runner/node_modules/which": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/which/-/which-1.2.4.tgz", - "integrity": "sha512-zDRAqDSBudazdfM9zpiI30Fu9ve47htYXcGi3ln0wfKu2a7SmrT6F3VDoYONu//48V8Vz4TdCRNPjtvyRO3yBA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dev": true, "license": "ISC", "dependencies": { - "is-absolute": "^0.1.7", - "isexe": "^1.1.1" + "isexe": "^3.1.1" }, "bin": { - "which": "bin/which" + "node-which": "bin/which.js" + }, + "engines": { + "node": "^16.13.0 || >=18.0.0" } }, "node_modules/gensync": { @@ -16943,9 +17291,9 @@ "license": "BSD-2-Clause" }, "node_modules/glob/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz", + "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==", "dev": true, "license": "MIT", "dependencies": { @@ -16954,9 +17302,9 @@ } }, "node_modules/glob/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, "license": "ISC", "dependencies": { @@ -17105,13 +17453,6 @@ "dev": true, "license": "ISC" }, - "node_modules/graceful-readlink": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", - "integrity": "sha512-8tLu60LgxF6XpdbK8OW3FA+IfTNBn1ZHGHKF4KQbEeSkajYw5PlYJcKluntgegDPTg8UkHjpet1T82vk6TQ68w==", - "dev": true, - "license": "MIT" - }, "node_modules/gradient-parser": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-0.1.5.tgz", @@ -17127,13 +17468,6 @@ "dev": true, "license": "MIT" }, - "node_modules/growly": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", - "integrity": "sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw==", - "dev": true, - "license": "MIT" - }, "node_modules/gzip-size": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", @@ -17441,9 +17775,9 @@ } }, "node_modules/htmlparser2": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", - "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-10.1.0.tgz", + "integrity": "sha512-VTZkM9GWRAtEpveh7MSF6SjjrpNVNNVJfFup7xTY3UpFtm67foy9HDVXneLtFVt4pMz5kZtgNcvCniNFb1hlEQ==", "dev": true, "funding": [ "https://github.com/fb55/htmlparser2?sponsor=1", @@ -17456,8 +17790,21 @@ "dependencies": { "domelementtype": "^2.3.0", "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "entities": "^4.4.0" + "domutils": "^3.2.2", + "entities": "^7.0.1" + } + }, + "node_modules/htmlparser2/node_modules/entities": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-7.0.1.tgz", + "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" } }, "node_modules/http-deceiver": { @@ -17650,9 +17997,9 @@ } }, "node_modules/ignore-walk/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz", + "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==", "dev": true, "license": "MIT", "dependencies": { @@ -17661,9 +18008,9 @@ } }, "node_modules/ignore-walk/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, "license": "ISC", "dependencies": { @@ -17674,14 +18021,11 @@ } }, "node_modules/image-size": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.1.1.tgz", - "integrity": "sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-2.0.2.tgz", + "integrity": "sha512-IRqXKlaXwgSMAMtpNzZa1ZAe8m+Sa1770Dhk8VkSsP9LS+iHD62Zd8FQKs8fbPiagBE7BzoFX23cxFnwshpV6w==", "dev": true, "license": "MIT", - "dependencies": { - "queue": "6.0.2" - }, "bin": { "image-size": "bin/image-size.js" }, @@ -17792,6 +18136,19 @@ "node": ">=8" } }, + "node_modules/index-to-position": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/index-to-position/-/index-to-position-1.2.0.tgz", + "integrity": "sha512-Yg7+ztRkqslMAS2iFaU+Oa4KTSidr63OsFGlOrJoW981kIYO3CGCS3wA95P1mUi/IVSJkn0D479KTJpVpvFNuw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -17869,19 +18226,6 @@ "loose-envify": "^1.0.0" } }, - "node_modules/invert-kv": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-3.0.1.tgz", - "integrity": "sha512-CYdFeFexxhv/Bcny+Q0BfOV+ltRlJcd4BBZBYFX/O0u4npJrgZtIcjokegtiSMAvlMTJ+Koq0GBCc//3bueQxw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sindresorhus/invert-kv?sponsor=1" - } - }, "node_modules/ip-address": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", @@ -17923,19 +18267,6 @@ "node": ">=8" } }, - "node_modules/is-absolute": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-0.1.7.tgz", - "integrity": "sha512-Xi9/ZSn4NFapG8RP98iNPMOeaV3mXPisxKxzKtHVqr3g56j/fBn+yZmnxSVAA8lmZbl2J9b/a4kJvfU3hqQYgA==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-relative": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-arguments": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", @@ -18255,6 +18586,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/is-in-ssh": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-in-ssh/-/is-in-ssh-1.0.0.tgz", + "integrity": "sha512-jYa6Q9rH90kR1vKB6NM7qqd1mge3Fx4Dhw5TVlK1MUBqhEOuCagrEHMevNuCcbECmXZ0ThXkRm+Ymr51HwEPAw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-inside-container": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", @@ -18497,15 +18841,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-relative": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-0.1.3.tgz", - "integrity": "sha512-wBOr+rNM4gkAZqoLRJI4myw5WzzIdQosFAAbnvfXP5z1LyzgAI3ivOKehC5KfqlQJZoihVhirgtCBj378Eg8GA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-set": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", @@ -18847,13 +19182,6 @@ "set-function-name": "^2.0.1" } }, - "node_modules/jed": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/jed/-/jed-1.1.1.tgz", - "integrity": "sha512-z35ZSEcXHxLW4yumw0dF6L464NT36vmx3wxJw8MDpraBcWuNVgUPZgPJKcu1HekNgwlMFNqol7i/IpSbjhqwqA==", - "dev": true, - "license": "MIT" - }, "node_modules/jest": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", @@ -19504,9 +19832,9 @@ } }, "node_modules/jose": { - "version": "5.9.2", - "resolved": "https://registry.npmjs.org/jose/-/jose-5.9.2.tgz", - "integrity": "sha512-ILI2xx/I57b20sd7rHZvgiiQrmp2mcotwsAH+5ajbpFQbrYVQdNHYlQhoA5cFb78CgtBOxtC05TeA+mcgkuCqQ==", + "version": "5.9.6", + "resolved": "https://registry.npmjs.org/jose/-/jose-5.9.6.tgz", + "integrity": "sha512-AMlnetc9+CV9asI19zHmrgS/WYsWUwCn2R7RzlbJWD7F9eWYUTGyBmU9o6PxngtLGOiDGPRu+Uc4fhKzbpteZQ==", "dev": true, "license": "MIT", "funding": { @@ -19537,9 +19865,9 @@ "license": "MIT" }, "node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.15.0.tgz", + "integrity": "sha512-ttBQIIQPDeLjpPOohtUdXuXUVoA2uIB6fEH9HyJ7234s5mBJ5wTx20njxplLZQgLaOfpmPQA7X2t5AX6tIPbog==", "dev": true, "license": "MIT", "dependencies": { @@ -19702,6 +20030,42 @@ "graceful-fs": "^4.1.6" } }, + "node_modules/jsonwebtoken": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.3.tgz", + "integrity": "sha512-MT/xP0CrubFRNLNKvxJ2BYfy53Zkm++5bX9dtuPbqAeQpTVe0MQTFhao8+Cp//EmJp244xt6Drw/GVEGCUj40g==", + "dev": true, + "license": "MIT", + "dependencies": { + "jws": "^4.0.1", + "lodash.includes": "^4.3.0", + "lodash.isboolean": "^3.0.3", + "lodash.isinteger": "^4.0.4", + "lodash.isnumber": "^3.0.3", + "lodash.isplainobject": "^4.0.6", + "lodash.isstring": "^4.0.1", + "lodash.once": "^4.0.0", + "ms": "^2.1.1", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=12", + "npm": ">=6" + } + }, + "node_modules/jsonwebtoken/node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/jsx-ast-utils": { "version": "3.3.5", "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", @@ -19771,6 +20135,29 @@ "safe-buffer": "~5.1.0" } }, + "node_modules/jwa": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.1.tgz", + "integrity": "sha512-hRF04fqJIP8Abbkq5NKGN0Bbr3JxlQ+qhZufXVr0DvujKy93ZCbXZMHDL4EOtodSbCWxOqR8MS1tXA5hwqCXDg==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-equal-constant-time": "^1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/jws": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.1.tgz", + "integrity": "sha512-EKI/M/yqPncGUUh44xz0PxSidXFr/+r0pA70+gIYhjv+et7yxM+s29Y+VGDkovRofQem0fs7Uvf4+YmAdyRduA==", + "dev": true, + "license": "MIT", + "dependencies": { + "jwa": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, "node_modules/keyv": { "version": "4.5.4", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", @@ -19938,24 +20325,11 @@ "node_modules/lazystream/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/lcid": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-3.1.1.tgz", - "integrity": "sha512-M6T051+5QCGLBQb8id3hdvIW8+zeFV2FyBGFS9IEK5H9Wt4MueD4bW1eWikpHgZp+5xR3l5c8pZUkQsIA0BFZg==", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, "license": "MIT", "dependencies": { - "invert-kv": "^3.0.0" - }, - "engines": { - "node": ">=8" + "safe-buffer": "~5.1.0" } }, "node_modules/leven": { @@ -20482,6 +20856,34 @@ "dev": true, "license": "MIT" }, + "node_modules/lodash.includes": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", + "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.isinteger": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", + "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==", + "dev": true, + "license": "MIT" + }, "node_modules/lodash.isplainobject": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", @@ -20489,6 +20891,13 @@ "dev": true, "license": "MIT" }, + "node_modules/lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==", + "dev": true, + "license": "MIT" + }, "node_modules/lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", @@ -20503,6 +20912,13 @@ "dev": true, "license": "MIT" }, + "node_modules/lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", + "dev": true, + "license": "MIT" + }, "node_modules/lodash.truncate": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", @@ -20633,19 +21049,6 @@ "tmpl": "1.0.5" } }, - "node_modules/map-age-cleaner": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", - "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-defer": "^1.0.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/map-obj": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", @@ -20746,9 +21149,9 @@ "license": "Python-2.0" }, "node_modules/markdownlint-cli/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz", + "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==", "dev": true, "license": "MIT", "dependencies": { @@ -20777,10 +21180,20 @@ } }, "node_modules/markdownlint-cli/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.0.tgz", + "integrity": "sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/puzrin" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nodeca" + } + ], "license": "MIT", "dependencies": { "argparse": "^2.0.1" @@ -20861,21 +21274,6 @@ "node": ">= 0.6" } }, - "node_modules/mem": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/mem/-/mem-5.1.1.tgz", - "integrity": "sha512-qvwipnozMohxLXG1pOqoLiZKNkC4r4qqRucSoDwXowsNGDSULiqFTRUF05vcZWnwJSG22qTsynQhxbaMtnX9gw==", - "dev": true, - "license": "MIT", - "dependencies": { - "map-age-cleaner": "^0.1.3", - "mimic-fn": "^2.1.0", - "p-is-promise": "^2.1.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/memfs": { "version": "3.5.3", "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", @@ -21387,9 +21785,9 @@ } }, "node_modules/multimatch/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz", + "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==", "dev": true, "license": "MIT", "dependencies": { @@ -21398,9 +21796,9 @@ } }, "node_modules/multimatch/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, "license": "ISC", "dependencies": { @@ -21481,9 +21879,9 @@ "optional": true }, "node_modules/node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.4.0.tgz", + "integrity": "sha512-LarFH0+6VfriEhqMMcLX2F7SwSXeWwnEAJEsYm5QKWchiVYVvJyV9v7UDvUv+w5HO23ZpQTXDv/GxdDdMyOuoQ==", "dev": true, "license": "(BSD-3-Clause OR GPL-2.0)", "engines": { @@ -21497,50 +21895,6 @@ "dev": true, "license": "MIT" }, - "node_modules/node-notifier": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-10.0.1.tgz", - "integrity": "sha512-YX7TSyDukOZ0g+gmzjB6abKu+hTGvO8+8+gIFDsRCU2t8fLV/P2unmt+LGFaIa4y64aX98Qksa97rgz4vMNeLQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "growly": "^1.3.0", - "is-wsl": "^2.2.0", - "semver": "^7.3.5", - "shellwords": "^0.1.1", - "uuid": "^8.3.2", - "which": "^2.0.2" - } - }, - "node_modules/node-notifier/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-notifier/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/node-releases": { "version": "2.0.51", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.51.tgz", @@ -21782,9 +22136,9 @@ "license": "MIT" }, "node_modules/object-inspect": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", - "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", "dev": true, "license": "MIT", "engines": { @@ -22029,103 +22383,6 @@ "node": ">=0.10.0" } }, - "node_modules/os-locale": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-5.0.0.tgz", - "integrity": "sha512-tqZcNEDAIZKBEPnHPlVDvKrp7NzgLi7jRmhKiUoa2NUmhl13FtkAGLUVR+ZsYvApBQdBfYm43A4tXXQ4IrYLBA==", - "dev": true, - "license": "MIT", - "dependencies": { - "execa": "^4.0.0", - "lcid": "^3.0.0", - "mem": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/os-locale/node_modules/execa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", - "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", - "dev": true, - "license": "MIT", - "dependencies": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/os-locale/node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dev": true, - "license": "MIT", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/os-locale/node_modules/human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=8.12.0" - } - }, - "node_modules/os-shim": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", - "integrity": "sha512-jd0cvB8qQ5uVt0lvCIexBaROw1KyKm5sbulg2fWOHjETisuCzWyt+eTZKEMs8v6HwzoGs8xik26jg7eCM6pS+A==", - "dev": true, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/p-defer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/p-is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", - "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -22372,13 +22629,13 @@ } }, "node_modules/parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", + "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", "dev": true, "license": "MIT", "dependencies": { - "entities": "^4.4.0" + "entities": "^6.0.0" }, "funding": { "url": "https://github.com/inikulin/parse5?sponsor=1" @@ -22398,6 +22655,32 @@ "url": "https://github.com/inikulin/parse5?sponsor=1" } }, + "node_modules/parse5-parser-stream": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5-parser-stream/-/parse5-parser-stream-7.1.2.tgz", + "integrity": "sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==", + "dev": true, + "license": "MIT", + "dependencies": { + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5/node_modules/entities": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/parsel-js": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/parsel-js/-/parsel-js-1.1.2.tgz", @@ -22553,85 +22836,42 @@ } }, "node_modules/pino": { - "version": "9.4.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-9.4.0.tgz", - "integrity": "sha512-nbkQb5+9YPhQRz/BeQmrWpEknAaqjpAqRK8NwJpmrX/JHu7JuZC5G1CeAwJDJfGes4h+YihC6in3Q2nGb+Y09w==", + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/pino/-/pino-10.3.1.tgz", + "integrity": "sha512-r34yH/GlQpKZbU1BvFFqOjhISRo1MNx1tWYsYvmj6KIRHSPMT2+yHOEb1SG6NMvRoHRF0a07kCOox/9yakl1vg==", "dev": true, "license": "MIT", "dependencies": { + "@pinojs/redact": "^0.4.0", "atomic-sleep": "^1.0.0", - "fast-redact": "^3.1.1", "on-exit-leak-free": "^2.1.0", - "pino-abstract-transport": "^1.2.0", + "pino-abstract-transport": "^3.0.0", "pino-std-serializers": "^7.0.0", - "process-warning": "^4.0.0", + "process-warning": "^5.0.0", "quick-format-unescaped": "^4.0.3", "real-require": "^0.2.0", "safe-stable-stringify": "^2.3.1", "sonic-boom": "^4.0.1", - "thread-stream": "^3.0.0" + "thread-stream": "^4.0.0" }, "bin": { "pino": "bin.js" } }, "node_modules/pino-abstract-transport": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz", - "integrity": "sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-3.0.0.tgz", + "integrity": "sha512-wlfUczU+n7Hy/Ha5j9a/gZNy7We5+cXp8YL+X+PG8S0KXxw7n/JXA3c46Y0zQznIJ83URJiwy7Lh56WLokNuxg==", "dev": true, "license": "MIT", "dependencies": { - "readable-stream": "^4.0.0", "split2": "^4.0.0" } }, - "node_modules/pino-abstract-transport/node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/pino-abstract-transport/node_modules/readable-stream": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", - "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", - "dev": true, - "license": "MIT", - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10", - "string_decoder": "^1.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, "node_modules/pino-std-serializers": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-7.0.0.tgz", - "integrity": "sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-7.1.0.tgz", + "integrity": "sha512-BndPH67/JxGExRgiX1dX0w1FvZck5Wa4aal9198SrRhZjH3GxKQUKIBnYJTdj2HDN3UQAS06HlfcSbQj2OHmaw==", "dev": true, "license": "MIT" }, @@ -23412,6 +23652,19 @@ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", "license": "MIT" }, + "node_modules/powershell-utils": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/powershell-utils/-/powershell-utils-0.1.0.tgz", + "integrity": "sha512-dM0jVuXJPsDN6DvRpea484tCUaMiXWjuCn++HGTqUWzGDjv5tZkEZldAJ/UMlqRYGFrD/etByo4/xOuC/snX2A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/preact": { "version": "10.24.0", "resolved": "https://registry.npmjs.org/preact/-/preact-10.24.0.tgz", @@ -23490,16 +23743,6 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6.0" - } - }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -23508,10 +23751,20 @@ "license": "MIT" }, "node_modules/process-warning": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-4.0.0.tgz", - "integrity": "sha512-/MyYDxttz7DfGMMHiysAsFE4qF+pQYAA8ziO/3NcRVrQ5fSk+Mns4QZA/oRPFzvcqNoVJXQNWNAsdwBXLUkQKw==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-5.0.0.tgz", + "integrity": "sha512-a39t9ApHNx2L4+HBnQKqxxHNs1r7KF+Intd8Q/g1bUh6q0WIp9voPXJ/x0j+ZL45KF1pJd9+q2jLIRMfvEshkA==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], "license": "MIT" }, "node_modules/progress": { @@ -23802,17 +24055,7 @@ "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", "dev": true, - "license": "MIT" - }, - "node_modules/queue": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", - "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "~2.0.3" - } + "license": "MIT" }, "node_modules/queue-microtask": { "version": "1.2.3", @@ -24213,9 +24456,9 @@ } }, "node_modules/readdir-glob/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "version": "5.1.9", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.9.tgz", + "integrity": "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==", "dev": true, "license": "ISC", "dependencies": { @@ -24428,68 +24671,6 @@ "regjsparser": "bin/parser" } }, - "node_modules/relaxed-json": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/relaxed-json/-/relaxed-json-1.0.3.tgz", - "integrity": "sha512-b7wGPo7o2KE/g7SqkJDDbav6zmrEeP4TK2VpITU72J/M949TLe/23y/ZHJo+pskcGM52xIfFoT9hydwmgr1AEg==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "chalk": "^2.4.2", - "commander": "^2.6.0" - }, - "bin": { - "rjson": "bin/rjson.js" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/relaxed-json/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/relaxed-json/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/relaxed-json/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/relaxed-json/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/rememo": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/rememo/-/rememo-4.0.2.tgz", @@ -24756,16 +24937,13 @@ } }, "node_modules/run-applescript": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", - "integrity": "sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-7.1.0.tgz", + "integrity": "sha512-DPe5pVFaAsinSaV6QjQ6gdiedWDcRCbUuiQfQa2wmWV7+xC9bGulGI8+TdRmoFkAPaBXk8CrAbnlY2ISniJ47Q==", "dev": true, "license": "MIT", - "dependencies": { - "execa": "^5.0.0" - }, "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -25395,13 +25573,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/shellwords": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", - "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", - "dev": true, - "license": "MIT" - }, "node_modules/showdown": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/showdown/-/showdown-1.9.1.tgz", @@ -25595,16 +25766,73 @@ } }, "node_modules/side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.1.tgz", + "integrity": "sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.7", "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" + "object-inspect": "^1.13.4", + "side-channel-list": "^1.0.1", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz", + "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -25839,9 +26067,9 @@ } }, "node_modules/sonic-boom": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.2.0.tgz", - "integrity": "sha512-INb7TM37/mAcsGmc9hyyI6+QR3rR1zVRu36B0NeGXKnOOLiZOfER5SA+N7X7k3yUYRzLWafduTDvJAfDswwEww==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.2.1.tgz", + "integrity": "sha512-w6AxtubXa2wTXAUsZMMWERrsIRAdrK0Sc+FUytWvYAhBJLyuI4llrMIC1DtlNSdI99EI86KZum2MMq3EAZlF9Q==", "dev": true, "license": "MIT", "dependencies": { @@ -25923,18 +26151,6 @@ "node": ">=0.10.0" } }, - "node_modules/spawn-sync": { - "version": "1.0.15", - "resolved": "https://registry.npmjs.org/spawn-sync/-/spawn-sync-1.0.15.tgz", - "integrity": "sha512-9DWBgrgYZzNghseho0JOuh+5fg9u6QWhAWa51QC7+U5rCheZ/j1DrEZnyE0RBBRqZ9uEXGPgSSM0nky6burpVw==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "dependencies": { - "concat-stream": "^1.4.7", - "os-shim": "^0.1.2" - } - }, "node_modules/spawnd": { "version": "10.1.4", "resolved": "https://registry.npmjs.org/spawnd/-/spawnd-10.1.4.tgz", @@ -27017,9 +27233,9 @@ } }, "node_modules/test-exclude/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz", + "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==", "dev": true, "license": "MIT", "dependencies": { @@ -27028,9 +27244,9 @@ } }, "node_modules/test-exclude/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, "license": "ISC", "dependencies": { @@ -27065,15 +27281,25 @@ "license": "MIT" }, "node_modules/thread-stream": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-3.1.0.tgz", - "integrity": "sha512-OqyPZ9u96VohAyMfJykzmivOrY2wfMSf3C5TtFJVgN+Hm6aj+voFhlK+kZEIv2FBh1X6Xp3DlnCOfEQ3B2J86A==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-4.2.0.tgz", + "integrity": "sha512-e2zZ96wSChazBsbENf/Pcm/4swHt2cEKQ92rhUjkL9GCKiTDJIaTBenjE/m9DXi0QBmTMDkFDdOomUy20A1tDQ==", "dev": true, "license": "MIT", "dependencies": { - "real-require": "^0.2.0" + "real-require": "^1.0.0" + }, + "engines": { + "node": ">=20" } }, + "node_modules/thread-stream/node_modules/real-require": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/real-require/-/real-require-1.0.0.tgz", + "integrity": "sha512-P4nbQYQfePJxRSmY+v/KINxVucm4NF3p3s7pJveMTtom52FR4YGltUQLB8idDXwDDWW+eYrWDFbuzUnjoWHF7g==", + "dev": true, + "license": "MIT" + }, "node_modules/through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", @@ -27094,23 +27320,10 @@ "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==", "license": "MIT" }, - "node_modules/titleize": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz", - "integrity": "sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/tmp": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", - "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==", + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.7.tgz", + "integrity": "sha512-e0votIpp4Uo2AJYSzVHV6xCcawuiez3DzqDAbrTc3YxBkplN6e+dM13ZeIcZnDg/QpSuU2zfZ3rzwY8ukEnaXw==", "dev": true, "license": "MIT", "engines": { @@ -27515,13 +27728,6 @@ "dev": true, "license": "MIT" }, - "node_modules/typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", - "dev": true, - "license": "MIT" - }, "node_modules/typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -27580,6 +27786,16 @@ "through": "^2.3.8" } }, + "node_modules/undici": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-7.29.0.tgz", + "integrity": "sha512-IDxfleLmmbSskfWSUATiN1nfn2rDuvnMOqb5CWR92iIfojA0Ud+ulOAAEQ57LPr9rWmsreUyf5lwyao+7GNNVw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=20.18.1" + } + }, "node_modules/undici-types": { "version": "6.19.8", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", @@ -27676,25 +27892,28 @@ "node": ">= 0.8" } }, - "node_modules/untildify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/upath": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz", - "integrity": "sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/upath/-/upath-3.0.7.tgz", + "integrity": "sha512-VjBBquch25nUGMuVBpOb2Cj3gc8Kb7lJBqbsXR/0anZ/5uJsL14Kpth9JKfnBsckxCfgIp6hPvcvvmZ97R9X7g==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/anodynos" + }, + { + "type": "polar", + "url": "https://polar.sh/anodynos" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/subscription/pkg/npm-upath" + } + ], "license": "MIT", "engines": { - "node": ">=4", - "yarn": "*" + "node": ">=20" } }, "node_modules/update-browserslist-db": { @@ -28169,9 +28388,9 @@ } }, "node_modules/watchpack": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", - "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.5.1.tgz", + "integrity": "sha512-Zn5uXdcFNIA1+1Ei5McRd+iRzfhENPCe7LeABkJtNulSxjma+l7ltNx55BWZkRlwRnpOgHqxnjyaDgJnNXnqzg==", "dev": true, "license": "MIT", "dependencies": { @@ -28203,38 +28422,36 @@ } }, "node_modules/web-ext": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/web-ext/-/web-ext-8.3.0.tgz", - "integrity": "sha512-mXSOiDtmm3n0KNpSuQ65fJpypAoNLAmZv3QkdlVbJ6etn0BK+hl/k+tjHefSIKdbzGUIeFbhn2oxWMe9Tdyrdg==", + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/web-ext/-/web-ext-10.4.0.tgz", + "integrity": "sha512-8QXl8qrGl1IMsFphOnKHHDciGo6B9cnuJ4KPzZu1xHZaAhIV2o+NH1CItQtpapJvNkJ8Iu4Ikmse579O8oJcjA==", "dev": true, "license": "MPL-2.0", "dependencies": { - "@babel/runtime": "7.25.6", - "@devicefarmer/adbkit": "3.2.6", - "addons-linter": "7.1.0", + "@babel/runtime": "7.29.7", + "@devicefarmer/adbkit": "3.3.8", + "addons-linter": "10.7.0", "camelcase": "8.0.0", - "chrome-launcher": "1.1.2", + "chrome-launcher": "1.2.0", "debounce": "1.2.1", - "decamelize": "6.0.0", + "decamelize": "6.0.1", "es6-error": "4.1.1", "firefox-profile": "4.7.0", - "fx-runner": "1.4.0", + "fx-runner": "1.5.0", "https-proxy-agent": "^7.0.0", - "jose": "5.9.2", + "jose": "5.9.6", "jszip": "3.10.1", "multimatch": "6.0.0", - "node-notifier": "10.0.1", - "open": "9.1.0", - "parse-json": "7.1.1", - "pino": "9.4.0", + "open": "11.0.0", + "parse-json": "8.3.0", + "pino": "10.3.1", "promise-toolbox": "0.21.0", "source-map-support": "0.5.21", "strip-bom": "5.0.0", - "strip-json-comments": "5.0.1", - "tmp": "0.2.3", + "strip-json-comments": "5.0.3", + "tmp": "0.2.7", "update-notifier": "7.3.1", - "watchpack": "2.4.2", - "ws": "8.18.0", + "watchpack": "2.5.1", "yargs": "17.7.2", "zip-dir": "2.0.0" }, @@ -28242,7 +28459,7 @@ "web-ext": "bin/web-ext.js" }, "engines": { - "node": ">=18.0.0", + "node": ">=20.0.0", "npm": ">=8.0.0" } }, @@ -28273,9 +28490,9 @@ } }, "node_modules/web-ext/node_modules/chrome-launcher": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/chrome-launcher/-/chrome-launcher-1.1.2.tgz", - "integrity": "sha512-YclTJey34KUm5jB1aEJCq807bSievi7Nb/TU4Gu504fUYi3jw3KCIaH6L7nFWQhdEgH3V+wCh+kKD1P5cXnfxw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/chrome-launcher/-/chrome-launcher-1.2.0.tgz", + "integrity": "sha512-JbuGuBNss258bvGil7FT4HKdC3SC2K7UAEUqiPy3ACS3Yxo3hAW6bvFpCu2HsIJLgTqxgEX6BkujvzZfLpUD0Q==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -28285,16 +28502,34 @@ "lighthouse-logger": "^2.0.1" }, "bin": { - "print-chrome-path": "bin/print-chrome-path.js" + "print-chrome-path": "bin/print-chrome-path.cjs" }, "engines": { "node": ">=12.13.0" } }, + "node_modules/web-ext/node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, "node_modules/web-ext/node_modules/decamelize": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-6.0.0.tgz", - "integrity": "sha512-Fv96DCsdOgB6mdGl67MT5JaTNKRzrzill5OH5s8bjYJXVlcXyPYGyPsUkWyGV5p1TXI5esYIYMMeDJL0hEIwaA==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-6.0.1.tgz", + "integrity": "sha512-G7Cqgaelq68XHJNGlZ7lrNQyhZGsFqpwtGFexqUv4IQdjKoSYF7ipZ9UuTJZUSQXFj/XaoBLuEVIVqr8EJngEQ==", "dev": true, "license": "MIT", "engines": { @@ -28344,88 +28579,51 @@ "node": ">= 14" } }, - "node_modules/web-ext/node_modules/json-parse-even-better-errors": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz", - "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/web-ext/node_modules/lighthouse-logger": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/lighthouse-logger/-/lighthouse-logger-2.0.1.tgz", - "integrity": "sha512-ioBrW3s2i97noEmnXxmUq7cjIcVRjT5HBpAYy8zE11CxU9HqlWHHeRxfeN1tn8F7OEMVPIC9x1f8t3Z7US9ehQ==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lighthouse-logger/-/lighthouse-logger-2.0.2.tgz", + "integrity": "sha512-vWl2+u5jgOQuZR55Z1WM0XDdrJT6mzMP8zHUct7xTlWhuQs+eV0g+QL0RQdFjT54zVmbhLCP8vIVpy1wGn/gCg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "debug": "^2.6.9", + "debug": "^4.4.1", "marky": "^1.2.2" } }, - "node_modules/web-ext/node_modules/lighthouse-logger/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/web-ext/node_modules/lines-and-columns": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.4.tgz", - "integrity": "sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/web-ext/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true, - "license": "MIT" - }, "node_modules/web-ext/node_modules/open": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/open/-/open-9.1.0.tgz", - "integrity": "sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/open/-/open-11.0.0.tgz", + "integrity": "sha512-smsWv2LzFjP03xmvFoJ331ss6h+jixfA4UUV/Bsiyuu4YJPfN+FIQGOIiv4w9/+MoHkfkJ22UIaQWRVFRfH6Vw==", "dev": true, "license": "MIT", "dependencies": { - "default-browser": "^4.0.0", + "default-browser": "^5.4.0", "define-lazy-prop": "^3.0.0", + "is-in-ssh": "^1.0.0", "is-inside-container": "^1.0.0", - "is-wsl": "^2.2.0" + "powershell-utils": "^0.1.0", + "wsl-utils": "^0.3.0" }, "engines": { - "node": ">=14.16" + "node": ">=20" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/web-ext/node_modules/parse-json": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-7.1.1.tgz", - "integrity": "sha512-SgOTCX/EZXtZxBE5eJ97P4yGM5n37BwRU+YMsH4vNzFqJV/oWFXXCmwFlgWUM4PrakybVOueJJ6pwHqSVhTFDw==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-8.3.0.tgz", + "integrity": "sha512-ybiGyvspI+fAoRQbIPRddCcSTV9/LsJbf0e/S85VLowVGzRmokfneg2kwVW/KU5rOXrPSbF1qAKPMgNTqqROQQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.21.4", - "error-ex": "^1.3.2", - "json-parse-even-better-errors": "^3.0.0", - "lines-and-columns": "^2.0.3", - "type-fest": "^3.8.0" + "@babel/code-frame": "^7.26.2", + "index-to-position": "^1.1.0", + "type-fest": "^4.39.1" }, "engines": { - "node": ">=16" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -28466,9 +28664,9 @@ } }, "node_modules/web-ext/node_modules/strip-json-comments": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-5.0.1.tgz", - "integrity": "sha512-0fk9zBqO67Nq5M/m45qHCJxylV/DhBlIOVExqgOMiCCrzrhU6tCibRXNqE3jwJLftzE9SNuZtYbpzcO+i9FiKw==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-5.0.3.tgz", + "integrity": "sha512-1tB5mhVo7U+ETBKNf92xT4hrQa3pm0MZ0PQvuDnWgAAGHDsfp4lPSpiS6psrSiet87wyGPh9ft6wmhOMQ0hDiw==", "dev": true, "license": "MIT", "engines": { @@ -28479,13 +28677,13 @@ } }, "node_modules/web-ext/node_modules/type-fest": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", - "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", + "version": "4.41.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz", + "integrity": "sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==", "dev": true, "license": "(MIT OR CC0-1.0)", "engines": { - "node": ">=14.16" + "node": ">=16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -28958,13 +29156,6 @@ "node": ">=12" } }, - "node_modules/when": { - "version": "3.7.7", - "resolved": "https://registry.npmjs.org/when/-/when-3.7.7.tgz", - "integrity": "sha512-9lFZp/KHoqH6bPKjbWqa+3Dg/K/r2v0X/3/G2x4DBGchVS2QX2VXL3cZV994WQVnTM1/PD71Az25nAzryEUugw==", - "dev": true, - "license": "MIT" - }, "node_modules/when-exit": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/when-exit/-/when-exit-2.1.3.tgz", @@ -29308,6 +29499,39 @@ } } }, + "node_modules/wsl-utils": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/wsl-utils/-/wsl-utils-0.3.1.tgz", + "integrity": "sha512-g/eziiSUNBSsdDJtCLB8bdYEUMj4jR7AGeUo96p/3dTafgjHhpF4RiCFPiRILwjQoDXx5MqkBr4fwWtR3Ky4Wg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-wsl": "^3.1.0", + "powershell-utils": "^0.1.0" + }, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/wsl-utils/node_modules/is-wsl": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-3.1.1.tgz", + "integrity": "sha512-e6rvdUCiQCAuumZslxRJWR/Doq4VpPR82kqclvcS0efgt430SlGIk05vdCN58+VrzgtIcfNODjozVielycD4Sw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-inside-container": "^1.0.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/xdg-basedir": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", diff --git a/package.json b/package.json index c6a4fb48..a4031059 100644 --- a/package.json +++ b/package.json @@ -49,9 +49,9 @@ "ts-loader": "^9.5.1", "tsconfig-paths-webpack-plugin": "^4.1.0", "typescript": "^5.6.3", - "web-ext": "^8.3.0", - "wp-types": "^4.67.0", - "webpack": "^5.96.1" + "web-ext": "^10.4.0", + "webpack": "^5.96.1", + "wp-types": "^4.67.0" }, "dependencies": { "@wordpress/block-library": "^9.12.0", diff --git a/plan.md b/plan.md index ec5b677c..daf25832 100644 --- a/plan.md +++ b/plan.md @@ -153,16 +153,16 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 44 | GHSA-95m3-7q98-8xr5 | critical | npm | `sha.js` | transitive / runtime | `2.4.11` | `2.4.12` | PGL | `sha.js@2.4.11 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 42 | GHSA-fjxv-7rqg-78g4 | critical | npm | `form-data` | transitive / development | `4.0.0` | `4.0.4` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 77 | GHSA-5rq4-664w-9x2c | critical | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.0` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 146 | GHSA-w7jw-789q-3m8p | critical | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.8.4` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | WPS + CONCURRENTLY paths removed; vulnerable WEBEXT path remains; child branch validated locally | +| 146 | GHSA-w7jw-789q-3m8p | critical | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.8.4` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PR #202 removed the WPS and CONCURRENTLY paths; web-ext `10.4.0` replaces the last affected `1.7.3` path with patched `1.8.4`; vulnerable version absent globally on the child branch | | 164 | GHSA-xv26-6w52-cph6 | critical | npm | `websocket-driver` | transitive / development | `0.7.4` | `0.7.5` | WPS | `websocket-driver@0.7.4 ← sockjs@0.3.24 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 3 | GHSA-pwfr-8pq7-x9qv | high | npm | `octokit` | transitive / runtime | `3.1.1` | `3.1.2` | PGL | `octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | -| 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | -| 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | -| 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 58 | GHSA-2w69-qvjg-hvjx | high | npm | `@remix-run/router` | transitive / runtime | `1.21.0` | `1.23.2` | ROUTER | `@remix-run/router@1.21.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | -| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable BLK + WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable BLK and WPS paths remain | | 192 | GHSA-6g55-p6wh-862q | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.12` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 195 | GHSA-r28c-9q8g-f849 | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.18` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 6 | GHSA-3h5v-q93c-6h6q | high | npm | `ws` | transitive / development | `8.13.0` | `8.17.1` | WPS | `ws@8.13.0 ← puppeteer-core@20.9.0 ← lighthouse@10.4.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | @@ -170,28 +170,28 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 37 | GHSA-8cj5-5rvv-wf4v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.9` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 46 | GHSA-vj76-c3g6-qr5v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.1.1` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 49 | GHSA-7mvr-c777-76hp | high | npm | `playwright` | transitive / development | `1.48.2` | `1.55.1` | WPS | `playwright@1.48.2 ← @playwright/test@1.48.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 54 | GHSA-5gfm-wpxj-wjgq | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 54 | GHSA-5gfm-wpxj-wjgq | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | | 63 | GHSA-vvj3-c3rp-c85p | high | composer | `phpunit/phpunit` | unknown / development | `9.6.21` | `9.6.33` | PHPUNIT | `phpunit/phpunit@9.6.21 (direct require-dev in composer.json)` | unassigned | baseline open | | 70 | GHSA-43fc-jf86-j433 | high | npm | `axios` | transitive / development | `1.7.7` | `1.13.5` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 79 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `9.0.3` | `9.0.7` | WPS | `minimatch@9.0.3 ← @typescript-eslint/typescript-estree@6.21.0 ← @typescript-eslint/parser@6.21.0 ← @wordpress/eslint-plugin@21.0.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 80 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `5.1.6` | `5.1.8` | WEBPACK | `minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | unassigned | baseline open | -| 83 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `3.0.8, 3.1.2` | `3.1.3` | ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS | `minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 80 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `5.1.6` | `5.1.8` | WEBPACK | `minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | `agent/maintenance-004-web-ext` | incidental causal in-range refresh selects patched `minimatch@5.1.9`; vulnerable major-5 version absent globally on the child branch | +| 83 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `3.0.8, 3.1.2` | `3.1.3` | ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS | `minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | WEBEXT, ESLINT-RESOLVER, and compatible WEBPACK/WPS paths refresh to patched `3.1.5`; vulnerable `markdownlint-cli` WPS path at `3.0.8` remains | | 84 | GHSA-5c6j-r48x-rmvq | high | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.3` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBPACK + WPS paths remain; child branch documents upstream WPS residual | | 85 | GHSA-xpqw-6gx7-v673 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.3` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 88 | GHSA-wf6x-7x77-mvgw | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.8` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 91 | GHSA-rf6f-7fwh-wjgh | high | npm | `flatted` | transitive / development | `3.3.1` | `3.4.2` | ESLINT-RESOLVER + WEBEXT + WPS | `flatted@3.3.1 ← flat-cache@3.2.0 ← file-entry-cache@6.0.1 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | -| 93 | GHSA-ppp5-5v6c-4jwp | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | -| 94 | GHSA-q67f-28xg-22rw | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | -| 96 | GHSA-2328-f5f3-gj25 | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 91 | GHSA-rf6f-7fwh-wjgh | high | npm | `flatted` | transitive / development | `3.3.1` | `3.4.2` | ESLINT-RESOLVER + WEBEXT + WPS | `flatted@3.3.1 ← flat-cache@3.2.0 ← file-entry-cache@6.0.1 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `flatted@3.4.3`; vulnerable version absent globally on the child branch | +| 93 | GHSA-ppp5-5v6c-4jwp | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | +| 94 | GHSA-q67f-28xg-22rw | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | +| 96 | GHSA-2328-f5f3-gj25 | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | | 103 | GHSA-r5fr-rjxr-66jc | high | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | | 104 | GHSA-6v7q-wjvx-w8wg | high | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.2` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 117 | GHSA-6chq-wfr3-2hj9 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 120 | GHSA-pf86-5x62-jrwf | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 125 | GHSA-q3j6-qgpj-74h6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.1` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | -| 126 | GHSA-v39h-62p7-jpjc | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.2` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 125 | GHSA-q3j6-qgpj-74h6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.1` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | +| 126 | GHSA-v39h-62p7-jpjc | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.2` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | | 127 | GHSA-fv7c-fp4j-7gwp | high | npm | `@babel/plugin-transform-modules-systemjs` | transitive / development | `7.25.9` | `7.29.4` | BABEL + WPS | `@babel/plugin-transform-modules-systemjs@7.25.9 ← @babel/preset-env@7.26.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable BABEL + WPS paths remain; child branch documents upstream WPS residual | | 130 | GHSA-q8qp-cvcw-x6jj | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 136 | GHSA-ph9p-34f9-6g65 | high | npm | `tmp` | transitive / development | `0.2.3` | `0.2.6` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | unassigned | baseline open | +| 136 | GHSA-ph9p-34f9-6g65 | high | npm | `tmp` | transitive / development | `0.2.3` | `0.2.6` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | `agent/maintenance-004-web-ext` | web-ext `10.4.0` selects patched `tmp@0.2.7`; vulnerable version absent globally on the child branch | | 137 | GHSA-pmwg-cvhr-8vh7 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 141 | GHSA-j5f8-grm9-p9fc | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 143 | GHSA-p92q-9vqr-4j8v | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | @@ -199,30 +199,30 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 148 | GHSA-35jp-ww65-95wh | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 155 | GHSA-hmw2-7cc7-3qxx | high | npm | `form-data` | transitive / development | `4.0.0` | `4.0.6` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 158 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / development | `7.5.10` | `7.5.11` | WPS | `ws@7.5.10 ← webpack-bundle-analyzer@4.10.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 166 | GHSA-xcpc-8h2w-3j85 | high | npm | `adm-zip` | transitive / development | `0.5.16` | `0.6.0` | WEBEXT + WPS | `adm-zip@0.5.16 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | -| 167 | GHSA-395f-4hp3-45gv | high | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.9.0` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | WPS + CONCURRENTLY paths removed; vulnerable WEBEXT path remains; child branch validated locally | +| 166 | GHSA-xcpc-8h2w-3j85 | high | npm | `adm-zip` | transitive / development | `0.5.16` | `0.6.0` | WEBEXT + WPS | `adm-zip@0.5.16 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | WEBEXT and WPS paths remain affected; web-ext `10.4.0` and current `10.5.0` resolve at most `adm-zip@0.5.18`, below the `0.6.0` patch, so this row is upstream-blocked for WEBEXT | +| 167 | GHSA-395f-4hp3-45gv | high | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.9.0` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PR #202 removed WPS and CONCURRENTLY paths; web-ext `10.4.0` and current `10.5.0` pin `fx-runner@1.5.0` to affected `shell-quote@1.8.4`, so this row is upstream-blocked for WEBEXT | | 172 | GHSA-v245-v573-v5vm | high | npm | `linkify-it` | transitive / development | `3.0.3` | `5.0.2` | WPS | `linkify-it@3.0.3 ← markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 173 | GHSA-2p49-hgcm-8545 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.4` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 174 | GHSA-4c8g-83qw-93j6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.3` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | -| 177 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 178 | GHSA-v2hh-gcrm-f6hx | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.4` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | -| 181 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `4.1.0` | `4.3.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 174 | GHSA-4c8g-83qw-93j6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.3` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | +| 177 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | incidental causal in-range refresh selects patched `js-yaml@3.15.0`; vulnerable version absent globally on the child branch | +| 178 | GHSA-v2hh-gcrm-f6hx | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.4` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | +| 181 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `4.1.0` | `4.3.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally on the child branch | | 182 | GHSA-v56q-mh7h-f735 | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 183 | GHSA-xvcm-6775-5m9r | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 184 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `1.1.11` | `1.1.16` | ESLINT-RESOLVER + WEBEXT + WPS | `brace-expansion@1.1.11 ← minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 184 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `1.1.11` | `1.1.16` | ESLINT-RESOLVER + WEBEXT + WPS | `brace-expansion@1.1.11 ← minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `brace-expansion@1.1.16`; vulnerable major-1 version absent globally on the child branch | | 187 | GHSA-jr5f-v2jv-69x6 | high | npm | `axios` | transitive / development | `1.7.7` | `1.8.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 191 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `2.0.1` | `2.1.2` | WEBPACK + WPS | `brace-expansion@2.0.1 ← minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBPACK + WPS paths remain; child branch documents upstream WPS residual | +| 191 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `2.0.1` | `2.1.2` | WEBPACK + WPS | `brace-expansion@2.0.1 ← minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | incidental causal in-range refresh selects patched `brace-expansion@2.1.2`; vulnerable version absent globally on the child branch | | 24 | GHSA-mwcw-c2x4-8c55 | medium | npm | `nanoid` | transitive / runtime | `3.3.7` | `3.3.8` | BLK | `nanoid@3.3.7 ← postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 29 | GHSA-x4c5-c7rf-jjgv | medium | npm | `@octokit/endpoint` | transitive / runtime | `9.0.5` | `9.0.6` | PGL | `@octokit/endpoint@9.0.5 ← @octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 30 | GHSA-xx4v-prfh-6cgc | medium | npm | `@octokit/request-error` | transitive / runtime | `5.1.0` | `5.1.1` | PGL | `@octokit/request-error@5.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 32 | GHSA-rmvr-2pp2-xj38 | medium | npm | `@octokit/request` | transitive / runtime | `8.4.0` | `8.4.1` | PGL | `@octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | -| 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable AJV + WEBEXT + WEBPACK + WPS paths remain; child branch documents unchanged WPS residual | +| 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | web-ext `10.4.0` requires a compatible shared Ajv that resolves to patched `8.20.0`; vulnerable major-8 version absent globally on the child branch | | 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | -| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable BLK + WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable BLK and WPS paths remain | | 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | | 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | | 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | @@ -232,9 +232,9 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 36 | GHSA-4www-5p9h-95mh | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.8` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 38 | GHSA-4v9v-hfq4-rm2v | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 39 | GHSA-9jgg-88mc-972h | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 51 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.14.2` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 52 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.1.1` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | -| 53 | GHSA-65ch-62r8-g69g | medium | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 51 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.14.2` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | incidental causal in-range refresh selects patched `js-yaml@3.15.0`; vulnerable version absent globally on the child branch | +| 52 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.1.1` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally on the child branch | +| 53 | GHSA-65ch-62r8-g69g | medium | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | | 62 | GHSA-xxjr-mmjv-4gpg | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.17.23` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | | 101 | GHSA-3v7f-55p6-f55p | medium | npm | `picomatch` | transitive / development | `2.3.1` | `2.3.2` | ESLINT-RESOLVER + WEBPACK + WPS | `picomatch@2.3.1 ← micromatch@4.0.8 ← ts-loader@9.5.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | | 102 | GHSA-f23m-r3pf-42rh | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | @@ -254,21 +254,21 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 152 | GHSA-v6wh-96g9-6wx3 | medium | npm | `launch-editor` | transitive / development | `2.9.1` | `2.14.1` | WPS | `launch-editor@2.9.1 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 154 | GHSA-mx8g-39q3-5c79 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.5` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 160 | GHSA-64mm-vxmg-q3vj | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.10` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 162 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 163 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.2.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBEXT + WPS paths remain; child branch documents upstream WPS residual | +| 162 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | incidental causal in-range refresh selects patched `js-yaml@3.15.0`; vulnerable version absent globally on the child branch | +| 163 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.2.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally on the child branch | | 169 | GHSA-f5vj-f2hx-8m93 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 170 | GHSA-m28w-2pqf-7qgj | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 179 | GHSA-mmx7-hfxf-jppx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 180 | GHSA-7q8q-rj6j-mhjq | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL + WEBEXT + WPS | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | -| 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL + WEBEXT + WPS | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | -| 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL + WEBEXT + WPS | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | -| 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL + WEBEXT + WPS | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL + WEBEXT + WPS | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL + WEBEXT + WPS | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL + WEBEXT + WPS | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL + WEBEXT + WPS | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 64 | GHSA-73rr-hh4g-fpgx | low | npm | `diff` | transitive / runtime | `4.0.2` | `4.0.4` | BLK | `diff@4.0.2 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | -| 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | PGL path removed by PR #201; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | -| 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) | published PGL path removed by PR #201, but its bundled source remains upstream-blocked; vulnerable WEBEXT + WPS paths remain; child branch documents unchanged WPS residual | +| 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | published PGL path removed by PR #201 but its bundled source remains upstream-blocked; WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 41 | GHSA-76c9-3jph-rj3q | low | npm | `on-headers` | transitive / development | `1.0.2` | `1.1.0` | WPS | `on-headers@1.0.2 ← compression@1.7.4 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 43 | GHSA-52f5-9888-hmc6 | low | npm | `tmp` | transitive / development | `0.2.3` | `0.2.4` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | unassigned | baseline open | +| 43 | GHSA-52f5-9888-hmc6 | low | npm | `tmp` | transitive / development | `0.2.3` | `0.2.4` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | `agent/maintenance-004-web-ext` | web-ext `10.4.0` selects patched `tmp@0.2.7`; vulnerable version absent globally on the child branch | | 65 | GHSA-38r7-794h-5758 | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.0` | WEBPACK | `webpack@5.96.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | shared root webpack resolved to `5.109.0` to satisfy `@wordpress/scripts@30.7.0` requirement `^5.97.0`; vulnerable version absent globally; validated locally | | 66 | GHSA-8fgc-7cc6-rx7x | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.1` | WEBPACK | `webpack@5.96.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | shared root webpack resolved to `5.109.0` to satisfy `@wordpress/scripts@30.7.0` requirement `^5.97.0`; vulnerable version absent globally; validated locally | | 118 | GHSA-xhjh-pmcv-23jw | low | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | @@ -340,3 +340,20 @@ Status: validated locally; child pull request [#202](https://github.com/WordPres - Upstream residual rows: 11, 13, 23, 99, 153, 6, 33, 37, 46, 49, 54, 79, 83, 84, 85, 91, 93, 94, 96, 103, 125, 126, 127, 158, 166, 172, 173, 174, 177, 178, 181, 184, 191, 57, 72, 132, 36, 38, 39, 51, 52, 53, 62, 101, 102, 115, 131, 134, 151, 152, 154, 160, 162, 163, 169, 170, 15, 16, 17, 18, 68, 171, 41, 133, and 159 retain an installed WPS path in the advisory range. The published scripts manifests through `33.0.0` continue to constrain core residual parents such as `webpack-dev-server` to major 4, `adm-zip` to major 0.5, and `markdownlint-cli` to major 0.31; the table records each shared remaining family rather than treating aggregate audit reduction as resolution. - Audit delta: the post-PR-201 baseline of 111 vulnerable/effect packages (12 low, 50 moderate, 43 high, and 6 critical) becomes 102 (11 low, 48 moderate, 40 high, and 3 critical). The final GHSA set adds no advisory relative to that baseline. - Validation: Node `v24.18.0` with npm `11.16.0` completed a clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. Both builds completed with the pre-existing Playground dynamic-request and asset-size warnings. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` reproduced only the two pre-existing manifest errors `EXTENSION_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the allowed `UNSUPPORTED_API` warning. Final `npm audit --json` is nonzero only because of documented remaining families and reports the exact 102-effect-package delta above; programmatic version- and installed-path checks passed for all 99 targeted baseline rows. The WPS-specific breakdown remains 97 rows: 30 globally resolved, two WPS paths removed but shared advisories remaining at 146 and 167, and 65 WPS residuals; the other two globally resolved target rows are incidental webpack alerts 65 and 66. + +### Child Execution Record: `agent/maintenance-004-web-ext` + +Status: validated locally; child pull request not yet opened. + +- Direct dependency change: `web-ext` moves from declared range `^8.3.0` and locked version `8.3.0` to declared range `^10.4.0` and locked version `10.4.0`; no other declared direct dependency changes and no application, manifest, configuration, or npm-script changes. +- Stable-release boundary evidence: registry manifests and clean isolated locks were examined for all nineteen stable releases newer than `8.3.0` through current `10.5.0`: `8.4.0`, `8.5.0`, `8.6.0`, `8.7.0`, `8.7.1`, `8.8.0`, `8.9.0`, `8.10.0`, `9.0.0`, `9.1.0`, `9.2.0`, `9.3.0`, `9.4.0`, `10.0.0`, `10.1.0`, `10.2.0`, `10.3.0`, `10.4.0`, and `10.5.0`. Every release through `10.3.0` pins `fx-runner@1.4.0` and affected `shell-quote@1.7.3`; `10.4.0` is the first stable release using `fx-runner@1.5.0` and critical-alert-patched `shell-quote@1.8.4`, so it is the minimum critical-remediation boundary. +- Rejected and residual boundaries: every stable release through `10.3.0` was rejected because it retains the critical WEBEXT shell-quote path. Current stable `10.5.0` still pins `shell-quote@1.8.4`, below alert 167's `1.9.0` patch, and both `10.4.0` and `10.5.0` resolve `adm-zip` only within affected major `0.5`, so no stable web-ext release removes those two high-severity WEBEXT residuals. Advancing to `10.5.0` would not remediate another assigned row and would add unrelated Babel-major churn. +- Semantic lock scope: the lockfile has 75 installed version changes, 71 package paths added, and 69 package paths removed. Changes outside web-ext's direct graph are limited to causal shared deduplication and explicit in-range refreshes for the vulnerable WEBEXT paths in `node-forge`, `fast-uri`, `flatted`, `minimatch`, `brace-expansion`, and `js-yaml`; no override, direct transitive addition, downgrade, dismissal, or unrelated direct upgrade is present. +- Target alerts: 34 WEBEXT-family baseline rows: 146, 11, 13, 23, 99, 153, 54, 83, 91, 93, 94, 96, 125, 126, 136, 166, 167, 174, 178, 181, 184, 57, 72, 132, 52, 53, 163, 15, 16, 17, 18, 68, 171, and 43. +- Globally resolved target rows: 146, 54, 91, 93, 94, 96, 125, 126, 136, 174, 178, 181, 184, 72, 52, 53, 163, and 43 have no installed version in their baseline alert range. Incidental shared-lock rows 80, 177, 191, 51, and 162 are also globally resolved by the causal `minimatch`, `js-yaml`, and `brace-expansion` refreshes. +- Partially remediated shared rows: WEBEXT paths are removed or patched for 11, 13, 23, 99, 153, 83, 57, 132, 15, 16, 17, 18, 68, and 171, but documented PGL-bundle, BLK, WPS, or other baseline-family paths remain. +- Upstream WEBEXT residual rows: 166 retains shared deduped `adm-zip@0.5.16`, while clean isolated current-release locks reach only affected `0.5.18`; 167 replaces `1.7.3` with `shell-quote@1.8.4`, which resolves critical row 146 but remains below the high-row `1.9.0` patch. These are the only assigned WEBEXT paths left in a baseline alert range. +- Full-row recalculation: all 124 baseline table rows were re-evaluated against the final lockfile and installed dependency paths. The 34 WEBEXT targets and five incidental global resolutions are updated above; the other 85 baseline rows retain their prior PR #201/#202 or baseline row status. This baseline-table result does not mean that every current npm-audit causal path stayed unchanged: the larger addons-linter graph changes propagation for npm-audit findings outside the 124-row baseline as detailed below. +- Audit delta: npm audit unique GHSAs decrease from 90 to 67 with twenty-three removed and zero added, while direct vulnerable root package names decrease from 45 to 39. Registry effect-package propagation changes from 102 packages (11 low, 48 moderate, 40 high, and 3 critical) to 138 packages (10 low, 40 moderate, 88 high, and zero critical). `addons-linter@10.7.0` necessarily adds affected paths for the already-present current npm-audit advisory `GHSA-mh99-v99m-4gvg` at `node_modules/@eslint/config-array/node_modules/brace-expansion@1.1.16` and `node_modules/addons-linter/node_modules/brace-expansion@1.1.16` through their matching `minimatch@3.1.5` paths; root `brace-expansion` changes from `2.0.1` to `2.1.2` and remains affected by that newer advisory. These are paths for an already-present current npm-audit advisory outside the 124-row baseline, not new baseline alerts, and the final audit introduces zero new unique GHSA. +- Compatibility and validation: no compatibility change is required by the web-ext CLI or existing `web-ext-config.mjs` and npm command syntax. Node `v24.18.0` with npm `11.16.0` completed a clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds; builds retained only the pre-existing Playground dynamic-request and asset-size warnings. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` exercises web-ext `10.4.0` and exits 1 with the same semantic missing add-on ID and icon errors (`ADDON_ID_REQUIRED` replaces the old linter code name `EXTENSION_ID_REQUIRED`, plus `MANIFEST_ICON_NOT_FOUND`), the allowed `UNSUPPORTED_API` warning, and a new non-error `MISSING_DATA_COLLECTION_PERMISSIONS` warning from addons-linter 10; this child does not modify manifests. Final audit, version-qualified `npm explain` path assertions for every assigned package, installed-version checks, approved-plan-prefix comparison, `git diff --check`, and status inspection pass, subject only to the documented nonzero audit and manifest-lint residuals. +- Manifest follow-up gate: `MISSING_DATA_COLLECTION_PERMISSIONS` is assigned to the later manifest-validation child. That child must review actual extension data flows, including the `pg.ashfame.com` remote iframe, and add a truthful `browser_specific_settings.gecko.data_collection_permissions.required` declaration; it may use `["none"]` only if the review proves that no data-collection category applies, otherwise it must list the actual categories. The Firefox manifest lint gate must confirm that this warning is gone. From c8a04f43a1c04a062c835ad0f75e4bc7a7980274 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 01:58:48 +0400 Subject: [PATCH 09/40] Record web-ext child pull request --- plan.md | 82 ++++++++++++++++++++++++++++----------------------------- 1 file changed, 41 insertions(+), 41 deletions(-) diff --git a/plan.md b/plan.md index daf25832..f6873e7b 100644 --- a/plan.md +++ b/plan.md @@ -153,16 +153,16 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 44 | GHSA-95m3-7q98-8xr5 | critical | npm | `sha.js` | transitive / runtime | `2.4.11` | `2.4.12` | PGL | `sha.js@2.4.11 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 42 | GHSA-fjxv-7rqg-78g4 | critical | npm | `form-data` | transitive / development | `4.0.0` | `4.0.4` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 77 | GHSA-5rq4-664w-9x2c | critical | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.0` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 146 | GHSA-w7jw-789q-3m8p | critical | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.8.4` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PR #202 removed the WPS and CONCURRENTLY paths; web-ext `10.4.0` replaces the last affected `1.7.3` path with patched `1.8.4`; vulnerable version absent globally on the child branch | +| 146 | GHSA-w7jw-789q-3m8p | critical | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.8.4` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PR #202 removed the WPS and CONCURRENTLY paths; web-ext `10.4.0` replaces the last affected `1.7.3` path with patched `1.8.4`; vulnerable version absent globally on the child branch | | 164 | GHSA-xv26-6w52-cph6 | critical | npm | `websocket-driver` | transitive / development | `0.7.4` | `0.7.5` | WPS | `websocket-driver@0.7.4 ← sockjs@0.3.24 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 3 | GHSA-pwfr-8pq7-x9qv | high | npm | `octokit` | transitive / runtime | `3.1.1` | `3.1.2` | PGL | `octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | -| 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 58 | GHSA-2w69-qvjg-hvjx | high | npm | `@remix-run/router` | transitive / runtime | `1.21.0` | `1.23.2` | ROUTER | `@remix-run/router@1.21.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable BLK and WPS paths remain | +| 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable BLK and WPS paths remain | | 192 | GHSA-6g55-p6wh-862q | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.12` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 195 | GHSA-r28c-9q8g-f849 | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.18` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 6 | GHSA-3h5v-q93c-6h6q | high | npm | `ws` | transitive / development | `8.13.0` | `8.17.1` | WPS | `ws@8.13.0 ← puppeteer-core@20.9.0 ← lighthouse@10.4.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | @@ -170,28 +170,28 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 37 | GHSA-8cj5-5rvv-wf4v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.9` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 46 | GHSA-vj76-c3g6-qr5v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.1.1` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 49 | GHSA-7mvr-c777-76hp | high | npm | `playwright` | transitive / development | `1.48.2` | `1.55.1` | WPS | `playwright@1.48.2 ← @playwright/test@1.48.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 54 | GHSA-5gfm-wpxj-wjgq | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | +| 54 | GHSA-5gfm-wpxj-wjgq | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | | 63 | GHSA-vvj3-c3rp-c85p | high | composer | `phpunit/phpunit` | unknown / development | `9.6.21` | `9.6.33` | PHPUNIT | `phpunit/phpunit@9.6.21 (direct require-dev in composer.json)` | unassigned | baseline open | | 70 | GHSA-43fc-jf86-j433 | high | npm | `axios` | transitive / development | `1.7.7` | `1.13.5` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 79 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `9.0.3` | `9.0.7` | WPS | `minimatch@9.0.3 ← @typescript-eslint/typescript-estree@6.21.0 ← @typescript-eslint/parser@6.21.0 ← @wordpress/eslint-plugin@21.0.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 80 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `5.1.6` | `5.1.8` | WEBPACK | `minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | `agent/maintenance-004-web-ext` | incidental causal in-range refresh selects patched `minimatch@5.1.9`; vulnerable major-5 version absent globally on the child branch | -| 83 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `3.0.8, 3.1.2` | `3.1.3` | ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS | `minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | WEBEXT, ESLINT-RESOLVER, and compatible WEBPACK/WPS paths refresh to patched `3.1.5`; vulnerable `markdownlint-cli` WPS path at `3.0.8` remains | +| 80 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `5.1.6` | `5.1.8` | WEBPACK | `minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `minimatch@5.1.9`; vulnerable major-5 version absent globally on the child branch | +| 83 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `3.0.8, 3.1.2` | `3.1.3` | ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS | `minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | WEBEXT, ESLINT-RESOLVER, and compatible WEBPACK/WPS paths refresh to patched `3.1.5`; vulnerable `markdownlint-cli` WPS path at `3.0.8` remains | | 84 | GHSA-5c6j-r48x-rmvq | high | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.3` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBPACK + WPS paths remain; child branch documents upstream WPS residual | | 85 | GHSA-xpqw-6gx7-v673 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.3` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 88 | GHSA-wf6x-7x77-mvgw | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.8` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 91 | GHSA-rf6f-7fwh-wjgh | high | npm | `flatted` | transitive / development | `3.3.1` | `3.4.2` | ESLINT-RESOLVER + WEBEXT + WPS | `flatted@3.3.1 ← flat-cache@3.2.0 ← file-entry-cache@6.0.1 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `flatted@3.4.3`; vulnerable version absent globally on the child branch | -| 93 | GHSA-ppp5-5v6c-4jwp | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | -| 94 | GHSA-q67f-28xg-22rw | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | -| 96 | GHSA-2328-f5f3-gj25 | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | +| 91 | GHSA-rf6f-7fwh-wjgh | high | npm | `flatted` | transitive / development | `3.3.1` | `3.4.2` | ESLINT-RESOLVER + WEBEXT + WPS | `flatted@3.3.1 ← flat-cache@3.2.0 ← file-entry-cache@6.0.1 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `flatted@3.4.3`; vulnerable version absent globally on the child branch | +| 93 | GHSA-ppp5-5v6c-4jwp | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | +| 94 | GHSA-q67f-28xg-22rw | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | +| 96 | GHSA-2328-f5f3-gj25 | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | | 103 | GHSA-r5fr-rjxr-66jc | high | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | | 104 | GHSA-6v7q-wjvx-w8wg | high | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.2` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 117 | GHSA-6chq-wfr3-2hj9 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 120 | GHSA-pf86-5x62-jrwf | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 125 | GHSA-q3j6-qgpj-74h6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.1` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | -| 126 | GHSA-v39h-62p7-jpjc | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.2` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | +| 125 | GHSA-q3j6-qgpj-74h6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.1` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | +| 126 | GHSA-v39h-62p7-jpjc | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.2` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | | 127 | GHSA-fv7c-fp4j-7gwp | high | npm | `@babel/plugin-transform-modules-systemjs` | transitive / development | `7.25.9` | `7.29.4` | BABEL + WPS | `@babel/plugin-transform-modules-systemjs@7.25.9 ← @babel/preset-env@7.26.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable BABEL + WPS paths remain; child branch documents upstream WPS residual | | 130 | GHSA-q8qp-cvcw-x6jj | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 136 | GHSA-ph9p-34f9-6g65 | high | npm | `tmp` | transitive / development | `0.2.3` | `0.2.6` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | `agent/maintenance-004-web-ext` | web-ext `10.4.0` selects patched `tmp@0.2.7`; vulnerable version absent globally on the child branch | +| 136 | GHSA-ph9p-34f9-6g65 | high | npm | `tmp` | transitive / development | `0.2.3` | `0.2.6` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` selects patched `tmp@0.2.7`; vulnerable version absent globally on the child branch | | 137 | GHSA-pmwg-cvhr-8vh7 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 141 | GHSA-j5f8-grm9-p9fc | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 143 | GHSA-p92q-9vqr-4j8v | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | @@ -199,30 +199,30 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 148 | GHSA-35jp-ww65-95wh | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 155 | GHSA-hmw2-7cc7-3qxx | high | npm | `form-data` | transitive / development | `4.0.0` | `4.0.6` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 158 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / development | `7.5.10` | `7.5.11` | WPS | `ws@7.5.10 ← webpack-bundle-analyzer@4.10.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 166 | GHSA-xcpc-8h2w-3j85 | high | npm | `adm-zip` | transitive / development | `0.5.16` | `0.6.0` | WEBEXT + WPS | `adm-zip@0.5.16 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | WEBEXT and WPS paths remain affected; web-ext `10.4.0` and current `10.5.0` resolve at most `adm-zip@0.5.18`, below the `0.6.0` patch, so this row is upstream-blocked for WEBEXT | -| 167 | GHSA-395f-4hp3-45gv | high | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.9.0` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PR #202 removed WPS and CONCURRENTLY paths; web-ext `10.4.0` and current `10.5.0` pin `fx-runner@1.5.0` to affected `shell-quote@1.8.4`, so this row is upstream-blocked for WEBEXT | +| 166 | GHSA-xcpc-8h2w-3j85 | high | npm | `adm-zip` | transitive / development | `0.5.16` | `0.6.0` | WEBEXT + WPS | `adm-zip@0.5.16 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | WEBEXT and WPS paths remain affected; web-ext `10.4.0` and current `10.5.0` resolve at most `adm-zip@0.5.18`, below the `0.6.0` patch, so this row is upstream-blocked for WEBEXT | +| 167 | GHSA-395f-4hp3-45gv | high | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.9.0` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PR #202 removed WPS and CONCURRENTLY paths; web-ext `10.4.0` and current `10.5.0` pin `fx-runner@1.5.0` to affected `shell-quote@1.8.4`, so this row is upstream-blocked for WEBEXT | | 172 | GHSA-v245-v573-v5vm | high | npm | `linkify-it` | transitive / development | `3.0.3` | `5.0.2` | WPS | `linkify-it@3.0.3 ← markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 173 | GHSA-2p49-hgcm-8545 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.4` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 174 | GHSA-4c8g-83qw-93j6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.3` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | -| 177 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | incidental causal in-range refresh selects patched `js-yaml@3.15.0`; vulnerable version absent globally on the child branch | -| 178 | GHSA-v2hh-gcrm-f6hx | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.4` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | -| 181 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `4.1.0` | `4.3.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally on the child branch | +| 174 | GHSA-4c8g-83qw-93j6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.3` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | +| 177 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `js-yaml@3.15.0`; vulnerable version absent globally on the child branch | +| 178 | GHSA-v2hh-gcrm-f6hx | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.4` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | +| 181 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `4.1.0` | `4.3.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally on the child branch | | 182 | GHSA-v56q-mh7h-f735 | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 183 | GHSA-xvcm-6775-5m9r | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 184 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `1.1.11` | `1.1.16` | ESLINT-RESOLVER + WEBEXT + WPS | `brace-expansion@1.1.11 ← minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `brace-expansion@1.1.16`; vulnerable major-1 version absent globally on the child branch | +| 184 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `1.1.11` | `1.1.16` | ESLINT-RESOLVER + WEBEXT + WPS | `brace-expansion@1.1.11 ← minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `brace-expansion@1.1.16`; vulnerable major-1 version absent globally on the child branch | | 187 | GHSA-jr5f-v2jv-69x6 | high | npm | `axios` | transitive / development | `1.7.7` | `1.8.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 191 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `2.0.1` | `2.1.2` | WEBPACK + WPS | `brace-expansion@2.0.1 ← minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | incidental causal in-range refresh selects patched `brace-expansion@2.1.2`; vulnerable version absent globally on the child branch | +| 191 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `2.0.1` | `2.1.2` | WEBPACK + WPS | `brace-expansion@2.0.1 ← minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `brace-expansion@2.1.2`; vulnerable version absent globally on the child branch | | 24 | GHSA-mwcw-c2x4-8c55 | medium | npm | `nanoid` | transitive / runtime | `3.3.7` | `3.3.8` | BLK | `nanoid@3.3.7 ← postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 29 | GHSA-x4c5-c7rf-jjgv | medium | npm | `@octokit/endpoint` | transitive / runtime | `9.0.5` | `9.0.6` | PGL | `@octokit/endpoint@9.0.5 ← @octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 30 | GHSA-xx4v-prfh-6cgc | medium | npm | `@octokit/request-error` | transitive / runtime | `5.1.0` | `5.1.1` | PGL | `@octokit/request-error@5.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | | 32 | GHSA-rmvr-2pp2-xj38 | medium | npm | `@octokit/request` | transitive / runtime | `8.4.0` | `8.4.1` | PGL | `@octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | -| 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | web-ext `10.4.0` requires a compatible shared Ajv that resolves to patched `8.20.0`; vulnerable major-8 version absent globally on the child branch | +| 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` requires a compatible shared Ajv that resolves to patched `8.20.0`; vulnerable major-8 version absent globally on the child branch | | 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | | 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | -| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable BLK and WPS paths remain | +| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable BLK and WPS paths remain | | 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | | 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | | 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | @@ -232,9 +232,9 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 36 | GHSA-4www-5p9h-95mh | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.8` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 38 | GHSA-4v9v-hfq4-rm2v | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 39 | GHSA-9jgg-88mc-972h | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 51 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.14.2` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | incidental causal in-range refresh selects patched `js-yaml@3.15.0`; vulnerable version absent globally on the child branch | -| 52 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.1.1` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally on the child branch | -| 53 | GHSA-65ch-62r8-g69g | medium | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | +| 51 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.14.2` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `js-yaml@3.15.0`; vulnerable version absent globally on the child branch | +| 52 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.1.1` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally on the child branch | +| 53 | GHSA-65ch-62r8-g69g | medium | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | | 62 | GHSA-xxjr-mmjv-4gpg | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.17.23` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | | 101 | GHSA-3v7f-55p6-f55p | medium | npm | `picomatch` | transitive / development | `2.3.1` | `2.3.2` | ESLINT-RESOLVER + WEBPACK + WPS | `picomatch@2.3.1 ← micromatch@4.0.8 ← ts-loader@9.5.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | | 102 | GHSA-f23m-r3pf-42rh | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | @@ -254,21 +254,21 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 152 | GHSA-v6wh-96g9-6wx3 | medium | npm | `launch-editor` | transitive / development | `2.9.1` | `2.14.1` | WPS | `launch-editor@2.9.1 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 154 | GHSA-mx8g-39q3-5c79 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.5` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 160 | GHSA-64mm-vxmg-q3vj | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.10` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 162 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | incidental causal in-range refresh selects patched `js-yaml@3.15.0`; vulnerable version absent globally on the child branch | -| 163 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.2.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally on the child branch | +| 162 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `js-yaml@3.15.0`; vulnerable version absent globally on the child branch | +| 163 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.2.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally on the child branch | | 169 | GHSA-f5vj-f2hx-8m93 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 170 | GHSA-m28w-2pqf-7qgj | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | | 179 | GHSA-mmx7-hfxf-jppx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | | 180 | GHSA-7q8q-rj6j-mhjq | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL + WEBEXT + WPS | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL + WEBEXT + WPS | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL + WEBEXT + WPS | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL + WEBEXT + WPS | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL + WEBEXT + WPS | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL + WEBEXT + WPS | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL + WEBEXT + WPS | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL + WEBEXT + WPS | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 64 | GHSA-73rr-hh4g-fpgx | low | npm | `diff` | transitive / runtime | `4.0.2` | `4.0.4` | BLK | `diff@4.0.2 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | -| 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-004-web-ext` | published PGL path removed by PR #201 but its bundled source remains upstream-blocked; WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | published PGL path removed by PR #201 but its bundled source remains upstream-blocked; WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 41 | GHSA-76c9-3jph-rj3q | low | npm | `on-headers` | transitive / development | `1.0.2` | `1.1.0` | WPS | `on-headers@1.0.2 ← compression@1.7.4 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 43 | GHSA-52f5-9888-hmc6 | low | npm | `tmp` | transitive / development | `0.2.3` | `0.2.4` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | `agent/maintenance-004-web-ext` | web-ext `10.4.0` selects patched `tmp@0.2.7`; vulnerable version absent globally on the child branch | +| 43 | GHSA-52f5-9888-hmc6 | low | npm | `tmp` | transitive / development | `0.2.3` | `0.2.4` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` selects patched `tmp@0.2.7`; vulnerable version absent globally on the child branch | | 65 | GHSA-38r7-794h-5758 | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.0` | WEBPACK | `webpack@5.96.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | shared root webpack resolved to `5.109.0` to satisfy `@wordpress/scripts@30.7.0` requirement `^5.97.0`; vulnerable version absent globally; validated locally | | 66 | GHSA-8fgc-7cc6-rx7x | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.1` | WEBPACK | `webpack@5.96.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | shared root webpack resolved to `5.109.0` to satisfy `@wordpress/scripts@30.7.0` requirement `^5.97.0`; vulnerable version absent globally; validated locally | | 118 | GHSA-xhjh-pmcv-23jw | low | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | @@ -341,9 +341,9 @@ Status: validated locally; child pull request [#202](https://github.com/WordPres - Audit delta: the post-PR-201 baseline of 111 vulnerable/effect packages (12 low, 50 moderate, 43 high, and 6 critical) becomes 102 (11 low, 48 moderate, 40 high, and 3 critical). The final GHSA set adds no advisory relative to that baseline. - Validation: Node `v24.18.0` with npm `11.16.0` completed a clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. Both builds completed with the pre-existing Playground dynamic-request and asset-size warnings. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` reproduced only the two pre-existing manifest errors `EXTENSION_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the allowed `UNSUPPORTED_API` warning. Final `npm audit --json` is nonzero only because of documented remaining families and reports the exact 102-effect-package delta above; programmatic version- and installed-path checks passed for all 99 targeted baseline rows. The WPS-specific breakdown remains 97 rows: 30 globally resolved, two WPS paths removed but shared advisories remaining at 146 and 167, and 65 WPS residuals; the other two globally resolved target rows are incidental webpack alerts 65 and 66. -### Child Execution Record: `agent/maintenance-004-web-ext` +### Child Execution Record: [#203](https://github.com/WordPress/try-wordpress/pull/203) -Status: validated locally; child pull request not yet opened. +Status: validated locally; child pull request [#203](https://github.com/WordPress/try-wordpress/pull/203) is open against the integration branch. - Direct dependency change: `web-ext` moves from declared range `^8.3.0` and locked version `8.3.0` to declared range `^10.4.0` and locked version `10.4.0`; no other declared direct dependency changes and no application, manifest, configuration, or npm-script changes. - Stable-release boundary evidence: registry manifests and clean isolated locks were examined for all nineteen stable releases newer than `8.3.0` through current `10.5.0`: `8.4.0`, `8.5.0`, `8.6.0`, `8.7.0`, `8.7.1`, `8.8.0`, `8.9.0`, `8.10.0`, `9.0.0`, `9.1.0`, `9.2.0`, `9.3.0`, `9.4.0`, `10.0.0`, `10.1.0`, `10.2.0`, `10.3.0`, `10.4.0`, and `10.5.0`. Every release through `10.3.0` pins `fx-runner@1.4.0` and affected `shell-quote@1.7.3`; `10.4.0` is the first stable release using `fx-runner@1.5.0` and critical-alert-patched `shell-quote@1.8.4`, so it is the minimum critical-remediation boundary. From d53b6c8a3ae5d8fe2bb1a1963c1e29e71ab930f0 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 03:30:21 +0400 Subject: [PATCH 10/40] Upgrade WordPress Blocks security boundary --- package-lock.json | 9926 +++++++++++++++++++++++++++++++------------- package.json | 4 +- plan.md | 229 +- src/parser/util.ts | 2 +- webpack.config.cjs | 17 + 5 files changed, 7204 insertions(+), 2974 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9440f3fd..45aee3ae 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { - "name": "try-wordpress-maintenance-004-web-ext", + "name": "try-wordpress-maintenance-005-wordpress-blocks", "lockfileVersion": 3, "requires": true, "packages": { "": { "dependencies": { - "@wordpress/block-library": "^9.12.0", - "@wordpress/blocks": "^13.10.0", + "@wordpress/block-library": "^9.27.0", + "@wordpress/blocks": "^15.22.0", "@wp-playground/client": "^3.1.38", "react": "^18.3.1", "react-dom": "^18.3.1", @@ -52,6 +52,16 @@ "node": ">=6.0.0" } }, + "node_modules/@ariakit/components": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/@ariakit/components/-/components-0.1.8.tgz", + "integrity": "sha512-Lwqh7wCjgQxNPYP8fU4mAXXtEVoN6Zv5jwd+sRYlPf61l7SUbFCEnrXy3+M2FJYOx/3QWUOp/co/OQrDVPid4w==", + "license": "MIT", + "dependencies": { + "@ariakit/store": "0.1.7", + "@ariakit/utils": "0.1.5" + } + }, "node_modules/@ariakit/core": { "version": "0.3.11", "resolved": "https://registry.npmjs.org/@ariakit/core/-/core-0.3.11.tgz", @@ -77,6 +87,24 @@ "react-dom": "^17.0.0 || ^18.0.0" } }, + "node_modules/@ariakit/react-components": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@ariakit/react-components/-/react-components-0.3.4.tgz", + "integrity": "sha512-jEfVkDQi99Zdv9SGnTRWGxfvhLXMHHuKXRw57D/uCA8ziKzMNH0+0ZhNDNKnskfPxBsZjbhtSsBXsCeMp1W1ag==", + "license": "MIT", + "dependencies": { + "@ariakit/components": "0.1.8", + "@ariakit/react-store": "0.1.8", + "@ariakit/react-utils": "0.2.3", + "@ariakit/store": "0.1.7", + "@ariakit/utils": "0.1.5", + "@floating-ui/dom": "^1.0.0" + }, + "peerDependencies": { + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, "node_modules/@ariakit/react-core": { "version": "0.3.14", "resolved": "https://registry.npmjs.org/@ariakit/react-core/-/react-core-0.3.14.tgz", @@ -93,6 +121,49 @@ "react-dom": "^17.0.0 || ^18.0.0" } }, + "node_modules/@ariakit/react-store": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/@ariakit/react-store/-/react-store-0.1.8.tgz", + "integrity": "sha512-VYZ1LTUVMrNUi4jP37Npvhe3mcAzKdznqnBSVeh1Jjsbcgw0JlN88oy6UpdoJPvLKWOZHVYr62Sqn7xE0GrsqQ==", + "license": "MIT", + "dependencies": { + "@ariakit/react-utils": "0.2.3", + "@ariakit/store": "0.1.7", + "@ariakit/utils": "0.1.5", + "use-sync-external-store": "^1.6.0" + }, + "peerDependencies": { + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/@ariakit/react-utils": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@ariakit/react-utils/-/react-utils-0.2.3.tgz", + "integrity": "sha512-fDaheb/7QEusanZb2oRT7mO55GTpQUyBOdjvQF5RPh3/CM15lm0TejLKN5bl1obmU5HRuByvckQmQvSyr8n/dw==", + "license": "MIT", + "dependencies": { + "@ariakit/store": "0.1.7", + "@ariakit/utils": "0.1.5" + }, + "peerDependencies": { + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/@ariakit/store": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/@ariakit/store/-/store-0.1.7.tgz", + "integrity": "sha512-/GcxscA9QTo2F+IFbFPvoyj1N8hzXBnaYsQt9UxRiJgCFPQ2jIe4i6QgPXdOZEZUuqYdyuvjcQrg7MDm9vpvCA==", + "license": "MIT", + "dependencies": { + "@ariakit/utils": "0.1.5" + } + }, + "node_modules/@ariakit/utils": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@ariakit/utils/-/utils-0.1.5.tgz", + "integrity": "sha512-BQebYH9nV1VZttZwoq/fsxcxIJjc8oW2bNV6yJDHLZ8OF8UtM15drFN0JOL8Jwn7jeeD7Ev+tIC8pUijJEditQ==", + "license": "MIT" + }, "node_modules/@babel/code-frame": { "version": "7.26.2", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", @@ -2016,6 +2087,28 @@ "node": ">=6.9.0" } }, + "node_modules/@base-ui/utils": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@base-ui/utils/-/utils-0.3.1.tgz", + "integrity": "sha512-gFFiltORVmW/N6IILTGxizP3PBpVpysqML1ALY5Vk0mH+7faVkCknOU31goYHN5Aoek2dkjxva1XOD2Ce9WuIg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.29.2", + "@floating-ui/utils": "^0.2.11", + "reselect": "^5.2.0", + "use-sync-external-store": "^1.6.0" + }, + "peerDependencies": { + "@types/react": "^17 || ^18 || ^19", + "react": "^17 || ^18 || ^19", + "react-dom": "^17 || ^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, "node_modules/@bcoe/v8-coverage": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", @@ -2024,10 +2117,10 @@ "license": "MIT" }, "node_modules/@csstools/css-parser-algorithms": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.4.tgz", - "integrity": "sha512-Up7rBoV77rv29d3uKHUIVubz1BTcgyUK72IvCQAbfbMv584xHcGKCKbWh7i8hPrRJ7qU4Y8IO3IY9m+iTB7P3A==", - "dev": true, + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz", + "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==", + "devOptional": true, "funding": [ { "type": "github", @@ -2043,14 +2136,14 @@ "node": ">=18" }, "peerDependencies": { - "@csstools/css-tokenizer": "^3.0.3" + "@csstools/css-tokenizer": "^3.0.4" } }, "node_modules/@csstools/css-tokenizer": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.3.tgz", - "integrity": "sha512-UJnjoFsmxfKUdNYdWgOB0mWUypuLvAfQPH1+pyvRJs6euowbFkFC6P13w1l8mJyi3vxYMxc9kld5jZEGRQs6bw==", - "dev": true, + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz", + "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==", + "devOptional": true, "funding": [ { "type": "github", @@ -2108,6 +2201,18 @@ "postcss-selector-parser": "^6.0.10" } }, + "node_modules/@date-fns/tz": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@date-fns/tz/-/tz-1.5.0.tgz", + "integrity": "sha512-lwYN/vDPeNRULcepoE/LO2Pgx+7/RV+S9ARfbc9lr2DtGkOD7pAiruHvbR1RX3Qyf6ja47EWJDMsNK5vK08DJg==", + "license": "MIT" + }, + "node_modules/@date-fns/utc": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@date-fns/utc/-/utc-2.1.1.tgz", + "integrity": "sha512-SlJDfG6RPeEX8wEVv6ZB3kak4MmbtyiI2qX/5zuKdordbrhB/iaJ58GVMZgJ6P1sJaM1gMgENFYYeg1JWrCFrA==", + "license": "MIT" + }, "node_modules/@devicefarmer/adbkit": { "version": "3.3.8", "resolved": "https://registry.npmjs.org/@devicefarmer/adbkit/-/adbkit-3.3.8.tgz", @@ -2171,27 +2276,27 @@ } }, "node_modules/@dual-bundle/import-meta-resolve": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@dual-bundle/import-meta-resolve/-/import-meta-resolve-4.1.0.tgz", - "integrity": "sha512-+nxncfwHM5SgAtrVzgpzJOI1ol0PkumhVo469KCf9lUi21IGcY90G98VuHm9VRrUypmAzawAHO9bs6hqeADaVg==", - "dev": true, + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@dual-bundle/import-meta-resolve/-/import-meta-resolve-4.2.1.tgz", + "integrity": "sha512-id+7YRUgoUX6CgV0DtuhirQWodeeA7Lf4i2x71JS/vtA5pRb/hIGWlw+G6MeXvsM+MXrz0VAydTGElX1rAfgPg==", + "devOptional": true, "license": "MIT", "funding": { "type": "github", - "url": "https://github.com/sponsors/wooorm" + "url": "https://github.com/sponsors/JounQin" } }, "node_modules/@emotion/babel-plugin": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.12.0.tgz", - "integrity": "sha512-y2WQb+oP8Jqvvclh8Q55gLUyb7UFvgv7eJfsj7td5TToBrIUtPay2kMrZi4xjq9qw2vD0ZR5fSho0yqoFgX7Rw==", + "version": "11.13.5", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz", + "integrity": "sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==", "license": "MIT", "dependencies": { "@babel/helper-module-imports": "^7.16.7", "@babel/runtime": "^7.18.3", "@emotion/hash": "^0.9.2", "@emotion/memoize": "^0.9.0", - "@emotion/serialize": "^1.2.0", + "@emotion/serialize": "^1.3.3", "babel-plugin-macros": "^3.1.0", "convert-source-map": "^1.5.0", "escape-string-regexp": "^4.0.0", @@ -2228,29 +2333,29 @@ } }, "node_modules/@emotion/cache": { - "version": "11.13.1", - "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.13.1.tgz", - "integrity": "sha512-iqouYkuEblRcXmylXIwwOodiEK5Ifl7JcX7o6V4jI3iW4mLXX3dmt5xwBtIkJiQEXFAI+pC8X0i67yiPkH9Ucw==", + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.14.0.tgz", + "integrity": "sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==", "license": "MIT", "dependencies": { "@emotion/memoize": "^0.9.0", "@emotion/sheet": "^1.4.0", - "@emotion/utils": "^1.4.0", + "@emotion/utils": "^1.4.2", "@emotion/weak-memoize": "^0.4.0", "stylis": "4.2.0" } }, "node_modules/@emotion/css": { - "version": "11.13.0", - "resolved": "https://registry.npmjs.org/@emotion/css/-/css-11.13.0.tgz", - "integrity": "sha512-BUk99ylT+YHl+W/HN7nv1RCTkDYmKKqa1qbvM/qLSQEg61gipuBF5Hptk/2/ERmX2DCv0ccuFGhz9i0KSZOqPg==", + "version": "11.13.5", + "resolved": "https://registry.npmjs.org/@emotion/css/-/css-11.13.5.tgz", + "integrity": "sha512-wQdD0Xhkn3Qy2VNcIzbLP9MR8TafI0MJb7BEAXKp+w4+XqErksWR4OXomuDzPsN4InLdGhVe6EYcn2ZIUCpB8w==", "license": "MIT", "dependencies": { - "@emotion/babel-plugin": "^11.12.0", - "@emotion/cache": "^11.13.0", - "@emotion/serialize": "^1.3.0", + "@emotion/babel-plugin": "^11.13.5", + "@emotion/cache": "^11.13.5", + "@emotion/serialize": "^1.3.3", "@emotion/sheet": "^1.4.0", - "@emotion/utils": "^1.4.0" + "@emotion/utils": "^1.4.2" } }, "node_modules/@emotion/hash": { @@ -2275,17 +2380,17 @@ "license": "MIT" }, "node_modules/@emotion/react": { - "version": "11.13.3", - "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.13.3.tgz", - "integrity": "sha512-lIsdU6JNrmYfJ5EbUCf4xW1ovy5wKQ2CkPRM4xogziOxH1nXxBSjpC9YqbFAP7circxMfYp+6x676BqWcEiixg==", + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.14.0.tgz", + "integrity": "sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.12.0", - "@emotion/cache": "^11.13.0", - "@emotion/serialize": "^1.3.1", - "@emotion/use-insertion-effect-with-fallbacks": "^1.1.0", - "@emotion/utils": "^1.4.0", + "@emotion/babel-plugin": "^11.13.5", + "@emotion/cache": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2", "@emotion/weak-memoize": "^0.4.0", "hoist-non-react-statics": "^3.3.1" }, @@ -2299,15 +2404,15 @@ } }, "node_modules/@emotion/serialize": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.1.tgz", - "integrity": "sha512-dEPNKzBPU+vFPGa+z3axPRn8XVDetYORmDC0wAiej+TNcOZE70ZMJa0X7JdeoM6q/nWTMZeLpN/fTnD9o8MQBA==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.3.tgz", + "integrity": "sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==", "license": "MIT", "dependencies": { "@emotion/hash": "^0.9.2", "@emotion/memoize": "^0.9.0", "@emotion/unitless": "^0.10.0", - "@emotion/utils": "^1.4.0", + "@emotion/utils": "^1.4.2", "csstype": "^3.0.2" } }, @@ -2318,17 +2423,17 @@ "license": "MIT" }, "node_modules/@emotion/styled": { - "version": "11.13.0", - "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.13.0.tgz", - "integrity": "sha512-tkzkY7nQhW/zC4hztlwucpT8QEZ6eUzpXDRhww/Eej4tFfO0FxQYWRyg/c5CCXa4d/f174kqeXYjuQRnhzf6dA==", + "version": "11.14.1", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.14.1.tgz", + "integrity": "sha512-qEEJt42DuToa3gurlH4Qqc1kVpNq8wO8cJtDzU46TjlzWjDlsVyevtYCRijVq3SrHsROS+gVQ8Fnea108GnKzw==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.12.0", + "@emotion/babel-plugin": "^11.13.5", "@emotion/is-prop-valid": "^1.3.0", - "@emotion/serialize": "^1.3.0", - "@emotion/use-insertion-effect-with-fallbacks": "^1.1.0", - "@emotion/utils": "^1.4.0" + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2" }, "peerDependencies": { "@emotion/react": "^11.0.0-rc.0", @@ -2347,18 +2452,18 @@ "license": "MIT" }, "node_modules/@emotion/use-insertion-effect-with-fallbacks": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.1.0.tgz", - "integrity": "sha512-+wBOcIV5snwGgI2ya3u99D7/FJquOIniQT1IKyDsBmEgwvpxMNeS65Oib7OnE2d2aY+3BU4OiH+0Wchf8yk3Hw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz", + "integrity": "sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==", "license": "MIT", "peerDependencies": { "react": ">=16.8.0" } }, "node_modules/@emotion/utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.0.tgz", - "integrity": "sha512-spEnrA1b6hDR/C68lC2M7m6ALPUHZC0lIY7jAS/B/9DuuO1ZP04eov8SMv/6fwRd8pzmsn2AuJEznRREWlQrlQ==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.2.tgz", + "integrity": "sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==", "license": "MIT" }, "node_modules/@emotion/weak-memoize": { @@ -2655,31 +2760,31 @@ } }, "node_modules/@floating-ui/core": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.7.tgz", - "integrity": "sha512-yDzVT/Lm101nQ5TCVeK65LtdN7Tj4Qpr9RTXJ2vPFLqtLxwOrpoxAHAJI8J3yYWUc40J0BDBheaitK5SJmno2g==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.8.0.tgz", + "integrity": "sha512-0CIZ5itps/8x7BG8dEIhs53BvCUH2PCoogtakwRTut+Arm58sJooJ0AuZhLw2HJYIR5cMLNPBSS728sPho2khQ==", "license": "MIT", "dependencies": { - "@floating-ui/utils": "^0.2.7" + "@floating-ui/utils": "^0.2.12" } }, "node_modules/@floating-ui/dom": { - "version": "1.6.10", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.10.tgz", - "integrity": "sha512-fskgCFv8J8OamCmyun8MfjB1Olfn+uZKjOKZ0vhYF3gRmEUXcGOjxWL8bBr7i4kIuPZ2KD2S3EUIOxnjC8kl2A==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.8.0.tgz", + "integrity": "sha512-yXSrzeHZBTZadLOlfyhCkJHNeLJnHRnRInwdZ40L7ZiaAtrBwoYlsDrX3v5zB1Utk7CLfzcOVnVVWoXEky7Ceg==", "license": "MIT", "dependencies": { - "@floating-ui/core": "^1.6.0", - "@floating-ui/utils": "^0.2.7" + "@floating-ui/core": "^1.8.0", + "@floating-ui/utils": "^0.2.12" } }, "node_modules/@floating-ui/react-dom": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.1.tgz", - "integrity": "sha512-4h84MJt3CHrtG18mGsXuLCHMrug49d7DFkU0RMIyshRveBeyV2hmV/pDaF2Uxtu8kgq5r46llp5E5FQiR0K2Yg==", + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.9.tgz", + "integrity": "sha512-JDjEFGCpImxDCA7JJKviA0M9+RtmJdj0m/NVU5IMgBK+AmZouAQQ7/+2GLH0GXXY0YMw9oXPB8hKdbPYg5QLYg==", "license": "MIT", "dependencies": { - "@floating-ui/dom": "^1.0.0" + "@floating-ui/dom": "^1.8.0" }, "peerDependencies": { "react": ">=16.8.0", @@ -2687,9 +2792,9 @@ } }, "node_modules/@floating-ui/utils": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.7.tgz", - "integrity": "sha512-X8R8Oj771YRl/w+c1HqAC1szL8zWQRwFvgDwT129k9ACdBoud/+/rX9V0qiMl6LWUdP9voC2nDVZYPMQQsb6eA==", + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.12.tgz", + "integrity": "sha512-HpCo8tmWzLVad5s2d19EhAz5zqrrQ6s69qd6moPMQvkOuSwDT1YgRfWSVuc4ennqrgv3OHppiOGMQ7oC13yIww==", "license": "MIT" }, "node_modules/@fluent/syntax": { @@ -3327,7 +3432,7 @@ "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "@nodelib/fs.stat": "2.0.5", @@ -3341,7 +3446,7 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">= 8" @@ -3351,7 +3456,7 @@ "version": "1.2.8", "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "@nodelib/fs.scandir": "2.1.5", @@ -3830,9 +3935,9 @@ "license": "MIT" }, "node_modules/@preact/signals": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@preact/signals/-/signals-1.3.0.tgz", - "integrity": "sha512-EOMeg42SlLS72dhoq6Vjq08havnLseWmPQ8A0YsgIAqMgWgx7V1a39+Pxo6i7SY5NwJtH4849JogFq3M67AzWg==", + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/@preact/signals/-/signals-1.3.4.tgz", + "integrity": "sha512-TPMkStdT0QpSc8FpB63aOwXoSiZyIrPsP9Uj347KopdS6olZdAYeeird/5FZv/M1Yc1ge5qstub2o8VDbvkT4g==", "license": "MIT", "dependencies": { "@preact/signals-core": "^1.7.0" @@ -3846,9 +3951,9 @@ } }, "node_modules/@preact/signals-core": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@preact/signals-core/-/signals-core-1.8.0.tgz", - "integrity": "sha512-OBvUsRZqNmjzCZXWLxkZfhcgT+Fk8DDcT/8vD6a1xhDemodyy87UJRJfASMuSD8FaAIeGgGm85ydXhm7lr4fyA==", + "version": "1.14.4", + "resolved": "https://registry.npmjs.org/@preact/signals-core/-/signals-core-1.14.4.tgz", + "integrity": "sha512-HNB6HYeYKhQbJ1aKl+YRjrS4+QWHLKX6qKoUsfS/m0vqzsVaEBiZiaKbG/e+NKk2ch5ALQr/ihWaMHxiCuuWHA==", "license": "MIT", "funding": { "type": "opencollective", @@ -3910,25 +4015,19 @@ } }, "node_modules/@radix-ui/primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.0.1.tgz", - "integrity": "sha512-yQ8oGX2GVsEYMWGxcovu1uGWPCxV5BFfeeYxqPmuAzUyLT9qmaMXSAhXpb0WrspIeqYzdJpkh2vHModJPgRIaw==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10" - } + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.7.tgz", + "integrity": "sha512-rqWnm76nYT8HoNNqEjpgJ7Pw/DrBj5iBTrmEPo6HTX5+VJyBNOqTdv4g89G63HuR5g0AaENoAcH7Is5fF2kZ8Q==", + "license": "MIT" }, "node_modules/@radix-ui/react-compose-refs": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.0.1.tgz", - "integrity": "sha512-fDSBgd44FKHa1FRMU59qBMPFcl2PZE+2nmqunj+BWFyYYjnhIDWL2ItDs3rrbJDQOtzt5nIebLCQc4QRfz6LJw==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.5.tgz", + "integrity": "sha512-+48PbAAbq3didjJxa+OaWY2ZwgAKsNiRGyeHKszblZMQ+kcpd9pAaT11cMkGEie0vsOi3QdeTE6d5Fe3Gn61kA==", "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10" - }, "peerDependencies": { "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -3937,16 +4036,13 @@ } }, "node_modules/@radix-ui/react-context": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.0.1.tgz", - "integrity": "sha512-ebbrdFoYTcuZ0v4wG5tedGnp9tzcV8awzsxYph7gXUyvnNLuTIcCk1q17JEbnVhXAKG9oX3KtchwiMIAYp9NLg==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.2.2.tgz", + "integrity": "sha512-RHCUGwKHDr0hDGg4X7ma4JG4/+12qxw8rkh5QKdDldlCvtja6nUx1Ef/8HVrJze81lEsgLQlqjzjGNHantgnQA==", "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10" - }, "peerDependencies": { "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -3955,32 +4051,32 @@ } }, "node_modules/@radix-ui/react-dialog": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.0.5.tgz", - "integrity": "sha512-GjWJX/AUpB703eEBanuBnIWdIXg6NvJFCXcNlSZk4xdszCdhrJgBoUd1cGk67vFO+WdA2pfI/plOpqz/5GUP6Q==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/primitive": "1.0.1", - "@radix-ui/react-compose-refs": "1.0.1", - "@radix-ui/react-context": "1.0.1", - "@radix-ui/react-dismissable-layer": "1.0.5", - "@radix-ui/react-focus-guards": "1.0.1", - "@radix-ui/react-focus-scope": "1.0.4", - "@radix-ui/react-id": "1.0.1", - "@radix-ui/react-portal": "1.0.4", - "@radix-ui/react-presence": "1.0.1", - "@radix-ui/react-primitive": "1.0.3", - "@radix-ui/react-slot": "1.0.2", - "@radix-ui/react-use-controllable-state": "1.0.1", - "aria-hidden": "^1.1.1", - "react-remove-scroll": "2.5.5" + "version": "1.1.23", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.1.23.tgz", + "integrity": "sha512-Ksw4WeROkO4rC9k/onilX/Ao2Cr1ku1unMNH+XSCcP4jSXYu7HDsg9n4ojMjVb22XpYjAQ9qfrFlVbru1vXDUA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-context": "1.2.2", + "@radix-ui/react-dismissable-layer": "1.1.19", + "@radix-ui/react-focus-guards": "1.1.6", + "@radix-ui/react-focus-scope": "1.1.16", + "@radix-ui/react-id": "1.1.4", + "@radix-ui/react-portal": "1.1.17", + "@radix-ui/react-presence": "1.1.10", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-slot": "1.3.3", + "@radix-ui/react-use-controllable-state": "1.2.6", + "@radix-ui/react-use-layout-effect": "1.1.4", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.7.2" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -3992,23 +4088,22 @@ } }, "node_modules/@radix-ui/react-dismissable-layer": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.0.5.tgz", - "integrity": "sha512-aJeDjQhywg9LBu2t/At58hCvr7pEm0o2Ke1x33B+MhjNmmZ17sy4KImo0KPLgsnc/zN7GPdce8Cnn0SWvwZO7g==", + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.19.tgz", + "integrity": "sha512-8g4pfOL9HoKKLWGiypT+dphVqjFfmcXO5GBnhsG6zI+lxAx/8feQpr+1LSN8Re3hiZ+XkLNS4O9ztK11/LzQ6w==", "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/primitive": "1.0.1", - "@radix-ui/react-compose-refs": "1.0.1", - "@radix-ui/react-primitive": "1.0.3", - "@radix-ui/react-use-callback-ref": "1.0.1", - "@radix-ui/react-use-escape-keydown": "1.0.3" + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-callback-ref": "1.1.4", + "@radix-ui/react-use-effect-event": "0.0.5" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -4020,16 +4115,13 @@ } }, "node_modules/@radix-ui/react-focus-guards": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.0.1.tgz", - "integrity": "sha512-Rect2dWbQ8waGzhMavsIbmSVCgYxkXLxxR3ZvCX79JOglzdEy4JXMb98lq4hPxUbLr77nP0UOGf4rcMU+s1pUA==", + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.6.tgz", + "integrity": "sha512-RNOJjfZMTyBM6xYmV3IVGXkPjIhcBAuv48POevAXwrGJhkWZ9p1rFoIS1JFooPuT193AZmRsCPhpoVJxx6OPoQ==", "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10" - }, "peerDependencies": { "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -4038,21 +4130,20 @@ } }, "node_modules/@radix-ui/react-focus-scope": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.0.4.tgz", - "integrity": "sha512-sL04Mgvf+FmyvZeYfNu1EPAaaxD+aw7cYeIB9L9Fvq8+urhltTRaEo5ysKOpHuKPclsZcSUMKlN05x4u+CINpA==", + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.16.tgz", + "integrity": "sha512-wmRZ2WWLvmt6KHy2rNPOdPUjwq5xOHY02+m+udwJTn0aNIox/rkskAvJTyTLGhPK6KgrUjlJUJpgmx/+wFiFIQ==", "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-compose-refs": "1.0.1", - "@radix-ui/react-primitive": "1.0.3", - "@radix-ui/react-use-callback-ref": "1.0.1" + "@radix-ui/react-compose-refs": "1.1.5", + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-callback-ref": "1.1.4" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -4064,17 +4155,16 @@ } }, "node_modules/@radix-ui/react-id": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.0.1.tgz", - "integrity": "sha512-tI7sT/kqYp8p96yGWY1OAnLHrqDgzHefRBKQ2YAkBS5ja7QLcZ9Z/uY7bEjPUatf8RomoXM8/1sMj1IJaE5UzQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.4.tgz", + "integrity": "sha512-TMQp2llA+RYn7JcjnrMnz7wN4pcVttPZnRZo52PLQsoLVKzNlVwUeHmfePgTgRluXFvlD3GD5g5MOVVTJCO0qA==", "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-use-layout-effect": "1.0.1" + "@radix-ui/react-use-layout-effect": "1.1.4" }, "peerDependencies": { "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -4083,19 +4173,19 @@ } }, "node_modules/@radix-ui/react-portal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.0.4.tgz", - "integrity": "sha512-Qki+C/EuGUVCQTOTD5vzJzJuMUlewbzuKyUy+/iHM2uwGiru9gZeBJtHAPKAEkB5KWGi9mP/CHKcY0wt1aW45Q==", + "version": "1.1.17", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.17.tgz", + "integrity": "sha512-vKQLcWypUnwZVvfV7UkGahH2g6ySe8M8R+zYBwPrv5byZ9QAW6cQVvNKo7GgmD+p8aYb6D9JBuvy8/WhOno2wQ==", "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-primitive": "1.0.3" + "@radix-ui/react-primitive": "2.1.10", + "@radix-ui/react-use-layout-effect": "1.1.4" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -4107,20 +4197,18 @@ } }, "node_modules/@radix-ui/react-presence": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.0.1.tgz", - "integrity": "sha512-UXLW4UAbIY5ZjcvzjfRFo5gxva8QirC9hF7wRE4U5gz+TP0DbRk+//qyuAQ1McDxBt1xNMBTaciFGvEmJvAZCg==", + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.10.tgz", + "integrity": "sha512-3wyzCQ6+ubRA+D4uv9m95JYLXxmOHp05qjrkjeA7uKHHtjpPggQzc6DAb0URl7j67oR0K2foO4ip27TiX037Bw==", "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-compose-refs": "1.0.1", - "@radix-ui/react-use-layout-effect": "1.0.1" + "@radix-ui/react-use-layout-effect": "1.1.4" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -4132,19 +4220,18 @@ } }, "node_modules/@radix-ui/react-primitive": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-1.0.3.tgz", - "integrity": "sha512-yi58uVyoAcK/Nq1inRY56ZSjKypBNKTa/1mcL8qdl6oJeEaDbOldlzrGn7P6Q3Id5d+SYNGc5AJgc4vGhjs5+g==", + "version": "2.1.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.10.tgz", + "integrity": "sha512-MucOnzh6hR5mid6VpkbglRAMYMjKLqRnGBbjXkzjK52fuQDd1qbkx78a5P40mkcnVXJdEVxm26E9OPAiUq7nBg==", "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-slot": "1.0.2" + "@radix-ui/react-slot": "1.3.3" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", - "react": "^16.8 || ^17.0 || ^18.0", - "react-dom": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -4156,17 +4243,16 @@ } }, "node_modules/@radix-ui/react-slot": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.0.2.tgz", - "integrity": "sha512-YeTpuq4deV+6DusvVUW4ivBgnkHwECUu0BiN43L5UCDFgdhsRUWAghhTF5MbvNTPzmiFOx90asDSUjWuCNapwg==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.3.3.tgz", + "integrity": "sha512-qx7oqnYbxnK9kYI9m317qmFmEgo6ywqWvbTogdj7cL9p3/yx4M48p7Rnw5z3H890cL/ow/EeWJsuTykeZVXP5Q==", "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-compose-refs": "1.0.1" + "@radix-ui/react-compose-refs": "1.1.5" }, "peerDependencies": { "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -4175,16 +4261,13 @@ } }, "node_modules/@radix-ui/react-use-callback-ref": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.0.1.tgz", - "integrity": "sha512-D94LjX4Sp0xJFVaoQOd3OO9k7tpBYNOXdVhkltUbGv2Qb9OXdrg/CpsjlZv7ia14Sylv398LswWBVVu5nqKzAQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.4.tgz", + "integrity": "sha512-R6OUY2e2fA6Yn6s+VSx5KBV6Nx8LQEhu+cz7LCej18rQ1HLyg9PSC9jP/ZNx0o6FAIK9c0F1kHylzSxKsdlkrQ==", "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10" - }, "peerDependencies": { "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -4193,17 +4276,18 @@ } }, "node_modules/@radix-ui/react-use-controllable-state": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.0.1.tgz", - "integrity": "sha512-Svl5GY5FQeN758fWKrjM6Qb7asvXeiZltlT4U2gVfl8Gx5UAv2sMR0LWo8yhsIZh2oQ0eFdZ59aoOOMV7b47VA==", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.2.6.tgz", + "integrity": "sha512-uEQJGT97ZA/TgP/Hydw47lHu+/vQj6z/0jA+WeTbK1o9Rx45GImjpD0tc3W5ad3D6XTSR6e1yEO0FvGq6WQfVQ==", "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-use-callback-ref": "1.0.1" + "@radix-ui/primitive": "1.1.7", + "@radix-ui/react-use-effect-event": "0.0.5", + "@radix-ui/react-use-layout-effect": "1.1.4" }, "peerDependencies": { "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -4211,18 +4295,17 @@ } } }, - "node_modules/@radix-ui/react-use-escape-keydown": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.0.3.tgz", - "integrity": "sha512-vyL82j40hcFicA+M4Ex7hVkB9vHgSse1ZWomAqV2Je3RleKGO5iM8KMOEtfoSB0PnIelMd2lATjTGMYqN5ylTg==", + "node_modules/@radix-ui/react-use-effect-event": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-effect-event/-/react-use-effect-event-0.0.5.tgz", + "integrity": "sha512-7cshFL8HGS/7HEiHH+9kL9HBwp2sa9yX18Knwek6KYWmXwM7pegMgta2AXMQKI+rq3JnfSj9x8wYqFMTdG1Jgg==", "license": "MIT", "dependencies": { - "@babel/runtime": "^7.13.10", - "@radix-ui/react-use-callback-ref": "1.0.1" + "@radix-ui/react-use-layout-effect": "1.1.4" }, "peerDependencies": { "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -4231,16 +4314,13 @@ } }, "node_modules/@radix-ui/react-use-layout-effect": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.0.1.tgz", - "integrity": "sha512-v/5RegiJWYdoCvMnITBkNNx6bCj20fiaJnWtRkU18yITptraXjffz5Qbn05uOiQnOvi+dbkznkoaMltz1GnszQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.4.tgz", + "integrity": "sha512-K20DkRkUwDnxEYMBPcg3Y6voLkEy5p5QQmszZgLngKKiC7dzBR/aEuK3w1qlx2JWDUNH6FluahYdgR3BP+QbYw==", "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.13.10" - }, "peerDependencies": { "@types/react": "*", - "react": "^16.8 || ^17.0 || ^18.0" + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -4249,27 +4329,27 @@ } }, "node_modules/@react-spring/animated": { - "version": "9.7.4", - "resolved": "https://registry.npmjs.org/@react-spring/animated/-/animated-9.7.4.tgz", - "integrity": "sha512-7As+8Pty2QlemJ9O5ecsuPKjmO0NKvmVkRR1n6mEotFgWar8FKuQt2xgxz3RTgxcccghpx1YdS1FCdElQNexmQ==", + "version": "9.7.5", + "resolved": "https://registry.npmjs.org/@react-spring/animated/-/animated-9.7.5.tgz", + "integrity": "sha512-Tqrwz7pIlsSDITzxoLS3n/v/YCUHQdOIKtOJf4yL6kYVSDTSmVK1LI1Q3M/uu2Sx4X3pIWF3xLUhlsA6SPNTNg==", "license": "MIT", "dependencies": { - "@react-spring/shared": "~9.7.4", - "@react-spring/types": "~9.7.4" + "@react-spring/shared": "~9.7.5", + "@react-spring/types": "~9.7.5" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0" } }, "node_modules/@react-spring/core": { - "version": "9.7.4", - "resolved": "https://registry.npmjs.org/@react-spring/core/-/core-9.7.4.tgz", - "integrity": "sha512-GzjA44niEJBFUe9jN3zubRDDDP2E4tBlhNlSIkTChiNf9p4ZQlgXBg50qbXfSXHQPHak/ExYxwhipKVsQ/sUTw==", + "version": "9.7.5", + "resolved": "https://registry.npmjs.org/@react-spring/core/-/core-9.7.5.tgz", + "integrity": "sha512-rmEqcxRcu7dWh7MnCcMXLvrf6/SDlSokLaLTxiPlAYi11nN3B5oiCUAblO72o+9z/87j2uzxa2Inm8UbLjXA+w==", "license": "MIT", "dependencies": { - "@react-spring/animated": "~9.7.4", - "@react-spring/shared": "~9.7.4", - "@react-spring/types": "~9.7.4" + "@react-spring/animated": "~9.7.5", + "@react-spring/shared": "~9.7.5", + "@react-spring/types": "~9.7.5" }, "funding": { "type": "opencollective", @@ -4280,40 +4360,40 @@ } }, "node_modules/@react-spring/rafz": { - "version": "9.7.4", - "resolved": "https://registry.npmjs.org/@react-spring/rafz/-/rafz-9.7.4.tgz", - "integrity": "sha512-mqDI6rW0Ca8IdryOMiXRhMtVGiEGLIO89vIOyFQXRIwwIMX30HLya24g9z4olDvFyeDW3+kibiKwtZnA4xhldA==", + "version": "9.7.5", + "resolved": "https://registry.npmjs.org/@react-spring/rafz/-/rafz-9.7.5.tgz", + "integrity": "sha512-5ZenDQMC48wjUzPAm1EtwQ5Ot3bLIAwwqP2w2owG5KoNdNHpEJV263nGhCeKKmuA3vG2zLLOdu3or6kuDjA6Aw==", "license": "MIT" }, "node_modules/@react-spring/shared": { - "version": "9.7.4", - "resolved": "https://registry.npmjs.org/@react-spring/shared/-/shared-9.7.4.tgz", - "integrity": "sha512-bEPI7cQp94dOtCFSEYpxvLxj0+xQfB5r9Ru1h8OMycsIq7zFZon1G0sHrBLaLQIWeMCllc4tVDYRTLIRv70C8w==", + "version": "9.7.5", + "resolved": "https://registry.npmjs.org/@react-spring/shared/-/shared-9.7.5.tgz", + "integrity": "sha512-wdtoJrhUeeyD/PP/zo+np2s1Z820Ohr/BbuVYv+3dVLW7WctoiN7std8rISoYoHpUXtbkpesSKuPIw/6U1w1Pw==", "license": "MIT", "dependencies": { - "@react-spring/rafz": "~9.7.4", - "@react-spring/types": "~9.7.4" + "@react-spring/rafz": "~9.7.5", + "@react-spring/types": "~9.7.5" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0" } }, "node_modules/@react-spring/types": { - "version": "9.7.4", - "resolved": "https://registry.npmjs.org/@react-spring/types/-/types-9.7.4.tgz", - "integrity": "sha512-iQVztO09ZVfsletMiY+DpT/JRiBntdsdJ4uqk3UJFhrhS8mIC9ZOZbmfGSRs/kdbNPQkVyzucceDicQ/3Mlj9g==", + "version": "9.7.5", + "resolved": "https://registry.npmjs.org/@react-spring/types/-/types-9.7.5.tgz", + "integrity": "sha512-HVj7LrZ4ReHWBimBvu2SKND3cDVUPWKLqRTmWe/fNY6o1owGOX0cAHbdPDTMelgBlVbrTKrre6lFkhqGZErK/g==", "license": "MIT" }, "node_modules/@react-spring/web": { - "version": "9.7.4", - "resolved": "https://registry.npmjs.org/@react-spring/web/-/web-9.7.4.tgz", - "integrity": "sha512-UMvCZp7I5HCVIleSa4BwbNxynqvj+mJjG2m20VO2yPoi2pnCYANy58flvz9v/YcXTAvsmL655FV3pm5fbr6akA==", + "version": "9.7.5", + "resolved": "https://registry.npmjs.org/@react-spring/web/-/web-9.7.5.tgz", + "integrity": "sha512-lmvqGwpe+CSttsWNZVr+Dg62adtKhauGwLyGE/RRyZ8AAMLgb9x3NDMA5RMElXo+IMyTkPp7nxTB8ZQlmhb6JQ==", "license": "MIT", "dependencies": { - "@react-spring/animated": "~9.7.4", - "@react-spring/core": "~9.7.4", - "@react-spring/shared": "~9.7.4", - "@react-spring/types": "~9.7.4" + "@react-spring/animated": "~9.7.5", + "@react-spring/core": "~9.7.5", + "@react-spring/shared": "~9.7.5", + "@react-spring/types": "~9.7.5" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0", @@ -4790,6 +4870,15 @@ "url": "https://github.com/sponsors/gregberge" } }, + "node_modules/@tabby_ai/hijri-converter": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@tabby_ai/hijri-converter/-/hijri-converter-1.0.5.tgz", + "integrity": "sha512-r5bClKrcIusDoo049dSL8CawnHR6mRdDwhlQuIgZRNty68q0x8k3Lf1BtPAMxRf/GgnHBnIO4ujd3+GQdLWzxQ==", + "license": "MIT", + "engines": { + "node": ">=16.0.0" + } + }, "node_modules/@tannin/compile": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@tannin/compile/-/compile-1.1.0.tgz", @@ -4821,6 +4910,12 @@ "integrity": "sha512-oocsqY7g0cR+Gur5jRQLSrX2OtpMLMse1I10JQBm8CdGMrDkh1Mg2gjsiquMHRtBs4Qwu5wgEp5GgIYHk4SNPw==", "license": "MIT" }, + "node_modules/@tannin/sprintf": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@tannin/sprintf/-/sprintf-1.3.3.tgz", + "integrity": "sha512-RwARl+hFwhzy0tg9atWcchLFvoQiOh4rrP7uG2N5E4W80BPCUX0ElcUR9St43fxB9EfjsW2df9Qp+UsTbvQDjA==", + "license": "MIT" + }, "node_modules/@tootallnate/once": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", @@ -4956,6 +5051,21 @@ "@types/node": "*" } }, + "node_modules/@types/dom-mediacapture-transform": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/@types/dom-mediacapture-transform/-/dom-mediacapture-transform-0.1.12.tgz", + "integrity": "sha512-d7/QsLRwF864A5mgIM/YrfiglHoYn7zgCcAoJgW404r+2DwnNr7EBbLnCWpmOMgH8y0te73L1AV6H1bmauaWFw==", + "license": "MIT", + "dependencies": { + "@types/dom-webcodecs": "*" + } + }, + "node_modules/@types/dom-webcodecs": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/@types/dom-webcodecs/-/dom-webcodecs-0.1.13.tgz", + "integrity": "sha512-O5hkiFIcjjszPIYyUSyvScyvrBoV3NOEEZx/pMlsu44TKzWNkLVBBxnxJz42in5n3QIolYOcBYFCPZZ0h8SkwQ==", + "license": "MIT" + }, "node_modules/@types/estree": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.9.tgz", @@ -5038,6 +5148,7 @@ "version": "0.1.3", "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-0.1.3.tgz", "integrity": "sha512-XDbrTSBlQV9nxE1GiDL3FaOPy4G/KaJkhDutBX48Kg8CYZMBARyyDFGCWfWJn4pobmInmwud1xxH7VJMAr0CKQ==", + "dev": true, "license": "MIT" }, "node_modules/@types/har-format": { @@ -5154,6 +5265,7 @@ "version": "22.5.4", "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", + "dev": true, "license": "MIT", "dependencies": { "undici-types": "~6.19.2" @@ -5203,13 +5315,13 @@ "license": "MIT" }, "node_modules/@types/react": { - "version": "18.3.12", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.12.tgz", - "integrity": "sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==", + "version": "18.3.31", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.31.tgz", + "integrity": "sha512-vfEqpXTvwT91yhmwdfouStN2hSKwTvyRs8qpLfADyrq/kxDw0hZM7Wk9Ug1FELj8hIby+S/+kQCSRFF32nv2Qw==", "license": "MIT", "dependencies": { "@types/prop-types": "*", - "csstype": "^3.0.2" + "csstype": "^3.2.2" } }, "node_modules/@types/react-dom": { @@ -5278,15 +5390,6 @@ "@types/send": "*" } }, - "node_modules/@types/simple-peer": { - "version": "9.11.8", - "resolved": "https://registry.npmjs.org/@types/simple-peer/-/simple-peer-9.11.8.tgz", - "integrity": "sha512-rvqefdp2rvIA6wiomMgKWd2UZNPe6LM2EV5AuY3CPQJF+8TbdrL5TjYdMf0VAjGczzlkH4l1NjDkihwbj3Xodw==", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/sockjs": { "version": "0.3.36", "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", @@ -6189,14 +6292,13 @@ } }, "node_modules/@wordpress/a11y": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/a11y/-/a11y-4.7.0.tgz", - "integrity": "sha512-qeh8TcJNNr9M0XL3OUDawBRrZypNLsnLjcXEBd6jp8Y4kOWxowmDDT6re1uToPdYTLLW2PZmZeBLYR9OS7pgpw==", + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/a11y/-/a11y-4.51.0.tgz", + "integrity": "sha512-ophPwL3J31JOA46koDonBz7EL1dMfpKLEj8crD2uCK5IYzvqlYJrLA0o+RfPUUHrbXa51qGBSZ/+Bprb6nao+g==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/dom-ready": "^4.7.0", - "@wordpress/i18n": "^5.7.0" + "@wordpress/dom-ready": "^4.51.0", + "@wordpress/i18n": "^6.24.0" }, "engines": { "node": ">=18.12.0", @@ -6204,14 +6306,14 @@ } }, "node_modules/@wordpress/api-fetch": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/api-fetch/-/api-fetch-7.7.0.tgz", - "integrity": "sha512-Si/Ep5yXmxTpUT1Fxgd8PjhK6amohcSCUR50QGK9FIeCGoxBZiH7gi+VSvFAZsC2z8XvvP/tJZthB2j/9UHfPA==", + "version": "7.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/api-fetch/-/api-fetch-7.51.0.tgz", + "integrity": "sha512-kSgBvrGr8eMTcQTA1fIsChg56FKPTdcmkQrpEQjL9uzbmGwPKrru4BdkBFqLSql/PH5fEOjNcY3OSA61+WrJ8g==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/i18n": "^5.7.0", - "@wordpress/url": "^4.7.0" + "@wordpress/i18n": "^6.24.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/url": "^4.51.0" }, "engines": { "node": ">=18.12.0", @@ -6219,30 +6321,15 @@ } }, "node_modules/@wordpress/autop": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/autop/-/autop-4.11.0.tgz", - "integrity": "sha512-Nb5SPCVayQoR0Xcgp16aTCvPEpbiPtJoEi4F8RoHFjN0rIShzA8i7ArzGXJy3PMkAozxGK0nF/I77yelF2SDyw==", + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/autop/-/autop-4.51.0.tgz", + "integrity": "sha512-AjGhrqyBsAXOgLn1pN1+B11s6/Kkt7HnP5pk/FyFxQUxRZc0uRxTDt5dPoUdS+oyBAeW3tfKMos4/4s9+X5B+A==", "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "7.25.7" - }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/autop/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@wordpress/babel-preset-default": { "version": "8.7.0", "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-8.7.0.tgz", @@ -6279,83 +6366,72 @@ } }, "node_modules/@wordpress/blob": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/blob/-/blob-4.11.0.tgz", - "integrity": "sha512-WoJL2wmSK8bzx7vz5yFapdISG7JCQOWWn7lRR+x7xKlkgBr9mDx9dmV8Ih0jE/O8JIhe+YDxEjlS7OsIX2s02w==", + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/blob/-/blob-4.51.0.tgz", + "integrity": "sha512-x+Iti+wnsGTwCLwr8/Tbg/DyyWVnJ5OAQnUCCNLKM8nmEFApO4GY5feCSD9zkVCQZ3p7k+FMeJgUVuGa/d0beg==", "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "7.25.7" - }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/blob/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@wordpress/block-editor": { - "version": "14.2.0", - "resolved": "https://registry.npmjs.org/@wordpress/block-editor/-/block-editor-14.2.0.tgz", - "integrity": "sha512-k2rqdxGVsc2//j7EFPAD7bsvDRzKhC+dfUbN8gdzCY0Gaw61bjQHhXC6GwGjQ2w+jcIAUwgH/eyztqNs6UUwbA==", + "version": "15.23.0", + "resolved": "https://registry.npmjs.org/@wordpress/block-editor/-/block-editor-15.23.0.tgz", + "integrity": "sha512-L/oGA/DHwo4s8MzzqaQ+UegehiujXVo184ttmyhgOzj69HT1P403ju6Of8o4tfRh+2xzH6GIjIOt0HPse9ZKpg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@emotion/react": "^11.7.1", - "@emotion/styled": "^11.6.0", "@react-spring/web": "^9.4.5", - "@wordpress/a11y": "^4.7.0", - "@wordpress/api-fetch": "^7.7.0", - "@wordpress/blob": "^4.7.0", - "@wordpress/block-serialization-default-parser": "^5.7.0", - "@wordpress/blocks": "^13.7.0", - "@wordpress/commands": "^1.7.0", - "@wordpress/components": "^28.7.0", - "@wordpress/compose": "^7.7.0", - "@wordpress/data": "^10.7.0", - "@wordpress/date": "^5.7.0", - "@wordpress/deprecated": "^4.7.0", - "@wordpress/dom": "^4.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/escape-html": "^3.7.0", - "@wordpress/hooks": "^4.7.0", - "@wordpress/html-entities": "^4.7.0", - "@wordpress/i18n": "^5.7.0", - "@wordpress/icons": "^10.7.0", - "@wordpress/is-shallow-equal": "^5.7.0", - "@wordpress/keyboard-shortcuts": "^5.7.0", - "@wordpress/keycodes": "^4.7.0", - "@wordpress/notices": "^5.7.0", - "@wordpress/preferences": "^4.7.0", - "@wordpress/private-apis": "^1.7.0", - "@wordpress/rich-text": "^7.7.0", - "@wordpress/style-engine": "^2.7.0", - "@wordpress/token-list": "^3.7.0", - "@wordpress/url": "^4.7.0", - "@wordpress/warning": "^3.7.0", - "@wordpress/wordcount": "^4.7.0", + "@wordpress/a11y": "^4.50.0", + "@wordpress/base-styles": "^10.2.0", + "@wordpress/blob": "^4.50.0", + "@wordpress/block-serialization-default-parser": "^5.50.0", + "@wordpress/blocks": "^15.23.0", + "@wordpress/commands": "^1.50.0", + "@wordpress/components": "^36.1.0", + "@wordpress/compose": "^8.3.0", + "@wordpress/data": "^10.50.0", + "@wordpress/dataviews": "^17.1.0", + "@wordpress/date": "^5.50.0", + "@wordpress/deprecated": "^4.50.0", + "@wordpress/dom": "^4.50.0", + "@wordpress/element": "^8.2.0", + "@wordpress/escape-html": "^3.50.0", + "@wordpress/global-styles-engine": "^1.17.0", + "@wordpress/hooks": "^4.50.0", + "@wordpress/html-entities": "^4.50.0", + "@wordpress/i18n": "^6.23.0", + "@wordpress/icons": "^15.1.0", + "@wordpress/image-cropper": "^1.14.0", + "@wordpress/interactivity": "^6.50.0", + "@wordpress/is-shallow-equal": "^5.50.0", + "@wordpress/keyboard-shortcuts": "^5.50.0", + "@wordpress/keycodes": "^4.50.0", + "@wordpress/notices": "^5.50.0", + "@wordpress/preferences": "^4.50.0", + "@wordpress/priority-queue": "^3.50.0", + "@wordpress/private-apis": "^1.50.0", + "@wordpress/rich-text": "^7.50.0", + "@wordpress/style-engine": "^2.50.0", + "@wordpress/token-list": "^3.50.0", + "@wordpress/ui": "^0.17.0", + "@wordpress/upload-media": "^0.35.0", + "@wordpress/url": "^4.50.0", + "@wordpress/warning": "^3.50.0", + "@wordpress/wordcount": "^4.50.0", "change-case": "^4.1.2", "clsx": "^2.1.1", - "colord": "^2.7.0", - "deepmerge": "^4.3.0", - "diff": "^4.0.2", + "colord": "^2.9.3", + "deepmerge": "^4.3.1", + "diff": "^8.0.3", "fast-deep-equal": "^3.1.3", "memize": "^2.1.0", "parsel-js": "^1.1.2", - "postcss": "^8.4.21", + "postcss": "^8.4.38", "postcss-prefix-selector": "^1.16.0", "postcss-urlrebase": "^1.4.0", "react-autosize-textarea": "^7.1.0", - "react-easy-crop": "^5.0.6", + "react-easy-crop": "^5.4.2", "remove-accents": "^0.5.0" }, "engines": { @@ -6363,23 +6439,23 @@ "npm": ">=8.19.2" }, "peerDependencies": { + "@types/react": "^18.3.27", "react": "^18.0.0", "react-dom": "^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/block-editor/node_modules/@ariakit/core": { - "version": "0.4.10", - "resolved": "https://registry.npmjs.org/@ariakit/core/-/core-0.4.10.tgz", - "integrity": "sha512-mX3EabQbfVh5uTjsTJ3+gjj7KGdTNhIN0qZHJd5Z2iPUnKl9NBy23Lgu6PEskpVsKAZ3proirjguD7U9fKMs/A==", - "license": "MIT" - }, "node_modules/@wordpress/block-editor/node_modules/@ariakit/react": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.11.tgz", - "integrity": "sha512-nLpPrmNcspqNhk4o+epsgeZfP1+Fkh4uIzNe5yrFkXolRkqHGKAxl4Hi82e0yxIBUbYbZIEwsZQQVceF1L6xrw==", + "version": "0.4.35", + "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", + "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", "license": "MIT", "dependencies": { - "@ariakit/react-core": "0.4.11" + "@ariakit/react-components": "0.3.4" }, "funding": { "type": "opencollective", @@ -6390,91 +6466,181 @@ "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, - "node_modules/@wordpress/block-editor/node_modules/@ariakit/react-core": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/@ariakit/react-core/-/react-core-0.4.11.tgz", - "integrity": "sha512-i6KedWhjZkNC7tMEKO0eNjjq2HRPiHyGaBS2x2VaWwzBepoYtjyvxRXyqLJ3gaiNdlwckN1TZsRDfD+viy13IQ==", - "license": "MIT", + "node_modules/@wordpress/block-editor/node_modules/@types/gradient-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", + "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", + "license": "MIT" + }, + "node_modules/@wordpress/block-editor/node_modules/@wordpress/base-styles": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-10.2.0.tgz", + "integrity": "sha512-iDPbyyeUnxLFq4ec+03x87jT8lRoBzK2rDoEg24l2KNAR9ZJ2kwI0z2E/wW0fOZC37A7qr377KJslPHKLtMgyQ==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/block-editor/node_modules/@wordpress/blocks": { + "version": "15.24.0", + "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-15.24.0.tgz", + "integrity": "sha512-C/OseZS0Znx7Wqd/RGJdVXnn4z9lLfJ/SNehzyJ1ViiBTktDNS5RWiYAYJ+kwJ5unBbTy1KDXC9PGzR0Ib4Y5g==", + "license": "GPL-2.0-or-later", "dependencies": { - "@ariakit/core": "0.4.10", - "@floating-ui/dom": "^1.0.0", - "use-sync-external-store": "^1.2.0" + "@wordpress/autop": "^4.51.0", + "@wordpress/blob": "^4.51.0", + "@wordpress/block-serialization-default-parser": "^5.51.0", + "@wordpress/data": "^10.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/shortcode": "^4.51.0", + "@wordpress/warning": "^3.51.0", + "change-case": "^4.1.2", + "colord": "^2.9.3", + "fast-deep-equal": "^3.1.3", + "hpq": "^1.3.0", + "is-plain-object": "^5.0.0", + "marked": "^18.0.3", + "memize": "^2.1.0", + "react-is": "^18.3.0", + "remove-accents": "^0.5.0", + "simple-html-tokenizer": "^0.5.7", + "uuid": "^14.0.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, "node_modules/@wordpress/block-editor/node_modules/@wordpress/components": { - "version": "28.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-28.7.0.tgz", - "integrity": "sha512-oxF+pAZHJ3L9p42wMDeclo6P0TOZW1+U1pKmKju33aDsAwINOU2ELpVFyIEHkA9txn8VU4lxpnNIsYY6RGlW8w==", + "version": "36.1.0", + "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-36.1.0.tgz", + "integrity": "sha512-EapV2VXhNIDhWA+yTukQz++IfpqY8gVDvQ9bU8g1RKJqK3dhaVJ9NG2Rqk3TPsFxrmEGNHJwdb+SRUdLFAr3Zg==", "license": "GPL-2.0-or-later", "dependencies": { - "@ariakit/react": "^0.4.10", - "@babel/runtime": "^7.16.0", - "@emotion/cache": "^11.7.1", - "@emotion/css": "^11.7.1", - "@emotion/react": "^11.7.1", - "@emotion/serialize": "^1.0.2", - "@emotion/styled": "^11.6.0", - "@emotion/utils": "^1.0.0", + "@ariakit/react": "^0.4.29", + "@date-fns/utc": "^2.1.1", + "@emotion/cache": "^11.14.0", + "@emotion/css": "^11.13.5", + "@emotion/react": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/styled": "^11.14.1", + "@emotion/utils": "^1.4.2", "@floating-ui/react-dom": "^2.0.8", - "@types/gradient-parser": "0.1.3", - "@types/highlight-words-core": "1.2.1", + "@types/gradient-parser": "^1.1.0", + "@types/highlight-words-core": "^1.2.1", "@use-gesture/react": "^10.3.1", - "@wordpress/a11y": "^4.7.0", - "@wordpress/compose": "^7.7.0", - "@wordpress/date": "^5.7.0", - "@wordpress/deprecated": "^4.7.0", - "@wordpress/dom": "^4.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/escape-html": "^3.7.0", - "@wordpress/hooks": "^4.7.0", - "@wordpress/html-entities": "^4.7.0", - "@wordpress/i18n": "^5.7.0", - "@wordpress/icons": "^10.7.0", - "@wordpress/is-shallow-equal": "^5.7.0", - "@wordpress/keycodes": "^4.7.0", - "@wordpress/primitives": "^4.7.0", - "@wordpress/private-apis": "^1.7.0", - "@wordpress/rich-text": "^7.7.0", - "@wordpress/warning": "^3.7.0", + "@wordpress/a11y": "^4.50.0", + "@wordpress/base-styles": "^10.2.0", + "@wordpress/compose": "^8.3.0", + "@wordpress/date": "^5.50.0", + "@wordpress/deprecated": "^4.50.0", + "@wordpress/dom": "^4.50.0", + "@wordpress/element": "^8.2.0", + "@wordpress/escape-html": "^3.50.0", + "@wordpress/hooks": "^4.50.0", + "@wordpress/html-entities": "^4.50.0", + "@wordpress/i18n": "^6.23.0", + "@wordpress/icons": "^15.1.0", + "@wordpress/is-shallow-equal": "^5.50.0", + "@wordpress/keycodes": "^4.50.0", + "@wordpress/primitives": "^4.50.0", + "@wordpress/private-apis": "^1.50.0", + "@wordpress/rich-text": "^7.50.0", + "@wordpress/style-runtime": "^0.6.0", + "@wordpress/ui": "^0.17.0", + "@wordpress/warning": "^3.50.0", "change-case": "^4.1.2", "clsx": "^2.1.1", - "colord": "^2.7.0", - "date-fns": "^3.6.0", - "deepmerge": "^4.3.0", + "colord": "^2.9.3", + "csstype": "^3.2.3", + "date-fns": "^4.1.0", + "deepmerge": "^4.3.1", "fast-deep-equal": "^3.1.3", - "framer-motion": "^11.1.9", - "gradient-parser": "^0.1.5", + "framer-motion": "^11.15.0", + "gradient-parser": "^1.1.1", "highlight-words-core": "^1.2.2", "is-plain-object": "^5.0.0", "memize": "^2.1.0", "path-to-regexp": "^6.2.1", "re-resizable": "^6.4.0", - "react-colorful": "^5.3.1", + "react-colorful": "^5.6.1", + "react-day-picker": "^9.7.0", "remove-accents": "^0.5.0", - "use-lilius": "^2.0.5", - "uuid": "^9.0.1" + "uuid": "^14.0.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { + "@types/react": "^18.3.27", "react": "^18.0.0", "react-dom": "^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/block-editor/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, "node_modules/@wordpress/block-editor/node_modules/@wordpress/date": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.7.0.tgz", - "integrity": "sha512-iMwGP/Sbz+CCgqxUUKg8W2sZiwvr9K1q7s0rHuy3YVJT46QDNpN0A6HGNmckI0z4C+CRDvOIa09OMgTz1igUAw==", + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", + "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/deprecated": "^4.7.0", + "@wordpress/deprecated": "^4.51.0", "moment": "^2.29.4", "moment-timezone": "^0.5.40" }, @@ -6483,29 +6649,57 @@ "npm": ">=8.19.2" } }, + "node_modules/@wordpress/block-editor/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, "node_modules/@wordpress/block-editor/node_modules/@wordpress/icons": { - "version": "10.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-10.7.0.tgz", - "integrity": "sha512-4cvi9ZIaz6IYRcOjVuALtDLPtzgt1zK+E9LskL0PAi3TJhoh746q28wv6ycP+KtJEiI+bsTf2Qu5dmCePGR/jA==", + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-15.2.0.tgz", + "integrity": "sha512-g/1a4eTNH/mCluvmryNcYAg1GxsjY6xGjfGJRq3z44SEcB8jAZyEQtqdcGQ+o2kHelKhmmqS8WAowxif44ZgNQ==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.7.0", - "@wordpress/primitives": "^4.7.0" + "@wordpress/element": "^8.3.0", + "@wordpress/primitives": "^4.51.0", + "change-case": "^4.1.2" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, "node_modules/@wordpress/block-editor/node_modules/@wordpress/primitives": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.7.0.tgz", - "integrity": "sha512-PcAAIMT8+WqKB2HAeQlLmrcQyzyhNw9IeToJoxz+VKcc/7uLfGHplsDvtHY/X4jH8QlwlVwHSiqW/McTcxoUvQ==", + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.7.0", + "@wordpress/element": "^8.3.0", "clsx": "^2.1.1" }, "engines": { @@ -6513,7 +6707,31 @@ "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^18.0.0" + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/block-editor/node_modules/date-fns": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.4.0.tgz", + "integrity": "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, + "node_modules/@wordpress/block-editor/node_modules/gradient-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-1.2.0.tgz", + "integrity": "sha512-6ABGa9CR7WR/0pAJicBy5SJkiikbFM6kf/JjykwX7x+t+s8ORWVnlbi6FkHeFFb36yWsjUpHqSYrygd7ofEUqA==", + "engines": { + "node": ">=0.10.0" } }, "node_modules/@wordpress/block-editor/node_modules/is-plain-object": { @@ -6532,58 +6750,58 @@ "license": "MIT" }, "node_modules/@wordpress/block-editor/node_modules/uuid": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.1.tgz", + "integrity": "sha512-6ZxzVpzDXDa3bJWaHilVayA+BH/1zmxCJoVgvmqJnid/gPoKHxUrS/aC/T6LGQtNHT+XHG9fXPJB4d+IrU30Ew==", "funding": [ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" ], "license": "MIT", "bin": { - "uuid": "dist/bin/uuid" + "uuid": "dist-node/bin/uuid" } }, "node_modules/@wordpress/block-library": { - "version": "9.12.0", - "resolved": "https://registry.npmjs.org/@wordpress/block-library/-/block-library-9.12.0.tgz", - "integrity": "sha512-F8DBXsFYwULKszHU4H7Xxn/4mCHhz++PFw2N+4A28NYXFodlOtcUS4ff8CBLhH/Gi2ZZDHQvd9b8oTl8/vxB/w==", + "version": "9.27.0", + "resolved": "https://registry.npmjs.org/@wordpress/block-library/-/block-library-9.27.0.tgz", + "integrity": "sha512-kw2KFZrimFcpGCvoPIZl8pb/8fs3Jtcizw6XXJ3BI54OjEfMwFilCr7qDyvlT/WGiQ80Q8uLhNFebAL1FRahHw==", "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "7.25.7", - "@wordpress/a11y": "*", - "@wordpress/api-fetch": "*", - "@wordpress/autop": "*", - "@wordpress/blob": "*", - "@wordpress/block-editor": "*", - "@wordpress/blocks": "*", - "@wordpress/components": "*", - "@wordpress/compose": "*", - "@wordpress/core-data": "*", - "@wordpress/data": "*", - "@wordpress/date": "*", - "@wordpress/deprecated": "*", - "@wordpress/dom": "*", - "@wordpress/element": "*", - "@wordpress/escape-html": "*", - "@wordpress/hooks": "*", - "@wordpress/html-entities": "*", - "@wordpress/i18n": "*", - "@wordpress/icons": "*", - "@wordpress/interactivity": "*", - "@wordpress/interactivity-router": "*", - "@wordpress/keyboard-shortcuts": "*", - "@wordpress/keycodes": "*", - "@wordpress/notices": "*", - "@wordpress/patterns": "*", - "@wordpress/primitives": "*", - "@wordpress/private-apis": "*", - "@wordpress/reusable-blocks": "*", - "@wordpress/rich-text": "*", - "@wordpress/server-side-render": "*", - "@wordpress/url": "*", - "@wordpress/viewport": "*", - "@wordpress/wordcount": "*", + "@wordpress/a11y": "^4.27.0", + "@wordpress/api-fetch": "^7.27.0", + "@wordpress/autop": "^4.27.0", + "@wordpress/blob": "^4.27.0", + "@wordpress/block-editor": "^15.0.0", + "@wordpress/blocks": "^15.0.0", + "@wordpress/components": "^30.0.0", + "@wordpress/compose": "^7.27.0", + "@wordpress/core-data": "^7.27.0", + "@wordpress/data": "^10.27.0", + "@wordpress/date": "^5.27.0", + "@wordpress/deprecated": "^4.27.0", + "@wordpress/dom": "^4.27.0", + "@wordpress/element": "^6.27.0", + "@wordpress/escape-html": "^3.27.0", + "@wordpress/hooks": "^4.27.0", + "@wordpress/html-entities": "^4.27.0", + "@wordpress/i18n": "^6.0.0", + "@wordpress/icons": "^10.27.0", + "@wordpress/interactivity": "^6.27.0", + "@wordpress/interactivity-router": "^2.27.0", + "@wordpress/keyboard-shortcuts": "^5.27.0", + "@wordpress/keycodes": "^4.27.0", + "@wordpress/notices": "^5.27.0", + "@wordpress/patterns": "^2.27.0", + "@wordpress/primitives": "^4.27.0", + "@wordpress/private-apis": "^1.27.0", + "@wordpress/reusable-blocks": "^5.27.0", + "@wordpress/rich-text": "^7.27.0", + "@wordpress/server-side-render": "^6.3.0", + "@wordpress/url": "^4.27.0", + "@wordpress/viewport": "^6.27.0", + "@wordpress/wordcount": "^4.27.0", "change-case": "^4.1.2", "clsx": "^2.1.1", "colord": "^2.7.0", @@ -6603,19 +6821,13 @@ "react-dom": "^18.0.0" } }, - "node_modules/@wordpress/block-library/node_modules/@ariakit/core": { - "version": "0.4.10", - "resolved": "https://registry.npmjs.org/@ariakit/core/-/core-0.4.10.tgz", - "integrity": "sha512-mX3EabQbfVh5uTjsTJ3+gjj7KGdTNhIN0qZHJd5Z2iPUnKl9NBy23Lgu6PEskpVsKAZ3proirjguD7U9fKMs/A==", - "license": "MIT" - }, "node_modules/@wordpress/block-library/node_modules/@ariakit/react": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.11.tgz", - "integrity": "sha512-nLpPrmNcspqNhk4o+epsgeZfP1+Fkh4uIzNe5yrFkXolRkqHGKAxl4Hi82e0yxIBUbYbZIEwsZQQVceF1L6xrw==", + "version": "0.4.35", + "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", + "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", "license": "MIT", "dependencies": { - "@ariakit/react-core": "0.4.11" + "@ariakit/react-components": "0.3.4" }, "funding": { "type": "opencollective", @@ -6626,21 +6838,6 @@ "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, - "node_modules/@wordpress/block-library/node_modules/@ariakit/react-core": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/@ariakit/react-core/-/react-core-0.4.11.tgz", - "integrity": "sha512-i6KedWhjZkNC7tMEKO0eNjjq2HRPiHyGaBS2x2VaWwzBepoYtjyvxRXyqLJ3gaiNdlwckN1TZsRDfD+viy13IQ==", - "license": "MIT", - "dependencies": { - "@ariakit/core": "0.4.10", - "@floating-ui/dom": "^1.0.0", - "use-sync-external-store": "^1.2.0" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, "node_modules/@wordpress/block-library/node_modules/@babel/runtime": { "version": "7.25.7", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", @@ -6653,57 +6850,87 @@ "node": ">=6.9.0" } }, + "node_modules/@wordpress/block-library/node_modules/@floating-ui/react-dom": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.8.tgz", + "integrity": "sha512-HOdqOt3R3OGeTKidaLvJKcgg75S6tibQ3Tif4eyd91QnIJWr0NLvoXFpJA/j8HqkFSL68GDca9AuyWEHlhyClw==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "^1.6.1" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } + }, + "node_modules/@wordpress/block-library/node_modules/@types/gradient-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", + "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", + "license": "MIT" + }, + "node_modules/@wordpress/block-library/node_modules/@wordpress/base-styles": { + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-6.20.0.tgz", + "integrity": "sha512-Dsug4Zxz2xOFtK6CGThKYXwCqC9Yztw2STKQzwztrX4yW+o6iDbzkxpcwdDhsaVJs0Jt9A4LmJpZPh+pUozzLA==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, "node_modules/@wordpress/block-library/node_modules/@wordpress/components": { - "version": "28.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-28.7.0.tgz", - "integrity": "sha512-oxF+pAZHJ3L9p42wMDeclo6P0TOZW1+U1pKmKju33aDsAwINOU2ELpVFyIEHkA9txn8VU4lxpnNIsYY6RGlW8w==", + "version": "30.9.0", + "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-30.9.0.tgz", + "integrity": "sha512-mx0df0TjChmpCtqQn3iFHphqaLQVNk5Yprs+3NJSfm1kWuZPKfVys6AtmhfBgXs/VrrJk34Z+1N+nqXovHuXnw==", "license": "GPL-2.0-or-later", "dependencies": { - "@ariakit/react": "^0.4.10", - "@babel/runtime": "^7.16.0", + "@ariakit/react": "^0.4.15", + "@date-fns/utc": "^2.1.1", "@emotion/cache": "^11.7.1", "@emotion/css": "^11.7.1", "@emotion/react": "^11.7.1", "@emotion/serialize": "^1.0.2", "@emotion/styled": "^11.6.0", "@emotion/utils": "^1.0.0", - "@floating-ui/react-dom": "^2.0.8", - "@types/gradient-parser": "0.1.3", + "@floating-ui/react-dom": "2.0.8", + "@types/gradient-parser": "1.1.0", "@types/highlight-words-core": "1.2.1", "@use-gesture/react": "^10.3.1", - "@wordpress/a11y": "^4.7.0", - "@wordpress/compose": "^7.7.0", - "@wordpress/date": "^5.7.0", - "@wordpress/deprecated": "^4.7.0", - "@wordpress/dom": "^4.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/escape-html": "^3.7.0", - "@wordpress/hooks": "^4.7.0", - "@wordpress/html-entities": "^4.7.0", - "@wordpress/i18n": "^5.7.0", - "@wordpress/icons": "^10.7.0", - "@wordpress/is-shallow-equal": "^5.7.0", - "@wordpress/keycodes": "^4.7.0", - "@wordpress/primitives": "^4.7.0", - "@wordpress/private-apis": "^1.7.0", - "@wordpress/rich-text": "^7.7.0", - "@wordpress/warning": "^3.7.0", + "@wordpress/a11y": "^4.36.0", + "@wordpress/base-styles": "^6.12.0", + "@wordpress/compose": "^7.36.0", + "@wordpress/date": "^5.36.0", + "@wordpress/deprecated": "^4.36.0", + "@wordpress/dom": "^4.36.0", + "@wordpress/element": "^6.36.0", + "@wordpress/escape-html": "^3.36.0", + "@wordpress/hooks": "^4.36.0", + "@wordpress/html-entities": "^4.36.0", + "@wordpress/i18n": "^6.9.0", + "@wordpress/icons": "^11.3.0", + "@wordpress/is-shallow-equal": "^5.36.0", + "@wordpress/keycodes": "^4.36.0", + "@wordpress/primitives": "^4.36.0", + "@wordpress/private-apis": "^1.36.0", + "@wordpress/rich-text": "^7.36.0", + "@wordpress/warning": "^3.36.0", "change-case": "^4.1.2", "clsx": "^2.1.1", "colord": "^2.7.0", "date-fns": "^3.6.0", "deepmerge": "^4.3.0", "fast-deep-equal": "^3.1.3", - "framer-motion": "^11.1.9", - "gradient-parser": "^0.1.5", + "framer-motion": "^11.15.0", + "gradient-parser": "1.1.1", "highlight-words-core": "^1.2.2", "is-plain-object": "^5.0.0", "memize": "^2.1.0", "path-to-regexp": "^6.2.1", "re-resizable": "^6.4.0", "react-colorful": "^5.3.1", + "react-day-picker": "^9.7.0", "remove-accents": "^0.5.0", - "use-lilius": "^2.0.5", "uuid": "^9.0.1" }, "engines": { @@ -6715,14 +6942,31 @@ "react-dom": "^18.0.0" } }, + "node_modules/@wordpress/block-library/node_modules/@wordpress/components/node_modules/@wordpress/icons": { + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-11.8.0.tgz", + "integrity": "sha512-ZMNHApHMmPLpNnNLfPLRf6XWoPhZFNKFKdpMlhA6Lx04J1hLVyLRz8PuM+1o3ByxD2ZiExfSRhdmI+7VvEg6DA==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/element": "^6.41.0", + "@wordpress/primitives": "^4.41.0", + "change-case": "4.1.2" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "react": "^18.0.0" + } + }, "node_modules/@wordpress/block-library/node_modules/@wordpress/date": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.7.0.tgz", - "integrity": "sha512-iMwGP/Sbz+CCgqxUUKg8W2sZiwvr9K1q7s0rHuy3YVJT46QDNpN0A6HGNmckI0z4C+CRDvOIa09OMgTz1igUAw==", + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", + "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/deprecated": "^4.7.0", + "@wordpress/deprecated": "^4.51.0", "moment": "^2.29.4", "moment-timezone": "^0.5.40" }, @@ -6732,14 +6976,14 @@ } }, "node_modules/@wordpress/block-library/node_modules/@wordpress/icons": { - "version": "10.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-10.7.0.tgz", - "integrity": "sha512-4cvi9ZIaz6IYRcOjVuALtDLPtzgt1zK+E9LskL0PAi3TJhoh746q28wv6ycP+KtJEiI+bsTf2Qu5dmCePGR/jA==", + "version": "10.32.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-10.32.0.tgz", + "integrity": "sha512-1WvJdT361X1LnetYBpBWUjAVXZzl+pBdIwHbYRAp8ej47EI/igPmNxmq81nFd40s8fer/9qtipielcqSI6H2rA==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.7.0", - "@wordpress/primitives": "^4.7.0" + "@babel/runtime": "7.25.7", + "@wordpress/element": "^6.32.0", + "@wordpress/primitives": "^4.32.0" }, "engines": { "node": ">=18.12.0", @@ -6747,13 +6991,12 @@ } }, "node_modules/@wordpress/block-library/node_modules/@wordpress/primitives": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.7.0.tgz", - "integrity": "sha512-PcAAIMT8+WqKB2HAeQlLmrcQyzyhNw9IeToJoxz+VKcc/7uLfGHplsDvtHY/X4jH8QlwlVwHSiqW/McTcxoUvQ==", + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.7.0", + "@wordpress/element": "^8.3.0", "clsx": "^2.1.1" }, "engines": { @@ -6761,7 +7004,41 @@ "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^18.0.0" + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/block-library/node_modules/@wordpress/primitives/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/block-library/node_modules/gradient-parser": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-1.1.1.tgz", + "integrity": "sha512-Hu0YfNU+38EsTmnUfLXUKFMXq9yz7htGYpF4x+dlbBhUCvIvzLt0yVLT/gJRmvLKFJdqNFrz4eKkIUjIXSr7Tw==", + "engines": { + "node": ">=0.10.0" } }, "node_modules/@wordpress/block-library/node_modules/is-plain-object": { @@ -6783,6 +7060,7 @@ "version": "9.0.1", "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "deprecated": "uuid@10 and below is no longer supported. For ESM codebases, update to uuid@latest. For CommonJS codebases, use uuid@11 (but be aware this version will likely be deprecated in 2028).", "funding": [ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" @@ -6793,82 +7071,80 @@ } }, "node_modules/@wordpress/block-serialization-default-parser": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/block-serialization-default-parser/-/block-serialization-default-parser-5.11.0.tgz", - "integrity": "sha512-D9pfzKTW+X85ve9Icx/9ugMQioWCT/2FUQ0C3fADN5mzlO40kNRIGDU8jPH7s0HRvQX2or0Uk7k09Mx1NlSvJg==", + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/block-serialization-default-parser/-/block-serialization-default-parser-5.51.0.tgz", + "integrity": "sha512-zcuJptrIG7VWP3N7uw3ACBS5Mdykhy3zAxZ+dMym8291b2O+dJf1JVlnr65G4AYhxahWA5MsmLENBLhwBgOH8w==", "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "7.25.7" - }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/block-serialization-default-parser/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@wordpress/blocks": { - "version": "13.10.0", - "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-13.10.0.tgz", - "integrity": "sha512-Csfw4BgrPEry1OGE0iHSHJlSbao1IA8ujaE8H0LjAXCvMHXET11avSVvFwuYOaDbeSVi2TD50xA+UpMiJnEo4A==", + "version": "15.22.0", + "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-15.22.0.tgz", + "integrity": "sha512-+L0+NOuu4ZErYb8pA2tAiWLWuWdG+UU8RhWPXJ4RccQPtjuOvPZlvwgECSY5YxmduImsRefDrIwlBzqqqA17CA==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "7.25.7", - "@wordpress/autop": "^4.10.0", - "@wordpress/blob": "^4.10.0", - "@wordpress/block-serialization-default-parser": "^5.10.0", - "@wordpress/data": "^10.10.0", - "@wordpress/deprecated": "^4.10.0", - "@wordpress/dom": "^4.10.0", - "@wordpress/element": "^6.10.0", - "@wordpress/hooks": "^4.10.0", - "@wordpress/html-entities": "^4.10.0", - "@wordpress/i18n": "^5.10.0", - "@wordpress/is-shallow-equal": "^5.10.0", - "@wordpress/private-apis": "^1.10.0", - "@wordpress/rich-text": "^7.10.0", - "@wordpress/shortcode": "^4.10.0", - "@wordpress/warning": "^3.10.0", + "@wordpress/autop": "^4.49.0", + "@wordpress/blob": "^4.49.0", + "@wordpress/block-serialization-default-parser": "^5.49.0", + "@wordpress/data": "^10.49.0", + "@wordpress/deprecated": "^4.49.0", + "@wordpress/dom": "^4.49.0", + "@wordpress/element": "^8.1.0", + "@wordpress/hooks": "^4.49.0", + "@wordpress/html-entities": "^4.49.0", + "@wordpress/i18n": "^6.22.0", + "@wordpress/is-shallow-equal": "^5.49.0", + "@wordpress/private-apis": "^1.49.0", + "@wordpress/rich-text": "^7.49.0", + "@wordpress/shortcode": "^4.49.0", + "@wordpress/warning": "^3.49.0", "change-case": "^4.1.2", - "colord": "^2.7.0", + "colord": "^2.9.3", "fast-deep-equal": "^3.1.3", "hpq": "^1.3.0", "is-plain-object": "^5.0.0", + "marked": "^18.0.3", "memize": "^2.1.0", "react-is": "^18.3.0", "remove-accents": "^0.5.0", - "showdown": "^1.9.1", "simple-html-tokenizer": "^0.5.7", - "uuid": "^9.0.1" + "uuid": "^14.0.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { + "@types/react": "^18.3.27", "react": "^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/blocks/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", + "node_modules/@wordpress/blocks/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", + "license": "GPL-2.0-or-later", "dependencies": { - "regenerator-runtime": "^0.14.0" + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=18.12.0", + "npm": ">=8.19.2" } }, "node_modules/@wordpress/blocks/node_modules/is-plain-object": { @@ -6881,16 +7157,16 @@ } }, "node_modules/@wordpress/blocks/node_modules/uuid": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.1.tgz", + "integrity": "sha512-6ZxzVpzDXDa3bJWaHilVayA+BH/1zmxCJoVgvmqJnid/gPoKHxUrS/aC/T6LGQtNHT+XHG9fXPJB4d+IrU30Ew==", "funding": [ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" ], "license": "MIT", "bin": { - "uuid": "dist/bin/uuid" + "uuid": "dist-node/bin/uuid" } }, "node_modules/@wordpress/browserslist-config": { @@ -6905,19 +7181,21 @@ } }, "node_modules/@wordpress/commands": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/commands/-/commands-1.7.0.tgz", - "integrity": "sha512-w01WuJFbSnBJ9UPgPtm0M5GZLGOfJF+EdKvonR3Jf3uApmzyCPoDeqc+UJ1MGERANXzwOOtcHqQM26hhTbG+Ug==", + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/commands/-/commands-1.51.0.tgz", + "integrity": "sha512-qn38b/rl1W84IHmcc9KOLSOmuXDwBMYcD7uPUKCChziy/NCb3e7njQzklKgK5sBC3JcgZrl1V5C605ejofd7lQ==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/components": "^28.7.0", - "@wordpress/data": "^10.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/i18n": "^5.7.0", - "@wordpress/icons": "^10.7.0", - "@wordpress/keyboard-shortcuts": "^5.7.0", - "@wordpress/private-apis": "^1.7.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/components": "^37.0.0", + "@wordpress/data": "^10.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/keyboard-shortcuts": "^5.51.0", + "@wordpress/preferences": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/warning": "^3.51.0", "clsx": "^2.1.1", "cmdk": "^1.0.0" }, @@ -6926,23 +7204,17 @@ "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" + "react": "^18 || ^19", + "react-dom": "^18 || ^19" } }, - "node_modules/@wordpress/commands/node_modules/@ariakit/core": { - "version": "0.4.10", - "resolved": "https://registry.npmjs.org/@ariakit/core/-/core-0.4.10.tgz", - "integrity": "sha512-mX3EabQbfVh5uTjsTJ3+gjj7KGdTNhIN0qZHJd5Z2iPUnKl9NBy23Lgu6PEskpVsKAZ3proirjguD7U9fKMs/A==", - "license": "MIT" - }, "node_modules/@wordpress/commands/node_modules/@ariakit/react": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.11.tgz", - "integrity": "sha512-nLpPrmNcspqNhk4o+epsgeZfP1+Fkh4uIzNe5yrFkXolRkqHGKAxl4Hi82e0yxIBUbYbZIEwsZQQVceF1L6xrw==", + "version": "0.4.35", + "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", + "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", "license": "MIT", "dependencies": { - "@ariakit/react-core": "0.4.11" + "@ariakit/react-components": "0.3.4" }, "funding": { "type": "opencollective", @@ -6953,122 +7225,334 @@ "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, - "node_modules/@wordpress/commands/node_modules/@ariakit/react-core": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/@ariakit/react-core/-/react-core-0.4.11.tgz", - "integrity": "sha512-i6KedWhjZkNC7tMEKO0eNjjq2HRPiHyGaBS2x2VaWwzBepoYtjyvxRXyqLJ3gaiNdlwckN1TZsRDfD+viy13IQ==", - "license": "MIT", - "dependencies": { - "@ariakit/core": "0.4.10", - "@floating-ui/dom": "^1.0.0", - "use-sync-external-store": "^1.2.0" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + "node_modules/@wordpress/commands/node_modules/@types/gradient-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", + "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", + "license": "MIT" + }, + "node_modules/@wordpress/commands/node_modules/@wordpress/base-styles": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", + "integrity": "sha512-w+n/AWSNfDx5RhPIpKCi7Iptn+8+Sll8uJhyx6X62zkkHDX51H2vZTU2XaXOQGx5U7xQcaVTbHjVDgYBwkU4Vg==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" } }, "node_modules/@wordpress/commands/node_modules/@wordpress/components": { - "version": "28.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-28.7.0.tgz", - "integrity": "sha512-oxF+pAZHJ3L9p42wMDeclo6P0TOZW1+U1pKmKju33aDsAwINOU2ELpVFyIEHkA9txn8VU4lxpnNIsYY6RGlW8w==", + "version": "37.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-37.0.0.tgz", + "integrity": "sha512-Lol3iUujNnn4uHxI4VARDVEJIFUKlBtZUMcSFWofiYRZc8aV5BplyKC+sRAhKm+KFNBQjZtqd4PdixtaOHuX6w==", "license": "GPL-2.0-or-later", "dependencies": { - "@ariakit/react": "^0.4.10", - "@babel/runtime": "^7.16.0", - "@emotion/cache": "^11.7.1", - "@emotion/css": "^11.7.1", - "@emotion/react": "^11.7.1", - "@emotion/serialize": "^1.0.2", - "@emotion/styled": "^11.6.0", - "@emotion/utils": "^1.0.0", + "@ariakit/react": "^0.4.32", + "@date-fns/utc": "^2.1.1", + "@emotion/cache": "^11.14.0", + "@emotion/css": "^11.13.5", + "@emotion/react": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/styled": "^11.14.1", + "@emotion/utils": "^1.4.2", "@floating-ui/react-dom": "^2.0.8", - "@types/gradient-parser": "0.1.3", - "@types/highlight-words-core": "1.2.1", + "@types/gradient-parser": "^1.1.0", + "@types/highlight-words-core": "^1.2.1", "@use-gesture/react": "^10.3.1", - "@wordpress/a11y": "^4.7.0", - "@wordpress/compose": "^7.7.0", - "@wordpress/date": "^5.7.0", - "@wordpress/deprecated": "^4.7.0", - "@wordpress/dom": "^4.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/escape-html": "^3.7.0", - "@wordpress/hooks": "^4.7.0", - "@wordpress/html-entities": "^4.7.0", - "@wordpress/i18n": "^5.7.0", - "@wordpress/icons": "^10.7.0", - "@wordpress/is-shallow-equal": "^5.7.0", - "@wordpress/keycodes": "^4.7.0", - "@wordpress/primitives": "^4.7.0", - "@wordpress/private-apis": "^1.7.0", - "@wordpress/rich-text": "^7.7.0", - "@wordpress/warning": "^3.7.0", + "@wordpress/a11y": "^4.51.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/date": "^5.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/escape-html": "^3.51.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/ui": "^0.18.0", + "@wordpress/warning": "^3.51.0", "change-case": "^4.1.2", "clsx": "^2.1.1", - "colord": "^2.7.0", - "date-fns": "^3.6.0", - "deepmerge": "^4.3.0", + "colord": "^2.9.3", + "csstype": "^3.2.3", + "date-fns": "^4.1.0", + "deepmerge": "^4.3.1", "fast-deep-equal": "^3.1.3", - "framer-motion": "^11.1.9", - "gradient-parser": "^0.1.5", + "framer-motion": "^11.15.0", + "gradient-parser": "^1.1.1", "highlight-words-core": "^1.2.2", "is-plain-object": "^5.0.0", "memize": "^2.1.0", "path-to-regexp": "^6.2.1", "re-resizable": "^6.4.0", - "react-colorful": "^5.3.1", + "react-colorful": "^5.6.1", + "react-day-picker": "^9.7.0", "remove-accents": "^0.5.0", - "use-lilius": "^2.0.5", - "uuid": "^9.0.1" + "uuid": "^14.0.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/commands/node_modules/@wordpress/date": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.7.0.tgz", - "integrity": "sha512-iMwGP/Sbz+CCgqxUUKg8W2sZiwvr9K1q7s0rHuy3YVJT46QDNpN0A6HGNmckI0z4C+CRDvOIa09OMgTz1igUAw==", + "node_modules/@wordpress/commands/node_modules/@wordpress/components/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/deprecated": "^4.7.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" - } - }, - "node_modules/@wordpress/commands/node_modules/@wordpress/icons": { - "version": "10.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-10.7.0.tgz", - "integrity": "sha512-4cvi9ZIaz6IYRcOjVuALtDLPtzgt1zK+E9LskL0PAi3TJhoh746q28wv6ycP+KtJEiI+bsTf2Qu5dmCePGR/jA==", + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/commands/node_modules/@wordpress/components/node_modules/@wordpress/primitives": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.7.0", - "@wordpress/primitives": "^4.7.0" + "@wordpress/element": "^8.3.0", + "clsx": "^2.1.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/commands/node_modules/@wordpress/primitives": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.7.0.tgz", - "integrity": "sha512-PcAAIMT8+WqKB2HAeQlLmrcQyzyhNw9IeToJoxz+VKcc/7uLfGHplsDvtHY/X4jH8QlwlVwHSiqW/McTcxoUvQ==", + "node_modules/@wordpress/commands/node_modules/@wordpress/components/node_modules/@wordpress/ui": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/@wordpress/ui/-/ui-0.18.0.tgz", + "integrity": "sha512-TIMsjaRl5/QJEjKbtoa0YAhzVdcvAk/FmA9rgJVR6oG/l6+s0WgoebGASEVyRyoOstq45xB7PzYMdjVs7iS0zg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.7.0", + "@base-ui/react": "^1.6.0", + "@wordpress/a11y": "^4.51.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/theme": "^1.0.0", + "clsx": "^2.1.1", + "tabbable": "^6.4.0" + }, + "engines": { + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/commands/node_modules/@wordpress/components/node_modules/@wordpress/ui/node_modules/@base-ui/react": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", + "integrity": "sha512-/jzjTWJYXhRFO45Bev9lc3cHbmjzCMpUqbMZ2AgKy/z25mY9B6shGSNcXcjQar9n5doM0KYW1W8fcFv2jZBuMw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.29.2", + "@base-ui/utils": "0.3.1", + "@floating-ui/react-dom": "^2.1.8", + "@floating-ui/utils": "^0.2.11", + "use-sync-external-store": "^1.6.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@date-fns/tz": "^1.2.0", + "@types/react": "^17 || ^18 || ^19", + "date-fns": "^4.0.0", + "react": "^17 || ^18 || ^19", + "react-dom": "^17 || ^18 || ^19" + }, + "peerDependenciesMeta": { + "@date-fns/tz": { + "optional": true + }, + "@types/react": { + "optional": true + }, + "date-fns": { + "optional": true + } + } + }, + "node_modules/@wordpress/commands/node_modules/@wordpress/components/node_modules/@wordpress/ui/node_modules/@wordpress/theme": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/theme/-/theme-1.0.0.tgz", + "integrity": "sha512-zPwDgv7xx3f4h+lLCq95szofMAMjSIlkIIfR7U2cxQws5J6XnnTsOxHWJTE6V4jPzS19vzFdQdZ9wiR/X3c0Lw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/compose": "^8.4.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "colorjs.io": "^0.6.0", + "memize": "^2.1.0" + }, + "engines": { + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "esbuild": "^0.27.2", + "postcss": "^8.0.0", + "react": "^18 || ^19", + "react-dom": "^18 || ^19", + "stylelint": "^16.8.2", + "vite": "^7.3.2" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "postcss": { + "optional": true + }, + "stylelint": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/@wordpress/commands/node_modules/@wordpress/date": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", + "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/deprecated": "^4.51.0", + "moment": "^2.29.4", + "moment-timezone": "^0.5.40" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/commands/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/commands/node_modules/@wordpress/icons": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-15.2.0.tgz", + "integrity": "sha512-g/1a4eTNH/mCluvmryNcYAg1GxsjY6xGjfGJRq3z44SEcB8jAZyEQtqdcGQ+o2kHelKhmmqS8WAowxif44ZgNQ==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/element": "^8.3.0", + "@wordpress/primitives": "^4.51.0", + "change-case": "^4.1.2" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/commands/node_modules/@wordpress/icons/node_modules/@wordpress/primitives": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/element": "^8.3.0", "clsx": "^2.1.1" }, "engines": { @@ -7076,7 +7560,41 @@ "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^18.0.0" + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/commands/node_modules/@wordpress/style-runtime": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", + "integrity": "sha512-PeAcF7qoIMg9ChS5SfkRrLLcUx9D7Te6weRcQmoKYgxE7jSzzXpoaiy3Z+Us+ChyisolF4xhTg5DblMBPL1iug==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=20.10.0", + "npm": ">=10.2.3" + } + }, + "node_modules/@wordpress/commands/node_modules/date-fns": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.4.0.tgz", + "integrity": "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, + "node_modules/@wordpress/commands/node_modules/gradient-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-1.2.0.tgz", + "integrity": "sha512-6ABGa9CR7WR/0pAJicBy5SJkiikbFM6kf/JjykwX7x+t+s8ORWVnlbi6FkHeFFb36yWsjUpHqSYrygd7ofEUqA==", + "engines": { + "node": ">=0.10.0" } }, "node_modules/@wordpress/commands/node_modules/is-plain-object": { @@ -7095,16 +7613,16 @@ "license": "MIT" }, "node_modules/@wordpress/commands/node_modules/uuid": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.1.tgz", + "integrity": "sha512-6ZxzVpzDXDa3bJWaHilVayA+BH/1zmxCJoVgvmqJnid/gPoKHxUrS/aC/T6LGQtNHT+XHG9fXPJB4d+IrU30Ew==", "funding": [ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" ], "license": "MIT", "bin": { - "uuid": "dist/bin/uuid" + "uuid": "dist-node/bin/uuid" } }, "node_modules/@wordpress/components": { @@ -7525,22 +8043,20 @@ } }, "node_modules/@wordpress/compose": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-7.7.0.tgz", - "integrity": "sha512-TjhGcw9n/XbiMT63POESs1TF9O6eQRVhAPrMan5t2yusQbog5KLk4TetOasIWxD80pu5sg9P5NuupuU/oSEBYQ==", + "version": "7.46.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-7.46.0.tgz", + "integrity": "sha512-6Yv9Wb6tlA4JYU9bdWWuIWpTTzBAVA1zrYu1GY9x2/mCOckk9iLcEEfbKULxdjwwcMo3SKqvyby4f6kEUw/Wsw==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", "@types/mousetrap": "^1.6.8", - "@wordpress/deprecated": "^4.7.0", - "@wordpress/dom": "^4.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/is-shallow-equal": "^5.7.0", - "@wordpress/keycodes": "^4.7.0", - "@wordpress/priority-queue": "^3.7.0", - "@wordpress/undo-manager": "^1.7.0", + "@wordpress/deprecated": "^4.46.0", + "@wordpress/dom": "^4.46.0", + "@wordpress/element": "^6.46.0", + "@wordpress/is-shallow-equal": "^5.46.0", + "@wordpress/keycodes": "^4.46.0", + "@wordpress/priority-queue": "^3.46.0", + "@wordpress/undo-manager": "^1.46.0", "change-case": "^4.1.2", - "clipboard": "^2.0.11", "mousetrap": "^1.6.5", "use-memo-one": "^1.1.1" }, @@ -7553,881 +8069,1277 @@ } }, "node_modules/@wordpress/core-data": { - "version": "7.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/core-data/-/core-data-7.7.0.tgz", - "integrity": "sha512-mpk8pDc9nbD+G/4JegL/rxEwz24wvAjdVuieb+Q1MjeHMeSTJrqx6tUN6uKyJJZGZtjfYjasRUmRBIpbsx7qAQ==", + "version": "7.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/core-data/-/core-data-7.51.0.tgz", + "integrity": "sha512-5B6eouukuJD+F8FYXYE/E+5oE3kLFpBhaXn0shDWeohT/elvjc1ra7x+KFNM2iWQHJ4ftO5nEkVfh923mmyRRA==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/api-fetch": "^7.7.0", - "@wordpress/block-editor": "^14.2.0", - "@wordpress/blocks": "^13.7.0", - "@wordpress/compose": "^7.7.0", - "@wordpress/data": "^10.7.0", - "@wordpress/deprecated": "^4.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/html-entities": "^4.7.0", - "@wordpress/i18n": "^5.7.0", - "@wordpress/is-shallow-equal": "^5.7.0", - "@wordpress/private-apis": "^1.7.0", - "@wordpress/rich-text": "^7.7.0", - "@wordpress/sync": "^1.7.0", - "@wordpress/undo-manager": "^1.7.0", - "@wordpress/url": "^4.7.0", - "@wordpress/warning": "^3.7.0", + "@wordpress/api-fetch": "^7.51.0", + "@wordpress/block-editor": "^16.0.0", + "@wordpress/blocks": "^15.24.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/data": "^10.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/sync": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "@wordpress/url": "^4.51.0", + "@wordpress/warning": "^3.51.0", "change-case": "^4.1.2", "equivalent-key-map": "^0.2.2", "fast-deep-equal": "^3.1.3", "memize": "^2.1.0", - "uuid": "^9.0.1" + "uuid": "^14.0.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/core-data/node_modules/uuid": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", - "funding": [ - "https://github.com/sponsors/broofa", - "https://github.com/sponsors/ctavan" - ], + "node_modules/@wordpress/core-data/node_modules/@ariakit/react": { + "version": "0.4.35", + "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", + "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", "license": "MIT", - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/@wordpress/data": { - "version": "10.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/data/-/data-10.11.0.tgz", - "integrity": "sha512-2JvezC51tv8zpg1zUo+VNegtTHHKWBNGZ0uRFoeH6riswT4iZMXsZ83vrWZSCR/bY6ilK0kN/UHDvvSRYov2Rw==", - "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "7.25.7", - "@wordpress/compose": "*", - "@wordpress/deprecated": "*", - "@wordpress/element": "*", - "@wordpress/is-shallow-equal": "*", - "@wordpress/priority-queue": "*", - "@wordpress/private-apis": "*", - "@wordpress/redux-routine": "*", - "deepmerge": "^4.3.0", - "equivalent-key-map": "^0.2.2", - "is-plain-object": "^5.0.0", - "is-promise": "^4.0.0", - "redux": "^4.1.2", - "rememo": "^4.0.2", - "use-memo-one": "^1.1.1" + "@ariakit/react-components": "0.3.4" }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/ariakit" }, "peerDependencies": { - "react": "^18.0.0" + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, - "node_modules/@wordpress/data/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", + "node_modules/@wordpress/core-data/node_modules/@base-ui/react": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", + "integrity": "sha512-/jzjTWJYXhRFO45Bev9lc3cHbmjzCMpUqbMZ2AgKy/z25mY9B6shGSNcXcjQar9n5doM0KYW1W8fcFv2jZBuMw==", "license": "MIT", "dependencies": { - "regenerator-runtime": "^0.14.0" + "@babel/runtime": "^7.29.2", + "@base-ui/utils": "0.3.1", + "@floating-ui/react-dom": "^2.1.8", + "@floating-ui/utils": "^0.2.11", + "use-sync-external-store": "^1.6.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@date-fns/tz": "^1.2.0", + "@types/react": "^17 || ^18 || ^19", + "date-fns": "^4.0.0", + "react": "^17 || ^18 || ^19", + "react-dom": "^17 || ^18 || ^19" + }, + "peerDependenciesMeta": { + "@date-fns/tz": { + "optional": true + }, + "@types/react": { + "optional": true + }, + "date-fns": { + "optional": true + } } }, - "node_modules/@wordpress/data/node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } + "node_modules/@wordpress/core-data/node_modules/@types/gradient-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", + "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", + "license": "MIT" }, - "node_modules/@wordpress/date": { - "version": "4.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-4.58.0.tgz", - "integrity": "sha512-yFT7DU0H9W0lsDytMaVMmjho08X1LeBMIQMppxdtKB04Ujx58hVh7gtunOsstUQ7pVg23nE2eLaVfx5JOdjzAw==", - "dev": true, + "node_modules/@wordpress/core-data/node_modules/@wordpress/base-styles": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", + "integrity": "sha512-w+n/AWSNfDx5RhPIpKCi7Iptn+8+Sll8uJhyx6X62zkkHDX51H2vZTU2XaXOQGx5U7xQcaVTbHjVDgYBwkU4Vg==", "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/deprecated": "^3.58.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" - }, "engines": { - "node": ">=12" + "node": ">=18.12.0", + "npm": ">=8.19.2" } }, - "node_modules/@wordpress/date/node_modules/@wordpress/deprecated": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/deprecated/-/deprecated-3.58.0.tgz", - "integrity": "sha512-knweE2lLEUxWRr6A48sHiO0ww5pPybGe2NVIZVq/y7EaYCMdpy6gYA0ZdVqMKZvtxKKqicJfwigcn+hinsTvUQ==", - "dev": true, + "node_modules/@wordpress/core-data/node_modules/@wordpress/block-editor": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/block-editor/-/block-editor-16.0.0.tgz", + "integrity": "sha512-hH7w5gbgjwsYLPTw1JFqNTtEe+O2kHvbzoht4g5sUHGThKR7NrVMHuLnNS7iOcz+k1VZpVRjXrWJlBsEj2en2g==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/hooks": "^3.58.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/date/node_modules/@wordpress/hooks": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-3.58.0.tgz", - "integrity": "sha512-9LB0ZHnZRQlORttux9t/xbAskF+dk2ujqzPGsVzc92mSKpQP3K2a5Wy74fUnInguB1vLUNHT6nrNdkVom5qX1Q==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0" + "@react-spring/web": "^9.4.5", + "@wordpress/a11y": "^4.51.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/blob": "^4.51.0", + "@wordpress/block-serialization-default-parser": "^5.51.0", + "@wordpress/blocks": "^15.24.0", + "@wordpress/commands": "^1.51.0", + "@wordpress/components": "^37.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/data": "^10.51.0", + "@wordpress/dataviews": "^17.2.0", + "@wordpress/date": "^5.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/escape-html": "^3.51.0", + "@wordpress/global-styles-engine": "^1.18.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/image-cropper": "^1.15.0", + "@wordpress/interactivity": "^6.51.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keyboard-shortcuts": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/notices": "^5.51.0", + "@wordpress/preferences": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/style-engine": "^2.51.0", + "@wordpress/token-list": "^3.51.0", + "@wordpress/ui": "^0.18.0", + "@wordpress/upload-media": "^0.36.0", + "@wordpress/url": "^4.51.0", + "@wordpress/warning": "^3.51.0", + "@wordpress/wordcount": "^4.51.0", + "change-case": "^4.1.2", + "clsx": "^2.1.1", + "colord": "^2.9.3", + "deepmerge": "^4.3.1", + "diff": "^8.0.3", + "fast-deep-equal": "^3.1.3", + "memize": "^2.1.0", + "parsel-js": "^1.1.2", + "postcss": "^8.4.38", + "postcss-prefix-selector": "^1.16.0", + "postcss-urlrebase": "^1.4.0", + "react-autosize-textarea": "^7.1.0", + "react-easy-crop": "^5.4.2", + "remove-accents": "^0.5.0" }, "engines": { - "node": ">=12" + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/dependency-extraction-webpack-plugin": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-6.7.0.tgz", - "integrity": "sha512-ANsSDMkmb0NGG16NNx9uliXc6hwuE4FJLWdmqju6SGPEMuHa5pr2Xl5hCd154WzoC2VVhYMGNUYoQBRJDFNfkA==", - "dev": true, + "node_modules/@wordpress/core-data/node_modules/@wordpress/blocks": { + "version": "15.24.0", + "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-15.24.0.tgz", + "integrity": "sha512-C/OseZS0Znx7Wqd/RGJdVXnn4z9lLfJ/SNehzyJ1ViiBTktDNS5RWiYAYJ+kwJ5unBbTy1KDXC9PGzR0Ib4Y5g==", "license": "GPL-2.0-or-later", "dependencies": { - "json2php": "^0.0.7" + "@wordpress/autop": "^4.51.0", + "@wordpress/blob": "^4.51.0", + "@wordpress/block-serialization-default-parser": "^5.51.0", + "@wordpress/data": "^10.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/shortcode": "^4.51.0", + "@wordpress/warning": "^3.51.0", + "change-case": "^4.1.2", + "colord": "^2.9.3", + "fast-deep-equal": "^3.1.3", + "hpq": "^1.3.0", + "is-plain-object": "^5.0.0", + "marked": "^18.0.3", + "memize": "^2.1.0", + "react-is": "^18.3.0", + "remove-accents": "^0.5.0", + "simple-html-tokenizer": "^0.5.7", + "uuid": "^14.0.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "webpack": "^5.0.0" + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/deprecated": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/deprecated/-/deprecated-4.11.0.tgz", - "integrity": "sha512-CPXMS2IbGonba6Ny3IhzOudZ8QSCQzjg8AaS8dAq6p47AIUNxfj8bef+7C36lJKt9KPDkez7eY5x7UF5CaDkug==", + "node_modules/@wordpress/core-data/node_modules/@wordpress/components": { + "version": "37.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-37.0.0.tgz", + "integrity": "sha512-Lol3iUujNnn4uHxI4VARDVEJIFUKlBtZUMcSFWofiYRZc8aV5BplyKC+sRAhKm+KFNBQjZtqd4PdixtaOHuX6w==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "7.25.7", - "@wordpress/hooks": "*" + "@ariakit/react": "^0.4.32", + "@date-fns/utc": "^2.1.1", + "@emotion/cache": "^11.14.0", + "@emotion/css": "^11.13.5", + "@emotion/react": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/styled": "^11.14.1", + "@emotion/utils": "^1.4.2", + "@floating-ui/react-dom": "^2.0.8", + "@types/gradient-parser": "^1.1.0", + "@types/highlight-words-core": "^1.2.1", + "@use-gesture/react": "^10.3.1", + "@wordpress/a11y": "^4.51.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/date": "^5.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/escape-html": "^3.51.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/ui": "^0.18.0", + "@wordpress/warning": "^3.51.0", + "change-case": "^4.1.2", + "clsx": "^2.1.1", + "colord": "^2.9.3", + "csstype": "^3.2.3", + "date-fns": "^4.1.0", + "deepmerge": "^4.3.1", + "fast-deep-equal": "^3.1.3", + "framer-motion": "^11.15.0", + "gradient-parser": "^1.1.1", + "highlight-words-core": "^1.2.2", + "is-plain-object": "^5.0.0", + "memize": "^2.1.0", + "path-to-regexp": "^6.2.1", + "re-resizable": "^6.4.0", + "react-colorful": "^5.6.1", + "react-day-picker": "^9.7.0", + "remove-accents": "^0.5.0", + "uuid": "^14.0.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" - } - }, - "node_modules/@wordpress/deprecated/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" }, - "engines": { - "node": ">=6.9.0" + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/dom": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/dom/-/dom-4.11.0.tgz", - "integrity": "sha512-8u9USBEpGiQvVZeWSY82Ze3Yrwj5JkmmPUF+HfKvqywFlYIZfYLLc5lNrvUCqw7klIje+LO3MnKR3kfRx/uozA==", + "node_modules/@wordpress/core-data/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "7.25.7", - "@wordpress/deprecated": "*" + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/dom-ready": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/dom-ready/-/dom-ready-4.7.0.tgz", - "integrity": "sha512-moMbRCPNfgCc0dT0waEr0renEsptnDMV89fGpMijA66IyvYoYsxDT57w2JqHiaKbTvbIBmgdNgDjcVgZGv5JoA==", + "node_modules/@wordpress/core-data/node_modules/@wordpress/date": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", + "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0" + "@wordpress/deprecated": "^4.51.0", + "moment": "^2.29.4", + "moment-timezone": "^0.5.40" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/dom/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", + "node_modules/@wordpress/core-data/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", + "license": "GPL-2.0-or-later", "dependencies": { - "regenerator-runtime": "^0.14.0" + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=18.12.0", + "npm": ">=8.19.2" } }, - "node_modules/@wordpress/e2e-test-utils-playwright": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/e2e-test-utils-playwright/-/e2e-test-utils-playwright-1.7.0.tgz", - "integrity": "sha512-vmUyIqE0vmpCbfrsW2F9oZRWVN/0Ta2+vjRqpT0c8f9BbRV5L80I3o7BqkTFFPsbapafUui93taNZNNYEn2eLQ==", - "dev": true, + "node_modules/@wordpress/core-data/node_modules/@wordpress/icons": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-15.2.0.tgz", + "integrity": "sha512-g/1a4eTNH/mCluvmryNcYAg1GxsjY6xGjfGJRq3z44SEcB8jAZyEQtqdcGQ+o2kHelKhmmqS8WAowxif44ZgNQ==", "license": "GPL-2.0-or-later", "dependencies": { - "change-case": "^4.1.2", - "form-data": "^4.0.0", - "get-port": "^5.1.1", - "lighthouse": "^10.4.0", - "mime": "^3.0.0", - "web-vitals": "^4.2.1" + "@wordpress/element": "^8.3.0", + "@wordpress/primitives": "^4.51.0", + "change-case": "^4.1.2" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "@playwright/test": ">=1" + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/element": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-6.11.0.tgz", - "integrity": "sha512-UvHFYkT+EEaXEyEfw+iqLHRO9OwBjjsUydEMHcqntzkNcsYeAbmaL9V8R9ikXHLe6ftdbkwoXgF85xVPhVsL+Q==", + "node_modules/@wordpress/core-data/node_modules/@wordpress/primitives": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "7.25.7", - "@types/react": "^18.2.79", - "@types/react-dom": "^18.2.25", - "@wordpress/escape-html": "*", - "change-case": "^4.1.2", - "is-plain-object": "^5.0.0", - "react": "^18.3.0", - "react-dom": "^18.3.0" + "@wordpress/element": "^8.3.0", + "clsx": "^2.1.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/element/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, + "node_modules/@wordpress/core-data/node_modules/@wordpress/style-runtime": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", + "integrity": "sha512-PeAcF7qoIMg9ChS5SfkRrLLcUx9D7Te6weRcQmoKYgxE7jSzzXpoaiy3Z+Us+ChyisolF4xhTg5DblMBPL1iug==", + "license": "GPL-2.0-or-later", "engines": { - "node": ">=6.9.0" + "node": ">=20.10.0", + "npm": ">=10.2.3" } }, - "node_modules/@wordpress/element/node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "license": "MIT", + "node_modules/@wordpress/core-data/node_modules/@wordpress/theme": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/theme/-/theme-1.0.0.tgz", + "integrity": "sha512-zPwDgv7xx3f4h+lLCq95szofMAMjSIlkIIfR7U2cxQws5J6XnnTsOxHWJTE6V4jPzS19vzFdQdZ9wiR/X3c0Lw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/compose": "^8.4.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "colorjs.io": "^0.6.0", + "memize": "^2.1.0" + }, "engines": { - "node": ">=0.10.0" + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "esbuild": "^0.27.2", + "postcss": "^8.0.0", + "react": "^18 || ^19", + "react-dom": "^18 || ^19", + "stylelint": "^16.8.2", + "vite": "^7.3.2" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "postcss": { + "optional": true + }, + "stylelint": { + "optional": true + }, + "vite": { + "optional": true + } } }, - "node_modules/@wordpress/escape-html": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-3.7.0.tgz", - "integrity": "sha512-VqLQGNMs1BF6LnS+5eNjpM/sCUQhjn4QOfhDlWdVDi0ZxpZgssPzKhJ1ils/7FC0qF3vrMg8EH5xXxw2xz8A/w==", + "node_modules/@wordpress/core-data/node_modules/@wordpress/ui": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/@wordpress/ui/-/ui-0.18.0.tgz", + "integrity": "sha512-TIMsjaRl5/QJEjKbtoa0YAhzVdcvAk/FmA9rgJVR6oG/l6+s0WgoebGASEVyRyoOstq45xB7PzYMdjVs7iS0zg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0" + "@base-ui/react": "^1.6.0", + "@wordpress/a11y": "^4.51.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/theme": "^1.0.0", + "clsx": "^2.1.1", + "tabbable": "^6.4.0" }, "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/eslint-plugin": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-21.0.0.tgz", - "integrity": "sha512-4ioakbwSZNL8eXkfK0hcY93e5Fj9dZljxj3lEFkCBWMkSpU8/pPw/7UMS0OBbGQK8rqmvnXF1y/LFH7ihCxuww==", - "dev": true, + "node_modules/@wordpress/core-data/node_modules/@wordpress/upload-media": { + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/@wordpress/upload-media/-/upload-media-0.36.0.tgz", + "integrity": "sha512-Dl1IIVrSoSuoOBp2vyncgi7lFHJpAac104WR6t66wf0YyCg7xih0XDVneISw1N3ivZ8fEZHXSz2TZ5gz6GmSqQ==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/eslint-parser": "^7.16.0", - "@typescript-eslint/eslint-plugin": "^6.4.1", - "@typescript-eslint/parser": "^6.4.1", - "@wordpress/babel-preset-default": "^8.7.0", - "@wordpress/prettier-config": "^4.7.0", - "cosmiconfig": "^7.0.0", - "eslint-config-prettier": "^8.3.0", - "eslint-plugin-import": "^2.25.2", - "eslint-plugin-jest": "^27.2.3", - "eslint-plugin-jsdoc": "^46.4.6", - "eslint-plugin-jsx-a11y": "^6.5.1", - "eslint-plugin-playwright": "^0.15.3", - "eslint-plugin-prettier": "^5.0.0", - "eslint-plugin-react": "^7.27.0", - "eslint-plugin-react-hooks": "^4.3.0", - "globals": "^13.12.0", - "requireindex": "^1.2.0" + "@wordpress/blob": "^4.51.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/data": "^10.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/preferences": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/url": "^4.51.0", + "@wordpress/video-conversion": "^0.2.0", + "@wordpress/vips": "^2.4.0", + "uuid": "^14.0.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "@babel/core": ">=7", - "eslint": ">=8", - "prettier": ">=3", - "typescript": ">=4" + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" }, "peerDependenciesMeta": { - "prettier": { - "optional": true - }, - "typescript": { + "@types/react": { "optional": true } } }, - "node_modules/@wordpress/eslint-plugin/node_modules/cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", - "dev": true, + "node_modules/@wordpress/core-data/node_modules/date-fns": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.4.0.tgz", + "integrity": "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==", "license": "MIT", - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" } }, - "node_modules/@wordpress/eslint-plugin/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^0.20.2" - }, + "node_modules/@wordpress/core-data/node_modules/gradient-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-1.2.0.tgz", + "integrity": "sha512-6ABGa9CR7WR/0pAJicBy5SJkiikbFM6kf/JjykwX7x+t+s8ORWVnlbi6FkHeFFb36yWsjUpHqSYrygd7ofEUqA==", "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/@wordpress/eslint-plugin/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "license": "(MIT OR CC0-1.0)", + "node_modules/@wordpress/core-data/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "license": "MIT", "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/@wordpress/hooks": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-4.11.0.tgz", - "integrity": "sha512-MvsbtOCXKSxJbdgTM5fx8JDbtjA5dlM8GEyr1LEz+1AHwWy5loQx17DEodAkHPu3NCelJ18LSL6AJYJ9simB8g==", + "node_modules/@wordpress/core-data/node_modules/path-to-regexp": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", + "license": "MIT" + }, + "node_modules/@wordpress/core-data/node_modules/uuid": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.1.tgz", + "integrity": "sha512-6ZxzVpzDXDa3bJWaHilVayA+BH/1zmxCJoVgvmqJnid/gPoKHxUrS/aC/T6LGQtNHT+XHG9fXPJB4d+IrU30Ew==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist-node/bin/uuid" + } + }, + "node_modules/@wordpress/data": { + "version": "10.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/data/-/data-10.51.0.tgz", + "integrity": "sha512-KwlrgU+PGd+l4QyrwuCvbHE5HUC1CU6pqD19WZr+yOD1XRmIWZ+LZNwrEdFlhCu8aOG9+e131k1zmAMZign/mA==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "7.25.7" + "@wordpress/compose": "^8.4.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/redux-routine": "^5.51.0", + "deepmerge": "^4.3.1", + "equivalent-key-map": "^0.2.2", + "is-plain-object": "^5.0.0", + "is-promise": "^4.0.0", + "redux": "^5.0.1", + "rememo": "^4.0.2", + "use-memo-one": "^1.1.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/hooks/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", + "node_modules/@wordpress/data/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", + "license": "GPL-2.0-or-later", "dependencies": { - "regenerator-runtime": "^0.14.0" + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/html-entities": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/html-entities/-/html-entities-4.11.0.tgz", - "integrity": "sha512-OMpq/oP7CvfMojedgeI9unIAx0wuB8n10JwM72xi0CI/NYuymAcaOoD3OGkmS+4i6IW/geC3AooyWwRduzY85Q==", + "node_modules/@wordpress/data/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "7.25.7" + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/html-entities/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", + "node_modules/@wordpress/data/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, "engines": { - "node": ">=6.9.0" + "node": ">=0.10.0" } }, - "node_modules/@wordpress/i18n": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/i18n/-/i18n-5.11.0.tgz", - "integrity": "sha512-U8CoXAIcmxcOHD1VeGRoo6iLjx71eE4LstQjHjKGT3J4Lz43O8MunT+/cm606FCcQgunPCyaALquD2vSf+JD9w==", + "node_modules/@wordpress/data/node_modules/redux": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/redux/-/redux-5.0.1.tgz", + "integrity": "sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==", + "license": "MIT" + }, + "node_modules/@wordpress/dataviews": { + "version": "17.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/dataviews/-/dataviews-17.2.0.tgz", + "integrity": "sha512-EMLKjLmqoK7+TaFaqoFI2qSxichJO82NOUNh7a1B6UGvLN/XhLs7HGVFOrIBCHxgBC1ijo3EVgZ+JtiBMCE0aw==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "7.25.7", - "@wordpress/hooks": "*", - "gettext-parser": "^1.3.1", - "memize": "^2.1.0", - "sprintf-js": "^1.1.1", - "tannin": "^1.2.0" - }, - "bin": { - "pot-to-php": "tools/pot-to-php.js" + "@ariakit/react": "^0.4.32", + "@wordpress/a11y": "^4.51.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/components": "^37.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/data": "^10.51.0", + "@wordpress/date": "^5.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/ui": "^0.18.0", + "@wordpress/warning": "^3.51.0", + "clsx": "^2.1.1", + "colord": "^2.9.3", + "date-fns": "^4.1.0", + "deepmerge": "^4.3.1", + "fast-deep-equal": "^3.1.3", + "remove-accents": "^0.5.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/i18n/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", + "node_modules/@wordpress/dataviews/node_modules/@ariakit/react": { + "version": "0.4.35", + "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", + "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", "license": "MIT", "dependencies": { - "regenerator-runtime": "^0.14.0" + "@ariakit/react-components": "0.3.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/ariakit" + }, + "peerDependencies": { + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/@wordpress/dataviews/node_modules/@base-ui/react": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", + "integrity": "sha512-/jzjTWJYXhRFO45Bev9lc3cHbmjzCMpUqbMZ2AgKy/z25mY9B6shGSNcXcjQar9n5doM0KYW1W8fcFv2jZBuMw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.29.2", + "@base-ui/utils": "0.3.1", + "@floating-ui/react-dom": "^2.1.8", + "@floating-ui/utils": "^0.2.11", + "use-sync-external-store": "^1.6.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@date-fns/tz": "^1.2.0", + "@types/react": "^17 || ^18 || ^19", + "date-fns": "^4.0.0", + "react": "^17 || ^18 || ^19", + "react-dom": "^17 || ^18 || ^19" + }, + "peerDependenciesMeta": { + "@date-fns/tz": { + "optional": true + }, + "@types/react": { + "optional": true + }, + "date-fns": { + "optional": true + } } }, - "node_modules/@wordpress/i18n/node_modules/sprintf-js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", - "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", - "license": "BSD-3-Clause" + "node_modules/@wordpress/dataviews/node_modules/@types/gradient-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", + "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", + "license": "MIT" }, - "node_modules/@wordpress/icons": { - "version": "9.49.0", - "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-9.49.0.tgz", - "integrity": "sha512-Z8F+ledkfkcKDuS1c/RkM0dEWdfv2AXs6bCgey89p0atJSscf7qYbMJR9zE5rZ5aqXyFfV0DAFKJEgayNqneNQ==", - "dev": true, + "node_modules/@wordpress/dataviews/node_modules/@wordpress/base-styles": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", + "integrity": "sha512-w+n/AWSNfDx5RhPIpKCi7Iptn+8+Sll8uJhyx6X62zkkHDX51H2vZTU2XaXOQGx5U7xQcaVTbHjVDgYBwkU4Vg==", "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^5.35.0", - "@wordpress/primitives": "^3.56.0" - }, "engines": { - "node": ">=12" + "node": ">=18.12.0", + "npm": ">=8.19.2" } }, - "node_modules/@wordpress/icons/node_modules/@wordpress/element": { - "version": "5.35.0", - "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-5.35.0.tgz", - "integrity": "sha512-puswpGcIdS+0A2g28uHriMkZqqRCmzFczue5Tk99VNtzBdehyk7Ae+DZ4xw5yT6GqYai8NTqv6MRwCB78uh5Mw==", - "dev": true, + "node_modules/@wordpress/dataviews/node_modules/@wordpress/components": { + "version": "37.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-37.0.0.tgz", + "integrity": "sha512-Lol3iUujNnn4uHxI4VARDVEJIFUKlBtZUMcSFWofiYRZc8aV5BplyKC+sRAhKm+KFNBQjZtqd4PdixtaOHuX6w==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@types/react": "^18.2.79", - "@types/react-dom": "^18.2.25", - "@wordpress/escape-html": "^2.58.0", + "@ariakit/react": "^0.4.32", + "@date-fns/utc": "^2.1.1", + "@emotion/cache": "^11.14.0", + "@emotion/css": "^11.13.5", + "@emotion/react": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/styled": "^11.14.1", + "@emotion/utils": "^1.4.2", + "@floating-ui/react-dom": "^2.0.8", + "@types/gradient-parser": "^1.1.0", + "@types/highlight-words-core": "^1.2.1", + "@use-gesture/react": "^10.3.1", + "@wordpress/a11y": "^4.51.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/date": "^5.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/escape-html": "^3.51.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/ui": "^0.18.0", + "@wordpress/warning": "^3.51.0", "change-case": "^4.1.2", + "clsx": "^2.1.1", + "colord": "^2.9.3", + "csstype": "^3.2.3", + "date-fns": "^4.1.0", + "deepmerge": "^4.3.1", + "fast-deep-equal": "^3.1.3", + "framer-motion": "^11.15.0", + "gradient-parser": "^1.1.1", + "highlight-words-core": "^1.2.2", "is-plain-object": "^5.0.0", - "react": "^18.3.0", - "react-dom": "^18.3.0" + "memize": "^2.1.0", + "path-to-regexp": "^6.2.1", + "re-resizable": "^6.4.0", + "react-colorful": "^5.6.1", + "react-day-picker": "^9.7.0", + "remove-accents": "^0.5.0", + "uuid": "^14.0.0" }, "engines": { - "node": ">=12" + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/icons/node_modules/@wordpress/escape-html": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-2.58.0.tgz", - "integrity": "sha512-9YJXMNfzkrhHEVP1jFEhgijbZqW8Mt3NHIMZjIQoWtBf7QE86umpYpGGBXzYC0YlpGTRGzZTBwYaqFKxjeaSgA==", - "dev": true, + "node_modules/@wordpress/dataviews/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0" + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" }, "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/icons/node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/interactivity": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/interactivity/-/interactivity-6.7.0.tgz", - "integrity": "sha512-DWzcfrZ7JY7nKYeTO4hfwgxAWrI4xq5GuhpWiT70FGLX9Zr78BuxI1Nt3t15gVS6/IJGruUoiBtWTsE/1Z/Qjw==", + "node_modules/@wordpress/dataviews/node_modules/@wordpress/date": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", + "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", "license": "GPL-2.0-or-later", "dependencies": { - "@preact/signals": "^1.2.2", - "preact": "^10.19.3" + "@wordpress/deprecated": "^4.51.0", + "moment": "^2.29.4", + "moment-timezone": "^0.5.40" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/interactivity-router": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/interactivity-router/-/interactivity-router-2.7.0.tgz", - "integrity": "sha512-0Bhxjcnu/mhiwIXk89Da7EaBaRf1/p9mzwGoXoFlblVvD+FdMFg0X1C/9cUW6axg1aT7rm130U4tm4FDwqBSug==", + "node_modules/@wordpress/dataviews/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", "license": "GPL-2.0-or-later", "dependencies": { - "@wordpress/interactivity": "^6.7.0" + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/is-shallow-equal": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-5.11.0.tgz", - "integrity": "sha512-LWMFSHcsD/FecJytZP3uboNUkVyowUN4HtFz3rJkAjpcvgZV9S++4ALejzN9jegOWfD6KNKAyWc7FyV25WXPYw==", + "node_modules/@wordpress/dataviews/node_modules/@wordpress/icons": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-15.2.0.tgz", + "integrity": "sha512-g/1a4eTNH/mCluvmryNcYAg1GxsjY6xGjfGJRq3z44SEcB8jAZyEQtqdcGQ+o2kHelKhmmqS8WAowxif44ZgNQ==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "7.25.7" + "@wordpress/element": "^8.3.0", + "@wordpress/primitives": "^4.51.0", + "change-case": "^4.1.2" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" - } - }, - "node_modules/@wordpress/is-shallow-equal/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" }, - "engines": { - "node": ">=6.9.0" + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/jest-console": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-8.7.0.tgz", - "integrity": "sha512-tTDsAGfhv7B6jSRUN8lA6PBBU2UKi0+ICubA8tRID1dV8ekLNr5bu01A9BHwoROajiZsCcEvaAMGbWdSO7TsvQ==", - "dev": true, + "node_modules/@wordpress/dataviews/node_modules/@wordpress/primitives": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "jest-matcher-utils": "^29.6.2" + "@wordpress/element": "^8.3.0", + "clsx": "^2.1.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "jest": ">=29" + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/jest-preset-default": { - "version": "12.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-12.7.0.tgz", - "integrity": "sha512-L/A75VlaI8OCNiol2sdCIY+ypFmosQIUQPcvmWu4nhEjen6CaIsX3VdRVQGtFrc0YgOyY+H2SsfKtEH9t/mQaw==", - "dev": true, + "node_modules/@wordpress/dataviews/node_modules/@wordpress/style-runtime": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", + "integrity": "sha512-PeAcF7qoIMg9ChS5SfkRrLLcUx9D7Te6weRcQmoKYgxE7jSzzXpoaiy3Z+Us+ChyisolF4xhTg5DblMBPL1iug==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=20.10.0", + "npm": ">=10.2.3" + } + }, + "node_modules/@wordpress/dataviews/node_modules/@wordpress/theme": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/theme/-/theme-1.0.0.tgz", + "integrity": "sha512-zPwDgv7xx3f4h+lLCq95szofMAMjSIlkIIfR7U2cxQws5J6XnnTsOxHWJTE6V4jPzS19vzFdQdZ9wiR/X3c0Lw==", "license": "GPL-2.0-or-later", "dependencies": { - "@wordpress/jest-console": "^8.7.0", - "babel-jest": "^29.6.2" + "@wordpress/compose": "^8.4.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "colorjs.io": "^0.6.0", + "memize": "^2.1.0" }, "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" }, "peerDependencies": { - "@babel/core": ">=7", - "jest": ">=29" + "@types/react": "^18 || ^19", + "esbuild": "^0.27.2", + "postcss": "^8.0.0", + "react": "^18 || ^19", + "react-dom": "^18 || ^19", + "stylelint": "^16.8.2", + "vite": "^7.3.2" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "postcss": { + "optional": true + }, + "stylelint": { + "optional": true + }, + "vite": { + "optional": true + } } }, - "node_modules/@wordpress/keyboard-shortcuts": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/keyboard-shortcuts/-/keyboard-shortcuts-5.7.0.tgz", - "integrity": "sha512-9GmYcJ/jX27UM2sR07i/pGo4uQs/ry0F9K86+aMfR9Clq8PU40z0y+K4U2BEOSBJaVeaM2G2AA1XL68jc5DR8g==", + "node_modules/@wordpress/dataviews/node_modules/@wordpress/ui": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/@wordpress/ui/-/ui-0.18.0.tgz", + "integrity": "sha512-TIMsjaRl5/QJEjKbtoa0YAhzVdcvAk/FmA9rgJVR6oG/l6+s0WgoebGASEVyRyoOstq45xB7PzYMdjVs7iS0zg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/data": "^10.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/keycodes": "^4.7.0" + "@base-ui/react": "^1.6.0", + "@wordpress/a11y": "^4.51.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/theme": "^1.0.0", + "clsx": "^2.1.1", + "tabbable": "^6.4.0" }, "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" }, "peerDependencies": { - "react": "^18.0.0" + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/keycodes": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/keycodes/-/keycodes-4.7.0.tgz", - "integrity": "sha512-x8I0xjRM8U0RnpFHWN9mA+x3MqjhJNBldiCpb59GTi3BIzPeDPgxbosAsAAgF0pYdDtGyiRkrOZA23NTia63TA==", + "node_modules/@wordpress/dataviews/node_modules/date-fns": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.4.0.tgz", + "integrity": "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, + "node_modules/@wordpress/dataviews/node_modules/gradient-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-1.2.0.tgz", + "integrity": "sha512-6ABGa9CR7WR/0pAJicBy5SJkiikbFM6kf/JjykwX7x+t+s8ORWVnlbi6FkHeFFb36yWsjUpHqSYrygd7ofEUqA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/dataviews/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/dataviews/node_modules/path-to-regexp": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", + "license": "MIT" + }, + "node_modules/@wordpress/dataviews/node_modules/uuid": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.1.tgz", + "integrity": "sha512-6ZxzVpzDXDa3bJWaHilVayA+BH/1zmxCJoVgvmqJnid/gPoKHxUrS/aC/T6LGQtNHT+XHG9fXPJB4d+IrU30Ew==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist-node/bin/uuid" + } + }, + "node_modules/@wordpress/date": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-4.58.0.tgz", + "integrity": "sha512-yFT7DU0H9W0lsDytMaVMmjho08X1LeBMIQMppxdtKB04Ujx58hVh7gtunOsstUQ7pVg23nE2eLaVfx5JOdjzAw==", + "dev": true, "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/i18n": "^5.7.0" + "@wordpress/deprecated": "^3.58.0", + "moment": "^2.29.4", + "moment-timezone": "^0.5.40" }, "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" + "node": ">=12" } }, - "node_modules/@wordpress/notices": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/notices/-/notices-5.7.0.tgz", - "integrity": "sha512-QF7PT36YHPgbk1xmHHAwn4absKzWy32zdZB/PybK7XktvsB1m9VK9uS0Jyw7wAdJrOwNkPiBkBTJR2LsUI41tg==", + "node_modules/@wordpress/date/node_modules/@wordpress/deprecated": { + "version": "3.58.0", + "resolved": "https://registry.npmjs.org/@wordpress/deprecated/-/deprecated-3.58.0.tgz", + "integrity": "sha512-knweE2lLEUxWRr6A48sHiO0ww5pPybGe2NVIZVq/y7EaYCMdpy6gYA0ZdVqMKZvtxKKqicJfwigcn+hinsTvUQ==", + "dev": true, "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", - "@wordpress/a11y": "^4.7.0", - "@wordpress/data": "^10.7.0" + "@wordpress/hooks": "^3.58.0" }, "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "react": "^18.0.0" + "node": ">=12" } }, - "node_modules/@wordpress/npm-package-json-lint-config": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/npm-package-json-lint-config/-/npm-package-json-lint-config-5.7.0.tgz", - "integrity": "sha512-D2hjkL4lVgQ60JdyRY5od8PqiPquGaxHjk3MN0AyGcw42jYcuvN7+lDM/FHr4GVJpa0CGKey6Qe56UMiBBMUQw==", + "node_modules/@wordpress/date/node_modules/@wordpress/hooks": { + "version": "3.58.0", + "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-3.58.0.tgz", + "integrity": "sha512-9LB0ZHnZRQlORttux9t/xbAskF+dk2ujqzPGsVzc92mSKpQP3K2a5Wy74fUnInguB1vLUNHT6nrNdkVom5qX1Q==", "dev": true, "license": "GPL-2.0-or-later", - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" + "dependencies": { + "@babel/runtime": "^7.16.0" }, - "peerDependencies": { - "npm-package-json-lint": ">=6.0.0" + "engines": { + "node": ">=12" } }, - "node_modules/@wordpress/patterns": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/patterns/-/patterns-2.7.0.tgz", - "integrity": "sha512-6aE/+bSsAqffzqWLKReN9o5Szk4zMyNzkCsclSPjNp/hBCY7HYKfqlD6TNqLWKLlHgw+mYmtw5gZho6U3hRO9Q==", + "node_modules/@wordpress/dependency-extraction-webpack-plugin": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-6.7.0.tgz", + "integrity": "sha512-ANsSDMkmb0NGG16NNx9uliXc6hwuE4FJLWdmqju6SGPEMuHa5pr2Xl5hCd154WzoC2VVhYMGNUYoQBRJDFNfkA==", + "dev": true, "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/a11y": "^4.7.0", - "@wordpress/block-editor": "^14.2.0", - "@wordpress/blocks": "^13.7.0", - "@wordpress/components": "^28.7.0", - "@wordpress/compose": "^7.7.0", - "@wordpress/core-data": "^7.7.0", - "@wordpress/data": "^10.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/html-entities": "^4.7.0", - "@wordpress/i18n": "^5.7.0", - "@wordpress/icons": "^10.7.0", - "@wordpress/notices": "^5.7.0", - "@wordpress/private-apis": "^1.7.0", - "@wordpress/url": "^4.7.0" + "json2php": "^0.0.7" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" - } - }, - "node_modules/@wordpress/patterns/node_modules/@ariakit/core": { - "version": "0.4.10", - "resolved": "https://registry.npmjs.org/@ariakit/core/-/core-0.4.10.tgz", - "integrity": "sha512-mX3EabQbfVh5uTjsTJ3+gjj7KGdTNhIN0qZHJd5Z2iPUnKl9NBy23Lgu6PEskpVsKAZ3proirjguD7U9fKMs/A==", - "license": "MIT" - }, - "node_modules/@wordpress/patterns/node_modules/@ariakit/react": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.11.tgz", - "integrity": "sha512-nLpPrmNcspqNhk4o+epsgeZfP1+Fkh4uIzNe5yrFkXolRkqHGKAxl4Hi82e0yxIBUbYbZIEwsZQQVceF1L6xrw==", - "license": "MIT", - "dependencies": { - "@ariakit/react-core": "0.4.11" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ariakit" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/@wordpress/patterns/node_modules/@ariakit/react-core": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/@ariakit/react-core/-/react-core-0.4.11.tgz", - "integrity": "sha512-i6KedWhjZkNC7tMEKO0eNjjq2HRPiHyGaBS2x2VaWwzBepoYtjyvxRXyqLJ3gaiNdlwckN1TZsRDfD+viy13IQ==", - "license": "MIT", - "dependencies": { - "@ariakit/core": "0.4.10", - "@floating-ui/dom": "^1.0.0", - "use-sync-external-store": "^1.2.0" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + "webpack": "^5.0.0" } }, - "node_modules/@wordpress/patterns/node_modules/@wordpress/components": { - "version": "28.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-28.7.0.tgz", - "integrity": "sha512-oxF+pAZHJ3L9p42wMDeclo6P0TOZW1+U1pKmKju33aDsAwINOU2ELpVFyIEHkA9txn8VU4lxpnNIsYY6RGlW8w==", + "node_modules/@wordpress/deprecated": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/deprecated/-/deprecated-4.51.0.tgz", + "integrity": "sha512-6pgnUvz7oQRwpJh+aM/dPBs5GBPTyOj+XKGeyzKPKHqbaWeSzkHVI9bhgs+Ajamn/jERK5TgH+VAq/gwfvfO+g==", "license": "GPL-2.0-or-later", "dependencies": { - "@ariakit/react": "^0.4.10", - "@babel/runtime": "^7.16.0", - "@emotion/cache": "^11.7.1", - "@emotion/css": "^11.7.1", - "@emotion/react": "^11.7.1", - "@emotion/serialize": "^1.0.2", - "@emotion/styled": "^11.6.0", - "@emotion/utils": "^1.0.0", - "@floating-ui/react-dom": "^2.0.8", - "@types/gradient-parser": "0.1.3", - "@types/highlight-words-core": "1.2.1", - "@use-gesture/react": "^10.3.1", - "@wordpress/a11y": "^4.7.0", - "@wordpress/compose": "^7.7.0", - "@wordpress/date": "^5.7.0", - "@wordpress/deprecated": "^4.7.0", - "@wordpress/dom": "^4.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/escape-html": "^3.7.0", - "@wordpress/hooks": "^4.7.0", - "@wordpress/html-entities": "^4.7.0", - "@wordpress/i18n": "^5.7.0", - "@wordpress/icons": "^10.7.0", - "@wordpress/is-shallow-equal": "^5.7.0", - "@wordpress/keycodes": "^4.7.0", - "@wordpress/primitives": "^4.7.0", - "@wordpress/private-apis": "^1.7.0", - "@wordpress/rich-text": "^7.7.0", - "@wordpress/warning": "^3.7.0", - "change-case": "^4.1.2", - "clsx": "^2.1.1", - "colord": "^2.7.0", - "date-fns": "^3.6.0", - "deepmerge": "^4.3.0", - "fast-deep-equal": "^3.1.3", - "framer-motion": "^11.1.9", - "gradient-parser": "^0.1.5", - "highlight-words-core": "^1.2.2", - "is-plain-object": "^5.0.0", - "memize": "^2.1.0", - "path-to-regexp": "^6.2.1", - "re-resizable": "^6.4.0", - "react-colorful": "^5.3.1", - "remove-accents": "^0.5.0", - "use-lilius": "^2.0.5", - "uuid": "^9.0.1" + "@wordpress/hooks": "^4.51.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" - }, - "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" } }, - "node_modules/@wordpress/patterns/node_modules/@wordpress/date": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.7.0.tgz", - "integrity": "sha512-iMwGP/Sbz+CCgqxUUKg8W2sZiwvr9K1q7s0rHuy3YVJT46QDNpN0A6HGNmckI0z4C+CRDvOIa09OMgTz1igUAw==", + "node_modules/@wordpress/dom": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/dom/-/dom-4.51.0.tgz", + "integrity": "sha512-POkQoNBzLFlHaVzJakgF5X/xj4nERsLa5uTAvt3i7YFr9tep3uLtOFCJiiZM1vzO5iVtYSBWxmWyDkJPsOSy6g==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/deprecated": "^4.7.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" + "@wordpress/deprecated": "^4.51.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/patterns/node_modules/@wordpress/icons": { - "version": "10.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-10.7.0.tgz", - "integrity": "sha512-4cvi9ZIaz6IYRcOjVuALtDLPtzgt1zK+E9LskL0PAi3TJhoh746q28wv6ycP+KtJEiI+bsTf2Qu5dmCePGR/jA==", + "node_modules/@wordpress/dom-ready": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/dom-ready/-/dom-ready-4.51.0.tgz", + "integrity": "sha512-O/ivmzG+o44CicTW+c17KBXlmjRoVp4VGIyyEQDD52H5YH+gX7i15FuEPk6G2e7Rqz4DCvCS5yD7eY9Zb3z1WA==", "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.7.0", - "@wordpress/primitives": "^4.7.0" - }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/patterns/node_modules/@wordpress/primitives": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.7.0.tgz", - "integrity": "sha512-PcAAIMT8+WqKB2HAeQlLmrcQyzyhNw9IeToJoxz+VKcc/7uLfGHplsDvtHY/X4jH8QlwlVwHSiqW/McTcxoUvQ==", + "node_modules/@wordpress/e2e-test-utils-playwright": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/e2e-test-utils-playwright/-/e2e-test-utils-playwright-1.7.0.tgz", + "integrity": "sha512-vmUyIqE0vmpCbfrsW2F9oZRWVN/0Ta2+vjRqpT0c8f9BbRV5L80I3o7BqkTFFPsbapafUui93taNZNNYEn2eLQ==", + "dev": true, "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.7.0", - "clsx": "^2.1.1" + "change-case": "^4.1.2", + "form-data": "^4.0.0", + "get-port": "^5.1.1", + "lighthouse": "^10.4.0", + "mime": "^3.0.0", + "web-vitals": "^4.2.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^18.0.0" + "@playwright/test": ">=1" } }, - "node_modules/@wordpress/patterns/node_modules/is-plain-object": { - "version": "5.0.0", + "node_modules/@wordpress/element": { + "version": "6.46.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-6.46.0.tgz", + "integrity": "sha512-hjnrqZi0cZVdkmN0xQavKfSQJYAkb9pVSnDPpuX65OLxeD9/EWkIXvFzBb+nH8c4NzKKSqQU96XCTQrH37OCIA==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/escape-html": "^3.46.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.0", + "react-dom": "^18.3.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/element/node_modules/is-plain-object": { + "version": "5.0.0", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", "license": "MIT", @@ -8435,220 +9347,196 @@ "node": ">=0.10.0" } }, - "node_modules/@wordpress/patterns/node_modules/path-to-regexp": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", - "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", - "license": "MIT" - }, - "node_modules/@wordpress/patterns/node_modules/uuid": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", - "funding": [ - "https://github.com/sponsors/broofa", - "https://github.com/sponsors/ctavan" - ], - "license": "MIT", - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/@wordpress/postcss-plugins-preset": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-5.7.0.tgz", - "integrity": "sha512-vNQGDGesErJJEHGqWAJOYqMnSfrKwObBToDd6nHD50OZ/ECydAuDwSQ97D4ZkH+y7n6zedz+/pCLcc/DnLVJSw==", - "dev": true, + "node_modules/@wordpress/escape-html": { + "version": "3.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-3.51.0.tgz", + "integrity": "sha512-0jPCm9WqpB7S+mdhkjjikBzGo06xAgvmgwtSP1v44P5tKNGujcbsvKj+JW0m60FJxNBmaZPvGu2e/DlY4iljVQ==", "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/base-styles": "^5.7.0", - "autoprefixer": "^10.2.5" - }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" - }, - "peerDependencies": { - "postcss": "^8.0.0" } }, - "node_modules/@wordpress/preferences": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/preferences/-/preferences-4.7.0.tgz", - "integrity": "sha512-zbzmim/kqWjuBusZjkm5sruugX88TzbadpuNmYklMvsd3jNXpbyPXWfzGcdj/Cl2v6sC1Gbt88tkfif73iPHsQ==", + "node_modules/@wordpress/eslint-plugin": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-21.0.0.tgz", + "integrity": "sha512-4ioakbwSZNL8eXkfK0hcY93e5Fj9dZljxj3lEFkCBWMkSpU8/pPw/7UMS0OBbGQK8rqmvnXF1y/LFH7ihCxuww==", + "dev": true, "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/a11y": "^4.7.0", - "@wordpress/components": "^28.7.0", - "@wordpress/compose": "^7.7.0", - "@wordpress/data": "^10.7.0", - "@wordpress/deprecated": "^4.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/i18n": "^5.7.0", - "@wordpress/icons": "^10.7.0", - "@wordpress/private-apis": "^1.7.0", - "clsx": "^2.1.1" + "@babel/eslint-parser": "^7.16.0", + "@typescript-eslint/eslint-plugin": "^6.4.1", + "@typescript-eslint/parser": "^6.4.1", + "@wordpress/babel-preset-default": "^8.7.0", + "@wordpress/prettier-config": "^4.7.0", + "cosmiconfig": "^7.0.0", + "eslint-config-prettier": "^8.3.0", + "eslint-plugin-import": "^2.25.2", + "eslint-plugin-jest": "^27.2.3", + "eslint-plugin-jsdoc": "^46.4.6", + "eslint-plugin-jsx-a11y": "^6.5.1", + "eslint-plugin-playwright": "^0.15.3", + "eslint-plugin-prettier": "^5.0.0", + "eslint-plugin-react": "^7.27.0", + "eslint-plugin-react-hooks": "^4.3.0", + "globals": "^13.12.0", + "requireindex": "^1.2.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" + "@babel/core": ">=7", + "eslint": ">=8", + "prettier": ">=3", + "typescript": ">=4" + }, + "peerDependenciesMeta": { + "prettier": { + "optional": true + }, + "typescript": { + "optional": true + } } }, - "node_modules/@wordpress/preferences/node_modules/@ariakit/core": { - "version": "0.4.10", - "resolved": "https://registry.npmjs.org/@ariakit/core/-/core-0.4.10.tgz", - "integrity": "sha512-mX3EabQbfVh5uTjsTJ3+gjj7KGdTNhIN0qZHJd5Z2iPUnKl9NBy23Lgu6PEskpVsKAZ3proirjguD7U9fKMs/A==", - "license": "MIT" - }, - "node_modules/@wordpress/preferences/node_modules/@ariakit/react": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.11.tgz", - "integrity": "sha512-nLpPrmNcspqNhk4o+epsgeZfP1+Fkh4uIzNe5yrFkXolRkqHGKAxl4Hi82e0yxIBUbYbZIEwsZQQVceF1L6xrw==", + "node_modules/@wordpress/eslint-plugin/node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dev": true, "license": "MIT", "dependencies": { - "@ariakit/react-core": "0.4.11" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ariakit" + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + "engines": { + "node": ">=10" } }, - "node_modules/@wordpress/preferences/node_modules/@ariakit/react-core": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/@ariakit/react-core/-/react-core-0.4.11.tgz", - "integrity": "sha512-i6KedWhjZkNC7tMEKO0eNjjq2HRPiHyGaBS2x2VaWwzBepoYtjyvxRXyqLJ3gaiNdlwckN1TZsRDfD+viy13IQ==", + "node_modules/@wordpress/eslint-plugin/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, "license": "MIT", "dependencies": { - "@ariakit/core": "0.4.10", - "@floating-ui/dom": "^1.0.0", - "use-sync-external-store": "^1.2.0" + "type-fest": "^0.20.2" }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@wordpress/preferences/node_modules/@wordpress/components": { - "version": "28.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-28.7.0.tgz", - "integrity": "sha512-oxF+pAZHJ3L9p42wMDeclo6P0TOZW1+U1pKmKju33aDsAwINOU2ELpVFyIEHkA9txn8VU4lxpnNIsYY6RGlW8w==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@ariakit/react": "^0.4.10", - "@babel/runtime": "^7.16.0", - "@emotion/cache": "^11.7.1", - "@emotion/css": "^11.7.1", - "@emotion/react": "^11.7.1", - "@emotion/serialize": "^1.0.2", - "@emotion/styled": "^11.6.0", - "@emotion/utils": "^1.0.0", - "@floating-ui/react-dom": "^2.0.8", - "@types/gradient-parser": "0.1.3", - "@types/highlight-words-core": "1.2.1", - "@use-gesture/react": "^10.3.1", - "@wordpress/a11y": "^4.7.0", - "@wordpress/compose": "^7.7.0", - "@wordpress/date": "^5.7.0", - "@wordpress/deprecated": "^4.7.0", - "@wordpress/dom": "^4.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/escape-html": "^3.7.0", - "@wordpress/hooks": "^4.7.0", - "@wordpress/html-entities": "^4.7.0", - "@wordpress/i18n": "^5.7.0", - "@wordpress/icons": "^10.7.0", - "@wordpress/is-shallow-equal": "^5.7.0", - "@wordpress/keycodes": "^4.7.0", - "@wordpress/primitives": "^4.7.0", - "@wordpress/private-apis": "^1.7.0", - "@wordpress/rich-text": "^7.7.0", - "@wordpress/warning": "^3.7.0", - "change-case": "^4.1.2", - "clsx": "^2.1.1", - "colord": "^2.7.0", - "date-fns": "^3.6.0", - "deepmerge": "^4.3.0", - "fast-deep-equal": "^3.1.3", - "framer-motion": "^11.1.9", - "gradient-parser": "^0.1.5", - "highlight-words-core": "^1.2.2", - "is-plain-object": "^5.0.0", - "memize": "^2.1.0", - "path-to-regexp": "^6.2.1", - "re-resizable": "^6.4.0", - "react-colorful": "^5.3.1", - "remove-accents": "^0.5.0", - "use-lilius": "^2.0.5", - "uuid": "^9.0.1" - }, + "node_modules/@wordpress/eslint-plugin/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "license": "(MIT OR CC0-1.0)", "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" + "node": ">=10" }, - "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@wordpress/preferences/node_modules/@wordpress/date": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.7.0.tgz", - "integrity": "sha512-iMwGP/Sbz+CCgqxUUKg8W2sZiwvr9K1q7s0rHuy3YVJT46QDNpN0A6HGNmckI0z4C+CRDvOIa09OMgTz1igUAw==", + "node_modules/@wordpress/global-styles-engine": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/@wordpress/global-styles-engine/-/global-styles-engine-1.18.0.tgz", + "integrity": "sha512-kCZhrQwoYNpi4jds9bKVAIxD1c5PLDIIzaspnlsy5oOrYbH57wbfe1KTPNId6o0M0Fr7aszCI7wuyM/S4/tJ4Q==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/deprecated": "^4.7.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" + "@wordpress/blocks": "^15.24.0", + "@wordpress/data": "^10.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-engine": "^2.51.0", + "colord": "^2.9.3", + "deepmerge": "^4.3.1", + "fast-deep-equal": "^3.1.3", + "is-plain-object": "^5.0.0", + "memize": "^2.1.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/preferences/node_modules/@wordpress/icons": { - "version": "10.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-10.7.0.tgz", - "integrity": "sha512-4cvi9ZIaz6IYRcOjVuALtDLPtzgt1zK+E9LskL0PAi3TJhoh746q28wv6ycP+KtJEiI+bsTf2Qu5dmCePGR/jA==", + "node_modules/@wordpress/global-styles-engine/node_modules/@wordpress/blocks": { + "version": "15.24.0", + "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-15.24.0.tgz", + "integrity": "sha512-C/OseZS0Znx7Wqd/RGJdVXnn4z9lLfJ/SNehzyJ1ViiBTktDNS5RWiYAYJ+kwJ5unBbTy1KDXC9PGzR0Ib4Y5g==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.7.0", - "@wordpress/primitives": "^4.7.0" + "@wordpress/autop": "^4.51.0", + "@wordpress/blob": "^4.51.0", + "@wordpress/block-serialization-default-parser": "^5.51.0", + "@wordpress/data": "^10.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/shortcode": "^4.51.0", + "@wordpress/warning": "^3.51.0", + "change-case": "^4.1.2", + "colord": "^2.9.3", + "fast-deep-equal": "^3.1.3", + "hpq": "^1.3.0", + "is-plain-object": "^5.0.0", + "marked": "^18.0.3", + "memize": "^2.1.0", + "react-is": "^18.3.0", + "remove-accents": "^0.5.0", + "simple-html-tokenizer": "^0.5.7", + "uuid": "^14.0.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/preferences/node_modules/@wordpress/primitives": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.7.0.tgz", - "integrity": "sha512-PcAAIMT8+WqKB2HAeQlLmrcQyzyhNw9IeToJoxz+VKcc/7uLfGHplsDvtHY/X4jH8QlwlVwHSiqW/McTcxoUvQ==", + "node_modules/@wordpress/global-styles-engine/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.7.0", - "clsx": "^2.1.1" + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" - }, - "peerDependencies": { - "react": "^18.0.0" } }, - "node_modules/@wordpress/preferences/node_modules/is-plain-object": { + "node_modules/@wordpress/global-styles-engine/node_modules/is-plain-object": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", @@ -8657,59 +9545,79 @@ "node": ">=0.10.0" } }, - "node_modules/@wordpress/preferences/node_modules/path-to-regexp": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", - "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", - "license": "MIT" - }, - "node_modules/@wordpress/preferences/node_modules/uuid": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "node_modules/@wordpress/global-styles-engine/node_modules/uuid": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.1.tgz", + "integrity": "sha512-6ZxzVpzDXDa3bJWaHilVayA+BH/1zmxCJoVgvmqJnid/gPoKHxUrS/aC/T6LGQtNHT+XHG9fXPJB4d+IrU30Ew==", "funding": [ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" ], "license": "MIT", "bin": { - "uuid": "dist/bin/uuid" + "uuid": "dist-node/bin/uuid" } }, - "node_modules/@wordpress/prettier-config": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-4.7.0.tgz", - "integrity": "sha512-GuWbbVT4ebDbkIv40AbnF+WKDl9ra6+Y+oJAbh1cpivlKnbJBFofIxk4W/MOCtaFJhsfkzrQJGFqg3xkcPJM7g==", - "dev": true, + "node_modules/@wordpress/hooks": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-4.51.0.tgz", + "integrity": "sha512-pTVZRT9mjEdrNNt7TyKw5hQhFUqntfTXVs/fboEDpmAi+PFWXoD8rPs3oZyRCVr/MDyE6OCv1mwEibI6AsRk3Q==", "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" - }, - "peerDependencies": { - "prettier": ">=3" } }, - "node_modules/@wordpress/primitives": { - "version": "3.56.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-3.56.0.tgz", - "integrity": "sha512-NXBq1ODjl6inMWx/l7KCbATcjdoeIOqYeL9i9alqdAfWeKx1EH9PIvKWylIkqZk7erXxCxldiRkuyjTtwjNBxw==", - "dev": true, + "node_modules/@wordpress/html-entities": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/html-entities/-/html-entities-4.51.0.tgz", + "integrity": "sha512-rkWpUWbO7FlGzicae0tAlmDj6gTTh/SLXbuRKlPLvG4W8dokSuv+q491aes14VvDY9u4sFeRduQt+nXivfxpfQ==", "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^5.35.0", - "clsx": "^2.1.1" - }, "engines": { - "node": ">=12" + "node": ">=18.12.0", + "npm": ">=8.19.2" } }, - "node_modules/@wordpress/primitives/node_modules/@wordpress/element": { - "version": "5.35.0", - "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-5.35.0.tgz", - "integrity": "sha512-puswpGcIdS+0A2g28uHriMkZqqRCmzFczue5Tk99VNtzBdehyk7Ae+DZ4xw5yT6GqYai8NTqv6MRwCB78uh5Mw==", - "dev": true, + "node_modules/@wordpress/i18n": { + "version": "6.24.0", + "resolved": "https://registry.npmjs.org/@wordpress/i18n/-/i18n-6.24.0.tgz", + "integrity": "sha512-K4XmCyyyDOKH/5ea75P2L36ZiAvQTy4Hsa73Na3n6NzVjAwrrKZm4JJGf0t+OlThUG4D4GyfEv5szs5EeCA0lA==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@tannin/sprintf": "^1.3.2", + "@wordpress/hooks": "^4.51.0", + "gettext-parser": "^1.3.1", + "memize": "^2.1.0", + "tannin": "^1.2.0" + }, + "bin": { + "pot-to-php": "tools/pot-to-php.js" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/icons": { + "version": "9.49.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-9.49.0.tgz", + "integrity": "sha512-Z8F+ledkfkcKDuS1c/RkM0dEWdfv2AXs6bCgey89p0atJSscf7qYbMJR9zE5rZ5aqXyFfV0DAFKJEgayNqneNQ==", + "dev": true, + "license": "GPL-2.0-or-later", + "dependencies": { + "@babel/runtime": "^7.16.0", + "@wordpress/element": "^5.35.0", + "@wordpress/primitives": "^3.56.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@wordpress/icons/node_modules/@wordpress/element": { + "version": "5.35.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-5.35.0.tgz", + "integrity": "sha512-puswpGcIdS+0A2g28uHriMkZqqRCmzFczue5Tk99VNtzBdehyk7Ae+DZ4xw5yT6GqYai8NTqv6MRwCB78uh5Mw==", + "dev": true, "license": "GPL-2.0-or-later", "dependencies": { "@babel/runtime": "^7.16.0", @@ -8725,7 +9633,7 @@ "node": ">=12" } }, - "node_modules/@wordpress/primitives/node_modules/@wordpress/escape-html": { + "node_modules/@wordpress/icons/node_modules/@wordpress/escape-html": { "version": "2.58.0", "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-2.58.0.tgz", "integrity": "sha512-9YJXMNfzkrhHEVP1jFEhgijbZqW8Mt3NHIMZjIQoWtBf7QE86umpYpGGBXzYC0YlpGTRGzZTBwYaqFKxjeaSgA==", @@ -8738,7 +9646,7 @@ "node": ">=12" } }, - "node_modules/@wordpress/primitives/node_modules/is-plain-object": { + "node_modules/@wordpress/icons/node_modules/is-plain-object": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", @@ -8748,114 +9656,41 @@ "node": ">=0.10.0" } }, - "node_modules/@wordpress/priority-queue": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/priority-queue/-/priority-queue-3.7.0.tgz", - "integrity": "sha512-WgKOhaQdaEeOxRLL49cp2YKfsZyUsR1qHoLid64Jux9FjFqLT8t52UTYJ796AhU4W0ifxf3R1SkNpW5zslxKOg==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "requestidlecallback": "^0.3.0" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - } - }, - "node_modules/@wordpress/private-apis": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/private-apis/-/private-apis-1.11.0.tgz", - "integrity": "sha512-ohTXVFf+a5t585qivy1XWfu0JDoloB/t19mJpFAcLGw1zw6wWs4upYyOsiJ8skSL+mbHCWpSWWZjGre/LcD0Ew==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "7.25.7" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - } - }, - "node_modules/@wordpress/private-apis/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@wordpress/redux-routine": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/redux-routine/-/redux-routine-5.7.0.tgz", - "integrity": "sha512-KOU1+qFEDrptLY6lOQ3pTR+MZwe35dHfCp8xJHUJa/RI9jKULvXWrEIX0qhEMNWlinyQmwdTfmZqKxP8RuFzag==", + "node_modules/@wordpress/image-cropper": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/@wordpress/image-cropper/-/image-cropper-1.15.0.tgz", + "integrity": "sha512-DnKg7Rk2nSYxV3ndnO2KEVw8qielFtZDbMhsKuegP4gc37jRsxBY2rE4Vm7IiJkBkrLUnezGXEPsPoe6ogtJFA==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "is-plain-object": "^5.0.0", - "is-promise": "^4.0.0", - "rungen": "^0.3.2" + "@wordpress/components": "^37.0.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "clsx": "^2.1.1", + "dequal": "^2.0.3", + "react-easy-crop": "^5.4.2" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "redux": ">=4" - } - }, - "node_modules/@wordpress/redux-routine/node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@wordpress/reusable-blocks": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/reusable-blocks/-/reusable-blocks-5.7.0.tgz", - "integrity": "sha512-F4CPUtLMKPSDK+OdrJRRBFlA6yBHpfV2tfcrqpo95l06GskIrgr1IQpyLiFnVKZPhO82K5Y/R3NS0xwD2NxuRQ==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/block-editor": "^14.2.0", - "@wordpress/blocks": "^13.7.0", - "@wordpress/components": "^28.7.0", - "@wordpress/core-data": "^7.7.0", - "@wordpress/data": "^10.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/i18n": "^5.7.0", - "@wordpress/icons": "^10.7.0", - "@wordpress/notices": "^5.7.0", - "@wordpress/private-apis": "^1.7.0", - "@wordpress/url": "^4.7.0" + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/reusable-blocks/node_modules/@ariakit/core": { - "version": "0.4.10", - "resolved": "https://registry.npmjs.org/@ariakit/core/-/core-0.4.10.tgz", - "integrity": "sha512-mX3EabQbfVh5uTjsTJ3+gjj7KGdTNhIN0qZHJd5Z2iPUnKl9NBy23Lgu6PEskpVsKAZ3proirjguD7U9fKMs/A==", - "license": "MIT" - }, - "node_modules/@wordpress/reusable-blocks/node_modules/@ariakit/react": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.11.tgz", - "integrity": "sha512-nLpPrmNcspqNhk4o+epsgeZfP1+Fkh4uIzNe5yrFkXolRkqHGKAxl4Hi82e0yxIBUbYbZIEwsZQQVceF1L6xrw==", + "node_modules/@wordpress/image-cropper/node_modules/@ariakit/react": { + "version": "0.4.35", + "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", + "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", "license": "MIT", "dependencies": { - "@ariakit/react-core": "0.4.11" + "@ariakit/react-components": "0.3.4" }, "funding": { "type": "opencollective", @@ -8866,91 +9701,172 @@ "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, - "node_modules/@wordpress/reusable-blocks/node_modules/@ariakit/react-core": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/@ariakit/react-core/-/react-core-0.4.11.tgz", - "integrity": "sha512-i6KedWhjZkNC7tMEKO0eNjjq2HRPiHyGaBS2x2VaWwzBepoYtjyvxRXyqLJ3gaiNdlwckN1TZsRDfD+viy13IQ==", + "node_modules/@wordpress/image-cropper/node_modules/@base-ui/react": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", + "integrity": "sha512-/jzjTWJYXhRFO45Bev9lc3cHbmjzCMpUqbMZ2AgKy/z25mY9B6shGSNcXcjQar9n5doM0KYW1W8fcFv2jZBuMw==", "license": "MIT", "dependencies": { - "@ariakit/core": "0.4.10", - "@floating-ui/dom": "^1.0.0", - "use-sync-external-store": "^1.2.0" + "@babel/runtime": "^7.29.2", + "@base-ui/utils": "0.3.1", + "@floating-ui/react-dom": "^2.1.8", + "@floating-ui/utils": "^0.2.11", + "use-sync-external-store": "^1.6.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" }, "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + "@date-fns/tz": "^1.2.0", + "@types/react": "^17 || ^18 || ^19", + "date-fns": "^4.0.0", + "react": "^17 || ^18 || ^19", + "react-dom": "^17 || ^18 || ^19" + }, + "peerDependenciesMeta": { + "@date-fns/tz": { + "optional": true + }, + "@types/react": { + "optional": true + }, + "date-fns": { + "optional": true + } } }, - "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/components": { - "version": "28.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-28.7.0.tgz", - "integrity": "sha512-oxF+pAZHJ3L9p42wMDeclo6P0TOZW1+U1pKmKju33aDsAwINOU2ELpVFyIEHkA9txn8VU4lxpnNIsYY6RGlW8w==", + "node_modules/@wordpress/image-cropper/node_modules/@types/gradient-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", + "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", + "license": "MIT" + }, + "node_modules/@wordpress/image-cropper/node_modules/@wordpress/base-styles": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", + "integrity": "sha512-w+n/AWSNfDx5RhPIpKCi7Iptn+8+Sll8uJhyx6X62zkkHDX51H2vZTU2XaXOQGx5U7xQcaVTbHjVDgYBwkU4Vg==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/image-cropper/node_modules/@wordpress/components": { + "version": "37.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-37.0.0.tgz", + "integrity": "sha512-Lol3iUujNnn4uHxI4VARDVEJIFUKlBtZUMcSFWofiYRZc8aV5BplyKC+sRAhKm+KFNBQjZtqd4PdixtaOHuX6w==", "license": "GPL-2.0-or-later", "dependencies": { - "@ariakit/react": "^0.4.10", - "@babel/runtime": "^7.16.0", - "@emotion/cache": "^11.7.1", - "@emotion/css": "^11.7.1", - "@emotion/react": "^11.7.1", - "@emotion/serialize": "^1.0.2", - "@emotion/styled": "^11.6.0", - "@emotion/utils": "^1.0.0", + "@ariakit/react": "^0.4.32", + "@date-fns/utc": "^2.1.1", + "@emotion/cache": "^11.14.0", + "@emotion/css": "^11.13.5", + "@emotion/react": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/styled": "^11.14.1", + "@emotion/utils": "^1.4.2", "@floating-ui/react-dom": "^2.0.8", - "@types/gradient-parser": "0.1.3", - "@types/highlight-words-core": "1.2.1", + "@types/gradient-parser": "^1.1.0", + "@types/highlight-words-core": "^1.2.1", "@use-gesture/react": "^10.3.1", - "@wordpress/a11y": "^4.7.0", - "@wordpress/compose": "^7.7.0", - "@wordpress/date": "^5.7.0", - "@wordpress/deprecated": "^4.7.0", - "@wordpress/dom": "^4.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/escape-html": "^3.7.0", - "@wordpress/hooks": "^4.7.0", - "@wordpress/html-entities": "^4.7.0", - "@wordpress/i18n": "^5.7.0", - "@wordpress/icons": "^10.7.0", - "@wordpress/is-shallow-equal": "^5.7.0", - "@wordpress/keycodes": "^4.7.0", - "@wordpress/primitives": "^4.7.0", - "@wordpress/private-apis": "^1.7.0", - "@wordpress/rich-text": "^7.7.0", - "@wordpress/warning": "^3.7.0", + "@wordpress/a11y": "^4.51.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/date": "^5.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/escape-html": "^3.51.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/ui": "^0.18.0", + "@wordpress/warning": "^3.51.0", "change-case": "^4.1.2", "clsx": "^2.1.1", - "colord": "^2.7.0", - "date-fns": "^3.6.0", - "deepmerge": "^4.3.0", + "colord": "^2.9.3", + "csstype": "^3.2.3", + "date-fns": "^4.1.0", + "deepmerge": "^4.3.1", "fast-deep-equal": "^3.1.3", - "framer-motion": "^11.1.9", - "gradient-parser": "^0.1.5", + "framer-motion": "^11.15.0", + "gradient-parser": "^1.1.1", "highlight-words-core": "^1.2.2", "is-plain-object": "^5.0.0", "memize": "^2.1.0", "path-to-regexp": "^6.2.1", "re-resizable": "^6.4.0", - "react-colorful": "^5.3.1", + "react-colorful": "^5.6.1", + "react-day-picker": "^9.7.0", "remove-accents": "^0.5.0", - "use-lilius": "^2.0.5", - "uuid": "^9.0.1" + "uuid": "^14.0.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/date": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.7.0.tgz", - "integrity": "sha512-iMwGP/Sbz+CCgqxUUKg8W2sZiwvr9K1q7s0rHuy3YVJT46QDNpN0A6HGNmckI0z4C+CRDvOIa09OMgTz1igUAw==", + "node_modules/@wordpress/image-cropper/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/deprecated": "^4.7.0", + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/image-cropper/node_modules/@wordpress/date": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", + "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/deprecated": "^4.51.0", "moment": "^2.29.4", "moment-timezone": "^0.5.40" }, @@ -8959,888 +9875,4369 @@ "npm": ">=8.19.2" } }, - "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/icons": { - "version": "10.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-10.7.0.tgz", - "integrity": "sha512-4cvi9ZIaz6IYRcOjVuALtDLPtzgt1zK+E9LskL0PAi3TJhoh746q28wv6ycP+KtJEiI+bsTf2Qu5dmCePGR/jA==", + "node_modules/@wordpress/image-cropper/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.7.0", - "@wordpress/primitives": "^4.7.0" + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/primitives": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.7.0.tgz", - "integrity": "sha512-PcAAIMT8+WqKB2HAeQlLmrcQyzyhNw9IeToJoxz+VKcc/7uLfGHplsDvtHY/X4jH8QlwlVwHSiqW/McTcxoUvQ==", + "node_modules/@wordpress/image-cropper/node_modules/@wordpress/icons": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-15.2.0.tgz", + "integrity": "sha512-g/1a4eTNH/mCluvmryNcYAg1GxsjY6xGjfGJRq3z44SEcB8jAZyEQtqdcGQ+o2kHelKhmmqS8WAowxif44ZgNQ==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.7.0", - "clsx": "^2.1.1" + "@wordpress/element": "^8.3.0", + "@wordpress/primitives": "^4.51.0", + "change-case": "^4.1.2" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^18.0.0" - } - }, - "node_modules/@wordpress/reusable-blocks/node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@wordpress/reusable-blocks/node_modules/path-to-regexp": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", - "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", - "license": "MIT" - }, - "node_modules/@wordpress/reusable-blocks/node_modules/uuid": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", - "funding": [ - "https://github.com/sponsors/broofa", - "https://github.com/sponsors/ctavan" - ], - "license": "MIT", - "bin": { - "uuid": "dist/bin/uuid" + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/rich-text": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/rich-text/-/rich-text-7.11.0.tgz", - "integrity": "sha512-xrTvJ6H9UOnH+aA4QzeSQKV+rQS9RD87y1XoLZxrynDxLjsNO95PVhopfs0qIGNLr8wFhMtb0LQ+KXkxqA7fDw==", + "node_modules/@wordpress/image-cropper/node_modules/@wordpress/primitives": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "7.25.7", - "@wordpress/a11y": "*", - "@wordpress/compose": "*", - "@wordpress/data": "*", - "@wordpress/deprecated": "*", - "@wordpress/element": "*", - "@wordpress/escape-html": "*", - "@wordpress/i18n": "*", - "@wordpress/keycodes": "*", - "memize": "^2.1.0" + "@wordpress/element": "^8.3.0", + "clsx": "^2.1.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^18.0.0" + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/rich-text/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" + "node_modules/@wordpress/image-cropper/node_modules/@wordpress/style-runtime": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", + "integrity": "sha512-PeAcF7qoIMg9ChS5SfkRrLLcUx9D7Te6weRcQmoKYgxE7jSzzXpoaiy3Z+Us+ChyisolF4xhTg5DblMBPL1iug==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=20.10.0", + "npm": ">=10.2.3" + } + }, + "node_modules/@wordpress/image-cropper/node_modules/@wordpress/theme": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/theme/-/theme-1.0.0.tgz", + "integrity": "sha512-zPwDgv7xx3f4h+lLCq95szofMAMjSIlkIIfR7U2cxQws5J6XnnTsOxHWJTE6V4jPzS19vzFdQdZ9wiR/X3c0Lw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/compose": "^8.4.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "colorjs.io": "^0.6.0", + "memize": "^2.1.0" + }, + "engines": { + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "esbuild": "^0.27.2", + "postcss": "^8.0.0", + "react": "^18 || ^19", + "react-dom": "^18 || ^19", + "stylelint": "^16.8.2", + "vite": "^7.3.2" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "postcss": { + "optional": true + }, + "stylelint": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/@wordpress/image-cropper/node_modules/@wordpress/ui": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/@wordpress/ui/-/ui-0.18.0.tgz", + "integrity": "sha512-TIMsjaRl5/QJEjKbtoa0YAhzVdcvAk/FmA9rgJVR6oG/l6+s0WgoebGASEVyRyoOstq45xB7PzYMdjVs7iS0zg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@base-ui/react": "^1.6.0", + "@wordpress/a11y": "^4.51.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/theme": "^1.0.0", + "clsx": "^2.1.1", + "tabbable": "^6.4.0" + }, + "engines": { + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/image-cropper/node_modules/date-fns": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.4.0.tgz", + "integrity": "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, + "node_modules/@wordpress/image-cropper/node_modules/gradient-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-1.2.0.tgz", + "integrity": "sha512-6ABGa9CR7WR/0pAJicBy5SJkiikbFM6kf/JjykwX7x+t+s8ORWVnlbi6FkHeFFb36yWsjUpHqSYrygd7ofEUqA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/image-cropper/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/image-cropper/node_modules/path-to-regexp": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", + "license": "MIT" + }, + "node_modules/@wordpress/image-cropper/node_modules/uuid": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.1.tgz", + "integrity": "sha512-6ZxzVpzDXDa3bJWaHilVayA+BH/1zmxCJoVgvmqJnid/gPoKHxUrS/aC/T6LGQtNHT+XHG9fXPJB4d+IrU30Ew==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist-node/bin/uuid" + } + }, + "node_modules/@wordpress/interactivity": { + "version": "6.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/interactivity/-/interactivity-6.51.0.tgz", + "integrity": "sha512-E1pSus/56YowcoP5jIdfV4bvd03JL12gHWr+/wjSHeoZxIvvJ72OP6u1EcuirtBaNa9O0F0qPiIsrzyhUV9qPA==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@preact/signals": "^1.3.0", + "@preact/signals-core": "^1.7.0", + "preact": "^10.29.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/interactivity-router": { + "version": "2.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/interactivity-router/-/interactivity-router-2.51.0.tgz", + "integrity": "sha512-800lyEJbdgLa6Pwj7h87kS8bn2c16FCenlojL74yMR/t21FtQQQXo7wUk/tNYkGPlzr7v7sDtoL09DyfX08m7Q==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/a11y": "^4.51.0", + "@wordpress/interactivity": "^6.51.0", + "es-module-lexer": "^1.5.4" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/interactivity-router/node_modules/es-module-lexer": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz", + "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==", + "license": "MIT" + }, + "node_modules/@wordpress/is-shallow-equal": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-5.51.0.tgz", + "integrity": "sha512-Ivyf85r9trFfl/rRaDMgghFZ+gzw8yIl7/vDPagYkvq9Xnqw8KecPy91BqIIvco1jIOh3RXPP6cbVu3dTqZDMA==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/jest-console": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-8.7.0.tgz", + "integrity": "sha512-tTDsAGfhv7B6jSRUN8lA6PBBU2UKi0+ICubA8tRID1dV8ekLNr5bu01A9BHwoROajiZsCcEvaAMGbWdSO7TsvQ==", + "dev": true, + "license": "GPL-2.0-or-later", + "dependencies": { + "@babel/runtime": "^7.16.0", + "jest-matcher-utils": "^29.6.2" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "jest": ">=29" + } + }, + "node_modules/@wordpress/jest-preset-default": { + "version": "12.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-12.7.0.tgz", + "integrity": "sha512-L/A75VlaI8OCNiol2sdCIY+ypFmosQIUQPcvmWu4nhEjen6CaIsX3VdRVQGtFrc0YgOyY+H2SsfKtEH9t/mQaw==", + "dev": true, + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/jest-console": "^8.7.0", + "babel-jest": "^29.6.2" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@babel/core": ">=7", + "jest": ">=29" + } + }, + "node_modules/@wordpress/keyboard-shortcuts": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/keyboard-shortcuts/-/keyboard-shortcuts-5.51.0.tgz", + "integrity": "sha512-CSrUZLOdXGax8SAmQs/r0aBIV8Oi7bfmkqRWqdoJDCO2k11LyUP/BzTbtIAxCaapocc4jRjT9qeN8/bpz1XQYg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/data": "^10.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/keycodes": "^4.51.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/keyboard-shortcuts/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/keyboard-shortcuts/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/keycodes": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/keycodes/-/keycodes-4.51.0.tgz", + "integrity": "sha512-C9CZq2WCWVacjsHhFgM0GVIQmTUxo/oX7U+Qj0kr3vWHZu6cmEDJ94PX+f02M3b+iHnCk4oHCvnXGANwKQwsSw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/i18n": "^6.24.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/notices": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/notices/-/notices-5.51.0.tgz", + "integrity": "sha512-mOOPEnjmkvscs4gNEYNiowsSF371HnO5euFOmBRIcnuRjn/dW7VqUfGXUbsu3HGXqjMBWBWPW0hzEjaatEVhGA==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/a11y": "^4.51.0", + "@wordpress/components": "^37.0.0", + "@wordpress/data": "^10.51.0", + "clsx": "^2.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/notices/node_modules/@types/gradient-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", + "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", + "license": "MIT" + }, + "node_modules/@wordpress/notices/node_modules/@wordpress/base-styles": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", + "integrity": "sha512-w+n/AWSNfDx5RhPIpKCi7Iptn+8+Sll8uJhyx6X62zkkHDX51H2vZTU2XaXOQGx5U7xQcaVTbHjVDgYBwkU4Vg==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/notices/node_modules/@wordpress/components": { + "version": "37.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-37.0.0.tgz", + "integrity": "sha512-Lol3iUujNnn4uHxI4VARDVEJIFUKlBtZUMcSFWofiYRZc8aV5BplyKC+sRAhKm+KFNBQjZtqd4PdixtaOHuX6w==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@ariakit/react": "^0.4.32", + "@date-fns/utc": "^2.1.1", + "@emotion/cache": "^11.14.0", + "@emotion/css": "^11.13.5", + "@emotion/react": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/styled": "^11.14.1", + "@emotion/utils": "^1.4.2", + "@floating-ui/react-dom": "^2.0.8", + "@types/gradient-parser": "^1.1.0", + "@types/highlight-words-core": "^1.2.1", + "@use-gesture/react": "^10.3.1", + "@wordpress/a11y": "^4.51.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/date": "^5.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/escape-html": "^3.51.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/ui": "^0.18.0", + "@wordpress/warning": "^3.51.0", + "change-case": "^4.1.2", + "clsx": "^2.1.1", + "colord": "^2.9.3", + "csstype": "^3.2.3", + "date-fns": "^4.1.0", + "deepmerge": "^4.3.1", + "fast-deep-equal": "^3.1.3", + "framer-motion": "^11.15.0", + "gradient-parser": "^1.1.1", + "highlight-words-core": "^1.2.2", + "is-plain-object": "^5.0.0", + "memize": "^2.1.0", + "path-to-regexp": "^6.2.1", + "re-resizable": "^6.4.0", + "react-colorful": "^5.6.1", + "react-day-picker": "^9.7.0", + "remove-accents": "^0.5.0", + "uuid": "^14.0.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/notices/node_modules/@wordpress/components/node_modules/@ariakit/react": { + "version": "0.4.35", + "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", + "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", + "license": "MIT", + "dependencies": { + "@ariakit/react-components": "0.3.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/ariakit" + }, + "peerDependencies": { + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/@wordpress/notices/node_modules/@wordpress/components/node_modules/@wordpress/ui": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/@wordpress/ui/-/ui-0.18.0.tgz", + "integrity": "sha512-TIMsjaRl5/QJEjKbtoa0YAhzVdcvAk/FmA9rgJVR6oG/l6+s0WgoebGASEVyRyoOstq45xB7PzYMdjVs7iS0zg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@base-ui/react": "^1.6.0", + "@wordpress/a11y": "^4.51.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/theme": "^1.0.0", + "clsx": "^2.1.1", + "tabbable": "^6.4.0" + }, + "engines": { + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/notices/node_modules/@wordpress/components/node_modules/@wordpress/ui/node_modules/@base-ui/react": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", + "integrity": "sha512-/jzjTWJYXhRFO45Bev9lc3cHbmjzCMpUqbMZ2AgKy/z25mY9B6shGSNcXcjQar9n5doM0KYW1W8fcFv2jZBuMw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.29.2", + "@base-ui/utils": "0.3.1", + "@floating-ui/react-dom": "^2.1.8", + "@floating-ui/utils": "^0.2.11", + "use-sync-external-store": "^1.6.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@date-fns/tz": "^1.2.0", + "@types/react": "^17 || ^18 || ^19", + "date-fns": "^4.0.0", + "react": "^17 || ^18 || ^19", + "react-dom": "^17 || ^18 || ^19" + }, + "peerDependenciesMeta": { + "@date-fns/tz": { + "optional": true + }, + "@types/react": { + "optional": true + }, + "date-fns": { + "optional": true + } + } + }, + "node_modules/@wordpress/notices/node_modules/@wordpress/components/node_modules/@wordpress/ui/node_modules/@wordpress/theme": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/theme/-/theme-1.0.0.tgz", + "integrity": "sha512-zPwDgv7xx3f4h+lLCq95szofMAMjSIlkIIfR7U2cxQws5J6XnnTsOxHWJTE6V4jPzS19vzFdQdZ9wiR/X3c0Lw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/compose": "^8.4.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "colorjs.io": "^0.6.0", + "memize": "^2.1.0" + }, + "engines": { + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "esbuild": "^0.27.2", + "postcss": "^8.0.0", + "react": "^18 || ^19", + "react-dom": "^18 || ^19", + "stylelint": "^16.8.2", + "vite": "^7.3.2" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "postcss": { + "optional": true + }, + "stylelint": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/@wordpress/notices/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/notices/node_modules/@wordpress/date": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", + "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/deprecated": "^4.51.0", + "moment": "^2.29.4", + "moment-timezone": "^0.5.40" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/notices/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/notices/node_modules/@wordpress/icons": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-15.2.0.tgz", + "integrity": "sha512-g/1a4eTNH/mCluvmryNcYAg1GxsjY6xGjfGJRq3z44SEcB8jAZyEQtqdcGQ+o2kHelKhmmqS8WAowxif44ZgNQ==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/element": "^8.3.0", + "@wordpress/primitives": "^4.51.0", + "change-case": "^4.1.2" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/notices/node_modules/@wordpress/primitives": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/element": "^8.3.0", + "clsx": "^2.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/notices/node_modules/@wordpress/style-runtime": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", + "integrity": "sha512-PeAcF7qoIMg9ChS5SfkRrLLcUx9D7Te6weRcQmoKYgxE7jSzzXpoaiy3Z+Us+ChyisolF4xhTg5DblMBPL1iug==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=20.10.0", + "npm": ">=10.2.3" + } + }, + "node_modules/@wordpress/notices/node_modules/date-fns": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.4.0.tgz", + "integrity": "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, + "node_modules/@wordpress/notices/node_modules/gradient-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-1.2.0.tgz", + "integrity": "sha512-6ABGa9CR7WR/0pAJicBy5SJkiikbFM6kf/JjykwX7x+t+s8ORWVnlbi6FkHeFFb36yWsjUpHqSYrygd7ofEUqA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/notices/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/notices/node_modules/path-to-regexp": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", + "license": "MIT" + }, + "node_modules/@wordpress/notices/node_modules/uuid": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.1.tgz", + "integrity": "sha512-6ZxzVpzDXDa3bJWaHilVayA+BH/1zmxCJoVgvmqJnid/gPoKHxUrS/aC/T6LGQtNHT+XHG9fXPJB4d+IrU30Ew==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist-node/bin/uuid" + } + }, + "node_modules/@wordpress/npm-package-json-lint-config": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/npm-package-json-lint-config/-/npm-package-json-lint-config-5.7.0.tgz", + "integrity": "sha512-D2hjkL4lVgQ60JdyRY5od8PqiPquGaxHjk3MN0AyGcw42jYcuvN7+lDM/FHr4GVJpa0CGKey6Qe56UMiBBMUQw==", + "dev": true, + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "npm-package-json-lint": ">=6.0.0" + } + }, + "node_modules/@wordpress/patterns": { + "version": "2.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/patterns/-/patterns-2.51.0.tgz", + "integrity": "sha512-NxVGAN5G4kexAHAUW6sioBXMoHpz/j04LDbMmyxNW+jwng5P2JiAlYsCpGhdFPE3+NjxEck+XRbKU1/FF3me7w==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/a11y": "^4.51.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/block-editor": "^16.0.0", + "@wordpress/blocks": "^15.24.0", + "@wordpress/components": "^37.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/core-data": "^7.51.0", + "@wordpress/data": "^10.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/notices": "^5.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/ui": "^0.18.0", + "@wordpress/url": "^4.51.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + } + }, + "node_modules/@wordpress/patterns/node_modules/@ariakit/react": { + "version": "0.4.35", + "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", + "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", + "license": "MIT", + "dependencies": { + "@ariakit/react-components": "0.3.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/ariakit" + }, + "peerDependencies": { + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/@wordpress/patterns/node_modules/@types/gradient-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", + "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", + "license": "MIT" + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/base-styles": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", + "integrity": "sha512-w+n/AWSNfDx5RhPIpKCi7Iptn+8+Sll8uJhyx6X62zkkHDX51H2vZTU2XaXOQGx5U7xQcaVTbHjVDgYBwkU4Vg==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/block-editor": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/block-editor/-/block-editor-16.0.0.tgz", + "integrity": "sha512-hH7w5gbgjwsYLPTw1JFqNTtEe+O2kHvbzoht4g5sUHGThKR7NrVMHuLnNS7iOcz+k1VZpVRjXrWJlBsEj2en2g==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@react-spring/web": "^9.4.5", + "@wordpress/a11y": "^4.51.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/blob": "^4.51.0", + "@wordpress/block-serialization-default-parser": "^5.51.0", + "@wordpress/blocks": "^15.24.0", + "@wordpress/commands": "^1.51.0", + "@wordpress/components": "^37.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/data": "^10.51.0", + "@wordpress/dataviews": "^17.2.0", + "@wordpress/date": "^5.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/escape-html": "^3.51.0", + "@wordpress/global-styles-engine": "^1.18.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/image-cropper": "^1.15.0", + "@wordpress/interactivity": "^6.51.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keyboard-shortcuts": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/notices": "^5.51.0", + "@wordpress/preferences": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/style-engine": "^2.51.0", + "@wordpress/token-list": "^3.51.0", + "@wordpress/ui": "^0.18.0", + "@wordpress/upload-media": "^0.36.0", + "@wordpress/url": "^4.51.0", + "@wordpress/warning": "^3.51.0", + "@wordpress/wordcount": "^4.51.0", + "change-case": "^4.1.2", + "clsx": "^2.1.1", + "colord": "^2.9.3", + "deepmerge": "^4.3.1", + "diff": "^8.0.3", + "fast-deep-equal": "^3.1.3", + "memize": "^2.1.0", + "parsel-js": "^1.1.2", + "postcss": "^8.4.38", + "postcss-prefix-selector": "^1.16.0", + "postcss-urlrebase": "^1.4.0", + "react-autosize-textarea": "^7.1.0", + "react-easy-crop": "^5.4.2", + "remove-accents": "^0.5.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/block-editor/node_modules/@wordpress/upload-media": { + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/@wordpress/upload-media/-/upload-media-0.36.0.tgz", + "integrity": "sha512-Dl1IIVrSoSuoOBp2vyncgi7lFHJpAac104WR6t66wf0YyCg7xih0XDVneISw1N3ivZ8fEZHXSz2TZ5gz6GmSqQ==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/blob": "^4.51.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/data": "^10.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/preferences": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/url": "^4.51.0", + "@wordpress/video-conversion": "^0.2.0", + "@wordpress/vips": "^2.4.0", + "uuid": "^14.0.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/blocks": { + "version": "15.24.0", + "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-15.24.0.tgz", + "integrity": "sha512-C/OseZS0Znx7Wqd/RGJdVXnn4z9lLfJ/SNehzyJ1ViiBTktDNS5RWiYAYJ+kwJ5unBbTy1KDXC9PGzR0Ib4Y5g==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/autop": "^4.51.0", + "@wordpress/blob": "^4.51.0", + "@wordpress/block-serialization-default-parser": "^5.51.0", + "@wordpress/data": "^10.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/shortcode": "^4.51.0", + "@wordpress/warning": "^3.51.0", + "change-case": "^4.1.2", + "colord": "^2.9.3", + "fast-deep-equal": "^3.1.3", + "hpq": "^1.3.0", + "is-plain-object": "^5.0.0", + "marked": "^18.0.3", + "memize": "^2.1.0", + "react-is": "^18.3.0", + "remove-accents": "^0.5.0", + "simple-html-tokenizer": "^0.5.7", + "uuid": "^14.0.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/components": { + "version": "37.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-37.0.0.tgz", + "integrity": "sha512-Lol3iUujNnn4uHxI4VARDVEJIFUKlBtZUMcSFWofiYRZc8aV5BplyKC+sRAhKm+KFNBQjZtqd4PdixtaOHuX6w==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@ariakit/react": "^0.4.32", + "@date-fns/utc": "^2.1.1", + "@emotion/cache": "^11.14.0", + "@emotion/css": "^11.13.5", + "@emotion/react": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/styled": "^11.14.1", + "@emotion/utils": "^1.4.2", + "@floating-ui/react-dom": "^2.0.8", + "@types/gradient-parser": "^1.1.0", + "@types/highlight-words-core": "^1.2.1", + "@use-gesture/react": "^10.3.1", + "@wordpress/a11y": "^4.51.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/date": "^5.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/escape-html": "^3.51.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/ui": "^0.18.0", + "@wordpress/warning": "^3.51.0", + "change-case": "^4.1.2", + "clsx": "^2.1.1", + "colord": "^2.9.3", + "csstype": "^3.2.3", + "date-fns": "^4.1.0", + "deepmerge": "^4.3.1", + "fast-deep-equal": "^3.1.3", + "framer-motion": "^11.15.0", + "gradient-parser": "^1.1.1", + "highlight-words-core": "^1.2.2", + "is-plain-object": "^5.0.0", + "memize": "^2.1.0", + "path-to-regexp": "^6.2.1", + "re-resizable": "^6.4.0", + "react-colorful": "^5.6.1", + "react-day-picker": "^9.7.0", + "remove-accents": "^0.5.0", + "uuid": "^14.0.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/components/node_modules/@wordpress/primitives": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/element": "^8.3.0", + "clsx": "^2.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/date": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", + "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/deprecated": "^4.51.0", + "moment": "^2.29.4", + "moment-timezone": "^0.5.40" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/icons": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-15.2.0.tgz", + "integrity": "sha512-g/1a4eTNH/mCluvmryNcYAg1GxsjY6xGjfGJRq3z44SEcB8jAZyEQtqdcGQ+o2kHelKhmmqS8WAowxif44ZgNQ==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/element": "^8.3.0", + "@wordpress/primitives": "^4.51.0", + "change-case": "^4.1.2" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/icons/node_modules/@wordpress/primitives": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/element": "^8.3.0", + "clsx": "^2.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/style-runtime": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", + "integrity": "sha512-PeAcF7qoIMg9ChS5SfkRrLLcUx9D7Te6weRcQmoKYgxE7jSzzXpoaiy3Z+Us+ChyisolF4xhTg5DblMBPL1iug==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=20.10.0", + "npm": ">=10.2.3" + } + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/ui": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/@wordpress/ui/-/ui-0.18.0.tgz", + "integrity": "sha512-TIMsjaRl5/QJEjKbtoa0YAhzVdcvAk/FmA9rgJVR6oG/l6+s0WgoebGASEVyRyoOstq45xB7PzYMdjVs7iS0zg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@base-ui/react": "^1.6.0", + "@wordpress/a11y": "^4.51.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/theme": "^1.0.0", + "clsx": "^2.1.1", + "tabbable": "^6.4.0" + }, + "engines": { + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/ui/node_modules/@base-ui/react": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", + "integrity": "sha512-/jzjTWJYXhRFO45Bev9lc3cHbmjzCMpUqbMZ2AgKy/z25mY9B6shGSNcXcjQar9n5doM0KYW1W8fcFv2jZBuMw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.29.2", + "@base-ui/utils": "0.3.1", + "@floating-ui/react-dom": "^2.1.8", + "@floating-ui/utils": "^0.2.11", + "use-sync-external-store": "^1.6.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@date-fns/tz": "^1.2.0", + "@types/react": "^17 || ^18 || ^19", + "date-fns": "^4.0.0", + "react": "^17 || ^18 || ^19", + "react-dom": "^17 || ^18 || ^19" + }, + "peerDependenciesMeta": { + "@date-fns/tz": { + "optional": true + }, + "@types/react": { + "optional": true + }, + "date-fns": { + "optional": true + } + } + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/ui/node_modules/@wordpress/primitives": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/element": "^8.3.0", + "clsx": "^2.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/patterns/node_modules/@wordpress/ui/node_modules/@wordpress/theme": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/theme/-/theme-1.0.0.tgz", + "integrity": "sha512-zPwDgv7xx3f4h+lLCq95szofMAMjSIlkIIfR7U2cxQws5J6XnnTsOxHWJTE6V4jPzS19vzFdQdZ9wiR/X3c0Lw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/compose": "^8.4.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "colorjs.io": "^0.6.0", + "memize": "^2.1.0" + }, + "engines": { + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "esbuild": "^0.27.2", + "postcss": "^8.0.0", + "react": "^18 || ^19", + "react-dom": "^18 || ^19", + "stylelint": "^16.8.2", + "vite": "^7.3.2" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "postcss": { + "optional": true + }, + "stylelint": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/@wordpress/patterns/node_modules/date-fns": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.4.0.tgz", + "integrity": "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, + "node_modules/@wordpress/patterns/node_modules/gradient-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-1.2.0.tgz", + "integrity": "sha512-6ABGa9CR7WR/0pAJicBy5SJkiikbFM6kf/JjykwX7x+t+s8ORWVnlbi6FkHeFFb36yWsjUpHqSYrygd7ofEUqA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/patterns/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/patterns/node_modules/path-to-regexp": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", + "license": "MIT" + }, + "node_modules/@wordpress/patterns/node_modules/uuid": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.1.tgz", + "integrity": "sha512-6ZxzVpzDXDa3bJWaHilVayA+BH/1zmxCJoVgvmqJnid/gPoKHxUrS/aC/T6LGQtNHT+XHG9fXPJB4d+IrU30Ew==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist-node/bin/uuid" + } + }, + "node_modules/@wordpress/postcss-plugins-preset": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-5.7.0.tgz", + "integrity": "sha512-vNQGDGesErJJEHGqWAJOYqMnSfrKwObBToDd6nHD50OZ/ECydAuDwSQ97D4ZkH+y7n6zedz+/pCLcc/DnLVJSw==", + "dev": true, + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/base-styles": "^5.7.0", + "autoprefixer": "^10.2.5" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/@wordpress/preferences": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/preferences/-/preferences-4.51.0.tgz", + "integrity": "sha512-JOwER9FIdfllWTZ6gWABN6lrcrMFpYg5YblVzFgdrS/mvA4O4C6yfgsEhC6xN2gbfODtnd49Meo/Df/Ka0983Q==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/a11y": "^4.51.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/components": "^37.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/data": "^10.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/private-apis": "^1.51.0", + "clsx": "^2.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/preferences/node_modules/@ariakit/react": { + "version": "0.4.35", + "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", + "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", + "license": "MIT", + "dependencies": { + "@ariakit/react-components": "0.3.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/ariakit" + }, + "peerDependencies": { + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/@wordpress/preferences/node_modules/@base-ui/react": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", + "integrity": "sha512-/jzjTWJYXhRFO45Bev9lc3cHbmjzCMpUqbMZ2AgKy/z25mY9B6shGSNcXcjQar9n5doM0KYW1W8fcFv2jZBuMw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.29.2", + "@base-ui/utils": "0.3.1", + "@floating-ui/react-dom": "^2.1.8", + "@floating-ui/utils": "^0.2.11", + "use-sync-external-store": "^1.6.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@date-fns/tz": "^1.2.0", + "@types/react": "^17 || ^18 || ^19", + "date-fns": "^4.0.0", + "react": "^17 || ^18 || ^19", + "react-dom": "^17 || ^18 || ^19" + }, + "peerDependenciesMeta": { + "@date-fns/tz": { + "optional": true + }, + "@types/react": { + "optional": true + }, + "date-fns": { + "optional": true + } + } + }, + "node_modules/@wordpress/preferences/node_modules/@types/gradient-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", + "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", + "license": "MIT" + }, + "node_modules/@wordpress/preferences/node_modules/@wordpress/base-styles": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", + "integrity": "sha512-w+n/AWSNfDx5RhPIpKCi7Iptn+8+Sll8uJhyx6X62zkkHDX51H2vZTU2XaXOQGx5U7xQcaVTbHjVDgYBwkU4Vg==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/preferences/node_modules/@wordpress/components": { + "version": "37.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-37.0.0.tgz", + "integrity": "sha512-Lol3iUujNnn4uHxI4VARDVEJIFUKlBtZUMcSFWofiYRZc8aV5BplyKC+sRAhKm+KFNBQjZtqd4PdixtaOHuX6w==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@ariakit/react": "^0.4.32", + "@date-fns/utc": "^2.1.1", + "@emotion/cache": "^11.14.0", + "@emotion/css": "^11.13.5", + "@emotion/react": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/styled": "^11.14.1", + "@emotion/utils": "^1.4.2", + "@floating-ui/react-dom": "^2.0.8", + "@types/gradient-parser": "^1.1.0", + "@types/highlight-words-core": "^1.2.1", + "@use-gesture/react": "^10.3.1", + "@wordpress/a11y": "^4.51.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/date": "^5.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/escape-html": "^3.51.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/ui": "^0.18.0", + "@wordpress/warning": "^3.51.0", + "change-case": "^4.1.2", + "clsx": "^2.1.1", + "colord": "^2.9.3", + "csstype": "^3.2.3", + "date-fns": "^4.1.0", + "deepmerge": "^4.3.1", + "fast-deep-equal": "^3.1.3", + "framer-motion": "^11.15.0", + "gradient-parser": "^1.1.1", + "highlight-words-core": "^1.2.2", + "is-plain-object": "^5.0.0", + "memize": "^2.1.0", + "path-to-regexp": "^6.2.1", + "re-resizable": "^6.4.0", + "react-colorful": "^5.6.1", + "react-day-picker": "^9.7.0", + "remove-accents": "^0.5.0", + "uuid": "^14.0.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/preferences/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/preferences/node_modules/@wordpress/date": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", + "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/deprecated": "^4.51.0", + "moment": "^2.29.4", + "moment-timezone": "^0.5.40" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/preferences/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/preferences/node_modules/@wordpress/icons": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-15.2.0.tgz", + "integrity": "sha512-g/1a4eTNH/mCluvmryNcYAg1GxsjY6xGjfGJRq3z44SEcB8jAZyEQtqdcGQ+o2kHelKhmmqS8WAowxif44ZgNQ==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/element": "^8.3.0", + "@wordpress/primitives": "^4.51.0", + "change-case": "^4.1.2" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/preferences/node_modules/@wordpress/primitives": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/element": "^8.3.0", + "clsx": "^2.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/preferences/node_modules/@wordpress/style-runtime": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", + "integrity": "sha512-PeAcF7qoIMg9ChS5SfkRrLLcUx9D7Te6weRcQmoKYgxE7jSzzXpoaiy3Z+Us+ChyisolF4xhTg5DblMBPL1iug==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=20.10.0", + "npm": ">=10.2.3" + } + }, + "node_modules/@wordpress/preferences/node_modules/@wordpress/theme": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/theme/-/theme-1.0.0.tgz", + "integrity": "sha512-zPwDgv7xx3f4h+lLCq95szofMAMjSIlkIIfR7U2cxQws5J6XnnTsOxHWJTE6V4jPzS19vzFdQdZ9wiR/X3c0Lw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/compose": "^8.4.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "colorjs.io": "^0.6.0", + "memize": "^2.1.0" + }, + "engines": { + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "esbuild": "^0.27.2", + "postcss": "^8.0.0", + "react": "^18 || ^19", + "react-dom": "^18 || ^19", + "stylelint": "^16.8.2", + "vite": "^7.3.2" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "postcss": { + "optional": true + }, + "stylelint": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/@wordpress/preferences/node_modules/@wordpress/ui": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/@wordpress/ui/-/ui-0.18.0.tgz", + "integrity": "sha512-TIMsjaRl5/QJEjKbtoa0YAhzVdcvAk/FmA9rgJVR6oG/l6+s0WgoebGASEVyRyoOstq45xB7PzYMdjVs7iS0zg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@base-ui/react": "^1.6.0", + "@wordpress/a11y": "^4.51.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/theme": "^1.0.0", + "clsx": "^2.1.1", + "tabbable": "^6.4.0" + }, + "engines": { + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/preferences/node_modules/date-fns": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.4.0.tgz", + "integrity": "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, + "node_modules/@wordpress/preferences/node_modules/gradient-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-1.2.0.tgz", + "integrity": "sha512-6ABGa9CR7WR/0pAJicBy5SJkiikbFM6kf/JjykwX7x+t+s8ORWVnlbi6FkHeFFb36yWsjUpHqSYrygd7ofEUqA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/preferences/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/preferences/node_modules/path-to-regexp": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", + "license": "MIT" + }, + "node_modules/@wordpress/preferences/node_modules/uuid": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.1.tgz", + "integrity": "sha512-6ZxzVpzDXDa3bJWaHilVayA+BH/1zmxCJoVgvmqJnid/gPoKHxUrS/aC/T6LGQtNHT+XHG9fXPJB4d+IrU30Ew==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist-node/bin/uuid" + } + }, + "node_modules/@wordpress/prettier-config": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-4.7.0.tgz", + "integrity": "sha512-GuWbbVT4ebDbkIv40AbnF+WKDl9ra6+Y+oJAbh1cpivlKnbJBFofIxk4W/MOCtaFJhsfkzrQJGFqg3xkcPJM7g==", + "dev": true, + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "prettier": ">=3" + } + }, + "node_modules/@wordpress/primitives": { + "version": "3.56.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-3.56.0.tgz", + "integrity": "sha512-NXBq1ODjl6inMWx/l7KCbATcjdoeIOqYeL9i9alqdAfWeKx1EH9PIvKWylIkqZk7erXxCxldiRkuyjTtwjNBxw==", + "dev": true, + "license": "GPL-2.0-or-later", + "dependencies": { + "@babel/runtime": "^7.16.0", + "@wordpress/element": "^5.35.0", + "clsx": "^2.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@wordpress/primitives/node_modules/@wordpress/element": { + "version": "5.35.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-5.35.0.tgz", + "integrity": "sha512-puswpGcIdS+0A2g28uHriMkZqqRCmzFczue5Tk99VNtzBdehyk7Ae+DZ4xw5yT6GqYai8NTqv6MRwCB78uh5Mw==", + "dev": true, + "license": "GPL-2.0-or-later", + "dependencies": { + "@babel/runtime": "^7.16.0", + "@types/react": "^18.2.79", + "@types/react-dom": "^18.2.25", + "@wordpress/escape-html": "^2.58.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.0", + "react-dom": "^18.3.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@wordpress/primitives/node_modules/@wordpress/escape-html": { + "version": "2.58.0", + "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-2.58.0.tgz", + "integrity": "sha512-9YJXMNfzkrhHEVP1jFEhgijbZqW8Mt3NHIMZjIQoWtBf7QE86umpYpGGBXzYC0YlpGTRGzZTBwYaqFKxjeaSgA==", + "dev": true, + "license": "GPL-2.0-or-later", + "dependencies": { + "@babel/runtime": "^7.16.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@wordpress/primitives/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/priority-queue": { + "version": "3.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/priority-queue/-/priority-queue-3.51.0.tgz", + "integrity": "sha512-Mgm6DFRW4ZqgkVTQNe6LdtWzah19u6531Uf1L5q1LwYd/eekKeRsNB9dJnqBg2Kn/jgfPbZnTaHToDvnOZQgcA==", + "license": "GPL-2.0-or-later", + "dependencies": { + "requestidlecallback": "^0.3.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/private-apis": { + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/private-apis/-/private-apis-1.51.0.tgz", + "integrity": "sha512-x3FeBDGegBAKveYHNmgZgTbEwuwVMxGouTR2fKP94Myn5PzF5EkZK1CZJrDnfNjzTl73nCwsd4IXACdtYfnnAQ==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/redux-routine": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/redux-routine/-/redux-routine-5.51.0.tgz", + "integrity": "sha512-L5wLAEMPXjE7HvyD2ErH7HL0vgAhXGN9if0yc/r42nnyt9Mq/5B7MOjGJL7qpBb0VoBsUvqPoLEIZmIPU+OF+A==", + "license": "GPL-2.0-or-later", + "dependencies": { + "is-plain-object": "^5.0.0", + "is-promise": "^4.0.0", + "rungen": "^0.3.2" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "redux": ">=4" + } + }, + "node_modules/@wordpress/redux-routine/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/reusable-blocks": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/reusable-blocks/-/reusable-blocks-5.51.0.tgz", + "integrity": "sha512-71InpOoP5JXmGBDUKGUW639HC9PXpoUssAFPAYDRXH8aR+2AtpQmNJdsZ+bn/VV+3PFJAxWfjEYBMghiog3H1A==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/base-styles": "^11.0.0", + "@wordpress/block-editor": "^16.0.0", + "@wordpress/blocks": "^15.24.0", + "@wordpress/components": "^37.0.0", + "@wordpress/core-data": "^7.51.0", + "@wordpress/data": "^10.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/notices": "^5.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/url": "^4.51.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@ariakit/react": { + "version": "0.4.35", + "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", + "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", + "license": "MIT", + "dependencies": { + "@ariakit/react-components": "0.3.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/ariakit" + }, + "peerDependencies": { + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@types/gradient-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", + "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", + "license": "MIT" + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/base-styles": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", + "integrity": "sha512-w+n/AWSNfDx5RhPIpKCi7Iptn+8+Sll8uJhyx6X62zkkHDX51H2vZTU2XaXOQGx5U7xQcaVTbHjVDgYBwkU4Vg==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/block-editor": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/block-editor/-/block-editor-16.0.0.tgz", + "integrity": "sha512-hH7w5gbgjwsYLPTw1JFqNTtEe+O2kHvbzoht4g5sUHGThKR7NrVMHuLnNS7iOcz+k1VZpVRjXrWJlBsEj2en2g==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@react-spring/web": "^9.4.5", + "@wordpress/a11y": "^4.51.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/blob": "^4.51.0", + "@wordpress/block-serialization-default-parser": "^5.51.0", + "@wordpress/blocks": "^15.24.0", + "@wordpress/commands": "^1.51.0", + "@wordpress/components": "^37.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/data": "^10.51.0", + "@wordpress/dataviews": "^17.2.0", + "@wordpress/date": "^5.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/escape-html": "^3.51.0", + "@wordpress/global-styles-engine": "^1.18.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/image-cropper": "^1.15.0", + "@wordpress/interactivity": "^6.51.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keyboard-shortcuts": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/notices": "^5.51.0", + "@wordpress/preferences": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/style-engine": "^2.51.0", + "@wordpress/token-list": "^3.51.0", + "@wordpress/ui": "^0.18.0", + "@wordpress/upload-media": "^0.36.0", + "@wordpress/url": "^4.51.0", + "@wordpress/warning": "^3.51.0", + "@wordpress/wordcount": "^4.51.0", + "change-case": "^4.1.2", + "clsx": "^2.1.1", + "colord": "^2.9.3", + "deepmerge": "^4.3.1", + "diff": "^8.0.3", + "fast-deep-equal": "^3.1.3", + "memize": "^2.1.0", + "parsel-js": "^1.1.2", + "postcss": "^8.4.38", + "postcss-prefix-selector": "^1.16.0", + "postcss-urlrebase": "^1.4.0", + "react-autosize-textarea": "^7.1.0", + "react-easy-crop": "^5.4.2", + "remove-accents": "^0.5.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/block-editor/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/block-editor/node_modules/@wordpress/ui": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/@wordpress/ui/-/ui-0.18.0.tgz", + "integrity": "sha512-TIMsjaRl5/QJEjKbtoa0YAhzVdcvAk/FmA9rgJVR6oG/l6+s0WgoebGASEVyRyoOstq45xB7PzYMdjVs7iS0zg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@base-ui/react": "^1.6.0", + "@wordpress/a11y": "^4.51.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/theme": "^1.0.0", + "clsx": "^2.1.1", + "tabbable": "^6.4.0" + }, + "engines": { + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/block-editor/node_modules/@wordpress/ui/node_modules/@base-ui/react": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", + "integrity": "sha512-/jzjTWJYXhRFO45Bev9lc3cHbmjzCMpUqbMZ2AgKy/z25mY9B6shGSNcXcjQar9n5doM0KYW1W8fcFv2jZBuMw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.29.2", + "@base-ui/utils": "0.3.1", + "@floating-ui/react-dom": "^2.1.8", + "@floating-ui/utils": "^0.2.11", + "use-sync-external-store": "^1.6.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@date-fns/tz": "^1.2.0", + "@types/react": "^17 || ^18 || ^19", + "date-fns": "^4.0.0", + "react": "^17 || ^18 || ^19", + "react-dom": "^17 || ^18 || ^19" + }, + "peerDependenciesMeta": { + "@date-fns/tz": { + "optional": true + }, + "@types/react": { + "optional": true + }, + "date-fns": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/block-editor/node_modules/@wordpress/ui/node_modules/@wordpress/primitives": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/element": "^8.3.0", + "clsx": "^2.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/block-editor/node_modules/@wordpress/ui/node_modules/@wordpress/theme": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/theme/-/theme-1.0.0.tgz", + "integrity": "sha512-zPwDgv7xx3f4h+lLCq95szofMAMjSIlkIIfR7U2cxQws5J6XnnTsOxHWJTE6V4jPzS19vzFdQdZ9wiR/X3c0Lw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/compose": "^8.4.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "colorjs.io": "^0.6.0", + "memize": "^2.1.0" + }, + "engines": { + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "esbuild": "^0.27.2", + "postcss": "^8.0.0", + "react": "^18 || ^19", + "react-dom": "^18 || ^19", + "stylelint": "^16.8.2", + "vite": "^7.3.2" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "postcss": { + "optional": true + }, + "stylelint": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/block-editor/node_modules/@wordpress/upload-media": { + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/@wordpress/upload-media/-/upload-media-0.36.0.tgz", + "integrity": "sha512-Dl1IIVrSoSuoOBp2vyncgi7lFHJpAac104WR6t66wf0YyCg7xih0XDVneISw1N3ivZ8fEZHXSz2TZ5gz6GmSqQ==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/blob": "^4.51.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/data": "^10.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/preferences": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/url": "^4.51.0", + "@wordpress/video-conversion": "^0.2.0", + "@wordpress/vips": "^2.4.0", + "uuid": "^14.0.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/blocks": { + "version": "15.24.0", + "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-15.24.0.tgz", + "integrity": "sha512-C/OseZS0Znx7Wqd/RGJdVXnn4z9lLfJ/SNehzyJ1ViiBTktDNS5RWiYAYJ+kwJ5unBbTy1KDXC9PGzR0Ib4Y5g==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/autop": "^4.51.0", + "@wordpress/blob": "^4.51.0", + "@wordpress/block-serialization-default-parser": "^5.51.0", + "@wordpress/data": "^10.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/shortcode": "^4.51.0", + "@wordpress/warning": "^3.51.0", + "change-case": "^4.1.2", + "colord": "^2.9.3", + "fast-deep-equal": "^3.1.3", + "hpq": "^1.3.0", + "is-plain-object": "^5.0.0", + "marked": "^18.0.3", + "memize": "^2.1.0", + "react-is": "^18.3.0", + "remove-accents": "^0.5.0", + "simple-html-tokenizer": "^0.5.7", + "uuid": "^14.0.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/components": { + "version": "37.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-37.0.0.tgz", + "integrity": "sha512-Lol3iUujNnn4uHxI4VARDVEJIFUKlBtZUMcSFWofiYRZc8aV5BplyKC+sRAhKm+KFNBQjZtqd4PdixtaOHuX6w==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@ariakit/react": "^0.4.32", + "@date-fns/utc": "^2.1.1", + "@emotion/cache": "^11.14.0", + "@emotion/css": "^11.13.5", + "@emotion/react": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/styled": "^11.14.1", + "@emotion/utils": "^1.4.2", + "@floating-ui/react-dom": "^2.0.8", + "@types/gradient-parser": "^1.1.0", + "@types/highlight-words-core": "^1.2.1", + "@use-gesture/react": "^10.3.1", + "@wordpress/a11y": "^4.51.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/date": "^5.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/escape-html": "^3.51.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/ui": "^0.18.0", + "@wordpress/warning": "^3.51.0", + "change-case": "^4.1.2", + "clsx": "^2.1.1", + "colord": "^2.9.3", + "csstype": "^3.2.3", + "date-fns": "^4.1.0", + "deepmerge": "^4.3.1", + "fast-deep-equal": "^3.1.3", + "framer-motion": "^11.15.0", + "gradient-parser": "^1.1.1", + "highlight-words-core": "^1.2.2", + "is-plain-object": "^5.0.0", + "memize": "^2.1.0", + "path-to-regexp": "^6.2.1", + "re-resizable": "^6.4.0", + "react-colorful": "^5.6.1", + "react-day-picker": "^9.7.0", + "remove-accents": "^0.5.0", + "uuid": "^14.0.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/components/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/components/node_modules/@wordpress/primitives": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/element": "^8.3.0", + "clsx": "^2.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/components/node_modules/@wordpress/ui": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/@wordpress/ui/-/ui-0.18.0.tgz", + "integrity": "sha512-TIMsjaRl5/QJEjKbtoa0YAhzVdcvAk/FmA9rgJVR6oG/l6+s0WgoebGASEVyRyoOstq45xB7PzYMdjVs7iS0zg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@base-ui/react": "^1.6.0", + "@wordpress/a11y": "^4.51.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/theme": "^1.0.0", + "clsx": "^2.1.1", + "tabbable": "^6.4.0" + }, + "engines": { + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/components/node_modules/@wordpress/ui/node_modules/@base-ui/react": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", + "integrity": "sha512-/jzjTWJYXhRFO45Bev9lc3cHbmjzCMpUqbMZ2AgKy/z25mY9B6shGSNcXcjQar9n5doM0KYW1W8fcFv2jZBuMw==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.29.2", + "@base-ui/utils": "0.3.1", + "@floating-ui/react-dom": "^2.1.8", + "@floating-ui/utils": "^0.2.11", + "use-sync-external-store": "^1.6.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@date-fns/tz": "^1.2.0", + "@types/react": "^17 || ^18 || ^19", + "date-fns": "^4.0.0", + "react": "^17 || ^18 || ^19", + "react-dom": "^17 || ^18 || ^19" + }, + "peerDependenciesMeta": { + "@date-fns/tz": { + "optional": true + }, + "@types/react": { + "optional": true + }, + "date-fns": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/components/node_modules/@wordpress/ui/node_modules/@wordpress/theme": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/theme/-/theme-1.0.0.tgz", + "integrity": "sha512-zPwDgv7xx3f4h+lLCq95szofMAMjSIlkIIfR7U2cxQws5J6XnnTsOxHWJTE6V4jPzS19vzFdQdZ9wiR/X3c0Lw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/compose": "^8.4.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "colorjs.io": "^0.6.0", + "memize": "^2.1.0" + }, + "engines": { + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "esbuild": "^0.27.2", + "postcss": "^8.0.0", + "react": "^18 || ^19", + "react-dom": "^18 || ^19", + "stylelint": "^16.8.2", + "vite": "^7.3.2" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "postcss": { + "optional": true + }, + "stylelint": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/date": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", + "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/deprecated": "^4.51.0", + "moment": "^2.29.4", + "moment-timezone": "^0.5.40" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/icons": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-15.2.0.tgz", + "integrity": "sha512-g/1a4eTNH/mCluvmryNcYAg1GxsjY6xGjfGJRq3z44SEcB8jAZyEQtqdcGQ+o2kHelKhmmqS8WAowxif44ZgNQ==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/element": "^8.3.0", + "@wordpress/primitives": "^4.51.0", + "change-case": "^4.1.2" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/icons/node_modules/@wordpress/primitives": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/element": "^8.3.0", + "clsx": "^2.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/style-runtime": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", + "integrity": "sha512-PeAcF7qoIMg9ChS5SfkRrLLcUx9D7Te6weRcQmoKYgxE7jSzzXpoaiy3Z+Us+ChyisolF4xhTg5DblMBPL1iug==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=20.10.0", + "npm": ">=10.2.3" + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/date-fns": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.4.0.tgz", + "integrity": "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/gradient-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-1.2.0.tgz", + "integrity": "sha512-6ABGa9CR7WR/0pAJicBy5SJkiikbFM6kf/JjykwX7x+t+s8ORWVnlbi6FkHeFFb36yWsjUpHqSYrygd7ofEUqA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/reusable-blocks/node_modules/path-to-regexp": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", + "license": "MIT" + }, + "node_modules/@wordpress/reusable-blocks/node_modules/uuid": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.1.tgz", + "integrity": "sha512-6ZxzVpzDXDa3bJWaHilVayA+BH/1zmxCJoVgvmqJnid/gPoKHxUrS/aC/T6LGQtNHT+XHG9fXPJB4d+IrU30Ew==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist-node/bin/uuid" + } + }, + "node_modules/@wordpress/rich-text": { + "version": "7.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/rich-text/-/rich-text-7.51.0.tgz", + "integrity": "sha512-SYe7N6GMTZ3DMwNrC69EuFc/tv0KJNfWKoLJWOepIJuuseWj+JVrSAUO13Dv1c8Q0syr8zR2RJvS5G4jiMgAsA==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/a11y": "^4.51.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/data": "^10.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/escape-html": "^3.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "colord": "^2.9.3", + "memize": "^2.1.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/rich-text/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/rich-text/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/rich-text/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/scripts": { + "version": "30.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-30.7.0.tgz", + "integrity": "sha512-vwrf6Xo1GXV2ug4xdYMgZ2CVpNNfArOEJyX6w9CafIRmLOm8GkVGSza0VlEoOh1BTqQPv/awq6uiOKVMbVNB5Q==", + "dev": true, + "license": "GPL-2.0-or-later", + "dependencies": { + "@babel/core": "7.25.7", + "@pmmmwh/react-refresh-webpack-plugin": "^0.5.11", + "@svgr/webpack": "^8.0.1", + "@wordpress/babel-preset-default": "*", + "@wordpress/browserslist-config": "*", + "@wordpress/dependency-extraction-webpack-plugin": "*", + "@wordpress/e2e-test-utils-playwright": "*", + "@wordpress/eslint-plugin": "*", + "@wordpress/jest-preset-default": "*", + "@wordpress/npm-package-json-lint-config": "*", + "@wordpress/postcss-plugins-preset": "*", + "@wordpress/prettier-config": "*", + "@wordpress/stylelint-config": "*", + "adm-zip": "^0.5.9", + "babel-jest": "29.7.0", + "babel-loader": "9.2.1", + "browserslist": "^4.21.10", + "chalk": "^4.0.0", + "check-node-version": "^4.1.0", + "clean-webpack-plugin": "^3.0.0", + "copy-webpack-plugin": "^10.2.0", + "cross-spawn": "^7.0.6", + "css-loader": "^6.2.0", + "cssnano": "^6.0.1", + "cwd": "^0.10.0", + "dir-glob": "^3.0.1", + "eslint": "^8.3.0", + "expect-puppeteer": "^4.4.0", + "fast-glob": "^3.2.7", + "filenamify": "^4.2.0", + "jest": "^29.6.2", + "jest-dev-server": "^10.1.4", + "jest-environment-jsdom": "^29.6.2", + "jest-environment-node": "^29.6.2", + "json2php": "^0.0.9", + "markdownlint-cli": "^0.31.1", + "merge-deep": "^3.0.3", + "mini-css-extract-plugin": "^2.9.2", + "minimist": "^1.2.0", + "npm-package-json-lint": "^6.4.0", + "npm-packlist": "^3.0.0", + "postcss": "^8.4.5", + "postcss-loader": "^6.2.1", + "prettier": "npm:wp-prettier@3.0.3", + "puppeteer-core": "^23.10.1", + "react-refresh": "^0.14.0", + "read-pkg-up": "^7.0.1", + "resolve-bin": "^0.4.0", + "rtlcss-webpack-plugin": "^4.0.7", + "sass": "^1.50.1", + "sass-loader": "^16.0.3", + "schema-utils": "^4.2.0", + "source-map-loader": "^3.0.0", + "stylelint": "^16.8.2", + "terser-webpack-plugin": "^5.3.10", + "url-loader": "^4.1.1", + "webpack": "^5.97.0", + "webpack-bundle-analyzer": "^4.9.1", + "webpack-cli": "^5.1.4", + "webpack-dev-server": "^4.15.1" + }, + "bin": { + "wp-scripts": "bin/wp-scripts.js" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@playwright/test": "^1.48.1", + "react": "^18.0.0", + "react-dom": "^18.0.0" + } + }, + "node_modules/@wordpress/scripts/node_modules/@csstools/selector-specificity": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-4.0.0.tgz", + "integrity": "sha512-189nelqtPd8++phaHNwYovKZI0FOzH1vQEE3QhHHkNIGrg5fSs9CbYP3RvfEH5geztnIA9Jwq91wyOIwAW5JIQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.1.0" + } + }, + "node_modules/@wordpress/scripts/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/@wordpress/scripts/node_modules/array-union": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-3.0.1.tgz", + "integrity": "sha512-1OvF9IbWwaeiM9VhzYXVQacMibxpXOMYVNIvMtKRyX9SImBXpKcFr8XvFDeEslCyuH/t6KRt7HEO94AlP8Iatw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@wordpress/scripts/node_modules/balanced-match": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz", + "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@wordpress/scripts/node_modules/copy-webpack-plugin": { + "version": "10.2.4", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-10.2.4.tgz", + "integrity": "sha512-xFVltahqlsRcyyJqQbDY6EYTtyQZF9rf+JPjwHObLdPFMEISqkFkr7mFoVOC6BfYS/dNThyoQKvziugm+OnwBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-glob": "^3.2.7", + "glob-parent": "^6.0.1", + "globby": "^12.0.2", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "engines": { + "node": ">= 12.20.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + } + }, + "node_modules/@wordpress/scripts/node_modules/cosmiconfig": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz", + "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==", + "dev": true, + "license": "MIT", + "dependencies": { + "env-paths": "^2.2.1", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@wordpress/scripts/node_modules/css-loader": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.11.0.tgz", + "integrity": "sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==", + "dev": true, + "license": "MIT", + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.33", + "postcss-modules-extract-imports": "^3.1.0", + "postcss-modules-local-by-default": "^4.0.5", + "postcss-modules-scope": "^3.2.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } + } + }, + "node_modules/@wordpress/scripts/node_modules/css-tree": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.0.1.tgz", + "integrity": "sha512-8Fxxv+tGhORlshCdCwnNJytvlvq46sOLSYEx2ZIGurahWvMucSRnyjPA3AmrMq4VPRYbHVpWj5VkiVasrM2H4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "mdn-data": "2.12.1", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + } + }, + "node_modules/@wordpress/scripts/node_modules/file-entry-cache": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-9.1.0.tgz", + "integrity": "sha512-/pqPFG+FdxWQj+/WSuzXSDaNzxgTLr/OrR1QuqfEZzDakpdYE70PwUxL7BPUa8hpjbvY1+qvCl8k+8Tq34xJgg==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@wordpress/scripts/node_modules/flat-cache": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-5.0.0.tgz", + "integrity": "sha512-JrqFmyUl2PnPi1OvLyTVHnQvwQ0S+e6lGSwu8OkAZlSaNIZciTY2H/cOOROxsBA1m/LZNHDsqAgDZt6akWcjsQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.3.1", + "keyv": "^4.5.4" }, "engines": { - "node": ">=6.9.0" + "node": ">=18" } }, - "node_modules/@wordpress/scripts": { - "version": "30.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-30.7.0.tgz", - "integrity": "sha512-vwrf6Xo1GXV2ug4xdYMgZ2CVpNNfArOEJyX6w9CafIRmLOm8GkVGSza0VlEoOh1BTqQPv/awq6uiOKVMbVNB5Q==", + "node_modules/@wordpress/scripts/node_modules/global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", "dev": true, - "license": "GPL-2.0-or-later", + "license": "MIT", "dependencies": { - "@babel/core": "7.25.7", - "@pmmmwh/react-refresh-webpack-plugin": "^0.5.11", - "@svgr/webpack": "^8.0.1", - "@wordpress/babel-preset-default": "*", - "@wordpress/browserslist-config": "*", - "@wordpress/dependency-extraction-webpack-plugin": "*", - "@wordpress/e2e-test-utils-playwright": "*", - "@wordpress/eslint-plugin": "*", - "@wordpress/jest-preset-default": "*", - "@wordpress/npm-package-json-lint-config": "*", - "@wordpress/postcss-plugins-preset": "*", - "@wordpress/prettier-config": "*", - "@wordpress/stylelint-config": "*", - "adm-zip": "^0.5.9", - "babel-jest": "29.7.0", - "babel-loader": "9.2.1", - "browserslist": "^4.21.10", - "chalk": "^4.0.0", - "check-node-version": "^4.1.0", - "clean-webpack-plugin": "^3.0.0", - "copy-webpack-plugin": "^10.2.0", - "cross-spawn": "^7.0.6", - "css-loader": "^6.2.0", - "cssnano": "^6.0.1", - "cwd": "^0.10.0", + "global-prefix": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@wordpress/scripts/node_modules/global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dev": true, + "license": "MIT", + "dependencies": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@wordpress/scripts/node_modules/globby": { + "version": "12.2.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-12.2.0.tgz", + "integrity": "sha512-wiSuFQLZ+urS9x2gGPl1H5drc5twabmm4m2gTR27XDFyjUHJUNsS8o/2aKyIF6IoBaR630atdher0XJ5g6OMmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-union": "^3.0.1", "dir-glob": "^3.0.1", - "eslint": "^8.3.0", - "expect-puppeteer": "^4.4.0", "fast-glob": "^3.2.7", - "filenamify": "^4.2.0", - "jest": "^29.6.2", - "jest-dev-server": "^10.1.4", - "jest-environment-jsdom": "^29.6.2", - "jest-environment-node": "^29.6.2", - "json2php": "^0.0.9", - "markdownlint-cli": "^0.31.1", - "merge-deep": "^3.0.3", - "mini-css-extract-plugin": "^2.9.2", - "minimist": "^1.2.0", - "npm-package-json-lint": "^6.4.0", - "npm-packlist": "^3.0.0", - "postcss": "^8.4.5", - "postcss-loader": "^6.2.1", - "prettier": "npm:wp-prettier@3.0.3", - "puppeteer-core": "^23.10.1", - "react-refresh": "^0.14.0", - "read-pkg-up": "^7.0.1", - "resolve-bin": "^0.4.0", - "rtlcss-webpack-plugin": "^4.0.7", - "sass": "^1.50.1", - "sass-loader": "^16.0.3", - "schema-utils": "^4.2.0", - "source-map-loader": "^3.0.0", - "stylelint": "^16.8.2", - "terser-webpack-plugin": "^5.3.10", - "url-loader": "^4.1.1", - "webpack": "^5.97.0", - "webpack-bundle-analyzer": "^4.9.1", - "webpack-cli": "^5.1.4", - "webpack-dev-server": "^4.15.1" + "ignore": "^5.1.9", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@wordpress/scripts/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/scripts/node_modules/js-yaml": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.0.tgz", + "integrity": "sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/puzrin" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nodeca" + } + ], + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" }, "bin": { - "wp-scripts": "bin/wp-scripts.js" + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@wordpress/scripts/node_modules/json2php": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/json2php/-/json2php-0.0.9.tgz", + "integrity": "sha512-fQMYwvPsQt8hxRnCGyg1r2JVi6yL8Um0DIIawiKiMK9yhAAkcRNj5UsBWoaFvFzPpcWbgw9L6wzj+UMYA702Mw==", + "dev": true, + "license": "BSD" + }, + "node_modules/@wordpress/scripts/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/scripts/node_modules/known-css-properties": { + "version": "0.34.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.34.0.tgz", + "integrity": "sha512-tBECoUqNFbyAY4RrbqsBQqDFpGXAEbdD5QKr8kACx3+rnArmuuR22nKQWKazvp07N9yjTyDZaw/20UIH8tL9DQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@wordpress/scripts/node_modules/mdn-data": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.12.1.tgz", + "integrity": "sha512-rsfnCbOHjqrhWxwt5/wtSLzpoKTzW7OXdT5lLOIH1OTYhWu9rRJveGq0sKvDZODABH7RX+uoR+DYcpFnq4Tf6Q==", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/@wordpress/scripts/node_modules/meow": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-13.2.0.tgz", + "integrity": "sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@wordpress/scripts/node_modules/postcss-safe-parser": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-7.0.1.tgz", + "integrity": "sha512-0AioNCJZ2DPYz5ABT6bddIqlhgwhpHZ/l65YAYo0BCIn0xiDpsnTHz0gnoTGk0OXZW0JRs+cDwL8u/teRdz+8A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss-safe-parser" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" + "node": ">=18.0" }, "peerDependencies": { - "@playwright/test": "^1.48.1", - "react": "^18.0.0", - "react-dom": "^18.0.0" + "postcss": "^8.4.31" } }, - "node_modules/@wordpress/scripts/node_modules/@csstools/selector-specificity": { + "node_modules/@wordpress/scripts/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@wordpress/scripts/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@wordpress/scripts/node_modules/slash": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-4.0.0.tgz", - "integrity": "sha512-189nelqtPd8++phaHNwYovKZI0FOzH1vQEE3QhHHkNIGrg5fSs9CbYP3RvfEH5geztnIA9Jwq91wyOIwAW5JIQ==", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@wordpress/scripts/node_modules/stylelint": { + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.10.0.tgz", + "integrity": "sha512-z/8X2rZ52dt2c0stVwI9QL2AFJhLhbPkyfpDFcizs200V/g7v+UYY6SNcB9hKOLcDDX/yGLDsY/pX08sLkz9xQ==", "dev": true, "funding": [ { - "type": "github", - "url": "https://github.com/sponsors/csstools" + "type": "opencollective", + "url": "https://opencollective.com/stylelint" }, { - "type": "opencollective", - "url": "https://opencollective.com/csstools" + "type": "github", + "url": "https://github.com/sponsors/stylelint" } ], - "license": "MIT-0", - "engines": { - "node": ">=18" + "license": "MIT", + "dependencies": { + "@csstools/css-parser-algorithms": "^3.0.1", + "@csstools/css-tokenizer": "^3.0.1", + "@csstools/media-query-list-parser": "^3.0.1", + "@csstools/selector-specificity": "^4.0.0", + "@dual-bundle/import-meta-resolve": "^4.1.0", + "balanced-match": "^2.0.0", + "colord": "^2.9.3", + "cosmiconfig": "^9.0.0", + "css-functions-list": "^3.2.3", + "css-tree": "^3.0.0", + "debug": "^4.3.7", + "fast-glob": "^3.3.2", + "fastest-levenshtein": "^1.0.16", + "file-entry-cache": "^9.1.0", + "global-modules": "^2.0.0", + "globby": "^11.1.0", + "globjoin": "^0.1.4", + "html-tags": "^3.3.1", + "ignore": "^6.0.2", + "imurmurhash": "^0.1.4", + "is-plain-object": "^5.0.0", + "known-css-properties": "^0.34.0", + "mathml-tag-names": "^2.1.3", + "meow": "^13.2.0", + "micromatch": "^4.0.8", + "normalize-path": "^3.0.0", + "picocolors": "^1.0.1", + "postcss": "^8.4.47", + "postcss-resolve-nested-selector": "^0.1.6", + "postcss-safe-parser": "^7.0.1", + "postcss-selector-parser": "^6.1.2", + "postcss-value-parser": "^4.2.0", + "resolve-from": "^5.0.0", + "string-width": "^4.2.3", + "supports-hyperlinks": "^3.1.0", + "svg-tags": "^1.0.0", + "table": "^6.8.2", + "write-file-atomic": "^5.0.1" }, - "peerDependencies": { - "postcss-selector-parser": "^6.1.0" + "bin": { + "stylelint": "bin/stylelint.mjs" + }, + "engines": { + "node": ">=18.12.0" } }, - "node_modules/@wordpress/scripts/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "node_modules/@wordpress/scripts/node_modules/stylelint/node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true, - "license": "Python-2.0" + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "node_modules/@wordpress/scripts/node_modules/array-union": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-3.0.1.tgz", - "integrity": "sha512-1OvF9IbWwaeiM9VhzYXVQacMibxpXOMYVNIvMtKRyX9SImBXpKcFr8XvFDeEslCyuH/t6KRt7HEO94AlP8Iatw==", + "node_modules/@wordpress/scripts/node_modules/stylelint/node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "dev": true, "license": "MIT", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, "engines": { - "node": ">=12" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@wordpress/scripts/node_modules/balanced-match": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz", - "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==", + "node_modules/@wordpress/scripts/node_modules/stylelint/node_modules/globby/node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, - "license": "MIT" + "license": "MIT", + "engines": { + "node": ">= 4" + } }, - "node_modules/@wordpress/scripts/node_modules/copy-webpack-plugin": { - "version": "10.2.4", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-10.2.4.tgz", - "integrity": "sha512-xFVltahqlsRcyyJqQbDY6EYTtyQZF9rf+JPjwHObLdPFMEISqkFkr7mFoVOC6BfYS/dNThyoQKvziugm+OnwBg==", + "node_modules/@wordpress/scripts/node_modules/stylelint/node_modules/ignore": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-6.0.2.tgz", + "integrity": "sha512-InwqeHHN2XpumIkMvpl/DCJVrAHgCsG5+cn1XlnLWGwtZBm8QJfSusItfrwx81CTp5agNZqpKU2J/ccC5nGT4A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/@wordpress/scripts/node_modules/stylelint/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@wordpress/scripts/node_modules/supports-hyperlinks": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-3.1.0.tgz", + "integrity": "sha512-2rn0BZ+/f7puLOHZm1HOJfwBggfaHXUpPUSSG/SWM4TWp5KCfmNYwnC3hruy2rZlMnmWZ+QAGpZfchu3f3695A==", "dev": true, "license": "MIT", "dependencies": { - "fast-glob": "^3.2.7", - "glob-parent": "^6.0.1", - "globby": "^12.0.2", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0" + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" }, "engines": { - "node": ">= 12.20.0" + "node": ">=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@wordpress/scripts/node_modules/write-file-atomic": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", + "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@wordpress/server-side-render": { + "version": "6.27.0", + "resolved": "https://registry.npmjs.org/@wordpress/server-side-render/-/server-side-render-6.27.0.tgz", + "integrity": "sha512-xuuxc2WdV0j7BOvmuZGiI5ensnc1b6apV1AVyySKI0n5v1rcLIbsGEJHOotd78WTbmu4BtRgIJldM54R+TvdTg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/api-fetch": "^7.51.0", + "@wordpress/blocks": "^15.24.0", + "@wordpress/components": "^37.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/data": "^10.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/url": "^4.51.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/server-side-render/node_modules/@ariakit/react": { + "version": "0.4.35", + "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", + "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", + "license": "MIT", + "dependencies": { + "@ariakit/react-components": "0.3.4" }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/webpack" + "url": "https://opencollective.com/ariakit" }, "peerDependencies": { - "webpack": "^5.1.0" + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, - "node_modules/@wordpress/scripts/node_modules/cosmiconfig": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz", - "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==", - "dev": true, + "node_modules/@wordpress/server-side-render/node_modules/@base-ui/react": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", + "integrity": "sha512-/jzjTWJYXhRFO45Bev9lc3cHbmjzCMpUqbMZ2AgKy/z25mY9B6shGSNcXcjQar9n5doM0KYW1W8fcFv2jZBuMw==", "license": "MIT", "dependencies": { - "env-paths": "^2.2.1", - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "parse-json": "^5.2.0" + "@babel/runtime": "^7.29.2", + "@base-ui/utils": "0.3.1", + "@floating-ui/react-dom": "^2.1.8", + "@floating-ui/utils": "^0.2.11", + "use-sync-external-store": "^1.6.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@date-fns/tz": "^1.2.0", + "@types/react": "^17 || ^18 || ^19", + "date-fns": "^4.0.0", + "react": "^17 || ^18 || ^19", + "react-dom": "^17 || ^18 || ^19" + }, + "peerDependenciesMeta": { + "@date-fns/tz": { + "optional": true + }, + "@types/react": { + "optional": true + }, + "date-fns": { + "optional": true + } + } + }, + "node_modules/@wordpress/server-side-render/node_modules/@types/gradient-parser": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", + "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", + "license": "MIT" + }, + "node_modules/@wordpress/server-side-render/node_modules/@wordpress/base-styles": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", + "integrity": "sha512-w+n/AWSNfDx5RhPIpKCi7Iptn+8+Sll8uJhyx6X62zkkHDX51H2vZTU2XaXOQGx5U7xQcaVTbHjVDgYBwkU4Vg==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/server-side-render/node_modules/@wordpress/blocks": { + "version": "15.24.0", + "resolved": "https://registry.npmjs.org/@wordpress/blocks/-/blocks-15.24.0.tgz", + "integrity": "sha512-C/OseZS0Znx7Wqd/RGJdVXnn4z9lLfJ/SNehzyJ1ViiBTktDNS5RWiYAYJ+kwJ5unBbTy1KDXC9PGzR0Ib4Y5g==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/autop": "^4.51.0", + "@wordpress/blob": "^4.51.0", + "@wordpress/block-serialization-default-parser": "^5.51.0", + "@wordpress/data": "^10.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/shortcode": "^4.51.0", + "@wordpress/warning": "^3.51.0", + "change-case": "^4.1.2", + "colord": "^2.9.3", + "fast-deep-equal": "^3.1.3", + "hpq": "^1.3.0", + "is-plain-object": "^5.0.0", + "marked": "^18.0.3", + "memize": "^2.1.0", + "react-is": "^18.3.0", + "remove-accents": "^0.5.0", + "simple-html-tokenizer": "^0.5.7", + "uuid": "^14.0.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/server-side-render/node_modules/@wordpress/components": { + "version": "37.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-37.0.0.tgz", + "integrity": "sha512-Lol3iUujNnn4uHxI4VARDVEJIFUKlBtZUMcSFWofiYRZc8aV5BplyKC+sRAhKm+KFNBQjZtqd4PdixtaOHuX6w==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@ariakit/react": "^0.4.32", + "@date-fns/utc": "^2.1.1", + "@emotion/cache": "^11.14.0", + "@emotion/css": "^11.13.5", + "@emotion/react": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/styled": "^11.14.1", + "@emotion/utils": "^1.4.2", + "@floating-ui/react-dom": "^2.0.8", + "@types/gradient-parser": "^1.1.0", + "@types/highlight-words-core": "^1.2.1", + "@use-gesture/react": "^10.3.1", + "@wordpress/a11y": "^4.51.0", + "@wordpress/base-styles": "^11.0.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/date": "^5.51.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/escape-html": "^3.51.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/html-entities": "^4.51.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/rich-text": "^7.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/ui": "^0.18.0", + "@wordpress/warning": "^3.51.0", + "change-case": "^4.1.2", + "clsx": "^2.1.1", + "colord": "^2.9.3", + "csstype": "^3.2.3", + "date-fns": "^4.1.0", + "deepmerge": "^4.3.1", + "fast-deep-equal": "^3.1.3", + "framer-motion": "^11.15.0", + "gradient-parser": "^1.1.1", + "highlight-words-core": "^1.2.2", + "is-plain-object": "^5.0.0", + "memize": "^2.1.0", + "path-to-regexp": "^6.2.1", + "re-resizable": "^6.4.0", + "react-colorful": "^5.6.1", + "react-day-picker": "^9.7.0", + "remove-accents": "^0.5.0", + "uuid": "^14.0.0" }, "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/d-fischer" + "node": ">=18.12.0", + "npm": ">=8.19.2" }, "peerDependencies": { - "typescript": ">=4.9.5" + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" }, "peerDependenciesMeta": { - "typescript": { + "@types/react": { "optional": true } } }, - "node_modules/@wordpress/scripts/node_modules/css-loader": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.11.0.tgz", - "integrity": "sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==", - "dev": true, - "license": "MIT", + "node_modules/@wordpress/server-side-render/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", + "license": "GPL-2.0-or-later", "dependencies": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.33", - "postcss-modules-extract-imports": "^3.1.0", - "postcss-modules-local-by-default": "^4.0.5", - "postcss-modules-scope": "^3.2.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.5.4" + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" }, "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "node": ">=18.12.0", + "npm": ">=8.19.2" }, "peerDependencies": { - "@rspack/core": "0.x || 1.x", - "webpack": "^5.0.0" + "@types/react": "^18 || ^19", + "react": "^18 || ^19" }, "peerDependenciesMeta": { - "@rspack/core": { - "optional": true - }, - "webpack": { + "@types/react": { "optional": true } } }, - "node_modules/@wordpress/scripts/node_modules/css-tree": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.0.1.tgz", - "integrity": "sha512-8Fxxv+tGhORlshCdCwnNJytvlvq46sOLSYEx2ZIGurahWvMucSRnyjPA3AmrMq4VPRYbHVpWj5VkiVasrM2H4Q==", - "dev": true, - "license": "MIT", + "node_modules/@wordpress/server-side-render/node_modules/@wordpress/date": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", + "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", + "license": "GPL-2.0-or-later", "dependencies": { - "mdn-data": "2.12.1", - "source-map-js": "^1.0.1" + "@wordpress/deprecated": "^4.51.0", + "moment": "^2.29.4", + "moment-timezone": "^0.5.40" }, "engines": { - "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + "node": ">=18.12.0", + "npm": ">=8.19.2" } }, - "node_modules/@wordpress/scripts/node_modules/file-entry-cache": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-9.1.0.tgz", - "integrity": "sha512-/pqPFG+FdxWQj+/WSuzXSDaNzxgTLr/OrR1QuqfEZzDakpdYE70PwUxL7BPUa8hpjbvY1+qvCl8k+8Tq34xJgg==", - "dev": true, - "license": "MIT", + "node_modules/@wordpress/server-side-render/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", + "license": "GPL-2.0-or-later", "dependencies": { - "flat-cache": "^5.0.0" + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "engines": { - "node": ">=18" + "node": ">=18.12.0", + "npm": ">=8.19.2" } }, - "node_modules/@wordpress/scripts/node_modules/flat-cache": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-5.0.0.tgz", - "integrity": "sha512-JrqFmyUl2PnPi1OvLyTVHnQvwQ0S+e6lGSwu8OkAZlSaNIZciTY2H/cOOROxsBA1m/LZNHDsqAgDZt6akWcjsQ==", - "dev": true, - "license": "MIT", + "node_modules/@wordpress/server-side-render/node_modules/@wordpress/icons": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-15.2.0.tgz", + "integrity": "sha512-g/1a4eTNH/mCluvmryNcYAg1GxsjY6xGjfGJRq3z44SEcB8jAZyEQtqdcGQ+o2kHelKhmmqS8WAowxif44ZgNQ==", + "license": "GPL-2.0-or-later", "dependencies": { - "flatted": "^3.3.1", - "keyv": "^4.5.4" + "@wordpress/element": "^8.3.0", + "@wordpress/primitives": "^4.51.0", + "change-case": "^4.1.2" }, "engines": { - "node": ">=18" - } - }, - "node_modules/@wordpress/scripts/node_modules/global-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", - "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", - "dev": true, - "license": "MIT", - "dependencies": { - "global-prefix": "^3.0.0" + "node": ">=18.12.0", + "npm": ">=8.19.2" }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@wordpress/scripts/node_modules/global-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" }, - "engines": { - "node": ">=6" + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/scripts/node_modules/globby": { - "version": "12.2.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-12.2.0.tgz", - "integrity": "sha512-wiSuFQLZ+urS9x2gGPl1H5drc5twabmm4m2gTR27XDFyjUHJUNsS8o/2aKyIF6IoBaR630atdher0XJ5g6OMmA==", - "dev": true, - "license": "MIT", + "node_modules/@wordpress/server-side-render/node_modules/@wordpress/primitives": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", + "license": "GPL-2.0-or-later", "dependencies": { - "array-union": "^3.0.1", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.7", - "ignore": "^5.1.9", - "merge2": "^1.4.1", - "slash": "^4.0.0" + "@wordpress/element": "^8.3.0", + "clsx": "^2.1.1" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=18.12.0", + "npm": ">=8.19.2" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/scripts/node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "dev": true, - "license": "MIT", + "node_modules/@wordpress/server-side-render/node_modules/@wordpress/style-runtime": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", + "integrity": "sha512-PeAcF7qoIMg9ChS5SfkRrLLcUx9D7Te6weRcQmoKYgxE7jSzzXpoaiy3Z+Us+ChyisolF4xhTg5DblMBPL1iug==", + "license": "GPL-2.0-or-later", "engines": { - "node": ">=0.10.0" + "node": ">=20.10.0", + "npm": ">=10.2.3" } }, - "node_modules/@wordpress/scripts/node_modules/js-yaml": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.0.tgz", - "integrity": "sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/puzrin" - }, - { - "type": "github", - "url": "https://github.com/sponsors/nodeca" - } - ], - "license": "MIT", + "node_modules/@wordpress/server-side-render/node_modules/@wordpress/theme": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/theme/-/theme-1.0.0.tgz", + "integrity": "sha512-zPwDgv7xx3f4h+lLCq95szofMAMjSIlkIIfR7U2cxQws5J6XnnTsOxHWJTE6V4jPzS19vzFdQdZ9wiR/X3c0Lw==", + "license": "GPL-2.0-or-later", "dependencies": { - "argparse": "^2.0.1" + "@wordpress/compose": "^8.4.0", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "colorjs.io": "^0.6.0", + "memize": "^2.1.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@wordpress/scripts/node_modules/json2php": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/json2php/-/json2php-0.0.9.tgz", - "integrity": "sha512-fQMYwvPsQt8hxRnCGyg1r2JVi6yL8Um0DIIawiKiMK9yhAAkcRNj5UsBWoaFvFzPpcWbgw9L6wzj+UMYA702Mw==", - "dev": true, - "license": "BSD" - }, - "node_modules/@wordpress/scripts/node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@wordpress/scripts/node_modules/known-css-properties": { - "version": "0.34.0", - "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.34.0.tgz", - "integrity": "sha512-tBECoUqNFbyAY4RrbqsBQqDFpGXAEbdD5QKr8kACx3+rnArmuuR22nKQWKazvp07N9yjTyDZaw/20UIH8tL9DQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/@wordpress/scripts/node_modules/mdn-data": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.12.1.tgz", - "integrity": "sha512-rsfnCbOHjqrhWxwt5/wtSLzpoKTzW7OXdT5lLOIH1OTYhWu9rRJveGq0sKvDZODABH7RX+uoR+DYcpFnq4Tf6Q==", - "dev": true, - "license": "CC0-1.0" - }, - "node_modules/@wordpress/scripts/node_modules/meow": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-13.2.0.tgz", - "integrity": "sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==", - "dev": true, - "license": "MIT", "engines": { - "node": ">=18" + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@wordpress/scripts/node_modules/postcss-safe-parser": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-7.0.1.tgz", - "integrity": "sha512-0AioNCJZ2DPYz5ABT6bddIqlhgwhpHZ/l65YAYo0BCIn0xiDpsnTHz0gnoTGk0OXZW0JRs+cDwL8u/teRdz+8A==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" + "peerDependencies": { + "@types/react": "^18 || ^19", + "esbuild": "^0.27.2", + "postcss": "^8.0.0", + "react": "^18 || ^19", + "react-dom": "^18 || ^19", + "stylelint": "^16.8.2", + "vite": "^7.3.2" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "postcss": { + "optional": true }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss-safe-parser" + "stylelint": { + "optional": true }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" + "vite": { + "optional": true } - ], - "license": "MIT", + } + }, + "node_modules/@wordpress/server-side-render/node_modules/@wordpress/ui": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/@wordpress/ui/-/ui-0.18.0.tgz", + "integrity": "sha512-TIMsjaRl5/QJEjKbtoa0YAhzVdcvAk/FmA9rgJVR6oG/l6+s0WgoebGASEVyRyoOstq45xB7PzYMdjVs7iS0zg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@base-ui/react": "^1.6.0", + "@wordpress/a11y": "^4.51.0", + "@wordpress/compose": "^8.4.0", + "@wordpress/element": "^8.3.0", + "@wordpress/i18n": "^6.24.0", + "@wordpress/icons": "^15.2.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/primitives": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/style-runtime": "^0.7.0", + "@wordpress/theme": "^1.0.0", + "clsx": "^2.1.1", + "tabbable": "^6.4.0" + }, "engines": { - "node": ">=18.0" + "node": "^20.19.0 || >=22.13.0", + "npm": ">=10.2.3" }, "peerDependencies": { - "postcss": "^8.4.31" + "@types/react": "^18 || ^19", + "react": "^18 || ^19", + "react-dom": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/scripts/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "node_modules/@wordpress/server-side-render/node_modules/date-fns": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.4.0.tgz", + "integrity": "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" } }, - "node_modules/@wordpress/scripts/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "license": "ISC", + "node_modules/@wordpress/server-side-render/node_modules/gradient-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-1.2.0.tgz", + "integrity": "sha512-6ABGa9CR7WR/0pAJicBy5SJkiikbFM6kf/JjykwX7x+t+s8ORWVnlbi6FkHeFFb36yWsjUpHqSYrygd7ofEUqA==", "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=0.10.0" } }, - "node_modules/@wordpress/scripts/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true, + "node_modules/@wordpress/server-side-render/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", "license": "MIT", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/@wordpress/scripts/node_modules/stylelint": { - "version": "16.10.0", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.10.0.tgz", - "integrity": "sha512-z/8X2rZ52dt2c0stVwI9QL2AFJhLhbPkyfpDFcizs200V/g7v+UYY6SNcB9hKOLcDDX/yGLDsY/pX08sLkz9xQ==", - "dev": true, + "node_modules/@wordpress/server-side-render/node_modules/path-to-regexp": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", + "license": "MIT" + }, + "node_modules/@wordpress/server-side-render/node_modules/uuid": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.1.tgz", + "integrity": "sha512-6ZxzVpzDXDa3bJWaHilVayA+BH/1zmxCJoVgvmqJnid/gPoKHxUrS/aC/T6LGQtNHT+XHG9fXPJB4d+IrU30Ew==", "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/stylelint" - }, - { - "type": "github", - "url": "https://github.com/sponsors/stylelint" - } + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" ], "license": "MIT", + "bin": { + "uuid": "dist-node/bin/uuid" + } + }, + "node_modules/@wordpress/shortcode": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/shortcode/-/shortcode-4.51.0.tgz", + "integrity": "sha512-60PB1Q6Q0f96RreaX3ht+VpFOw6Qi/u3AoJ41Wgsmaqa57BCDeN/MgNDHn7FBF5fQ3fDSfIzdtf7JN/YNB/dNA==", + "license": "GPL-2.0-or-later", "dependencies": { - "@csstools/css-parser-algorithms": "^3.0.1", - "@csstools/css-tokenizer": "^3.0.1", - "@csstools/media-query-list-parser": "^3.0.1", - "@csstools/selector-specificity": "^4.0.0", - "@dual-bundle/import-meta-resolve": "^4.1.0", - "balanced-match": "^2.0.0", - "colord": "^2.9.3", - "cosmiconfig": "^9.0.0", - "css-functions-list": "^3.2.3", - "css-tree": "^3.0.0", - "debug": "^4.3.7", - "fast-glob": "^3.3.2", - "fastest-levenshtein": "^1.0.16", - "file-entry-cache": "^9.1.0", - "global-modules": "^2.0.0", - "globby": "^11.1.0", - "globjoin": "^0.1.4", - "html-tags": "^3.3.1", - "ignore": "^6.0.2", - "imurmurhash": "^0.1.4", - "is-plain-object": "^5.0.0", - "known-css-properties": "^0.34.0", - "mathml-tag-names": "^2.1.3", - "meow": "^13.2.0", - "micromatch": "^4.0.8", - "normalize-path": "^3.0.0", - "picocolors": "^1.0.1", - "postcss": "^8.4.47", - "postcss-resolve-nested-selector": "^0.1.6", - "postcss-safe-parser": "^7.0.1", - "postcss-selector-parser": "^6.1.2", - "postcss-value-parser": "^4.2.0", - "resolve-from": "^5.0.0", - "string-width": "^4.2.3", - "supports-hyperlinks": "^3.1.0", - "svg-tags": "^1.0.0", - "table": "^6.8.2", - "write-file-atomic": "^5.0.1" + "memize": "^2.1.0" }, - "bin": { - "stylelint": "bin/stylelint.mjs" + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/style-engine": { + "version": "2.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/style-engine/-/style-engine-2.51.0.tgz", + "integrity": "sha512-T1DlSG1ZUPS8NolfTzTjuVB0XRTezwJKZtqb5TWCv8fQu6+A5QFF8msN2JuFeJ1CEn2psJB0aHSW5QAsIuXKCw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "change-case": "^4.1.2" }, "engines": { - "node": ">=18.12.0" + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/scripts/node_modules/stylelint/node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "license": "MIT", + "node_modules/@wordpress/style-runtime": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.6.0.tgz", + "integrity": "sha512-PSNzFecFRJ7gmah5YxHFv0a0ZUwZOdeO9/B8GNyv2LgC/ZLXS8CtsAblOKVRO3W7ExwazbHwexaTAOzU/+7Mug==", + "license": "GPL-2.0-or-later", "engines": { - "node": ">=8" + "node": ">=20.10.0", + "npm": ">=10.2.3" } }, - "node_modules/@wordpress/scripts/node_modules/stylelint/node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "node_modules/@wordpress/stylelint-config": { + "version": "22.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/stylelint-config/-/stylelint-config-22.7.0.tgz", + "integrity": "sha512-nzFUC1urqtLklCke38VTH7yYlF3ihHu+ULRYwzhJNqWzttwz4srj60M3etEa2pdd2U6yywotQAJzcDbHw01qvQ==", "dev": true, "license": "MIT", "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" + "stylelint-config-recommended": "^6.0.0", + "stylelint-config-recommended-scss": "^5.0.2" }, "engines": { - "node": ">=10" + "node": ">=18.12.0", + "npm": ">=8.19.2" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "stylelint": "^14.2" } }, - "node_modules/@wordpress/scripts/node_modules/stylelint/node_modules/globby/node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true, - "license": "MIT", + "node_modules/@wordpress/sync": { + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/sync/-/sync-1.51.0.tgz", + "integrity": "sha512-qlswS+yj8BkqH6fiCTA4yOG1oblP73CJPl4uA83PJEe+cijn0yTR/UOoQDitlKsomOqTa8qNjYAbAMIIYSjntw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@wordpress/api-fetch": "^7.51.0", + "@wordpress/hooks": "^4.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "diff": "^8.0.3", + "fast-deep-equal": "^3.1.3", + "lib0": "^0.2.99", + "y-protocols": "^1.0.7", + "yjs": "^13.6.29" + }, "engines": { - "node": ">= 4" + "node": ">=18.12.0", + "npm": ">=8.19.2" } }, - "node_modules/@wordpress/scripts/node_modules/stylelint/node_modules/ignore": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-6.0.2.tgz", - "integrity": "sha512-InwqeHHN2XpumIkMvpl/DCJVrAHgCsG5+cn1XlnLWGwtZBm8QJfSusItfrwx81CTp5agNZqpKU2J/ccC5nGT4A==", - "dev": true, - "license": "MIT", + "node_modules/@wordpress/token-list": { + "version": "3.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/token-list/-/token-list-3.51.0.tgz", + "integrity": "sha512-e4rzOgy4R0CavnA3XoK5NxQTt/0vSeHfgzoj49MUemv6MIiWjq/oNaewk7pDT1sl7XRqlzOQwLPzIEEIjPrIzQ==", + "license": "GPL-2.0-or-later", "engines": { - "node": ">= 4" + "node": ">=18.12.0", + "npm": ">=8.19.2" } }, - "node_modules/@wordpress/scripts/node_modules/stylelint/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, + "node_modules/@wordpress/ui": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@wordpress/ui/-/ui-0.17.0.tgz", + "integrity": "sha512-+mMnJmkvFjTk7veIioU/idaPfb6HJCcBV408v1gKsbpLa+dxG+rLdlrpzJILLlZmHUyCrJXk9EmYZi6MkFoL9A==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@base-ui/react": "^1.5.0", + "@wordpress/a11y": "^4.50.0", + "@wordpress/compose": "^8.3.0", + "@wordpress/element": "^8.2.0", + "@wordpress/i18n": "^6.23.0", + "@wordpress/icons": "^15.1.0", + "@wordpress/keycodes": "^4.50.0", + "@wordpress/primitives": "^4.50.0", + "@wordpress/private-apis": "^1.50.0", + "@wordpress/style-runtime": "^0.6.0", + "@wordpress/theme": "^0.17.0", + "clsx": "^2.1.1", + "tabbable": "^6.4.0" + }, + "engines": { + "node": ">=20.10.0", + "npm": ">=10.2.3" + }, + "peerDependencies": { + "@types/react": "^18.3.27", + "react": "^18.0.0", + "react-dom": "^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@wordpress/ui/node_modules/@base-ui/react": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", + "integrity": "sha512-/jzjTWJYXhRFO45Bev9lc3cHbmjzCMpUqbMZ2AgKy/z25mY9B6shGSNcXcjQar9n5doM0KYW1W8fcFv2jZBuMw==", "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.29.2", + "@base-ui/utils": "0.3.1", + "@floating-ui/react-dom": "^2.1.8", + "@floating-ui/utils": "^0.2.11", + "use-sync-external-store": "^1.6.0" + }, "engines": { - "node": ">=8" + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@date-fns/tz": "^1.2.0", + "@types/react": "^17 || ^18 || ^19", + "date-fns": "^4.0.0", + "react": "^17 || ^18 || ^19", + "react-dom": "^17 || ^18 || ^19" + }, + "peerDependenciesMeta": { + "@date-fns/tz": { + "optional": true + }, + "@types/react": { + "optional": true + }, + "date-fns": { + "optional": true + } } }, - "node_modules/@wordpress/scripts/node_modules/supports-hyperlinks": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-3.1.0.tgz", - "integrity": "sha512-2rn0BZ+/f7puLOHZm1HOJfwBggfaHXUpPUSSG/SWM4TWp5KCfmNYwnC3hruy2rZlMnmWZ+QAGpZfchu3f3695A==", - "dev": true, - "license": "MIT", + "node_modules/@wordpress/ui/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", + "license": "GPL-2.0-or-later", "dependencies": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" }, "engines": { - "node": ">=14.18" + "node": ">=18.12.0", + "npm": ">=8.19.2" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/scripts/node_modules/write-file-atomic": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", - "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", - "dev": true, - "license": "ISC", + "node_modules/@wordpress/ui/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", + "license": "GPL-2.0-or-later", "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^4.0.1" + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=18.12.0", + "npm": ">=8.19.2" } }, - "node_modules/@wordpress/server-side-render": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/server-side-render/-/server-side-render-5.7.0.tgz", - "integrity": "sha512-VXBluHj/WICCx4OcjZrcrBg+YxXbah1YL4n2yLWhDMENAL0p4Ne67EqrQjCGbIfpGUpNDCQhIXXzSJ3gNiuCMg==", + "node_modules/@wordpress/ui/node_modules/@wordpress/icons": { + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-15.2.0.tgz", + "integrity": "sha512-g/1a4eTNH/mCluvmryNcYAg1GxsjY6xGjfGJRq3z44SEcB8jAZyEQtqdcGQ+o2kHelKhmmqS8WAowxif44ZgNQ==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/api-fetch": "^7.7.0", - "@wordpress/blocks": "^13.7.0", - "@wordpress/components": "^28.7.0", - "@wordpress/compose": "^7.7.0", - "@wordpress/data": "^10.7.0", - "@wordpress/deprecated": "^4.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/i18n": "^5.7.0", - "@wordpress/url": "^4.7.0", - "fast-deep-equal": "^3.1.3" + "@wordpress/element": "^8.3.0", + "@wordpress/primitives": "^4.51.0", + "change-case": "^4.1.2" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/server-side-render/node_modules/@ariakit/core": { - "version": "0.4.10", - "resolved": "https://registry.npmjs.org/@ariakit/core/-/core-0.4.10.tgz", - "integrity": "sha512-mX3EabQbfVh5uTjsTJ3+gjj7KGdTNhIN0qZHJd5Z2iPUnKl9NBy23Lgu6PEskpVsKAZ3proirjguD7U9fKMs/A==", - "license": "MIT" - }, - "node_modules/@wordpress/server-side-render/node_modules/@ariakit/react": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.11.tgz", - "integrity": "sha512-nLpPrmNcspqNhk4o+epsgeZfP1+Fkh4uIzNe5yrFkXolRkqHGKAxl4Hi82e0yxIBUbYbZIEwsZQQVceF1L6xrw==", - "license": "MIT", + "node_modules/@wordpress/ui/node_modules/@wordpress/primitives": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", + "license": "GPL-2.0-or-later", "dependencies": { - "@ariakit/react-core": "0.4.11" + "@wordpress/element": "^8.3.0", + "clsx": "^2.1.1" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ariakit" + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/@wordpress/server-side-render/node_modules/@ariakit/react-core": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/@ariakit/react-core/-/react-core-0.4.11.tgz", - "integrity": "sha512-i6KedWhjZkNC7tMEKO0eNjjq2HRPiHyGaBS2x2VaWwzBepoYtjyvxRXyqLJ3gaiNdlwckN1TZsRDfD+viy13IQ==", - "license": "MIT", - "dependencies": { - "@ariakit/core": "0.4.10", - "@floating-ui/dom": "^1.0.0", - "use-sync-external-store": "^1.2.0" + "@types/react": "^18 || ^19", + "react": "^18 || ^19" }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/server-side-render/node_modules/@wordpress/components": { - "version": "28.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-28.7.0.tgz", - "integrity": "sha512-oxF+pAZHJ3L9p42wMDeclo6P0TOZW1+U1pKmKju33aDsAwINOU2ELpVFyIEHkA9txn8VU4lxpnNIsYY6RGlW8w==", + "node_modules/@wordpress/ui/node_modules/@wordpress/theme": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@wordpress/theme/-/theme-0.17.0.tgz", + "integrity": "sha512-BU+PLBLxMBM4WJYrd1QEwy+IA64vUP+8IEEB9lLx2NfB+3/45vvuvXx9o3qPKRDHvtMtEaRArld4Kn05UIW9IA==", "license": "GPL-2.0-or-later", "dependencies": { - "@ariakit/react": "^0.4.10", - "@babel/runtime": "^7.16.0", - "@emotion/cache": "^11.7.1", - "@emotion/css": "^11.7.1", - "@emotion/react": "^11.7.1", - "@emotion/serialize": "^1.0.2", - "@emotion/styled": "^11.6.0", - "@emotion/utils": "^1.0.0", - "@floating-ui/react-dom": "^2.0.8", - "@types/gradient-parser": "0.1.3", - "@types/highlight-words-core": "1.2.1", - "@use-gesture/react": "^10.3.1", - "@wordpress/a11y": "^4.7.0", - "@wordpress/compose": "^7.7.0", - "@wordpress/date": "^5.7.0", - "@wordpress/deprecated": "^4.7.0", - "@wordpress/dom": "^4.7.0", - "@wordpress/element": "^6.7.0", - "@wordpress/escape-html": "^3.7.0", - "@wordpress/hooks": "^4.7.0", - "@wordpress/html-entities": "^4.7.0", - "@wordpress/i18n": "^5.7.0", - "@wordpress/icons": "^10.7.0", - "@wordpress/is-shallow-equal": "^5.7.0", - "@wordpress/keycodes": "^4.7.0", - "@wordpress/primitives": "^4.7.0", - "@wordpress/private-apis": "^1.7.0", - "@wordpress/rich-text": "^7.7.0", - "@wordpress/warning": "^3.7.0", - "change-case": "^4.1.2", - "clsx": "^2.1.1", - "colord": "^2.7.0", - "date-fns": "^3.6.0", - "deepmerge": "^4.3.0", - "fast-deep-equal": "^3.1.3", - "framer-motion": "^11.1.9", - "gradient-parser": "^0.1.5", - "highlight-words-core": "^1.2.2", - "is-plain-object": "^5.0.0", - "memize": "^2.1.0", - "path-to-regexp": "^6.2.1", - "re-resizable": "^6.4.0", - "react-colorful": "^5.3.1", - "remove-accents": "^0.5.0", - "use-lilius": "^2.0.5", - "uuid": "^9.0.1" + "@wordpress/compose": "^8.2.0", + "@wordpress/deprecated": "^4.49.0", + "@wordpress/element": "^8.1.0", + "@wordpress/private-apis": "^1.49.0", + "@wordpress/style-runtime": "^0.5.0", + "colorjs.io": "^0.6.0", + "memize": "^2.1.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { + "@types/react": "^18.3.27", + "esbuild": "^0.27.2", + "postcss": "^8.0.0", "react": "^18.0.0", - "react-dom": "^18.0.0" + "react-dom": "^18.0.0", + "stylelint": "^16.8.2", + "vite": "^7.3.2" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "postcss": { + "optional": true + }, + "stylelint": { + "optional": true + }, + "vite": { + "optional": true + } } }, - "node_modules/@wordpress/server-side-render/node_modules/@wordpress/date": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.7.0.tgz", - "integrity": "sha512-iMwGP/Sbz+CCgqxUUKg8W2sZiwvr9K1q7s0rHuy3YVJT46QDNpN0A6HGNmckI0z4C+CRDvOIa09OMgTz1igUAw==", + "node_modules/@wordpress/ui/node_modules/@wordpress/theme/node_modules/@wordpress/style-runtime": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.5.0.tgz", + "integrity": "sha512-hrXvdDUJpOzT1KIomgtysysgbc5bkkwAuJyEUAXiOCgVBXBeMkZlgfN19W0PuNY51j53K7VQ42txfayxgVmfgA==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=20.10.0", + "npm": ">=10.2.3" + } + }, + "node_modules/@wordpress/ui/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@wordpress/undo-manager": { + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/undo-manager/-/undo-manager-1.51.0.tgz", + "integrity": "sha512-w/vUyQX2m+X2xDYCdxu/ALHJdE5S0vkWbxFhUJJeBJG66IFs/DGk/NmLCOudUFLFMQYSXFyIm1XsIPT0UdjhCA==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/deprecated": "^4.7.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" + "@wordpress/is-shallow-equal": "^5.51.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/server-side-render/node_modules/@wordpress/icons": { - "version": "10.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-10.7.0.tgz", - "integrity": "sha512-4cvi9ZIaz6IYRcOjVuALtDLPtzgt1zK+E9LskL0PAi3TJhoh746q28wv6ycP+KtJEiI+bsTf2Qu5dmCePGR/jA==", + "node_modules/@wordpress/upload-media": { + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/@wordpress/upload-media/-/upload-media-0.35.0.tgz", + "integrity": "sha512-Xpka03EVJZd0BORFsgYZhGnrSHwolwXkDR+g4S+VQoWOCbhZSX9VRPgEiPSxzp3i4HTCvgXyeEo6sEKNrhlllg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.7.0", - "@wordpress/primitives": "^4.7.0" + "@wordpress/blob": "^4.50.0", + "@wordpress/compose": "^8.3.0", + "@wordpress/data": "^10.50.0", + "@wordpress/element": "^8.2.0", + "@wordpress/i18n": "^6.23.0", + "@wordpress/preferences": "^4.50.0", + "@wordpress/private-apis": "^1.50.0", + "@wordpress/url": "^4.50.0", + "@wordpress/vips": "^2.3.0", + "uuid": "^14.0.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18.3.27", + "react": "^18.0.0", + "react-dom": "^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/server-side-render/node_modules/@wordpress/primitives": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.7.0.tgz", - "integrity": "sha512-PcAAIMT8+WqKB2HAeQlLmrcQyzyhNw9IeToJoxz+VKcc/7uLfGHplsDvtHY/X4jH8QlwlVwHSiqW/McTcxoUvQ==", + "node_modules/@wordpress/upload-media/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^6.7.0", - "clsx": "^2.1.1" + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "react": "^18.0.0" + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/server-side-render/node_modules/is-plain-object": { + "node_modules/@wordpress/upload-media/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/upload-media/node_modules/is-plain-object": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", @@ -9849,182 +14246,173 @@ "node": ">=0.10.0" } }, - "node_modules/@wordpress/server-side-render/node_modules/path-to-regexp": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", - "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", - "license": "MIT" - }, - "node_modules/@wordpress/server-side-render/node_modules/uuid": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "node_modules/@wordpress/upload-media/node_modules/uuid": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.1.tgz", + "integrity": "sha512-6ZxzVpzDXDa3bJWaHilVayA+BH/1zmxCJoVgvmqJnid/gPoKHxUrS/aC/T6LGQtNHT+XHG9fXPJB4d+IrU30Ew==", "funding": [ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" ], "license": "MIT", "bin": { - "uuid": "dist/bin/uuid" + "uuid": "dist-node/bin/uuid" } }, - "node_modules/@wordpress/shortcode": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/shortcode/-/shortcode-4.11.0.tgz", - "integrity": "sha512-J2k8SYLR/aziSMilZGa0Plps7utQGXqRB2p/s/e2fj7SpV2p8futJZl0mlejTCBZC3q4izqkKkOItknTRRyu3w==", + "node_modules/@wordpress/url": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/url/-/url-4.51.0.tgz", + "integrity": "sha512-lPjifvknjTfBl8OSS76jsALotvuSWvb5lE8YKeFJ+zwV09q0ZHgQTeMKHrL47DwMl+PlPhmoLrjHav+KLBwTCA==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "7.25.7", - "memize": "^2.0.1" + "remove-accents": "^0.5.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/shortcode/node_modules/@babel/runtime": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", - "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", - "license": "MIT", - "dependencies": { - "regenerator-runtime": "^0.14.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@wordpress/style-engine": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/style-engine/-/style-engine-2.7.0.tgz", - "integrity": "sha512-ISIUzoTxzMZQLY7dzwPlWaKG8mh5ZUBTALxyNlglHVlxoNyQ1e/Yw1duZySxSvnfdfVeKRw33iJO0iQQCxinsA==", + "node_modules/@wordpress/video-conversion": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/video-conversion/-/video-conversion-0.2.0.tgz", + "integrity": "sha512-nvDFi73tWm7qxVC2kBCBnR7PP9fIrCF7NetznVH10vXArkh0xlXqPez6gFTH7Q9r31uPmYOhFFeeBvvdWeu69w==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "change-case": "^4.1.2" + "@wordpress/worker-threads": "^1.11.0", + "mediabunny": "^1.45.2" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/stylelint-config": { - "version": "22.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/stylelint-config/-/stylelint-config-22.7.0.tgz", - "integrity": "sha512-nzFUC1urqtLklCke38VTH7yYlF3ihHu+ULRYwzhJNqWzttwz4srj60M3etEa2pdd2U6yywotQAJzcDbHw01qvQ==", - "dev": true, - "license": "MIT", + "node_modules/@wordpress/viewport": { + "version": "6.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/viewport/-/viewport-6.51.0.tgz", + "integrity": "sha512-D7ObWx5VhmyO+N3VaMHE83/1PoUGrkLHpagl/Em/cUBJF2GrQXmB72WmNf99lyNDssyPWKbPOTBh14xbEUJ8bQ==", + "license": "GPL-2.0-or-later", "dependencies": { - "stylelint-config-recommended": "^6.0.0", - "stylelint-config-recommended-scss": "^5.0.2" + "@wordpress/compose": "^8.4.0", + "@wordpress/data": "^10.51.0", + "@wordpress/element": "^8.3.0" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" }, "peerDependencies": { - "stylelint": "^14.2" + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/sync": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/sync/-/sync-1.7.0.tgz", - "integrity": "sha512-PhMezrdiMVTeEmi8f1z3MbCAuixBi8wXoTzQUe9wmsD+clM9uvw839KpNym/5ZMC5suADwa1TSGylLf/l3AZtQ==", + "node_modules/@wordpress/viewport/node_modules/@wordpress/compose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", + "integrity": "sha512-oVmRQ05Rlzh+W7oFb6CGmNm9SDozd3VEVYhXO4CcTpz0vkn7bEcwIMIdaKq49X8vORW1htJa/myBbYJATpamNg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@types/simple-peer": "^9.11.5", - "@wordpress/url": "^4.7.0", - "import-locals": "^2.0.0", - "lib0": "^0.2.42", - "simple-peer": "^9.11.0", - "y-indexeddb": "~9.0.11", - "y-protocols": "^1.0.5", - "y-webrtc": "~10.2.5", - "yjs": "~13.6.6" + "@types/mousetrap": "^1.6.8", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/dom": "^4.51.0", + "@wordpress/element": "^8.3.0", + "@wordpress/is-shallow-equal": "^5.51.0", + "@wordpress/keycodes": "^4.51.0", + "@wordpress/priority-queue": "^3.51.0", + "@wordpress/private-apis": "^1.51.0", + "@wordpress/undo-manager": "^1.51.0", + "change-case": "^4.1.2", + "mousetrap": "^1.6.5", + "use-memo-one": "^1.1.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@wordpress/token-list": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/token-list/-/token-list-3.7.0.tgz", - "integrity": "sha512-joJ/J3NjzVIXN0PDV+BayyVm4ZNP1XInUI4XDuP1zNb++OEqcuX9OBa4cqNgzyNImRTZStjD/fPKs28BTrG87g==", + "node_modules/@wordpress/viewport/node_modules/@wordpress/element": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0" + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", + "change-case": "^4.1.2", + "is-plain-object": "^5.0.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/undo-manager": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/undo-manager/-/undo-manager-1.7.0.tgz", - "integrity": "sha512-FHkwMD/jbe5jhVXfD9bSNhEivhMeszm20/ymEP6vAsLVJB2K25iAMOGvsq5jtznyJiqQzNUmvPERN0IKnaHQnA==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/is-shallow-equal": "^5.7.0" - }, + "node_modules/@wordpress/viewport/node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "license": "MIT", "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" + "node": ">=0.10.0" } }, - "node_modules/@wordpress/url": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/url/-/url-4.7.0.tgz", - "integrity": "sha512-c9L3L4+YrygKtf5S7DKFP1wNbFvqPLp8Uub4VgPKWmlZnIB2hsRNXELba5qGHpPmzTg82KwXImRAuHSMrfr+LA==", + "node_modules/@wordpress/vips": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@wordpress/vips/-/vips-2.4.0.tgz", + "integrity": "sha512-VOpP5RK+FyuxB3uzNsruAl9Np71pgzpLcUuz7LSoh4UUL+S2xI1UEPU9Dki6/3COSca/2vqocwjOrAYFEf/Y1w==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "remove-accents": "^0.5.0" + "@wordpress/worker-threads": "^1.11.0", + "wasm-vips": "^0.0.18" }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/viewport": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/viewport/-/viewport-6.7.0.tgz", - "integrity": "sha512-T05rktsX+xOgTekKKRIAwuK+FdtmOMQVfbkxtGW2RtfwBWc161ZdgXT0C3x+LWwzhocYg2ymwkM9Mm8/MBhgFw==", + "node_modules/@wordpress/warning": { + "version": "3.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-3.51.0.tgz", + "integrity": "sha512-wWeM6pjAWbMhdNfgCaxi5yhLzomj6/trcIjGPi2Q4kaIuxUula8Ybq0ZPn5lYuc19ICkcGYcAnWNYz/4mYCHdA==", "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/compose": "^7.7.0", - "@wordpress/data": "^10.7.0", - "@wordpress/element": "^6.7.0" - }, "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" - }, - "peerDependencies": { - "react": "^18.0.0" } }, - "node_modules/@wordpress/warning": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-3.11.0.tgz", - "integrity": "sha512-tXCsxlMAYXbRCgZmVHsBkoBGnrytZPGGezGXANRTsyJ00QoQJgxvnH6u22Rs/NOIVHQ5o65/9jKC3g0e6qn7PA==", + "node_modules/@wordpress/wordcount": { + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/wordcount/-/wordcount-4.51.0.tgz", + "integrity": "sha512-EWMxWgyO9uPlCwLlvWXrPup6EX9myPj2NRE7278cPSmmEmFkUSfZwykcw7rQTpM7egm649wt1ELQepso3eFFQg==", "license": "GPL-2.0-or-later", "engines": { "node": ">=18.12.0", "npm": ">=8.19.2" } }, - "node_modules/@wordpress/wordcount": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/wordcount/-/wordcount-4.7.0.tgz", - "integrity": "sha512-NcxUhnkvdybK7V2c0w7A/SAiDByTrE/jbTxGwIHa3gh1YOofhwfFH9wGxFQp1ZUpoE9HZY6eS4HCScoWsEXJ0Q==", + "node_modules/@wordpress/worker-threads": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@wordpress/worker-threads/-/worker-threads-1.11.0.tgz", + "integrity": "sha512-ABD1L//g1SvQtxxFTLzb03rI0Az29MH6qudR+5Mi8ay7da1aeO3z1cfBD1/3O3oXd2dcMRW6XQKvoztnDaoKZg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0" + "comctx": "^1.4.3" }, "engines": { "node": ">=18.12.0", @@ -10731,7 +15119,7 @@ "version": "8.20.0", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", @@ -10851,24 +15239,12 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/anymatch": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", @@ -10985,9 +15361,9 @@ } }, "node_modules/aria-hidden": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.4.tgz", - "integrity": "sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A==", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.6.tgz", + "integrity": "sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==", "license": "MIT", "dependencies": { "tslib": "^2.0.0" @@ -11078,7 +15454,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=8" @@ -11248,7 +15624,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=8" @@ -11726,6 +16102,7 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, "funding": [ { "type": "github", @@ -12004,7 +16381,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "fill-range": "^7.1.1" @@ -12670,6 +17047,7 @@ "version": "2.0.11", "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.11.tgz", "integrity": "sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==", + "dev": true, "license": "MIT", "dependencies": { "good-listener": "^1.2.2", @@ -12783,17 +17161,19 @@ } }, "node_modules/cmdk": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/cmdk/-/cmdk-1.0.0.tgz", - "integrity": "sha512-gDzVf0a09TvoJ5jnuPvygTB77+XdOSwEmJ88L6XPFPlv7T3RxbP9jgenfylrAMD0+Le1aO0nVjQUzl2g+vjz5Q==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/cmdk/-/cmdk-1.1.1.tgz", + "integrity": "sha512-Vsv7kFaXm+ptHDMZ7izaRsP70GgrW9NBNGswt9OZaVBLlE0SNpDq8eu/VGXyF9r7M0azK3Wy7OlYXsuyYLFzHg==", "license": "MIT", "dependencies": { - "@radix-ui/react-dialog": "1.0.5", - "@radix-ui/react-primitive": "1.0.3" + "@radix-ui/react-compose-refs": "^1.1.1", + "@radix-ui/react-dialog": "^1.1.6", + "@radix-ui/react-id": "^1.1.0", + "@radix-ui/react-primitive": "^2.0.2" }, "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" + "react": "^18 || ^19 || ^19.0.0-rc", + "react-dom": "^18 || ^19 || ^19.0.0-rc" } }, "node_modules/co": { @@ -12814,21 +17194,6 @@ "dev": true, "license": "MIT" }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "license": "MIT" - }, "node_modules/colord": { "version": "2.9.3", "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", @@ -12842,6 +17207,16 @@ "dev": true, "license": "MIT" }, + "node_modules/colorjs.io": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/colorjs.io/-/colorjs.io-0.6.1.tgz", + "integrity": "sha512-8lyR2wHzuIykCpqHKgluGsqQi5iDm3/a2IgP2GBZrasn2sBRkE4NOGsglZxWLs/jZQoNkmA/KM/8NV16rLUdBg==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/color" + } + }, "node_modules/columnify": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.6.0.tgz", @@ -12869,6 +17244,12 @@ "node": ">= 0.8" } }, + "node_modules/comctx": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/comctx/-/comctx-1.7.5.tgz", + "integrity": "sha512-0fsxsxr1Hg2T99wOIteUbsJOX6jMmnhAJepcVRqNRMWpcbxRhbm2+0R8qEuQEaE4gWjfdXaKeAGYAn0yeElylQ==", + "license": "MIT" + }, "node_modules/commander": { "version": "12.1.0", "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", @@ -13503,7 +17884,7 @@ "version": "3.2.3", "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.2.3.tgz", "integrity": "sha512-IQOkD3hbR5KrN93MtcYuad6YPuTSUhntLHDuLEbFWE+ff2/XSZNdZG+LcbbIW5AXKg/WFIfYItIzVoHngHXZzA==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=12 || >=16" @@ -13606,7 +17987,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, + "devOptional": true, "license": "MIT", "bin": { "cssesc": "bin/cssesc" @@ -13758,9 +18139,9 @@ "license": "MIT" }, "node_modules/csstype": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", "license": "MIT" }, "node_modules/cwd": { @@ -13873,6 +18254,12 @@ "url": "https://github.com/sponsors/kossnocorp" } }, + "node_modules/date-fns-jalali": { + "version": "4.1.0-0", + "resolved": "https://registry.npmjs.org/date-fns-jalali/-/date-fns-jalali-4.1.0-0.tgz", + "integrity": "sha512-hTIP/z+t+qKwBDcmmsnmjWTduxCg+5KfdqWQvb2X/8C9+knYY6epN/pfxdDuyVlSVeFz0sM5eEfwIUQ70U4ckg==", + "license": "MIT" + }, "node_modules/debounce": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", @@ -13901,6 +18288,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -14204,6 +18592,7 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz", "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==", + "dev": true, "license": "MIT" }, "node_modules/depd": { @@ -14216,6 +18605,15 @@ "node": ">= 0.8" } }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/destroy": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", @@ -14269,9 +18667,9 @@ "license": "BSD-3-Clause" }, "node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/diff/-/diff-8.0.4.tgz", + "integrity": "sha512-DPi0FmjiSU5EvQV0++GFDOJ9ASQUVFh5kD+OzOnYdi7n3Wpm9hWWGfB/O2blfHcMVTL5WkQXSnRiK9makhrcnw==", "license": "BSD-3-Clause", "engines": { "node": ">=0.3.1" @@ -14291,7 +18689,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "path-type": "^4.0.0" @@ -14649,7 +19047,7 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=6" @@ -14674,12 +19072,6 @@ "integrity": "sha512-xvHeyCDbZzkpN4VHQj/n+j2lOwL0VWszG30X4cOrc9Y7Tuo2qCdZK/0AMod23Z5dCtNUbaju6p0rwOhHUk05ew==", "license": "MIT" }, - "node_modules/err-code": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-3.0.1.tgz", - "integrity": "sha512-GiaH0KJUewYok+eeY05IIgjtAe4Yltygk9Wqp1V5yVWLdhf0hYZchRjNIT9bb0mSwRcIusT3cx7PJUf3zEIfUA==", - "license": "MIT" - }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -16174,17 +20566,17 @@ "license": "MIT" }, "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", - "dev": true, + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "devOptional": true, "license": "MIT", "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "micromatch": "^4.0.8" }, "engines": { "node": ">=8.6.0" @@ -16194,7 +20586,7 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, + "devOptional": true, "license": "ISC", "dependencies": { "is-glob": "^4.0.1" @@ -16228,7 +20620,7 @@ "version": "3.1.4", "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.4.tgz", "integrity": "sha512-8JnbkQ4juDyvYs4mgFGQqg4yCYtFDtUtmp2QIQq11ZZe5CFQ5wcqm1rqDgAh/QdMySuBnPzMUiJUNZG5N/AiQw==", - "dev": true, + "devOptional": true, "funding": [ { "type": "github", @@ -16245,7 +20637,7 @@ "version": "1.0.16", "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">= 4.9.1" @@ -16255,7 +20647,7 @@ "version": "1.17.1", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", - "dev": true, + "devOptional": true, "license": "ISC", "dependencies": { "reusify": "^1.0.4" @@ -16418,7 +20810,7 @@ "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "to-regex-range": "^5.0.1" @@ -16754,7 +21146,7 @@ "version": "3.4.3", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.3.tgz", "integrity": "sha512-/zipXxyO6rGvuNGDiULY9MvEGSkb2gaG4GGH4ygMi0ZZzyMHdUZBmntJmx5x1G2VuPytCwGN4xsJP6cw+sK+vQ==", - "dev": true, + "devOptional": true, "license": "ISC" }, "node_modules/follow-redirects": { @@ -16853,17 +21245,19 @@ } }, "node_modules/framer-motion": { - "version": "11.5.4", - "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-11.5.4.tgz", - "integrity": "sha512-E+tb3/G6SO69POkdJT+3EpdMuhmtCh9EWuK4I1DnIC23L7tFPrl8vxP+LSovwaw6uUr73rUbpb4FgK011wbRJQ==", + "version": "11.18.2", + "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-11.18.2.tgz", + "integrity": "sha512-5F5Och7wrvtLVElIpclDT0CBzMVg3dL22B64aZwHtsIY8RB4mXICLrkajK4G9R+ieSAGcgrLeae2SeUTg2pr6w==", "license": "MIT", "dependencies": { + "motion-dom": "^11.18.1", + "motion-utils": "^11.18.1", "tslib": "^2.4.0" }, "peerDependencies": { "@emotion/is-prop-valid": "*", - "react": "^18.0.0", - "react-dom": "^18.0.0" + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" }, "peerDependenciesMeta": { "@emotion/is-prop-valid": { @@ -17051,16 +21445,11 @@ "node": ">=6.9.0" } }, - "node_modules/get-browser-rtc": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/get-browser-rtc/-/get-browser-rtc-1.1.0.tgz", - "integrity": "sha512-MghbMJ61EJrRsDe7w1Bvqt3ZsBuqhce5nrn/XAwgwOXhcsz53/ltdxOse1h/8eKXj5slzxdsz56g5rzOFSGwfQ==", - "license": "MIT" - }, "node_modules/get-caller-file": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, "license": "ISC", "engines": { "node": "6.* || 8.* || >= 10.*" @@ -17400,7 +21789,7 @@ "version": "11.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "array-union": "^2.1.0", @@ -17421,13 +21810,14 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", "integrity": "sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/good-listener": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz", "integrity": "sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==", + "dev": true, "license": "MIT", "dependencies": { "delegate": "^3.1.2" @@ -17457,6 +21847,7 @@ "version": "0.1.5", "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-0.1.5.tgz", "integrity": "sha512-+uPlcVbjrKOnTzvz0MjTj7BfACj8OmxIa1moIjJV7btvhUMSJk0D47RfDCgDrZE3dYMz9Cf5xKJwnrKLjUq0KQ==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -17515,7 +21906,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=8" @@ -17765,7 +22156,7 @@ "version": "3.3.1", "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz", "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=8" @@ -17957,6 +22348,7 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, "funding": [ { "type": "github", @@ -17977,7 +22369,7 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">= 4" @@ -18110,17 +22502,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/import-locals": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-locals/-/import-locals-2.0.0.tgz", - "integrity": "sha512-1/bPE89IZhyf7dr5Pkz7b4UyVXy5pEt7PTEfye15UEn3AK8+2zwcDCfKk9Pwun4ltfhOSszOrReSsFcDKw/yoA==", - "license": "MIT" - }, "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=0.8.19" @@ -18165,13 +22551,14 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, "license": "ISC" }, "node_modules/ini": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true, + "devOptional": true, "license": "ISC" }, "node_modules/internal-slot": { @@ -18217,15 +22604,6 @@ "dev": true, "license": "BSD-3-Clause" }, - "node_modules/invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.0.0" - } - }, "node_modules/ip-address": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", @@ -18502,7 +22880,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -18525,7 +22903,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=8" @@ -18561,7 +22939,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "is-extglob": "^2.1.1" @@ -18707,7 +23085,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=0.12.0" @@ -19035,7 +23413,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true, + "devOptional": true, "license": "ISC" }, "node_modules/isobject": { @@ -19980,7 +24358,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/json-stable-stringify-without-jsonify": { @@ -20357,9 +24735,9 @@ } }, "node_modules/lib0": { - "version": "0.2.97", - "resolved": "https://registry.npmjs.org/lib0/-/lib0-0.2.97.tgz", - "integrity": "sha512-Q4d1ekgvufi9FiHkkL46AhecfNjznSL9MRNoJRQ76gBHS9OqU2ArfQK0FvBpuxgWeJeNI0LVgAYMIpsGeX4gYg==", + "version": "0.2.117", + "resolved": "https://registry.npmjs.org/lib0/-/lib0-0.2.117.tgz", + "integrity": "sha512-DeXj9X5xDCjgKLU/7RR+/HQEVzuuEUiwldwOGsHK/sfAfELGWEyTcf0x+uOvCvK3O2zPmZePXWL85vtia6GyZw==", "license": "MIT", "dependencies": { "isomorphic.js": "^0.2.4" @@ -20923,7 +25301,7 @@ "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/lodash.union": { @@ -21222,6 +25600,18 @@ "dev": true, "license": "MIT" }, + "node_modules/marked": { + "version": "18.0.7", + "resolved": "https://registry.npmjs.org/marked/-/marked-18.0.7.tgz", + "integrity": "sha512-iDVQ5ldaiKXn6b2JroX5kgRfmwgqolW7NpaEzTl1k/2Zh1njIEN9yniyLV/mOvWwtsE8OGgkjsCYvijuPk1dtA==", + "license": "MIT", + "bin": { + "marked": "bin/marked.js" + }, + "engines": { + "node": ">= 20" + } + }, "node_modules/marky": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/marky/-/marky-1.2.5.tgz", @@ -21243,7 +25633,7 @@ "version": "2.1.3", "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==", - "dev": true, + "devOptional": true, "license": "MIT", "funding": { "type": "github", @@ -21274,6 +25664,24 @@ "node": ">= 0.6" } }, + "node_modules/mediabunny": { + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/mediabunny/-/mediabunny-1.51.0.tgz", + "integrity": "sha512-u327374xU8Ho0gCaMII7fUK8t0PnqkabCox1k8uUwvgvGb9o6YQGZEG2Qr4DTe7nTMpzfL7ukgnHDvDROySZ+Q==", + "license": "MPL-2.0", + "workspaces": [ + ".", + "packages/*" + ], + "dependencies": { + "@types/dom-mediacapture-transform": "^0.1.11", + "@types/dom-webcodecs": "0.1.13" + }, + "funding": { + "type": "individual", + "url": "https://github.com/sponsors/Vanilagy" + } + }, "node_modules/memfs": { "version": "3.5.3", "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", @@ -21376,7 +25784,7 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">= 8" @@ -21403,7 +25811,7 @@ "version": "4.0.8", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "braces": "^3.0.3", @@ -21709,6 +26117,21 @@ "node": "*" } }, + "node_modules/motion-dom": { + "version": "11.18.1", + "resolved": "https://registry.npmjs.org/motion-dom/-/motion-dom-11.18.1.tgz", + "integrity": "sha512-g76KvA001z+atjfxczdRtw/RXOM3OMSdd1f4DL77qCTF/+avrRJiawSG4yDibEQ215sr9kpinSlX2pCTJ9zbhw==", + "license": "MIT", + "dependencies": { + "motion-utils": "^11.18.1" + } + }, + "node_modules/motion-utils": { + "version": "11.18.1", + "resolved": "https://registry.npmjs.org/motion-utils/-/motion-utils-11.18.1.tgz", + "integrity": "sha512-49Kt+HKjtbJKLtgO/LKj9Ld+6vw9BjH5d9sc40R/kVyH8GLAXgT42M2NnuPcJNuA3s9ZfZBUcwIgpmZWGEE+hA==", + "license": "MIT" + }, "node_modules/mousetrap": { "version": "1.6.5", "resolved": "https://registry.npmjs.org/mousetrap/-/mousetrap-1.6.5.tgz", @@ -21809,9 +26232,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "version": "3.3.16", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.16.tgz", + "integrity": "sha512-bzlKTyNJ7+LdGIIwy8ijFpIqEQIvafahV7eYykJ8Cvh42EdJeODoJ6gUJXpQJvej1BddH8OqTXZNE/KfbWAu8Q==", "funding": [ { "type": "github", @@ -21938,7 +26361,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -22456,6 +26879,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -22682,9 +27106,19 @@ } }, "node_modules/parsel-js": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/parsel-js/-/parsel-js-1.1.2.tgz", - "integrity": "sha512-D66DG2nKx4Yoq66TMEyCUHlR2STGqO7vsBrX7tgyS9cfQyO6XD5JyzOiflwmWN6a4wbUAqpmHqmrxlTQVGZcbA==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/parsel-js/-/parsel-js-1.2.3.tgz", + "integrity": "sha512-kJHFmSNnujpusFfVEXjNaoJ09VYHF8Ih0aVUn7Clu+Ug8AFoA2wx7Ezh17JfW4+vhm/lauAd9A+//uFkmydZtQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/LeaVerou" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/leaverou" + } + ], "license": "MIT" }, "node_modules/parseurl": { @@ -22793,7 +27227,7 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=8.6" @@ -22975,9 +27409,9 @@ } }, "node_modules/postcss": { - "version": "8.4.49", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz", - "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==", + "version": "8.5.23", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.23.tgz", + "integrity": "sha512-g50586zr4bZmwFiTlflMu8E0bDTb5I5gertgwAKmsdUlTQIhZtunzUlD1WSzwcVWPoAVpsrA6vlfCD7oXvRwgg==", "funding": [ { "type": "opencollective", @@ -22994,7 +27428,7 @@ ], "license": "MIT", "dependencies": { - "nanoid": "^3.3.7", + "nanoid": "^3.3.16", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" }, @@ -23539,7 +27973,7 @@ "version": "0.1.6", "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.6.tgz", "integrity": "sha512-0sglIs9Wmkzbr8lQwEyIzlDOOC9bGmfVKcJTaxv3vMmd3uo4o4DerC3En0bnmgceeql9BfC8hRkp7cg0fjdVqw==", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/postcss-safe-parser": { @@ -23666,13 +28100,21 @@ } }, "node_modules/preact": { - "version": "10.24.0", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.24.0.tgz", - "integrity": "sha512-aK8Cf+jkfyuZ0ZZRG9FbYqwmEiGQ4y/PUO4SuTWoyWL244nZZh7bd5h2APd4rSNDYTBNghg1L+5iJN3Skxtbsw==", + "version": "10.29.7", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.29.7.tgz", + "integrity": "sha512-DCHYrK/B10yUD3ZjLfhZ3WIE/9Vf9VFUODcRE2dRomTYDpJk6z6L9wecSfhfE6M9ZTHUdyQkoC46arIDhEV84Q==", "license": "MIT", "funding": { "type": "opencollective", "url": "https://opencollective.com/preact" + }, + "peerDependencies": { + "preact-render-to-string": ">=5" + }, + "peerDependenciesMeta": { + "preact-render-to-string": { + "optional": true + } } }, "node_modules/prelude-ls": { @@ -24061,6 +28503,7 @@ "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "devOptional": true, "funding": [ { "type": "github", @@ -24098,6 +28541,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, "license": "MIT", "dependencies": { "safe-buffer": "^5.1.0" @@ -24202,6 +28646,38 @@ "react-dom": ">=16.8.0" } }, + "node_modules/react-day-picker": { + "version": "9.14.0", + "resolved": "https://registry.npmjs.org/react-day-picker/-/react-day-picker-9.14.0.tgz", + "integrity": "sha512-tBaoDWjPwe0M5pGrum4H0SR6Lyk+BO9oHnp9JbKpGKW2mlraNPgP9BMfsg5pWpwrssARmeqk7YBl2oXutZTaHA==", + "license": "MIT", + "dependencies": { + "@date-fns/tz": "^1.4.1", + "@tabby_ai/hijri-converter": "1.0.5", + "date-fns": "^4.1.0", + "date-fns-jalali": "4.1.0-0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "type": "individual", + "url": "https://github.com/sponsors/gpbl" + }, + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "node_modules/react-day-picker/node_modules/date-fns": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.4.0.tgz", + "integrity": "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, "node_modules/react-dom": { "version": "18.3.1", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", @@ -24216,9 +28692,9 @@ } }, "node_modules/react-easy-crop": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/react-easy-crop/-/react-easy-crop-5.0.8.tgz", - "integrity": "sha512-KjulxXhR5iM7+ATN2sGCum/IyDxGw7xT0dFoGcqUP+ysaPU5Ka7gnrDa2tUHFHUoMNyPrVZ05QA+uvMgC5ym/g==", + "version": "5.5.7", + "resolved": "https://registry.npmjs.org/react-easy-crop/-/react-easy-crop-5.5.7.tgz", + "integrity": "sha512-kYo4NtMeXFQB7h1U+h5yhUkE46WQbQdq7if54uDlbMdZHdRgNehfvaFrXnFw5NR1PNoUOJIfTwLnWmEx/MaZnA==", "license": "MIT", "dependencies": { "normalize-wheel": "^1.0.1", @@ -24246,23 +28722,23 @@ } }, "node_modules/react-remove-scroll": { - "version": "2.5.5", - "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.5.5.tgz", - "integrity": "sha512-ImKhrzJJsyXJfBZ4bzu8Bwpka14c/fQt0k+cyFp/PBhTfyDnU5hjOtM4AG/0AMyy8oKzOTR0lDgJIM7pYXI0kw==", + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.7.2.tgz", + "integrity": "sha512-Iqb9NjCCTt6Hf+vOdNIZGdTiH1QSqr27H/Ek9sv/a97gfueI/5h1s3yRi1nngzMUaOOToin5dI1dXKdXiF+u0Q==", "license": "MIT", "dependencies": { - "react-remove-scroll-bar": "^2.3.3", - "react-style-singleton": "^2.2.1", + "react-remove-scroll-bar": "^2.3.7", + "react-style-singleton": "^2.2.3", "tslib": "^2.1.0", - "use-callback-ref": "^1.3.0", - "use-sidecar": "^1.1.2" + "use-callback-ref": "^1.3.3", + "use-sidecar": "^1.1.3" }, "engines": { "node": ">=10" }, "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -24271,20 +28747,20 @@ } }, "node_modules/react-remove-scroll-bar": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.6.tgz", - "integrity": "sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g==", + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.8.tgz", + "integrity": "sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==", "license": "MIT", "dependencies": { - "react-style-singleton": "^2.2.1", + "react-style-singleton": "^2.2.2", "tslib": "^2.0.0" }, "engines": { "node": ">=10" }, "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" }, "peerDependenciesMeta": { "@types/react": { @@ -24325,21 +28801,20 @@ } }, "node_modules/react-style-singleton": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.1.tgz", - "integrity": "sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.3.tgz", + "integrity": "sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==", "license": "MIT", "dependencies": { "get-nonce": "^1.0.0", - "invariant": "^2.2.4", "tslib": "^2.0.0" }, "engines": { "node": ">=10" }, "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -24435,6 +28910,7 @@ "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, "license": "MIT", "dependencies": { "inherits": "^2.0.3", @@ -24693,6 +29169,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -24702,17 +29179,11 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=0.10.0" - } - }, - "node_modules/require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "license": "ISC" + } }, "node_modules/requireindex": { "version": "1.2.0", @@ -24731,6 +29202,12 @@ "dev": true, "license": "MIT" }, + "node_modules/reselect": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/reselect/-/reselect-5.2.0.tgz", + "integrity": "sha512-AgZ3UOZm3YndfrJ4OYjgrT7bmCm/1iqkjvEfH/oYjzh6PD2qw4QuT3jjnXIrpdt4MTpMXclMT3lXbmRY+XRakw==", + "license": "MIT" + }, "node_modules/resolve": { "version": "1.22.8", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", @@ -24789,7 +29266,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=8" @@ -24829,7 +29306,7 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "iojs": ">=1.0.0", @@ -24979,7 +29456,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, + "devOptional": true, "funding": [ { "type": "github", @@ -25233,6 +29710,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", "integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==", + "dev": true, "license": "MIT" }, "node_modules/select-hose": { @@ -25444,12 +29922,6 @@ "node": ">= 0.8.0" } }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "license": "ISC" - }, "node_modules/set-function-length": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", @@ -25573,198 +30045,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/showdown": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/showdown/-/showdown-1.9.1.tgz", - "integrity": "sha512-9cGuS382HcvExtf5AHk7Cb4pAeQQ+h0eTr33V1mu+crYWV4KvWAw6el92bDrqGEk5d46Ai/fhbEUwqJ/mTCNEA==", - "license": "BSD-3-Clause", - "dependencies": { - "yargs": "^14.2" - }, - "bin": { - "showdown": "bin/showdown.js" - } - }, - "node_modules/showdown/node_modules/ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/showdown/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/showdown/node_modules/cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "license": "ISC", - "dependencies": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "node_modules/showdown/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "license": "MIT" - }, - "node_modules/showdown/node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "license": "MIT", - "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/showdown/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/showdown/node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "license": "MIT", - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/showdown/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/showdown/node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "license": "MIT", - "dependencies": { - "p-limit": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/showdown/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/showdown/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "license": "MIT", - "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/showdown/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/showdown/node_modules/wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/showdown/node_modules/y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "license": "ISC" - }, - "node_modules/showdown/node_modules/yargs": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz", - "integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==", - "license": "MIT", - "dependencies": { - "cliui": "^5.0.0", - "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^15.0.1" - } - }, - "node_modules/showdown/node_modules/yargs-parser": { - "version": "15.0.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.3.tgz", - "integrity": "sha512-/MVEVjTXy/cGAjdtQf8dW3V9b97bPN7rNn8ETj6BmAQL7ibC7O1Q9SPJbGjgh3SlwoBNXMzj/ZGIj8mBgl12YA==", - "license": "ISC", - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - }, "node_modules/side-channel": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.1.tgz", @@ -25854,59 +30134,6 @@ "integrity": "sha512-C2WEK/Z3HoSFbYq8tI7ni3eOo/NneSPRoPpcM7WdLjFOArFuyXEjAoCdOC3DgMfRyziZQ1hCNR4mrNdWEvD0og==", "license": "MIT" }, - "node_modules/simple-peer": { - "version": "9.11.1", - "resolved": "https://registry.npmjs.org/simple-peer/-/simple-peer-9.11.1.tgz", - "integrity": "sha512-D1SaWpOW8afq1CZGWB8xTfrT3FekjQmPValrqncJMX7QFl8YwhrPTZvMCANLtgBwwdS+7zURyqxDDEmY558tTw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "buffer": "^6.0.3", - "debug": "^4.3.2", - "err-code": "^3.0.1", - "get-browser-rtc": "^1.1.0", - "queue-microtask": "^1.2.3", - "randombytes": "^2.1.0", - "readable-stream": "^3.6.0" - } - }, - "node_modules/simple-peer/node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, "node_modules/sirv": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.4.tgz", @@ -25933,7 +30160,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=8" @@ -25943,7 +30170,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", @@ -25961,7 +30188,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "color-convert": "^2.0.1" @@ -25977,7 +30204,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "color-name": "~1.1.4" @@ -25990,7 +30217,7 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/smart-buffer": { @@ -26371,6 +30598,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, "license": "MIT", "dependencies": { "safe-buffer": "~5.2.0" @@ -26394,7 +30622,7 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", @@ -26409,7 +30637,7 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/string.prototype.includes": { @@ -26517,7 +30745,7 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" @@ -26847,7 +31075,7 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "has-flag": "^4.0.0" @@ -26894,7 +31122,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", - "dev": true + "devOptional": true }, "node_modules/svgo": { "version": "3.3.2", @@ -26956,11 +31184,17 @@ "url": "https://opencollective.com/unts" } }, + "node_modules/tabbable": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.5.0.tgz", + "integrity": "sha512-wieBHXygIm7OyQOu5hQlkk62/WyCFYGlWg7L6/ZCUZwx0o398Zkn4pVmMyfYhfMG8kGrj/Krt8eIk6UKC6VzwA==", + "license": "MIT" + }, "node_modules/table": { - "version": "6.8.2", - "resolved": "https://registry.npmjs.org/table/-/table-6.8.2.tgz", - "integrity": "sha512-w2sfv80nrAh2VCbqR5AK27wswXhqcck2AhfnNW76beQXskGZ1V12GwS//yYVa3d3fcvAip2OUnbDAjW2k3v9fA==", - "dev": true, + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/table/-/table-6.9.0.tgz", + "integrity": "sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A==", + "devOptional": true, "license": "BSD-3-Clause", "dependencies": { "ajv": "^8.0.1", @@ -27318,6 +31552,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==", + "dev": true, "license": "MIT" }, "node_modules/tmp": { @@ -27341,7 +31576,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "is-number": "^7.0.0" @@ -27742,7 +31977,7 @@ "version": "5.6.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", - "dev": true, + "devOptional": true, "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", @@ -27800,6 +32035,7 @@ "version": "6.19.8", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "dev": true, "license": "MIT" }, "node_modules/unicode-canonical-property-names-ecmascript": { @@ -28180,9 +32416,9 @@ } }, "node_modules/use-callback-ref": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.2.tgz", - "integrity": "sha512-elOQwe6Q8gqZgDA8mrh44qRTQqpIHDcZ3hXTLjBe1i4ph8XpNJnO+aQf3NaG+lriLopI4HMx9VjQLfPQ6vhnoA==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.3.tgz", + "integrity": "sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==", "license": "MIT", "dependencies": { "tslib": "^2.0.0" @@ -28191,8 +32427,8 @@ "node": ">=10" }, "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -28204,6 +32440,7 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/use-lilius/-/use-lilius-2.0.5.tgz", "integrity": "sha512-IbPjJe4T6B0zQV6ahftVtHvCAxi6RAuDpEcO8TmnHh4nBtx7JbGdpbgXWOUj/9YjrzEbdT/lW7JWcBVbX3MbrA==", + "dev": true, "license": "MIT", "dependencies": { "date-fns": "^3.6.0" @@ -28223,9 +32460,9 @@ } }, "node_modules/use-sidecar": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.2.tgz", - "integrity": "sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.3.tgz", + "integrity": "sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==", "license": "MIT", "dependencies": { "detect-node-es": "^1.1.0", @@ -28235,8 +32472,8 @@ "node": ">=10" }, "peerDependencies": { - "@types/react": "^16.9.0 || ^17.0.0 || ^18.0.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -28245,18 +32482,19 @@ } }, "node_modules/use-sync-external-store": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.2.tgz", - "integrity": "sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz", + "integrity": "sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==", "license": "MIT", "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "devOptional": true, "license": "MIT" }, "node_modules/utils-merge": { @@ -28387,6 +32625,15 @@ "makeerror": "1.0.12" } }, + "node_modules/wasm-vips": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/wasm-vips/-/wasm-vips-0.0.18.tgz", + "integrity": "sha512-AJyCvxZj/3qceKNnh+YyEobu/IaJFoPN7x7SxyyHmYBS3kASMqJqxQEuN0ZHKQDWsCJ8armfx4Tq3uKrNc+nMA==", + "license": "MIT", + "engines": { + "node": ">=17.0.0" + } + }, "node_modules/watchpack": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.5.1.tgz", @@ -29166,7 +33413,7 @@ "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, + "devOptional": true, "license": "ISC", "dependencies": { "isexe": "^2.0.0" @@ -29238,12 +33485,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/which-module": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", - "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", - "license": "ISC" - }, "node_modules/which-typed-array": { "version": "1.1.15", "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", @@ -29481,7 +33722,7 @@ "version": "8.18.0", "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", - "devOptional": true, + "dev": true, "license": "MIT", "engines": { "node": ">=10.0.0" @@ -29583,30 +33824,10 @@ "dev": true, "license": "MIT" }, - "node_modules/y-indexeddb": { - "version": "9.0.12", - "resolved": "https://registry.npmjs.org/y-indexeddb/-/y-indexeddb-9.0.12.tgz", - "integrity": "sha512-9oCFRSPPzBK7/w5vOkJBaVCQZKHXB/v6SIT+WYhnJxlEC61juqG0hBrAf+y3gmSMLFLwICNH9nQ53uscuse6Hg==", - "license": "MIT", - "dependencies": { - "lib0": "^0.2.74" - }, - "engines": { - "node": ">=16.0.0", - "npm": ">=8.0.0" - }, - "funding": { - "type": "GitHub Sponsors ❤", - "url": "https://github.com/sponsors/dmonad" - }, - "peerDependencies": { - "yjs": "^13.0.0" - } - }, "node_modules/y-protocols": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/y-protocols/-/y-protocols-1.0.6.tgz", - "integrity": "sha512-vHRF2L6iT3rwj1jub/K5tYcTT/mEYDUppgNPXwp8fmLpui9f7Yeq3OEtTLVF012j39QnV+KEQpNqoN7CWU7Y9Q==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/y-protocols/-/y-protocols-1.0.7.tgz", + "integrity": "sha512-YSVsLoXxO67J6eE/nV4AtFtT3QEotZf5sK5BHxFBXso7VDUT3Tx07IfA6hsu5Q5OmBdMkQVmFZ9QOA7fikWvnw==", "license": "MIT", "dependencies": { "lib0": "^0.2.85" @@ -29623,33 +33844,6 @@ "yjs": "^13.0.0" } }, - "node_modules/y-webrtc": { - "version": "10.2.6", - "resolved": "https://registry.npmjs.org/y-webrtc/-/y-webrtc-10.2.6.tgz", - "integrity": "sha512-1kZ4YYwksFZi8+l8mTebVX9vW6Q5MnqxMkvNU700X5dBE38usurt/JgeXSIQRpK3NwUYYb9y63Jn9FMpMH6/vA==", - "license": "MIT", - "dependencies": { - "lib0": "^0.2.42", - "simple-peer": "^9.11.0", - "y-protocols": "^1.0.6" - }, - "bin": { - "y-webrtc-signaling": "bin/server.js" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "type": "GitHub Sponsors ❤", - "url": "https://github.com/sponsors/dmonad" - }, - "optionalDependencies": { - "ws": "^8.14.2" - }, - "peerDependencies": { - "yjs": "^13.6.8" - } - }, "node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", @@ -29717,12 +33911,12 @@ } }, "node_modules/yjs": { - "version": "13.6.19", - "resolved": "https://registry.npmjs.org/yjs/-/yjs-13.6.19.tgz", - "integrity": "sha512-GNKw4mEUn5yWU2QPHRx8jppxmCm9KzbBhB4qJLUJFiiYD0g/tDVgXQ7aPkyh01YO28kbs2J/BEbWBagjuWyejw==", + "version": "13.6.31", + "resolved": "https://registry.npmjs.org/yjs/-/yjs-13.6.31.tgz", + "integrity": "sha512-Eq+5BRfbeGyqGVrTJL3bEcr8gKkxPuyuoHmAwpk52fDb8kOVMrfVSTRPd6yiGgX5Fskb96qCRjzjbRjrL4YEnw==", "license": "MIT", "dependencies": { - "lib0": "^0.2.86" + "lib0": "^0.2.99" }, "engines": { "node": ">=16.0.0", diff --git a/package.json b/package.json index a4031059..ad114173 100644 --- a/package.json +++ b/package.json @@ -54,8 +54,8 @@ "wp-types": "^4.67.0" }, "dependencies": { - "@wordpress/block-library": "^9.12.0", - "@wordpress/blocks": "^13.10.0", + "@wordpress/block-library": "^9.27.0", + "@wordpress/blocks": "^15.22.0", "@wp-playground/client": "^3.1.38", "react": "^18.3.1", "react-dom": "^18.3.1", diff --git a/plan.md b/plan.md index f6873e7b..ebaaab9a 100644 --- a/plan.md +++ b/plan.md @@ -150,130 +150,130 @@ Rows are ordered by remediation priority: severity first, runtime before develop | Alert | GHSA | Severity | Ecosystem | Affected package | Relationship / scope | Locked vulnerable version(s) | First patched | Causal family set | Representative locked path | Child PR | Status | | ---: | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | -| 44 | GHSA-95m3-7q98-8xr5 | critical | npm | `sha.js` | transitive / runtime | `2.4.11` | `2.4.12` | PGL | `sha.js@2.4.11 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | -| 42 | GHSA-fjxv-7rqg-78g4 | critical | npm | `form-data` | transitive / development | `4.0.0` | `4.0.4` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 77 | GHSA-5rq4-664w-9x2c | critical | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.0` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 146 | GHSA-w7jw-789q-3m8p | critical | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.8.4` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PR #202 removed the WPS and CONCURRENTLY paths; web-ext `10.4.0` replaces the last affected `1.7.3` path with patched `1.8.4`; vulnerable version absent globally on the child branch | -| 164 | GHSA-xv26-6w52-cph6 | critical | npm | `websocket-driver` | transitive / development | `0.7.4` | `0.7.5` | WPS | `websocket-driver@0.7.4 ← sockjs@0.3.24 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 3 | GHSA-pwfr-8pq7-x9qv | high | npm | `octokit` | transitive / runtime | `3.1.1` | `3.1.2` | PGL | `octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | +| 44 | GHSA-95m3-7q98-8xr5 | critical | npm | `sha.js` | transitive / runtime | `2.4.11` | `2.4.12` | PGL | `sha.js@2.4.11 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | +| 42 | GHSA-fjxv-7rqg-78g4 | critical | npm | `form-data` | transitive / development | `4.0.0` | `4.0.4` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 77 | GHSA-5rq4-664w-9x2c | critical | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.0` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 146 | GHSA-w7jw-789q-3m8p | critical | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.8.4` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PR #202 removed the WPS and CONCURRENTLY paths; web-ext `10.4.0` replaces the last affected `1.7.3` path with patched `1.8.4`; vulnerable version absent globally in the integration branch | +| 164 | GHSA-xv26-6w52-cph6 | critical | npm | `websocket-driver` | transitive / development | `0.7.4` | `0.7.5` | WPS | `websocket-driver@0.7.4 ← sockjs@0.3.24 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 3 | GHSA-pwfr-8pq7-x9qv | high | npm | `octokit` | transitive / runtime | `3.1.1` | `3.1.2` | PGL | `octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | | 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | +| 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | | 58 | GHSA-2w69-qvjg-hvjx | high | npm | `@remix-run/router` | transitive / runtime | `1.21.0` | `1.23.2` | ROUTER | `@remix-run/router@1.21.0 ← react-router-dom@6.28.0` | unassigned | baseline open | | 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable BLK and WPS paths remain | -| 192 | GHSA-6g55-p6wh-862q | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.12` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | -| 195 | GHSA-r28c-9q8g-f849 | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.18` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | -| 6 | GHSA-3h5v-q93c-6h6q | high | npm | `ws` | transitive / development | `8.13.0` | `8.17.1` | WPS | `ws@8.13.0 ← puppeteer-core@20.9.0 ← lighthouse@10.4.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 33 | GHSA-pq67-2wwv-3xjx | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.7` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 37 | GHSA-8cj5-5rvv-wf4v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.9` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 46 | GHSA-vj76-c3g6-qr5v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.1.1` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 49 | GHSA-7mvr-c777-76hp | high | npm | `playwright` | transitive / development | `1.48.2` | `1.55.1` | WPS | `playwright@1.48.2 ← @playwright/test@1.48.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 54 | GHSA-5gfm-wpxj-wjgq | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | +| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + `agent/maintenance-005-wordpress-blocks` | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | +| 192 | GHSA-6g55-p6wh-862q | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.12` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | `agent/maintenance-005-wordpress-blocks` | validated locally; vulnerable version absent globally | +| 195 | GHSA-r28c-9q8g-f849 | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.18` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | `agent/maintenance-005-wordpress-blocks` | validated locally; vulnerable version absent globally | +| 6 | GHSA-3h5v-q93c-6h6q | high | npm | `ws` | transitive / development | `8.13.0` | `8.17.1` | WPS | `ws@8.13.0 ← puppeteer-core@20.9.0 ← lighthouse@10.4.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 33 | GHSA-pq67-2wwv-3xjx | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.7` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 37 | GHSA-8cj5-5rvv-wf4v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.9` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 46 | GHSA-vj76-c3g6-qr5v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.1.1` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 49 | GHSA-7mvr-c777-76hp | high | npm | `playwright` | transitive / development | `1.48.2` | `1.55.1` | WPS | `playwright@1.48.2 ← @playwright/test@1.48.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 54 | GHSA-5gfm-wpxj-wjgq | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally in the integration branch | | 63 | GHSA-vvj3-c3rp-c85p | high | composer | `phpunit/phpunit` | unknown / development | `9.6.21` | `9.6.33` | PHPUNIT | `phpunit/phpunit@9.6.21 (direct require-dev in composer.json)` | unassigned | baseline open | -| 70 | GHSA-43fc-jf86-j433 | high | npm | `axios` | transitive / development | `1.7.7` | `1.13.5` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 79 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `9.0.3` | `9.0.7` | WPS | `minimatch@9.0.3 ← @typescript-eslint/typescript-estree@6.21.0 ← @typescript-eslint/parser@6.21.0 ← @wordpress/eslint-plugin@21.0.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 80 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `5.1.6` | `5.1.8` | WEBPACK | `minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `minimatch@5.1.9`; vulnerable major-5 version absent globally on the child branch | +| 70 | GHSA-43fc-jf86-j433 | high | npm | `axios` | transitive / development | `1.7.7` | `1.13.5` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 79 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `9.0.3` | `9.0.7` | WPS | `minimatch@9.0.3 ← @typescript-eslint/typescript-estree@6.21.0 ← @typescript-eslint/parser@6.21.0 ← @wordpress/eslint-plugin@21.0.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 80 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `5.1.6` | `5.1.8` | WEBPACK | `minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `minimatch@5.1.9`; vulnerable major-5 version absent globally in the integration branch | | 83 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `3.0.8, 3.1.2` | `3.1.3` | ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS | `minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | WEBEXT, ESLINT-RESOLVER, and compatible WEBPACK/WPS paths refresh to patched `3.1.5`; vulnerable `markdownlint-cli` WPS path at `3.0.8` remains | -| 84 | GHSA-5c6j-r48x-rmvq | high | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.3` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBPACK + WPS paths remain; child branch documents upstream WPS residual | -| 85 | GHSA-xpqw-6gx7-v673 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.3` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 88 | GHSA-wf6x-7x77-mvgw | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.8` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 91 | GHSA-rf6f-7fwh-wjgh | high | npm | `flatted` | transitive / development | `3.3.1` | `3.4.2` | ESLINT-RESOLVER + WEBEXT + WPS | `flatted@3.3.1 ← flat-cache@3.2.0 ← file-entry-cache@6.0.1 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `flatted@3.4.3`; vulnerable version absent globally on the child branch | -| 93 | GHSA-ppp5-5v6c-4jwp | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | -| 94 | GHSA-q67f-28xg-22rw | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | -| 96 | GHSA-2328-f5f3-gj25 | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | -| 103 | GHSA-r5fr-rjxr-66jc | high | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | -| 104 | GHSA-6v7q-wjvx-w8wg | high | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.2` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 117 | GHSA-6chq-wfr3-2hj9 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 120 | GHSA-pf86-5x62-jrwf | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 125 | GHSA-q3j6-qgpj-74h6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.1` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | -| 126 | GHSA-v39h-62p7-jpjc | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.2` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | -| 127 | GHSA-fv7c-fp4j-7gwp | high | npm | `@babel/plugin-transform-modules-systemjs` | transitive / development | `7.25.9` | `7.29.4` | BABEL + WPS | `@babel/plugin-transform-modules-systemjs@7.25.9 ← @babel/preset-env@7.26.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable BABEL + WPS paths remain; child branch documents upstream WPS residual | -| 130 | GHSA-q8qp-cvcw-x6jj | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 136 | GHSA-ph9p-34f9-6g65 | high | npm | `tmp` | transitive / development | `0.2.3` | `0.2.6` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` selects patched `tmp@0.2.7`; vulnerable version absent globally on the child branch | -| 137 | GHSA-pmwg-cvhr-8vh7 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 141 | GHSA-j5f8-grm9-p9fc | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 143 | GHSA-p92q-9vqr-4j8v | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 144 | GHSA-3g43-6gmg-66jw | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 148 | GHSA-35jp-ww65-95wh | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 155 | GHSA-hmw2-7cc7-3qxx | high | npm | `form-data` | transitive / development | `4.0.0` | `4.0.6` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 158 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / development | `7.5.10` | `7.5.11` | WPS | `ws@7.5.10 ← webpack-bundle-analyzer@4.10.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | +| 84 | GHSA-5c6j-r48x-rmvq | high | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.3` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBPACK + WPS paths remain; integration branch documents upstream WPS residual | +| 85 | GHSA-xpqw-6gx7-v673 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.3` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 88 | GHSA-wf6x-7x77-mvgw | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.8` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 91 | GHSA-rf6f-7fwh-wjgh | high | npm | `flatted` | transitive / development | `3.3.1` | `3.4.2` | ESLINT-RESOLVER + WEBEXT + WPS | `flatted@3.3.1 ← flat-cache@3.2.0 ← file-entry-cache@6.0.1 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `flatted@3.4.3`; vulnerable version absent globally in the integration branch | +| 93 | GHSA-ppp5-5v6c-4jwp | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally in the integration branch | +| 94 | GHSA-q67f-28xg-22rw | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally in the integration branch | +| 96 | GHSA-2328-f5f3-gj25 | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.4.0` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally in the integration branch | +| 103 | GHSA-r5fr-rjxr-66jc | high | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; integration branch documents upstream WPS residual | +| 104 | GHSA-6v7q-wjvx-w8wg | high | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.2` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 117 | GHSA-6chq-wfr3-2hj9 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 120 | GHSA-pf86-5x62-jrwf | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 125 | GHSA-q3j6-qgpj-74h6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.1` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally in the integration branch | +| 126 | GHSA-v39h-62p7-jpjc | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.2` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally in the integration branch | +| 127 | GHSA-fv7c-fp4j-7gwp | high | npm | `@babel/plugin-transform-modules-systemjs` | transitive / development | `7.25.9` | `7.29.4` | BABEL + WPS | `@babel/plugin-transform-modules-systemjs@7.25.9 ← @babel/preset-env@7.26.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable BABEL + WPS paths remain; integration branch documents upstream WPS residual | +| 130 | GHSA-q8qp-cvcw-x6jj | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 136 | GHSA-ph9p-34f9-6g65 | high | npm | `tmp` | transitive / development | `0.2.3` | `0.2.6` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` selects patched `tmp@0.2.7`; vulnerable version absent globally in the integration branch | +| 137 | GHSA-pmwg-cvhr-8vh7 | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 141 | GHSA-j5f8-grm9-p9fc | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 143 | GHSA-p92q-9vqr-4j8v | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 144 | GHSA-3g43-6gmg-66jw | high | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 148 | GHSA-35jp-ww65-95wh | high | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 155 | GHSA-hmw2-7cc7-3qxx | high | npm | `form-data` | transitive / development | `4.0.0` | `4.0.6` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 158 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / development | `7.5.10` | `7.5.11` | WPS | `ws@7.5.10 ← webpack-bundle-analyzer@4.10.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 166 | GHSA-xcpc-8h2w-3j85 | high | npm | `adm-zip` | transitive / development | `0.5.16` | `0.6.0` | WEBEXT + WPS | `adm-zip@0.5.16 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | WEBEXT and WPS paths remain affected; web-ext `10.4.0` and current `10.5.0` resolve at most `adm-zip@0.5.18`, below the `0.6.0` patch, so this row is upstream-blocked for WEBEXT | | 167 | GHSA-395f-4hp3-45gv | high | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.9.0` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PR #202 removed WPS and CONCURRENTLY paths; web-ext `10.4.0` and current `10.5.0` pin `fx-runner@1.5.0` to affected `shell-quote@1.8.4`, so this row is upstream-blocked for WEBEXT | -| 172 | GHSA-v245-v573-v5vm | high | npm | `linkify-it` | transitive / development | `3.0.3` | `5.0.2` | WPS | `linkify-it@3.0.3 ← markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 173 | GHSA-2p49-hgcm-8545 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.4` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 174 | GHSA-4c8g-83qw-93j6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.3` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | -| 177 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `js-yaml@3.15.0`; vulnerable version absent globally on the child branch | -| 178 | GHSA-v2hh-gcrm-f6hx | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.4` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally on the child branch | -| 181 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `4.1.0` | `4.3.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally on the child branch | -| 182 | GHSA-v56q-mh7h-f735 | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 183 | GHSA-xvcm-6775-5m9r | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 184 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `1.1.11` | `1.1.16` | ESLINT-RESOLVER + WEBEXT + WPS | `brace-expansion@1.1.11 ← minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `brace-expansion@1.1.16`; vulnerable major-1 version absent globally on the child branch | -| 187 | GHSA-jr5f-v2jv-69x6 | high | npm | `axios` | transitive / development | `1.7.7` | `1.8.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 191 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `2.0.1` | `2.1.2` | WEBPACK + WPS | `brace-expansion@2.0.1 ← minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `brace-expansion@2.1.2`; vulnerable version absent globally on the child branch | -| 24 | GHSA-mwcw-c2x4-8c55 | medium | npm | `nanoid` | transitive / runtime | `3.3.7` | `3.3.8` | BLK | `nanoid@3.3.7 ← postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | -| 29 | GHSA-x4c5-c7rf-jjgv | medium | npm | `@octokit/endpoint` | transitive / runtime | `9.0.5` | `9.0.6` | PGL | `@octokit/endpoint@9.0.5 ← @octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | -| 30 | GHSA-xx4v-prfh-6cgc | medium | npm | `@octokit/request-error` | transitive / runtime | `5.1.0` | `5.1.1` | PGL | `@octokit/request-error@5.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | -| 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | -| 32 | GHSA-rmvr-2pp2-xj38 | medium | npm | `@octokit/request` | transitive / runtime | `8.4.0` | `8.4.1` | PGL | `@octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated locally; PR #201 open | +| 172 | GHSA-v245-v573-v5vm | high | npm | `linkify-it` | transitive / development | `3.0.3` | `5.0.2` | WPS | `linkify-it@3.0.3 ← markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 173 | GHSA-2p49-hgcm-8545 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.4` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 174 | GHSA-4c8g-83qw-93j6 | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.3` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally in the integration branch | +| 177 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `js-yaml@3.15.0`; vulnerable version absent globally in the integration branch | +| 178 | GHSA-v2hh-gcrm-f6hx | high | npm | `fast-uri` | transitive / development | `3.0.3` | `3.1.4` | AJV + WEBEXT + WEBPACK + WPS | `fast-uri@3.0.3 ← ajv@8.17.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal shared Ajv refresh selects `ajv@8.20.0` with patched `fast-uri@3.1.4`; vulnerable version absent globally in the integration branch | +| 181 | GHSA-52cp-r559-cp3m | high | npm | `js-yaml` | transitive / development | `4.1.0` | `4.3.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally in the integration branch | +| 182 | GHSA-v56q-mh7h-f735 | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 183 | GHSA-xvcm-6775-5m9r | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.9` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 184 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `1.1.11` | `1.1.16` | ESLINT-RESOLVER + WEBEXT + WPS | `brace-expansion@1.1.11 ← minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `brace-expansion@1.1.16`; vulnerable major-1 version absent globally in the integration branch | +| 187 | GHSA-jr5f-v2jv-69x6 | high | npm | `axios` | transitive / development | `1.7.7` | `1.8.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 191 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `2.0.1` | `2.1.2` | WEBPACK + WPS | `brace-expansion@2.0.1 ← minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `brace-expansion@2.1.2`; vulnerable version absent globally in the integration branch | +| 24 | GHSA-mwcw-c2x4-8c55 | medium | npm | `nanoid` | transitive / runtime | `3.3.7` | `3.3.8` | BLK | `nanoid@3.3.7 ← postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | `agent/maintenance-005-wordpress-blocks` | validated locally; vulnerable version absent globally | +| 29 | GHSA-x4c5-c7rf-jjgv | medium | npm | `@octokit/endpoint` | transitive / runtime | `9.0.5` | `9.0.6` | PGL | `@octokit/endpoint@9.0.5 ← @octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | +| 30 | GHSA-xx4v-prfh-6cgc | medium | npm | `@octokit/request-error` | transitive / runtime | `5.1.0` | `5.1.1` | PGL | `@octokit/request-error@5.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | +| 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | +| 32 | GHSA-rmvr-2pp2-xj38 | medium | npm | `@octokit/request` | transitive / runtime | `8.4.0` | `8.4.1` | PGL | `@octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | | 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` requires a compatible shared Ajv that resolves to patched `8.20.0`; vulnerable major-8 version absent globally on the child branch | -| 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | -| 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | -| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable BLK and WPS paths remain | -| 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | +| 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` requires a compatible shared Ajv that resolves to patched `8.20.0`; vulnerable major-8 version absent globally in the integration branch | +| 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | `agent/maintenance-005-wordpress-blocks` | BLK path removed; affected WPS and `@types/wordpress__blocks` paths remain | +| 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | `agent/maintenance-005-wordpress-blocks` | validated locally; vulnerable Showdown dependency absent globally | +| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + `agent/maintenance-005-wordpress-blocks` | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | +| 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | `agent/maintenance-005-wordpress-blocks` | root Blocks path patched, but affected block-library, WPS, and `@types/wordpress__blocks` paths remain | | 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | unassigned | baseline open | -| 190 | GHSA-qx2v-qp2m-jg93 | medium | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.10` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | +| 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | `agent/maintenance-005-wordpress-blocks` | root Blocks path patched, but affected `@wordpress/block-library@9.27.0` path remains | +| 190 | GHSA-qx2v-qp2m-jg93 | medium | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.10` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | `agent/maintenance-005-wordpress-blocks` | validated locally; vulnerable version absent globally | | 193 | GHSA-337j-9hxr-rhxg | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | | 194 | GHSA-wrjc-x8rr-h8h6 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 36 | GHSA-4www-5p9h-95mh | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.8` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 38 | GHSA-4v9v-hfq4-rm2v | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 39 | GHSA-9jgg-88mc-972h | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 51 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.14.2` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `js-yaml@3.15.0`; vulnerable version absent globally on the child branch | -| 52 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.1.1` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally on the child branch | -| 53 | GHSA-65ch-62r8-g69g | medium | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally on the child branch | -| 62 | GHSA-xxjr-mmjv-4gpg | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.17.23` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | -| 101 | GHSA-3v7f-55p6-f55p | medium | npm | `picomatch` | transitive / development | `2.3.1` | `2.3.2` | ESLINT-RESOLVER + WEBPACK + WPS | `picomatch@2.3.1 ← micromatch@4.0.8 ← ts-loader@9.5.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBPACK + WPS paths remain; child branch documents upstream WPS residual | -| 102 | GHSA-f23m-r3pf-42rh | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; child branch documents upstream WPS residual | -| 108 | GHSA-r4q5-vmmm-2653 | medium | npm | `follow-redirects` | transitive / development | `1.15.9` | `1.16.0` | WPS | `follow-redirects@1.15.9 ← axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 109 | GHSA-fvcv-3m26-pcqx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 110 | GHSA-3p68-rc4w-qgx5 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 115 | GHSA-v2v4-37r5-5v8g | medium | npm | `ip-address` | transitive / development | `9.0.5` | `10.1.1` | WPS | `ip-address@9.0.5 ← socks@2.8.3 ← socks-proxy-agent@8.0.4 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 119 | GHSA-3w6x-2g7m-8v23 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 121 | GHSA-m7pr-hjqh-92cm | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 122 | GHSA-445q-vr5w-6q77 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 129 | GHSA-xx6v-rp6x-q39c | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 131 | GHSA-79cf-xcqc-c78w | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.4` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 134 | GHSA-qj8w-gfj5-8c6v | medium | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.5` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBPACK + WPS paths remain; child branch documents upstream WPS residual | -| 138 | GHSA-w9j2-pvgh-6h63 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 147 | GHSA-898c-q2cr-xwhg | medium | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 151 | GHSA-6v5v-wf23-fmfq | medium | npm | `markdown-it` | transitive / development | `12.3.2` | `14.2.0` | WPS | `markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 152 | GHSA-v6wh-96g9-6wx3 | medium | npm | `launch-editor` | transitive / development | `2.9.1` | `2.14.1` | WPS | `launch-editor@2.9.1 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 154 | GHSA-mx8g-39q3-5c79 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.5` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 160 | GHSA-64mm-vxmg-q3vj | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.10` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 162 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `js-yaml@3.15.0`; vulnerable version absent globally on the child branch | -| 163 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.2.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally on the child branch | -| 169 | GHSA-f5vj-f2hx-8m93 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 170 | GHSA-m28w-2pqf-7qgj | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 179 | GHSA-mmx7-hfxf-jppx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 180 | GHSA-7q8q-rj6j-mhjq | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | +| 36 | GHSA-4www-5p9h-95mh | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.8` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 38 | GHSA-4v9v-hfq4-rm2v | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 39 | GHSA-9jgg-88mc-972h | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 51 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.14.2` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `js-yaml@3.15.0`; vulnerable version absent globally in the integration branch | +| 52 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.1.1` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally in the integration branch | +| 53 | GHSA-65ch-62r8-g69g | medium | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally in the integration branch | +| 62 | GHSA-xxjr-mmjv-4gpg | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.17.23` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; integration branch documents upstream WPS residual | +| 101 | GHSA-3v7f-55p6-f55p | medium | npm | `picomatch` | transitive / development | `2.3.1` | `2.3.2` | ESLINT-RESOLVER + WEBPACK + WPS | `picomatch@2.3.1 ← micromatch@4.0.8 ← ts-loader@9.5.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBPACK + WPS paths remain; integration branch documents upstream WPS residual | +| 102 | GHSA-f23m-r3pf-42rh | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; integration branch documents upstream WPS residual | +| 108 | GHSA-r4q5-vmmm-2653 | medium | npm | `follow-redirects` | transitive / development | `1.15.9` | `1.16.0` | WPS | `follow-redirects@1.15.9 ← axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 109 | GHSA-fvcv-3m26-pcqx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 110 | GHSA-3p68-rc4w-qgx5 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 115 | GHSA-v2v4-37r5-5v8g | medium | npm | `ip-address` | transitive / development | `9.0.5` | `10.1.1` | WPS | `ip-address@9.0.5 ← socks@2.8.3 ← socks-proxy-agent@8.0.4 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 119 | GHSA-3w6x-2g7m-8v23 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 121 | GHSA-m7pr-hjqh-92cm | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 122 | GHSA-445q-vr5w-6q77 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 129 | GHSA-xx6v-rp6x-q39c | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 131 | GHSA-79cf-xcqc-c78w | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.4` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 134 | GHSA-qj8w-gfj5-8c6v | medium | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.5` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBPACK + WPS paths remain; integration branch documents upstream WPS residual | +| 138 | GHSA-w9j2-pvgh-6h63 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 147 | GHSA-898c-q2cr-xwhg | medium | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 151 | GHSA-6v5v-wf23-fmfq | medium | npm | `markdown-it` | transitive / development | `12.3.2` | `14.2.0` | WPS | `markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 152 | GHSA-v6wh-96g9-6wx3 | medium | npm | `launch-editor` | transitive / development | `2.9.1` | `2.14.1` | WPS | `launch-editor@2.9.1 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 154 | GHSA-mx8g-39q3-5c79 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.5` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 160 | GHSA-64mm-vxmg-q3vj | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.10` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 162 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `3.14.1` | `3.15.0` | WPS | `js-yaml@3.14.1 ← @istanbuljs/load-nyc-config@1.1.0 ← babel-plugin-istanbul@6.1.1 ← babel-jest@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `js-yaml@3.15.0`; vulnerable version absent globally in the integration branch | +| 163 | GHSA-h67p-54hq-rp68 | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.2.0` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally in the integration branch | +| 169 | GHSA-f5vj-f2hx-8m93 | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 170 | GHSA-m28w-2pqf-7qgj | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 179 | GHSA-mmx7-hfxf-jppx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 180 | GHSA-7q8q-rj6j-mhjq | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL + WEBEXT + WPS | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL + WEBEXT + WPS | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL + WEBEXT + WPS | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL + WEBEXT + WPS | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 64 | GHSA-73rr-hh4g-fpgx | low | npm | `diff` | transitive / runtime | `4.0.2` | `4.0.4` | BLK | `diff@4.0.2 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | unassigned | baseline open | +| 64 | GHSA-73rr-hh4g-fpgx | low | npm | `diff` | transitive / runtime | `4.0.2` | `4.0.4` | BLK | `diff@4.0.2 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | `agent/maintenance-005-wordpress-blocks` | validated locally; vulnerable version absent globally | | 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | published PGL path removed by PR #201 but its bundled source remains upstream-blocked; WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 41 | GHSA-76c9-3jph-rj3q | low | npm | `on-headers` | transitive / development | `1.0.2` | `1.1.0` | WPS | `on-headers@1.0.2 ← compression@1.7.4 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 43 | GHSA-52f5-9888-hmc6 | low | npm | `tmp` | transitive / development | `0.2.3` | `0.2.4` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` selects patched `tmp@0.2.7`; vulnerable version absent globally on the child branch | +| 41 | GHSA-76c9-3jph-rj3q | low | npm | `on-headers` | transitive / development | `1.0.2` | `1.1.0` | WPS | `on-headers@1.0.2 ← compression@1.7.4 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 43 | GHSA-52f5-9888-hmc6 | low | npm | `tmp` | transitive / development | `0.2.3` | `0.2.4` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` selects patched `tmp@0.2.7`; vulnerable version absent globally in the integration branch | | 65 | GHSA-38r7-794h-5758 | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.0` | WEBPACK | `webpack@5.96.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | shared root webpack resolved to `5.109.0` to satisfy `@wordpress/scripts@30.7.0` requirement `^5.97.0`; vulnerable version absent globally; validated locally | | 66 | GHSA-8fgc-7cc6-rx7x | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.1` | WEBPACK | `webpack@5.96.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | shared root webpack resolved to `5.109.0` to satisfy `@wordpress/scripts@30.7.0` requirement `^5.97.0`; vulnerable version absent globally; validated locally | -| 118 | GHSA-xhjh-pmcv-23jw | low | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated locally on child branch; vulnerable version absent globally | -| 133 | GHSA-vpq2-c234-7xj6 | low | npm | `@tootallnate/once` | transitive / development | `2.0.0` | `2.0.1` | WPS | `@tootallnate/once@2.0.0 ← http-proxy-agent@5.0.0 ← jsdom@20.0.3 ← jest-environment-jsdom@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; child branch documents upstream WPS residual | -| 159 | GHSA-4x5r-pxfx-6jf8 | low | npm | `@babel/core` | transitive / development | `7.25.7` | `7.29.6` | BABEL + WPS | `@babel/core@7.25.7 ← @babel/preset-env@7.26.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable BABEL + WPS paths remain; child branch documents upstream WPS residual | +| 118 | GHSA-xhjh-pmcv-23jw | low | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | +| 133 | GHSA-vpq2-c234-7xj6 | low | npm | `@tootallnate/once` | transitive / development | `2.0.0` | `2.0.1` | WPS | `@tootallnate/once@2.0.0 ← http-proxy-agent@5.0.0 ← jsdom@20.0.3 ← jest-environment-jsdom@29.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | +| 159 | GHSA-4x5r-pxfx-6jf8 | low | npm | `@babel/core` | transitive / development | `7.25.7` | `7.29.6` | BABEL + WPS | `@babel/core@7.25.7 ← @babel/preset-env@7.26.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable BABEL + WPS paths remain; integration branch documents upstream WPS residual | ### Stale Branch Baseline Inventory @@ -311,7 +311,7 @@ No remote branch was deleted during baseline capture. Any later eligible deletio ### Child Execution Record: `agent/maintenance-002-playground-client` -Status: validated locally; child pull request [#201](https://github.com/WordPress/try-wordpress/pull/201) is open against the integration branch. +Status: validated and merged into the integration branch by child pull request [#201](https://github.com/WordPress/try-wordpress/pull/201). - Direct dependency change: `@wp-playground/client` moves from declared range `^1.0.13` and locked version `1.0.13` to declared range `^3.1.38` and locked version `3.1.38`. - Target alerts: 44, 3, 11, 13, 23, 56, 99, 153, 29, 30, 31, 32, 57, 72, 132, 15, 16, 17, 18, 68, and 171. @@ -327,7 +327,7 @@ Status: validated locally; child pull request [#201](https://github.com/WordPres ### Child Execution Record: [#202](https://github.com/WordPress/try-wordpress/pull/202) -Status: validated locally; child pull request [#202](https://github.com/WordPress/try-wordpress/pull/202) is open against the integration branch. +Status: validated and merged into the integration branch by child pull request [#202](https://github.com/WordPress/try-wordpress/pull/202). - Direct dependency change: `@wordpress/scripts` moves from declared range `^30.4.0` and locked version `30.4.0` to declared range `^30.7.0` and locked version `30.7.0`; no other declared direct dependency changes. Root `package.json` continues to declare webpack `^5.96.1`, while the shared deduped `package-lock.json` resolution moves webpack from `5.96.1` to `5.109.0` because `@wordpress/scripts@30.7.0` requires webpack `^5.97.0`. - Semantic lock scope: the lockfile contains 78 installed version changes, 43 package paths added, and 44 package paths removed; only the declared direct dependency `@wordpress/scripts` changes. @@ -343,7 +343,7 @@ Status: validated locally; child pull request [#202](https://github.com/WordPres ### Child Execution Record: [#203](https://github.com/WordPress/try-wordpress/pull/203) -Status: validated locally; child pull request [#203](https://github.com/WordPress/try-wordpress/pull/203) is open against the integration branch. +Status: validated and merged into the integration branch by child pull request [#203](https://github.com/WordPress/try-wordpress/pull/203). - Direct dependency change: `web-ext` moves from declared range `^8.3.0` and locked version `8.3.0` to declared range `^10.4.0` and locked version `10.4.0`; no other declared direct dependency changes and no application, manifest, configuration, or npm-script changes. - Stable-release boundary evidence: registry manifests and clean isolated locks were examined for all nineteen stable releases newer than `8.3.0` through current `10.5.0`: `8.4.0`, `8.5.0`, `8.6.0`, `8.7.0`, `8.7.1`, `8.8.0`, `8.9.0`, `8.10.0`, `9.0.0`, `9.1.0`, `9.2.0`, `9.3.0`, `9.4.0`, `10.0.0`, `10.1.0`, `10.2.0`, `10.3.0`, `10.4.0`, and `10.5.0`. Every release through `10.3.0` pins `fx-runner@1.4.0` and affected `shell-quote@1.7.3`; `10.4.0` is the first stable release using `fx-runner@1.5.0` and critical-alert-patched `shell-quote@1.8.4`, so it is the minimum critical-remediation boundary. @@ -357,3 +357,22 @@ Status: validated locally; child pull request [#203](https://github.com/WordPres - Audit delta: npm audit unique GHSAs decrease from 90 to 67 with twenty-three removed and zero added, while direct vulnerable root package names decrease from 45 to 39. Registry effect-package propagation changes from 102 packages (11 low, 48 moderate, 40 high, and 3 critical) to 138 packages (10 low, 40 moderate, 88 high, and zero critical). `addons-linter@10.7.0` necessarily adds affected paths for the already-present current npm-audit advisory `GHSA-mh99-v99m-4gvg` at `node_modules/@eslint/config-array/node_modules/brace-expansion@1.1.16` and `node_modules/addons-linter/node_modules/brace-expansion@1.1.16` through their matching `minimatch@3.1.5` paths; root `brace-expansion` changes from `2.0.1` to `2.1.2` and remains affected by that newer advisory. These are paths for an already-present current npm-audit advisory outside the 124-row baseline, not new baseline alerts, and the final audit introduces zero new unique GHSA. - Compatibility and validation: no compatibility change is required by the web-ext CLI or existing `web-ext-config.mjs` and npm command syntax. Node `v24.18.0` with npm `11.16.0` completed a clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds; builds retained only the pre-existing Playground dynamic-request and asset-size warnings. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` exercises web-ext `10.4.0` and exits 1 with the same semantic missing add-on ID and icon errors (`ADDON_ID_REQUIRED` replaces the old linter code name `EXTENSION_ID_REQUIRED`, plus `MANIFEST_ICON_NOT_FOUND`), the allowed `UNSUPPORTED_API` warning, and a new non-error `MISSING_DATA_COLLECTION_PERMISSIONS` warning from addons-linter 10; this child does not modify manifests. Final audit, version-qualified `npm explain` path assertions for every assigned package, installed-version checks, approved-plan-prefix comparison, `git diff --check`, and status inspection pass, subject only to the documented nonzero audit and manifest-lint residuals. - Manifest follow-up gate: `MISSING_DATA_COLLECTION_PERMISSIONS` is assigned to the later manifest-validation child. That child must review actual extension data flows, including the `pg.ashfame.com` remote iframe, and add a truthful `browser_specific_settings.gecko.data_collection_permissions.required` declaration; it may use `["none"]` only if the review proves that no data-collection category applies, otherwise it must list the actual categories. The Firefox manifest lint gate must confirm that this warning is gone. + +### Child Execution Record: `agent/maintenance-005-wordpress-blocks` + +Status: validated locally; child branch is ready for a pull request against the integration branch. + +- Direct dependency changes: `@wordpress/block-library` moves from declared range `^9.12.0` and locked version `9.12.0` to declared range `^9.27.0` and locked version `9.27.0`; `@wordpress/blocks` moves from declared range `^13.10.0` and locked version `13.10.0` to declared range `^15.22.0` and locked version `15.22.0`. No other direct dependency changes, overrides, direct transitive additions, historical release-train pins, or unrelated upgrades are present. +- Target alerts: 153, 192, 195, 24, 92, 113, 132, 135, 186, 190, and 64. +- Minimum genuine-remediation evidence: registry manifests for every stable `@wordpress/blocks` release from `13.10.0` through current `15.24.0` show `showdown@^1.9.1` through `15.21.1`; `15.22.0` is the first stable release that removes Showdown and replaces it with `marked@^18.0.3`. Registry manifests for every stable `@wordpress/block-library` release from `9.12.0` through current `10.2.0` show that `9.27.0` is the first release declaring a compatible Blocks-major-15 family through `@wordpress/blocks@^15.0.0`, `@wordpress/block-editor@^15.0.0`, and `@wordpress/core-data@^7.27.0`, making `9.27.0` plus root Blocks `15.22.0` the minimum ordinary-lock pair that removes every Showdown path. +- Rejected narrower candidate: retaining `@wordpress/block-library@9.12.0` while moving only root Blocks to `15.22.0` does not genuinely remove Showdown. Although the library's wildcard Blocks edge accepts root `15.22.0`, retained block-editor, core-data, patterns, reusable-blocks, and server-side-render paths install nested `@wordpress/blocks@13.10.0` and preserve `showdown@1.9.1`; that candidate audits at 126 effects (10 low, 28 moderate, and 88 high). +- Isolated boundary confirmation: clean isolated locks for matching predecessor `@wordpress/block-library@9.48.1` plus `@wordpress/blocks@15.21.1` contain `showdown@1.9.1` and audit with two moderate effects, while matching first-fix `10.0.0` plus `15.22.0` and current `10.2.0` plus `15.24.0` contain no Showdown and audit clean. Project-level testing then established the earlier compatible `9.27.0` library boundary as sufficient without taking the unrelated later library releases. +- Semantic lock scope: the ordinary clean lock has 143 installed version changes, 221 package paths added, and 66 removed. The broad package-path delta is the causal WordPress dependency graph selected by the two direct roots plus compatible shared deduplication; no previously resolved baseline alert is reintroduced and no new unique npm-audit GHSA appears. +- Globally resolved target rows: 192, 195, and 190 select patched `postcss@8.5.23`; 24 selects patched `nanoid@3.3.16`; 64 selects patched `diff@8.0.4`; and 113 has no installed Showdown package. These six rows have no installed version in their GitHub vulnerable range. +- Partially remediated shared rows: 153 and 132 lose their BLK paths; prior PRs already removed PGL and WEBEXT paths, but WPS retains affected `ws@8.13.0` and `ws@8.18.0`, so both rows remain open for that family. +- Residual target rows: 92 loses its BLK path but retains `yaml@1.10.2` through WPS and `@types/wordpress__blocks`; 135 patches root Blocks with `uuid@14.0.1` but retains affected UUID through block-library, WPS, and `@types/wordpress__blocks`; 186 patches root Blocks but retains `@babel/runtime@7.25.7` through `@wordpress/block-library@9.27.0`. +- Full-row and audit recalculation: range-aware comparison of all 124 baseline rows against the final lock finds exactly the six global transitions above and zero affected-version reintroductions; the other 118 rows retain their prior status except the documented path changes for 153, 132, 92, 135, and 186. `npm audit` effect propagation decreases from 138 packages (10 low, 40 moderate, and 88 high) to 113 (9 low, 17 moderate, and 87 high); unique GHSAs decrease from 67 to 61 and npm advisory source IDs from 72 to 66, with six removed and zero added. A fresh read-only GitHub query still returns exactly 124 default-branch alerts because Dependabot evaluates the unmerged default branch. +- Source compatibility: upgraded Blocks types expose `pasteHandler` as `string | Block[]` even for `mode: "BLOCKS"`, so `htmlToBlocks` now returns an unexpected string directly or serializes the block array. This one-line guard is the only application source change. +- Webpack compatibility: current compatible `@wordpress/sync@1.51.0` publishes extensionless `fast-deep-equal/es6` imports from strict `.mjs` modules, so the shared resolver uses an exact `fast-deep-equal/es6$` alias to Node-resolved `es6/index.js`. The app compilation alone adds a targeted `splitChunks` Vips cache group named `main`; it folds the otherwise 12.9 MiB generated `332.app.js` Vips worker into the already ignored `app.js` while preserving unrelated asynchronous chunks and without globally limiting chunks. +- Build result and risk: Firefox and Chrome production builds emit `app.js` at 21.2 MiB, `498.app.js` at 2.23 MiB, `300.app.js` at 411 KiB, and `717.app.js` at 7.23 KiB; `332.app.js` is absent. The significantly larger startup bundle may increase extension startup, JavaScript parse, and memory costs, so manual unpacked-browser testing must verify sidebar/side-panel startup, representative content import and preview, session persistence, logs, and comparative startup/runtime performance before the integration PR is marked ready. +- Validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` ignores only `app.js`, reports no `FILE_TOO_LARGE`, and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the two known warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`; final npm-audit, exact version/path assertions, approved-plan-prefix comparison, Markdown wrapping, `git diff --check`, and status inspection pass subject only to the documented remaining alert families and known manifest workstream. diff --git a/src/parser/util.ts b/src/parser/util.ts index fa089800..73eb5b91 100644 --- a/src/parser/util.ts +++ b/src/parser/util.ts @@ -5,7 +5,7 @@ export function htmlToBlocks( html: string ): string { mode: 'BLOCKS', HTML: html, } ); - return serialize( blocks ); + return typeof blocks === 'string' ? blocks : serialize( blocks ); } export function findDeepestChild( html: string ): Element | undefined { diff --git a/webpack.config.cjs b/webpack.config.cjs index d69d5a9c..d4564d5b 100644 --- a/webpack.config.cjs +++ b/webpack.config.cjs @@ -52,6 +52,11 @@ function extensionModules( mode, target ) { const devtool = mode === 'production' ? false : 'cheap-module-source-map'; const resolve = { + alias: { + 'fast-deep-equal/es6$': require.resolve( + 'fast-deep-equal/es6' + ), + }, extensions: [ '.ts', '.tsx', '.js' ], plugins: [ new TsconfigPathsPlugin() ], }; @@ -149,6 +154,18 @@ function extensionModules( mode, target ) { path: targetPath, filename: path.join( 'app.js' ), }, + optimization: { + splitChunks: { + cacheGroups: { + vips: { + test: /[\\/]node_modules[\\/]@wordpress[\\/]vips[\\/]/, + chunks: 'all', + name: 'main', + enforce: true, + }, + }, + }, + }, plugins: [ new EmitSubjectsSchemaPlugin(), new CopyPlugin( { From fad0e3329c9fccffa88961abfd74445504a302ac Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 03:30:59 +0400 Subject: [PATCH 11/40] Record WordPress Blocks child pull request --- plan.md | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/plan.md b/plan.md index ebaaab9a..ecf40e71 100644 --- a/plan.md +++ b/plan.md @@ -162,9 +162,9 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | | 58 | GHSA-2w69-qvjg-hvjx | high | npm | `@remix-run/router` | transitive / runtime | `1.21.0` | `1.23.2` | ROUTER | `@remix-run/router@1.21.0 ← react-router-dom@6.28.0` | unassigned | baseline open | | 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + `agent/maintenance-005-wordpress-blocks` | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | -| 192 | GHSA-6g55-p6wh-862q | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.12` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | `agent/maintenance-005-wordpress-blocks` | validated locally; vulnerable version absent globally | -| 195 | GHSA-r28c-9q8g-f849 | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.18` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | `agent/maintenance-005-wordpress-blocks` | validated locally; vulnerable version absent globally | +| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + [#204](https://github.com/WordPress/try-wordpress/pull/204) | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | +| 192 | GHSA-6g55-p6wh-862q | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.12` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | +| 195 | GHSA-r28c-9q8g-f849 | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.18` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | | 6 | GHSA-3h5v-q93c-6h6q | high | npm | `ws` | transitive / development | `8.13.0` | `8.17.1` | WPS | `ws@8.13.0 ← puppeteer-core@20.9.0 ← lighthouse@10.4.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 33 | GHSA-pq67-2wwv-3xjx | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.7` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 37 | GHSA-8cj5-5rvv-wf4v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.0.9` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | @@ -212,7 +212,7 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 184 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `1.1.11` | `1.1.16` | ESLINT-RESOLVER + WEBEXT + WPS | `brace-expansion@1.1.11 ← minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `brace-expansion@1.1.16`; vulnerable major-1 version absent globally in the integration branch | | 187 | GHSA-jr5f-v2jv-69x6 | high | npm | `axios` | transitive / development | `1.7.7` | `1.8.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 191 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `2.0.1` | `2.1.2` | WEBPACK + WPS | `brace-expansion@2.0.1 ← minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `brace-expansion@2.1.2`; vulnerable version absent globally in the integration branch | -| 24 | GHSA-mwcw-c2x4-8c55 | medium | npm | `nanoid` | transitive / runtime | `3.3.7` | `3.3.8` | BLK | `nanoid@3.3.7 ← postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | `agent/maintenance-005-wordpress-blocks` | validated locally; vulnerable version absent globally | +| 24 | GHSA-mwcw-c2x4-8c55 | medium | npm | `nanoid` | transitive / runtime | `3.3.7` | `3.3.8` | BLK | `nanoid@3.3.7 ← postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | | 29 | GHSA-x4c5-c7rf-jjgv | medium | npm | `@octokit/endpoint` | transitive / runtime | `9.0.5` | `9.0.6` | PGL | `@octokit/endpoint@9.0.5 ← @octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | | 30 | GHSA-xx4v-prfh-6cgc | medium | npm | `@octokit/request-error` | transitive / runtime | `5.1.0` | `5.1.1` | PGL | `@octokit/request-error@5.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | | 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | @@ -220,13 +220,13 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | | 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` requires a compatible shared Ajv that resolves to patched `8.20.0`; vulnerable major-8 version absent globally in the integration branch | -| 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | `agent/maintenance-005-wordpress-blocks` | BLK path removed; affected WPS and `@types/wordpress__blocks` paths remain | -| 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | `agent/maintenance-005-wordpress-blocks` | validated locally; vulnerable Showdown dependency absent globally | -| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + `agent/maintenance-005-wordpress-blocks` | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | -| 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | `agent/maintenance-005-wordpress-blocks` | root Blocks path patched, but affected block-library, WPS, and `@types/wordpress__blocks` paths remain | +| 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | BLK path removed; affected WPS and `@types/wordpress__blocks` paths remain | +| 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable Showdown dependency absent globally | +| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + [#204](https://github.com/WordPress/try-wordpress/pull/204) | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | +| 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | root Blocks path patched, but affected block-library, WPS, and `@types/wordpress__blocks` paths remain | | 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | `agent/maintenance-005-wordpress-blocks` | root Blocks path patched, but affected `@wordpress/block-library@9.27.0` path remains | -| 190 | GHSA-qx2v-qp2m-jg93 | medium | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.10` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | `agent/maintenance-005-wordpress-blocks` | validated locally; vulnerable version absent globally | +| 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | root Blocks path patched, but affected `@wordpress/block-library@9.27.0` path remains | +| 190 | GHSA-qx2v-qp2m-jg93 | medium | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.10` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | | 193 | GHSA-337j-9hxr-rhxg | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | | 194 | GHSA-wrjc-x8rr-h8h6 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | | 36 | GHSA-4www-5p9h-95mh | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.8` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | @@ -264,7 +264,7 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL + WEBEXT + WPS | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL + WEBEXT + WPS | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL + WEBEXT + WPS | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 64 | GHSA-73rr-hh4g-fpgx | low | npm | `diff` | transitive / runtime | `4.0.2` | `4.0.4` | BLK | `diff@4.0.2 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | `agent/maintenance-005-wordpress-blocks` | validated locally; vulnerable version absent globally | +| 64 | GHSA-73rr-hh4g-fpgx | low | npm | `diff` | transitive / runtime | `4.0.2` | `4.0.4` | BLK | `diff@4.0.2 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | | 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | published PGL path removed by PR #201 but its bundled source remains upstream-blocked; WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 41 | GHSA-76c9-3jph-rj3q | low | npm | `on-headers` | transitive / development | `1.0.2` | `1.1.0` | WPS | `on-headers@1.0.2 ← compression@1.7.4 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | @@ -358,9 +358,9 @@ Status: validated and merged into the integration branch by child pull request [ - Compatibility and validation: no compatibility change is required by the web-ext CLI or existing `web-ext-config.mjs` and npm command syntax. Node `v24.18.0` with npm `11.16.0` completed a clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds; builds retained only the pre-existing Playground dynamic-request and asset-size warnings. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` exercises web-ext `10.4.0` and exits 1 with the same semantic missing add-on ID and icon errors (`ADDON_ID_REQUIRED` replaces the old linter code name `EXTENSION_ID_REQUIRED`, plus `MANIFEST_ICON_NOT_FOUND`), the allowed `UNSUPPORTED_API` warning, and a new non-error `MISSING_DATA_COLLECTION_PERMISSIONS` warning from addons-linter 10; this child does not modify manifests. Final audit, version-qualified `npm explain` path assertions for every assigned package, installed-version checks, approved-plan-prefix comparison, `git diff --check`, and status inspection pass, subject only to the documented nonzero audit and manifest-lint residuals. - Manifest follow-up gate: `MISSING_DATA_COLLECTION_PERMISSIONS` is assigned to the later manifest-validation child. That child must review actual extension data flows, including the `pg.ashfame.com` remote iframe, and add a truthful `browser_specific_settings.gecko.data_collection_permissions.required` declaration; it may use `["none"]` only if the review proves that no data-collection category applies, otherwise it must list the actual categories. The Firefox manifest lint gate must confirm that this warning is gone. -### Child Execution Record: `agent/maintenance-005-wordpress-blocks` +### Child Execution Record: [#204](https://github.com/WordPress/try-wordpress/pull/204) -Status: validated locally; child branch is ready for a pull request against the integration branch. +Status: validated locally; child pull request [#204](https://github.com/WordPress/try-wordpress/pull/204) is open against the integration branch. - Direct dependency changes: `@wordpress/block-library` moves from declared range `^9.12.0` and locked version `9.12.0` to declared range `^9.27.0` and locked version `9.27.0`; `@wordpress/blocks` moves from declared range `^13.10.0` and locked version `13.10.0` to declared range `^15.22.0` and locked version `15.22.0`. No other direct dependency changes, overrides, direct transitive additions, historical release-train pins, or unrelated upgrades are present. - Target alerts: 153, 192, 195, 24, 92, 113, 132, 135, 186, 190, and 64. From 7fe1cb4ee387e67ff2e9099f7262b05ebebe50f5 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 03:58:37 +0400 Subject: [PATCH 12/40] Document React Router remediation blocker --- plan.md | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/plan.md b/plan.md index ecf40e71..fa2577c6 100644 --- a/plan.md +++ b/plan.md @@ -160,7 +160,7 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | -| 58 | GHSA-2w69-qvjg-hvjx | high | npm | `@remix-run/router` | transitive / runtime | `1.21.0` | `1.23.2` | ROUTER | `@remix-run/router@1.21.0 ← react-router-dom@6.28.0` | unassigned | baseline open | +| 58 | GHSA-2w69-qvjg-hvjx | high | npm | `@remix-run/router` | transitive / runtime | `1.21.0` | `1.23.2` | ROUTER | `@remix-run/router@1.21.0 ← react-router-dom@6.28.0` | `agent/maintenance-006-react-router` | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | | 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + [#204](https://github.com/WordPress/try-wordpress/pull/204) | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | | 192 | GHSA-6g55-p6wh-862q | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.12` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | @@ -218,17 +218,17 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | | 32 | GHSA-rmvr-2pp2-xj38 | medium | npm | `@octokit/request` | transitive / runtime | `8.4.0` | `8.4.1` | PGL | `@octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | | 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | +| 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | `agent/maintenance-006-react-router` | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | | 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` requires a compatible shared Ajv that resolves to patched `8.20.0`; vulnerable major-8 version absent globally in the integration branch | | 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | BLK path removed; affected WPS and `@types/wordpress__blocks` paths remain | | 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable Showdown dependency absent globally | | 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + [#204](https://github.com/WordPress/try-wordpress/pull/204) | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | | 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | root Blocks path patched, but affected block-library, WPS, and `@types/wordpress__blocks` paths remain | -| 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | +| 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | `agent/maintenance-006-react-router` | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | | 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | root Blocks path patched, but affected `@wordpress/block-library@9.27.0` path remains | | 190 | GHSA-qx2v-qp2m-jg93 | medium | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.10` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | -| 193 | GHSA-337j-9hxr-rhxg | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | -| 194 | GHSA-wrjc-x8rr-h8h6 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | unassigned | baseline open | +| 193 | GHSA-337j-9hxr-rhxg | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | `agent/maintenance-006-react-router` | blocked; `react-router-dom@7.18.x` removes this row but adds a current applicable high-severity advisory | +| 194 | GHSA-wrjc-x8rr-h8h6 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | `agent/maintenance-006-react-router` | blocked; `react-router-dom@7.18.x` removes this row but adds a current applicable high-severity advisory | | 36 | GHSA-4www-5p9h-95mh | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.8` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 38 | GHSA-4v9v-hfq4-rm2v | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 39 | GHSA-9jgg-88mc-972h | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | @@ -376,3 +376,17 @@ Status: validated locally; child pull request [#204](https://github.com/WordPres - Webpack compatibility: current compatible `@wordpress/sync@1.51.0` publishes extensionless `fast-deep-equal/es6` imports from strict `.mjs` modules, so the shared resolver uses an exact `fast-deep-equal/es6$` alias to Node-resolved `es6/index.js`. The app compilation alone adds a targeted `splitChunks` Vips cache group named `main`; it folds the otherwise 12.9 MiB generated `332.app.js` Vips worker into the already ignored `app.js` while preserving unrelated asynchronous chunks and without globally limiting chunks. - Build result and risk: Firefox and Chrome production builds emit `app.js` at 21.2 MiB, `498.app.js` at 2.23 MiB, `300.app.js` at 411 KiB, and `717.app.js` at 7.23 KiB; `332.app.js` is absent. The significantly larger startup bundle may increase extension startup, JavaScript parse, and memory costs, so manual unpacked-browser testing must verify sidebar/side-panel startup, representative content import and preview, session persistence, logs, and comparative startup/runtime performance before the integration PR is marked ready. - Validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` ignores only `app.js`, reports no `FILE_TOO_LARGE`, and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the two known warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`; final npm-audit, exact version/path assertions, approved-plan-prefix comparison, Markdown wrapping, `git diff --check`, and status inspection pass subject only to the documented remaining alert families and known manifest workstream. + +### Child Execution Record: `agent/maintenance-006-react-router` + +Status: blocked after complete candidate analysis; this documentation-only child retains the integration branch dependency and source state. + +- Retained dependency state: `react-router-dom` remains at declared range `^6.28.0` and locked version `6.28.0`, with `react-router@6.28.0` and `@remix-run/router@1.21.0`; no package, lockfile, application source, configuration, or generated-build change is retained. +- Assigned baseline alerts: 58, 59, 139, 193, and 194 remain open because no published stable `react-router-dom` release both removes an assigned alert and avoids introducing a previously absent current npm advisory. +- Complete stable-release review: registry manifests were compared for all 57 stable `react-router-dom` releases newer than `6.28.0` through current `7.18.1`: `6.28.1`, `6.28.2`, `6.29.0`, `6.30.0`, `6.30.1`, `6.30.2`, `6.30.3`, `6.30.4`, `7.0.0`, `7.0.1`, `7.0.2`, `7.1.0`, `7.1.1`, `7.1.2`, `7.1.3`, `7.1.4`, `7.1.5`, `7.2.0`, `7.3.0`, `7.4.0`, `7.4.1`, `7.5.0`, `7.5.1`, `7.5.2`, `7.5.3`, `7.6.0`, `7.6.1`, `7.6.2`, `7.6.3`, `7.7.0`, `7.7.1`, `7.8.0`, `7.8.1`, `7.8.2`, `7.9.0`, `7.9.1`, `7.9.2`, `7.9.3`, `7.9.4`, `7.9.5`, `7.9.6`, `7.10.0`, `7.10.1`, `7.11.0`, `7.12.0`, `7.13.0`, `7.13.1`, `7.13.2`, `7.14.0`, `7.14.1`, `7.14.2`, `7.15.0`, `7.15.1`, `7.16.0`, `7.17.0`, `7.18.0`, and `7.18.1`. Every version pins the matching `react-router` version; every 6.x candidate also declares `@remix-run/router`, while every 7.x candidate removes that package and requires Node `>=20.0.0` plus React and ReactDOM `>=18`. +- Safe-6.x progression: clean isolated locks show `6.28.1` through `6.30.1` retain all five assigned GHSAs. `6.30.2` first removes alert 59 but introduces previously absent current advisory `GHSA-jjmj-jmhj-qwj2`; `6.30.3` first removes alerts 58 and 59 but introduces the same advisory and retains 139, 193, and 194; `6.30.4` first removes 58, 59, and 139 but still introduces `GHSA-jjmj-jmhj-qwj2` because that advisory affects `react-router-dom` `>=6.30.2 <=6.30.4`. Therefore there is no maximum-safe 6.x partial remediation. +- 7.x boundary: isolated locks at `7.0.0`, `7.11.0`, and `7.17.0` retain assigned alerts and introduce other current advisories. `7.18.0` is the first release that removes all five assigned alerts, but both it and current `7.18.1` introduce previously absent high-severity `GHSA-qwww-vcr4-c8h2`, which affects `react-router >=7.12.0 <8.3.0`; taking either candidate would violate the no-new-applicable-advisory rule. +- Broad-migration boundary: patched `react-router@8.3.0` is published, but no `react-router-dom` 8.x release exists. Replacing the direct DOM package with `react-router`, migrating imports, and taking the patched line would also require React and ReactDOM `>=19.2.7` instead of the repository's current `18.3.1`; that is a broad application and package migration, so this causal group is paused rather than silently expanding scope. +- Audit and alert recalculation: because the dependency graph is intentionally retained, npm audit remains 113 effect packages (9 low, 17 moderate, 87 high, and zero critical), 61 unique GHSAs, and the same affected package paths as integration commit `dbb4421370d2e0acf04a6f7d8c2f984d56998d91`; the read-only GitHub Dependabot API still reports exactly 124 open default-branch alerts. The five assigned lockfile paths remain `@remix-run/router@1.21.0`, `react-router@6.28.0`, and `react-router-dom@6.28.0` as recorded in the baseline table. +- Compatibility and manual risk: no compatibility change or new manual risk is introduced because no dependency or source change is retained. The existing Blocks build shape remains unchanged, including the approximately 21.2 MiB `app.js` and preserved `498.app.js`, `300.app.js`, and `717.app.js` chunks. +- Retained-state validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. Both builds retain only the known Playground dynamic-request and asset-size warnings and emit the documented Blocks bundle shape. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` ignores only `app.js`, reports no `FILE_TOO_LARGE`, and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the two known warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`. Final npm audit, `npm ls`, version-qualified `npm explain`, approved-plan-prefix comparison, Markdown wrapping, `git diff --check`, and status inspection confirm the retained dependency paths and documentation-only scope, subject only to the documented remaining alerts and manifest workstream. From 729ff2abd383b8599f29f3cac07980646f1f1b20 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 03:59:08 +0400 Subject: [PATCH 13/40] Record React Router child pull request --- plan.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/plan.md b/plan.md index fa2577c6..b8cb947e 100644 --- a/plan.md +++ b/plan.md @@ -160,7 +160,7 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | -| 58 | GHSA-2w69-qvjg-hvjx | high | npm | `@remix-run/router` | transitive / runtime | `1.21.0` | `1.23.2` | ROUTER | `@remix-run/router@1.21.0 ← react-router-dom@6.28.0` | `agent/maintenance-006-react-router` | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | +| 58 | GHSA-2w69-qvjg-hvjx | high | npm | `@remix-run/router` | transitive / runtime | `1.21.0` | `1.23.2` | ROUTER | `@remix-run/router@1.21.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | | 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + [#204](https://github.com/WordPress/try-wordpress/pull/204) | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | | 192 | GHSA-6g55-p6wh-862q | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.12` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | @@ -218,17 +218,17 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | | 32 | GHSA-rmvr-2pp2-xj38 | medium | npm | `@octokit/request` | transitive / runtime | `8.4.0` | `8.4.1` | PGL | `@octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | | 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | `agent/maintenance-006-react-router` | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | +| 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | | 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` requires a compatible shared Ajv that resolves to patched `8.20.0`; vulnerable major-8 version absent globally in the integration branch | | 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | BLK path removed; affected WPS and `@types/wordpress__blocks` paths remain | | 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable Showdown dependency absent globally | | 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + [#204](https://github.com/WordPress/try-wordpress/pull/204) | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | | 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | root Blocks path patched, but affected block-library, WPS, and `@types/wordpress__blocks` paths remain | -| 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | `agent/maintenance-006-react-router` | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | +| 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | | 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | root Blocks path patched, but affected `@wordpress/block-library@9.27.0` path remains | | 190 | GHSA-qx2v-qp2m-jg93 | medium | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.10` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | -| 193 | GHSA-337j-9hxr-rhxg | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | `agent/maintenance-006-react-router` | blocked; `react-router-dom@7.18.x` removes this row but adds a current applicable high-severity advisory | -| 194 | GHSA-wrjc-x8rr-h8h6 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | `agent/maintenance-006-react-router` | blocked; `react-router-dom@7.18.x` removes this row but adds a current applicable high-severity advisory | +| 193 | GHSA-337j-9hxr-rhxg | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; `react-router-dom@7.18.x` removes this row but adds a current applicable high-severity advisory | +| 194 | GHSA-wrjc-x8rr-h8h6 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; `react-router-dom@7.18.x` removes this row but adds a current applicable high-severity advisory | | 36 | GHSA-4www-5p9h-95mh | medium | npm | `http-proxy-middleware` | transitive / development | `2.0.6` | `2.0.8` | WPS | `http-proxy-middleware@2.0.6 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 38 | GHSA-4v9v-hfq4-rm2v | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 39 | GHSA-9jgg-88mc-972h | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.1` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | @@ -377,9 +377,9 @@ Status: validated locally; child pull request [#204](https://github.com/WordPres - Build result and risk: Firefox and Chrome production builds emit `app.js` at 21.2 MiB, `498.app.js` at 2.23 MiB, `300.app.js` at 411 KiB, and `717.app.js` at 7.23 KiB; `332.app.js` is absent. The significantly larger startup bundle may increase extension startup, JavaScript parse, and memory costs, so manual unpacked-browser testing must verify sidebar/side-panel startup, representative content import and preview, session persistence, logs, and comparative startup/runtime performance before the integration PR is marked ready. - Validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` ignores only `app.js`, reports no `FILE_TOO_LARGE`, and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the two known warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`; final npm-audit, exact version/path assertions, approved-plan-prefix comparison, Markdown wrapping, `git diff --check`, and status inspection pass subject only to the documented remaining alert families and known manifest workstream. -### Child Execution Record: `agent/maintenance-006-react-router` +### Child Execution Record: [#205](https://github.com/WordPress/try-wordpress/pull/205) -Status: blocked after complete candidate analysis; this documentation-only child retains the integration branch dependency and source state. +Status: blocked after complete candidate analysis; documentation-only child pull request [#205](https://github.com/WordPress/try-wordpress/pull/205) is open against the integration branch and retains its dependency and source state. - Retained dependency state: `react-router-dom` remains at declared range `^6.28.0` and locked version `6.28.0`, with `react-router@6.28.0` and `@remix-run/router@1.21.0`; no package, lockfile, application source, configuration, or generated-build change is retained. - Assigned baseline alerts: 58, 59, 139, 193, and 194 remain open because no published stable `react-router-dom` release both removes an assigned alert and avoids introducing a previously absent current npm advisory. From 6617e4fc88bfa8987b1406126ef506d3603699b3 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 04:24:08 +0400 Subject: [PATCH 14/40] Update PHPUnit security baseline --- composer.json | 2 +- composer.lock | 114 ++++++++++++++++++++++++++++++++--------------- phpunit.xml.dist | 2 +- plan.md | 18 ++++++-- 4 files changed, 96 insertions(+), 40 deletions(-) diff --git a/composer.json b/composer.json index e33ea5d9..54ee2833 100644 --- a/composer.json +++ b/composer.json @@ -3,7 +3,7 @@ "description": "", "license": "", "require-dev": { - "phpunit/phpunit": "^9.6.21", + "phpunit/phpunit": "^9.6.33", "yoast/phpunit-polyfills": "^2.0.2", "wp-coding-standards/wpcs": "^3.1.0" }, diff --git a/composer.lock b/composer.lock index 18593bad..f3b70c94 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "b5cd52bd706ba30751f2f3affeac6b49", + "content-hash": "dbd2f770ec6b6f3fc534def94b23f95f", "packages": [], "packages-dev": [ { @@ -175,16 +175,16 @@ }, { "name": "myclabs/deep-copy", - "version": "1.12.1", + "version": "1.13.4", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "123267b2c49fbf30d78a7b2d333f6be754b94845" + "reference": "07d290f0c47959fd5eed98c95ee5602db07e0b6a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/123267b2c49fbf30d78a7b2d333f6be754b94845", - "reference": "123267b2c49fbf30d78a7b2d333f6be754b94845", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/07d290f0c47959fd5eed98c95ee5602db07e0b6a", + "reference": "07d290f0c47959fd5eed98c95ee5602db07e0b6a", "shasum": "" }, "require": { @@ -223,7 +223,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.12.1" + "source": "https://github.com/myclabs/DeepCopy/tree/1.13.4" }, "funding": [ { @@ -231,7 +231,7 @@ "type": "tidelift" } ], - "time": "2024-11-08T17:47:46+00:00" + "time": "2025-08-01T08:46:24+00:00" }, { "name": "nikic/php-parser", @@ -905,16 +905,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.21", + "version": "9.6.33", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa" + "reference": "fea06253ecc0a32faf787bd31b261f56f351d049" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", - "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/fea06253ecc0a32faf787bd31b261f56f351d049", + "reference": "fea06253ecc0a32faf787bd31b261f56f351d049", "shasum": "" }, "require": { @@ -925,7 +925,7 @@ "ext-mbstring": "*", "ext-xml": "*", "ext-xmlwriter": "*", - "myclabs/deep-copy": "^1.12.0", + "myclabs/deep-copy": "^1.13.4", "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=7.3", @@ -936,11 +936,11 @@ "phpunit/php-timer": "^5.0.3", "sebastian/cli-parser": "^1.0.2", "sebastian/code-unit": "^1.0.8", - "sebastian/comparator": "^4.0.8", + "sebastian/comparator": "^4.0.10", "sebastian/diff": "^4.0.6", "sebastian/environment": "^5.1.5", - "sebastian/exporter": "^4.0.6", - "sebastian/global-state": "^5.0.7", + "sebastian/exporter": "^4.0.8", + "sebastian/global-state": "^5.0.8", "sebastian/object-enumerator": "^4.0.4", "sebastian/resource-operations": "^3.0.4", "sebastian/type": "^3.2.1", @@ -988,7 +988,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.21" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.33" }, "funding": [ { @@ -999,12 +999,20 @@ "url": "https://github.com/sebastianbergmann", "type": "github" }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, { "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit", "type": "tidelift" } ], - "time": "2024-09-19T10:50:18+00:00" + "time": "2026-01-27T05:25:09+00:00" }, { "name": "sebastian/cli-parser", @@ -1175,16 +1183,16 @@ }, { "name": "sebastian/comparator", - "version": "4.0.8", + "version": "4.0.10", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "fa0f136dd2334583309d32b62544682ee972b51a" + "reference": "e4df00b9b3571187db2831ae9aada2c6efbd715d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a", - "reference": "fa0f136dd2334583309d32b62544682ee972b51a", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/e4df00b9b3571187db2831ae9aada2c6efbd715d", + "reference": "e4df00b9b3571187db2831ae9aada2c6efbd715d", "shasum": "" }, "require": { @@ -1237,15 +1245,27 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/comparator/issues", - "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8" + "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.10" }, "funding": [ { "url": "https://github.com/sebastianbergmann", "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/sebastian/comparator", + "type": "tidelift" } ], - "time": "2022-09-14T12:41:17+00:00" + "time": "2026-01-24T09:22:56+00:00" }, { "name": "sebastian/complexity", @@ -1435,16 +1455,16 @@ }, { "name": "sebastian/exporter", - "version": "4.0.6", + "version": "4.0.8", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72" + "reference": "14c6ba52f95a36c3d27c835d65efc7123c446e8c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/78c00df8f170e02473b682df15bfcdacc3d32d72", - "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/14c6ba52f95a36c3d27c835d65efc7123c446e8c", + "reference": "14c6ba52f95a36c3d27c835d65efc7123c446e8c", "shasum": "" }, "require": { @@ -1500,28 +1520,40 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.6" + "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.8" }, "funding": [ { "url": "https://github.com/sebastianbergmann", "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/sebastian/exporter", + "type": "tidelift" } ], - "time": "2024-03-02T06:33:00+00:00" + "time": "2025-09-24T06:03:27+00:00" }, { "name": "sebastian/global-state", - "version": "5.0.7", + "version": "5.0.8", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9" + "reference": "b6781316bdcd28260904e7cc18ec983d0d2ef4f6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9", - "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/b6781316bdcd28260904e7cc18ec983d0d2ef4f6", + "reference": "b6781316bdcd28260904e7cc18ec983d0d2ef4f6", "shasum": "" }, "require": { @@ -1564,15 +1596,27 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/global-state/issues", - "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.7" + "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.8" }, "funding": [ { "url": "https://github.com/sebastianbergmann", "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/sebastian/global-state", + "type": "tidelift" } ], - "time": "2024-03-02T06:35:11+00:00" + "time": "2025-08-10T07:10:35+00:00" }, { "name": "sebastian/lines-of-code", diff --git a/phpunit.xml.dist b/phpunit.xml.dist index d412a7c6..4efcfe40 100644 --- a/phpunit.xml.dist +++ b/phpunit.xml.dist @@ -4,7 +4,7 @@ bootstrap="tests/plugin/bootstrap.php" backupGlobals="false" colors="true" - xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/10.5/phpunit.xsd"> + xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/9.6/phpunit.xsd"> diff --git a/plan.md b/plan.md index b8cb947e..7523dac5 100644 --- a/plan.md +++ b/plan.md @@ -171,7 +171,7 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 46 | GHSA-vj76-c3g6-qr5v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.1.1` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 49 | GHSA-7mvr-c777-76hp | high | npm | `playwright` | transitive / development | `1.48.2` | `1.55.1` | WPS | `playwright@1.48.2 ← @playwright/test@1.48.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 54 | GHSA-5gfm-wpxj-wjgq | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally in the integration branch | -| 63 | GHSA-vvj3-c3rp-c85p | high | composer | `phpunit/phpunit` | unknown / development | `9.6.21` | `9.6.33` | PHPUNIT | `phpunit/phpunit@9.6.21 (direct require-dev in composer.json)` | unassigned | baseline open | +| 63 | GHSA-vvj3-c3rp-c85p | high | composer | `phpunit/phpunit` | unknown / development | `9.6.21` | `9.6.33` | PHPUNIT | `phpunit/phpunit@9.6.21 (direct require-dev in composer.json)` | `agent/maintenance-007-phpunit` | validated locally; vulnerable PHPUnit version absent and locked Composer audit clean | | 70 | GHSA-43fc-jf86-j433 | high | npm | `axios` | transitive / development | `1.7.7` | `1.13.5` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 79 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `9.0.3` | `9.0.7` | WPS | `minimatch@9.0.3 ← @typescript-eslint/typescript-estree@6.21.0 ← @typescript-eslint/parser@6.21.0 ← @wordpress/eslint-plugin@21.0.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 80 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `5.1.6` | `5.1.8` | WEBPACK | `minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `minimatch@5.1.9`; vulnerable major-5 version absent globally in the integration branch | @@ -360,7 +360,7 @@ Status: validated and merged into the integration branch by child pull request [ ### Child Execution Record: [#204](https://github.com/WordPress/try-wordpress/pull/204) -Status: validated locally; child pull request [#204](https://github.com/WordPress/try-wordpress/pull/204) is open against the integration branch. +Status: validated and merged into the integration branch at merge commit `dbb4421370d2e0acf04a6f7d8c2f984d56998d91` by child pull request [#204](https://github.com/WordPress/try-wordpress/pull/204). - Direct dependency changes: `@wordpress/block-library` moves from declared range `^9.12.0` and locked version `9.12.0` to declared range `^9.27.0` and locked version `9.27.0`; `@wordpress/blocks` moves from declared range `^13.10.0` and locked version `13.10.0` to declared range `^15.22.0` and locked version `15.22.0`. No other direct dependency changes, overrides, direct transitive additions, historical release-train pins, or unrelated upgrades are present. - Target alerts: 153, 192, 195, 24, 92, 113, 132, 135, 186, 190, and 64. @@ -379,7 +379,7 @@ Status: validated locally; child pull request [#204](https://github.com/WordPres ### Child Execution Record: [#205](https://github.com/WordPress/try-wordpress/pull/205) -Status: blocked after complete candidate analysis; documentation-only child pull request [#205](https://github.com/WordPress/try-wordpress/pull/205) is open against the integration branch and retains its dependency and source state. +Status: blocked after complete candidate analysis; validated and merged into the integration branch at merge commit `0681a978c2c754a4f61f955a5b70992b24a7c330` by documentation-only child pull request [#205](https://github.com/WordPress/try-wordpress/pull/205), which retains its dependency and source state. - Retained dependency state: `react-router-dom` remains at declared range `^6.28.0` and locked version `6.28.0`, with `react-router@6.28.0` and `@remix-run/router@1.21.0`; no package, lockfile, application source, configuration, or generated-build change is retained. - Assigned baseline alerts: 58, 59, 139, 193, and 194 remain open because no published stable `react-router-dom` release both removes an assigned alert and avoids introducing a previously absent current npm advisory. @@ -390,3 +390,15 @@ Status: blocked after complete candidate analysis; documentation-only child pull - Audit and alert recalculation: because the dependency graph is intentionally retained, npm audit remains 113 effect packages (9 low, 17 moderate, 87 high, and zero critical), 61 unique GHSAs, and the same affected package paths as integration commit `dbb4421370d2e0acf04a6f7d8c2f984d56998d91`; the read-only GitHub Dependabot API still reports exactly 124 open default-branch alerts. The five assigned lockfile paths remain `@remix-run/router@1.21.0`, `react-router@6.28.0`, and `react-router-dom@6.28.0` as recorded in the baseline table. - Compatibility and manual risk: no compatibility change or new manual risk is introduced because no dependency or source change is retained. The existing Blocks build shape remains unchanged, including the approximately 21.2 MiB `app.js` and preserved `498.app.js`, `300.app.js`, and `717.app.js` chunks. - Retained-state validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. Both builds retain only the known Playground dynamic-request and asset-size warnings and emit the documented Blocks bundle shape. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` ignores only `app.js`, reports no `FILE_TOO_LARGE`, and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the two known warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`. Final npm audit, `npm ls`, version-qualified `npm explain`, approved-plan-prefix comparison, Markdown wrapping, `git diff --check`, and status inspection confirm the retained dependency paths and documentation-only scope, subject only to the documented remaining alerts and manifest workstream. + +### Child Execution Record: `agent/maintenance-007-phpunit` + +Status: validated locally on branch `agent/maintenance-007-phpunit`; child pull request not yet opened. + +- Direct dependency change: `phpunit/phpunit` moves from declared range `^9.6.21` and locked version `9.6.21` to declared range `^9.6.33` and locked version `9.6.33`; no other direct dependency, license metadata, application source, CI, or npm dependency changes are present. +- Minimum patched boundary: GitHub Dependabot alert 63 identifies `GHSA-vvj3-c3rp-c85p` / `CVE-2026-24765` as affecting PHPUnit `>=9.0.0,<9.6.33` with first patched version `9.6.33`. Official PHPUnit tag metadata confirms that stable `9.6.33` retains PHP `>=7.3`, making it the exact minimum patched 9.6 release and preserving the WordPress test suite's PHPUnit 9 compatibility line. +- Semantic lock scope: the minimal-change partial Composer update has zero package additions, zero removals, and exactly five version changes: `phpunit/phpunit` `9.6.21` to `9.6.33`, `myclabs/deep-copy` `1.12.1` to `1.13.4`, `sebastian/comparator` `4.0.8` to `4.0.10`, `sebastian/exporter` `4.0.6` to `4.0.8`, and `sebastian/global-state` `5.0.7` to `5.0.8`. The four indirect updates are the raised minimum versions declared by PHPUnit `9.6.33`; there are no unrelated Composer updates, overrides, downgrades, dismissals, or direct transitive additions. +- Configuration alignment: `phpunit.xml.dist` changes only its schema location from PHPUnit 10.5 to PHPUnit 9.6. All existing elements and attributes validate unchanged against the official PHPUnit 9.6 XSD, and PHPUnit `9.6.33` loads the configuration without a migration warning or compatibility adjustment. +- Alert and audit result: the locked `phpunit/phpunit@9.6.33` is outside alert 63's affected range, `composer audit --locked` reports no security vulnerability advisories, and the baseline row is resolved locally. GitHub may continue showing the alert until the integration branch reaches the default branch. +- Runtime and suite validation: the host has no PHP or Composer executable, so official Docker runtimes were used without repository configuration changes. Clean locked installs completed independently on PHP `8.3.32` and `8.4.23`; PHPCS passed on both; and the complete PHPUnit suite passed on both with 46 tests and 121 assertions against latest stable WordPress `7.0.2` and MySQL `8.0.46`. Node `v24.18.0` with npm `11.16.0` completed clean `npm ci` and `npm run build:schema` before the test matrix. +- Additional validation: the generated schema allowed all controller tests to exercise their normal paths; the official PHPUnit 9.6 XSD validated `phpunit.xml.dist`; PHPUnit reported version `9.6.33` under both maintained PHP runtimes; the approved-plan prefix hash, Markdown wrapping, `git diff --check`, semantic lock comparison, and status inspection pass. Strict Composer validation confirms that `composer.json` is structurally valid but exits nonzero for the pre-existing empty license metadata warning, which remains unchanged because license metadata is explicitly out of scope. From 30f92a24aa4626ee97407f8043138167c2685f9c Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 04:24:43 +0400 Subject: [PATCH 15/40] Record PHPUnit child pull request --- plan.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/plan.md b/plan.md index 7523dac5..41906f0e 100644 --- a/plan.md +++ b/plan.md @@ -171,7 +171,7 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 46 | GHSA-vj76-c3g6-qr5v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.1.1` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 49 | GHSA-7mvr-c777-76hp | high | npm | `playwright` | transitive / development | `1.48.2` | `1.55.1` | WPS | `playwright@1.48.2 ← @playwright/test@1.48.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 54 | GHSA-5gfm-wpxj-wjgq | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally in the integration branch | -| 63 | GHSA-vvj3-c3rp-c85p | high | composer | `phpunit/phpunit` | unknown / development | `9.6.21` | `9.6.33` | PHPUNIT | `phpunit/phpunit@9.6.21 (direct require-dev in composer.json)` | `agent/maintenance-007-phpunit` | validated locally; vulnerable PHPUnit version absent and locked Composer audit clean | +| 63 | GHSA-vvj3-c3rp-c85p | high | composer | `phpunit/phpunit` | unknown / development | `9.6.21` | `9.6.33` | PHPUNIT | `phpunit/phpunit@9.6.21 (direct require-dev in composer.json)` | [#206](https://github.com/WordPress/try-wordpress/pull/206) | validated locally; vulnerable PHPUnit version absent and locked Composer audit clean | | 70 | GHSA-43fc-jf86-j433 | high | npm | `axios` | transitive / development | `1.7.7` | `1.13.5` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 79 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `9.0.3` | `9.0.7` | WPS | `minimatch@9.0.3 ← @typescript-eslint/typescript-estree@6.21.0 ← @typescript-eslint/parser@6.21.0 ← @wordpress/eslint-plugin@21.0.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 80 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `5.1.6` | `5.1.8` | WEBPACK | `minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `minimatch@5.1.9`; vulnerable major-5 version absent globally in the integration branch | @@ -391,9 +391,9 @@ Status: blocked after complete candidate analysis; validated and merged into the - Compatibility and manual risk: no compatibility change or new manual risk is introduced because no dependency or source change is retained. The existing Blocks build shape remains unchanged, including the approximately 21.2 MiB `app.js` and preserved `498.app.js`, `300.app.js`, and `717.app.js` chunks. - Retained-state validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. Both builds retain only the known Playground dynamic-request and asset-size warnings and emit the documented Blocks bundle shape. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` ignores only `app.js`, reports no `FILE_TOO_LARGE`, and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the two known warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`. Final npm audit, `npm ls`, version-qualified `npm explain`, approved-plan-prefix comparison, Markdown wrapping, `git diff --check`, and status inspection confirm the retained dependency paths and documentation-only scope, subject only to the documented remaining alerts and manifest workstream. -### Child Execution Record: `agent/maintenance-007-phpunit` +### Child Execution Record: [#206](https://github.com/WordPress/try-wordpress/pull/206) -Status: validated locally on branch `agent/maintenance-007-phpunit`; child pull request not yet opened. +Status: validated locally; child pull request [#206](https://github.com/WordPress/try-wordpress/pull/206) is open against the integration branch. - Direct dependency change: `phpunit/phpunit` moves from declared range `^9.6.21` and locked version `9.6.21` to declared range `^9.6.33` and locked version `9.6.33`; no other direct dependency, license metadata, application source, CI, or npm dependency changes are present. - Minimum patched boundary: GitHub Dependabot alert 63 identifies `GHSA-vvj3-c3rp-c85p` / `CVE-2026-24765` as affecting PHPUnit `>=9.0.0,<9.6.33` with first patched version `9.6.33`. Official PHPUnit tag metadata confirms that stable `9.6.33` retains PHP `>=7.3`, making it the exact minimum patched 9.6 release and preserving the WordPress test suite's PHPUnit 9 compatibility line. From 44d5192ae85a630944fea6ef6a872ebddcff5f9c Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 04:53:39 +0400 Subject: [PATCH 16/40] Update copy webpack plugin security path --- package-lock.json | 138 ++++++++++++++++++++-------------------------- package.json | 2 +- plan.md | 20 +++++-- 3 files changed, 78 insertions(+), 82 deletions(-) diff --git a/package-lock.json b/package-lock.json index 45aee3ae..7ce3e7eb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "@wordpress/scripts": "^30.7.0", "ajv": "^8.17.1", "concurrently": "^9.1.0", - "copy-webpack-plugin": "^12.0.2", + "copy-webpack-plugin": "^14.0.0", "css-loader": "^7.1.2", "eslint-import-resolver-typescript": "^3.6.3", "filemanager-webpack-plugin": "^8.0.0", @@ -4559,19 +4559,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@sindresorhus/merge-streams": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz", - "integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@sinonjs/commons": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", @@ -17541,21 +17528,20 @@ "license": "MIT" }, "node_modules/copy-webpack-plugin": { - "version": "12.0.2", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-12.0.2.tgz", - "integrity": "sha512-SNwdBeHyII+rWvee/bTnAYyO8vfVdcSTud4EIb6jcZ8inLeWucJE0DnxXQBjlQ5zlteuuvooGQy3LIyGxhvlOA==", + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-14.0.0.tgz", + "integrity": "sha512-3JLW90aBGeaTLpM7mYQKpnVdgsUZRExY55giiZgLuX/xTQRUs1dOCwbBnWnvY6Q6rfZoXMNwzOQJCSZPppfqXA==", "dev": true, "license": "MIT", "dependencies": { - "fast-glob": "^3.3.2", "glob-parent": "^6.0.1", - "globby": "^14.0.0", "normalize-path": "^3.0.0", "schema-utils": "^4.2.0", - "serialize-javascript": "^6.0.2" + "serialize-javascript": "^7.0.3", + "tinyglobby": "^0.2.12" }, "engines": { - "node": ">= 18.12.0" + "node": ">= 20.9.0" }, "funding": { "type": "opencollective", @@ -17565,51 +17551,14 @@ "webpack": "^5.1.0" } }, - "node_modules/copy-webpack-plugin/node_modules/globby": { - "version": "14.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.2.tgz", - "integrity": "sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==", + "node_modules/copy-webpack-plugin/node_modules/serialize-javascript": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-7.0.7.tgz", + "integrity": "sha512-YAy8Od6KV+uuwUuU50np8fGB/Aues6Y0nAhA9y/hId74PlKUcme4pXcBD46NWKr1Q4osN/iseZ17YqO1XfmI8g==", "dev": true, - "license": "MIT", - "dependencies": { - "@sindresorhus/merge-streams": "^2.1.0", - "fast-glob": "^3.3.2", - "ignore": "^5.2.4", - "path-type": "^5.0.0", - "slash": "^5.1.0", - "unicorn-magic": "^0.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/copy-webpack-plugin/node_modules/path-type": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-5.0.0.tgz", - "integrity": "sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/copy-webpack-plugin/node_modules/slash": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", - "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", - "dev": true, - "license": "MIT", + "license": "BSD-3-Clause", "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=20.0.0" } }, "node_modules/core-js": { @@ -31555,6 +31504,54 @@ "dev": true, "license": "MIT" }, + "node_modules/tinyglobby": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz", + "integrity": "sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tinyglobby/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/tinyglobby/node_modules/picomatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.5.tgz", + "integrity": "sha512-RvwwcruNjI1ncT5xRakeyS9Lf8lcItv34KD+aif+VH9kduAyfYBipGh12274xtenIPZ119/R9BdTBa8gAwSh0A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/tmp": { "version": "0.2.7", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.7.tgz", @@ -32082,19 +32079,6 @@ "node": ">=4" } }, - "node_modules/unicorn-magic": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz", - "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/unique-string": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", diff --git a/package.json b/package.json index ad114173..35480525 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "@wordpress/scripts": "^30.7.0", "ajv": "^8.17.1", "concurrently": "^9.1.0", - "copy-webpack-plugin": "^12.0.2", + "copy-webpack-plugin": "^14.0.0", "css-loader": "^7.1.2", "eslint-import-resolver-typescript": "^3.6.3", "filemanager-webpack-plugin": "^8.0.0", diff --git a/plan.md b/plan.md index 41906f0e..12064aa4 100644 --- a/plan.md +++ b/plan.md @@ -171,12 +171,12 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 46 | GHSA-vj76-c3g6-qr5v | high | npm | `tar-fs` | transitive / development | `3.0.4, 3.0.6` | `3.1.1` | WPS | `tar-fs@3.0.6 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 49 | GHSA-7mvr-c777-76hp | high | npm | `playwright` | transitive / development | `1.48.2` | `1.55.1` | WPS | `playwright@1.48.2 ← @playwright/test@1.48.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 54 | GHSA-5gfm-wpxj-wjgq | high | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally in the integration branch | -| 63 | GHSA-vvj3-c3rp-c85p | high | composer | `phpunit/phpunit` | unknown / development | `9.6.21` | `9.6.33` | PHPUNIT | `phpunit/phpunit@9.6.21 (direct require-dev in composer.json)` | [#206](https://github.com/WordPress/try-wordpress/pull/206) | validated locally; vulnerable PHPUnit version absent and locked Composer audit clean | +| 63 | GHSA-vvj3-c3rp-c85p | high | composer | `phpunit/phpunit` | unknown / development | `9.6.21` | `9.6.33` | PHPUNIT | `phpunit/phpunit@9.6.21 (direct require-dev in composer.json)` | [#206](https://github.com/WordPress/try-wordpress/pull/206) | validated and merged into the integration branch by PR #206 at `87f6889048add5a94c7026665cf47db4148f209b`; vulnerable PHPUnit version absent and locked Composer audit clean | | 70 | GHSA-43fc-jf86-j433 | high | npm | `axios` | transitive / development | `1.7.7` | `1.13.5` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 79 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `9.0.3` | `9.0.7` | WPS | `minimatch@9.0.3 ← @typescript-eslint/typescript-estree@6.21.0 ← @typescript-eslint/parser@6.21.0 ← @wordpress/eslint-plugin@21.0.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 80 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `5.1.6` | `5.1.8` | WEBPACK | `minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `minimatch@5.1.9`; vulnerable major-5 version absent globally in the integration branch | | 83 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `3.0.8, 3.1.2` | `3.1.3` | ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS | `minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | WEBEXT, ESLINT-RESOLVER, and compatible WEBPACK/WPS paths refresh to patched `3.1.5`; vulnerable `markdownlint-cli` WPS path at `3.0.8` remains | -| 84 | GHSA-5c6j-r48x-rmvq | high | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.3` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBPACK + WPS paths remain; integration branch documents upstream WPS residual | +| 84 | GHSA-5c6j-r48x-rmvq | high | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.3` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-008-copy-webpack-plugin` | root WEBPACK path replaced by `copy-webpack-plugin@14.0.0` with patched nested `serialize-javascript@7.0.7`; vulnerable WPS paths remain | | 85 | GHSA-xpqw-6gx7-v673 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.3` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 88 | GHSA-wf6x-7x77-mvgw | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.8` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 91 | GHSA-rf6f-7fwh-wjgh | high | npm | `flatted` | transitive / development | `3.3.1` | `3.4.2` | ESLINT-RESOLVER + WEBEXT + WPS | `flatted@3.3.1 ← flat-cache@3.2.0 ← file-entry-cache@6.0.1 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `flatted@3.4.3`; vulnerable version absent globally in the integration branch | @@ -247,7 +247,7 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 122 | GHSA-445q-vr5w-6q77 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 129 | GHSA-xx6v-rp6x-q39c | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 131 | GHSA-79cf-xcqc-c78w | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.4` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | -| 134 | GHSA-qj8w-gfj5-8c6v | medium | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.5` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WEBPACK + WPS paths remain; integration branch documents upstream WPS residual | +| 134 | GHSA-qj8w-gfj5-8c6v | medium | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.5` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-008-copy-webpack-plugin` | root WEBPACK path replaced by `copy-webpack-plugin@14.0.0` with patched nested `serialize-javascript@7.0.7`; vulnerable WPS paths remain | | 138 | GHSA-w9j2-pvgh-6h63 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 147 | GHSA-898c-q2cr-xwhg | medium | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 151 | GHSA-6v5v-wf23-fmfq | medium | npm | `markdown-it` | transitive / development | `12.3.2` | `14.2.0` | WPS | `markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | @@ -393,7 +393,7 @@ Status: blocked after complete candidate analysis; validated and merged into the ### Child Execution Record: [#206](https://github.com/WordPress/try-wordpress/pull/206) -Status: validated locally; child pull request [#206](https://github.com/WordPress/try-wordpress/pull/206) is open against the integration branch. +Status: validated and merged into the integration branch by child pull request [#206](https://github.com/WordPress/try-wordpress/pull/206) at merge commit `87f6889048add5a94c7026665cf47db4148f209b`. - Direct dependency change: `phpunit/phpunit` moves from declared range `^9.6.21` and locked version `9.6.21` to declared range `^9.6.33` and locked version `9.6.33`; no other direct dependency, license metadata, application source, CI, or npm dependency changes are present. - Minimum patched boundary: GitHub Dependabot alert 63 identifies `GHSA-vvj3-c3rp-c85p` / `CVE-2026-24765` as affecting PHPUnit `>=9.0.0,<9.6.33` with first patched version `9.6.33`. Official PHPUnit tag metadata confirms that stable `9.6.33` retains PHP `>=7.3`, making it the exact minimum patched 9.6 release and preserving the WordPress test suite's PHPUnit 9 compatibility line. @@ -402,3 +402,15 @@ Status: validated locally; child pull request [#206](https://github.com/WordPres - Alert and audit result: the locked `phpunit/phpunit@9.6.33` is outside alert 63's affected range, `composer audit --locked` reports no security vulnerability advisories, and the baseline row is resolved locally. GitHub may continue showing the alert until the integration branch reaches the default branch. - Runtime and suite validation: the host has no PHP or Composer executable, so official Docker runtimes were used without repository configuration changes. Clean locked installs completed independently on PHP `8.3.32` and `8.4.23`; PHPCS passed on both; and the complete PHPUnit suite passed on both with 46 tests and 121 assertions against latest stable WordPress `7.0.2` and MySQL `8.0.46`. Node `v24.18.0` with npm `11.16.0` completed clean `npm ci` and `npm run build:schema` before the test matrix. - Additional validation: the generated schema allowed all controller tests to exercise their normal paths; the official PHPUnit 9.6 XSD validated `phpunit.xml.dist`; PHPUnit reported version `9.6.33` under both maintained PHP runtimes; the approved-plan prefix hash, Markdown wrapping, `git diff --check`, semantic lock comparison, and status inspection pass. Strict Composer validation confirms that `composer.json` is structurally valid but exits nonzero for the pre-existing empty license metadata warning, which remains unchanged because license metadata is explicitly out of scope. + +### Child Execution Record: `agent/maintenance-008-copy-webpack-plugin` + +Status: validated locally on branch `agent/maintenance-008-copy-webpack-plugin`; the child pull request has not yet been opened. + +- Direct dependency change: root `copy-webpack-plugin` moves from declared range `^12.0.2` and locked version `12.0.2` to declared range `^14.0.0` and locked version `14.0.0`; no webpack configuration, application source, license metadata, override, downgrade, direct transitive declaration, or unrelated direct dependency changes are present. +- Minimum stable boundary: npm registry manifests and clean isolated ordinary locks were examined for every stable release newer than `12.0.2` through current `14.0.0`: `13.0.0`, `13.0.1`, and `14.0.0`. Both 13.x releases retain declared `serialize-javascript@^6.0.2` and lock affected `6.0.2`; `14.0.0` is the first stable release declaring `serialize-javascript@^7.0.3`, whose ordinary lock selects patched `7.0.7`, so `14.0.0` is the minimum stable release that genuinely removes both assigned WEBPACK paths. The isolated `14.0.0` lock has zero npm-audit findings, while `12.0.2`, `13.0.0`, and `13.0.1` each retain exactly the two assigned serialize-javascript advisories. +- Semantic lock scope: the ordinary lock has one installed version change, root `copy-webpack-plugin@12.0.2` to `14.0.0`; four package paths are added for its required graph (`serialize-javascript@7.0.7` nested under the direct plugin, `tinyglobby@0.2.17`, and tinyglobby's nested `fdir@6.5.0` and `picomatch@4.0.5`), while five obsolete globby-family paths are removed (`@sindresorhus/merge-streams@2.3.0`, the direct plugin's nested `globby@14.0.2`, `path-type@5.0.0`, and `slash@5.1.0`, and `unicorn-magic@0.1.0`). No other installed version changes. +- Assigned alert result: the root WEBPACK path for baseline alerts 84 and 134 now resolves only through `copy-webpack-plugin@14.0.0 → serialize-javascript@7.0.7`, outside both affected ranges. Shared root `serialize-javascript@6.0.2` remains through `@wordpress/scripts@30.7.0 → copy-webpack-plugin@10.2.4` and `@wordpress/scripts@30.7.0 → terser-webpack-plugin@5.3.10`, so both rows remain correctly classified as partial WPS residuals rather than globally resolved. +- Full-row and audit recalculation: a range-aware comparison of all 124 baseline alerts against the pre-change and final locks finds zero global row transitions and zero affected-version reintroductions because the residual WPS instance keeps both assigned rows open. `npm audit` remains 113 effect packages (9 low, 17 moderate, and 87 high) and 61 unique GHSAs, with zero current nonbaseline advisory additions, removals, or propagation-count changes; the direct plugin's isolated final graph is audit-clean. +- Compatibility and manual risk: `copy-webpack-plugin@14.0.0` retains the existing webpack 5 peer range and the current patterns configuration without adjustment; its Node `>=20.9.0` engine is satisfied by the approved Node 24 environment. Both target builds copy the manifests, icons, UI, plugin files, schema, and plugin archive successfully, and preserve the approximately 21.2 MiB `app.js` plus `498.app.js`, `300.app.js`, and `717.app.js` chunks. The major upgrade replaces the direct plugin's glob implementation, so manual testing should continue to confirm watch-mode recopy behavior even though clean production copying is validated. +- Validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. Both builds completed with only the known Playground dynamic-request and asset-size warnings. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` ignores only `app.js`, reports no `FILE_TOO_LARGE`, and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the two known warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`; exact installed-path checks and final integrity checks cover the documented residuals and repository state. From 3e2c3f946172bc126ddba028a00e82977dc95d83 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 04:54:12 +0400 Subject: [PATCH 17/40] Record copy webpack child pull request --- plan.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/plan.md b/plan.md index 12064aa4..458fbe94 100644 --- a/plan.md +++ b/plan.md @@ -176,7 +176,7 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 79 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `9.0.3` | `9.0.7` | WPS | `minimatch@9.0.3 ← @typescript-eslint/typescript-estree@6.21.0 ← @typescript-eslint/parser@6.21.0 ← @wordpress/eslint-plugin@21.0.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 80 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `5.1.6` | `5.1.8` | WEBPACK | `minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `minimatch@5.1.9`; vulnerable major-5 version absent globally in the integration branch | | 83 | GHSA-7r86-cg39-jmmj | high | npm | `minimatch` | transitive / development | `3.0.8, 3.1.2` | `3.1.3` | ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS | `minimatch@3.1.2 ← multimatch@6.0.0 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | WEBEXT, ESLINT-RESOLVER, and compatible WEBPACK/WPS paths refresh to patched `3.1.5`; vulnerable `markdownlint-cli` WPS path at `3.0.8` remains | -| 84 | GHSA-5c6j-r48x-rmvq | high | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.3` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-008-copy-webpack-plugin` | root WEBPACK path replaced by `copy-webpack-plugin@14.0.0` with patched nested `serialize-javascript@7.0.7`; vulnerable WPS paths remain | +| 84 | GHSA-5c6j-r48x-rmvq | high | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.3` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#207](https://github.com/WordPress/try-wordpress/pull/207) | root WEBPACK path replaced by `copy-webpack-plugin@14.0.0` with patched nested `serialize-javascript@7.0.7`; vulnerable WPS paths remain | | 85 | GHSA-xpqw-6gx7-v673 | high | npm | `svgo` | transitive / development | `3.3.2` | `3.3.3` | WPS | `svgo@3.3.2 ← @svgr/plugin-svgo@8.1.0 ← @svgr/webpack@8.1.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 88 | GHSA-wf6x-7x77-mvgw | high | npm | `immutable` | transitive / development | `4.3.7` | `4.3.8` | WPS | `immutable@4.3.7 ← sass@1.78.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 91 | GHSA-rf6f-7fwh-wjgh | high | npm | `flatted` | transitive / development | `3.3.1` | `3.4.2` | ESLINT-RESOLVER + WEBEXT + WPS | `flatted@3.3.1 ← flat-cache@3.2.0 ← file-entry-cache@6.0.1 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `flatted@3.4.3`; vulnerable version absent globally in the integration branch | @@ -247,7 +247,7 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 122 | GHSA-445q-vr5w-6q77 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 129 | GHSA-xx6v-rp6x-q39c | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 131 | GHSA-79cf-xcqc-c78w | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.4` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | -| 134 | GHSA-qj8w-gfj5-8c6v | medium | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.5` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + `agent/maintenance-008-copy-webpack-plugin` | root WEBPACK path replaced by `copy-webpack-plugin@14.0.0` with patched nested `serialize-javascript@7.0.7`; vulnerable WPS paths remain | +| 134 | GHSA-qj8w-gfj5-8c6v | medium | npm | `serialize-javascript` | transitive / development | `6.0.2` | `7.0.5` | WEBPACK + WPS | `serialize-javascript@6.0.2 ← copy-webpack-plugin@12.0.2` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#207](https://github.com/WordPress/try-wordpress/pull/207) | root WEBPACK path replaced by `copy-webpack-plugin@14.0.0` with patched nested `serialize-javascript@7.0.7`; vulnerable WPS paths remain | | 138 | GHSA-w9j2-pvgh-6h63 | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.1` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 147 | GHSA-898c-q2cr-xwhg | medium | npm | `axios` | transitive / development | `1.7.7` | `1.16.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 151 | GHSA-6v5v-wf23-fmfq | medium | npm | `markdown-it` | transitive / development | `12.3.2` | `14.2.0` | WPS | `markdown-it@12.3.2 ← markdownlint@0.25.1 ← markdownlint-cli@0.31.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | @@ -403,9 +403,9 @@ Status: validated and merged into the integration branch by child pull request [ - Runtime and suite validation: the host has no PHP or Composer executable, so official Docker runtimes were used without repository configuration changes. Clean locked installs completed independently on PHP `8.3.32` and `8.4.23`; PHPCS passed on both; and the complete PHPUnit suite passed on both with 46 tests and 121 assertions against latest stable WordPress `7.0.2` and MySQL `8.0.46`. Node `v24.18.0` with npm `11.16.0` completed clean `npm ci` and `npm run build:schema` before the test matrix. - Additional validation: the generated schema allowed all controller tests to exercise their normal paths; the official PHPUnit 9.6 XSD validated `phpunit.xml.dist`; PHPUnit reported version `9.6.33` under both maintained PHP runtimes; the approved-plan prefix hash, Markdown wrapping, `git diff --check`, semantic lock comparison, and status inspection pass. Strict Composer validation confirms that `composer.json` is structurally valid but exits nonzero for the pre-existing empty license metadata warning, which remains unchanged because license metadata is explicitly out of scope. -### Child Execution Record: `agent/maintenance-008-copy-webpack-plugin` +### Child Execution Record: [#207](https://github.com/WordPress/try-wordpress/pull/207) -Status: validated locally on branch `agent/maintenance-008-copy-webpack-plugin`; the child pull request has not yet been opened. +Status: validated locally; child pull request [#207](https://github.com/WordPress/try-wordpress/pull/207) is open against the integration branch. - Direct dependency change: root `copy-webpack-plugin` moves from declared range `^12.0.2` and locked version `12.0.2` to declared range `^14.0.0` and locked version `14.0.0`; no webpack configuration, application source, license metadata, override, downgrade, direct transitive declaration, or unrelated direct dependency changes are present. - Minimum stable boundary: npm registry manifests and clean isolated ordinary locks were examined for every stable release newer than `12.0.2` through current `14.0.0`: `13.0.0`, `13.0.1`, and `14.0.0`. Both 13.x releases retain declared `serialize-javascript@^6.0.2` and lock affected `6.0.2`; `14.0.0` is the first stable release declaring `serialize-javascript@^7.0.3`, whose ordinary lock selects patched `7.0.7`, so `14.0.0` is the minimum stable release that genuinely removes both assigned WEBPACK paths. The isolated `14.0.0` lock has zero npm-audit findings, while `12.0.2`, `13.0.0`, and `13.0.1` each retain exactly the two assigned serialize-javascript advisories. From cbf34f99c44555d30915be626cdb405606405a31 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 05:19:25 +0400 Subject: [PATCH 18/40] docs(security): record filemanager blocker - document why every newer stable release retains the affected archive path - record candidate audits and the new applicable brace-expansion advisory - preserve the approved plan prefix and retained dependency state --- plan.md | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/plan.md b/plan.md index 458fbe94..73391ff0 100644 --- a/plan.md +++ b/plan.md @@ -405,7 +405,7 @@ Status: validated and merged into the integration branch by child pull request [ ### Child Execution Record: [#207](https://github.com/WordPress/try-wordpress/pull/207) -Status: validated locally; child pull request [#207](https://github.com/WordPress/try-wordpress/pull/207) is open against the integration branch. +Status: validated and merged into the integration branch by child pull request [#207](https://github.com/WordPress/try-wordpress/pull/207) at merge commit `2409cfac0411e5270a457ced326b10fa472cf986`. - Direct dependency change: root `copy-webpack-plugin` moves from declared range `^12.0.2` and locked version `12.0.2` to declared range `^14.0.0` and locked version `14.0.0`; no webpack configuration, application source, license metadata, override, downgrade, direct transitive declaration, or unrelated direct dependency changes are present. - Minimum stable boundary: npm registry manifests and clean isolated ordinary locks were examined for every stable release newer than `12.0.2` through current `14.0.0`: `13.0.0`, `13.0.1`, and `14.0.0`. Both 13.x releases retain declared `serialize-javascript@^6.0.2` and lock affected `6.0.2`; `14.0.0` is the first stable release declaring `serialize-javascript@^7.0.3`, whose ordinary lock selects patched `7.0.7`, so `14.0.0` is the minimum stable release that genuinely removes both assigned WEBPACK paths. The isolated `14.0.0` lock has zero npm-audit findings, while `12.0.2`, `13.0.0`, and `13.0.1` each retain exactly the two assigned serialize-javascript advisories. @@ -414,3 +414,17 @@ Status: validated locally; child pull request [#207](https://github.com/WordPres - Full-row and audit recalculation: a range-aware comparison of all 124 baseline alerts against the pre-change and final locks finds zero global row transitions and zero affected-version reintroductions because the residual WPS instance keeps both assigned rows open. `npm audit` remains 113 effect packages (9 low, 17 moderate, and 87 high) and 61 unique GHSAs, with zero current nonbaseline advisory additions, removals, or propagation-count changes; the direct plugin's isolated final graph is audit-clean. - Compatibility and manual risk: `copy-webpack-plugin@14.0.0` retains the existing webpack 5 peer range and the current patterns configuration without adjustment; its Node `>=20.9.0` engine is satisfied by the approved Node 24 environment. Both target builds copy the manifests, icons, UI, plugin files, schema, and plugin archive successfully, and preserve the approximately 21.2 MiB `app.js` plus `498.app.js`, `300.app.js`, and `717.app.js` chunks. The major upgrade replaces the direct plugin's glob implementation, so manual testing should continue to confirm watch-mode recopy behavior even though clean production copying is validated. - Validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. Both builds completed with only the known Playground dynamic-request and asset-size warnings. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` ignores only `app.js`, reports no `FILE_TOO_LARGE`, and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the two known warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`; exact installed-path checks and final integrity checks cover the documented residuals and repository state. + +### Child Execution Record: `agent/maintenance-009-filemanager-webpack-plugin` + +Status: blocked after complete candidate analysis; the documentation-only child branch `agent/maintenance-009-filemanager-webpack-plugin` retains its dependency, lockfile, webpack configuration, and application source state. + +- Retained dependency state: root `filemanager-webpack-plugin` remains at declared range `^8.0.0` and locked version `8.0.0`, with `archiver@5.3.2`, `del@6.1.1`, `readdir-glob@1.1.3`, `minimatch@5.1.9`, and `brace-expansion@2.1.2` on its shortest affected archive path; no package, lockfile, webpack configuration, application source, license metadata, override, downgrade, dismissal, or unrelated dependency change is retained. +- Complete stable-release review: npm registry metadata and clean isolated ordinary locks were examined for every stable `filemanager-webpack-plugin` release newer than `8.0.0` through current `10.0.1`: `9.0.0`, `9.0.1`, `10.0.0`, and `10.0.1`. Releases 9.x require Node `>=20.0.0`, releases 10.x require Node `>=22.14.0`, and all retain the existing webpack 5 peer range, so the approved Node 24 environment satisfies every candidate. +- Candidate dependency boundary: all four candidates replace `del@6.1.1` with audit-clean `del@8.0.1` and remove the direct plugin's affected `rimraf@3.0.2` path, but every candidate declares `archiver@^7.0.1` and an ordinary lock still selects affected `archiver@7.0.1`. Each candidate retains `archiver@7.0.1 → readdir-glob@1.1.3 → minimatch@5.1.9 → brace-expansion@2.1.2` and also selects `archiver-utils@5.0.2`, `zip-stream@6.0.1`, `glob@10.5.0`, and `minimatch@9.0.9`; the archive graph therefore remains affected through `brace-expansion@2.1.2`. +- New applicable advisory: current npm audit includes high-severity `GHSA-mh99-v99m-4gvg` / `CVE-2026-14257`, published 2026-07-24 and not represented in the 124-row baseline, for every `brace-expansion` version through `5.0.7`, with first patched version `5.0.8`. The retained plugin graph reaches affected `brace-expansion@1.1.16` through `archiver-utils@2.1.0 → glob@7.2.3 → minimatch@3.1.5` and affected `2.1.2` through `readdir-glob@1.1.3 → minimatch@5.1.9`; every newer plugin candidate still reaches affected `2.1.2`. Isolated ordinary locks for `8.0.0`, each 9.x release, and each 10.x release add zero GHSA relative to one another, but none removes this applicable advisory. +- Audit propagation: the isolated `8.0.0` graph reports ten high-severity affected packages propagated from `GHSA-mh99-v99m-4gvg`; each newer candidate reduces that propagation to eight packages by removing the affected `del` and `rimraf` effects but continues to report affected `filemanager-webpack-plugin`, `archiver`, `archiver-utils`, `zip-stream`, `readdir-glob`, `glob`, `minimatch`, and `brace-expansion`. npm's only reported direct-plugin fix is the prohibited downgrade to `filemanager-webpack-plugin@2.0.5`, so no published newer stable release satisfies the requirement to remove the vulnerable transitive packages. +- Baseline alert reconciliation: alerts 80 and 83 remain patched for their assigned `GHSA-7r86-cg39-jmmj` minimatch ranges because the retained filemanager paths use `minimatch@5.1.9` and `3.1.5`; alert 191 remains patched for its assigned `GHSA-3jxr-9vmj-r5cp` range because the retained major-2 path uses its first patched version `brace-expansion@2.1.2`. No assigned baseline advisory is reintroduced, but those same retained package versions are independently affected by the newer, broader `GHSA-mh99-v99m-4gvg`. +- Full-lock result: because package and lockfile state are intentionally retained, npm audit remains 113 effect packages (9 low, 17 moderate, 87 high, and zero critical) and 61 unique GHSAs. The blocked family cannot be marked resolved until `filemanager-webpack-plugin` publishes a release whose archive graph permits patched `brace-expansion@5.0.8` or later, or until replacing the archive plugin is separately authorized as a broader build migration. +- Compatibility and manual risk: no compatibility change or new manual risk is introduced because no dependency, webpack configuration, source, or output behavior changes. The retained production builds continue to create `plugin.zip` from the complete copied plugin directory for both browser targets. +- Retained-state validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. Both builds retain only the known Playground dynamic-request and asset-size warnings, copy all expected artifacts, and produce valid plugin archives. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` ignores only `app.js`, reports no `FILE_TOO_LARGE`, and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the two known warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`. Final npm audit, exact `npm ls` and `npm explain` paths, isolated candidate audits, approved-plan-prefix comparison, Markdown wrapping, `git diff --check`, and status inspection confirm the documentation-only scope and blocker evidence. From 3cf73433528877bd308456600c55bbb1dd750117 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 05:20:03 +0400 Subject: [PATCH 19/40] docs(security): link filemanager child PR - replace the temporary child branch reference with pull request 208 - preserve the reviewed blocker evidence and approved plan prefix --- plan.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plan.md b/plan.md index 73391ff0..704c61cd 100644 --- a/plan.md +++ b/plan.md @@ -415,9 +415,9 @@ Status: validated and merged into the integration branch by child pull request [ - Compatibility and manual risk: `copy-webpack-plugin@14.0.0` retains the existing webpack 5 peer range and the current patterns configuration without adjustment; its Node `>=20.9.0` engine is satisfied by the approved Node 24 environment. Both target builds copy the manifests, icons, UI, plugin files, schema, and plugin archive successfully, and preserve the approximately 21.2 MiB `app.js` plus `498.app.js`, `300.app.js`, and `717.app.js` chunks. The major upgrade replaces the direct plugin's glob implementation, so manual testing should continue to confirm watch-mode recopy behavior even though clean production copying is validated. - Validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. Both builds completed with only the known Playground dynamic-request and asset-size warnings. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` ignores only `app.js`, reports no `FILE_TOO_LARGE`, and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the two known warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`; exact installed-path checks and final integrity checks cover the documented residuals and repository state. -### Child Execution Record: `agent/maintenance-009-filemanager-webpack-plugin` +### Child Execution Record: [#208](https://github.com/WordPress/try-wordpress/pull/208) -Status: blocked after complete candidate analysis; the documentation-only child branch `agent/maintenance-009-filemanager-webpack-plugin` retains its dependency, lockfile, webpack configuration, and application source state. +Status: blocked after complete candidate analysis; validated locally in documentation-only child pull request [#208](https://github.com/WordPress/try-wordpress/pull/208), which retains its dependency, lockfile, webpack configuration, and application source state. - Retained dependency state: root `filemanager-webpack-plugin` remains at declared range `^8.0.0` and locked version `8.0.0`, with `archiver@5.3.2`, `del@6.1.1`, `readdir-glob@1.1.3`, `minimatch@5.1.9`, and `brace-expansion@2.1.2` on its shortest affected archive path; no package, lockfile, webpack configuration, application source, license metadata, override, downgrade, dismissal, or unrelated dependency change is retained. - Complete stable-release review: npm registry metadata and clean isolated ordinary locks were examined for every stable `filemanager-webpack-plugin` release newer than `8.0.0` through current `10.0.1`: `9.0.0`, `9.0.1`, `10.0.0`, and `10.0.1`. Releases 9.x require Node `>=20.0.0`, releases 10.x require Node `>=22.14.0`, and all retain the existing webpack 5 peer range, so the approved Node 24 environment satisfies every candidate. From 4a546464d0da6d16327c9717bace0e5adae7f778 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 06:04:32 +0400 Subject: [PATCH 20/40] docs(security): record block library blocker - document the minimum vulnerable-path fix and its new Firefox add-on warning - retain package and source state after security and bundle review - record candidate and retained Node 24 validation --- plan.md | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/plan.md b/plan.md index 704c61cd..784b1da6 100644 --- a/plan.md +++ b/plan.md @@ -223,9 +223,9 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | BLK path removed; affected WPS and `@types/wordpress__blocks` paths remain | | 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable Showdown dependency absent globally | | 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + [#204](https://github.com/WordPress/try-wordpress/pull/204) | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | -| 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | root Blocks path patched, but affected block-library, WPS, and `@types/wordpress__blocks` paths remain | +| 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + `agent/maintenance-010-wordpress-block-library` | root Blocks path patched; the block-library path is blocked because the first candidate that patches it introduces an unsuppressed Firefox add-on security warning, while affected WPS, `@types/wordpress__blocks`, and shared Components paths also remain | | 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | -| 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | root Blocks path patched, but affected `@wordpress/block-library@9.27.0` path remains | +| 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + `agent/maintenance-010-wordpress-block-library` | root Blocks path patched; the remaining `@wordpress/block-library@9.27.0` path is blocked because every complete fixing candidate introduces an unsuppressed Firefox add-on security warning | | 190 | GHSA-qx2v-qp2m-jg93 | medium | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.10` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | | 193 | GHSA-337j-9hxr-rhxg | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; `react-router-dom@7.18.x` removes this row but adds a current applicable high-severity advisory | | 194 | GHSA-wrjc-x8rr-h8h6 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; `react-router-dom@7.18.x` removes this row but adds a current applicable high-severity advisory | @@ -417,7 +417,7 @@ Status: validated and merged into the integration branch by child pull request [ ### Child Execution Record: [#208](https://github.com/WordPress/try-wordpress/pull/208) -Status: blocked after complete candidate analysis; validated locally in documentation-only child pull request [#208](https://github.com/WordPress/try-wordpress/pull/208), which retains its dependency, lockfile, webpack configuration, and application source state. +Status: blocked after complete candidate analysis; validated and merged into the integration branch at merge commit `1d0380b349c70ab2fb8d0581f8d294778d67e73f` by documentation-only child pull request [#208](https://github.com/WordPress/try-wordpress/pull/208), which retains its dependency, lockfile, webpack configuration, and application source state. - Retained dependency state: root `filemanager-webpack-plugin` remains at declared range `^8.0.0` and locked version `8.0.0`, with `archiver@5.3.2`, `del@6.1.1`, `readdir-glob@1.1.3`, `minimatch@5.1.9`, and `brace-expansion@2.1.2` on its shortest affected archive path; no package, lockfile, webpack configuration, application source, license metadata, override, downgrade, dismissal, or unrelated dependency change is retained. - Complete stable-release review: npm registry metadata and clean isolated ordinary locks were examined for every stable `filemanager-webpack-plugin` release newer than `8.0.0` through current `10.0.1`: `9.0.0`, `9.0.1`, `10.0.0`, and `10.0.1`. Releases 9.x require Node `>=20.0.0`, releases 10.x require Node `>=22.14.0`, and all retain the existing webpack 5 peer range, so the approved Node 24 environment satisfies every candidate. @@ -428,3 +428,20 @@ Status: blocked after complete candidate analysis; validated locally in document - Full-lock result: because package and lockfile state are intentionally retained, npm audit remains 113 effect packages (9 low, 17 moderate, 87 high, and zero critical) and 61 unique GHSAs. The blocked family cannot be marked resolved until `filemanager-webpack-plugin` publishes a release whose archive graph permits patched `brace-expansion@5.0.8` or later, or until replacing the archive plugin is separately authorized as a broader build migration. - Compatibility and manual risk: no compatibility change or new manual risk is introduced because no dependency, webpack configuration, source, or output behavior changes. The retained production builds continue to create `plugin.zip` from the complete copied plugin directory for both browser targets. - Retained-state validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. Both builds retain only the known Playground dynamic-request and asset-size warnings, copy all expected artifacts, and produce valid plugin archives. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` ignores only `app.js`, reports no `FILE_TOO_LARGE`, and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the two known warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`. Final npm audit, exact `npm ls` and `npm explain` paths, isolated candidate audits, approved-plan-prefix comparison, Markdown wrapping, `git diff --check`, and status inspection confirm the documentation-only scope and blocker evidence. + +### Child Execution Record: `agent/maintenance-010-wordpress-block-library` + +Status: blocked after complete candidate analysis; validated locally in documentation-only child branch `agent/maintenance-010-wordpress-block-library`, which retains its dependency, lockfile, webpack configuration, application source, and generated-build configuration state. + +- Retained dependency state: root `@wordpress/block-library` remains at declared range `^9.27.0` and locked version `9.27.0`, root `@wordpress/blocks` remains at declared range `^15.22.0` and locked version `15.22.0`, and the library retains affected nested `@babel/runtime@7.25.7` and `uuid@9.0.1`; Showdown remains absent. No package, lockfile, application source, webpack configuration, license metadata, override, downgrade, dismissal, or unrelated dependency change is retained. +- Complete stable-release inventory: npm registry manifests were examined for all 38 stable `@wordpress/block-library` releases newer than `9.27.0` through current `10.2.0`: `9.28.0`, `9.29.0`, `9.30.0`, `9.31.0`, `9.32.0`, `9.33.0`, `9.33.1`, `9.33.2`, `9.33.3`, `9.33.4`, `9.33.5`, `9.33.6`, `9.33.7`, `9.33.8`, `9.33.9`, `9.33.10`, `9.34.0`, `9.35.0`, `9.36.0`, `9.37.0`, `9.38.0`, `9.39.0`, `9.40.0`, `9.40.1`, `9.40.2`, `9.41.0`, `9.42.0`, `9.43.0`, `9.44.0`, `9.45.0`, `9.46.0`, `9.47.0`, `9.48.0`, `9.48.1`, `10.0.0`, `10.0.1`, `10.1.0`, and `10.2.0`. +- Vulnerability boundaries: releases `9.28.0` through `9.32.0` retain exact affected `@babel/runtime@7.25.7` and `uuid@^9.0.1`; `9.33.0` is the first release that removes the library's runtime dependency but every release through `9.45.0` retains `uuid@^9.0.1`; `9.46.0` is the first release that also moves UUID to `^14.0.0`. Its `@wordpress/blocks@^15.19.0` requirement accepts retained root Blocks `15.22.0`, so `9.46.0` is the minimum stable release that removes every currently vulnerable direct block-library path without a coupled Blocks-root change. +- Isolated lock and alert result: exact project-lock probes at runtime predecessor `9.32.0`, runtime fix `9.33.0`, UUID predecessor `9.45.0`, complete fix `9.46.0`, every later compatible candidate, and current `10.2.0` confirm the boundaries. The `9.46.0` lock removes the library's nested `@babel/runtime`, selects library UUID `14.0.1`, leaves Showdown absent, and removes `@wordpress/block-library` from npm-audit effects. Baseline alert 186 would become globally resolved because only patched root `@babel/runtime@7.29.7` remains; alert 135 would lose its library path but remain open through shared `@wordpress/components → uuid@9.0.1` and WPS `sockjs → uuid@8.3.2` paths; alert 92 already has no library path and remains unchanged through its documented non-library paths. Range-aware review of all 124 baseline rows finds only alert 186 transitioning globally and no affected-version reintroduction. +- Candidate semantic lock scope: the targeted `9.46.0` lock has exactly five installed version changes (`@wordpress/block-library` `9.27.0` to `9.46.0`, its nested Base Styles `6.20.0` to `8.0.0`, Components `30.9.0` to `33.1.0`, Icons `10.32.0` to `13.3.0`, and UUID `9.0.1` to `14.0.1`), 21 causal additions for the newer library's media, Math, UI, and parsing graph, and three removals (the library's nested runtime, an obsolete nested Icons copy, and now-unused `regenerator-runtime`). There is no unrelated locked-version refresh and root Blocks stays `15.22.0`. +- Candidate audit result: the exact `9.46.0` project lock reduces npm-audit effect propagation from 113 packages (9 low, 17 moderate, and 87 high) to 110 (9 low, 14 moderate, and 87 high) while retaining the identical set of 61 unique GHSAs, with zero new applicable advisory. The same 110-effect and 61-GHSA result holds for ordinary compatible locks at `9.48.0`, `9.48.1`, `10.0.0`, `10.0.1`, `10.1.0`, and `10.2.0`. +- Firefox add-on security-quality blocker: every complete-fix release from `9.46.0` through current adds `@wordpress/latex-to-mathml`; ordinary compatible locks select current `@wordpress/latex-to-mathml@1.19.0` with `temml@0.10.34` and emit it as new `528.app.js`. Firefox `web-ext lint`, still ignoring only generated `app.js`, adds `UNSAFE_VAR_ASSIGNMENT` for the upstream sink `doc.body.innerHTML = mathML`, where `mathML` is produced by `temml.renderToString( latex, { displayMode, annotate: true, throwOnError: true } )`; suppressing the warning, adding another ignored file, or folding the chunk into the already ignored app bundle to hide it is prohibited. +- Input provenance and mitigation evidence: the new core Math block calls the warned converter with its user-controlled `latex` attribute, including initial block attributes, while this application can derive block content from arbitrary externally selected page HTML through `parseField → htmlToBlocks → pasteHandler`; untrusted imported provenance therefore cannot be ruled out. Temml defaults to `trust: false`; focused JSDOM probes show `\href{javascript:...}` and `\includegraphics{javascript:...}` are rejected, raw `` becomes annotation text with no dangerous DOM element, and ordinary math renders normally. Those focused checks are a mitigation signal rather than a proof that every untrusted LaTeX input is safe, so accepting the unsuppressed add-on warning would exceed this maintenance child's security-quality boundary. +- Later candidate result: `9.47.0` additionally requires React and ReactDOM `^19.2.4` and cannot form an ordinary lock with the retained React 18 application; `9.48.0`, `9.48.1`, `10.0.0`, and `10.0.1` return to React 18 compatibility but retain the same `latex-to-mathml@1.19.0` sink; `10.1.0` and `10.2.0` retain the same sink and additionally force root Blocks to `15.24.0`. No later stable release removes the warning, improves the candidate audit result, or justifies unrelated React or Blocks migration. +- Build shape and manual risk: exact `9.46.0` Firefox and Chrome production builds succeed but grow `app.js` from approximately 21.2 MiB to exactly 36,281,254 bytes (webpack reports 34.6 MiB) because the newer library adds another Vips payload under the existing targeted split rule. Both targets retain `498.app.js` at 2,341,481 bytes, `300.app.js` at 420,708 bytes, and `717.app.js` at 7,407 bytes while adding `528.app.js` at 193,263 bytes and `98.app.js` at 7,407 bytes. This would materially heighten the already documented extension startup, JavaScript parse, and memory risk even before the add-on warning is resolved. +- Candidate validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds without source or configuration changes. Both plugin archives pass integrity checks and both build targets contain the expected artifacts. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` reports no `FILE_TOO_LARGE`, retains the two known manifest errors and the known data-collection and unsupported-API warnings, and adds only the blocker `UNSAFE_VAR_ASSIGNMENT` described above. Exact version/path assertions, candidate audits, approved-plan-prefix comparison, Markdown wrapping, `git diff --check`, and scope inspection validate the evidence; dependency and generated-configuration changes are reverted rather than suppressing or accepting the warning. +- Retained-state validation: after reverting the candidate, Node `v24.18.0` with npm `11.16.0` completed another clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and fresh Firefox and Chrome production builds; both retained builds restore the known approximately 21.2 MiB application bundle and `498.app.js`, `300.app.js`, and `717.app.js` chunk shape with valid plugin archives. Retained Firefox lint ignores only `app.js` and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`, with no `UNSAFE_VAR_ASSIGNMENT` or `FILE_TOO_LARGE`. npm audit returned the retained 113 effects (9 low, 17 moderate, and 87 high) and 61 unique GHSAs. Exact lock inspection confirms root block-library `9.27.0`, root Blocks `15.22.0`, nested affected runtime `7.25.7`, nested affected library UUID `9.0.1`, and no Showdown. The approved-plan prefix retains SHA-256 `6c29481eab5ef6c57aec974295193492861bc7efeba1bd612e45c94d10b1bfaa`, all 124 baseline rows remain present, Markdown wrapping and `git diff --check` pass, and the final worktree diff contains only `plan.md`. From fe6923645763af22b2d20d82e0962104d2be4a1a Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 06:05:17 +0400 Subject: [PATCH 21/40] docs(security): link block library child PR - replace temporary branch references with pull request 209 - preserve the reviewed blocker evidence and retained-state results --- plan.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/plan.md b/plan.md index 784b1da6..245f20eb 100644 --- a/plan.md +++ b/plan.md @@ -223,9 +223,9 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | BLK path removed; affected WPS and `@types/wordpress__blocks` paths remain | | 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable Showdown dependency absent globally | | 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + [#204](https://github.com/WordPress/try-wordpress/pull/204) | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | -| 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + `agent/maintenance-010-wordpress-block-library` | root Blocks path patched; the block-library path is blocked because the first candidate that patches it introduces an unsuppressed Firefox add-on security warning, while affected WPS, `@types/wordpress__blocks`, and shared Components paths also remain | +| 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + [#209](https://github.com/WordPress/try-wordpress/pull/209) | root Blocks path patched; the block-library path is blocked because the first candidate that patches it introduces an unsuppressed Firefox add-on security warning, while affected WPS, `@types/wordpress__blocks`, and shared Components paths also remain | | 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | -| 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + `agent/maintenance-010-wordpress-block-library` | root Blocks path patched; the remaining `@wordpress/block-library@9.27.0` path is blocked because every complete fixing candidate introduces an unsuppressed Firefox add-on security warning | +| 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + [#209](https://github.com/WordPress/try-wordpress/pull/209) | root Blocks path patched; the remaining `@wordpress/block-library@9.27.0` path is blocked because every complete fixing candidate introduces an unsuppressed Firefox add-on security warning | | 190 | GHSA-qx2v-qp2m-jg93 | medium | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.10` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | | 193 | GHSA-337j-9hxr-rhxg | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; `react-router-dom@7.18.x` removes this row but adds a current applicable high-severity advisory | | 194 | GHSA-wrjc-x8rr-h8h6 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `7.18.0` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; `react-router-dom@7.18.x` removes this row but adds a current applicable high-severity advisory | @@ -429,9 +429,9 @@ Status: blocked after complete candidate analysis; validated and merged into the - Compatibility and manual risk: no compatibility change or new manual risk is introduced because no dependency, webpack configuration, source, or output behavior changes. The retained production builds continue to create `plugin.zip` from the complete copied plugin directory for both browser targets. - Retained-state validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. Both builds retain only the known Playground dynamic-request and asset-size warnings, copy all expected artifacts, and produce valid plugin archives. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` ignores only `app.js`, reports no `FILE_TOO_LARGE`, and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus the two known warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`. Final npm audit, exact `npm ls` and `npm explain` paths, isolated candidate audits, approved-plan-prefix comparison, Markdown wrapping, `git diff --check`, and status inspection confirm the documentation-only scope and blocker evidence. -### Child Execution Record: `agent/maintenance-010-wordpress-block-library` +### Child Execution Record: [#209](https://github.com/WordPress/try-wordpress/pull/209) -Status: blocked after complete candidate analysis; validated locally in documentation-only child branch `agent/maintenance-010-wordpress-block-library`, which retains its dependency, lockfile, webpack configuration, application source, and generated-build configuration state. +Status: blocked after complete candidate analysis; validated locally in documentation-only child pull request [#209](https://github.com/WordPress/try-wordpress/pull/209), which retains its dependency, lockfile, webpack configuration, application source, and generated-build configuration state. - Retained dependency state: root `@wordpress/block-library` remains at declared range `^9.27.0` and locked version `9.27.0`, root `@wordpress/blocks` remains at declared range `^15.22.0` and locked version `15.22.0`, and the library retains affected nested `@babel/runtime@7.25.7` and `uuid@9.0.1`; Showdown remains absent. No package, lockfile, application source, webpack configuration, license metadata, override, downgrade, dismissal, or unrelated dependency change is retained. - Complete stable-release inventory: npm registry manifests were examined for all 38 stable `@wordpress/block-library` releases newer than `9.27.0` through current `10.2.0`: `9.28.0`, `9.29.0`, `9.30.0`, `9.31.0`, `9.32.0`, `9.33.0`, `9.33.1`, `9.33.2`, `9.33.3`, `9.33.4`, `9.33.5`, `9.33.6`, `9.33.7`, `9.33.8`, `9.33.9`, `9.33.10`, `9.34.0`, `9.35.0`, `9.36.0`, `9.37.0`, `9.38.0`, `9.39.0`, `9.40.0`, `9.40.1`, `9.40.2`, `9.41.0`, `9.42.0`, `9.43.0`, `9.44.0`, `9.45.0`, `9.46.0`, `9.47.0`, `9.48.0`, `9.48.1`, `10.0.0`, `10.0.1`, `10.1.0`, and `10.2.0`. From 1ea9ca290c6cc0f2f9c987b7e50e6e41eb6264c1 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 06:51:49 +0400 Subject: [PATCH 22/40] fix(deps): replace obsolete WordPress block types - remove the deprecated DefinitelyTyped root and declare runtime Components explicitly - select the first patched Components and YAML dependency boundaries - record audit, build, and rejected-candidate evidence --- package-lock.json | 2013 ++++++--------------------------------------- package.json | 2 +- plan.md | 21 +- 3 files changed, 249 insertions(+), 1787 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7ce3e7eb..f2544bb7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,6 +7,7 @@ "dependencies": { "@wordpress/block-library": "^9.27.0", "@wordpress/blocks": "^15.22.0", + "@wordpress/components": "^33.1.0", "@wp-playground/client": "^3.1.38", "react": "^18.3.1", "react-dom": "^18.3.1", @@ -20,7 +21,6 @@ "@types/react": "^18.3.12", "@types/react-dom": "^18.3.1", "@types/wordpress__block-library": "^2.6.3", - "@types/wordpress__blocks": "^12.5.14", "@wordpress/scripts": "^30.7.0", "ajv": "^8.17.1", "concurrently": "^9.1.0", @@ -62,29 +62,21 @@ "@ariakit/utils": "0.1.5" } }, - "node_modules/@ariakit/core": { - "version": "0.3.11", - "resolved": "https://registry.npmjs.org/@ariakit/core/-/core-0.3.11.tgz", - "integrity": "sha512-+MnOeqnA4FLI/7vqsZLbZQHHN4ofd9kvkNjz44fNi0gqmD+ZbMWiDkFAvZII75dYnxYw5ZPpWjA4waK22VBWig==", - "dev": true, - "license": "MIT" - }, "node_modules/@ariakit/react": { - "version": "0.3.14", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.3.14.tgz", - "integrity": "sha512-h71BPMZ2eW+E2ESbdYxSAEMR1DozYzd5eHE5IOzGd9Egi5u7EZxqmuW4CXVXZ1Y6vbaDMV3SudgPh7iHS/ArFw==", - "dev": true, + "version": "0.4.35", + "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", + "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", "license": "MIT", "dependencies": { - "@ariakit/react-core": "0.3.14" + "@ariakit/react-components": "0.3.4" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/ariakit" }, "peerDependencies": { - "react": "^17.0.0 || ^18.0.0", - "react-dom": "^17.0.0 || ^18.0.0" + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, "node_modules/@ariakit/react-components": { @@ -105,22 +97,6 @@ "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" } }, - "node_modules/@ariakit/react-core": { - "version": "0.3.14", - "resolved": "https://registry.npmjs.org/@ariakit/react-core/-/react-core-0.3.14.tgz", - "integrity": "sha512-16Qj6kDPglpdWtU5roY9q+G66naOjauTY5HvUIaL2aLY0187ATaRrABIKoMMzTtJyhvsud4jFlzivz+/zCQ8yw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@ariakit/core": "0.3.11", - "@floating-ui/dom": "^1.0.0", - "use-sync-external-store": "^1.2.0" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0", - "react-dom": "^17.0.0 || ^18.0.0" - } - }, "node_modules/@ariakit/react-store": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/@ariakit/react-store/-/react-store-0.1.8.tgz", @@ -2120,7 +2096,7 @@ "version": "3.0.5", "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz", "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==", - "devOptional": true, + "dev": true, "funding": [ { "type": "github", @@ -2143,7 +2119,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz", "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==", - "devOptional": true, + "dev": true, "funding": [ { "type": "github", @@ -2187,7 +2163,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz", "integrity": "sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==", - "dev": true, + "devOptional": true, "license": "CC0-1.0", "peer": true, "engines": { @@ -2279,7 +2255,7 @@ "version": "4.2.1", "resolved": "https://registry.npmjs.org/@dual-bundle/import-meta-resolve/-/import-meta-resolve-4.2.1.tgz", "integrity": "sha512-id+7YRUgoUX6CgV0DtuhirQWodeeA7Lf4i2x71JS/vtA5pRb/hIGWlw+G6MeXvsM+MXrz0VAydTGElX1rAfgPg==", - "devOptional": true, + "dev": true, "license": "MIT", "funding": { "type": "github", @@ -5132,10 +5108,9 @@ } }, "node_modules/@types/gradient-parser": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-0.1.3.tgz", - "integrity": "sha512-XDbrTSBlQV9nxE1GiDL3FaOPy4G/KaJkhDutBX48Kg8CYZMBARyyDFGCWfWJn4pobmInmwud1xxH7VJMAr0CKQ==", - "dev": true, + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", + "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", "license": "MIT" }, "node_modules/@types/har-format": { @@ -5239,7 +5214,7 @@ "version": "1.2.5", "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/@types/mousetrap": { @@ -5272,7 +5247,7 @@ "version": "2.4.4", "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/@types/parse-json": { @@ -5479,284 +5454,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@types/wordpress__blocks": { - "version": "12.5.14", - "resolved": "https://registry.npmjs.org/@types/wordpress__blocks/-/wordpress__blocks-12.5.14.tgz", - "integrity": "sha512-eXEnCRKYu+39KEJ/OYpoYxWTATxI+eJHd+meMGZ14hYydFtxA0Y8M7zJT8D8f4klBo8wINLvP7zrO8vYrjWjPQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/react": "*", - "@types/wordpress__shortcode": "*", - "@wordpress/components": "^27.2.0", - "@wordpress/data": "^9.13.0", - "@wordpress/element": "^5.0.0" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/@wordpress/compose": { - "version": "6.35.0", - "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-6.35.0.tgz", - "integrity": "sha512-PfruhCxxxJokDQHc2YBgerEiHV7BIxQk9g5vU4/f9X/0PBQWUTuxOzSFcAba03vnjfAgtPTSMp50T50hcJwXfA==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@types/mousetrap": "^1.6.8", - "@wordpress/deprecated": "^3.58.0", - "@wordpress/dom": "^3.58.0", - "@wordpress/element": "^5.35.0", - "@wordpress/is-shallow-equal": "^4.58.0", - "@wordpress/keycodes": "^3.58.0", - "@wordpress/priority-queue": "^2.58.0", - "@wordpress/undo-manager": "^0.18.0", - "change-case": "^4.1.2", - "clipboard": "^2.0.11", - "mousetrap": "^1.6.5", - "use-memo-one": "^1.1.1" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "react": "^18.0.0" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/@wordpress/data": { - "version": "9.28.0", - "resolved": "https://registry.npmjs.org/@wordpress/data/-/data-9.28.0.tgz", - "integrity": "sha512-EDPpZdkngdoW7EMzPpGj0BmNcr7syJO67pgTODtN/4XFIdYL2RKzFyn3nlLBKhX17UsE/ALq9WdijacH4QJ9qw==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/compose": "^6.35.0", - "@wordpress/deprecated": "^3.58.0", - "@wordpress/element": "^5.35.0", - "@wordpress/is-shallow-equal": "^4.58.0", - "@wordpress/priority-queue": "^2.58.0", - "@wordpress/private-apis": "^0.40.0", - "@wordpress/redux-routine": "^4.58.0", - "deepmerge": "^4.3.0", - "equivalent-key-map": "^0.2.2", - "is-plain-object": "^5.0.0", - "is-promise": "^4.0.0", - "redux": "^4.1.2", - "rememo": "^4.0.2", - "use-memo-one": "^1.1.1" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "react": "^18.0.0" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/@wordpress/deprecated": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/deprecated/-/deprecated-3.58.0.tgz", - "integrity": "sha512-knweE2lLEUxWRr6A48sHiO0ww5pPybGe2NVIZVq/y7EaYCMdpy6gYA0ZdVqMKZvtxKKqicJfwigcn+hinsTvUQ==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/hooks": "^3.58.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/@wordpress/dom": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/dom/-/dom-3.58.0.tgz", - "integrity": "sha512-t3xSr/nqekj2qwUGRAqSeGx6116JOBxzI+VBiUfZrjGEnuyKdLelXDEeYtcwbb7etMkj/6F60/NB7GTl5IwizQ==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/deprecated": "^3.58.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/@wordpress/element": { - "version": "5.35.0", - "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-5.35.0.tgz", - "integrity": "sha512-puswpGcIdS+0A2g28uHriMkZqqRCmzFczue5Tk99VNtzBdehyk7Ae+DZ4xw5yT6GqYai8NTqv6MRwCB78uh5Mw==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@types/react": "^18.2.79", - "@types/react-dom": "^18.2.25", - "@wordpress/escape-html": "^2.58.0", - "change-case": "^4.1.2", - "is-plain-object": "^5.0.0", - "react": "^18.3.0", - "react-dom": "^18.3.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/@wordpress/escape-html": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-2.58.0.tgz", - "integrity": "sha512-9YJXMNfzkrhHEVP1jFEhgijbZqW8Mt3NHIMZjIQoWtBf7QE86umpYpGGBXzYC0YlpGTRGzZTBwYaqFKxjeaSgA==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/@wordpress/hooks": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-3.58.0.tgz", - "integrity": "sha512-9LB0ZHnZRQlORttux9t/xbAskF+dk2ujqzPGsVzc92mSKpQP3K2a5Wy74fUnInguB1vLUNHT6nrNdkVom5qX1Q==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/@wordpress/i18n": { - "version": "4.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/i18n/-/i18n-4.58.0.tgz", - "integrity": "sha512-VfvS3BWv/RDjRKD6PscIcvYfWKnGJcI/DEqyDgUMhxCM6NRwoL478CsUKTiGJIymeyRodNRfprdcF086DpGKYw==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/hooks": "^3.58.0", - "gettext-parser": "^1.3.1", - "memize": "^2.1.0", - "sprintf-js": "^1.1.1", - "tannin": "^1.2.0" - }, - "bin": { - "pot-to-php": "tools/pot-to-php.js" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/@wordpress/is-shallow-equal": { - "version": "4.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-4.58.0.tgz", - "integrity": "sha512-NH2lbXo/6ix1t4Zu9UBXpXNtoLwSaYmIRSyDH34XNb0ic8a7yjEOhYWVW3LTfSCv9dJVyxlM5TJPtL85q7LdeQ==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/@wordpress/keycodes": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/keycodes/-/keycodes-3.58.0.tgz", - "integrity": "sha512-Q/LRKpx8ndzuHlkxSQ2BD+NTYYKQPIneNNMng8hTAfyU7RFwXpqj06HpeOFGh4XIdPKCs/8hmucoLJRmmLmZJA==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/i18n": "^4.58.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/@wordpress/priority-queue": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/priority-queue/-/priority-queue-2.58.0.tgz", - "integrity": "sha512-W+qCS8HJWsXG8gE6yK/H/IObowcghPrQMM3cQHtfd/U05yFNU1Bd/fbj3AO1fVRztktS47lIpi9m3ll1evPEHA==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "requestidlecallback": "^0.3.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/@wordpress/private-apis": { - "version": "0.40.0", - "resolved": "https://registry.npmjs.org/@wordpress/private-apis/-/private-apis-0.40.0.tgz", - "integrity": "sha512-ZX/9Y8eA3C3K6LOj32bHFj+9tNV819CBd8+chqMmmlvQRcTngiuXbMbnSdZnnAr1gLQgNpH9PJ60dIwJnGSEtQ==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/@wordpress/redux-routine": { - "version": "4.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/redux-routine/-/redux-routine-4.58.0.tgz", - "integrity": "sha512-r0mMWFeJr93yPy2uY/M5+gdUUYj0Zu8+21OFFb5hyQ0z7UHIa3IdgQxzCaTbV1LDA1ZYJrjHeCnA6s4gNHjA2Q==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "is-plain-object": "^5.0.0", - "is-promise": "^4.0.0", - "rungen": "^0.3.2" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "redux": ">=4" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/@wordpress/undo-manager": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/@wordpress/undo-manager/-/undo-manager-0.18.0.tgz", - "integrity": "sha512-upbzPEToa095XG+2JXLHaolF1LfXEMFS0lNMYV37myoUS+eZ7/tl9Gx+yU2+OqWy57TMwx33NlWUX/n+ynzPRw==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/is-shallow-equal": "^4.58.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@types/wordpress__blocks/node_modules/sprintf-js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", - "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/@types/wordpress__shortcode": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/@types/wordpress__shortcode/-/wordpress__shortcode-2.3.6.tgz", - "integrity": "sha512-H8BVov7QWyLLoxCaI9QyZVC4zTi1mFkZ+eEKiXBCFlaJ0XV8UVfQk+cAetqD5mWOeWv2d4b8uzzyn0TTQ/ep2g==", - "dev": true, - "license": "MIT" - }, "node_modules/@types/ws": { "version": "8.5.12", "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.12.tgz", @@ -6436,29 +6133,6 @@ } } }, - "node_modules/@wordpress/block-editor/node_modules/@ariakit/react": { - "version": "0.4.35", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", - "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", - "license": "MIT", - "dependencies": { - "@ariakit/react-components": "0.3.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ariakit" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/@wordpress/block-editor/node_modules/@types/gradient-parser": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", - "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", - "license": "MIT" - }, "node_modules/@wordpress/block-editor/node_modules/@wordpress/base-styles": { "version": "10.2.0", "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-10.2.0.tgz", @@ -6621,21 +6295,6 @@ } } }, - "node_modules/@wordpress/block-editor/node_modules/@wordpress/date": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", - "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/deprecated": "^4.51.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - } - }, "node_modules/@wordpress/block-editor/node_modules/@wordpress/element": { "version": "8.3.0", "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", @@ -6680,29 +6339,6 @@ } } }, - "node_modules/@wordpress/block-editor/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/block-editor/node_modules/date-fns": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.4.0.tgz", @@ -6808,23 +6444,6 @@ "react-dom": "^18.0.0" } }, - "node_modules/@wordpress/block-library/node_modules/@ariakit/react": { - "version": "0.4.35", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", - "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", - "license": "MIT", - "dependencies": { - "@ariakit/react-components": "0.3.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ariakit" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, "node_modules/@wordpress/block-library/node_modules/@babel/runtime": { "version": "7.25.7", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", @@ -6850,12 +6469,6 @@ "react-dom": ">=16.8.0" } }, - "node_modules/@wordpress/block-library/node_modules/@types/gradient-parser": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", - "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", - "license": "MIT" - }, "node_modules/@wordpress/block-library/node_modules/@wordpress/base-styles": { "version": "6.20.0", "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-6.20.0.tgz", @@ -6947,21 +6560,6 @@ "react": "^18.0.0" } }, - "node_modules/@wordpress/block-library/node_modules/@wordpress/date": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", - "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/deprecated": "^4.51.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - } - }, "node_modules/@wordpress/block-library/node_modules/@wordpress/icons": { "version": "10.32.0", "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-10.32.0.tgz", @@ -6977,57 +6575,6 @@ "npm": ">=8.19.2" } }, - "node_modules/@wordpress/block-library/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/@wordpress/block-library/node_modules/@wordpress/primitives/node_modules/@wordpress/element": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", - "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@types/react": "^18.3.27", - "@types/react-dom": "^18.3.1", - "@wordpress/deprecated": "^4.51.0", - "@wordpress/escape-html": "^3.51.0", - "change-case": "^4.1.2", - "is-plain-object": "^5.0.0", - "react": "^18.3.1", - "react-dom": "^18.3.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - } - }, - "node_modules/@wordpress/block-library/node_modules/gradient-parser": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-1.1.1.tgz", - "integrity": "sha512-Hu0YfNU+38EsTmnUfLXUKFMXq9yz7htGYpF4x+dlbBhUCvIvzLt0yVLT/gJRmvLKFJdqNFrz4eKkIUjIXSr7Tw==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@wordpress/block-library/node_modules/is-plain-object": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", @@ -7195,29 +6742,6 @@ "react-dom": "^18 || ^19" } }, - "node_modules/@wordpress/commands/node_modules/@ariakit/react": { - "version": "0.4.35", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", - "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", - "license": "MIT", - "dependencies": { - "@ariakit/react-components": "0.3.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ariakit" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/@wordpress/commands/node_modules/@types/gradient-parser": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", - "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", - "license": "MIT" - }, "node_modules/@wordpress/commands/node_modules/@wordpress/base-styles": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", @@ -7333,29 +6857,6 @@ } } }, - "node_modules/@wordpress/commands/node_modules/@wordpress/components/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/commands/node_modules/@wordpress/components/node_modules/@wordpress/ui": { "version": "0.18.0", "resolved": "https://registry.npmjs.org/@wordpress/ui/-/ui-0.18.0.tgz", @@ -7474,21 +6975,6 @@ } } }, - "node_modules/@wordpress/commands/node_modules/@wordpress/date": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", - "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/deprecated": "^4.51.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - } - }, "node_modules/@wordpress/commands/node_modules/@wordpress/element": { "version": "8.3.0", "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", @@ -7533,29 +7019,6 @@ } } }, - "node_modules/@wordpress/commands/node_modules/@wordpress/icons/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/commands/node_modules/@wordpress/style-runtime": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", @@ -7613,389 +7076,118 @@ } }, "node_modules/@wordpress/components": { - "version": "27.6.0", - "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-27.6.0.tgz", - "integrity": "sha512-f+fXENkgrPs5GLo2yu9fEAdVX0KriEatRcjDUyw0+DbNbJR62sCdDtGdhJRW4jPUUoUowxaGO0y4+jvQWxnbyg==", - "dev": true, + "version": "33.1.0", + "resolved": "https://registry.npmjs.org/@wordpress/components/-/components-33.1.0.tgz", + "integrity": "sha512-5nFqe2pk7ePIhJhz+nDNS8r1az5hIJrUycuYJzmL3KL9hYgDknAzJDHb6IUNlVcNDPgLUuxzC780YlVG5Bi0LQ==", "license": "GPL-2.0-or-later", "dependencies": { - "@ariakit/react": "^0.3.12", - "@babel/runtime": "^7.16.0", - "@emotion/cache": "^11.7.1", - "@emotion/css": "^11.7.1", - "@emotion/react": "^11.7.1", - "@emotion/serialize": "^1.0.2", - "@emotion/styled": "^11.6.0", - "@emotion/utils": "^1.0.0", - "@floating-ui/react-dom": "^2.0.8", - "@types/gradient-parser": "0.1.3", + "@ariakit/react": "^0.4.22", + "@date-fns/utc": "^2.1.1", + "@emotion/cache": "^11.14.0", + "@emotion/css": "^11.13.5", + "@emotion/react": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/styled": "^11.14.1", + "@emotion/utils": "^1.4.2", + "@floating-ui/react-dom": "2.0.8", + "@types/gradient-parser": "1.1.0", "@types/highlight-words-core": "1.2.1", + "@types/react": "^18.3.27", "@use-gesture/react": "^10.3.1", - "@wordpress/a11y": "^3.58.0", - "@wordpress/compose": "^6.35.0", - "@wordpress/date": "^4.58.0", - "@wordpress/deprecated": "^3.58.0", - "@wordpress/dom": "^3.58.0", - "@wordpress/element": "^5.35.0", - "@wordpress/escape-html": "^2.58.0", - "@wordpress/hooks": "^3.58.0", - "@wordpress/html-entities": "^3.58.0", - "@wordpress/i18n": "^4.58.0", - "@wordpress/icons": "^9.49.0", - "@wordpress/is-shallow-equal": "^4.58.0", - "@wordpress/keycodes": "^3.58.0", - "@wordpress/primitives": "^3.56.0", - "@wordpress/private-apis": "^0.40.0", - "@wordpress/rich-text": "^6.35.0", - "@wordpress/warning": "^2.58.0", + "@wordpress/a11y": "^4.46.0", + "@wordpress/base-styles": "^8.0.0", + "@wordpress/compose": "^7.46.0", + "@wordpress/date": "^5.46.0", + "@wordpress/deprecated": "^4.46.0", + "@wordpress/dom": "^4.46.0", + "@wordpress/element": "^6.46.0", + "@wordpress/escape-html": "^3.46.0", + "@wordpress/hooks": "^4.46.0", + "@wordpress/html-entities": "^4.46.0", + "@wordpress/i18n": "^6.19.0", + "@wordpress/icons": "^13.1.0", + "@wordpress/is-shallow-equal": "^5.46.0", + "@wordpress/keycodes": "^4.46.0", + "@wordpress/primitives": "^4.46.0", + "@wordpress/private-apis": "^1.46.0", + "@wordpress/rich-text": "^7.46.0", + "@wordpress/style-runtime": "^0.2.0", + "@wordpress/warning": "^3.46.0", "change-case": "^4.1.2", "clsx": "^2.1.1", "colord": "^2.7.0", - "date-fns": "^3.6.0", + "csstype": "^3.2.3", + "date-fns": "^4.1.0", "deepmerge": "^4.3.0", - "downshift": "^6.0.15", "fast-deep-equal": "^3.1.3", - "framer-motion": "^11.1.9", - "gradient-parser": "^0.1.5", + "framer-motion": "^11.15.0", + "gradient-parser": "1.1.1", "highlight-words-core": "^1.2.2", "is-plain-object": "^5.0.0", "memize": "^2.1.0", "path-to-regexp": "^6.2.1", "re-resizable": "^6.4.0", - "react-colorful": "^5.3.1", + "react-colorful": "^5.6.1", + "react-day-picker": "^9.7.0", "remove-accents": "^0.5.0", - "use-lilius": "^2.0.5", - "uuid": "^9.0.1" + "uuid": "^14.0.0" }, "engines": { - "node": ">=12" + "node": ">=18.12.0", + "npm": ">=8.19.2" }, "peerDependencies": { "react": "^18.0.0", "react-dom": "^18.0.0" } }, - "node_modules/@wordpress/components/node_modules/@wordpress/a11y": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/a11y/-/a11y-3.58.0.tgz", - "integrity": "sha512-7NnJKl4+pxP6kV/jvXaJcZZCGzW7zaj6YeMnyjUd96cH4ta1ykBIveWgejerFOGsbK+88FnStcxSFj+dbDXs/w==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/dom-ready": "^3.58.0", - "@wordpress/i18n": "^4.58.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/components/node_modules/@wordpress/compose": { - "version": "6.35.0", - "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-6.35.0.tgz", - "integrity": "sha512-PfruhCxxxJokDQHc2YBgerEiHV7BIxQk9g5vU4/f9X/0PBQWUTuxOzSFcAba03vnjfAgtPTSMp50T50hcJwXfA==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@types/mousetrap": "^1.6.8", - "@wordpress/deprecated": "^3.58.0", - "@wordpress/dom": "^3.58.0", - "@wordpress/element": "^5.35.0", - "@wordpress/is-shallow-equal": "^4.58.0", - "@wordpress/keycodes": "^3.58.0", - "@wordpress/priority-queue": "^2.58.0", - "@wordpress/undo-manager": "^0.18.0", - "change-case": "^4.1.2", - "clipboard": "^2.0.11", - "mousetrap": "^1.6.5", - "use-memo-one": "^1.1.1" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "react": "^18.0.0" - } - }, - "node_modules/@wordpress/components/node_modules/@wordpress/data": { - "version": "9.28.0", - "resolved": "https://registry.npmjs.org/@wordpress/data/-/data-9.28.0.tgz", - "integrity": "sha512-EDPpZdkngdoW7EMzPpGj0BmNcr7syJO67pgTODtN/4XFIdYL2RKzFyn3nlLBKhX17UsE/ALq9WdijacH4QJ9qw==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/compose": "^6.35.0", - "@wordpress/deprecated": "^3.58.0", - "@wordpress/element": "^5.35.0", - "@wordpress/is-shallow-equal": "^4.58.0", - "@wordpress/priority-queue": "^2.58.0", - "@wordpress/private-apis": "^0.40.0", - "@wordpress/redux-routine": "^4.58.0", - "deepmerge": "^4.3.0", - "equivalent-key-map": "^0.2.2", - "is-plain-object": "^5.0.0", - "is-promise": "^4.0.0", - "redux": "^4.1.2", - "rememo": "^4.0.2", - "use-memo-one": "^1.1.1" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "react": "^18.0.0" - } - }, - "node_modules/@wordpress/components/node_modules/@wordpress/deprecated": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/deprecated/-/deprecated-3.58.0.tgz", - "integrity": "sha512-knweE2lLEUxWRr6A48sHiO0ww5pPybGe2NVIZVq/y7EaYCMdpy6gYA0ZdVqMKZvtxKKqicJfwigcn+hinsTvUQ==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/hooks": "^3.58.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/components/node_modules/@wordpress/dom": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/dom/-/dom-3.58.0.tgz", - "integrity": "sha512-t3xSr/nqekj2qwUGRAqSeGx6116JOBxzI+VBiUfZrjGEnuyKdLelXDEeYtcwbb7etMkj/6F60/NB7GTl5IwizQ==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/deprecated": "^3.58.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/components/node_modules/@wordpress/dom-ready": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/dom-ready/-/dom-ready-3.58.0.tgz", - "integrity": "sha512-sDgRPjNBToRKgYrpwvMRv2Yc7/17+sp8hm/rRnbubwb+d/DbGkK4Tc/r4sNLSZCqUAtcBXq9uk1lzvhge3QUSg==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/components/node_modules/@wordpress/element": { - "version": "5.35.0", - "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-5.35.0.tgz", - "integrity": "sha512-puswpGcIdS+0A2g28uHriMkZqqRCmzFczue5Tk99VNtzBdehyk7Ae+DZ4xw5yT6GqYai8NTqv6MRwCB78uh5Mw==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@types/react": "^18.2.79", - "@types/react-dom": "^18.2.25", - "@wordpress/escape-html": "^2.58.0", - "change-case": "^4.1.2", - "is-plain-object": "^5.0.0", - "react": "^18.3.0", - "react-dom": "^18.3.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/components/node_modules/@wordpress/escape-html": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-2.58.0.tgz", - "integrity": "sha512-9YJXMNfzkrhHEVP1jFEhgijbZqW8Mt3NHIMZjIQoWtBf7QE86umpYpGGBXzYC0YlpGTRGzZTBwYaqFKxjeaSgA==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/components/node_modules/@wordpress/hooks": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-3.58.0.tgz", - "integrity": "sha512-9LB0ZHnZRQlORttux9t/xbAskF+dk2ujqzPGsVzc92mSKpQP3K2a5Wy74fUnInguB1vLUNHT6nrNdkVom5qX1Q==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/components/node_modules/@wordpress/html-entities": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/html-entities/-/html-entities-3.58.0.tgz", - "integrity": "sha512-FU7b6QZdwTCuLKq6wCl0IZqqOMcMRxMcekVVytzTse7hYk9dvL1qQL/U4eQ/CNyKqiT9u7fb5NKTQILOzoolVQ==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/components/node_modules/@wordpress/i18n": { - "version": "4.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/i18n/-/i18n-4.58.0.tgz", - "integrity": "sha512-VfvS3BWv/RDjRKD6PscIcvYfWKnGJcI/DEqyDgUMhxCM6NRwoL478CsUKTiGJIymeyRodNRfprdcF086DpGKYw==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/hooks": "^3.58.0", - "gettext-parser": "^1.3.1", - "memize": "^2.1.0", - "sprintf-js": "^1.1.1", - "tannin": "^1.2.0" - }, - "bin": { - "pot-to-php": "tools/pot-to-php.js" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/components/node_modules/@wordpress/is-shallow-equal": { - "version": "4.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/is-shallow-equal/-/is-shallow-equal-4.58.0.tgz", - "integrity": "sha512-NH2lbXo/6ix1t4Zu9UBXpXNtoLwSaYmIRSyDH34XNb0ic8a7yjEOhYWVW3LTfSCv9dJVyxlM5TJPtL85q7LdeQ==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/components/node_modules/@wordpress/keycodes": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/keycodes/-/keycodes-3.58.0.tgz", - "integrity": "sha512-Q/LRKpx8ndzuHlkxSQ2BD+NTYYKQPIneNNMng8hTAfyU7RFwXpqj06HpeOFGh4XIdPKCs/8hmucoLJRmmLmZJA==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/i18n": "^4.58.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/components/node_modules/@wordpress/priority-queue": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/priority-queue/-/priority-queue-2.58.0.tgz", - "integrity": "sha512-W+qCS8HJWsXG8gE6yK/H/IObowcghPrQMM3cQHtfd/U05yFNU1Bd/fbj3AO1fVRztktS47lIpi9m3ll1evPEHA==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "requestidlecallback": "^0.3.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/components/node_modules/@wordpress/private-apis": { - "version": "0.40.0", - "resolved": "https://registry.npmjs.org/@wordpress/private-apis/-/private-apis-0.40.0.tgz", - "integrity": "sha512-ZX/9Y8eA3C3K6LOj32bHFj+9tNV819CBd8+chqMmmlvQRcTngiuXbMbnSdZnnAr1gLQgNpH9PJ60dIwJnGSEtQ==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/components/node_modules/@wordpress/redux-routine": { - "version": "4.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/redux-routine/-/redux-routine-4.58.0.tgz", - "integrity": "sha512-r0mMWFeJr93yPy2uY/M5+gdUUYj0Zu8+21OFFb5hyQ0z7UHIa3IdgQxzCaTbV1LDA1ZYJrjHeCnA6s4gNHjA2Q==", - "dev": true, - "license": "GPL-2.0-or-later", + "node_modules/@wordpress/components/node_modules/@floating-ui/react-dom": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.8.tgz", + "integrity": "sha512-HOdqOt3R3OGeTKidaLvJKcgg75S6tibQ3Tif4eyd91QnIJWr0NLvoXFpJA/j8HqkFSL68GDca9AuyWEHlhyClw==", + "license": "MIT", "dependencies": { - "@babel/runtime": "^7.16.0", - "is-plain-object": "^5.0.0", - "is-promise": "^4.0.0", - "rungen": "^0.3.2" - }, - "engines": { - "node": ">=12" + "@floating-ui/dom": "^1.6.1" }, "peerDependencies": { - "redux": ">=4" + "react": ">=16.8.0", + "react-dom": ">=16.8.0" } }, - "node_modules/@wordpress/components/node_modules/@wordpress/rich-text": { - "version": "6.35.0", - "resolved": "https://registry.npmjs.org/@wordpress/rich-text/-/rich-text-6.35.0.tgz", - "integrity": "sha512-h6/XftSqo9UQZebuNZyLfOVu+ButBLITW/BILsKeJhSpmM19VNdz8UhVGLp+xQPE+/GPCIMJrhhqipISDfc2Ig==", - "dev": true, + "node_modules/@wordpress/components/node_modules/@wordpress/base-styles": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-8.0.0.tgz", + "integrity": "sha512-livtgwnvBm7xbpm/gaBxwtdZm3KCXq210UNsr48WA8TGfi/OfZ4oOzk4Mp4/ZHsq2baaXzhZ0iXjyR7oyaOTsw==", "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/a11y": "^3.58.0", - "@wordpress/compose": "^6.35.0", - "@wordpress/data": "^9.28.0", - "@wordpress/deprecated": "^3.58.0", - "@wordpress/element": "^5.35.0", - "@wordpress/escape-html": "^2.58.0", - "@wordpress/i18n": "^4.58.0", - "@wordpress/keycodes": "^3.58.0", - "memize": "^2.1.0" - }, "engines": { - "node": ">=12" - }, - "peerDependencies": { - "react": "^18.0.0" + "node": ">=18.12.0", + "npm": ">=8.19.2" } }, - "node_modules/@wordpress/components/node_modules/@wordpress/undo-manager": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/@wordpress/undo-manager/-/undo-manager-0.18.0.tgz", - "integrity": "sha512-upbzPEToa095XG+2JXLHaolF1LfXEMFS0lNMYV37myoUS+eZ7/tl9Gx+yU2+OqWy57TMwx33NlWUX/n+ynzPRw==", - "dev": true, + "node_modules/@wordpress/components/node_modules/@wordpress/style-runtime": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.2.0.tgz", + "integrity": "sha512-9pLmilkgWqTvIlrnnXbW7ECfEPvCSYOve7btXgYGgMOzrGs12ijnG+kSGGg0aJhEV8OCzQ/QdVBh4s1zQZ0bLQ==", "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/is-shallow-equal": "^4.58.0" - }, "engines": { - "node": ">=12" + "node": ">=20.10.0", + "npm": ">=10.2.3" } }, - "node_modules/@wordpress/components/node_modules/@wordpress/warning": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-2.58.0.tgz", - "integrity": "sha512-9bZlORhyMY2nbWozeyC5kqJsFzEPP4DCLhGmjtbv+YWGHttUrxUZEfrKdqO+rUODA8rP5zeIly1nCQOUnkw4Lg==", - "dev": true, - "license": "GPL-2.0-or-later", - "engines": { - "node": ">=12" + "node_modules/@wordpress/components/node_modules/date-fns": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.4.0.tgz", + "integrity": "sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" } }, "node_modules/@wordpress/components/node_modules/is-plain-object": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -8005,28 +7197,19 @@ "version": "6.3.0", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", - "dev": true, "license": "MIT" }, - "node_modules/@wordpress/components/node_modules/sprintf-js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", - "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", - "dev": true, - "license": "BSD-3-Clause" - }, "node_modules/@wordpress/components/node_modules/uuid": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", - "dev": true, + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.1.tgz", + "integrity": "sha512-6ZxzVpzDXDa3bJWaHilVayA+BH/1zmxCJoVgvmqJnid/gPoKHxUrS/aC/T6LGQtNHT+XHG9fXPJB4d+IrU30Ew==", "funding": [ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" ], "license": "MIT", "bin": { - "uuid": "dist/bin/uuid" + "uuid": "dist-node/bin/uuid" } }, "node_modules/@wordpress/compose": { @@ -8098,23 +7281,6 @@ } } }, - "node_modules/@wordpress/core-data/node_modules/@ariakit/react": { - "version": "0.4.35", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", - "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", - "license": "MIT", - "dependencies": { - "@ariakit/react-components": "0.3.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ariakit" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, "node_modules/@wordpress/core-data/node_modules/@base-ui/react": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", @@ -8153,12 +7319,6 @@ } } }, - "node_modules/@wordpress/core-data/node_modules/@types/gradient-parser": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", - "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", - "license": "MIT" - }, "node_modules/@wordpress/core-data/node_modules/@wordpress/base-styles": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", @@ -8395,21 +7555,6 @@ } } }, - "node_modules/@wordpress/core-data/node_modules/@wordpress/date": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", - "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/deprecated": "^4.51.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - } - }, "node_modules/@wordpress/core-data/node_modules/@wordpress/element": { "version": "8.3.0", "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", @@ -8454,29 +7599,6 @@ } } }, - "node_modules/@wordpress/core-data/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/core-data/node_modules/@wordpress/style-runtime": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", @@ -8794,23 +7916,6 @@ } } }, - "node_modules/@wordpress/dataviews/node_modules/@ariakit/react": { - "version": "0.4.35", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", - "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", - "license": "MIT", - "dependencies": { - "@ariakit/react-components": "0.3.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ariakit" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, "node_modules/@wordpress/dataviews/node_modules/@base-ui/react": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", @@ -8849,12 +7954,6 @@ } } }, - "node_modules/@wordpress/dataviews/node_modules/@types/gradient-parser": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", - "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", - "license": "MIT" - }, "node_modules/@wordpress/dataviews/node_modules/@wordpress/base-styles": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", @@ -8970,21 +8069,6 @@ } } }, - "node_modules/@wordpress/dataviews/node_modules/@wordpress/date": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", - "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/deprecated": "^4.51.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - } - }, "node_modules/@wordpress/dataviews/node_modules/@wordpress/element": { "version": "8.3.0", "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", @@ -9029,29 +8113,6 @@ } } }, - "node_modules/@wordpress/dataviews/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/dataviews/node_modules/@wordpress/style-runtime": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", @@ -9189,46 +8250,18 @@ } }, "node_modules/@wordpress/date": { - "version": "4.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-4.58.0.tgz", - "integrity": "sha512-yFT7DU0H9W0lsDytMaVMmjho08X1LeBMIQMppxdtKB04Ujx58hVh7gtunOsstUQ7pVg23nE2eLaVfx5JOdjzAw==", - "dev": true, + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", + "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/deprecated": "^3.58.0", + "@wordpress/deprecated": "^4.51.0", "moment": "^2.29.4", "moment-timezone": "^0.5.40" }, "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/date/node_modules/@wordpress/deprecated": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/deprecated/-/deprecated-3.58.0.tgz", - "integrity": "sha512-knweE2lLEUxWRr6A48sHiO0ww5pPybGe2NVIZVq/y7EaYCMdpy6gYA0ZdVqMKZvtxKKqicJfwigcn+hinsTvUQ==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/hooks": "^3.58.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/date/node_modules/@wordpress/hooks": { - "version": "3.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-3.58.0.tgz", - "integrity": "sha512-9LB0ZHnZRQlORttux9t/xbAskF+dk2ujqzPGsVzc92mSKpQP3K2a5Wy74fUnInguB1vLUNHT6nrNdkVom5qX1Q==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0" - }, - "engines": { - "node": ">=12" + "node": ">=18.12.0", + "npm": ">=8.19.2" } }, "node_modules/@wordpress/dependency-extraction-webpack-plugin": { @@ -9586,58 +8619,47 @@ } }, "node_modules/@wordpress/icons": { - "version": "9.49.0", - "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-9.49.0.tgz", - "integrity": "sha512-Z8F+ledkfkcKDuS1c/RkM0dEWdfv2AXs6bCgey89p0atJSscf7qYbMJR9zE5rZ5aqXyFfV0DAFKJEgayNqneNQ==", - "dev": true, + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/icons/-/icons-13.3.0.tgz", + "integrity": "sha512-Y/iE3aeHQ4XkX0fffiTPCUfjT8wNw1I7hDJkKqpaLmkD+C5NKWixRrDVfRnaJqU/MxY8RdyVC/nGng2MLPNH0A==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^5.35.0", - "@wordpress/primitives": "^3.56.0" + "@wordpress/element": "^8.0.0", + "@wordpress/primitives": "^4.48.0", + "change-case": "4.1.2" }, "engines": { - "node": ">=12" + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "react": "^18.0.0" } }, "node_modules/@wordpress/icons/node_modules/@wordpress/element": { - "version": "5.35.0", - "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-5.35.0.tgz", - "integrity": "sha512-puswpGcIdS+0A2g28uHriMkZqqRCmzFczue5Tk99VNtzBdehyk7Ae+DZ4xw5yT6GqYai8NTqv6MRwCB78uh5Mw==", - "dev": true, + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@types/react": "^18.2.79", - "@types/react-dom": "^18.2.25", - "@wordpress/escape-html": "^2.58.0", + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", "change-case": "^4.1.2", "is-plain-object": "^5.0.0", - "react": "^18.3.0", - "react-dom": "^18.3.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/icons/node_modules/@wordpress/escape-html": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-2.58.0.tgz", - "integrity": "sha512-9YJXMNfzkrhHEVP1jFEhgijbZqW8Mt3NHIMZjIQoWtBf7QE86umpYpGGBXzYC0YlpGTRGzZTBwYaqFKxjeaSgA==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0" + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "engines": { - "node": ">=12" + "node": ">=18.12.0", + "npm": ">=8.19.2" } }, "node_modules/@wordpress/icons/node_modules/is-plain-object": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -9671,23 +8693,6 @@ } } }, - "node_modules/@wordpress/image-cropper/node_modules/@ariakit/react": { - "version": "0.4.35", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", - "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", - "license": "MIT", - "dependencies": { - "@ariakit/react-components": "0.3.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ariakit" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, "node_modules/@wordpress/image-cropper/node_modules/@base-ui/react": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", @@ -9726,12 +8731,6 @@ } } }, - "node_modules/@wordpress/image-cropper/node_modules/@types/gradient-parser": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", - "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", - "license": "MIT" - }, "node_modules/@wordpress/image-cropper/node_modules/@wordpress/base-styles": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", @@ -9847,21 +8846,6 @@ } } }, - "node_modules/@wordpress/image-cropper/node_modules/@wordpress/date": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", - "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/deprecated": "^4.51.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - } - }, "node_modules/@wordpress/image-cropper/node_modules/@wordpress/element": { "version": "8.3.0", "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", @@ -9906,29 +8890,6 @@ } } }, - "node_modules/@wordpress/image-cropper/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/image-cropper/node_modules/@wordpress/style-runtime": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", @@ -10247,12 +9208,6 @@ } } }, - "node_modules/@wordpress/notices/node_modules/@types/gradient-parser": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", - "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", - "license": "MIT" - }, "node_modules/@wordpress/notices/node_modules/@wordpress/base-styles": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", @@ -10335,23 +9290,6 @@ } } }, - "node_modules/@wordpress/notices/node_modules/@wordpress/components/node_modules/@ariakit/react": { - "version": "0.4.35", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", - "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", - "license": "MIT", - "dependencies": { - "@ariakit/react-components": "0.3.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ariakit" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, "node_modules/@wordpress/notices/node_modules/@wordpress/components/node_modules/@wordpress/ui": { "version": "0.18.0", "resolved": "https://registry.npmjs.org/@wordpress/ui/-/ui-0.18.0.tgz", @@ -10503,21 +9441,6 @@ } } }, - "node_modules/@wordpress/notices/node_modules/@wordpress/date": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", - "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/deprecated": "^4.51.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - } - }, "node_modules/@wordpress/notices/node_modules/@wordpress/element": { "version": "8.3.0", "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", @@ -10562,29 +9485,6 @@ } } }, - "node_modules/@wordpress/notices/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/notices/node_modules/@wordpress/style-runtime": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", @@ -10687,29 +9587,6 @@ "react-dom": "^18 || ^19" } }, - "node_modules/@wordpress/patterns/node_modules/@ariakit/react": { - "version": "0.4.35", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", - "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", - "license": "MIT", - "dependencies": { - "@ariakit/react-components": "0.3.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ariakit" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/@wordpress/patterns/node_modules/@types/gradient-parser": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", - "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", - "license": "MIT" - }, "node_modules/@wordpress/patterns/node_modules/@wordpress/base-styles": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", @@ -10946,29 +9823,6 @@ } } }, - "node_modules/@wordpress/patterns/node_modules/@wordpress/components/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/patterns/node_modules/@wordpress/compose": { "version": "8.4.0", "resolved": "https://registry.npmjs.org/@wordpress/compose/-/compose-8.4.0.tgz", @@ -11002,21 +9856,6 @@ } } }, - "node_modules/@wordpress/patterns/node_modules/@wordpress/date": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", - "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/deprecated": "^4.51.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - } - }, "node_modules/@wordpress/patterns/node_modules/@wordpress/element": { "version": "8.3.0", "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", @@ -11061,29 +9900,6 @@ } } }, - "node_modules/@wordpress/patterns/node_modules/@wordpress/icons/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/patterns/node_modules/@wordpress/style-runtime": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", @@ -11167,29 +9983,6 @@ } } }, - "node_modules/@wordpress/patterns/node_modules/@wordpress/ui/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/patterns/node_modules/@wordpress/ui/node_modules/@wordpress/theme": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/@wordpress/theme/-/theme-1.0.0.tgz", @@ -11332,23 +10125,6 @@ } } }, - "node_modules/@wordpress/preferences/node_modules/@ariakit/react": { - "version": "0.4.35", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", - "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", - "license": "MIT", - "dependencies": { - "@ariakit/react-components": "0.3.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ariakit" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, "node_modules/@wordpress/preferences/node_modules/@base-ui/react": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", @@ -11387,12 +10163,6 @@ } } }, - "node_modules/@wordpress/preferences/node_modules/@types/gradient-parser": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", - "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", - "license": "MIT" - }, "node_modules/@wordpress/preferences/node_modules/@wordpress/base-styles": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", @@ -11508,21 +10278,6 @@ } } }, - "node_modules/@wordpress/preferences/node_modules/@wordpress/date": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", - "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/deprecated": "^4.51.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - } - }, "node_modules/@wordpress/preferences/node_modules/@wordpress/element": { "version": "8.3.0", "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", @@ -11567,29 +10322,6 @@ } } }, - "node_modules/@wordpress/preferences/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/preferences/node_modules/@wordpress/style-runtime": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", @@ -11741,58 +10473,52 @@ } }, "node_modules/@wordpress/primitives": { - "version": "3.56.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-3.56.0.tgz", - "integrity": "sha512-NXBq1ODjl6inMWx/l7KCbATcjdoeIOqYeL9i9alqdAfWeKx1EH9PIvKWylIkqZk7erXxCxldiRkuyjTtwjNBxw==", - "dev": true, + "version": "4.51.0", + "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", + "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@wordpress/element": "^5.35.0", + "@wordpress/element": "^8.3.0", "clsx": "^2.1.1" }, "engines": { - "node": ">=12" + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@types/react": "^18 || ^19", + "react": "^18 || ^19" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, "node_modules/@wordpress/primitives/node_modules/@wordpress/element": { - "version": "5.35.0", - "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-5.35.0.tgz", - "integrity": "sha512-puswpGcIdS+0A2g28uHriMkZqqRCmzFczue5Tk99VNtzBdehyk7Ae+DZ4xw5yT6GqYai8NTqv6MRwCB78uh5Mw==", - "dev": true, + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", + "integrity": "sha512-D6Oawyq9RNL01RbpmBkx5dcE2CawU7p2cPxfeNVZkh/zEV5w9pi7HAwvFFqQA1jRT0sV4B62JcAAzuILALcQQw==", "license": "GPL-2.0-or-later", "dependencies": { - "@babel/runtime": "^7.16.0", - "@types/react": "^18.2.79", - "@types/react-dom": "^18.2.25", - "@wordpress/escape-html": "^2.58.0", + "@types/react": "^18.3.27", + "@types/react-dom": "^18.3.1", + "@wordpress/deprecated": "^4.51.0", + "@wordpress/escape-html": "^3.51.0", "change-case": "^4.1.2", "is-plain-object": "^5.0.0", - "react": "^18.3.0", - "react-dom": "^18.3.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@wordpress/primitives/node_modules/@wordpress/escape-html": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-2.58.0.tgz", - "integrity": "sha512-9YJXMNfzkrhHEVP1jFEhgijbZqW8Mt3NHIMZjIQoWtBf7QE86umpYpGGBXzYC0YlpGTRGzZTBwYaqFKxjeaSgA==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@babel/runtime": "^7.16.0" + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "engines": { - "node": ">=12" + "node": ">=18.12.0", + "npm": ">=8.19.2" } }, "node_modules/@wordpress/primitives/node_modules/is-plain-object": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -11877,29 +10603,6 @@ "react-dom": "^18 || ^19" } }, - "node_modules/@wordpress/reusable-blocks/node_modules/@ariakit/react": { - "version": "0.4.35", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", - "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", - "license": "MIT", - "dependencies": { - "@ariakit/react-components": "0.3.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ariakit" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/@wordpress/reusable-blocks/node_modules/@types/gradient-parser": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", - "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", - "license": "MIT" - }, "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/base-styles": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", @@ -12090,29 +10793,6 @@ } } }, - "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/block-editor/node_modules/@wordpress/ui/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/block-editor/node_modules/@wordpress/ui/node_modules/@wordpress/theme": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/@wordpress/theme/-/theme-1.0.0.tgz", @@ -12343,29 +11023,6 @@ } } }, - "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/components/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/components/node_modules/@wordpress/ui": { "version": "0.18.0", "resolved": "https://registry.npmjs.org/@wordpress/ui/-/ui-0.18.0.tgz", @@ -12484,21 +11141,6 @@ } } }, - "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/date": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", - "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/deprecated": "^4.51.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - } - }, "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/element": { "version": "8.3.0", "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", @@ -12543,29 +11185,6 @@ } } }, - "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/icons/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/reusable-blocks/node_modules/@wordpress/style-runtime": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", @@ -13355,23 +11974,6 @@ } } }, - "node_modules/@wordpress/server-side-render/node_modules/@ariakit/react": { - "version": "0.4.35", - "resolved": "https://registry.npmjs.org/@ariakit/react/-/react-0.4.35.tgz", - "integrity": "sha512-f/bCg+kw7YgBM5sElc5eHeACb8OxP54mN5w3igu6vg/JBFstDUBnhMeTWZU6NhOqMPUrZIgJYhry9i0Gl9TrVg==", - "license": "MIT", - "dependencies": { - "@ariakit/react-components": "0.3.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/ariakit" - }, - "peerDependencies": { - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, "node_modules/@wordpress/server-side-render/node_modules/@base-ui/react": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/@base-ui/react/-/react-1.6.0.tgz", @@ -13410,12 +12012,6 @@ } } }, - "node_modules/@wordpress/server-side-render/node_modules/@types/gradient-parser": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@types/gradient-parser/-/gradient-parser-1.1.0.tgz", - "integrity": "sha512-SaEcbgQscHtGJ1QL+ajgDTmmqU2f6T+00jZRcFlVHUW2Asivc84LNUev/UQFyu117AsdyrtI+qpwLvgjJXJxmw==", - "license": "MIT" - }, "node_modules/@wordpress/server-side-render/node_modules/@wordpress/base-styles": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-11.0.0.tgz", @@ -13578,21 +12174,6 @@ } } }, - "node_modules/@wordpress/server-side-render/node_modules/@wordpress/date": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/date/-/date-5.51.0.tgz", - "integrity": "sha512-clBSLSnP799BYGq97i9JX8oqNMAK37omFGig1+OFDxKqHj6iuM4UA9teOBlUFkHuldLc4I4MQcuLi/Ic6AF7fg==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/deprecated": "^4.51.0", - "moment": "^2.29.4", - "moment-timezone": "^0.5.40" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - } - }, "node_modules/@wordpress/server-side-render/node_modules/@wordpress/element": { "version": "8.3.0", "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-8.3.0.tgz", @@ -13637,29 +12218,6 @@ } } }, - "node_modules/@wordpress/server-side-render/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/server-side-render/node_modules/@wordpress/style-runtime": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/@wordpress/style-runtime/-/style-runtime-0.7.0.tgz", @@ -14039,29 +12597,6 @@ } } }, - "node_modules/@wordpress/ui/node_modules/@wordpress/primitives": { - "version": "4.51.0", - "resolved": "https://registry.npmjs.org/@wordpress/primitives/-/primitives-4.51.0.tgz", - "integrity": "sha512-vSg8XYGyBL9+s1h67Fhx8vV718iM9jto8/Tx5tyEdPHXuvY9F8hi3FLZ8k/DQ7qGy+o3ljDsfl1dq9DHP/Fs0A==", - "license": "GPL-2.0-or-later", - "dependencies": { - "@wordpress/element": "^8.3.0", - "clsx": "^2.1.1" - }, - "engines": { - "node": ">=18.12.0", - "npm": ">=8.19.2" - }, - "peerDependencies": { - "@types/react": "^18 || ^19", - "react": "^18 || ^19" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, "node_modules/@wordpress/ui/node_modules/@wordpress/theme": { "version": "0.17.0", "resolved": "https://registry.npmjs.org/@wordpress/theme/-/theme-0.17.0.tgz", @@ -15581,7 +14116,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -15982,7 +14517,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/bare-events": { @@ -16596,7 +15131,7 @@ "version": "6.2.2", "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "camelcase": "^5.3.1", @@ -16614,7 +15149,7 @@ "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=6" @@ -17030,18 +15565,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/clipboard": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.11.tgz", - "integrity": "sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==", - "dev": true, - "license": "MIT", - "dependencies": { - "good-listener": "^1.2.2", - "select": "^1.1.2", - "tiny-emitter": "^2.0.0" - } - }, "node_modules/cliui": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", @@ -17356,13 +15879,6 @@ "dev": true, "license": "MIT" }, - "node_modules/compute-scroll-into-view": { - "version": "1.0.20", - "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-1.0.20.tgz", - "integrity": "sha512-UCB0ioiyj8CRjtrvaceBLqqhZCVP+1B8+NWQhmdsm0VXOJtobBCf1dBQmebCCo34qZmUwZfIH2MZLqNHazrfjg==", - "dev": true, - "license": "MIT" - }, "node_modules/computed-style": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/computed-style/-/computed-style-0.1.4.tgz", @@ -17372,7 +15888,7 @@ "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/concurrently": { @@ -18237,7 +16753,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -18247,7 +16763,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "decamelize": "^1.1.0", @@ -18264,7 +16780,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -18537,13 +17053,6 @@ "node": ">=0.4.0" } }, - "node_modules/delegate": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz", - "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==", - "dev": true, - "license": "MIT" - }, "node_modules/depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", @@ -18769,30 +17278,6 @@ "node": ">=8" } }, - "node_modules/downshift": { - "version": "6.1.12", - "resolved": "https://registry.npmjs.org/downshift/-/downshift-6.1.12.tgz", - "integrity": "sha512-7XB/iaSJVS4T8wGFT3WRXmSF1UlBHAA40DshZtkrIscIN+VC+Lh363skLxFTvJwtNgHxAMDGEHT4xsyQFWL+UA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.14.8", - "compute-scroll-into-view": "^1.0.17", - "prop-types": "^15.7.2", - "react-is": "^17.0.2", - "tslib": "^2.3.0" - }, - "peerDependencies": { - "react": ">=16.12.0" - } - }, - "node_modules/downshift/node_modules/react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", - "dev": true, - "license": "MIT" - }, "node_modules/dunder-proto": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", @@ -18996,7 +17481,7 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "devOptional": true, + "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -20639,7 +19124,7 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "flat-cache": "^3.0.4" @@ -20984,7 +19469,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "locate-path": "^5.0.0", @@ -21063,7 +19548,7 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "flatted": "^3.2.9", @@ -21079,7 +19564,7 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "deprecated": "Rimraf versions prior to v4 are no longer supported", - "dev": true, + "devOptional": true, "license": "ISC", "dependencies": { "glob": "^7.1.3" @@ -21273,7 +19758,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true, + "devOptional": true, "license": "ISC" }, "node_modules/fsevents": { @@ -21591,7 +20076,7 @@ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, + "devOptional": true, "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", @@ -21632,7 +20117,7 @@ "version": "1.1.16", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.16.tgz", "integrity": "sha512-IDw48K2/2kRkg9LdJxurvq3lV3aBgq0REY89duEqFRthjlPdXHKMj7EnQOXVckxzgisinf3nHfrcE2FufFLXMw==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", @@ -21643,7 +20128,7 @@ "version": "3.1.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", - "dev": true, + "devOptional": true, "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" @@ -21762,16 +20247,6 @@ "devOptional": true, "license": "MIT" }, - "node_modules/good-listener": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz", - "integrity": "sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==", - "dev": true, - "license": "MIT", - "dependencies": { - "delegate": "^3.1.2" - } - }, "node_modules/gopd": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", @@ -21793,10 +20268,9 @@ "license": "ISC" }, "node_modules/gradient-parser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-0.1.5.tgz", - "integrity": "sha512-+uPlcVbjrKOnTzvz0MjTj7BfACj8OmxIa1moIjJV7btvhUMSJk0D47RfDCgDrZE3dYMz9Cf5xKJwnrKLjUq0KQ==", - "dev": true, + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/gradient-parser/-/gradient-parser-1.1.1.tgz", + "integrity": "sha512-Hu0YfNU+38EsTmnUfLXUKFMXq9yz7htGYpF4x+dlbBhUCvIvzLt0yVLT/gJRmvLKFJdqNFrz4eKkIUjIXSr7Tw==", "engines": { "node": ">=0.10.0" } @@ -21835,7 +20309,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=6" @@ -21976,7 +20450,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, + "devOptional": true, "license": "ISC", "dependencies": { "lru-cache": "^6.0.0" @@ -21989,7 +20463,7 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, + "devOptional": true, "license": "ISC", "dependencies": { "yallist": "^4.0.0" @@ -22002,7 +20476,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, + "devOptional": true, "license": "ISC" }, "node_modules/hpack.js": { @@ -22424,7 +20898,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", - "dev": true, + "devOptional": true, "license": "MIT", "peer": true, "engines": { @@ -22465,7 +20939,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=8" @@ -22489,7 +20963,7 @@ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", - "dev": true, + "devOptional": true, "license": "ISC", "dependencies": { "once": "^1.3.0", @@ -22500,7 +20974,7 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true, + "devOptional": true, "license": "ISC" }, "node_modules/ini": { @@ -24284,7 +22758,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/json-merge-patch": { @@ -24489,7 +22963,7 @@ "version": "4.5.4", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "json-buffer": "3.0.1" @@ -24532,7 +23006,7 @@ "version": "0.26.0", "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.26.0.tgz", "integrity": "sha512-5FZRzrZzNTBruuurWpvZnvP9pum+fe0HcK8z/ooo+U+Hmp4vtbyp1/QDsqmufirXy4egGzbaH/y2uCZf+6W5Kg==", - "dev": true, + "devOptional": true, "license": "MIT", "peer": true }, @@ -25139,7 +23613,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "p-locate": "^4.1.0" @@ -25380,7 +23854,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=8" @@ -25654,7 +24128,7 @@ "version": "9.0.0", "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz", "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "@types/minimist": "^1.2.0", @@ -25681,7 +24155,7 @@ "version": "0.18.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", - "dev": true, + "devOptional": true, "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" @@ -25694,7 +24168,7 @@ "version": "20.2.9", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, + "devOptional": true, "license": "ISC", "engines": { "node": ">=10" @@ -25820,7 +24294,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=4" @@ -25884,7 +24358,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "arrify": "^1.0.1", @@ -25899,7 +24373,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -25909,7 +24383,7 @@ "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -26281,7 +24755,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, + "devOptional": true, "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^4.0.1", @@ -26297,7 +24771,7 @@ "version": "7.6.3", "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, + "devOptional": true, "license": "ISC", "bin": { "semver": "bin/semver.js" @@ -26677,7 +25151,7 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, + "devOptional": true, "license": "ISC", "dependencies": { "wrappy": "1" @@ -26775,7 +25249,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "p-limit": "^2.2.0" @@ -26788,7 +25262,7 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "p-try": "^2.0.0" @@ -26828,7 +25302,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=6" @@ -27104,7 +25578,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=8" @@ -27114,7 +25588,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -27547,7 +26021,7 @@ "version": "0.2.3", "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", "integrity": "sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/postcss-merge-longhand": { @@ -27929,7 +26403,7 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz", "integrity": "sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==", - "dev": true, + "devOptional": true, "license": "MIT", "peer": true, "engines": { @@ -27974,7 +26448,7 @@ "version": "6.1.2", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "cssesc": "^3.0.0", @@ -28480,7 +26954,7 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=8" @@ -28775,7 +27249,7 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "@types/normalize-package-data": "^2.4.0", @@ -28791,7 +27265,7 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "find-up": "^4.1.0", @@ -28809,7 +27283,7 @@ "version": "0.8.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true, + "devOptional": true, "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" @@ -28819,14 +27293,14 @@ "version": "2.8.9", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true, + "devOptional": true, "license": "ISC" }, "node_modules/read-pkg/node_modules/normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, + "devOptional": true, "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^2.1.4", @@ -28839,7 +27313,7 @@ "version": "5.7.2", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, + "devOptional": true, "license": "ISC", "bin": { "semver": "bin/semver" @@ -28849,7 +27323,7 @@ "version": "0.6.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "dev": true, + "devOptional": true, "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" @@ -28933,7 +27407,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "indent-string": "^4.0.0", @@ -28948,6 +27422,7 @@ "resolved": "https://registry.npmjs.org/redux/-/redux-4.2.1.tgz", "integrity": "sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==", "license": "MIT", + "peer": true, "dependencies": { "@babel/runtime": "^7.9.2" } @@ -29655,13 +28130,6 @@ "url": "https://opencollective.com/webpack" } }, - "node_modules/select": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", - "integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==", - "dev": true, - "license": "MIT" - }, "node_modules/select-hose": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", @@ -30074,7 +28542,7 @@ "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, + "devOptional": true, "license": "ISC" }, "node_modules/simple-html-tokenizer": { @@ -30358,7 +28826,7 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", - "dev": true, + "devOptional": true, "license": "Apache-2.0", "dependencies": { "spdx-expression-parse": "^3.0.0", @@ -30369,7 +28837,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "spdx-exceptions": "^2.1.0", @@ -30380,7 +28848,7 @@ "version": "2.5.0", "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", - "dev": true, + "devOptional": true, "license": "CC-BY-3.0" }, "node_modules/spdx-expression-parse": { @@ -30398,7 +28866,7 @@ "version": "3.0.20", "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.20.tgz", "integrity": "sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==", - "dev": true, + "devOptional": true, "license": "CC0-1.0" }, "node_modules/spdy": { @@ -30754,7 +29222,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "min-indent": "^1.0.0" @@ -30816,7 +29284,7 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", "integrity": "sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==", - "dev": true, + "devOptional": true, "license": "ISC", "peer": true }, @@ -30841,7 +29309,7 @@ "version": "14.16.1", "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.16.1.tgz", "integrity": "sha512-ErlzR/T3hhbV+a925/gbfc3f3Fep9/bnspMiJPorfGEmcBbXdS+oo6LrVtoUZ/w9fqD6o6k7PtUlCOsCRdjX/A==", - "dev": true, + "devOptional": true, "license": "MIT", "peer": true, "dependencies": { @@ -30940,7 +29408,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz", "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==", - "dev": true, + "devOptional": true, "license": "MIT", "peer": true }, @@ -30948,7 +29416,7 @@ "version": "7.1.0", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", - "dev": true, + "devOptional": true, "license": "MIT", "peer": true, "dependencies": { @@ -30966,7 +29434,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", - "dev": true, + "devOptional": true, "license": "MIT", "peer": true, "dependencies": { @@ -30980,7 +29448,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", - "dev": true, + "devOptional": true, "license": "MIT", "peer": true, "dependencies": { @@ -30996,7 +29464,7 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "dev": true, + "devOptional": true, "license": "MIT", "peer": true, "engines": { @@ -31007,7 +29475,7 @@ "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, + "devOptional": true, "license": "MIT", "peer": true, "engines": { @@ -31037,7 +29505,7 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", - "dev": true, + "devOptional": true, "license": "MIT", "peer": true, "dependencies": { @@ -31497,13 +29965,6 @@ "dev": true, "license": "MIT" }, - "node_modules/tiny-emitter": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", - "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==", - "dev": true, - "license": "MIT" - }, "node_modules/tinyglobby": { "version": "0.2.17", "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz", @@ -31655,7 +30116,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", - "dev": true, + "devOptional": true, "license": "MIT", "engines": { "node": ">=8" @@ -31974,7 +30435,7 @@ "version": "5.6.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", - "devOptional": true, + "dev": true, "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", @@ -32420,20 +30881,6 @@ } } }, - "node_modules/use-lilius": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/use-lilius/-/use-lilius-2.0.5.tgz", - "integrity": "sha512-IbPjJe4T6B0zQV6ahftVtHvCAxi6RAuDpEcO8TmnHh4nBtx7JbGdpbgXWOUj/9YjrzEbdT/lW7JWcBVbX3MbrA==", - "dev": true, - "license": "MIT", - "dependencies": { - "date-fns": "^3.6.0" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, "node_modules/use-memo-one": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/use-memo-one/-/use-memo-one-1.1.3.tgz", @@ -32505,7 +30952,7 @@ "version": "2.4.0", "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.4.0.tgz", "integrity": "sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw==", - "dev": true, + "devOptional": true, "license": "MIT", "peer": true }, @@ -32528,7 +30975,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, + "devOptional": true, "license": "Apache-2.0", "dependencies": { "spdx-correct": "^3.0.0", @@ -32539,7 +30986,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "spdx-exceptions": "^2.1.0", @@ -33685,14 +32132,14 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true, + "devOptional": true, "license": "ISC" }, "node_modules/write-file-atomic": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", - "dev": true, + "devOptional": true, "license": "ISC", "dependencies": { "imurmurhash": "^0.1.4", @@ -33846,9 +32293,9 @@ "license": "ISC" }, "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "version": "1.10.3", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.3.tgz", + "integrity": "sha512-vIYeF1u3CjlhAFekPPAk2h/Kv4T3mAkMox5OymRiJQB0spDP10LHvt+K7G9Ny6NuuMAb25/6n1qyUjAcGNf/AA==", "license": "ISC", "engines": { "node": ">= 6" diff --git a/package.json b/package.json index 35480525..2a200b57 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,6 @@ "@types/react": "^18.3.12", "@types/react-dom": "^18.3.1", "@types/wordpress__block-library": "^2.6.3", - "@types/wordpress__blocks": "^12.5.14", "@wordpress/scripts": "^30.7.0", "ajv": "^8.17.1", "concurrently": "^9.1.0", @@ -56,6 +55,7 @@ "dependencies": { "@wordpress/block-library": "^9.27.0", "@wordpress/blocks": "^15.22.0", + "@wordpress/components": "^33.1.0", "@wp-playground/client": "^3.1.38", "react": "^18.3.1", "react-dom": "^18.3.1", diff --git a/plan.md b/plan.md index 245f20eb..c0239f94 100644 --- a/plan.md +++ b/plan.md @@ -220,10 +220,10 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | | 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` requires a compatible shared Ajv that resolves to patched `8.20.0`; vulnerable major-8 version absent globally in the integration branch | -| 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | BLK path removed; affected WPS and `@types/wordpress__blocks` paths remain | +| 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + `agent/maintenance-011-wordpress-block-types` | validated locally; obsolete types root removed and the shared compatible lock refreshed to patched `yaml@1.10.3`, so the vulnerable version is absent globally | | 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable Showdown dependency absent globally | | 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + [#204](https://github.com/WordPress/try-wordpress/pull/204) | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | -| 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + [#209](https://github.com/WordPress/try-wordpress/pull/209) | root Blocks path patched; the block-library path is blocked because the first candidate that patches it introduces an unsuppressed Firefox add-on security warning, while affected WPS, `@types/wordpress__blocks`, and shared Components paths also remain | +| 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + [#209](https://github.com/WordPress/try-wordpress/pull/209) + `agent/maintenance-011-wordpress-block-types` | root Blocks and direct Components paths patched; obsolete types root removed; the block-library path is blocked because its first patching candidate introduces an unsuppressed Firefox add-on security warning, and the affected WPS path also remains | | 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | | 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + [#209](https://github.com/WordPress/try-wordpress/pull/209) | root Blocks path patched; the remaining `@wordpress/block-library@9.27.0` path is blocked because every complete fixing candidate introduces an unsuppressed Firefox add-on security warning | | 190 | GHSA-qx2v-qp2m-jg93 | medium | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.10` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | @@ -431,7 +431,7 @@ Status: blocked after complete candidate analysis; validated and merged into the ### Child Execution Record: [#209](https://github.com/WordPress/try-wordpress/pull/209) -Status: blocked after complete candidate analysis; validated locally in documentation-only child pull request [#209](https://github.com/WordPress/try-wordpress/pull/209), which retains its dependency, lockfile, webpack configuration, application source, and generated-build configuration state. +Status: blocked after complete candidate analysis; validated and merged into the integration branch at merge commit `45ada19e2b2e72c9e79fa6c42e73842ae3907768` by documentation-only child pull request [#209](https://github.com/WordPress/try-wordpress/pull/209), which retains its dependency, lockfile, webpack configuration, application source, and generated-build configuration state. - Retained dependency state: root `@wordpress/block-library` remains at declared range `^9.27.0` and locked version `9.27.0`, root `@wordpress/blocks` remains at declared range `^15.22.0` and locked version `15.22.0`, and the library retains affected nested `@babel/runtime@7.25.7` and `uuid@9.0.1`; Showdown remains absent. No package, lockfile, application source, webpack configuration, license metadata, override, downgrade, dismissal, or unrelated dependency change is retained. - Complete stable-release inventory: npm registry manifests were examined for all 38 stable `@wordpress/block-library` releases newer than `9.27.0` through current `10.2.0`: `9.28.0`, `9.29.0`, `9.30.0`, `9.31.0`, `9.32.0`, `9.33.0`, `9.33.1`, `9.33.2`, `9.33.3`, `9.33.4`, `9.33.5`, `9.33.6`, `9.33.7`, `9.33.8`, `9.33.9`, `9.33.10`, `9.34.0`, `9.35.0`, `9.36.0`, `9.37.0`, `9.38.0`, `9.39.0`, `9.40.0`, `9.40.1`, `9.40.2`, `9.41.0`, `9.42.0`, `9.43.0`, `9.44.0`, `9.45.0`, `9.46.0`, `9.47.0`, `9.48.0`, `9.48.1`, `10.0.0`, `10.0.1`, `10.1.0`, and `10.2.0`. @@ -445,3 +445,18 @@ Status: blocked after complete candidate analysis; validated locally in document - Build shape and manual risk: exact `9.46.0` Firefox and Chrome production builds succeed but grow `app.js` from approximately 21.2 MiB to exactly 36,281,254 bytes (webpack reports 34.6 MiB) because the newer library adds another Vips payload under the existing targeted split rule. Both targets retain `498.app.js` at 2,341,481 bytes, `300.app.js` at 420,708 bytes, and `717.app.js` at 7,407 bytes while adding `528.app.js` at 193,263 bytes and `98.app.js` at 7,407 bytes. This would materially heighten the already documented extension startup, JavaScript parse, and memory risk even before the add-on warning is resolved. - Candidate validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds without source or configuration changes. Both plugin archives pass integrity checks and both build targets contain the expected artifacts. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` reports no `FILE_TOO_LARGE`, retains the two known manifest errors and the known data-collection and unsupported-API warnings, and adds only the blocker `UNSAFE_VAR_ASSIGNMENT` described above. Exact version/path assertions, candidate audits, approved-plan-prefix comparison, Markdown wrapping, `git diff --check`, and scope inspection validate the evidence; dependency and generated-configuration changes are reverted rather than suppressing or accepting the warning. - Retained-state validation: after reverting the candidate, Node `v24.18.0` with npm `11.16.0` completed another clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and fresh Firefox and Chrome production builds; both retained builds restore the known approximately 21.2 MiB application bundle and `498.app.js`, `300.app.js`, and `717.app.js` chunk shape with valid plugin archives. Retained Firefox lint ignores only `app.js` and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`, with no `UNSAFE_VAR_ASSIGNMENT` or `FILE_TOO_LARGE`. npm audit returned the retained 113 effects (9 low, 17 moderate, and 87 high) and 61 unique GHSAs. Exact lock inspection confirms root block-library `9.27.0`, root Blocks `15.22.0`, nested affected runtime `7.25.7`, nested affected library UUID `9.0.1`, and no Showdown. The approved-plan prefix retains SHA-256 `6c29481eab5ef6c57aec974295193492861bc7efeba1bd612e45c94d10b1bfaa`, all 124 baseline rows remain present, Markdown wrapping and `git diff --check` pass, and the final worktree diff contains only `plan.md`. + +### Child Execution Record: `agent/maintenance-011-wordpress-block-types` + +Status: validated locally; the obsolete direct DefinitelyTyped package is removed, its hidden runtime responsibility is made explicit at the first patched Components boundary, and the child is ready for independent review and a pull request targeting the integration branch. + +- Direct dependency correction: obsolete development root `@types/wordpress__blocks` is removed from declared range `^12.5.14` and locked version `12.5.14`; the already-direct `@wordpress/blocks@^15.22.0` continues to provide its own types through its published `build-types` entry, while the eight existing application modules and the UI stylesheet that directly import `@wordpress/components` now receive an explicit runtime dependency at declared range and locked version `^33.1.0` / `33.1.0`. No TypeScript source, webpack configuration, other direct package, license metadata, override, downgrade, dismissal, or unrelated dependency changes are present. +- Complete forward type-release inventory: registry manifests and clean isolated ordinary locks were examined for every stable `@types/wordpress__blocks` release newer than `12.5.14` through current `15.17.0`: `12.5.15`, `12.5.16`, `12.5.17`, `12.5.18`, `15.10.0`, `15.10.1`, `15.10.2`, and `15.17.0`. Releases through `12.5.18` retain `@wordpress/components@^27.2.0` and ordinary locks select affected `uuid@9.0.1`; releases `15.10.0` through `15.10.2` retain `@wordpress/components@^30.9.0` and the same affected UUID; current `15.17.0` is a deprecated empty stub whose sole dependency is `@wordpress/blocks@*` and whose registry notice states that the runtime package supplies its own types. +- Stub and removal compatibility boundaries: exact project locks for both the `15.17.0` stub and complete package removal eliminate the obsolete Components/UUID path and reduce audit propagation from 113 to 112 effects without changing the 61-GHSA set. The stub is not a usable forward upgrade because `tsc` fails with `TS2688: Cannot find type definition file for 'wordpress__blocks'`; removal alone exposes the underlying package declaration defect because `tsc` cannot resolve the eight existing direct Components imports. Adding a patched direct Components root is therefore a required narrow compatibility correction, while retaining an affected old Components root would not remediate the causal graph. +- Rejected npm downgrade: npm recommends prohibited downgrade `@types/wordpress__blocks@12.5.13`, whose manifest replaces runtime Components with `@types/wordpress__components` and whose exact project lock audits at 112 effects with 61 unique GHSAs. TypeScript passes because the older DefinitelyTyped package supplies ambient declarations, but the Firefox production build fails nine module resolutions for the eight direct `@wordpress/components` imports and the Components stylesheet because no runtime Components package is installed; the downgrade is both prohibited by the approved plan and operationally invalid. +- Patched Components boundary: registry manifests for all 80 stable `@wordpress/components` releases newer than the former implicit `27.6.0` through current `37.0.0` were compared. Every release through `33.0.0`, including later-published backport `32.2.1`, declares affected `uuid@^9.0.1`; `33.1.0` is the first stable release declaring patched `uuid@^14.0.0`, and later releases retain the patched major. Components `33.1.0` supports React and ReactDOM 18 and Node `>=18.12.0`, so it is the minimum stable release compatible with the retained React 18 application and approved Node 24 environment that removes the direct Components UUID path. +- Causal shared refresh: the direct Components graph and retained WPS graph share `cosmiconfig@7.1.0 → yaml@^1.10.0`; the ordinary project lock initially preserved affected `yaml@1.10.2`. A compatible in-range lock refresh selects first patched `yaml@1.10.3` without an override or direct transitive declaration, removing every installed path for baseline alert 92. +- Semantic lock scope: the final lock has eleven installed version changes: root Components `27.6.0` to `33.1.0`, its UUID `9.0.1` to `14.0.1`, Ariakit React `0.3.14` to `0.4.35`, Gradient Parser types `0.1.3` to `1.1.0`, Gradient Parser `0.1.5` to `1.1.1`, WordPress Date `4.58.0` to `5.51.0`, Icons `9.49.0` to `13.3.0`, two nested Element copies `5.35.0` to `8.3.0`, Primitives `3.56.0` to `4.51.0`, and YAML `1.10.2` to `1.10.3`. Four Components-required package paths are added and 105 obsolete type-package/private-graph paths are removed; the lockfile name remains at its repository-stable pre-child value. +- Alert and audit result: baseline alert 92 is globally resolved because only patched `yaml@1.10.3` remains. Alert 135 loses the obsolete types and direct Components paths because direct Components now uses `uuid@14.0.1`, but remains partial through block-library `uuid@9.0.1` and WPS `sockjs → uuid@8.3.2`. Range-aware review of all 124 baseline rows finds exactly alert 92 transitioning globally and zero affected-version reintroductions; npm audit decreases from 113 effects (9 low, 17 moderate, and 87 high) and 61 unique GHSAs to 111 effects (9 low, 15 moderate, and 87 high) and 60 unique GHSAs, with zero new applicable advisory and no Showdown path. +- Compatibility and build risk: the correction needs no source or configuration change. Firefox and Chrome production builds retain the documented approximately 21.2 MiB application bundle and the same three async chunks; exact `498.app.js` remains 2,341,481 bytes while `300.app.js` and `717.app.js` each decrease by three bytes to 420,705 and 7,404 bytes, so the Components promotion does not materially broaden the existing bundle risk. Both targets copy the same extension and plugin artifacts and produce valid plugin archives. +- Validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. Both builds complete with only the known Playground dynamic-request and asset-size warnings. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` ignores only `app.js`, reports no `FILE_TOO_LARGE`, and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`; exact npm audit, `npm ls`, `npm explain`, artifact and archive integrity, approved-plan-prefix, 124-row count, Markdown wrapping, `git diff --check`, and final scope checks pass. From ec25e1d001af4033bce6eea69be1b955b827a379 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 06:52:32 +0400 Subject: [PATCH 23/40] docs(security): link block types child PR - replace temporary branch references with pull request 210 - preserve the reviewed causal replacement evidence --- plan.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/plan.md b/plan.md index c0239f94..4d6b2b48 100644 --- a/plan.md +++ b/plan.md @@ -220,10 +220,10 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | | 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` requires a compatible shared Ajv that resolves to patched `8.20.0`; vulnerable major-8 version absent globally in the integration branch | -| 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + `agent/maintenance-011-wordpress-block-types` | validated locally; obsolete types root removed and the shared compatible lock refreshed to patched `yaml@1.10.3`, so the vulnerable version is absent globally | +| 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + [#210](https://github.com/WordPress/try-wordpress/pull/210) | validated locally; obsolete types root removed and the shared compatible lock refreshed to patched `yaml@1.10.3`, so the vulnerable version is absent globally | | 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable Showdown dependency absent globally | | 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + [#204](https://github.com/WordPress/try-wordpress/pull/204) | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | -| 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + [#209](https://github.com/WordPress/try-wordpress/pull/209) + `agent/maintenance-011-wordpress-block-types` | root Blocks and direct Components paths patched; obsolete types root removed; the block-library path is blocked because its first patching candidate introduces an unsuppressed Firefox add-on security warning, and the affected WPS path also remains | +| 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + [#209](https://github.com/WordPress/try-wordpress/pull/209) + [#210](https://github.com/WordPress/try-wordpress/pull/210) | root Blocks and direct Components paths patched; obsolete types root removed; the block-library path is blocked because its first patching candidate introduces an unsuppressed Firefox add-on security warning, and the affected WPS path also remains | | 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | | 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + [#209](https://github.com/WordPress/try-wordpress/pull/209) | root Blocks path patched; the remaining `@wordpress/block-library@9.27.0` path is blocked because every complete fixing candidate introduces an unsuppressed Firefox add-on security warning | | 190 | GHSA-qx2v-qp2m-jg93 | medium | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.10` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | @@ -446,9 +446,9 @@ Status: blocked after complete candidate analysis; validated and merged into the - Candidate validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds without source or configuration changes. Both plugin archives pass integrity checks and both build targets contain the expected artifacts. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` reports no `FILE_TOO_LARGE`, retains the two known manifest errors and the known data-collection and unsupported-API warnings, and adds only the blocker `UNSAFE_VAR_ASSIGNMENT` described above. Exact version/path assertions, candidate audits, approved-plan-prefix comparison, Markdown wrapping, `git diff --check`, and scope inspection validate the evidence; dependency and generated-configuration changes are reverted rather than suppressing or accepting the warning. - Retained-state validation: after reverting the candidate, Node `v24.18.0` with npm `11.16.0` completed another clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and fresh Firefox and Chrome production builds; both retained builds restore the known approximately 21.2 MiB application bundle and `498.app.js`, `300.app.js`, and `717.app.js` chunk shape with valid plugin archives. Retained Firefox lint ignores only `app.js` and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`, with no `UNSAFE_VAR_ASSIGNMENT` or `FILE_TOO_LARGE`. npm audit returned the retained 113 effects (9 low, 17 moderate, and 87 high) and 61 unique GHSAs. Exact lock inspection confirms root block-library `9.27.0`, root Blocks `15.22.0`, nested affected runtime `7.25.7`, nested affected library UUID `9.0.1`, and no Showdown. The approved-plan prefix retains SHA-256 `6c29481eab5ef6c57aec974295193492861bc7efeba1bd612e45c94d10b1bfaa`, all 124 baseline rows remain present, Markdown wrapping and `git diff --check` pass, and the final worktree diff contains only `plan.md`. -### Child Execution Record: `agent/maintenance-011-wordpress-block-types` +### Child Execution Record: [#210](https://github.com/WordPress/try-wordpress/pull/210) -Status: validated locally; the obsolete direct DefinitelyTyped package is removed, its hidden runtime responsibility is made explicit at the first patched Components boundary, and the child is ready for independent review and a pull request targeting the integration branch. +Status: validated locally in child pull request [#210](https://github.com/WordPress/try-wordpress/pull/210); the obsolete direct DefinitelyTyped package is removed and its hidden runtime responsibility is made explicit at the first patched Components boundary. - Direct dependency correction: obsolete development root `@types/wordpress__blocks` is removed from declared range `^12.5.14` and locked version `12.5.14`; the already-direct `@wordpress/blocks@^15.22.0` continues to provide its own types through its published `build-types` entry, while the eight existing application modules and the UI stylesheet that directly import `@wordpress/components` now receive an explicit runtime dependency at declared range and locked version `^33.1.0` / `33.1.0`. No TypeScript source, webpack configuration, other direct package, license metadata, override, downgrade, dismissal, or unrelated dependency changes are present. - Complete forward type-release inventory: registry manifests and clean isolated ordinary locks were examined for every stable `@types/wordpress__blocks` release newer than `12.5.14` through current `15.17.0`: `12.5.15`, `12.5.16`, `12.5.17`, `12.5.18`, `15.10.0`, `15.10.1`, `15.10.2`, and `15.17.0`. Releases through `12.5.18` retain `@wordpress/components@^27.2.0` and ordinary locks select affected `uuid@9.0.1`; releases `15.10.0` through `15.10.2` retain `@wordpress/components@^30.9.0` and the same affected UUID; current `15.17.0` is a deprecated empty stub whose sole dependency is `@wordpress/blocks@*` and whose registry notice states that the runtime package supplies its own types. From 28fa9ce3bdf26978bf8d84a1f9014aa98d714982 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 07:44:34 +0400 Subject: [PATCH 24/40] fix(extension): validate browser manifests - correct packaged icons and add Firefox identity and consent metadata - validate target-specific references and exact Firefox lint output - document the provisional identity, data flow, and support floor --- CONTRIBUTING.md | 17 + package.json | 2 + plan.md | 16 +- scripts/validate-extension-builds.mjs | 435 ++++++++++++++++++++++++++ src/extension/manifest-chrome.json | 2 +- src/extension/manifest-firefox.json | 14 +- 6 files changed, 482 insertions(+), 4 deletions(-) create mode 100644 scripts/validate-extension-builds.mjs diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 45fd0dd5..da85e116 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -33,6 +33,23 @@ The extension will also automatically reload whenever you modify source files. > Please note that at the moment not all `web-ext` features work on chrome, so firefox is the recommended browser for developing this project, since it provides the best developer experience. One example of a `web-ext` feature that doesn't currently work on chrome is to have the developer tools and extension console automatically open when the extension loads. +### Firefox publication identity and data disclosure + +The Firefox Manifest V3 Gecko ID `try-your-website-in-wordpress@wordpress.org` is provisional and may be changed until the extension is first published. After publication, treat the published ID as stable because changing it creates a distinct Firefox extension identity. + +Firefox 142.0 is the minimum supported version. Firefox's built-in data-collection consent experience begins at desktop version 140 and Android version 142; selecting the common version 142 floor prevents any direct Android install from inheriting a version that predates its built-in consent while omitting `gecko_android` keeps the AMO package desktop-only. The extension does not implement a separate legacy consent flow, so older versions are excluded through `browser_specific_settings.gecko.strict_min_version`. + +The extension transmits selected source-page HTML, text, and links, plus selected source URLs and domains, to the WordPress Playground running in the remote-origin `https://pg.ashfame.com/remote.html` iframe. The Firefox manifest therefore declares the required `websiteContent` and `browsingActivity` data categories; element-selection clicks and pointer movement stay local and are not declared as `websiteActivity`. + +Production packages can be checked after building both targets: + +```shell +npm run validate:extension-builds +npm run lint:extension:firefox +``` + +The package validator confirms that both production manifests parse and every referenced content/background script, sidebar/side-panel page, and icon exists. The Firefox lint gate ignores only generated `app.js` and requires zero errors and exactly the known unsupported-Chrome-API warning. + ## Development environment - WordPress plugin First install required dependencies: diff --git a/package.json b/package.json index 2a200b57..2abfa828 100644 --- a/package.json +++ b/package.json @@ -24,6 +24,8 @@ "lint": "npm run lint:js && npm run lint:style", "lint:js": "wp-scripts lint-js", "lint:style": "wp-scripts lint-style", + "validate:extension-builds": "node scripts/validate-extension-builds.mjs references", + "lint:extension:firefox": "node scripts/validate-extension-builds.mjs firefox-lint", "format": "wp-scripts format", "web-ext": "web-ext", "wp-scripts": "wp-scripts", diff --git a/plan.md b/plan.md index 4d6b2b48..f17b0813 100644 --- a/plan.md +++ b/plan.md @@ -220,7 +220,7 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | | 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` requires a compatible shared Ajv that resolves to patched `8.20.0`; vulnerable major-8 version absent globally in the integration branch | -| 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + [#210](https://github.com/WordPress/try-wordpress/pull/210) | validated locally; obsolete types root removed and the shared compatible lock refreshed to patched `yaml@1.10.3`, so the vulnerable version is absent globally | +| 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + [#210](https://github.com/WordPress/try-wordpress/pull/210) | validated and merged into the integration branch by PR #210; obsolete types root removed and the shared compatible lock refreshed to patched `yaml@1.10.3`, so the vulnerable version is absent globally | | 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable Showdown dependency absent globally | | 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + [#204](https://github.com/WordPress/try-wordpress/pull/204) | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | | 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + [#209](https://github.com/WordPress/try-wordpress/pull/209) + [#210](https://github.com/WordPress/try-wordpress/pull/210) | root Blocks and direct Components paths patched; obsolete types root removed; the block-library path is blocked because its first patching candidate introduces an unsuppressed Firefox add-on security warning, and the affected WPS path also remains | @@ -448,7 +448,7 @@ Status: blocked after complete candidate analysis; validated and merged into the ### Child Execution Record: [#210](https://github.com/WordPress/try-wordpress/pull/210) -Status: validated locally in child pull request [#210](https://github.com/WordPress/try-wordpress/pull/210); the obsolete direct DefinitelyTyped package is removed and its hidden runtime responsibility is made explicit at the first patched Components boundary. +Status: validated and merged into the integration branch at merge commit `c67167ea96768e02f6a0f484eb1df50a7962e15c` by child pull request [#210](https://github.com/WordPress/try-wordpress/pull/210); the obsolete direct DefinitelyTyped package is removed and its hidden runtime responsibility is made explicit at the first patched Components boundary. - Direct dependency correction: obsolete development root `@types/wordpress__blocks` is removed from declared range `^12.5.14` and locked version `12.5.14`; the already-direct `@wordpress/blocks@^15.22.0` continues to provide its own types through its published `build-types` entry, while the eight existing application modules and the UI stylesheet that directly import `@wordpress/components` now receive an explicit runtime dependency at declared range and locked version `^33.1.0` / `33.1.0`. No TypeScript source, webpack configuration, other direct package, license metadata, override, downgrade, dismissal, or unrelated dependency changes are present. - Complete forward type-release inventory: registry manifests and clean isolated ordinary locks were examined for every stable `@types/wordpress__blocks` release newer than `12.5.14` through current `15.17.0`: `12.5.15`, `12.5.16`, `12.5.17`, `12.5.18`, `15.10.0`, `15.10.1`, `15.10.2`, and `15.17.0`. Releases through `12.5.18` retain `@wordpress/components@^27.2.0` and ordinary locks select affected `uuid@9.0.1`; releases `15.10.0` through `15.10.2` retain `@wordpress/components@^30.9.0` and the same affected UUID; current `15.17.0` is a deprecated empty stub whose sole dependency is `@wordpress/blocks@*` and whose registry notice states that the runtime package supplies its own types. @@ -460,3 +460,15 @@ Status: validated locally in child pull request [#210](https://github.com/WordPr - Alert and audit result: baseline alert 92 is globally resolved because only patched `yaml@1.10.3` remains. Alert 135 loses the obsolete types and direct Components paths because direct Components now uses `uuid@14.0.1`, but remains partial through block-library `uuid@9.0.1` and WPS `sockjs → uuid@8.3.2`. Range-aware review of all 124 baseline rows finds exactly alert 92 transitioning globally and zero affected-version reintroductions; npm audit decreases from 113 effects (9 low, 17 moderate, and 87 high) and 61 unique GHSAs to 111 effects (9 low, 15 moderate, and 87 high) and 60 unique GHSAs, with zero new applicable advisory and no Showdown path. - Compatibility and build risk: the correction needs no source or configuration change. Firefox and Chrome production builds retain the documented approximately 21.2 MiB application bundle and the same three async chunks; exact `498.app.js` remains 2,341,481 bytes while `300.app.js` and `717.app.js` each decrease by three bytes to 420,705 and 7,404 bytes, so the Components promotion does not materially broaden the existing bundle risk. Both targets copy the same extension and plugin artifacts and produce valid plugin archives. - Validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. Both builds complete with only the known Playground dynamic-request and asset-size warnings. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` ignores only `app.js`, reports no `FILE_TOO_LARGE`, and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`; exact npm audit, `npm ls`, `npm explain`, artifact and archive integrity, approved-plan-prefix, 124-row count, Markdown wrapping, `git diff --check`, and final scope checks pass. + +### Child Execution Record: `agent/maintenance-012-extension-manifests` + +Status: validated locally on `agent/maintenance-012-extension-manifests`; awaiting the child pull request URL. + +- Manifest corrections: both browser side-panel/sidebar 128-pixel icon paths now use the packaged `icons/icon-128.png`; the Firefox Manifest V3 manifest declares provisional Gecko ID `try-your-website-in-wordpress@wordpress.org`, required `browsingActivity` and `websiteContent` data-collection categories, and exact minimum Firefox version `142.0`. Firefox's built-in data-collection consent experience begins at desktop version 140 and Android version 142; selecting the common version 142 floor prevents any direct Android install from inheriting a version that predates its built-in consent while omitting `gecko_android` keeps the AMO package desktop-only. Excluding earlier versions avoids an unsupported install without broadening this maintenance child into a custom legacy-consent application flow. The previously reported `ADDON_ID_REQUIRED`, `MANIFEST_ICON_NOT_FOUND`, and `MISSING_DATA_COLLECTION_PERMISSIONS` diagnostics are absent. +- Data-flow basis: selected source URLs and their domains cross the add-on boundary into the WordPress Playground running in the remote-origin `https://pg.ashfame.com/remote.html` iframe, so `browsingActivity` applies; selected page HTML, text, and links are posted into the Playground, so `websiteContent` applies. Element-selection clicks and pointer movement are local triggers rather than transmitted interaction telemetry, so `websiteActivity` is not declared. +- Publication identity and support floor: CONTRIBUTING records that the Gecko ID remains provisional until first publication and must be treated as stable afterward because changing it creates a distinct Firefox extension identity. It also documents Firefox 142.0 as the supported minimum, the desktop/Android built-in-consent basis for the common floor, the desktop-only omission of `gecko_android`, the absence of a custom legacy flow, the remote Playground data flow, both declared categories, and the reproducible validation commands. +- Package validation: new cross-platform Node command `npm run validate:extension-builds` parses both production manifests, asserts the exact Firefox identity, disclosure, minimum version, and desktop-only omission of `gecko_android`, requires Firefox to use only a non-empty background scripts array and Chrome to use only a non-empty background service worker, and checks every content/background script, sidebar/side-panel page, and icon reference. Extension-bearing POSIX references must remain inside the package through segment-aware lexical containment and canonical real-path containment, preventing traversal and symlink escapes while accepting safe names such as `..inside.js`; missing files and broken links fail deterministically. It validates nine references per target; isolated temporary copies prove positive behavior plus deterministic rejection of swapped browser background formats, an outside-package symlink, lexical traversal, missing script/page/icon references, an extensionless icon, malformed manifest JSON, and an injected extra Firefox lint diagnostic. +- Firefox lint gate: `npm run lint:extension:firefox` invokes the locked `web-ext` executable directly through Node with machine-readable JSON, disables configuration discovery, and ignores only generated `app.js`. It exits zero only with no errors or notices and the single exact `UNSUPPORTED_API` diagnostic for `sidePanel.setPanelBehavior` at `background.js:1:77`; the retained build produces precisely that one warning and no `FILE_TOO_LARGE`. +- Build and audit result: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, schema generation, JavaScript/style linting, TypeScript checking, and sequential Firefox and Chrome production builds. Both builds retain only the known Playground dynamic-request and asset-size warnings, satisfy all nine manifest reference entries, preserve the approximately 21.2 MiB `app.js` and three established asynchronous chunks, and produce plugin archives that pass complete ZIP integrity tests. No dependency or lockfile changes are present; npm audit remains at the inherited 111 effect packages (9 low, 15 moderate, 87 high, and zero critical) and 60 unique advisories, with no audit drift attributable to this child. +- Scope and manual risk: no application behavior, webpack configuration, dependency, CI workflow, Composer file, or license metadata changes are present. Manual pre-publication review must settle the provisional Firefox identity and verify that the declared remote data flow still matches the shipping extension; the normal unpacked-build checks remain required. diff --git a/scripts/validate-extension-builds.mjs b/scripts/validate-extension-builds.mjs new file mode 100644 index 00000000..3d3c90ef --- /dev/null +++ b/scripts/validate-extension-builds.mjs @@ -0,0 +1,435 @@ +#!/usr/bin/env node + +import { spawnSync } from 'node:child_process'; +import { readFileSync, realpathSync, statSync } from 'node:fs'; +import path from 'node:path'; + +const EXPECTED_FIREFOX_ID = 'try-your-website-in-wordpress@wordpress.org'; +const EXPECTED_FIREFOX_MIN_VERSION = '142.0'; +const EXPECTED_DATA_COLLECTION = [ 'browsingActivity', 'websiteContent' ]; +const EXPECTED_FIREFOX_WARNING = { + code: 'UNSUPPORTED_API', + message: 'sidePanel.setPanelBehavior is not supported', + file: 'background.js', + line: 1, + column: 77, +}; +const DEFAULT_BUILD_ROOT = path.resolve( 'build/production' ); + +const command = process.argv[ 2 ]; + +try { + switch ( command ) { + case 'references': + validateReferences( readBuildRoot( process.argv.slice( 3 ) ) ); + break; + case 'firefox-lint': + requireNoArguments( process.argv.slice( 3 ) ); + validateFirefoxLint(); + break; + default: + throw new Error( + 'Usage: node scripts/validate-extension-builds.mjs ' + ); + } +} catch ( error ) { + console.error( `Extension validation failed: ${ error.message }` ); + process.exitCode = 1; +} + +function readBuildRoot( args ) { + if ( args.length === 0 ) { + return DEFAULT_BUILD_ROOT; + } + if ( args.length !== 2 || args[ 0 ] !== '--root' || ! args[ 1 ] ) { + throw new Error( 'references accepts only --root DIRECTORY' ); + } + return path.resolve( args[ 1 ] ); +} + +function requireNoArguments( args ) { + if ( args.length !== 0 ) { + throw new Error( 'firefox-lint does not accept arguments' ); + } +} + +function validateReferences( buildRoot ) { + const results = [ + validateTarget( buildRoot, 'firefox' ), + validateTarget( buildRoot, 'chrome' ), + ]; + + for ( const result of results ) { + console.log( + `Validated ${ result.target } production manifest and ${ result.referenceCount } packaged references.` + ); + } +} + +function validateTarget( buildRoot, target ) { + const targetRoot = path.join( buildRoot, target ); + const canonicalTargetRoot = readCanonicalTargetRoot( targetRoot, target ); + const manifestPath = path.join( targetRoot, 'manifest.json' ); + const manifest = readJsonFile( manifestPath ); + const references = []; + + if ( manifest.manifest_version !== 3 ) { + throw new Error( `${ target } manifest_version must be 3` ); + } + + addContentScriptReferences( references, manifest.content_scripts ); + addBackgroundReferences( references, manifest.background, target ); + addIconReferences( references, manifest ); + + if ( target === 'firefox' ) { + validateFirefoxManifest( manifest ); + addRequiredReference( + references, + manifest.sidebar_action?.default_panel, + 'sidebar_action.default_panel', + 'page' + ); + } else { + addRequiredReference( + references, + manifest.side_panel?.default_path, + 'side_panel.default_path', + 'page' + ); + } + + for ( const reference of references ) { + validatePackagedReference( + targetRoot, + canonicalTargetRoot, + target, + reference + ); + } + + return { + target, + referenceCount: references.length, + }; +} + +function readCanonicalTargetRoot( targetRoot, target ) { + try { + return realpathSync( targetRoot ); + } catch ( error ) { + throw new Error( + `cannot resolve ${ target } package root ${ targetRoot }: ${ error.message }` + ); + } +} + +function readJsonFile( filePath ) { + let source; + try { + source = readFileSync( filePath, 'utf8' ); + } catch ( error ) { + throw new Error( `cannot read ${ filePath }: ${ error.message }` ); + } + + try { + return JSON.parse( source ); + } catch ( error ) { + throw new Error( `cannot parse ${ filePath}: ${ error.message }` ); + } +} + +function addContentScriptReferences( references, contentScripts ) { + if ( ! Array.isArray( contentScripts ) || contentScripts.length === 0 ) { + throw new Error( 'content_scripts must be a non-empty array' ); + } + + contentScripts.forEach( ( contentScript, index ) => { + addReferenceArray( + references, + contentScript.js, + `content_scripts[${ index }].js`, + 'script' + ); + if ( contentScript.css !== undefined ) { + addReferenceArray( + references, + contentScript.css, + `content_scripts[${ index }].css`, + 'stylesheet' + ); + } + } ); +} + +function addBackgroundReferences( references, background, target ) { + if ( ! background || typeof background !== 'object' ) { + throw new Error( 'background must be an object' ); + } + + const hasScripts = Object.hasOwn( background, 'scripts' ); + const hasServiceWorker = Object.hasOwn( background, 'service_worker' ); + + if ( target === 'firefox' ) { + if ( hasServiceWorker ) { + throw new Error( + 'firefox background must not declare service_worker' + ); + } + addReferenceArray( + references, + background.scripts, + 'background.scripts', + 'script' + ); + return; + } + + if ( hasScripts ) { + throw new Error( 'chrome background must not declare scripts' ); + } + if ( ! hasServiceWorker ) { + throw new Error( + 'chrome background must declare a non-empty service_worker' + ); + } + addRequiredReference( + references, + background.service_worker, + 'background.service_worker', + 'script' + ); +} + +function addIconReferences( references, manifest ) { + const iconObjects = [ + [ 'icons', manifest.icons ], + [ 'action.default_icon', manifest.action?.default_icon ], + [ + 'sidebar_action.default_icon', + manifest.sidebar_action?.default_icon, + ], + [ 'side_panel.default_icon', manifest.side_panel?.default_icon ], + ]; + + for ( const [ label, icons ] of iconObjects ) { + if ( icons === undefined ) { + continue; + } + if ( ! icons || typeof icons !== 'object' || Array.isArray( icons ) ) { + throw new Error( `${ label } must be an object` ); + } + for ( const [ size, icon ] of Object.entries( icons ) ) { + addRequiredReference( + references, + icon, + `${ label }.${ size }`, + 'icon' + ); + } + } +} + +function addReferenceArray( references, values, label, kind ) { + if ( ! Array.isArray( values ) || values.length === 0 ) { + throw new Error( `${ label } must be a non-empty array` ); + } + values.forEach( ( value, index ) => { + addRequiredReference( + references, + value, + `${ label }[${ index }]`, + kind + ); + } ); +} + +function addRequiredReference( references, value, label, kind ) { + if ( typeof value !== 'string' || value.length === 0 ) { + throw new Error( `${ label } must be a non-empty string` ); + } + references.push( { value, label, kind } ); +} + +function validateFirefoxManifest( manifest ) { + const gecko = manifest.browser_specific_settings?.gecko; + if ( gecko?.id !== EXPECTED_FIREFOX_ID ) { + throw new Error( + `Firefox Gecko ID must be ${ EXPECTED_FIREFOX_ID }` + ); + } + if ( gecko.strict_min_version !== EXPECTED_FIREFOX_MIN_VERSION ) { + throw new Error( + `Firefox strict_min_version must be ${ EXPECTED_FIREFOX_MIN_VERSION }` + ); + } + if ( + Object.hasOwn( + manifest.browser_specific_settings, + 'gecko_android' + ) + ) { + throw new Error( + 'Firefox manifest must not declare gecko_android because this package is desktop-only' + ); + } + + const required = gecko.data_collection_permissions?.required; + if ( + ! Array.isArray( required ) || + JSON.stringify( required ) !== + JSON.stringify( EXPECTED_DATA_COLLECTION ) + ) { + throw new Error( + `Firefox required data collection must be ${ EXPECTED_DATA_COLLECTION.join( + ', ' + ) }` + ); + } +} + +function validatePackagedReference( + targetRoot, + canonicalTargetRoot, + target, + reference +) { + const extension = path.posix.extname( reference.value ); + if ( ! extension ) { + throw new Error( + `${ target } ${ reference.label } is extensionless: ${ reference.value }` + ); + } + + const expectedExtensions = { + icon: [ '.png', '.jpg', '.jpeg', '.svg' ], + page: [ '.html', '.htm' ], + script: [ '.js', '.mjs' ], + stylesheet: [ '.css' ], + }; + if ( ! expectedExtensions[ reference.kind ].includes( extension ) ) { + throw new Error( + `${ target } ${ reference.label } has unexpected ${ reference.kind } extension: ${ reference.value }` + ); + } + + if ( + path.posix.isAbsolute( reference.value ) || + reference.value.includes( '\\' ) + ) { + throw new Error( + `${ target } ${ reference.label } must be a relative POSIX path: ${ reference.value }` + ); + } + + const resolved = path.resolve( targetRoot, reference.value ); + if ( ! isContainedPath( targetRoot, resolved ) ) { + throw new Error( + `${ target } ${ reference.label } lexically escapes its package: ${ reference.value }` + ); + } + + let canonicalReference; + let stats; + try { + canonicalReference = realpathSync( resolved ); + stats = statSync( canonicalReference ); + } catch ( error ) { + throw new Error( + `${ target } ${ reference.label } is missing or has a broken link: ${ reference.value } (${ error.message })` + ); + } + if ( ! isContainedPath( canonicalTargetRoot, canonicalReference ) ) { + throw new Error( + `${ target } ${ reference.label } canonically escapes its package: ${ reference.value }` + ); + } + if ( ! stats.isFile() ) { + throw new Error( + `${ target } ${ reference.label } is not a file: ${ reference.value }` + ); + } +} + +function isContainedPath( root, candidate ) { + const relative = path.relative( root, candidate ); + return ( + relative !== '..' && + ! relative.startsWith( `..${ path.sep }` ) && + ! path.isAbsolute( relative ) + ); +} + +function validateFirefoxLint() { + const args = [ + 'lint', + '--source-dir', + path.join( 'build', 'production', 'firefox' ), + '--ignore-files', + 'app.js', + '--output', + 'json', + '--no-config-discovery', + ]; + const webExtExecutable = path.resolve( + 'node_modules', + 'web-ext', + 'bin', + 'web-ext.js' + ); + const result = spawnSync( process.execPath, [ webExtExecutable, ...args ], { + encoding: 'utf8', + } ); + + if ( result.error ) { + throw new Error( `cannot run web-ext: ${ result.error.message }` ); + } + + let report; + try { + report = JSON.parse( result.stdout ); + } catch ( error ) { + throw new Error( + `cannot parse web-ext JSON output: ${ error.message }\n${ result.stdout }\n${ result.stderr }` + ); + } + + const errors = Array.isArray( report.errors ) ? report.errors : []; + const notices = Array.isArray( report.notices ) ? report.notices : []; + const warnings = Array.isArray( report.warnings ) ? report.warnings : []; + + if ( + result.status !== 0 || + errors.length !== 0 || + notices.length !== 0 || + warnings.length !== 1 || + ! matchesExpectedFirefoxWarning( warnings[ 0 ] ) + ) { + throw new Error( + `unexpected Firefox lint diagnostics (exit ${ result.status }, errors ${ formatCodes( + errors + ) }, notices ${ formatCodes( notices ) }, warnings ${ formatCodes( + warnings + ) })` + ); + } + + console.log( + `Firefox manifest lint passed with zero errors and the single allowed ${ EXPECTED_FIREFOX_WARNING.code } warning at ${ EXPECTED_FIREFOX_WARNING.file }:${ EXPECTED_FIREFOX_WARNING.line }:${ EXPECTED_FIREFOX_WARNING.column }; only app.js was ignored.` + ); +} + +function matchesExpectedFirefoxWarning( warning ) { + return Object.entries( EXPECTED_FIREFOX_WARNING ).every( + ( [ key, expectedValue ] ) => warning[ key ] === expectedValue + ); +} + +function formatCodes( diagnostics ) { + if ( diagnostics.length === 0 ) { + return 'none'; + } + return diagnostics + .map( ( diagnostic ) => diagnostic.code || 'UNKNOWN' ) + .sort() + .join( ', ' ); +} diff --git a/src/extension/manifest-chrome.json b/src/extension/manifest-chrome.json index 6d52010b..a6d8df49 100644 --- a/src/extension/manifest-chrome.json +++ b/src/extension/manifest-chrome.json @@ -33,7 +33,7 @@ "default_title": "Try WordPress", "default_icon": { "32": "icons/icon-32.png", - "128": "icons/icon-128" + "128": "icons/icon-128.png" }, "default_path": "app.html" } diff --git a/src/extension/manifest-firefox.json b/src/extension/manifest-firefox.json index 4598836b..36e42af3 100644 --- a/src/extension/manifest-firefox.json +++ b/src/extension/manifest-firefox.json @@ -3,6 +3,18 @@ "name": "Try WordPress", "description": "An extension that liberates your data into WordPress", "version": "0.0.1", + "browser_specific_settings": { + "gecko": { + "id": "try-your-website-in-wordpress@wordpress.org", + "data_collection_permissions": { + "required": [ + "browsingActivity", + "websiteContent" + ] + }, + "strict_min_version": "142.0" + } + }, "permissions": [ "storage", "tabs" @@ -32,7 +44,7 @@ "default_title": "Try WordPress", "default_icon": { "32": "icons/icon-32.png", - "128": "icons/icon-128" + "128": "icons/icon-128.png" }, "default_panel": "app.html", "open_at_install": true From d07511b351e8e732cdba6ef3d36e9a337e88d850 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 07:45:11 +0400 Subject: [PATCH 25/40] docs(extension): link manifest child PR - replace the temporary branch record with pull request 211 - preserve the reviewed manifest and validation evidence --- plan.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plan.md b/plan.md index f17b0813..c452ffa2 100644 --- a/plan.md +++ b/plan.md @@ -461,9 +461,9 @@ Status: validated and merged into the integration branch at merge commit `c67167 - Compatibility and build risk: the correction needs no source or configuration change. Firefox and Chrome production builds retain the documented approximately 21.2 MiB application bundle and the same three async chunks; exact `498.app.js` remains 2,341,481 bytes while `300.app.js` and `717.app.js` each decrease by three bytes to 420,705 and 7,404 bytes, so the Components promotion does not materially broaden the existing bundle risk. Both targets copy the same extension and plugin artifacts and produce valid plugin archives. - Validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run build:schema`, `npm run lint`, `npx tsc --noEmit`, and sequential Firefox and Chrome production builds. Both builds complete with only the known Playground dynamic-request and asset-size warnings. `npx web-ext lint --source-dir build/production/firefox --ignore-files app.js` ignores only `app.js`, reports no `FILE_TOO_LARGE`, and reproduces exactly the two known errors `ADDON_ID_REQUIRED` and `MANIFEST_ICON_NOT_FOUND` plus warnings `MISSING_DATA_COLLECTION_PERMISSIONS` and `UNSUPPORTED_API`; exact npm audit, `npm ls`, `npm explain`, artifact and archive integrity, approved-plan-prefix, 124-row count, Markdown wrapping, `git diff --check`, and final scope checks pass. -### Child Execution Record: `agent/maintenance-012-extension-manifests` +### Child Execution Record: [#211](https://github.com/WordPress/try-wordpress/pull/211) -Status: validated locally on `agent/maintenance-012-extension-manifests`; awaiting the child pull request URL. +Status: validated locally in child pull request [#211](https://github.com/WordPress/try-wordpress/pull/211), which targets the integration branch. - Manifest corrections: both browser side-panel/sidebar 128-pixel icon paths now use the packaged `icons/icon-128.png`; the Firefox Manifest V3 manifest declares provisional Gecko ID `try-your-website-in-wordpress@wordpress.org`, required `browsingActivity` and `websiteContent` data-collection categories, and exact minimum Firefox version `142.0`. Firefox's built-in data-collection consent experience begins at desktop version 140 and Android version 142; selecting the common version 142 floor prevents any direct Android install from inheriting a version that predates its built-in consent while omitting `gecko_android` keeps the AMO package desktop-only. Excluding earlier versions avoids an unsupported install without broadening this maintenance child into a custom legacy-consent application flow. The previously reported `ADDON_ID_REQUIRED`, `MANIFEST_ICON_NOT_FOUND`, and `MISSING_DATA_COLLECTION_PERMISSIONS` diagnostics are absent. - Data-flow basis: selected source URLs and their domains cross the add-on boundary into the WordPress Playground running in the remote-origin `https://pg.ashfame.com/remote.html` iframe, so `browsingActivity` applies; selected page HTML, text, and links are posted into the Playground, so `websiteContent` applies. Element-selection clicks and pointer movement are local triggers rather than transmitted interaction telemetry, so `websiteActivity` is not declared. From de7b09fef7aba3bf71183fd77cd81239be9425cf Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 08:08:21 +0400 Subject: [PATCH 26/40] ci: make Node checks reproducible Standardize local and CI Node execution on Node 24 with lockfile caching and npm ci. Run schema-aware type checking, linting, both production builds, and extension package validation on pull requests and trunk pushes. --- .github/workflows/be-linting.yml | 40 ++++++++++++++++++++++++++------ .github/workflows/wp-linting.yml | 7 ++++++ .github/workflows/wp-tests.yml | 17 ++++++++++++-- .nvmrc | 1 + package-lock.json | 3 +++ package.json | 4 ++++ plan.md | 13 ++++++++++- 7 files changed, 75 insertions(+), 10 deletions(-) create mode 100644 .nvmrc diff --git a/.github/workflows/be-linting.yml b/.github/workflows/be-linting.yml index afdb4683..efd1ee80 100644 --- a/.github/workflows/be-linting.yml +++ b/.github/workflows/be-linting.yml @@ -2,7 +2,16 @@ name: Linting (Browser extension) on: pull_request: - types: [ opened, synchronize ] + push: + branches: + - trunk + +permissions: + contents: read + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true jobs: lint: @@ -10,13 +19,30 @@ jobs: steps: - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 + + - name: Set up Node.js + uses: actions/setup-node@v4 + with: + node-version-file: .nvmrc + cache: npm - name: Install dependencies - run: npm install + run: npm ci + + - name: Lint JavaScript and styles + run: npm run lint + + - name: Generate schema and type-check + run: npm run type-check + + - name: Build Firefox production extension + run: npm run build:production:firefox + + - name: Build Chrome production extension + run: npm run build:production:chrome - - name: Lint js - run: npm run lint:js + - name: Validate packaged manifest references + run: npm run validate:extension-builds - - name: Lint styles - run: npm run lint:style + - name: Lint Firefox extension + run: npm run lint:extension:firefox diff --git a/.github/workflows/wp-linting.yml b/.github/workflows/wp-linting.yml index 51972598..a78dffa9 100644 --- a/.github/workflows/wp-linting.yml +++ b/.github/workflows/wp-linting.yml @@ -4,6 +4,13 @@ on: pull_request: types: [ opened, synchronize ] +permissions: + contents: read + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + jobs: phpcs: name: phpcs diff --git a/.github/workflows/wp-tests.yml b/.github/workflows/wp-tests.yml index b3e42d05..944284df 100644 --- a/.github/workflows/wp-tests.yml +++ b/.github/workflows/wp-tests.yml @@ -4,6 +4,13 @@ on: pull_request: types: [ opened, synchronize ] +permissions: + contents: read + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + jobs: phpunit: name: PHPUnit ${{ matrix.php }} @@ -32,8 +39,11 @@ jobs: - name: Check out Git repository uses: actions/checkout@v4 - - name: Setup npm + - name: Setup Node.js uses: actions/setup-node@v4 + with: + node-version-file: .nvmrc + cache: npm - name: Setup PHP uses: shivammathur/setup-php@v2 @@ -47,8 +57,11 @@ jobs: with: composer-options: "--no-progress --no-ansi --no-interaction" + - name: Install Node dependencies + run: npm ci + - name: Build schema.json - run: npm install && npm run build:schema + run: npm run build:schema - name: Install Subversion run: sudo apt-get update && sudo apt-get install --no-install-recommends --yes subversion diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 00000000..a45fd52c --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +24 diff --git a/package-lock.json b/package-lock.json index f2544bb7..e01a1a8a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4,6 +4,9 @@ "requires": true, "packages": { "": { + "engines": { + "node": ">=24 <25" + }, "dependencies": { "@wordpress/block-library": "^9.27.0", "@wordpress/blocks": "^15.22.0", diff --git a/package.json b/package.json index 2abfa828..5e1ae0b6 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,8 @@ { "type": "module", + "engines": { + "node": ">=24 <25" + }, "scripts": { "build": "echo 'Please choose a target: build:firefox or build:chrome, or build:production:firefox or build:production:chrome'", "build:production": "echo 'Please choose a target: build:production:firefox or build:production:chrome'", @@ -24,6 +27,7 @@ "lint": "npm run lint:js && npm run lint:style", "lint:js": "wp-scripts lint-js", "lint:style": "wp-scripts lint-style", + "type-check": "npm run build:schema && tsc --noEmit", "validate:extension-builds": "node scripts/validate-extension-builds.mjs references", "lint:extension:firefox": "node scripts/validate-extension-builds.mjs firefox-lint", "format": "wp-scripts format", diff --git a/plan.md b/plan.md index c452ffa2..3a9e8edf 100644 --- a/plan.md +++ b/plan.md @@ -463,7 +463,7 @@ Status: validated and merged into the integration branch at merge commit `c67167 ### Child Execution Record: [#211](https://github.com/WordPress/try-wordpress/pull/211) -Status: validated locally in child pull request [#211](https://github.com/WordPress/try-wordpress/pull/211), which targets the integration branch. +Status: validated and merged into the integration branch by child pull request [#211](https://github.com/WordPress/try-wordpress/pull/211) at merge commit `0320cc54473c79014de3ad64c159860f3362de4a`. - Manifest corrections: both browser side-panel/sidebar 128-pixel icon paths now use the packaged `icons/icon-128.png`; the Firefox Manifest V3 manifest declares provisional Gecko ID `try-your-website-in-wordpress@wordpress.org`, required `browsingActivity` and `websiteContent` data-collection categories, and exact minimum Firefox version `142.0`. Firefox's built-in data-collection consent experience begins at desktop version 140 and Android version 142; selecting the common version 142 floor prevents any direct Android install from inheriting a version that predates its built-in consent while omitting `gecko_android` keeps the AMO package desktop-only. Excluding earlier versions avoids an unsupported install without broadening this maintenance child into a custom legacy-consent application flow. The previously reported `ADDON_ID_REQUIRED`, `MANIFEST_ICON_NOT_FOUND`, and `MISSING_DATA_COLLECTION_PERMISSIONS` diagnostics are absent. - Data-flow basis: selected source URLs and their domains cross the add-on boundary into the WordPress Playground running in the remote-origin `https://pg.ashfame.com/remote.html` iframe, so `browsingActivity` applies; selected page HTML, text, and links are posted into the Playground, so `websiteContent` applies. Element-selection clicks and pointer movement are local triggers rather than transmitted interaction telemetry, so `websiteActivity` is not declared. @@ -472,3 +472,14 @@ Status: validated locally in child pull request [#211](https://github.com/WordPr - Firefox lint gate: `npm run lint:extension:firefox` invokes the locked `web-ext` executable directly through Node with machine-readable JSON, disables configuration discovery, and ignores only generated `app.js`. It exits zero only with no errors or notices and the single exact `UNSUPPORTED_API` diagnostic for `sidePanel.setPanelBehavior` at `background.js:1:77`; the retained build produces precisely that one warning and no `FILE_TOO_LARGE`. - Build and audit result: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, schema generation, JavaScript/style linting, TypeScript checking, and sequential Firefox and Chrome production builds. Both builds retain only the known Playground dynamic-request and asset-size warnings, satisfy all nine manifest reference entries, preserve the approximately 21.2 MiB `app.js` and three established asynchronous chunks, and produce plugin archives that pass complete ZIP integrity tests. No dependency or lockfile changes are present; npm audit remains at the inherited 111 effect packages (9 low, 15 moderate, 87 high, and zero critical) and 60 unique advisories, with no audit drift attributable to this child. - Scope and manual risk: no application behavior, webpack configuration, dependency, CI workflow, Composer file, or license metadata changes are present. Manual pre-publication review must settle the provisional Firefox identity and verify that the declared remote data flow still matches the shipping extension; the normal unpacked-build checks remain required. + +### Child Execution Record: `agent/maintenance-013-node-ci` + +Status: implemented and validated locally on child branch `agent/maintenance-013-node-ci`, which targets the integration branch; permanent child pull request link pending. + +- Runtime contract: root `.nvmrc` selects Node major `24`, while `package.json` and the root package-lock metadata declare exact supported engine range `>=24 <25`. Removing only that new engine metadata from the lock produces a semantic package-lock graph identical to the pre-child lock, with no dependency-version, integrity, resolved-URL, package-path, or license-metadata drift. +- Schema-aware type gate: stable command `npm run type-check` runs `npm run build:schema && tsc --noEmit`, so the generated schema is refreshed immediately before every TypeScript check. The browser workflow uses this command directly after JavaScript/style linting. +- Browser CI coverage: the browser workflow now runs for pull requests and pushes to `trunk` in exact order: checkout, Node setup from `.nvmrc` with npm lockfile caching, clean `npm ci`, combined JavaScript/style linting, schema-aware type-checking, sequential Firefox and Chrome production builds, cross-browser packaged-reference validation, and exact Firefox extension linting. +- Cross-workflow reproducibility and cancellation: every `actions/setup-node@v4` use reads `.nvmrc` and enables npm caching, every CI npm dependency installation uses `npm ci`, and all three repository workflows declare least-privilege `contents: read` plus concurrency group `${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}` with cancellation of obsolete in-progress runs. Existing PHP version, MySQL service, Composer install, PHPCS, PHPUnit, WordPress test-library installation, and PHP workflow trigger behavior remain unchanged; the PHPUnit workflow's Node install and schema build are now separate deterministic steps. +- Validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run type-check`, `npm run lint`, and sequential Firefox and Chrome production builds. Both builds retain only the known Playground dynamic-request and asset-size warnings, preserve the approximately 21.2 MiB application bundle and established asynchronous chunks, and produce plugin archives that pass complete ZIP integrity checks. `npm run validate:extension-builds` validates all nine references in each packaged manifest, and `npm run lint:extension:firefox` reports zero errors with the single exact allowed `UNSUPPORTED_API` warning while ignoring only `app.js`. +- Audit and structural result: npm audit reproduces the inherited 111 effect packages (9 low, 15 moderate, 87 high, and zero critical) and 60 unique GHSAs, with no dependency change attributable to this child. All three workflow files parse as YAML; executable invariants confirm zero CI `npm install` commands, every Node setup's `.nvmrc` and npm-cache configuration, exact browser triggers and gate order, repository-wide permissions/concurrency, root metadata synchronization, the approved-plan-prefix SHA-256 `6c29481eab5ef6c57aec974295193492861bc7efeba1bd612e45c94d10b1bfaa`, Markdown wrapping, `git diff --check`, and final scope. From 10f08ec7315d99614f6165ee6be9b1fa31f2bb6a Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 08:08:46 +0400 Subject: [PATCH 27/40] docs: link Node CI child PR --- plan.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plan.md b/plan.md index 3a9e8edf..d216f2a4 100644 --- a/plan.md +++ b/plan.md @@ -473,9 +473,9 @@ Status: validated and merged into the integration branch by child pull request [ - Build and audit result: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, schema generation, JavaScript/style linting, TypeScript checking, and sequential Firefox and Chrome production builds. Both builds retain only the known Playground dynamic-request and asset-size warnings, satisfy all nine manifest reference entries, preserve the approximately 21.2 MiB `app.js` and three established asynchronous chunks, and produce plugin archives that pass complete ZIP integrity tests. No dependency or lockfile changes are present; npm audit remains at the inherited 111 effect packages (9 low, 15 moderate, 87 high, and zero critical) and 60 unique advisories, with no audit drift attributable to this child. - Scope and manual risk: no application behavior, webpack configuration, dependency, CI workflow, Composer file, or license metadata changes are present. Manual pre-publication review must settle the provisional Firefox identity and verify that the declared remote data flow still matches the shipping extension; the normal unpacked-build checks remain required. -### Child Execution Record: `agent/maintenance-013-node-ci` +### Child Execution Record: [#212](https://github.com/WordPress/try-wordpress/pull/212) -Status: implemented and validated locally on child branch `agent/maintenance-013-node-ci`, which targets the integration branch; permanent child pull request link pending. +Status: validated locally in child pull request [#212](https://github.com/WordPress/try-wordpress/pull/212), which targets the integration branch. - Runtime contract: root `.nvmrc` selects Node major `24`, while `package.json` and the root package-lock metadata declare exact supported engine range `>=24 <25`. Removing only that new engine metadata from the lock produces a semantic package-lock graph identical to the pre-child lock, with no dependency-version, integrity, resolved-URL, package-path, or license-metadata drift. - Schema-aware type gate: stable command `npm run type-check` runs `npm run build:schema && tsc --noEmit`, so the generated schema is refreshed immediately before every TypeScript check. The browser workflow uses this command directly after JavaScript/style linting. From 5086c86d3773380caabd16703d9c23238446ba0d Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 08:37:35 +0400 Subject: [PATCH 28/40] chore: fix build commands and remove Jest scaffolding Make aggregate development and production builds emit both browser targets. Replace abandoned frontend test guidance with the repository's actual validation commands. --- .eslintrc | 6 ---- CONTRIBUTING.md | 73 +++++++++++++++++++++++++++++-------------------- jest.config.cjs | 8 ------ jest.setup.js | 31 --------------------- package.json | 4 +-- plan.md | 11 +++++++- 6 files changed, 55 insertions(+), 78 deletions(-) delete mode 100644 jest.config.cjs delete mode 100644 jest.setup.js diff --git a/.eslintrc b/.eslintrc index 7a7fa57d..02906022 100644 --- a/.eslintrc +++ b/.eslintrc @@ -2,12 +2,6 @@ "extends": [ "plugin:@wordpress/eslint-plugin/recommended" ], - "plugins": [ - "jest" - ], - "env": { - "jest/globals": true - }, "settings": { "import/resolver": { "typescript": { diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index da85e116..004536ee 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -7,13 +7,20 @@ This repo provides a development environment that facilitates: ## Development environment - Browser extension -First install required dependencies: +Use Node 24 as selected by `.nvmrc`, then install the exact locked dependencies: ```shell -npm install +nvm use +npm ci ``` -Then build the extension: +Build both development targets sequentially: + +```shell +npm run build +``` + +The Firefox development build is written to `build/firefox`, and the Chrome development build is written to `build/chrome`. To build only one target: ```shell npm run build:firefox @@ -21,7 +28,7 @@ npm run build:firefox npm run build:chrome ``` -You can then use the `start` script to start a browser instance separate from your main instance that has the extension automatically installed: +Use a target-specific start command to build the target, open a separate browser instance with the extension installed, watch source files, and automatically reload the extension: ```shell npm run start:firefox @@ -29,9 +36,7 @@ npm run start:firefox npm run start:chrome ``` -The extension will also automatically reload whenever you modify source files. - -> Please note that at the moment not all `web-ext` features work on chrome, so firefox is the recommended browser for developing this project, since it provides the best developer experience. One example of a `web-ext` feature that doesn't currently work on chrome is to have the developer tools and extension console automatically open when the extension loads. +> Please note that at the moment not all `web-ext` features work on Chrome, so Firefox is the recommended browser for developing this project because it provides the best developer experience. For example, Chrome does not support automatically opening the developer tools and extension console when the extension loads. ### Firefox publication identity and data disclosure @@ -41,7 +46,13 @@ Firefox 142.0 is the minimum supported version. Firefox's built-in data-collecti The extension transmits selected source-page HTML, text, and links, plus selected source URLs and domains, to the WordPress Playground running in the remote-origin `https://pg.ashfame.com/remote.html` iframe. The Firefox manifest therefore declares the required `websiteContent` and `browsingActivity` data categories; element-selection clicks and pointer movement stay local and are not declared as `websiteActivity`. -Production packages can be checked after building both targets: +Build both production targets sequentially: + +```shell +npm run build:production +``` + +The Firefox production build is written to `build/production/firefox`, and the Chrome production build is written to `build/production/chrome`. After building both production targets, validate the packaged references and lint the Firefox package: ```shell npm run validate:extension-builds @@ -52,70 +63,72 @@ The package validator confirms that both production manifests parse and every re ## Development environment - WordPress plugin -First install required dependencies: +Install the locked PHP dependencies: ```shell composer install ``` -The development environment requires [wp-env](https://developer.wordpress.org/block-editor/reference-guides/packages/packages-env/), you can install it with: +The development environment requires [wp-env](https://developer.wordpress.org/block-editor/reference-guides/packages/packages-env/). Install its executable globally if it is not already available: ```shell npm install -g @wordpress/env ``` Start the development environment: + ```shell composer run dev:start ``` -You will need docker engine running for this command to work, since `wp-env` uses container that runs on docker engine. -This command starts the WordPress environment and sets up the permalink structure. +Docker Engine must be running because `wp-env` uses containers. This command starts the WordPress environment and sets up the permalink structure. + +Stop the development environment: -To stop the development environment: ```shell composer run dev:stop ``` -Additionally, there is also support for `xdebug`, `phpcs` and `phpcbf`: +Start the environment with Xdebug: -For debugging with Xdebug: ```shell composer run dev:debug ``` -To run linting on the codebase: +Lint the plugin with PHPCS: + ```shell composer run lint ``` -To automatically fix linting issues: +Automatically fix eligible PHPCS issues: + ```shell composer run lint:fix ``` -## Building for production -You can build both the firefox and chrome versions of the extension with the following command. The resulting files will be under the `build/firefox` and `build/chrome` directories, respectively. +## Verification + +There is currently no frontend test suite. Validate the browser extension with the actual static-analysis, build, package-reference, and Firefox manifest gates: ```shell -npm run build +npm run lint +npm run type-check +npm run build:production +npm run validate:extension-builds +npm run lint:extension:firefox ``` -> We would soon have the build & release pipeline for publishing the plugin to WP.org repo. - -## Running tests - -You can run tests with: - -**For browser extension:** +Lint the WordPress plugin: ```shell -npm run test +composer run lint ``` -**For WordPress plugin:** +With Docker Engine running and the WordPress environment started through `composer run dev:start`, run the complete PHPUnit suite: ```shell composer run dev:test ``` -This command runs the tests in the WordPress environment using PHPUnit. + +This command runs the complete plugin suite in the WordPress test container using PHPUnit. diff --git a/jest.config.cjs b/jest.config.cjs deleted file mode 100644 index d22474d8..00000000 --- a/jest.config.cjs +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - transform: { - '^.+\\.jsx?$': 'babel-jest', // Transform JavaScript files using babel-jest - }, - setupFiles: [ './jest.setup.js' ], - testEnvironment: 'jsdom', - testPathIgnorePatterns: [ '/tests/e2e/*' ], -}; diff --git a/jest.setup.js b/jest.setup.js deleted file mode 100644 index e2d52a5a..00000000 --- a/jest.setup.js +++ /dev/null @@ -1,31 +0,0 @@ -/* eslint-disable no-undef */ - -// We need this when running jest test in the context of the browser. -import { TextDecoder, TextEncoder } from 'util'; -global.TextEncoder = TextEncoder; -global.TextDecoder = TextDecoder; - -global.chrome = { - runtime: { - onMessage: { - addListener: jest.fn(), // eslint-disable-line no-undef - }, - }, -}; - -global.HTMLElement = class {}; - -// Patch JSDOM with window.matchMedia -Object.defineProperty( window, 'matchMedia', { - writable: true, - value: jest.fn().mockImplementation( ( query ) => ( { - matches: false, - media: query, - onchange: null, - addListener: jest.fn(), // Deprecated - removeListener: jest.fn(), // Deprecated - addEventListener: jest.fn(), - removeEventListener: jest.fn(), - dispatchEvent: jest.fn(), - } ) ), -} ); diff --git a/package.json b/package.json index 5e1ae0b6..c18392e9 100644 --- a/package.json +++ b/package.json @@ -4,8 +4,8 @@ "node": ">=24 <25" }, "scripts": { - "build": "echo 'Please choose a target: build:firefox or build:chrome, or build:production:firefox or build:production:chrome'", - "build:production": "echo 'Please choose a target: build:production:firefox or build:production:chrome'", + "build": "npm run build:firefox && npm run build:chrome", + "build:production": "npm run build:production:firefox && npm run build:production:chrome", "build:production:firefox": "rm -rf build/production/firefox && webpack --env mode=production --env target=firefox", "build:production:chrome": "rm -rf build/production/chrome && webpack --env mode=production --env target=chrome", "build:firefox": "rm -rf build/firefox && webpack --env target=firefox", diff --git a/plan.md b/plan.md index d216f2a4..afc691e2 100644 --- a/plan.md +++ b/plan.md @@ -475,7 +475,7 @@ Status: validated and merged into the integration branch by child pull request [ ### Child Execution Record: [#212](https://github.com/WordPress/try-wordpress/pull/212) -Status: validated locally in child pull request [#212](https://github.com/WordPress/try-wordpress/pull/212), which targets the integration branch. +Status: validated and merged into the integration branch by child pull request [#212](https://github.com/WordPress/try-wordpress/pull/212) at merge commit `28972c9339f4f6e4389e12ce9bdf666d4cc613f6`. - Runtime contract: root `.nvmrc` selects Node major `24`, while `package.json` and the root package-lock metadata declare exact supported engine range `>=24 <25`. Removing only that new engine metadata from the lock produces a semantic package-lock graph identical to the pre-child lock, with no dependency-version, integrity, resolved-URL, package-path, or license-metadata drift. - Schema-aware type gate: stable command `npm run type-check` runs `npm run build:schema && tsc --noEmit`, so the generated schema is refreshed immediately before every TypeScript check. The browser workflow uses this command directly after JavaScript/style linting. @@ -483,3 +483,12 @@ Status: validated locally in child pull request [#212](https://github.com/WordPr - Cross-workflow reproducibility and cancellation: every `actions/setup-node@v4` use reads `.nvmrc` and enables npm caching, every CI npm dependency installation uses `npm ci`, and all three repository workflows declare least-privilege `contents: read` plus concurrency group `${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}` with cancellation of obsolete in-progress runs. Existing PHP version, MySQL service, Composer install, PHPCS, PHPUnit, WordPress test-library installation, and PHP workflow trigger behavior remain unchanged; the PHPUnit workflow's Node install and schema build are now separate deterministic steps. - Validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run type-check`, `npm run lint`, and sequential Firefox and Chrome production builds. Both builds retain only the known Playground dynamic-request and asset-size warnings, preserve the approximately 21.2 MiB application bundle and established asynchronous chunks, and produce plugin archives that pass complete ZIP integrity checks. `npm run validate:extension-builds` validates all nine references in each packaged manifest, and `npm run lint:extension:firefox` reports zero errors with the single exact allowed `UNSUPPORTED_API` warning while ignoring only `app.js`. - Audit and structural result: npm audit reproduces the inherited 111 effect packages (9 low, 15 moderate, 87 high, and zero critical) and 60 unique GHSAs, with no dependency change attributable to this child. All three workflow files parse as YAML; executable invariants confirm zero CI `npm install` commands, every Node setup's `.nvmrc` and npm-cache configuration, exact browser triggers and gate order, repository-wide permissions/concurrency, root metadata synchronization, the approved-plan-prefix SHA-256 `6c29481eab5ef6c57aec974295193492861bc7efeba1bd612e45c94d10b1bfaa`, Markdown wrapping, `git diff --check`, and final scope. + +### Child Execution Record: `agent/maintenance-014-commands-and-jest` + +Status: implemented and validated locally on child branch `agent/maintenance-014-commands-and-jest`, which targets the integration branch; permanent child pull request link pending. + +- Root cause and command correction: the root aggregate browser build commands only printed target-selection guidance even though CONTRIBUTING described `npm run build` as a real build, while the production instructions named development output directories. `npm run build` now sequentially invokes the existing Firefox and Chrome development target scripts, and `npm run build:production` sequentially invokes the existing Firefox and Chrome production target scripts; no other npm script, dependency, package metadata, or lockfile content changes. +- Abandoned test cleanup: `jest.config.cjs` and `jest.setup.js` are removed because the frontend test suite was intentionally removed and the deleted Jest test only asserted `true === true`; the obsolete Jest plugin and globals environment are removed from `.eslintrc` while every other lint setting remains unchanged. No frontend tests are restored, and no project-level Jest reference remains outside historical execution records and transitive package-lock data. +- Contributor documentation: CONTRIBUTING requires Node 24 and clean `npm ci`, accurately documents aggregate and per-target development builds at `build/firefox` and `build/chrome`, aggregate production builds at `build/production/firefox` and `build/production/chrome`, target-specific start commands, the retained Firefox publication identity and data disclosure, plugin environment commands, and the actual browser and PHP verification gates. The nonexistent frontend test command is replaced by `npm run lint`, `npm run type-check`, `npm run build:production`, `npm run validate:extension-builds`, `npm run lint:extension:firefox`, `composer run lint`, and complete `composer run dev:test` instructions. +- Validation and alert result: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run lint`, `npm run type-check`, aggregate `npm run build`, and aggregate `npm run build:production`; both aggregate commands built Firefox before Chrome into the documented paths. All four development and production plugin archives pass complete ZIP integrity checks, both production manifests validate all nine packaged references, and Firefox lint reports zero errors with the single exact allowed `UNSUPPORTED_API` warning while ignoring only `app.js`. All 24 documented shell command lines resolve to declared npm or Composer scripts or explicit executable setup commands. npm audit remains at the inherited 111 effect packages (9 low, 15 moderate, 87 high, and zero critical) and 60 unique GHSAs, with no dependency, lockfile, baseline-alert, application-source, manifest, CI, Composer, wp-env, or license change. From 191d6335ee43ebfb7261c995a1c6fc1bb4a6ac96 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 08:38:01 +0400 Subject: [PATCH 29/40] docs: link command cleanup child PR --- plan.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plan.md b/plan.md index afc691e2..f07f3829 100644 --- a/plan.md +++ b/plan.md @@ -484,9 +484,9 @@ Status: validated and merged into the integration branch by child pull request [ - Validation: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run type-check`, `npm run lint`, and sequential Firefox and Chrome production builds. Both builds retain only the known Playground dynamic-request and asset-size warnings, preserve the approximately 21.2 MiB application bundle and established asynchronous chunks, and produce plugin archives that pass complete ZIP integrity checks. `npm run validate:extension-builds` validates all nine references in each packaged manifest, and `npm run lint:extension:firefox` reports zero errors with the single exact allowed `UNSUPPORTED_API` warning while ignoring only `app.js`. - Audit and structural result: npm audit reproduces the inherited 111 effect packages (9 low, 15 moderate, 87 high, and zero critical) and 60 unique GHSAs, with no dependency change attributable to this child. All three workflow files parse as YAML; executable invariants confirm zero CI `npm install` commands, every Node setup's `.nvmrc` and npm-cache configuration, exact browser triggers and gate order, repository-wide permissions/concurrency, root metadata synchronization, the approved-plan-prefix SHA-256 `6c29481eab5ef6c57aec974295193492861bc7efeba1bd612e45c94d10b1bfaa`, Markdown wrapping, `git diff --check`, and final scope. -### Child Execution Record: `agent/maintenance-014-commands-and-jest` +### Child Execution Record: [#213](https://github.com/WordPress/try-wordpress/pull/213) -Status: implemented and validated locally on child branch `agent/maintenance-014-commands-and-jest`, which targets the integration branch; permanent child pull request link pending. +Status: validated locally in child pull request [#213](https://github.com/WordPress/try-wordpress/pull/213), which targets the integration branch. - Root cause and command correction: the root aggregate browser build commands only printed target-selection guidance even though CONTRIBUTING described `npm run build` as a real build, while the production instructions named development output directories. `npm run build` now sequentially invokes the existing Firefox and Chrome development target scripts, and `npm run build:production` sequentially invokes the existing Firefox and Chrome production target scripts; no other npm script, dependency, package metadata, or lockfile content changes. - Abandoned test cleanup: `jest.config.cjs` and `jest.setup.js` are removed because the frontend test suite was intentionally removed and the deleted Jest test only asserted `true === true`; the obsolete Jest plugin and globals environment are removed from `.eslintrc` while every other lint setting remains unchanged. No frontend tests are restored, and no project-level Jest reference remains outside historical execution records and transitive package-lock data. From 9b60aad9fb984302fbfdacaf521512f807f60882 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 09:19:42 +0400 Subject: [PATCH 30/40] ci: align WordPress PHP and MySQL test targets Use latest stable WordPress with PHP 8.4 locally and test PHP 8.3 and 8.4 against MySQL 8.0 in CI. Freeze the resolved WordPress version per job so core and PHPUnit fixtures stay matched. --- .github/workflows/wp-linting.yml | 9 +++++++-- .github/workflows/wp-tests.yml | 29 +++++++++++++++++++++++++---- .wp-env.json | 9 ++------- CONTRIBUTING.md | 4 +++- plan.md | 12 +++++++++++- tests/bin/install-wp-tests.sh | 10 ++++++++-- 6 files changed, 56 insertions(+), 17 deletions(-) diff --git a/.github/workflows/wp-linting.yml b/.github/workflows/wp-linting.yml index a78dffa9..8373bb98 100644 --- a/.github/workflows/wp-linting.yml +++ b/.github/workflows/wp-linting.yml @@ -13,9 +13,14 @@ concurrency: jobs: phpcs: - name: phpcs + name: PHPCS PHP ${{ matrix.php }} runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + php: [ '8.3', '8.4' ] + steps: - name: Check out repository uses: actions/checkout@v4 @@ -23,7 +28,7 @@ jobs: - name: Install PHP uses: shivammathur/setup-php@v2 with: - php-version: '8.3' + php-version: ${{ matrix.php }} coverage: 'none' tools: composer, cs2pr diff --git a/.github/workflows/wp-tests.yml b/.github/workflows/wp-tests.yml index 944284df..81a76707 100644 --- a/.github/workflows/wp-tests.yml +++ b/.github/workflows/wp-tests.yml @@ -18,7 +18,7 @@ jobs: services: mysql: - image: mysql:5.7 + image: mysql:8.0 ports: - 3306/tcp env: @@ -33,7 +33,7 @@ jobs: strategy: fail-fast: false matrix: - php: [ '8.3' ] + php: [ '8.3', '8.4' ] steps: - name: Check out Git repository @@ -52,11 +52,14 @@ jobs: coverage: 'none' tools: composer - - name: Install dependencies + - name: Install locked Composer dependencies uses: ramsey/composer-install@v2 with: composer-options: "--no-progress --no-ansi --no-interaction" + - name: Audit locked Composer dependencies + run: composer audit --locked --no-interaction + - name: Install Node dependencies run: npm ci @@ -66,8 +69,26 @@ jobs: - name: Install Subversion run: sudo apt-get update && sudo apt-get install --no-install-recommends --yes subversion + - name: Resolve latest stable WordPress version + id: wordpress + run: | + wordpress_version="$(curl --fail --silent --show-error https://api.wordpress.org/core/version-check/1.7/ | jq -er '.offers[0].version')" + if [[ ! "$wordpress_version" =~ ^[0-9]+\.[0-9]+(\.[0-9]+)?$ ]]; then + echo "Unexpected WordPress version: $wordpress_version" >&2 + exit 1 + fi + echo "version=$wordpress_version" >> "$GITHUB_OUTPUT" + - name: Install WordPress test setup - run: bash tests/bin/install-wp-tests.sh wordpress_test root password 127.0.0.1:${{ job.services.mysql.ports[3306] }} latest + env: + WORDPRESS_VERSION: ${{ steps.wordpress.outputs.version }} + run: bash tests/bin/install-wp-tests.sh wordpress_test root password 127.0.0.1:${{ job.services.mysql.ports['3306'] }} "$WORDPRESS_VERSION" + + - name: Verify installed WordPress version + env: + WORDPRESS_VERSION: ${{ steps.wordpress.outputs.version }} + run: >- + php -r "require '/tmp/wordpress/wp-includes/version.php'; exit( \$wp_version === getenv( 'WORDPRESS_VERSION' ) ? 0 : 1 );" - name: Setup problem matchers for PHPUnit run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" diff --git a/.wp-env.json b/.wp-env.json index c46e4119..3831ac6b 100644 --- a/.wp-env.json +++ b/.wp-env.json @@ -1,11 +1,6 @@ { - "core": "WordPress/WordPress#6.6.2", - "phpVersion": "8.3", - "env": { - "tests": { - "phpVersion": "8.3" - } - }, + "core": null, + "phpVersion": "8.4", "plugins": [ "./src/plugin" ], "mappings": { "wp-content/phpunit.xml.dist": "./phpunit.xml.dist", diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 004536ee..7ff1c984 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -63,6 +63,8 @@ The package validator confirms that both production manifests parse and every re ## Development environment - WordPress plugin +The local wp-env configuration uses the latest stable WordPress release with PHP 8.4. CI verifies the complete plugin suite against the latest stable WordPress release on PHP 8.3 and PHP 8.4 with MySQL 8.0. The local database service is managed by wp-env and is not asserted to use the same MySQL version as CI. + Install the locked PHP dependencies: ```shell @@ -131,4 +133,4 @@ With Docker Engine running and the WordPress environment started through `compos composer run dev:test ``` -This command runs the complete plugin suite in the WordPress test container using PHPUnit. +This command runs the complete plugin suite in the WordPress test container using PHPUnit on the local wp-env defaults of latest stable WordPress and PHP 8.4. diff --git a/plan.md b/plan.md index f07f3829..b7407f79 100644 --- a/plan.md +++ b/plan.md @@ -486,9 +486,19 @@ Status: validated and merged into the integration branch by child pull request [ ### Child Execution Record: [#213](https://github.com/WordPress/try-wordpress/pull/213) -Status: validated locally in child pull request [#213](https://github.com/WordPress/try-wordpress/pull/213), which targets the integration branch. +Status: validated and merged into the integration branch by child pull request [#213](https://github.com/WordPress/try-wordpress/pull/213) at merge commit `a3e940c1b0ef8c1d187cf581a71423c529344c91`. - Root cause and command correction: the root aggregate browser build commands only printed target-selection guidance even though CONTRIBUTING described `npm run build` as a real build, while the production instructions named development output directories. `npm run build` now sequentially invokes the existing Firefox and Chrome development target scripts, and `npm run build:production` sequentially invokes the existing Firefox and Chrome production target scripts; no other npm script, dependency, package metadata, or lockfile content changes. - Abandoned test cleanup: `jest.config.cjs` and `jest.setup.js` are removed because the frontend test suite was intentionally removed and the deleted Jest test only asserted `true === true`; the obsolete Jest plugin and globals environment are removed from `.eslintrc` while every other lint setting remains unchanged. No frontend tests are restored, and no project-level Jest reference remains outside historical execution records and transitive package-lock data. - Contributor documentation: CONTRIBUTING requires Node 24 and clean `npm ci`, accurately documents aggregate and per-target development builds at `build/firefox` and `build/chrome`, aggregate production builds at `build/production/firefox` and `build/production/chrome`, target-specific start commands, the retained Firefox publication identity and data disclosure, plugin environment commands, and the actual browser and PHP verification gates. The nonexistent frontend test command is replaced by `npm run lint`, `npm run type-check`, `npm run build:production`, `npm run validate:extension-builds`, `npm run lint:extension:firefox`, `composer run lint`, and complete `composer run dev:test` instructions. - Validation and alert result: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run lint`, `npm run type-check`, aggregate `npm run build`, and aggregate `npm run build:production`; both aggregate commands built Firefox before Chrome into the documented paths. All four development and production plugin archives pass complete ZIP integrity checks, both production manifests validate all nine packaged references, and Firefox lint reports zero errors with the single exact allowed `UNSUPPORTED_API` warning while ignoring only `app.js`. All 24 documented shell command lines resolve to declared npm or Composer scripts or explicit executable setup commands. npm audit remains at the inherited 111 effect packages (9 low, 15 moderate, 87 high, and zero critical) and 60 unique GHSAs, with no dependency, lockfile, baseline-alert, application-source, manifest, CI, Composer, wp-env, or license change. + +### Child Execution Record: `agent/maintenance-015-php-matrix` + +Status: implemented and validated locally on child branch `agent/maintenance-015-php-matrix`, which targets the integration branch; permanent child pull request link pending. + +- Local environment alignment: `.wp-env.json` removes the WordPress `6.6.2` pin and obsolete tests-only PHP override, uses schema-valid `core: null` for the latest production WordPress release, and sets root PHP `8.4` while preserving the plugin and every mapping unchanged. +- CI matrix alignment: the complete PHPUnit workflow now runs PHP `8.3` and `8.4` against `mysql:8.0`, retains clean locked Composer and Node installs plus schema generation, audits the Composer lock in each job, and runs the unfiltered suite. The PHPCS workflow runs its unchanged complete reporting command on PHP `8.3` and `8.4`; workflow triggers, Node 24 setup/cache, permissions, concurrency, Composer configuration, PHPUnit configuration, dependencies, and locks remain unchanged. +- Deterministic WordPress setup: each PHPUnit matrix job resolves the latest stable version exactly once from the WordPress version API, validates its stable numeric form, passes that exact value to the installer, and asserts the installed core version. The installer now treats exact `x.y.z` versions as exact archive and test-library tags while preserving WordPress's `x.y.0` convention of the `x.y` archive and tag, so core and PHPUnit fixtures cannot diverge through separate moving `latest` requests. +- Documentation and validation: CONTRIBUTING records local latest-stable WordPress with PHP `8.4`, CI PHP `8.3`/`8.4` with MySQL `8.0`, and explicitly avoids claiming that wp-env's managed local database matches the CI service version. Node `v24.18.0` with npm `11.16.0` completed clean `npm ci` and schema generation. The official wp-env schema, JSON, workflow YAML, `actionlint`, Bash syntax, exact target assertions, Markdown wrapping, approved-plan prefix, 124-row count, `git diff --check`, and scope checks pass. +- PHP validation and alert result: isolated official PHP `8.3` and `8.4` runtimes each completed a clean locked Composer install, `composer audit --locked` with no advisory, complete PHPCS, and PHPUnit `9.6.33` with 46 tests and 121 assertions against independently resolved exact WordPress `7.0.2`, byte-matched `tags/7.0.2` test fixtures, and stock MySQL `8.0.46`. A focused `7.0.0` installation confirmed exact `wordpress-7.0` core and `tags/7.0` fixtures. This child changes no dependency, lockfile, baseline-alert status, application source, manifest, package metadata, PHPUnit configuration, or license metadata. diff --git a/tests/bin/install-wp-tests.sh b/tests/bin/install-wp-tests.sh index c6f53dc5..26b90cf0 100644 --- a/tests/bin/install-wp-tests.sh +++ b/tests/bin/install-wp-tests.sh @@ -31,7 +31,7 @@ if [[ $WP_VERSION =~ ^[0-9]+\.[0-9]+\-(beta|RC)[0-9]+$ ]]; then elif [[ $WP_VERSION =~ ^[0-9]+\.[0-9]+$ ]]; then WP_TESTS_TAG="branches/$WP_VERSION" -elif [[ $WP_VERSION =~ [0-9]+\.[0-9]+\.[0-9]+ ]]; then +elif [[ $WP_VERSION =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then if [[ $WP_VERSION =~ [0-9]+\.[0-9]+\.[0] ]]; then # version x.x.0 means the first release of the major version, so strip off the .0 and download version x.x WP_TESTS_TAG="tags/${WP_VERSION%??}" @@ -69,7 +69,13 @@ install_wp() { else if [ $WP_VERSION == 'latest' ]; then local ARCHIVE_NAME='latest' - elif [[ $WP_VERSION =~ [0-9]+\.[0-9]+ ]]; then + elif [[ $WP_VERSION =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then + if [[ $WP_VERSION =~ [0-9]+\.[0-9]+\.[0] ]]; then + local ARCHIVE_NAME="wordpress-${WP_VERSION%??}" + else + local ARCHIVE_NAME="wordpress-$WP_VERSION" + fi + elif [[ $WP_VERSION =~ ^[0-9]+\.[0-9]+$ ]]; then # https serves multiple offers, whereas http serves single. download https://api.wordpress.org/core/version-check/1.7/ $TMPDIR/wp-latest.json if [[ $WP_VERSION =~ [0-9]+\.[0-9]+\.[0] ]]; then From ec1b8ce9eb72d8a3e8e78b5f1593fc8290e7b719 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 09:20:10 +0400 Subject: [PATCH 31/40] docs: link PHP matrix child PR --- plan.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plan.md b/plan.md index b7407f79..ea76516a 100644 --- a/plan.md +++ b/plan.md @@ -493,9 +493,9 @@ Status: validated and merged into the integration branch by child pull request [ - Contributor documentation: CONTRIBUTING requires Node 24 and clean `npm ci`, accurately documents aggregate and per-target development builds at `build/firefox` and `build/chrome`, aggregate production builds at `build/production/firefox` and `build/production/chrome`, target-specific start commands, the retained Firefox publication identity and data disclosure, plugin environment commands, and the actual browser and PHP verification gates. The nonexistent frontend test command is replaced by `npm run lint`, `npm run type-check`, `npm run build:production`, `npm run validate:extension-builds`, `npm run lint:extension:firefox`, `composer run lint`, and complete `composer run dev:test` instructions. - Validation and alert result: Node `v24.18.0` with npm `11.16.0` completed clean `npm ci`, `npm run lint`, `npm run type-check`, aggregate `npm run build`, and aggregate `npm run build:production`; both aggregate commands built Firefox before Chrome into the documented paths. All four development and production plugin archives pass complete ZIP integrity checks, both production manifests validate all nine packaged references, and Firefox lint reports zero errors with the single exact allowed `UNSUPPORTED_API` warning while ignoring only `app.js`. All 24 documented shell command lines resolve to declared npm or Composer scripts or explicit executable setup commands. npm audit remains at the inherited 111 effect packages (9 low, 15 moderate, 87 high, and zero critical) and 60 unique GHSAs, with no dependency, lockfile, baseline-alert, application-source, manifest, CI, Composer, wp-env, or license change. -### Child Execution Record: `agent/maintenance-015-php-matrix` +### Child Execution Record: [#214](https://github.com/WordPress/try-wordpress/pull/214) -Status: implemented and validated locally on child branch `agent/maintenance-015-php-matrix`, which targets the integration branch; permanent child pull request link pending. +Status: validated locally in child pull request [#214](https://github.com/WordPress/try-wordpress/pull/214), which targets the integration branch. - Local environment alignment: `.wp-env.json` removes the WordPress `6.6.2` pin and obsolete tests-only PHP override, uses schema-valid `core: null` for the latest production WordPress release, and sets root PHP `8.4` while preserving the plugin and every mapping unchanged. - CI matrix alignment: the complete PHPUnit workflow now runs PHP `8.3` and `8.4` against `mysql:8.0`, retains clean locked Composer and Node installs plus schema generation, audits the Composer lock in each job, and runs the unfiltered suite. The PHPCS workflow runs its unchanged complete reporting command on PHP `8.3` and `8.4`; workflow triggers, Node 24 setup/cache, permissions, concurrency, Composer configuration, PHPUnit configuration, dependencies, and locks remain unchanged. From c2ddcc01c59bf200a54eb7b5cc1bdac6ead51ae0 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 09:32:56 +0400 Subject: [PATCH 32/40] Configure monthly dependency updates --- .github/dependabot.yml | 28 ++++++++++++++++++++++++++++ plan.md | 12 +++++++++++- 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 00000000..36acf40e --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,28 @@ +version: 2 + +updates: + - package-ecosystem: npm + directory: / + schedule: + interval: monthly + open-pull-requests-limit: 4 + groups: + npm-production: + applies-to: version-updates + dependency-type: production + npm-development: + applies-to: version-updates + dependency-type: development + + - package-ecosystem: composer + directory: / + schedule: + interval: monthly + open-pull-requests-limit: 4 + groups: + composer-production: + applies-to: version-updates + dependency-type: production + composer-development: + applies-to: version-updates + dependency-type: development diff --git a/plan.md b/plan.md index ea76516a..95964a4f 100644 --- a/plan.md +++ b/plan.md @@ -495,10 +495,20 @@ Status: validated and merged into the integration branch by child pull request [ ### Child Execution Record: [#214](https://github.com/WordPress/try-wordpress/pull/214) -Status: validated locally in child pull request [#214](https://github.com/WordPress/try-wordpress/pull/214), which targets the integration branch. +Status: validated and merged into the integration branch by child pull request [#214](https://github.com/WordPress/try-wordpress/pull/214) at merge commit `ac107e42eea15aa3082827696882367b40db606b`. - Local environment alignment: `.wp-env.json` removes the WordPress `6.6.2` pin and obsolete tests-only PHP override, uses schema-valid `core: null` for the latest production WordPress release, and sets root PHP `8.4` while preserving the plugin and every mapping unchanged. - CI matrix alignment: the complete PHPUnit workflow now runs PHP `8.3` and `8.4` against `mysql:8.0`, retains clean locked Composer and Node installs plus schema generation, audits the Composer lock in each job, and runs the unfiltered suite. The PHPCS workflow runs its unchanged complete reporting command on PHP `8.3` and `8.4`; workflow triggers, Node 24 setup/cache, permissions, concurrency, Composer configuration, PHPUnit configuration, dependencies, and locks remain unchanged. - Deterministic WordPress setup: each PHPUnit matrix job resolves the latest stable version exactly once from the WordPress version API, validates its stable numeric form, passes that exact value to the installer, and asserts the installed core version. The installer now treats exact `x.y.z` versions as exact archive and test-library tags while preserving WordPress's `x.y.0` convention of the `x.y` archive and tag, so core and PHPUnit fixtures cannot diverge through separate moving `latest` requests. - Documentation and validation: CONTRIBUTING records local latest-stable WordPress with PHP `8.4`, CI PHP `8.3`/`8.4` with MySQL `8.0`, and explicitly avoids claiming that wp-env's managed local database matches the CI service version. Node `v24.18.0` with npm `11.16.0` completed clean `npm ci` and schema generation. The official wp-env schema, JSON, workflow YAML, `actionlint`, Bash syntax, exact target assertions, Markdown wrapping, approved-plan prefix, 124-row count, `git diff --check`, and scope checks pass. - PHP validation and alert result: isolated official PHP `8.3` and `8.4` runtimes each completed a clean locked Composer install, `composer audit --locked` with no advisory, complete PHPCS, and PHPUnit `9.6.33` with 46 tests and 121 assertions against independently resolved exact WordPress `7.0.2`, byte-matched `tags/7.0.2` test fixtures, and stock MySQL `8.0.46`. A focused `7.0.0` installation confirmed exact `wordpress-7.0` core and `tags/7.0` fixtures. This child changes no dependency, lockfile, baseline-alert status, application source, manifest, package metadata, PHPUnit configuration, or license metadata. + +### Child Execution Record: `agent/maintenance-016-dependabot` + +Status: implemented and validated locally; pull request URL: `TBD`. + +- Automated version upkeep: root `.github/dependabot.yml` enables npm and Composer version updates on GitHub's monthly schedule, with each ecosystem rooted at `/`. +- Grouping and security reviewability: each ecosystem has separate production and development groups explicitly limited to `applies-to: version-updates`. Security updates remain outside these grouped version-update rules so causal remediation stays independently reviewable. +- Pull-request bound: each ecosystem sets `open-pull-requests-limit: 4`, bounding concurrent version-update pull requests while leaving GitHub's separately handled security updates unaffected. +- Scope: no dependency declaration, lockfile, application source, CI workflow, repository license, or license metadata changes are present. +- Validation: GitHub's current Dependabot options reference confirms every configured key and value; Python YAML parsing, the current SchemaStore Dependabot 2.0 JSON schema, exact structural and root-manifest assertions, the approved-plan-prefix SHA-256 `6c29481eab5ef6c57aec974295193492861bc7efeba1bd612e45c94d10b1bfaa`, the 124-row baseline-alert count, and `git diff --check` all pass. From b5d28a139a774c086b63d35be01d627a3912cd36 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 09:33:16 +0400 Subject: [PATCH 33/40] Link dependency upkeep child PR --- plan.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plan.md b/plan.md index 95964a4f..7cfdb156 100644 --- a/plan.md +++ b/plan.md @@ -503,9 +503,9 @@ Status: validated and merged into the integration branch by child pull request [ - Documentation and validation: CONTRIBUTING records local latest-stable WordPress with PHP `8.4`, CI PHP `8.3`/`8.4` with MySQL `8.0`, and explicitly avoids claiming that wp-env's managed local database matches the CI service version. Node `v24.18.0` with npm `11.16.0` completed clean `npm ci` and schema generation. The official wp-env schema, JSON, workflow YAML, `actionlint`, Bash syntax, exact target assertions, Markdown wrapping, approved-plan prefix, 124-row count, `git diff --check`, and scope checks pass. - PHP validation and alert result: isolated official PHP `8.3` and `8.4` runtimes each completed a clean locked Composer install, `composer audit --locked` with no advisory, complete PHPCS, and PHPUnit `9.6.33` with 46 tests and 121 assertions against independently resolved exact WordPress `7.0.2`, byte-matched `tags/7.0.2` test fixtures, and stock MySQL `8.0.46`. A focused `7.0.0` installation confirmed exact `wordpress-7.0` core and `tags/7.0` fixtures. This child changes no dependency, lockfile, baseline-alert status, application source, manifest, package metadata, PHPUnit configuration, or license metadata. -### Child Execution Record: `agent/maintenance-016-dependabot` +### Child Execution Record: [#215](https://github.com/WordPress/try-wordpress/pull/215) -Status: implemented and validated locally; pull request URL: `TBD`. +Status: implemented and validated locally in child pull request [#215](https://github.com/WordPress/try-wordpress/pull/215), which targets the integration branch. - Automated version upkeep: root `.github/dependabot.yml` enables npm and Composer version updates on GitHub's monthly schedule, with each ecosystem rooted at `/`. - Grouping and security reviewability: each ecosystem has separate production and development groups explicitly limited to `applies-to: version-updates`. Security updates remain outside these grouped version-update rules so causal remediation stays independently reviewable. From 41b340d5904b6cd1d9e130e6e6d0f829a9758313 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 09:48:24 +0400 Subject: [PATCH 34/40] Complete package metadata and backup ignores --- .gitignore | 2 ++ composer.json | 2 +- package-lock.json | 5 ++++- package.json | 3 +++ plan.md | 12 +++++++++++- 5 files changed, 21 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index da1a8127..f0031191 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,5 @@ schema/schema.json .phpunit.result.cache src/plugin/schema.json +/backup.sql +/backup-*.sql diff --git a/composer.json b/composer.json index 54ee2833..5b278944 100644 --- a/composer.json +++ b/composer.json @@ -1,6 +1,6 @@ { "name": "wordpress/try-wordpress", - "description": "", + "description": "Import an existing website into WordPress with the Try WordPress browser extension.", "license": "", "require-dev": { "phpunit/phpunit": "^9.6.33", diff --git a/package-lock.json b/package-lock.json index e01a1a8a..61d784b6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,9 +1,12 @@ { - "name": "try-wordpress-maintenance-005-wordpress-blocks", + "name": "try-wordpress", + "version": "0.0.1", "lockfileVersion": 3, "requires": true, "packages": { "": { + "name": "try-wordpress", + "version": "0.0.1", "engines": { "node": ">=24 <25" }, diff --git a/package.json b/package.json index c18392e9..70bab0c7 100644 --- a/package.json +++ b/package.json @@ -1,4 +1,7 @@ { + "name": "try-wordpress", + "version": "0.0.1", + "private": true, "type": "module", "engines": { "node": ">=24 <25" diff --git a/plan.md b/plan.md index 7cfdb156..19641f55 100644 --- a/plan.md +++ b/plan.md @@ -505,10 +505,20 @@ Status: validated and merged into the integration branch by child pull request [ ### Child Execution Record: [#215](https://github.com/WordPress/try-wordpress/pull/215) -Status: implemented and validated locally in child pull request [#215](https://github.com/WordPress/try-wordpress/pull/215), which targets the integration branch. +Status: validated and merged into the integration branch by child pull request [#215](https://github.com/WordPress/try-wordpress/pull/215) at merge commit `862ac5d00d93d7632c2a91056330b81b49bda36c`. - Automated version upkeep: root `.github/dependabot.yml` enables npm and Composer version updates on GitHub's monthly schedule, with each ecosystem rooted at `/`. - Grouping and security reviewability: each ecosystem has separate production and development groups explicitly limited to `applies-to: version-updates`. Security updates remain outside these grouped version-update rules so causal remediation stays independently reviewable. - Pull-request bound: each ecosystem sets `open-pull-requests-limit: 4`, bounding concurrent version-update pull requests while leaving GitHub's separately handled security updates unaffected. - Scope: no dependency declaration, lockfile, application source, CI workflow, repository license, or license metadata changes are present. - Validation: GitHub's current Dependabot options reference confirms every configured key and value; Python YAML parsing, the current SchemaStore Dependabot 2.0 JSON schema, exact structural and root-manifest assertions, the approved-plan-prefix SHA-256 `6c29481eab5ef6c57aec974295193492861bc7efeba1bd612e45c94d10b1bfaa`, the 124-row baseline-alert count, and `git diff --check` all pass. + +### Child Execution Record: `agent/maintenance-017-metadata-and-ignores` + +Status: implemented and validated locally; pull request URL: `TBD`. + +- Composer metadata: the root description now accurately identifies Try WordPress as a browser extension for importing an existing website into WordPress. The existing empty Composer license value is byte-semantically unchanged, and no other Composer declaration or lock entry changes. +- npm metadata: the private root package now declares repository-grounded name `try-wordpress`, plugin-header version `0.0.1`, and `private: true`; the existing Node engine range `>=24 <25`, scripts, and dependency declarations remain unchanged. npm 11 synchronizes the same name and version into the package-lock top level and root package, while exact semantic comparison after excluding only those identity fields proves every inherited lock entry unchanged. +- Backup ignores: `.gitignore` adds exactly `/backup.sql` and `/backup-*.sql`, matching the two root files emitted by `composer run dev:db` and `composer run dev:db:backup`; nested backup SQL files and unrelated SQL files remain trackable. +- Scope: `LICENSE`, plugin and extension metadata, license metadata, dependencies, resolved versions, integrity values, scripts, application source, and CI workflows are unchanged. +- Validation: Node `v24.18.0` with npm `11.16.0` parses both npm JSON files and reproduces the inherited audit result of 111 effects (9 low, 15 moderate, 87 high, and zero critical) across 60 unique GHSAs. Exact lock, metadata, engine, script, dependency, license, and ignore-behavior assertions pass. The official Composer 2 container validates `composer.json` and reports only the inherited warnings for the intentionally unchanged empty license field; `composer audit --locked --no-interaction` reports no advisory. The approved-plan-prefix SHA-256 remains `6c29481eab5ef6c57aec974295193492861bc7efeba1bd612e45c94d10b1bfaa`, the baseline table remains exactly 124 rows, and `git diff --check` passes. From 15ba50aa7ab9448167e642ed6b36d97f0d68fef2 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 09:48:47 +0400 Subject: [PATCH 35/40] Link metadata child PR --- plan.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plan.md b/plan.md index 19641f55..660ecd8a 100644 --- a/plan.md +++ b/plan.md @@ -513,9 +513,9 @@ Status: validated and merged into the integration branch by child pull request [ - Scope: no dependency declaration, lockfile, application source, CI workflow, repository license, or license metadata changes are present. - Validation: GitHub's current Dependabot options reference confirms every configured key and value; Python YAML parsing, the current SchemaStore Dependabot 2.0 JSON schema, exact structural and root-manifest assertions, the approved-plan-prefix SHA-256 `6c29481eab5ef6c57aec974295193492861bc7efeba1bd612e45c94d10b1bfaa`, the 124-row baseline-alert count, and `git diff --check` all pass. -### Child Execution Record: `agent/maintenance-017-metadata-and-ignores` +### Child Execution Record: [#216](https://github.com/WordPress/try-wordpress/pull/216) -Status: implemented and validated locally; pull request URL: `TBD`. +Status: implemented and validated locally in child pull request [#216](https://github.com/WordPress/try-wordpress/pull/216), which targets the integration branch. - Composer metadata: the root description now accurately identifies Try WordPress as a browser extension for importing an existing website into WordPress. The existing empty Composer license value is byte-semantically unchanged, and no other Composer declaration or lock entry changes. - npm metadata: the private root package now declares repository-grounded name `try-wordpress`, plugin-header version `0.0.1`, and `private: true`; the existing Node engine range `>=24 <25`, scripts, and dependency declarations remain unchanged. npm 11 synchronizes the same name and version into the package-lock top level and root package, while exact semantic comparison after excluding only those identity fields proves every inherited lock entry unchanged. From ff6d03f86291af1a13e5805aee69ebf0dac69116 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 09:59:38 +0400 Subject: [PATCH 36/40] Document stale branch deletion evidence --- plan.md | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/plan.md b/plan.md index 660ecd8a..0ac16513 100644 --- a/plan.md +++ b/plan.md @@ -515,10 +515,41 @@ Status: validated and merged into the integration branch by child pull request [ ### Child Execution Record: [#216](https://github.com/WordPress/try-wordpress/pull/216) -Status: implemented and validated locally in child pull request [#216](https://github.com/WordPress/try-wordpress/pull/216), which targets the integration branch. +Status: validated and merged into the integration branch by child pull request [#216](https://github.com/WordPress/try-wordpress/pull/216) at merge commit `f8473294df0b45bc0afa10e580f238068063c24d`. - Composer metadata: the root description now accurately identifies Try WordPress as a browser extension for importing an existing website into WordPress. The existing empty Composer license value is byte-semantically unchanged, and no other Composer declaration or lock entry changes. - npm metadata: the private root package now declares repository-grounded name `try-wordpress`, plugin-header version `0.0.1`, and `private: true`; the existing Node engine range `>=24 <25`, scripts, and dependency declarations remain unchanged. npm 11 synchronizes the same name and version into the package-lock top level and root package, while exact semantic comparison after excluding only those identity fields proves every inherited lock entry unchanged. - Backup ignores: `.gitignore` adds exactly `/backup.sql` and `/backup-*.sql`, matching the two root files emitted by `composer run dev:db` and `composer run dev:db:backup`; nested backup SQL files and unrelated SQL files remain trackable. - Scope: `LICENSE`, plugin and extension metadata, license metadata, dependencies, resolved versions, integrity values, scripts, application source, and CI workflows are unchanged. - Validation: Node `v24.18.0` with npm `11.16.0` parses both npm JSON files and reproduces the inherited audit result of 111 effects (9 low, 15 moderate, 87 high, and zero critical) across 60 unique GHSAs. Exact lock, metadata, engine, script, dependency, license, and ignore-behavior assertions pass. The official Composer 2 container validates `composer.json` and reports only the inherited warnings for the intentionally unchanged empty license field; `composer audit --locked --no-interaction` reports no advisory. The approved-plan-prefix SHA-256 remains `6c29481eab5ef6c57aec974295193492861bc7efeba1bd612e45c94d10b1bfaa`, the baseline table remains exactly 124 rows, and `git diff --check` passes. + +### Child Execution Record: `agent/maintenance-018-stale-branch-triage` (PR pending) + +Status: read-only pre-action evidence captured locally on 2026-07-28; child pull request placeholder is pending. External branch deletion is pending and has not been performed. + +- Approved criterion: a live remote branch is eligible for deletion only when it has an associated pull request in any state or its exact tip is reachable from `origin/trunk`; an unmerged branch without an associated pull request must be preserved. +- Reachability anchor: local `origin/trunk` is exactly `98f7c74d195d0b1ee95e4f9c16c7a9b527149980`, matching the approved pre-action anchor. +- Live-source scope: the paginated GitHub branches API contains thirteen of the fourteen original stale branches and omits `crawler`; the complete all-state pull-request response supplies every same-repository head association shown below. + +| Branch | Live API state | Exact pre-action tip or recovery SHA | Last commit date | Reachable from `origin/trunk` | All associated head PRs / state | Criterion result | Recovery reference | +| --- | --- | --- | --- | --- | --- | --- | --- | +| `add-navigation` | Present | `55fbcd77ed9f6bcd3bf9528c9898816b02be29ba` | `2024-11-07T17:04:03+01:00` | No | [#98](https://github.com/WordPress/try-wordpress/pull/98), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #98. | +| `api-docs` | Present | `d6af87dd5891f64539d5dfde819fa2d563095caf` | `2024-10-25T15:34:17+01:00` | No | [#86](https://github.com/WordPress/try-wordpress/pull/86), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #86. | +| `attempt-twitter` | Present | `09ea6328c0a7553328b1dddf78a2b35958e2fa15` | `2024-08-01T13:25:16+02:00` | No | None found | Preserve because the tip is unmerged and no associated PR exists. | Live remote branch and tip SHA. | +| `crawler` | Absent before child 018 | `ba0be4d3c71b5dfeeff71b9e5d81789cdc0ab27a` | `2024-12-02T12:50:08+04:00` | No | [#131](https://github.com/WordPress/try-wordpress/pull/131), closed (unmerged) | No-op because the remote branch was already absent; this child did not delete it. | Recovery commit SHA, PR #131, and the original baseline inventory. | +| `devex` | Present | `1f10e37b8b698965abdb3a2c2d7db9d40defa003` | `2024-11-19T16:21:02+04:00` | No | [#123](https://github.com/WordPress/try-wordpress/pull/123), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #123. | +| `docs/extend` | Present | `361343c169e69bca2357bb4a25d9225f9a774109` | `2024-12-04T18:28:39+04:00` | No | [#125](https://github.com/WordPress/try-wordpress/pull/125), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #125. | +| `docs-definitions` | Present | `343cbb6e8ab61ed5b6a910ca87b50a1af89e41ed` | `2024-11-22T15:24:36+01:00` | No | [#124](https://github.com/WordPress/try-wordpress/pull/124), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #124. | +| `feedback_auto_preview_filter` | Present | `0d3ca5c76aec03956f561161376631f334ddbedc` | `2024-11-26T01:10:02+04:00` | No | [#128](https://github.com/WordPress/try-wordpress/pull/128), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #128. | +| `feedback_simulate_liberation` | Present | `1899e033db7ecf42aeb005aec3dd0c00ca89e55d` | `2024-11-25T19:37:15+04:00` | No | [#126](https://github.com/WordPress/try-wordpress/pull/126), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #126. | +| `fix-test-wix` | Present | `960f2d793bdf975e39c31304a296c168c0301aff` | `2024-11-12T15:09:21+01:00` | No | None found | Preserve because the tip is unmerged and no associated PR exists. | Live remote branch and tip SHA. | +| `local-playground-client` | Present | `2a34ea44ea3ae8d8abb0c9365a866cbdc65338b5` | `2024-07-24T10:41:15+02:00` | Yes | None found | Eligible because the exact tip is reachable from `origin/trunk`; external deletion pending. | Tip SHA and `origin/trunk`, which contains it. | +| `npm_package_updates` | Present | `c9070d9d1bdd66ccf7a374d463b45c99e14e7683` | `2024-09-11T21:19:31+04:00` | No | None found | Preserve because the tip is unmerged and no associated PR exists. | Live remote branch and tip SHA. | +| `pages` | Present | `b1ed8fa5872402690a3a7286742337526d42dd10` | `2024-11-07T15:54:07+01:00` | No | [#96](https://github.com/WordPress/try-wordpress/pull/96), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #96. | +| `schemas` | Present | `85e269198e8f0d2c9d6039af89e1cd5d0188003d` | `2024-12-03T15:19:15+00:00` | No | [#132](https://github.com/WordPress/try-wordpress/pull/132), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #132. | + +- Authoritative pending deletion set: `add-navigation`, `api-docs`, `devex`, `docs/extend`, `docs-definitions`, `feedback_auto_preview_filter`, `feedback_simulate_liberation`, `local-playground-client`, `pages`, and `schemas`. +- Authoritative preserve set: `attempt-twitter`, `fix-test-wix`, and `npm_package_updates`. +- Authoritative no-op set: `crawler`, which remains absent and retains the documented recovery references. +- Mutation result: no remote branch, pull request, issue, alert, or other GitHub state was changed while gathering or recording this evidence. +- Validation: live API tips match the corresponding local `origin/*` refs for all thirteen present branches; GitHub commit dates represent the same instants as the timezone-preserving Git commit dates above; all fourteen reachability results were checked against the exact trunk anchor; the approved-plan-prefix SHA-256, 124-row baseline-alert count, Markdown table structure, and `git diff --check` pass. From 14cc20db701517d7a201cd7d8153c591d4111f32 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 09:59:57 +0400 Subject: [PATCH 37/40] Link branch triage child PR --- plan.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plan.md b/plan.md index 0ac16513..471d22ec 100644 --- a/plan.md +++ b/plan.md @@ -523,9 +523,9 @@ Status: validated and merged into the integration branch by child pull request [ - Scope: `LICENSE`, plugin and extension metadata, license metadata, dependencies, resolved versions, integrity values, scripts, application source, and CI workflows are unchanged. - Validation: Node `v24.18.0` with npm `11.16.0` parses both npm JSON files and reproduces the inherited audit result of 111 effects (9 low, 15 moderate, 87 high, and zero critical) across 60 unique GHSAs. Exact lock, metadata, engine, script, dependency, license, and ignore-behavior assertions pass. The official Composer 2 container validates `composer.json` and reports only the inherited warnings for the intentionally unchanged empty license field; `composer audit --locked --no-interaction` reports no advisory. The approved-plan-prefix SHA-256 remains `6c29481eab5ef6c57aec974295193492861bc7efeba1bd612e45c94d10b1bfaa`, the baseline table remains exactly 124 rows, and `git diff --check` passes. -### Child Execution Record: `agent/maintenance-018-stale-branch-triage` (PR pending) +### Child Execution Record: [#217](https://github.com/WordPress/try-wordpress/pull/217) -Status: read-only pre-action evidence captured locally on 2026-07-28; child pull request placeholder is pending. External branch deletion is pending and has not been performed. +Status: read-only pre-action evidence captured in child pull request [#217](https://github.com/WordPress/try-wordpress/pull/217), which targets the integration branch. External branch deletion is pending and has not been performed. - Approved criterion: a live remote branch is eligible for deletion only when it has an associated pull request in any state or its exact tip is reachable from `origin/trunk`; an unmerged branch without an associated pull request must be preserved. - Reachability anchor: local `origin/trunk` is exactly `98f7c74d195d0b1ee95e4f9c16c7a9b527149980`, matching the approved pre-action anchor. From 0cf0af5bccd09ddb337c7960a2f51948444d308d Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 10:06:22 +0400 Subject: [PATCH 38/40] Record completed stale branch cleanup --- plan.md | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/plan.md b/plan.md index 471d22ec..960f8553 100644 --- a/plan.md +++ b/plan.md @@ -525,7 +525,7 @@ Status: validated and merged into the integration branch by child pull request [ ### Child Execution Record: [#217](https://github.com/WordPress/try-wordpress/pull/217) -Status: read-only pre-action evidence captured in child pull request [#217](https://github.com/WordPress/try-wordpress/pull/217), which targets the integration branch. External branch deletion is pending and has not been performed. +Status: pre-action evidence was captured and linked in child pull request [#217](https://github.com/WordPress/try-wordpress/pull/217), which targets the integration branch, before the authorized external branch deletion completed. - Approved criterion: a live remote branch is eligible for deletion only when it has an associated pull request in any state or its exact tip is reachable from `origin/trunk`; an unmerged branch without an associated pull request must be preserved. - Reachability anchor: local `origin/trunk` is exactly `98f7c74d195d0b1ee95e4f9c16c7a9b527149980`, matching the approved pre-action anchor. @@ -533,23 +533,24 @@ Status: read-only pre-action evidence captured in child pull request [#217](http | Branch | Live API state | Exact pre-action tip or recovery SHA | Last commit date | Reachable from `origin/trunk` | All associated head PRs / state | Criterion result | Recovery reference | | --- | --- | --- | --- | --- | --- | --- | --- | -| `add-navigation` | Present | `55fbcd77ed9f6bcd3bf9528c9898816b02be29ba` | `2024-11-07T17:04:03+01:00` | No | [#98](https://github.com/WordPress/try-wordpress/pull/98), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #98. | -| `api-docs` | Present | `d6af87dd5891f64539d5dfde819fa2d563095caf` | `2024-10-25T15:34:17+01:00` | No | [#86](https://github.com/WordPress/try-wordpress/pull/86), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #86. | +| `add-navigation` | Present | `55fbcd77ed9f6bcd3bf9528c9898816b02be29ba` | `2024-11-07T17:04:03+01:00` | No | [#98](https://github.com/WordPress/try-wordpress/pull/98), closed (unmerged) | Deleted externally after PR #217 opened; eligibility was the associated PR. | Tip SHA and PR #98. | +| `api-docs` | Present | `d6af87dd5891f64539d5dfde819fa2d563095caf` | `2024-10-25T15:34:17+01:00` | No | [#86](https://github.com/WordPress/try-wordpress/pull/86), closed (unmerged) | Deleted externally after PR #217 opened; eligibility was the associated PR. | Tip SHA and PR #86. | | `attempt-twitter` | Present | `09ea6328c0a7553328b1dddf78a2b35958e2fa15` | `2024-08-01T13:25:16+02:00` | No | None found | Preserve because the tip is unmerged and no associated PR exists. | Live remote branch and tip SHA. | | `crawler` | Absent before child 018 | `ba0be4d3c71b5dfeeff71b9e5d81789cdc0ab27a` | `2024-12-02T12:50:08+04:00` | No | [#131](https://github.com/WordPress/try-wordpress/pull/131), closed (unmerged) | No-op because the remote branch was already absent; this child did not delete it. | Recovery commit SHA, PR #131, and the original baseline inventory. | -| `devex` | Present | `1f10e37b8b698965abdb3a2c2d7db9d40defa003` | `2024-11-19T16:21:02+04:00` | No | [#123](https://github.com/WordPress/try-wordpress/pull/123), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #123. | -| `docs/extend` | Present | `361343c169e69bca2357bb4a25d9225f9a774109` | `2024-12-04T18:28:39+04:00` | No | [#125](https://github.com/WordPress/try-wordpress/pull/125), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #125. | -| `docs-definitions` | Present | `343cbb6e8ab61ed5b6a910ca87b50a1af89e41ed` | `2024-11-22T15:24:36+01:00` | No | [#124](https://github.com/WordPress/try-wordpress/pull/124), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #124. | -| `feedback_auto_preview_filter` | Present | `0d3ca5c76aec03956f561161376631f334ddbedc` | `2024-11-26T01:10:02+04:00` | No | [#128](https://github.com/WordPress/try-wordpress/pull/128), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #128. | -| `feedback_simulate_liberation` | Present | `1899e033db7ecf42aeb005aec3dd0c00ca89e55d` | `2024-11-25T19:37:15+04:00` | No | [#126](https://github.com/WordPress/try-wordpress/pull/126), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #126. | +| `devex` | Present | `1f10e37b8b698965abdb3a2c2d7db9d40defa003` | `2024-11-19T16:21:02+04:00` | No | [#123](https://github.com/WordPress/try-wordpress/pull/123), closed (unmerged) | Deleted externally after PR #217 opened; eligibility was the associated PR. | Tip SHA and PR #123. | +| `docs/extend` | Present | `361343c169e69bca2357bb4a25d9225f9a774109` | `2024-12-04T18:28:39+04:00` | No | [#125](https://github.com/WordPress/try-wordpress/pull/125), closed (unmerged) | Deleted externally after PR #217 opened; eligibility was the associated PR. | Tip SHA and PR #125. | +| `docs-definitions` | Present | `343cbb6e8ab61ed5b6a910ca87b50a1af89e41ed` | `2024-11-22T15:24:36+01:00` | No | [#124](https://github.com/WordPress/try-wordpress/pull/124), closed (unmerged) | Deleted externally after PR #217 opened; eligibility was the associated PR. | Tip SHA and PR #124. | +| `feedback_auto_preview_filter` | Present | `0d3ca5c76aec03956f561161376631f334ddbedc` | `2024-11-26T01:10:02+04:00` | No | [#128](https://github.com/WordPress/try-wordpress/pull/128), closed (unmerged) | Deleted externally after PR #217 opened; eligibility was the associated PR. | Tip SHA and PR #128. | +| `feedback_simulate_liberation` | Present | `1899e033db7ecf42aeb005aec3dd0c00ca89e55d` | `2024-11-25T19:37:15+04:00` | No | [#126](https://github.com/WordPress/try-wordpress/pull/126), closed (unmerged) | Deleted externally after PR #217 opened; eligibility was the associated PR. | Tip SHA and PR #126. | | `fix-test-wix` | Present | `960f2d793bdf975e39c31304a296c168c0301aff` | `2024-11-12T15:09:21+01:00` | No | None found | Preserve because the tip is unmerged and no associated PR exists. | Live remote branch and tip SHA. | -| `local-playground-client` | Present | `2a34ea44ea3ae8d8abb0c9365a866cbdc65338b5` | `2024-07-24T10:41:15+02:00` | Yes | None found | Eligible because the exact tip is reachable from `origin/trunk`; external deletion pending. | Tip SHA and `origin/trunk`, which contains it. | +| `local-playground-client` | Present | `2a34ea44ea3ae8d8abb0c9365a866cbdc65338b5` | `2024-07-24T10:41:15+02:00` | Yes | None found | Deleted externally after PR #217 opened; eligibility was exact tip reachability from `origin/trunk`. | Tip SHA and `origin/trunk`, which contains it. | | `npm_package_updates` | Present | `c9070d9d1bdd66ccf7a374d463b45c99e14e7683` | `2024-09-11T21:19:31+04:00` | No | None found | Preserve because the tip is unmerged and no associated PR exists. | Live remote branch and tip SHA. | -| `pages` | Present | `b1ed8fa5872402690a3a7286742337526d42dd10` | `2024-11-07T15:54:07+01:00` | No | [#96](https://github.com/WordPress/try-wordpress/pull/96), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #96. | -| `schemas` | Present | `85e269198e8f0d2c9d6039af89e1cd5d0188003d` | `2024-12-03T15:19:15+00:00` | No | [#132](https://github.com/WordPress/try-wordpress/pull/132), closed (unmerged) | Eligible because an associated PR exists; external deletion pending. | Tip SHA and PR #132. | +| `pages` | Present | `b1ed8fa5872402690a3a7286742337526d42dd10` | `2024-11-07T15:54:07+01:00` | No | [#96](https://github.com/WordPress/try-wordpress/pull/96), closed (unmerged) | Deleted externally after PR #217 opened; eligibility was the associated PR. | Tip SHA and PR #96. | +| `schemas` | Present | `85e269198e8f0d2c9d6039af89e1cd5d0188003d` | `2024-12-03T15:19:15+00:00` | No | [#132](https://github.com/WordPress/try-wordpress/pull/132), closed (unmerged) | Deleted externally after PR #217 opened; eligibility was the associated PR. | Tip SHA and PR #132. | -- Authoritative pending deletion set: `add-navigation`, `api-docs`, `devex`, `docs/extend`, `docs-definitions`, `feedback_auto_preview_filter`, `feedback_simulate_liberation`, `local-playground-client`, `pages`, and `schemas`. +- Authoritative completed external deletion set: `add-navigation`, `api-docs`, `devex`, `docs/extend`, `docs-definitions`, `feedback_auto_preview_filter`, `feedback_simulate_liberation`, `local-playground-client`, `pages`, and `schemas`. - Authoritative preserve set: `attempt-twitter`, `fix-test-wix`, and `npm_package_updates`. - Authoritative no-op set: `crawler`, which remains absent and retains the documented recovery references. -- Mutation result: no remote branch, pull request, issue, alert, or other GitHub state was changed while gathering or recording this evidence. -- Validation: live API tips match the corresponding local `origin/*` refs for all thirteen present branches; GitHub commit dates represent the same instants as the timezone-preserving Git commit dates above; all fourteen reachability results were checked against the exact trunk anchor; the approved-plan-prefix SHA-256, 124-row baseline-alert count, Markdown table structure, and `git diff --check` pass. +- External deletion result: after PR #217 opened and the pre-action evidence was immediately reverified, the main maintenance workflow deleted exactly the ten authorized remote branches and no others. Remote-head deletion is external to source history; every removed branch remains recoverable from its exact pre-action SHA and associated PR or reachable trunk reference listed above. +- Post-action verification: both `git ls-remote --heads origin` and the paginated live branches API show all ten completed deletions absent, `crawler` still absent, and the preserved heads unchanged at `attempt-twitter` `09ea6328c0a7553328b1dddf78a2b35958e2fa15`, `fix-test-wix` `960f2d793bdf975e39c31304a296c168c0301aff`, and `npm_package_updates` `c9070d9d1bdd66ccf7a374d463b45c99e14e7683`. The active `trunk`, `agent/maintenance-security-and-hygiene`, and `agent/maintenance-018-stale-branch-triage` heads also remain present. +- Validation: the live remote and API branch sets are identical at six exact heads; the approved-plan-prefix SHA-256, 124-row baseline-alert count, Markdown table structure, and `git diff --check` pass. This documentation update performs no additional GitHub mutation. From 70d1ae1e48c57d27530e1a1c798d690e1ccf0b1d Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 10:39:14 +0400 Subject: [PATCH 39/40] Reconcile final maintenance security state --- plan.md | 141 ++++++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 112 insertions(+), 29 deletions(-) diff --git a/plan.md b/plan.md index 960f8553..5b1ad3f8 100644 --- a/plan.md +++ b/plan.md @@ -111,7 +111,7 @@ Use Node 24 because the current locked dependencies already install, lint, type- Baseline capture date: 2026-07-27. -The integration branch `agent/maintenance-security-and-hygiene` is represented by commit `500526abbb0d429787402ae6611058f31a9cc7f6` and draft pull request [#199](https://github.com/WordPress/try-wordpress/pull/199), which is open against `trunk`. Documentation-only execution-baseline child pull request [#200](https://github.com/WordPress/try-wordpress/pull/200) targets the integration branch. +The pre-child-019 integration branch anchor is commit `6189aabbaeef452d4f84b9eabe879b984ba6b480`, represented by `agent/maintenance-security-and-hygiene` and draft pull request [#199](https://github.com/WordPress/try-wordpress/pull/199), which remains open and unmerged against `trunk`. Documentation-only execution-baseline child pull request [#200](https://github.com/WordPress/try-wordpress/pull/200) was merged into the integration branch at merge commit `577ef6b1dbb6fce80f691a26767321fa7609b565`. ### Baseline Dependabot Summary @@ -150,19 +150,19 @@ Rows are ordered by remediation priority: severity first, runtime before develop | Alert | GHSA | Severity | Ecosystem | Affected package | Relationship / scope | Locked vulnerable version(s) | First patched | Causal family set | Representative locked path | Child PR | Status | | ---: | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | -| 44 | GHSA-95m3-7q98-8xr5 | critical | npm | `sha.js` | transitive / runtime | `2.4.11` | `2.4.12` | PGL | `sha.js@2.4.11 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | +| 44 | GHSA-95m3-7q98-8xr5 | critical | npm | `sha.js` | transitive / runtime | `2.4.11` | `2.4.12` | PGL | `sha.js@2.4.11 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201; resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range | | 42 | GHSA-fjxv-7rqg-78g4 | critical | npm | `form-data` | transitive / development | `4.0.0` | `4.0.4` | WPS | `form-data@4.0.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 77 | GHSA-5rq4-664w-9x2c | critical | npm | `basic-ftp` | transitive / development | `5.0.5` | `5.2.0` | WPS | `basic-ftp@5.0.5 ← get-uri@6.0.3 ← pac-proxy-agent@7.0.2 ← proxy-agent@6.4.0 ← @puppeteer/browsers@2.4.0 ← puppeteer-core@23.3.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 146 | GHSA-w7jw-789q-3m8p | critical | npm | `shell-quote` | transitive / development | `1.7.3, 1.8.1` | `1.8.4` | CONCURRENTLY + WEBEXT + WPS | `shell-quote@1.8.1 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PR #202 removed the WPS and CONCURRENTLY paths; web-ext `10.4.0` replaces the last affected `1.7.3` path with patched `1.8.4`; vulnerable version absent globally in the integration branch | | 164 | GHSA-xv26-6w52-cph6 | critical | npm | `websocket-driver` | transitive / development | `0.7.4` | `0.7.5` | WPS | `websocket-driver@0.7.4 ← sockjs@0.3.24 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | -| 3 | GHSA-pwfr-8pq7-x9qv | high | npm | `octokit` | transitive / runtime | `3.1.1` | `3.1.2` | PGL | `octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | -| 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | +| 3 | GHSA-pwfr-8pq7-x9qv | high | npm | `octokit` | transitive / runtime | `3.1.1` | `3.1.2` | PGL | `octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201; resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range | +| 11 | GHSA-9wv6-86v2-598j | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.10` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range; earlier child-stage evidence was: PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 13 | GHSA-qwcr-r2fm-qrc7 | high | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.3` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range; earlier child-stage evidence was: PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 23 | GHSA-rhx6-c78j-4q9w | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.12` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range; earlier child-stage evidence was: PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 56 | GHSA-869p-cjfg-cm3x | high | npm | `jws` | transitive / runtime | `3.2.2` | `3.2.3` | PGL | `jws@3.2.2 ← jsonwebtoken@9.0.2 ← universal-github-app-jwt@1.2.0 ← @octokit/auth-app@6.1.3 ← @octokit/app@14.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201; resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range | | 58 | GHSA-2w69-qvjg-hvjx | high | npm | `@remix-run/router` | transitive / runtime | `1.21.0` | `1.23.2` | ROUTER | `@remix-run/router@1.21.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | -| 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + [#204](https://github.com/WordPress/try-wordpress/pull/204) | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | +| 99 | GHSA-37ch-88jc-xwx2 | high | npm | `path-to-regexp` | transitive / runtime | `0.1.7` | `0.1.13` | PGL + WEBEXT + WPS | `path-to-regexp@0.1.7 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range; earlier child-stage evidence was: PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 153 | GHSA-96hv-2xvq-fx4p | high | npm | `ws` | transitive / runtime | `8.18.0` | `8.21.0` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + [#204](https://github.com/WordPress/try-wordpress/pull/204) | resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range; earlier child-stage evidence was: PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | | 192 | GHSA-6g55-p6wh-862q | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.12` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | | 195 | GHSA-r28c-9q8g-f849 | high | npm | `postcss` | transitive / runtime | `8.4.49` | `8.5.18` | BLK | `postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | | 6 | GHSA-3h5v-q93c-6h6q | high | npm | `ws` | transitive / development | `8.13.0` | `8.17.1` | WPS | `ws@8.13.0 ← puppeteer-core@20.9.0 ← lighthouse@10.4.0 ← @wordpress/e2e-test-utils-playwright@1.7.0 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | @@ -213,16 +213,16 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 187 | GHSA-jr5f-v2jv-69x6 | high | npm | `axios` | transitive / development | `1.7.7` | `1.8.2` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 191 | GHSA-3jxr-9vmj-r5cp | high | npm | `brace-expansion` | transitive / development | `2.0.1` | `2.1.2` | WEBPACK + WPS | `brace-expansion@2.0.1 ← minimatch@5.1.6 ← readdir-glob@1.1.3 ← archiver@5.3.2 ← filemanager-webpack-plugin@8.0.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | incidental causal in-range refresh selects patched `brace-expansion@2.1.2`; vulnerable version absent globally in the integration branch | | 24 | GHSA-mwcw-c2x4-8c55 | medium | npm | `nanoid` | transitive / runtime | `3.3.7` | `3.3.8` | BLK | `nanoid@3.3.7 ← postcss@8.4.49 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | -| 29 | GHSA-x4c5-c7rf-jjgv | medium | npm | `@octokit/endpoint` | transitive / runtime | `9.0.5` | `9.0.6` | PGL | `@octokit/endpoint@9.0.5 ← @octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | -| 30 | GHSA-xx4v-prfh-6cgc | medium | npm | `@octokit/request-error` | transitive / runtime | `5.1.0` | `5.1.1` | PGL | `@octokit/request-error@5.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | -| 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | -| 32 | GHSA-rmvr-2pp2-xj38 | medium | npm | `@octokit/request` | transitive / runtime | `8.4.0` | `8.4.1` | PGL | `@octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201 | -| 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 29 | GHSA-x4c5-c7rf-jjgv | medium | npm | `@octokit/endpoint` | transitive / runtime | `9.0.5` | `9.0.6` | PGL | `@octokit/endpoint@9.0.5 ← @octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201; resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range | +| 30 | GHSA-xx4v-prfh-6cgc | medium | npm | `@octokit/request-error` | transitive / runtime | `5.1.0` | `5.1.1` | PGL | `@octokit/request-error@5.1.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201; resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range | +| 31 | GHSA-h5c3-5r3r-rr8q | medium | npm | `@octokit/plugin-paginate-rest` | transitive / runtime | `9.2.1` | `9.2.2` | PGL | `@octokit/plugin-paginate-rest@9.2.1 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201; resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range | +| 32 | GHSA-rmvr-2pp2-xj38 | medium | npm | `@octokit/request` | transitive / runtime | `8.4.0` | `8.4.1` | PGL | `@octokit/request@8.4.0 ← @octokit/core@5.2.0 ← octokit@3.1.1 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) | validated and merged into the integration branch by PR #201; resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range | +| 57 | GHSA-6rw7-vpxm-498p | medium | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.1` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range; earlier child-stage evidence was: PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 59 | GHSA-9jcx-v3wj-wh4m | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.2` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | | 72 | GHSA-2g4f-4pwh-qvx6 | medium | npm | `ajv` | transitive / runtime | `8.12.0` | `8.18.0` | AJV + PGL + WEBEXT + WEBPACK + WPS | `ajv@8.12.0 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` requires a compatible shared Ajv that resolves to patched `8.20.0`; vulnerable major-8 version absent globally in the integration branch | | 92 | GHSA-48c2-rrv3-qjmp | medium | npm | `yaml` | transitive / runtime | `1.10.2` | `1.10.3` | BLK | `yaml@1.10.2 ← cosmiconfig@7.1.0 ← babel-plugin-macros@3.1.0 ← @emotion/babel-plugin@11.12.0 ← @emotion/react@11.13.3 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + [#210](https://github.com/WordPress/try-wordpress/pull/210) | validated and merged into the integration branch by PR #210; obsolete types root removed and the shared compatible lock refreshed to patched `yaml@1.10.3`, so the vulnerable version is absent globally | | 113 | GHSA-rmmh-p597-ppvv | medium | npm | `showdown` | transitive / runtime | `1.9.1` | `none` | BLK | `showdown@1.9.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable Showdown dependency absent globally | -| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + [#204](https://github.com/WordPress/try-wordpress/pull/204) | PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | +| 132 | GHSA-58qx-3vcg-4xpx | medium | npm | `ws` | transitive / runtime | `8.18.0` | `8.20.1` | BLK + PGL + WEBEXT + WPS | `ws@8.18.0 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) + [#204](https://github.com/WordPress/try-wordpress/pull/204) | resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range; earlier child-stage evidence was: PGL, WEBEXT, and BLK paths are removed; vulnerable WPS paths remain | | 135 | GHSA-w5hq-g745-h8pq | medium | npm | `uuid` | transitive / runtime | `9.0.1` | `11.1.1` | BLK | `uuid@9.0.1 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + [#209](https://github.com/WordPress/try-wordpress/pull/209) + [#210](https://github.com/WordPress/try-wordpress/pull/210) | root Blocks and direct Components paths patched; obsolete types root removed; the block-library path is blocked because its first patching candidate introduces an unsuppressed Firefox add-on security warning, and the affected WPS path also remains | | 139 | GHSA-2j2x-hqr9-3h42 | medium | npm | `react-router` | transitive / runtime | `6.28.0` | `6.30.4` | ROUTER | `react-router@6.28.0 ← react-router-dom@6.28.0` | [#205](https://github.com/WordPress/try-wordpress/pull/205) | blocked; no published `react-router-dom` candidate removes this row without adding a current applicable advisory | | 186 | GHSA-968p-4wvh-cqc8 | medium | npm | `@babel/runtime` | transitive / runtime | `7.25.6, 7.25.7` | `7.26.10` | BLK | `@babel/runtime@7.25.7 ← @wordpress/blocks@13.10.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) + [#209](https://github.com/WordPress/try-wordpress/pull/209) | root Blocks path patched; the remaining `@wordpress/block-library@9.27.0` path is blocked because every complete fixing candidate introduces an unsuppressed Firefox add-on security warning | @@ -236,7 +236,7 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 52 | GHSA-mh29-5h37-fv8m | medium | npm | `js-yaml` | transitive / development | `4.1.0` | `4.1.1` | ESLINT-RESOLVER + WEBEXT + WPS | `js-yaml@4.1.0 ← eslint@8.57.1 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `js-yaml@4.3.0`; vulnerable major-4 version absent globally in the integration branch | | 53 | GHSA-65ch-62r8-g69g | medium | npm | `node-forge` | transitive / development | `1.3.1` | `1.3.2` | WEBEXT + WPS | `node-forge@1.3.1 ← @devicefarmer/adbkit@3.2.6 ← web-ext@8.3.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | causal in-range refresh selects patched `node-forge@1.4.0`; vulnerable version absent globally in the integration branch | | 62 | GHSA-xxjr-mmjv-4gpg | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.17.23` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; integration branch documents upstream WPS residual | -| 101 | GHSA-3v7f-55p6-f55p | medium | npm | `picomatch` | transitive / development | `2.3.1` | `2.3.2` | ESLINT-RESOLVER + WEBPACK + WPS | `picomatch@2.3.1 ← micromatch@4.0.8 ← ts-loader@9.5.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable ESLINT-RESOLVER + WEBPACK + WPS paths remain; integration branch documents upstream WPS residual | +| 101 | GHSA-3v7f-55p6-f55p | medium | npm | `picomatch` | transitive / development | `2.3.1` | `2.3.2` | ESLINT-RESOLVER + WEBPACK + WPS | `picomatch@2.3.1 ← micromatch@4.0.8 ← ts-loader@9.5.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range; earlier child-stage evidence was: vulnerable ESLINT-RESOLVER + WEBPACK + WPS paths remain; integration branch documents upstream WPS residual | | 102 | GHSA-f23m-r3pf-42rh | medium | npm | `lodash` | transitive / development | `4.17.21` | `4.18.0` | CONCURRENTLY + WPS | `lodash@4.17.21 ← concurrently@9.1.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable CONCURRENTLY + WPS paths remain; integration branch documents upstream WPS residual | | 108 | GHSA-r4q5-vmmm-2653 | medium | npm | `follow-redirects` | transitive / development | `1.15.9` | `1.16.0` | WPS | `follow-redirects@1.15.9 ← axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 109 | GHSA-fvcv-3m26-pcqx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.15.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | @@ -260,13 +260,13 @@ Rows are ordered by remediation priority: severity first, runtime before develop | 170 | GHSA-m28w-2pqf-7qgj | medium | npm | `webpack-dev-server` | transitive / development | `4.15.2` | `5.2.6` | WPS | `webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 179 | GHSA-mmx7-hfxf-jppx | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | | 180 | GHSA-7q8q-rj6j-mhjq | medium | npm | `axios` | transitive / development | `1.7.7` | `1.18.0` | WPS | `axios@1.7.7 ← wait-on@7.2.0 ← jest-dev-server@9.0.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | validated in the integration branch; vulnerable version absent globally | -| 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL + WEBEXT + WPS | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL + WEBEXT + WPS | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL + WEBEXT + WPS | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL + WEBEXT + WPS | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 15 | GHSA-qw6h-vgh9-j6wx | low | npm | `express` | transitive / runtime | `4.19.2` | `4.20.0` | PGL + WEBEXT + WPS | `express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range; earlier child-stage evidence was: PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 16 | GHSA-cm22-4g7w-348p | low | npm | `serve-static` | transitive / runtime | `1.15.0` | `1.16.0` | PGL + WEBEXT + WPS | `serve-static@1.15.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range; earlier child-stage evidence was: PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 17 | GHSA-m6fv-jmcg-4jfg | low | npm | `send` | transitive / runtime | `0.18.0` | `0.19.0` | PGL + WEBEXT + WPS | `send@0.18.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range; earlier child-stage evidence was: PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 18 | GHSA-pxg6-pf52-xh8x | low | npm | `cookie` | transitive / runtime | `0.6.0` | `0.7.0` | PGL + WEBEXT + WPS | `cookie@0.6.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range; earlier child-stage evidence was: PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | | 64 | GHSA-73rr-hh4g-fpgx | low | npm | `diff` | transitive / runtime | `4.0.2` | `4.0.4` | BLK | `diff@4.0.2 ← @wordpress/block-editor@14.2.0 ← @wordpress/block-library@9.12.0` | [#204](https://github.com/WordPress/try-wordpress/pull/204) | validated locally; vulnerable version absent globally | -| 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | -| 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | published PGL path removed by PR #201 but its bundled source remains upstream-blocked; WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 68 | GHSA-w7fw-mjwx-w883 | low | npm | `qs` | transitive / runtime | `6.11.0` | `6.14.2` | PGL + WEBEXT + WPS | `qs@6.11.0 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | resolved in the final integration lock because no scope-matching installed version remains in the baseline advisory range; earlier child-stage evidence was: PGL path removed by PR #201 and WEBEXT path removed by web-ext `10.4.0`; vulnerable WPS path remains | +| 171 | GHSA-v422-hmwv-36x6 | low | npm | `body-parser` | transitive / runtime | `1.20.2` | `1.20.6` | PGL + WEBEXT + WPS | `body-parser@1.20.2 ← express@4.19.2 ← @php-wasm/web@1.0.13 ← @wp-playground/client@1.0.13` | [#201](https://github.com/WordPress/try-wordpress/pull/201) + [#202](https://github.com/WordPress/try-wordpress/pull/202) + [#203](https://github.com/WordPress/try-wordpress/pull/203) | resolved under the repository lock-path rule because no scope-matching installed version remains; non-scanner-visible PGL bundled-source risk remains upstream-blocked because official `@wp-playground/client` `3.1.38` through `3.1.47` source locks retain `body-parser@1.20.5` below the `1.20.6` patch | | 41 | GHSA-76c9-3jph-rj3q | low | npm | `on-headers` | transitive / development | `1.0.2` | `1.1.0` | WPS | `on-headers@1.0.2 ← compression@1.7.4 ← webpack-dev-server@4.15.2 ← @wordpress/scripts@30.4.0` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | vulnerable WPS path remains; integration branch documents upstream WPS residual | | 43 | GHSA-52f5-9888-hmc6 | low | npm | `tmp` | transitive / development | `0.2.3` | `0.2.4` | WEBEXT | `tmp@0.2.3 ← web-ext@8.3.0` | [#203](https://github.com/WordPress/try-wordpress/pull/203) | web-ext `10.4.0` selects patched `tmp@0.2.7`; vulnerable version absent globally in the integration branch | | 65 | GHSA-38r7-794h-5758 | low | npm | `webpack` | direct / development | `5.96.1` | `5.104.0` | WEBPACK | `webpack@5.96.1` | [#202](https://github.com/WordPress/try-wordpress/pull/202) | shared root webpack resolved to `5.109.0` to satisfy `@wordpress/scripts@30.7.0` requirement `^5.97.0`; vulnerable version absent globally; validated locally | @@ -309,9 +309,9 @@ No remote branch was deleted during baseline capture. Any later eligible deletio - `npm audit --json` exited 1 with 125 vulnerable/effect package keys and 143 unique npm GHSA references, while GitHub exposed 123 npm alert rows covering 116 unique npm GHSAs plus one Composer alert. These counts are not expected to match because npm audit reports the npm registry snapshot and propagates advisories through affected package/effect nodes, whereas the approved baseline is the GitHub repository alert-row set; no GitHub alert row was inferred from npm-only data. - The only baseline advisory with no first patched version is alert 113, `GHSA-rmmh-p597-ppvv` in `showdown`; its causal family remains BLK and remediation must remove the vulnerable dependency through that parent family. -### Child Execution Record: `agent/maintenance-002-playground-client` +### Child Execution Record: [#201](https://github.com/WordPress/try-wordpress/pull/201) -Status: validated and merged into the integration branch by child pull request [#201](https://github.com/WordPress/try-wordpress/pull/201). +Status: validated and merged into the integration branch by child pull request [#201](https://github.com/WordPress/try-wordpress/pull/201) at merge commit `9ec6eb7eb04d586815935a0e8258d5c016e3f2f4`. - Direct dependency change: `@wp-playground/client` moves from declared range `^1.0.13` and locked version `1.0.13` to declared range `^3.1.38` and locked version `3.1.38`. - Target alerts: 44, 3, 11, 13, 23, 56, 99, 153, 29, 30, 31, 32, 57, 72, 132, 15, 16, 17, 18, 68, and 171. @@ -327,7 +327,7 @@ Status: validated and merged into the integration branch by child pull request [ ### Child Execution Record: [#202](https://github.com/WordPress/try-wordpress/pull/202) -Status: validated and merged into the integration branch by child pull request [#202](https://github.com/WordPress/try-wordpress/pull/202). +Status: validated and merged into the integration branch by child pull request [#202](https://github.com/WordPress/try-wordpress/pull/202) at merge commit `8ae9ba695cacf83278549849d53ec19d58aa49ba`. - Direct dependency change: `@wordpress/scripts` moves from declared range `^30.4.0` and locked version `30.4.0` to declared range `^30.7.0` and locked version `30.7.0`; no other declared direct dependency changes. Root `package.json` continues to declare webpack `^5.96.1`, while the shared deduped `package-lock.json` resolution moves webpack from `5.96.1` to `5.109.0` because `@wordpress/scripts@30.7.0` requires webpack `^5.97.0`. - Semantic lock scope: the lockfile contains 78 installed version changes, 43 package paths added, and 44 package paths removed; only the declared direct dependency `@wordpress/scripts` changes. @@ -343,7 +343,7 @@ Status: validated and merged into the integration branch by child pull request [ ### Child Execution Record: [#203](https://github.com/WordPress/try-wordpress/pull/203) -Status: validated and merged into the integration branch by child pull request [#203](https://github.com/WordPress/try-wordpress/pull/203). +Status: validated and merged into the integration branch by child pull request [#203](https://github.com/WordPress/try-wordpress/pull/203) at merge commit `a0b204ca28a23c97dc4699dfe5f2dd55acf4d320`. - Direct dependency change: `web-ext` moves from declared range `^8.3.0` and locked version `8.3.0` to declared range `^10.4.0` and locked version `10.4.0`; no other declared direct dependency changes and no application, manifest, configuration, or npm-script changes. - Stable-release boundary evidence: registry manifests and clean isolated locks were examined for all nineteen stable releases newer than `8.3.0` through current `10.5.0`: `8.4.0`, `8.5.0`, `8.6.0`, `8.7.0`, `8.7.1`, `8.8.0`, `8.9.0`, `8.10.0`, `9.0.0`, `9.1.0`, `9.2.0`, `9.3.0`, `9.4.0`, `10.0.0`, `10.1.0`, `10.2.0`, `10.3.0`, `10.4.0`, and `10.5.0`. Every release through `10.3.0` pins `fx-runner@1.4.0` and affected `shell-quote@1.7.3`; `10.4.0` is the first stable release using `fx-runner@1.5.0` and critical-alert-patched `shell-quote@1.8.4`, so it is the minimum critical-remediation boundary. @@ -525,7 +525,7 @@ Status: validated and merged into the integration branch by child pull request [ ### Child Execution Record: [#217](https://github.com/WordPress/try-wordpress/pull/217) -Status: pre-action evidence was captured and linked in child pull request [#217](https://github.com/WordPress/try-wordpress/pull/217), which targets the integration branch, before the authorized external branch deletion completed. +Status: validated and merged into the integration branch by child pull request [#217](https://github.com/WordPress/try-wordpress/pull/217) at merge commit `6189aabbaeef452d4f84b9eabe879b984ba6b480`; its remote child branch was then deleted after the merge was verified. - Approved criterion: a live remote branch is eligible for deletion only when it has an associated pull request in any state or its exact tip is reachable from `origin/trunk`; an unmerged branch without an associated pull request must be preserved. - Reachability anchor: local `origin/trunk` is exactly `98f7c74d195d0b1ee95e4f9c16c7a9b527149980`, matching the approved pre-action anchor. @@ -552,5 +552,88 @@ Status: pre-action evidence was captured and linked in child pull request [#217] - Authoritative preserve set: `attempt-twitter`, `fix-test-wix`, and `npm_package_updates`. - Authoritative no-op set: `crawler`, which remains absent and retains the documented recovery references. - External deletion result: after PR #217 opened and the pre-action evidence was immediately reverified, the main maintenance workflow deleted exactly the ten authorized remote branches and no others. Remote-head deletion is external to source history; every removed branch remains recoverable from its exact pre-action SHA and associated PR or reachable trunk reference listed above. -- Post-action verification: both `git ls-remote --heads origin` and the paginated live branches API show all ten completed deletions absent, `crawler` still absent, and the preserved heads unchanged at `attempt-twitter` `09ea6328c0a7553328b1dddf78a2b35958e2fa15`, `fix-test-wix` `960f2d793bdf975e39c31304a296c168c0301aff`, and `npm_package_updates` `c9070d9d1bdd66ccf7a374d463b45c99e14e7683`. The active `trunk`, `agent/maintenance-security-and-hygiene`, and `agent/maintenance-018-stale-branch-triage` heads also remain present. -- Validation: the live remote and API branch sets are identical at six exact heads; the approved-plan-prefix SHA-256, 124-row baseline-alert count, Markdown table structure, and `git diff --check` pass. This documentation update performs no additional GitHub mutation. +- Post-action verification: both `git ls-remote --heads origin` and the paginated live branches API show all ten completed deletions absent, `crawler` still absent, and the preserved heads unchanged at `attempt-twitter` `09ea6328c0a7553328b1dddf78a2b35958e2fa15`, `fix-test-wix` `960f2d793bdf975e39c31304a296c168c0301aff`, and `npm_package_updates` `c9070d9d1bdd66ccf7a374d463b45c99e14e7683`. After PR #217 merged and its child branch was removed, the complete live remote set is exactly five heads: integration `agent/maintenance-security-and-hygiene` at `6189aabbaeef452d4f84b9eabe879b984ba6b480`, the three preserved branches at the SHAs above, and `trunk` at `98f7c74d195d0b1ee95e4f9c16c7a9b527149980`. +- Validation: the live remote and API branch sets are identical at five exact heads; the approved-plan-prefix SHA-256, 124-row baseline-alert count, Markdown table structure, and `git diff --check` pass. This documentation update performs no additional GitHub mutation. + +### Child Execution Record: `agent/maintenance-019-final-reconciliation` (PR URL pending) + +Status: final reconciliation is recorded on documentation-only branch `agent/maintenance-019-final-reconciliation`; its permanent child PR URL is pending creation, and it targets the integration branch without changing dependency manifests, lockfiles, application source, configuration, generated schema, or license metadata. + +#### Child Pull Request Reconciliation + +Every maintenance child from the baseline capture through stale-branch triage is closed and merged into `agent/maintenance-security-and-hygiene`; the exact merge commits and canonical pull-request links are: + +| Child PR | Final state | Merge commit | +| --- | --- | --- | +| [#200](https://github.com/WordPress/try-wordpress/pull/200) | merged | `577ef6b1dbb6fce80f691a26767321fa7609b565` | +| [#201](https://github.com/WordPress/try-wordpress/pull/201) | merged | `9ec6eb7eb04d586815935a0e8258d5c016e3f2f4` | +| [#202](https://github.com/WordPress/try-wordpress/pull/202) | merged | `8ae9ba695cacf83278549849d53ec19d58aa49ba` | +| [#203](https://github.com/WordPress/try-wordpress/pull/203) | merged | `a0b204ca28a23c97dc4699dfe5f2dd55acf4d320` | +| [#204](https://github.com/WordPress/try-wordpress/pull/204) | merged | `dbb4421370d2e0acf04a6f7d8c2f984d56998d91` | +| [#205](https://github.com/WordPress/try-wordpress/pull/205) | merged | `0681a978c2c754a4f61f955a5b70992b24a7c330` | +| [#206](https://github.com/WordPress/try-wordpress/pull/206) | merged | `87f6889048add5a94c7026665cf47db4148f209b` | +| [#207](https://github.com/WordPress/try-wordpress/pull/207) | merged | `2409cfac0411e5270a457ced326b10fa472cf986` | +| [#208](https://github.com/WordPress/try-wordpress/pull/208) | merged | `1d0380b349c70ab2fb8d0581f8d294778d67e73f` | +| [#209](https://github.com/WordPress/try-wordpress/pull/209) | merged | `45ada19e2b2e72c9e79fa6c42e73842ae3907768` | +| [#210](https://github.com/WordPress/try-wordpress/pull/210) | merged | `c67167ea96768e02f6a0f484eb1df50a7962e15c` | +| [#211](https://github.com/WordPress/try-wordpress/pull/211) | merged | `0320cc54473c79014de3ad64c159860f3362de4a` | +| [#212](https://github.com/WordPress/try-wordpress/pull/212) | merged | `28972c9339f4f6e4389e12ce9bdf666d4cc613f6` | +| [#213](https://github.com/WordPress/try-wordpress/pull/213) | merged | `a3e940c1b0ef8c1d187cf581a71423c529344c91` | +| [#214](https://github.com/WordPress/try-wordpress/pull/214) | merged | `ac107e42eea15aa3082827696882367b40db606b` | +| [#215](https://github.com/WordPress/try-wordpress/pull/215) | merged | `862ac5d00d93d7632c2a91056330b81b49bda36c` | +| [#216](https://github.com/WordPress/try-wordpress/pull/216) | merged | `f8473294df0b45bc0afa10e580f238068063c24d` | +| [#217](https://github.com/WordPress/try-wordpress/pull/217) | merged | `6189aabbaeef452d4f84b9eabe879b984ba6b480` | + +#### Final Dependabot And Lockfile Reconciliation + +- Live default-branch state on 2026-07-28: the read-only GitHub Dependabot API still returns the original 124 open alerts with 124 unique alert numbers and returns zero dismissed alerts. The exact severity split remains 5 critical, 57 high, 48 medium, and 14 low; the ecosystem split remains 123 npm and one Composer. These results describe `trunk`, whose dependency manifests have not received draft integration PR #199, so GitHub's displayed alert state is expected to remain stale until that PR is merged and Dependabot recalculates the default branch. +- Integration-lock state: range-, scope-, and installed-path-aware comparison of every one of the 124 baseline rows finds 84 resolved rows and 40 residual rows. All five critical rows are resolved. The resolved split is 5 critical, 40 high, 28 medium, and 11 low; the residual split is 17 high, 20 medium, and 3 low. The Composer baseline row is resolved, so all 40 residual rows are npm rows. +- Row-level evidence: every baseline table row retains its baseline causal family, representative path, final child-PR link, and still-accurate historical status evidence; only statuses made stale by later child merges or lacking an explicit final resolution result are reconciled in place. A row is resolved only when no scope-matching installed package path remains in its GitHub advisory range. The final residual table below maps every residual alert to its complete current causal set and affected installed package versions. Aggregate npm-audit count reduction is not treated as resolution. +- Current causal roots for the 40 residual rows are `@wordpress/scripts@30.7.0`, `react-router-dom@6.28.0`, `@wordpress/block-library@9.27.0`, `web-ext@10.4.0`, `@babel/preset-env@7.26.0`, and `concurrently@9.1.0`. Version-qualified `npm explain` completed successfully for every distinct residual package/version pair and found no unmapped path. + +| Current residual causal set | Affected installed package version(s) | Count | Baseline alert numbers | +| --- | --- | ---: | --- | +| WPS | `@tootallnate/once@2.0.0`, `http-proxy-middleware@2.0.6`, `ip-address@9.0.5`, `launch-editor@2.9.1`, `linkify-it@3.0.3`, `markdown-it@12.3.2`, `minimatch@3.0.8`, `minimatch@9.0.3`, `on-headers@1.0.2`, `playwright@1.48.2`, `serialize-javascript@6.0.2`, `svgo@3.3.2`, `tar-fs@3.0.4`, `webpack-dev-server@4.15.2`, `ws@7.5.10`, `ws@8.13.0` | 26 | 6, 33, 36, 37, 38, 39, 41, 46, 49, 79, 83, 84, 85, 115, 131, 133, 134, 151, 152, 154, 158, 160, 169, 170, 172, 173 | +| ROUTER | `@remix-run/router@1.21.0`, `react-router@6.28.0` | 5 | 58, 59, 139, 193, 194 | +| CONCURRENTLY + WPS | `lodash@4.17.21` | 3 | 62, 102, 103 | +| BLK | `@babel/runtime@7.25.7`, `uuid@9.0.1` | 2 | 135, 186 | +| BABEL + WPS | `@babel/core@7.25.7`, `@babel/plugin-transform-modules-systemjs@7.25.9` | 2 | 127, 159 | +| WEBEXT | `shell-quote@1.8.4` | 1 | 167 | +| WEBEXT + WPS | `adm-zip@0.5.16` | 1 | 166 | +| **Total** | **23 distinct package names across 25 package/version pairs** | **40** | **40 unique baseline alert numbers** | + +- Blocker boundaries: the ROUTER rows require the documented React Router major migration or would add a current applicable advisory; the BLK rows remain behind a block-library candidate that adds an unsuppressed Firefox add-on security warning and materially expands the startup bundle; the WPS-related rows remain in published scripts tooling or tightly coupled roots whose tested next boundaries either retain affected paths, add a new applicable advisory, or require a broad ESLint/application migration. The WEBEXT residual is in its current locked linter path. These boundaries remain explicit blockers and were not bypassed with an override, downgrade, advisory dismissal, additional ignored Firefox file, or silent broad migration. + +#### npm Audit Advisories Outside The Baseline + +The final Node 24 clean install reports 111 npm audit effect-package keys: 87 high, 15 moderate, 9 low, and zero critical, covering 60 unique GHSAs. Seven applicable audit GHSAs are absent from both the 124-row baseline and the still-identical live default-branch alert set, so no GitHub alert number can truthfully be assigned yet: + +| GHSA | Severity | Affected installed package version(s) | Current causal family set | +| --- | --- | --- | --- | +| GHSA-22p9-wv53-3rq4 | high | `linkify-it@3.0.3` | WPS | +| GHSA-23c5-xmqv-rm74 | high | `minimatch@3.0.8`, `minimatch@9.0.3` | WPS | +| GHSA-3ppc-4f35-3m26 | high | `minimatch@3.0.8`, `minimatch@9.0.3` | WPS | +| GHSA-9gqv-wp59-fq42 | moderate | `http-proxy-middleware@2.0.6` | WPS | +| GHSA-c2c7-rcm5-vvqj | high | `picomatch@2.3.1` | ESLINT-RESOLVER + WEBPACK + WPS | +| GHSA-c7qv-q95q-8v27 | high | `http-proxy-middleware@2.0.6` | WPS | +| GHSA-mh99-v99m-4gvg | high | `brace-expansion@1.1.16`, `brace-expansion@2.1.2` | ESLINT-RESOLVER + WEBEXT + WEBPACK + WPS | + +These are six high and one moderate advisory. Version-qualified `npm explain` confirms that GHSA-mh99-v99m-4gvg reaches `brace-expansion@1.1.16` through WEBEXT, WPS, ESLINT-RESOLVER, and the filemanager-webpack-plugin member of WEBPACK, while `brace-expansion@2.1.2` reaches the root through WPS and filemanager-webpack-plugin. They are locally applicable findings requiring follow-up causal remediation and reconciliation with any GitHub alert numbers created after the default branch changes; their absence from today's default-branch API response is not a dismissal or resolution. + +#### Final Automated Validation And Handoff + +- Local Node validation: Node `v24.18.0` with npm `11.16.0` completed a clean `npm ci`, schema-aware `npm run type-check`, `npm run lint`, and sequential `npm run build:production:firefox` and `npm run build:production:chrome`. Both builds succeeded with only the documented Playground dynamic-request and asset-size warnings and retained the approximately 21.2 MiB `app.js` plus `498.app.js`, `300.app.js`, and `717.app.js`. +- Packaged-extension validation: `npm run validate:extension-builds` validated all nine script, page, and icon references in each production target. `npm run lint:extension:firefox` ignored only generated `app.js`, returned zero errors and notices, and returned the single allowed `UNSUPPORTED_API` warning at `background.js:1:77`. +- Audit and path validation: `npm audit --json` returned the nonzero 111-effect result documented above. Exact advisory-range checks over all lock paths produced the 84/40 baseline classification, and version-qualified `npm explain` assertions passed for all residual versions. The nonzero audit and 40 baseline residuals mean final automated security acceptance is blocked rather than complete. +- Composer and PHP validation: an official Composer 2 container completed `composer audit --locked --no-interaction` against the final lock with no advisory. The exact PR #217 head `0cf0af5bccd09ddb337c7960a2f51948444d308d` completed hosted `PHPCS PHP 8.3`, `PHPCS PHP 8.4`, `PHPUnit 8.3`, and `PHPUnit 8.4` jobs successfully; each PHPUnit matrix job performed a clean locked Composer install, the same locked audit, Node 24 `npm ci`, deterministic schema generation, latest-stable WordPress resolution and test-library installation, and the complete PHPUnit suite. The browser lint job on that same head also passed. Child 019 and integration PR #199 hosted checks remain the authoritative final gates after this documentation change. +- Integrity and scope: SHA-256 comparison before and after local validation proves `package.json`, `package-lock.json`, `composer.json`, and `composer.lock` are byte-identical. This child changes only `plan.md`; it adds no npm override, Composer replacement, downgrade, alert dismissal, public API change, stored-data schema change, generated schema change, application behavior change, or license/license-metadata change. +- Integration state: draft integration pull request [#199](https://github.com/WordPress/try-wordpress/pull/199) remains open, draft, and unmerged for user testing. It must not be marked ready or merged merely because the automated functional gates pass; the residual baseline and new audit advisories above require an explicit remediation or risk decision first. + +Manual handoff checklist: + +- Load `build/production/firefox` and `build/production/chrome` as unpacked extensions and verify the Firefox sidebar and Chrome side panel open without browser-console errors. +- Start WordPress Playground in both targets, confirm the emitted Playground/vendor asynchronous bundle is requested successfully at runtime, and compare startup, parse, and memory behavior against the documented approximately 21.2 MiB startup bundle risk. +- Import representative site navigation and multiple representative pages, preview the imported content, and confirm content, links, media, and layout behave as expected. +- Reload and close/reopen each browser session, verify session persistence, then inspect both browser-extension logs and WordPress/PHP logs for warnings, uncaught errors, failed requests, and missing chunks. +- Exercise both Firefox and Chrome development watch/start commands, change a copied manifest/icon/plugin/schema input, and verify one correct rebuild and recopy without an output-triggered watch loop. +- Reconfirm the provisional Firefox Gecko ID and declared data-collection categories before first publication, the single allowed Firefox unsupported-API warning, and the absence of any additional manifest or generated-bundle lint diagnostic. From 054c74708becd51a84418ea8cf74038e9660cba8 Mon Sep 17 00:00:00 2001 From: ashfame Date: Tue, 28 Jul 2026 10:39:53 +0400 Subject: [PATCH 40/40] Link final reconciliation child PR --- plan.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/plan.md b/plan.md index 5b1ad3f8..0982bd81 100644 --- a/plan.md +++ b/plan.md @@ -555,9 +555,9 @@ Status: validated and merged into the integration branch by child pull request [ - Post-action verification: both `git ls-remote --heads origin` and the paginated live branches API show all ten completed deletions absent, `crawler` still absent, and the preserved heads unchanged at `attempt-twitter` `09ea6328c0a7553328b1dddf78a2b35958e2fa15`, `fix-test-wix` `960f2d793bdf975e39c31304a296c168c0301aff`, and `npm_package_updates` `c9070d9d1bdd66ccf7a374d463b45c99e14e7683`. After PR #217 merged and its child branch was removed, the complete live remote set is exactly five heads: integration `agent/maintenance-security-and-hygiene` at `6189aabbaeef452d4f84b9eabe879b984ba6b480`, the three preserved branches at the SHAs above, and `trunk` at `98f7c74d195d0b1ee95e4f9c16c7a9b527149980`. - Validation: the live remote and API branch sets are identical at five exact heads; the approved-plan-prefix SHA-256, 124-row baseline-alert count, Markdown table structure, and `git diff --check` pass. This documentation update performs no additional GitHub mutation. -### Child Execution Record: `agent/maintenance-019-final-reconciliation` (PR URL pending) +### Child Execution Record: [#218](https://github.com/WordPress/try-wordpress/pull/218) -Status: final reconciliation is recorded on documentation-only branch `agent/maintenance-019-final-reconciliation`; its permanent child PR URL is pending creation, and it targets the integration branch without changing dependency manifests, lockfiles, application source, configuration, generated schema, or license metadata. +Status: final reconciliation is recorded by documentation-only child pull request [#218](https://github.com/WordPress/try-wordpress/pull/218), which targets the integration branch without changing dependency manifests, lockfiles, application source, configuration, generated schema, or license metadata. #### Child Pull Request Reconciliation @@ -625,7 +625,7 @@ These are six high and one moderate advisory. Version-qualified `npm explain` co - Local Node validation: Node `v24.18.0` with npm `11.16.0` completed a clean `npm ci`, schema-aware `npm run type-check`, `npm run lint`, and sequential `npm run build:production:firefox` and `npm run build:production:chrome`. Both builds succeeded with only the documented Playground dynamic-request and asset-size warnings and retained the approximately 21.2 MiB `app.js` plus `498.app.js`, `300.app.js`, and `717.app.js`. - Packaged-extension validation: `npm run validate:extension-builds` validated all nine script, page, and icon references in each production target. `npm run lint:extension:firefox` ignored only generated `app.js`, returned zero errors and notices, and returned the single allowed `UNSUPPORTED_API` warning at `background.js:1:77`. - Audit and path validation: `npm audit --json` returned the nonzero 111-effect result documented above. Exact advisory-range checks over all lock paths produced the 84/40 baseline classification, and version-qualified `npm explain` assertions passed for all residual versions. The nonzero audit and 40 baseline residuals mean final automated security acceptance is blocked rather than complete. -- Composer and PHP validation: an official Composer 2 container completed `composer audit --locked --no-interaction` against the final lock with no advisory. The exact PR #217 head `0cf0af5bccd09ddb337c7960a2f51948444d308d` completed hosted `PHPCS PHP 8.3`, `PHPCS PHP 8.4`, `PHPUnit 8.3`, and `PHPUnit 8.4` jobs successfully; each PHPUnit matrix job performed a clean locked Composer install, the same locked audit, Node 24 `npm ci`, deterministic schema generation, latest-stable WordPress resolution and test-library installation, and the complete PHPUnit suite. The browser lint job on that same head also passed. Child 019 and integration PR #199 hosted checks remain the authoritative final gates after this documentation change. +- Composer and PHP validation: an official Composer 2 container completed `composer audit --locked --no-interaction` against the final lock with no advisory. The exact PR #217 head `0cf0af5bccd09ddb337c7960a2f51948444d308d` completed hosted `PHPCS PHP 8.3`, `PHPCS PHP 8.4`, `PHPUnit 8.3`, and `PHPUnit 8.4` jobs successfully; each PHPUnit matrix job performed a clean locked Composer install, the same locked audit, Node 24 `npm ci`, deterministic schema generation, latest-stable WordPress resolution and test-library installation, and the complete PHPUnit suite. The browser lint job on that same head also passed. Child pull request [#218](https://github.com/WordPress/try-wordpress/pull/218) and integration PR #199 hosted checks remain the authoritative final gates after this documentation change. - Integrity and scope: SHA-256 comparison before and after local validation proves `package.json`, `package-lock.json`, `composer.json`, and `composer.lock` are byte-identical. This child changes only `plan.md`; it adds no npm override, Composer replacement, downgrade, alert dismissal, public API change, stored-data schema change, generated schema change, application behavior change, or license/license-metadata change. - Integration state: draft integration pull request [#199](https://github.com/WordPress/try-wordpress/pull/199) remains open, draft, and unmerged for user testing. It must not be marked ready or merged merely because the automated functional gates pass; the residual baseline and new audit advisories above require an explicit remediation or risk decision first.