diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml index 5d091d1ad70c2..434712f59dd6b 100644 --- a/.github/ISSUE_TEMPLATE/bug-report.yml +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -50,72 +50,85 @@ body: attributes: label: Steps to reproduce placeholder: | + E.g., What happened, and what did you expect to happen? Add images, + GIFs, and videos if you have them on hand. + 1. Start at `site-domain.com/blog`. 2. Click on any blog post. 3. Click on the 'Like' button. 4. ... + + Add any information that may be relevant, such as: + - Browser/Platform + - Theme + - Logs/Errors validations: required: true - - type: textarea - id: expected - attributes: - label: A clear and concise description of what you expected to happen. - placeholder: | - eg. Post should be liked. - - type: textarea - id: actual + + - type: markdown attributes: - label: What actually happened - placeholder: | - eg. Clicking the button does nothing visibly. + value: | +
+ + ## Impact + Please help us understand more about the impact of this issue to help determine next steps. + If you are unsure about anything, please use your judgment to make an educated guess. - type: dropdown - id: users-affected + id: impact attributes: - label: Impact - description: Approximately how many users are impacted? + label: Site owner impact + description: Approximately what percentage of the total users of the platform are impacted? Unsure? Please provide your most educated guess! options: - - One - - Some (< 50%) - - Most (> 50%) - - All + - Fewer than 20% of the total website/platform users + - Between 20% and 60% of the total website/platform users + - More than 60% of the total website/platform users validations: required: true - type: dropdown - id: workarounds + id: severity attributes: - label: Available workarounds? + label: Severity + description: What is the severity of this issue? Please take a look at the descriptions below for further context.
+
- **Critical:** Prevents core functionality or has severe impact on the website/platform. +
- **Major:** Significantly impairs important features or has notable impact on the website/platform. +
- **Moderate:** Affects non-critical features or has limited impact on the website/platform. +
- **Minor:** Causes inconvenience or has minimal impact on functionality. options: - - No and the platform is unusable - - No but the platform is still usable - - Yes, difficult to implement - - Yes, easy to implement - - There is no user impact + - Critical + - Major + - Moderate + - Minor validations: required: true + - type: dropdown + id: additional-impact + attributes: + label: What other impact(s) does this issue have? + description: You may select more than one + options: + - Platform revenue + - Agency or developer revenue + - Individual site owner revenue + - No revenue impact + multiple: true - type: markdown attributes: value: |
+ ## Optional Information + - type: textarea - id: workaround-detail + id: workaround attributes: - label: If the above answer is "Yes...", outline the workaround. + label: If a workaround is available, please outline it here. placeholder: | Provide details of the specific steps to take that resolve the issue, e.g.: - Open "Setting X". - Toggle "Option Y". - Click "Button Z". - - type: markdown - attributes: - value: | -
- - ## Optional Information - - The following section is optional. - type: dropdown id: site-type attributes: @@ -126,12 +139,3 @@ body: - Atomic - Self-hosted multiple: true - - type: textarea - id: logs - attributes: - label: Logs or notes - placeholder: | - Add any information that may be relevant, such as: - - Browser/Platform - - Theme - - Logs/Errors diff --git a/.github/files/coverage-munger/upload-coverage.sh b/.github/files/coverage-munger/upload-coverage.sh new file mode 100755 index 0000000000000..4dace87c5b189 --- /dev/null +++ b/.github/files/coverage-munger/upload-coverage.sh @@ -0,0 +1,97 @@ +#!/bin/bash + +## Environment used by this script: +# +# Required: +# - GITHUB_SHA: Commit SHA. +# - PR_ID: PR number or "trunk". +# - SECRET: Shared secret. + +set -eo pipefail + +if [[ ! -f coverage/summary.tsv ]]; then + echo 'No coverage was generated.' + exit 0 +fi + +mkdir coverage-data +cp coverage/summary.tsv coverage-data/summary.tsv +gzip -9 coverage-data/summary.tsv + +if [[ -f coverage/js-combined.json ]]; then + echo '::group::Pnpm install' + pnpm install + echo '::endgroup::' + + echo '::group::Generating JS coverage report' + .github/files/coverage-munger/node_modules/.bin/nyc report --no-exclude-after-remap --report-dir=coverage-data/js --temp-dir=coverage/ --reporter=html-spa + echo '::endgroup::' +fi + +if [[ -f coverage/php-combined.cov ]]; then + echo '::group::Composer install' + composer --working-dir=.github/files/coverage-munger/ update + echo '::endgroup::' + + echo '::group::Generating PHP coverage report' + .github/files/coverage-munger/vendor/bin/phpcov merge --html coverage-data/php coverage/ + echo '::endgroup::' +fi + +echo '::group::Creating zip file' +zip -Xr9 coverage-data.zip coverage-data/ +echo '::endgroup::' + +echo '::group::Uploading zip file' +# Because we don't know how big the zip is going to wind up being and have to upload via HTTP, +# we created a simple chunked-upload protocol. This sends one command. +# +# $1 - Query parameters. +# $2 - Chunk filename, if any. +# $SECRET - Shared secret. +# +# Output: +# JSON - JSON response. Also printed. +function do_req { + local args=( + --header "Shared-Secret: $SECRET" + --url "https://jetpackcodecoverage.atomicsites.blog/upload-coverage-data.php?$1" + ) + if [[ -n "$2" ]]; then + args+=( --form "chunk=@$2" ) + fi + + echo "=> $1" + if JSON=$( curl "${args[@]}" ) && jq -e '.ok == true' <<<"$JSON" &>/dev/null; then + jq . <<<"$JSON" + return 0 + fi + echo "::error::Upload failed: ${JSON/$'\n'/%0A}" + return 1 +} + +SZ=$( stat -c %s coverage-data.zip ) +SHA=$( sha256sum coverage-data.zip ) +ID=$( jq --arg V "$PR_ID" -nr '$V | @uri' ) +COMMIT=$( jq --arg V "$GITHUB_SHA" -nr '$V | @uri' ) +do_req "op=begin&id=$ID&commit=$COMMIT&len=$SZ&sha=${SHA%% *}" +TOKEN=$( jq -r '.token | @uri' <<<"$JSON" ) +CSZ=$( jq -r .chunkSize <<<"$JSON" ) + +# Abort upload on exit +function onexit { + if [[ -n "$TOKEN" ]]; then + do_req "op=abort&token=$TOKEN" || true + TOKEN= + fi +} +trap onexit exit + +for (( O=0; O < SZ; O+=CSZ )); do + dd if=coverage-data.zip of=chunk bs=32K skip=${O}B count=${CSZ}B + do_req "op=chunk&token=$TOKEN" chunk +done + +do_req "op=finish&token=$TOKEN" +TOKEN= +echo '::endgroup::' diff --git a/.github/renovate.json5 b/.github/renovate.json5 index 2d9b3c1d3e837..1c87e360c7418 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -87,6 +87,14 @@ matchPackageNames: [ 'docker/**' ], }, + // Separate this from 'monorepo:wordpress' while it's still considered unstable. + { + groupName: '@wordpress/dataviews', + matchPackageNames: [ '@wordpress/dataviews' ], + separateMajorMinor: false, + prPriority: 1, + }, + // 🤷 { groupName: 'Instant Search Dependency Updates', diff --git a/.github/workflows/build-docker-monorepo.yml b/.github/workflows/build-docker-monorepo.yml new file mode 100644 index 0000000000000..8581042c2c957 --- /dev/null +++ b/.github/workflows/build-docker-monorepo.yml @@ -0,0 +1,100 @@ +name: Build Monorepo Docker +on: + push: + branches: [ 'trunk' ] + paths: + - 'tools/docker/Dockerfile.monorepo' + - 'tools/docker/bin/monorepo' + - '.github/versions.sh' + - '.github/workflows/build-docker-monorepo.yml' + pull_request: + paths: + - 'tools/docker/Dockerfile.monorepo' + - 'tools/docker/bin/monorepo' + - '.github/versions.sh' + - '.github/workflows/build-docker-monorepo.yml' +concurrency: + group: build-docker-monorepo-${{ github.event_name }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + build: + name: Build and publish Jetpack Monorepo Environment + runs-on: ubuntu-latest + permissions: + packages: write + contents: read + timeout-minutes: 60 + + steps: + - uses: actions/checkout@v4 + + - name: Set up qemu + uses: docker/setup-qemu-action@v3 + with: + platforms: arm64 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Log in to Docker Hub + uses: docker/login-action@v3 + with: + username: matticbot + password: ${{ secrets.DOCKER_HUB_MATTICBOT_TOKEN }} + + - name: Log in to GitHub Packages + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Fetch build args + id: buildargs + run: | + source .github/versions.sh + source .github/files/gh-funcs.sh + + gh_set_output php-version "$PHP_VERSION" + gh_set_output composer-version "$COMPOSER_VERSION" + gh_set_output node-version "$NODE_VERSION" + gh_set_output pnpm-version "$PNPM_VERSION" + + if [[ "$GITHUB_EVENT_NAME" == "push" ]]; then + gh_set_output tags "type=raw,latest" + gh_set_output images $'automattic/jetpack-monorepo\nghcr.io/automattic/jetpack-monorepo' + elif [[ "$GITHUB_EVENT_NAME" == "pull_request" ]]; then + gh_set_output tags "type=ref,event=pr" + gh_set_output images "ghcr.io/automattic/jetpack-monorepo" + else + echo "Unknown GITHUB_EVENT_NAME $GITHUB_EVENT_NAME" + exit 1 + fi + + - name: Extract Docker metadata + id: meta + uses: docker/metadata-action@v5 + with: + flavor: latest=false + tags: ${{ steps.buildargs.outputs.tags }} + images: ${{ steps.buildargs.outputs.images }} + labels: | + org.opencontainers.image.title=Jetpack Monorepo Environment + org.opencontainers.image.description=Environment for building and testing the Jetpack Monorepo. + org.opencontainers.image.documentation=${{ github.server_url }}/${{ github.repository }}/blob/trunk/tools/docker/README.md + + - name: Build and push Docker image + uses: docker/build-push-action@v6 + with: + context: tools/docker + file: tools/docker/Dockerfile.monorepo + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} + platforms: linux/arm64,linux/amd64 + build-args: | + PHP_VERSION=${{ steps.buildargs.outputs.php-version }} + COMPOSER_VERSION=${{ steps.buildargs.outputs.composer-version }} + NODE_VERSION=${{ steps.buildargs.outputs.node-version }} + PNPM_VERSION=${{ steps.buildargs.outputs.pnpm-version }} diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 98e01159a7ad4..3e1b9d303f588 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -211,6 +211,7 @@ jobs: CONFIG_KEY: ${{ secrets.E2E_CONFIG_KEY }} SUITE: ${{ matrix.suite }} PROJECT_NAME: ${{ matrix.project }} + HOST_CWD: ${{ github.workspace }} run: | echo "::group::Decrypt config" pnpm run config:decrypt diff --git a/.github/workflows/linting.yml b/.github/workflows/linting.yml index 5e5b2e6b0b60c..b8fdf3f47c14e 100644 --- a/.github/workflows/linting.yml +++ b/.github/workflows/linting.yml @@ -93,6 +93,8 @@ jobs: - '.github/workflows/*.{yml,yaml}' - '.github/actions/*/action.{yml,yaml}' - 'projects/github-actions/*/action.{yml,yaml}' + # If we edit the linting JS files, we need to run it. + - 'tools/js-tools/lint-gh-actions.{js,mjs}' misc_php: # If composer, phpcs config, or the codesniffer package itself changed, there may be a new standard. - 'composer.json' @@ -341,7 +343,7 @@ jobs: run: pnpm run lint-changed --git-base=$SHA $(jq -rn --argjson files "$FILES" '$files[]') ### Lints GitHub Actions yaml files. - # Local equivalent: `./tools/js-tools/lint-gh-actions.js ` + # Local equivalent: `./tools/js-tools/lint-gh-actions.mjs ` lint_gh_actions: name: Lint GitHub Actions yaml files runs-on: ubuntu-latest @@ -358,7 +360,7 @@ jobs: - run: pnpm install - name: Run lint - run: ./tools/js-tools/lint-gh-actions.js -v '.github/workflows/*.{yml,yaml}' '.github/actions/*/action.{yml,yaml}' 'projects/github-actions/*/action.{yml,yaml}' + run: ./tools/js-tools/lint-gh-actions.mjs -v '.github/workflows/*.{yml,yaml}' '.github/actions/*/action.{yml,yaml}' 'projects/github-actions/*/action.{yml,yaml}' ### Checks that copied files (e.g. readme, license) are in sync # Local equivalent: `./tools/check-copied-files.sh` diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index a18c812be4b0d..3d7d30bed5a8f 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -4,8 +4,10 @@ on: pull_request: push: branches: [ 'trunk', '*/branch-*' ] + concurrency: - group: tests-${{ github.event_name }}-${{ github.ref }} + # Trunk runs need to not be cancelled for concurrency, mainly for code coverage. Everything else can be. + group: tests-${{ github.event_name }}-${{ github.ref }}-${{ github.event_name == 'push' && github.ref == 'refs/heads/trunk' && github.run_id || '' }} cancel-in-progress: true env: @@ -52,6 +54,10 @@ jobs: matrix: include: ${{ fromJson( needs.create-matrix.outputs.matrix ) }} + # Note matrix-job outputs are kind of weird. Last-to-run job that sets a non-empty value wins. + outputs: + did-coverage: ${{ ( steps.run-tests.conclusion != 'cancelled' && steps.process-coverage.conclusion == 'success' && steps.upload-artifacts.conclusion == 'success' ) && 'true' || '' }} + steps: - uses: actions/checkout@v4 with: @@ -114,6 +120,7 @@ jobs: run: .github/files/setup-wordpress-env.sh - name: Run project tests + id: run-tests env: FORCE_PACKAGE_TESTS: ${{ matrix.force-package-tests && 'true' || 'false' }} CHANGED: ${{ steps.changed.outputs.projects }} @@ -249,6 +256,7 @@ jobs: exit $EXIT - name: Process coverage results + id: process-coverage env: CHANGED: ${{ steps.changed.outputs.projects }} if: matrix.script == 'test-coverage' && always() @@ -266,6 +274,7 @@ jobs: echo "any=false" >> "$GITHUB_OUTPUT" fi - name: Upload artifacts + id: upload-artifacts if: always() && steps.check-artifacts.outputs.any == 'true' uses: actions/upload-artifact@v4 with: @@ -274,11 +283,34 @@ jobs: include-hidden-files: true retention-days: 7 + publish-coverage-data: + name: Publish coverage data + runs-on: ubuntu-latest + timeout-minutes: 10 # 2025-01-10 Wild guess + needs: run-tests + if: always() && needs.run-tests.outputs.did-coverage == 'true' && ( github.event_name == 'pull_request' || github.ref == 'refs/heads/trunk' ) + steps: + - uses: actions/checkout@v4 + + - name: Setup tools + uses: ./.github/actions/tool-setup + + - name: Download coverage artifact + uses: actions/download-artifact@v4 + with: + name: 'Code coverage' + path: coverage + + - name: Upload coverage results + env: + PR_ID: ${{ github.event_name != 'pull_request' && 'trunk' || github.event.pull_request.number }} + SECRET: ${{ secrets.CODECOV_SECRET }} + run: .github/files/coverage-munger/upload-coverage.sh + storybook-test: name: Storybook tests runs-on: ubuntu-latest timeout-minutes: 20 # 2024-02-23 Wild guess - continue-on-error: true # Until it passes steps: - uses: actions/checkout@v4 diff --git a/.gitignore b/.gitignore index b8679993e4841..fd95946530599 100644 --- a/.gitignore +++ b/.gitignore @@ -20,7 +20,7 @@ jetpack_vendor/ /tools/docker/jetpack-docker-config.yml /tools/phpcs.log -# File for personal customiziations, if desired. +# File for personal customizations, if desired. /tools/docker/mu-plugins/0-sandbox.php .idea *.iml @@ -57,3 +57,6 @@ phpcs.xml # VS Code setting files *.code-workspace /.vscode/settings.json + +.pnpm-debug.log +.pnpm-error.log diff --git a/.phan/stubs/wpcom-stubs.php b/.phan/stubs/wpcom-stubs.php index f852009758261..f36d0b756b102 100644 --- a/.phan/stubs/wpcom-stubs.php +++ b/.phan/stubs/wpcom-stubs.php @@ -4,7 +4,7 @@ * `bin/teamcity-builds/jetpack-stubs/stub-defs.php` and regenerate the stubs * by triggering the Jetpack Staging → Update WPCOM Stubs job in TeamCity. * - * Stubs automatically generated from WordPress.com commit 27c49bf2f318cd2fb105e5bd9719a910def72a53. + * Stubs automatically generated from WordPress.com commit c22dbf3bcf2334f7010cf491a7817654b95c54fe. */ namespace { @@ -109,6 +109,9 @@ function __construct() public function republicize_post($post_id, $message, $skip_connections, $check_feature = \false, $sync = \true, $_user_id = \null) { } + public function get_all_connections_for_blog_id($_blog_id = \false, $format = 'complete') + { + } } /** * @param int $blog_id @@ -249,6 +252,18 @@ function header_js() function global_css() { } + class WPCOM_External_Connections + { + /** + * @return WPCOM_External_Connections + */ + static function init() + { + } + public function get_external_services_list($type = \false, $blog_id = \false) + { + } + } class WPCOM_Google_Sheets_Helper { /** @@ -461,6 +476,24 @@ public static function filter_blog($blog_id, $filters) { } } + class Social_Connections_Rest_Helper + { + /** + * @return Jetpack_Social_Connections + */ + public static function init() + { + } + public function delete_publicize_connection($publicize_connection_id, $blog_id = \false) + { + } + public function create_publicize_connection($input) + { + } + public function update_connection($publicize_connection_id, $input, $blog_id = \false) + { + } + } /** * @param string|int|WP_User $identity * @param string $event_name @@ -1430,6 +1463,14 @@ function prompt_without_blocks($prompt_html) function assign_current_user(string $experiment_name): ?string { } + /** + * @param string $experiment_name + * @param \WP_User $user + * @return string|null + */ + function assign_given_user(string $experiment_name, \WP_User $user): ?string + { + } } namespace JITM { class Engine diff --git a/.pnpm-patches/@wordpress__dataviews@4.10.0.patch b/.pnpm-patches/@wordpress__dataviews@4.10.0.patch deleted file mode 100644 index 49656b5f977cc..0000000000000 --- a/.pnpm-patches/@wordpress__dataviews@4.10.0.patch +++ /dev/null @@ -1,15 +0,0 @@ -Hack for https://github.com/WordPress/gutenberg/issues/67897 - -diff --git a/package.json b/package.json -index d7af17fea3f59f807a9d7234cf9ce79131538383..c862b012af312c9fc5cf1d2d884ec332ee079d0b 100644 ---- a/package.json -+++ b/package.json -@@ -27,7 +27,7 @@ - "exports": { - ".": { - "types": "./build-types/index.d.ts", -- "import": "./build-module/index.js" -+ "default": "./build/index.js" - }, - "./wp": { - "types": "./build-types/index.d.ts", diff --git a/.pnpm-patches/@wordpress__dataviews@4.12.0.patch b/.pnpm-patches/@wordpress__dataviews@4.12.0.patch new file mode 100644 index 0000000000000..39567384b4d0e --- /dev/null +++ b/.pnpm-patches/@wordpress__dataviews@4.12.0.patch @@ -0,0 +1,18 @@ +Hack for https://github.com/WordPress/gutenberg/issues/67897 + +diff --git a/package.json b/package.json +index 9df754abc5e871d61e726aa84c92e079db5d6c60..9a0db897aeb3eb15b4a1767da4cd7ef7acef88d7 100644 +--- a/package.json ++++ b/package.json +@@ -23,11 +23,9 @@ + "npm": ">=8.19.2" + }, + "main": "build/index.js", +- "module": "build-module/index.js", + "exports": { + ".": { + "types": "./build-types/index.d.ts", +- "import": "./build-module/index.js", + "default": "./build/index.js" + }, + "./wp": { diff --git a/.pnpmfile.cjs b/.pnpmfile.cjs index 8483ae624e8fd..32cd670ed03c0 100644 --- a/.pnpmfile.cjs +++ b/.pnpmfile.cjs @@ -22,14 +22,25 @@ function fixDeps( pkg ) { // Missing dep or peer dep on react. // https://github.com/WordPress/gutenberg/issues/55171 + // https://github.com/WordPress/gutenberg/issues/68694 if ( - pkg.name === '@wordpress/icons' && + ( pkg.name === '@wordpress/icons' || pkg.name === '@wordpress/upload-media' ) && ! pkg.dependencies?.react && ! pkg.peerDependencies?.react ) { pkg.peerDependencies.react = '^18'; } + // Missing dep or peer dep on @babel/runtime and react + // https://github.com/WordPress/gutenberg/issues/68694 + if ( + pkg.name === '@wordpress/upload-media' && + ! pkg.dependencies?.[ '@babel/runtime' ] && + ! pkg.peerDependencies?.[ '@babel/runtime' ] + ) { + pkg.peerDependencies[ '@babel/runtime' ] = '^7'; + } + // Missing dep or peer dep. // https://github.com/actions/toolkit/issues/1684 if ( diff --git a/composer.lock b/composer.lock index eb8141cea1f3b..c266642289899 100644 --- a/composer.lock +++ b/composer.lock @@ -318,13 +318,13 @@ }, "type": "library", "extra": { - "branch-alias": { - "dev-main": "3.x-dev" - }, "phpstan": { "includes": [ "extension.neon" ] + }, + "branch-alias": { + "dev-main": "3.x-dev" } }, "autoload": { @@ -1058,16 +1058,16 @@ }, { "name": "php-stubs/woocommerce-stubs", - "version": "v9.4.2", + "version": "v9.5.0", "source": { "type": "git", "url": "https://github.com/php-stubs/woocommerce-stubs.git", - "reference": "d4347943eac3af274089abf1af9449e9dab45a96" + "reference": "813f3cad9892bd3b6ffae9334a4ccaa73692b439" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-stubs/woocommerce-stubs/zipball/d4347943eac3af274089abf1af9449e9dab45a96", - "reference": "d4347943eac3af274089abf1af9449e9dab45a96", + "url": "https://api.github.com/repos/php-stubs/woocommerce-stubs/zipball/813f3cad9892bd3b6ffae9334a4ccaa73692b439", + "reference": "813f3cad9892bd3b6ffae9334a4ccaa73692b439", "shasum": "" }, "require": { @@ -1096,9 +1096,9 @@ ], "support": { "issues": "https://github.com/php-stubs/woocommerce-stubs/issues", - "source": "https://github.com/php-stubs/woocommerce-stubs/tree/v9.4.2" + "source": "https://github.com/php-stubs/woocommerce-stubs/tree/v9.5.0" }, - "time": "2024-11-19T19:49:15+00:00" + "time": "2024-12-17T03:31:31+00:00" }, { "name": "php-stubs/wordpress-stubs", @@ -1995,16 +1995,16 @@ }, { "name": "sirbrillig/phpcs-changed", - "version": "v2.11.5", + "version": "v2.11.6", "source": { "type": "git", "url": "https://github.com/sirbrillig/phpcs-changed.git", - "reference": "aaa144eb4f14697b6b06e3dcf74081b5a02f85f6" + "reference": "284c394d7c5fd292a8876be6edb18781c28d612a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sirbrillig/phpcs-changed/zipball/aaa144eb4f14697b6b06e3dcf74081b5a02f85f6", - "reference": "aaa144eb4f14697b6b06e3dcf74081b5a02f85f6", + "url": "https://api.github.com/repos/sirbrillig/phpcs-changed/zipball/284c394d7c5fd292a8876be6edb18781c28d612a", + "reference": "284c394d7c5fd292a8876be6edb18781c28d612a", "shasum": "" }, "require": { @@ -2043,22 +2043,22 @@ "description": "Run phpcs on files, but only report warnings/errors from lines which were changed.", "support": { "issues": "https://github.com/sirbrillig/phpcs-changed/issues", - "source": "https://github.com/sirbrillig/phpcs-changed/tree/v2.11.5" + "source": "https://github.com/sirbrillig/phpcs-changed/tree/v2.11.6" }, - "time": "2024-05-23T20:01:41+00:00" + "time": "2024-12-15T17:22:37+00:00" }, { "name": "sirbrillig/phpcs-variable-analysis", - "version": "v2.11.21", + "version": "v2.11.22", "source": { "type": "git", "url": "https://github.com/sirbrillig/phpcs-variable-analysis.git", - "reference": "eb2b351927098c24860daa7484e290d3eed693be" + "reference": "ffb6f16c6033ec61ed84446b479a31d6529f0eb7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sirbrillig/phpcs-variable-analysis/zipball/eb2b351927098c24860daa7484e290d3eed693be", - "reference": "eb2b351927098c24860daa7484e290d3eed693be", + "url": "https://api.github.com/repos/sirbrillig/phpcs-variable-analysis/zipball/ffb6f16c6033ec61ed84446b479a31d6529f0eb7", + "reference": "ffb6f16c6033ec61ed84446b479a31d6529f0eb7", "shasum": "" }, "require": { @@ -2070,7 +2070,6 @@ "phpcsstandards/phpcsdevcs": "^1.1", "phpstan/phpstan": "^1.7", "phpunit/phpunit": "^4.8.36 || ^5.7.21 || ^6.5 || ^7.0 || ^8.0 || ^9.0 || ^10.5.32 || ^11.3.3", - "sirbrillig/phpcs-import-detection": "^1.1", "vimeo/psalm": "^0.2 || ^0.3 || ^1.1 || ^4.24 || ^5.0" }, "type": "phpcodesniffer-standard", @@ -2103,7 +2102,7 @@ "source": "https://github.com/sirbrillig/phpcs-variable-analysis", "wiki": "https://github.com/sirbrillig/phpcs-variable-analysis/wiki" }, - "time": "2024-12-02T16:37:49+00:00" + "time": "2025-01-06T17:54:24+00:00" }, { "name": "squizlabs/php_codesniffer", @@ -2200,16 +2199,16 @@ }, { "name": "symfony/console", - "version": "v7.2.0", + "version": "v7.2.1", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf" + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", + "url": "https://api.github.com/repos/symfony/console/zipball/fefcc18c0f5d0efe3ab3152f15857298868dc2c3", + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3", "shasum": "" }, "require": { @@ -2273,7 +2272,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.2.0" + "source": "https://github.com/symfony/console/tree/v7.2.1" }, "funding": [ { @@ -2289,7 +2288,7 @@ "type": "tidelift" } ], - "time": "2024-11-06T14:24:19+00:00" + "time": "2024-12-11T03:49:26+00:00" }, { "name": "symfony/deprecation-contracts", @@ -2310,12 +2309,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -2622,8 +2621,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -2780,12 +2779,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { diff --git a/package.json b/package.json index 954da13145901..312f6709ae600 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "packageManager": "pnpm@9.15.0", "pnpm": { "patchedDependencies": { - "@wordpress/dataviews@4.10.0": ".pnpm-patches/@wordpress__dataviews@4.10.0.patch" + "@wordpress/dataviews@4.12.0": ".pnpm-patches/@wordpress__dataviews@4.12.0.patch" } } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 381294a9066fb..ddebde75a528d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,12 +4,12 @@ settings: autoInstallPeers: false excludeLinksFromLockfile: false -pnpmfileChecksum: elvoqfz3hkxf3joxybwjpabdjm +pnpmfileChecksum: 4dabxzjqxv2glgjc2d7l77h7ii patchedDependencies: - '@wordpress/dataviews@4.10.0': - hash: of6mtpeubmoicukrgy5ohupf6a - path: .pnpm-patches/@wordpress__dataviews@4.10.0.patch + '@wordpress/dataviews@4.12.0': + hash: uzs6glhpt3sq2uqjvqzk6vk2ze + path: .pnpm-patches/@wordpress__dataviews@4.12.0.patch importers: @@ -136,35 +136,35 @@ importers: specifier: 11.5.16 version: 11.5.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 '@wordpress/base-styles': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/blob': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 '@wordpress/block-editor': - specifier: 14.9.0 - version: 14.9.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.11.0 + version: 14.11.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/compose': - specifier: 7.14.0 - version: 7.14.0(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(react@18.3.1) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -233,8 +233,8 @@ importers: specifier: workspace:* version: link:../config '@wordpress/url': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 devDependencies: jest: specifier: 29.7.0 @@ -262,14 +262,14 @@ importers: projects/js-packages/base-styles: devDependencies: '@wordpress/base-styles': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 projects/js-packages/boost-score-api: dependencies: '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 zod: specifier: 3.22.3 version: 3.22.3 @@ -295,6 +295,9 @@ importers: projects/js-packages/charts: dependencies: + '@babel/runtime': + specifier: 7.26.0 + version: 7.26.0 '@react-spring/web': specifier: 9.7.3 version: 9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -304,6 +307,9 @@ importers: '@visx/event': specifier: ^3.8.0 version: 3.12.0 + '@visx/gradient': + specifier: 3.12.0 + version: 3.12.0(react@18.3.1) '@visx/grid': specifier: ^3.12.0 version: 3.12.0(react@18.3.1) @@ -338,21 +344,21 @@ importers: specifier: 2.5.0 version: 2.5.0 devDependencies: - '@rollup/plugin-commonjs': - specifier: 26.0.1 - version: 26.0.1(rollup@3.29.5) - '@rollup/plugin-json': - specifier: 6.1.0 - version: 6.1.0(rollup@3.29.5) - '@rollup/plugin-node-resolve': - specifier: 15.3.0 - version: 15.3.0(rollup@3.29.5) - '@rollup/plugin-terser': - specifier: 0.4.3 - version: 0.4.3(rollup@3.29.5) - '@rollup/plugin-typescript': - specifier: 12.1.0 - version: 12.1.0(rollup@3.29.5)(tslib@2.5.0)(typescript@5.7.2) + '@babel/core': + specifier: 7.26.0 + version: 7.26.0 + '@babel/plugin-transform-runtime': + specifier: 7.25.9 + version: 7.25.9(@babel/core@7.26.0) + '@babel/preset-env': + specifier: 7.26.0 + version: 7.26.0(@babel/core@7.26.0) + '@babel/preset-react': + specifier: 7.26.3 + version: 7.26.3(@babel/core@7.26.0) + '@babel/preset-typescript': + specifier: 7.26.0 + version: 7.26.0(@babel/core@7.26.0) '@storybook/blocks': specifier: 8.4.7 version: 8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7) @@ -365,6 +371,18 @@ importers: '@types/react-dom': specifier: 18.3.5 version: 18.3.5(@types/react@18.3.18) + babel-loader: + specifier: 9.1.2 + version: 9.1.2(@babel/core@7.26.0)(webpack@5.94.0) + clean-webpack-plugin: + specifier: ^4.0.0 + version: 4.0.0(webpack@5.94.0) + css-loader: + specifier: ^6.7.0 + version: 6.11.0(webpack@5.94.0) + fork-ts-checker-webpack-plugin: + specifier: 9.0.2 + version: 9.0.2(typescript@5.7.2)(webpack@5.94.0) jest: specifier: 29.7.0 version: 29.7.0 @@ -374,9 +392,15 @@ importers: jest-extended: specifier: 4.0.2 version: 4.0.2(jest@29.7.0) + mini-css-extract-plugin: + specifier: ^2.7.0 + version: 2.9.1(webpack@5.94.0) postcss: specifier: 8.4.47 version: 8.4.47 + postcss-loader: + specifier: ^7.0.0 + version: 7.3.4(postcss@8.4.47)(typescript@5.7.2)(webpack@5.94.0) postcss-modules: specifier: 6.0.1 version: 6.0.1(postcss@8.4.47) @@ -386,36 +410,39 @@ importers: react-dom: specifier: 18.3.1 version: 18.3.1(react@18.3.1) - rollup: - specifier: 3.29.5 - version: 3.29.5 - rollup-plugin-dts: - specifier: 6.1.1 - version: 6.1.1(rollup@3.29.5)(typescript@5.7.2) - rollup-plugin-peer-deps-external: - specifier: 2.2.4 - version: 2.2.4(rollup@3.29.5) - rollup-plugin-postcss: - specifier: 4.0.2 - version: 4.0.2(postcss@8.4.47) sass: specifier: 1.64.1 version: 1.64.1 sass-embedded: specifier: 1.83.0 version: 1.83.0 + sass-loader: + specifier: ^13.0.0 + version: 13.3.3(sass-embedded@1.83.0)(sass@1.64.1)(webpack@5.94.0) storybook: specifier: 8.4.7 version: 8.4.7 + tsconfig-paths-webpack-plugin: + specifier: 4.2.0 + version: 4.2.0 typescript: specifier: 5.7.2 version: 5.7.2 + webpack: + specifier: ^5.88.0 + version: 5.94.0(webpack-cli@5.1.4) + webpack-cli: + specifier: ^5.1.0 + version: 5.1.4(webpack@5.94.0) projects/js-packages/components: dependencies: '@automattic/format-currency': specifier: 1.0.1 version: 1.0.1 + '@automattic/jetpack-api': + specifier: workspace:* + version: link:../api '@automattic/jetpack-boost-score-api': specifier: workspace:* version: link:../boost-score-api @@ -426,35 +453,35 @@ importers: specifier: ^7 version: 7.26.0 '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/compose': - specifier: 7.14.0 - version: 7.14.0(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(react@18.3.1) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/dataviews': - specifier: 4.10.0 - version: 4.10.0(patch_hash=of6mtpeubmoicukrgy5ohupf6a)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 4.12.0 + version: 4.12.0(patch_hash=uzs6glhpt3sq2uqjvqzk6vk2ze)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/date': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/notices': - specifier: 5.14.0 - version: 5.14.0(react@18.3.1) + specifier: 5.16.0 + version: 5.16.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -534,9 +561,6 @@ importers: require-from-string: specifier: 2.0.2 version: 2.0.2 - resize-observer-polyfill: - specifier: 1.5.1 - version: 1.5.1 storybook: specifier: 8.4.7 version: 8.4.7 @@ -580,26 +604,26 @@ importers: specifier: workspace:* version: link:../script-data '@wordpress/base-styles': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -679,13 +703,13 @@ importers: version: 2.3.10 '@types/node': specifier: ^20.4.2 - version: 20.17.11 + version: 20.17.12 express: specifier: 4.21.2 version: 4.21.2 jest: specifier: 29.7.0 - version: 29.7.0(@types/node@20.17.11) + version: 29.7.0(@types/node@20.17.12) path-browserify: specifier: 1.0.1 version: 1.0.1 @@ -752,8 +776,8 @@ importers: version: 7.6.3 devDependencies: '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 eslint: specifier: 9.16.0 version: 9.16.0 @@ -796,11 +820,11 @@ importers: version: 4.4.0 devDependencies: '@wordpress/dependency-extraction-webpack-plugin': - specifier: 6.14.0 - version: 6.14.0(webpack@5.94.0) + specifier: 6.16.0 + version: 6.16.0(webpack@5.94.0) '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 jest: specifier: 29.7.0 version: 29.7.0 @@ -826,26 +850,26 @@ importers: specifier: workspace:* version: link:../components '@wordpress/base-styles': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/compose': - specifier: 7.14.0 - version: 7.14.0(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(react@18.3.1) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/url': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 prop-types: specifier: ^15.7.2 version: 15.8.1 @@ -950,20 +974,20 @@ importers: specifier: workspace:* version: link:../components '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -996,8 +1020,8 @@ importers: specifier: 14.5.2 version: 14.5.2(@testing-library/dom@10.4.0) '@wordpress/babel-plugin-import-jsx-pragma': - specifier: 5.14.0 - version: 5.14.0(@babel/core@7.26.0) + specifier: 5.16.0 + version: 5.16.0(@babel/core@7.26.0) babel-jest: specifier: 29.7.0 version: 29.7.0(@babel/core@7.26.0) @@ -1023,8 +1047,8 @@ importers: specifier: workspace:* version: link:../connection '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 clsx: specifier: 2.1.1 version: 2.1.1 @@ -1054,11 +1078,11 @@ importers: specifier: 14.5.2 version: 14.5.2(@testing-library/dom@10.4.0) '@wordpress/base-styles': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) jest: specifier: 29.7.0 version: 29.7.0 @@ -1099,62 +1123,62 @@ importers: specifier: 2.1.0-beta.8 version: 2.1.0-beta.8(@babel/runtime@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/annotations': - specifier: 3.14.0 - version: 3.14.0(react@18.3.1) + specifier: 3.16.0 + version: 3.16.0(react@18.3.1) '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 '@wordpress/block-editor': - specifier: 14.9.0 - version: 14.9.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.11.0 + version: 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/blocks': - specifier: 14.3.0 - version: 14.3.0(react@18.3.1) + specifier: 14.5.0 + version: 14.5.0(react@18.3.1) '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/compose': - specifier: 7.14.0 - version: 7.14.0(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(react@18.3.1) '@wordpress/core-data': - specifier: 7.14.0 - version: 7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/dataviews': - specifier: 4.10.0 - version: 4.10.0(patch_hash=of6mtpeubmoicukrgy5ohupf6a)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 4.12.0 + version: 4.12.0(patch_hash=uzs6glhpt3sq2uqjvqzk6vk2ze)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/date': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/edit-post': - specifier: 8.14.0 - version: 8.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 8.16.0 + version: 8.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/editor': - specifier: 14.14.0 - version: 14.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.16.0 + version: 14.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/hooks': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 '@wordpress/html-entities': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/media-utils': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/notices': - specifier: 5.14.0 - version: 5.14.0(react@18.3.1) + specifier: 5.16.0 + version: 5.16.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -1205,8 +1229,8 @@ importers: specifier: 18.3.18 version: 18.3.18 '@wordpress/babel-plugin-import-jsx-pragma': - specifier: 5.14.0 - version: 5.14.0(@babel/core@7.26.0) + specifier: 5.16.0 + version: 5.16.0(@babel/core@7.26.0) babel-jest: specifier: 29.4.3 version: 29.4.3(@babel/core@7.26.0) @@ -1278,17 +1302,17 @@ importers: specifier: workspace:* version: link:../base-styles '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/url': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 debug: specifier: 4.4.0 version: 4.4.0 @@ -1350,26 +1374,26 @@ importers: specifier: workspace:* version: link:../connection '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 '@wordpress/compose': - specifier: 7.14.0 - version: 7.14.0(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(react@18.3.1) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/plugins': - specifier: 7.14.0 - version: 7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/url': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 lodash: specifier: 4.17.21 version: 4.17.21 @@ -1396,8 +1420,8 @@ importers: specifier: 14.5.2 version: 14.5.2(@testing-library/dom@10.4.0) '@wordpress/babel-plugin-import-jsx-pragma': - specifier: 5.14.0 - version: 5.14.0(@babel/core@7.26.0) + specifier: 5.16.0 + version: 5.16.0(@babel/core@7.26.0) babel-jest: specifier: 29.3.1 version: 29.3.1(@babel/core@7.26.0) @@ -1463,8 +1487,8 @@ importers: projects/js-packages/storybook: dependencies: '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 devDependencies: '@automattic/jetpack-components': specifier: workspace:* @@ -1501,7 +1525,7 @@ importers: version: 8.4.7(storybook@8.4.7) '@storybook/addon-webpack5-compiler-babel': specifier: ^3.0.3 - version: 3.0.3(webpack@5.94.0) + version: 3.0.5(webpack@5.94.0) '@storybook/blocks': specifier: 8.4.7 version: 8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7) @@ -1530,26 +1554,26 @@ importers: specifier: 18.3.18 version: 18.3.18 '@wordpress/base-styles': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/block-editor': - specifier: 14.9.0 - version: 14.9.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.11.0 + version: 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/block-library': - specifier: 9.14.0 - version: 9.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 9.16.0 + version: 9.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/format-library': - specifier: 5.14.0 - version: 5.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 5.16.0 + version: 5.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/postcss-plugins-preset': - specifier: 5.14.0 - version: 5.14.0(postcss@8.4.47) + specifier: 5.16.0 + version: 5.16.0(postcss@8.4.47) allure-playwright: specifier: 2.9.2 version: 2.9.2 @@ -1713,11 +1737,11 @@ importers: specifier: 2.3.0 version: 2.3.0(webpack@5.94.0) '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/dependency-extraction-webpack-plugin': - specifier: 6.14.0 - version: 6.14.0(webpack@5.94.0) + specifier: 6.16.0 + version: 6.16.0(webpack@5.94.0) babel-loader: specifier: 9.1.2 version: 9.1.2(@babel/core@7.26.0)(webpack@5.94.0) @@ -1780,8 +1804,8 @@ importers: specifier: workspace:* version: link:../../js-packages/webpack-config '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 concurrently: specifier: 7.6.0 version: 7.6.0 @@ -1819,23 +1843,23 @@ importers: specifier: 5.20.5 version: 5.20.5(react@18.3.1) '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/date': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 moment: specifier: 2.30.1 version: 2.30.1 @@ -1877,8 +1901,8 @@ importers: specifier: 18.3.18 version: 18.3.18 '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 concurrently: specifier: 7.6.0 version: 7.6.0 @@ -1916,29 +1940,29 @@ importers: specifier: workspace:* version: link:../../js-packages/shared-extension-utils '@wordpress/block-editor': - specifier: 14.9.0 - version: 14.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.11.0 + version: 14.11.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/compose': - specifier: 7.14.0 - version: 7.14.0(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(react@18.3.1) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/plugins': - specifier: 7.14.0 - version: 7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: specifier: 18.3.1 version: 18.3.1 @@ -1959,8 +1983,8 @@ importers: specifier: 7.26.0 version: 7.26.0 '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 sass: specifier: 1.64.1 version: 1.64.1 @@ -1986,8 +2010,8 @@ importers: specifier: workspace:* version: link:../../js-packages/webpack-config '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 sass: specifier: 1.64.1 version: 1.64.1 @@ -2018,8 +2042,8 @@ importers: specifier: 2.1.1 version: 2.1.1(postcss@8.4.47) '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 autoprefixer: specifier: 10.4.20 version: 10.4.20(postcss@8.4.47) @@ -2054,11 +2078,11 @@ importers: specifier: workspace:* version: link:../../js-packages/idc '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.2.0) + specifier: 10.16.0 + version: 10.16.0(react@18.2.0) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 devDependencies: '@automattic/jetpack-webpack-config': specifier: workspace:* @@ -2073,8 +2097,8 @@ importers: specifier: 7.26.0 version: 7.26.0 '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 glob: specifier: 11.0.0 version: 11.0.0 @@ -2106,11 +2130,11 @@ importers: specifier: 0.1.1 version: 0.1.1 '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 '@wordpress/url': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 cookie: specifier: 1.0.1 version: 1.0.1 @@ -2126,7 +2150,7 @@ importers: version: 7.26.0 '@types/node': specifier: ^20.4.2 - version: 20.17.11 + version: 20.17.12 '@types/qs': specifier: 6.9.17 version: 6.9.17 @@ -2135,7 +2159,7 @@ importers: version: 7.6.0 jest: specifier: 29.7.0 - version: 29.7.0(@types/node@20.17.11) + version: 29.7.0(@types/node@20.17.12) typescript: specifier: 5.0.4 version: 5.0.4 @@ -2158,32 +2182,32 @@ importers: specifier: workspace:* version: link:../../js-packages/shared-extension-utils '@wordpress/block-editor': - specifier: 14.9.0 - version: 14.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.11.0 + version: 14.11.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/blocks': - specifier: 14.3.0 - version: 14.3.0(react@18.3.1) + specifier: 14.5.0 + version: 14.5.0(react@18.3.1) '@wordpress/compose': - specifier: 7.14.0 - version: 7.14.0(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(react@18.3.1) '@wordpress/core-data': - specifier: 7.14.0 - version: 7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/hooks': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -2256,20 +2280,20 @@ importers: specifier: 10.4.0 version: 10.4.0 '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 '@wordpress/babel-plugin-import-jsx-pragma': - specifier: 5.14.0 - version: 5.14.0(@babel/core@7.26.0) + specifier: 5.16.0 + version: 5.16.0(@babel/core@7.26.0) '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/date': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 autoprefixer: specifier: 10.4.20 version: 10.4.20(postcss@8.4.47) @@ -2324,7 +2348,7 @@ importers: version: link:../../js-packages/shared-extension-utils '@automattic/page-pattern-modal': specifier: 1.1.5 - version: 1.1.5(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(@wordpress/data@10.14.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1) + version: 1.1.5(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(@wordpress/data@10.16.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(webpack@5.94.0) '@automattic/typography': specifier: 1.0.0 version: 1.0.0 @@ -2341,47 +2365,47 @@ importers: specifier: ^5.15.5 version: 5.20.5(react@18.3.1) '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 '@wordpress/base-styles': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/blocks': - specifier: 14.3.0 - version: 14.3.0(react@18.3.1) + specifier: 14.5.0 + version: 14.5.0(react@18.3.1) '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/dom-ready': specifier: ^4.8.1 - version: 4.14.0 + version: 4.16.0 '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/hooks': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/plugins': - specifier: 7.14.0 - version: 7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/private-apis': specifier: ^1.8.1 - version: 1.14.0 + version: 1.16.0 '@wordpress/router': specifier: ^1.8.11 - version: 1.14.0(react@18.3.1) + version: 1.16.0(react@18.3.1) '@wordpress/url': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 clsx: specifier: 2.1.1 version: 2.1.1 @@ -2431,7 +2455,7 @@ importers: version: 1.48.2 '@types/node': specifier: ^20.4.2 - version: 20.17.11 + version: 20.17.12 '@types/react': specifier: ^18.2.28 version: 18.3.18 @@ -2466,8 +2490,8 @@ importers: specifier: workspace:* version: link:../../js-packages/webpack-config '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 sass: specifier: 1.64.1 version: 1.64.1 @@ -2506,8 +2530,8 @@ importers: specifier: 2.1.1 version: 2.1.1(postcss@8.4.47) '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 autoprefixer: specifier: 10.4.20 version: 10.4.20(postcss@8.4.47) @@ -2566,32 +2590,32 @@ importers: specifier: 5.20.5 version: 5.20.5(react@18.3.1) '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/compose': - specifier: 7.14.0 - version: 7.14.0(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(react@18.3.1) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/date': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/url': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 clsx: specifier: 2.1.1 version: 2.1.1 @@ -2714,15 +2738,15 @@ importers: specifier: workspace:* version: link:../../js-packages/analytics '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 devDependencies: '@automattic/jetpack-webpack-config': specifier: workspace:* version: link:../../js-packages/webpack-config '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 concurrently: specifier: 7.6.0 version: 7.6.0 @@ -2760,23 +2784,23 @@ importers: specifier: workspace:* version: link:../../js-packages/connection '@wordpress/base-styles': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/block-editor': - specifier: 14.9.0 - version: 14.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.11.0 + version: 14.11.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -2860,14 +2884,14 @@ importers: specifier: 16.0.1 version: 16.0.1(@testing-library/dom@10.4.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/babel-plugin-import-jsx-pragma': - specifier: 5.14.0 - version: 5.14.0(@babel/core@7.26.0) + specifier: 5.16.0 + version: 5.16.0(@babel/core@7.26.0) '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/dependency-extraction-webpack-plugin': - specifier: 6.14.0 - version: 6.14.0(webpack@5.94.0) + specifier: 6.16.0 + version: 6.16.0(webpack@5.94.0) autoprefixer: specifier: 10.4.20 version: 10.4.20(postcss@8.4.47) @@ -2936,53 +2960,53 @@ importers: specifier: workspace:* version: link:../../js-packages/shared-extension-utils '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 '@wordpress/blob': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 '@wordpress/block-editor': - specifier: 14.9.0 - version: 14.9.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.11.0 + version: 14.11.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/blocks': - specifier: 14.3.0 - version: 14.3.0(react@18.3.1) + specifier: 14.5.0 + version: 14.5.0(react@18.3.1) '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/compose': - specifier: 7.14.0 - version: 7.14.0(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(react@18.3.1) '@wordpress/core-data': - specifier: 7.14.0 - version: 7.14.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/date': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/dom-ready': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 '@wordpress/editor': - specifier: 14.14.0 - version: 14.14.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.16.0 + version: 14.16.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/html-entities': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/url': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 clsx: specifier: 2.1.1 version: 2.1.1 @@ -3051,8 +3075,8 @@ importers: specifier: 18.3.5 version: 18.3.5(@types/react@18.3.18) '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 autoprefixer: specifier: 10.4.20 version: 10.4.20(postcss@8.4.47) @@ -3117,23 +3141,23 @@ importers: specifier: workspace:* version: link:../../js-packages/components '@wordpress/base-styles': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/block-editor': - specifier: 14.9.0 - version: 14.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.11.0 + version: 14.11.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) chart.js: specifier: 3.7.1 version: 3.7.1 @@ -3214,11 +3238,11 @@ importers: specifier: 16.0.1 version: 16.0.1(@testing-library/dom@10.4.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/babel-plugin-import-jsx-pragma': - specifier: 5.14.0 - version: 5.14.0(@babel/core@7.26.0) + specifier: 5.16.0 + version: 5.16.0(@babel/core@7.26.0) '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 babel-jest: specifier: 29.4.3 version: 29.4.3(@babel/core@7.26.0) @@ -3258,23 +3282,23 @@ importers: specifier: workspace:* version: link:../../js-packages/shared-extension-utils '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/edit-post': - specifier: 8.14.0 - version: 8.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 8.16.0 + version: 8.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/plugins': - specifier: 7.14.0 - version: 7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) gridicons: specifier: 3.4.1 version: 3.4.1(react@18.3.1) @@ -3298,8 +3322,8 @@ importers: specifier: 7.26.0 version: 7.26.0 '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 sass: specifier: 1.64.1 version: 1.64.1 @@ -3331,17 +3355,17 @@ importers: specifier: workspace:* version: link:../../js-packages/connection '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/date': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 clsx: specifier: 2.1.1 version: 2.1.1 @@ -3371,11 +3395,11 @@ importers: specifier: 16.0.1 version: 16.0.1(@testing-library/dom@10.4.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) babel-jest: specifier: 29.4.3 version: 29.4.3(@babel/core@7.26.0) @@ -3440,11 +3464,11 @@ importers: specifier: 5.3.3 version: 5.3.3 '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 clsx: specifier: 2.1.1 version: 2.1.1 @@ -3504,11 +3528,11 @@ importers: specifier: 3.5.32 version: 3.5.32 '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 concurrently: specifier: 7.6.0 version: 7.6.0 @@ -3585,17 +3609,17 @@ importers: specifier: workspace:* version: link:../../js-packages/connection '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/date': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 react: specifier: 18.3.1 version: 18.3.1 @@ -3622,8 +3646,8 @@ importers: specifier: 16.0.1 version: 16.0.1(@testing-library/dom@10.4.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 babel-jest: specifier: 29.4.3 version: 29.4.3(@babel/core@7.26.0) @@ -3679,26 +3703,26 @@ importers: specifier: 4.35.3 version: 4.35.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 '@wordpress/base-styles': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -3801,8 +3825,8 @@ importers: specifier: 12.1.0 version: 12.1.0(rollup@3.29.5)(tslib@2.5.0)(typescript@5.0.4) '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 postcss: specifier: 8.4.47 version: 8.4.47 @@ -3897,59 +3921,59 @@ importers: specifier: 2.0.1 version: 2.0.1 '@wordpress/base-styles': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/block-editor': - specifier: 14.9.0 - version: 14.9.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.11.0 + version: 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/blocks': - specifier: 14.3.0 - version: 14.3.0(react@18.3.1) + specifier: 14.5.0 + version: 14.5.0(react@18.3.1) '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/compose': - specifier: 7.14.0 - version: 7.14.0(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(react@18.3.1) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/date': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/edit-post': - specifier: 8.14.0 - version: 8.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 8.16.0 + version: 8.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/hooks': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/primitives': - specifier: 4.14.0 - version: 4.14.0(react@18.3.1) + specifier: 4.16.0 + version: 4.16.0(react@18.3.1) '@wordpress/rich-text': - specifier: 7.14.0 - version: 7.14.0(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(react@18.3.1) '@wordpress/url': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 '@wordpress/viewport': - specifier: 6.14.0 - version: 6.14.0(react@18.3.1) + specifier: 6.16.0 + version: 6.16.0(react@18.3.1) '@wordpress/widgets': - specifier: 4.14.0 - version: 4.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 4.16.0 + version: 4.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/wordcount': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 bounding-client-rect: specifier: 1.0.5 version: 1.0.5 @@ -4115,41 +4139,41 @@ importers: specifier: 11.5.16 version: 11.5.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 '@wordpress/babel-plugin-import-jsx-pragma': - specifier: 5.14.0 - version: 5.14.0(@babel/core@7.26.0) + specifier: 5.16.0 + version: 5.16.0(@babel/core@7.26.0) '@wordpress/blob': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 '@wordpress/block-serialization-default-parser': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/core-data': - specifier: 7.14.0 - version: 7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.16.0 + version: 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/dom-ready': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 '@wordpress/editor': - specifier: 14.14.0 - version: 14.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 14.16.0 + version: 14.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) '@wordpress/escape-html': - specifier: 3.14.0 - version: 3.14.0 + specifier: 3.16.0 + version: 3.16.0 '@wordpress/keycodes': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 '@wordpress/notices': - specifier: 5.14.0 - version: 5.14.0(react@18.3.1) + specifier: 5.16.0 + version: 5.16.0(react@18.3.1) '@wordpress/token-list': - specifier: 3.14.0 - version: 3.14.0 + specifier: 3.16.0 + version: 3.16.0 autoprefixer: specifier: 10.4.20 version: 10.4.20(postcss@8.4.47) @@ -4234,29 +4258,29 @@ importers: specifier: 5.20.5 version: 5.20.5(@tanstack/react-query@5.20.5(react@18.3.1))(react@18.3.1) '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/date': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/url': - specifier: 4.14.0 - version: 4.14.0 + specifier: 4.16.0 + version: 4.16.0 camelize: specifier: 1.0.1 version: 1.0.1 @@ -4295,8 +4319,8 @@ importers: specifier: 18.3.18 version: 18.3.18 '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 concurrently: specifier: 7.6.0 version: 7.6.0 @@ -4354,26 +4378,26 @@ importers: specifier: workspace:* version: link:../../js-packages/shared-extension-utils '@wordpress/api-fetch': - specifier: 7.14.0 - version: 7.14.0 + specifier: 7.16.0 + version: 7.16.0 '@wordpress/components': - specifier: 29.0.0 - version: 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 29.2.0 + version: 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/date': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/icons': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) clsx: specifier: 2.1.1 version: 2.1.1 @@ -4418,8 +4442,8 @@ importers: specifier: 18.3.5 version: 18.3.5(@types/react@18.3.18) '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 autoprefixer: specifier: 10.4.20 version: 10.4.20(postcss@8.4.47) @@ -4484,17 +4508,17 @@ importers: specifier: workspace:* version: link:../../js-packages/connection '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/date': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 react: specifier: 18.3.1 version: 18.3.1 @@ -4521,8 +4545,8 @@ importers: specifier: 16.0.1 version: 16.0.1(@testing-library/dom@10.4.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 babel-jest: specifier: 29.4.3 version: 29.4.3(@babel/core@7.26.0) @@ -4604,17 +4628,17 @@ importers: specifier: workspace:* version: link:../../js-packages/connection '@wordpress/data': - specifier: 10.14.0 - version: 10.14.0(react@18.3.1) + specifier: 10.16.0 + version: 10.16.0(react@18.3.1) '@wordpress/date': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 '@wordpress/element': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 '@wordpress/i18n': - specifier: 5.14.0 - version: 5.14.0 + specifier: 5.16.0 + version: 5.16.0 react: specifier: 18.3.1 version: 18.3.1 @@ -4635,8 +4659,8 @@ importers: specifier: 7.26.0 version: 7.26.0 '@wordpress/browserslist-config': - specifier: 6.14.0 - version: 6.14.0 + specifier: 6.16.0 + version: 6.16.0 concurrently: specifier: 7.6.0 version: 7.6.0 @@ -4783,8 +4807,8 @@ importers: specifier: 4.17.12 version: 4.17.12 '@wordpress/e2e-test-utils-playwright': - specifier: 1.14.0 - version: 1.14.0(@playwright/test@1.48.2) + specifier: 1.16.0 + version: 1.16.0(@playwright/test@1.48.2) allure-playwright: specifier: 2.9.2 version: 2.9.2 @@ -4855,11 +4879,11 @@ importers: specifier: 6.5.0 version: 6.5.0 '@wordpress/eslint-plugin': - specifier: 22.0.0 - version: 22.0.0(@babel/core@7.26.0)(eslint-config-prettier@9.1.0(eslint@9.16.0))(eslint-plugin-import@2.31.0)(eslint-plugin-jest@28.9.0(eslint@9.16.0)(jest@29.7.0)(typescript@5.0.4))(eslint-plugin-jsdoc@50.6.0(eslint@9.16.0))(eslint-plugin-jsx-a11y@6.10.2(eslint@9.16.0))(eslint-plugin-playwright@2.1.0(eslint@9.16.0))(eslint-plugin-prettier@5.2.1(eslint-config-prettier@9.1.0(eslint@9.16.0))(eslint@9.16.0)(wp-prettier@3.0.3))(eslint-plugin-react-hooks@5.1.0(eslint@9.16.0))(eslint-plugin-react@7.37.2(eslint@9.16.0))(eslint@9.16.0)(typescript@5.0.4)(wp-prettier@3.0.3) + specifier: 22.2.0 + version: 22.2.0(@babel/core@7.26.0)(eslint-config-prettier@9.1.0(eslint@9.16.0))(eslint-plugin-import@2.31.0)(eslint-plugin-jest@28.9.0(eslint@9.16.0)(jest@29.7.0)(typescript@5.0.4))(eslint-plugin-jsdoc@50.6.0(eslint@9.16.0))(eslint-plugin-jsx-a11y@6.10.2(eslint@9.16.0))(eslint-plugin-playwright@2.1.0(eslint@9.16.0))(eslint-plugin-prettier@5.2.1(eslint-config-prettier@9.1.0(eslint@9.16.0))(eslint@9.16.0)(wp-prettier@3.0.3))(eslint-plugin-react-hooks@5.1.0(eslint@9.16.0))(eslint-plugin-react@7.37.2(eslint@9.16.0))(eslint@9.16.0)(typescript@5.0.4)(wp-prettier@3.0.3) '@wordpress/jest-console': - specifier: 8.14.0 - version: 8.14.0(jest@29.7.0) + specifier: 8.16.0 + version: 8.16.0(jest@29.7.0) babel-jest: specifier: 29.4.3 version: 29.4.3(@babel/core@7.26.0) @@ -5097,8 +5121,8 @@ packages: '@babel/core': ^7.11.0 eslint: ^7.5.0 || ^8.0.0 || ^9.0.0 - '@babel/generator@7.26.3': - resolution: {integrity: sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==} + '@babel/generator@7.26.5': + resolution: {integrity: sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==} engines: {node: '>=6.9.0'} '@babel/helper-annotate-as-pure@7.25.9': @@ -5144,8 +5168,8 @@ packages: resolution: {integrity: sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==} engines: {node: '>=6.9.0'} - '@babel/helper-plugin-utils@7.25.9': - resolution: {integrity: sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw==} + '@babel/helper-plugin-utils@7.26.5': + resolution: {integrity: sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==} engines: {node: '>=6.9.0'} '@babel/helper-remap-async-to-generator@7.25.9': @@ -5154,8 +5178,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-replace-supers@7.25.9': - resolution: {integrity: sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ==} + '@babel/helper-replace-supers@7.26.5': + resolution: {integrity: sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -5184,8 +5208,8 @@ packages: resolution: {integrity: sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw==} engines: {node: '>=6.9.0'} - '@babel/parser@7.26.3': - resolution: {integrity: sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==} + '@babel/parser@7.26.5': + resolution: {integrity: sha512-SRJ4jYmXRqV1/Xc+TIVG84WjHBXKlxO9sHQnA2Pf12QQEAp1LOh6kDzNHXcUnbH1QI0FDoPPVOt+vyUDucxpaw==} engines: {node: '>=6.0.0'} hasBin: true @@ -5346,8 +5370,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-block-scoped-functions@7.25.9': - resolution: {integrity: sha512-toHc9fzab0ZfenFpsyYinOX0J/5dgJVA2fm64xPewu7CoYHWEivIWKxkK2rMi4r3yQqLnVmheMXRdG+k239CgA==} + '@babel/plugin-transform-block-scoped-functions@7.26.5': + resolution: {integrity: sha512-chuTSY+hq09+/f5lMj8ZSYgCFpppV2CbYrhNFJ1BFoXpiWPnnAb7R0MqrafCpN8E1+YRrtM1MXZHJdIx8B6rMQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -5496,8 +5520,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-nullish-coalescing-operator@7.25.9': - resolution: {integrity: sha512-ENfftpLZw5EItALAD4WsY/KUWvhUlZndm5GC7G3evUsVeSJB6p0pBeLQUnRnBCBx7zV0RKQjR9kCuwrsIrjWog==} + '@babel/plugin-transform-nullish-coalescing-operator@7.26.5': + resolution: {integrity: sha512-OHqczNm4NTQlW1ghrVY43FPoiRzbmzNVbcgVnMKZN/RQYezHUSdjACjaX50CD3B7UIAjv39+MlsrVDb3v741FA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -5640,8 +5664,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-typescript@7.26.3': - resolution: {integrity: sha512-6+5hpdr6mETwSKjmJUdYw0EIkATiQhnELWlE3kJFBwSg/BGIVwVaVbX+gOXBCdc7Ln1RXZxyWGecIXhUfnl7oA==} + '@babel/plugin-transform-typescript@7.26.5': + resolution: {integrity: sha512-GJhPO0y8SD5EYVCy2Zr+9dSZcEgaSmq5BLR0Oc25TOEhC+ba49vUAGZFjy8v79z9E1mdldq4x9d1xgh4L1d5dQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -5705,12 +5729,12 @@ packages: resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.26.4': - resolution: {integrity: sha512-fH+b7Y4p3yqvApJALCPJcwb0/XaOSgtK4pzV6WVjPR5GLFQBRI7pfoX2V2iM48NXvX07NUxxm1Vw98YjqTcU5w==} + '@babel/traverse@7.26.5': + resolution: {integrity: sha512-rkOSPOw+AXbgtwUga3U4u8RpoK9FEFWBNAlTpcnkLFjL5CT+oyHNuUUC/xx6XefEJ16r38r8Bc/lfp6rYuHeJQ==} engines: {node: '>=6.9.0'} - '@babel/types@7.26.3': - resolution: {integrity: sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==} + '@babel/types@7.26.5': + resolution: {integrity: sha512-L6mZmwFDK6Cjh1nRCLXpa6no13ZIioJDz7mdkzHv399pThrTa/k0nUlNaenOeh2kWu/iaOQYElEpKPUswUa9Vg==} engines: {node: '>=6.9.0'} '@bcoe/v8-coverage@0.2.3': @@ -6108,6 +6132,10 @@ packages: resolution: {integrity: sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/core@0.10.0': + resolution: {integrity: sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/core@0.9.1': resolution: {integrity: sha512-GuUdqkyyzQI5RMIWkHhvTWLCyLo1jNK3vzkSyaExH5kHPDHcuL2VOpHjmMY+y3+NC69qAKToBqldTBgYeLSr9Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -6124,19 +6152,19 @@ packages: resolution: {integrity: sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/plugin-kit@0.2.4': - resolution: {integrity: sha512-zSkKow6H5Kdm0ZUQUB2kV5JIXqoG0+uH5YADhaEHswm664N9Db8dXSi0nMJpacpMf+MyyglF1vnZohpEg5yUtg==} + '@eslint/plugin-kit@0.2.5': + resolution: {integrity: sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@fastify/busboy@2.1.1': resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==} engines: {node: '>=14'} - '@floating-ui/core@1.6.8': - resolution: {integrity: sha512-7XJ9cPU+yI2QeLS+FCSlqNFZJq8arvswefkZrYI1yQBbftw6FyrZOxYSh+9S7z7TpeWlRt9zJ5IhM1WIL334jA==} + '@floating-ui/core@1.6.9': + resolution: {integrity: sha512-uMXCuQ3BItDUbAMhIXw7UPXRfAlOAvZzdK9BWpE60MCn+Svt3aLn9jsPTi/WNGlRUu2uI0v5S7JiIUsbsvh3fw==} - '@floating-ui/dom@1.6.12': - resolution: {integrity: sha512-NP83c0HjokcGVEMeoStg317VD9W7eDlGK7457dMBANbKA6GJZdc7rjujdgqzTaz93jkGgc5P/jeWbaCHnMNc+w==} + '@floating-ui/dom@1.6.13': + resolution: {integrity: sha512-umqzocjDgNRGTuO7Q8CU32dkHkECqI8ZdMZ5Swb6QAM0t5rnlrN3lGo1hdpscRd3WS8T6DKYK4ephgIH9iRh3w==} '@floating-ui/react-dom@2.1.2': resolution: {integrity: sha512-06okr5cgPzMNBy+Ycse2A6udMi4bqwW/zgBF/rwjcNqWkyr82Mcg8b0vjX8OJpZFy/FKjJmw6wV7t44kK6kW7A==} @@ -6144,8 +6172,8 @@ packages: react: '>=16.8.0' react-dom: '>=16.8.0' - '@floating-ui/utils@0.2.8': - resolution: {integrity: sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==} + '@floating-ui/utils@0.2.9': + resolution: {integrity: sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==} '@formatjs/ecma402-abstract@2.3.2': resolution: {integrity: sha512-6sE5nyvDloULiyOMbOTJEEgWL32w+VHkZQs8S02Lnn8Y/O5aQhjOEXwWzvR7SsBE/exxlSpY2EsWZgqHbtLatg==} @@ -6274,8 +6302,8 @@ packages: resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@jridgewell/gen-mapping@0.3.5': - resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} + '@jridgewell/gen-mapping@0.3.8': + resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} engines: {node: '>=6.0.0'} '@jridgewell/resolve-uri@3.1.2': @@ -6381,8 +6409,8 @@ packages: '@octokit/openapi-types@20.0.0': resolution: {integrity: sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA==} - '@octokit/openapi-types@22.2.0': - resolution: {integrity: sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==} + '@octokit/openapi-types@23.0.1': + resolution: {integrity: sha512-izFjMJ1sir0jn0ldEKhZ7xegCTj/ObmEDlEfpFrx4k/JyZSMRHbO3/rBwgE7f3m2DHt+RrNGIVw4wSmwnm3t/g==} '@octokit/plugin-paginate-rest@11.3.1': resolution: {integrity: sha512-ryqobs26cLtM1kQxqeZui4v8FeznirUsksiA+RYemMPJ7Micju0WSkv50dBksTuZks9O5cg4wp+t8fZ/cLY56g==} @@ -6429,8 +6457,8 @@ packages: '@octokit/types@12.6.0': resolution: {integrity: sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw==} - '@octokit/types@13.6.2': - resolution: {integrity: sha512-WpbZfZUcZU77DrSW4wbsSgTPfKcp286q3ItaIgvSbBpZJlu6mnYXAkjZz6LVZPXkEvLIM8McanyZejKTYUHipA==} + '@octokit/types@13.7.0': + resolution: {integrity: sha512-BXfRP+3P3IN6fd4uF3SniaHKOO4UXWBfkdR3vA8mIvaoO/wLjGN5qivUtW0QRitBHHMcfC41SLhNVYIZZE+wkA==} '@paulirish/trace_engine@0.0.39': resolution: {integrity: sha512-2Y/ejHX5DDi5bjfWY/0c/BLVSfQ61Jw1Hy60Hnh0hfEO632D3FVctkzT4Q/lVAdvIPR0bUaok9JDTr1pu/OziA==} @@ -6464,21 +6492,21 @@ packages: engines: {node: '>=18'} hasBin: true - '@puppeteer/browsers@2.6.0': - resolution: {integrity: sha512-jESwj3APl78YUWHf28s2EjL0OIxcvl1uLU6Ge68KQ9ZXNsekUcbdr9dCi6vEO8naXS18lWXCV56shVkPStzXSQ==} + '@puppeteer/browsers@2.6.1': + resolution: {integrity: sha512-aBSREisdsGH890S2rQqK82qmQYU3uFpSH8wcZWHgHzl3LfzsxAKbLNiAG9mO8v1Y0UICBeClICxPJvyr0rcuxg==} engines: {node: '>=18'} hasBin: true - '@puppeteer/browsers@2.6.1': - resolution: {integrity: sha512-aBSREisdsGH890S2rQqK82qmQYU3uFpSH8wcZWHgHzl3LfzsxAKbLNiAG9mO8v1Y0UICBeClICxPJvyr0rcuxg==} + '@puppeteer/browsers@2.7.0': + resolution: {integrity: sha512-bO61XnTuopsz9kvtfqhVbH6LTM1koxK0IlBR+yuVrM2LB7mk8+5o1w18l5zqd5cs8xlf+ntgambqRqGifMDjog==} engines: {node: '>=18'} hasBin: true - '@radix-ui/primitive@1.1.0': - resolution: {integrity: sha512-4Z8dn6Upk0qk4P74xBhZ6Hd/w0mPEzOOLxy4xiPXOXqjF7jZS0VAKk7/x/H6FyY2zCkYJqePf1G5KmkmNJ4RBA==} + '@radix-ui/primitive@1.1.1': + resolution: {integrity: sha512-SJ31y+Q/zAyShtXJc8x83i9TYdbAfHZ++tUZnvjJJqFjzsdUnKsxPL6IEtBlxKkU7yzer//GQtZSV4GbldL3YA==} - '@radix-ui/react-compose-refs@1.1.0': - resolution: {integrity: sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==} + '@radix-ui/react-compose-refs@1.1.1': + resolution: {integrity: sha512-Y9VzoRDSJtgFMUCoiZBDVo084VQ5hfpXxVE+NgkdNsjiDBByiImMZKKhxMwCbdHvhlENG6a833CbFkOQvTricw==} peerDependencies: '@types/react': '*' react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc @@ -6495,8 +6523,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-dialog@1.1.2': - resolution: {integrity: sha512-Yj4dZtqa2o+kG61fzB0H2qUvmwBA2oyQroGLyNtBj1beo1khoQ3q1a2AO8rrQYjd8256CO9+N8L9tvsS+bnIyA==} + '@radix-ui/react-dialog@1.1.4': + resolution: {integrity: sha512-Ur7EV1IwQGCyaAuyDRiOLA5JIUZxELJljF+MbM/2NC0BYwfuRrbpS30BiQBJrVruscgUkieKkqXYDOoByaxIoA==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6508,8 +6536,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-dismissable-layer@1.1.1': - resolution: {integrity: sha512-QSxg29lfr/xcev6kSz7MAlmDnzbP1eI/Dwn3Tp1ip0KT5CUELsxkekFEMVBEoykI3oV39hKT4TKZzBNMbcTZYQ==} + '@radix-ui/react-dismissable-layer@1.1.3': + resolution: {integrity: sha512-onrWn/72lQoEucDmJnr8uczSNTujT0vJnA/X5+3AkChVPowr8n1yvIKIabhWyMQeMvvmdpsvcyDqx3X1LEXCPg==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6530,8 +6558,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-focus-scope@1.1.0': - resolution: {integrity: sha512-200UD8zylvEyL8Bx+z76RJnASR2gRMuxlgFCPAe/Q/679a/r0eK3MBVYMb7vZODZcffZBdob1EGnky78xmVvcA==} + '@radix-ui/react-focus-scope@1.1.1': + resolution: {integrity: sha512-01omzJAYRxXdG2/he/+xy+c8a8gCydoQ1yOxnWNcRhrrBW5W+RQJ22EK1SaO8tb3WoUsuEw7mJjBozPzihDFjA==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6552,8 +6580,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-portal@1.1.2': - resolution: {integrity: sha512-WeDYLGPxJb/5EGBoedyJbT0MpoULmwnIPMJMSldkuiMsBAv7N1cRdsTWZWht9vpPOiN3qyiGAtbK2is47/uMFg==} + '@radix-ui/react-portal@1.1.3': + resolution: {integrity: sha512-NciRqhXnGojhT93RPyDaMPfLH3ZSl4jjIFbZQ1b/vxvZEdHsBZ49wP9w8L3HzUQwep01LcWtkUvm0OVB5JAHTw==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6565,8 +6593,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-presence@1.1.1': - resolution: {integrity: sha512-IeFXVi4YS1K0wVZzXNrbaaUvIJ3qdY+/Ih4eHFhWA9SwGR9UDX7Ck8abvL57C4cv3wwMvUE0OG69Qc3NCcTe/A==} + '@radix-ui/react-presence@1.1.2': + resolution: {integrity: sha512-18TFr80t5EVgL9x1SwF/YGtfG+l0BS0PRAlCWBDoBEiDQjeKgnNZRVJp/oVBl24sr3Gbfwc/Qpj4OcWTQMsAEg==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6578,8 +6606,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-primitive@2.0.0': - resolution: {integrity: sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==} + '@radix-ui/react-primitive@2.0.1': + resolution: {integrity: sha512-sHCWTtxwNn3L3fH8qAfnF3WbUZycW93SM1j3NFDzXBiz8D6F5UTTy8G1+WFEaiCdvCVRJWj6N2R4Xq6HdiHmDg==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -6591,8 +6619,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-slot@1.1.0': - resolution: {integrity: sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==} + '@radix-ui/react-slot@1.1.1': + resolution: {integrity: sha512-RApLLOcINYJA+dMVbOju7MYv1Mb2EBp2nH4HdDzXTSyaR5optlm6Otrz1euW3HbdOR8UmmFK06TD+A9frYWv+g==} peerDependencies: '@types/react': '*' react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc @@ -6685,6 +6713,9 @@ packages: resolution: {integrity: sha512-xfSkCAchbdG5PnbrKqFWwia4Bi61nH+wm8wLEqfHDyp7Y3dZzgqS2itV8i4gAq9pC2HsTpwyBC6Ds8VHZ96JlA==} engines: {node: '>=14.0.0'} + '@remote-ui/rpc@1.4.5': + resolution: {integrity: sha512-Cr+06niG/vmE4A9YsmaKngRuuVSWKMY42NMwtZfy+gctRWGu6Wj9BWuMJg5CEp+JTkRBPToqT5rqnrg1G/Wvow==} + '@rollup/plugin-babel@6.0.4': resolution: {integrity: sha512-YF7Y52kFdFT/xVSuVdjkV5ZdX/3YtmX0QulG+x0taQOtJdHYzVU61aSSkAgVJ7NOv6qPkIYiJSgSWWN/DM5sGw==} engines: {node: '>=14.0.0'} @@ -6760,8 +6791,8 @@ packages: resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} engines: {node: '>= 8.0.0'} - '@rollup/pluginutils@5.1.3': - resolution: {integrity: sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==} + '@rollup/pluginutils@5.1.4': + resolution: {integrity: sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 @@ -6800,46 +6831,61 @@ packages: resolution: {integrity: sha512-GFBaDA4yhlEf3wTXOVXnJVG/diuKxeqZuXcuhsAwJb+YcFR0NhgsRn3wIGuYOZZF8GBXzx9PFnb9yIuFgx5Nbw==} engines: {node: '>=14.18'} - '@sentry-internal/tracing@7.120.2': - resolution: {integrity: sha512-eo2F8cP6X+vr54Mp6vu+NoQEDz0M5O24Tz8jPY0T1CpiWdwCmHb7Sln+oLXeQ3/LlWdVQihBfKDBZfBdUfsBTg==} + '@sentry-internal/tracing@7.120.3': + resolution: {integrity: sha512-Ausx+Jw1pAMbIBHStoQ6ZqDZR60PsCByvHdw/jdH9AqPrNE9xlBSf9EwcycvmrzwyKspSLaB52grlje2cRIUMg==} engines: {node: '>=8'} '@sentry/browser@8.33.0': resolution: {integrity: sha512-qu/g20ZskywEU8BWc4Fts1kXFFBtw1vS+XvPq7Ta9zCeRG5dlXhhYDVQ4/v4nAL/cs0o6aLCq73m109CFF0Kig==} engines: {node: '>=14.18'} - '@sentry/core@7.120.2': - resolution: {integrity: sha512-eurLBFQJC7WWWYoEna25Z9I/GJjqAmH339tv52XP8sqXV7B5hRcHDcfrsT/UGHpU316M24p3lWhj0eimtCZ0SQ==} + '@sentry/core@7.120.3': + resolution: {integrity: sha512-vyy11fCGpkGK3qI5DSXOjgIboBZTriw0YDx/0KyX5CjIjDDNgp5AGgpgFkfZyiYiaU2Ww3iFuKo4wHmBusz1uA==} engines: {node: '>=8'} '@sentry/core@8.33.0': resolution: {integrity: sha512-618PQGHQLBVCpAq1s+e/rpIUaLUnj19IPUgn97rUGXLLna8ETIAoyQoG70wz4q9niw4Z4GlS5kZNrael2O3+2w==} engines: {node: '>=14.18'} - '@sentry/integrations@7.120.2': - resolution: {integrity: sha512-bMvL2fD3TGLM5YAUoQ2Qz6bYeVU8f7YRFNSjKNxK4EbvFgAU9j1FD6EKg0V0RNOJYnJjGIZYMmcWTXBbVTJL6w==} + '@sentry/integrations@7.120.3': + resolution: {integrity: sha512-6i/lYp0BubHPDTg91/uxHvNui427df9r17SsIEXa2eKDwQ9gW2qRx5IWgvnxs2GV/GfSbwcx4swUB3RfEWrXrQ==} engines: {node: '>=8'} - '@sentry/node@7.120.2': - resolution: {integrity: sha512-ZnW9gpIGaoU+vYZyVZca9dObfmWYiXEWIMUM/JXaFb8AhP1OXvYweNiU0Pe/gNrz4oGAogU8scJc70ar7Vj0ww==} + '@sentry/node@7.120.3': + resolution: {integrity: sha512-t+QtekZedEfiZjbkRAk1QWJPnJlFBH/ti96tQhEq7wmlk3VszDXraZvLWZA0P2vXyglKzbWRGkT31aD3/kX+5Q==} engines: {node: '>=8'} - '@sentry/types@7.120.2': - resolution: {integrity: sha512-FWVoiblHQJ892GaOqdXx/5/n5XDLF28z81vJ0lCY49PMh8waz8LJ0b9RSmt9tasSDl0OQ7eUlPl1xu1jTrv1NA==} + '@sentry/types@7.120.3': + resolution: {integrity: sha512-C4z+3kGWNFJ303FC+FxAd4KkHvxpNFYAFN8iMIgBwJdpIl25KZ8Q/VdGn0MLLUEHNLvjob0+wvwlcRBBNLXOow==} engines: {node: '>=8'} '@sentry/types@8.33.0': resolution: {integrity: sha512-V/A+72ZdnfGtXeXIpz1kUo3LRdq3WKEYYFUR2RKpCdPh9yeOrHq6u/rmzTWx49+om0yhZN+JhVoxDzt75UoFRg==} engines: {node: '>=14.18'} - '@sentry/utils@7.120.2': - resolution: {integrity: sha512-jgnQlw11mRfQrQRAXbq4zEd+tbYwHel5eqeS/oU6EImXRjmHNtS79nB8MHvJeQu1FMCpFs1Ymrrs5FICwS6VeQ==} + '@sentry/utils@7.120.3': + resolution: {integrity: sha512-UDAOQJtJDxZHQ5Nm1olycBIsz2wdGX8SdzyGVHmD8EOQYAeDZQyIlQYohDe9nazdIOQLZCIc3fU0G9gqVLkaGQ==} engines: {node: '>=8'} '@sentry/utils@8.33.0': resolution: {integrity: sha512-TdwtGdevJij2wq2x/hDUr+x5TXt47ZhWxZ8zluai/lnIDTUB3Xs/L9yHtj1J+H9hr8obkMASE9IanUrWXzrP6Q==} engines: {node: '>=14.18'} + '@shopify/web-worker@6.4.0': + resolution: {integrity: sha512-RvY1mgRyAqawFiYBvsBkek2pVK4GVpV9mmhWFCZXwx01usxXd2HMhKNTFeRYhSp29uoUcfBlKZAwCwQzt826tg==} + engines: {node: '>=18.12.0'} + peerDependencies: + '@babel/core': ^7.0.0 + webpack: ^5.38.0 + webpack-virtual-modules: ^0.4.3 || ^0.5.0 || ^0.6.0 + peerDependenciesMeta: + '@babel/core': + optional: true + webpack: + optional: true + webpack-virtual-modules: + optional: true + '@sideway/address@4.1.5': resolution: {integrity: sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==} @@ -6955,8 +7001,8 @@ packages: peerDependencies: storybook: ^8.4.7 - '@storybook/addon-webpack5-compiler-babel@3.0.3': - resolution: {integrity: sha512-rVQTTw+oxJltbVKaejIWSHwVKOBJs3au21f/pYXhV0aiNgNhxEa3vr79t/j0j8ox8uJtzM8XYOb7FlkvGfHlwQ==} + '@storybook/addon-webpack5-compiler-babel@3.0.5': + resolution: {integrity: sha512-9dlc5PrehEFUHqkgj8x+aKtOY9XH9Zk6WBbtpgY/JCQ7waJ2VvhyDnrgJeXfek+WYlSkJElnta6SlqP+XRG0PQ==} engines: {node: '>=18'} '@storybook/blocks@8.4.7': @@ -7023,8 +7069,8 @@ packages: peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 - '@storybook/csf@0.1.12': - resolution: {integrity: sha512-9/exVhabisyIVL0VxTCxo01Tdm8wefIXKXfltAPTSr8cbLn5JAxGQ6QV3mjdecLGEOucfoVhAKtJfVHxEK1iqw==} + '@storybook/csf@0.1.13': + resolution: {integrity: sha512-7xOOwCLGB3ebM87eemep89MYRFTko+D8qE7EdAAq74lgdqRR5cOUtYWJLjO2dLtP94nqoOdHJo6MdLLKzg412Q==} '@storybook/global@5.0.0': resolution: {integrity: sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ==} @@ -7189,68 +7235,68 @@ packages: resolution: {integrity: sha512-XWzIhLTr5WYns/cNFXpXrmFy+LFf2xp60VnNUBZCpM1CGTx47FCDuUj2DQjxirMf2L6CP2jTRELK8ef01TecFQ==} engines: {node: '>=14'} - '@swc/core-darwin-arm64@1.10.1': - resolution: {integrity: sha512-NyELPp8EsVZtxH/mEqvzSyWpfPJ1lugpTQcSlMduZLj1EASLO4sC8wt8hmL1aizRlsbjCX+r0PyL+l0xQ64/6Q==} + '@swc/core-darwin-arm64@1.10.7': + resolution: {integrity: sha512-SI0OFg987P6hcyT0Dbng3YRISPS9uhLX1dzW4qRrfqQdb0i75lPJ2YWe9CN47HBazrIA5COuTzrD2Dc0TcVsSQ==} engines: {node: '>=10'} cpu: [arm64] os: [darwin] - '@swc/core-darwin-x64@1.10.1': - resolution: {integrity: sha512-L4BNt1fdQ5ZZhAk5qoDfUnXRabDOXKnXBxMDJ+PWLSxOGBbWE6aJTnu4zbGjJvtot0KM46m2LPAPY8ttknqaZA==} + '@swc/core-darwin-x64@1.10.7': + resolution: {integrity: sha512-RFIAmWVicD/l3RzxgHW0R/G1ya/6nyMspE2cAeDcTbjHi0I5qgdhBWd6ieXOaqwEwiCd0Mot1g2VZrLGoBLsjQ==} engines: {node: '>=10'} cpu: [x64] os: [darwin] - '@swc/core-linux-arm-gnueabihf@1.10.1': - resolution: {integrity: sha512-Y1u9OqCHgvVp2tYQAJ7hcU9qO5brDMIrA5R31rwWQIAKDkJKtv3IlTHF0hrbWk1wPR0ZdngkQSJZple7G+Grvw==} + '@swc/core-linux-arm-gnueabihf@1.10.7': + resolution: {integrity: sha512-QP8vz7yELWfop5mM5foN6KkLylVO7ZUgWSF2cA0owwIaziactB2hCPZY5QU690coJouk9KmdFsPWDnaCFUP8tg==} engines: {node: '>=10'} cpu: [arm] os: [linux] - '@swc/core-linux-arm64-gnu@1.10.1': - resolution: {integrity: sha512-tNQHO/UKdtnqjc7o04iRXng1wTUXPgVd8Y6LI4qIbHVoVPwksZydISjMcilKNLKIwOoUQAkxyJ16SlOAeADzhQ==} + '@swc/core-linux-arm64-gnu@1.10.7': + resolution: {integrity: sha512-NgUDBGQcOeLNR+EOpmUvSDIP/F7i/OVOKxst4wOvT5FTxhnkWrW+StJGKj+DcUVSK5eWOYboSXr1y+Hlywwokw==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-arm64-musl@1.10.1': - resolution: {integrity: sha512-x0L2Pd9weQ6n8dI1z1Isq00VHFvpBClwQJvrt3NHzmR+1wCT/gcYl1tp9P5xHh3ldM8Cn4UjWCw+7PaUgg8FcQ==} + '@swc/core-linux-arm64-musl@1.10.7': + resolution: {integrity: sha512-gp5Un3EbeSThBIh6oac5ZArV/CsSmTKj5jNuuUAuEsML3VF9vqPO+25VuxCvsRf/z3py+xOWRaN2HY/rjMeZog==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-x64-gnu@1.10.1': - resolution: {integrity: sha512-yyYEwQcObV3AUsC79rSzN9z6kiWxKAVJ6Ntwq2N9YoZqSPYph+4/Am5fM1xEQYf/kb99csj0FgOelomJSobxQA==} + '@swc/core-linux-x64-gnu@1.10.7': + resolution: {integrity: sha512-k/OxLLMl/edYqbZyUNg6/bqEHTXJT15l9WGqsl/2QaIGwWGvles8YjruQYQ9d4h/thSXLT9gd8bExU2D0N+bUA==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-linux-x64-musl@1.10.1': - resolution: {integrity: sha512-tcaS43Ydd7Fk7sW5ROpaf2Kq1zR+sI5K0RM+0qYLYYurvsJruj3GhBCaiN3gkzd8m/8wkqNqtVklWaQYSDsyqA==} + '@swc/core-linux-x64-musl@1.10.7': + resolution: {integrity: sha512-XeDoURdWt/ybYmXLCEE8aSiTOzEn0o3Dx5l9hgt0IZEmTts7HgHHVeRgzGXbR4yDo0MfRuX5nE1dYpTmCz0uyA==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-win32-arm64-msvc@1.10.1': - resolution: {integrity: sha512-D3Qo1voA7AkbOzQ2UGuKNHfYGKL6eejN8VWOoQYtGHHQi1p5KK/Q7V1ku55oxXBsj79Ny5FRMqiRJpVGad7bjQ==} + '@swc/core-win32-arm64-msvc@1.10.7': + resolution: {integrity: sha512-nYAbi/uLS+CU0wFtBx8TquJw2uIMKBnl04LBmiVoFrsIhqSl+0MklaA9FVMGA35NcxSJfcm92Prl2W2LfSnTqQ==} engines: {node: '>=10'} cpu: [arm64] os: [win32] - '@swc/core-win32-ia32-msvc@1.10.1': - resolution: {integrity: sha512-WalYdFoU3454Og+sDKHM1MrjvxUGwA2oralknXkXL8S0I/8RkWZOB++p3pLaGbTvOO++T+6znFbQdR8KRaa7DA==} + '@swc/core-win32-ia32-msvc@1.10.7': + resolution: {integrity: sha512-+aGAbsDsIxeLxw0IzyQLtvtAcI1ctlXVvVcXZMNXIXtTURM876yNrufRo4ngoXB3jnb1MLjIIjgXfFs/eZTUSw==} engines: {node: '>=10'} cpu: [ia32] os: [win32] - '@swc/core-win32-x64-msvc@1.10.1': - resolution: {integrity: sha512-JWobfQDbTnoqaIwPKQ3DVSywihVXlQMbDuwik/dDWlj33A8oEHcjPOGs4OqcA3RHv24i+lfCQpM3Mn4FAMfacA==} + '@swc/core-win32-x64-msvc@1.10.7': + resolution: {integrity: sha512-TBf4clpDBjF/UUnkKrT0/th76/zwvudk5wwobiTFqDywMApHip5O0VpBgZ+4raY2TM8k5+ujoy7bfHb22zu17Q==} engines: {node: '>=10'} cpu: [x64] os: [win32] - '@swc/core@1.10.1': - resolution: {integrity: sha512-rQ4dS6GAdmtzKiCRt3LFVxl37FaY1cgL9kSUTnhQ2xc3fmHOd7jdJK/V4pSZMG1ruGTd0bsi34O2R0Olg9Zo/w==} + '@swc/core@1.10.7': + resolution: {integrity: sha512-py91kjI1jV5D5W/Q+PurBdGsdU5TFbrzamP7zSCqLdMcHkKi3rQEM5jkQcZr0MXXSJTaayLxS3MWYTBIkzPDrg==} engines: {node: '>=10'} peerDependencies: '@swc/helpers': '*' @@ -7499,8 +7545,8 @@ packages: '@types/lodash-es@4.17.12': resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==} - '@types/lodash@4.17.13': - resolution: {integrity: sha512-lfx+dftrEZcdBPczf9d0Qv0x+j/rfNCMuC6OcfXmO8gkfeNAY88PgKUbvG56whcN23gc27yenwF6oJZXGFpYxg==} + '@types/lodash@4.17.14': + resolution: {integrity: sha512-jsxagdikDiDBeIRaPYtArcT8my4tN1og7MtMRquFT3XNA6axxyHDRUemqDz/taRDdOUn0GnGHRCuff4q48sW9A==} '@types/markdown-it@14.1.2': resolution: {integrity: sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==} @@ -7526,14 +7572,14 @@ packages: '@types/node-fetch@2.6.12': resolution: {integrity: sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==} - '@types/node@18.19.67': - resolution: {integrity: sha512-wI8uHusga+0ZugNp0Ol/3BqQfEcCCNfojtO6Oou9iVNGPTL6QNSdnUdqq85fRgIorLhLMuPIKpsN98QE9Nh+KQ==} + '@types/node@18.19.70': + resolution: {integrity: sha512-RE+K0+KZoEpDUbGGctnGdkrLFwi1eYKTlIHNl2Um98mUkGsm1u2Ff6Ltd0e8DktTtC98uy7rSj+hO8t/QuLoVQ==} - '@types/node@20.17.11': - resolution: {integrity: sha512-Ept5glCK35R8yeyIeYlRIZtX6SLRyqMhOFTgj5SOkMpLTdw3SEHI9fHx60xaUZ+V1aJxQJODE+7/j5ocZydYTg==} + '@types/node@20.17.12': + resolution: {integrity: sha512-vo/wmBgMIiEA23A/knMfn/cf37VnuF52nZh5ZoW0GWt4e4sxNquibrMRJ7UQsA06+MBx9r/H1jsI9grYjQCQlw==} - '@types/node@22.10.3': - resolution: {integrity: sha512-DifAyw4BkrufCILvD3ucnuN8eydUfc/C1GlyrnI+LK6543w5/L3VeVgf05o3B4fqSXP1dKYLOZsKfutpxPzZrw==} + '@types/node@22.10.5': + resolution: {integrity: sha512-F8Q+SeGimwOo86fiovQh8qiXfFEh2/ocYv7tU5pJ3EXMSSxk1Joj5wefpFK2fHTf/N6HKGSxIDBT9f3gCxXPkQ==} '@types/parse-json@4.0.2': resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} @@ -7612,11 +7658,8 @@ packages: '@types/wordpress__block-editor@11.5.16': resolution: {integrity: sha512-E/HU2zRiw09QvS1To0e1Noi61+klIIfQAwGK7zp+EWcuBoHHNsayXLjBmVGW6C/P2aPeHmqm2duVomPHMEFQcg==} - '@types/wordpress__blocks@12.5.16': - resolution: {integrity: sha512-WA6lsGY/DBR918wxWClG0rhg1o0qByYjfRzsXkQkKbbKb5RoCZV8ZTV5NyUHxaJUSI+PGjAX1DThQJESLWJkKQ==} - - '@types/wordpress__shortcode@2.3.6': - resolution: {integrity: sha512-H8BVov7QWyLLoxCaI9QyZVC4zTi1mFkZ+eEKiXBCFlaJ0XV8UVfQk+cAetqD5mWOeWv2d4b8uzzyn0TTQ/ep2g==} + '@types/wordpress__blocks@12.5.17': + resolution: {integrity: sha512-4IyMaHai+g4x3ItG0pVhpct9bpksUDjSgkHSbk7BYGdzYMIJrEPBJcxkIC2og2OTEdJqpSTb6vYiEFdLM/ADcQ==} '@types/yargs-parser@21.0.3': resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==} @@ -7652,8 +7695,8 @@ packages: resolution: {integrity: sha512-/ewp4XjvnxaREtqsZjF4Mfn078RD/9GmiEAtTeLQ7yFdKnqwTOgRMSvFz4et9U5RiJQ15WTGXPLj89zGusvxBg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/scope-manager@8.18.0': - resolution: {integrity: sha512-PNGcHop0jkK2WVYGotk/hxj+UFLhXtGPiGtiaWgVBVP1jhMoMCHlTyJA+hEj4rszoSdLTK3fN4oOatrL0Cp+Xw==} + '@typescript-eslint/scope-manager@8.19.1': + resolution: {integrity: sha512-60L9KIuN/xgmsINzonOcMDSB8p82h95hoBfSBtXuO4jlR1R9L1xSkmVZKgCPVfavDlXihh4ARNjXhh1gGnLC7Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript-eslint/type-utils@8.17.0': @@ -7670,8 +7713,8 @@ packages: resolution: {integrity: sha512-gY2TVzeve3z6crqh2Ic7Cr+CAv6pfb0Egee7J5UAVWCpVvDI/F71wNfolIim4FE6hT15EbpZFVUj9j5i38jYXA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/types@8.18.0': - resolution: {integrity: sha512-FNYxgyTCAnFwTrzpBGq+zrnoTO4x0c1CKYY5MuUTzpScqmY5fmsh2o3+57lqdI3NZucBDCzDgdEbIaNfAjAHQA==} + '@typescript-eslint/types@8.19.1': + resolution: {integrity: sha512-JBVHMLj7B1K1v1051ZaMMgLW4Q/jre5qGK0Ew6UgXz1Rqh+/xPzV1aW581OM00X6iOfyr1be+QyW8LOUf19BbA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript-eslint/typescript-estree@8.17.0': @@ -7683,8 +7726,8 @@ packages: typescript: optional: true - '@typescript-eslint/typescript-estree@8.18.0': - resolution: {integrity: sha512-rqQgFRu6yPkauz+ms3nQpohwejS8bvgbPyIDq13cgEDbkXt4LH4OkDMT0/fN1RUtzG8e8AKJyDBoocuQh8qNeg==} + '@typescript-eslint/typescript-estree@8.19.1': + resolution: {integrity: sha512-jk/TZwSMJlxlNnqhy0Eod1PNEvCkpY6MXOXE/WLlblZ6ibb32i2We4uByoKPv1d0OD2xebDv4hbs3fm11SMw8Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <5.8.0' @@ -7699,8 +7742,8 @@ packages: typescript: optional: true - '@typescript-eslint/utils@8.18.0': - resolution: {integrity: sha512-p6GLdY383i7h5b0Qrfbix3Vc3+J2k6QWw6UMUeY5JGfm3C5LbZ4QIZzJNoNOfgyRe0uuYKjvVOsO/jD4SJO+xg==} + '@typescript-eslint/utils@8.19.1': + resolution: {integrity: sha512-IxG5gLO0Ne+KaUc8iW1A+XuKLd63o4wlbI1Zp692n1xojCl/THvgIKXJXBZixTh5dd5+yTJ/VXH7GJaaw21qXA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -7710,8 +7753,8 @@ packages: resolution: {integrity: sha512-1Hm7THLpO6ww5QU6H/Qp+AusUUl+z/CAm3cNZZ0jQvon9yicgO7Rwd+/WWRpMKLYV6p2UvdbR27c86rzCPpreg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/visitor-keys@8.18.0': - resolution: {integrity: sha512-pCh/qEA8Lb1wVIqNvBke8UaRjJ6wrAWkJO5yyIbs8Yx6TNGYyfNjOo61tLv+WwLvoLPp4BQ8B7AHKijl8NGUfw==} + '@typescript-eslint/visitor-keys@8.19.1': + resolution: {integrity: sha512-fzmjU8CHK853V/avYZAvuVut3ZTfwN5YtMaoi+X9Y9MA9keaWNHC3zEQ9zvyX/7Hj+5JkNyK1l7TOR2hevHB6Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@use-gesture/core@10.3.1': @@ -7758,6 +7801,11 @@ packages: peerDependencies: react: ^16.3.0-0 || ^17.0.0-0 || ^18.0.0-0 + '@visx/gradient@3.12.0': + resolution: {integrity: sha512-QRatjjdUEPbcp4pqRca1JlChpAnmmIAO3r3ZscLK7D1xEIANlIjzjl3uNgrmseYmBAYyPCcJH8Zru07R97ovOg==} + peerDependencies: + react: ^16.0.0-0 || ^17.0.0-0 || ^18.0.0-0 + '@visx/grid@3.12.0': resolution: {integrity: sha512-L4ex2ooSYhwNIxJ3XFIKRhoSvEGjPc2Y3YCrtNB4TV5Ofdj4q0UMOsxfrH23Pr8HSHuQhb6VGMgYoK0LuWqDmQ==} peerDependencies: @@ -7871,11 +7919,25 @@ packages: webpack: 4.x.x || 5.x.x webpack-cli: 4.x.x + '@webpack-cli/configtest@2.1.1': + resolution: {integrity: sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==} + engines: {node: '>=14.15.0'} + peerDependencies: + webpack: 5.x.x + webpack-cli: 5.x.x + '@webpack-cli/info@1.5.0': resolution: {integrity: sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==} peerDependencies: webpack-cli: 4.x.x + '@webpack-cli/info@2.0.2': + resolution: {integrity: sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==} + engines: {node: '>=14.15.0'} + peerDependencies: + webpack: 5.x.x + webpack-cli: 5.x.x + '@webpack-cli/serve@1.7.0': resolution: {integrity: sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==} peerDependencies: @@ -7885,172 +7947,183 @@ packages: webpack-dev-server: optional: true - '@wordpress/a11y@4.13.0': - resolution: {integrity: sha512-ZCNhj8GDi6cOVm7L0vfwG5y7XPZONfRbb1KEsJjfgiLY9BnjmfpI5TAqYXcoXbm+Xkea84dQWw1J03EfkuSyIg==} + '@webpack-cli/serve@2.0.5': + resolution: {integrity: sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==} + engines: {node: '>=14.15.0'} + peerDependencies: + webpack: 5.x.x + webpack-cli: 5.x.x + webpack-dev-server: '*' + peerDependenciesMeta: + webpack-dev-server: + optional: true + + '@wordpress/a11y@4.16.0': + resolution: {integrity: sha512-i3zrNFx+N+dNivQxUeQXWKGT1ccWePXcqPkVTqjdO+lACv+MtJoyE9PXZCmaxHWq00g1RTvIpLtrzV5L4gzZkA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/annotations@3.14.0': - resolution: {integrity: sha512-5pObglHCRRzFWVcUE+2nkWsTly/cNeAcaa8TdL3BbNCZTxNlknSix2VIAN5hTMEZBiPXTCX8ZtkrxTD2q/JYGg==} + '@wordpress/annotations@3.16.0': + resolution: {integrity: sha512-tjipm2A288f8uPzgH/ITwbozzGsYHj6tv8Txb12dHk04xh6F5qtRnOB/kySddgAqRmnTTT8N9WpSpBLgWb8Eyw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/api-fetch@7.14.0': - resolution: {integrity: sha512-BrQbF/CVF+un1KToBXr9UpebPS9gvW6vqVV7dc1Atsh3uiLeesU0GOwJ0Z+ZzAr8vNQx8pjFRWZGp7xdO+hygA==} + '@wordpress/api-fetch@7.16.0': + resolution: {integrity: sha512-JMHUUWQQnuFDYQfWtOBPxbB8YEefew3fnGwwDrdOAN7drkZ7ob7fJ2H1tY6iV5i+wIEl/5em3f0jXD3zcwkBDw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/autop@4.13.0': - resolution: {integrity: sha512-bSLZ+oMQZ/qzpck7e57LQo4BOoYaJxqfDWK7ADDogwXiYlN38OWkvRijz6nygaGvtY7SBcCXm5JBUgxq3PVnMw==} + '@wordpress/autop@4.16.0': + resolution: {integrity: sha512-5/XBRZ7Y731moR/hzZ+/k9tavHMHvshi+IdsJAecgUcqYC45YMLmqOmA4DOzfzCjBkuVvoy+6itMHQ+Q87Gb9g==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/babel-plugin-import-jsx-pragma@5.14.0': - resolution: {integrity: sha512-QqceThgNF+S1CPr6UUubaI4BRsd0HnMjeJdKESeO0SNWhVQJU0pYJR4F0qvgwVV3r5WISpktVCU6DV3qaKqPbg==} + '@wordpress/babel-plugin-import-jsx-pragma@5.16.0': + resolution: {integrity: sha512-3vRdagepfoIduDX25dzUbsCyE8eZsQGkVIRTrE2Kpi7YBzAzZz8nHPX1arDhIfEZn6QYGt5tIW5yNC8bbALsWQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: '@babel/core': ^7.25.7 - '@wordpress/babel-preset-default@8.13.0': - resolution: {integrity: sha512-3VNMexRCY0wLpyADBLT1LAvgqkDFNHHHuNEkWoQQykqL7W2IiJJxTaKgtWjum281L4DA3vOcN35nZ6wJgnm5jQ==} + '@wordpress/babel-preset-default@8.16.0': + resolution: {integrity: sha512-CPAMxQ5eMmsRNJN0edUZvsJDnmALQFGbWyCxsJiJJ/0LFi1lYFC7r5YGcJXVVD+oX9L908NZpxwsQBHb6gkxig==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/base-styles@5.14.0': - resolution: {integrity: sha512-VvWe/eq7g/CmICeHWjRPUkeRLEXo7TF9A7sh636KopCRkdzGtbBcNCDh7y+GusL6hF78Kfc+H6L8QUdYkMUb7A==} + '@wordpress/base-styles@5.16.0': + resolution: {integrity: sha512-CAaRCkoJ83+XeObkY1aiswInVHCm5JBFVCCtkEVvRlbqNipHCMyhA3rg501Ww4AOYxsX9r2rvNbGaAPMGc6oug==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} '@wordpress/base-styles@5.2.0': resolution: {integrity: sha512-yBMVbn4gvNQimVfLAZ+/F7F/Tpl+femF9ojgv90c0A0o6IDEtdC+6vUvtAxvXVoruwmxsq8ncouoorZbYDb3yg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/blob@4.14.0': - resolution: {integrity: sha512-s30pU3F9wx+MjELFCYl01l8RRrQEoBGi/WYxINyixpLhJtQHEueKxZ6pRLT3RTYv1809H6iwFX5BJj4pPJd9LQ==} + '@wordpress/blob@4.16.0': + resolution: {integrity: sha512-vhaEhh0jqSZG+LPrLL6wco4kmw4lYC6OLTOspeOWuAEPMKOs4YyfF8x2iA8p6CZiWjVcahwZlcP7DnZDIwowsQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/block-editor@14.9.0': - resolution: {integrity: sha512-Q+91Aip8aG0aslOhGDYfaU6CzM7OA2F2xNHi+6hBixBa++b2jy5WZamLkyot2/7qbCNSS7TPlCFZLyA6UFCtdg==} + '@wordpress/block-editor@14.11.0': + resolution: {integrity: sha512-Io2m3pvsU6ksZcIb/Juqr60sB6OtW6vJMVAxMedw+KlvRfVVqiLPeEwo7zt4ovD2NCU7FtrOYF15pYz6gLQqkw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/block-library@9.14.0': - resolution: {integrity: sha512-2d7DnmXl+louebxXqCAmqa9ueqtAvXCS/Pk1RdCVLOdQz+d+FpN1TsCmVqJbYxxQzMi/7VMhuNM56shABJXmQg==} + '@wordpress/block-library@9.16.0': + resolution: {integrity: sha512-jIKqn/8/4fJdfQGNMIWfRkRzDS/Yl4SzF8NtAfCyFOCW8iHLh1FtuOK8QT2ugT5sX4ZwO8xyoZ8EyIEU3PT9Yg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/block-serialization-default-parser@5.14.0': - resolution: {integrity: sha512-0nshJbx2tLsTTQrZUenqACAOzuRoCizXsnw9g9S9HMX8HsXl8JAlJhzXWbQ7btwgSB3zPXT7mcSGwszv7ajA4A==} + '@wordpress/block-serialization-default-parser@5.16.0': + resolution: {integrity: sha512-F8n8GMeVAepWl9nuA9Ly/WWaqvZ9Lg0KI/OUd0Bm0Y3Ssz65UNRf6DT+ScN35OCAOklf1bQ1PGaq9JdVmC43mg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/blocks@14.3.0': - resolution: {integrity: sha512-2Y3JZcFq1yplRf0VWHDnxlxIFYn5v327zspkM6QkExbm0eMcDDf7dw482PVlF0a+6S7OD7Om1B8hY0Gpo3q8Kw==} + '@wordpress/blocks@14.5.0': + resolution: {integrity: sha512-RsX8hWsTegbkUaYcqIfYE2k1OEkF3hOV3PZFsm9Zn1ZN0/ESUQGRXxUCQvr/7yZIjMRxVNnakYlln2OMrXt1rQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/browserslist-config@6.14.0': - resolution: {integrity: sha512-a26hxY8R/A7FH/Z8oZsYS31ZC/Xy9QSBTi5w84MKSeYdWlck7t1QdCwUNF1u621wbuP7beiiu9FkYY4hI3Bk9A==} + '@wordpress/browserslist-config@6.16.0': + resolution: {integrity: sha512-ppjgUOjCFwLjH5XCDAfavRkIAj9DKEVGj12YMGL+dzSikbDU9L8VnMT1p08G1bAcBkTRLtBX8KkJJdyUI1JGsQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/commands@1.13.0': - resolution: {integrity: sha512-jacW90vPCZ9WdWCH09v36b3Ctk/w7lTy5N6TXjRf2xxZJ7SUPmuzTxX+SQQ5UYS7jQSG4xiRjlxCVg/X6VlodA==} + '@wordpress/commands@1.16.0': + resolution: {integrity: sha512-LxDPzF32QVcZJ42VrI07tSxvTvxKmzI9YZ5JAam/pR0UsjHAFxsnBT3t45oVItRlco/AVL+eLxwuCC/OuSfgLQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/components@29.0.0': - resolution: {integrity: sha512-Dx8ou9+07RGD6KzOdDDHc8lyE0WVjuARmeD87NtutQWZTpJMc0TXR1eM/7ssgEeSOwXaqvFFuYKTAQajNrrQWQ==} + '@wordpress/components@29.2.0': + resolution: {integrity: sha512-a7vUL4oUGu4Jicqf0cFSdQvGtZVw9h4Gvxr53o8yJYmXY8YRVrbeEsZjA/twaqRa8WxGzzWnWNQ/XwtMEXNG0w==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/compose@7.14.0': - resolution: {integrity: sha512-V8llRKmEWfrHWdZVnZFeyM5VAB40MyjVxm+bCwgBO65Tv8yeVi+ZipQ+Nk5abIeQWp3G0BDYybG1gmVwuCik2g==} + '@wordpress/compose@7.16.0': + resolution: {integrity: sha512-FTpfEUeEyH3LnVRlNZxRwce3sEUPDAVI1P+AaF7ZrbzcV2ita4WamCoEHFDS4OMOnvISnSbVh2Rz3gF9oLvomQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/core-commands@1.13.0': - resolution: {integrity: sha512-F3+nTu1nPpIvkqrf02XtSKdS5OWX4HR2B5ueGx3Ul6Mx6pv46IHSfGeMJYofty9CGGG0PIjDiP2xgCv/7+FXFA==} + '@wordpress/core-commands@1.16.0': + resolution: {integrity: sha512-BrtyZe6axE62NT8VOJEY38UE5CkIyA7etIkjooA52l3xMKS7uebP/5QxinDcwE6c/FQ3tqAwSZ2MIgAWbsADqA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/core-data@7.14.0': - resolution: {integrity: sha512-NTUS7MHK489oDuQfnw2NY8I+bx29JTR1VzrUpSLGjCzkAcXk+NxDP+MHLAuQQ1MGcKuPzP/CmSnM0aq/fRR6og==} + '@wordpress/core-data@7.16.0': + resolution: {integrity: sha512-IDs+JxBiAil3AgmqYS8+eb8J6Kg9nlkao6dXlWkcJAOwrpFw53rC1o31dIRqIm8hzb43F88Bpbfe85Bm98Bhyw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/data@10.14.0': - resolution: {integrity: sha512-oKBLj7alGmlD7/lFwK7hwt+Db393yX6hIBpXT/zPDeUsIl0/DXFlHOs2c/UJTZxnyHow44gy7ksLVHc8I4y8ZQ==} + '@wordpress/data@10.16.0': + resolution: {integrity: sha512-5Gx0Hb1VsnvACQJBJhgaFf0xn6cf1s0Wqv3q2DRnRShuSQTNxkUxA41+eZsPxC1JrnVXg0vPRCu5GpqwPO4O9g==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/dataviews@4.10.0': - resolution: {integrity: sha512-Rsp5wUTTGAJlbWdkdFHGXq06LU6F/Kvki6IT9byexu+984h3F+VNIyVCP1BQPqNAWhsUHD4o0gIZKzH17zrCbw==} + '@wordpress/dataviews@4.12.0': + resolution: {integrity: sha512-hxUJ7OyXL131r1nY0Fm5PiN12+oMclCVooON3hwlh5/x0t/FydcsMp0toGrLmtQQz38VVKl9dIpjjLgUmpSbEw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/date@5.14.0': - resolution: {integrity: sha512-Ato1GFSphtGjUAdT1UKKcLptfarS+bkFapDUMbtGikrBIyvWSgHAgHSvMJ88iFVlGPK5GhfVVQjkHrjwqRdCrg==} + '@wordpress/date@5.16.0': + resolution: {integrity: sha512-Sb2eJ7S7bn7ODfe0WVgNEqLpilgwpKIoJjVxMxT8wtJpx4rEs25+BAyQ6Bpj6lxX9P99ZmPsdrq5YavxP9NKHg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/dependency-extraction-webpack-plugin@6.14.0': - resolution: {integrity: sha512-gLiY07oJT5ejkQwca9kni+iamiWIKF+iadIrzfCTB+34jc8xXVT3ENmydLPcAY5toAejwJ+UmlCxCV8kXFatmA==} + '@wordpress/dependency-extraction-webpack-plugin@6.16.0': + resolution: {integrity: sha512-AU6SFATdbUJsd/hqD6wUaZxbikibJ4L7RGpQ2MPUsXxXZCJU8pfPE3WWIOM1VemG4dJRJO+jk0lG8uH9pwdsfA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: webpack: ^5.0.0 - '@wordpress/deprecated@4.13.0': - resolution: {integrity: sha512-wSDfGwRHzxcfpcUUlIHGQOIKYdGvTHbmVWIRf7dlPCRr5anpZTXsC/4ElDJFoi+w/gQklm//LrxjWP1Gqj8hmA==} + '@wordpress/deprecated@4.16.0': + resolution: {integrity: sha512-apv94cskjvWqkanqNn3vP7lugJODkSkPlLqjKPY5iBXI0RATaKuxcTNxuO9/Gn5QcuM89fjhsGTcZ4X/SZTGNQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/dom-ready@4.14.0': - resolution: {integrity: sha512-VeLZZJwKM+Y1d9KPXJ7IQFWwxrND8Xlu+XHpEesudn2kxYE/F5E1uGwS+8LjuprKW+ZEBzgmzZRraKG+KbGFWg==} + '@wordpress/dom-ready@4.16.0': + resolution: {integrity: sha512-rlp7gZRRPsob8z+//tS8bHHRTlkRiOfbKA1SJmyfakU/p4fcEXskLfdq/0wGPZtoHnia6kLKUyFMWhIBe8SuYQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/dom@4.13.0': - resolution: {integrity: sha512-ucaz3Kh9L3EGpLiXXWqflC0T/1zMOe4DR31ynl+B68YSEWpM0VqTnRUFJRUFEc5wiOa70T8yFa3RLSwWpqJTIw==} + '@wordpress/dom@4.16.0': + resolution: {integrity: sha512-iT9D8BnoSgD9w+viDCKtO7lfMmzku3tC7oLEakH6LNZRas0jQuTC46cfokMAz6HTchxiAnuXoPYHsCPhGzWy8Q==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/e2e-test-utils-playwright@1.14.0': - resolution: {integrity: sha512-G9r3ZysgzAmUbR4bjGAEEP6P2RCIAG8uMU7yyzxOAHegINSbF3shEZKvVNBeKxNwHKAVa9koh/niGN3U4Kr6Rw==} + '@wordpress/e2e-test-utils-playwright@1.16.0': + resolution: {integrity: sha512-xA1sbiQoqfk530JMAFGpThGbCjGeVaVitEdB3WYWnHY8JGmI6l5SeWaen2GlD4zbbCS+HE0Kn0sof1h5B9R26A==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: '@playwright/test': '>=1' - '@wordpress/edit-post@8.14.0': - resolution: {integrity: sha512-hS22+eaT8otVsIeeKH8sM+vJZkgCteG4IJ1KO9wuz41rUmq4Fy4AJUpUEoNQ4R38s+bKiYKK+I8L5jDmLTjC/Q==} + '@wordpress/edit-post@8.16.0': + resolution: {integrity: sha512-4MSmLpTyr5Kgy4oZF4tcpAu5zeF7HCUmg8OM6KUa6hWMaQew4uHMoI9EL/PZq/+u4ZAbeWCgedSNX6IOub0/mQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/editor@14.14.0': - resolution: {integrity: sha512-VHCHc2JBnt3kBhtLwzEt5Fb/Z8U3UuZdKu1N2voGLB+HQ8ns2/qe1jiSHomBrZLyxbHtbJ7ioirUpJaYVYvbpw==} + '@wordpress/editor@14.16.0': + resolution: {integrity: sha512-7uoVHZpU43TZhn+j9X4uR7UeC1u0jDJZF0tOkdhAo+MaPTOOgxsHwuJzG7wDiRpUS3xJ7cyt221kqcpga07neA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/element@6.14.0': - resolution: {integrity: sha512-vZPm2ekv9B7fMcv/slyu/p8lV44EPa6RRHOk04ldNUpsrjC6ph6Q4wpuI5WzLEX7p1u71c8ZOuroEuRvdFxMcA==} + '@wordpress/element@6.16.0': + resolution: {integrity: sha512-1Db9jeu7dxil/fJqAiLN5dA6gwoHWcgMSqZJ4dmZ0kMDMs40rtm6o60GFmAQGlrj+mmUvhOHTTwrBdpyfuv4bA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/escape-html@3.14.0': - resolution: {integrity: sha512-tLzQk7VQse1TF/StFe6vt4zdPCWV9LFRPhseC46tbBxAlm/+v6gmaJP501voA/vPQOJSZrYyA5iXGQhA8cJsRw==} + '@wordpress/escape-html@3.16.0': + resolution: {integrity: sha512-Rb3nUsqK2tzLpKhSRO5IID5O+gvNlyHRkKVmTszTB+0vjK+yh0Mc4UPzdHksPo8K7KnlAFt3SgjcfWYo3LYyUA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/eslint-plugin@22.0.0': - resolution: {integrity: sha512-Hh1sO9UV0IYI7D+F6EQnhvs2HAv4H0iBVZikXZKcPmQudlwgV2OWdNprdSe8IoRmpMqmhQ+gkaj9Gwk6NReGHQ==} + '@wordpress/eslint-plugin@22.2.0': + resolution: {integrity: sha512-JKs2tEpkg6txe1emR+P7gw9OrSXvu89TMHuN1uk0wxdJeEqoF7HcxTdJBEaMHCz5HFhBHeuI5vShtX/WN6jf3g==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: '@babel/core': '>=7' @@ -8078,205 +8151,212 @@ packages: typescript: optional: true - '@wordpress/fields@0.5.0': - resolution: {integrity: sha512-lEVJ8h6X3uAkR4CpsbNyOJwf1wxM3v1ctmcumO16Sjtby9ZOMBT3RCx4huQk+oOUa55+dPJYKvSwyEiMUiICQw==} + '@wordpress/fields@0.8.0': + resolution: {integrity: sha512-8aX5jHVzTPyPORKB5TjUznmBvJZN32R2jwblaG+QJGtKZZPqAnwfTNtnq4SalTD0T2B2lWuk/1RZd5LUsW3dqQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/format-library@5.14.0': - resolution: {integrity: sha512-ds281vAoGkxpgADnuPnbIWgvNlnj47NOD0k+8Uxpvqbfym3KXVWAsKvn51FuCSdU8WGai0LvO3yP/88ms9YNKg==} + '@wordpress/format-library@5.16.0': + resolution: {integrity: sha512-bqUwJjwGXHY0PRNnWN5xfO5QvyTIwK9e5hCxWVlr0pdlsH4NzDNdQ9C7Op2zkfDElQMl9L1LHnnz7tLwQHNcpg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/hooks@4.14.0': - resolution: {integrity: sha512-Z1JWYBHnYNS5HMF7vAxWO8syGZWEEVtXra/6FtI7Do7rSXleTh2T/j06CqETE7QD47oMIhZOHz+jM8ttR4UlJA==} + '@wordpress/hooks@4.16.0': + resolution: {integrity: sha512-W82L1PdIhJPNpEb2F+0NWzrDoUqZo6NnYID7qHCexBiagq4+QS4uydM6anyFvUNrpL51CmkCNu31Xi8HjpSTGg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/html-entities@4.14.0': - resolution: {integrity: sha512-PUpq6Li0TfmldDDyo9lFGrYqtISnloD+xrQ4NHD7vcCMDFBin3w1XXc3gHugsRYt6xHTI0L2rdiiv7PrJIr0UA==} + '@wordpress/html-entities@4.16.0': + resolution: {integrity: sha512-wnCtif4GsQ3gZgINN2GK6+yLH+vIsW3ASvUfdUlxYMcvMagNhJsqaE6dqsnKkezD8q/WNL7zv82BDyGSLKeHNQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/i18n@5.14.0': - resolution: {integrity: sha512-2KHyQ+zoyQggokmoTqfVhl2DOM4E11pF/M1+5Q0kUDAHLIAVDhKCzHNPZreHjJld4Tm7hl2HUOutfPmCVudj7g==} + '@wordpress/i18n@5.16.0': + resolution: {integrity: sha512-O4ZUvjS8AlYzTxvw7fmp3xk51rpKv1h2/dGFc/L+IB97UrCBAiC9HBv6FIHRF1gci4Vdu/QnCDw3qpC+N/2gCw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} hasBin: true - '@wordpress/icons@10.14.0': - resolution: {integrity: sha512-4S1AaBeqvTpsTC23y0+4WPiSyz7j+b7vJ4vQ4nqnPeBF7ZeC8J/UXWQnEuKY38n8TiutXljgagkEqGNC9pF2Mw==} + '@wordpress/icons@10.16.0': + resolution: {integrity: sha512-fHZujKpOkYD3JnPGCYqB1VafUiqsUOnpdVGdBd7En5ELwRg189a0NcI4EmM8OkeItNDml4LU/4nCCkypSy29eA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18 - '@wordpress/interactivity-router@2.13.0': - resolution: {integrity: sha512-8Kjzv4lYTxc0JAgyctxerO8ySKWKiwmPY0pzYls/mpQcHTNv4Gc/LWZD75686n5aQQGGGEp39mqAW6Fnqcr7sg==} + '@wordpress/interactivity-router@2.16.0': + resolution: {integrity: sha512-SILCPLTRCbV9JUX7Y+o+1Wv8CEFUq1i3mKuE1BFpIKmFS00RYc/LdJ958AI2LMV5MXCR9ybFAUtLvRk0H3NBMQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/interactivity@6.13.0': - resolution: {integrity: sha512-FIzfCYbb2gjj5gWCRm5086zlFezZZjjL9zopUBPn6WuuaL5w8zMNBU5YJDnZExK0MURRLLRMqHx+3LwAmm95KQ==} + '@wordpress/interactivity@6.16.0': + resolution: {integrity: sha512-dPzunALqKq3LtCKaJXbVx0/ox239kFA9S0WeXzrtJj/513mSS/U43Y+kC449PYdIf++dGIJbMz7YxIAL30Fc8w==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/interface@8.2.0': - resolution: {integrity: sha512-bhPGnP7SCRO1JUQOGkplC+ow4I7tS8g2VzF7JsjMe2ctWp5UEYhGPPdGF+nooD1cWHwnGXC+QJIAnPjvUFwhRQ==} + '@wordpress/interface@9.1.0': + resolution: {integrity: sha512-LWNDqUad+RpkdX/+gQeZmhQM3bx3vyZTZUPJ2+JyainYZhLfxGWfnEK1K0f68YaUdHKgSfixdv9cP413yw4fAw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/is-shallow-equal@5.13.0': - resolution: {integrity: sha512-Z32eGYExzGq/dN4iSNCddCMQU8p1u6mYzyNXDCovw4JSEN3Fr3HvmGYQGRIlkuTrlE6okSqArAvXVKR+I8S5Qg==} + '@wordpress/is-shallow-equal@5.16.0': + resolution: {integrity: sha512-9JI0bz7bQ9PdXPtXSnZXtbkyh0h7ZtojeG0lFtf9xtFkA56JUuMALa623v1YeuHKYbYmCc03/pqtpDKc/8QfVQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/jest-console@8.14.0': - resolution: {integrity: sha512-IFl9QJfGZegkwQ2gp26UMaQ0RL1yNj5BZsDBh3dGSkE9TTWm9ngrVms8ppHZ6EDA1v92z30VcKdB7rOmWXrk1w==} + '@wordpress/jest-console@8.16.0': + resolution: {integrity: sha512-GFwoPBeOir9lV0ZCrkOapl7us+NqYphjeTRhZajNYr+grUCtvJYY0XzGZd8QuXKD9R5yBK42jgb4/9vc5tL2TA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: jest: '>=29' - '@wordpress/keyboard-shortcuts@5.13.0': - resolution: {integrity: sha512-gljOL2dR36tMUg8giqgnnMpLJsaRFXlSjrR763KJ2F3rlyCVvfg0dy1ue73ll7gE8Vi6ZqWiCC6FJbD1ZUXVZQ==} + '@wordpress/keyboard-shortcuts@5.16.0': + resolution: {integrity: sha512-JI/e7NGWjgbWY7Q546NExuwfwdx7OokHrwKzj2yTd3DluM3zhQax0d4ZZvJiqyHMaMQvKcT0ILJ4KYMgB9EkGg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/keycodes@4.14.0': - resolution: {integrity: sha512-vZpK+NbhC+3/JK8S5I/PuJMNYhfn7X8pupTPuEiKIXZgcnXAy3mORgirBeZJNkNUXRl3vfcsq0qFnIovI96fHA==} + '@wordpress/keycodes@4.16.0': + resolution: {integrity: sha512-T4kaFkw6R1VkcBk+F7B4gmzEhSPRJwpMdkP7roNvENzKGtXs49K4xO0koOZhWUlGpZvhPJ1WWERyoub8S7rX2A==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/media-utils@5.14.0': - resolution: {integrity: sha512-cZm45MAl/vjssRCMzxNuAKxrZ4NS7Qc3K/iqO/AbNdG/dKKnsyzGBrRCAK0+h8Lvw5Fw84w//ztVdtcllxbwUg==} + '@wordpress/media-utils@5.16.0': + resolution: {integrity: sha512-CrpGApMT2h14xJ4uMYRmx6jPsUHP0be7ru1ndbXw7FrE/r4he/nKsM2e+n1ApeYMJcw3b3VimbhLZTxdWPtMjg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/notices@5.14.0': - resolution: {integrity: sha512-Lo6KQJcIFZkHZv8qep5w8bETqmWAjnq6GFk8DZvKfaQQgxkjfAVNTjegQ0huR70BBlk/ICaL5o/4DCZ23gtnxw==} + '@wordpress/notices@5.16.0': + resolution: {integrity: sha512-RoXfFLuvgmANRmuHLmbfPyi2PEw3dYMw4GwS8t6DVvC16i6zd75S8JFCoxjA1tRJNeLw8R/NQ57Pm35w5zCzMg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/patterns@2.13.0': - resolution: {integrity: sha512-IbEDL7F2eJpxh2zhYzg0+milgkaGTbSyoe3H6vAfiAV5+GGeGCGyaeGXynAgfWN4NEU6fpoIXig+ZhiPK90RUQ==} + '@wordpress/patterns@2.16.0': + resolution: {integrity: sha512-1OK3qJUUYR5HCgGWwSBzROEyUsgOnwq2ojKwPhVWCgsObrsuQLj8dedksuKDBjunW/9nUodWiKN6uR+acJBuUw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/plugins@7.14.0': - resolution: {integrity: sha512-c8ncDg1pKcCv1Ba9U+kBmlC1t9iqg+I0LJXL6Sj0ZY4fB0DgFhg3bZYK8rwjI7tUQU+VCK28bu4gnd2B/R0nUA==} + '@wordpress/plugins@7.16.0': + resolution: {integrity: sha512-uyqJcuB2up8/tJ4qabjYO1ZHD5hEuhNRp2z6nDROnKWKpegFnO2lXbxzhEZkBLDRox2ds+3sOBkEHquwxVFsBA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/postcss-plugins-preset@5.14.0': - resolution: {integrity: sha512-K9Ob4ILtvVyWKbXDZuFvAgyZbCoFVYxrv1HaEx+ir6Ct6Tdltuv9e9WzH0mOfhFi5IDR72gmOFllhjzo7FCmaw==} + '@wordpress/postcss-plugins-preset@5.16.0': + resolution: {integrity: sha512-+rVpUQo+HXGFBvCLox45OxwT/U4hsDD8UpcDh8MAwFwrYf33GUGgdAhO5i4V3RyJiMmiZpsemkHFjlOg10kUjQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: postcss: ^8.0.0 - '@wordpress/preferences@4.13.0': - resolution: {integrity: sha512-U4pDCutpcKKm8YN+n6RnMA0qJKG87kbdsqiyy+kiVhzUvX15pMSKQEAArylzU2b7veEP61QRKY53Ymn5DCR9qg==} + '@wordpress/preferences@4.16.0': + resolution: {integrity: sha512-FLHwwC1z+1jef8oN8QykMqK/D6beEkBwI3EZSMj3gPKxlA5Q5CqUF32blUBMDRVE4h1xx6jQaM/B2DBroMoJew==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/prettier-config@4.13.0': - resolution: {integrity: sha512-TgjsY0dU6fwtQs4Re73OlKZnxilaHbXmwb373qouDY/AzG72VkpQpQ2KcenCoJ7Do1BKdWWehzDo609nQhk/Yg==} + '@wordpress/prettier-config@4.16.0': + resolution: {integrity: sha512-raaEW2x+pPfIYXF7RUJGEH8zeYWd4esIE0bJbKTAJV0yM+RE/DOWsGLGPiVvLEAAPg2AkIZ7oX0UPOYsBrsBqw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: prettier: '>=3' - '@wordpress/primitives@4.14.0': - resolution: {integrity: sha512-IZibRVbvWoIQ+uynH0N5bmfWz83hD8lJj6jJFhSFuALK+4U5mRGg6tl0ZV0YllR6cjheD9UhTmfrAcOx+gQAjA==} + '@wordpress/primitives@4.16.0': + resolution: {integrity: sha512-mf5LPcA500KOo/UPiwNanNlH6Satwf4xBB1DPzw4InE67eACvAlde3oSYsoE6Uce6+7URRIefg9j47yXP2jkxw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/priority-queue@3.13.0': - resolution: {integrity: sha512-B9MzzR5nAKpUTWRGleNYRs4/+qOISxtbCxDRYiNXFImoT+t+4yxWO7CssKghp7tFwO0I2FLSyhje6dEO7nEphQ==} + '@wordpress/priority-queue@3.16.0': + resolution: {integrity: sha512-YmVPE/kHmAIEYiSnnfxQI7JBAvXxlCyVoGlfWxCJ/IH8W7gbZtl1R+iuRvT8L4Cdr+sUybT68Ry+o4o39OqURg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/private-apis@1.14.0': - resolution: {integrity: sha512-ul932/nV1+DV+bg35zKIcWz31tKUufiTl0Ysxcd81uFK+rG1Pf2420eM7V7wlOvJGpwrwbURpK4r4F5WQ0NpKQ==} + '@wordpress/private-apis@1.16.0': + resolution: {integrity: sha512-k/AQ11+vlbpSWhyOU5t8huoGdN+PursA8bUxVfhEnqcKRWTK+LKSmSEpdyL1sv6XJqznWYjgaNSdIxTkadsPpg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/redux-routine@5.13.0': - resolution: {integrity: sha512-yXl6XhFec9jxIZ/ogIJFntpzMX0uKrk2MnQfjfKCNnQJulZP6renTag/ysxsjpFw4+xy4isdHiL8v4PMf8mg1A==} + '@wordpress/redux-routine@5.16.0': + resolution: {integrity: sha512-piLnJnV+tzWOEPJPdp431TcaKRoCpgGJ309W+UxM7fRHrYH/XZcXD8a+0pq56Dh/1QFO1elXXhPzhZQknwtyYw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: redux: '>=4' - '@wordpress/reusable-blocks@5.13.0': - resolution: {integrity: sha512-BduetqgQ6NS71T38bK3md1IxFAzfQrhNnKb7URWGDwTNPV+vDbxcXv6f319Ur7nZGKHS9vxjIrB61pVv2cDRYQ==} + '@wordpress/reusable-blocks@5.16.0': + resolution: {integrity: sha512-bWMeUP2+84mJrIEwzdw6KQ0zZGa/i/rCGNkiTl6IRL2ysxKjKTfOOCGGTzHcD8eYni2AXFpfLA6UBy9glv6eqg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/rich-text@7.14.0': - resolution: {integrity: sha512-Y7LERZVgOza2itTNn848Mv+O7v2SEE/fdCkXqxE/r3cuEA0hirc68ygiCh4ufAe1Itnd8H7VTTUQouuMXFeBKA==} + '@wordpress/rich-text@7.16.0': + resolution: {integrity: sha512-p+9WPzVo5pXLr1Xt04gQ1kdYQYmw05r2Kp42tgIfFNjgCBH1plpSrzjCyV/dyHrZ7APpJFg8sNjlOJmyLQiCFg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/router@1.14.0': - resolution: {integrity: sha512-cloEfwH2dHnR4MYXBMs5hrwFptSvoJToGZoOxKd89qtgwjvEkFc8sr1XsosekSqP8XxrXNZm3xanSyOyKWwJsw==} + '@wordpress/router@1.16.0': + resolution: {integrity: sha512-P4txQueN9aaRcPFTIyVePkGRl5h38cA66X/Q67kqL4OntphTgg4T8lpKlVu6QOD/Q52ARtjiHaIFq9ezRIfTvA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/server-side-render@5.13.0': - resolution: {integrity: sha512-/L6M7UssV0niSfru9cMqKZFuEi9+QtTUN6uz1+zXEj+IvTQVrif0cTC4Oj9vpQpKFgjD2dZo679VMbFlgDIgCQ==} + '@wordpress/server-side-render@5.16.0': + resolution: {integrity: sha512-OB6Omav6X4yciYGNQHHJpw/psKyAO2Z7ab9UGvlaST/YnmBD+9IZYtp9boo3D3zfOjB5aeD+2shRpt9zOBYEbw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/shortcode@4.13.0': - resolution: {integrity: sha512-CDPrKtawaVM9Q9UdE+tzh6PbajS8g6Ft1yvW46ATQEAzYdGNW/Radejx6OYz748SSaRuj3OFrOKziFWGjNoPCg==} + '@wordpress/shortcode@4.16.0': + resolution: {integrity: sha512-T3KLZq5SYGigltEQumCKExKBJqnI2IF2elnJpd5+CFxQQAb9/gsrZ4TBG7ommOlXHZKn5hwD2YIEEM/ZAkGQ4A==} + engines: {node: '>=18.12.0', npm: '>=8.19.2'} + + '@wordpress/style-engine@2.16.0': + resolution: {integrity: sha512-eOaa14iAqXDS8y9ndQxM1f+Ibc9suuA6naEZ+8d74eEvBIZclQgi0GZpA1n8HEuDsRi9o2VhnXzJe6X6lsQduA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/style-engine@2.13.0': - resolution: {integrity: sha512-C0ys5nkZPVbmDS7HOAp3Ty4gftz3Eaf93zRKKdJyQ7GdsnSpLpOhc6YzDG45Micm/Kq99GKYhYDRLlbTkIkVDA==} + '@wordpress/sync@1.16.0': + resolution: {integrity: sha512-VSKow7DEWa0ANjbKGlP8b4zjMNABGArEklsE3F4f5zy39sBcfm0Ox+jnLjGjXe0pLHSB/ANuPYfgt/R5nyyttQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/sync@1.13.0': - resolution: {integrity: sha512-bkWKffktsObwf79VJkSpNFMHZ9SBy8dByXw1xYkbDLoCbGvTtKkLG6H3cb2C2y65pvFmeW6BeNsqtf5if9zD4w==} + '@wordpress/token-list@3.16.0': + resolution: {integrity: sha512-bhBZTKcR8NZXgW9tsHDJm3YTIsCnWb/i50cN59w9FqYICOUFGC4RKyEDzJN6rpgW9dRu6J7xfsC8PjlMukNc6Q==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/token-list@3.14.0': - resolution: {integrity: sha512-vok9J3LA1zqCLV/ldpS1y+bzvVzWfMH+YmoloN1xbqg9Gt05sRA8WQuQ/ZeqJsqxl/VsNTN8+8lHafvWjHkJjw==} + '@wordpress/undo-manager@1.16.0': + resolution: {integrity: sha512-IE3u5Yk8QzUhiLAiGmYostsygxQExs9mVWlZ1BAXniEGCAcVdvDv7IB16dIgQxCYG3/idvmFdNbN8aQGX+nEIg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/undo-manager@1.13.0': - resolution: {integrity: sha512-X2v8TLejhTpXAtUUvfupQ16bre9zLL3XVRkVKnfhBlG+aFLwAy518JNS0tpfNNM2jvC3rxXz5urnDGAT8bgpAw==} + '@wordpress/upload-media@0.1.0': + resolution: {integrity: sha512-K0B9XlHrqOJ6YwwVchP6v6ohduD/mfJKNQxDauZiCqcWim8r8rcTrFp+nBUw3TujDCKas23aVMl09aQpA8zcMw==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} + peerDependencies: + '@babel/runtime': ^7 + react: ^18 - '@wordpress/url@4.14.0': - resolution: {integrity: sha512-9KkU5eMQoA8cwuJHVZtDJAhrjoFN02jDuWRJgilb7rx2g3zlTWLNSLEKXV3FNuVCmgapAlh3EbB9yyXNhzQ+jw==} + '@wordpress/url@4.16.0': + resolution: {integrity: sha512-A9kkw/ye2qL9ZHvm1Eew8bvGVnNMq4fW0t5dakdDuVXyXtSOvZVT268JhP9QaD0FYzOFrmxL5Ks8Z6ufP1yLwg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/viewport@6.14.0': - resolution: {integrity: sha512-QhVBqrS0cwljMzc/k4HHtgHK/RsJQnmE0s8UWlm4jzGtKS/ttxQYrCdzJcLjRAJ4d3GE9Gx2d9bdx3X/T4kHjQ==} + '@wordpress/viewport@6.16.0': + resolution: {integrity: sha512-OAvg2K0WXqAvfSAxcfewHFpKeN+oymR7f/q/PisAeBtktgFANnFcgNRWsHVrmLeiO5IFFKpc+YbHNT69GF1gfA==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 - '@wordpress/warning@3.13.0': - resolution: {integrity: sha512-e35ab+D1aE2zFOLd/f1zmjlHtVjVL31ayOszwRgK+XXv7jnhjW5KUjquAykKQbYnFlVLHC20h6p8IiNuSyzfUQ==} + '@wordpress/warning@3.16.0': + resolution: {integrity: sha512-XsgqRPvB+VSecXnD3VfvJJxhcdTTX4EkgdzvWspmQnw0rNCV636KByZVgolzYhvr3La9EgqO+MqXzwvPHg/xfQ==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} - '@wordpress/widgets@4.14.0': - resolution: {integrity: sha512-qaufWtiPFkYeKnC81a/gdjwmWg1kBhzUQEzNwY7P8AG0ApxgbDfjho2469z7Rl0ijmfPTd50xQ+TTK8yahqNTg==} + '@wordpress/widgets@4.16.0': + resolution: {integrity: sha512-QwGDIj4fmHb6w9lL0VvVkFIUGpEwrg/MQQ7xbwzjTsn9PddqsejuB2CyJSdx80DwOOUN6r/UW7+UYYaW1nOv9A==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@wordpress/wordcount@4.14.0': - resolution: {integrity: sha512-oO+VfbaD2bNE1cFUlYKdkk7tNGPJTIcDo48rxZsvggxGqSEmXUBGrwPWewfH1gOCNf/B3/M024S1ZWeDGtmYwQ==} + '@wordpress/wordcount@4.16.0': + resolution: {integrity: sha512-6SDQRa1rKSZlTlpWh0wfxOUGFfeM2fgLRm7MPFK4/ORX1oOOYAWCN3nMd4zLXzoq2fSqcVem7rcLBm9kHqLhQg==} engines: {node: '>=18.12.0', npm: '>=8.19.2'} '@xmldom/xmldom@0.7.13': @@ -8332,8 +8412,8 @@ packages: resolution: {integrity: sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==} engines: {node: '>= 14'} - agentkeepalive@4.5.0: - resolution: {integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==} + agentkeepalive@4.6.0: + resolution: {integrity: sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ==} engines: {node: '>= 8.0.0'} aggregate-error@3.1.0: @@ -8475,8 +8555,8 @@ packages: resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} engines: {node: '>= 0.4'} - array-buffer-byte-length@1.0.1: - resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==} + array-buffer-byte-length@1.0.2: + resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} engines: {node: '>= 0.4'} array-flatten@1.1.1: @@ -8486,10 +8566,18 @@ packages: resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} engines: {node: '>= 0.4'} + array-union@1.0.2: + resolution: {integrity: sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==} + engines: {node: '>=0.10.0'} + array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} + array-uniq@1.0.3: + resolution: {integrity: sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==} + engines: {node: '>=0.10.0'} + array.prototype.findlast@1.2.5: resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} engines: {node: '>= 0.4'} @@ -8498,20 +8586,20 @@ packages: resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==} engines: {node: '>= 0.4'} - array.prototype.flat@1.3.2: - resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} + array.prototype.flat@1.3.3: + resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} engines: {node: '>= 0.4'} - array.prototype.flatmap@1.3.2: - resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} + array.prototype.flatmap@1.3.3: + resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} engines: {node: '>= 0.4'} array.prototype.tosorted@1.1.4: resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} engines: {node: '>= 0.4'} - arraybuffer.prototype.slice@1.0.3: - resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==} + arraybuffer.prototype.slice@1.0.4: + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} engines: {node: '>= 0.4'} ast-types-flow@0.0.8: @@ -8655,8 +8743,8 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - bare-events@2.5.0: - resolution: {integrity: sha512-/E8dDe9dsbLyh2qrZ64PEPadOQ0F4gbl1sUJOrmph7xOiIxfY8vwab/4bFLh4Y88/Hk/ujKcrQKc+ps0mv873A==} + bare-events@2.5.4: + resolution: {integrity: sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA==} bare-fs@2.3.5: resolution: {integrity: sha512-SlE9eTxifPDJrT6YgemQ1WGFleevzwY+XAP1Xqgl56HtcrisC2CHCZ2tq6dBpcH2TnNxwUEUGhweo+lrQtYuiw==} @@ -8667,8 +8755,8 @@ packages: bare-path@2.1.3: resolution: {integrity: sha512-lh/eITfU8hrj9Ru5quUp0Io1kJWIk1bTjzo7JH1P5dWmQ2EL4hFUlfI8FonAhSlgIfhn63p84CDY/x+PisgcXA==} - bare-stream@2.4.2: - resolution: {integrity: sha512-XZ4ln/KV4KT+PXdIWTKjsLY+quqCaEtqqtgGJVPw9AoM73By03ij64YjepK0aQvHSWDb6AfAZwqKaFu68qkrdA==} + bare-stream@2.6.1: + resolution: {integrity: sha512-eVZbtKM+4uehzrsj49KtCy3Pbg7kO1pJ3SKZ1SFrIH/0pnj9scuGGgUlNDf/7qS8WKtGdiJY5Kyhs/ivYPTB/g==} base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} @@ -8764,6 +8852,10 @@ packages: resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} engines: {node: '>= 0.4'} + call-bound@1.0.3: + resolution: {integrity: sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==} + engines: {node: '>= 0.4'} + callsite@1.0.0: resolution: {integrity: sha512-0vdNRFXn5q+dtOqjfFtmtlI9N2eVZ7LMyEV2iKC5mEEFvSg/69Ml6b/WU2qF8W1nLRa0wiSrDT3Y5jOHZCwKPQ==} @@ -8792,8 +8884,8 @@ packages: caniuse-api@3.0.0: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} - caniuse-lite@1.0.30001690: - resolution: {integrity: sha512-5ExiE3qQN6oF8Clf8ifIDcMRCRE/dMGcETG/XGMD8/XiXm6HXQgQTh1yZYLXXpSOsEUlJm1Xr7kGULZTuGtP/w==} + caniuse-lite@1.0.30001692: + resolution: {integrity: sha512-A95VKan0kdtrsnMubMKxEKUKImOPSuCpYgxSQBo036P5YYgVIcOYJEgt/txJWqObiRQeISNCfef9nvlQ0vbV7A==} capital-case@1.0.4: resolution: {integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==} @@ -8856,8 +8948,8 @@ packages: resolution: {integrity: sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==} engines: {node: '>= 6'} - chokidar@3.5.3: - resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} + chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} chokidar@4.0.3: @@ -8901,6 +8993,12 @@ packages: resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} engines: {node: '>=6'} + clean-webpack-plugin@4.0.0: + resolution: {integrity: sha512-WuWE1nyTNAyW5T7oNyys2EN0cfP2fdRxhxnIQWiAp0bMabPdHhoGxM8A6YL2GhqwgrPnnaemVE7nv5XJ2Fhh2w==} + engines: {node: '>=10.0.0'} + peerDependencies: + webpack: '>=4.0.0 <6.0.0' + cli-cursor@2.1.0: resolution: {integrity: sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==} engines: {node: '>=4'} @@ -8994,6 +9092,10 @@ packages: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} engines: {node: '>= 0.8'} + commander@10.0.1: + resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} + engines: {node: '>=14'} + commander@12.1.0: resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} engines: {node: '>=18'} @@ -9008,10 +9110,6 @@ packages: commander@3.0.2: resolution: {integrity: sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow==} - commander@5.1.0: - resolution: {integrity: sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==} - engines: {node: '>= 6'} - commander@7.2.0: resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} engines: {node: '>= 10'} @@ -9099,8 +9197,8 @@ packages: peerDependencies: webpack: ^5.1.0 - core-js-compat@3.39.0: - resolution: {integrity: sha512-VgEUx3VwlExr5no0tXlBt+silBvhTryPwCXRI2Id1PN8WTKu7MreethvddqOubrYxkFdv/RnYrqlv1sFNAUelw==} + core-js-compat@3.40.0: + resolution: {integrity: sha512-0XEDpr5y5mijvw8Lbc6E5AkjrHfp7eEoPlu36SWeAbcL8fn1G1ANe8DBlo2XoNN89oVpxWwOjYIPVzR4ZvsKCQ==} core-js@3.38.1: resolution: {integrity: sha512-OP35aUorbU3Zvlx7pjsFdu1rGNnD4pgw/CWoYzRY3t2EzoVT7shKHY1dlAy3f41cGIO7ZDPQimhGFTlEYkG/Hw==} @@ -9330,16 +9428,16 @@ packages: resolution: {integrity: sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==} engines: {node: '>=12'} - data-view-buffer@1.0.1: - resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==} + data-view-buffer@1.0.2: + resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} engines: {node: '>= 0.4'} - data-view-byte-length@1.0.1: - resolution: {integrity: sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==} + data-view-byte-length@1.0.2: + resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} engines: {node: '>= 0.4'} - data-view-byte-offset@1.0.0: - resolution: {integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==} + data-view-byte-offset@1.0.1: + resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} engines: {node: '>= 0.4'} date-fns@1.30.1: @@ -9435,6 +9533,10 @@ packages: resolution: {integrity: sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==} engines: {node: '>= 14'} + del@4.1.1: + resolution: {integrity: sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==} + engines: {node: '>=6'} + delaunator@5.0.1: resolution: {integrity: sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==} @@ -9561,8 +9663,8 @@ packages: domutils@2.8.0: resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} - domutils@3.1.0: - resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==} + domutils@3.2.2: + resolution: {integrity: sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==} dot-case@3.0.4: resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} @@ -9579,8 +9681,8 @@ packages: resolution: {integrity: sha512-JvpYKUmzQhYoIFgK2MOnF3bciIZoItIIoryihy0rIA+H4Jy0FmgyKYAHCTN98P5ybGSJcIFbh6QKeJdtZd1qhA==} engines: {node: '>=12'} - dunder-proto@1.0.0: - resolution: {integrity: sha512-9+Sj30DIu+4KvHqMfLUGLFYL2PkURSYMVXJyXe92nFRvlYq5hBjLEhblKB+vkd/WVlUYMWigiY07T91Fkk0+4A==} + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} engines: {node: '>= 0.4'} earcut@2.2.4: @@ -9597,8 +9699,8 @@ packages: engines: {node: '>=0.10.0'} hasBin: true - electron-to-chromium@1.5.76: - resolution: {integrity: sha512-CjVQyG7n7Sr+eBXE86HIulnL5N8xZY1sgmOPGuq/F0Rr0FJq63lg0kEtOIDfZBk44FnDLf6FUJ+dsJcuiUDdDQ==} + electron-to-chromium@1.5.80: + resolution: {integrity: sha512-LTrKpW0AqIuHwmlVNV+cjFYTnXtM9K37OGhpe0ZI10ScPSxqVSryZHIY3WnCS5NSYbBODRTZyhRMS2h5FAEqAw==} elegant-spinner@1.0.1: resolution: {integrity: sha512-B+ZM+RXvRqQaAmkMlO/oSe5nMUOaUnyfGYCEHoR8wrXsZR2mA0XVibsxV1bvTwxdRWah1PkQqso2EzhILGHtEQ==} @@ -9645,8 +9747,8 @@ packages: endent@2.1.0: resolution: {integrity: sha512-r8VyPX7XL8U01Xgnb1CjZ3XV+z90cXIJ9JPE/R9SEC9vpw2P6CfsRPJmp20DppC5N7ZAMCmjYkJIa744Iyg96w==} - enhanced-resolve@5.17.1: - resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==} + enhanced-resolve@5.18.0: + resolution: {integrity: sha512-0/r0MySGYG8YqlayBZ6MuCfECmHFdJ5qyPh8s8wa5Hnm6SaFLSK1VYCbj+NKp090Nm1caZhD+QTnmxO7esYGyQ==} engines: {node: '>=10.13.0'} enquirer@2.4.1: @@ -9685,8 +9787,8 @@ packages: error@10.4.0: resolution: {integrity: sha512-YxIFEJuhgcICugOUvRx5th0UM+ActZ9sjY0QJmeVwsQdvosZ7kYzc9QqS0Da3R5iUmgU5meGIxh0xBeZpMVeLw==} - es-abstract@1.23.5: - resolution: {integrity: sha512-vlmniQ0WNPwXqA0BnmwV3Ng7HxiGlh6r5U6JcTMNx8OilcAGqVJBHJcPjqOMaczU9fRuRK5Px2BdVyPRnKMMVQ==} + es-abstract@1.23.9: + resolution: {integrity: sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==} engines: {node: '>= 0.4'} es-define-property@1.0.1: @@ -9700,19 +9802,19 @@ packages: es-get-iterator@1.1.3: resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==} - es-iterator-helpers@1.2.0: - resolution: {integrity: sha512-tpxqxncxnpw3c93u8n3VOzACmRFoVmWJqbWXvX/JfKbkhBw1oslgPrUfeSt2psuqyEJFD6N/9lg5i7bsKpoq+Q==} + es-iterator-helpers@1.2.1: + resolution: {integrity: sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==} engines: {node: '>= 0.4'} - es-module-lexer@1.5.4: - resolution: {integrity: sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==} + es-module-lexer@1.6.0: + resolution: {integrity: sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==} es-object-atoms@1.0.0: resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==} engines: {node: '>= 0.4'} - es-set-tostringtag@2.0.3: - resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==} + es-set-tostringtag@2.1.0: + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} engines: {node: '>= 0.4'} es-shim-unscopables@1.0.2: @@ -10087,8 +10189,8 @@ packages: fast-fifo@1.3.2: resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==} - fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} + fast-glob@3.3.3: + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} engines: {node: '>=8.6.0'} fast-json-parse@1.0.3: @@ -10100,15 +10202,15 @@ packages: fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} - fast-uri@3.0.3: - resolution: {integrity: sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==} + fast-uri@3.0.5: + resolution: {integrity: sha512-5JnBCWpFlMo0a3ciDy/JckMzzv1U9coZrIhedq+HXxxUfDTAiS0LA8OKVao4G9BxmCVck/jtA5r3KAtRWEyD8Q==} fastest-levenshtein@1.0.16: resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==} engines: {node: '>= 4.9.1'} - fastq@1.17.1: - resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} + fastq@1.18.0: + resolution: {integrity: sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==} fb-watchman@2.0.2: resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==} @@ -10174,8 +10276,8 @@ packages: resolution: {integrity: sha512-0rnQWcFwZr7eO0513HahrWafsc3CTFioEB7DRiEYCUM/70QXSY8f3mCST17HXLcPvEhzH/Ty/Bxd72ZZsr/yvw==} engines: {node: '>=0.10.0'} - find-process@1.4.7: - resolution: {integrity: sha512-/U4CYp1214Xrp3u3Fqr9yNynUrr5Le4y0SsJh2lMDDSbpwYSz3M2SMWQC+wqcx79cN8PQtHQIL8KnuY9M66fdg==} + find-process@1.4.10: + resolution: {integrity: sha512-ncYFnWEIwL7PzmrK1yZtaccN8GhethD37RzBHG6iOZoFYB4vSmLLXfeWJjeN5nMvCJMjOtBvBBF8OgxEcikiZg==} hasBin: true find-root@1.1.0: @@ -10318,8 +10420,8 @@ packages: function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - function.prototype.name@1.1.6: - resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} + function.prototype.name@1.1.8: + resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==} engines: {node: '>= 0.4'} functions-have-names@1.2.3: @@ -10345,8 +10447,8 @@ packages: get-document@1.0.0: resolution: {integrity: sha512-8E7H2Xxibav+/rQTTtm6gFlSQwDoAQg667yheA+vWQr/amxEuswChzGo4MIbOJJoR0SMpDyhbUqWp3FpIfwD9A==} - get-intrinsic@1.2.5: - resolution: {integrity: sha512-Y4+pKa7XeRUPWFNvOOYHkRYrfzW07oraURSvjDmRVOJ748OrVmeXtpE4+GCEHncjCjkTxPNRt8kEbxDhsn6VTg==} + get-intrinsic@1.2.7: + resolution: {integrity: sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==} engines: {node: '>= 0.4'} get-nonce@1.0.1: @@ -10361,6 +10463,10 @@ packages: resolution: {integrity: sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==} engines: {node: '>=8'} + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + get-stream@5.2.0: resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} engines: {node: '>=8'} @@ -10369,8 +10475,8 @@ packages: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} - get-symbol-description@1.0.2: - resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} + get-symbol-description@1.1.0: + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} engines: {node: '>= 0.4'} get-tsconfig@4.8.1: @@ -10400,9 +10506,8 @@ packages: glob-to-regexp@0.4.1: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} - glob@10.4.1: - resolution: {integrity: sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==} - engines: {node: '>=16 || 14 >=14.18'} + glob@10.4.5: + resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} hasBin: true glob@11.0.0: @@ -10454,6 +10559,10 @@ packages: resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + globby@6.1.0: + resolution: {integrity: sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw==} + engines: {node: '>=0.10.0'} + good-listener@1.2.2: resolution: {integrity: sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==} @@ -10483,8 +10592,9 @@ packages: resolution: {integrity: sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==} engines: {node: '>=0.10.0'} - has-bigints@1.0.2: - resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} + has-bigints@1.1.0: + resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} + engines: {node: '>= 0.4'} has-flag@3.0.0: resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} @@ -10698,8 +10808,8 @@ packages: ini@1.3.8: resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} - internal-slot@1.0.7: - resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} + internal-slot@1.1.0: + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} engines: {node: '>= 0.4'} internmap@2.0.3: @@ -10710,12 +10820,13 @@ packages: resolution: {integrity: sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==} engines: {node: '>= 0.10'} + interpret@3.1.1: + resolution: {integrity: sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==} + engines: {node: '>=10.13.0'} + intl-messageformat@10.7.11: resolution: {integrity: sha512-IB2N1tmI24k2EFH3PWjU7ivJsnWyLwOWOva0jnXFa29WzB6fb0JZ5EMQGu+XN5lDtjHYFo0/UooP67zBwUg7rQ==} - invariant@2.2.4: - resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} - ip-address@9.0.5: resolution: {integrity: sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==} engines: {node: '>= 12'} @@ -10724,12 +10835,12 @@ packages: resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} engines: {node: '>= 0.10'} - is-arguments@1.1.1: - resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} + is-arguments@1.2.0: + resolution: {integrity: sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==} engines: {node: '>= 0.4'} - is-array-buffer@3.0.4: - resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} + is-array-buffer@3.0.5: + resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} engines: {node: '>= 0.4'} is-arrayish@0.2.1: @@ -10738,8 +10849,8 @@ packages: is-arrayish@0.3.2: resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} - is-async-function@2.0.0: - resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} + is-async-function@2.1.0: + resolution: {integrity: sha512-GExz9MtyhlZyXYLxzlJRj5WUCE661zhDa1Yna52CN57AJsymh+DvXXjyveSioqSRdxvUrdKdvqB1b5cVKsNpWQ==} engines: {node: '>= 0.4'} is-bigint@1.1.0: @@ -10750,8 +10861,8 @@ packages: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} - is-boolean-object@1.2.0: - resolution: {integrity: sha512-kR5g0+dXf/+kXnqI+lu0URKYPKgICtHGGNCDSB10AaUFj3o/HkB3u7WfpRBJGFopxxY0oH3ux7ZsDjLtK7xqvw==} + is-boolean-object@1.2.1: + resolution: {integrity: sha512-l9qO6eFlUETHtuihLcYOaLKByJ1f+N4kthcU9YjHy3N+B3hWv0y/2Nd0mu/7lTFnRQHTrSdXF50HQ3bl5fEnng==} engines: {node: '>= 0.4'} is-buffer@2.0.5: @@ -10765,16 +10876,16 @@ packages: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} - is-core-module@2.15.1: - resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==} + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} engines: {node: '>= 0.4'} - is-data-view@1.0.1: - resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==} + is-data-view@1.0.2: + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} engines: {node: '>= 0.4'} - is-date-object@1.0.5: - resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} + is-date-object@1.1.0: + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} engines: {node: '>= 0.4'} is-docker@2.2.1: @@ -10789,8 +10900,8 @@ packages: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} - is-finalizationregistry@1.1.0: - resolution: {integrity: sha512-qfMdqbAQEwBw78ZyReKnlA8ezmPdb9BemzIIip/JkjaZUhitfXDkkr+3QTboW0JrSXT1QWyYShpvnNHGZ4c4yA==} + is-finalizationregistry@1.1.1: + resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} engines: {node: '>= 0.4'} is-fullwidth-code-point@1.0.0: @@ -10809,8 +10920,8 @@ packages: resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==} engines: {node: '>=6'} - is-generator-function@1.0.10: - resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} + is-generator-function@1.1.0: + resolution: {integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==} engines: {node: '>= 0.4'} is-glob@4.0.3: @@ -10824,12 +10935,8 @@ packages: is-module@1.0.0: resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} - is-negative-zero@2.0.3: - resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} - engines: {node: '>= 0.4'} - - is-number-object@1.1.0: - resolution: {integrity: sha512-KVSZV0Dunv9DTPkhXwcZ3Q+tUc9TsaE1ZwX5J2WMvsSGS6Md8TFPun5uwh0yRdrNerI6vf/tbJxqSx4c1ZI1Lw==} + is-number-object@1.1.1: + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} engines: {node: '>= 0.4'} is-number@7.0.0: @@ -10844,6 +10951,18 @@ packages: resolution: {integrity: sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==} engines: {node: '>=4'} + is-path-cwd@2.2.0: + resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==} + engines: {node: '>=6'} + + is-path-in-cwd@2.1.0: + resolution: {integrity: sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==} + engines: {node: '>=6'} + + is-path-inside@2.1.0: + resolution: {integrity: sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==} + engines: {node: '>=6'} + is-plain-obj@2.1.0: resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} engines: {node: '>=8'} @@ -10875,16 +10994,16 @@ packages: is-reference@3.0.3: resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==} - is-regex@1.2.0: - resolution: {integrity: sha512-B6ohK4ZmoftlUe+uvenXSbPJFo6U37BH7oO1B3nQH8f/7h27N56s85MhUtbFJAziz5dcmuR3i8ovUl35zp8pFA==} + is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} engines: {node: '>= 0.4'} is-set@2.0.3: resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} engines: {node: '>= 0.4'} - is-shared-array-buffer@1.0.3: - resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==} + is-shared-array-buffer@1.0.4: + resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} engines: {node: '>= 0.4'} is-stream@1.1.0: @@ -10899,16 +11018,16 @@ packages: resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - is-string@1.1.0: - resolution: {integrity: sha512-PlfzajuF9vSo5wErv3MJAKD/nqf9ngAs1NFQYm16nUYFO2IzxJ2hcm+IOCg+EEopdykNNUhVq5cz35cAUxU8+g==} + is-string@1.1.1: + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} engines: {node: '>= 0.4'} - is-symbol@1.1.0: - resolution: {integrity: sha512-qS8KkNNXUZ/I+nX6QT8ZS1/Yx0A444yhzdTKxCzKkNjQ9sHErBxJnJAgh+f5YhusYECEcjo4XcyH87hn6+ks0A==} + is-symbol@1.1.1: + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} engines: {node: '>= 0.4'} - is-typed-array@1.1.13: - resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==} + is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} engines: {node: '>= 0.4'} is-typedarray@1.0.0: @@ -10918,11 +11037,12 @@ packages: resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} engines: {node: '>= 0.4'} - is-weakref@1.0.2: - resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} + is-weakref@1.1.0: + resolution: {integrity: sha512-SXM8Nwyys6nT5WP6pltOwKytLV7FqQ4UiibxVmW+EIosHcmCqkkjViTb5SNssDlkCiEYRP1/pdWUKVvZBmsR2Q==} + engines: {node: '>= 0.4'} - is-weakset@2.0.3: - resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==} + is-weakset@2.0.4: + resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} engines: {node: '>= 0.4'} is-windows@0.2.0: @@ -10991,8 +11111,8 @@ packages: resolution: {integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==} engines: {node: '>=8'} - iterator.prototype@1.1.3: - resolution: {integrity: sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==} + iterator.prototype@1.1.5: + resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==} engines: {node: '>= 0.4'} jackspeak@3.4.3: @@ -11182,8 +11302,12 @@ packages: node-notifier: optional: true - jiti@2.4.1: - resolution: {integrity: sha512-yPBThwecp1wS9DmoA4x4KR2h3QoslacnDR8ypuFM962kI4/456Iy1oHx2RAgh4jfZNdn0bctsdadceiBUgpU1g==} + jiti@1.21.7: + resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==} + hasBin: true + + jiti@2.4.2: + resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==} hasBin: true joi@17.13.3: @@ -11234,6 +11358,11 @@ packages: engines: {node: '>=6'} hasBin: true + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} @@ -11491,6 +11620,10 @@ packages: resolution: {integrity: sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==} engines: {node: '>= 12.0.0'} + loglevel@1.9.2: + resolution: {integrity: sha512-HgMmCqIJSAKqo68l0rS2AanEWfkxaZ5wNiEFb5ggm08lDs9Xl2KxBlX3PTcaD2chBM1gXAYf491/M2Rv8Jwayg==} + engines: {node: '>= 0.6.0'} + longest-streak@3.1.0: resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} @@ -11526,8 +11659,8 @@ packages: resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==} engines: {node: '>=12'} - magic-string@0.30.14: - resolution: {integrity: sha512-5c99P1WKTed11ZC0HMJOj6CDIue6F8ySu+bJL+85q1zBEIY8IklrJ1eiKC2NDRh3Ct3FcvmJPyQHb9erXMTJNw==} + magic-string@0.30.17: + resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} make-dir@3.1.0: resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} @@ -11566,11 +11699,15 @@ packages: math-expression-evaluator@1.4.0: resolution: {integrity: sha512-4vRUvPyxdO8cWULGTh9dZWL2tZK6LDBvj+OGHBER7poH9Qdt7kXEoj20wiz4lQUbUXQZFjPbe5mVDo9nutizCw==} + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + md5-es@1.8.2: resolution: {integrity: sha512-LKq5jmKMhJYhsBFUh2w+J3C4bMiC5uQie/UYJ429UATmMnFr6iANO2uQq5HXAZSIupGp0WO2mH3sNfxR4XO40Q==} - mdast-util-find-and-replace@3.0.1: - resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==} + mdast-util-find-and-replace@3.0.2: + resolution: {integrity: sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==} mdast-util-from-markdown@2.0.2: resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==} @@ -11946,8 +12083,8 @@ packages: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} - object.assign@4.1.5: - resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} + object.assign@4.1.7: + resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} engines: {node: '>= 0.4'} object.entries@1.1.8: @@ -11962,8 +12099,8 @@ packages: resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} engines: {node: '>= 0.4'} - object.values@1.2.0: - resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==} + object.values@1.2.1: + resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} engines: {node: '>= 0.4'} objectorarray@1.0.5: @@ -12018,6 +12155,10 @@ packages: resolution: {integrity: sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==} engines: {node: '>=0.10.0'} + own-keys@1.0.1: + resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} + engines: {node: '>= 0.4'} + p-debounce@4.0.0: resolution: {integrity: sha512-4Ispi9I9qYGO4lueiLDhe4q4iK5ERK8reLsuzH6BPaXn53EGaua8H66PXIFGrW897hwjXp+pVLrm/DLxN0RF0A==} engines: {node: '>=12'} @@ -12162,6 +12303,9 @@ packages: resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} engines: {node: '>=0.10.0'} + path-is-inside@1.0.2: + resolution: {integrity: sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==} + path-key@3.1.1: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} @@ -12218,10 +12362,26 @@ packages: resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} engines: {node: '>=12'} + pify@2.3.0: + resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} + engines: {node: '>=0.10.0'} + + pify@4.0.1: + resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} + engines: {node: '>=6'} + pify@5.0.0: resolution: {integrity: sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==} engines: {node: '>=10'} + pinkie-promise@2.0.1: + resolution: {integrity: sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==} + engines: {node: '>=0.10.0'} + + pinkie@2.0.4: + resolution: {integrity: sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==} + engines: {node: '>=0.10.0'} + pirates@4.0.6: resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} engines: {node: '>= 6'} @@ -12332,6 +12492,13 @@ packages: postcss: ^7.0.0 || ^8.0.1 webpack: ^5.0.0 + postcss-loader@7.3.4: + resolution: {integrity: sha512-iW5WTTBSC5BfsBJ9daFMPVrLT36MrNiC6fqOZTTaHjBNX6Pfd5p+hSBqe/fEeNd7pc13QiAyGt7VdGMw4eRC4A==} + engines: {node: '>= 14.15.0'} + peerDependencies: + postcss: ^7.0.0 || ^8.0.1 + webpack: ^5.0.0 + postcss-merge-longhand@6.0.5: resolution: {integrity: sha512-5LOiordeTfi64QhICp07nzzuTDjNSO8g5Ksdibt44d+uvIIAE1oZdRn8y/W5ZtYgRH/lnLDlvi9F8btZcVzu3w==} engines: {node: ^14 || ^16 || >=18.0} @@ -12374,8 +12541,8 @@ packages: peerDependencies: postcss: ^8.1.0 - postcss-modules-local-by-default@4.1.0: - resolution: {integrity: sha512-rm0bdSv4jC3BDma3s9H19ZddW0aHX6EoqwDYU2IfZhRN+53QrufTRo2IdkAbRqLx4R2IYbZnbjKKxg4VN5oU9Q==} + postcss-modules-local-by-default@4.2.0: + resolution: {integrity: sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 @@ -12529,8 +12696,8 @@ packages: preact@10.22.1: resolution: {integrity: sha512-jRYbDDgMpIb5LHq3hkI0bbl+l/TQ9UnkdQ0ww+lp+4MMOdqaUYdFc5qeyP+IV8FAd/2Em7drVPeKdQxsiWCf/A==} - preact@10.25.1: - resolution: {integrity: sha512-frxeZV2vhQSohQwJ7FvlqC40ze89+8friponWUFeVEkaCfhC6Eu4V0iND5C9CXz8JLndV07QRDeXzH1+Anz5Og==} + preact@10.25.4: + resolution: {integrity: sha512-jLdZDb+Q+odkHJ+MpW/9U5cODzqnB+fy2EiHSZES7ldV5LK7yjlVzTp7R8Xy6W6y75kfK8iWYtFVH7lvjwrCMA==} prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} @@ -12766,22 +12933,22 @@ packages: react-native: optional: true - react-remove-scroll-bar@2.3.6: - resolution: {integrity: sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g==} + react-remove-scroll-bar@2.3.8: + resolution: {integrity: sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==} 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': optional: true - react-remove-scroll@2.6.0: - resolution: {integrity: sha512-I2U4JVEsQenxDAKaVa3VZ/JeJZe0/2DxPWL8Tj8yLKctQJQiZM52pn/GWFpSp8dftjM3pSAHVJZscAnC/y+ySQ==} + react-remove-scroll@2.6.2: + resolution: {integrity: sha512-KmONPx5fnlXYJQqC62Q+lwIeAk64ws/cUw6omIumRzMRPqgnYqhSSti99nbj0Ry13bv7dF+BKn7NB+OqkdZGTw==} 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': optional: true @@ -12818,12 +12985,12 @@ packages: '@babel/runtime': ^7 react: ^16 || ^17 || ^18 - react-style-singleton@2.2.1: - resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} + react-style-singleton@2.2.3: + resolution: {integrity: sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==} 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': optional: true @@ -12856,9 +13023,9 @@ packages: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} - readdirp@4.0.2: - resolution: {integrity: sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==} - engines: {node: '>= 14.16.0'} + readdirp@4.1.1: + resolution: {integrity: sha512-h80JrZu/MHUZCyHu5ciuoI0+WxsCxzxJTILn6Fs8rxSnFPh+UVHYfeIxK1nVGugMqkfC4vJcBOYbkfkwYK0+gw==} + engines: {node: '>= 14.18.0'} recast@0.23.9: resolution: {integrity: sha512-Hx/BGIbwj+Des3+xy5uAtAbdCyqK9y9wbBcDFDYanLS9JnMqf7OeF87HQwUimE87OEc72mr6tkKUKMBBL+hF9Q==} @@ -12868,6 +13035,10 @@ packages: resolution: {integrity: sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==} engines: {node: '>= 0.10'} + rechoir@0.8.0: + resolution: {integrity: sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==} + engines: {node: '>= 10.13.0'} + redent@3.0.0: resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} engines: {node: '>=8'} @@ -12898,8 +13069,8 @@ packages: redux@5.0.1: resolution: {integrity: sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==} - reflect.getprototypeof@1.0.8: - resolution: {integrity: sha512-B5dj6usc5dkk8uFliwjwDHM8To5/QwdKz9JcBZ8Ic4G1f0YmeeJTtE/ZTdgRFPAfxZFiUaPhZ1Jcs4qeagItGQ==} + reflect.getprototypeof@1.0.10: + resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} engines: {node: '>= 0.4'} refx@3.1.1: @@ -12921,8 +13092,8 @@ packages: regenerator-transform@0.15.2: resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} - regexp.prototype.flags@1.5.3: - resolution: {integrity: sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==} + regexp.prototype.flags@1.5.4: + resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} engines: {node: '>= 0.4'} regexpu-core@6.2.0: @@ -13018,8 +13189,9 @@ packages: resolution: {integrity: sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==} engines: {node: '>=10'} - resolve@1.22.8: - resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} + resolve@1.22.10: + resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} + engines: {node: '>= 0.4'} hasBin: true resolve@2.0.0-next.5: @@ -13042,6 +13214,11 @@ packages: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + rimraf@2.7.1: + resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} + deprecated: Rimraf versions prior to v4 are no longer supported + hasBin: true + rimraf@3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} deprecated: Rimraf versions prior to v4 are no longer supported @@ -13054,22 +13231,10 @@ packages: robust-predicates@3.0.2: resolution: {integrity: sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==} - rollup-plugin-dts@6.1.1: - resolution: {integrity: sha512-aSHRcJ6KG2IHIioYlvAOcEq6U99sVtqDDKVhnwt70rW6tsz3tv5OSjEiWcgzfsHdLyGXZ/3b/7b/+Za3Y6r1XA==} - engines: {node: '>=16'} - peerDependencies: - rollup: ^3.29.4 || ^4 - typescript: ^4.5 || ^5.0 - rollup-plugin-livereload@2.0.5: resolution: {integrity: sha512-vqQZ/UQowTW7VoiKEM5ouNW90wE5/GZLfdWuR0ELxyKOJUIaj+uismPZZaICU4DnWPVjnpCDDxEqwU7pcKY/PA==} engines: {node: '>=8.3'} - rollup-plugin-peer-deps-external@2.2.4: - resolution: {integrity: sha512-AWdukIM1+k5JDdAqV/Cxd+nejvno2FVLVeZ74NKggm3Q5s9cbbcOgUPGdbxPi4BXu7xGaZ8HG12F+thImYu/0g==} - peerDependencies: - rollup: '*' - rollup-plugin-postcss@4.0.2: resolution: {integrity: sha512-05EaY6zvZdmvPUDi3uCcAQoESDcYnv8ogJJQRp6V5kZ6J6P7uAVJlrTZcaaA20wTH527YTnKfkAoPxWI/jPp4w==} engines: {node: '>=10'} @@ -13119,8 +13284,8 @@ packages: rxjs@7.8.1: resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} - safe-array-concat@1.1.2: - resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==} + safe-array-concat@1.1.3: + resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} engines: {node: '>=0.4'} safe-buffer@5.2.1: @@ -13129,8 +13294,12 @@ packages: safe-identifier@0.4.2: resolution: {integrity: sha512-6pNbSMW6OhAi9j+N8V+U715yBQsaWJ7eyEUaOrawX+isg5ZxhUlV1NipNtgaKHmFGiABwt+ZF04Ii+3Xjkg+8w==} - safe-regex-test@1.0.3: - resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} + safe-push-apply@1.0.0: + resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} + engines: {node: '>= 0.4'} + + safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} engines: {node: '>= 0.4'} safe-stable-stringify@2.5.0: @@ -13281,6 +13450,25 @@ packages: sass: optional: true + sass-loader@13.3.3: + resolution: {integrity: sha512-mt5YN2F1MOZr3d/wBRcZxeFgwgkH44wVc2zohO2YF6JiOMkiXe4BYRZpSu2sO1g71mo/j16txzUhsKZlqjVGzA==} + engines: {node: '>= 14.15.0'} + peerDependencies: + fibers: '>= 3.1.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: + optional: true + node-sass: + optional: true + sass: + optional: true + sass-embedded: + optional: true + sass@1.64.1: resolution: {integrity: sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==} engines: {node: '>=14.0.0'} @@ -13300,9 +13488,9 @@ packages: resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==} engines: {node: '>= 10.13.0'} - schema-utils@4.2.0: - resolution: {integrity: sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==} - engines: {node: '>= 12.13.0'} + schema-utils@4.3.0: + resolution: {integrity: sha512-Gf9qqc58SpCA/xdziiHz35F4GNIWYWZrEshUc/G/r5BnLph6xpKuLeoJoQuj5WfBIx/eQLf+hmVPYHaxJu7V2g==} + engines: {node: '>= 10.13.0'} seed-random@2.2.0: resolution: {integrity: sha512-34EQV6AAHQGhoc0tn/96a9Fsi6v2xdqe/dMUwljGRaFOzR3EgRmECvD0O8vi8X+/uQ50LGHfkNu/Eue5TPKZkQ==} @@ -13348,6 +13536,10 @@ packages: resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} engines: {node: '>= 0.4'} + set-proto@1.0.0: + resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} + engines: {node: '>= 0.4'} + setprototypeof@1.2.0: resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} @@ -13374,8 +13566,20 @@ packages: resolution: {integrity: sha512-9cGuS382HcvExtf5AHk7Cb4pAeQQ+h0eTr33V1mu+crYWV4KvWAw6el92bDrqGEk5d46Ai/fhbEUwqJ/mTCNEA==} hasBin: true - side-channel@1.0.6: - resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} engines: {node: '>= 0.4'} signal-exit@3.0.7: @@ -13532,8 +13736,8 @@ packages: resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} engines: {node: '>= 0.8'} - stop-iteration-iterator@1.0.0: - resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==} + stop-iteration-iterator@1.1.0: + resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} engines: {node: '>= 0.4'} storybook-addon-mock@5.0.0: @@ -13556,8 +13760,8 @@ packages: prettier: optional: true - streamx@2.21.0: - resolution: {integrity: sha512-Qz6MsDZXJ6ur9u+b+4xCG18TluU7PGlRfXVAAjNiGsFrBUt/ioyLkxbFaKJygoPs+/kW4VyBj0bSj89Qu0IGyg==} + streamx@2.21.1: + resolution: {integrity: sha512-PhP9wUnFLa+91CPy3N6tiQsK+gnYyUNuk15S3YG/zjYE7RuPeCjJngqnzpC31ow0lzBHQ+QGO4cNJnd0djYUsw==} string-hash@1.1.3: resolution: {integrity: sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A==} @@ -13594,19 +13798,20 @@ packages: resolution: {integrity: sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==} engines: {node: '>= 0.4'} - string.prototype.matchall@4.0.11: - resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==} + string.prototype.matchall@4.0.12: + resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==} engines: {node: '>= 0.4'} string.prototype.repeat@1.0.0: resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} - string.prototype.trim@1.2.9: - resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==} + string.prototype.trim@1.2.10: + resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} engines: {node: '>= 0.4'} - string.prototype.trimend@1.0.8: - resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==} + string.prototype.trimend@1.0.9: + resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} + engines: {node: '>= 0.4'} string.prototype.trimstart@1.0.8: resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} @@ -13840,14 +14045,14 @@ packages: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} - tar-fs@3.0.6: - resolution: {integrity: sha512-iokBDQQkUyeXhgPYaZxmczGPhnhXZ0CmrqI+MOb/WFGS9DW5wnfrLgtjUJBvz50vQ3qfRwJ62QVoCFu8mPVu5w==} + tar-fs@3.0.7: + resolution: {integrity: sha512-2sAfoF/zw/2n8goUGnGRZTWTD4INtnScPZvyYBI6BDlJ3wNR5o1dw03EfBvuhG6GBLvC4J+C7j7W+64aZ0ogQA==} tar-stream@3.1.7: resolution: {integrity: sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==} - terser-webpack-plugin@5.3.10: - resolution: {integrity: sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==} + terser-webpack-plugin@5.3.11: + resolution: {integrity: sha512-RVCsMfuD0+cTt3EwX8hSl2Ks56EbFHWmhluwcqoPKtBnfjiT6olaq7PRIRfhyU8nnC2MrnDrBLfrD/RGE+cVXQ==} engines: {node: '>= 10.13.0'} peerDependencies: '@swc/core': '*' @@ -13887,8 +14092,8 @@ packages: resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} engines: {node: '>=8'} - text-decoder@1.2.2: - resolution: {integrity: sha512-/MDslo7ZyWTA2vnk1j7XoDVfXsGk3tp+zFEJHJGm0UjIlQifonVFwlVbQDFh8KJzTBnT8ie115TYqir6bclddA==} + text-decoder@1.2.3: + resolution: {integrity: sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==} text-hex@1.0.0: resolution: {integrity: sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==} @@ -13978,6 +14183,12 @@ packages: peerDependencies: typescript: '>=4.2.0' + ts-api-utils@2.0.0: + resolution: {integrity: sha512-xCt/TOAc+EOHS1XPnijD3/yzpH6qg2xppZO1YDqGoVsNXfQfzHpOdNuXwrwOU8u4ITXJyDCTyt8w5g1sZv9ynQ==} + engines: {node: '>=18.12'} + peerDependencies: + typescript: '>=4.8.4' + ts-dedent@2.2.0: resolution: {integrity: sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==} engines: {node: '>=6.10'} @@ -14009,6 +14220,10 @@ packages: esbuild: optional: true + tsconfig-paths-webpack-plugin@4.2.0: + resolution: {integrity: sha512-zbem3rfRS8BgeNK50Zz5SIQgXzLafiHjOwUAvk/38/o1jHn/V5QAgVUcz884or7WYcPaH3N2CIfUc2u0ul7UcA==} + engines: {node: '>=10.13.0'} + tsconfig-paths@3.15.0: resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} @@ -14060,24 +14275,24 @@ packages: resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} engines: {node: '>=12.20'} - type-fest@4.31.0: - resolution: {integrity: sha512-yCxltHW07Nkhv/1F6wWBr8kz+5BGMfP+RbRSYFnegVb0qV/UMT0G0ElBloPVerqn4M2ZV80Ir1FtCcYv1cT6vQ==} + type-fest@4.32.0: + resolution: {integrity: sha512-rfgpoi08xagF3JSdtJlCwMq9DGNDE0IMh3Mkpc1wUypg9vPi786AiqeBBKcqvIkq42azsBM85N490fyZjeUftw==} engines: {node: '>=16'} type-is@1.6.18: resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} engines: {node: '>= 0.6'} - typed-array-buffer@1.0.2: - resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==} + typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} engines: {node: '>= 0.4'} - typed-array-byte-length@1.0.1: - resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==} + typed-array-byte-length@1.0.3: + resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} engines: {node: '>= 0.4'} - typed-array-byte-offset@1.0.3: - resolution: {integrity: sha512-GsvTyUHTriq6o/bHcTd0vM7OQ9JEdlvluu9YISaA7+KzDzPaIzEeDFNkTfhdE3MYcNhNi0vq/LlegYgIs5yPAw==} + typed-array-byte-offset@1.0.4: + resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} engines: {node: '>= 0.4'} typed-array-length@1.0.7: @@ -14122,8 +14337,9 @@ packages: uc.micro@2.1.0: resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==} - unbox-primitive@1.0.2: - resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} + unbox-primitive@1.1.0: + resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} + engines: {node: '>= 0.4'} unbzip2-stream@1.4.3: resolution: {integrity: sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==} @@ -14191,12 +14407,12 @@ packages: resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} engines: {node: '>= 0.8'} - unplugin@1.16.0: - resolution: {integrity: sha512-5liCNPuJW8dqh3+DM6uNM2EI3MLLpCKp/KY+9pB5M2S2SR2qvvDHhKgBOaTWEbZTAws3CXfB0rKTIolWKL05VQ==} + unplugin@1.16.1: + resolution: {integrity: sha512-4/u/j4FrCKdi17jaxuJA0jClGxB1AvU2hw/IuayPc4ay1XGaJs/rbb4v5WKwAjNifjmXK9PIFyuPiaK8azyR9w==} engines: {node: '>=14.0.0'} - update-browserslist-db@1.1.1: - resolution: {integrity: sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==} + update-browserslist-db@1.1.2: + resolution: {integrity: sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' @@ -14233,12 +14449,12 @@ packages: urlpattern-polyfill@10.0.0: resolution: {integrity: sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg==} - use-callback-ref@1.3.2: - resolution: {integrity: sha512-elOQwe6Q8gqZgDA8mrh44qRTQqpIHDcZ3hXTLjBe1i4ph8XpNJnO+aQf3NaG+lriLopI4HMx9VjQLfPQ6vhnoA==} + use-callback-ref@1.3.3: + resolution: {integrity: sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==} 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': optional: true @@ -14254,12 +14470,12 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 - use-sidecar@1.1.2: - resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} + use-sidecar@1.1.3: + resolution: {integrity: sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==} engines: {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': optional: true @@ -14372,6 +14588,23 @@ packages: webpack-dev-server: optional: true + webpack-cli@5.1.4: + resolution: {integrity: sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg==} + engines: {node: '>=14.15.0'} + hasBin: true + peerDependencies: + '@webpack-cli/generators': '*' + webpack: 5.x.x + webpack-bundle-analyzer: '*' + webpack-dev-server: '*' + peerDependenciesMeta: + '@webpack-cli/generators': + optional: true + webpack-bundle-analyzer: + optional: true + webpack-dev-server: + optional: true + webpack-dev-middleware@5.3.4: resolution: {integrity: sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==} engines: {node: '>= 12.13.0'} @@ -14432,15 +14665,15 @@ packages: whatwg-url@5.0.0: resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} - when-exit@2.1.3: - resolution: {integrity: sha512-uVieSTccFIr/SFQdFWN/fFaQYmV37OKtuaGphMAzi4DmmUlrvRBJW5WSLkHyjNQY/ePJMz3LoiX9R3yy1Su6Hw==} + when-exit@2.1.4: + resolution: {integrity: sha512-4rnvd3A1t16PWzrBUcSDZqcAmsUIy4minDXT/CZ8F2mVDgd65i4Aalimgz1aQkRGU0iH5eT5+6Rx2TK8o443Pg==} - which-boxed-primitive@1.1.0: - resolution: {integrity: sha512-Ei7Miu/AXe2JJ4iNF5j/UphAgRoma4trE6PtisM09bPygb3egMH3YLW/befsWb1A1AxvNSFidOFTB18XtnIIng==} + which-boxed-primitive@1.1.1: + resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} engines: {node: '>= 0.4'} - which-builtin-type@1.2.0: - resolution: {integrity: sha512-I+qLGQ/vucCby4tf5HsLmGueEla4ZhwTBSqaooS+Y0BuxN4Cp+okmGuV+8mXZ84KDI9BA+oklo+RzKg0ONdSUA==} + which-builtin-type@1.2.1: + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} engines: {node: '>= 0.4'} which-collection@1.0.2: @@ -14450,8 +14683,8 @@ packages: which-module@2.0.1: resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==} - which-typed-array@1.1.16: - resolution: {integrity: sha512-g+N+GAWiRj66DngFwHvISJd+ITsyphZvD1vChfVg6cEdnzy53GzB3oy0fUNlvhz7H7+MiqhYr26qxQShCpKTTQ==} + which-typed-array@1.1.18: + resolution: {integrity: sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==} engines: {node: '>= 0.4'} which@1.3.1: @@ -14639,8 +14872,8 @@ packages: resolution: {integrity: sha512-FemWD5/UqNm8ffj8oZIbjWXIF2KE0mZssggYpdaQkWDDgXBQ/35PNIxEuz6/YLn9o0kOxDBNJe8x8k9ljD7k/g==} engines: {node: '>=18.16.0'} - yjs@13.6.20: - resolution: {integrity: sha512-Z2YZI+SYqK7XdWlloI3lhMiKnCdFCVC4PchpdO+mCYwtiTwncjUbnRK9R1JmkNfdmHyDXuWN3ibJAt0wsqTbLQ==} + yjs@13.6.22: + resolution: {integrity: sha512-+mJxdbmitioqqsql1Zro4dqT3t9HgmW4dxlPtkcsKFJhXSAMyk3lwawhQFxZjj2upJXzhrTUDsaDkZgJWnv3NA==} engines: {node: '>=16.0.0', npm: '>=8.0.0'} yocto-queue@0.1.0: @@ -14684,7 +14917,7 @@ snapshots: '@ampproject/remapping@2.3.0': dependencies: - '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 '@ariakit/core@0.4.14': {} @@ -14692,7 +14925,7 @@ snapshots: '@ariakit/react-core@0.4.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@ariakit/core': 0.4.14 - '@floating-ui/dom': 1.6.12 + '@floating-ui/dom': 1.6.13 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) use-sync-external-store: 1.4.0(react@18.3.1) @@ -14738,8 +14971,8 @@ snapshots: '@automattic/calypso-config': 1.2.0 '@automattic/calypso-url': 1.1.0 '@automattic/languages': 1.0.0 - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/i18n': 5.14.0 + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/i18n': 5.16.0 react: 18.3.1 tslib: 2.5.0 transitivePeerDependencies: @@ -14749,29 +14982,32 @@ snapshots: dependencies: tslib: 2.5.0 - '@automattic/page-pattern-modal@1.1.5(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(@wordpress/data@10.14.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)': + '@automattic/page-pattern-modal@1.1.5(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(@wordpress/data@10.16.0(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)(webpack@5.94.0)': dependencies: '@automattic/color-studio': 2.6.0 '@automattic/typography': 1.0.0 '@wordpress/base-styles': 5.2.0 - '@wordpress/block-editor': 14.9.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 clsx: 2.1.1 debug: 4.4.0 lodash: 4.17.21 react: 18.3.1 redux: 4.2.1 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - react-dom - supports-color + - webpack + - webpack-virtual-modules '@automattic/popup-monitor@1.0.2': dependencies: @@ -14785,9 +15021,9 @@ snapshots: '@automattic/social-previews@2.1.0-beta.8(@babel/runtime@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@emotion/react': 11.14.0(@types/react@18.3.18)(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 clsx: 2.1.1 prop-types: 15.8.1 react: 18.3.1 @@ -14821,14 +15057,14 @@ snapshots: dependencies: '@ampproject/remapping': 2.3.0 '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.3 + '@babel/generator': 7.26.5 '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) '@babel/helpers': 7.26.0 - '@babel/parser': 7.26.3 + '@babel/parser': 7.26.5 '@babel/template': 7.25.9 - '@babel/traverse': 7.26.4 - '@babel/types': 7.26.3 + '@babel/traverse': 7.26.5 + '@babel/types': 7.26.5 convert-source-map: 2.0.0 debug: 4.4.0 gensync: 1.0.0-beta.2 @@ -14845,17 +15081,17 @@ snapshots: eslint-visitor-keys: 2.1.0 semver: 6.3.1 - '@babel/generator@7.26.3': + '@babel/generator@7.26.5': dependencies: - '@babel/parser': 7.26.3 - '@babel/types': 7.26.3 - '@jridgewell/gen-mapping': 0.3.5 + '@babel/parser': 7.26.5 + '@babel/types': 7.26.5 + '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 - jsesc: 3.0.2 + jsesc: 3.1.0 '@babel/helper-annotate-as-pure@7.25.9': dependencies: - '@babel/types': 7.26.3 + '@babel/types': 7.26.5 '@babel/helper-compilation-targets@7.25.9': dependencies: @@ -14871,9 +15107,9 @@ snapshots: '@babel/helper-annotate-as-pure': 7.25.9 '@babel/helper-member-expression-to-functions': 7.25.9 '@babel/helper-optimise-call-expression': 7.25.9 - '@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.0) + '@babel/helper-replace-supers': 7.26.5(@babel/core@7.26.0) '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 - '@babel/traverse': 7.26.4 + '@babel/traverse': 7.26.5 semver: 6.3.1 transitivePeerDependencies: - supports-color @@ -14889,24 +15125,24 @@ snapshots: dependencies: '@babel/core': 7.26.0 '@babel/helper-compilation-targets': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 debug: 4.4.0 lodash.debounce: 4.0.8 - resolve: 1.22.8 + resolve: 1.22.10 transitivePeerDependencies: - supports-color '@babel/helper-member-expression-to-functions@7.25.9': dependencies: - '@babel/traverse': 7.26.4 - '@babel/types': 7.26.3 + '@babel/traverse': 7.26.5 + '@babel/types': 7.26.5 transitivePeerDependencies: - supports-color '@babel/helper-module-imports@7.25.9': dependencies: - '@babel/traverse': 7.26.4 - '@babel/types': 7.26.3 + '@babel/traverse': 7.26.5 + '@babel/types': 7.26.5 transitivePeerDependencies: - supports-color @@ -14915,38 +15151,38 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-module-imports': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.26.4 + '@babel/traverse': 7.26.5 transitivePeerDependencies: - supports-color '@babel/helper-optimise-call-expression@7.25.9': dependencies: - '@babel/types': 7.26.3 + '@babel/types': 7.26.5 - '@babel/helper-plugin-utils@7.25.9': {} + '@babel/helper-plugin-utils@7.26.5': {} '@babel/helper-remap-async-to-generator@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 '@babel/helper-wrap-function': 7.25.9 - '@babel/traverse': 7.26.4 + '@babel/traverse': 7.26.5 transitivePeerDependencies: - supports-color - '@babel/helper-replace-supers@7.25.9(@babel/core@7.26.0)': + '@babel/helper-replace-supers@7.26.5(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-member-expression-to-functions': 7.25.9 '@babel/helper-optimise-call-expression': 7.25.9 - '@babel/traverse': 7.26.4 + '@babel/traverse': 7.26.5 transitivePeerDependencies: - supports-color '@babel/helper-skip-transparent-expression-wrappers@7.25.9': dependencies: - '@babel/traverse': 7.26.4 - '@babel/types': 7.26.3 + '@babel/traverse': 7.26.5 + '@babel/types': 7.26.5 transitivePeerDependencies: - supports-color @@ -14959,42 +15195,42 @@ snapshots: '@babel/helper-wrap-function@7.25.9': dependencies: '@babel/template': 7.25.9 - '@babel/traverse': 7.26.4 - '@babel/types': 7.26.3 + '@babel/traverse': 7.26.5 + '@babel/types': 7.26.5 transitivePeerDependencies: - supports-color '@babel/helpers@7.26.0': dependencies: '@babel/template': 7.25.9 - '@babel/types': 7.26.3 + '@babel/types': 7.26.5 - '@babel/parser@7.26.3': + '@babel/parser@7.26.5': dependencies: - '@babel/types': 7.26.3 + '@babel/types': 7.26.5 '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 - '@babel/traverse': 7.26.4 + '@babel/helper-plugin-utils': 7.26.5 + '@babel/traverse': 7.26.5 transitivePeerDependencies: - supports-color '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.26.0) transitivePeerDependencies: @@ -15003,8 +15239,8 @@ snapshots: '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 - '@babel/traverse': 7.26.4 + '@babel/helper-plugin-utils': 7.26.5 + '@babel/traverse': 7.26.5 transitivePeerDependencies: - supports-color @@ -15015,110 +15251,110 @@ snapshots: '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-import-assertions@7.26.0(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-import-attributes@7.26.0(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-jsx@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-typescript@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-arrow-functions@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-async-generator-functions@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.26.0) - '@babel/traverse': 7.26.4 + '@babel/traverse': 7.26.5 transitivePeerDependencies: - supports-color @@ -15126,26 +15362,26 @@ snapshots: dependencies: '@babel/core': 7.26.0 '@babel/helper-module-imports': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.26.0) transitivePeerDependencies: - supports-color - '@babel/plugin-transform-block-scoped-functions@7.25.9(@babel/core@7.26.0)': + '@babel/plugin-transform-block-scoped-functions@7.26.5(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-block-scoping@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-class-properties@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 transitivePeerDependencies: - supports-color @@ -15153,7 +15389,7 @@ snapshots: dependencies: '@babel/core': 7.26.0 '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 transitivePeerDependencies: - supports-color @@ -15162,9 +15398,9 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 '@babel/helper-compilation-targets': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 - '@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.0) - '@babel/traverse': 7.26.4 + '@babel/helper-plugin-utils': 7.26.5 + '@babel/helper-replace-supers': 7.26.5(@babel/core@7.26.0) + '@babel/traverse': 7.26.5 globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -15172,50 +15408,50 @@ snapshots: '@babel/plugin-transform-computed-properties@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/template': 7.25.9 '@babel/plugin-transform-destructuring@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-dotall-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-duplicate-keys@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-dynamic-import@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-exponentiation-operator@7.26.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-export-namespace-from@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-for-of@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 transitivePeerDependencies: - supports-color @@ -15224,36 +15460,36 @@ snapshots: dependencies: '@babel/core': 7.26.0 '@babel/helper-compilation-targets': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 - '@babel/traverse': 7.26.4 + '@babel/helper-plugin-utils': 7.26.5 + '@babel/traverse': 7.26.5 transitivePeerDependencies: - supports-color '@babel/plugin-transform-json-strings@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-literals@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-logical-assignment-operators@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-member-expression-literals@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-modules-amd@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 transitivePeerDependencies: - supports-color @@ -15261,7 +15497,7 @@ snapshots: dependencies: '@babel/core': 7.26.0 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 transitivePeerDependencies: - supports-color @@ -15269,9 +15505,9 @@ snapshots: dependencies: '@babel/core': 7.26.0 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.26.4 + '@babel/traverse': 7.26.5 transitivePeerDependencies: - supports-color @@ -15279,7 +15515,7 @@ snapshots: dependencies: '@babel/core': 7.26.0 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 transitivePeerDependencies: - supports-color @@ -15287,47 +15523,47 @@ snapshots: dependencies: '@babel/core': 7.26.0 '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-new-target@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 - '@babel/plugin-transform-nullish-coalescing-operator@7.25.9(@babel/core@7.26.0)': + '@babel/plugin-transform-nullish-coalescing-operator@7.26.5(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-numeric-separator@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-object-rest-spread@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-compilation-targets': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-object-super@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 - '@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.26.5 + '@babel/helper-replace-supers': 7.26.5(@babel/core@7.26.0) transitivePeerDependencies: - supports-color '@babel/plugin-transform-optional-catch-binding@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-optional-chaining@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 transitivePeerDependencies: - supports-color @@ -15335,13 +15571,13 @@ snapshots: '@babel/plugin-transform-parameters@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-private-methods@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 transitivePeerDependencies: - supports-color @@ -15350,24 +15586,24 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 transitivePeerDependencies: - supports-color '@babel/plugin-transform-property-literals@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-react-constant-elements@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-react-display-name@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-react-jsx-development@7.25.9(@babel/core@7.26.0)': dependencies: @@ -15381,9 +15617,9 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 '@babel/helper-module-imports': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.0) - '@babel/types': 7.26.3 + '@babel/types': 7.26.5 transitivePeerDependencies: - supports-color @@ -15391,30 +15627,30 @@ snapshots: dependencies: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-regenerator@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 regenerator-transform: 0.15.2 '@babel/plugin-transform-regexp-modifiers@7.26.0(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-reserved-words@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-runtime@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-module-imports': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 babel-plugin-polyfill-corejs2: 0.4.12(@babel/core@7.26.0) babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.26.0) babel-plugin-polyfill-regenerator: 0.6.3(@babel/core@7.26.0) @@ -15425,12 +15661,12 @@ snapshots: '@babel/plugin-transform-shorthand-properties@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-spread@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 transitivePeerDependencies: - supports-color @@ -15438,24 +15674,24 @@ snapshots: '@babel/plugin-transform-sticky-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-template-literals@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-typeof-symbol@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 - '@babel/plugin-transform-typescript@7.26.3(@babel/core@7.26.0)': + '@babel/plugin-transform-typescript@7.26.5(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 '@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.0) transitivePeerDependencies: @@ -15464,32 +15700,32 @@ snapshots: '@babel/plugin-transform-unicode-escapes@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-unicode-property-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-unicode-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/plugin-transform-unicode-sets-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/preset-env@7.26.0(@babel/core@7.26.0)': dependencies: '@babel/compat-data': 7.26.3 '@babel/core': 7.26.0 '@babel/helper-compilation-targets': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-validator-option': 7.25.9 '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.9(@babel/core@7.26.0) '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.9(@babel/core@7.26.0) @@ -15503,7 +15739,7 @@ snapshots: '@babel/plugin-transform-arrow-functions': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-async-generator-functions': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-async-to-generator': 7.25.9(@babel/core@7.26.0) - '@babel/plugin-transform-block-scoped-functions': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-block-scoped-functions': 7.26.5(@babel/core@7.26.0) '@babel/plugin-transform-block-scoping': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-class-properties': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-class-static-block': 7.26.0(@babel/core@7.26.0) @@ -15528,7 +15764,7 @@ snapshots: '@babel/plugin-transform-modules-umd': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-named-capturing-groups-regex': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-new-target': 7.25.9(@babel/core@7.26.0) - '@babel/plugin-transform-nullish-coalescing-operator': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-nullish-coalescing-operator': 7.26.5(@babel/core@7.26.0) '@babel/plugin-transform-numeric-separator': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-object-rest-spread': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-object-super': 7.25.9(@babel/core@7.26.0) @@ -15554,7 +15790,7 @@ snapshots: babel-plugin-polyfill-corejs2: 0.4.12(@babel/core@7.26.0) babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.26.0) babel-plugin-polyfill-regenerator: 0.6.3(@babel/core@7.26.0) - core-js-compat: 3.39.0 + core-js-compat: 3.40.0 semver: 6.3.1 transitivePeerDependencies: - supports-color @@ -15562,14 +15798,14 @@ snapshots: '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 - '@babel/types': 7.26.3 + '@babel/helper-plugin-utils': 7.26.5 + '@babel/types': 7.26.5 esutils: 2.0.3 '@babel/preset-react@7.26.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-validator-option': 7.25.9 '@babel/plugin-transform-react-display-name': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-react-jsx': 7.25.9(@babel/core@7.26.0) @@ -15581,11 +15817,11 @@ snapshots: '@babel/preset-typescript@7.26.0(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@babel/helper-validator-option': 7.25.9 '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-modules-commonjs': 7.26.3(@babel/core@7.26.0) - '@babel/plugin-transform-typescript': 7.26.3(@babel/core@7.26.0) + '@babel/plugin-transform-typescript': 7.26.5(@babel/core@7.26.0) transitivePeerDependencies: - supports-color @@ -15600,22 +15836,22 @@ snapshots: '@babel/template@7.25.9': dependencies: '@babel/code-frame': 7.26.2 - '@babel/parser': 7.26.3 - '@babel/types': 7.26.3 + '@babel/parser': 7.26.5 + '@babel/types': 7.26.5 - '@babel/traverse@7.26.4': + '@babel/traverse@7.26.5': dependencies: '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.3 - '@babel/parser': 7.26.3 + '@babel/generator': 7.26.5 + '@babel/parser': 7.26.5 '@babel/template': 7.25.9 - '@babel/types': 7.26.3 + '@babel/types': 7.26.5 debug: 4.4.0 globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/types@7.26.3': + '@babel/types@7.26.5': dependencies: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 @@ -15932,6 +16168,10 @@ snapshots: transitivePeerDependencies: - supports-color + '@eslint/core@0.10.0': + dependencies: + '@types/json-schema': 7.0.15 + '@eslint/core@0.9.1': dependencies: '@types/json-schema': 7.0.15 @@ -15954,28 +16194,29 @@ snapshots: '@eslint/object-schema@2.1.5': {} - '@eslint/plugin-kit@0.2.4': + '@eslint/plugin-kit@0.2.5': dependencies: + '@eslint/core': 0.10.0 levn: 0.4.1 '@fastify/busboy@2.1.1': {} - '@floating-ui/core@1.6.8': + '@floating-ui/core@1.6.9': dependencies: - '@floating-ui/utils': 0.2.8 + '@floating-ui/utils': 0.2.9 - '@floating-ui/dom@1.6.12': + '@floating-ui/dom@1.6.13': dependencies: - '@floating-ui/core': 1.6.8 - '@floating-ui/utils': 0.2.8 + '@floating-ui/core': 1.6.9 + '@floating-ui/utils': 0.2.9 '@floating-ui/react-dom@2.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@floating-ui/dom': 1.6.12 + '@floating-ui/dom': 1.6.13 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@floating-ui/utils@0.2.8': {} + '@floating-ui/utils@0.2.9': {} '@formatjs/ecma402-abstract@2.3.2': dependencies: @@ -16044,7 +16285,7 @@ snapshots: '@jest/console@29.7.0': dependencies: '@jest/types': 29.6.3 - '@types/node': 20.17.11 + '@types/node': 20.17.12 chalk: 4.1.2 jest-message-util: 29.7.0 jest-util: 29.7.0 @@ -16057,14 +16298,14 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.17.11 + '@types/node': 20.17.12 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.9.0 exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@20.17.11) + jest-config: 29.7.0(@types/node@20.17.12) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -16093,7 +16334,7 @@ snapshots: dependencies: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.17.11 + '@types/node': 20.17.12 jest-mock: 29.7.0 '@jest/expect-utils@29.7.0': @@ -16111,7 +16352,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@sinonjs/fake-timers': 10.3.0 - '@types/node': 20.17.11 + '@types/node': 20.17.12 jest-message-util: 29.7.0 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -16142,7 +16383,7 @@ snapshots: '@jest/transform': 29.7.0 '@jest/types': 29.6.3 '@jridgewell/trace-mapping': 0.3.25 - '@types/node': 20.17.11 + '@types/node': 20.17.12 chalk: 4.1.2 collect-v8-coverage: 1.0.2 exit: 0.1.2 @@ -16212,11 +16453,11 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 20.17.11 + '@types/node': 20.17.12 '@types/yargs': 17.0.33 chalk: 4.1.2 - '@jridgewell/gen-mapping@0.3.5': + '@jridgewell/gen-mapping@0.3.8': dependencies: '@jridgewell/set-array': 1.2.1 '@jridgewell/sourcemap-codec': 1.5.0 @@ -16228,7 +16469,7 @@ snapshots: '@jridgewell/source-map@0.3.6': dependencies: - '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 '@jridgewell/sourcemap-codec@1.5.0': {} @@ -16287,7 +16528,7 @@ snapshots: '@nodelib/fs.walk@1.2.8': dependencies: '@nodelib/fs.scandir': 2.1.5 - fastq: 1.17.1 + fastq: 1.18.0 '@nolyfill/is-core-module@1.0.39': {} @@ -16301,29 +16542,29 @@ snapshots: '@octokit/graphql': 7.1.0 '@octokit/request': 8.4.0 '@octokit/request-error': 5.1.0 - '@octokit/types': 13.6.2 + '@octokit/types': 13.7.0 before-after-hook: 2.2.3 universal-user-agent: 6.0.1 '@octokit/endpoint@9.0.5': dependencies: - '@octokit/types': 13.6.2 + '@octokit/types': 13.7.0 universal-user-agent: 6.0.1 '@octokit/graphql@7.1.0': dependencies: '@octokit/request': 8.4.0 - '@octokit/types': 13.6.2 + '@octokit/types': 13.7.0 universal-user-agent: 6.0.1 '@octokit/openapi-types@20.0.0': {} - '@octokit/openapi-types@22.2.0': {} + '@octokit/openapi-types@23.0.1': {} '@octokit/plugin-paginate-rest@11.3.1(@octokit/core@5.2.0)': dependencies: '@octokit/core': 5.2.0 - '@octokit/types': 13.6.2 + '@octokit/types': 13.7.0 '@octokit/plugin-paginate-rest@9.2.1(@octokit/core@5.2.0)': dependencies: @@ -16342,11 +16583,11 @@ snapshots: '@octokit/plugin-rest-endpoint-methods@13.2.2(@octokit/core@5.2.0)': dependencies: '@octokit/core': 5.2.0 - '@octokit/types': 13.6.2 + '@octokit/types': 13.7.0 '@octokit/request-error@5.1.0': dependencies: - '@octokit/types': 13.6.2 + '@octokit/types': 13.7.0 deprecation: 2.3.1 once: 1.4.0 @@ -16354,7 +16595,7 @@ snapshots: dependencies: '@octokit/endpoint': 9.0.5 '@octokit/request-error': 5.1.0 - '@octokit/types': 13.6.2 + '@octokit/types': 13.7.0 universal-user-agent: 6.0.1 '@octokit/rest@20.1.1': @@ -16368,9 +16609,9 @@ snapshots: dependencies: '@octokit/openapi-types': 20.0.0 - '@octokit/types@13.6.2': + '@octokit/types@13.7.0': dependencies: - '@octokit/openapi-types': 22.2.0 + '@octokit/openapi-types': 23.0.1 '@paulirish/trace_engine@0.0.39': dependencies: @@ -16394,10 +16635,10 @@ snapshots: '@preact/signals-core': 1.8.0 preact: 10.22.1 - '@preact/signals@1.3.1(preact@10.25.1)': + '@preact/signals@1.3.1(preact@10.25.4)': dependencies: '@preact/signals-core': 1.8.0 - preact: 10.25.1 + preact: 10.25.4 '@puppeteer/browsers@2.3.0': dependencies: @@ -16406,47 +16647,47 @@ snapshots: progress: 2.0.3 proxy-agent: 6.5.0 semver: 7.6.3 - tar-fs: 3.0.6 + tar-fs: 3.0.7 unbzip2-stream: 1.4.3 yargs: 17.7.2 transitivePeerDependencies: - supports-color - '@puppeteer/browsers@2.6.0': + '@puppeteer/browsers@2.6.1': dependencies: debug: 4.4.0 extract-zip: 2.0.1 progress: 2.0.3 proxy-agent: 6.5.0 semver: 7.6.3 - tar-fs: 3.0.6 + tar-fs: 3.0.7 unbzip2-stream: 1.4.3 yargs: 17.7.2 transitivePeerDependencies: - supports-color - '@puppeteer/browsers@2.6.1': + '@puppeteer/browsers@2.7.0': dependencies: debug: 4.4.0 extract-zip: 2.0.1 progress: 2.0.3 proxy-agent: 6.5.0 semver: 7.6.3 - tar-fs: 3.0.6 + tar-fs: 3.0.7 unbzip2-stream: 1.4.3 yargs: 17.7.2 transitivePeerDependencies: - supports-color - '@radix-ui/primitive@1.1.0': {} + '@radix-ui/primitive@1.1.1': {} - '@radix-ui/react-compose-refs@1.1.0(@types/react@18.3.18)(react@18.3.1)': + '@radix-ui/react-compose-refs@1.1.1(@types/react@18.3.18)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: '@types/react': 18.3.18 - '@radix-ui/react-compose-refs@1.1.0(react@18.3.1)': + '@radix-ui/react-compose-refs@1.1.1(react@18.3.1)': dependencies: react: 18.3.1 @@ -16460,73 +16701,73 @@ snapshots: dependencies: react: 18.3.1 - '@radix-ui/react-dialog@1.1.2(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-dialog@1.1.4(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.0 - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.18)(react@18.3.1) + '@radix-ui/primitive': 1.1.1 + '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.18)(react@18.3.1) '@radix-ui/react-context': 1.1.1(@types/react@18.3.18)(react@18.3.1) - '@radix-ui/react-dismissable-layer': 1.1.1(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-focus-guards': 1.1.1(@types/react@18.3.18)(react@18.3.1) - '@radix-ui/react-focus-scope': 1.1.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-id': 1.1.0(@types/react@18.3.18)(react@18.3.1) - '@radix-ui/react-portal': 1.1.2(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-presence': 1.1.1(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.1.0(@types/react@18.3.18)(react@18.3.1) + '@radix-ui/react-portal': 1.1.3(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.2(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.1.1(@types/react@18.3.18)(react@18.3.1) '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.18)(react@18.3.1) aria-hidden: 1.2.4 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-remove-scroll: 2.6.0(@types/react@18.3.18)(react@18.3.1) + react-remove-scroll: 2.6.2(@types/react@18.3.18)(react@18.3.1) optionalDependencies: '@types/react': 18.3.18 '@types/react-dom': 18.3.5(@types/react@18.3.18) - '@radix-ui/react-dialog@1.1.2(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-dialog@1.1.4(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.0 - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.18)(react@18.3.1) + '@radix-ui/primitive': 1.1.1 + '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.18)(react@18.3.1) '@radix-ui/react-context': 1.1.1(@types/react@18.3.18)(react@18.3.1) - '@radix-ui/react-dismissable-layer': 1.1.1(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.3(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-focus-guards': 1.1.1(@types/react@18.3.18)(react@18.3.1) - '@radix-ui/react-focus-scope': 1.1.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-focus-scope': 1.1.1(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-id': 1.1.0(@types/react@18.3.18)(react@18.3.1) - '@radix-ui/react-portal': 1.1.2(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-presence': 1.1.1(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.1.0(@types/react@18.3.18)(react@18.3.1) + '@radix-ui/react-portal': 1.1.3(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.2(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.1(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.1.1(@types/react@18.3.18)(react@18.3.1) '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.18)(react@18.3.1) aria-hidden: 1.2.4 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-remove-scroll: 2.6.0(@types/react@18.3.18)(react@18.3.1) + react-remove-scroll: 2.6.2(@types/react@18.3.18)(react@18.3.1) optionalDependencies: '@types/react': 18.3.18 - '@radix-ui/react-dialog@1.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-dialog@1.1.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.0 - '@radix-ui/react-compose-refs': 1.1.0(react@18.3.1) + '@radix-ui/primitive': 1.1.1 + '@radix-ui/react-compose-refs': 1.1.1(react@18.3.1) '@radix-ui/react-context': 1.1.1(react@18.3.1) - '@radix-ui/react-dismissable-layer': 1.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-focus-guards': 1.1.1(react@18.3.1) - '@radix-ui/react-focus-scope': 1.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-focus-scope': 1.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-id': 1.1.0(react@18.3.1) - '@radix-ui/react-portal': 1.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-presence': 1.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.1.0(react@18.3.1) + '@radix-ui/react-portal': 1.1.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.1.1(react@18.3.1) '@radix-ui/react-use-controllable-state': 1.1.0(react@18.3.1) aria-hidden: 1.2.4 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-remove-scroll: 2.6.0(react@18.3.1) + react-remove-scroll: 2.6.2(react@18.3.1) - '@radix-ui/react-dismissable-layer@1.1.1(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-dismissable-layer@1.1.3(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.0 - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.18)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/primitive': 1.1.1 + '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.18)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.18)(react@18.3.1) '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@18.3.18)(react@18.3.1) react: 18.3.1 @@ -16535,11 +16776,11 @@ snapshots: '@types/react': 18.3.18 '@types/react-dom': 18.3.5(@types/react@18.3.18) - '@radix-ui/react-dismissable-layer@1.1.1(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-dismissable-layer@1.1.3(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.0 - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.18)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/primitive': 1.1.1 + '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.18)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.1(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.18)(react@18.3.1) '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@18.3.18)(react@18.3.1) react: 18.3.1 @@ -16547,11 +16788,11 @@ snapshots: optionalDependencies: '@types/react': 18.3.18 - '@radix-ui/react-dismissable-layer@1.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-dismissable-layer@1.1.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/primitive': 1.1.0 - '@radix-ui/react-compose-refs': 1.1.0(react@18.3.1) - '@radix-ui/react-primitive': 2.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/primitive': 1.1.1 + '@radix-ui/react-compose-refs': 1.1.1(react@18.3.1) + '@radix-ui/react-primitive': 2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-use-callback-ref': 1.1.0(react@18.3.1) '@radix-ui/react-use-escape-keydown': 1.1.0(react@18.3.1) react: 18.3.1 @@ -16567,10 +16808,10 @@ snapshots: dependencies: react: 18.3.1 - '@radix-ui/react-focus-scope@1.1.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-focus-scope@1.1.1(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.18)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.18)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.18)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -16578,20 +16819,20 @@ snapshots: '@types/react': 18.3.18 '@types/react-dom': 18.3.5(@types/react@18.3.18) - '@radix-ui/react-focus-scope@1.1.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-focus-scope@1.1.1(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.18)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.18)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.1(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.18)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.18 - '@radix-ui/react-focus-scope@1.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-focus-scope@1.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.0(react@18.3.1) - '@radix-ui/react-primitive': 2.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.1(react@18.3.1) + '@radix-ui/react-primitive': 2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-use-callback-ref': 1.1.0(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -16608,9 +16849,9 @@ snapshots: '@radix-ui/react-use-layout-effect': 1.1.0(react@18.3.1) react: 18.3.1 - '@radix-ui/react-portal@1.1.2(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-portal@1.1.3(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.18)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -16618,25 +16859,25 @@ snapshots: '@types/react': 18.3.18 '@types/react-dom': 18.3.5(@types/react@18.3.18) - '@radix-ui/react-portal@1.1.2(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-portal@1.1.3(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-primitive': 2.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.1(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.18)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.18 - '@radix-ui/react-portal@1.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-portal@1.1.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-primitive': 2.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-use-layout-effect': 1.1.0(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@radix-ui/react-presence@1.1.1(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-presence@1.1.2(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.18)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.18)(react@18.3.1) '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.18)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -16644,55 +16885,55 @@ snapshots: '@types/react': 18.3.18 '@types/react-dom': 18.3.5(@types/react@18.3.18) - '@radix-ui/react-presence@1.1.1(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-presence@1.1.2(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.18)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.18)(react@18.3.1) '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.18)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.18 - '@radix-ui/react-presence@1.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-presence@1.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.0(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.1(react@18.3.1) '@radix-ui/react-use-layout-effect': 1.1.0(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@radix-ui/react-primitive@2.0.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-primitive@2.0.1(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-slot': 1.1.0(@types/react@18.3.18)(react@18.3.1) + '@radix-ui/react-slot': 1.1.1(@types/react@18.3.18)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.18 '@types/react-dom': 18.3.5(@types/react@18.3.18) - '@radix-ui/react-primitive@2.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-primitive@2.0.1(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-slot': 1.1.0(@types/react@18.3.18)(react@18.3.1) + '@radix-ui/react-slot': 1.1.1(@types/react@18.3.18)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: '@types/react': 18.3.18 - '@radix-ui/react-primitive@2.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-primitive@2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-slot': 1.1.0(react@18.3.1) + '@radix-ui/react-slot': 1.1.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@radix-ui/react-slot@1.1.0(@types/react@18.3.18)(react@18.3.1)': + '@radix-ui/react-slot@1.1.1(@types/react@18.3.18)(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.18)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@18.3.18)(react@18.3.1) react: 18.3.1 optionalDependencies: '@types/react': 18.3.18 - '@radix-ui/react-slot@1.1.0(react@18.3.1)': + '@radix-ui/react-slot@1.1.1(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.0(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.1(react@18.3.1) react: 18.3.1 '@radix-ui/react-use-callback-ref@1.1.0(@types/react@18.3.18)(react@18.3.1)': @@ -16798,11 +17039,13 @@ snapshots: '@remix-run/router@1.21.0': {} + '@remote-ui/rpc@1.4.5': {} + '@rollup/plugin-babel@6.0.4(@babel/core@7.26.0)(rollup@3.29.5)': dependencies: '@babel/core': 7.26.0 '@babel/helper-module-imports': 7.25.9 - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) + '@rollup/pluginutils': 5.1.4(rollup@3.29.5) optionalDependencies: rollup: 3.29.5 transitivePeerDependencies: @@ -16810,34 +17053,34 @@ snapshots: '@rollup/plugin-commonjs@26.0.1(rollup@3.29.5)': dependencies: - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) + '@rollup/pluginutils': 5.1.4(rollup@3.29.5) commondir: 1.0.1 estree-walker: 2.0.2 - glob: 10.4.1 + glob: 10.4.5 is-reference: 1.2.1 - magic-string: 0.30.14 + magic-string: 0.30.17 optionalDependencies: rollup: 3.29.5 '@rollup/plugin-json@6.1.0(rollup@3.29.5)': dependencies: - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) + '@rollup/pluginutils': 5.1.4(rollup@3.29.5) optionalDependencies: rollup: 3.29.5 '@rollup/plugin-node-resolve@15.3.0(rollup@3.29.5)': dependencies: - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) + '@rollup/pluginutils': 5.1.4(rollup@3.29.5) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 - resolve: 1.22.8 + resolve: 1.22.10 optionalDependencies: rollup: 3.29.5 '@rollup/plugin-replace@5.0.2(rollup@3.29.5)': dependencies: - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) + '@rollup/pluginutils': 5.1.4(rollup@3.29.5) magic-string: 0.27.0 optionalDependencies: rollup: 3.29.5 @@ -16852,28 +17095,19 @@ snapshots: '@rollup/plugin-typescript@12.1.0(rollup@3.29.5)(tslib@2.5.0)(typescript@5.0.4)': dependencies: - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) - resolve: 1.22.8 + '@rollup/pluginutils': 5.1.4(rollup@3.29.5) + resolve: 1.22.10 typescript: 5.0.4 optionalDependencies: rollup: 3.29.5 tslib: 2.5.0 - '@rollup/plugin-typescript@12.1.0(rollup@3.29.5)(tslib@2.5.0)(typescript@5.7.2)': - dependencies: - '@rollup/pluginutils': 5.1.3(rollup@3.29.5) - resolve: 1.22.8 - typescript: 5.7.2 - optionalDependencies: - rollup: 3.29.5 - tslib: 2.5.0 - '@rollup/pluginutils@4.2.1': dependencies: estree-walker: 2.0.2 picomatch: 2.3.1 - '@rollup/pluginutils@5.1.3(rollup@3.29.5)': + '@rollup/pluginutils@5.1.4(rollup@3.29.5)': dependencies: '@types/estree': 1.0.6 estree-walker: 2.0.2 @@ -16917,11 +17151,11 @@ snapshots: '@sentry/types': 8.33.0 '@sentry/utils': 8.33.0 - '@sentry-internal/tracing@7.120.2': + '@sentry-internal/tracing@7.120.3': dependencies: - '@sentry/core': 7.120.2 - '@sentry/types': 7.120.2 - '@sentry/utils': 7.120.2 + '@sentry/core': 7.120.3 + '@sentry/types': 7.120.3 + '@sentry/utils': 7.120.3 '@sentry/browser@8.33.0': dependencies: @@ -16933,43 +17167,60 @@ snapshots: '@sentry/types': 8.33.0 '@sentry/utils': 8.33.0 - '@sentry/core@7.120.2': + '@sentry/core@7.120.3': dependencies: - '@sentry/types': 7.120.2 - '@sentry/utils': 7.120.2 + '@sentry/types': 7.120.3 + '@sentry/utils': 7.120.3 '@sentry/core@8.33.0': dependencies: '@sentry/types': 8.33.0 '@sentry/utils': 8.33.0 - '@sentry/integrations@7.120.2': + '@sentry/integrations@7.120.3': dependencies: - '@sentry/core': 7.120.2 - '@sentry/types': 7.120.2 - '@sentry/utils': 7.120.2 + '@sentry/core': 7.120.3 + '@sentry/types': 7.120.3 + '@sentry/utils': 7.120.3 localforage: 1.10.0 - '@sentry/node@7.120.2': + '@sentry/node@7.120.3': dependencies: - '@sentry-internal/tracing': 7.120.2 - '@sentry/core': 7.120.2 - '@sentry/integrations': 7.120.2 - '@sentry/types': 7.120.2 - '@sentry/utils': 7.120.2 + '@sentry-internal/tracing': 7.120.3 + '@sentry/core': 7.120.3 + '@sentry/integrations': 7.120.3 + '@sentry/types': 7.120.3 + '@sentry/utils': 7.120.3 - '@sentry/types@7.120.2': {} + '@sentry/types@7.120.3': {} '@sentry/types@8.33.0': {} - '@sentry/utils@7.120.2': + '@sentry/utils@7.120.3': dependencies: - '@sentry/types': 7.120.2 + '@sentry/types': 7.120.3 '@sentry/utils@8.33.0': dependencies: '@sentry/types': 8.33.0 + '@shopify/web-worker@6.4.0': + dependencies: + '@remote-ui/rpc': 1.4.5 + + '@shopify/web-worker@6.4.0(@babel/core@7.26.0)': + dependencies: + '@remote-ui/rpc': 1.4.5 + optionalDependencies: + '@babel/core': 7.26.0 + + '@shopify/web-worker@6.4.0(@babel/core@7.26.0)(webpack@5.94.0)': + dependencies: + '@remote-ui/rpc': 1.4.5 + optionalDependencies: + '@babel/core': 7.26.0 + webpack: 5.94.0(webpack-cli@4.9.1) + '@sideway/address@4.1.5': dependencies: '@hapi/hoek': 9.3.0 @@ -17019,7 +17270,7 @@ snapshots: '@slack/logger@4.0.0': dependencies: - '@types/node': 20.17.11 + '@types/node': 20.17.12 '@slack/types@2.14.0': {} @@ -17027,7 +17278,7 @@ snapshots: dependencies: '@slack/logger': 4.0.0 '@slack/types': 2.14.0 - '@types/node': 20.17.11 + '@types/node': 20.17.12 '@types/retry': 0.12.0 axios: 1.7.4 eventemitter3: 5.0.1 @@ -17044,7 +17295,7 @@ snapshots: dependencies: '@slack/logger': 4.0.0 '@slack/types': 2.14.0 - '@types/node': 20.17.11 + '@types/node': 20.17.12 '@types/retry': 0.12.0 axios: 1.7.4 eventemitter3: 5.0.1 @@ -17148,7 +17399,7 @@ snapshots: memoizerific: 1.11.3 storybook: 8.4.7 - '@storybook/addon-webpack5-compiler-babel@3.0.3(webpack@5.94.0)': + '@storybook/addon-webpack5-compiler-babel@3.0.5(webpack@5.94.0)': dependencies: '@babel/core': 7.26.0 babel-loader: 9.2.1(@babel/core@7.26.0)(webpack@5.94.0) @@ -17158,7 +17409,7 @@ snapshots: '@storybook/blocks@8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7)': dependencies: - '@storybook/csf': 0.1.12 + '@storybook/csf': 0.1.13 '@storybook/icons': 1.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) storybook: 8.4.7 ts-dedent: 2.2.0 @@ -17169,17 +17420,17 @@ snapshots: '@storybook/builder-webpack5@8.4.7(storybook@8.4.7)(typescript@5.0.4)(webpack-cli@4.9.1)': dependencies: '@storybook/core-webpack': 8.4.7(storybook@8.4.7) - '@types/node': 22.10.3 + '@types/node': 22.10.5 '@types/semver': 7.5.8 browser-assert: 1.2.1 case-sensitive-paths-webpack-plugin: 2.4.0 cjs-module-lexer: 1.4.1 constants-browserify: 1.0.0 css-loader: 6.11.0(webpack@5.94.0) - es-module-lexer: 1.5.4 + es-module-lexer: 1.6.0 fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.0.4)(webpack@5.94.0) html-webpack-plugin: 5.6.3(webpack@5.94.0) - magic-string: 0.30.14 + magic-string: 0.30.17 path-browserify: 1.0.1 process: 0.11.10 semver: 7.6.3 @@ -17221,13 +17472,13 @@ snapshots: '@storybook/core-webpack@8.4.7(storybook@8.4.7)': dependencies: - '@types/node': 22.10.3 + '@types/node': 22.10.5 storybook: 8.4.7 ts-dedent: 2.2.0 '@storybook/core@8.4.7': dependencies: - '@storybook/csf': 0.1.12 + '@storybook/csf': 0.1.13 better-opn: 3.0.2 browser-assert: 1.2.1 esbuild: 0.24.2 @@ -17246,13 +17497,13 @@ snapshots: '@storybook/csf-plugin@8.4.7(storybook@8.4.7)': dependencies: storybook: 8.4.7 - unplugin: 1.16.0 + unplugin: 1.16.1 '@storybook/csf-tools@8.4.7(storybook@8.4.7)': dependencies: storybook: 8.4.7 - '@storybook/csf@0.1.12': + '@storybook/csf@0.1.13': dependencies: type-fest: 2.19.0 @@ -17272,14 +17523,14 @@ snapshots: '@storybook/core-webpack': 8.4.7(storybook@8.4.7) '@storybook/react': 8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7)(typescript@5.0.4) '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.0.4)(webpack@5.94.0) - '@types/node': 22.10.3 + '@types/node': 22.10.5 '@types/semver': 7.5.8 find-up: 5.0.0 - magic-string: 0.30.14 + magic-string: 0.30.17 react: 18.3.1 react-docgen: 7.1.0 react-dom: 18.3.1(react@18.3.1) - resolve: 1.22.8 + resolve: 1.22.10 semver: 7.6.3 storybook: 8.4.7 tsconfig-paths: 4.2.0 @@ -17323,7 +17574,7 @@ snapshots: '@storybook/builder-webpack5': 8.4.7(storybook@8.4.7)(typescript@5.0.4)(webpack-cli@4.9.1) '@storybook/preset-react-webpack': 8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7)(typescript@5.0.4)(webpack-cli@4.9.1) '@storybook/react': 8.4.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.7)(typescript@5.0.4) - '@types/node': 22.10.3 + '@types/node': 22.10.5 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) storybook: 8.4.7 @@ -17368,7 +17619,7 @@ snapshots: '@storybook/source-loader@8.4.7(storybook@8.4.7)': dependencies: - '@storybook/csf': 0.1.12 + '@storybook/csf': 0.1.13 es-toolkit: 1.31.0 estraverse: 5.3.0 prettier: 3.4.2 @@ -17377,16 +17628,16 @@ snapshots: '@storybook/test-runner@0.19.1(storybook@8.4.7)': dependencies: '@babel/core': 7.26.0 - '@babel/generator': 7.26.3 + '@babel/generator': 7.26.5 '@babel/template': 7.25.9 - '@babel/types': 7.26.3 + '@babel/types': 7.26.5 '@jest/types': 29.6.3 '@storybook/core-common': 8.4.7(storybook@8.4.7) - '@storybook/csf': 0.1.12 + '@storybook/csf': 0.1.13 '@storybook/csf-tools': 8.4.7(storybook@8.4.7) '@storybook/preview-api': 8.4.7(storybook@8.4.7) - '@swc/core': 1.10.1 - '@swc/jest': 0.2.37(@swc/core@1.10.1) + '@swc/core': 1.10.7 + '@swc/jest': 0.2.37(@swc/core@1.10.7) expect-playwright: 0.8.0 jest: 29.7.0 jest-circus: 29.7.0 @@ -17468,7 +17719,7 @@ snapshots: '@svgr/hast-util-to-babel-ast@7.0.0': dependencies: - '@babel/types': 7.26.3 + '@babel/types': 7.26.5 entities: 4.5.0 '@svgr/plugin-jsx@7.0.0': @@ -17503,58 +17754,58 @@ snapshots: - supports-color - typescript - '@swc/core-darwin-arm64@1.10.1': + '@swc/core-darwin-arm64@1.10.7': optional: true - '@swc/core-darwin-x64@1.10.1': + '@swc/core-darwin-x64@1.10.7': optional: true - '@swc/core-linux-arm-gnueabihf@1.10.1': + '@swc/core-linux-arm-gnueabihf@1.10.7': optional: true - '@swc/core-linux-arm64-gnu@1.10.1': + '@swc/core-linux-arm64-gnu@1.10.7': optional: true - '@swc/core-linux-arm64-musl@1.10.1': + '@swc/core-linux-arm64-musl@1.10.7': optional: true - '@swc/core-linux-x64-gnu@1.10.1': + '@swc/core-linux-x64-gnu@1.10.7': optional: true - '@swc/core-linux-x64-musl@1.10.1': + '@swc/core-linux-x64-musl@1.10.7': optional: true - '@swc/core-win32-arm64-msvc@1.10.1': + '@swc/core-win32-arm64-msvc@1.10.7': optional: true - '@swc/core-win32-ia32-msvc@1.10.1': + '@swc/core-win32-ia32-msvc@1.10.7': optional: true - '@swc/core-win32-x64-msvc@1.10.1': + '@swc/core-win32-x64-msvc@1.10.7': optional: true - '@swc/core@1.10.1': + '@swc/core@1.10.7': dependencies: '@swc/counter': 0.1.3 '@swc/types': 0.1.17 optionalDependencies: - '@swc/core-darwin-arm64': 1.10.1 - '@swc/core-darwin-x64': 1.10.1 - '@swc/core-linux-arm-gnueabihf': 1.10.1 - '@swc/core-linux-arm64-gnu': 1.10.1 - '@swc/core-linux-arm64-musl': 1.10.1 - '@swc/core-linux-x64-gnu': 1.10.1 - '@swc/core-linux-x64-musl': 1.10.1 - '@swc/core-win32-arm64-msvc': 1.10.1 - '@swc/core-win32-ia32-msvc': 1.10.1 - '@swc/core-win32-x64-msvc': 1.10.1 + '@swc/core-darwin-arm64': 1.10.7 + '@swc/core-darwin-x64': 1.10.7 + '@swc/core-linux-arm-gnueabihf': 1.10.7 + '@swc/core-linux-arm64-gnu': 1.10.7 + '@swc/core-linux-arm64-musl': 1.10.7 + '@swc/core-linux-x64-gnu': 1.10.7 + '@swc/core-linux-x64-musl': 1.10.7 + '@swc/core-win32-arm64-msvc': 1.10.7 + '@swc/core-win32-ia32-msvc': 1.10.7 + '@swc/core-win32-x64-msvc': 1.10.7 '@swc/counter@0.1.3': {} - '@swc/jest@0.2.37(@swc/core@1.10.1)': + '@swc/jest@0.2.37(@swc/core@1.10.7)': dependencies: '@jest/create-cache-key-function': 29.7.0 - '@swc/core': 1.10.1 + '@swc/core': 1.10.7 '@swc/counter': 0.1.3 jsonc-parser: 3.3.1 @@ -17684,28 +17935,28 @@ snapshots: '@types/babel__core@7.20.5': dependencies: - '@babel/parser': 7.26.3 - '@babel/types': 7.26.3 + '@babel/parser': 7.26.5 + '@babel/types': 7.26.5 '@types/babel__generator': 7.6.8 '@types/babel__template': 7.4.4 '@types/babel__traverse': 7.20.6 '@types/babel__generator@7.6.8': dependencies: - '@babel/types': 7.26.3 + '@babel/types': 7.26.5 '@types/babel__template@7.4.4': dependencies: - '@babel/parser': 7.26.3 - '@babel/types': 7.26.3 + '@babel/parser': 7.26.5 + '@babel/types': 7.26.5 '@types/babel__traverse@7.20.6': dependencies: - '@babel/types': 7.26.3 + '@babel/types': 7.26.5 '@types/clean-css@4.2.11': dependencies: - '@types/node': 20.17.11 + '@types/node': 20.17.12 source-map: 0.6.1 '@types/css-tree@2.3.10': {} @@ -17755,11 +18006,11 @@ snapshots: '@types/glob@7.2.0': dependencies: '@types/minimatch': 5.1.2 - '@types/node': 20.17.11 + '@types/node': 20.17.12 '@types/graceful-fs@4.1.9': dependencies: - '@types/node': 20.17.11 + '@types/node': 20.17.12 '@types/gradient-parser@0.1.3': {} @@ -17795,7 +18046,7 @@ snapshots: '@types/jsdom@20.0.1': dependencies: - '@types/node': 20.17.11 + '@types/node': 20.17.12 '@types/tough-cookie': 4.0.5 parse5: 7.2.1 @@ -17807,9 +18058,9 @@ snapshots: '@types/lodash-es@4.17.12': dependencies: - '@types/lodash': 4.17.13 + '@types/lodash': 4.17.14 - '@types/lodash@4.17.13': {} + '@types/lodash@4.17.14': {} '@types/markdown-it@14.1.2': dependencies: @@ -17832,18 +18083,18 @@ snapshots: '@types/node-fetch@2.6.12': dependencies: - '@types/node': 20.17.11 + '@types/node': 20.17.12 form-data: 4.0.1 - '@types/node@18.19.67': + '@types/node@18.19.70': dependencies: undici-types: 5.26.5 - '@types/node@20.17.11': + '@types/node@20.17.12': dependencies: undici-types: 6.19.8 - '@types/node@22.10.3': + '@types/node@22.10.5': dependencies: undici-types: 6.20.0 @@ -17892,7 +18143,7 @@ snapshots: '@types/sax@1.2.7': dependencies: - '@types/node': 20.17.11 + '@types/node': 20.17.12 '@types/seed-random@2.2.4': {} @@ -17900,7 +18151,7 @@ snapshots: '@types/simple-peer@9.11.8': dependencies: - '@types/node': 20.17.11 + '@types/node': 20.17.12 '@types/sizzle@2.3.9': {} @@ -17918,16 +18169,16 @@ snapshots: '@types/wait-on@5.3.4': dependencies: - '@types/node': 20.17.11 + '@types/node': 20.17.12 '@types/wordpress__block-editor@11.5.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@types/react': 18.3.18 - '@types/wordpress__blocks': 12.5.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/keycodes': 4.14.0 + '@types/wordpress__blocks': 12.5.17(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/keycodes': 4.16.0 react-autosize-textarea: 7.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) transitivePeerDependencies: - '@emotion/is-prop-valid' @@ -17935,21 +18186,19 @@ snapshots: - react-dom - supports-color - '@types/wordpress__blocks@12.5.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@types/wordpress__blocks@12.5.17(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@types/react': 18.3.18 - '@types/wordpress__shortcode': 2.3.6 - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/shortcode': 4.16.0 transitivePeerDependencies: - '@emotion/is-prop-valid' - react - react-dom - supports-color - '@types/wordpress__shortcode@2.3.6': {} - '@types/yargs-parser@21.0.3': {} '@types/yargs@17.0.33': @@ -17958,7 +18207,7 @@ snapshots: '@types/yauzl@2.10.3': dependencies: - '@types/node': 20.17.11 + '@types/node': 20.17.12 optional: true '@typescript-eslint/eslint-plugin@8.17.0(@typescript-eslint/parser@8.17.0(eslint@9.16.0)(typescript@5.0.4))(eslint@9.16.0)(typescript@5.0.4)': @@ -17997,10 +18246,10 @@ snapshots: '@typescript-eslint/types': 8.17.0 '@typescript-eslint/visitor-keys': 8.17.0 - '@typescript-eslint/scope-manager@8.18.0': + '@typescript-eslint/scope-manager@8.19.1': dependencies: - '@typescript-eslint/types': 8.18.0 - '@typescript-eslint/visitor-keys': 8.18.0 + '@typescript-eslint/types': 8.19.1 + '@typescript-eslint/visitor-keys': 8.19.1 '@typescript-eslint/type-utils@8.17.0(eslint@9.16.0)(typescript@5.0.4)': dependencies: @@ -18016,14 +18265,14 @@ snapshots: '@typescript-eslint/types@8.17.0': {} - '@typescript-eslint/types@8.18.0': {} + '@typescript-eslint/types@8.19.1': {} '@typescript-eslint/typescript-estree@8.17.0(typescript@5.0.4)': dependencies: '@typescript-eslint/types': 8.17.0 '@typescript-eslint/visitor-keys': 8.17.0 debug: 4.4.0 - fast-glob: 3.3.2 + fast-glob: 3.3.3 is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.6.3 @@ -18033,16 +18282,16 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@8.18.0(typescript@5.0.4)': + '@typescript-eslint/typescript-estree@8.19.1(typescript@5.0.4)': dependencies: - '@typescript-eslint/types': 8.18.0 - '@typescript-eslint/visitor-keys': 8.18.0 + '@typescript-eslint/types': 8.19.1 + '@typescript-eslint/visitor-keys': 8.19.1 debug: 4.4.0 - fast-glob: 3.3.2 + fast-glob: 3.3.3 is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.6.3 - ts-api-utils: 1.4.3(typescript@5.0.4) + ts-api-utils: 2.0.0(typescript@5.0.4) typescript: 5.0.4 transitivePeerDependencies: - supports-color @@ -18059,12 +18308,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.18.0(eslint@9.16.0)(typescript@5.0.4)': + '@typescript-eslint/utils@8.19.1(eslint@9.16.0)(typescript@5.0.4)': dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.16.0) - '@typescript-eslint/scope-manager': 8.18.0 - '@typescript-eslint/types': 8.18.0 - '@typescript-eslint/typescript-estree': 8.18.0(typescript@5.0.4) + '@typescript-eslint/scope-manager': 8.19.1 + '@typescript-eslint/types': 8.19.1 + '@typescript-eslint/typescript-estree': 8.19.1(typescript@5.0.4) eslint: 9.16.0 typescript: 5.0.4 transitivePeerDependencies: @@ -18075,9 +18324,9 @@ snapshots: '@typescript-eslint/types': 8.17.0 eslint-visitor-keys: 4.2.0 - '@typescript-eslint/visitor-keys@8.18.0': + '@typescript-eslint/visitor-keys@8.19.1': dependencies: - '@typescript-eslint/types': 8.18.0 + '@typescript-eslint/types': 8.19.1 eslint-visitor-keys: 4.2.0 '@use-gesture/core@10.3.1': {} @@ -18150,12 +18399,18 @@ snapshots: prop-types: 15.8.1 react: 18.3.1 - '@visx/grid@3.12.0(react@18.3.1)': + '@visx/gradient@3.12.0(react@18.3.1)': dependencies: '@types/react': 18.3.18 - '@visx/curve': 3.12.0 - '@visx/group': 3.12.0(react@18.3.1) - '@visx/point': 3.12.0 + prop-types: 15.8.1 + react: 18.3.1 + + '@visx/grid@3.12.0(react@18.3.1)': + dependencies: + '@types/react': 18.3.18 + '@visx/curve': 3.12.0 + '@visx/group': 3.12.0(react@18.3.1) + '@visx/point': 3.12.0 '@visx/scale': 3.12.0 '@visx/shape': 3.12.0(react@18.3.1) classnames: 2.5.1 @@ -18194,7 +18449,7 @@ snapshots: '@visx/responsive@3.12.0(react@18.3.1)': dependencies: - '@types/lodash': 4.17.13 + '@types/lodash': 4.17.14 '@types/react': 18.3.18 lodash: 4.17.21 prop-types: 15.8.1 @@ -18208,7 +18463,7 @@ snapshots: dependencies: '@types/d3-path': 1.0.11 '@types/d3-shape': 1.3.12 - '@types/lodash': 4.17.13 + '@types/lodash': 4.17.14 '@types/react': 18.3.18 '@visx/curve': 3.12.0 '@visx/group': 3.12.0(react@18.3.1) @@ -18222,7 +18477,7 @@ snapshots: '@visx/text@3.12.0(react@18.3.1)': dependencies: - '@types/lodash': 4.17.13 + '@types/lodash': 4.17.14 '@types/react': 18.3.18 classnames: 2.5.1 lodash: 4.17.21 @@ -18274,7 +18529,7 @@ snapshots: '@visx/xychart@3.12.0(@react-spring/web@9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@react-spring/web': 9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@types/lodash': 4.17.13 + '@types/lodash': 4.17.14 '@types/react': 18.3.18 '@visx/annotation': 3.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@visx/axis': 3.12.0(react@18.3.1) @@ -18380,46 +18635,61 @@ snapshots: webpack: 5.94.0(webpack-cli@4.9.1) webpack-cli: 4.9.1(webpack@5.94.0) + '@webpack-cli/configtest@2.1.1(webpack-cli@5.1.4)(webpack@5.94.0)': + dependencies: + webpack: 5.94.0(webpack-cli@5.1.4) + webpack-cli: 5.1.4(webpack@5.94.0) + '@webpack-cli/info@1.5.0(webpack-cli@4.9.1)': dependencies: envinfo: 7.14.0 webpack-cli: 4.9.1(webpack@5.94.0) + '@webpack-cli/info@2.0.2(webpack-cli@5.1.4)(webpack@5.94.0)': + dependencies: + webpack: 5.94.0(webpack-cli@5.1.4) + webpack-cli: 5.1.4(webpack@5.94.0) + '@webpack-cli/serve@1.7.0(webpack-cli@4.9.1)': dependencies: webpack-cli: 4.9.1(webpack@5.94.0) - '@wordpress/a11y@4.13.0': + '@webpack-cli/serve@2.0.5(webpack-cli@5.1.4)(webpack@5.94.0)': + dependencies: + webpack: 5.94.0(webpack-cli@5.1.4) + webpack-cli: 5.1.4(webpack@5.94.0) + + '@wordpress/a11y@4.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/dom-ready': 4.14.0 - '@wordpress/i18n': 5.14.0 + '@wordpress/dom-ready': 4.16.0 + '@wordpress/i18n': 5.16.0 - '@wordpress/annotations@3.14.0(react@18.3.1)': + '@wordpress/annotations@3.16.0(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/hooks': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/rich-text': 7.14.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/hooks': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/rich-text': 7.16.0(react@18.3.1) react: 18.3.1 uuid: 9.0.1 - '@wordpress/api-fetch@7.14.0': + '@wordpress/api-fetch@7.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/i18n': 5.14.0 - '@wordpress/url': 4.14.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/url': 4.16.0 - '@wordpress/autop@4.13.0': + '@wordpress/autop@4.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/babel-plugin-import-jsx-pragma@5.14.0(@babel/core@7.26.0)': + '@wordpress/babel-plugin-import-jsx-pragma@5.16.0(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@wordpress/babel-preset-default@8.13.0': + '@wordpress/babel-preset-default@8.16.0': dependencies: '@babel/core': 7.26.0 '@babel/plugin-transform-react-jsx': 7.25.9(@babel/core@7.26.0) @@ -18427,59 +18697,60 @@ snapshots: '@babel/preset-env': 7.26.0(@babel/core@7.26.0) '@babel/preset-typescript': 7.26.0(@babel/core@7.26.0) '@babel/runtime': 7.26.0 - '@wordpress/browserslist-config': 6.14.0 - '@wordpress/warning': 3.13.0 + '@wordpress/browserslist-config': 6.16.0 + '@wordpress/warning': 3.16.0 browserslist: 4.24.3 core-js: 3.38.1 react: 18.3.1 transitivePeerDependencies: - supports-color - '@wordpress/base-styles@5.14.0': {} + '@wordpress/base-styles@5.16.0': {} '@wordpress/base-styles@5.2.0': {} - '@wordpress/blob@4.14.0': + '@wordpress/blob@4.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/block-editor@14.9.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/block-editor@14.11.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 '@emotion/react': 11.14.0(@types/react@18.3.18)(react@18.3.1) '@emotion/styled': 11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@18.3.1))(@types/react@18.3.18)(react@18.3.1) '@react-spring/web': 9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/a11y': 4.13.0 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/blob': 4.14.0 - '@wordpress/block-serialization-default-parser': 5.14.0 - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/commands': 1.13.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/date': 5.14.0 - '@wordpress/deprecated': 4.13.0 - '@wordpress/dom': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/escape-html': 3.14.0 - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/is-shallow-equal': 5.13.0 - '@wordpress/keyboard-shortcuts': 5.13.0(react@18.3.1) - '@wordpress/keycodes': 4.14.0 - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/preferences': 4.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/priority-queue': 3.13.0 - '@wordpress/private-apis': 1.14.0 - '@wordpress/rich-text': 7.14.0(react@18.3.1) - '@wordpress/style-engine': 2.13.0 - '@wordpress/token-list': 3.14.0 - '@wordpress/url': 4.14.0 - '@wordpress/warning': 3.13.0 - '@wordpress/wordcount': 4.14.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-serialization-default-parser': 5.16.0 + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/commands': 1.16.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/escape-html': 3.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/keycodes': 4.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/preferences': 4.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/priority-queue': 3.16.0 + '@wordpress/private-apis': 1.16.0 + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/style-engine': 2.16.0 + '@wordpress/token-list': 3.16.0 + '@wordpress/upload-media': 0.1.0(@babel/core@7.26.0)(@babel/runtime@7.25.7)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 + '@wordpress/wordcount': 4.16.0 change-case: 4.1.2 clsx: 2.1.1 colord: 2.9.3 @@ -18497,48 +18768,52 @@ snapshots: react-easy-crop: 5.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) remove-accents: 0.5.0 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - supports-color + - webpack + - webpack-virtual-modules - '@wordpress/block-editor@14.9.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/block-editor@14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 '@emotion/react': 11.14.0(@types/react@18.3.18)(react@18.3.1) '@emotion/styled': 11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@18.3.1))(@types/react@18.3.18)(react@18.3.1) '@react-spring/web': 9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/a11y': 4.13.0 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/blob': 4.14.0 - '@wordpress/block-serialization-default-parser': 5.14.0 - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/commands': 1.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/date': 5.14.0 - '@wordpress/deprecated': 4.13.0 - '@wordpress/dom': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/escape-html': 3.14.0 - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/is-shallow-equal': 5.13.0 - '@wordpress/keyboard-shortcuts': 5.13.0(react@18.3.1) - '@wordpress/keycodes': 4.14.0 - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/preferences': 4.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/priority-queue': 3.13.0 - '@wordpress/private-apis': 1.14.0 - '@wordpress/rich-text': 7.14.0(react@18.3.1) - '@wordpress/style-engine': 2.13.0 - '@wordpress/token-list': 3.14.0 - '@wordpress/url': 4.14.0 - '@wordpress/warning': 3.13.0 - '@wordpress/wordcount': 4.14.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-serialization-default-parser': 5.16.0 + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/commands': 1.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/escape-html': 3.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/keycodes': 4.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/preferences': 4.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/priority-queue': 3.16.0 + '@wordpress/private-apis': 1.16.0 + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/style-engine': 2.16.0 + '@wordpress/token-list': 3.16.0 + '@wordpress/upload-media': 0.1.0(@babel/core@7.26.0)(@babel/runtime@7.25.7)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 + '@wordpress/wordcount': 4.16.0 change-case: 4.1.2 clsx: 2.1.1 colord: 2.9.3 @@ -18556,48 +18831,178 @@ snapshots: react-easy-crop: 5.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) remove-accents: 0.5.0 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - supports-color + - webpack + - webpack-virtual-modules - '@wordpress/block-editor@14.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/block-editor@14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': + dependencies: + '@babel/runtime': 7.25.7 + '@emotion/react': 11.14.0(@types/react@18.3.18)(react@18.3.1) + '@emotion/styled': 11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@18.3.1))(@types/react@18.3.18)(react@18.3.1) + '@react-spring/web': 9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/a11y': 4.16.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-serialization-default-parser': 5.16.0 + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/commands': 1.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/escape-html': 3.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/keycodes': 4.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/preferences': 4.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/priority-queue': 3.16.0 + '@wordpress/private-apis': 1.16.0 + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/style-engine': 2.16.0 + '@wordpress/token-list': 3.16.0 + '@wordpress/upload-media': 0.1.0(@babel/core@7.26.0)(@babel/runtime@7.25.7)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 + '@wordpress/wordcount': 4.16.0 + change-case: 4.1.2 + clsx: 2.1.1 + colord: 2.9.3 + deepmerge: 4.3.1 + diff: 4.0.2 + fast-deep-equal: 3.1.3 + memize: 2.1.0 + parsel-js: 1.2.1 + postcss: 8.4.47 + postcss-prefix-selector: 1.16.1(postcss@8.4.47) + postcss-urlrebase: 1.4.0(postcss@8.4.47) + react: 18.3.1 + react-autosize-textarea: 7.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-dom: 18.3.1(react@18.3.1) + react-easy-crop: 5.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + remove-accents: 0.5.0 + transitivePeerDependencies: + - '@babel/core' + - '@emotion/is-prop-valid' + - '@types/react' + - '@types/react-dom' + - supports-color + - webpack + - webpack-virtual-modules + + '@wordpress/block-editor@14.11.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 '@emotion/react': 11.14.0(react@18.3.1) '@emotion/styled': 11.14.0(@emotion/react@11.14.0(react@18.3.1))(react@18.3.1) '@react-spring/web': 9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/a11y': 4.13.0 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/blob': 4.14.0 - '@wordpress/block-serialization-default-parser': 5.14.0 - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/commands': 1.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/date': 5.14.0 - '@wordpress/deprecated': 4.13.0 - '@wordpress/dom': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/escape-html': 3.14.0 - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/is-shallow-equal': 5.13.0 - '@wordpress/keyboard-shortcuts': 5.13.0(react@18.3.1) - '@wordpress/keycodes': 4.14.0 - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/preferences': 4.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/priority-queue': 3.13.0 - '@wordpress/private-apis': 1.14.0 - '@wordpress/rich-text': 7.14.0(react@18.3.1) - '@wordpress/style-engine': 2.13.0 - '@wordpress/token-list': 3.14.0 - '@wordpress/url': 4.14.0 - '@wordpress/warning': 3.13.0 - '@wordpress/wordcount': 4.14.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-serialization-default-parser': 5.16.0 + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/commands': 1.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/escape-html': 3.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/keycodes': 4.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/preferences': 4.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/priority-queue': 3.16.0 + '@wordpress/private-apis': 1.16.0 + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/style-engine': 2.16.0 + '@wordpress/token-list': 3.16.0 + '@wordpress/upload-media': 0.1.0(@babel/core@7.26.0)(@babel/runtime@7.25.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 + '@wordpress/wordcount': 4.16.0 + change-case: 4.1.2 + clsx: 2.1.1 + colord: 2.9.3 + deepmerge: 4.3.1 + diff: 4.0.2 + fast-deep-equal: 3.1.3 + memize: 2.1.0 + parsel-js: 1.2.1 + postcss: 8.4.47 + postcss-prefix-selector: 1.16.1(postcss@8.4.47) + postcss-urlrebase: 1.4.0(postcss@8.4.47) + react: 18.3.1 + react-autosize-textarea: 7.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-dom: 18.3.1(react@18.3.1) + react-easy-crop: 5.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + remove-accents: 0.5.0 + transitivePeerDependencies: + - '@babel/core' + - '@emotion/is-prop-valid' + - '@types/react' + - '@types/react-dom' + - supports-color + - webpack + - webpack-virtual-modules + + '@wordpress/block-editor@14.11.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@babel/runtime': 7.25.7 + '@emotion/react': 11.14.0(@types/react@18.3.18)(react@18.3.1) + '@emotion/styled': 11.14.0(@emotion/react@11.14.0(@types/react@18.3.18)(react@18.3.1))(@types/react@18.3.18)(react@18.3.1) + '@react-spring/web': 9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/a11y': 4.16.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-serialization-default-parser': 5.16.0 + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/commands': 1.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/escape-html': 3.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/keycodes': 4.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/preferences': 4.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/priority-queue': 3.16.0 + '@wordpress/private-apis': 1.16.0 + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/style-engine': 2.16.0 + '@wordpress/token-list': 3.16.0 + '@wordpress/upload-media': 0.1.0(@babel/runtime@7.25.7)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 + '@wordpress/wordcount': 4.16.0 change-case: 4.1.2 clsx: 2.1.1 colord: 2.9.3 @@ -18615,47 +19020,50 @@ snapshots: react-easy-crop: 5.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) remove-accents: 0.5.0 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - supports-color + - webpack + - webpack-virtual-modules - '@wordpress/block-library@9.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/block-library@9.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/autop': 4.13.0 - '@wordpress/blob': 4.14.0 - '@wordpress/block-editor': 14.9.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-data': 7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/date': 5.14.0 - '@wordpress/deprecated': 4.13.0 - '@wordpress/dom': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/escape-html': 3.14.0 - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/interactivity': 6.13.0 - '@wordpress/interactivity-router': 2.13.0 - '@wordpress/keyboard-shortcuts': 5.13.0(react@18.3.1) - '@wordpress/keycodes': 4.14.0 - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/patterns': 2.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/primitives': 4.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/reusable-blocks': 5.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/rich-text': 7.14.0(react@18.3.1) - '@wordpress/server-side-render': 5.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/url': 4.14.0 - '@wordpress/viewport': 6.14.0(react@18.3.1) - '@wordpress/wordcount': 4.14.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/autop': 4.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/escape-html': 3.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/interactivity': 6.16.0 + '@wordpress/interactivity-router': 2.16.0 + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/keycodes': 4.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/patterns': 2.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/primitives': 4.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/reusable-blocks': 5.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/server-side-render': 5.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/url': 4.16.0 + '@wordpress/viewport': 6.16.0(react@18.3.1) + '@wordpress/wordcount': 4.16.0 change-case: 4.1.2 clsx: 2.1.1 colord: 2.9.3 @@ -18668,49 +19076,52 @@ snapshots: remove-accents: 0.5.0 uuid: 9.0.1 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/block-library@9.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/block-library@9.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/autop': 4.13.0 - '@wordpress/blob': 4.14.0 - '@wordpress/block-editor': 14.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-data': 7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/date': 5.14.0 - '@wordpress/deprecated': 4.13.0 - '@wordpress/dom': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/escape-html': 3.14.0 - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/interactivity': 6.13.0 - '@wordpress/interactivity-router': 2.13.0 - '@wordpress/keyboard-shortcuts': 5.13.0(react@18.3.1) - '@wordpress/keycodes': 4.14.0 - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/patterns': 2.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/primitives': 4.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/reusable-blocks': 5.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/rich-text': 7.14.0(react@18.3.1) - '@wordpress/server-side-render': 5.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/url': 4.14.0 - '@wordpress/viewport': 6.14.0(react@18.3.1) - '@wordpress/wordcount': 4.14.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/autop': 4.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/escape-html': 3.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/interactivity': 6.16.0 + '@wordpress/interactivity-router': 2.16.0 + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/keycodes': 4.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/patterns': 2.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/primitives': 4.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/reusable-blocks': 5.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/server-side-render': 5.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/url': 4.16.0 + '@wordpress/viewport': 6.16.0(react@18.3.1) + '@wordpress/wordcount': 4.16.0 change-case: 4.1.2 clsx: 2.1.1 colord: 2.9.3 @@ -18723,35 +19134,96 @@ snapshots: remove-accents: 0.5.0 uuid: 9.0.1 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/block-serialization-default-parser@5.14.0': + '@wordpress/block-library@9.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/a11y': 4.16.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/autop': 4.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/escape-html': 3.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/interactivity': 6.16.0 + '@wordpress/interactivity-router': 2.16.0 + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/keycodes': 4.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/patterns': 2.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/primitives': 4.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/reusable-blocks': 5.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/server-side-render': 5.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/url': 4.16.0 + '@wordpress/viewport': 6.16.0(react@18.3.1) + '@wordpress/wordcount': 4.16.0 + change-case: 4.1.2 + clsx: 2.1.1 + colord: 2.9.3 + escape-html: 1.0.3 + fast-average-color: 9.4.0 + fast-deep-equal: 3.1.3 + memize: 2.1.0 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + remove-accents: 0.5.0 + uuid: 9.0.1 + transitivePeerDependencies: + - '@babel/core' + - '@emotion/is-prop-valid' + - '@types/react' + - '@types/react-dom' + - bufferutil + - supports-color + - utf-8-validate + - webpack + - webpack-virtual-modules + + '@wordpress/block-serialization-default-parser@5.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/blocks@14.3.0(react@18.3.1)': + '@wordpress/blocks@14.5.0(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/autop': 4.13.0 - '@wordpress/blob': 4.14.0 - '@wordpress/block-serialization-default-parser': 5.14.0 - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/dom': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/is-shallow-equal': 5.13.0 - '@wordpress/private-apis': 1.14.0 - '@wordpress/rich-text': 7.14.0(react@18.3.1) - '@wordpress/shortcode': 4.13.0 - '@wordpress/warning': 3.13.0 + '@wordpress/autop': 4.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-serialization-default-parser': 5.16.0 + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/private-apis': 1.16.0 + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/shortcode': 4.16.0 + '@wordpress/warning': 3.16.0 change-case: 4.1.2 colord: 2.9.3 fast-deep-equal: 3.1.3 @@ -18765,18 +19237,18 @@ snapshots: simple-html-tokenizer: 0.5.11 uuid: 9.0.1 - '@wordpress/browserslist-config@6.14.0': {} + '@wordpress/browserslist-config@6.16.0': {} - '@wordpress/commands@1.13.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/commands@1.16.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.13.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 clsx: 2.1.1 cmdk: 1.0.4(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 @@ -18787,16 +19259,16 @@ snapshots: - '@types/react-dom' - supports-color - '@wordpress/commands@1.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/commands@1.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.13.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 clsx: 2.1.1 cmdk: 1.0.4(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 @@ -18807,16 +19279,16 @@ snapshots: - '@types/react-dom' - supports-color - '@wordpress/commands@1.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/commands@1.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/components': 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.13.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 + '@wordpress/components': 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 clsx: 2.1.1 cmdk: 1.0.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 @@ -18827,7 +19299,7 @@ snapshots: - '@types/react-dom' - supports-color - '@wordpress/components@29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/components@29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@ariakit/react': 0.4.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@babel/runtime': 7.25.7 @@ -18841,23 +19313,23 @@ snapshots: '@types/gradient-parser': 0.1.3 '@types/highlight-words-core': 1.2.1 '@use-gesture/react': 10.3.1(react@18.3.1) - '@wordpress/a11y': 4.13.0 - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/date': 5.14.0 - '@wordpress/deprecated': 4.13.0 - '@wordpress/dom': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/escape-html': 3.14.0 - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/is-shallow-equal': 5.13.0 - '@wordpress/keycodes': 4.14.0 - '@wordpress/primitives': 4.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/rich-text': 7.14.0(react@18.3.1) - '@wordpress/warning': 3.13.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/escape-html': 3.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/keycodes': 4.16.0 + '@wordpress/primitives': 4.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/warning': 3.16.0 change-case: 4.1.2 clsx: 2.1.1 colord: 2.9.3 @@ -18881,7 +19353,7 @@ snapshots: - '@types/react' - supports-color - '@wordpress/components@29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/components@29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@ariakit/react': 0.4.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@babel/runtime': 7.25.7 @@ -18895,23 +19367,23 @@ snapshots: '@types/gradient-parser': 0.1.3 '@types/highlight-words-core': 1.2.1 '@use-gesture/react': 10.3.1(react@18.3.1) - '@wordpress/a11y': 4.13.0 - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/date': 5.14.0 - '@wordpress/deprecated': 4.13.0 - '@wordpress/dom': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/escape-html': 3.14.0 - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/is-shallow-equal': 5.13.0 - '@wordpress/keycodes': 4.14.0 - '@wordpress/primitives': 4.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/rich-text': 7.14.0(react@18.3.1) - '@wordpress/warning': 3.13.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/escape-html': 3.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/keycodes': 4.16.0 + '@wordpress/primitives': 4.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/warning': 3.16.0 change-case: 4.1.2 clsx: 2.1.1 colord: 2.9.3 @@ -18935,111 +19407,183 @@ snapshots: - '@types/react' - supports-color - '@wordpress/compose@7.14.0(react@18.2.0)': + '@wordpress/compose@7.16.0(react@18.2.0)': dependencies: '@babel/runtime': 7.25.7 '@types/mousetrap': 1.6.15 - '@wordpress/deprecated': 4.13.0 - '@wordpress/dom': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/is-shallow-equal': 5.13.0 - '@wordpress/keycodes': 4.14.0 - '@wordpress/priority-queue': 3.13.0 - '@wordpress/undo-manager': 1.13.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/keycodes': 4.16.0 + '@wordpress/priority-queue': 3.16.0 + '@wordpress/undo-manager': 1.16.0 change-case: 4.1.2 clipboard: 2.0.11 mousetrap: 1.6.5 react: 18.2.0 use-memo-one: 1.1.3(react@18.2.0) - '@wordpress/compose@7.14.0(react@18.3.1)': + '@wordpress/compose@7.16.0(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 '@types/mousetrap': 1.6.15 - '@wordpress/deprecated': 4.13.0 - '@wordpress/dom': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/is-shallow-equal': 5.13.0 - '@wordpress/keycodes': 4.14.0 - '@wordpress/priority-queue': 3.13.0 - '@wordpress/undo-manager': 1.13.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/keycodes': 4.16.0 + '@wordpress/priority-queue': 3.16.0 + '@wordpress/undo-manager': 1.16.0 change-case: 4.1.2 clipboard: 2.0.11 mousetrap: 1.6.5 react: 18.3.1 use-memo-one: 1.1.3(react@18.3.1) - '@wordpress/core-commands@1.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/core-commands@1.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/commands': 1.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/router': 1.16.0(react@18.3.1) + '@wordpress/url': 4.16.0 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + transitivePeerDependencies: + - '@babel/core' + - '@emotion/is-prop-valid' + - '@types/react' + - '@types/react-dom' + - bufferutil + - supports-color + - utf-8-validate + - webpack + - webpack-virtual-modules + + '@wordpress/core-commands@1.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/commands': 1.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/router': 1.16.0(react@18.3.1) + '@wordpress/url': 4.16.0 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + transitivePeerDependencies: + - '@babel/core' + - '@emotion/is-prop-valid' + - '@types/react' + - '@types/react-dom' + - bufferutil + - supports-color + - utf-8-validate + - webpack + - webpack-virtual-modules + + '@wordpress/core-commands@1.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/block-editor': 14.9.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/commands': 1.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-data': 7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/router': 1.14.0(react@18.3.1) - '@wordpress/url': 4.14.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/commands': 1.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/router': 1.16.0(react@18.3.1) + '@wordpress/url': 4.16.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/core-commands@1.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/core-data@7.16.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/block-editor': 14.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/commands': 1.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-data': 7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/router': 1.14.0(react@18.3.1) - '@wordpress/url': 4.14.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/private-apis': 1.16.0 + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/sync': 1.16.0 + '@wordpress/undo-manager': 1.16.0 + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 + change-case: 4.1.2 + equivalent-key-map: 0.2.2 + fast-deep-equal: 3.1.3 + memize: 2.1.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + uuid: 9.0.1 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/core-data@7.14.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/core-data@7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/block-editor': 14.9.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/is-shallow-equal': 5.13.0 - '@wordpress/private-apis': 1.14.0 - '@wordpress/rich-text': 7.14.0(react@18.3.1) - '@wordpress/sync': 1.13.0 - '@wordpress/undo-manager': 1.13.0 - '@wordpress/url': 4.14.0 - '@wordpress/warning': 3.13.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/private-apis': 1.16.0 + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/sync': 1.16.0 + '@wordpress/undo-manager': 1.16.0 + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 change-case: 4.1.2 equivalent-key-map: 0.2.2 fast-deep-equal: 3.1.3 @@ -19048,32 +19592,35 @@ snapshots: react-dom: 18.3.1(react@18.3.1) uuid: 9.0.1 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/core-data@7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/core-data@7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/block-editor': 14.9.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/is-shallow-equal': 5.13.0 - '@wordpress/private-apis': 1.14.0 - '@wordpress/rich-text': 7.14.0(react@18.3.1) - '@wordpress/sync': 1.13.0 - '@wordpress/undo-manager': 1.13.0 - '@wordpress/url': 4.14.0 - '@wordpress/warning': 3.13.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/private-apis': 1.16.0 + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/sync': 1.16.0 + '@wordpress/undo-manager': 1.16.0 + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 change-case: 4.1.2 equivalent-key-map: 0.2.2 fast-deep-equal: 3.1.3 @@ -19082,32 +19629,35 @@ snapshots: react-dom: 18.3.1(react@18.3.1) uuid: 9.0.1 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/core-data@7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/core-data@7.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/block-editor': 14.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/is-shallow-equal': 5.13.0 - '@wordpress/private-apis': 1.14.0 - '@wordpress/rich-text': 7.14.0(react@18.3.1) - '@wordpress/sync': 1.13.0 - '@wordpress/undo-manager': 1.13.0 - '@wordpress/url': 4.14.0 - '@wordpress/warning': 3.13.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/private-apis': 1.16.0 + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/sync': 1.16.0 + '@wordpress/undo-manager': 1.16.0 + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 change-case: 4.1.2 equivalent-key-map: 0.2.2 fast-deep-equal: 3.1.3 @@ -19116,23 +19666,26 @@ snapshots: react-dom: 18.3.1(react@18.3.1) uuid: 9.0.1 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/data@10.14.0(react@18.2.0)': + '@wordpress/data@10.16.0(react@18.2.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/compose': 7.14.0(react@18.2.0) - '@wordpress/deprecated': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/is-shallow-equal': 5.13.0 - '@wordpress/priority-queue': 3.13.0 - '@wordpress/private-apis': 1.14.0 - '@wordpress/redux-routine': 5.13.0(redux@5.0.1) + '@wordpress/compose': 7.16.0(react@18.2.0) + '@wordpress/deprecated': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/priority-queue': 3.16.0 + '@wordpress/private-apis': 1.16.0 + '@wordpress/redux-routine': 5.16.0(redux@5.0.1) deepmerge: 4.3.1 equivalent-key-map: 0.2.2 is-plain-object: 5.0.0 @@ -19142,16 +19695,16 @@ snapshots: rememo: 4.0.2 use-memo-one: 1.1.3(react@18.2.0) - '@wordpress/data@10.14.0(react@18.3.1)': + '@wordpress/data@10.16.0(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/is-shallow-equal': 5.13.0 - '@wordpress/priority-queue': 3.13.0 - '@wordpress/private-apis': 1.14.0 - '@wordpress/redux-routine': 5.13.0(redux@5.0.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/is-shallow-equal': 5.16.0 + '@wordpress/priority-queue': 3.16.0 + '@wordpress/private-apis': 1.16.0 + '@wordpress/redux-routine': 5.16.0(redux@5.0.1) deepmerge: 4.3.1 equivalent-key-map: 0.2.2 is-plain-object: 5.0.0 @@ -19161,19 +19714,19 @@ snapshots: rememo: 4.0.2 use-memo-one: 1.1.3(react@18.3.1) - '@wordpress/dataviews@4.10.0(patch_hash=of6mtpeubmoicukrgy5ohupf6a)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/dataviews@4.12.0(patch_hash=uzs6glhpt3sq2uqjvqzk6vk2ze)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@ariakit/react': 0.4.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@babel/runtime': 7.25.7 - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/primitives': 4.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/warning': 3.13.0 + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/primitives': 4.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/warning': 3.16.0 clsx: 2.1.1 react: 18.3.1 remove-accents: 0.5.0 @@ -19183,19 +19736,19 @@ snapshots: - react-dom - supports-color - '@wordpress/dataviews@4.10.0(patch_hash=of6mtpeubmoicukrgy5ohupf6a)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/dataviews@4.12.0(patch_hash=uzs6glhpt3sq2uqjvqzk6vk2ze)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@ariakit/react': 0.4.15(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@babel/runtime': 7.25.7 - '@wordpress/components': 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/primitives': 4.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/warning': 3.13.0 + '@wordpress/components': 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/primitives': 4.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/warning': 3.16.0 clsx: 2.1.1 react: 18.3.1 remove-accents: 0.5.0 @@ -19205,33 +19758,33 @@ snapshots: - react-dom - supports-color - '@wordpress/date@5.14.0': + '@wordpress/date@5.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/deprecated': 4.13.0 + '@wordpress/deprecated': 4.16.0 moment: 2.30.1 moment-timezone: 0.5.46 - '@wordpress/dependency-extraction-webpack-plugin@6.14.0(webpack@5.94.0)': + '@wordpress/dependency-extraction-webpack-plugin@6.16.0(webpack@5.94.0)': dependencies: json2php: 0.0.7 webpack: 5.94.0(webpack-cli@4.9.1) - '@wordpress/deprecated@4.13.0': + '@wordpress/deprecated@4.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/hooks': 4.14.0 + '@wordpress/hooks': 4.16.0 - '@wordpress/dom-ready@4.14.0': + '@wordpress/dom-ready@4.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/dom@4.13.0': + '@wordpress/dom@4.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/deprecated': 4.13.0 + '@wordpress/deprecated': 4.16.0 - '@wordpress/e2e-test-utils-playwright@1.14.0(@playwright/test@1.48.2)': + '@wordpress/e2e-test-utils-playwright@1.16.0(@playwright/test@1.48.2)': dependencies: '@playwright/test': 1.48.2 change-case: 4.1.2 @@ -19245,132 +19798,185 @@ snapshots: - supports-color - utf-8-validate - '@wordpress/edit-post@8.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/edit-post@8.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/block-editor': 14.9.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/block-library': 9.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/commands': 1.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-commands': 1.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/core-data': 7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/dom': 4.13.0 - '@wordpress/editor': 14.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.13.0(react@18.3.1) - '@wordpress/keycodes': 4.14.0 - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/plugins': 7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/preferences': 4.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/url': 4.14.0 - '@wordpress/viewport': 6.14.0(react@18.3.1) - '@wordpress/warning': 3.13.0 - '@wordpress/widgets': 4.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/a11y': 4.16.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/block-library': 9.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/commands': 1.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-commands': 1.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/editor': 14.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/keycodes': 4.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/plugins': 7.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 + '@wordpress/viewport': 6.16.0(react@18.3.1) + '@wordpress/warning': 3.16.0 + '@wordpress/widgets': 4.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) clsx: 2.1.1 memize: 2.1.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/edit-post@8.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/edit-post@8.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/block-editor': 14.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/block-library': 9.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/commands': 1.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-commands': 1.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/core-data': 7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/dom': 4.13.0 - '@wordpress/editor': 14.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.13.0(react@18.3.1) - '@wordpress/keycodes': 4.14.0 - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/plugins': 7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/preferences': 4.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/url': 4.14.0 - '@wordpress/viewport': 6.14.0(react@18.3.1) - '@wordpress/warning': 3.13.0 - '@wordpress/widgets': 4.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/a11y': 4.16.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/block-library': 9.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/commands': 1.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-commands': 1.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/editor': 14.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/element': 6.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/keycodes': 4.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/plugins': 7.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 + '@wordpress/viewport': 6.16.0(react@18.3.1) + '@wordpress/warning': 3.16.0 + '@wordpress/widgets': 4.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) clsx: 2.1.1 memize: 2.1.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/editor@14.14.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/edit-post@8.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/blob': 4.14.0 - '@wordpress/block-editor': 14.9.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/commands': 1.13.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-data': 7.14.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/dataviews': 4.10.0(patch_hash=of6mtpeubmoicukrgy5ohupf6a)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/date': 5.14.0 - '@wordpress/deprecated': 4.13.0 - '@wordpress/dom': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/fields': 0.5.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/interface': 8.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.13.0(react@18.3.1) - '@wordpress/keycodes': 4.14.0 - '@wordpress/media-utils': 5.14.0 - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/patterns': 2.13.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/plugins': 7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/preferences': 4.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/reusable-blocks': 5.13.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/rich-text': 7.14.0(react@18.3.1) - '@wordpress/server-side-render': 5.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/url': 4.14.0 - '@wordpress/warning': 3.13.0 - '@wordpress/wordcount': 4.14.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/block-library': 9.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/commands': 1.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-commands': 1.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/editor': 14.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/element': 6.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/keycodes': 4.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/plugins': 7.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 + '@wordpress/viewport': 6.16.0(react@18.3.1) + '@wordpress/warning': 3.16.0 + '@wordpress/widgets': 4.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + clsx: 2.1.1 + memize: 2.1.0 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + transitivePeerDependencies: + - '@babel/core' + - '@emotion/is-prop-valid' + - '@types/react' + - '@types/react-dom' + - bufferutil + - supports-color + - utf-8-validate + - webpack + - webpack-virtual-modules + + '@wordpress/editor@14.16.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/a11y': 4.16.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/commands': 1.16.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/dataviews': 4.12.0(patch_hash=uzs6glhpt3sq2uqjvqzk6vk2ze)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/fields': 0.8.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/interface': 9.1.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/keycodes': 4.16.0 + '@wordpress/media-utils': 5.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/patterns': 2.16.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/plugins': 7.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/reusable-blocks': 5.16.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/server-side-render': 5.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 + '@wordpress/wordcount': 4.16.0 change-case: 4.1.2 client-zip: 2.4.6 clsx: 2.1.1 @@ -19385,51 +19991,54 @@ snapshots: remove-accents: 0.5.0 uuid: 9.0.1 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/editor@14.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/editor@14.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/blob': 4.14.0 - '@wordpress/block-editor': 14.9.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/commands': 1.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-data': 7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/dataviews': 4.10.0(patch_hash=of6mtpeubmoicukrgy5ohupf6a)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/date': 5.14.0 - '@wordpress/deprecated': 4.13.0 - '@wordpress/dom': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/fields': 0.5.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/interface': 8.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.13.0(react@18.3.1) - '@wordpress/keycodes': 4.14.0 - '@wordpress/media-utils': 5.14.0 - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/patterns': 2.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/plugins': 7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/preferences': 4.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/reusable-blocks': 5.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/rich-text': 7.14.0(react@18.3.1) - '@wordpress/server-side-render': 5.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/url': 4.14.0 - '@wordpress/warning': 3.13.0 - '@wordpress/wordcount': 4.14.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/commands': 1.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/dataviews': 4.12.0(patch_hash=uzs6glhpt3sq2uqjvqzk6vk2ze)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/fields': 0.8.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/interface': 9.1.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/keycodes': 4.16.0 + '@wordpress/media-utils': 5.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/patterns': 2.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/plugins': 7.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/reusable-blocks': 5.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/server-side-render': 5.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 + '@wordpress/wordcount': 4.16.0 change-case: 4.1.2 client-zip: 2.4.6 clsx: 2.1.1 @@ -19444,51 +20053,54 @@ snapshots: remove-accents: 0.5.0 uuid: 9.0.1 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/editor@14.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/editor@14.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/blob': 4.14.0 - '@wordpress/block-editor': 14.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/commands': 1.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-data': 7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/dataviews': 4.10.0(patch_hash=of6mtpeubmoicukrgy5ohupf6a)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/date': 5.14.0 - '@wordpress/deprecated': 4.13.0 - '@wordpress/dom': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/fields': 0.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/interface': 8.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/keyboard-shortcuts': 5.13.0(react@18.3.1) - '@wordpress/keycodes': 4.14.0 - '@wordpress/media-utils': 5.14.0 - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/patterns': 2.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/plugins': 7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/preferences': 4.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/reusable-blocks': 5.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/rich-text': 7.14.0(react@18.3.1) - '@wordpress/server-side-render': 5.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/url': 4.14.0 - '@wordpress/warning': 3.13.0 - '@wordpress/wordcount': 4.14.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/commands': 1.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/dataviews': 4.12.0(patch_hash=uzs6glhpt3sq2uqjvqzk6vk2ze)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/fields': 0.8.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/interface': 9.1.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/keycodes': 4.16.0 + '@wordpress/media-utils': 5.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/patterns': 2.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/plugins': 7.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/reusable-blocks': 5.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/server-side-render': 5.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 + '@wordpress/wordcount': 4.16.0 change-case: 4.1.2 client-zip: 2.4.6 clsx: 2.1.1 @@ -19503,34 +20115,99 @@ snapshots: remove-accents: 0.5.0 uuid: 9.0.1 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules + + '@wordpress/editor@14.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/a11y': 4.16.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/commands': 1.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/components': 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/dataviews': 4.12.0(patch_hash=uzs6glhpt3sq2uqjvqzk6vk2ze)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/deprecated': 4.16.0 + '@wordpress/dom': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/fields': 0.8.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/interface': 9.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/keyboard-shortcuts': 5.16.0(react@18.3.1) + '@wordpress/keycodes': 4.16.0 + '@wordpress/media-utils': 5.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/patterns': 2.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/plugins': 7.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/reusable-blocks': 5.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/server-side-render': 5.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 + '@wordpress/wordcount': 4.16.0 + change-case: 4.1.2 + client-zip: 2.4.6 + clsx: 2.1.1 + date-fns: 3.6.0 + deepmerge: 4.3.1 + fast-deep-equal: 3.1.3 + is-plain-object: 5.0.0 + memize: 2.1.0 + react: 18.3.1 + react-autosize-textarea: 7.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-dom: 18.3.1(react@18.3.1) + remove-accents: 0.5.0 + uuid: 9.0.1 + transitivePeerDependencies: + - '@babel/core' + - '@emotion/is-prop-valid' + - '@types/react' + - '@types/react-dom' + - bufferutil + - supports-color + - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/element@6.14.0': + '@wordpress/element@6.16.0': dependencies: '@babel/runtime': 7.25.7 '@types/react': 18.3.18 '@types/react-dom': 18.3.5(@types/react@18.3.18) - '@wordpress/escape-html': 3.14.0 + '@wordpress/escape-html': 3.16.0 change-case: 4.1.2 is-plain-object: 5.0.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@wordpress/escape-html@3.14.0': + '@wordpress/escape-html@3.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/eslint-plugin@22.0.0(@babel/core@7.26.0)(eslint-config-prettier@9.1.0(eslint@9.16.0))(eslint-plugin-import@2.31.0)(eslint-plugin-jest@28.9.0(eslint@9.16.0)(jest@29.7.0)(typescript@5.0.4))(eslint-plugin-jsdoc@50.6.0(eslint@9.16.0))(eslint-plugin-jsx-a11y@6.10.2(eslint@9.16.0))(eslint-plugin-playwright@2.1.0(eslint@9.16.0))(eslint-plugin-prettier@5.2.1(eslint-config-prettier@9.1.0(eslint@9.16.0))(eslint@9.16.0)(wp-prettier@3.0.3))(eslint-plugin-react-hooks@5.1.0(eslint@9.16.0))(eslint-plugin-react@7.37.2(eslint@9.16.0))(eslint@9.16.0)(typescript@5.0.4)(wp-prettier@3.0.3)': + '@wordpress/eslint-plugin@22.2.0(@babel/core@7.26.0)(eslint-config-prettier@9.1.0(eslint@9.16.0))(eslint-plugin-import@2.31.0)(eslint-plugin-jest@28.9.0(eslint@9.16.0)(jest@29.7.0)(typescript@5.0.4))(eslint-plugin-jsdoc@50.6.0(eslint@9.16.0))(eslint-plugin-jsx-a11y@6.10.2(eslint@9.16.0))(eslint-plugin-playwright@2.1.0(eslint@9.16.0))(eslint-plugin-prettier@5.2.1(eslint-config-prettier@9.1.0(eslint@9.16.0))(eslint@9.16.0)(wp-prettier@3.0.3))(eslint-plugin-react-hooks@5.1.0(eslint@9.16.0))(eslint-plugin-react@7.37.2(eslint@9.16.0))(eslint@9.16.0)(typescript@5.0.4)(wp-prettier@3.0.3)': dependencies: '@babel/core': 7.26.0 '@babel/eslint-parser': 7.25.9(@babel/core@7.26.0)(eslint@9.16.0) - '@wordpress/babel-preset-default': 8.13.0 - '@wordpress/prettier-config': 4.13.0(wp-prettier@3.0.3) + '@wordpress/babel-preset-default': 8.16.0 + '@wordpress/prettier-config': 4.16.0(wp-prettier@3.0.3) cosmiconfig: 7.1.0 eslint: 9.16.0 eslint-config-prettier: 9.1.0(eslint@9.16.0) @@ -19550,37 +20227,82 @@ snapshots: transitivePeerDependencies: - supports-color - '@wordpress/fields@0.5.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/fields@0.8.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/dataviews': 4.12.0(patch_hash=uzs6glhpt3sq2uqjvqzk6vk2ze)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/media-utils': 5.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/patterns': 2.16.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/primitives': 4.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/router': 1.16.0(react@18.3.1) + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 + change-case: 4.1.2 + client-zip: 2.4.6 + clsx: 2.1.1 + react: 18.3.1 + remove-accents: 0.5.0 + transitivePeerDependencies: + - '@babel/core' + - '@emotion/is-prop-valid' + - '@types/react' + - '@types/react-dom' + - bufferutil + - react-dom + - supports-color + - utf-8-validate + - webpack + - webpack-virtual-modules + + '@wordpress/fields@0.8.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/blob': 4.14.0 - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-data': 7.14.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/dataviews': 4.10.0(patch_hash=of6mtpeubmoicukrgy5ohupf6a)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/date': 5.14.0 - '@wordpress/element': 6.14.0 - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/media-utils': 5.14.0 - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/patterns': 2.13.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/primitives': 4.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/router': 1.14.0(react@18.3.1) - '@wordpress/url': 4.14.0 - '@wordpress/warning': 3.13.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/dataviews': 4.12.0(patch_hash=uzs6glhpt3sq2uqjvqzk6vk2ze)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/media-utils': 5.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/patterns': 2.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/primitives': 4.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/router': 1.16.0(react@18.3.1) + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 change-case: 4.1.2 client-zip: 2.4.6 clsx: 2.1.1 react: 18.3.1 remove-accents: 0.5.0 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' @@ -19588,38 +20310,42 @@ snapshots: - react-dom - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/fields@0.5.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/fields@0.8.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/blob': 4.14.0 - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-data': 7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/dataviews': 4.10.0(patch_hash=of6mtpeubmoicukrgy5ohupf6a)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/date': 5.14.0 - '@wordpress/element': 6.14.0 - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/media-utils': 5.14.0 - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/patterns': 2.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/primitives': 4.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/router': 1.14.0(react@18.3.1) - '@wordpress/url': 4.14.0 - '@wordpress/warning': 3.13.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/dataviews': 4.12.0(patch_hash=uzs6glhpt3sq2uqjvqzk6vk2ze)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/media-utils': 5.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/patterns': 2.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/primitives': 4.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/router': 1.16.0(react@18.3.1) + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 change-case: 4.1.2 client-zip: 2.4.6 clsx: 2.1.1 react: 18.3.1 remove-accents: 0.5.0 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' @@ -19627,38 +20353,42 @@ snapshots: - react-dom - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/fields@0.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/fields@0.8.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/blob': 4.14.0 - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-data': 7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/dataviews': 4.10.0(patch_hash=of6mtpeubmoicukrgy5ohupf6a)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/date': 5.14.0 - '@wordpress/element': 6.14.0 - '@wordpress/hooks': 4.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/media-utils': 5.14.0 - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/patterns': 2.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/primitives': 4.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/router': 1.14.0(react@18.3.1) - '@wordpress/url': 4.14.0 - '@wordpress/warning': 3.13.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/dataviews': 4.12.0(patch_hash=uzs6glhpt3sq2uqjvqzk6vk2ze)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/date': 5.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/media-utils': 5.16.0 + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/patterns': 2.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/primitives': 4.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/router': 1.16.0(react@18.3.1) + '@wordpress/url': 4.16.0 + '@wordpress/warning': 3.16.0 change-case: 4.1.2 client-zip: 2.4.6 clsx: 2.1.1 react: 18.3.1 remove-accents: 0.5.0 transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' @@ -19666,78 +20396,83 @@ snapshots: - react-dom - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/format-library@5.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/format-library@5.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/block-editor': 14.9.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/rich-text': 7.14.0(react@18.3.1) - '@wordpress/url': 4.14.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/rich-text': 7.16.0(react@18.3.1) + '@wordpress/url': 4.16.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - supports-color + - webpack + - webpack-virtual-modules - '@wordpress/hooks@4.14.0': + '@wordpress/hooks@4.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/html-entities@4.14.0': + '@wordpress/html-entities@4.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/i18n@5.14.0': + '@wordpress/i18n@5.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/hooks': 4.14.0 + '@wordpress/hooks': 4.16.0 gettext-parser: 1.4.0 memize: 2.1.0 sprintf-js: 1.1.2 tannin: 1.2.0 - '@wordpress/icons@10.14.0(react@18.3.1)': + '@wordpress/icons@10.16.0(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/element': 6.14.0 - '@wordpress/primitives': 4.14.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/primitives': 4.16.0(react@18.3.1) react: 18.3.1 - '@wordpress/interactivity-router@2.13.0': + '@wordpress/interactivity-router@2.16.0': dependencies: - '@wordpress/a11y': 4.13.0 - '@wordpress/interactivity': 6.13.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/interactivity': 6.16.0 - '@wordpress/interactivity@6.13.0': + '@wordpress/interactivity@6.16.0': dependencies: - '@preact/signals': 1.3.1(preact@10.25.1) - preact: 10.25.1 + '@preact/signals': 1.3.1(preact@10.25.4) + preact: 10.25.4 - '@wordpress/interface@8.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/interface@9.1.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/plugins': 7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/preferences': 4.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/viewport': 6.14.0(react@18.3.1) + '@wordpress/a11y': 4.16.0 + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/plugins': 7.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/viewport': 6.16.0(react@18.3.1) clsx: 2.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19746,20 +20481,20 @@ snapshots: - '@types/react' - supports-color - '@wordpress/interface@8.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/interface@9.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/components': 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/plugins': 7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/preferences': 4.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/viewport': 6.14.0(react@18.3.1) + '@wordpress/a11y': 4.16.0 + '@wordpress/components': 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/plugins': 7.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/preferences': 4.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/viewport': 6.16.0(react@18.3.1) clsx: 2.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19768,136 +20503,175 @@ snapshots: - '@types/react' - supports-color - '@wordpress/is-shallow-equal@5.13.0': + '@wordpress/is-shallow-equal@5.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/jest-console@8.14.0(jest@29.7.0)': + '@wordpress/jest-console@8.16.0(jest@29.7.0)': dependencies: '@babel/runtime': 7.25.7 jest: 29.7.0 jest-matcher-utils: 29.7.0 - '@wordpress/keyboard-shortcuts@5.13.0(react@18.3.1)': + '@wordpress/keyboard-shortcuts@5.16.0(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/keycodes': 4.14.0 + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/keycodes': 4.16.0 react: 18.3.1 - '@wordpress/keycodes@4.14.0': + '@wordpress/keycodes@4.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/i18n': 5.14.0 + '@wordpress/i18n': 5.16.0 - '@wordpress/media-utils@5.14.0': + '@wordpress/media-utils@5.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/blob': 4.14.0 - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/private-apis': 1.14.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/private-apis': 1.16.0 - '@wordpress/notices@5.14.0(react@18.3.1)': + '@wordpress/notices@5.16.0(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/data': 10.14.0(react@18.3.1) + '@wordpress/a11y': 4.16.0 + '@wordpress/data': 10.16.0(react@18.3.1) react: 18.3.1 - '@wordpress/patterns@2.13.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/patterns@2.16.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/block-editor': 14.9.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-data': 7.14.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/url': 4.14.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/patterns@2.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/patterns@2.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/block-editor': 14.9.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-data': 7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/url': 4.14.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/patterns@2.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/patterns@2.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/block-editor': 14.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-data': 7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/html-entities': 4.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/url': 4.14.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/plugins@7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/patterns@2.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/hooks': 4.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/is-shallow-equal': 5.13.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/html-entities': 4.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + transitivePeerDependencies: + - '@babel/core' + - '@emotion/is-prop-valid' + - '@types/react' + - '@types/react-dom' + - bufferutil + - supports-color + - utf-8-validate + - webpack + - webpack-virtual-modules + + '@wordpress/plugins@7.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.16.0 memize: 2.1.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19906,16 +20680,16 @@ snapshots: - '@types/react' - supports-color - '@wordpress/plugins@7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/plugins@7.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/components': 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/hooks': 4.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/is-shallow-equal': 5.13.0 + '@wordpress/components': 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/hooks': 4.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/is-shallow-equal': 5.16.0 memize: 2.1.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19924,24 +20698,24 @@ snapshots: - '@types/react' - supports-color - '@wordpress/postcss-plugins-preset@5.14.0(postcss@8.4.47)': + '@wordpress/postcss-plugins-preset@5.16.0(postcss@8.4.47)': dependencies: - '@wordpress/base-styles': 5.14.0 + '@wordpress/base-styles': 5.16.0 autoprefixer: 10.4.20(postcss@8.4.47) postcss: 8.4.47 - '@wordpress/preferences@4.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/preferences@4.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 clsx: 2.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19950,18 +20724,18 @@ snapshots: - '@types/react' - supports-color - '@wordpress/preferences@4.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/preferences@4.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/components': 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/components': 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 clsx: 2.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -19970,27 +20744,27 @@ snapshots: - '@types/react' - supports-color - '@wordpress/prettier-config@4.13.0(wp-prettier@3.0.3)': + '@wordpress/prettier-config@4.16.0(wp-prettier@3.0.3)': dependencies: prettier: wp-prettier@3.0.3 - '@wordpress/primitives@4.14.0(react@18.3.1)': + '@wordpress/primitives@4.16.0(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/element': 6.14.0 + '@wordpress/element': 6.16.0 clsx: 2.1.1 react: 18.3.1 - '@wordpress/priority-queue@3.13.0': + '@wordpress/priority-queue@3.16.0': dependencies: '@babel/runtime': 7.25.7 requestidlecallback: 0.3.0 - '@wordpress/private-apis@1.14.0': + '@wordpress/private-apis@1.16.0': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/redux-routine@5.13.0(redux@5.0.1)': + '@wordpress/redux-routine@5.16.0(redux@5.0.1)': dependencies: '@babel/runtime': 7.25.7 is-plain-object: 5.0.0 @@ -19998,115 +20772,151 @@ snapshots: redux: 5.0.1 rungen: 0.3.2 - '@wordpress/reusable-blocks@5.13.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/reusable-blocks@5.16.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/block-editor': 14.9.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/core-data': 7.14.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/url': 4.14.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules + + '@wordpress/reusable-blocks@5.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + transitivePeerDependencies: + - '@babel/core' + - '@emotion/is-prop-valid' + - '@types/react' + - '@types/react-dom' + - bufferutil + - supports-color + - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/reusable-blocks@5.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/reusable-blocks@5.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/block-editor': 14.9.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/core-data': 7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/url': 4.14.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/reusable-blocks@5.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/reusable-blocks@5.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/block-editor': 14.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/core-data': 7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/notices': 5.14.0(react@18.3.1) - '@wordpress/private-apis': 1.14.0 - '@wordpress/url': 4.14.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/notices': 5.16.0(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/rich-text@7.14.0(react@18.3.1)': + '@wordpress/rich-text@7.16.0(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/a11y': 4.13.0 - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/escape-html': 3.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/keycodes': 4.14.0 + '@wordpress/a11y': 4.16.0 + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/escape-html': 3.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/keycodes': 4.16.0 memize: 2.1.0 react: 18.3.1 - '@wordpress/router@1.14.0(react@18.3.1)': + '@wordpress/router@1.16.0(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/private-apis': 1.14.0 - '@wordpress/url': 4.14.0 + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 history: 5.3.0 react: 18.3.1 route-recognizer: 0.3.4 - '@wordpress/server-side-render@5.13.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/server-side-render@5.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/url': 4.14.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/url': 4.16.0 fast-deep-equal: 3.1.3 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -20115,18 +20925,18 @@ snapshots: - '@types/react' - supports-color - '@wordpress/server-side-render@5.13.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/server-side-render@5.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/deprecated': 4.13.0 - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/url': 4.14.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/deprecated': 4.16.0 + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/url': 4.16.0 fast-deep-equal: 3.1.3 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -20135,108 +20945,238 @@ snapshots: - '@types/react' - supports-color - '@wordpress/shortcode@4.13.0': + '@wordpress/shortcode@4.16.0': dependencies: '@babel/runtime': 7.25.7 memize: 2.1.0 - '@wordpress/style-engine@2.13.0': + '@wordpress/style-engine@2.16.0': dependencies: '@babel/runtime': 7.25.7 change-case: 4.1.2 - '@wordpress/sync@1.13.0': + '@wordpress/sync@1.16.0': dependencies: '@babel/runtime': 7.25.7 '@types/simple-peer': 9.11.8 - '@wordpress/url': 4.14.0 + '@wordpress/url': 4.16.0 import-locals: 2.0.0 lib0: 0.2.99 simple-peer: 9.11.1 - y-indexeddb: 9.0.12(yjs@13.6.20) - y-protocols: 1.0.6(yjs@13.6.20) - y-webrtc: 10.2.6(yjs@13.6.20) - yjs: 13.6.20 + y-indexeddb: 9.0.12(yjs@13.6.22) + y-protocols: 1.0.6(yjs@13.6.22) + y-webrtc: 10.2.6(yjs@13.6.22) + yjs: 13.6.22 transitivePeerDependencies: - bufferutil - supports-color - utf-8-validate - '@wordpress/token-list@3.14.0': + '@wordpress/token-list@3.16.0': + dependencies: + '@babel/runtime': 7.25.7 + + '@wordpress/undo-manager@1.16.0': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/is-shallow-equal': 5.16.0 + + '@wordpress/upload-media@0.1.0(@babel/core@7.26.0)(@babel/runtime@7.25.7)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@babel/runtime': 7.25.7 + '@shopify/web-worker': 6.4.0(@babel/core@7.26.0) + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/preferences': 4.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 + react: 18.3.1 + uuid: 9.0.1 + transitivePeerDependencies: + - '@babel/core' + - '@emotion/is-prop-valid' + - '@types/react' + - react-dom + - supports-color + - webpack + - webpack-virtual-modules + + '@wordpress/upload-media@0.1.0(@babel/core@7.26.0)(@babel/runtime@7.25.7)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 + '@shopify/web-worker': 6.4.0(@babel/core@7.26.0)(webpack@5.94.0) + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/preferences': 4.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 + react: 18.3.1 + uuid: 9.0.1 + transitivePeerDependencies: + - '@babel/core' + - '@emotion/is-prop-valid' + - '@types/react' + - react-dom + - supports-color + - webpack + - webpack-virtual-modules - '@wordpress/undo-manager@1.13.0': + '@wordpress/upload-media@0.1.0(@babel/core@7.26.0)(@babel/runtime@7.25.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/is-shallow-equal': 5.13.0 + '@shopify/web-worker': 6.4.0(@babel/core@7.26.0)(webpack@5.94.0) + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/preferences': 4.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 + react: 18.3.1 + uuid: 9.0.1 + transitivePeerDependencies: + - '@babel/core' + - '@emotion/is-prop-valid' + - '@types/react' + - react-dom + - supports-color + - webpack + - webpack-virtual-modules + + '@wordpress/upload-media@0.1.0(@babel/runtime@7.25.7)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@babel/runtime': 7.25.7 + '@shopify/web-worker': 6.4.0 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/blob': 4.16.0 + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/preferences': 4.16.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/private-apis': 1.16.0 + '@wordpress/url': 4.16.0 + react: 18.3.1 + uuid: 9.0.1 + transitivePeerDependencies: + - '@babel/core' + - '@emotion/is-prop-valid' + - '@types/react' + - react-dom + - supports-color + - webpack + - webpack-virtual-modules - '@wordpress/url@4.14.0': + '@wordpress/url@4.16.0': dependencies: '@babel/runtime': 7.25.7 remove-accents: 0.5.0 - '@wordpress/viewport@6.14.0(react@18.3.1)': + '@wordpress/viewport@6.16.0(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 react: 18.3.1 - '@wordpress/warning@3.13.0': {} + '@wordpress/warning@3.16.0': {} - '@wordpress/widgets@4.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/widgets@4.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/block-editor': 14.9.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-data': 7.14.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/notices': 5.14.0(react@18.3.1) + '@wordpress/api-fetch': 7.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/notices': 5.16.0(react@18.3.1) clsx: 2.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules + + '@wordpress/widgets@4.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': + dependencies: + '@babel/runtime': 7.25.7 + '@wordpress/api-fetch': 7.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/notices': 5.16.0(react@18.3.1) + clsx: 2.1.1 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + transitivePeerDependencies: + - '@babel/core' + - '@emotion/is-prop-valid' + - '@types/react' + - '@types/react-dom' + - bufferutil + - supports-color + - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/widgets@4.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@wordpress/widgets@4.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0)': dependencies: '@babel/runtime': 7.25.7 - '@wordpress/api-fetch': 7.14.0 - '@wordpress/block-editor': 14.9.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/blocks': 14.3.0(react@18.3.1) - '@wordpress/components': 29.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/compose': 7.14.0(react@18.3.1) - '@wordpress/core-data': 7.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@wordpress/data': 10.14.0(react@18.3.1) - '@wordpress/element': 6.14.0 - '@wordpress/i18n': 5.14.0 - '@wordpress/icons': 10.14.0(react@18.3.1) - '@wordpress/notices': 5.14.0(react@18.3.1) + '@wordpress/api-fetch': 7.16.0 + '@wordpress/block-editor': 14.11.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/blocks': 14.5.0(react@18.3.1) + '@wordpress/components': 29.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@wordpress/compose': 7.16.0(react@18.3.1) + '@wordpress/core-data': 7.16.0(@babel/core@7.26.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(webpack@5.94.0) + '@wordpress/data': 10.16.0(react@18.3.1) + '@wordpress/element': 6.16.0 + '@wordpress/i18n': 5.16.0 + '@wordpress/icons': 10.16.0(react@18.3.1) + '@wordpress/notices': 5.16.0(react@18.3.1) clsx: 2.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: + - '@babel/core' - '@emotion/is-prop-valid' - '@types/react' - '@types/react-dom' - bufferutil - supports-color - utf-8-validate + - webpack + - webpack-virtual-modules - '@wordpress/wordcount@4.14.0': + '@wordpress/wordcount@4.16.0': dependencies: '@babel/runtime': 7.25.7 @@ -20284,7 +21224,7 @@ snapshots: agent-base@7.1.3: {} - agentkeepalive@4.5.0: + agentkeepalive@4.6.0: dependencies: humanize-ms: 1.2.1 @@ -20316,7 +21256,7 @@ snapshots: ajv@8.17.1: dependencies: fast-deep-equal: 3.1.3 - fast-uri: 3.0.3 + fast-uri: 3.0.5 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 @@ -20401,10 +21341,10 @@ snapshots: aria-query@5.3.2: {} - array-buffer-byte-length@1.0.1: + array-buffer-byte-length@1.0.2: dependencies: - call-bind: 1.0.8 - is-array-buffer: 3.0.4 + call-bound: 1.0.3 + is-array-buffer: 3.0.5 array-flatten@1.1.1: {} @@ -20412,18 +21352,24 @@ snapshots: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.5 + es-abstract: 1.23.9 es-object-atoms: 1.0.0 - get-intrinsic: 1.2.5 - is-string: 1.1.0 + get-intrinsic: 1.2.7 + is-string: 1.1.1 + + array-union@1.0.2: + dependencies: + array-uniq: 1.0.3 array-union@2.1.0: {} + array-uniq@1.0.3: {} + array.prototype.findlast@1.2.5: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.5 + es-abstract: 1.23.9 es-errors: 1.3.0 es-object-atoms: 1.0.0 es-shim-unscopables: 1.0.2 @@ -20432,43 +21378,42 @@ snapshots: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.5 + es-abstract: 1.23.9 es-errors: 1.3.0 es-object-atoms: 1.0.0 es-shim-unscopables: 1.0.2 - array.prototype.flat@1.3.2: + array.prototype.flat@1.3.3: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.5 + es-abstract: 1.23.9 es-shim-unscopables: 1.0.2 - array.prototype.flatmap@1.3.2: + array.prototype.flatmap@1.3.3: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.5 + es-abstract: 1.23.9 es-shim-unscopables: 1.0.2 array.prototype.tosorted@1.1.4: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.5 + es-abstract: 1.23.9 es-errors: 1.3.0 es-shim-unscopables: 1.0.2 - arraybuffer.prototype.slice@1.0.3: + arraybuffer.prototype.slice@1.0.4: dependencies: - array-buffer-byte-length: 1.0.1 + array-buffer-byte-length: 1.0.2 call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.5 + es-abstract: 1.23.9 es-errors: 1.3.0 - get-intrinsic: 1.2.5 - is-array-buffer: 3.0.4 - is-shared-array-buffer: 1.0.3 + get-intrinsic: 1.2.7 + is-array-buffer: 3.0.5 ast-types-flow@0.0.8: {} @@ -20487,12 +21432,12 @@ snapshots: atomically@2.0.3: dependencies: stubborn-fs: 1.2.5 - when-exit: 2.1.3 + when-exit: 2.1.4 autoprefixer@10.4.20(postcss@8.4.47): dependencies: browserslist: 4.24.3 - caniuse-lite: 1.0.30001690 + caniuse-lite: 1.0.30001692 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 @@ -20570,14 +21515,14 @@ snapshots: dependencies: '@babel/core': 7.26.0 find-cache-dir: 3.3.2 - schema-utils: 4.2.0 - webpack: 5.94.0(webpack-cli@4.9.1) + schema-utils: 4.3.0 + webpack: 5.94.0(webpack-cli@5.1.4) babel-loader@9.2.1(@babel/core@7.26.0)(webpack@5.94.0): dependencies: '@babel/core': 7.26.0 find-cache-dir: 4.0.0 - schema-utils: 4.2.0 + schema-utils: 4.3.0 webpack: 5.94.0(webpack-cli@4.9.1) babel-plugin-inline-json-import@0.3.2: @@ -20586,7 +21531,7 @@ snapshots: babel-plugin-istanbul@6.1.1: dependencies: - '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 '@istanbuljs/load-nyc-config': 1.1.0 '@istanbuljs/schema': 0.1.3 istanbul-lib-instrument: 5.2.1 @@ -20597,7 +21542,7 @@ snapshots: babel-plugin-jest-hoist@29.6.3: dependencies: '@babel/template': 7.25.9 - '@babel/types': 7.26.3 + '@babel/types': 7.26.5 '@types/babel__core': 7.20.5 '@types/babel__traverse': 7.20.6 @@ -20605,7 +21550,7 @@ snapshots: dependencies: '@babel/runtime': 7.26.0 cosmiconfig: 7.1.0 - resolve: 1.22.8 + resolve: 1.22.10 babel-plugin-polyfill-corejs2@0.4.12(@babel/core@7.26.0): dependencies: @@ -20620,7 +21565,7 @@ snapshots: dependencies: '@babel/core': 7.26.0 '@babel/helper-define-polyfill-provider': 0.6.3(@babel/core@7.26.0) - core-js-compat: 3.39.0 + core-js-compat: 3.40.0 transitivePeerDependencies: - supports-color @@ -20677,14 +21622,14 @@ snapshots: balanced-match@1.0.2: {} - bare-events@2.5.0: + bare-events@2.5.4: optional: true bare-fs@2.3.5: dependencies: - bare-events: 2.5.0 + bare-events: 2.5.4 bare-path: 2.1.3 - bare-stream: 2.4.2 + bare-stream: 2.6.1 optional: true bare-os@2.4.4: @@ -20695,9 +21640,9 @@ snapshots: bare-os: 2.4.4 optional: true - bare-stream@2.4.2: + bare-stream@2.6.1: dependencies: - streamx: 2.21.0 + streamx: 2.21.1 optional: true base64-js@1.5.1: {} @@ -20754,10 +21699,10 @@ snapshots: browserslist@4.24.3: dependencies: - caniuse-lite: 1.0.30001690 - electron-to-chromium: 1.5.76 + caniuse-lite: 1.0.30001692 + electron-to-chromium: 1.5.80 node-releases: 2.0.19 - update-browserslist-db: 1.1.1(browserslist@4.24.3) + update-browserslist-db: 1.1.2(browserslist@4.24.3) bs-logger@0.2.6: dependencies: @@ -20805,9 +21750,14 @@ snapshots: dependencies: call-bind-apply-helpers: 1.0.1 es-define-property: 1.0.1 - get-intrinsic: 1.2.5 + get-intrinsic: 1.2.7 set-function-length: 1.2.2 + call-bound@1.0.3: + dependencies: + call-bind-apply-helpers: 1.0.1 + get-intrinsic: 1.2.7 + callsite@1.0.0: {} callsites@3.1.0: {} @@ -20828,11 +21778,11 @@ snapshots: caniuse-api@3.0.0: dependencies: browserslist: 4.24.3 - caniuse-lite: 1.0.30001690 + caniuse-lite: 1.0.30001692 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 - caniuse-lite@1.0.30001690: {} + caniuse-lite@1.0.30001692: {} capital-case@1.0.4: dependencies: @@ -20908,7 +21858,7 @@ snapshots: css-what: 6.1.0 domelementtype: 2.3.0 domhandler: 5.0.3 - domutils: 3.1.0 + domutils: 3.2.2 cheerio@1.0.0-rc.10: dependencies: @@ -20925,12 +21875,12 @@ snapshots: cheerio-select: 2.1.0 dom-serializer: 2.0.0 domhandler: 5.0.3 - domutils: 3.1.0 + domutils: 3.2.2 htmlparser2: 8.0.2 parse5: 7.2.1 parse5-htmlparser2-tree-adapter: 7.1.0 - chokidar@3.5.3: + chokidar@3.6.0: dependencies: anymatch: 3.1.3 braces: 3.0.3 @@ -20944,11 +21894,11 @@ snapshots: chokidar@4.0.3: dependencies: - readdirp: 4.0.2 + readdirp: 4.1.1 chrome-launcher@1.1.2: dependencies: - '@types/node': 20.17.11 + '@types/node': 20.17.12 escape-string-regexp: 4.0.0 is-wsl: 2.2.0 lighthouse-logger: 2.0.1 @@ -20982,6 +21932,11 @@ snapshots: clean-stack@2.2.0: {} + clean-webpack-plugin@4.0.0(webpack@5.94.0): + dependencies: + del: 4.1.1 + webpack: 5.94.0(webpack-cli@5.1.4) + cli-cursor@2.1.0: dependencies: restore-cursor: 2.0.0 @@ -21033,9 +21988,9 @@ snapshots: cmdk@1.0.4(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - '@radix-ui/react-dialog': 1.1.2(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-dialog': 1.1.4(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-id': 1.1.0(@types/react@18.3.18)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.1(@types/react-dom@18.3.5(@types/react@18.3.18))(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) use-sync-external-store: 1.4.0(react@18.3.1) @@ -21045,9 +22000,9 @@ snapshots: cmdk@1.0.4(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - '@radix-ui/react-dialog': 1.1.2(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-dialog': 1.1.4(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-id': 1.1.0(@types/react@18.3.18)(react@18.3.1) - '@radix-ui/react-primitive': 2.0.0(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.1(@types/react@18.3.18)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) use-sync-external-store: 1.4.0(react@18.3.1) @@ -21057,9 +22012,9 @@ snapshots: cmdk@1.0.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - '@radix-ui/react-dialog': 1.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-dialog': 1.1.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-id': 1.1.0(react@18.3.1) - '@radix-ui/react-primitive': 2.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) use-sync-external-store: 1.4.0(react@18.3.1) @@ -21123,6 +22078,8 @@ snapshots: dependencies: delayed-stream: 1.0.0 + commander@10.0.1: {} + commander@12.1.0: {} commander@13.0.0: {} @@ -21131,8 +22088,6 @@ snapshots: commander@3.0.2: {} - commander@5.1.0: {} - commander@7.2.0: {} commander@8.3.0: {} @@ -21213,15 +22168,15 @@ snapshots: copy-webpack-plugin@11.0.0(webpack@5.94.0): dependencies: - fast-glob: 3.3.2 + fast-glob: 3.3.3 glob-parent: 6.0.2 globby: 13.2.2 normalize-path: 3.0.0 - schema-utils: 4.2.0 + schema-utils: 4.3.0 serialize-javascript: 6.0.2 webpack: 5.94.0(webpack-cli@4.9.1) - core-js-compat@3.39.0: + core-js-compat@3.40.0: dependencies: browserslist: 4.24.3 @@ -21244,6 +22199,15 @@ snapshots: optionalDependencies: typescript: 5.0.4 + cosmiconfig@8.3.6(typescript@5.7.2): + dependencies: + import-fresh: 3.3.0 + js-yaml: 4.1.0 + parse-json: 5.2.0 + path-type: 4.0.0 + optionalDependencies: + typescript: 5.7.2 + crc32@0.2.2: {} create-jest@29.7.0: @@ -21261,13 +22225,13 @@ snapshots: - supports-color - ts-node - create-jest@29.7.0(@types/node@20.17.11): + create-jest@29.7.0(@types/node@20.17.12): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@20.17.11) + jest-config: 29.7.0(@types/node@20.17.12) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -21297,20 +22261,20 @@ snapshots: icss-utils: 5.1.0(postcss@8.4.47) postcss: 8.4.47 postcss-modules-extract-imports: 3.1.0(postcss@8.4.47) - postcss-modules-local-by-default: 4.1.0(postcss@8.4.47) + postcss-modules-local-by-default: 4.2.0(postcss@8.4.47) postcss-modules-scope: 3.2.1(postcss@8.4.47) postcss-modules-values: 4.0.0(postcss@8.4.47) postcss-value-parser: 4.2.0 semver: 7.6.3 optionalDependencies: - webpack: 5.94.0(webpack-cli@4.9.1) + webpack: 5.94.0(webpack-cli@5.1.4) css-loader@6.5.1(webpack@5.94.0): dependencies: icss-utils: 5.1.0(postcss@8.4.47) postcss: 8.4.47 postcss-modules-extract-imports: 3.1.0(postcss@8.4.47) - postcss-modules-local-by-default: 4.1.0(postcss@8.4.47) + postcss-modules-local-by-default: 4.2.0(postcss@8.4.47) postcss-modules-scope: 3.2.1(postcss@8.4.47) postcss-modules-values: 4.0.0(postcss@8.4.47) postcss-value-parser: 4.2.0 @@ -21323,7 +22287,7 @@ snapshots: cssnano: 6.1.2(postcss@8.4.47) jest-worker: 29.7.0 postcss: 8.4.47 - schema-utils: 4.2.0 + schema-utils: 4.3.0 serialize-javascript: 6.0.2 webpack: 5.94.0(webpack-cli@4.9.1) @@ -21340,7 +22304,7 @@ snapshots: boolbase: 1.0.0 css-what: 6.1.0 domhandler: 5.0.3 - domutils: 3.1.0 + domutils: 3.2.2 nth-check: 2.1.1 css-tree@2.2.1: @@ -21490,23 +22454,23 @@ snapshots: whatwg-mimetype: 3.0.0 whatwg-url: 11.0.0 - data-view-buffer@1.0.1: + data-view-buffer@1.0.2: dependencies: - call-bind: 1.0.8 + call-bound: 1.0.3 es-errors: 1.3.0 - is-data-view: 1.0.1 + is-data-view: 1.0.2 - data-view-byte-length@1.0.1: + data-view-byte-length@1.0.2: dependencies: - call-bind: 1.0.8 + call-bound: 1.0.3 es-errors: 1.3.0 - is-data-view: 1.0.1 + is-data-view: 1.0.2 - data-view-byte-offset@1.0.0: + data-view-byte-offset@1.0.1: dependencies: - call-bind: 1.0.8 + call-bound: 1.0.3 es-errors: 1.3.0 - is-data-view: 1.0.1 + is-data-view: 1.0.2 date-fns@1.30.1: {} @@ -21548,24 +22512,24 @@ snapshots: deep-equal@2.2.3: dependencies: - array-buffer-byte-length: 1.0.1 + array-buffer-byte-length: 1.0.2 call-bind: 1.0.8 es-get-iterator: 1.1.3 - get-intrinsic: 1.2.5 - is-arguments: 1.1.1 - is-array-buffer: 3.0.4 - is-date-object: 1.0.5 - is-regex: 1.2.0 - is-shared-array-buffer: 1.0.3 + get-intrinsic: 1.2.7 + is-arguments: 1.2.0 + is-array-buffer: 3.0.5 + is-date-object: 1.1.0 + is-regex: 1.2.1 + is-shared-array-buffer: 1.0.4 isarray: 2.0.5 object-is: 1.1.6 object-keys: 1.1.1 - object.assign: 4.1.5 - regexp.prototype.flags: 1.5.3 - side-channel: 1.0.6 - which-boxed-primitive: 1.1.0 + object.assign: 4.1.7 + regexp.prototype.flags: 1.5.4 + side-channel: 1.1.0 + which-boxed-primitive: 1.1.1 which-collection: 1.0.2 - which-typed-array: 1.1.16 + which-typed-array: 1.1.18 deep-is@0.1.4: {} @@ -21595,6 +22559,16 @@ snapshots: escodegen: 2.1.0 esprima: 4.0.1 + del@4.1.1: + dependencies: + '@types/glob': 7.2.0 + globby: 6.1.0 + is-path-cwd: 2.2.0 + is-path-in-cwd: 2.1.0 + p-map: 2.1.0 + pify: 4.0.1 + rimraf: 2.7.1 + delaunator@5.0.1: dependencies: robust-predicates: 3.0.2 @@ -21716,7 +22690,7 @@ snapshots: domelementtype: 2.3.0 domhandler: 4.3.1 - domutils@3.1.0: + domutils@3.2.2: dependencies: dom-serializer: 2.0.0 domelementtype: 2.3.0 @@ -21733,11 +22707,11 @@ snapshots: dot-prop@9.0.0: dependencies: - type-fest: 4.31.0 + type-fest: 4.32.0 dotenv@16.0.2: {} - dunder-proto@1.0.0: + dunder-proto@1.0.1: dependencies: call-bind-apply-helpers: 1.0.1 es-errors: 1.3.0 @@ -21753,7 +22727,7 @@ snapshots: dependencies: jake: 10.9.2 - electron-to-chromium@1.5.76: {} + electron-to-chromium@1.5.80: {} elegant-spinner@1.0.1: {} @@ -21789,7 +22763,7 @@ snapshots: fast-json-parse: 1.0.3 objectorarray: 1.0.5 - enhanced-resolve@5.17.1: + enhanced-resolve@5.18.0: dependencies: graceful-fs: 4.2.11 tapable: 2.2.1 @@ -21819,54 +22793,59 @@ snapshots: error@10.4.0: {} - es-abstract@1.23.5: + es-abstract@1.23.9: dependencies: - array-buffer-byte-length: 1.0.1 - arraybuffer.prototype.slice: 1.0.3 + array-buffer-byte-length: 1.0.2 + arraybuffer.prototype.slice: 1.0.4 available-typed-arrays: 1.0.7 call-bind: 1.0.8 - data-view-buffer: 1.0.1 - data-view-byte-length: 1.0.1 - data-view-byte-offset: 1.0.0 + call-bound: 1.0.3 + data-view-buffer: 1.0.2 + data-view-byte-length: 1.0.2 + data-view-byte-offset: 1.0.1 es-define-property: 1.0.1 es-errors: 1.3.0 es-object-atoms: 1.0.0 - es-set-tostringtag: 2.0.3 + es-set-tostringtag: 2.1.0 es-to-primitive: 1.3.0 - function.prototype.name: 1.1.6 - get-intrinsic: 1.2.5 - get-symbol-description: 1.0.2 + function.prototype.name: 1.1.8 + get-intrinsic: 1.2.7 + get-proto: 1.0.1 + get-symbol-description: 1.1.0 globalthis: 1.0.4 gopd: 1.2.0 has-property-descriptors: 1.0.2 has-proto: 1.2.0 has-symbols: 1.1.0 hasown: 2.0.2 - internal-slot: 1.0.7 - is-array-buffer: 3.0.4 + internal-slot: 1.1.0 + is-array-buffer: 3.0.5 is-callable: 1.2.7 - is-data-view: 1.0.1 - is-negative-zero: 2.0.3 - is-regex: 1.2.0 - is-shared-array-buffer: 1.0.3 - is-string: 1.1.0 - is-typed-array: 1.1.13 - is-weakref: 1.0.2 + is-data-view: 1.0.2 + is-regex: 1.2.1 + is-shared-array-buffer: 1.0.4 + is-string: 1.1.1 + is-typed-array: 1.1.15 + is-weakref: 1.1.0 + math-intrinsics: 1.1.0 object-inspect: 1.13.3 object-keys: 1.1.1 - object.assign: 4.1.5 - regexp.prototype.flags: 1.5.3 - safe-array-concat: 1.1.2 - safe-regex-test: 1.0.3 - string.prototype.trim: 1.2.9 - string.prototype.trimend: 1.0.8 + object.assign: 4.1.7 + own-keys: 1.0.1 + regexp.prototype.flags: 1.5.4 + safe-array-concat: 1.1.3 + safe-push-apply: 1.0.0 + safe-regex-test: 1.1.0 + set-proto: 1.0.0 + string.prototype.trim: 1.2.10 + string.prototype.trimend: 1.0.9 string.prototype.trimstart: 1.0.8 - typed-array-buffer: 1.0.2 - typed-array-byte-length: 1.0.1 - typed-array-byte-offset: 1.0.3 + typed-array-buffer: 1.0.3 + typed-array-byte-length: 1.0.3 + typed-array-byte-offset: 1.0.4 typed-array-length: 1.0.7 - unbox-primitive: 1.0.2 - which-typed-array: 1.1.16 + unbox-primitive: 1.1.0 + which-typed-array: 1.1.18 es-define-property@1.0.1: {} @@ -21875,42 +22854,44 @@ snapshots: es-get-iterator@1.1.3: dependencies: call-bind: 1.0.8 - get-intrinsic: 1.2.5 + get-intrinsic: 1.2.7 has-symbols: 1.1.0 - is-arguments: 1.1.1 + is-arguments: 1.2.0 is-map: 2.0.3 is-set: 2.0.3 - is-string: 1.1.0 + is-string: 1.1.1 isarray: 2.0.5 - stop-iteration-iterator: 1.0.0 + stop-iteration-iterator: 1.1.0 - es-iterator-helpers@1.2.0: + es-iterator-helpers@1.2.1: dependencies: call-bind: 1.0.8 + call-bound: 1.0.3 define-properties: 1.2.1 - es-abstract: 1.23.5 + es-abstract: 1.23.9 es-errors: 1.3.0 - es-set-tostringtag: 2.0.3 + es-set-tostringtag: 2.1.0 function-bind: 1.1.2 - get-intrinsic: 1.2.5 + get-intrinsic: 1.2.7 globalthis: 1.0.4 gopd: 1.2.0 has-property-descriptors: 1.0.2 has-proto: 1.2.0 has-symbols: 1.1.0 - internal-slot: 1.0.7 - iterator.prototype: 1.1.3 - safe-array-concat: 1.1.2 + internal-slot: 1.1.0 + iterator.prototype: 1.1.5 + safe-array-concat: 1.1.3 - es-module-lexer@1.5.4: {} + es-module-lexer@1.6.0: {} es-object-atoms@1.0.0: dependencies: es-errors: 1.3.0 - es-set-tostringtag@2.0.3: + es-set-tostringtag@2.1.0: dependencies: - get-intrinsic: 1.2.5 + es-errors: 1.3.0 + get-intrinsic: 1.2.7 has-tostringtag: 1.0.2 hasown: 2.0.2 @@ -21921,8 +22902,8 @@ snapshots: es-to-primitive@1.3.0: dependencies: is-callable: 1.2.7 - is-date-object: 1.0.5 - is-symbol: 1.1.0 + is-date-object: 1.1.0 + is-symbol: 1.1.1 es-toolkit@1.31.0: {} @@ -22028,8 +23009,8 @@ snapshots: eslint-import-resolver-node@0.3.9: dependencies: debug: 3.2.7 - is-core-module: 2.15.1 - resolve: 1.22.8 + is-core-module: 2.16.1 + resolve: 1.22.10 transitivePeerDependencies: - supports-color @@ -22037,9 +23018,9 @@ snapshots: dependencies: '@nolyfill/is-core-module': 1.0.39 debug: 4.4.0 - enhanced-resolve: 5.17.1 + enhanced-resolve: 5.18.0 eslint: 9.16.0 - fast-glob: 3.3.2 + fast-glob: 3.3.3 get-tsconfig: 4.8.1 is-bun-module: 1.3.0 is-glob: 4.0.3 @@ -22071,22 +23052,22 @@ snapshots: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 array.prototype.findlastindex: 1.2.5 - array.prototype.flat: 1.3.2 - array.prototype.flatmap: 1.3.2 + array.prototype.flat: 1.3.3 + array.prototype.flatmap: 1.3.3 debug: 3.2.7 doctrine: 2.1.0 eslint: 9.16.0 eslint-import-resolver-node: 0.3.9 eslint-module-utils: 2.12.0(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0)(eslint@9.16.0) hasown: 2.0.2 - is-core-module: 2.15.1 + is-core-module: 2.16.1 is-glob: 4.0.3 minimatch: 3.1.2 object.fromentries: 2.0.8 object.groupby: 1.0.3 - object.values: 1.2.0 + object.values: 1.2.1 semver: 6.3.1 - string.prototype.trimend: 1.0.8 + string.prototype.trimend: 1.0.9 tsconfig-paths: 3.15.0 transitivePeerDependencies: - eslint-import-resolver-typescript @@ -22101,7 +23082,7 @@ snapshots: eslint-plugin-jest@28.9.0(eslint@9.16.0)(jest@29.7.0)(typescript@5.0.4): dependencies: - '@typescript-eslint/utils': 8.18.0(eslint@9.16.0)(typescript@5.0.4) + '@typescript-eslint/utils': 8.19.1(eslint@9.16.0)(typescript@5.0.4) eslint: 9.16.0 optionalDependencies: jest: 29.7.0 @@ -22130,7 +23111,7 @@ snapshots: dependencies: aria-query: 5.3.2 array-includes: 3.1.8 - array.prototype.flatmap: 1.3.2 + array.prototype.flatmap: 1.3.3 ast-types-flow: 0.0.8 axe-core: 4.10.2 axobject-query: 4.1.0 @@ -22142,7 +23123,7 @@ snapshots: language-tags: 1.0.9 minimatch: 3.1.2 object.fromentries: 2.0.8 - safe-regex-test: 1.0.3 + safe-regex-test: 1.1.0 string.prototype.includes: 2.0.1 eslint-plugin-lodash@8.0.0(eslint@9.16.0): @@ -22153,7 +23134,7 @@ snapshots: eslint-plugin-n@17.14.0(eslint@9.16.0): dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.16.0) - enhanced-resolve: 5.17.1 + enhanced-resolve: 5.18.0 eslint: 9.16.0 eslint-plugin-es-x: 7.8.0(eslint@9.16.0) get-tsconfig: 4.8.1 @@ -22184,10 +23165,10 @@ snapshots: dependencies: array-includes: 3.1.8 array.prototype.findlast: 1.2.5 - array.prototype.flatmap: 1.3.2 + array.prototype.flatmap: 1.3.3 array.prototype.tosorted: 1.1.4 doctrine: 2.1.0 - es-iterator-helpers: 1.2.0 + es-iterator-helpers: 1.2.1 eslint: 9.16.0 estraverse: 5.3.0 hasown: 2.0.2 @@ -22195,11 +23176,11 @@ snapshots: minimatch: 3.1.2 object.entries: 1.1.8 object.fromentries: 2.0.8 - object.values: 1.2.0 + object.values: 1.2.1 prop-types: 15.8.1 resolve: 2.0.0-next.5 semver: 6.3.1 - string.prototype.matchall: 4.0.11 + string.prototype.matchall: 4.0.12 string.prototype.repeat: 1.0.0 eslint-plugin-svelte@2.46.1(eslint@9.16.0)(svelte@4.2.19): @@ -22223,8 +23204,8 @@ snapshots: eslint-plugin-testing-library@7.1.1(eslint@9.16.0)(typescript@5.0.4): dependencies: - '@typescript-eslint/scope-manager': 8.18.0 - '@typescript-eslint/utils': 8.18.0(eslint@9.16.0)(typescript@5.0.4) + '@typescript-eslint/scope-manager': 8.19.1 + '@typescript-eslint/utils': 8.19.1(eslint@9.16.0)(typescript@5.0.4) eslint: 9.16.0 transitivePeerDependencies: - supports-color @@ -22259,7 +23240,7 @@ snapshots: '@eslint/core': 0.9.1 '@eslint/eslintrc': 3.2.0 '@eslint/js': 9.16.0 - '@eslint/plugin-kit': 0.2.4 + '@eslint/plugin-kit': 0.2.5 '@humanfs/node': 0.16.6 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.4.1 @@ -22342,7 +23323,7 @@ snapshots: eval@0.1.8: dependencies: - '@types/node': 20.17.11 + '@types/node': 20.17.12 require-like: 0.1.2 event-target-shim@5.0.1: {} @@ -22449,7 +23430,7 @@ snapshots: fast-fifo@1.3.2: {} - fast-glob@3.3.2: + fast-glob@3.3.3: dependencies: '@nodelib/fs.stat': 2.0.5 '@nodelib/fs.walk': 1.2.8 @@ -22463,11 +23444,11 @@ snapshots: fast-levenshtein@2.0.6: {} - fast-uri@3.0.3: {} + fast-uri@3.0.5: {} fastest-levenshtein@1.0.16: {} - fastq@1.17.1: + fastq@1.18.0: dependencies: reusify: 1.0.4 @@ -22533,7 +23514,7 @@ snapshots: find-chrome-bin@2.0.2: dependencies: - '@puppeteer/browsers': 2.6.0 + '@puppeteer/browsers': 2.7.0 transitivePeerDependencies: - supports-color @@ -22546,13 +23527,11 @@ snapshots: dependencies: find-file-up: 0.1.3 - find-process@1.4.7: + find-process@1.4.10: dependencies: chalk: 4.1.2 - commander: 5.1.0 - debug: 4.4.0 - transitivePeerDependencies: - - supports-color + commander: 12.1.0 + loglevel: 1.9.2 find-root@1.1.0: {} @@ -22620,7 +23599,7 @@ snapshots: dependencies: '@babel/code-frame': 7.26.2 chalk: 4.1.2 - chokidar: 3.5.3 + chokidar: 3.6.0 cosmiconfig: 7.1.0 deepmerge: 4.3.1 fs-extra: 10.1.0 @@ -22637,7 +23616,7 @@ snapshots: dependencies: '@babel/code-frame': 7.26.2 chalk: 4.1.2 - chokidar: 3.5.3 + chokidar: 3.6.0 cosmiconfig: 8.3.6(typescript@5.0.4) deepmerge: 4.3.1 fs-extra: 10.1.0 @@ -22650,6 +23629,23 @@ snapshots: typescript: 5.0.4 webpack: 5.94.0(webpack-cli@4.9.1) + fork-ts-checker-webpack-plugin@9.0.2(typescript@5.7.2)(webpack@5.94.0): + dependencies: + '@babel/code-frame': 7.26.2 + chalk: 4.1.2 + chokidar: 3.6.0 + cosmiconfig: 8.3.6(typescript@5.7.2) + deepmerge: 4.3.1 + fs-extra: 10.1.0 + memfs: 3.5.3 + minimatch: 3.1.2 + node-abort-controller: 3.1.1 + schema-utils: 3.3.0 + semver: 7.6.3 + tapable: 2.2.1 + typescript: 5.7.2 + webpack: 5.94.0(webpack-cli@5.1.4) + form-data-encoder@1.7.2: {} form-data@4.0.1: @@ -22698,12 +23694,14 @@ snapshots: function-bind@1.1.2: {} - function.prototype.name@1.1.6: + function.prototype.name@1.1.8: dependencies: call-bind: 1.0.8 + call-bound: 1.0.3 define-properties: 1.2.1 - es-abstract: 1.23.5 functions-have-names: 1.2.3 + hasown: 2.0.2 + is-callable: 1.2.7 functions-have-names@1.2.3: {} @@ -22721,16 +23719,18 @@ snapshots: get-document@1.0.0: {} - get-intrinsic@1.2.5: + get-intrinsic@1.2.7: dependencies: call-bind-apply-helpers: 1.0.1 - dunder-proto: 1.0.0 es-define-property: 1.0.1 es-errors: 1.3.0 + es-object-atoms: 1.0.0 function-bind: 1.1.2 + get-proto: 1.0.1 gopd: 1.2.0 has-symbols: 1.1.0 hasown: 2.0.2 + math-intrinsics: 1.1.0 get-nonce@1.0.1: {} @@ -22738,17 +23738,22 @@ snapshots: get-port@5.1.1: {} + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.0.0 + get-stream@5.2.0: dependencies: pump: 3.0.2 get-stream@6.0.1: {} - get-symbol-description@1.0.2: + get-symbol-description@1.1.0: dependencies: - call-bind: 1.0.8 + call-bound: 1.0.3 es-errors: 1.3.0 - get-intrinsic: 1.2.5 + get-intrinsic: 1.2.7 get-tsconfig@4.8.1: dependencies: @@ -22781,12 +23786,13 @@ snapshots: glob-to-regexp@0.4.1: {} - glob@10.4.1: + glob@10.4.5: dependencies: foreground-child: 3.3.0 jackspeak: 3.4.3 minimatch: 9.0.5 minipass: 7.1.2 + package-json-from-dist: 1.0.1 path-scurry: 1.11.1 glob@11.0.0: @@ -22841,7 +23847,7 @@ snapshots: '@types/glob': 7.2.0 array-union: 2.1.0 dir-glob: 3.0.1 - fast-glob: 3.3.2 + fast-glob: 3.3.3 glob: 7.2.3 ignore: 5.3.2 merge2: 1.4.1 @@ -22850,11 +23856,19 @@ snapshots: globby@13.2.2: dependencies: dir-glob: 3.0.1 - fast-glob: 3.3.2 + fast-glob: 3.3.3 ignore: 5.3.2 merge2: 1.4.1 slash: 4.0.0 + globby@6.1.0: + dependencies: + array-union: 1.0.2 + glob: 7.2.3 + object-assign: 4.1.1 + pify: 2.3.0 + pinkie-promise: 2.0.1 + good-listener@1.2.2: dependencies: delegate: 3.2.0 @@ -22878,7 +23892,7 @@ snapshots: dependencies: ansi-regex: 2.1.1 - has-bigints@1.0.2: {} + has-bigints@1.1.0: {} has-flag@3.0.0: {} @@ -22890,7 +23904,7 @@ snapshots: has-proto@1.2.0: dependencies: - dunder-proto: 1.0.0 + dunder-proto: 1.0.1 has-symbols@1.1.0: {} @@ -22978,7 +23992,7 @@ snapshots: dependencies: domelementtype: 2.3.0 domhandler: 5.0.3 - domutils: 3.1.0 + domutils: 3.2.2 entities: 4.5.0 http-errors@2.0.0: @@ -23093,16 +24107,18 @@ snapshots: ini@1.3.8: {} - internal-slot@1.0.7: + internal-slot@1.1.0: dependencies: es-errors: 1.3.0 hasown: 2.0.2 - side-channel: 1.0.6 + side-channel: 1.1.0 internmap@2.0.3: {} interpret@2.2.0: {} + interpret@3.1.1: {} + intl-messageformat@10.7.11: dependencies: '@formatjs/ecma402-abstract': 2.3.2 @@ -23110,10 +24126,6 @@ snapshots: '@formatjs/icu-messageformat-parser': 2.9.8 tslib: 2.5.0 - invariant@2.2.4: - dependencies: - loose-envify: 1.4.0 - ip-address@9.0.5: dependencies: jsbn: 1.1.0 @@ -23121,35 +24133,39 @@ snapshots: ipaddr.js@1.9.1: {} - is-arguments@1.1.1: + is-arguments@1.2.0: dependencies: - call-bind: 1.0.8 + call-bound: 1.0.3 has-tostringtag: 1.0.2 - is-array-buffer@3.0.4: + is-array-buffer@3.0.5: dependencies: call-bind: 1.0.8 - get-intrinsic: 1.2.5 + call-bound: 1.0.3 + get-intrinsic: 1.2.7 is-arrayish@0.2.1: {} is-arrayish@0.3.2: {} - is-async-function@2.0.0: + is-async-function@2.1.0: dependencies: + call-bound: 1.0.3 + get-proto: 1.0.1 has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 is-bigint@1.1.0: dependencies: - has-bigints: 1.0.2 + has-bigints: 1.1.0 is-binary-path@2.1.0: dependencies: binary-extensions: 2.3.0 - is-boolean-object@1.2.0: + is-boolean-object@1.2.1: dependencies: - call-bind: 1.0.8 + call-bound: 1.0.3 has-tostringtag: 1.0.2 is-buffer@2.0.5: {} @@ -23160,16 +24176,19 @@ snapshots: is-callable@1.2.7: {} - is-core-module@2.15.1: + is-core-module@2.16.1: dependencies: hasown: 2.0.2 - is-data-view@1.0.1: + is-data-view@1.0.2: dependencies: - is-typed-array: 1.1.13 + call-bound: 1.0.3 + get-intrinsic: 1.2.7 + is-typed-array: 1.1.15 - is-date-object@1.0.5: + is-date-object@1.1.0: dependencies: + call-bound: 1.0.3 has-tostringtag: 1.0.2 is-docker@2.2.1: {} @@ -23178,9 +24197,9 @@ snapshots: is-extglob@2.1.1: {} - is-finalizationregistry@1.1.0: + is-finalizationregistry@1.1.1: dependencies: - call-bind: 1.0.8 + call-bound: 1.0.3 is-fullwidth-code-point@1.0.0: dependencies: @@ -23192,9 +24211,12 @@ snapshots: is-generator-fn@2.1.0: {} - is-generator-function@1.0.10: + is-generator-function@1.1.0: dependencies: + call-bound: 1.0.3 + get-proto: 1.0.1 has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 is-glob@4.0.3: dependencies: @@ -23204,11 +24226,9 @@ snapshots: is-module@1.0.0: {} - is-negative-zero@2.0.3: {} - - is-number-object@1.1.0: + is-number-object@1.1.1: dependencies: - call-bind: 1.0.8 + call-bound: 1.0.3 has-tostringtag: 1.0.2 is-number@7.0.0: {} @@ -23219,6 +24239,16 @@ snapshots: dependencies: symbol-observable: 1.2.0 + is-path-cwd@2.2.0: {} + + is-path-in-cwd@2.1.0: + dependencies: + is-path-inside: 2.1.0 + + is-path-inside@2.1.0: + dependencies: + path-is-inside: 1.0.2 + is-plain-obj@2.1.0: {} is-plain-obj@4.1.0: {} @@ -23243,18 +24273,18 @@ snapshots: dependencies: '@types/estree': 1.0.6 - is-regex@1.2.0: + is-regex@1.2.1: dependencies: - call-bind: 1.0.8 + call-bound: 1.0.3 gopd: 1.2.0 has-tostringtag: 1.0.2 hasown: 2.0.2 is-set@2.0.3: {} - is-shared-array-buffer@1.0.3: + is-shared-array-buffer@1.0.4: dependencies: - call-bind: 1.0.8 + call-bound: 1.0.3 is-stream@1.1.0: {} @@ -23262,33 +24292,33 @@ snapshots: is-stream@3.0.0: {} - is-string@1.1.0: + is-string@1.1.1: dependencies: - call-bind: 1.0.8 + call-bound: 1.0.3 has-tostringtag: 1.0.2 - is-symbol@1.1.0: + is-symbol@1.1.1: dependencies: - call-bind: 1.0.8 + call-bound: 1.0.3 has-symbols: 1.1.0 - safe-regex-test: 1.0.3 + safe-regex-test: 1.1.0 - is-typed-array@1.1.13: + is-typed-array@1.1.15: dependencies: - which-typed-array: 1.1.16 + which-typed-array: 1.1.18 is-typedarray@1.0.0: {} is-weakmap@2.0.2: {} - is-weakref@1.0.2: + is-weakref@1.1.0: dependencies: - call-bind: 1.0.8 + call-bound: 1.0.3 - is-weakset@2.0.3: + is-weakset@2.0.4: dependencies: - call-bind: 1.0.8 - get-intrinsic: 1.2.5 + call-bound: 1.0.3 + get-intrinsic: 1.2.7 is-windows@0.2.0: {} @@ -23324,7 +24354,7 @@ snapshots: istanbul-lib-instrument@5.2.1: dependencies: '@babel/core': 7.26.0 - '@babel/parser': 7.26.3 + '@babel/parser': 7.26.5 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.2 semver: 6.3.1 @@ -23334,7 +24364,7 @@ snapshots: istanbul-lib-instrument@6.0.3: dependencies: '@babel/core': 7.26.0 - '@babel/parser': 7.26.3 + '@babel/parser': 7.26.5 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.2 semver: 7.6.3 @@ -23366,7 +24396,7 @@ snapshots: istanbul-merge@2.0.0: dependencies: - array.prototype.flatmap: 1.3.2 + array.prototype.flatmap: 1.3.3 for-each: 0.3.3 glob: 7.2.3 istanbul-lib-coverage: 3.2.2 @@ -23378,12 +24408,13 @@ snapshots: html-escaper: 2.0.2 istanbul-lib-report: 3.0.1 - iterator.prototype@1.1.3: + iterator.prototype@1.1.5: dependencies: - define-properties: 1.2.1 - get-intrinsic: 1.2.5 + define-data-property: 1.1.4 + es-object-atoms: 1.0.0 + get-intrinsic: 1.2.7 + get-proto: 1.0.1 has-symbols: 1.1.0 - reflect.getprototypeof: 1.0.8 set-function-name: 2.0.2 jackspeak@3.4.3: @@ -23415,7 +24446,7 @@ snapshots: '@jest/expect': 29.7.0 '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.17.11 + '@types/node': 20.17.12 chalk: 4.1.2 co: 4.6.0 dedent: 1.5.3 @@ -23454,16 +24485,16 @@ snapshots: - supports-color - ts-node - jest-cli@29.7.0(@types/node@20.17.11): + jest-cli@29.7.0(@types/node@20.17.12): dependencies: '@jest/core': 29.7.0 '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@20.17.11) + create-jest: 29.7.0(@types/node@20.17.12) exit: 0.1.2 import-local: 3.2.0 - jest-config: 29.7.0(@types/node@20.17.11) + jest-config: 29.7.0(@types/node@20.17.12) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.6.2 @@ -23501,7 +24532,7 @@ snapshots: - babel-plugin-macros - supports-color - jest-config@29.7.0(@types/node@20.17.11): + jest-config@29.7.0(@types/node@20.17.12): dependencies: '@babel/core': 7.26.0 '@jest/test-sequencer': 29.7.0 @@ -23526,7 +24557,7 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 20.17.11 + '@types/node': 20.17.12 transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -23556,7 +24587,7 @@ snapshots: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 '@types/jsdom': 20.0.1 - '@types/node': 20.17.11 + '@types/node': 20.17.12 jest-mock: 29.7.0 jest-util: 29.7.0 jsdom: 20.0.3 @@ -23570,7 +24601,7 @@ snapshots: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.17.11 + '@types/node': 20.17.12 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -23587,7 +24618,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.9 - '@types/node': 20.17.11 + '@types/node': 20.17.12 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.11 @@ -23633,7 +24664,7 @@ snapshots: jest-mock@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 20.17.11 + '@types/node': 20.17.12 jest-util: 29.7.0 jest-playwright-preset@4.0.0(jest-circus@29.7.0)(jest-environment-node@29.7.0)(jest-runner@29.7.0)(jest@29.7.0): @@ -23662,7 +24693,7 @@ snapshots: chalk: 4.1.2 cwd: 0.10.0 exit: 0.1.2 - find-process: 1.4.7 + find-process: 1.4.10 prompts: 2.4.2 signal-exit: 3.0.7 spawnd: 5.0.0 @@ -23689,7 +24720,7 @@ snapshots: jest-pnp-resolver: 1.2.3(jest-resolve@29.7.0) jest-util: 29.7.0 jest-validate: 29.7.0 - resolve: 1.22.8 + resolve: 1.22.10 resolve.exports: 2.0.3 slash: 3.0.0 @@ -23700,7 +24731,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.17.11 + '@types/node': 20.17.12 chalk: 4.1.2 emittery: 0.13.1 graceful-fs: 4.2.11 @@ -23728,7 +24759,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.17.11 + '@types/node': 20.17.12 chalk: 4.1.2 cjs-module-lexer: 1.4.1 collect-v8-coverage: 1.0.2 @@ -23753,10 +24784,10 @@ snapshots: jest-snapshot@29.7.0: dependencies: '@babel/core': 7.26.0 - '@babel/generator': 7.26.3 + '@babel/generator': 7.26.5 '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.0) '@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.0) - '@babel/types': 7.26.3 + '@babel/types': 7.26.5 '@jest/expect-utils': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 @@ -23778,7 +24809,7 @@ snapshots: jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 20.17.11 + '@types/node': 20.17.12 chalk: 4.1.2 ci-info: 3.9.0 graceful-fs: 4.2.11 @@ -23808,7 +24839,7 @@ snapshots: dependencies: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.17.11 + '@types/node': 20.17.12 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.13.1 @@ -23817,13 +24848,13 @@ snapshots: jest-worker@27.5.1: dependencies: - '@types/node': 20.17.11 + '@types/node': 20.17.12 merge-stream: 2.0.0 supports-color: 8.1.1 jest-worker@29.7.0: dependencies: - '@types/node': 20.17.11 + '@types/node': 20.17.12 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -23840,19 +24871,21 @@ snapshots: - supports-color - ts-node - jest@29.7.0(@types/node@20.17.11): + jest@29.7.0(@types/node@20.17.12): dependencies: '@jest/core': 29.7.0 '@jest/types': 29.6.3 import-local: 3.2.0 - jest-cli: 29.7.0(@types/node@20.17.11) + jest-cli: 29.7.0(@types/node@20.17.12) transitivePeerDependencies: - '@types/node' - babel-plugin-macros - supports-color - ts-node - jiti@2.4.1: {} + jiti@1.21.7: {} + + jiti@2.4.2: {} joi@17.13.3: dependencies: @@ -23920,6 +24953,8 @@ snapshots: jsesc@3.0.2: {} + jsesc@3.1.0: {} + json-buffer@3.0.1: {} json-parse-better-errors@1.0.2: {} @@ -23951,9 +24986,9 @@ snapshots: jsx-ast-utils@3.3.5: dependencies: array-includes: 3.1.8 - array.prototype.flat: 1.3.2 - object.assign: 4.1.5 - object.values: 1.2.0 + array.prototype.flat: 1.3.3 + object.assign: 4.1.7 + object.values: 1.2.1 kdbush@3.0.0: {} @@ -24010,7 +25045,7 @@ snapshots: lighthouse@12.3.0: dependencies: '@paulirish/trace_engine': 0.0.39 - '@sentry/node': 7.120.2 + '@sentry/node': 7.120.3 axe-core: 4.10.2 chrome-launcher: 1.1.2 configstore: 5.0.1 @@ -24103,7 +25138,7 @@ snapshots: livereload@0.9.3: dependencies: - chokidar: 3.5.3 + chokidar: 3.6.0 livereload-js: 3.4.1 opts: 2.0.2 ws: 7.5.10 @@ -24218,6 +25253,8 @@ snapshots: safe-stable-stringify: 2.5.0 triple-beam: 1.4.1 + loglevel@1.9.2: {} + longest-streak@3.1.0: {} lookup-closest-locale@6.2.0: {} @@ -24246,7 +25283,7 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 - magic-string@0.30.14: + magic-string@0.30.17: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 @@ -24309,9 +25346,11 @@ snapshots: math-expression-evaluator@1.4.0: {} + math-intrinsics@1.1.0: {} + md5-es@1.8.2: {} - mdast-util-find-and-replace@3.0.1: + mdast-util-find-and-replace@3.0.2: dependencies: '@types/mdast': 4.0.4 escape-string-regexp: 5.0.0 @@ -24340,7 +25379,7 @@ snapshots: '@types/mdast': 4.0.4 ccount: 2.0.1 devlop: 1.1.0 - mdast-util-find-and-replace: 3.0.1 + mdast-util-find-and-replace: 3.0.2 micromark-util-character: 2.1.1 mdast-util-gfm-footnote@2.0.0: @@ -24659,9 +25698,9 @@ snapshots: mini-css-extract-plugin@2.9.1(webpack@5.94.0): dependencies: - schema-utils: 4.2.0 + schema-utils: 4.3.0 tapable: 2.2.1 - webpack: 5.94.0(webpack-cli@4.9.1) + webpack: 5.94.0(webpack-cli@5.1.4) minimatch@10.0.1: dependencies: @@ -24847,10 +25886,12 @@ snapshots: object-keys@1.1.1: {} - object.assign@4.1.5: + object.assign@4.1.7: dependencies: call-bind: 1.0.8 + call-bound: 1.0.3 define-properties: 1.2.1 + es-object-atoms: 1.0.0 has-symbols: 1.1.0 object-keys: 1.1.1 @@ -24864,18 +25905,19 @@ snapshots: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.5 + es-abstract: 1.23.9 es-object-atoms: 1.0.0 object.groupby@1.0.3: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.5 + es-abstract: 1.23.9 - object.values@1.2.0: + object.values@1.2.1: dependencies: call-bind: 1.0.8 + call-bound: 1.0.3 define-properties: 1.2.1 es-object-atoms: 1.0.0 @@ -24913,10 +25955,10 @@ snapshots: openai@4.56.1: dependencies: - '@types/node': 18.19.67 + '@types/node': 18.19.70 '@types/node-fetch': 2.6.12 abort-controller: 3.0.0 - agentkeepalive: 4.5.0 + agentkeepalive: 4.6.0 form-data-encoder: 1.7.2 formdata-node: 4.4.1 node-fetch: 2.6.7 @@ -24938,6 +25980,12 @@ snapshots: os-homedir@1.0.2: {} + own-keys@1.0.1: + dependencies: + get-intrinsic: 1.2.7 + object-keys: 1.1.1 + safe-push-apply: 1.0.0 + p-debounce@4.0.0: {} p-finally@1.0.0: {} @@ -25034,7 +26082,7 @@ snapshots: parse-imports@2.2.1: dependencies: - es-module-lexer: 1.5.4 + es-module-lexer: 1.6.0 slashes: 3.0.12 parse-json@5.2.0: @@ -25085,6 +26133,8 @@ snapshots: path-is-absolute@1.0.1: {} + path-is-inside@1.0.2: {} + path-key@3.1.1: {} path-key@4.0.0: {} @@ -25138,8 +26188,18 @@ snapshots: picomatch@4.0.2: {} + pify@2.3.0: {} + + pify@4.0.1: {} + pify@5.0.0: {} + pinkie-promise@2.0.1: + dependencies: + pinkie: 2.0.4 + + pinkie@2.0.4: {} + pirates@4.0.6: {} pkg-dir@4.2.0: @@ -25228,6 +26288,16 @@ snapshots: semver: 7.6.3 webpack: 5.94.0(webpack-cli@4.9.1) + postcss-loader@7.3.4(postcss@8.4.47)(typescript@5.7.2)(webpack@5.94.0): + dependencies: + cosmiconfig: 8.3.6(typescript@5.7.2) + jiti: 1.21.7 + postcss: 8.4.47 + semver: 7.6.3 + webpack: 5.94.0(webpack-cli@5.1.4) + transitivePeerDependencies: + - typescript + postcss-merge-longhand@6.0.5(postcss@8.4.47): dependencies: postcss: 8.4.47 @@ -25270,7 +26340,7 @@ snapshots: dependencies: postcss: 8.4.47 - postcss-modules-local-by-default@4.1.0(postcss@8.4.47): + postcss-modules-local-by-default@4.2.0(postcss@8.4.47): dependencies: icss-utils: 5.1.0(postcss@8.4.47) postcss: 8.4.47 @@ -25294,7 +26364,7 @@ snapshots: lodash.camelcase: 4.3.0 postcss: 8.4.47 postcss-modules-extract-imports: 3.1.0(postcss@8.4.47) - postcss-modules-local-by-default: 4.1.0(postcss@8.4.47) + postcss-modules-local-by-default: 4.2.0(postcss@8.4.47) postcss-modules-scope: 3.2.1(postcss@8.4.47) postcss-modules-values: 4.0.0(postcss@8.4.47) string-hash: 1.1.3 @@ -25306,7 +26376,7 @@ snapshots: lodash.camelcase: 4.3.0 postcss: 8.4.47 postcss-modules-extract-imports: 3.1.0(postcss@8.4.47) - postcss-modules-local-by-default: 4.1.0(postcss@8.4.47) + postcss-modules-local-by-default: 4.2.0(postcss@8.4.47) postcss-modules-scope: 3.2.1(postcss@8.4.47) postcss-modules-values: 4.0.0(postcss@8.4.47) string-hash: 1.1.3 @@ -25423,7 +26493,7 @@ snapshots: preact@10.22.1: {} - preact@10.25.1: {} + preact@10.25.4: {} prelude-ls@1.2.1: {} @@ -25558,15 +26628,15 @@ snapshots: qs@6.12.1: dependencies: - side-channel: 1.0.6 + side-channel: 1.1.0 qs@6.13.0: dependencies: - side-channel: 1.0.6 + side-channel: 1.1.0 qs@6.13.1: dependencies: - side-channel: 1.0.6 + side-channel: 1.1.0 qss@3.0.0: {} @@ -25616,14 +26686,14 @@ snapshots: react-docgen@7.1.0: dependencies: '@babel/core': 7.26.0 - '@babel/traverse': 7.26.4 - '@babel/types': 7.26.3 + '@babel/traverse': 7.26.5 + '@babel/types': 7.26.5 '@types/babel__core': 7.20.5 '@types/babel__traverse': 7.20.6 '@types/doctrine': 0.0.9 '@types/resolve': 1.20.6 doctrine: 3.0.0 - resolve: 1.22.8 + resolve: 1.22.10 strip-indent: 4.0.0 transitivePeerDependencies: - supports-color @@ -25680,39 +26750,39 @@ snapshots: optionalDependencies: react-dom: 18.3.1(react@18.3.1) - react-remove-scroll-bar@2.3.6(@types/react@18.3.18)(react@18.3.1): + react-remove-scroll-bar@2.3.8(@types/react@18.3.18)(react@18.3.1): dependencies: react: 18.3.1 - react-style-singleton: 2.2.1(@types/react@18.3.18)(react@18.3.1) + react-style-singleton: 2.2.3(@types/react@18.3.18)(react@18.3.1) tslib: 2.5.0 optionalDependencies: '@types/react': 18.3.18 - react-remove-scroll-bar@2.3.6(react@18.3.1): + react-remove-scroll-bar@2.3.8(react@18.3.1): dependencies: react: 18.3.1 - react-style-singleton: 2.2.1(react@18.3.1) + react-style-singleton: 2.2.3(react@18.3.1) tslib: 2.5.0 - react-remove-scroll@2.6.0(@types/react@18.3.18)(react@18.3.1): + react-remove-scroll@2.6.2(@types/react@18.3.18)(react@18.3.1): dependencies: react: 18.3.1 - react-remove-scroll-bar: 2.3.6(@types/react@18.3.18)(react@18.3.1) - react-style-singleton: 2.2.1(@types/react@18.3.18)(react@18.3.1) + react-remove-scroll-bar: 2.3.8(@types/react@18.3.18)(react@18.3.1) + react-style-singleton: 2.2.3(@types/react@18.3.18)(react@18.3.1) tslib: 2.5.0 - use-callback-ref: 1.3.2(@types/react@18.3.18)(react@18.3.1) - use-sidecar: 1.1.2(@types/react@18.3.18)(react@18.3.1) + use-callback-ref: 1.3.3(@types/react@18.3.18)(react@18.3.1) + use-sidecar: 1.1.3(@types/react@18.3.18)(react@18.3.1) optionalDependencies: '@types/react': 18.3.18 - react-remove-scroll@2.6.0(react@18.3.1): + react-remove-scroll@2.6.2(react@18.3.1): dependencies: react: 18.3.1 - react-remove-scroll-bar: 2.3.6(react@18.3.1) - react-style-singleton: 2.2.1(react@18.3.1) + react-remove-scroll-bar: 2.3.8(react@18.3.1) + react-style-singleton: 2.2.3(react@18.3.1) tslib: 2.5.0 - use-callback-ref: 1.3.2(react@18.3.1) - use-sidecar: 1.1.2(react@18.3.1) + use-callback-ref: 1.3.3(react@18.3.1) + use-sidecar: 1.1.3(react@18.3.1) react-router-dom@6.28.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: @@ -25744,19 +26814,17 @@ snapshots: prop-types: 15.8.1 react: 18.3.1 - react-style-singleton@2.2.1(@types/react@18.3.18)(react@18.3.1): + react-style-singleton@2.2.3(@types/react@18.3.18)(react@18.3.1): dependencies: get-nonce: 1.0.1 - invariant: 2.2.4 react: 18.3.1 tslib: 2.5.0 optionalDependencies: '@types/react': 18.3.18 - react-style-singleton@2.2.1(react@18.3.1): + react-style-singleton@2.2.3(react@18.3.1): dependencies: get-nonce: 1.0.1 - invariant: 2.2.4 react: 18.3.1 tslib: 2.5.0 @@ -25793,7 +26861,7 @@ snapshots: dependencies: picomatch: 2.3.1 - readdirp@4.0.2: {} + readdirp@4.1.1: {} recast@0.23.9: dependencies: @@ -25805,7 +26873,11 @@ snapshots: rechoir@0.7.1: dependencies: - resolve: 1.22.8 + resolve: 1.22.10 + + rechoir@0.8.0: + dependencies: + resolve: 1.22.10 redent@3.0.0: dependencies: @@ -25845,16 +26917,16 @@ snapshots: redux@5.0.1: {} - reflect.getprototypeof@1.0.8: + reflect.getprototypeof@1.0.10: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - dunder-proto: 1.0.0 - es-abstract: 1.23.5 + es-abstract: 1.23.9 es-errors: 1.3.0 - get-intrinsic: 1.2.5 - gopd: 1.2.0 - which-builtin-type: 1.2.0 + es-object-atoms: 1.0.0 + get-intrinsic: 1.2.7 + get-proto: 1.0.1 + which-builtin-type: 1.2.1 refx@3.1.1: {} @@ -25872,11 +26944,13 @@ snapshots: dependencies: '@babel/runtime': 7.26.0 - regexp.prototype.flags@1.5.3: + regexp.prototype.flags@1.5.4: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 es-errors: 1.3.0 + get-proto: 1.0.1 + gopd: 1.2.0 set-function-name: 2.0.2 regexpu-core@6.2.0: @@ -25977,15 +27051,15 @@ snapshots: resolve.exports@2.0.3: {} - resolve@1.22.8: + resolve@1.22.10: dependencies: - is-core-module: 2.15.1 + is-core-module: 2.16.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 resolve@2.0.0-next.5: dependencies: - is-core-module: 2.15.1 + is-core-module: 2.16.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 @@ -26000,6 +27074,10 @@ snapshots: reusify@1.0.4: {} + rimraf@2.7.1: + dependencies: + glob: 7.2.3 + rimraf@3.0.2: dependencies: glob: 7.2.3 @@ -26008,14 +27086,6 @@ snapshots: robust-predicates@3.0.2: {} - rollup-plugin-dts@6.1.1(rollup@3.29.5)(typescript@5.7.2): - dependencies: - magic-string: 0.30.14 - rollup: 3.29.5 - typescript: 5.7.2 - optionalDependencies: - '@babel/code-frame': 7.26.2 - rollup-plugin-livereload@2.0.5: dependencies: livereload: 0.9.3 @@ -26023,10 +27093,6 @@ snapshots: - bufferutil - utf-8-validate - rollup-plugin-peer-deps-external@2.2.4(rollup@3.29.5): - dependencies: - rollup: 3.29.5 - rollup-plugin-postcss@4.0.2(postcss@8.4.47): dependencies: chalk: 4.1.2 @@ -26039,7 +27105,7 @@ snapshots: postcss-load-config: 3.1.4(postcss@8.4.47) postcss-modules: 4.3.1(postcss@8.4.47) promise.series: 0.2.0 - resolve: 1.22.8 + resolve: 1.22.10 rollup-pluginutils: 2.8.2 safe-identifier: 0.4.2 style-inject: 0.3.0 @@ -26092,10 +27158,11 @@ snapshots: dependencies: tslib: 2.5.0 - safe-array-concat@1.1.2: + safe-array-concat@1.1.3: dependencies: call-bind: 1.0.8 - get-intrinsic: 1.2.5 + call-bound: 1.0.3 + get-intrinsic: 1.2.7 has-symbols: 1.1.0 isarray: 2.0.5 @@ -26103,11 +27170,16 @@ snapshots: safe-identifier@0.4.2: {} - safe-regex-test@1.0.3: + safe-push-apply@1.0.0: dependencies: - call-bind: 1.0.8 es-errors: 1.3.0 - is-regex: 1.2.0 + isarray: 2.0.5 + + safe-regex-test@1.1.0: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + is-regex: 1.2.1 safe-stable-stringify@2.5.0: {} @@ -26213,9 +27285,17 @@ snapshots: optionalDependencies: sass: 1.64.1 + sass-loader@13.3.3(sass-embedded@1.83.0)(sass@1.64.1)(webpack@5.94.0): + dependencies: + neo-async: 2.6.2 + webpack: 5.94.0(webpack-cli@5.1.4) + optionalDependencies: + sass: 1.64.1 + sass-embedded: 1.83.0 + sass@1.64.1: dependencies: - chokidar: 3.5.3 + chokidar: 3.6.0 immutable: 4.3.7 source-map-js: 1.2.0 @@ -26235,7 +27315,7 @@ snapshots: ajv: 6.12.6 ajv-keywords: 3.5.2(ajv@6.12.6) - schema-utils@4.2.0: + schema-utils@4.3.0: dependencies: '@types/json-schema': 7.0.15 ajv: 8.17.1 @@ -26296,7 +27376,7 @@ snapshots: define-data-property: 1.1.4 es-errors: 1.3.0 function-bind: 1.1.2 - get-intrinsic: 1.2.5 + get-intrinsic: 1.2.7 gopd: 1.2.0 has-property-descriptors: 1.0.2 @@ -26307,6 +27387,12 @@ snapshots: functions-have-names: 1.2.3 has-property-descriptors: 1.0.2 + set-proto@1.0.0: + dependencies: + dunder-proto: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.0.0 + setprototypeof@1.2.0: {} shallow-clone@3.0.1: @@ -26327,12 +27413,33 @@ snapshots: dependencies: yargs: 14.2.3 - side-channel@1.0.6: + side-channel-list@1.0.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.3 + + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + get-intrinsic: 1.2.7 + object-inspect: 1.13.3 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + get-intrinsic: 1.2.7 + object-inspect: 1.13.3 + side-channel-map: 1.0.1 + + side-channel@1.1.0: dependencies: - call-bind: 1.0.8 es-errors: 1.3.0 - get-intrinsic: 1.2.5 object-inspect: 1.13.3 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 signal-exit@3.0.7: {} @@ -26362,7 +27469,7 @@ snapshots: dependencies: bytes-iec: 3.1.1 chokidar: 4.0.3 - jiti: 2.4.1 + jiti: 2.4.2 lilconfig: 3.1.3 nanospinner: 1.2.2 picocolors: 1.1.1 @@ -26466,7 +27573,7 @@ snapshots: speedline-core@1.4.3: dependencies: - '@types/node': 20.17.11 + '@types/node': 20.17.12 image-ssim: 0.2.0 jpeg-js: 0.4.4 @@ -26490,9 +27597,10 @@ snapshots: statuses@2.0.1: {} - stop-iteration-iterator@1.0.0: + stop-iteration-iterator@1.1.0: dependencies: - internal-slot: 1.0.7 + es-errors: 1.3.0 + internal-slot: 1.1.0 storybook-addon-mock@5.0.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: @@ -26526,13 +27634,13 @@ snapshots: - supports-color - utf-8-validate - streamx@2.21.0: + streamx@2.21.1: dependencies: fast-fifo: 1.3.2 queue-tick: 1.0.1 - text-decoder: 1.2.2 + text-decoder: 1.2.3 optionalDependencies: - bare-events: 2.5.0 + bare-events: 2.5.4 string-hash@1.1.3: {} @@ -26579,38 +27687,43 @@ snapshots: dependencies: call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.5 + es-abstract: 1.23.9 - string.prototype.matchall@4.0.11: + string.prototype.matchall@4.0.12: dependencies: call-bind: 1.0.8 + call-bound: 1.0.3 define-properties: 1.2.1 - es-abstract: 1.23.5 + es-abstract: 1.23.9 es-errors: 1.3.0 es-object-atoms: 1.0.0 - get-intrinsic: 1.2.5 + get-intrinsic: 1.2.7 gopd: 1.2.0 has-symbols: 1.1.0 - internal-slot: 1.0.7 - regexp.prototype.flags: 1.5.3 + internal-slot: 1.1.0 + regexp.prototype.flags: 1.5.4 set-function-name: 2.0.2 - side-channel: 1.0.6 + side-channel: 1.1.0 string.prototype.repeat@1.0.0: dependencies: define-properties: 1.2.1 - es-abstract: 1.23.5 + es-abstract: 1.23.9 - string.prototype.trim@1.2.9: + string.prototype.trim@1.2.10: dependencies: call-bind: 1.0.8 + call-bound: 1.0.3 + define-data-property: 1.1.4 define-properties: 1.2.1 - es-abstract: 1.23.5 + es-abstract: 1.23.9 es-object-atoms: 1.0.0 + has-property-descriptors: 1.0.2 - string.prototype.trimend@1.0.8: + string.prototype.trimend@1.0.9: dependencies: call-bind: 1.0.8 + call-bound: 1.0.3 define-properties: 1.2.1 es-object-atoms: 1.0.0 @@ -26749,7 +27862,7 @@ snapshots: estree-walker: 3.0.3 is-reference: 3.0.3 locate-character: 3.0.0 - magic-string: 0.30.14 + magic-string: 0.30.17 periscopic: 3.1.0 svg-parser@2.0.4: {} @@ -26829,7 +27942,7 @@ snapshots: tapable@2.2.1: {} - tar-fs@3.0.6: + tar-fs@3.0.7: dependencies: pump: 3.0.2 tar-stream: 3.1.7 @@ -26841,13 +27954,13 @@ snapshots: dependencies: b4a: 1.6.7 fast-fifo: 1.3.2 - streamx: 2.21.0 + streamx: 2.21.1 - terser-webpack-plugin@5.3.10(webpack@5.94.0): + terser-webpack-plugin@5.3.11(webpack@5.94.0): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 - schema-utils: 3.3.0 + schema-utils: 4.3.0 serialize-javascript: 6.0.2 terser: 5.37.0 webpack: 5.94.0(webpack-cli@4.9.1) @@ -26874,7 +27987,7 @@ snapshots: glob: 7.2.3 minimatch: 3.1.2 - text-decoder@1.2.2: + text-decoder@1.2.3: dependencies: b4a: 1.6.7 @@ -26949,6 +28062,10 @@ snapshots: dependencies: typescript: 5.0.4 + ts-api-utils@2.0.0(typescript@5.0.4): + dependencies: + typescript: 5.0.4 + ts-dedent@2.2.0: {} ts-jest-resolver@2.0.1: @@ -26969,6 +28086,13 @@ snapshots: typescript: 5.0.4 yargs-parser: 21.1.1 + tsconfig-paths-webpack-plugin@4.2.0: + dependencies: + chalk: 4.1.2 + enhanced-resolve: 5.18.0 + tapable: 2.2.1 + tsconfig-paths: 4.2.0 + tsconfig-paths@3.15.0: dependencies: '@types/json5': 0.0.29 @@ -27018,45 +28142,45 @@ snapshots: type-fest@2.19.0: {} - type-fest@4.31.0: {} + type-fest@4.32.0: {} type-is@1.6.18: dependencies: media-typer: 0.3.0 mime-types: 2.1.35 - typed-array-buffer@1.0.2: + typed-array-buffer@1.0.3: dependencies: - call-bind: 1.0.8 + call-bound: 1.0.3 es-errors: 1.3.0 - is-typed-array: 1.1.13 + is-typed-array: 1.1.15 - typed-array-byte-length@1.0.1: + typed-array-byte-length@1.0.3: dependencies: call-bind: 1.0.8 for-each: 0.3.3 gopd: 1.2.0 has-proto: 1.2.0 - is-typed-array: 1.1.13 + is-typed-array: 1.1.15 - typed-array-byte-offset@1.0.3: + typed-array-byte-offset@1.0.4: dependencies: available-typed-arrays: 1.0.7 call-bind: 1.0.8 for-each: 0.3.3 gopd: 1.2.0 has-proto: 1.2.0 - is-typed-array: 1.1.13 - reflect.getprototypeof: 1.0.8 + is-typed-array: 1.1.15 + reflect.getprototypeof: 1.0.10 typed-array-length@1.0.7: dependencies: call-bind: 1.0.8 for-each: 0.3.3 gopd: 1.2.0 - is-typed-array: 1.1.13 + is-typed-array: 1.1.15 possible-typed-array-names: 1.0.0 - reflect.getprototypeof: 1.0.8 + reflect.getprototypeof: 1.0.10 typed-query-selector@2.12.0: {} @@ -27091,12 +28215,12 @@ snapshots: uc.micro@2.1.0: {} - unbox-primitive@1.0.2: + unbox-primitive@1.1.0: dependencies: - call-bind: 1.0.8 - has-bigints: 1.0.2 + call-bound: 1.0.3 + has-bigints: 1.1.0 has-symbols: 1.1.0 - which-boxed-primitive: 1.1.0 + which-boxed-primitive: 1.1.1 unbzip2-stream@1.4.3: dependencies: @@ -27165,12 +28289,12 @@ snapshots: unpipe@1.0.0: {} - unplugin@1.16.0: + unplugin@1.16.1: dependencies: acorn: 8.14.0 webpack-virtual-modules: 0.6.2 - update-browserslist-db@1.1.1(browserslist@4.24.3): + update-browserslist-db@1.1.2(browserslist@4.24.3): dependencies: browserslist: 4.24.3 escalade: 3.2.0 @@ -27211,14 +28335,14 @@ snapshots: urlpattern-polyfill@10.0.0: {} - use-callback-ref@1.3.2(@types/react@18.3.18)(react@18.3.1): + use-callback-ref@1.3.3(@types/react@18.3.18)(react@18.3.1): dependencies: react: 18.3.1 tslib: 2.5.0 optionalDependencies: '@types/react': 18.3.18 - use-callback-ref@1.3.2(react@18.3.1): + use-callback-ref@1.3.3(react@18.3.1): dependencies: react: 18.3.1 tslib: 2.5.0 @@ -27235,7 +28359,7 @@ snapshots: dependencies: react: 18.3.1 - use-sidecar@1.1.2(@types/react@18.3.18)(react@18.3.1): + use-sidecar@1.1.3(@types/react@18.3.18)(react@18.3.1): dependencies: detect-node-es: 1.1.0 react: 18.3.1 @@ -27243,7 +28367,7 @@ snapshots: optionalDependencies: '@types/react': 18.3.18 - use-sidecar@1.1.2(react@18.3.1): + use-sidecar@1.1.3(react@18.3.1): dependencies: detect-node-es: 1.1.0 react: 18.3.1 @@ -27258,10 +28382,10 @@ snapshots: util@0.12.5: dependencies: inherits: 2.0.4 - is-arguments: 1.1.1 - is-generator-function: 1.0.10 - is-typed-array: 1.1.13 - which-typed-array: 1.1.16 + is-arguments: 1.2.0 + is-generator-function: 1.1.0 + is-typed-array: 1.1.15 + which-typed-array: 1.1.18 utila@0.4.0: {} @@ -27360,13 +28484,30 @@ snapshots: webpack: 5.94.0(webpack-cli@4.9.1) webpack-merge: 5.10.0 + webpack-cli@5.1.4(webpack@5.94.0): + dependencies: + '@discoveryjs/json-ext': 0.5.7 + '@webpack-cli/configtest': 2.1.1(webpack-cli@5.1.4)(webpack@5.94.0) + '@webpack-cli/info': 2.0.2(webpack-cli@5.1.4)(webpack@5.94.0) + '@webpack-cli/serve': 2.0.5(webpack-cli@5.1.4)(webpack@5.94.0) + colorette: 2.0.20 + commander: 10.0.1 + cross-spawn: 7.0.6 + envinfo: 7.14.0 + fastest-levenshtein: 1.0.16 + import-local: 3.2.0 + interpret: 3.1.1 + rechoir: 0.8.0 + webpack: 5.94.0(webpack-cli@5.1.4) + webpack-merge: 5.10.0 + webpack-dev-middleware@5.3.4(webpack@5.94.0): dependencies: colorette: 2.0.20 memfs: 3.5.3 mime-types: 2.1.35 range-parser: 1.2.1 - schema-utils: 4.2.0 + schema-utils: 4.3.0 webpack: 5.94.0(webpack-cli@4.9.1) webpack-dev-middleware@6.1.3(webpack@5.94.0): @@ -27375,7 +28516,7 @@ snapshots: memfs: 3.5.3 mime-types: 2.1.35 range-parser: 1.2.1 - schema-utils: 4.2.0 + schema-utils: 4.3.0 optionalDependencies: webpack: 5.94.0(webpack-cli@4.9.1) @@ -27410,8 +28551,8 @@ snapshots: acorn-import-attributes: 1.9.5(acorn@8.14.0) browserslist: 4.24.3 chrome-trace-event: 1.0.4 - enhanced-resolve: 5.17.1 - es-module-lexer: 1.5.4 + enhanced-resolve: 5.18.0 + es-module-lexer: 1.6.0 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 @@ -27422,7 +28563,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(webpack@5.94.0) + terser-webpack-plugin: 5.3.11(webpack@5.94.0) watchpack: 2.4.2 webpack-sources: 3.2.3 optionalDependencies: @@ -27432,6 +28573,38 @@ snapshots: - esbuild - uglify-js + webpack@5.94.0(webpack-cli@5.1.4): + dependencies: + '@types/estree': 1.0.6 + '@webassemblyjs/ast': 1.14.1 + '@webassemblyjs/wasm-edit': 1.14.1 + '@webassemblyjs/wasm-parser': 1.14.1 + acorn: 8.14.0 + acorn-import-attributes: 1.9.5(acorn@8.14.0) + browserslist: 4.24.3 + chrome-trace-event: 1.0.4 + enhanced-resolve: 5.18.0 + es-module-lexer: 1.6.0 + eslint-scope: 5.1.1 + events: 3.3.0 + glob-to-regexp: 0.4.1 + graceful-fs: 4.2.11 + json-parse-even-better-errors: 2.3.1 + loader-runner: 4.3.0 + mime-types: 2.1.35 + neo-async: 2.6.2 + schema-utils: 3.3.0 + tapable: 2.2.1 + terser-webpack-plugin: 5.3.11(webpack@5.94.0) + watchpack: 2.4.2 + webpack-sources: 3.2.3 + optionalDependencies: + webpack-cli: 5.1.4(webpack@5.94.0) + transitivePeerDependencies: + - '@swc/core' + - esbuild + - uglify-js + whatwg-encoding@2.0.0: dependencies: iconv-lite: 0.6.3 @@ -27450,45 +28623,46 @@ snapshots: tr46: 0.0.3 webidl-conversions: 3.0.1 - when-exit@2.1.3: {} + when-exit@2.1.4: {} - which-boxed-primitive@1.1.0: + which-boxed-primitive@1.1.1: dependencies: is-bigint: 1.1.0 - is-boolean-object: 1.2.0 - is-number-object: 1.1.0 - is-string: 1.1.0 - is-symbol: 1.1.0 + is-boolean-object: 1.2.1 + is-number-object: 1.1.1 + is-string: 1.1.1 + is-symbol: 1.1.1 - which-builtin-type@1.2.0: + which-builtin-type@1.2.1: dependencies: - call-bind: 1.0.8 - function.prototype.name: 1.1.6 + call-bound: 1.0.3 + function.prototype.name: 1.1.8 has-tostringtag: 1.0.2 - is-async-function: 2.0.0 - is-date-object: 1.0.5 - is-finalizationregistry: 1.1.0 - is-generator-function: 1.0.10 - is-regex: 1.2.0 - is-weakref: 1.0.2 + is-async-function: 2.1.0 + is-date-object: 1.1.0 + is-finalizationregistry: 1.1.1 + is-generator-function: 1.1.0 + is-regex: 1.2.1 + is-weakref: 1.1.0 isarray: 2.0.5 - which-boxed-primitive: 1.1.0 + which-boxed-primitive: 1.1.1 which-collection: 1.0.2 - which-typed-array: 1.1.16 + which-typed-array: 1.1.18 which-collection@1.0.2: dependencies: is-map: 2.0.3 is-set: 2.0.3 is-weakmap: 2.0.2 - is-weakset: 2.0.3 + is-weakset: 2.0.4 which-module@2.0.1: {} - which-typed-array@1.1.16: + which-typed-array@1.1.18: dependencies: available-typed-arrays: 1.0.7 call-bind: 1.0.8 + call-bound: 1.0.3 for-each: 0.3.3 gopd: 1.2.0 has-tostringtag: 1.0.2 @@ -27603,22 +28777,22 @@ snapshots: xmlchars@2.2.0: {} - y-indexeddb@9.0.12(yjs@13.6.20): + y-indexeddb@9.0.12(yjs@13.6.22): dependencies: lib0: 0.2.99 - yjs: 13.6.20 + yjs: 13.6.22 - y-protocols@1.0.6(yjs@13.6.20): + y-protocols@1.0.6(yjs@13.6.22): dependencies: lib0: 0.2.99 - yjs: 13.6.20 + yjs: 13.6.22 - y-webrtc@10.2.6(yjs@13.6.20): + y-webrtc@10.2.6(yjs@13.6.22): dependencies: lib0: 0.2.99 simple-peer: 9.11.1 - y-protocols: 1.0.6(yjs@13.6.20) - yjs: 13.6.20 + y-protocols: 1.0.6(yjs@13.6.22) + yjs: 13.6.22 optionalDependencies: ws: 8.18.0 transitivePeerDependencies: @@ -27703,7 +28877,7 @@ snapshots: yerror@8.0.0: {} - yjs@13.6.20: + yjs@13.6.22: dependencies: lib0: 0.2.99 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 6efa0c329a846..61003850e0eef 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,5 +1,6 @@ packages: - 'projects/*/*' + - '!projects/js-packages/jetpack-cli' - 'projects/plugins/*/tests/e2e' - 'tools/cli' - 'tools/e2e-commons' diff --git a/projects/github-actions/repo-gardening/changelog/add-repo-gardening-slack-message-customer-reports b/projects/github-actions/repo-gardening/changelog/add-repo-gardening-slack-message-customer-reports new file mode 100644 index 0000000000000..03ad960a6fa7e --- /dev/null +++ b/projects/github-actions/repo-gardening/changelog/add-repo-gardening-slack-message-customer-reports @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Support References: send Slack message when an issue is labeled as customer report. diff --git a/projects/github-actions/repo-gardening/changelog/update-repo-gardening-nomore-heysatellite b/projects/github-actions/repo-gardening/changelog/update-repo-gardening-nomore-heysatellite new file mode 100644 index 0000000000000..691d93fb7236e --- /dev/null +++ b/projects/github-actions/repo-gardening/changelog/update-repo-gardening-nomore-heysatellite @@ -0,0 +1,5 @@ +Significance: patch +Type: removed +Comment: Issue Triage: remove keyword no longer in use. + + diff --git a/projects/github-actions/repo-gardening/changelog/update-repo-gardening-priority-indicators b/projects/github-actions/repo-gardening/changelog/update-repo-gardening-priority-indicators new file mode 100644 index 0000000000000..bdaf44b56c165 --- /dev/null +++ b/projects/github-actions/repo-gardening/changelog/update-repo-gardening-priority-indicators @@ -0,0 +1,4 @@ +Significance: major +Type: changed + +Issue triage: update priority matrix. diff --git a/projects/github-actions/repo-gardening/changelog/update-repo-gardening-videopress-assigments b/projects/github-actions/repo-gardening/changelog/update-repo-gardening-videopress-assigments new file mode 100644 index 0000000000000..67dbfd14a1b07 --- /dev/null +++ b/projects/github-actions/repo-gardening/changelog/update-repo-gardening-videopress-assigments @@ -0,0 +1,5 @@ +Significance: patch +Type: changed +Comment: Team assignments: update VideoPress team assignment. + + diff --git a/projects/github-actions/repo-gardening/src/tasks/gather-support-references/index.js b/projects/github-actions/repo-gardening/src/tasks/gather-support-references/index.js index 1fe15ebc63b42..4ec7836ab1ea5 100644 --- a/projects/github-actions/repo-gardening/src/tasks/gather-support-references/index.js +++ b/projects/github-actions/repo-gardening/src/tasks/gather-support-references/index.js @@ -154,10 +154,6 @@ function formatSlackMessage( payload, channel, message ) { case 'Automattic/jetpack': dris = '@jetpack-da'; break; - case 'Automattic/zero-bs-crm': - case 'Automattic/sensei': - dris = '@heysatellite'; - break; case 'Automattic/WP-Job-Manager': case 'Automattic/Crowdsignal': dris = '@meteorite-team'; @@ -412,13 +408,19 @@ async function createOrUpdateComment( payload, octokit, issueReferences, issueCo /** * Add a label to the issue, if it does not exist yet. * - * @param {GitHub} octokit - Initialized Octokit REST client. - * @param {string} ownerLogin - Repository owner login. - * @param {string} repo - Repository name. - * @param {number} number - Issue number. + * @param {WebhookPayloadIssue} payload - Issue or issue comment event payload. + * @param {GitHub} octokit - Initialized Octokit REST client. * @return {Promise} */ -async function addHappinessLabel( octokit, ownerLogin, repo, number ) { +async function addHappinessLabel( payload, octokit ) { + const { + issue: { number }, + repository: { + name: repo, + owner: { login: ownerLogin }, + }, + } = payload; + const happinessLabel = 'Customer Report'; const labels = await getLabels( octokit, ownerLogin, repo, number ); @@ -436,6 +438,18 @@ async function addHappinessLabel( octokit, ownerLogin, repo, number ) { issue_number: number, labels: [ happinessLabel ], } ); + + // Send Slack notification, if we have the necessary tokens. + // No Slack tokens, we won't be able to escalate. Bail. + const slackToken = getInput( 'slack_token' ); + const channel = getInput( 'slack_quality_channel' ); + if ( ! slackToken || ! channel ) { + return false; + } + + const message = `This issue has been labeled as a Customer Report. Please complete first-line triage within 24 hours.`; + const slackMessageFormat = formatSlackMessage( payload, channel, message ); + await sendSlackMessage( message, channel, payload, slackMessageFormat ); } /** @@ -464,7 +478,7 @@ async function gatherSupportReferences( payload, octokit ) { if ( issueReferences.length > 0 ) { debug( `gather-support-references: Found ${ issueReferences.length } references.` ); await createOrUpdateComment( payload, octokit, issueReferences, issueComments ); - await addHappinessLabel( octokit, owner.login, repo, number ); + await addHappinessLabel( payload, octokit ); } } diff --git a/projects/github-actions/repo-gardening/src/tasks/gather-support-references/readme.md b/projects/github-actions/repo-gardening/src/tasks/gather-support-references/readme.md index 16fc1e76945b8..c5878c415d398 100644 --- a/projects/github-actions/repo-gardening/src/tasks/gather-support-references/readme.md +++ b/projects/github-actions/repo-gardening/src/tasks/gather-support-references/readme.md @@ -2,7 +2,7 @@ Happiness Engineers can comment on issues to add references to support interactions with customers that would like to be updated whenever the problem is solved. -This task creates a new comment that lists all support references found in all comments on the issue. If it finds a support reference, it will also add a label to the issue, "Customer Report". +This task creates a new comment that lists all support references found in all comments on the issue. If it finds a support reference, it will also add a label to the issue, "Customer Report". When that label is added, we warn the triage team in Slack. The tasks also monitors the number of support references it has gathered: diff --git a/projects/github-actions/repo-gardening/src/tasks/reply-to-customers-reminder/index.js b/projects/github-actions/repo-gardening/src/tasks/reply-to-customers-reminder/index.js index 235584bb52718..903268835ae40 100644 --- a/projects/github-actions/repo-gardening/src/tasks/reply-to-customers-reminder/index.js +++ b/projects/github-actions/repo-gardening/src/tasks/reply-to-customers-reminder/index.js @@ -39,10 +39,7 @@ function formatSlackMessage( payload, channel, message ) { case 'Automattic/jetpack': dris = '@jetpack-da'; break; - case 'Automattic/zero-bs-crm': case 'Automattic/sensei': - dris = '@heysatellite'; - break; case 'Automattic/WP-Job-Manager': case 'Automattic/Crowdsignal': dris = '@meteorite-team'; diff --git a/projects/github-actions/repo-gardening/src/tasks/triage-issues/automattic-label-team-assignments.js b/projects/github-actions/repo-gardening/src/tasks/triage-issues/automattic-label-team-assignments.js index aca03945e8e1c..5118601cb46ba 100644 --- a/projects/github-actions/repo-gardening/src/tasks/triage-issues/automattic-label-team-assignments.js +++ b/projects/github-actions/repo-gardening/src/tasks/triage-issues/automattic-label-team-assignments.js @@ -205,7 +205,7 @@ export const automatticAssignments = { board_id: 'https://github.com/orgs/Automattic/projects/908/views/1', }, VideoPress: { - team: 'Agora', + team: 'Nexus', labels: [ '[Package] VideoPress', '[Feature] VideoPress', '[Plugin] VideoPress' ], slack_id: 'C02TQF5VAJD', board_id: 'https://github.com/orgs/Automattic/projects/460', diff --git a/projects/github-actions/repo-gardening/src/utils/parse-content/find-priority.js b/projects/github-actions/repo-gardening/src/utils/parse-content/find-priority.js index 137effa04b940..36b7865bdadec 100644 --- a/projects/github-actions/repo-gardening/src/utils/parse-content/find-priority.js +++ b/projects/github-actions/repo-gardening/src/utils/parse-content/find-priority.js @@ -2,37 +2,82 @@ const debug = require( '../debug' ); /** * Figure out the priority of the issue, based off issue contents. - * Logic follows this priority matrix: pciE2j-oG-p2 + * Logic follows this priority matrix: pfVjQF-su-p2 * * @param {string} body - The issue content. * @return {string} Priority of issue. */ function findPriority( body ) { + let priority = 'TBD'; + + debug( `find-priority: Looking for priority indicators in issue body: ${ body }` ); + // Look for priority indicators in body. const priorityRegex = - /###\sImpact\n\n(?.*)\n\n###\sAvailable\sworkarounds\?\n\n(?.*)\n/gm; + /###\sSite\sowner\simpact\n\n(?.*)\n\n###\sSeverity\n\n(?.*)\n\n###\sWhat\sother\simpact\(s\)\sdoes\sthis\sissue\shave\?\n\n(?.*)\n/gm; let match; while ( ( match = priorityRegex.exec( body ) ) ) { - const [ , impact = '', blocking = '' ] = match; + const { impact = '', extra = '' } = match.groups || {}; + let { severity = '' } = match.groups || {}; + const extras = extra.split( ', ' ); debug( - `find-priority: Reported priority indicators for issue: "${ impact }" / "${ blocking }"` + `find-priority: Reported priority indicators for issue: "${ impact }" / "${ severity }" / "${ extra }"` ); - if ( blocking === 'No and the platform is unusable' ) { - return impact === 'One' ? 'High' : 'BLOCKER'; - } else if ( blocking === 'No but the platform is still usable' ) { - return 'High'; - } else if ( blocking === 'Yes, difficult to implement' ) { - return impact === 'All' ? 'High' : 'Normal'; - } else if ( blocking !== '' && blocking !== '_No response_' ) { - return impact === 'All' || impact === 'Most (> 50%)' ? 'Normal' : 'Low'; + // Folks can provide additional information that can bump severity. + // We also do not want that extra information to downgrade the severity. + if ( extra !== '' && extra !== '_No response_' && ! extras.includes( 'No revenue impact' ) ) { + if ( + ( extras.includes( 'Individual site owner revenue' ) || + extras.includes( 'Agency or developer revenue' ) ) && + severity !== 'Critical' + ) { + severity = 'Major'; + } + // Bump severity to the max if platform revenue is impacted too. + if ( extras.includes( 'Platform revenue' ) ) { + severity = 'Critical'; + } + } + + const impactIndicators = { + isolated: 'Fewer than 20% of the total website/platform users', + scattered: 'Between 20% and 60% of the total website/platform users', + widespread: 'More than 60% of the total website/platform users', + }; + + if ( severity === 'Critical' ) { + priority = impact === impactIndicators.isolated ? 'High' : 'BLOCKER'; + } else if ( severity === 'Major' ) { + if ( impact === impactIndicators.widespread ) { + priority = 'BLOCKER'; + } else if ( impact === impactIndicators.scattered ) { + priority = 'High'; + } else { + priority = 'Normal'; + } + } else if ( severity === 'Moderate' ) { + if ( impact === impactIndicators.widespread ) { + priority = 'High'; + } else if ( impact === impactIndicators.scattered ) { + priority = 'Normal'; + } else { + priority = 'Low'; + } + } else if ( severity !== '' && severity !== '_No response_' ) { + priority = impact === impactIndicators.widespread ? 'Normal' : 'Low'; + } else { + priority = 'TBD'; } - return 'TBD'; } - debug( `find-priority: No priority indicators found.` ); - return 'TBD'; + debug( + `find-priority: ${ + priority === 'TBD' ? 'No' : priority + } priority indicators found. Priority set to ${ priority }.` + ); + return priority; } module.exports = findPriority; diff --git a/projects/js-packages/ai-client/CHANGELOG.md b/projects/js-packages/ai-client/CHANGELOG.md index 73e9fc45eeb76..067a2d2986c40 100644 --- a/projects/js-packages/ai-client/CHANGELOG.md +++ b/projects/js-packages/ai-client/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.25.6] - 2025-01-20 +### Changed +- Updated package dependencies. [#41099] + ## [0.25.5] - 2025-01-06 ### Changed - Updated package dependencies. [#40798] [#40810] [#40811] [#40841] @@ -502,6 +506,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - AI Client: stop using smart document visibility handling on the fetchEventSource library, so it does not restart the completion when changing tabs. [#32004] - Updated package dependencies. [#31468] [#31659] [#31785] +[0.25.6]: https://github.com/Automattic/jetpack-ai-client/compare/v0.25.5...v0.25.6 [0.25.5]: https://github.com/Automattic/jetpack-ai-client/compare/v0.25.4...v0.25.5 [0.25.4]: https://github.com/Automattic/jetpack-ai-client/compare/v0.25.3...v0.25.4 [0.25.3]: https://github.com/Automattic/jetpack-ai-client/compare/v0.25.2...v0.25.3 diff --git a/projects/js-packages/ai-client/package.json b/projects/js-packages/ai-client/package.json index 21266551a3d55..583e74aca2524 100644 --- a/projects/js-packages/ai-client/package.json +++ b/projects/js-packages/ai-client/package.json @@ -1,7 +1,7 @@ { "private": false, "name": "@automattic/jetpack-ai-client", - "version": "0.25.5", + "version": "0.25.6", "description": "A JS client for consuming Jetpack AI services", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/js-packages/ai-client/#readme", "bugs": { @@ -51,16 +51,16 @@ "@microsoft/fetch-event-source": "2.0.1", "@types/react": "18.3.18", "@types/wordpress__block-editor": "11.5.16", - "@wordpress/api-fetch": "7.14.0", - "@wordpress/base-styles": "5.14.0", - "@wordpress/blob": "4.14.0", - "@wordpress/block-editor": "14.9.0", - "@wordpress/components": "29.0.0", - "@wordpress/compose": "7.14.0", - "@wordpress/data": "10.14.0", - "@wordpress/element": "6.14.0", - "@wordpress/i18n": "5.14.0", - "@wordpress/icons": "10.14.0", + "@wordpress/api-fetch": "7.16.0", + "@wordpress/base-styles": "5.16.0", + "@wordpress/blob": "4.16.0", + "@wordpress/block-editor": "14.11.0", + "@wordpress/components": "29.2.0", + "@wordpress/compose": "7.16.0", + "@wordpress/data": "10.16.0", + "@wordpress/element": "6.16.0", + "@wordpress/i18n": "5.16.0", + "@wordpress/icons": "10.16.0", "clsx": "2.1.1", "debug": "4.4.0", "markdown-it": "14.1.0", diff --git a/projects/js-packages/api/CHANGELOG.md b/projects/js-packages/api/CHANGELOG.md index 2117283ec4d82..344b6b3b091bc 100644 --- a/projects/js-packages/api/CHANGELOG.md +++ b/projects/js-packages/api/CHANGELOG.md @@ -2,6 +2,10 @@ ### This is a list detailing changes for the Jetpack RNA Components package releases. +## [0.17.22] - 2025-01-20 +### Changed +- Updated package dependencies. [#41099] + ## [0.17.21] - 2024-12-16 ### Changed - Updated package dependencies. [#40564] @@ -385,6 +389,7 @@ - Add the API methods left behind by the previous PR. - Initial release of jetpack-api package +[0.17.22]: https://github.com/Automattic/jetpack-api/compare/v0.17.21...v0.17.22 [0.17.21]: https://github.com/Automattic/jetpack-api/compare/v0.17.20...v0.17.21 [0.17.20]: https://github.com/Automattic/jetpack-api/compare/v0.17.19...v0.17.20 [0.17.19]: https://github.com/Automattic/jetpack-api/compare/v0.17.18...v0.17.19 diff --git a/projects/js-packages/api/package.json b/projects/js-packages/api/package.json index 96ec8fb3cad8a..9f30efb2ddb9a 100644 --- a/projects/js-packages/api/package.json +++ b/projects/js-packages/api/package.json @@ -1,6 +1,6 @@ { "name": "@automattic/jetpack-api", - "version": "0.17.21", + "version": "0.17.22", "description": "Jetpack Api Package", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/js-packages/api/#readme", "bugs": { @@ -15,7 +15,7 @@ "license": "GPL-2.0-or-later", "dependencies": { "@automattic/jetpack-config": "workspace:*", - "@wordpress/url": "4.14.0" + "@wordpress/url": "4.16.0" }, "devDependencies": { "jest": "29.7.0", diff --git a/projects/js-packages/base-styles/CHANGELOG.md b/projects/js-packages/base-styles/CHANGELOG.md index 02e9d015d652a..d60d124640c22 100644 --- a/projects/js-packages/base-styles/CHANGELOG.md +++ b/projects/js-packages/base-styles/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.6.40] - 2025-01-20 +### Changed +- Updated package dependencies. [#41099] + ## [0.6.39] - 2024-12-16 ### Changed - Updated package dependencies. [#40564] @@ -341,6 +345,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Updated package dependencies. - Use Node 16.7.0 in tooling. This shouldn't change the behavior of the code itself. +[0.6.40]: https://github.com/Automattic/jetpack-base-styles/compare/0.6.39...0.6.40 [0.6.39]: https://github.com/Automattic/jetpack-base-styles/compare/0.6.38...0.6.39 [0.6.38]: https://github.com/Automattic/jetpack-base-styles/compare/0.6.37...0.6.38 [0.6.37]: https://github.com/Automattic/jetpack-base-styles/compare/0.6.36...0.6.37 diff --git a/projects/js-packages/base-styles/package.json b/projects/js-packages/base-styles/package.json index 05981d15021ab..27b8a0c05c52c 100644 --- a/projects/js-packages/base-styles/package.json +++ b/projects/js-packages/base-styles/package.json @@ -1,6 +1,6 @@ { "name": "@automattic/jetpack-base-styles", - "version": "0.6.39", + "version": "0.6.40", "description": "Jetpack components base styles", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/js-packages/base-styles/#readme", "bugs": { @@ -20,6 +20,6 @@ "build-production-js": "echo 'Not implemented.'" }, "devDependencies": { - "@wordpress/base-styles": "5.14.0" + "@wordpress/base-styles": "5.16.0" } } diff --git a/projects/js-packages/boost-score-api/CHANGELOG.md b/projects/js-packages/boost-score-api/CHANGELOG.md index 487cabcd91bf1..082e1c0a596c0 100644 --- a/projects/js-packages/boost-score-api/CHANGELOG.md +++ b/projects/js-packages/boost-score-api/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.1.51] - 2025-01-20 +### Changed +- Updated package dependencies. [#41099] + ## [0.1.50] - 2024-12-16 ### Changed - Updated package dependencies. [#40564] @@ -215,6 +219,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Create package for the boost score bar API [#30781] +[0.1.51]: https://github.com/Automattic/jetpack-boost-score-api/compare/v0.1.50...v0.1.51 [0.1.50]: https://github.com/Automattic/jetpack-boost-score-api/compare/v0.1.49...v0.1.50 [0.1.49]: https://github.com/Automattic/jetpack-boost-score-api/compare/v0.1.48...v0.1.49 [0.1.48]: https://github.com/Automattic/jetpack-boost-score-api/compare/v0.1.47...v0.1.48 diff --git a/projects/js-packages/boost-score-api/package.json b/projects/js-packages/boost-score-api/package.json index cc82d6a7d6331..aaab93a78461d 100644 --- a/projects/js-packages/boost-score-api/package.json +++ b/projects/js-packages/boost-score-api/package.json @@ -1,6 +1,6 @@ { "name": "@automattic/jetpack-boost-score-api", - "version": "0.1.50", + "version": "0.1.51", "description": "A package to get the Jetpack Boost score of a site", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/js-packages/boost-score-api/#readme", "bugs": { @@ -21,7 +21,7 @@ "test-coverage": "pnpm run test --coverage" }, "dependencies": { - "@wordpress/i18n": "5.14.0", + "@wordpress/i18n": "5.16.0", "zod": "3.22.3" }, "devDependencies": { diff --git a/projects/js-packages/charts/CHANGELOG.md b/projects/js-packages/charts/CHANGELOG.md index 98eafba30b5f5..2263c6db45c48 100644 --- a/projects/js-packages/charts/CHANGELOG.md +++ b/projects/js-packages/charts/CHANGELOG.md @@ -5,6 +5,18 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.3.0] - 2025-01-12 +### Changed +- make charts responsive [#40922] + +### Fixed +- Fixed React reference [#40978] + +## [0.2.3] - 2025-01-12 +### Changed +- Replace Rollup with Webpack for charts [#40912] +- Updated package dependencies. [#40841] + ## [0.2.2] - 2025-01-03 ### Changed - Switching esbuild to rollup for better treeshaking. [#40817] @@ -42,6 +54,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Fixed lints following ESLint rule changes for TS [#40584] - Fixing a bug in Chart storybook data. [#40640] +[0.3.0]: https://github.com/Automattic/charts/compare/v0.2.3...v0.3.0 +[0.2.3]: https://github.com/Automattic/charts/compare/v0.2.2...v0.2.3 [0.2.2]: https://github.com/Automattic/charts/compare/v0.2.1...v0.2.2 [0.2.1]: https://github.com/Automattic/charts/compare/v0.2.0...v0.2.1 [0.2.0]: https://github.com/Automattic/charts/compare/v0.1.0...v0.2.0 diff --git a/projects/plugins/social/changelog/add-linkedin-warning b/projects/js-packages/charts/changelog/add-support-gradient-line-chart similarity index 50% rename from projects/plugins/social/changelog/add-linkedin-warning rename to projects/js-packages/charts/changelog/add-support-gradient-line-chart index ab211a2d6f602..202e4443f42d1 100644 --- a/projects/plugins/social/changelog/add-linkedin-warning +++ b/projects/js-packages/charts/changelog/add-support-gradient-line-chart @@ -1,4 +1,4 @@ Significance: minor Type: added -Added linkedin warning +Add gradient fill for line chart diff --git a/projects/js-packages/charts/changelog/add-x-y-axis-orientation b/projects/js-packages/charts/changelog/add-x-y-axis-orientation new file mode 100644 index 0000000000000..1cba564f78b87 --- /dev/null +++ b/projects/js-packages/charts/changelog/add-x-y-axis-orientation @@ -0,0 +1,4 @@ +Significance: minor +Type: added + +Added passing through options for X, Y axis diff --git a/projects/js-packages/charts/changelog/update-chart-library-responsive-stories b/projects/js-packages/charts/changelog/update-chart-library-responsive-stories new file mode 100644 index 0000000000000..61811c2d5b2d0 --- /dev/null +++ b/projects/js-packages/charts/changelog/update-chart-library-responsive-stories @@ -0,0 +1,4 @@ +Significance: minor +Type: added + +Charts: add responsive chart stories diff --git a/projects/js-packages/charts/changelog/update-introduce-slide-gap-prop-to-pie-charts b/projects/js-packages/charts/changelog/update-introduce-slide-gap-prop-to-pie-charts new file mode 100644 index 0000000000000..66558f519e4b5 --- /dev/null +++ b/projects/js-packages/charts/changelog/update-introduce-slide-gap-prop-to-pie-charts @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Introduce gapScale and cornerScale properties diff --git a/projects/js-packages/charts/changelog/update-iterate-over-pie-chart-component b/projects/js-packages/charts/changelog/update-iterate-over-pie-chart-component new file mode 100644 index 0000000000000..7d9c19c45f44c --- /dev/null +++ b/projects/js-packages/charts/changelog/update-iterate-over-pie-chart-component @@ -0,0 +1,4 @@ +Significance: minor +Type: changed + +PieChart: iterate a bit over component API diff --git a/projects/js-packages/charts/index.ts b/projects/js-packages/charts/index.ts index c5666e2773e38..95eee9d57711a 100644 --- a/projects/js-packages/charts/index.ts +++ b/projects/js-packages/charts/index.ts @@ -15,5 +15,5 @@ export { ThemeProvider } from './src/providers/theme'; export { default as useChartMouseHandler } from './src/hooks/use-chart-mouse-handler'; // Types -export type * from './src/components/shared/types'; +export type * from './src/types'; export type { BaseTooltipProps } from './src/components/tooltip'; diff --git a/projects/js-packages/charts/package.json b/projects/js-packages/charts/package.json index a54c6d5460578..883c0dc30697f 100644 --- a/projects/js-packages/charts/package.json +++ b/projects/js-packages/charts/package.json @@ -1,6 +1,6 @@ { "name": "@automattic/charts", - "version": "0.2.2", + "version": "0.3.0", "description": "Display charts within Automattic products.", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/js-packages/charts/#readme", "bugs": { @@ -19,16 +19,37 @@ "test-coverage": "pnpm run test --coverage", "storybook": "cd ../storybook && pnpm run storybook:dev", "compile-ts": "tsc --pretty", - "build": "rollup -c", - "build:prod": "rollup -c --environment NODE_ENV:production", - "build:dev": "rollup -c --environment NODE_ENV:development", - "build:watch": "rollup -c -w", - "clean-build": "rm -rf dist/" + "clean-build": "rm -rf dist/", + "build": "pnpm run build:prod", + "build:prod": "pnpm run clean-build && webpack --config webpack.config.cjs --mode production && bash ./tools/fixup.sh && pnpm run build:types", + "build:types": "tsc --emitDeclarationOnly --declaration --declarationDir dist/types" + }, + "main": "./dist/cjs/index.js", + "module": "./dist/mjs/index.js", + "types": "./dist/types/index.d.ts", + "sideEffects": [ + "*.css", + "*.scss" + ], + "exports": { + ".": { + "import": "./dist/mjs/index.js", + "require": "./dist/cjs/index.js", + "types": "./dist/types/*.d.ts" + }, + "./components/*": { + "import": "./dist/mjs/components/*/index.js", + "require": "./dist/cjs/components/*/index.js", + "types": "./dist/types/*.d.ts" + }, + "./style.css": "./dist/cjs/style.css" }, "dependencies": { + "@babel/runtime": "7.26.0", "@react-spring/web": "9.7.3", "@visx/axis": "^3.12.0", "@visx/event": "^3.8.0", + "@visx/gradient": "3.12.0", "@visx/grid": "^3.12.0", "@visx/group": "^3.12.0", "@visx/legend": "^3.12.0", @@ -42,53 +63,39 @@ "tslib": "2.5.0" }, "devDependencies": { - "@rollup/plugin-commonjs": "26.0.1", - "@rollup/plugin-json": "6.1.0", - "@rollup/plugin-node-resolve": "15.3.0", - "@rollup/plugin-terser": "0.4.3", - "@rollup/plugin-typescript": "12.1.0", + "@babel/core": "7.26.0", + "@babel/plugin-transform-runtime": "7.25.9", + "@babel/preset-env": "7.26.0", + "@babel/preset-react": "7.26.3", + "@babel/preset-typescript": "7.26.0", "@storybook/blocks": "8.4.7", "@storybook/react": "8.4.7", "@types/react": "18.3.18", "@types/react-dom": "18.3.5", + "babel-loader": "9.1.2", + "clean-webpack-plugin": "^4.0.0", + "css-loader": "^6.7.0", + "fork-ts-checker-webpack-plugin": "9.0.2", "jest": "29.7.0", "jest-environment-jsdom": "29.7.0", "jest-extended": "4.0.2", + "mini-css-extract-plugin": "^2.7.0", "postcss": "8.4.47", + "postcss-loader": "^7.0.0", "postcss-modules": "6.0.1", "react": "18.3.1", "react-dom": "18.3.1", - "rollup": "3.29.5", - "rollup-plugin-dts": "6.1.1", - "rollup-plugin-peer-deps-external": "2.2.4", - "rollup-plugin-postcss": "4.0.2", "sass": "1.64.1", "sass-embedded": "1.83.0", + "sass-loader": "^13.0.0", "storybook": "8.4.7", - "typescript": "5.7.2" + "tsconfig-paths-webpack-plugin": "4.2.0", + "typescript": "5.7.2", + "webpack": "^5.88.0", + "webpack-cli": "^5.1.0" }, "peerDependencies": { "react": "^17.0.0 || ^18.0.0", "react-dom": "^17.0.0 || ^18.0.0" - }, - "exports": { - ".": { - "import": "./dist/index.mjs", - "require": "./dist/index.js", - "types": "./dist/index.d.ts" - }, - "./components/*": { - "import": "./dist/components/*/index.js", - "require": "./dist/components/*/index.cjs.js", - "types": "./dist/components/*/index.d.ts" - }, - "./style.css": "./dist/style.css" - }, - "main": "./dist/index.js", - "module": "./dist/index.mjs", - "types": "./dist/index.d.ts", - "sideEffects": [ - "*.css", - "*.scss" - ] + } } diff --git a/projects/js-packages/charts/rollup.config.mjs b/projects/js-packages/charts/rollup.config.mjs deleted file mode 100644 index 38123bdd7bd63..0000000000000 --- a/projects/js-packages/charts/rollup.config.mjs +++ /dev/null @@ -1,142 +0,0 @@ -// Import necessary plugins for building the library -import commonjs from '@rollup/plugin-commonjs'; -import json from '@rollup/plugin-json'; -import resolve from '@rollup/plugin-node-resolve'; -import terser from '@rollup/plugin-terser'; -import typescript from '@rollup/plugin-typescript'; -import { defineConfig } from 'rollup'; -import dts from 'rollup-plugin-dts'; -import peerDepsExternal from 'rollup-plugin-peer-deps-external'; -import postcss from 'rollup-plugin-postcss'; - -// Common plugins used across all build configurations -const commonPlugins = [ - // Automatically externalize peer dependencies - peerDepsExternal( { - includeDependencies: true, - } ), - // Locate and bundle third-party dependencies from node_modules - resolve( { - preferBuiltins: true, - extensions: [ '.tsx', '.ts', '.js', '.jsx' ], - } ), - // Convert CommonJS modules to ES6 - commonjs(), - // Allow importing JSON files - json(), - // Process SCSS/CSS modules - postcss( { - // Configure CSS modules with scoped names - modules: { - generateScopedName: '[name]__[local]__[hash:base64:5]', - }, - extract: 'style.css', - autoModules: false, - use: [ 'sass' ], - } ), -]; - -// Main bundle configuration for the entire library -const mainConfig = { - // Entry point for the bundle - input: 'src/index.ts', - // Output configuration for different module formats - output: [ - { - file: './dist/index.js', - format: 'cjs', // CommonJS format for Node.js - sourcemap: true, - sourcemapPathTransform: relativeSourcePath => { - return `/@automattic/charts/${ relativeSourcePath }`; - }, - }, - { - file: './dist/index.mjs', - format: 'esm', // ES modules for modern bundlers - sourcemap: true, - }, - ], - // Mark all dependencies as external to avoid bundling them - external: [ 'react', 'react-dom', /^@visx\/.*/, '@react-spring/web', 'clsx', 'tslib' ], - plugins: [ - ...commonPlugins, - // TypeScript compilation - typescript( { - tsconfig: './tsconfig.json', - declaration: false, // Declarations handled by dts plugin - sourceMap: true, - compilerOptions: { - verbatimModuleSyntax: true, - }, - } ), - terser(), - ], - // Handle circular dependencies warning - onwarn( warning, warn ) { - if ( warning.code === 'CIRCULAR_DEPENDENCY' ) { - return; - } - warn( warning ); - }, -}; - -// List of components to build individually -const components = [ - 'components/bar-chart', - 'components/line-chart', - 'components/pie-chart', - 'components/pie-semi-circle-chart', - 'components/tooltip', - 'components/legend', - 'components/grid-control', - 'providers/theme', -]; - -// Generate individual bundles for each component -const componentConfigs = components.map( component => ( { - // Component entry point - try both .tsx and .ts extensions - input: `src/${ component }/index`, - // Output both ESM and CJS formats - output: [ - { - file: `dist/${ component }/index.js`, - format: 'esm', - sourcemap: true, - }, - { - file: `dist/${ component }/index.cjs.js`, - format: 'cjs', - sourcemap: true, - }, - ], - // Same external config as main bundle - external: [ 'react', 'react-dom', /^@visx\/.*/, '@react-spring/web', 'clsx', 'tslib' ], - plugins: [ - ...commonPlugins, - typescript( { - tsconfig: './tsconfig.json', - declaration: false, - sourceMap: true, - compilerOptions: { - verbatimModuleSyntax: true, - }, - } ), - terser(), - ], -} ) ); - -// Configuration for generating TypeScript declaration files -const typesConfig = { - input: 'src/index.ts', - output: [ { file: 'dist/index.d.ts', format: 'es' } ], - plugins: [ - dts( { - respectExternal: true, - } ), - ], - // Don't include style imports in type definitions - external: [ /\.scss$/, /\.css$/, 'react', '@types/react' ], -}; - -// Export all configurations to be built in parallel -export default defineConfig( [ mainConfig, ...componentConfigs, typesConfig ] ); diff --git a/projects/js-packages/charts/src/components/bar-chart/bar-chart.tsx b/projects/js-packages/charts/src/components/bar-chart/bar-chart.tsx index 37531106b542e..c68bbed0b27a4 100644 --- a/projects/js-packages/charts/src/components/bar-chart/bar-chart.tsx +++ b/projects/js-packages/charts/src/components/bar-chart/bar-chart.tsx @@ -9,24 +9,30 @@ import { FC, useCallback, type MouseEvent } from 'react'; import { useChartTheme } from '../../providers/theme'; import { GridControl } from '../grid-control'; import { Legend } from '../legend'; +import { withResponsive } from '../shared/with-responsive'; import { BaseTooltip } from '../tooltip'; import styles from './bar-chart.module.scss'; -import type { BaseChartProps, SeriesData } from '../shared/types'; +import type { BaseChartProps, SeriesData } from '../../types'; -interface BarChartProps extends BaseChartProps< SeriesData[] > {} +type BarChartTooltipData = { + value: number; + xLabel: string; + yLabel: string; + seriesIndex: number; +}; -type BarChartTooltipData = { value: number; xLabel: string; yLabel: string; seriesIndex: number }; +interface BarChartProps extends BaseChartProps< SeriesData[] > {} const BarChart: FC< BarChartProps > = ( { data, - width = 500, //TODO: replace when making the components responsive - height = 500, //TODO: replace when making the components responsive margin = { top: 20, right: 20, bottom: 40, left: 40 }, withTooltips = false, showLegend = false, legendOrientation = 'horizontal', className, gridVisibility = 'x', + width, + height = 400, } ) => { const theme = useChartTheme(); const { tooltipOpen, tooltipLeft, tooltipTop, tooltipData, hideTooltip, showTooltip } = @@ -161,4 +167,4 @@ const BarChart: FC< BarChartProps > = ( { }; BarChart.displayName = 'BarChart'; -export default BarChart; +export default withResponsive< BarChartProps >( BarChart ); diff --git a/projects/js-packages/charts/src/components/bar-chart/stories/index.stories.tsx b/projects/js-packages/charts/src/components/bar-chart/stories/index.stories.tsx index 10a7a84c14263..f5beaf7fe8436 100644 --- a/projects/js-packages/charts/src/components/bar-chart/stories/index.stories.tsx +++ b/projects/js-packages/charts/src/components/bar-chart/stories/index.stories.tsx @@ -1,8 +1,8 @@ -import { BarChart } from '../index'; +import BarChart from '../bar-chart'; import data from './sample-data'; import type { Meta, StoryObj } from '@storybook/react'; -export default { +const meta: Meta< typeof BarChart > = { title: 'JS Packages/Charts/Types/Bar Chart', component: BarChart, parameters: { @@ -10,20 +10,30 @@ export default { }, decorators: [ Story => ( -
+
), ], -} satisfies Meta< typeof BarChart >; +}; + +export default meta; -type StoryType = StoryObj< typeof BarChart >; +type Story = StoryObj< typeof BarChart >; // Default story with multiple series -export const Default: StoryType = { +export const Default: Story = { args: { - width: 800, - height: 500, withTooltips: true, data: [ data[ 0 ], data[ 1 ], data[ 2 ] ], // limit to 3 series for better readability showLegend: false, @@ -33,7 +43,7 @@ export const Default: StoryType = { }; // Story with single data series -export const SingleSeries: StoryType = { +export const SingleSeries: Story = { args: { ...Default.args, data: [ data[ 0 ] ], @@ -48,11 +58,9 @@ export const SingleSeries: StoryType = { }; // Story without tooltip -export const ManyDataSeries: StoryType = { +export const ManyDataSeries: Story = { args: { ...Default.args, - width: 1200, - height: 700, data, }, parameters: { @@ -82,3 +90,19 @@ export const WithVerticalLegend = { legendOrientation: 'vertical', }, }; + +export const FixedDimensions: Story = { + args: { + ...Default.args, + width: 800, + height: 400, + data: [ data[ 0 ], data[ 1 ], data[ 2 ] ], + }, + parameters: { + docs: { + description: { + story: 'Bar chart with fixed dimensions that override the responsive behavior.', + }, + }, + }, +}; diff --git a/projects/js-packages/charts/src/components/grid-control/grid-control.tsx b/projects/js-packages/charts/src/components/grid-control/grid-control.tsx index eda5c462d59c0..1363dd6ca4d1b 100644 --- a/projects/js-packages/charts/src/components/grid-control/grid-control.tsx +++ b/projects/js-packages/charts/src/components/grid-control/grid-control.tsx @@ -1,7 +1,7 @@ import { GridRows, GridColumns } from '@visx/grid'; import React from 'react'; import styles from './grid-control.module.scss'; -import type { GridProps } from '../shared/types'; +import type { GridProps } from '../../types'; const GridControl: React.FC< GridProps > = ( { width, diff --git a/projects/js-packages/charts/src/components/line-chart/line-chart.tsx b/projects/js-packages/charts/src/components/line-chart/line-chart.tsx index ad5a7a2d0562e..287cd0845969f 100644 --- a/projects/js-packages/charts/src/components/line-chart/line-chart.tsx +++ b/projects/js-packages/charts/src/components/line-chart/line-chart.tsx @@ -1,6 +1,8 @@ +import { LinearGradient } from '@visx/gradient'; import { XYChart, AnimatedLineSeries, + AnimatedAreaSeries, AnimatedAxis, AnimatedGrid, Tooltip, @@ -10,12 +12,14 @@ import clsx from 'clsx'; import { FC } from 'react'; import { useChartTheme } from '../../providers/theme/theme-provider'; import { Legend } from '../legend'; +import { withResponsive } from '../shared/with-responsive'; import styles from './line-chart.module.scss'; -import type { BaseChartProps, DataPointDate, SeriesData } from '../shared/types'; +import type { BaseChartProps, DataPointDate, SeriesData } from '../../types'; -// TODO: revisit grid and axis options - accept as props for frid lines, axis, values: x, y, all, none - -interface LineChartProps extends BaseChartProps< SeriesData[] > {} +interface LineChartProps extends BaseChartProps< SeriesData[] > { + margin?: { top: number; right: number; bottom: number; left: number }; + withGradientFill: boolean; +} type TooltipData = { date: Date; @@ -80,6 +84,8 @@ const LineChart: FC< LineChartProps > = ( { withTooltips = true, showLegend = false, legendOrientation = 'horizontal', + withGradientFill = false, + options = {}, } ) => { const providerTheme = useChartTheme(); @@ -121,19 +127,51 @@ const LineChart: FC< LineChartProps > = ( { yScale={ { type: 'linear', nice: true } } > - - - - { data.map( ( seriesData, index ) => ( - - ) ) } + + + + { data.map( ( seriesData, index ) => { + const stroke = seriesData.options?.stroke ?? theme.colors[ index % theme.colors.length ]; + + return ( + <> + + + { /** Theoretically the area series should work without the line series; however it outlines the area with borders, which isn't ideal. */ } + { /** TODO: Investigate whehter we could leverage area series alone. */ } + { withGradientFill && ( + + ) } + + ); + } ) } { withTooltips && ( = ( { ); }; -export default LineChart; +export default withResponsive< LineChartProps >( LineChart ); diff --git a/projects/js-packages/charts/src/components/line-chart/stories/index.stories.tsx b/projects/js-packages/charts/src/components/line-chart/stories/index.stories.tsx index df65960c8ec4b..16c6012a3536f 100644 --- a/projects/js-packages/charts/src/components/line-chart/stories/index.stories.tsx +++ b/projects/js-packages/charts/src/components/line-chart/stories/index.stories.tsx @@ -1,8 +1,9 @@ -import { LineChart } from '../index'; +import LineChart from '../line-chart'; import sampleData from './sample-data'; -import type { Meta } from '@storybook/react'; +import webTrafficData from './site-traffic-sample'; +import type { Meta, StoryFn, StoryObj } from '@storybook/react'; -export default { +const meta: Meta< typeof LineChart > = { title: 'JS Packages/Charts/Types/Line Chart', component: LineChart, parameters: { @@ -10,42 +11,61 @@ export default { }, decorators: [ Story => ( -
+
), ], -} satisfies Meta< typeof LineChart >; +}; + +export default meta; -const Template = args => ; +const Template: StoryFn< typeof LineChart > = args => ; // Default story with multiple series -export const Default = Template.bind( {} ); +export const Default: StoryObj< typeof LineChart > = Template.bind( {} ); Default.args = { - width: 500, - height: 300, data: sampleData, showLegend: false, legendOrientation: 'horizontal', + withGradientFill: false, + options: { + axis: { + x: { + orientation: 'bottom', + }, + y: { + orientation: 'left', + }, + }, + }, }; // Story with single data series -export const SingleSeries = Template.bind( {} ); +export const SingleSeries: StoryObj< typeof LineChart > = Template.bind( {} ); SingleSeries.args = { - width: 500, - height: 300, data: [ sampleData[ 0 ] ], // Only London temperature data }; // Story without tooltip -export const WithoutTooltip = Template.bind( {} ); +export const WithoutTooltip: StoryObj< typeof LineChart > = Template.bind( {} ); WithoutTooltip.args = { ...Default.args, withTooltips: false, }; // Story with custom dimensions -export const CustomDimensions = Template.bind( {} ); +export const CustomDimensions: StoryObj< typeof LineChart > = Template.bind( {} ); CustomDimensions.args = { width: 800, height: 400, @@ -53,16 +73,44 @@ CustomDimensions.args = { }; // Story with horizontal legend -export const WithLegend = Template.bind( {} ); +export const WithLegend: StoryObj< typeof LineChart > = Template.bind( {} ); WithLegend.args = { ...Default.args, showLegend: true, }; // Story with vertical legend -export const WithVerticalLegend = Template.bind( {} ); +export const WithVerticalLegend: StoryObj< typeof LineChart > = Template.bind( {} ); WithVerticalLegend.args = { ...Default.args, showLegend: true, legendOrientation: 'vertical', }; + +// Add after existing stories +export const FixedDimensions: StoryObj< typeof LineChart > = Template.bind( {} ); +FixedDimensions.args = { + width: 800, + height: 400, + data: sampleData, + withTooltips: true, +}; + +FixedDimensions.parameters = { + docs: { + description: { + story: 'Line chart with fixed dimensions that override the responsive behavior.', + }, + }, +}; + +// Story with gradient filled line chart +export const GridientFilled: StoryObj< typeof LineChart > = Template.bind( {} ); +GridientFilled.args = { + ...Default.args, + data: webTrafficData, + withGradientFill: true, + options: { + axis: { x: { numTicks: 10 }, y: { orientation: 'right' } }, + }, +}; diff --git a/projects/js-packages/charts/src/components/line-chart/stories/sample-data.ts b/projects/js-packages/charts/src/components/line-chart/stories/sample-data.ts index 1231466c476d4..2486715b1789f 100644 --- a/projects/js-packages/charts/src/components/line-chart/stories/sample-data.ts +++ b/projects/js-packages/charts/src/components/line-chart/stories/sample-data.ts @@ -1,4 +1,4 @@ -import type { SeriesData } from '../../shared/types'; +import type { SeriesData } from '../../../types'; // Sample data const temperatureData: SeriesData[] = [ diff --git a/projects/js-packages/charts/src/components/line-chart/stories/site-traffic-sample.ts b/projects/js-packages/charts/src/components/line-chart/stories/site-traffic-sample.ts new file mode 100644 index 0000000000000..fd95c704c3f84 --- /dev/null +++ b/projects/js-packages/charts/src/components/line-chart/stories/site-traffic-sample.ts @@ -0,0 +1,258 @@ +export default [ + { + label: 'Views', + options: { + stroke: '#069e08', + }, + data: [ + { + date: new Date( '2024-01-01' ), + value: 2558, + }, + { + date: new Date( '2024-01-02' ), + value: 3399, + }, + { + date: new Date( '2024-01-03' ), + value: 2260, + }, + { + date: new Date( '2024-01-04' ), + value: 2331, + }, + { + date: new Date( '2024-01-05' ), + value: 3302, + }, + { + date: new Date( '2024-01-06' ), + value: 1852, + }, + { + date: new Date( '2024-01-07' ), + value: 2607, + }, + { + date: new Date( '2024-01-08' ), + value: 2804, + }, + { + date: new Date( '2024-01-09' ), + value: 3260, + }, + { + date: new Date( '2024-01-10' ), + value: 2941, + }, + { + date: new Date( '2024-01-11' ), + value: 2857, + }, + { + date: new Date( '2024-01-12' ), + value: 3461, + }, + { + date: new Date( '2024-01-13' ), + value: 1548, + }, + { + date: new Date( '2024-01-14' ), + value: 2739, + }, + { + date: new Date( '2024-01-15' ), + value: 3288, + }, + { + date: new Date( '2024-01-16' ), + value: 2869, + }, + { + date: new Date( '2024-01-17' ), + value: 2590, + }, + { + date: new Date( '2024-01-18' ), + value: 2609, + }, + { + date: new Date( '2024-01-19' ), + value: 2648, + }, + { + date: new Date( '2024-01-20' ), + value: 1805, + }, + { + date: new Date( '2024-01-21' ), + value: 2531, + }, + { + date: new Date( '2024-01-22' ), + value: 3605, + }, + { + date: new Date( '2024-01-23' ), + value: 2366, + }, + { + date: new Date( '2024-01-24' ), + value: 2782, + }, + { + date: new Date( '2024-01-25' ), + value: 2885, + }, + { + date: new Date( '2024-01-26' ), + value: 2918, + }, + { + date: new Date( '2024-01-27' ), + value: 2518, + }, + { + date: new Date( '2024-01-28' ), + value: 2378, + }, + { + date: new Date( '2024-01-29' ), + value: 2714, + }, + { + date: new Date( '2024-01-30' ), + value: 3279, + }, + ], + }, + { + label: 'Visitors', + options: { + stroke: 'rgb(230, 139, 40)', + }, + data: [ + { + date: new Date( '2024-01-01' ), + value: 2412, + }, + { + date: new Date( '2024-01-02' ), + value: 1899, + }, + { + date: new Date( '2024-01-03' ), + value: 2061, + }, + { + date: new Date( '2024-01-04' ), + value: 1939, + }, + { + date: new Date( '2024-01-05' ), + value: 1986, + }, + { + date: new Date( '2024-01-06' ), + value: 1560, + }, + { + date: new Date( '2024-01-07' ), + value: 1741, + }, + { + date: new Date( '2024-01-08' ), + value: 2120, + }, + { + date: new Date( '2024-01-09' ), + value: 1889, + }, + { + date: new Date( '2024-01-10' ), + value: 1666, + }, + { + date: new Date( '2024-01-11' ), + value: 2396, + }, + { + date: new Date( '2024-01-12' ), + value: 2276, + }, + { + date: new Date( '2024-01-13' ), + value: 1218, + }, + { + date: new Date( '2024-01-14' ), + value: 1228, + }, + { + date: new Date( '2024-01-15' ), + value: 1600, + }, + { + date: new Date( '2024-01-16' ), + value: 1814, + }, + { + date: new Date( '2024-01-17' ), + value: 1701, + }, + { + date: new Date( '2024-01-18' ), + value: 1507, + }, + { + date: new Date( '2024-01-19' ), + value: 1833, + }, + { + date: new Date( '2024-01-20' ), + value: 1407, + }, + { + date: new Date( '2024-01-21' ), + value: 965, + }, + { + date: new Date( '2024-01-22' ), + value: 2288, + }, + { + date: new Date( '2024-01-23' ), + value: 2135, + }, + { + date: new Date( '2024-01-24' ), + value: 1824, + }, + { + date: new Date( '2024-01-25' ), + value: 2219, + }, + { + date: new Date( '2024-01-26' ), + value: 1918, + }, + { + date: new Date( '2024-01-27' ), + value: 1101, + }, + { + date: new Date( '2024-01-28' ), + value: 1695, + }, + { + date: new Date( '2024-01-29' ), + value: 1615, + }, + { + date: new Date( '2024-01-30' ), + value: 2056, + }, + ], + }, +]; diff --git a/projects/js-packages/charts/src/components/pie-chart/pie-chart.tsx b/projects/js-packages/charts/src/components/pie-chart/pie-chart.tsx index f925ea7faa4c0..0fff77fc76494 100644 --- a/projects/js-packages/charts/src/components/pie-chart/pie-chart.tsx +++ b/projects/js-packages/charts/src/components/pie-chart/pie-chart.tsx @@ -5,18 +5,49 @@ import { SVGProps, type MouseEvent } from 'react'; import useChartMouseHandler from '../../hooks/use-chart-mouse-handler'; import { useChartTheme, defaultTheme } from '../../providers/theme'; import { Legend } from '../legend'; +import { withResponsive } from '../shared/with-responsive'; import { BaseTooltip } from '../tooltip'; import styles from './pie-chart.module.scss'; -import type { BaseChartProps, DataPointPercentage } from '../shared/types'; -import type { PieArcDatum } from '@visx/shape/lib/shapes/Pie'; +import type { BaseChartProps, DataPointPercentage } from '../../types'; // TODO: add animation -interface PieChartProps extends BaseChartProps< DataPointPercentage[] > { +type OmitBaseChartProps = Omit< BaseChartProps< DataPointPercentage[] >, 'width' | 'height' >; + +interface PieChartProps extends OmitBaseChartProps { /** * Inner radius in pixels. If > 0, creates a donut chart. Defaults to 0. */ innerRadius?: number; + + /** + * Size of the chart in pixels + */ + size?: number; + + /** + * Add padding to the chart + */ + padding?: number; + + /** + * Thickness of the pie chart. + * A value between 0 and 1, where 0 means no thickness + * and 1 means the maximum thickness. + */ + thickness?: number; + + /** + * Scale of the gap between groups in the pie chart + * A value between 0 and 1, where 0 means no gap. + */ + gapScale?: number; + + /** + * Scale of the corner radius for the pie chart segments. + * A value between 0 and 1, where 0 means no corner radius. + */ + cornerScale?: number; } /** @@ -27,13 +58,15 @@ interface PieChartProps extends BaseChartProps< DataPointPercentage[] > { */ const PieChart = ( { data, - width = 500, //TODO: replace when making the components responsive - height = 500, //TODO: replace when making the components responsive withTooltips = false, - innerRadius = 0, className, showLegend, legendOrientation, + size, + thickness = 1, + padding = 20, + gapScale = 0, + cornerScale = 0, }: PieChartProps ) => { const providerTheme = useChartTheme(); const { onMouseMove, onMouseLeave, tooltipOpen, tooltipData, tooltipLeft, tooltipTop } = @@ -41,15 +74,36 @@ const PieChart = ( { withTooltips, } ); + const width = size; + const height = size; + // Calculate radius based on width/height const radius = Math.min( width, height ) / 2; + + // Center the chart in the available space const centerX = width / 2; const centerY = height / 2; + // Calculate the angle between each + const padAngle = gapScale * ( ( 2 * Math.PI ) / data.length ); + + const outerRadius = radius - padding; + const innerRadius = outerRadius * ( 1 - thickness ); + + const maxCornerRadius = ( outerRadius - innerRadius ) / 2; + const cornerRadius = cornerScale ? Math.min( cornerScale * outerRadius, maxCornerRadius ) : 0; + + // Map the data to include index for color assignment + const dataWithIndex = data.map( ( d, index ) => ( { + ...d, + index, + } ) ); + const accessors = { - value: ( d: PieArcDatum< DataPointPercentage > ) => d.value, + value: ( d: DataPointPercentage ) => d.value, // Use the color property from the data object as a last resort. The theme provides colours by default. - fill: ( d: PieArcDatum< DataPointPercentage > ) => d?.color || providerTheme.colors[ d.index ], + fill: ( d: DataPointPercentage & { index: number } ) => + d?.color || providerTheme.colors[ d.index ], }; // Create legend items from data @@ -61,13 +115,15 @@ const PieChart = ( { return (
- + - + data={ dataWithIndex } pieValue={ accessors.value } - outerRadius={ radius - 20 } // Leave space for labels/tooltips + outerRadius={ outerRadius } innerRadius={ innerRadius } + padAngle={ padAngle } + cornerRadius={ cornerRadius } > { pie => { return pie.arcs.map( ( arc, index ) => { @@ -78,7 +134,7 @@ const PieChart = ( { const pathProps: SVGProps< SVGPathElement > = { d: pie.path( arc ) || '', - fill: accessors.fill( arc ), + fill: accessors.fill( arc.data ), }; if ( withTooltips ) { @@ -134,4 +190,5 @@ const PieChart = ( { ); }; -export default PieChart; +PieChart.displayName = 'PieChart'; +export default withResponsive< PieChartProps >( PieChart ); diff --git a/projects/js-packages/charts/src/components/pie-chart/stories/index.stories.tsx b/projects/js-packages/charts/src/components/pie-chart/stories/index.stories.tsx index 2276a61b39c35..1e12d368f415b 100644 --- a/projects/js-packages/charts/src/components/pie-chart/stories/index.stories.tsx +++ b/projects/js-packages/charts/src/components/pie-chart/stories/index.stories.tsx @@ -3,21 +3,97 @@ import { PieChart } from '../index'; import type { Meta, StoryObj } from '@storybook/react'; const data = [ - { label: 'A', value: 30 }, - { label: 'B', value: 20 }, - { label: 'C', value: 15 }, - { label: 'D', value: 35 }, + { + label: 'MacOS', + value: 30000, + valueDisplay: '30K', + percentage: 5, + }, + { + label: 'Linux', + value: 22000, + valueDisplay: '22K', + percentage: 1, + }, + { + label: 'Windows', + value: 80000, + valueDisplay: '80K', + percentage: 2, + }, ]; -type StoryType = StoryObj< typeof PieChart >; - -export default { +const meta = { title: 'JS Packages/Charts/Types/Pie Chart', component: PieChart, parameters: { layout: 'centered', }, + decorators: [ + ( Story, { args } ) => ( + +
+ +
+ + ), + ], argTypes: { + size: { + control: { + type: 'range', + min: 100, + max: 800, + step: 10, + }, + }, + thickness: { + control: { + type: 'range', + min: 0, + max: 1, + step: 0.01, + }, + }, + padding: { + control: { + type: 'range', + min: 0, + max: 100, + step: 1, + }, + }, + gapScale: { + control: { + type: 'range', + min: 0, + max: 1, + step: 0.01, + }, + }, + cornerScale: { + control: { + type: 'range', + min: 0, + max: 1, + step: 0.01, + }, + }, + legendOrientation: { + control: 'radio', + options: [ 'horizontal', 'vertical' ], + }, theme: { control: 'select', options: { @@ -28,31 +104,27 @@ export default { defaultValue: undefined, }, }, - decorators: [ - ( Story, { args } ) => ( - -
- -
-
- ), - ], } satisfies Meta< typeof PieChart >; -export const Default: StoryType = { +export default meta; +type Story = StoryObj< typeof PieChart >; + +export const Default: Story = { args: { - width: 400, - height: 400, + size: 400, + thickness: 1, + gapScale: 0, + padding: 20, + cornerScale: 0, withTooltips: false, data, theme: 'default', - innerRadius: 0, showLegend: false, legendOrientation: 'horizontal', }, }; -export const WithHorizontalLegend: StoryType = { +export const WithHorizontalLegend: Story = { args: { ...Default.args, showLegend: true, @@ -60,7 +132,7 @@ export const WithHorizontalLegend: StoryType = { }, }; -export const WithVerticalLegend: StoryType = { +export const WithVerticalLegend: Story = { args: { ...Default.args, showLegend: true, @@ -68,21 +140,21 @@ export const WithVerticalLegend: StoryType = { }, }; -export const Doughnut: StoryType = { +export const Doughnut: Story = { args: { ...Default.args, - innerRadius: 80, + thickness: 0.5, }, parameters: { docs: { description: { - story: 'Doughnut chart variant with inner radius of 80px.', + story: 'Doughnut chart variant with the thickness set to 0.5 (50%).', }, }, }, }; -export const WithTooltips: StoryType = { +export const WithTooltips: Story = { args: { ...Default.args, withTooltips: true, @@ -96,11 +168,11 @@ export const WithTooltips: StoryType = { }, }; -export const WithTooltipsDoughnut: StoryType = { +export const WithTooltipsDoughnut: Story = { args: { ...Default.args, + thickness: 0.5, withTooltips: true, - innerRadius: 100, }, parameters: { docs: { @@ -110,3 +182,28 @@ export const WithTooltipsDoughnut: StoryType = { }, }, }; + +export const FixedDimensions: Story = { + render: args => ( +
+ +
+ ), + args: { + size: 400, + thickness: 1, + padding: 20, + data, + withTooltips: true, + theme: 'default', + showLegend: false, + }, + parameters: { + docs: { + description: { + story: + 'Pie chart with fixed dimensions that override the responsive behavior. Uses size prop instead of width/height.', + }, + }, + }, +}; diff --git a/projects/js-packages/charts/src/components/pie-semi-circle-chart/pie-semi-circle-chart.tsx b/projects/js-packages/charts/src/components/pie-semi-circle-chart/pie-semi-circle-chart.tsx index 9077d45b5c363..8e85cd89aba52 100644 --- a/projects/js-packages/charts/src/components/pie-semi-circle-chart/pie-semi-circle-chart.tsx +++ b/projects/js-packages/charts/src/components/pie-semi-circle-chart/pie-semi-circle-chart.tsx @@ -7,35 +7,41 @@ import clsx from 'clsx'; import { FC, useCallback } from 'react'; import { useChartTheme } from '../../providers/theme/theme-provider'; import { Legend } from '../legend'; +import { withResponsive } from '../shared/with-responsive'; import { BaseTooltip } from '../tooltip'; import styles from './pie-semi-circle-chart.module.scss'; -import type { BaseChartProps, DataPointPercentage } from '../shared/types'; - +import type { BaseChartProps, DataPointPercentage } from '../../types'; interface PieSemiCircleChartProps extends BaseChartProps< DataPointPercentage[] > { + /** + * Size of the chart in pixels + */ + size?: number; + + /** + * Thickness of the pie chart. A value between 0 and 1 + */ + thickness?: number; + /** * Label text to display above the chart */ - label: string; + label?: string; /** * Note text to display below the label */ - note: string; + note?: string; /** * Direction of chart rendering * true for clockwise, false for counter-clockwise */ clockwise?: boolean; - /** - * Thickness of the pie chart. A value between 0 and 1 - */ - thickness?: number; } type ArcData = PieArcDatum< DataPointPercentage >; const PieSemiCircleChart: FC< PieSemiCircleChartProps > = ( { data, - width = 500, //TODO: replace when making the components responsive + size = 500, label, note, className, @@ -49,9 +55,9 @@ const PieSemiCircleChart: FC< PieSemiCircleChartProps > = ( { const { tooltipOpen, tooltipLeft, tooltipTop, tooltipData, hideTooltip, showTooltip } = useTooltip< DataPointPercentage >(); - const centerX = width / 2; - const height = width / 2; - const radius = width / 2; + const centerX = size / 2; + const height = size / 2; + const radius = size / 2; const pad = 0.03; const innerRadius = radius * ( 1 - thickness + pad ); @@ -112,7 +118,7 @@ const PieSemiCircleChart: FC< PieSemiCircleChartProps > = ( {
- + { /* Main chart group that contains both the pie and text elements */ } { /* Pie chart */ } @@ -184,4 +190,5 @@ const PieSemiCircleChart: FC< PieSemiCircleChartProps > = ( { ); }; -export default PieSemiCircleChart; +PieSemiCircleChart.displayName = 'PieSemiCircleChart'; +export default withResponsive< PieSemiCircleChartProps >( PieSemiCircleChart ); diff --git a/projects/js-packages/charts/src/components/pie-semi-circle-chart/stories/index.stories.tsx b/projects/js-packages/charts/src/components/pie-semi-circle-chart/stories/index.stories.tsx index 6878a91700544..32cc2bce8037d 100644 --- a/projects/js-packages/charts/src/components/pie-semi-circle-chart/stories/index.stories.tsx +++ b/projects/js-packages/charts/src/components/pie-semi-circle-chart/stories/index.stories.tsx @@ -1,5 +1,5 @@ import { PieSemiCircleChart } from '../index'; -import type { Meta } from '@storybook/react'; +import type { Meta, StoryObj } from '@storybook/react'; const data = [ { @@ -22,24 +22,35 @@ const data = [ }, ]; -export default { +const ResponsiveDecorator = Story => ( +
+ +
+); + +const meta = { title: 'JS Packages/Charts/Types/Pie Semi Circle Chart', component: PieSemiCircleChart, parameters: { layout: 'centered', }, - decorators: [ - Story => ( -
- -
- ), - ], + decorators: [ ResponsiveDecorator ], argTypes: { - width: { + size: { control: { type: 'range', - min: 0, + min: 100, max: 1000, step: 10, }, @@ -52,42 +63,86 @@ export default { step: 0.01, }, }, + padding: { + control: { + type: 'range', + min: 0, + max: 100, + step: 5, + }, + }, }, } satisfies Meta< typeof PieSemiCircleChart >; -const Template = args => ; +export default meta; +type Story = StoryObj< typeof PieSemiCircleChart >; -export const Default = Template.bind( {} ); -Default.args = { - width: 500, - data, - label: 'OS', - note: 'Windows +10%', - thickness: 0.4, - clockwise: true, - showLegend: false, - legendOrientation: 'horizontal', +export const Default: Story = { + args: { + size: 400, + thickness: 0.4, + padding: 20, + data, + label: 'OS', + note: 'Windows +10%', + clockwise: true, + showLegend: false, + legendOrientation: 'horizontal', + }, +}; + +export const WithTooltips: Story = { + args: { + ...Default.args, + withTooltips: true, + }, + parameters: { + docs: { + description: { + story: 'Semi-circle pie chart with interactive tooltips that appear on hover.', + }, + }, + }, }; -export const WithTooltips = Template.bind( {} ); -WithTooltips.args = { - width: 500, - data, - label: 'OS', - note: 'Windows +10%', - withTooltips: true, +export const WithHorizontalLegend: Story = { + args: { + ...Default.args, + showLegend: true, + legendOrientation: 'horizontal', + }, }; -export const WithHorizontalLegend = Template.bind( {} ); -WithHorizontalLegend.args = { - ...Default.args, - showLegend: true, - legendOrientation: 'horizontal', +export const WithVerticalLegend: Story = { + args: { + ...Default.args, + showLegend: true, + legendOrientation: 'vertical', + }, }; -export const WithVerticalLegend = Template.bind( {} ); -WithVerticalLegend.args = { - ...Default.args, - showLegend: true, - legendOrientation: 'vertical', +export const FixedDimensions: Story = { + render: args => ( +
+ +
+ ), + args: { + size: 400, + thickness: 0.4, + padding: 20, + data, + label: 'Fixed Dimensions', + note: 'Non-responsive chart', + clockwise: true, + showLegend: false, + }, + parameters: { + docs: { + description: { + story: + 'Semi-circle pie chart with fixed dimensions that override the responsive behavior. Uses size prop for unified width/height handling.', + }, + }, + }, }; diff --git a/projects/js-packages/charts/src/components/shared/with-responsive.tsx b/projects/js-packages/charts/src/components/shared/with-responsive.tsx new file mode 100644 index 0000000000000..41b0c79f35337 --- /dev/null +++ b/projects/js-packages/charts/src/components/shared/with-responsive.tsx @@ -0,0 +1,54 @@ +import { useParentSize } from '@visx/responsive'; +import { ComponentType } from 'react'; +import type { BaseChartProps } from '../../types'; + +type ResponsiveConfig = { + maxWidth?: number; + aspectRatio?: number; + debounceTime?: number; + useSingleDimension?: boolean; +}; + +/** + * A higher-order component that provides responsive dimensions + * to the wrapped chart component using useParentSize from @visx/responsive. + * + * @param WrappedComponent - The chart component to be wrapped. + * @param config - Optional configuration for responsive behavior + * @return A functional component that renders the wrapped component with responsive dimensions. + */ +export function withResponsive< T extends BaseChartProps< unknown > >( + WrappedComponent: ComponentType< T >, + config?: ResponsiveConfig +) { + const { maxWidth = 1200, aspectRatio = 0.5, debounceTime = 50 } = config || {}; + + return function ResponsiveChart( props: Omit< T, 'width' | 'height' | 'size' > ) { + const { parentRef, width: parentWidth } = useParentSize( { + debounceTime, + enableDebounceLeadingCall: true, + initialSize: { width: 600, height: 400 }, + } ); + + // Calculate dimensions + const containerWidth = parentWidth ? Math.min( parentWidth, maxWidth ) : 600; + const containerHeight = containerWidth * aspectRatio; + + return ( +
+ +
+ ); + }; +} diff --git a/projects/js-packages/charts/src/hooks/use-chart-mouse-handler.ts b/projects/js-packages/charts/src/hooks/use-chart-mouse-handler.ts index b229f1d0ad41c..5cfe6c9d33498 100644 --- a/projects/js-packages/charts/src/hooks/use-chart-mouse-handler.ts +++ b/projects/js-packages/charts/src/hooks/use-chart-mouse-handler.ts @@ -1,7 +1,7 @@ import { localPoint } from '@visx/event'; import { useTooltip } from '@visx/tooltip'; import { useCallback, type MouseEvent } from 'react'; -import type { DataPoint } from '../components/shared/types'; +import type { DataPoint } from '../types'; type UseChartMouseHandlerProps = { /** diff --git a/projects/js-packages/charts/src/index.ts b/projects/js-packages/charts/src/index.ts index cd8a712946e4b..2a3db6fe2f870 100644 --- a/projects/js-packages/charts/src/index.ts +++ b/projects/js-packages/charts/src/index.ts @@ -13,7 +13,3 @@ export { ThemeProvider } from './providers/theme'; // Hooks export { default as useChartMouseHandler } from './hooks/use-chart-mouse-handler'; - -// Types -export type * from './components/shared/types'; -export type { BaseTooltipProps } from './components/tooltip'; diff --git a/projects/js-packages/charts/src/providers/theme/theme-provider.tsx b/projects/js-packages/charts/src/providers/theme/theme-provider.tsx index 211499ae73583..92ab9d27fc8f3 100644 --- a/projects/js-packages/charts/src/providers/theme/theme-provider.tsx +++ b/projects/js-packages/charts/src/providers/theme/theme-provider.tsx @@ -1,6 +1,6 @@ import { createContext, useContext, FC, type ReactNode } from 'react'; import { defaultTheme } from './themes'; -import type { ChartTheme } from '../../components/shared/types'; +import type { ChartTheme } from '../../types'; /** * Context for sharing theme configuration across components diff --git a/projects/js-packages/charts/src/providers/theme/themes.ts b/projects/js-packages/charts/src/providers/theme/themes.ts index 58bcf3c3fcb31..d00aab9fcb6ef 100644 --- a/projects/js-packages/charts/src/providers/theme/themes.ts +++ b/projects/js-packages/charts/src/providers/theme/themes.ts @@ -1,4 +1,4 @@ -import type { ChartTheme } from '../../components/shared/types'; +import type { ChartTheme } from '../../types'; /** * Default theme configuration diff --git a/projects/js-packages/charts/src/components/shared/types.d.ts b/projects/js-packages/charts/src/types.ts similarity index 83% rename from projects/js-packages/charts/src/components/shared/types.d.ts rename to projects/js-packages/charts/src/types.ts index b6cb767706657..f611eb1297d13 100644 --- a/projects/js-packages/charts/src/components/shared/types.d.ts +++ b/projects/js-packages/charts/src/types.ts @@ -1,5 +1,10 @@ +import { Orientation } from '@visx/axis'; import type { CSSProperties } from 'react'; +type ValueOf< T > = T[ keyof T ]; + +declare type OrientationType = ValueOf< typeof Orientation >; + export type DataPoint = { label: string; value: number; @@ -15,6 +20,7 @@ export type SeriesData = { group?: string; label: string; data: DataPointDate[] | DataPoint[]; + options: { gradient?: { from: string; to: string; toOpacity?: number }; stroke?: string }; }; export type MultipleDataPointsDate = { @@ -65,6 +71,15 @@ export type ChartTheme = { gridColorDark: string; }; +declare type AxisOptions = { + orientation?: OrientationType; + numTicks?: number; + axisClassName?: string; + axisLineClassName?: string; + labelClassName?: string; + tickClassName?: string; +}; + /** * Base properties shared across all chart components */ @@ -80,7 +95,7 @@ export type BaseChartProps< T = DataPoint | DataPointDate > = { /** * Width of the chart in pixels */ - width: number; + width?: number; /** * Height of the chart in pixels */ @@ -110,6 +125,16 @@ export type BaseChartProps< T = DataPoint | DataPointDate > = { * Grid visibility. x is default. */ gridVisibility?: 'x' | 'y' | 'xy' | 'none'; + + /** + * More options for the chart. + */ + options?: { + axis?: { + x?: AxisOptions; + y?: AxisOptions; + }; + }; }; /** diff --git a/projects/js-packages/charts/tools/fixup.sh b/projects/js-packages/charts/tools/fixup.sh new file mode 100644 index 0000000000000..39177d086577c --- /dev/null +++ b/projects/js-packages/charts/tools/fixup.sh @@ -0,0 +1,11 @@ +cat >dist/cjs/package.json <dist/mjs/package.json < ( { + module: { + rules: [ + { + test: /\.(ts|tsx)$/, + use: [ + { + loader: 'babel-loader', + options: { + presets: [ + '@babel/preset-env', + [ + '@babel/preset-react', + { + runtime: 'automatic', + }, + ], + '@babel/preset-typescript', + ], + plugins: [ [ '@babel/plugin-transform-runtime', { useESModules: isESM } ] ], + }, + }, + ], + exclude: /node_modules/, + }, + { + test: /\.(scss|css)$/, + use: [ MiniCssExtractPlugin.loader, 'css-loader', 'postcss-loader', 'sass-loader' ], + }, + ], + }, + resolve: { + extensions: [ '.tsx', '.ts', '.js', '.jsx' ], + plugins: [ new TsconfigPathsPlugin() ], + }, + externals: [ + 'react', + 'react-dom', + /^@visx\/.*/, + '@react-spring/web', + 'clsx', + 'tslib', + '@babel/runtime', + ], + plugins: [ + new CleanWebpackPlugin(), + new MiniCssExtractPlugin( { + filename: pathData => { + const name = pathData.chunk.name; + if ( name === 'index' ) { + return 'style.css'; + } + return `${ name }/style.css`; + }, + } ), + new ForkTsCheckerWebpackPlugin( { + typescript: { + configFile: './tsconfig.json', + mode: 'write-dts', + }, + } ), + ], +} ); + +// Generate entry points for components +const getComponentEntries = () => { + const entries = { + index: './src/index.ts', + }; + + components.forEach( component => { + entries[ component ] = `./src/${ component }/index`; + } ); + + return entries; +}; + +const cjsConfig = { + ...getCommonConfig( false ), + entry: getComponentEntries(), + output: { + path: path.resolve( './', 'dist/cjs' ), + filename: pathData => { + const name = pathData.chunk.name; + if ( name === 'index' ) { + return 'index.js'; + } + return `${ name }/index.js`; + }, + library: { + type: 'commonjs2', + }, + }, + devtool: 'source-map', +}; + +const mjsConfig = { + ...getCommonConfig( true ), + entry: getComponentEntries(), + output: { + path: path.resolve( './', 'dist/mjs' ), + filename: pathData => { + const name = pathData.chunk.name; + if ( name === 'index' ) { + return 'index.js'; + } + return `${ name }/index.js`; + }, + library: { + type: 'module', + }, + environment: { + module: true, + }, + }, + experiments: { + outputModule: true, + }, + devtool: 'source-map', +}; + +module.exports = [ cjsConfig, mjsConfig ]; diff --git a/projects/js-packages/components/CHANGELOG.md b/projects/js-packages/components/CHANGELOG.md index 0771e4a245105..a8082bc235ea1 100644 --- a/projects/js-packages/components/CHANGELOG.md +++ b/projects/js-packages/components/CHANGELOG.md @@ -2,6 +2,14 @@ ### This is a list detailing changes for the Jetpack RNA Components package releases. +## [0.65.4] - 2025-01-20 +### Added +- Add an optional sandboxed tag to show if the current user is sandboxing their API. [#40971] +- Add option for additional custom footer elements. [#40943] + +### Changed +- Updated package dependencies. [#41099] + ## [0.65.3] - 2025-01-09 ### Changed - Updated social-logos import from default to named. [#40816] @@ -1263,6 +1271,7 @@ ### Changed - Update node version requirement to 14.16.1 +[0.65.4]: https://github.com/Automattic/jetpack-components/compare/0.65.3...0.65.4 [0.65.3]: https://github.com/Automattic/jetpack-components/compare/0.65.2...0.65.3 [0.65.2]: https://github.com/Automattic/jetpack-components/compare/0.65.1...0.65.2 [0.65.1]: https://github.com/Automattic/jetpack-components/compare/0.65.0...0.65.1 diff --git a/projects/js-packages/components/components/admin-page/index.tsx b/projects/js-packages/components/components/admin-page/index.tsx index 4e072a791748e..a80b4c207adf0 100644 --- a/projects/js-packages/components/components/admin-page/index.tsx +++ b/projects/js-packages/components/components/admin-page/index.tsx @@ -1,5 +1,7 @@ -import { __ } from '@wordpress/i18n'; +import restApi from '@automattic/jetpack-api'; +import { __, sprintf } from '@wordpress/i18n'; import clsx from 'clsx'; +import { useEffect, useCallback } from 'react'; import JetpackFooter from '../jetpack-footer'; import JetpackLogo from '../jetpack-logo'; import Col from '../layout/col'; @@ -23,17 +25,59 @@ const AdminPage: React.FC< AdminPageProps > = ( { showHeader = true, showFooter = true, showBackground = true, + sandboxedDomain = '', + apiRoot = '', + apiNonce = '', + optionalMenuItems, header, } ) => { + useEffect( () => { + restApi.setApiRoot( apiRoot ); + restApi.setApiNonce( apiNonce ); + }, [ apiRoot, apiNonce ] ); + const rootClassName = clsx( styles[ 'admin-page' ], { [ styles.background ]: showBackground, } ); + const testConnection = useCallback( async () => { + try { + const connectionTest = await restApi.fetchSiteConnectionTest(); + + // eslint-disable-next-line no-alert + window.alert( connectionTest.message ); + } catch ( error ) { + // eslint-disable-next-line no-alert + window.alert( + sprintf( + /* translators: placeholder is an error message. */ + __( 'There was an error testing Jetpack. Error: %s', 'jetpack-components' ), + error.message + ) + ); + } + }, [] ); + return (
{ showHeader && ( - { header ? header : } + + { header ? header : } + { sandboxedDomain && ( + + API Sandboxed + + ) } + ) } @@ -42,7 +86,11 @@ const AdminPage: React.FC< AdminPageProps > = ( { { showFooter && ( - + ) } diff --git a/projects/js-packages/components/components/admin-page/style.module.scss b/projects/js-packages/components/components/admin-page/style.module.scss index 0308309e9526e..a40a0e1ee7235 100644 --- a/projects/js-packages/components/components/admin-page/style.module.scss +++ b/projects/js-packages/components/components/admin-page/style.module.scss @@ -8,4 +8,21 @@ &.background { background-color: var(--jp-white); } -} + + .admin-page-header { + display: flex; + align-items: center; + gap: 8px; + } + + .sandbox-domain-badge { + background: #d63638; + text-transform: uppercase; + letter-spacing: 0.2em; + text-shadow: none; + font-size: 9px; + font-weight: bold; + cursor: pointer; + color: #ffffff; + } +} \ No newline at end of file diff --git a/projects/js-packages/components/components/admin-page/types.ts b/projects/js-packages/components/components/admin-page/types.ts index af694fe8b8c65..59aafbda44226 100644 --- a/projects/js-packages/components/components/admin-page/types.ts +++ b/projects/js-packages/components/components/admin-page/types.ts @@ -1,3 +1,5 @@ +import type { JetpackFooterMenuItem } from '../jetpack-footer/types'; + export type AdminPageProps = { /** * The page content @@ -38,4 +40,24 @@ export type AdminPageProps = { * URL of the site WP Admin. */ siteAdminUrl?: string; + + /** + * The domain of the sanboxed API. + */ + sandboxedDomain?: string; + + /** + * The root URL of the API. + */ + apiRoot?: string; + + /** + * The nonce of the API. + */ + apiNonce?: string; + + /** + * Optional menu items to be displayed + */ + optionalMenuItems?: JetpackFooterMenuItem[]; }; diff --git a/projects/js-packages/components/components/number-slider/test/component.tsx b/projects/js-packages/components/components/number-slider/test/component.tsx index 7586ee43157ac..1ce6d538d3865 100644 --- a/projects/js-packages/components/components/number-slider/test/component.tsx +++ b/projects/js-packages/components/components/number-slider/test/component.tsx @@ -1,12 +1,7 @@ import { render, screen } from '@testing-library/react'; -import ResizeObserver from 'resize-observer-polyfill'; import NumberSlider from '../index'; describe( 'NumberSlider', () => { - beforeAll( () => { - global.ResizeObserver = ResizeObserver; - } ); - it( 'renders the number slider', () => { render( ); expect( screen.getByTestId( 'number-slider' ) ).toBeInTheDocument(); diff --git a/projects/js-packages/components/package.json b/projects/js-packages/components/package.json index c6ef9078b264e..486b340ed70a4 100644 --- a/projects/js-packages/components/package.json +++ b/projects/js-packages/components/package.json @@ -1,6 +1,6 @@ { "name": "@automattic/jetpack-components", - "version": "0.65.3", + "version": "0.65.4", "description": "Jetpack Components Package", "author": "Automattic", "license": "GPL-2.0-or-later", @@ -16,18 +16,19 @@ "dependencies": { "@automattic/format-currency": "1.0.1", "@automattic/jetpack-boost-score-api": "workspace:*", + "@automattic/jetpack-api": "workspace:*", "@automattic/jetpack-scan": "workspace:*", "@babel/runtime": "^7", - "@wordpress/browserslist-config": "6.14.0", - "@wordpress/components": "29.0.0", - "@wordpress/compose": "7.14.0", - "@wordpress/data": "10.14.0", - "@wordpress/dataviews": "4.10.0", - "@wordpress/date": "5.14.0", - "@wordpress/element": "6.14.0", - "@wordpress/i18n": "5.14.0", - "@wordpress/icons": "10.14.0", - "@wordpress/notices": "5.14.0", + "@wordpress/browserslist-config": "6.16.0", + "@wordpress/components": "29.2.0", + "@wordpress/compose": "7.16.0", + "@wordpress/data": "10.16.0", + "@wordpress/dataviews": "4.12.0", + "@wordpress/date": "5.16.0", + "@wordpress/element": "6.16.0", + "@wordpress/i18n": "5.16.0", + "@wordpress/icons": "10.16.0", + "@wordpress/notices": "5.16.0", "clsx": "2.1.1", "prop-types": "^15.7.2", "qrcode.react": "4.2.0", @@ -56,7 +57,6 @@ "react": "18.3.1", "react-dom": "18.3.1", "require-from-string": "2.0.2", - "resize-observer-polyfill": "1.5.1", "storybook": "8.4.7", "ts-dedent": "2.2.0", "typescript": "5.0.4", diff --git a/projects/js-packages/connection/CHANGELOG.md b/projects/js-packages/connection/CHANGELOG.md index 39582108afe6c..36fef8705084a 100644 --- a/projects/js-packages/connection/CHANGELOG.md +++ b/projects/js-packages/connection/CHANGELOG.md @@ -2,6 +2,10 @@ ### This is a list detailing changes for the Jetpack RNA Connection Component releases. +## [0.36.4] - 2025-01-20 +### Changed +- Updated package dependencies. [#41099] + ## [0.36.3] - 2025-01-06 ### Changed - Updated package dependencies. [#40797] [#40798] [#40810] [#40841] @@ -918,6 +922,7 @@ - `Main` and `ConnectUser` components added. - `JetpackRestApiClient` API client added. +[0.36.4]: https://github.com/Automattic/jetpack-connection-js/compare/v0.36.3...v0.36.4 [0.36.3]: https://github.com/Automattic/jetpack-connection-js/compare/v0.36.2...v0.36.3 [0.36.2]: https://github.com/Automattic/jetpack-connection-js/compare/v0.36.1...v0.36.2 [0.36.1]: https://github.com/Automattic/jetpack-connection-js/compare/v0.36.0...v0.36.1 diff --git a/projects/js-packages/connection/package.json b/projects/js-packages/connection/package.json index c67af609bee0b..333e7be4f263d 100644 --- a/projects/js-packages/connection/package.json +++ b/projects/js-packages/connection/package.json @@ -1,6 +1,6 @@ { "name": "@automattic/jetpack-connection", - "version": "0.36.3", + "version": "0.36.4", "description": "Jetpack Connection Component", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/js-packages/connection/#readme", "bugs": { @@ -19,13 +19,13 @@ "@automattic/jetpack-components": "workspace:*", "@automattic/jetpack-config": "workspace:*", "@automattic/jetpack-script-data": "workspace:*", - "@wordpress/base-styles": "5.14.0", - "@wordpress/browserslist-config": "6.14.0", - "@wordpress/components": "29.0.0", - "@wordpress/data": "10.14.0", - "@wordpress/element": "6.14.0", - "@wordpress/i18n": "5.14.0", - "@wordpress/icons": "10.14.0", + "@wordpress/base-styles": "5.16.0", + "@wordpress/browserslist-config": "6.16.0", + "@wordpress/components": "29.2.0", + "@wordpress/data": "10.16.0", + "@wordpress/element": "6.16.0", + "@wordpress/i18n": "5.16.0", + "@wordpress/icons": "10.16.0", "clsx": "2.1.1", "debug": "4.4.0", "prop-types": "^15.7.2" diff --git a/projects/plugins/crm/changelog/renovate-wordpress-monorepo#2 b/projects/js-packages/eslint-config-target-es/changelog/renovate-wordpress-monorepo#2 similarity index 100% rename from projects/plugins/crm/changelog/renovate-wordpress-monorepo#2 rename to projects/js-packages/eslint-config-target-es/changelog/renovate-wordpress-monorepo#2 diff --git a/projects/js-packages/eslint-config-target-es/package.json b/projects/js-packages/eslint-config-target-es/package.json index c228977cca8b7..05ef7687e7fac 100644 --- a/projects/js-packages/eslint-config-target-es/package.json +++ b/projects/js-packages/eslint-config-target-es/package.json @@ -24,7 +24,7 @@ "semver": "^7.3.5" }, "devDependencies": { - "@wordpress/browserslist-config": "6.14.0", + "@wordpress/browserslist-config": "6.16.0", "eslint": "9.16.0", "eslint-plugin-es-x": "7.8.0", "globals": "15.4.0", diff --git a/projects/js-packages/i18n-loader-webpack-plugin/CHANGELOG.md b/projects/js-packages/i18n-loader-webpack-plugin/CHANGELOG.md index 821389f74a14c..a1712b014fb3b 100644 --- a/projects/js-packages/i18n-loader-webpack-plugin/CHANGELOG.md +++ b/projects/js-packages/i18n-loader-webpack-plugin/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [2.0.68] - 2025-01-20 +### Changed +- Updated package dependencies. [#41099] + ## [2.0.67] - 2024-12-16 ### Changed - Updated package dependencies. [#40564] @@ -297,6 +301,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Initial release. +[2.0.68]: https://github.com/Automattic/i18n-loader-webpack-plugin/compare/v2.0.67...v2.0.68 [2.0.67]: https://github.com/Automattic/i18n-loader-webpack-plugin/compare/v2.0.66...v2.0.67 [2.0.66]: https://github.com/Automattic/i18n-loader-webpack-plugin/compare/v2.0.65...v2.0.66 [2.0.65]: https://github.com/Automattic/i18n-loader-webpack-plugin/compare/v2.0.64...v2.0.65 diff --git a/projects/js-packages/i18n-loader-webpack-plugin/package.json b/projects/js-packages/i18n-loader-webpack-plugin/package.json index 969185172136b..6c1a6f334b275 100644 --- a/projects/js-packages/i18n-loader-webpack-plugin/package.json +++ b/projects/js-packages/i18n-loader-webpack-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@automattic/i18n-loader-webpack-plugin", - "version": "2.0.67", + "version": "2.0.68", "description": "A Webpack plugin to load WordPress i18n when Webpack lazy-loads a bundle.", "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/js-packages/i18n-loader-webpack-plugin/#readme", "bugs": { @@ -21,8 +21,8 @@ "debug": "^4.3.2" }, "devDependencies": { - "@wordpress/dependency-extraction-webpack-plugin": "6.14.0", - "@wordpress/i18n": "5.14.0", + "@wordpress/dependency-extraction-webpack-plugin": "6.16.0", + "@wordpress/i18n": "5.16.0", "jest": "29.7.0", "webpack": "5.94.0", "webpack-cli": "4.9.1" diff --git a/projects/js-packages/idc/CHANGELOG.md b/projects/js-packages/idc/CHANGELOG.md index 6ffbb71110178..b2b7ac06506cf 100644 --- a/projects/js-packages/idc/CHANGELOG.md +++ b/projects/js-packages/idc/CHANGELOG.md @@ -2,6 +2,10 @@ ### This is a list detailing changes for the Jetpack RNA IDC package releases. +## 0.12.3 - 2025-01-20 +### Changed +- Updated package dependencies. [#41099] + ## 0.12.2 - 2025-01-06 ### Changed - Updated package dependencies. [#40797] diff --git a/projects/js-packages/idc/package.json b/projects/js-packages/idc/package.json index 331e99ec733e1..7028f01bbe39e 100644 --- a/projects/js-packages/idc/package.json +++ b/projects/js-packages/idc/package.json @@ -1,6 +1,6 @@ { "name": "@automattic/jetpack-idc", - "version": "0.12.2", + "version": "0.12.3", "description": "Jetpack Connection Component", "author": "Automattic", "license": "GPL-2.0-or-later", @@ -9,13 +9,13 @@ "@automattic/jetpack-api": "workspace:*", "@automattic/jetpack-base-styles": "workspace:*", "@automattic/jetpack-components": "workspace:*", - "@wordpress/base-styles": "5.14.0", - "@wordpress/components": "29.0.0", - "@wordpress/compose": "7.14.0", - "@wordpress/data": "10.14.0", - "@wordpress/element": "6.14.0", - "@wordpress/i18n": "5.14.0", - "@wordpress/url": "4.14.0", + "@wordpress/base-styles": "5.16.0", + "@wordpress/components": "29.2.0", + "@wordpress/compose": "7.16.0", + "@wordpress/data": "10.16.0", + "@wordpress/element": "6.16.0", + "@wordpress/i18n": "5.16.0", + "@wordpress/url": "4.16.0", "prop-types": "^15.7.2" }, "devDependencies": { diff --git a/projects/js-packages/jetpack-cli/.gitattributes b/projects/js-packages/jetpack-cli/.gitattributes new file mode 100644 index 0000000000000..992b114f7ffa8 --- /dev/null +++ b/projects/js-packages/jetpack-cli/.gitattributes @@ -0,0 +1,6 @@ +# Files not needed to be distributed in the package. +.gitattributes export-ignore +node_modules export-ignore + +# Files to exclude from the mirror repo +/changelog/** production-exclude diff --git a/projects/js-packages/jetpack-cli/.gitignore b/projects/js-packages/jetpack-cli/.gitignore new file mode 100644 index 0000000000000..27aef833f6a2a --- /dev/null +++ b/projects/js-packages/jetpack-cli/.gitignore @@ -0,0 +1,3 @@ +vendor/ +node_modules/ +package-lock.json diff --git a/projects/js-packages/jetpack-cli/CHANGELOG.md b/projects/js-packages/jetpack-cli/CHANGELOG.md new file mode 100644 index 0000000000000..7b0d651584f5f --- /dev/null +++ b/projects/js-packages/jetpack-cli/CHANGELOG.md @@ -0,0 +1,10 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## 1.0.0 - 2025-01-15 +### Added +- Initial version. diff --git a/projects/js-packages/jetpack-cli/README.md b/projects/js-packages/jetpack-cli/README.md new file mode 100644 index 0000000000000..71453fa986d24 --- /dev/null +++ b/projects/js-packages/jetpack-cli/README.md @@ -0,0 +1,18 @@ +# Jetpack + + +## How to install Jetpack plugin on your site +### Installation From Git Repo + +## Contribute + +## Get Help + +## Security + +Need to report a security vulnerability? Go to [https://automattic.com/security/](https://automattic.com/security/) or directly to our security bug bounty site [https://hackerone.com/automattic](https://hackerone.com/automattic). + +## License + +Licensed under [GNU General Public License v2 (or later)](./LICENSE.txt). + diff --git a/projects/js-packages/jetpack-cli/bin/jp.js b/projects/js-packages/jetpack-cli/bin/jp.js new file mode 100755 index 0000000000000..ae2ec21d48e6f --- /dev/null +++ b/projects/js-packages/jetpack-cli/bin/jp.js @@ -0,0 +1,329 @@ +#!/usr/bin/env node + +import { spawnSync } from 'child_process'; +import fs, { readFileSync } from 'fs'; +import { dirname, resolve } from 'path'; +import process from 'process'; +import { fileURLToPath } from 'url'; +import chalk from 'chalk'; +import dotenv from 'dotenv'; +import prompts from 'prompts'; +import updateNotifier from 'update-notifier'; + +// Get package.json path relative to this file +const __dirname = dirname( fileURLToPath( import.meta.url ) ); +const packageJson = JSON.parse( readFileSync( resolve( __dirname, '../package.json' ), 'utf8' ) ); + +// Check for updates +const notifier = updateNotifier( { + pkg: packageJson, + updateCheckInterval: 1000 * 60 * 60 * 24, // Check once per day +} ); + +// Show update notification +notifier.notify( { + message: + 'Update available for Jetpack CLI: {currentVersion} → {latestVersion}\n' + + 'Run {updateCommand} to update', + isGlobal: true, +} ); + +/** + * Check if a directory is the monorepo root. + * + * @param {string} dir - Directory to check + * @return {boolean} True if this is the monorepo root + */ +const isMonorepoRoot = dir => { + try { + return fs.existsSync( resolve( dir, 'tools/docker/bin/monorepo' ) ); + } catch { + return false; + } +}; + +/** + * Find monorepo root from a starting directory. + * + * @param {string} startDir - Directory to start searching from + * @return {string|null} Path to monorepo root, or null if not found + */ +const findMonorepoRoot = startDir => { + let dir = startDir; + let prevDir; + while ( dir !== prevDir ) { + // Keep going until dirname() stops changing the path + if ( isMonorepoRoot( dir ) ) { + return dir; + } + prevDir = dir; + dir = dirname( dir ); + } + return null; +}; + +/** + * Clone the monorepo. + * + * @param {string} targetDir - Directory to clone into + * @throws {Error} If clone fails + */ +const cloneMonorepo = async targetDir => { + console.log( chalk.blue( 'Cloning Jetpack monorepo...' ) ); + const result = spawnSync( + 'git', + [ 'clone', 'https://github.com/Automattic/jetpack.git', targetDir ], + { stdio: 'inherit' } + ); + + if ( result.status !== 0 ) { + throw new Error( 'Failed to clone repository' ); + } +}; + +/** + * Initialize a new Jetpack development environment. + * + * @throws {Error} If initialization fails + */ +const initJetpack = async () => { + const response = await prompts( { + type: 'text', + name: 'directory', + message: 'Where would you like to clone the Jetpack monorepo?', + initial: './jetpack', + } ); + + if ( ! response.directory ) { + throw new Error( 'Setup cancelled' ); + } + + const targetDir = resolve( process.cwd(), response.directory ); + + if ( fs.existsSync( targetDir ) ) { + throw new Error( `Directory ${ targetDir } already exists` ); + } + + try { + await cloneMonorepo( targetDir ); + + console.log( chalk.green( '\nJetpack monorepo has been cloned successfully!' ) ); + + console.log( '\nNext steps:' ); + + console.log( '1. cd', response.directory ); + + console.log( '2. jp docker up' ); + + console.log( '3. jp docker install' ); + } catch ( error ) { + throw new Error( `Failed to initialize Jetpack: ${ error.message }` ); + } +}; + +// Main execution +const main = async () => { + try { + const args = process.argv.slice( 2 ); + + // Handle version flag + if ( args[ 0 ] === '--version' || args[ 0 ] === '-v' ) { + console.log( chalk.green( packageJson.version ) ); + return; + } + + // Handle 'init' command specially + if ( args[ 0 ] === 'init' ) { + await initJetpack(); + return; + } + + // Try to find monorepo root from current directory + const monorepoRoot = findMonorepoRoot( process.cwd() ); + + if ( ! monorepoRoot ) { + console.error( chalk.red( 'Could not find Jetpack monorepo.' ) ); + + console.log( '\nTo get started:' ); + + console.log( '1. Run', chalk.blue( 'jp init' ), 'to clone the repository' ); + + console.log( ' OR' ); + + console.log( '2. Navigate to an existing Jetpack monorepo directory' ); + throw new Error( 'Monorepo not found' ); + } + + // Handle docker commands that must run on the host machine + if ( args[ 0 ] === 'docker' ) { + const hostCommands = [ 'up', 'down', 'stop', 'clean' ]; + if ( hostCommands.includes( args[ 1 ] ) ) { + // Handle command-specific setup/cleanup + if ( args[ 1 ] === 'up' ) { + // Create required directories + fs.mkdirSync( resolve( monorepoRoot, 'tools/docker/data/jetpack_dev_mysql' ), { + recursive: true, + } ); + fs.mkdirSync( resolve( monorepoRoot, 'tools/docker/data/ssh.keys' ), { + recursive: true, + } ); + fs.mkdirSync( resolve( monorepoRoot, 'tools/docker/wordpress' ), { recursive: true } ); + + // Create empty .env file + fs.writeFileSync( resolve( monorepoRoot, 'tools/docker/.env' ), '' ); + + const configResult = spawnSync( + resolve( monorepoRoot, 'tools/docker/bin/monorepo' ), + [ 'pnpm', 'jetpack', 'docker', 'config' ], + { + stdio: 'inherit', + shell: true, + cwd: monorepoRoot, + } + ); + + if ( configResult.status !== 0 ) { + throw new Error( 'Failed to generate Docker config' ); + } + } else if ( args[ 1 ] === 'clean' ) { + // After docker-compose down -v, also remove local files + const projectName = args.includes( '--type=e2e' ) ? 'jetpack_e2e' : 'jetpack_dev'; + const cleanupPaths = [ + resolve( monorepoRoot, 'tools/docker/wordpress/' ), + resolve( monorepoRoot, 'tools/docker/wordpress-develop/*' ), + resolve( monorepoRoot, 'tools/docker/logs/', projectName ), + resolve( monorepoRoot, 'tools/docker/data/', `${ projectName }_mysql` ), + ]; + + // Function to clean up after docker-compose down + const cleanupFiles = () => { + for ( const path of cleanupPaths ) { + try { + fs.rmSync( path, { recursive: true, force: true } ); + } catch ( error ) { + console.warn( + chalk.yellow( `Warning: Could not remove ${ path }: ${ error.message }` ) + ); + } + } + }; + + // Add cleanup to process events to ensure it runs after docker-compose + process.once( 'beforeExit', cleanupFiles ); + + // Replace 'clean' with 'down -v' in the arguments + args.splice( 1, 1, 'down', '-v' ); + } + + // Get project name (from docker.js) + const projectName = args.includes( '--type=e2e' ) ? 'jetpack_e2e' : 'jetpack_dev'; + + // Build environment variables (from docker.js) + const envVars = { + ...process.env, // Start with process.env + }; + + // Add default env vars if they exist + if ( fs.existsSync( resolve( monorepoRoot, 'tools/docker/default.env' ) ) ) { + Object.assign( + envVars, + dotenv.parse( fs.readFileSync( resolve( monorepoRoot, 'tools/docker/default.env' ) ) ) + ); + } + + // Add user overrides from .env if they exist + if ( fs.existsSync( resolve( monorepoRoot, 'tools/docker/.env' ) ) ) { + Object.assign( + envVars, + dotenv.parse( fs.readFileSync( resolve( monorepoRoot, 'tools/docker/.env' ) ) ) + ); + } + + // Only set these specific vars if they're not already set in .env + if ( ! envVars.COMPOSE_PROJECT_NAME ) { + envVars.COMPOSE_PROJECT_NAME = projectName; + } + if ( ! envVars.PORT_WORDPRESS ) { + envVars.PORT_WORDPRESS = args.includes( '--type=e2e' ) ? '8889' : '80'; + } + + // Load versions from .github/versions.sh if not already set + if ( + ! ( + envVars.PHP_VERSION && + envVars.COMPOSER_VERSION && + envVars.NODE_VERSION && + envVars.PNPM_VERSION + ) + ) { + const versionsPath = resolve( monorepoRoot, '.github/versions.sh' ); + const versions = fs.readFileSync( versionsPath, 'utf8' ); + const versionVars = {}; + versions.split( '\n' ).forEach( line => { + const match = line.match( /^([A-Z_]+)=(.+)$/ ); + if ( match ) { + versionVars[ match[ 1 ] ] = match[ 2 ].replace( /['"]/g, '' ); + } + } ); + + // Only set version vars if they're not already set + if ( ! envVars.PHP_VERSION ) envVars.PHP_VERSION = versionVars.PHP_VERSION; + if ( ! envVars.COMPOSER_VERSION ) envVars.COMPOSER_VERSION = versionVars.COMPOSER_VERSION; + if ( ! envVars.NODE_VERSION ) envVars.NODE_VERSION = versionVars.NODE_VERSION; + if ( ! envVars.PNPM_VERSION ) envVars.PNPM_VERSION = versionVars.PNPM_VERSION; + } + + // Always set HOST_CWD as it's required for Docker context + envVars.HOST_CWD = monorepoRoot; + + // Build the list of compose files to use + const composeFiles = + args[ 0 ] === 'docker' && [ 'build-image', 'install' ].includes( args[ 1 ] ) + ? [ '-f', resolve( monorepoRoot, 'tools/docker/docker-compose-monorepo.yml' ) ] + : [ + '-f', + resolve( monorepoRoot, 'tools/docker/docker-compose.yml' ), + '-f', + resolve( monorepoRoot, 'tools/docker/compose-mappings.built.yml' ), + '-f', + resolve( monorepoRoot, 'tools/docker/compose-extras.built.yml' ), + ]; + + // Add dev profile for monorepo service + const composeArgs = [ 'compose', '--profile', 'dev', ...composeFiles, ...args.slice( 1 ) ]; + + const result = spawnSync( 'docker', composeArgs, { + stdio: 'inherit', + shell: true, + cwd: resolve( monorepoRoot, 'tools/docker' ), + env: envVars, + } ); + + if ( result.status !== 0 ) { + throw new Error( `Docker command failed with status ${ result.status }` ); + } + return; + } + } + + // Run the monorepo script with the original arguments + const result = spawnSync( + resolve( monorepoRoot, 'tools/docker/bin/monorepo' ), + [ 'pnpm', 'jetpack', ...args ], + { + stdio: 'inherit', + shell: true, + cwd: monorepoRoot, // Ensure we're in the monorepo root when running commands + } + ); + + if ( result.status !== 0 ) { + throw new Error( `Command failed with status ${ result.status }` ); + } + } catch ( error ) { + console.error( chalk.red( error.message ) ); + process.exitCode = 1; + } +}; + +main(); diff --git a/projects/js-packages/jetpack-cli/changelog/.gitkeep b/projects/js-packages/jetpack-cli/changelog/.gitkeep new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/projects/js-packages/jetpack-cli/composer.json b/projects/js-packages/jetpack-cli/composer.json new file mode 100644 index 0000000000000..383bbd9b5e5e3 --- /dev/null +++ b/projects/js-packages/jetpack-cli/composer.json @@ -0,0 +1,26 @@ +{ + "name": "automattic/jetpack-cli", + "description": "Development tools for the Jetpack monorepo", + "type": "library", + "license": "GPL-2.0-or-later", + "require": {}, + "require-dev": { + "automattic/jetpack-changelogger": "@dev" + }, + "repositories": [ + { + "type": "path", + "url": "../../packages/*", + "options": { + "monorepo": true + } + } + ], + "minimum-stability": "dev", + "prefer-stable": true, + "extra": { + "mirror-repo": "Automattic/jetpack-cli", + "npmjs-autopublish": true, + "autotagger": true + } +} diff --git a/projects/js-packages/jetpack-cli/eslint.config.mjs b/projects/js-packages/jetpack-cli/eslint.config.mjs new file mode 100644 index 0000000000000..5ad3c9460cc3f --- /dev/null +++ b/projects/js-packages/jetpack-cli/eslint.config.mjs @@ -0,0 +1,11 @@ +import makeBaseConfig from 'jetpack-js-tools/eslintrc/base.mjs'; + +export default [ + ...makeBaseConfig( import.meta.url, { envs: [ 'node' ] } ), + { + rules: { + 'no-console': 'off', + 'n/no-process-exit': 'off', + }, + }, +]; diff --git a/projects/js-packages/jetpack-cli/package.json b/projects/js-packages/jetpack-cli/package.json new file mode 100644 index 0000000000000..f9f7a69a842cc --- /dev/null +++ b/projects/js-packages/jetpack-cli/package.json @@ -0,0 +1,30 @@ +{ + "name": "@automattic/jetpack-cli", + "version": "1.0.0", + "description": "Docker-based CLI for Jetpack development", + "bin": { + "jp": "bin/jp.js" + }, + "repository": { + "type": "git", + "url": "https://github.com/Automattic/jetpack.git", + "directory": "projects/js-packages/jetpack-cli" + }, + "bugs": { + "url": "https://github.com/Automattic/jetpack/labels/[JS Package] Jetpack Cli" + }, + "homepage": "https://github.com/Automattic/jetpack/tree/HEAD/projects/js-packages/jetpack-cli/#readme", + "files": [ + "bin" + ], + "type": "module", + "dependencies": { + "chalk": "^5.4.1", + "dotenv": "^16.3.1", + "prompts": "^2.4.2", + "update-notifier": "^7.0.0" + }, + "publishConfig": { + "access": "public" + } +} diff --git a/projects/js-packages/jetpack-cli/src/index.jsx b/projects/js-packages/jetpack-cli/src/index.jsx new file mode 100644 index 0000000000000..9ad1e06860e5c --- /dev/null +++ b/projects/js-packages/jetpack-cli/src/index.jsx @@ -0,0 +1,2 @@ +// Put your code in this `src/` folder! +// Feel free to delete or rename this file. diff --git a/projects/js-packages/jetpack-cli/tests/index.test.js b/projects/js-packages/jetpack-cli/tests/index.test.js new file mode 100644 index 0000000000000..d34c1ab3fc541 --- /dev/null +++ b/projects/js-packages/jetpack-cli/tests/index.test.js @@ -0,0 +1,7 @@ +// We recommend using `jest` for testing. If you're testing React code, we recommend `@testing-library/react` and related packages. +// Please match the versions used elsewhere in the monorepo. +// +// Please don't add new uses of `mocha`, `chai`, `sinon`, `enzyme`, and so on. We're trying to standardize on one testing framework. +// +// The default setup is to have files named like "name.test.js" (or .jsx, .ts, or .tsx) in this `tests/` directory. +// But you could instead put them in `src/`, or put files like "name.js" (or .jsx, .ts, or .tsx) in `test` or `__tests__` directories somewhere. diff --git a/projects/js-packages/jetpack-cli/tests/jest.config.cjs b/projects/js-packages/jetpack-cli/tests/jest.config.cjs new file mode 100644 index 0000000000000..b5ceacda1f7e0 --- /dev/null +++ b/projects/js-packages/jetpack-cli/tests/jest.config.cjs @@ -0,0 +1,7 @@ +const path = require( 'path' ); +const baseConfig = require( 'jetpack-js-tools/jest/config.base.js' ); + +module.exports = { + ...baseConfig, + rootDir: path.join( __dirname, '..' ), +}; diff --git a/projects/js-packages/licensing/CHANGELOG.md b/projects/js-packages/licensing/CHANGELOG.md index 1b5ce79a0abad..90e2260df1ce9 100644 --- a/projects/js-packages/licensing/CHANGELOG.md +++ b/projects/js-packages/licensing/CHANGELOG.md @@ -5,10 +5,13 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## 0.14.4 - 2025-01-20 +### Changed +- Updated package dependencies. [#41099] + ## 0.14.3 - 2025-01-06 ### Changed -- Updated package dependencies. [#40797] -- Updated package dependencies. [#40813] +- Updated package dependencies. [#40797] [#40813] ## 0.14.2 - 2024-12-16 ### Changed diff --git a/projects/js-packages/licensing/components/activation-screen-controls/index.jsx b/projects/js-packages/licensing/components/activation-screen-controls/index.jsx index 51e764b27353e..2450fb2c21512 100644 --- a/projects/js-packages/licensing/components/activation-screen-controls/index.jsx +++ b/projects/js-packages/licensing/components/activation-screen-controls/index.jsx @@ -100,6 +100,7 @@ const SelectableLicenseKeyInput = props => { <> { - // @ts-expect-error `getUnstableBase` exists in the store but is not typed const { getUnstableBase } = select( coreStore ); - return decodeEntities( getUnstableBase()?.name ); + return decodeEntities( getUnstableBase( undefined )?.name ); }, [] ); const hasMedia = media?.some( diff --git a/projects/js-packages/publicize-components/src/components/social-previews/bluesky.tsx b/projects/js-packages/publicize-components/src/components/social-previews/bluesky.tsx index 73d25c8545e06..3c0ab7753de57 100644 --- a/projects/js-packages/publicize-components/src/components/social-previews/bluesky.tsx +++ b/projects/js-packages/publicize-components/src/components/social-previews/bluesky.tsx @@ -10,12 +10,11 @@ const BlueskyPreview = props => { const { message } = useSocialMediaMessage(); const { content, siteName } = useSelect( select => { const { getEditedPostAttribute } = select( editorStore ); - // @ts-expect-error -- It says, "Property 'getUnstableBase' does not exist..." but it does const { getUnstableBase } = select( coreStore ); return { content: getEditedPostAttribute( 'content' ).split( ' - await expect( page.locator( '#comment-form__verbum' ) ).toContainText( + await expect( page.locator( '.comment-form__verbum' ) ).toContainText( `${ testingUser.username } - Logged in via WordPress.com` ); await page.getByRole( 'button', { name: 'Comment' } ).click(); diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-bar/wpcom-admin-bar.php b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-bar/wpcom-admin-bar.php index a8c7fdf75b1b8..0725aa0be36f5 100644 --- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-bar/wpcom-admin-bar.php +++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-bar/wpcom-admin-bar.php @@ -275,3 +275,20 @@ function wpcom_custom_wpcom_admin_bar_class( $wp_admin_bar_class ) { return '\Automattic\Jetpack\Jetpack_Mu_Wpcom\WPCOM_Admin_Bar'; } add_filter( 'wp_admin_bar_class', 'wpcom_custom_wpcom_admin_bar_class' ); + +/** + * Changes the edit site menu to point to the top-level site editor. + * + * @param WP_Admin_Bar $wp_admin_bar The WP_Admin_Bar core object. + */ +function wpcom_edit_site_menu_override( $wp_admin_bar ) { + if ( $wp_admin_bar->get_node( 'site-editor' ) ) { + $args = array( + 'id' => 'site-editor', + 'href' => admin_url( 'site-editor.php' ), + ); + + $wp_admin_bar->add_node( $args ); + } +} +add_action( 'admin_bar_menu', 'wpcom_edit_site_menu_override', 41 ); diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-interface/removed-calypso-screen-bg-pattern.png b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-interface/removed-calypso-screen-bg-pattern.png deleted file mode 100644 index 25b2a92d6ce39..0000000000000 Binary files a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-interface/removed-calypso-screen-bg-pattern.png and /dev/null differ diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-interface/removed-calypso-screen-notice.scss b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-interface/removed-calypso-screen-notice.scss index 472e1de2b6cff..c2cf784c8c627 100644 --- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-interface/removed-calypso-screen-notice.scss +++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-interface/removed-calypso-screen-notice.scss @@ -1,13 +1,17 @@ +@import "@wordpress/base-styles/breakpoints"; + .components-modal__frame.removed-calypso-screen-notice { width: 512px; .removed-calypso-screen-notice__image { - height: 300px; + max-height: 300px; + flex-grow: 1; background-color: #3858e9; background-size: 30px; display: flex; align-items: center; justify-content: center; + background-image: url('https://s0.wp.com/i/welcome-notices/removed-calypso-screen-bg-pattern.png'); } .removed-calypso-screen-notice__icon { @@ -16,6 +20,16 @@ padding: 48px; border-radius: 12px; box-sizing: content-box; + width: 72px; + height: 72px; + margin: 66px 0; + + @media (max-height: #{ ($break-mobile) }) { + width: 24px; + height: 24px; + padding: 16px; + margin: 24px 0; + } } h1 { diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-interface/removed-calypso-screen-notice.tsx b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-interface/removed-calypso-screen-notice.tsx index 96c0880729512..7b4f279d40e9f 100644 --- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-interface/removed-calypso-screen-notice.tsx +++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-interface/removed-calypso-screen-notice.tsx @@ -2,7 +2,7 @@ import { Guide } from '@wordpress/components'; import { createRoot, useState } from '@wordpress/element'; -import { __, sprintf } from '@wordpress/i18n'; +import { __, hasTranslation as _hasTranslation, sprintf } from '@wordpress/i18n'; import { Icon, archive, @@ -14,23 +14,139 @@ import { verse, } from '@wordpress/icons'; import { addQueryArgs } from '@wordpress/url'; -import bgPattern from './removed-calypso-screen-bg-pattern.png'; import './removed-calypso-screen-notice.scss'; +const hasTranslation = text => { + const currentLanguage = document.querySelector( 'html' )?.getAttribute( 'lang' ); + + if ( currentLanguage?.startsWith( 'en' ) ) { + return true; + } + + return _hasTranslation( text, undefined, 'jetpack-mu-wpcom' ); +}; + const Notice = () => { const [ isOpen, setIsOpen ] = useState( true ); - const icons = { - 'edit.php': verse, - 'edit.php?post_type=page': pages, - 'edit.php?post_type=jetpack-portfolio': archive, - 'edit.php?post_type=jetpack-testimonial': commentContent, - 'edit-comments.php': postComments, - 'edit-tags.php?taxonomy=category': category, - 'edit-tags.php?taxonomy=post_tag': tag, + + const titleFallback = sprintf( + // translators: %s: page name + __( 'The %s view just got better', 'jetpack-mu-wpcom' ), + removedCalypsoScreenNoticeConfig.title + ); + + const descriptionFallback = sprintf( + // translators: %s: page name + __( + "We've adopted WordPress's main %s view to bring improvements to you and millions of WordPress users worldwide.", + 'jetpack-mu-wpcom' + ), + removedCalypsoScreenNoticeConfig.title + ); + + const config = { + 'edit.php': { + icon: verse, + title: hasTranslation( 'The Posts view just got better' ) + ? __( 'The Posts view just got better', 'jetpack-mu-wpcom' ) + : titleFallback, + description: hasTranslation( + "We've adopted WordPress' main Posts view to bring improvements to you and millions of WordPress users worldwide." + ) + ? __( + "We've adopted WordPress' main Posts view to bring improvements to you and millions of WordPress users worldwide.", + 'jetpack-mu-wpcom' + ) + : descriptionFallback, + }, + 'edit.php?post_type=page': { + icon: pages, + title: hasTranslation( 'The Pages view just got better' ) + ? __( 'The Pages view just got better', 'jetpack-mu-wpcom' ) + : titleFallback, + description: hasTranslation( + "We've adopted WordPress' main Pages view to bring improvements to you and millions of WordPress users worldwide." + ) + ? __( + "We've adopted WordPress' main Pages view to bring improvements to you and millions of WordPress users worldwide.", + 'jetpack-mu-wpcom' + ) + : descriptionFallback, + }, + 'edit.php?post_type=jetpack-portfolio': { + icon: archive, + title: hasTranslation( 'The Portfolio Projects view just got better' ) + ? __( 'The Portfolio Projects view just got better', 'jetpack-mu-wpcom' ) + : titleFallback, + description: hasTranslation( + "We've adopted WordPress' main Portfolio Projects view to bring improvements to you and millions of WordPress users worldwide." + ) + ? __( + "We've adopted WordPress' main Portfolio Projects view to bring improvements to you and millions of WordPress users worldwide.", + 'jetpack-mu-wpcom' + ) + : descriptionFallback, + }, + 'edit.php?post_type=jetpack-testimonial': { + icon: commentContent, + title: hasTranslation( 'The Testimonials view just got better' ) + ? __( 'The Testimonials view just got better', 'jetpack-mu-wpcom' ) + : titleFallback, + description: hasTranslation( + "We've adopted WordPress' main Testimonials view to bring improvements to you and millions of WordPress users worldwide." + ) + ? __( + "We've adopted WordPress' main Testimonials view to bring improvements to you and millions of WordPress users worldwide.", + 'jetpack-mu-wpcom' + ) + : descriptionFallback, + }, + 'edit-comments.php': { + icon: postComments, + title: hasTranslation( 'The Comments view just got better' ) + ? __( 'The Comments view just got better', 'jetpack-mu-wpcom' ) + : titleFallback, + description: hasTranslation( + "We've adopted WordPress' main Comments view to bring improvements to you and millions of WordPress users worldwide." + ) + ? __( + "We've adopted WordPress' main Comments view to bring improvements to you and millions of WordPress users worldwide.", + 'jetpack-mu-wpcom' + ) + : descriptionFallback, + }, + 'edit-tags.php?taxonomy=category': { + icon: category, + title: hasTranslation( 'The Categories view just got better' ) + ? __( 'The Categories view just got better', 'jetpack-mu-wpcom' ) + : titleFallback, + description: hasTranslation( + "We've adopted WordPress' main Categories view to bring improvements to you and millions of WordPress users worldwide." + ) + ? __( + "We've adopted WordPress' main Categories view to bring improvements to you and millions of WordPress users worldwide.", + 'jetpack-mu-wpcom' + ) + : descriptionFallback, + }, + 'edit-tags.php?taxonomy=post_tag': { + icon: tag, + title: hasTranslation( 'The Tags view just got better' ) + ? __( 'The Tags view just got better', 'jetpack-mu-wpcom' ) + : titleFallback, + description: hasTranslation( + "We've adopted WordPress' main Tags view to bring improvements to you and millions of WordPress users worldwide." + ) + ? __( + "We've adopted WordPress' main Tags view to bring improvements to you and millions of WordPress users worldwide.", + 'jetpack-mu-wpcom' + ) + : descriptionFallback, + }, }; - if ( ! Object.keys( icons ).includes( removedCalypsoScreenNoticeConfig.screen ) ) { + if ( ! Object.keys( config ).includes( removedCalypsoScreenNoticeConfig.screen ) ) { return null; } @@ -58,38 +174,23 @@ const Notice = () => { return ( -
- -
- +
+ +
), content: ( <>

{ title }

-

- { sprintf( - // translators: %s: page name - __( - "We've adopted WordPress's main %s view to bring improvements to you and millions of WordPress users worldwide.", - 'jetpack-mu-wpcom' - ), - removedCalypsoScreenNoticeConfig.title - ) } -

+

{ config[ removedCalypsoScreenNoticeConfig.screen ].description }

), }, diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-interface/wpcom-admin-interface.php b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-interface/wpcom-admin-interface.php index e3d2d404765a2..b1d54f05d3fed 100644 --- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-interface/wpcom-admin-interface.php +++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-admin-interface/wpcom-admin-interface.php @@ -393,7 +393,8 @@ function wpcom_show_admin_interface_notice() { */ function wpcom_is_duplicate_views_experiment_enabled() { $experiment_platform = 'calypso'; - $experiment_name = "{$experiment_platform}_post_onboarding_holdout_120924"; + $experiment_name = "{$experiment_platform}_post_onboarding_holdout_160125"; + $aa_test_name = "{$experiment_platform}_post_onboarding_aa_150125"; static $is_enabled = null; if ( $is_enabled !== null ) { @@ -401,11 +402,12 @@ function wpcom_is_duplicate_views_experiment_enabled() { } if ( ( new Host() )->is_wpcom_simple() ) { + \ExPlat\assign_current_user( $aa_test_name ); $is_enabled = 'treatment' === \ExPlat\assign_current_user( $experiment_name ); return $is_enabled; } - $option_name = 'duplicate_views_experiment_assignment'; + $option_name = 'remove_duplicate_views_experiment_assignment'; $variation = get_user_option( $option_name, get_current_user_id() ); if ( false !== $variation ) { @@ -418,6 +420,12 @@ function wpcom_is_duplicate_views_experiment_enabled() { return $is_enabled; } + $aa_test_request_path = add_query_arg( + array( 'experiment_name' => $aa_test_name ), + "/experiments/0.1.0/assignments/{$experiment_platform}" + ); + Client::wpcom_json_api_request_as_user( $aa_test_request_path, 'v2' ); + $request_path = add_query_arg( array( 'experiment_name' => $experiment_name ), "/experiments/0.1.0/assignments/{$experiment_platform}" @@ -455,6 +463,22 @@ function wpcom_is_duplicate_views_experiment_enabled() { * the first time. */ function wpcom_show_removed_calypso_screen_notice() { + if ( defined( 'IS_WPCOM' ) && IS_WPCOM ) { + $blog_id = get_current_blog_id(); + } else { + $jetpack_options = get_option( 'jetpack_options' ); + if ( is_array( $jetpack_options ) && isset( $jetpack_options['id'] ) ) { + $blog_id = (int) $jetpack_options['id']; + } else { + $blog_id = get_current_blog_id(); + } + } + + // Do not show notice on sites created after the experiment started (2025-01-16). + if ( $blog_id > 240790000 ) { // 240790000 is the ID of a site created on 2025-01-16. + return; + } + $admin_menu_class = wpcom_get_custom_admin_menu_class(); if ( ! $admin_menu_class ) { return; @@ -466,9 +490,51 @@ function wpcom_show_removed_calypso_screen_notice() { return; } - $dismissed_notices = get_user_option( 'wpcom_removed_calypso_screen_dismissed_notices' ); - if ( is_array( $dismissed_notices ) && in_array( $current_screen, $dismissed_notices, true ) ) { - return; + if ( ( new Host() )->is_wpcom_simple() ) { + $preferences = get_user_attribute( get_current_user_id(), 'calypso_preferences' ); + $is_dismissed = $preferences[ 'removed-calypso-screen-dismissed-notice-' . $current_screen ] ?? false; + if ( $is_dismissed ) { + return; + } + } else { + $notices_dismissed_locally = get_user_option( 'wpcom_removed_calypso_screen_dismissed_notices' ); + if ( ! is_array( $notices_dismissed_locally ) ) { + $notices_dismissed_locally = array(); + } + + if ( in_array( $current_screen, $notices_dismissed_locally, true ) ) { + return; + } + + if ( ! ( new Jetpack_Connection() )->is_user_connected() ) { + return; + } + + $response = Client::wpcom_json_api_request_as_user( '/me/preferences', 'v2' ); + if ( is_wp_error( $response ) ) { + return; + } + + $response_code = wp_remote_retrieve_response_code( $response ); + if ( 200 !== $response_code ) { + return; + } + + $notices_dismissed_globally = array(); + $preferences = json_decode( wp_remote_retrieve_body( $response ), true ); + foreach ( $preferences as $key => $value ) { + if ( $value && preg_match( '/^removed-calypso-screen-dismissed-notice-(.+)$/', $key, $matches ) ) { + $notices_dismissed_globally[] = $matches[1]; + } + } + + if ( array_diff( $notices_dismissed_globally, $notices_dismissed_locally ) ) { + update_user_option( get_current_user_id(), 'wpcom_removed_calypso_screen_dismissed_notices', $notices_dismissed_globally, true ); + } + + if ( in_array( $current_screen, $notices_dismissed_globally, true ) ) { + return; + } } if ( ! wpcom_is_duplicate_views_experiment_enabled() ) { @@ -531,18 +597,32 @@ function wpcom_get_custom_admin_menu_class() { } /** - * Handles the AJAX request to dismiss a notice of a removed Calypsos screen. + * Handles the AJAX request to dismiss a notice of a removed Calypso screen. */ function wpcom_dismiss_removed_calypso_screen_notice() { check_ajax_referer( 'wpcom_dismiss_removed_calypso_screen_notice' ); if ( isset( $_REQUEST['screen'] ) ) { - $screen = sanitize_text_field( wp_unslash( $_REQUEST['screen'] ) ); - $dismissed_notices = get_user_option( 'wpcom_removed_calypso_screen_dismissed_notices' ); - if ( ! is_array( $dismissed_notices ) ) { - $dismissed_notices = array(); + $screen = sanitize_text_field( wp_unslash( $_REQUEST['screen'] ) ); + if ( ( new Host() )->is_wpcom_simple() ) { + $preferences = get_user_attribute( get_current_user_id(), 'calypso_preferences' ); + $preferences[ 'removed-calypso-screen-dismissed-notice-' . $screen ] = true; + update_user_attribute( get_current_user_id(), 'calypso_preferences', $preferences ); + } else { + Client::wpcom_json_api_request_as_user( + '/me/preferences', + '2', + array( + 'method' => 'POST', + ), + array( 'calypso_preferences' => (object) array( 'removed-calypso-screen-dismissed-notice-' . $screen => true ) ) + ); + $notices_dismissed_locally = get_user_option( 'wpcom_removed_calypso_screen_dismissed_notices' ); + if ( ! is_array( $notices_dismissed_locally ) ) { + $notices_dismissed_locally = array(); + } + $notices_dismissed_locally[] = $screen; + update_user_option( get_current_user_id(), 'wpcom_removed_calypso_screen_dismissed_notices', $notices_dismissed_locally, true ); } - $dismissed_notices[] = $screen; - update_user_option( get_current_user_id(), 'wpcom_removed_calypso_screen_dismissed_notices', $dismissed_notices, true ); } wp_die(); } diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-block-editor/class-jetpack-wpcom-block-editor.php b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-block-editor/class-jetpack-wpcom-block-editor.php index 36872a7dd31af..d39b8a616cf4c 100644 --- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-block-editor/class-jetpack-wpcom-block-editor.php +++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-block-editor/class-jetpack-wpcom-block-editor.php @@ -128,11 +128,11 @@ private function check_iframe_cookie_setting() { if ( isset( $_SERVER['REQUEST_URI'] ) && empty( $_GET['calypsoify_cookie_check'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended header( 'Location: ' . esc_url_raw( wp_unslash( $_SERVER['REQUEST_URI'] ) . '&calypsoify_cookie_check=true' ) ); - exit; + exit( 0 ); } header( 'X-Frame-Options: DENY' ); - exit; + exit( 0 ); } /** @@ -210,7 +210,7 @@ public function add_login_html() { */ public function do_redirect() { wp_safe_redirect( $GLOBALS['redirect_to'] ); - exit; + exit( 0 ); } /** diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-blocks/event-countdown/event-countdown.php b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-blocks/event-countdown/event-countdown.php index 57510c48b276f..7fa717e786c29 100644 --- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-blocks/event-countdown/event-countdown.php +++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-blocks/event-countdown/event-countdown.php @@ -47,8 +47,4 @@ function load_assets( $attr, $content ) { function enqueue_block_editor_assets() { \jetpack_mu_wpcom_enqueue_assets( 'wpcom-blocks-event-countdown-editor', array( 'js', 'css' ) ); } -if ( is_admin() ) { - add_action( 'enqueue_block_assets', __NAMESPACE__ . '\enqueue_block_editor_assets' ); -} else { - add_action( 'enqueue_block_editor_assets', __NAMESPACE__ . '\enqueue_block_editor_assets' ); -} +add_action( 'enqueue_block_editor_assets', __NAMESPACE__ . '\enqueue_block_editor_assets' ); diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-blocks/timeline/timeline.php b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-blocks/timeline/timeline.php index 3d3dc83b4f793..6d895f58c523a 100644 --- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-blocks/timeline/timeline.php +++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-blocks/timeline/timeline.php @@ -47,8 +47,4 @@ function load_assets( $attr, $content ) { function enqueue_block_editor_assets() { \jetpack_mu_wpcom_enqueue_assets( 'wpcom-blocks-timeline-editor', array( 'js', 'css' ) ); } -if ( is_admin() ) { - add_action( 'enqueue_block_assets', __NAMESPACE__ . '\enqueue_block_editor_assets' ); -} else { - add_action( 'enqueue_block_editor_assets', __NAMESPACE__ . '\enqueue_block_editor_assets' ); -} +add_action( 'enqueue_block_editor_assets', __NAMESPACE__ . '\enqueue_block_editor_assets' ); diff --git a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-global-styles/index.php b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-global-styles/index.php index cd1bc2fd6ece8..4915adfe8c4ae 100644 --- a/projects/packages/jetpack-mu-wpcom/src/features/wpcom-global-styles/index.php +++ b/projects/packages/jetpack-mu-wpcom/src/features/wpcom-global-styles/index.php @@ -210,16 +210,7 @@ function wpcom_global_styles_enqueue_block_editor_assets() { * @return void */ function wpcom_global_styles_enqueue_assets() { - if ( - ! wpcom_global_styles_current_user_can_edit_wp_global_styles() || - ! wpcom_should_limit_global_styles() || - ! wpcom_global_styles_in_use() - ) { - return; - } - - $asset_file = include Jetpack_Mu_Wpcom::BASE_DIR . 'build/wpcom-global-styles-editor/wpcom-global-styles-editor.asset.php'; - + $asset_file = include Jetpack_Mu_Wpcom::BASE_DIR . 'build/wpcom-global-styles-frontend/wpcom-global-styles-frontend.asset.php'; wp_enqueue_script( 'wpcom-global-styles-frontend', plugins_url( 'build/wpcom-global-styles-frontend/wpcom-global-styles-frontend.js', Jetpack_Mu_Wpcom::BASE_FILE ), @@ -227,6 +218,15 @@ function wpcom_global_styles_enqueue_assets() { $asset_file['version'] ?? filemtime( Jetpack_Mu_Wpcom::BASE_DIR . 'build/wpcom-global-styles-frontend/wpcom-global-styles-frontend.js' ), true ); + wp_add_inline_script( + 'wpcom-global-styles-frontend', + 'const launchBarUserData = ' . wp_json_encode( + array( + 'blogId' => get_current_blog_id(), + ) + ), + 'before' + ); Common\wpcom_enqueue_tracking_scripts( 'wpcom-global-styles-frontend' ); wp_enqueue_style( @@ -236,7 +236,6 @@ function wpcom_global_styles_enqueue_assets() { filemtime( Jetpack_Mu_Wpcom::BASE_DIR . 'build/wpcom-global-styles-frontend/wpcom-global-styles-frontend.css' ) ); } -add_action( 'wp_enqueue_scripts', 'wpcom_global_styles_enqueue_assets' ); /** * Removes the user styles from a site with limited global styles. @@ -441,18 +440,64 @@ function wpcom_premium_global_styles_is_site_exempt( $blog_id = 0 ) { } /** - * Adds the global style notice banner to the launch bar controls. - * - * @param array $bar_controls List of launch bar controls. + * Returns whether the global style banner should be shown or not. * - * return array The collection of launch bar controls to render. + * @return bool Whether the global styles upgrade banner should be rendered. */ -function wpcom_display_global_styles_launch_bar( $bar_controls ) { - // Do not show the banner if the user can use global styles. +function wpcom_should_show_global_styles_launch_bar() { + $current_user_id = get_current_user_id(); + + if ( ! $current_user_id ) { + return false; + } + + $current_blog_id = get_current_blog_id(); + + if ( ! ( + is_user_member_of_blog( $current_user_id, $current_blog_id ) && + current_user_can( 'manage_options' ) + ) ) { + return false; + } + + if ( has_blog_sticker( 'difm-lite-in-progress' ) ) { + return false; + } + + // The site is being previewed in Calypso or Gutenberg. + if ( + isset( $_GET['iframe'] ) && 'true' === $_GET['iframe'] && ( // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Not a form action + ( isset( $_GET['theme_preview'] ) && 'true' === $_GET['theme_preview'] ) || // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Not a form action + ( isset( $_GET['preview'] ) && 'true' === $_GET['preview'] ) // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Not a form action + ) || + isset( $_GET['widgetPreview'] ) || // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Not a form action (Gutenberg < 9.2) + isset( $_GET['widget-preview'] ) || // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Not a form action (Gutenberg >= 9.2) + ( isset( $_GET['hide_banners'] ) && $_GET['hide_banners'] === 'true' ) // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Not a form action + ) { + return false; + } + + // Do not show the lanuch banner when previewed in the customizer + if ( is_customize_preview() ) { + return false; + } + + // No banner for agency-managed sites. + if ( ! empty( get_option( 'is_fully_managed_agency_site' ) ) ) { + return false; + } + if ( ! wpcom_should_limit_global_styles() || ! wpcom_global_styles_in_use() ) { - return $bar_controls; + return false; } + return true; +} + +/** + * Renders the global style notice banner to the launch bar. + */ +function wpcom_display_global_styles_launch_bar() { if ( method_exists( '\WPCOM_Masterbar', 'get_calypso_site_slug' ) ) { $site_slug = WPCOM_Masterbar::get_calypso_site_slug( get_current_blog_id() ); } else { @@ -474,109 +519,135 @@ function wpcom_display_global_styles_launch_bar( $bar_controls ) { $preview_location = remove_query_arg( 'hide-global-styles' ); } - ob_start(); ?> -
- - - - - diff --git a/projects/plugins/jetpack/_inc/client/traffic/related-posts.jsx b/projects/plugins/jetpack/_inc/client/traffic/related-posts.jsx index f2ad413f5998e..51e50201bdf45 100644 --- a/projects/plugins/jetpack/_inc/client/traffic/related-posts.jsx +++ b/projects/plugins/jetpack/_inc/client/traffic/related-posts.jsx @@ -1,5 +1,4 @@ import { ToggleControl, getRedirectUrl } from '@automattic/jetpack-components'; -import { createInterpolateElement } from '@wordpress/element'; import { __, _x } from '@wordpress/i18n'; import React from 'react'; import Card from 'components/card'; @@ -89,51 +88,31 @@ class RelatedPostsComponent extends React.Component { ); } - render() { - const isRelatedPostsActive = this.props.getOptionValue( 'related-posts' ), - unavailableInOfflineMode = this.props.isUnavailableInOfflineMode( 'related-posts' ); + renderSettings() { + const isRelatedPostsActive = this.props.getOptionValue( 'related-posts' ); + const unavailableInOfflineMode = this.props.isUnavailableInOfflineMode( 'related-posts' ); + const { isBlockThemeActive } = this.props; + return ( - - +

+ { __( + 'Keep your visitors engaged with related content at the bottom of each post.', + 'jetpack' + ) } +

+ -

- { createInterpolateElement( - __( - 'Keep your visitors engaged with related content at the bottom of each post. These settings won’t apply to related posts added using the block editor.', - 'jetpack' - ), - { - a: ( - - ), - } - ) } -

- - - { __( 'Show related content after posts', 'jetpack' ) } - - + + { __( 'Show related content after posts', 'jetpack' ) } + +
+ { ! isBlockThemeActive && ( ) } + ) } + + ); + } + + render() { + const isRelatedPostsActive = this.props.getOptionValue( 'related-posts' ); + return ( + + + { this.renderSettings() } { ! this.props.isUnavailableInOfflineMode( 'related-posts' ) && isRelatedPostsActive && diff --git a/projects/plugins/jetpack/_inc/lib/admin-pages/class-jetpack-about-page.php b/projects/plugins/jetpack/_inc/lib/admin-pages/class-jetpack-about-page.php index 161c086e5312c..a88490ab5623f 100644 --- a/projects/plugins/jetpack/_inc/lib/admin-pages/class-jetpack-about-page.php +++ b/projects/plugins/jetpack/_inc/lib/admin-pages/class-jetpack-about-page.php @@ -9,7 +9,7 @@ * Disable direct access and execution. */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } require_once __DIR__ . '/class.jetpack-admin-page.php'; diff --git a/projects/plugins/jetpack/_inc/lib/admin-pages/class.jetpack-react-page.php b/projects/plugins/jetpack/_inc/lib/admin-pages/class.jetpack-react-page.php index 378fc8500610a..8246bf1a2528a 100644 --- a/projects/plugins/jetpack/_inc/lib/admin-pages/class.jetpack-react-page.php +++ b/projects/plugins/jetpack/_inc/lib/admin-pages/class.jetpack-react-page.php @@ -55,7 +55,7 @@ public function add_page_actions( $hook ) { if ( strpos( $page, 'jetpack/' ) === 0 ) { $section = substr( $page, 8 ); wp_safe_redirect( admin_url( 'admin.php?page=jetpack#/' . $section ) ); - exit; + exit( 0 ); } return; // No need to handle the fallback redirection if we are not on the Jetpack page. } @@ -267,7 +267,7 @@ public function react_redirects() { $target = sanitize_text_field( wp_unslash( $_GET['jp-react-redirect'] ) ); if ( isset( $allowed_paths[ $target ] ) ) { wp_safe_redirect( $allowed_paths[ $target ] ); - exit; + exit( 0 ); } } diff --git a/projects/plugins/jetpack/_inc/lib/class.core-rest-api-endpoints.php b/projects/plugins/jetpack/_inc/lib/class.core-rest-api-endpoints.php index e56d427c0c5ea..500069fb7ca1e 100644 --- a/projects/plugins/jetpack/_inc/lib/class.core-rest-api-endpoints.php +++ b/projects/plugins/jetpack/_inc/lib/class.core-rest-api-endpoints.php @@ -21,7 +21,7 @@ // Disable direct access. if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } // Load WP_Error for error messages. diff --git a/projects/plugins/jetpack/_inc/lib/class.jetpack-keyring-service-helper.php b/projects/plugins/jetpack/_inc/lib/class.jetpack-keyring-service-helper.php index 50790cf9d6ee0..f08e4651b01a7 100644 --- a/projects/plugins/jetpack/_inc/lib/class.jetpack-keyring-service-helper.php +++ b/projects/plugins/jetpack/_inc/lib/class.jetpack-keyring-service-helper.php @@ -262,7 +262,7 @@ public static function admin_page_load() { ) ); wp_redirect( $redirect ); // phpcs:ignore WordPress.Security.SafeRedirect.wp_redirect_wp_redirect -- The API URL is an external URL and is filterable. - exit; + exit( 0 ); case 'completed': /* diff --git a/projects/plugins/jetpack/_inc/lib/core-api/class.jetpack-core-api-module-endpoints.php b/projects/plugins/jetpack/_inc/lib/core-api/class.jetpack-core-api-module-endpoints.php index 9aa7ab1f03673..775f9c42b4126 100644 --- a/projects/plugins/jetpack/_inc/lib/core-api/class.jetpack-core-api-module-endpoints.php +++ b/projects/plugins/jetpack/_inc/lib/core-api/class.jetpack-core-api-module-endpoints.php @@ -1009,7 +1009,13 @@ function ( &$value ) { $value = wp_kses( $value, array( - 'a' => array( + 'ul' => array(), + 'li' => array(), + 'p' => array(), + 'strong' => array(), + 'ol' => array(), + 'em' => array(), + 'a' => array( 'href' => array(), ), ) diff --git a/projects/plugins/jetpack/_inc/lib/core-api/load-wpcom-endpoints.php b/projects/plugins/jetpack/_inc/lib/core-api/load-wpcom-endpoints.php index 05f9608fbb95f..795e869edb6eb 100644 --- a/projects/plugins/jetpack/_inc/lib/core-api/load-wpcom-endpoints.php +++ b/projects/plugins/jetpack/_inc/lib/core-api/load-wpcom-endpoints.php @@ -13,7 +13,7 @@ * Disable direct access. */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } /** diff --git a/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-email-preview.php b/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-email-preview.php index 0ece26ee6a872..525ae6caa34f1 100644 --- a/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-email-preview.php +++ b/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-email-preview.php @@ -6,10 +6,10 @@ */ use Automattic\Jetpack\Connection\Manager; +use Automattic\Jetpack\Connection\Traits\WPCOM_REST_API_Proxy_Request; use Automattic\Jetpack\Extensions\Premium_Content\Subscription_Service\Abstract_Token_Subscription_Service; use Automattic\Jetpack\Status\Host; -require_once __DIR__ . '/trait-wpcom-rest-api-proxy-request-trait.php'; require_once JETPACK__PLUGIN_DIR . 'extensions/blocks/premium-content/_inc/subscription-service/include.php'; /** @@ -19,7 +19,7 @@ */ class WPCOM_REST_API_V2_Endpoint_Email_Preview extends WP_REST_Controller { - use WPCOM_REST_API_Proxy_Request_Trait; + use WPCOM_REST_API_Proxy_Request; /** * Constructor. diff --git a/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-external-media.php b/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-external-media.php index e4a4aea0a88c2..7173b7307c453 100644 --- a/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-external-media.php +++ b/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-external-media.php @@ -715,7 +715,7 @@ function ( $key ) { header( 'Expires: 0' ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Media binary data echo $body; - exit; + exit( 0 ); } /** diff --git a/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-newsletter-categories-list.php b/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-newsletter-categories-list.php index d823a50f16dd4..f4910e8c32959 100644 --- a/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-newsletter-categories-list.php +++ b/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-newsletter-categories-list.php @@ -6,15 +6,14 @@ * @since 12.6 */ +use Automattic\Jetpack\Connection\Traits\WPCOM_REST_API_Proxy_Request; use Automattic\Jetpack\Status\Host; -require_once __DIR__ . '/trait-wpcom-rest-api-proxy-request-trait.php'; - /** * Class WPCOM_REST_API_V2_Endpoint_Following */ class WPCOM_REST_API_V2_Endpoint_Newsletter_Categories_List extends WP_REST_Controller { - use WPCOM_REST_API_Proxy_Request_Trait; + use WPCOM_REST_API_Proxy_Request; /** * Constructor. diff --git a/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-newsletter-categories-subscriptions-count.php b/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-newsletter-categories-subscriptions-count.php index e865e59a16228..82d4c65e1467d 100644 --- a/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-newsletter-categories-subscriptions-count.php +++ b/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-newsletter-categories-subscriptions-count.php @@ -6,15 +6,14 @@ * @since 12.6 */ +use Automattic\Jetpack\Connection\Traits\WPCOM_REST_API_Proxy_Request; use Automattic\Jetpack\Status\Host; -require_once __DIR__ . '/trait-wpcom-rest-api-proxy-request-trait.php'; - /** * Class WPCOM_REST_API_V2_Endpoint_Newsletter_Categories_Subscriptions_Count */ class WPCOM_REST_API_V2_Endpoint_Newsletter_Categories_Subscriptions_Count extends WP_REST_Controller { - use WPCOM_REST_API_Proxy_Request_Trait; + use WPCOM_REST_API_Proxy_Request; /** * Constructor. diff --git a/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-send-email-preview.php b/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-send-email-preview.php index 9b01e4ffbd87f..d1487938b4733 100644 --- a/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-send-email-preview.php +++ b/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v2-endpoint-send-email-preview.php @@ -6,17 +6,16 @@ */ use Automattic\Jetpack\Connection\Manager; +use Automattic\Jetpack\Connection\Traits\WPCOM_REST_API_Proxy_Request; use Automattic\Jetpack\Status\Host; -require_once __DIR__ . '/trait-wpcom-rest-api-proxy-request-trait.php'; - /** * Class WPCOM_REST_API_V2_Endpoint_Send_Email_Preview * Handles the sending of email previews via the WordPress.com REST API */ class WPCOM_REST_API_V2_Endpoint_Send_Email_Preview extends WP_REST_Controller { - use WPCOM_REST_API_Proxy_Request_Trait; + use WPCOM_REST_API_Proxy_Request; /** * Constructor. diff --git a/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v3-endpoint-blogging-prompts.php b/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v3-endpoint-blogging-prompts.php index cfede7814a9ef..58f3ea3789ce4 100644 --- a/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v3-endpoint-blogging-prompts.php +++ b/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/class-wpcom-rest-api-v3-endpoint-blogging-prompts.php @@ -5,15 +5,14 @@ * @package automattic/jetpack */ -// Ensure WPCOM_REST_API_Proxy_Request_Trait is present. -require_once __DIR__ . '/trait-wpcom-rest-api-proxy-request-trait.php'; +use Automattic\Jetpack\Connection\Traits\WPCOM_REST_API_Proxy_Request; /** * REST API endpoint wpcom/v3/sites/%s/blogging-prompts. */ class WPCOM_REST_API_V3_Endpoint_Blogging_Prompts extends WP_REST_Posts_Controller { - use WPCOM_REST_API_Proxy_Request_Trait; + use WPCOM_REST_API_Proxy_Request; const TEMPLATE_BLOG_ID = 205876834; diff --git a/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/memberships.php b/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/memberships.php index 680f3a10b5705..59711d97b4479 100644 --- a/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/memberships.php +++ b/projects/plugins/jetpack/_inc/lib/core-api/wpcom-endpoints/memberships.php @@ -6,7 +6,7 @@ * @since 7.3.0 */ -require_once __DIR__ . '/trait-wpcom-rest-api-proxy-request-trait.php'; +use Automattic\Jetpack\Connection\Traits\WPCOM_REST_API_Proxy_Request; /** * Class WPCOM_REST_API_V2_Endpoint_Memberships @@ -14,7 +14,7 @@ */ class WPCOM_REST_API_V2_Endpoint_Memberships extends WP_REST_Controller { - use WPCOM_REST_API_Proxy_Request_Trait; + use WPCOM_REST_API_Proxy_Request; /** * WPCOM_REST_API_V2_Endpoint_Memberships constructor. diff --git a/projects/plugins/jetpack/_inc/lib/debugger/class-jetpack-debugger.php b/projects/plugins/jetpack/_inc/lib/debugger/class-jetpack-debugger.php index 450e5051dc1cd..f521c44e60ca4 100644 --- a/projects/plugins/jetpack/_inc/lib/debugger/class-jetpack-debugger.php +++ b/projects/plugins/jetpack/_inc/lib/debugger/class-jetpack-debugger.php @@ -28,7 +28,7 @@ public static function disconnect_and_redirect() { if ( Jetpack::is_connection_ready() ) { Jetpack::disconnect(); wp_safe_redirect( Jetpack::admin_url() ); - exit; + exit( 0 ); } } } diff --git a/projects/plugins/jetpack/changelog/disable-woo_analytics_session_cookie b/projects/plugins/jetpack/changelog/disable-woo_analytics_session_cookie deleted file mode 100644 index 81fe027e3740b..0000000000000 --- a/projects/plugins/jetpack/changelog/disable-woo_analytics_session_cookie +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: bugfix - -WC Analytics: Temporarily disable setcookie to avoid caching issues. diff --git a/projects/plugins/jetpack/changelog/fix-author-widget-all-checkbox b/projects/plugins/jetpack/changelog/fix-author-widget-all-checkbox deleted file mode 100644 index 31ef942ee49e0..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-author-widget-all-checkbox +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: bugfix - -Authors widget: Fix saving of unchecked "Display all authors" checkbox in the legacy widget editor. diff --git a/projects/plugins/jetpack/changelog/fix-edit-page-on-mobile b/projects/plugins/jetpack/changelog/fix-edit-page-on-mobile deleted file mode 100644 index 5d5cfcd8ecf89..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-edit-page-on-mobile +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: bugfix - -Page & Post: Fix the layout on mobile when details are open diff --git a/projects/plugins/jetpack/changelog/fix-show-quicklinks-after-quickedit b/projects/plugins/jetpack/changelog/fix-show-quicklinks-after-quickedit deleted file mode 100644 index ae09f26d7dccd..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-show-quicklinks-after-quickedit +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Post list: Ensure copy quick link is added after quick edit diff --git a/projects/plugins/jetpack/changelog/fix-stats-setting-role-toggles b/projects/plugins/jetpack/changelog/fix-stats-setting-role-toggles deleted file mode 100644 index eee7a6f4e22e0..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-stats-setting-role-toggles +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: bugfix - -Fix custom roles settings are not sticking for Jetpack Stats diff --git a/projects/plugins/jetpack/changelog/fix-testimonials-module-by-zero-error b/projects/plugins/jetpack/changelog/fix-testimonials-module-by-zero-error deleted file mode 100644 index 02e4047333bba..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-testimonials-module-by-zero-error +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: bugfix - -Testimonials: fix a shortcode related bug which ccurs if the column attribute is added and set to 0 diff --git a/projects/plugins/jetpack/changelog/fix-tiled-gallery-image-controls b/projects/plugins/jetpack/changelog/fix-tiled-gallery-image-controls deleted file mode 100644 index 2715285d608b0..0000000000000 --- a/projects/plugins/jetpack/changelog/fix-tiled-gallery-image-controls +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: bugfix - -Tiled Gallery block: ensure movement and close icons are visible when selecting image in editor, by changing focusable element. diff --git a/projects/plugins/jetpack/changelog/prerelease b/projects/plugins/jetpack/changelog/prerelease deleted file mode 100644 index a1c1831fa1ef7..0000000000000 --- a/projects/plugins/jetpack/changelog/prerelease +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: other -Comment: Updated composer.lock. - - diff --git a/projects/plugins/jetpack/changelog/update-boost-messaging-admin-page b/projects/plugins/jetpack/changelog/update-boost-messaging-admin-page deleted file mode 100644 index fe3aba230fa5e..0000000000000 --- a/projects/plugins/jetpack/changelog/update-boost-messaging-admin-page +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: enhancement -Comment: Dashboard: update wording for Boost plugin prompt. - - diff --git a/projects/plugins/jetpack/changelog/update-jetpack-ai-enable-feedback b/projects/plugins/jetpack/changelog/update-jetpack-ai-enable-feedback deleted file mode 100644 index 75be9179cedb6..0000000000000 --- a/projects/plugins/jetpack/changelog/update-jetpack-ai-enable-feedback +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Jetpack AI: Enable ratings feedback thumbs for all diff --git a/projects/plugins/jetpack/changelog/update-jetpack-pre_14.3_to_test_reset b/projects/plugins/jetpack/changelog/update-jetpack-pre_14.3_to_test_reset deleted file mode 100644 index 3c38200678747..0000000000000 --- a/projects/plugins/jetpack/changelog/update-jetpack-pre_14.3_to_test_reset +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: other -Comment: Clear testing instructions. - - diff --git a/projects/plugins/jetpack/changelog/update-jetpack-react-router-dom_v5_to_v6 b/projects/plugins/jetpack/changelog/update-jetpack-react-router-dom_v5_to_v6 deleted file mode 100644 index aa5f62eedbb49..0000000000000 --- a/projects/plugins/jetpack/changelog/update-jetpack-react-router-dom_v5_to_v6 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Updated dependencies. diff --git a/projects/plugins/jetpack/changelog/update-newsletter-category-settings b/projects/plugins/jetpack/changelog/update-newsletter-category-settings deleted file mode 100644 index d57cd003e9801..0000000000000 --- a/projects/plugins/jetpack/changelog/update-newsletter-category-settings +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: other - -Update newsletter category settings to clarify that you need to choose one or more categories to allow people to subscribe to. diff --git a/projects/plugins/jetpack/changelog/update-social-logo-usage b/projects/plugins/jetpack/changelog/update-social-logo-usage deleted file mode 100644 index 097b542ee724f..0000000000000 --- a/projects/plugins/jetpack/changelog/update-social-logo-usage +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Updated social-logos import from default to named diff --git a/projects/plugins/jetpack/changelog/update-stats-lazy-loading-adminbar-image b/projects/plugins/jetpack/changelog/update-stats-lazy-loading-adminbar-image deleted file mode 100644 index cc3aacb2a56ba..0000000000000 --- a/projects/plugins/jetpack/changelog/update-stats-lazy-loading-adminbar-image +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: other - -Load the adminbar stats graph lazily" diff --git a/projects/plugins/jetpack/changelog/update-stats_remove_legacy_widget_loader b/projects/plugins/jetpack/changelog/update-stats_remove_legacy_widget_loader deleted file mode 100644 index 23a50a2206b08..0000000000000 --- a/projects/plugins/jetpack/changelog/update-stats_remove_legacy_widget_loader +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: other - -Remove legacy Stats widget loader diff --git a/projects/plugins/jetpack/class.jetpack-admin.php b/projects/plugins/jetpack/class.jetpack-admin.php index c85685de295a4..c8be986d66878 100644 --- a/projects/plugins/jetpack/class.jetpack-admin.php +++ b/projects/plugins/jetpack/class.jetpack-admin.php @@ -163,7 +163,7 @@ public static function customizer_redirect() { ) ) ); - exit; + exit( 0 ); } /** @@ -481,7 +481,7 @@ public function handle_unrecognized_action( $action ) { } // The following two lines will rarely happen, as Jetpack::activate_module normally exits at the end. wp_safe_redirect( wp_get_referer() ); - exit; + exit( 0 ); case 'bulk-deactivate': check_admin_referer( 'bulk-jetpack_page_jetpack_modules' ); if ( ! current_user_can( 'jetpack_deactivate_modules' ) ) { @@ -496,7 +496,7 @@ public function handle_unrecognized_action( $action ) { } Jetpack::state( 'module', $modules ); wp_safe_redirect( wp_get_referer() ); - exit; + exit( 0 ); default: return; } diff --git a/projects/plugins/jetpack/class.jetpack-cli.php b/projects/plugins/jetpack/class.jetpack-cli.php index d0b9c5990cea1..664ce0003e505 100644 --- a/projects/plugins/jetpack/class.jetpack-cli.php +++ b/projects/plugins/jetpack/class.jetpack-cli.php @@ -1036,7 +1036,7 @@ public function sync( $args, $assoc_args ) { } // Kick off a full sync. - if ( Actions::do_full_sync( $modules ) ) { + if ( Actions::do_full_sync( $modules, 'jetpack_cli' ) ) { if ( $modules ) { /* translators: %s is a comma separated list of Jetpack modules */ WP_CLI::log( sprintf( __( 'Initialized a new full sync with modules: %s', 'jetpack' ), implode( ', ', array_keys( $modules ) ) ) ); @@ -1966,13 +1966,13 @@ public function scaffold( $args, $assoc_args ) { * @param array $assoc_args Associative parameters defined in the scaffold() method. */ public function block( $args, $assoc_args ) { - if ( isset( $args[1] ) ) { - $title = ucwords( $args[1] ); - } else { + if ( ! isset( $args[1] ) ) { WP_CLI::error( esc_html__( 'The title parameter is required.', 'jetpack' ) . ' 👻' ); exit( 1 ); } + $title = ucwords( $args[1] ); + $slug = isset( $assoc_args['slug'] ) ? $assoc_args['slug'] : sanitize_title( $title ); diff --git a/projects/plugins/jetpack/class.jetpack-network.php b/projects/plugins/jetpack/class.jetpack-network.php index 20caecf7189fa..2e166064d57f2 100644 --- a/projects/plugins/jetpack/class.jetpack-network.php +++ b/projects/plugins/jetpack/class.jetpack-network.php @@ -333,7 +333,7 @@ public function jetpack_sites_list() { } wp_safe_redirect( $url ); - exit; + exit( 0 ); case 'subsitedisconnect': check_admin_referer( 'jetpack-subsite-disconnect' ); @@ -594,7 +594,7 @@ public function save_network_settings_page() { network_admin_url( 'admin.php' ) ) ); - exit(); + exit( 0 ); } // Try to save the Protect allow list before anything else, since that action can result in errors. @@ -612,7 +612,7 @@ public function save_network_settings_page() { network_admin_url( 'admin.php' ) ) ); - exit(); + exit( 0 ); } /* @@ -646,7 +646,7 @@ public function save_network_settings_page() { network_admin_url( 'admin.php' ) ) ); - exit(); + exit( 0 ); } /** diff --git a/projects/plugins/jetpack/class.jetpack.php b/projects/plugins/jetpack/class.jetpack.php index f4a5f489405f8..64501849deb3d 100644 --- a/projects/plugins/jetpack/class.jetpack.php +++ b/projects/plugins/jetpack/class.jetpack.php @@ -2010,7 +2010,7 @@ public static function activate_new_modules( $redirect = false ) { $page = sanitize_text_field( wp_unslash( $_GET['page'] ) ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- we're not changing the site. } wp_safe_redirect( self::admin_url( 'page=' . rawurlencode( $page ) ) ); - exit; + exit( 0 ); } } @@ -2401,7 +2401,7 @@ public static function activate_default_modules( add_query_arg( compact( 'min_version', 'max_version', 'other_modules' ), self::admin_url( 'page=jetpack' ) ) ); wp_safe_redirect( $url ); - exit; + exit( 0 ); } } @@ -2609,7 +2609,7 @@ public static function bail_on_activation( $message, $deactivate = true ) { update_option( 'active_plugins', array_filter( $plugins ) ); } } - exit; + exit( 0 ); } /** @@ -3324,7 +3324,7 @@ public function remote_request_handlers() { status_header( 200 ); if ( true === $response ) { - exit; + exit( 0 ); } die( wp_json_encode( (object) $response ) ); @@ -3586,7 +3586,7 @@ public function login_init() { self::get_calypso_host() . 'jetpack/connect' ) ); - exit; + exit( 0 ); } } @@ -3693,7 +3693,7 @@ public function admin_page_load() { add_filter( 'allowed_redirect_hosts', array( Host::class, 'allow_wpcom_environments' ) ); wp_safe_redirect( $url ); - exit; + exit( 0 ); case 'activate': if ( ! current_user_can( 'jetpack_activate_modules' ) ) { $error = 'cheatin'; @@ -3709,7 +3709,7 @@ public function admin_page_load() { } // The following two lines will rarely happen, as Jetpack::activate_module normally exits at the end. wp_safe_redirect( self::admin_url( 'page=jetpack' ) ); - exit; + exit( 0 ); case 'activate_default_modules': check_admin_referer( 'activate_default_modules' ); self::log( 'activate_default_modules' ); @@ -3719,7 +3719,7 @@ public function admin_page_load() { $other_modules = isset( $_GET['other_modules'] ) && is_array( $_GET['other_modules'] ) ? array_map( 'sanitize_text_field', wp_unslash( $_GET['other_modules'] ) ) : array(); self::activate_default_modules( $min_version, $max_version, $other_modules ); wp_safe_redirect( self::admin_url( 'page=jetpack' ) ); - exit; + exit( 0 ); case 'disconnect': if ( ! current_user_can( 'jetpack_disconnect' ) ) { $error = 'cheatin'; @@ -3730,7 +3730,7 @@ public function admin_page_load() { self::log( 'disconnect' ); self::disconnect(); wp_safe_redirect( self::admin_url( 'disconnected=true' ) ); - exit; + exit( 0 ); case 'reconnect': if ( ! current_user_can( 'jetpack_reconnect' ) ) { $error = 'cheatin'; @@ -3743,7 +3743,7 @@ public function admin_page_load() { add_filter( 'allowed_redirect_hosts', array( Host::class, 'allow_wpcom_environments' ) ); wp_safe_redirect( $this->build_connect_url( true, false, 'reconnect' ) ); - exit; + exit( 0 ); case 'deactivate': if ( ! current_user_can( 'jetpack_deactivate_modules' ) ) { $error = 'cheatin'; @@ -3759,7 +3759,7 @@ public function admin_page_load() { } self::state( 'module', $modules ); wp_safe_redirect( self::admin_url( 'page=jetpack' ) ); - exit; + exit( 0 ); case 'unlink': $redirect = isset( $_GET['redirect'] ) ? sanitize_text_field( wp_unslash( $_GET['redirect'] ) ) : ''; check_admin_referer( 'jetpack-unlink' ); @@ -3771,7 +3771,7 @@ public function admin_page_load() { } else { wp_safe_redirect( self::admin_url( array( 'page' => rawurlencode( $redirect ) ) ) ); } - exit; + exit( 0 ); default: /** * Fires when a Jetpack admin page is loaded with an unrecognized parameter. diff --git a/projects/plugins/jetpack/class.json-api.php b/projects/plugins/jetpack/class.json-api.php index 6b9a805c6ea4a..2278e24ef8a26 100644 --- a/projects/plugins/jetpack/class.json-api.php +++ b/projects/plugins/jetpack/class.json-api.php @@ -573,7 +573,7 @@ public function serve( $exit = true ) { } } } - exit; + exit( 0 ); } if ( $endpoint->in_testing && ! WPCOM_JSON_API__DEBUG ) { @@ -654,7 +654,7 @@ public function output( $status_code, $response = null, $content_type = 'applica // In case output() was called before the callback returned. if ( $this->did_output ) { if ( $this->exit ) { - exit; + exit( 0 ); } return $content_type; } @@ -684,7 +684,7 @@ public function output( $status_code, $response = null, $content_type = 'applica } echo $response; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped if ( $this->exit ) { - exit; + exit( 0 ); } return $content_type; @@ -737,7 +737,7 @@ public function output( $status_code, $response = null, $content_type = 'applica } if ( $this->exit ) { - exit; + exit( 0 ); } return $content_type; @@ -1246,7 +1246,7 @@ public function wp_die_handler( $message, $title = '', $args = array() ) { // We still want to exit so that code execution stops where it should. // Attach the JSON output to the WordPress shutdown handler. add_action( 'shutdown', array( $this, 'output_trapped_error' ), 0 ); - exit; + exit( 0 ); } /** diff --git a/projects/plugins/jetpack/composer.json b/projects/plugins/jetpack/composer.json index a15a3b5c01015..7092b747b3737 100644 --- a/projects/plugins/jetpack/composer.json +++ b/projects/plugins/jetpack/composer.json @@ -106,7 +106,7 @@ "platform": { "ext-intl": "0.0.0" }, - "autoloader-suffix": "f11009ded9fc4592b6a05b61ce272b3c_jetpackⓥ14_2_1", + "autoloader-suffix": "f11009ded9fc4592b6a05b61ce272b3c_jetpackⓥ14_3_a_3", "allow-plugins": { "automattic/jetpack-autoloader": true, "automattic/jetpack-composer-plugin": true diff --git a/projects/plugins/jetpack/composer.lock b/projects/plugins/jetpack/composer.lock index 9d9c35b72b5c9..23014c28bf7f7 100644 --- a/projects/plugins/jetpack/composer.lock +++ b/projects/plugins/jetpack/composer.lock @@ -704,7 +704,7 @@ "dist": { "type": "path", "url": "../../packages/classic-theme-helper", - "reference": "198fd841c5341850e247c46168d77b1bc6a13a34" + "reference": "97a68997e5f3dc805df942c53586bab3f2137427" }, "require": { "automattic/jetpack-assets": "@dev", @@ -722,7 +722,7 @@ "extra": { "autotagger": true, "branch-alias": { - "dev-trunk": "0.8.x-dev" + "dev-trunk": "0.9.x-dev" }, "changelogger": { "link-template": "https://github.com/Automattic/jetpack-classic-theme-helper/compare/v${old}...v${new}" @@ -944,7 +944,7 @@ "dist": { "type": "path", "url": "../../packages/connection", - "reference": "3bc395ae56ccb54ec1d8b6cf543fd588ee6de7f2" + "reference": "3397d8e80c45a088744f7e912f0fc32a4b6bb372" }, "require": { "automattic/jetpack-a8c-mc-stats": "@dev", @@ -979,7 +979,7 @@ "link-template": "https://github.com/Automattic/jetpack-connection/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "6.2.x-dev" + "dev-trunk": "6.3.x-dev" }, "dependencies": { "test-only": [ @@ -1271,7 +1271,7 @@ "dist": { "type": "path", "url": "../../packages/forms", - "reference": "fd4c0bda2ac5982e1bbd59d6fbad3528b33f931d" + "reference": "3be8eaa0e5a671c57325e2b239a79e5c75e4af20" }, "require": { "automattic/jetpack-assets": "@dev", @@ -1299,7 +1299,7 @@ "link-template": "https://github.com/automattic/jetpack-forms/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "0.34.x-dev" + "dev-trunk": "0.35.x-dev" }, "textdomain": "jetpack-forms", "version-constants": { @@ -1741,7 +1741,7 @@ "dist": { "type": "path", "url": "../../packages/masterbar", - "reference": "f4317f289a90af787f81e695268be1ef00cd0255" + "reference": "9587aa811998a8a174ddae723de91faa7e179f93" }, "require": { "automattic/jetpack-assets": "@dev", @@ -1770,7 +1770,7 @@ "extra": { "autotagger": true, "branch-alias": { - "dev-trunk": "0.10.x-dev" + "dev-trunk": "0.11.x-dev" }, "changelogger": { "link-template": "https://github.com/Automattic/jetpack-masterbar/compare/v${old}...v${new}" @@ -1814,6 +1814,10 @@ "test-php": [ "pnpm run build-production", "@composer phpunit" + ], + "watch": [ + "Composer\\Config::disableProcessTimeout", + "pnpm run watch" ] }, "license": [ @@ -2812,7 +2816,7 @@ "dist": { "type": "path", "url": "../../packages/sync", - "reference": "9f24b0cb0912e1e3f235e946b9f397ffd9e36ccf" + "reference": "8297245b0fa3c38c8362b016ddd2f59f536ff5b9" }, "require": { "automattic/jetpack-connection": "@dev", @@ -2845,7 +2849,7 @@ "link-template": "https://github.com/Automattic/jetpack-sync/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "4.3.x-dev" + "dev-trunk": "4.4.x-dev" }, "dependencies": { "test-only": [ @@ -3320,16 +3324,16 @@ "packages-dev": [ { "name": "antecedent/patchwork", - "version": "2.2.0", + "version": "2.2.1", "source": { "type": "git", "url": "https://github.com/antecedent/patchwork.git", - "reference": "b07d4fb37c3c723c8755122160c089e077d5de65" + "reference": "1bf183a3e1bd094f231a2128b9ecc5363c269245" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/antecedent/patchwork/zipball/b07d4fb37c3c723c8755122160c089e077d5de65", - "reference": "b07d4fb37c3c723c8755122160c089e077d5de65", + "url": "https://api.github.com/repos/antecedent/patchwork/zipball/1bf183a3e1bd094f231a2128b9ecc5363c269245", + "reference": "1bf183a3e1bd094f231a2128b9ecc5363c269245", "shasum": "" }, "require": { @@ -3362,9 +3366,9 @@ ], "support": { "issues": "https://github.com/antecedent/patchwork/issues", - "source": "https://github.com/antecedent/patchwork/tree/2.2.0" + "source": "https://github.com/antecedent/patchwork/tree/2.2.1" }, - "time": "2024-09-27T16:59:55+00:00" + "time": "2024-12-11T10:19:54+00:00" }, { "name": "automattic/jetpack-changelogger", @@ -3686,16 +3690,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.3.1", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b" + "reference": "447a020a1f875a434d62f2a401f53b82a396e494" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/8eea230464783aa9671db8eea6f8c6ac5285794b", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/447a020a1f875a434d62f2a401f53b82a396e494", + "reference": "447a020a1f875a434d62f2a401f53b82a396e494", "shasum": "" }, "require": { @@ -3738,9 +3742,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.4.0" }, - "time": "2024-10-08T18:51:32+00:00" + "time": "2024-12-30T11:07:19+00:00" }, { "name": "phar-io/manifest", @@ -5300,16 +5304,16 @@ }, { "name": "symfony/console", - "version": "v7.2.0", + "version": "v7.2.1", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf" + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", + "url": "https://api.github.com/repos/symfony/console/zipball/fefcc18c0f5d0efe3ab3152f15857298868dc2c3", + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3", "shasum": "" }, "require": { @@ -5373,7 +5377,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.2.0" + "source": "https://github.com/symfony/console/tree/v7.2.1" }, "funding": [ { @@ -5389,7 +5393,7 @@ "type": "tidelift" } ], - "time": "2024-11-06T14:24:19+00:00" + "time": "2024-12-11T03:49:26+00:00" }, { "name": "symfony/deprecation-contracts", @@ -5410,12 +5414,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -5722,8 +5726,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -5861,12 +5865,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -6059,16 +6063,16 @@ }, { "name": "yoast/phpunit-polyfills", - "version": "1.1.2", + "version": "1.1.3", "source": { "type": "git", "url": "https://github.com/Yoast/PHPUnit-Polyfills.git", - "reference": "e9c8413de4c8ae03d2923a44f17d0d7dad1b96be" + "reference": "0b31ce834facf03b8b44b6587e65b3cf1d7cfb94" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/e9c8413de4c8ae03d2923a44f17d0d7dad1b96be", - "reference": "e9c8413de4c8ae03d2923a44f17d0d7dad1b96be", + "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/0b31ce834facf03b8b44b6587e65b3cf1d7cfb94", + "reference": "0b31ce834facf03b8b44b6587e65b3cf1d7cfb94", "shasum": "" }, "require": { @@ -6118,7 +6122,7 @@ "security": "https://github.com/Yoast/PHPUnit-Polyfills/security/policy", "source": "https://github.com/Yoast/PHPUnit-Polyfills" }, - "time": "2024-09-06T22:03:10+00:00" + "time": "2025-01-08T16:58:34+00:00" } ], "aliases": [], diff --git a/projects/plugins/jetpack/extensions/blocks/button/test/controls.js b/projects/plugins/jetpack/extensions/blocks/button/test/controls.js index cb282873a9761..ca1fc6a2d329a 100644 --- a/projects/plugins/jetpack/extensions/blocks/button/test/controls.js +++ b/projects/plugins/jetpack/extensions/blocks/button/test/controls.js @@ -108,7 +108,7 @@ describe( 'Inspector settings', () => { // eslint-disable-next-line testing-library/no-node-access const popoverContainer = document.querySelector( '.components-popover__fallback-container' ); await user.click( - within( popoverContainer ).getAllByRole( 'option', { name: /^Color: / } )[ 0 ] + within( popoverContainer ).getAllByRole( 'option', { name: /Black/ } )[ 0 ] ); expect( setTextColor.mock.calls[ 0 ][ 0 ] ).toMatch( /#[a-z0-9]{6,6}/ ); @@ -123,7 +123,7 @@ describe( 'Inspector settings', () => { // eslint-disable-next-line testing-library/no-node-access const popoverContainer = document.querySelector( '.components-popover__fallback-container' ); await user.click( - within( popoverContainer ).getAllByRole( 'option', { name: /^Color: / } )[ 0 ] + within( popoverContainer ).getAllByRole( 'option', { name: /Black/ } )[ 0 ] ); expect( setBackgroundColor.mock.calls[ 0 ][ 0 ] ).toMatch( /#[a-z0-9]{6,6}/ ); @@ -166,7 +166,7 @@ describe( 'Inspector settings', () => { // eslint-disable-next-line testing-library/no-node-access const popoverContainer = document.querySelector( '.components-popover__fallback-container' ); await user.click( - within( popoverContainer ).getAllByRole( 'option', { name: /^Color: / } )[ 0 ] + within( popoverContainer ).getAllByRole( 'option', { name: /Black/ } )[ 0 ] ); expect( setTextColor.mock.calls[ 0 ][ 0 ] ).toMatch( /#[a-z0-9]{6,6}/ ); @@ -182,7 +182,7 @@ describe( 'Inspector settings', () => { const popoverContainer = document.querySelector( '.components-popover__fallback-container' ); await user.click( within( popoverContainer ).getByRole( 'tab', { name: 'Color' } ) ); await user.click( - within( popoverContainer ).getAllByRole( 'option', { name: /^Color: / } )[ 0 ] + within( popoverContainer ).getAllByRole( 'option', { name: /Black/ } )[ 0 ] ); expect( setBackgroundColor.mock.calls[ 0 ][ 0 ] ).toMatch( /#[a-z0-9]{6,6}/ ); diff --git a/projects/plugins/jetpack/extensions/blocks/goodreads/controls.js b/projects/plugins/jetpack/extensions/blocks/goodreads/controls.js index d34890d4e36c6..e3fa4fd8cfa67 100644 --- a/projects/plugins/jetpack/extensions/blocks/goodreads/controls.js +++ b/projects/plugins/jetpack/extensions/blocks/goodreads/controls.js @@ -72,6 +72,7 @@ export function GoodreadsInspectorControls( { attributes, setAttributes } ) { setAttributes( { shelfOption: value } ) } @@ -88,6 +89,7 @@ export function GoodreadsInspectorControls( { attributes, setAttributes } ) { setAttributes( { sortOption: value } ) } @@ -96,6 +98,7 @@ export function GoodreadsInspectorControls( { attributes, setAttributes } ) { setAttributes( { orderOption: value } ) } diff --git a/projects/plugins/jetpack/extensions/blocks/map/map.php b/projects/plugins/jetpack/extensions/blocks/map/map.php index 91a43d7292624..c349388e9c578 100644 --- a/projects/plugins/jetpack/extensions/blocks/map/map.php +++ b/projects/plugins/jetpack/extensions/blocks/map/map.php @@ -189,7 +189,7 @@ function render_single_block_page() { preg_replace( '/(?<={ __( 'Phone Number', 'jetpack' ) } setAttributes( { countryCode: value } ) } diff --git a/projects/plugins/jetpack/extensions/blocks/sharing-button/class-sharing-source-block.php b/projects/plugins/jetpack/extensions/blocks/sharing-button/class-sharing-source-block.php index c21ffd56f9f6a..3e6422aa2d177 100644 --- a/projects/plugins/jetpack/extensions/blocks/sharing-button/class-sharing-source-block.php +++ b/projects/plugins/jetpack/extensions/blocks/sharing-button/class-sharing-source-block.php @@ -375,7 +375,7 @@ public function redirect_request( $url ) { // We set up this custom header to indicate to search engines not to index this page. header( 'X-Robots-Tag: noindex, nofollow' ); - die(); + die( 0 ); } } @@ -499,7 +499,7 @@ public function process_request( $post, array $post_data ) { wp_send_json_success(); } else { wp_safe_redirect( get_permalink( $post->ID ) . '?shared=email&msg=fail' ); - exit; + exit( 0 ); } wp_die(); @@ -738,7 +738,7 @@ public function process_request( $post, array $post_data ) { parent::redirect_request( $pinterest_url ); } else { echo '// share count bumped'; - die(); + die( 0 ); } } } diff --git a/projects/plugins/jetpack/extensions/blocks/sharing-button/components/class-jetpack-mastodon-modal.php b/projects/plugins/jetpack/extensions/blocks/sharing-button/components/class-jetpack-mastodon-modal.php index d2a2f80601fa9..1ba43d5af4a2d 100644 --- a/projects/plugins/jetpack/extensions/blocks/sharing-button/components/class-jetpack-mastodon-modal.php +++ b/projects/plugins/jetpack/extensions/blocks/sharing-button/components/class-jetpack-mastodon-modal.php @@ -61,7 +61,7 @@ public static function modal() { // Render the modal. self::render_modal(); - die(); + die( 0 ); } /** diff --git a/projects/plugins/jetpack/extensions/blocks/sharing-buttons/view.js b/projects/plugins/jetpack/extensions/blocks/sharing-buttons/view.js index 524eb9668c995..90169f1f19989 100644 --- a/projects/plugins/jetpack/extensions/blocks/sharing-buttons/view.js +++ b/projects/plugins/jetpack/extensions/blocks/sharing-buttons/view.js @@ -39,7 +39,7 @@ if ( typeof window !== 'undefined' ) { if ( link?.href && isWebShareAPIEnabled( { url: link.href } ) ) { navigator.share( { url: link.href } ); } else { - const [ tooltip ] = document.getElementsByClassName( 'tooltiptext' ); + const [ tooltip ] = link.getElementsByClassName( 'tooltiptext' ); if ( tooltip && tooltip.style ) { tooltip.style.display = 'initial'; setTimeout( () => { diff --git a/projects/plugins/jetpack/extensions/blocks/simple-payments/deprecated/v2/edit.js b/projects/plugins/jetpack/extensions/blocks/simple-payments/deprecated/v2/edit.js index 5ab00fa397164..620438e9e37ea 100644 --- a/projects/plugins/jetpack/extensions/blocks/simple-payments/deprecated/v2/edit.js +++ b/projects/plugins/jetpack/extensions/blocks/simple-payments/deprecated/v2/edit.js @@ -520,6 +520,7 @@ class SimplePaymentsEdit extends Component {
{ @@ -75,6 +76,7 @@ export function PanelControls( { { const user = userEvent.setup(); render( ); await user.click( screen.getByText( 'Button Background', { ignore: '[aria-hidden=true]' } ) ); - await user.click( screen.getByRole( 'tab', { name: 'Color' } ) ); + // eslint-disable-next-line testing-library/no-node-access + const popoverContainer = document.querySelector( '.components-popover__fallback-container' ); + await user.click( within( popoverContainer ).getByRole( 'tab', { name: 'Color' } ) ); await user.click( - screen.queryAllByLabelText( /Color: (?!Black)/i, { selector: 'button' } )[ 0 ] + within( popoverContainer ).getAllByRole( 'option', { name: /White/ } )[ 0 ] ); expect( setButtonBackgroundColor.mock.calls[ 0 ][ 0 ] ).toMatch( /#[a-z0-9]{6,6}/ ); diff --git a/projects/plugins/jetpack/extensions/blocks/top-posts/controls.js b/projects/plugins/jetpack/extensions/blocks/top-posts/controls.js index 475b0725f65de..5bccb8b59c120 100644 --- a/projects/plugins/jetpack/extensions/blocks/top-posts/controls.js +++ b/projects/plugins/jetpack/extensions/blocks/top-posts/controls.js @@ -65,6 +65,7 @@ export function TopPostsInspectorControls( { /> setAttributes( { period: value } ) } diff --git a/projects/plugins/jetpack/extensions/blocks/videopress/resumable-upload/index.js b/projects/plugins/jetpack/extensions/blocks/videopress/resumable-upload/index.js index 8fe8e71118ac3..85e189a232f65 100644 --- a/projects/plugins/jetpack/extensions/blocks/videopress/resumable-upload/index.js +++ b/projects/plugins/jetpack/extensions/blocks/videopress/resumable-upload/index.js @@ -151,7 +151,6 @@ export default function ResumableUpload( { file } ) {
- { /* eslint-disable */ } { /* valid-sprintf doesn't understand double percent escape */ } { hasPaused ? sprintf( @@ -164,7 +163,6 @@ export default function ResumableUpload( { file } ) { __( 'Uploading (%s%%)', 'jetpack' ), roundedProgress ) } - { /* eslint-enable */ }
{ fileSizeLabel }
diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/ai-assistant-plugin-sidebar/index.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/ai-assistant-plugin-sidebar/index.tsx index 66878a350339b..e33d12ba4a753 100644 --- a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/ai-assistant-plugin-sidebar/index.tsx +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/ai-assistant-plugin-sidebar/index.tsx @@ -2,7 +2,7 @@ * External dependencies */ import { JetpackEditorPanelLogo, useAnalytics } from '@automattic/jetpack-shared-extension-utils'; -import { PanelBody, PanelRow, BaseControl, ExternalLink } from '@wordpress/components'; +import { PanelBody, PanelRow, BaseControl, ExternalLink, Notice } from '@wordpress/components'; import { store as coreStore } from '@wordpress/core-data'; import { useSelect } from '@wordpress/data'; import { PluginPrePublishPanel, PluginDocumentSettingPanel } from '@wordpress/edit-post'; @@ -17,14 +17,14 @@ import useAICheckout from '../../../../blocks/ai-assistant/hooks/use-ai-checkout import useAiFeature from '../../../../blocks/ai-assistant/hooks/use-ai-feature'; import useAiProductPage from '../../../../blocks/ai-assistant/hooks/use-ai-product-page'; import { getFeatureAvailability } from '../../../../blocks/ai-assistant/lib/utils/get-feature-availability'; -import { isBetaExtension } from '../../../../editor'; +// import { isBetaExtension } from '../../../../editor'; import JetpackPluginSidebar from '../../../../shared/jetpack-plugin-sidebar'; import { PLAN_TYPE_FREE, PLAN_TYPE_UNLIMITED, usePlanType } from '../../../../shared/use-plan-type'; import { FeaturedImage } from '../ai-image'; import { Breve, registerBreveHighlights, Highlight } from '../breve'; import { getBreveAvailability, canWriteBriefBeEnabled } from '../breve/utils/get-availability'; import Feedback from '../feedback'; -import SeoAssistant from '../seo-assistant'; +// import SeoAssistant from '../seo-assistant'; import TitleOptimization from '../title-optimization'; import UsagePanel from '../usage-panel'; import { @@ -60,7 +60,7 @@ const isAITitleOptimizationKeywordsFeatureAvailable = getFeatureAvailability( 'ai-title-optimization-keywords-support' ); -const isSeoAssistantEnabled = getFeatureAvailability( 'ai-seo-assistant' ); +// const isSeoAssistantEnabled = getFeatureAvailability( 'ai-seo-assistant' ); const JetpackAndSettingsContent = ( { placement, @@ -72,6 +72,16 @@ const JetpackAndSettingsContent = ( { const { checkoutUrl } = useAICheckout(); const { productPageUrl } = useAiProductPage(); const isBreveAvailable = getBreveAvailability(); + // const isViewable = useSelect( select => { + // const postTypeName = select( editorStore ).getCurrentPostType(); + // const postTypeObject = ( select( coreStore ) as unknown as CoreSelect ).getPostType( + // postTypeName + // ); + + // return postTypeObject?.viewable; + // }, [] ); + + const isPostEmpty = useSelect( select => select( editorStore ).isEditedPostEmpty(), [] ); const currentTitleOptimizationSectionLabel = __( 'Optimize Publishing', 'jetpack' ); const SEOTitleOptimizationSectionLabel = __( 'Optimize Title', 'jetpack' ); @@ -89,7 +99,7 @@ const JetpackAndSettingsContent = ( { ) } - { isSeoAssistantEnabled && ( + { /* { isSeoAssistantEnabled && isViewable && ( { __( 'SEO', 'jetpack' ) } - + + ) } */ } + + { isPostEmpty && ( + + + { __( 'The following features require content to work.', 'jetpack' ) } + + ) } { canWriteBriefBeEnabled() && isBreveAvailable && ( - { __( 'Write Brief with AI (BETA)', 'jetpack' ) } + { __( 'Write Brief (Beta)', 'jetpack' ) } ) } - - - { __( 'AI Feedback', 'jetpack' ) } - - - - { isAITitleOptimizationAvailable && ( @@ -128,16 +139,25 @@ const JetpackAndSettingsContent = ( { ) } + { isAIFeaturedImageAvailable && ( - { __( 'AI Featured Image', 'jetpack' ) } + { __( 'Get Featured Image', 'jetpack' ) } ) } + + + + { __( 'Get Feedback', 'jetpack' ) } + + + + { requireUpgrade && ! isUsagePanelAvailable && ( @@ -149,21 +169,21 @@ const JetpackAndSettingsContent = ( { ) } - - - { __( 'Provide feedback', 'jetpack' ) } + + + { __( 'Learn more about Jetpack AI', 'jetpack' ) } - - - { __( 'Learn more about Jetpack AI', 'jetpack' ) } + + + { __( 'Give us feedback', 'jetpack' ) } - + - { __( 'AI Guidelines', 'jetpack' ) } + { __( 'AI guidelines', 'jetpack' ) } diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/ai-assistant-plugin-sidebar/style.scss b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/ai-assistant-plugin-sidebar/style.scss index 202e5b6b9fd5a..6e9a89425957c 100644 --- a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/ai-assistant-plugin-sidebar/style.scss +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/ai-assistant-plugin-sidebar/style.scss @@ -1,9 +1,23 @@ .jetpack-ai-sidebar__feature-section { margin-bottom: 2em; + display: block; p, p > * { text-wrap: pretty; } + + button { + width: 100%; + justify-content: center; + } +} + +.jetpack-ai-sidebar__external-link { + min-height: unset; +} + +.jetpack-ai-assistant__help-text { + color: #757575; } .jetpack-ai-feedback__label { @@ -14,6 +28,10 @@ } } +.jetpack-ai-sidebar__warning-content { + padding-bottom: 12px; +} + .jetpack-ai__feedback-button { .icon { width: 20px; @@ -22,3 +40,12 @@ margin-left: 4px; } } + +.jetpack-ai__write-brief-card { + width: 100%; + margin-bottom: 12px; + + p { + margin: 0; + } +} diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/ai-image/featured-image.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/ai-image/featured-image.tsx index fed823639ba92..e084c6afc0148 100644 --- a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/ai-image/featured-image.tsx +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/ai-image/featured-image.tsx @@ -374,12 +374,15 @@ export default function FeaturedImage( { { ( placement === PLACEMENT_JETPACK_SIDEBAR || placement === PLACEMENT_DOCUMENT_SETTINGS ) && ( <> -

{ __( 'Create and use an AI generated featured image for your post.', 'jetpack' ) }

+

+ { __( 'Based on your post content.', 'jetpack' ) } +

diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/breve/breve.scss b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/breve/breve.scss index 46f584801f36e..51b9fe52584b0 100644 --- a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/breve/breve.scss +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/breve/breve.scss @@ -1,8 +1,6 @@ @import './features/features.colors'; .jetpack-ai-proofread { - margin-bottom: 24px; - .components-checkbox-control { &__input:not( :disabled ) { @include features-colors( ( 'border-color' ) ); @@ -21,11 +19,6 @@ margin-bottom: 16px; } - &__grade-label { - color: #757575; - margin-left: 12px; - } - &__help-text { font-size: 12px; color: #757575; @@ -36,4 +29,10 @@ flex-direction: column; gap: 12px; } + + &__grade-level-container { + svg { + fill: #757575; + } + } } diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/breve/controls.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/breve/controls.tsx index a96118fa95a66..8ef81d02cdef2 100644 --- a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/breve/controls.tsx +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/breve/controls.tsx @@ -8,10 +8,14 @@ import { CheckboxControl, ToggleControl, Tooltip, + Card, + CardBody, + CardFooter, } from '@wordpress/components'; import { compose, useDebounce } from '@wordpress/compose'; import { useDispatch, useSelect, withSelect } from '@wordpress/data'; import { __ } from '@wordpress/i18n'; +import { Icon, help } from '@wordpress/icons'; /** * External dependencies */ @@ -103,55 +107,64 @@ const Controls = ( { blocks, disabledFeatures } ) => { return (
-

{ __( 'Improve your writing with AI.', 'jetpack' ) }

- - -
- { gradeLevel === null ? ( -

- { __( 'Write to see your grade level.', 'jetpack' ) } -

- ) : ( - -

- { gradeLevel } - - { __( 'Reading grade score', 'jetpack' ) } - -

-
- ) } -
-
-
+

+ { __( 'Visualize issues and apply AI suggestions.', 'jetpack' ) } +

-
- { features.map( - feature => - canWriteBriefFeatureBeEnabled( feature.config.name ) && ( - - ) - ) } -
+ + { isProofreadEnabled && ( + + + + +
+ { features.map( + feature => + canWriteBriefFeatureBeEnabled( feature.config.name ) && ( + + ) + ) } +
+
+
+ + { gradeLevel === null ? ( +

+ { __( 'Write to see your grade level.', 'jetpack' ) } +

+ ) : ( + <> +
+ { gradeLevel } { __( 'Reading grade score', 'jetpack' ) } +
+ + + + + ) } +
+
+
+ ) }
); }; diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/feedback/index.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/feedback/index.tsx index a904ae4fa4297..15e523c3457fe 100644 --- a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/feedback/index.tsx +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/feedback/index.tsx @@ -98,12 +98,15 @@ export default function Feedback( {
{ suggestion }
) } -

{ __( 'Get feedback on content structure.', 'jetpack' ) }

+

+ { __( 'Get feedback on content structure.', 'jetpack' ) } +

diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/big-sky-icon.svg b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/big-sky-icon.svg new file mode 100644 index 0000000000000..9ae8660e1f429 --- /dev/null +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/big-sky-icon.svg @@ -0,0 +1,4 @@ + + + + diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/index.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/index.tsx index 436af29236eac..167dfa8d948c0 100644 --- a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/index.tsx +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/index.tsx @@ -1,21 +1,48 @@ +import { useModuleStatus } from '@automattic/jetpack-shared-extension-utils'; import { Button } from '@wordpress/components'; +import { useSelect } from '@wordpress/data'; +import { store as editorStore } from '@wordpress/editor'; +import { useState } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; import debugFactory from 'debug'; +import { SeoPlaceholder } from '../../../../plugins/seo/components/placeholder'; +import './style.scss'; +import bigSkyIcon from './big-sky-icon.svg'; +import SeoAssistantWizard from './seo-assistant-wizard'; +import type { SeoAssistantProps } from './types'; const debug = debugFactory( 'jetpack-ai:seo-assistant' ); -export default function SeoAssistant( { busy, disabled } ) { +export default function SeoAssistant( { disabled, onStep }: SeoAssistantProps ) { + const [ isOpen, setIsOpen ] = useState( false ); + const postIsEmpty = useSelect( select => select( editorStore ).isEditedPostEmpty(), [] ); + const { isLoadingModules, isChangingStatus, isModuleActive, changeStatus } = + useModuleStatus( 'seo-tools' ); + + debug( 'rendering seo-assistant entry point' ); return (

{ __( 'Improve post engagement.', 'jetpack' ) }

- + { ( isModuleActive || isLoadingModules ) && ( + + ) } + { ! isModuleActive && ! isLoadingModules && ( + + ) } + setIsOpen( false ) } />
); } diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/seo-assistant-wizard.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/seo-assistant-wizard.tsx new file mode 100644 index 0000000000000..4fd874e0f2c16 --- /dev/null +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/seo-assistant-wizard.tsx @@ -0,0 +1,167 @@ +import { Button, Icon, Tooltip } from '@wordpress/components'; +import { useState, useCallback, useEffect, useRef, useMemo } from '@wordpress/element'; +import { __ } from '@wordpress/i18n'; +import { next, closeSmall, chevronLeft } from '@wordpress/icons'; +import debugFactory from 'debug'; +import './style.scss'; +import { useCompletionStep } from './use-completion-step'; +import { useKeywordsStep } from './use-keywords-step'; +import { useMetaDescriptionStep } from './use-meta-description-step'; +import { useTitleStep } from './use-title-step'; +import WizardInput from './wizard-input'; +import WizardMessages from './wizard-messages'; +import type { SeoAssistantProps, Step, Message } from './types'; + +const debug = debugFactory( 'jetpack-ai:seo-assistant-wizard' ); + +export default function SeoAssistantWizard( { isOpen, close, onStep }: SeoAssistantProps ) { + const [ currentStep, setCurrentStep ] = useState( 0 ); + const [ messages, setMessages ] = useState< Message[] >( [] ); + const messagesEndRef = useRef< HTMLDivElement >( null ); + const [ isBusy, setIsBusy ] = useState( false ); + + const scrollToBottom = () => { + messagesEndRef.current?.scrollIntoView( { behavior: 'smooth' } ); + }; + + useEffect( () => { + scrollToBottom(); + }, [ messages ] ); + + const addMessage = useCallback( async ( message: Message ) => { + const newMessage = { + ...message, + showIcon: message.showIcon === false ? false : ! message.isUser, + } as Message; + + setMessages( prev => [ ...prev, { ...newMessage, id: `message-${ prev.length }` } ] ); + }, [] ); + + /* Removes last message */ + const removeLastMessage = () => { + setMessages( prev => prev.slice( 0, -1 ) ); + }; + + const keywordsStep: Step = useKeywordsStep( { + addMessage, + onStep, + } ); + + const titleStep: Step = useTitleStep( { + addMessage, + removeLastMessage, + onStep, + contextData: keywordsStep.value, + setIsBusy, + } ); + + const metaStep: Step = useMetaDescriptionStep( { + addMessage, + removeLastMessage, + onStep, + setIsBusy, + } ); + + const completionStep: Step = useCompletionStep( { + steps: [ keywordsStep, titleStep, metaStep ], + addMessage, + } ); + + const steps: Step[] = useMemo( + () => [ keywordsStep, titleStep, metaStep, completionStep ], + [ keywordsStep, metaStep, titleStep, completionStep ] + ); + + const currentStepData = useMemo( () => steps[ currentStep ], [ steps, currentStep ] ); + + // initialize wizard, set completion monitors + useEffect( () => { + if ( ! isOpen ) { + return; + } + // add messageQueue.length check here for delayed messages + if ( messages.length === 0 ) { + debug( 'init' ); + // Initialize with first step messages + currentStepData.messages.forEach( addMessage ); + } + }, [ isOpen, currentStepData.messages, messages, addMessage ] ); + + const handleNext = useCallback( () => { + if ( currentStep < steps.length - 1 ) { + debug( 'moving to ' + ( currentStep + 1 ), steps[ currentStep + 1 ] ); + setCurrentStep( currentStep + 1 ); + // Add next step messages + // TODO: can we capture completion step here and craft the messages? + // Nothing else has worked so far to keep track of step completions + steps[ currentStep + 1 ].messages.forEach( addMessage ); + steps[ currentStep + 1 ].onStart?.(); + } + }, [ currentStep, steps, setCurrentStep, addMessage ] ); + + const handleSubmit = useCallback( async () => { + await currentStepData.onSubmit?.(); + handleNext(); + }, [ currentStepData, handleNext ] ); + + const handleBack = () => { + if ( currentStep > 0 ) { + setCurrentStep( currentStep - 1 ); + // Re-add previous step messages + steps[ currentStep - 1 ].messages.forEach( message => + addMessage( { + content: message.content, + showIcon: message.showIcon, + } ) + ); + } + }; + + const handleSkip = async () => { + await currentStepData?.onSkip?.(); + handleNext(); + }; + + // Reset states and close the wizard + const handleDone = useCallback( () => { + close(); + setCurrentStep( 0 ); + setMessages( [] ); + steps + .filter( step => step.type !== 'completion' ) + .forEach( step => step.setCompleted( false ) ); + }, [ close, steps ] ); + + return ( + isOpen && ( +
+
+ +

{ currentStepData.title }

+
+ + + + +
+
+ +
+ + + +
+
+ ) + ); +} diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/style.scss b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/style.scss new file mode 100644 index 0000000000000..e541444b6a5e1 --- /dev/null +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/style.scss @@ -0,0 +1,221 @@ +.seo-assistant-wizard { + position: fixed; + bottom: 32px; + left: 50%; + transform: translateX(-50%); + width: 384px; + height: 434px; + background: white; + border-radius: 24px; + outline: 0.5px solid var( --jp-gray-5 ); + z-index: 1000; + display: flex; + flex-direction: column; + + &__header { + flex: 0 0 auto; + display: flex; + align-items: center; + justify-content: space-between; + padding: 16px; + // border-bottom: 1px solid #e5e7eb; + background: white; + border-radius: 16px 16px 0 0; + + h2 { + margin: 0; + font-size: 16px; + font-weight: 600; + } + + button { + background: none; + border: none; + cursor: pointer; + padding: 8px; + color: #6b7280; + + &:hover { + color: #374151; + } + } + } + + &__content { + flex: 1 1 auto; + display: flex; + flex-direction: column; + height: 100%; + overflow: hidden; + } + + &__messages { + flex: 1 1 auto; + display: flex; + flex-direction: column; + gap: 8px; + padding: 16px 24px; + overflow-y: auto; + scroll-behavior: smooth; + align-items: flex-start; + mask-image: linear-gradient( 180deg, transparent, white 24px ); + } + + &__message { + border-radius: 16px; + white-space: pre-line; + animation: messageAppear 0.3s ease-out; + font-size: 13px; + line-height: 1.5; + display: flex; + align-items: center; + min-width: 48px; + + .seo-assistant-wizard__message-icon { + flex-shrink: 0; + align-self: center; + flex-basis: 26px; + + img { + vertical-align: middle; + } + } + + .seo-assistant-wizard__message-text { + padding: 4px 12px; + // flex: 1 0 200px; + } + + &.is-user { + background: #f3f4f6; + align-self: flex-end; + max-width: 85%; + + .seo-assistant-wizard__message-icon { + display: none; + } + } + } + + &__input-container { + flex: 0 0 auto; + padding: 16px; + background: white; + border-radius: 0 0 16px 16px; + border-top: 1px solid var( --jp-gray-5, #e5e7eb ); + } + + &__input { + display: flex; + gap: 8px; + border-radius: 12px; + outline: 1px solid var( --jp-gray-10, #c3c3c3 ); + align-items: center; + padding-right: 6px; + height: 44px; + + &:focus-within { + outline-width: 2px; + outline-color: var( --wp-components-color-accent, var( --wp-admin-theme-color, #007cba ) ); + } + + .components-base-control { + flex-grow: 1; + } + .components-text-control__input, + .components-text-control__input:focus { + padding: 8px; + border: 0; + border-radius: 12px; + box-shadow: none; + outline: 0; + } + } + + &__submit { + border-radius: 20px; + max-height: 34px; + } + + &__options { + display: flex; + flex-direction: column; + gap: 12px; + } + + &__option { + width: 100%; + padding: 12px; + background: #f3f4f6; + border: 2px solid transparent; + border-radius: 12px; + text-align: left; + font-size: 14px; + line-height: 1.4; + transition: all 0.2s ease; + animation: messageAppear 0.3s ease-out; + color: inherit; + + &.is-selected { + background: #fff; + border-color: var( --wp-components-color-accent, var( --wp-admin-theme-color, #007cba ) ); + } + + // target buttons only + &:not( div ) { + cursor: pointer; + } + + &:hover:not( div ):not( .is-selected ) { + background: #e5e7eb; + } + } + + &__actions { + display: flex; + justify-content: flex-end; + align-items: center; + gap: 16px; + + .components-button { + border-radius: 20px; + } + } + + &__completion { + display: flex; + justify-content: flex-end; + + .components-button { + border-radius: 20px; + } + } +} + +@keyframes messageAppear { + from { + opacity: 0; + transform: translateY(10px); + } + to { + opacity: 1; + transform: translateY(0); + } +} + +// Keep this around for magic: +@keyframes typing-blink { + 30% { cy: 30; } + 50% { cy: 25; fill: lightgrey } + 70% { cy: 30; } +} +.typing-dot { + animation: 1s typing-blink linear infinite; + fill: grey; +} +.typing-dot:nth-child(2) { animation-delay: 150ms } +.typing-dot:nth-child(3) { animation-delay: 250ms } + +.typing-loader { + color: grey; +} diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/types.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/types.tsx new file mode 100644 index 0000000000000..d14a0d2578d19 --- /dev/null +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/types.tsx @@ -0,0 +1,71 @@ +type StepType = 'input' | 'options' | 'completion'; + +export interface Message { + id?: string; + content?: string | React.ReactNode; + isUser?: boolean; + showIcon?: boolean; + type?: string; + options?: Option[]; +} + +export interface Option { + id: string; + content: string; + selected?: boolean; +} + +interface BaseStep { + id: string; + title: string; + label?: string; + messages: StepMessage[]; + type: StepType; + onStart?: () => void; + onSubmit?: () => void; + onSkip?: () => void; + value: string; + setValue: + | React.Dispatch< React.SetStateAction< string > > + | React.Dispatch< React.SetStateAction< Array< string > > >; + setCompleted?: React.Dispatch< React.SetStateAction< boolean > >; + completed?: boolean; +} + +interface InputStep extends BaseStep { + type: 'input'; + placeholder: string; +} + +interface OptionsStep extends BaseStep { + type: 'options'; + options: Option[]; + onSelect: ( option: Option ) => void; + submitCtaLabel?: string; + onRetry?: () => void; + onRetryCtaLabel?: string; +} + +interface CompletionStep extends BaseStep { + type: 'completion'; +} + +interface StepMessage { + content: string | React.ReactNode; + showIcon?: boolean; +} + +export type Step = InputStep | OptionsStep | CompletionStep; + +export type CompletionStepHookProps = { + steps: Step[]; + addMessage?: ( message: Message | string ) => void; +}; + +export interface SeoAssistantProps { + isBusy?: boolean; + disabled?: boolean; + onStep?: ( data: { value: string | Option | null } ) => void; + isOpen?: boolean; + close?: () => void; +} diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/typing-message.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/typing-message.tsx new file mode 100644 index 0000000000000..540231b59be73 --- /dev/null +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/typing-message.tsx @@ -0,0 +1,11 @@ +import { SVG, Circle } from '@wordpress/components'; + +export default function TypingMessage() { + return ( + + + + + + ); +} diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/use-completion-step.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/use-completion-step.tsx new file mode 100644 index 0000000000000..a46bc41eadd5f --- /dev/null +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/use-completion-step.tsx @@ -0,0 +1,49 @@ +import { createInterpolateElement, useCallback } from '@wordpress/element'; +import { __ } from '@wordpress/i18n'; +import type { Step, CompletionStepHookProps } from './types'; + +export const useCompletionStep = ( { steps }: CompletionStepHookProps ): Step => { + const getSummaryCheck = useCallback( () => { + const summaryString = steps + .map( step => { + const stepLabel = step.label || step.title; + return step.completed ? `✅ ${ stepLabel }` : `❌ ${ stepLabel }`; + } ) + .join( '
' ); + return createInterpolateElement( summaryString, { br:
} ); + }, [ steps ] ); + + return { + id: 'completion', + title: __( 'Your post is SEO-ready', 'jetpack' ), + // onStart: handleSummaryChecks, + messages: [ + { + content: __( "Here's your updated checklist:", 'jetpack' ), + showIcon: true, + }, + { + content: getSummaryCheck(), + showIcon: false, + }, + { + content: createInterpolateElement( + __( + 'SEO optimization complete! 🎉
Your blog post is now search-engine friendly.', + 'jetpack' + ), + { br:
} + ), + showIcon: true, + }, + { + content: __( 'Happy blogging! 😊', 'jetpack' ), + showIcon: false, + }, + ], + type: 'completion', + // onStart: handleStart, + value: null, + setValue: () => null, + }; +}; diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/use-keywords-step.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/use-keywords-step.tsx new file mode 100644 index 0000000000000..ac811cd2546af --- /dev/null +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/use-keywords-step.tsx @@ -0,0 +1,87 @@ +import { createInterpolateElement, useCallback, useState } from '@wordpress/element'; +import { __, sprintf } from '@wordpress/i18n'; +import type { Step } from './types'; + +export const useKeywordsStep = ( { addMessage, onStep } ): Step => { + const [ keywords, setKeywords ] = useState( '' ); + const [ completed, setCompleted ] = useState( false ); + + const handleSkip = useCallback( () => { + addMessage( { content: __( 'Skipped!', 'jetpack' ) } ); + if ( onStep ) { + onStep( { value: '' } ); + } + }, [ addMessage, onStep ] ); + + const handleKeywordsSubmit = useCallback( () => { + if ( ! keywords.trim() ) { + return handleSkip(); + } + addMessage( { content: keywords, isUser: true } ); + + const keywordlist = keywords + .split( ',' ) + .map( k => k.trim() ) + .reduce( ( acc, curr, i, arr ) => { + if ( arr.length === 1 ) { + return curr; + } + if ( i === arr.length - 1 ) { + return `${ acc } & ${ curr }`; + } + return i === 0 ? curr : `${ acc }, ${ curr }`; + }, '' ); + const message = createInterpolateElement( + /* Translators: wrapped string is list of keywords user has entered */ + sprintf( __( `Got it! You're targeting %s. ✨✅`, 'jetpack' ), keywordlist ), + { + b: , + } + ); + addMessage( { content: message } ); + setCompleted( true ); + if ( onStep ) { + onStep( { value: keywords } ); + } + }, [ onStep, addMessage, keywords, handleSkip ] ); + + return { + id: 'keywords', + title: __( 'Optimise for SEO', 'jetpack' ), + label: __( 'Keywords', 'jetpack' ), + messages: [ + { + content: createInterpolateElement( + __( "Hi there! 👋 Let's optimise your blog post for SEO.", 'jetpack' ), + { b: } + ), + showIcon: true, + }, + { + content: createInterpolateElement( + __( + "Here's what we can improve:
1. Keywords
2. Title
3. Meta description", + 'jetpack' + ), + { br:
} + ), + showIcon: false, + }, + { + content: __( + 'To start, please enter 1–3 focus keywords that describe your blog post.', + 'jetpack' + ), + showIcon: true, + }, + ], + type: 'input', + placeholder: __( 'Photography, plants', 'jetpack' ), + onSubmit: handleKeywordsSubmit, + onSkip: handleSkip, + completed, + setCompleted, + value: keywords, + setValue: setKeywords, + }; +}; diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/use-meta-description-step.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/use-meta-description-step.tsx new file mode 100644 index 0000000000000..5b4699fd95872 --- /dev/null +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/use-meta-description-step.tsx @@ -0,0 +1,117 @@ +import { useDispatch } from '@wordpress/data'; +import { useCallback, useState } from '@wordpress/element'; +import { __ } from '@wordpress/i18n'; +import TypingMessage from './typing-message'; +import type { Step, Option } from './types'; + +export const useMetaDescriptionStep = ( { + addMessage, + removeLastMessage, + onStep, + setIsBusy, +} ): Step => { + const [ selectedMetaDescription, setSelectedMetaDescription ] = useState< string >(); + const [ metaDescriptionOptions, setMetaDescriptionOptions ] = useState< Option[] >( [] ); + const { editPost } = useDispatch( 'core/editor' ); + const [ completed, setCompleted ] = useState( false ); + + const handleMetaDescriptionSelect = useCallback( ( option: Option ) => { + setSelectedMetaDescription( option.content ); + setMetaDescriptionOptions( prev => + prev.map( opt => ( { + ...opt, + selected: opt.id === option.id, + } ) ) + ); + }, [] ); + + const handleMetaDescriptionSubmit = useCallback( async () => { + addMessage( { content: } ); + await editPost( { meta: { advanced_seo_description: selectedMetaDescription } } ); + removeLastMessage(); + addMessage( { content: selectedMetaDescription, isUser: true } ); + addMessage( { content: __( 'Meta description updated! ✅', 'jetpack' ) } ); + setCompleted( true ); + if ( onStep ) { + onStep( { value: selectedMetaDescription } ); + } + }, [ selectedMetaDescription, onStep, addMessage, editPost, removeLastMessage ] ); + + const handleMetaDescriptionGenerate = useCallback( async () => { + setIsBusy( true ); + let newMetaDescriptions; + // we only generate if options are empty + if ( metaDescriptionOptions.length === 0 ) { + addMessage( { content: } ); + newMetaDescriptions = await new Promise( resolve => + setTimeout( + () => + resolve( [ + { + id: 'meta-1', + content: + 'Explore breathtaking flower and plant photography in our Flora Guide, featuring tips and inspiration for gardening and plant enthusiasts to enhance their outdoor spaces.', + }, + ] ), + 2000 + ) + ); + removeLastMessage(); + } + addMessage( { content: __( "Here's a suggestion:", 'jetpack' ) } ); + setMetaDescriptionOptions( newMetaDescriptions || metaDescriptionOptions ); + setIsBusy( false ); + }, [ metaDescriptionOptions, addMessage, removeLastMessage, setIsBusy ] ); + + const handleMetaDescriptionRegenerate = useCallback( async () => { + setMetaDescriptionOptions( [] ); + addMessage( { content: } ); + const newMetaDescription = await new Promise< Array< Option > >( resolve => + setTimeout( + () => + resolve( [ + { + id: 'meta-1', + content: + 'Explore breathtaking flower and plant photography in our Flora Guide, featuring tips and inspiration for gardening and plant enthusiasts to enhance their outdoor spaces.', + }, + ] ), + 2000 + ) + ); + removeLastMessage(); + addMessage( { content: __( "Here's a new suggestion:", 'jetpack' ) } ); + setMetaDescriptionOptions( newMetaDescription ); + }, [ addMessage, removeLastMessage ] ); + + const handleSkip = useCallback( () => { + addMessage( { content: __( 'Skipped!', 'jetpack' ) } ); + if ( onStep ) { + onStep(); + } + }, [ addMessage, onStep ] ); + + return { + id: 'meta', + title: __( 'Add meta description', 'jetpack' ), + messages: [ + { + content: __( "Now, let's optimize your meta description.", 'jetpack' ), + showIcon: true, + }, + ], + type: 'options', + options: metaDescriptionOptions, + onSelect: handleMetaDescriptionSelect, + onSubmit: handleMetaDescriptionSubmit, + submitCtaLabel: __( 'Insert', 'jetpack' ), + onRetry: handleMetaDescriptionRegenerate, + onRetryCtaLabel: __( 'Regenerate', 'jetpack' ), + onStart: handleMetaDescriptionGenerate, + onSkip: handleSkip, + value: selectedMetaDescription, + setValue: setSelectedMetaDescription, + completed, + setCompleted, + }; +}; diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/use-title-step.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/use-title-step.tsx new file mode 100644 index 0000000000000..0153dab8dfaab --- /dev/null +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/use-title-step.tsx @@ -0,0 +1,175 @@ +import { useDispatch } from '@wordpress/data'; +import { useCallback, useState, useEffect } from '@wordpress/element'; +import { __ } from '@wordpress/i18n'; +import TypingMessage from './typing-message'; +import type { Step, Option } from './types'; + +export const useTitleStep = ( { + addMessage, + removeLastMessage, + onStep, + contextData, + setIsBusy, +} ): Step => { + const [ selectedTitle, setSelectedTitle ] = useState< string >(); + const [ titleOptions, setTitleOptions ] = useState< Option[] >( [] ); + const { editPost } = useDispatch( 'core/editor' ); + const [ completed, setCompleted ] = useState( false ); + + const handleTitleSelect = useCallback( ( option: Option ) => { + setSelectedTitle( option.content ); + setTitleOptions( prev => + prev.map( opt => ( { + ...opt, + selected: opt.id === option.id, + } ) ) + ); + }, [] ); + + useEffect( () => setTitleOptions( [] ), [ contextData ] ); + + const handleTitleGenerate = useCallback( async () => { + setIsBusy( true ); + let newTitles; + // we only generate if options are empty + if ( titleOptions.length === 0 ) { + addMessage( { content: } ); + newTitles = await new Promise( resolve => + setTimeout( + () => + resolve( [ + { + id: '1', + content: 'A Photo Gallery for Gardening Enthusiasths: Flora Guide', + }, + { + id: '2', + content: + 'Flora Guide: Beautiful Photos of Flowers and Plants for Gardening Enthusiasts', + }, + ] ), + 2000 + ) + ); + removeLastMessage(); + } + if ( contextData ) { + addMessage( { + content: __( + 'Here are two suggestions based on your keywords. Select the one you prefer:', + 'jetpack' + ), + } ); + } else { + addMessage( { + content: __( 'Here are two suggestions. Select the one you prefer:', 'jetpack' ), + } ); + } + setTitleOptions( newTitles || titleOptions ); + setIsBusy( false ); + }, [ titleOptions, addMessage, removeLastMessage, contextData, setIsBusy ] ); + + const replaceOptionsWithFauxUseMessages = useCallback( () => { + const optionsMessage = { + id: 'title-options-' + Math.random(), + content: '', + type: 'past-options', + options: [], + showIcon: false, + }; + // removeLastMessage(); + titleOptions.forEach( titleOption => { + optionsMessage.options.push( { ...titleOption } ); + } ); + addMessage( optionsMessage ); + }, [ titleOptions, addMessage ] ); + + const handleTitleRegenerate = useCallback( async () => { + // let the controller know we're working + setIsBusy( true ); + + // This would typically be an async call to generate new titles + replaceOptionsWithFauxUseMessages(); + setTitleOptions( [] ); + addMessage( { content: } ); + const newTitles = await new Promise< Array< Option > >( resolve => + setTimeout( + () => + resolve( [ + { + id: '1', + content: 'A Photo Gallery for Gardening Enthusiasths: Flora Guide', + }, + { + id: '2', + content: + 'Flora Guide: Beautiful Photos of Flowers and Plants for Gardening Enthusiasts', + }, + ] ), + 2000 + ) + ); + removeLastMessage(); + addMessage( { + content: __( + 'Here are two new suggestions based on your keywords. Select the one you prefer:', + 'jetpack' + ), + } ); + setTitleOptions( newTitles ); + setIsBusy( false ); + }, [ addMessage, removeLastMessage, replaceOptionsWithFauxUseMessages, setIsBusy ] ); + + const handleTitleSubmit = useCallback( async () => { + replaceOptionsWithFauxUseMessages(); + addMessage( { content: } ); + await editPost( { title: selectedTitle, meta: { jetpack_seo_html_title: selectedTitle } } ); + removeLastMessage(); + addMessage( { content: __( 'Title updated! ✅', 'jetpack' ) } ); + setCompleted( true ); + if ( onStep ) { + onStep( { value: selectedTitle } ); + } + }, [ + selectedTitle, + onStep, + addMessage, + replaceOptionsWithFauxUseMessages, + editPost, + removeLastMessage, + ] ); + + const handleSkip = useCallback( () => { + if ( titleOptions.length ) { + replaceOptionsWithFauxUseMessages(); + } + addMessage( __( 'Skipped!', 'jetpack' ) ); + if ( onStep ) { + onStep(); + } + }, [ addMessage, onStep, titleOptions, replaceOptionsWithFauxUseMessages ] ); + + return { + id: 'title', + title: __( 'Optimise Title', 'jetpack' ), + messages: [ + { + content: __( "Let's optimise your title.", 'jetpack' ), + showIcon: true, + }, + ], + type: 'options', + options: titleOptions, + onSelect: handleTitleSelect, + onSubmit: handleTitleSubmit, + submitCtaLabel: __( 'Insert', 'jetpack' ), + onRetry: handleTitleRegenerate, + onRetryCtaLabel: __( 'Regenerate', 'jetpack' ), + onStart: handleTitleGenerate, + onSkip: handleSkip, + value: selectedTitle, + setValue: setSelectedTitle, + completed, + setCompleted, + }; +}; diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/wizard-input.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/wizard-input.tsx new file mode 100644 index 0000000000000..f9263e0188088 --- /dev/null +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/wizard-input.tsx @@ -0,0 +1,51 @@ +import { Button, TextControl, Icon } from '@wordpress/components'; +import { __ } from '@wordpress/i18n'; +import { arrowRight } from '@wordpress/icons'; + +export default function WizardInput( { currentStepData, handleSubmit, handleDone } ) { + const selectedOption = + currentStepData.type === 'options' ? currentStepData.options.find( opt => opt.selected ) : null; + return ( +
+ { currentStepData.type === 'input' && ( +
+ + +
+ ) } + + { currentStepData.type === 'options' && ( +
+ + + +
+ ) } + + { currentStepData.type === 'completion' && ( +
+ +
+ ) } +
+ ); +} diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/wizard-messages.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/wizard-messages.tsx new file mode 100644 index 0000000000000..fc6e0af1dc98c --- /dev/null +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/seo-assistant/wizard-messages.tsx @@ -0,0 +1,87 @@ +import { useEffect, useRef } from '@wordpress/element'; +import { __ } from '@wordpress/i18n'; +import clsx from 'clsx'; +import bigSkyIcon from './big-sky-icon.svg'; + +const Message = ( { message } ) => { + return ( +
+
+ { message.showIcon && ( + { + ) } +
+ + { message.type === 'past-options' && ( +
+ { message.options.map( option => ( +
+ { option.content } +
+ ) ) } +
+ ) } + + { ( ! message.type || message.type === 'chat' ) && ( +
{ message.content }
+ ) } +
+ ); +}; + +const OptionMessages = ( { currentStepData } ) => { + if ( currentStepData.type !== 'options' || ! currentStepData.options.length ) { + return null; + } + + return ( +
+
+
+
+ { currentStepData.options.map( option => ( + + ) ) } +
+
+
+ ); +}; + +export default function Messages( { currentStepData, messages } ) { + const messagesEndRef = useRef< HTMLDivElement >( null ); + const scrollToBottom = () => { + messagesEndRef.current?.scrollIntoView( { behavior: 'smooth' } ); + }; + + useEffect( () => { + scrollToBottom(); + }, [ messages ] ); + + return ( +
EOF; // phpcs:enable WordPress.Security.EscapeOutput.OutputNotEscaped - exit; + exit( 0 ); } // The WPCOM_USER_CONTENT_LINK_REDIRECTION flag prevents this redirection logic from running diff --git a/projects/plugins/jetpack/modules/widgets/authors.php b/projects/plugins/jetpack/modules/widgets/authors.php index 736a7c31c21d3..8303b11b9084e 100644 --- a/projects/plugins/jetpack/modules/widgets/authors.php +++ b/projects/plugins/jetpack/modules/widgets/authors.php @@ -3,7 +3,7 @@ * Disable direct access/execution to/of the widget code. */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } // phpcs:disable Universal.Files.SeparateFunctionsFromOO.Mixed -- TODO: Move classes to appropriately-named class files. diff --git a/projects/plugins/jetpack/modules/widgets/blog-stats.php b/projects/plugins/jetpack/modules/widgets/blog-stats.php index edac9fd2989d8..502ab264cee07 100644 --- a/projects/plugins/jetpack/modules/widgets/blog-stats.php +++ b/projects/plugins/jetpack/modules/widgets/blog-stats.php @@ -14,7 +14,7 @@ // Disable direct access/execution to/of the widget code. if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } /** diff --git a/projects/plugins/jetpack/modules/widgets/class-jetpack-eu-cookie-law-widget.php b/projects/plugins/jetpack/modules/widgets/class-jetpack-eu-cookie-law-widget.php index 411863fc4bc0d..c9e75cb9dfc1f 100644 --- a/projects/plugins/jetpack/modules/widgets/class-jetpack-eu-cookie-law-widget.php +++ b/projects/plugins/jetpack/modules/widgets/class-jetpack-eu-cookie-law-widget.php @@ -11,7 +11,7 @@ * Disable direct access/execution to/of the widget code. */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } if ( ! class_exists( 'Jetpack_EU_Cookie_Law_Widget' ) ) { diff --git a/projects/plugins/jetpack/modules/widgets/flickr.php b/projects/plugins/jetpack/modules/widgets/flickr.php index 868abd91504f1..0442688627343 100644 --- a/projects/plugins/jetpack/modules/widgets/flickr.php +++ b/projects/plugins/jetpack/modules/widgets/flickr.php @@ -7,7 +7,7 @@ * Disable direct access/execution to/of the widget code. */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } if ( ! class_exists( 'Jetpack_Flickr_Widget' ) ) { diff --git a/projects/plugins/jetpack/modules/widgets/google-translate.php b/projects/plugins/jetpack/modules/widgets/google-translate.php index 9311968331284..70b328ee1c360 100644 --- a/projects/plugins/jetpack/modules/widgets/google-translate.php +++ b/projects/plugins/jetpack/modules/widgets/google-translate.php @@ -14,7 +14,7 @@ use Automattic\Jetpack\Assets; if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } /** diff --git a/projects/plugins/jetpack/modules/widgets/my-community.php b/projects/plugins/jetpack/modules/widgets/my-community.php index 4ba43d941726f..a79c6d304527d 100644 --- a/projects/plugins/jetpack/modules/widgets/my-community.php +++ b/projects/plugins/jetpack/modules/widgets/my-community.php @@ -6,7 +6,7 @@ // Disable direct access/execution to/of the widget code. if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } /** diff --git a/projects/plugins/jetpack/modules/widgets/simple-payments.php b/projects/plugins/jetpack/modules/widgets/simple-payments.php index a7e7e1ecf3e12..5a0b0da46e57f 100644 --- a/projects/plugins/jetpack/modules/widgets/simple-payments.php +++ b/projects/plugins/jetpack/modules/widgets/simple-payments.php @@ -6,7 +6,7 @@ // Disable direct access/execution to/of the widget code. if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } if ( ! class_exists( 'Jetpack_Simple_Payments_Widget' ) ) { diff --git a/projects/plugins/jetpack/modules/widgets/wordpress-post-widget.php b/projects/plugins/jetpack/modules/widgets/wordpress-post-widget.php index 3cbd6015b5f7b..03fcc34bb9cf5 100644 --- a/projects/plugins/jetpack/modules/widgets/wordpress-post-widget.php +++ b/projects/plugins/jetpack/modules/widgets/wordpress-post-widget.php @@ -15,7 +15,7 @@ * Disable direct access/execution to/of the widget code. */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } require __DIR__ . '/wordpress-post-widget/class.jetpack-display-posts-widget-base.php'; diff --git a/projects/plugins/jetpack/modules/woocommerce-analytics/class-jetpack-woocommerce-analytics.php b/projects/plugins/jetpack/modules/woocommerce-analytics/class-jetpack-woocommerce-analytics.php index 4af16958a4f72..e4a2e2dba79a3 100644 --- a/projects/plugins/jetpack/modules/woocommerce-analytics/class-jetpack-woocommerce-analytics.php +++ b/projects/plugins/jetpack/modules/woocommerce-analytics/class-jetpack-woocommerce-analytics.php @@ -6,7 +6,7 @@ */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } require __DIR__ . '/classes/class-jetpack-woocommerce-analytics-trait.php'; diff --git a/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-checkout-flow.php b/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-checkout-flow.php index c4e5a144337d0..c5544d89bfbce 100644 --- a/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-checkout-flow.php +++ b/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-checkout-flow.php @@ -12,7 +12,7 @@ * Bail if accessed directly */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } /** diff --git a/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-my-account.php b/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-my-account.php index 0da1211a3432c..dfb22f6b2d825 100644 --- a/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-my-account.php +++ b/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-my-account.php @@ -12,7 +12,7 @@ * Bail if accessed directly */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } /** diff --git a/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-trait.php b/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-trait.php index 1b3ab9422992c..d282e738cea33 100644 --- a/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-trait.php +++ b/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-trait.php @@ -12,7 +12,7 @@ * Bail if accessed directly */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } /** diff --git a/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-universal.php b/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-universal.php index 0188f4477d779..b9353b499ef99 100644 --- a/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-universal.php +++ b/projects/plugins/jetpack/modules/woocommerce-analytics/classes/class-jetpack-woocommerce-analytics-universal.php @@ -12,7 +12,7 @@ * Bail if accessed directly */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } /** diff --git a/projects/plugins/jetpack/modules/wordads/class-wordads.php b/projects/plugins/jetpack/modules/wordads/class-wordads.php index c02922d44d055..68f12dcca3a14 100644 --- a/projects/plugins/jetpack/modules/wordads/class-wordads.php +++ b/projects/plugins/jetpack/modules/wordads/class-wordads.php @@ -247,7 +247,7 @@ public function init() { http_response_code( 200 ); header( 'Content-Type: text/plain; charset=utf-8' ); echo esc_html( $ads_txt_content ); - die(); + die( 0 ); } } diff --git a/projects/plugins/jetpack/package.json b/projects/plugins/jetpack/package.json index 80ab7460baf93..ddfe931a97db9 100644 --- a/projects/plugins/jetpack/package.json +++ b/projects/plugins/jetpack/package.json @@ -1,6 +1,6 @@ { "name": "Jetpack", - "version": "14.2.1", + "version": "14.3.0-a.3", "private": true, "description": "[Jetpack](https://jetpack.com/) is a WordPress plugin that supercharges your self-hosted WordPress site with the awesome cloud power of [WordPress.com](https://wordpress.com).", "homepage": "https://jetpack.com", @@ -64,24 +64,24 @@ "@automattic/social-previews": "2.1.0-beta.8", "@automattic/viewport": "1.0.0", "@microsoft/fetch-event-source": "2.0.1", - "@wordpress/base-styles": "5.14.0", - "@wordpress/block-editor": "14.9.0", - "@wordpress/blocks": "14.3.0", - "@wordpress/browserslist-config": "6.14.0", - "@wordpress/compose": "7.14.0", - "@wordpress/data": "10.14.0", - "@wordpress/date": "5.14.0", - "@wordpress/edit-post": "8.14.0", - "@wordpress/element": "6.14.0", - "@wordpress/hooks": "4.14.0", - "@wordpress/i18n": "5.14.0", - "@wordpress/icons": "10.14.0", - "@wordpress/primitives": "4.14.0", - "@wordpress/rich-text": "7.14.0", - "@wordpress/url": "4.14.0", - "@wordpress/viewport": "6.14.0", - "@wordpress/widgets": "4.14.0", - "@wordpress/wordcount": "4.14.0", + "@wordpress/base-styles": "5.16.0", + "@wordpress/block-editor": "14.11.0", + "@wordpress/blocks": "14.5.0", + "@wordpress/browserslist-config": "6.16.0", + "@wordpress/compose": "7.16.0", + "@wordpress/data": "10.16.0", + "@wordpress/date": "5.16.0", + "@wordpress/edit-post": "8.16.0", + "@wordpress/element": "6.16.0", + "@wordpress/hooks": "4.16.0", + "@wordpress/i18n": "5.16.0", + "@wordpress/icons": "10.16.0", + "@wordpress/primitives": "4.16.0", + "@wordpress/rich-text": "7.16.0", + "@wordpress/url": "4.16.0", + "@wordpress/viewport": "6.16.0", + "@wordpress/widgets": "4.16.0", + "@wordpress/wordcount": "4.16.0", "bounding-client-rect": "1.0.5", "clipboard": "2.0.6", "clsx": "2.1.1", @@ -136,18 +136,18 @@ "@types/jest": "29.5.12", "@types/react": "18.3.18", "@types/wordpress__block-editor": "11.5.16", - "@wordpress/api-fetch": "7.14.0", - "@wordpress/babel-plugin-import-jsx-pragma": "5.14.0", - "@wordpress/blob": "4.14.0", - "@wordpress/block-serialization-default-parser": "5.14.0", - "@wordpress/components": "29.0.0", - "@wordpress/core-data": "7.14.0", - "@wordpress/dom-ready": "4.14.0", - "@wordpress/editor": "14.14.0", - "@wordpress/escape-html": "3.14.0", - "@wordpress/keycodes": "4.14.0", - "@wordpress/notices": "5.14.0", - "@wordpress/token-list": "3.14.0", + "@wordpress/api-fetch": "7.16.0", + "@wordpress/babel-plugin-import-jsx-pragma": "5.16.0", + "@wordpress/blob": "4.16.0", + "@wordpress/block-serialization-default-parser": "5.16.0", + "@wordpress/components": "29.2.0", + "@wordpress/core-data": "7.16.0", + "@wordpress/dom-ready": "4.16.0", + "@wordpress/editor": "14.16.0", + "@wordpress/escape-html": "3.16.0", + "@wordpress/keycodes": "4.16.0", + "@wordpress/notices": "5.16.0", + "@wordpress/token-list": "3.16.0", "autoprefixer": "10.4.20", "babel-jest": "29.4.3", "concurrently": "7.6.0", diff --git a/projects/plugins/jetpack/readme.txt b/projects/plugins/jetpack/readme.txt index 02a16ca255a97..705a43e725a2b 100644 --- a/projects/plugins/jetpack/readme.txt +++ b/projects/plugins/jetpack/readme.txt @@ -326,33 +326,17 @@ Jetpack Backup can do a full website migration to a new host, migrate theme file == Changelog == -## 14.2.1 - 2025-01-09 -### Bug fixes -- WC Analytics: Temporarily disable setcookie to avoid caching issues. - -### 14.2 - 2025-01-07 +### 14.3-a.3 - 2025-01-20 #### Enhancements -- Social: Improve Jetpack Likes behavior for better theme integration if the post has likes. -- Stats: Allow programatically fetching stats for specific sites when using Jetpack's tools. -- Stats: Enable sparkline chart in the WP Admin bar. -- Stats: Sunset Legacy Stats experience. - -#### Improved compatibility -- Google Photos Picker: Update UX opening picker right after pressing "change selection" CTA. -- Jetpack Testimonials: Ensure feature loads via the Classic Theme Helper package instead of the module. -- SEO: Ensure support for adding an SEO title and description for custom post types. -- WordPress 6.7 Compatibility: Fix notices caused by translation calls happening too early in the load order. +- Forms: Allow HTML block within forms. +- Show Infinite Scroll options in Simple Classic. #### Bug fixes -- Facebook Embeds: Add a white background to embeds to avoid transparent background interfering with readability. -- Form Block: Fix validation of URL input types to allow query strings. -- Google Fonts: Clean up the Google Fonts data if either the Google Fonts module is disabled or Jetpack is disabled. -- Import: Set WP_IMPORTING constant correctly when doing an import. -- SEO: Ensure that SEO fields are not visible when another SEO plugin is active. -- Shortcode embeds: Ensure Instagram reels are properly displayed in AMP views. -- Shortcodes: Prevent conflict with third-party SoundCloud shortcodes. -- Slideshow block: Fix block display when added within a Stack block. -- WooCommerce Analytics: Fix fatal error when WooCommerce cart object is not available. +- Fix: Newsletter toggle in editor sidebar has a visually broken active state. +- Forms: Fix dropdown icon style. +- Photon: Fix double encoding image urls. +- Sharing: Fix the location of the sharing dialog so it is not always the first sharing element on the page. +- Social: Fix wordpress.com login error when connecting Social accounts. -------- diff --git a/projects/plugins/jetpack/tests/jest-globals.extensions.js b/projects/plugins/jetpack/tests/jest-globals.extensions.js index 174ab2f0642ea..b54a6302c0638 100644 --- a/projects/plugins/jetpack/tests/jest-globals.extensions.js +++ b/projects/plugins/jetpack/tests/jest-globals.extensions.js @@ -23,15 +23,6 @@ if ( ! window.CSS ) { }; } -// Needed by `@wordpress/compose' >=5.7.0 -if ( ! global.ResizeObserver ) { - global.ResizeObserver = class ResizeObserver { - observe() {} - unobserve() {} - disconnect() {} - }; -} - // Needed for react-dom 18 if ( ! global.TextEncoder ) { const { TextEncoder, TextDecoder } = require( 'node:util' ); diff --git a/projects/plugins/jetpack/uninstall.php b/projects/plugins/jetpack/uninstall.php index d5b09a4090b17..ac26a0c945443 100644 --- a/projects/plugins/jetpack/uninstall.php +++ b/projects/plugins/jetpack/uninstall.php @@ -19,7 +19,7 @@ function jetpack_uninstall() { dirname( WP_UNINSTALL_PLUGIN ) !== dirname( plugin_basename( __FILE__ ) ) ) { status_header( 404 ); - exit; + exit( 0 ); } if ( ! defined( 'JETPACK__PLUGIN_DIR' ) ) { diff --git a/projects/plugins/mu-wpcom-plugin/CHANGELOG.md b/projects/plugins/mu-wpcom-plugin/CHANGELOG.md index cd93fc78e7131..4109e0ef0df9d 100644 --- a/projects/plugins/mu-wpcom-plugin/CHANGELOG.md +++ b/projects/plugins/mu-wpcom-plugin/CHANGELOG.md @@ -5,6 +5,19 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## 2.7.0 - 2025-01-10 +### Added +- WordPress.com Features: Add Holiday Snow functionality. [#40478] + +### Changed +- Newspack Blocks: Update to version 4.5.2. [#40636] +- Updated dependencies. [#40286] +- Updated package dependencies. [#40116] [#40515] + +### Fixed +- Global Styles: Stop showing the limited global styles notice in distraction-free mode. [#40907] +- Testimonials: Fix a shortcode related bug which ccurs if the column attribute is added and set to 0. [#40896] + ## 2.6.1 - 2024-11-11 ### Changed - Internal updates. diff --git a/projects/plugins/mu-wpcom-plugin/changelog/add-ci-always-process-coverage b/projects/plugins/mu-wpcom-plugin/changelog/add-ci-always-process-coverage deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/add-ci-always-process-coverage +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/mu-wpcom-plugin/changelog/add-jetpack-mu-wpcom-watch b/projects/plugins/mu-wpcom-plugin/changelog/add-jetpack-mu-wpcom-watch deleted file mode 100644 index 50f27fde68dca..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/add-jetpack-mu-wpcom-watch +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: added -Comment: update composer.lock file - - diff --git a/projects/plugins/social/changelog/fix-order-of-services b/projects/plugins/mu-wpcom-plugin/changelog/add-masterbar-watch similarity index 54% rename from projects/plugins/social/changelog/fix-order-of-services rename to projects/plugins/mu-wpcom-plugin/changelog/add-masterbar-watch index 8f7a66077dab9..dba2d7dd92db5 100644 --- a/projects/plugins/social/changelog/fix-order-of-services +++ b/projects/plugins/mu-wpcom-plugin/changelog/add-masterbar-watch @@ -1,4 +1,4 @@ Significance: minor Type: changed -Change order of connections. +update composer.lock files diff --git a/projects/plugins/mu-wpcom-plugin/changelog/add-pre-option-filter-duplicate-views b/projects/plugins/mu-wpcom-plugin/changelog/add-pre-option-filter-duplicate-views deleted file mode 100644 index 19105e05f270e..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/add-pre-option-filter-duplicate-views +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Changes related to WoA - - diff --git a/projects/plugins/mu-wpcom-plugin/changelog/feat-introduce-wpcom-external-media-import-page b/projects/plugins/mu-wpcom-plugin/changelog/feat-introduce-wpcom-external-media-import-page new file mode 100644 index 0000000000000..a2aefd2a0c34c --- /dev/null +++ b/projects/plugins/mu-wpcom-plugin/changelog/feat-introduce-wpcom-external-media-import-page @@ -0,0 +1,4 @@ +Significance: minor +Type: added + +Import Media: Introduce the Import Media page diff --git a/projects/plugins/crm/changelog/fix-phpunit_covers_warnings b/projects/plugins/mu-wpcom-plugin/changelog/fix-block-asset-enqueueing similarity index 51% rename from projects/plugins/crm/changelog/fix-phpunit_covers_warnings rename to projects/plugins/mu-wpcom-plugin/changelog/fix-block-asset-enqueueing index 9a705736d2ebc..97801a681a885 100644 --- a/projects/plugins/crm/changelog/fix-phpunit_covers_warnings +++ b/projects/plugins/mu-wpcom-plugin/changelog/fix-block-asset-enqueueing @@ -1,4 +1,5 @@ Significance: patch Type: fixed +Comment: Performance fix + -Fix PHPUnit coverage warnings. diff --git a/projects/plugins/mu-wpcom-plugin/changelog/fix-bump_composer_versions b/projects/plugins/mu-wpcom-plugin/changelog/fix-bump_composer_versions deleted file mode 100644 index 13cbf3392f78d..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/fix-bump_composer_versions +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated dependencies. diff --git a/projects/plugins/mu-wpcom-plugin/changelog/fix-bump_composer_versions_round2 b/projects/plugins/mu-wpcom-plugin/changelog/fix-bump_composer_versions_round2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/fix-bump_composer_versions_round2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/mu-wpcom-plugin/changelog/fix-global-styles-notice-distraction-free b/projects/plugins/mu-wpcom-plugin/changelog/fix-global-styles-notice-distraction-free deleted file mode 100644 index fb897e76fe370..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/fix-global-styles-notice-distraction-free +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Global Styles: Stop showing the limited global styles notice in distraction free mode. diff --git a/projects/plugins/mu-wpcom-plugin/changelog/fix-testimonials-module-by-zero-error b/projects/plugins/mu-wpcom-plugin/changelog/fix-testimonials-module-by-zero-error deleted file mode 100644 index cfcf858702e8b..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/fix-testimonials-module-by-zero-error +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Testimonials: fix a shortcode related bug which ccurs if the column attribute is added and set to 0 diff --git a/projects/plugins/mu-wpcom-plugin/changelog/prerelease#3 b/projects/plugins/mu-wpcom-plugin/changelog/prerelease#3 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/prerelease#3 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/mu-wpcom-plugin/changelog/prerelease#4 b/projects/plugins/mu-wpcom-plugin/changelog/prerelease#4 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/prerelease#4 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/mu-wpcom-plugin/changelog/prerelease#5 b/projects/plugins/mu-wpcom-plugin/changelog/prerelease#5 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/prerelease#5 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/mu-wpcom-plugin/changelog/prerelease#6 b/projects/plugins/mu-wpcom-plugin/changelog/prerelease#6 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/prerelease#6 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/mu-wpcom-plugin/changelog/prerelease#7 b/projects/plugins/mu-wpcom-plugin/changelog/prerelease#7 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/prerelease#7 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/mu-wpcom-plugin/changelog/prerelease#9 b/projects/plugins/mu-wpcom-plugin/changelog/prerelease#9 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/prerelease#9 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/mu-wpcom-plugin/changelog/renovate-brain-monkey-2.x b/projects/plugins/mu-wpcom-plugin/changelog/renovate-brain-monkey-2.x deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/renovate-brain-monkey-2.x +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/mu-wpcom-plugin/changelog/renovate-lock-file-maintenance#5 b/projects/plugins/mu-wpcom-plugin/changelog/renovate-lock-file-maintenance#5 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/renovate-lock-file-maintenance#5 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/mu-wpcom-plugin/changelog/update-admin-bar-menu-edit-site b/projects/plugins/mu-wpcom-plugin/changelog/update-admin-bar-menu-edit-site new file mode 100644 index 0000000000000..91da9a381802e --- /dev/null +++ b/projects/plugins/mu-wpcom-plugin/changelog/update-admin-bar-menu-edit-site @@ -0,0 +1,4 @@ +Significance: minor +Type: changed + +Admin Bar: Point the Edit Site menu item to /site-editor.php diff --git a/projects/plugins/mu-wpcom-plugin/changelog/update-bump_min_php_to_7.2 b/projects/plugins/mu-wpcom-plugin/changelog/update-bump_min_php_to_7.2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/update-bump_min_php_to_7.2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/mu-wpcom-plugin/changelog/update-composer b/projects/plugins/mu-wpcom-plugin/changelog/update-composer deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/update-composer +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/mu-wpcom-plugin/changelog/update-synced_newspack_blocks b/projects/plugins/mu-wpcom-plugin/changelog/update-synced_newspack_blocks deleted file mode 100644 index 15206e680281d..0000000000000 --- a/projects/plugins/mu-wpcom-plugin/changelog/update-synced_newspack_blocks +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: changed - -Newspack Blocks: Updated to version 4.5.2. diff --git a/projects/plugins/mu-wpcom-plugin/composer.json b/projects/plugins/mu-wpcom-plugin/composer.json index 27235894849c1..03c52b5fd753d 100644 --- a/projects/plugins/mu-wpcom-plugin/composer.json +++ b/projects/plugins/mu-wpcom-plugin/composer.json @@ -45,6 +45,6 @@ "release-branch-prefix": "mu-wpcom" }, "config": { - "autoloader-suffix": "d9d132a783958a00a2c7cccff60ca42d_jetpack_mu_wpcom_pluginⓥ2_6_1" + "autoloader-suffix": "d9d132a783958a00a2c7cccff60ca42d_jetpack_mu_wpcom_pluginⓥ2_7_0" } } diff --git a/projects/plugins/mu-wpcom-plugin/composer.lock b/projects/plugins/mu-wpcom-plugin/composer.lock index e722837776d98..d068eaf23eca2 100644 --- a/projects/plugins/mu-wpcom-plugin/composer.lock +++ b/projects/plugins/mu-wpcom-plugin/composer.lock @@ -407,7 +407,7 @@ "dist": { "type": "path", "url": "../../packages/classic-theme-helper", - "reference": "198fd841c5341850e247c46168d77b1bc6a13a34" + "reference": "97a68997e5f3dc805df942c53586bab3f2137427" }, "require": { "automattic/jetpack-assets": "@dev", @@ -425,7 +425,7 @@ "extra": { "autotagger": true, "branch-alias": { - "dev-trunk": "0.8.x-dev" + "dev-trunk": "0.9.x-dev" }, "changelogger": { "link-template": "https://github.com/Automattic/jetpack-classic-theme-helper/compare/v${old}...v${new}" @@ -515,7 +515,7 @@ "dist": { "type": "path", "url": "../../packages/connection", - "reference": "3bc395ae56ccb54ec1d8b6cf543fd588ee6de7f2" + "reference": "3397d8e80c45a088744f7e912f0fc32a4b6bb372" }, "require": { "automattic/jetpack-a8c-mc-stats": "@dev", @@ -550,7 +550,7 @@ "link-template": "https://github.com/Automattic/jetpack-connection/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "6.2.x-dev" + "dev-trunk": "6.3.x-dev" }, "dependencies": { "test-only": [ @@ -971,7 +971,7 @@ "dist": { "type": "path", "url": "../../packages/masterbar", - "reference": "f4317f289a90af787f81e695268be1ef00cd0255" + "reference": "9587aa811998a8a174ddae723de91faa7e179f93" }, "require": { "automattic/jetpack-assets": "@dev", @@ -1000,7 +1000,7 @@ "extra": { "autotagger": true, "branch-alias": { - "dev-trunk": "0.10.x-dev" + "dev-trunk": "0.11.x-dev" }, "changelogger": { "link-template": "https://github.com/Automattic/jetpack-masterbar/compare/v${old}...v${new}" @@ -1044,6 +1044,10 @@ "test-php": [ "pnpm run build-production", "@composer phpunit" + ], + "watch": [ + "Composer\\Config::disableProcessTimeout", + "pnpm run watch" ] }, "license": [ @@ -1060,7 +1064,7 @@ "dist": { "type": "path", "url": "../../packages/jetpack-mu-wpcom", - "reference": "ed55315319c331275f4f0c715294d5a9350ed7ea" + "reference": "7004e837cd80b875b6bd42f1e984f9f5e9114e03" }, "require": { "automattic/jetpack-assets": "@dev", @@ -1094,7 +1098,7 @@ }, "autotagger": true, "branch-alias": { - "dev-trunk": "6.0.x-dev" + "dev-trunk": "6.1.x-dev" }, "textdomain": "jetpack-mu-wpcom", "version-constants": { @@ -1589,7 +1593,7 @@ "dist": { "type": "path", "url": "../../packages/sync", - "reference": "9f24b0cb0912e1e3f235e946b9f397ffd9e36ccf" + "reference": "8297245b0fa3c38c8362b016ddd2f59f536ff5b9" }, "require": { "automattic/jetpack-connection": "@dev", @@ -1622,7 +1626,7 @@ "link-template": "https://github.com/Automattic/jetpack-sync/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "4.3.x-dev" + "dev-trunk": "4.4.x-dev" }, "dependencies": { "test-only": [ @@ -2022,16 +2026,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.3.1", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b" + "reference": "447a020a1f875a434d62f2a401f53b82a396e494" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/8eea230464783aa9671db8eea6f8c6ac5285794b", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/447a020a1f875a434d62f2a401f53b82a396e494", + "reference": "447a020a1f875a434d62f2a401f53b82a396e494", "shasum": "" }, "require": { @@ -2074,9 +2078,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.4.0" }, - "time": "2024-10-08T18:51:32+00:00" + "time": "2024-12-30T11:07:19+00:00" }, { "name": "phar-io/manifest", @@ -3636,16 +3640,16 @@ }, { "name": "symfony/console", - "version": "v7.2.0", + "version": "v7.2.1", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf" + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", + "url": "https://api.github.com/repos/symfony/console/zipball/fefcc18c0f5d0efe3ab3152f15857298868dc2c3", + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3", "shasum": "" }, "require": { @@ -3709,7 +3713,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.2.0" + "source": "https://github.com/symfony/console/tree/v7.2.1" }, "funding": [ { @@ -3725,7 +3729,7 @@ "type": "tidelift" } ], - "time": "2024-11-06T14:24:19+00:00" + "time": "2024-12-11T03:49:26+00:00" }, { "name": "symfony/deprecation-contracts", @@ -3746,12 +3750,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4058,8 +4062,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -4197,12 +4201,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { diff --git a/projects/plugins/mu-wpcom-plugin/mu-wpcom-plugin.php b/projects/plugins/mu-wpcom-plugin/mu-wpcom-plugin.php index d93096398aaab..f5adad830cee9 100644 --- a/projects/plugins/mu-wpcom-plugin/mu-wpcom-plugin.php +++ b/projects/plugins/mu-wpcom-plugin/mu-wpcom-plugin.php @@ -3,7 +3,7 @@ * * Plugin Name: WordPress.com Features * Description: Test plugin for the jetpack-mu-wpcom package - * Version: 2.6.1 + * Version: 2.7.0 * Author: Automattic * License: GPLv2 or later * Text Domain: jetpack-mu-wpcom-plugin diff --git a/projects/plugins/mu-wpcom-plugin/package.json b/projects/plugins/mu-wpcom-plugin/package.json index b46cac42cc36c..bda5def29de5d 100644 --- a/projects/plugins/mu-wpcom-plugin/package.json +++ b/projects/plugins/mu-wpcom-plugin/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-mu-wpcom-plugin", - "version": "2.6.1", + "version": "2.7.0", "description": "Test plugin for the jetpack-mu-wpcom package", "homepage": "https://jetpack.com", "bugs": { diff --git a/projects/plugins/protect/changelog/fix-functionify_and_statusify_exit_and_die b/projects/plugins/protect/changelog/fix-functionify_and_statusify_exit_and_die new file mode 100644 index 0000000000000..5f323ddb3e478 --- /dev/null +++ b/projects/plugins/protect/changelog/fix-functionify_and_statusify_exit_and_die @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Code: Use function-style exit() and die() with a default status code of 0. diff --git a/projects/plugins/backup/changelog/fix-bump_composer_versions_round2#2 b/projects/plugins/protect/changelog/prerelease#14 similarity index 100% rename from projects/plugins/backup/changelog/fix-bump_composer_versions_round2#2 rename to projects/plugins/protect/changelog/prerelease#14 diff --git a/projects/plugins/mu-wpcom-plugin/changelog/renovate-lock-file-maintenance#4 b/projects/plugins/protect/changelog/renovate-lock-file-maintenance#4 similarity index 100% rename from projects/plugins/mu-wpcom-plugin/changelog/renovate-lock-file-maintenance#4 rename to projects/plugins/protect/changelog/renovate-lock-file-maintenance#4 diff --git a/projects/plugins/crm/changelog/renovate-wordpress-monorepo#5 b/projects/plugins/protect/changelog/renovate-wordpress-monorepo#5 similarity index 100% rename from projects/plugins/crm/changelog/renovate-wordpress-monorepo#5 rename to projects/plugins/protect/changelog/renovate-wordpress-monorepo#5 diff --git a/projects/plugins/protect/composer.lock b/projects/plugins/protect/composer.lock index 69f202ac5d795..44357efa8ca32 100644 --- a/projects/plugins/protect/composer.lock +++ b/projects/plugins/protect/composer.lock @@ -603,7 +603,7 @@ "dist": { "type": "path", "url": "../../packages/connection", - "reference": "3bc395ae56ccb54ec1d8b6cf543fd588ee6de7f2" + "reference": "3397d8e80c45a088744f7e912f0fc32a4b6bb372" }, "require": { "automattic/jetpack-a8c-mc-stats": "@dev", @@ -638,7 +638,7 @@ "link-template": "https://github.com/Automattic/jetpack-connection/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "6.2.x-dev" + "dev-trunk": "6.3.x-dev" }, "dependencies": { "test-only": [ @@ -1732,7 +1732,7 @@ "dist": { "type": "path", "url": "../../packages/sync", - "reference": "9f24b0cb0912e1e3f235e946b9f397ffd9e36ccf" + "reference": "8297245b0fa3c38c8362b016ddd2f59f536ff5b9" }, "require": { "automattic/jetpack-connection": "@dev", @@ -1765,7 +1765,7 @@ "link-template": "https://github.com/Automattic/jetpack-sync/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "4.3.x-dev" + "dev-trunk": "4.4.x-dev" }, "dependencies": { "test-only": [ @@ -2260,16 +2260,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.3.1", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b" + "reference": "447a020a1f875a434d62f2a401f53b82a396e494" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/8eea230464783aa9671db8eea6f8c6ac5285794b", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/447a020a1f875a434d62f2a401f53b82a396e494", + "reference": "447a020a1f875a434d62f2a401f53b82a396e494", "shasum": "" }, "require": { @@ -2312,9 +2312,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.4.0" }, - "time": "2024-10-08T18:51:32+00:00" + "time": "2024-12-30T11:07:19+00:00" }, { "name": "phar-io/manifest", @@ -4058,16 +4058,16 @@ }, { "name": "symfony/console", - "version": "v7.2.0", + "version": "v7.2.1", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf" + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", + "url": "https://api.github.com/repos/symfony/console/zipball/fefcc18c0f5d0efe3ab3152f15857298868dc2c3", + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3", "shasum": "" }, "require": { @@ -4131,7 +4131,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.2.0" + "source": "https://github.com/symfony/console/tree/v7.2.1" }, "funding": [ { @@ -4147,7 +4147,7 @@ "type": "tidelift" } ], - "time": "2024-11-06T14:24:19+00:00" + "time": "2024-12-11T03:49:26+00:00" }, { "name": "symfony/deprecation-contracts", @@ -4168,12 +4168,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4480,8 +4480,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -4619,12 +4619,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4817,16 +4817,16 @@ }, { "name": "yoast/phpunit-polyfills", - "version": "1.1.2", + "version": "1.1.3", "source": { "type": "git", "url": "https://github.com/Yoast/PHPUnit-Polyfills.git", - "reference": "e9c8413de4c8ae03d2923a44f17d0d7dad1b96be" + "reference": "0b31ce834facf03b8b44b6587e65b3cf1d7cfb94" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/e9c8413de4c8ae03d2923a44f17d0d7dad1b96be", - "reference": "e9c8413de4c8ae03d2923a44f17d0d7dad1b96be", + "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/0b31ce834facf03b8b44b6587e65b3cf1d7cfb94", + "reference": "0b31ce834facf03b8b44b6587e65b3cf1d7cfb94", "shasum": "" }, "require": { @@ -4876,7 +4876,7 @@ "security": "https://github.com/Yoast/PHPUnit-Polyfills/security/policy", "source": "https://github.com/Yoast/PHPUnit-Polyfills" }, - "time": "2024-09-06T22:03:10+00:00" + "time": "2025-01-08T16:58:34+00:00" } ], "aliases": [], diff --git a/projects/plugins/protect/jetpack-protect.php b/projects/plugins/protect/jetpack-protect.php index b46915aa11def..27ae0bc71134d 100644 --- a/projects/plugins/protect/jetpack-protect.php +++ b/projects/plugins/protect/jetpack-protect.php @@ -29,7 +29,7 @@ */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } define( 'JETPACK_PROTECT_VERSION', '3.1.1' ); @@ -118,7 +118,7 @@ function jetpack_protect_plugin_activation( $plugin ) { ( new \Automattic\Jetpack\Paths() )->is_current_request_activating_plugin_from_plugins_screen( JETPACK_PROTECT_ROOT_FILE_RELATIVE_PATH ) ) { wp_safe_redirect( esc_url( admin_url( 'admin.php?page=jetpack-protect' ) ) ); - exit; + exit( 0 ); } } diff --git a/projects/plugins/protect/package.json b/projects/plugins/protect/package.json index 81cacdb7f7ba4..677dca360c4b6 100644 --- a/projects/plugins/protect/package.json +++ b/projects/plugins/protect/package.json @@ -32,14 +32,14 @@ "@automattic/jetpack-scan": "workspace:*", "@tanstack/react-query": "5.20.5", "@tanstack/react-query-devtools": "5.20.5", - "@wordpress/api-fetch": "7.14.0", - "@wordpress/components": "29.0.0", - "@wordpress/data": "10.14.0", - "@wordpress/date": "5.14.0", - "@wordpress/element": "6.14.0", - "@wordpress/i18n": "5.14.0", - "@wordpress/icons": "10.14.0", - "@wordpress/url": "4.14.0", + "@wordpress/api-fetch": "7.16.0", + "@wordpress/components": "29.2.0", + "@wordpress/data": "10.16.0", + "@wordpress/date": "5.16.0", + "@wordpress/element": "6.16.0", + "@wordpress/i18n": "5.16.0", + "@wordpress/icons": "10.16.0", + "@wordpress/url": "4.16.0", "camelize": "1.0.1", "clsx": "2.1.1", "moment": "2.30.1", @@ -54,7 +54,7 @@ "@babel/preset-env": "7.26.0", "@babel/runtime": "7.26.0", "@types/react": "18.3.18", - "@wordpress/browserslist-config": "6.14.0", + "@wordpress/browserslist-config": "6.16.0", "concurrently": "7.6.0", "sass": "1.64.1", "sass-loader": "12.4.0", diff --git a/projects/plugins/protect/src/class-jetpack-protect.php b/projects/plugins/protect/src/class-jetpack-protect.php index 293ccdaeb3ce7..660045d426534 100644 --- a/projects/plugins/protect/src/class-jetpack-protect.php +++ b/projects/plugins/protect/src/class-jetpack-protect.php @@ -6,7 +6,7 @@ */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } use Automattic\Jetpack\Admin_UI\Admin_Menu; diff --git a/projects/plugins/search/CHANGELOG.md b/projects/plugins/search/CHANGELOG.md index 3413d46a5abe4..4fa4eb275d737 100644 --- a/projects/plugins/search/CHANGELOG.md +++ b/projects/plugins/search/CHANGELOG.md @@ -5,6 +5,31 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [4.0.0] - 2025-01-10 +### Added +- Enable test coverage. [#39961] +- My Jetpack: Update recommendations section in My Jetpack to include a slider interaction for the cards. [#39850] +- Search: Added ability to customize results. [#36378] + +### Changed +- Classic Widget: Update asset enqueuing strategy to ensure compatibility with the Elementor plugin. [#39820] +- General: Indicate compatibility with the upcoming version of WordPress - 6.7. [#39786] +- Include `wp-polyfill` as a script dependency only when needed. [#39629] +- Resolve an issue where revoked licenses were incorrectly treated as unattached. This caused users to be redirected to the license activation page after site connection, even when unattached licenses were not valid for activation. [#40215] +- Social: Changed My Jetpack CTA for Social from "Learn more" to "Activate" [#40359] +- Updated dependencies. [#40286] +- Updated package dependencies. [#39288] [#39653] [#40116] [#40515] [#40693] [#40815] + +### Removed +- Connection: Removed deprecated `features_available` method. [#39442] +- Connection: Removed deprecated `features_enabled` method. [#39475] +- General: Update minimum PHP version to 7.2. [#40147] +- General: Update minimum WordPress version to 6.6. [#40146] + +### Fixed +- E2E Tests: Only install single browser used by Playwright. [#40827] +- My Jetpack: Update GlobalNotice component to look better on mobile. [#39537] + ## [3.0.1] - 2024-09-06 ### Changed - Internal updates. @@ -149,6 +174,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 [1.1.0-beta]: https://github.com/Automattic/jetpack-search-plugin/compare/1.0.0...1.1.0-beta [1.2.0-beta]: https://github.com/Automattic/jetpack-search-plugin/compare/1.1.0...1.2.0-beta +[4.0.0]: https://github.com/Automattic/jetpack-search-plugin/compare/3.0.1...4.0.0 [3.0.1]: https://github.com/Automattic/jetpack-search-plugin/compare/3.0.0...3.0.1 [3.0.0]: https://github.com/Automattic/jetpack-search-plugin/compare/2.1.0...3.0.0 [2.1.0]: https://github.com/Automattic/jetpack-search-plugin/compare/2.0.0...2.1.0 diff --git a/projects/plugins/search/changelog/add-ci-always-process-coverage b/projects/plugins/search/changelog/add-ci-always-process-coverage deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/add-ci-always-process-coverage +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/add-dependency-extraction-auto-polyfill b/projects/plugins/search/changelog/add-dependency-extraction-auto-polyfill deleted file mode 100644 index f4cd286e166af..0000000000000 --- a/projects/plugins/search/changelog/add-dependency-extraction-auto-polyfill +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Only include `wp-polyfill` as a script dependency when needed. diff --git a/projects/plugins/search/changelog/add-features-enabled-rest-endpoint b/projects/plugins/search/changelog/add-features-enabled-rest-endpoint deleted file mode 100644 index 57cf25c290a35..0000000000000 --- a/projects/plugins/search/changelog/add-features-enabled-rest-endpoint +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: removed - -Connection: Removed features_enabled deprecated method diff --git a/projects/plugins/search/changelog/add-jetpack-search-custom-results b/projects/plugins/search/changelog/add-jetpack-search-custom-results deleted file mode 100644 index a9875522e2ff6..0000000000000 --- a/projects/plugins/search/changelog/add-jetpack-search-custom-results +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: added - -Search: Added ability to customize results diff --git a/projects/plugins/search/changelog/add-my-jetpack-recommendations-slider b/projects/plugins/search/changelog/add-my-jetpack-recommendations-slider deleted file mode 100644 index 0658a74e13790..0000000000000 --- a/projects/plugins/search/changelog/add-my-jetpack-recommendations-slider +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: added - -My Jetpack: update the recommendations section in My Jetpack to include a slider interaction for the cards. diff --git a/projects/plugins/search/changelog/add-restful-features-available b/projects/plugins/search/changelog/add-restful-features-available deleted file mode 100644 index 152ef1efc4b7f..0000000000000 --- a/projects/plugins/search/changelog/add-restful-features-available +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: removed - -Connection: Removed deprecated method features_available diff --git a/projects/plugins/search/changelog/fix-bump_composer_versions b/projects/plugins/search/changelog/fix-bump_composer_versions deleted file mode 100644 index 13cbf3392f78d..0000000000000 --- a/projects/plugins/search/changelog/fix-bump_composer_versions +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated dependencies. diff --git a/projects/plugins/search/changelog/fix-bump_composer_versions_round2#2 b/projects/plugins/search/changelog/fix-bump_composer_versions_round2#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/fix-bump_composer_versions_round2#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/fix-functionify_and_statusify_exit_and_die b/projects/plugins/search/changelog/fix-functionify_and_statusify_exit_and_die new file mode 100644 index 0000000000000..5f323ddb3e478 --- /dev/null +++ b/projects/plugins/search/changelog/fix-functionify_and_statusify_exit_and_die @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Code: Use function-style exit() and die() with a default status code of 0. diff --git a/projects/plugins/search/changelog/fix-playwright_install_tweaks b/projects/plugins/search/changelog/fix-playwright_install_tweaks deleted file mode 100644 index ebeba9b69f473..0000000000000 --- a/projects/plugins/search/changelog/fix-playwright_install_tweaks +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -E2E Tests: Only install single browser used by Playwright. diff --git a/projects/plugins/search/changelog/fix-sync-filter-null-array b/projects/plugins/search/changelog/fix-sync-filter-null-array deleted file mode 100644 index 3f56c90b3a7bf..0000000000000 --- a/projects/plugins/search/changelog/fix-sync-filter-null-array +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: fixed -Comment: Sync: update filter parameter to avoid conflicts with other plugins. - - diff --git a/projects/plugins/search/changelog/prerelease#10 b/projects/plugins/search/changelog/prerelease#10 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#10 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#11 b/projects/plugins/search/changelog/prerelease#11 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#11 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#12 b/projects/plugins/search/changelog/prerelease#12 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#12 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#13 b/projects/plugins/search/changelog/prerelease#13 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#13 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#15 b/projects/plugins/search/changelog/prerelease#15 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#15 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#16 b/projects/plugins/search/changelog/prerelease#16 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#16 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#18 b/projects/plugins/search/changelog/prerelease#18 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#18 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#19 b/projects/plugins/search/changelog/prerelease#19 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#19 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#2 b/projects/plugins/search/changelog/prerelease#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#20 b/projects/plugins/search/changelog/prerelease#20 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#20 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#3 b/projects/plugins/search/changelog/prerelease#3 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#3 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#4 b/projects/plugins/search/changelog/prerelease#4 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#4 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#5 b/projects/plugins/search/changelog/prerelease#5 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#5 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#6 b/projects/plugins/search/changelog/prerelease#6 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#6 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#7 b/projects/plugins/search/changelog/prerelease#7 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#7 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#8 b/projects/plugins/search/changelog/prerelease#8 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#8 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/prerelease#9 b/projects/plugins/search/changelog/prerelease#9 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/prerelease#9 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/renovate-brain-monkey-2.x b/projects/plugins/search/changelog/renovate-brain-monkey-2.x deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/renovate-brain-monkey-2.x +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/renovate-config-3.x b/projects/plugins/search/changelog/renovate-config-3.x deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/search/changelog/renovate-config-3.x +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/search/changelog/renovate-lock-file-maintenance#3 b/projects/plugins/search/changelog/renovate-lock-file-maintenance#3 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/renovate-lock-file-maintenance#3 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/renovate-lock-file-maintenance#4 b/projects/plugins/search/changelog/renovate-lock-file-maintenance#4 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/search/changelog/renovate-lock-file-maintenance#4 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/search/changelog/renovate-lock-file-maintenance#5 b/projects/plugins/search/changelog/renovate-lock-file-maintenance#5 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/renovate-lock-file-maintenance#5 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/renovate-lock-file-maintenance#6 b/projects/plugins/search/changelog/renovate-lock-file-maintenance#6 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/search/changelog/renovate-lock-file-maintenance#6 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/search/changelog/renovate-playwright-monorepo b/projects/plugins/search/changelog/renovate-playwright-monorepo deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/search/changelog/renovate-playwright-monorepo +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/search/changelog/restore-jp_test_coverage b/projects/plugins/search/changelog/restore-jp_test_coverage deleted file mode 100644 index 7bb19dc79dd19..0000000000000 --- a/projects/plugins/search/changelog/restore-jp_test_coverage +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: added - -Enable test coverage. diff --git a/projects/plugins/search/changelog/restore-jp_test_coverage#2 b/projects/plugins/search/changelog/restore-jp_test_coverage#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/restore-jp_test_coverage#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/update-bump_min_php_to_7.2 b/projects/plugins/search/changelog/update-bump_min_php_to_7.2 deleted file mode 100644 index 712ab5f494aaa..0000000000000 --- a/projects/plugins/search/changelog/update-bump_min_php_to_7.2 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: major -Type: removed - -General: Update minimum PHP version to 7.2. diff --git a/projects/plugins/search/changelog/update-bump_min_php_to_7.2#2 b/projects/plugins/search/changelog/update-bump_min_php_to_7.2#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/update-bump_min_php_to_7.2#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/update-bump_min_wp_to_6.6 b/projects/plugins/search/changelog/update-bump_min_wp_to_6.6 deleted file mode 100644 index b5daa14e55bc4..0000000000000 --- a/projects/plugins/search/changelog/update-bump_min_wp_to_6.6 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: major -Type: removed - -General: Update minimum WordPress version to 6.6. diff --git a/projects/plugins/search/changelog/update-composer b/projects/plugins/search/changelog/update-composer deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/search/changelog/update-composer +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/search/changelog/update-eslint-9 b/projects/plugins/search/changelog/update-eslint-9 deleted file mode 100644 index 1cb10572ab69e..0000000000000 --- a/projects/plugins/search/changelog/update-eslint-9 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Update eslint config for eslint 9. - - diff --git a/projects/plugins/search/changelog/update-fetch-available-licenses b/projects/plugins/search/changelog/update-fetch-available-licenses deleted file mode 100644 index 3c349c8b1445e..0000000000000 --- a/projects/plugins/search/changelog/update-fetch-available-licenses +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Resolved an issue where revoked licenses were incorrectly treated as unattached. This caused users to be redirected to the license activation page after site connection, even when unattached licenses were not valid for activation. diff --git a/projects/plugins/search/changelog/update-my-jetpack-notice-mobile-style b/projects/plugins/search/changelog/update-my-jetpack-notice-mobile-style deleted file mode 100644 index c740afea846ef..0000000000000 --- a/projects/plugins/search/changelog/update-my-jetpack-notice-mobile-style +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -My Jetpack: visual update to the GlobalNotice component look better on mobile. diff --git a/projects/plugins/search/changelog/update-my-jetpack-social-cta b/projects/plugins/search/changelog/update-my-jetpack-social-cta deleted file mode 100644 index 6b1daf9c1b05e..0000000000000 --- a/projects/plugins/search/changelog/update-my-jetpack-social-cta +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Social | Changed My Jetpack CTA for Social from "Learn more" to "Activate" diff --git a/projects/plugins/search/changelog/update-switch-to-raw-coverage-files b/projects/plugins/search/changelog/update-switch-to-raw-coverage-files deleted file mode 100644 index bfd48f31ebc60..0000000000000 --- a/projects/plugins/search/changelog/update-switch-to-raw-coverage-files +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Generate raw phpunit and/or jest coverage data instead of clover. - - diff --git a/projects/plugins/search/changelog/update-tested-to-6-7 b/projects/plugins/search/changelog/update-tested-to-6-7 deleted file mode 100644 index 9c1d5b4fabb5f..0000000000000 --- a/projects/plugins/search/changelog/update-tested-to-6-7 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -General: indicate compatibility with the upcoming version of WordPress - 6.7. diff --git a/projects/plugins/search/changelog/update-widgets-enqueuing-strategy b/projects/plugins/search/changelog/update-widgets-enqueuing-strategy deleted file mode 100644 index 69a55655c5ca9..0000000000000 --- a/projects/plugins/search/changelog/update-widgets-enqueuing-strategy +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Classic Widget: update assets' enqueuing strategy to ensure compatibility with the Elementor plugin. diff --git a/projects/plugins/search/composer.json b/projects/plugins/search/composer.json index f337f2c557322..6b36aaef99309 100644 --- a/projects/plugins/search/composer.json +++ b/projects/plugins/search/composer.json @@ -65,7 +65,7 @@ }, "config": { "sort-packages": true, - "autoloader-suffix": "b462338fb66be23595d68a93345c9e3d_jetpack_searchⓥ3_0_1", + "autoloader-suffix": "b462338fb66be23595d68a93345c9e3d_jetpack_searchⓥ4_0_0", "allow-plugins": { "automattic/jetpack-autoloader": true, "automattic/jetpack-composer-plugin": true, diff --git a/projects/plugins/search/composer.lock b/projects/plugins/search/composer.lock index 57353d0219537..24115a986c26a 100644 --- a/projects/plugins/search/composer.lock +++ b/projects/plugins/search/composer.lock @@ -543,7 +543,7 @@ "dist": { "type": "path", "url": "../../packages/connection", - "reference": "3bc395ae56ccb54ec1d8b6cf543fd588ee6de7f2" + "reference": "3397d8e80c45a088744f7e912f0fc32a4b6bb372" }, "require": { "automattic/jetpack-a8c-mc-stats": "@dev", @@ -578,7 +578,7 @@ "link-template": "https://github.com/Automattic/jetpack-connection/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "6.2.x-dev" + "dev-trunk": "6.3.x-dev" }, "dependencies": { "test-only": [ @@ -1827,7 +1827,7 @@ "dist": { "type": "path", "url": "../../packages/sync", - "reference": "9f24b0cb0912e1e3f235e946b9f397ffd9e36ccf" + "reference": "8297245b0fa3c38c8362b016ddd2f59f536ff5b9" }, "require": { "automattic/jetpack-connection": "@dev", @@ -1860,7 +1860,7 @@ "link-template": "https://github.com/Automattic/jetpack-sync/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "4.3.x-dev" + "dev-trunk": "4.4.x-dev" }, "dependencies": { "test-only": [ @@ -2110,16 +2110,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.3.1", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b" + "reference": "447a020a1f875a434d62f2a401f53b82a396e494" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/8eea230464783aa9671db8eea6f8c6ac5285794b", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/447a020a1f875a434d62f2a401f53b82a396e494", + "reference": "447a020a1f875a434d62f2a401f53b82a396e494", "shasum": "" }, "require": { @@ -2162,9 +2162,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.4.0" }, - "time": "2024-10-08T18:51:32+00:00" + "time": "2024-12-30T11:07:19+00:00" }, { "name": "phar-io/manifest", @@ -3724,16 +3724,16 @@ }, { "name": "symfony/console", - "version": "v7.2.0", + "version": "v7.2.1", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf" + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", + "url": "https://api.github.com/repos/symfony/console/zipball/fefcc18c0f5d0efe3ab3152f15857298868dc2c3", + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3", "shasum": "" }, "require": { @@ -3797,7 +3797,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.2.0" + "source": "https://github.com/symfony/console/tree/v7.2.1" }, "funding": [ { @@ -3813,7 +3813,7 @@ "type": "tidelift" } ], - "time": "2024-11-06T14:24:19+00:00" + "time": "2024-12-11T03:49:26+00:00" }, { "name": "symfony/deprecation-contracts", @@ -3834,12 +3834,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4146,8 +4146,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -4285,12 +4285,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4483,16 +4483,16 @@ }, { "name": "yoast/phpunit-polyfills", - "version": "1.1.2", + "version": "1.1.3", "source": { "type": "git", "url": "https://github.com/Yoast/PHPUnit-Polyfills.git", - "reference": "e9c8413de4c8ae03d2923a44f17d0d7dad1b96be" + "reference": "0b31ce834facf03b8b44b6587e65b3cf1d7cfb94" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/e9c8413de4c8ae03d2923a44f17d0d7dad1b96be", - "reference": "e9c8413de4c8ae03d2923a44f17d0d7dad1b96be", + "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/0b31ce834facf03b8b44b6587e65b3cf1d7cfb94", + "reference": "0b31ce834facf03b8b44b6587e65b3cf1d7cfb94", "shasum": "" }, "require": { @@ -4542,7 +4542,7 @@ "security": "https://github.com/Yoast/PHPUnit-Polyfills/security/policy", "source": "https://github.com/Yoast/PHPUnit-Polyfills" }, - "time": "2024-09-06T22:03:10+00:00" + "time": "2025-01-08T16:58:34+00:00" } ], "aliases": [], diff --git a/projects/plugins/search/jetpack-search.php b/projects/plugins/search/jetpack-search.php index 53b82104dd200..cd5b25a9beaf7 100644 --- a/projects/plugins/search/jetpack-search.php +++ b/projects/plugins/search/jetpack-search.php @@ -4,7 +4,7 @@ * Plugin Name: Jetpack Search * Plugin URI: https://jetpack.com/search/ * Description: Easily add cloud-powered instant search and filters to your website or WooCommerce store with advanced algorithms that boost your search results based on traffic to your site. - * Version: 3.0.1 + * Version: 4.0.0 * Author: Automattic - Jetpack Search team * Author URI: https://jetpack.com/ * License: GPLv2 or later @@ -18,7 +18,7 @@ use Automattic\Jetpack\Assets; if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } // Constant definitions. @@ -26,7 +26,7 @@ define( 'JETPACK_SEARCH_PLUGIN__FILE', __FILE__ ); define( 'JETPACK_SEARCH_PLUGIN__FILE_RELATIVE_PATH', plugin_basename( __FILE__ ) ); define( 'JETPACK_SEARCH_PLUGIN__SLUG', 'jetpack-search' ); -define( 'JETPACK_SEARCH_PLUGIN__VERSION', '3.0.1' ); +define( 'JETPACK_SEARCH_PLUGIN__VERSION', '4.0.0' ); defined( 'JETPACK_CLIENT__AUTH_LOCATION' ) || define( 'JETPACK_CLIENT__AUTH_LOCATION', 'header' ); defined( 'JETPACK__API_BASE' ) || define( 'JETPACK__API_BASE', 'https://jetpack.wordpress.com/jetpack.' ); diff --git a/projects/plugins/search/readme.txt b/projects/plugins/search/readme.txt index 2041c4a205ff8..888cacfbb0279 100644 --- a/projects/plugins/search/readme.txt +++ b/projects/plugins/search/readme.txt @@ -122,9 +122,30 @@ If you are using the Jetpack Search free option, and you have more than 5000 rec 5. Manage all of your Jetpack products, including Search, in a single place. == Changelog == -### 3.0.1 - 2024-09-06 +### 4.0.0 - 2025-01-10 +#### Added +- Enable test coverage. +- My Jetpack: Update recommendations section in My Jetpack to include a slider interaction for the cards. +- Search: Added ability to customize results. + #### Changed -- Internal updates. +- Classic Widget: Update asset enqueuing strategy to ensure compatibility with the Elementor plugin. +- General: Indicate compatibility with the upcoming version of WordPress - 6.7. +- Include `wp-polyfill` as a script dependency only when needed. +- Resolve an issue where revoked licenses were incorrectly treated as unattached. This caused users to be redirected to the license activation page after site connection, even when unattached licenses were not valid for activation. +- Social: Changed My Jetpack CTA for Social from "Learn more" to "Activate" +- Updated dependencies. +- Updated package dependencies. + +#### Removed +- Connection: Removed deprecated `features_available` method. +- Connection: Removed deprecated `features_enabled` method. +- General: Update minimum PHP version to 7.2. +- General: Update minimum WordPress version to 6.6. + +#### Fixed +- E2E Tests: Only install single browser used by Playwright. +- My Jetpack: Update GlobalNotice component to look better on mobile. == Testimonials == diff --git a/projects/plugins/search/src/class-jetpack-search-plugin.php b/projects/plugins/search/src/class-jetpack-search-plugin.php index 12d576efe9808..a396445e99371 100644 --- a/projects/plugins/search/src/class-jetpack-search-plugin.php +++ b/projects/plugins/search/src/class-jetpack-search-plugin.php @@ -121,7 +121,7 @@ public static function handle_plugin_activation( $plugin ) { ( new \Automattic\Jetpack\Paths() )->is_current_request_activating_plugin_from_plugins_screen( JETPACK_SEARCH_PLUGIN__FILE_RELATIVE_PATH ) ) { wp_safe_redirect( esc_url( admin_url( 'admin.php?page=jetpack-search' ) ) ); - exit; + exit( 0 ); } } diff --git a/projects/plugins/social/CHANGELOG.md b/projects/plugins/social/CHANGELOG.md index 98da7ce7bca7f..8092d19e46b9a 100644 --- a/projects/plugins/social/CHANGELOG.md +++ b/projects/plugins/social/CHANGELOG.md @@ -5,6 +5,44 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## 6.0.0 - 2025-01-14 +### Added +- Add Bluesky to social feature copy. [#40487] +- Add a new toggle for UTM tracking. [#39998] +- Add LinkedIn permissions warning. [#40220] +- Enable test coverage. [#39961] +- Make Post share status immediately available in the editor on page load. [#40301] +- My Jetpack: Update recommendations section in My Jetpack to include a slider interaction for the cards. [#39850] + +### Changed +- Change My Jetpack CTA from "Learn more" to "Activate". [#40359] +- Change order of connections. [#40020] +- Clean up unused TypeScript types [#40033] +- E2E Tests: Update tests to use @wordpress/e2e-test-utils-playwright. [#40750] +- Ensure the support link points to Jetpack support. [#40760] +- Image Generator: Change description for toggle. [#40991] +- Image Generator: Move settings to new store. [#39904] +- Migrate settings to new script data. [#40032] +- Migrate the last bits of social store to new script data. [#40081] +- Move the admin menu initialization to the init hook. [#40474] +- Readme: Update documentation to include all supported social networks. [#40248] +- Remove some unused code. [#40122] +- Resolve an issue where revoked licenses were incorrectly treated as unattached. This caused users to be redirected to the license activation page after site connection, even when unattached licenses were not valid for activation. [#40215] +- Updated dependencies. [#40286] +- Updated package dependencies. [#39999] [#40000] [#40060] [#40116] [#40258] [#40288] [#40363] [#40515] [#40564] [#40693] [#40784] [#40792] [#40798] [#40815] [#40980] + +### Removed +- General: Update minimum PHP version to 7.2. [#40147] +- General: Update minimum WordPress version to 6.6. [#40146] + +### Fixed +- E2E Tests: Only install single browser used by Playwright. [#40827] +- Fix an issue where we showed the license message even with a plan. [#40931] +- Fix the infinite reload issue on Jetpack Sharing settings. [#40089] +- Fix the Instagram max video length. [#39930] +- Page & Post: Fix the layout on mobile when details are open. [#40872] +- Prevent dataviews styles imported in share status from being added globally. [#39991] + ## 5.5.1 - 2024-10-29 ### Changed - Components: Add __nextHasNoMarginBottom to BaseControl-based components, preventing deprecation notices. [#39877] diff --git a/projects/plugins/social/changelog/add-bluesky-to-social-network-feature-copy b/projects/plugins/social/changelog/add-bluesky-to-social-network-feature-copy deleted file mode 100644 index 66ad74185bb3a..0000000000000 --- a/projects/plugins/social/changelog/add-bluesky-to-social-network-feature-copy +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: added - -Add Bluesky to social feature copy diff --git a/projects/plugins/social/changelog/add-ci-always-process-coverage b/projects/plugins/social/changelog/add-ci-always-process-coverage deleted file mode 100644 index 387ca599c4182..0000000000000 --- a/projects/plugins/social/changelog/add-ci-always-process-coverage +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Always run JS coverage, even if PHP coverage fails. - - diff --git a/projects/plugins/social/changelog/add-e2e-test-for-publicize-activation-from-the-editor b/projects/plugins/social/changelog/add-e2e-test-for-publicize-activation-from-the-editor deleted file mode 100644 index 5af1c99a84770..0000000000000 --- a/projects/plugins/social/changelog/add-e2e-test-for-publicize-activation-from-the-editor +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated E2E test - - diff --git a/projects/plugins/social/changelog/add-my-jetpack-recommendations-slider b/projects/plugins/social/changelog/add-my-jetpack-recommendations-slider deleted file mode 100644 index 0658a74e13790..0000000000000 --- a/projects/plugins/social/changelog/add-my-jetpack-recommendations-slider +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: added - -My Jetpack: update the recommendations section in My Jetpack to include a slider interaction for the cards. diff --git a/projects/plugins/social/changelog/add-social-utm-toggle b/projects/plugins/social/changelog/add-social-utm-toggle deleted file mode 100644 index 051cef8fb332c..0000000000000 --- a/projects/plugins/social/changelog/add-social-utm-toggle +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: added - -Added a new toggle for UTM tracking diff --git a/projects/plugins/social/changelog/explore-wp-e2e-setup b/projects/plugins/social/changelog/explore-wp-e2e-setup deleted file mode 100644 index 31a7d1fe4b51b..0000000000000 --- a/projects/plugins/social/changelog/explore-wp-e2e-setup +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated E2E tests to use @wordpress/e2e-test-utils-playwright diff --git a/projects/plugins/social/changelog/fix-bump_composer_versions b/projects/plugins/social/changelog/fix-bump_composer_versions deleted file mode 100644 index 13cbf3392f78d..0000000000000 --- a/projects/plugins/social/changelog/fix-bump_composer_versions +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated dependencies. diff --git a/projects/plugins/social/changelog/fix-bump_composer_versions_round2#2 b/projects/plugins/social/changelog/fix-bump_composer_versions_round2#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/fix-bump_composer_versions_round2#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/fix-edit-page-on-mobile b/projects/plugins/social/changelog/fix-edit-page-on-mobile deleted file mode 100644 index 2df92e6d1bb24..0000000000000 --- a/projects/plugins/social/changelog/fix-edit-page-on-mobile +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Page & Post: Fix the layout on mobile when details are open diff --git a/projects/plugins/social/changelog/fix-functionify_and_statusify_exit_and_die b/projects/plugins/social/changelog/fix-functionify_and_statusify_exit_and_die new file mode 100644 index 0000000000000..5f323ddb3e478 --- /dev/null +++ b/projects/plugins/social/changelog/fix-functionify_and_statusify_exit_and_die @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Code: Use function-style exit() and die() with a default status code of 0. diff --git a/projects/plugins/social/changelog/fix-instagram-video-length b/projects/plugins/social/changelog/fix-instagram-video-length deleted file mode 100644 index 184b7ae44f3e6..0000000000000 --- a/projects/plugins/social/changelog/fix-instagram-video-length +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Social: Fixed the Instagram max video length diff --git a/projects/plugins/social/changelog/fix-playwright_install_tweaks b/projects/plugins/social/changelog/fix-playwright_install_tweaks deleted file mode 100644 index ebeba9b69f473..0000000000000 --- a/projects/plugins/social/changelog/fix-playwright_install_tweaks +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -E2E Tests: Only install single browser used by Playwright. diff --git a/projects/plugins/social/changelog/fix-social-dataviews-styles-being-added-globally b/projects/plugins/social/changelog/fix-social-dataviews-styles-being-added-globally deleted file mode 100644 index 31d9c15df3a10..0000000000000 --- a/projects/plugins/social/changelog/fix-social-dataviews-styles-being-added-globally +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Fixed dataviews styles imported in share status being added globally diff --git a/projects/plugins/social/changelog/fix-social-infinite-reload-of-jetpack-settings-page b/projects/plugins/social/changelog/fix-social-infinite-reload-of-jetpack-settings-page deleted file mode 100644 index b53d86b6e5a94..0000000000000 --- a/projects/plugins/social/changelog/fix-social-infinite-reload-of-jetpack-settings-page +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Fixed the inifite reload issue on Jetpack Sharing settings diff --git a/projects/plugins/social/changelog/hide-license-on-woa b/projects/plugins/social/changelog/hide-license-on-woa new file mode 100644 index 0000000000000..4a91af7a3d646 --- /dev/null +++ b/projects/plugins/social/changelog/hide-license-on-woa @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +License: Social admin page header hides license link on WoA sites. diff --git a/projects/plugins/social/changelog/move-admin-menu-to-init b/projects/plugins/social/changelog/move-admin-menu-to-init deleted file mode 100644 index c08dcf087a023..0000000000000 --- a/projects/plugins/social/changelog/move-admin-menu-to-init +++ /dev/null @@ -1,4 +0,0 @@ -Significance: minor -Type: changed - -Moved the admin menu initialization to the init hook. diff --git a/projects/plugins/social/changelog/prerelease#10 b/projects/plugins/social/changelog/prerelease#10 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/prerelease#10 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/prerelease#11 b/projects/plugins/social/changelog/prerelease#11 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/prerelease#11 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/prerelease#12 b/projects/plugins/social/changelog/prerelease#12 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/prerelease#12 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/prerelease#2 b/projects/plugins/social/changelog/prerelease#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/prerelease#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/prerelease#3 b/projects/plugins/social/changelog/prerelease#3 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/prerelease#3 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/prerelease#4 b/projects/plugins/social/changelog/prerelease#4 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/prerelease#4 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/prerelease#5 b/projects/plugins/social/changelog/prerelease#5 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/prerelease#5 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/prerelease#6 b/projects/plugins/social/changelog/prerelease#6 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/prerelease#6 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/prerelease#7 b/projects/plugins/social/changelog/prerelease#7 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/prerelease#7 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/prerelease#8 b/projects/plugins/social/changelog/prerelease#8 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/prerelease#8 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/prerelease#9 b/projects/plugins/social/changelog/prerelease#9 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/prerelease#9 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/renovate-automattic-color-studio-4.x b/projects/plugins/social/changelog/renovate-automattic-color-studio-4.x deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/social/changelog/renovate-automattic-color-studio-4.x +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/social/changelog/renovate-autoprefixer-10.x b/projects/plugins/social/changelog/renovate-autoprefixer-10.x deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/social/changelog/renovate-autoprefixer-10.x +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/social/changelog/renovate-babel-monorepo b/projects/plugins/social/changelog/renovate-babel-monorepo deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/social/changelog/renovate-babel-monorepo +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/social/changelog/renovate-brain-monkey-2.x b/projects/plugins/social/changelog/renovate-brain-monkey-2.x deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/social/changelog/renovate-brain-monkey-2.x +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/social/changelog/renovate-brain-monkey-2.x#2 b/projects/plugins/social/changelog/renovate-brain-monkey-2.x#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/renovate-brain-monkey-2.x#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/renovate-config-3.x b/projects/plugins/social/changelog/renovate-config-3.x deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/social/changelog/renovate-config-3.x +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/social/changelog/renovate-definitelytyped b/projects/plugins/social/changelog/renovate-definitelytyped deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/social/changelog/renovate-definitelytyped +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/social/changelog/renovate-definitelytyped#2 b/projects/plugins/social/changelog/renovate-definitelytyped#2 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/social/changelog/renovate-definitelytyped#2 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/social/changelog/renovate-lock-file-maintenance#2 b/projects/plugins/social/changelog/renovate-lock-file-maintenance#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/renovate-lock-file-maintenance#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/renovate-lock-file-maintenance#3 b/projects/plugins/social/changelog/renovate-lock-file-maintenance#3 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/social/changelog/renovate-lock-file-maintenance#3 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/social/changelog/renovate-playwright-monorepo b/projects/plugins/social/changelog/renovate-playwright-monorepo deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/social/changelog/renovate-playwright-monorepo +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/social/changelog/renovate-wordpress-monorepo#3 b/projects/plugins/social/changelog/renovate-wordpress-monorepo#3 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/social/changelog/renovate-wordpress-monorepo#3 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/social/changelog/renovate-wordpress-monorepo#4 b/projects/plugins/social/changelog/renovate-wordpress-monorepo#4 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/social/changelog/renovate-wordpress-monorepo#4 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/social/changelog/restore-jp_test_coverage b/projects/plugins/social/changelog/restore-jp_test_coverage deleted file mode 100644 index 7bb19dc79dd19..0000000000000 --- a/projects/plugins/social/changelog/restore-jp_test_coverage +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: added - -Enable test coverage. diff --git a/projects/plugins/social/changelog/restore-jp_test_coverage#2 b/projects/plugins/social/changelog/restore-jp_test_coverage#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/restore-jp_test_coverage#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/update-bump_min_php_to_7.2 b/projects/plugins/social/changelog/update-bump_min_php_to_7.2 deleted file mode 100644 index 712ab5f494aaa..0000000000000 --- a/projects/plugins/social/changelog/update-bump_min_php_to_7.2 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: major -Type: removed - -General: Update minimum PHP version to 7.2. diff --git a/projects/plugins/social/changelog/update-bump_min_php_to_7.2#2 b/projects/plugins/social/changelog/update-bump_min_php_to_7.2#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/update-bump_min_php_to_7.2#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/update-bump_min_wp_to_6.6 b/projects/plugins/social/changelog/update-bump_min_wp_to_6.6 deleted file mode 100644 index b5daa14e55bc4..0000000000000 --- a/projects/plugins/social/changelog/update-bump_min_wp_to_6.6 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: major -Type: removed - -General: Update minimum WordPress version to 6.6. diff --git a/projects/plugins/social/changelog/update-clean-up-social-store b/projects/plugins/social/changelog/update-clean-up-social-store deleted file mode 100644 index ee4b7c29db3ec..0000000000000 --- a/projects/plugins/social/changelog/update-clean-up-social-store +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Clean up unused TS types diff --git a/projects/plugins/social/changelog/update-composer b/projects/plugins/social/changelog/update-composer deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/social/changelog/update-composer +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/social/changelog/update-eslint-9 b/projects/plugins/social/changelog/update-eslint-9 deleted file mode 100644 index 1cb10572ab69e..0000000000000 --- a/projects/plugins/social/changelog/update-eslint-9 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Update eslint config for eslint 9. - - diff --git a/projects/plugins/social/changelog/update-fetch-available-licenses b/projects/plugins/social/changelog/update-fetch-available-licenses deleted file mode 100644 index 3c349c8b1445e..0000000000000 --- a/projects/plugins/social/changelog/update-fetch-available-licenses +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Resolved an issue where revoked licenses were incorrectly treated as unattached. This caused users to be redirected to the license activation page after site connection, even when unattached licenses were not valid for activation. diff --git a/projects/plugins/social/changelog/update-migrate-sid-settings-to-new-store b/projects/plugins/social/changelog/update-migrate-sid-settings-to-new-store deleted file mode 100644 index 0e7734a13ccc9..0000000000000 --- a/projects/plugins/social/changelog/update-migrate-sid-settings-to-new-store +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Social: Migrated Social Image Generator settings to new store diff --git a/projects/plugins/social/changelog/update-migrate-social-settings-to-script-data b/projects/plugins/social/changelog/update-migrate-social-settings-to-script-data deleted file mode 100644 index 61945dc9fa213..0000000000000 --- a/projects/plugins/social/changelog/update-migrate-social-settings-to-script-data +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Migrated social plugins settings to new script data diff --git a/projects/plugins/social/changelog/update-my-jetpack-social-cta b/projects/plugins/social/changelog/update-my-jetpack-social-cta deleted file mode 100644 index 6b1daf9c1b05e..0000000000000 --- a/projects/plugins/social/changelog/update-my-jetpack-social-cta +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Social | Changed My Jetpack CTA for Social from "Learn more" to "Activate" diff --git a/projects/plugins/social/changelog/update-publicize-bluesky-docs b/projects/plugins/social/changelog/update-publicize-bluesky-docs deleted file mode 100644 index b6fd38efb57b6..0000000000000 --- a/projects/plugins/social/changelog/update-publicize-bluesky-docs +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Readme: update documentation to mention all the social networks we support, including the newer ones. diff --git a/projects/plugins/social/changelog/update-remove-unused-code-for-social b/projects/plugins/social/changelog/update-remove-unused-code-for-social deleted file mode 100644 index e47ab386b1029..0000000000000 --- a/projects/plugins/social/changelog/update-remove-unused-code-for-social +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Removed some unused code for Social diff --git a/projects/plugins/social/changelog/update-social-disable-caching-for-publicize-services-list b/projects/plugins/social/changelog/update-social-disable-caching-for-publicize-services-list new file mode 100644 index 0000000000000..3445dbbab7f45 --- /dev/null +++ b/projects/plugins/social/changelog/update-social-disable-caching-for-publicize-services-list @@ -0,0 +1,4 @@ +Significance: patch +Type: fixed + +Fixed wordpress.com log in error when connecting Social accounts diff --git a/projects/plugins/social/changelog/update-social-load-share-status-from-initial-state b/projects/plugins/social/changelog/update-social-load-share-status-from-initial-state deleted file mode 100644 index f140482c62ff4..0000000000000 --- a/projects/plugins/social/changelog/update-social-load-share-status-from-initial-state +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: added - -Post share status in the editor is now immediately available on page load diff --git a/projects/plugins/social/changelog/update-social-migrate-remaining-settings-to-script-data b/projects/plugins/social/changelog/update-social-migrate-remaining-settings-to-script-data deleted file mode 100644 index b913e50e3eb88..0000000000000 --- a/projects/plugins/social/changelog/update-social-migrate-remaining-settings-to-script-data +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Social: Migrated the last bits of social store to new script data diff --git a/projects/plugins/social/changelog/update-social-support-link b/projects/plugins/social/changelog/update-social-support-link deleted file mode 100644 index 4722e55a82b35..0000000000000 --- a/projects/plugins/social/changelog/update-social-support-link +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Social admin page: Ensure the support link points to Jetpack support diff --git a/projects/plugins/social/changelog/update-switch-to-raw-coverage-files b/projects/plugins/social/changelog/update-switch-to-raw-coverage-files deleted file mode 100644 index bfd48f31ebc60..0000000000000 --- a/projects/plugins/social/changelog/update-switch-to-raw-coverage-files +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Generate raw phpunit and/or jest coverage data instead of clover. - - diff --git a/projects/plugins/social/composer.json b/projects/plugins/social/composer.json index 1fe12e483291f..2de73727dd9cd 100644 --- a/projects/plugins/social/composer.json +++ b/projects/plugins/social/composer.json @@ -85,6 +85,6 @@ "automattic/jetpack-autoloader": true, "automattic/jetpack-composer-plugin": true }, - "autoloader-suffix": "c4802e05bbcf59fd3b6350e8d3e5482c_socialⓥ5_5_1" + "autoloader-suffix": "c4802e05bbcf59fd3b6350e8d3e5482c_socialⓥ6_0_0" } } diff --git a/projects/plugins/social/composer.lock b/projects/plugins/social/composer.lock index c6bfa685897fd..cc986ae7528ee 100644 --- a/projects/plugins/social/composer.lock +++ b/projects/plugins/social/composer.lock @@ -543,7 +543,7 @@ "dist": { "type": "path", "url": "../../packages/connection", - "reference": "3bc395ae56ccb54ec1d8b6cf543fd588ee6de7f2" + "reference": "3397d8e80c45a088744f7e912f0fc32a4b6bb372" }, "require": { "automattic/jetpack-a8c-mc-stats": "@dev", @@ -578,7 +578,7 @@ "link-template": "https://github.com/Automattic/jetpack-connection/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "6.2.x-dev" + "dev-trunk": "6.3.x-dev" }, "dependencies": { "test-only": [ @@ -1819,7 +1819,7 @@ "dist": { "type": "path", "url": "../../packages/sync", - "reference": "9f24b0cb0912e1e3f235e946b9f397ffd9e36ccf" + "reference": "8297245b0fa3c38c8362b016ddd2f59f536ff5b9" }, "require": { "automattic/jetpack-connection": "@dev", @@ -1852,7 +1852,7 @@ "link-template": "https://github.com/Automattic/jetpack-sync/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "4.3.x-dev" + "dev-trunk": "4.4.x-dev" }, "dependencies": { "test-only": [ @@ -1895,16 +1895,16 @@ "packages-dev": [ { "name": "antecedent/patchwork", - "version": "2.2.0", + "version": "2.2.1", "source": { "type": "git", "url": "https://github.com/antecedent/patchwork.git", - "reference": "b07d4fb37c3c723c8755122160c089e077d5de65" + "reference": "1bf183a3e1bd094f231a2128b9ecc5363c269245" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/antecedent/patchwork/zipball/b07d4fb37c3c723c8755122160c089e077d5de65", - "reference": "b07d4fb37c3c723c8755122160c089e077d5de65", + "url": "https://api.github.com/repos/antecedent/patchwork/zipball/1bf183a3e1bd094f231a2128b9ecc5363c269245", + "reference": "1bf183a3e1bd094f231a2128b9ecc5363c269245", "shasum": "" }, "require": { @@ -1937,9 +1937,9 @@ ], "support": { "issues": "https://github.com/antecedent/patchwork/issues", - "source": "https://github.com/antecedent/patchwork/tree/2.2.0" + "source": "https://github.com/antecedent/patchwork/tree/2.2.1" }, - "time": "2024-09-27T16:59:55+00:00" + "time": "2024-12-11T10:19:54+00:00" }, { "name": "automattic/jetpack-changelogger", @@ -2399,16 +2399,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.3.1", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b" + "reference": "447a020a1f875a434d62f2a401f53b82a396e494" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/8eea230464783aa9671db8eea6f8c6ac5285794b", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/447a020a1f875a434d62f2a401f53b82a396e494", + "reference": "447a020a1f875a434d62f2a401f53b82a396e494", "shasum": "" }, "require": { @@ -2451,9 +2451,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.4.0" }, - "time": "2024-10-08T18:51:32+00:00" + "time": "2024-12-30T11:07:19+00:00" }, { "name": "phar-io/manifest", @@ -4197,16 +4197,16 @@ }, { "name": "symfony/console", - "version": "v7.2.0", + "version": "v7.2.1", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf" + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", + "url": "https://api.github.com/repos/symfony/console/zipball/fefcc18c0f5d0efe3ab3152f15857298868dc2c3", + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3", "shasum": "" }, "require": { @@ -4270,7 +4270,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.2.0" + "source": "https://github.com/symfony/console/tree/v7.2.1" }, "funding": [ { @@ -4286,7 +4286,7 @@ "type": "tidelift" } ], - "time": "2024-11-06T14:24:19+00:00" + "time": "2024-12-11T03:49:26+00:00" }, { "name": "symfony/deprecation-contracts", @@ -4307,12 +4307,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4619,8 +4619,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -4758,12 +4758,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4956,16 +4956,16 @@ }, { "name": "yoast/phpunit-polyfills", - "version": "1.1.2", + "version": "1.1.3", "source": { "type": "git", "url": "https://github.com/Yoast/PHPUnit-Polyfills.git", - "reference": "e9c8413de4c8ae03d2923a44f17d0d7dad1b96be" + "reference": "0b31ce834facf03b8b44b6587e65b3cf1d7cfb94" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/e9c8413de4c8ae03d2923a44f17d0d7dad1b96be", - "reference": "e9c8413de4c8ae03d2923a44f17d0d7dad1b96be", + "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/0b31ce834facf03b8b44b6587e65b3cf1d7cfb94", + "reference": "0b31ce834facf03b8b44b6587e65b3cf1d7cfb94", "shasum": "" }, "require": { @@ -5015,7 +5015,7 @@ "security": "https://github.com/Yoast/PHPUnit-Polyfills/security/policy", "source": "https://github.com/Yoast/PHPUnit-Polyfills" }, - "time": "2024-09-06T22:03:10+00:00" + "time": "2025-01-08T16:58:34+00:00" } ], "aliases": [], diff --git a/projects/plugins/social/jetpack-social.php b/projects/plugins/social/jetpack-social.php index 6921cf0fcc4c9..8f74067289e63 100644 --- a/projects/plugins/social/jetpack-social.php +++ b/projects/plugins/social/jetpack-social.php @@ -4,7 +4,7 @@ * Plugin Name: Jetpack Social * Plugin URI: https://wordpress.org/plugins/jetpack-social * Description: Share your site’s posts on several social media networks automatically when you publish a new post. - * Version: 5.5.1 + * Version: 6.0.0 * Author: Automattic - Jetpack Social team * Author URI: https://jetpack.com/social/ * License: GPLv2 or later @@ -30,7 +30,7 @@ */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } define( 'JETPACK_SOCIAL_PLUGIN_DIR', plugin_dir_path( __FILE__ ) ); diff --git a/projects/plugins/social/package.json b/projects/plugins/social/package.json index 3c7107c889539..24bc0cb7e5a16 100644 --- a/projects/plugins/social/package.json +++ b/projects/plugins/social/package.json @@ -33,13 +33,13 @@ "@automattic/jetpack-publicize-components": "workspace:*", "@automattic/jetpack-script-data": "workspace:*", "@automattic/jetpack-shared-extension-utils": "workspace:*", - "@wordpress/api-fetch": "7.14.0", - "@wordpress/components": "29.0.0", - "@wordpress/data": "10.14.0", - "@wordpress/date": "5.14.0", - "@wordpress/element": "6.14.0", - "@wordpress/i18n": "5.14.0", - "@wordpress/icons": "10.14.0", + "@wordpress/api-fetch": "7.16.0", + "@wordpress/components": "29.2.0", + "@wordpress/data": "10.16.0", + "@wordpress/date": "5.16.0", + "@wordpress/element": "6.16.0", + "@wordpress/i18n": "5.16.0", + "@wordpress/icons": "10.16.0", "clsx": "2.1.1", "react": "18.3.1", "react-dom": "18.3.1" @@ -56,7 +56,7 @@ "@testing-library/react": "16.0.1", "@types/react": "18.3.18", "@types/react-dom": "18.3.5", - "@wordpress/browserslist-config": "6.14.0", + "@wordpress/browserslist-config": "6.16.0", "autoprefixer": "10.4.20", "babel-jest": "29.4.3", "concurrently": "7.6.0", diff --git a/projects/plugins/social/readme.txt b/projects/plugins/social/readme.txt index e2a04fc20f2bf..d21d09fbe1043 100644 --- a/projects/plugins/social/readme.txt +++ b/projects/plugins/social/readme.txt @@ -104,11 +104,44 @@ The easiest way is to use the Custom Message option in the publishing options bo 6. Managing Social media accounts in the post editor == Changelog == -### 5.5.1 - 2024-10-29 +### 6.0.0 - 2025-01-14 +#### Added +- Add Bluesky to social feature copy. +- Add a new toggle for UTM tracking. +- Add LinkedIn permissions warning. +- Enable test coverage. +- Make Post share status immediately available in the editor on page load. +- My Jetpack: Update recommendations section in My Jetpack to include a slider interaction for the cards. + #### Changed -- Components: Add __nextHasNoMarginBottom to BaseControl-based components, preventing deprecation notices. +- Change My Jetpack CTA from "Learn more" to "Activate". +- Change order of connections. +- Clean up unused TypeScript types +- E2E Tests: Update tests to use @wordpress/e2e-test-utils-playwright. +- Ensure the support link points to Jetpack support. +- Image Generator: Change description for toggle. +- Image Generator: Move settings to new store. +- Migrate settings to new script data. +- Migrate the last bits of social store to new script data. +- Move the admin menu initialization to the init hook. +- Readme: Update documentation to include all supported social networks. +- Remove some unused code. +- Resolve an issue where revoked licenses were incorrectly treated as unattached. This caused users to be redirected to the license activation page after site connection, even when unattached licenses were not valid for activation. +- Updated dependencies. - Updated package dependencies. +#### Removed +- General: Update minimum PHP version to 7.2. +- General: Update minimum WordPress version to 6.6. + +#### Fixed +- E2E Tests: Only install single browser used by Playwright. +- Fix an issue where we showed the license message even with a plan. +- Fix the infinite reload issue on Jetpack Sharing settings. +- Fix the Instagram max video length. +- Page & Post: Fix the layout on mobile when details are open. +- Prevent dataviews styles imported in share status from being added globally. + == Upgrade Notice == = 3.0.0 = diff --git a/projects/plugins/social/src/class-jetpack-social.php b/projects/plugins/social/src/class-jetpack-social.php index 6f545e40ea5d3..994b66beac08b 100644 --- a/projects/plugins/social/src/class-jetpack-social.php +++ b/projects/plugins/social/src/class-jetpack-social.php @@ -6,7 +6,7 @@ */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } use Automattic\Jetpack\Admin_UI\Admin_Menu; @@ -489,7 +489,7 @@ public function redirect_after_activation( $plugin ) { ( new \Automattic\Jetpack\Paths() )->is_current_request_activating_plugin_from_plugins_screen( JETPACK_SOCIAL_PLUGIN_ROOT_FILE_RELATIVE_PATH ) ) { wp_safe_redirect( esc_url( admin_url( 'admin.php?page=' . JETPACK_SOCIAL_PLUGIN_SLUG ) ) ); - exit; + exit( 0 ); } } diff --git a/projects/plugins/social/src/js/components/admin-page/header/index.jsx b/projects/plugins/social/src/js/components/admin-page/header/index.jsx index 83ba6bc438f9d..2aa32878a9553 100644 --- a/projects/plugins/social/src/js/components/admin-page/header/index.jsx +++ b/projects/plugins/social/src/js/components/admin-page/header/index.jsx @@ -1,17 +1,11 @@ -import { store as socialStore } from '@automattic/jetpack-publicize-components'; -import { getMyJetpackUrl } from '@automattic/jetpack-script-data'; -import { useSelect } from '@wordpress/data'; +import { hasSocialPaidFeatures } from '@automattic/jetpack-publicize-components'; +import { getMyJetpackUrl, getScriptData } from '@automattic/jetpack-script-data'; import { createInterpolateElement } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; import Logo from './../../logo'; import styles from './styles.module.scss'; const AdminPageHeader = () => { - const { showPricingPage } = useSelect( select => { - return { - showPricingPage: select( socialStore ).getSocialPluginSettings().show_pricing_page, - }; - } ); const activateLicenseUrl = getMyJetpackUrl( '#/add-license' ); return ( @@ -20,7 +14,7 @@ const AdminPageHeader = () => { - { showPricingPage && ( + { ! hasSocialPaidFeatures() && getScriptData().site.host !== 'woa' && (

{ createInterpolateElement( __( diff --git a/projects/plugins/social/src/js/components/social-image-generator-toggle/index.tsx b/projects/plugins/social/src/js/components/social-image-generator-toggle/index.tsx index 9c87fdc72d722..112e27b3eba92 100644 --- a/projects/plugins/social/src/js/components/social-image-generator-toggle/index.tsx +++ b/projects/plugins/social/src/js/components/social-image-generator-toggle/index.tsx @@ -72,7 +72,7 @@ const SocialImageGeneratorToggle: React.FC< SocialImageGeneratorToggleProps > = > { __( - 'When enabled, Social Image Generator will automatically generate social images for your posts. You can use the button below to choose a default template for new posts.', + 'When enabled, Social Image Generator will automatically generate social images for your posts. You can use the button below to choose a default template for new posts. This feature is only supported in the block editor.', 'jetpack-social' ) } diff --git a/projects/plugins/starter-plugin/changelog/fix-functionify_and_statusify_exit_and_die b/projects/plugins/starter-plugin/changelog/fix-functionify_and_statusify_exit_and_die new file mode 100644 index 0000000000000..5f323ddb3e478 --- /dev/null +++ b/projects/plugins/starter-plugin/changelog/fix-functionify_and_statusify_exit_and_die @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Code: Use function-style exit() and die() with a default status code of 0. diff --git a/projects/plugins/backup/changelog/prerelease#5 b/projects/plugins/starter-plugin/changelog/prerelease#5 similarity index 100% rename from projects/plugins/backup/changelog/prerelease#5 rename to projects/plugins/starter-plugin/changelog/prerelease#5 diff --git a/projects/plugins/search/changelog/renovate-lock-file-maintenance#2 b/projects/plugins/starter-plugin/changelog/renovate-lock-file-maintenance#2 similarity index 100% rename from projects/plugins/search/changelog/renovate-lock-file-maintenance#2 rename to projects/plugins/starter-plugin/changelog/renovate-lock-file-maintenance#2 diff --git a/projects/plugins/crm/changelog/renovate-definitelytyped b/projects/plugins/starter-plugin/changelog/renovate-wordpress-monorepo#2 similarity index 100% rename from projects/plugins/crm/changelog/renovate-definitelytyped rename to projects/plugins/starter-plugin/changelog/renovate-wordpress-monorepo#2 diff --git a/projects/plugins/starter-plugin/composer.lock b/projects/plugins/starter-plugin/composer.lock index 433ef4b7fbeb8..4d7cecc4bafe7 100644 --- a/projects/plugins/starter-plugin/composer.lock +++ b/projects/plugins/starter-plugin/composer.lock @@ -543,7 +543,7 @@ "dist": { "type": "path", "url": "../../packages/connection", - "reference": "3bc395ae56ccb54ec1d8b6cf543fd588ee6de7f2" + "reference": "3397d8e80c45a088744f7e912f0fc32a4b6bb372" }, "require": { "automattic/jetpack-a8c-mc-stats": "@dev", @@ -578,7 +578,7 @@ "link-template": "https://github.com/Automattic/jetpack-connection/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "6.2.x-dev" + "dev-trunk": "6.3.x-dev" }, "dependencies": { "test-only": [ @@ -1672,7 +1672,7 @@ "dist": { "type": "path", "url": "../../packages/sync", - "reference": "9f24b0cb0912e1e3f235e946b9f397ffd9e36ccf" + "reference": "8297245b0fa3c38c8362b016ddd2f59f536ff5b9" }, "require": { "automattic/jetpack-connection": "@dev", @@ -1705,7 +1705,7 @@ "link-template": "https://github.com/Automattic/jetpack-sync/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "4.3.x-dev" + "dev-trunk": "4.4.x-dev" }, "dependencies": { "test-only": [ @@ -1748,16 +1748,16 @@ "packages-dev": [ { "name": "antecedent/patchwork", - "version": "2.2.0", + "version": "2.2.1", "source": { "type": "git", "url": "https://github.com/antecedent/patchwork.git", - "reference": "b07d4fb37c3c723c8755122160c089e077d5de65" + "reference": "1bf183a3e1bd094f231a2128b9ecc5363c269245" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/antecedent/patchwork/zipball/b07d4fb37c3c723c8755122160c089e077d5de65", - "reference": "b07d4fb37c3c723c8755122160c089e077d5de65", + "url": "https://api.github.com/repos/antecedent/patchwork/zipball/1bf183a3e1bd094f231a2128b9ecc5363c269245", + "reference": "1bf183a3e1bd094f231a2128b9ecc5363c269245", "shasum": "" }, "require": { @@ -1790,9 +1790,9 @@ ], "support": { "issues": "https://github.com/antecedent/patchwork/issues", - "source": "https://github.com/antecedent/patchwork/tree/2.2.0" + "source": "https://github.com/antecedent/patchwork/tree/2.2.1" }, - "time": "2024-09-27T16:59:55+00:00" + "time": "2024-12-11T10:19:54+00:00" }, { "name": "automattic/jetpack-changelogger", @@ -2252,16 +2252,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.3.1", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b" + "reference": "447a020a1f875a434d62f2a401f53b82a396e494" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/8eea230464783aa9671db8eea6f8c6ac5285794b", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/447a020a1f875a434d62f2a401f53b82a396e494", + "reference": "447a020a1f875a434d62f2a401f53b82a396e494", "shasum": "" }, "require": { @@ -2304,9 +2304,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.4.0" }, - "time": "2024-10-08T18:51:32+00:00" + "time": "2024-12-30T11:07:19+00:00" }, { "name": "phar-io/manifest", @@ -4050,16 +4050,16 @@ }, { "name": "symfony/console", - "version": "v7.2.0", + "version": "v7.2.1", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf" + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", + "url": "https://api.github.com/repos/symfony/console/zipball/fefcc18c0f5d0efe3ab3152f15857298868dc2c3", + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3", "shasum": "" }, "require": { @@ -4123,7 +4123,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.2.0" + "source": "https://github.com/symfony/console/tree/v7.2.1" }, "funding": [ { @@ -4139,7 +4139,7 @@ "type": "tidelift" } ], - "time": "2024-11-06T14:24:19+00:00" + "time": "2024-12-11T03:49:26+00:00" }, { "name": "symfony/deprecation-contracts", @@ -4160,12 +4160,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4472,8 +4472,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -4611,12 +4611,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4809,16 +4809,16 @@ }, { "name": "yoast/phpunit-polyfills", - "version": "1.1.2", + "version": "1.1.3", "source": { "type": "git", "url": "https://github.com/Yoast/PHPUnit-Polyfills.git", - "reference": "e9c8413de4c8ae03d2923a44f17d0d7dad1b96be" + "reference": "0b31ce834facf03b8b44b6587e65b3cf1d7cfb94" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/e9c8413de4c8ae03d2923a44f17d0d7dad1b96be", - "reference": "e9c8413de4c8ae03d2923a44f17d0d7dad1b96be", + "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/0b31ce834facf03b8b44b6587e65b3cf1d7cfb94", + "reference": "0b31ce834facf03b8b44b6587e65b3cf1d7cfb94", "shasum": "" }, "require": { @@ -4868,7 +4868,7 @@ "security": "https://github.com/Yoast/PHPUnit-Polyfills/security/policy", "source": "https://github.com/Yoast/PHPUnit-Polyfills" }, - "time": "2024-09-06T22:03:10+00:00" + "time": "2025-01-08T16:58:34+00:00" } ], "aliases": [], diff --git a/projects/plugins/starter-plugin/jetpack-starter-plugin.php b/projects/plugins/starter-plugin/jetpack-starter-plugin.php index ba1ad4abdf6b3..d60a7312b8819 100644 --- a/projects/plugins/starter-plugin/jetpack-starter-plugin.php +++ b/projects/plugins/starter-plugin/jetpack-starter-plugin.php @@ -30,7 +30,7 @@ */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } define( 'JETPACK_STARTER_PLUGIN_DIR', plugin_dir_path( __FILE__ ) ); @@ -117,7 +117,7 @@ function jetpack_starter_plugin_activation( $plugin ) { ( new \Automattic\Jetpack\Paths() )->is_current_request_activating_plugin_from_plugins_screen( JETPACK_STARTER_PLUGIN_ROOT_FILE_RELATIVE_PATH ) ) { wp_safe_redirect( esc_url( admin_url( 'admin.php?page=jetpack-starter-plugin' ) ) ); - exit; + exit( 0 ); } } diff --git a/projects/plugins/starter-plugin/package.json b/projects/plugins/starter-plugin/package.json index 07ec276f91280..8ffa6f4e10a67 100644 --- a/projects/plugins/starter-plugin/package.json +++ b/projects/plugins/starter-plugin/package.json @@ -30,10 +30,10 @@ "@automattic/jetpack-base-styles": "workspace:*", "@automattic/jetpack-components": "workspace:*", "@automattic/jetpack-connection": "workspace:*", - "@wordpress/data": "10.14.0", - "@wordpress/date": "5.14.0", - "@wordpress/element": "6.14.0", - "@wordpress/i18n": "5.14.0", + "@wordpress/data": "10.16.0", + "@wordpress/date": "5.16.0", + "@wordpress/element": "6.16.0", + "@wordpress/i18n": "5.16.0", "react": "18.3.1", "react-dom": "18.3.1" }, @@ -44,7 +44,7 @@ "@babel/runtime": "7.26.0", "@testing-library/dom": "10.4.0", "@testing-library/react": "16.0.1", - "@wordpress/browserslist-config": "6.14.0", + "@wordpress/browserslist-config": "6.16.0", "babel-jest": "29.4.3", "concurrently": "7.6.0", "jest": "29.7.0", diff --git a/projects/plugins/starter-plugin/src/class-jetpack-starter-plugin.php b/projects/plugins/starter-plugin/src/class-jetpack-starter-plugin.php index 3d0065457d21a..6bb0de5b59d41 100644 --- a/projects/plugins/starter-plugin/src/class-jetpack-starter-plugin.php +++ b/projects/plugins/starter-plugin/src/class-jetpack-starter-plugin.php @@ -6,7 +6,7 @@ */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } use Automattic\Jetpack\Admin_UI\Admin_Menu; diff --git a/projects/plugins/super-cache/CHANGELOG.md b/projects/plugins/super-cache/CHANGELOG.md index 22bcc1f332c5c..6f7886efac254 100644 --- a/projects/plugins/super-cache/CHANGELOG.md +++ b/projects/plugins/super-cache/CHANGELOG.md @@ -5,6 +5,26 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [2.0.0] - 2025-01-10 +### Added +- Enable test coverage. [#39961] + +### Changed +- General: Indicate compatibility with the upcoming version of WordPress - 6.7. [#39786] +- Updated package dependencies. [#38822] [#38870] [#39004] [#39278] [#39288] [#39653] [#40116] [#40515] + +### Removed +- Cleaned up legacy code. [#40200] +- General: Update minimum PHP version to 7.2. [#40147] +- General: Update minimum WordPress version to 6.6. [#40146] + +### Fixed +- Caching: make sure there is cache content to serve, even if the cache file was found [#40342] +- Ensure homepage cache gets flushed when a post is unpublished. [#40879] +- Lossless image optimization for images (should improve performance with no visible changes). [#38750] [#38981] +- Move trailing space out of i18n message. [#39305] +- Fix apache_request_headers fallback so it works when that command is disabled. [#39951] + ## [1.12.4] - 2024-07-17 ### Removed - General: update WordPress version requirements to WordPress 6.5. [#38382] @@ -764,6 +784,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 Misc fixes +[2.0.0]: https://github.com/Automattic/wp-super-cache/compare/v1.12.4...v2.0.0 [1.12.4]: https://github.com/Automattic/wp-super-cache/compare/v1.12.3...v1.12.4 [1.12.3]: https://github.com/Automattic/wp-super-cache/compare/v1.12.2...v1.12.3 [1.12.2]: https://github.com/Automattic/wp-super-cache/compare/v1.12.1...v1.12.2 diff --git a/projects/plugins/super-cache/changelog/add-phpunit-coverage-configs b/projects/plugins/super-cache/changelog/add-phpunit-coverage-configs deleted file mode 100644 index 714f2593c8f4b..0000000000000 --- a/projects/plugins/super-cache/changelog/add-phpunit-coverage-configs +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: fixed -Comment: Add missing files/dirs to phpunit coverage config. - - diff --git a/projects/plugins/super-cache/changelog/bugfix-supercache-unpublish b/projects/plugins/super-cache/changelog/bugfix-supercache-unpublish deleted file mode 100644 index f6716f90fa058..0000000000000 --- a/projects/plugins/super-cache/changelog/bugfix-supercache-unpublish +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Ensure homepage cache gets flushed when a post is unpublished. diff --git a/projects/plugins/super-cache/changelog/fix-bump_composer_versions_round2 b/projects/plugins/super-cache/changelog/fix-bump_composer_versions_round2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/super-cache/changelog/fix-bump_composer_versions_round2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/super-cache/changelog/fix-functionify_and_statusify_exit_and_die b/projects/plugins/super-cache/changelog/fix-functionify_and_statusify_exit_and_die new file mode 100644 index 0000000000000..5f323ddb3e478 --- /dev/null +++ b/projects/plugins/super-cache/changelog/fix-functionify_and_statusify_exit_and_die @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Code: Use function-style exit() and die() with a default status code of 0. diff --git a/projects/plugins/super-cache/changelog/fix-mu-wpcom-scssphp b/projects/plugins/super-cache/changelog/fix-mu-wpcom-scssphp deleted file mode 100644 index 25e5011cf37d0..0000000000000 --- a/projects/plugins/super-cache/changelog/fix-mu-wpcom-scssphp +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Change blanket `vendor/**` production-include entry to include only what we know we want. - - diff --git a/projects/plugins/super-cache/changelog/prerelease b/projects/plugins/super-cache/changelog/prerelease deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/super-cache/changelog/prerelease +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/super-cache/changelog/prerelease#2 b/projects/plugins/super-cache/changelog/prerelease#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/super-cache/changelog/prerelease#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/super-cache/changelog/remove-eslintrc-unneeded-parseroptions b/projects/plugins/super-cache/changelog/remove-eslintrc-unneeded-parseroptions deleted file mode 100644 index e9871ae770e2f..0000000000000 --- a/projects/plugins/super-cache/changelog/remove-eslintrc-unneeded-parseroptions +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: removed -Comment: Remove unneeded `parserOptions` from eslintrc. - - diff --git a/projects/plugins/super-cache/changelog/remove-pre_wp6.6_and_php7.2_code b/projects/plugins/super-cache/changelog/remove-pre_wp6.6_and_php7.2_code deleted file mode 100644 index 3652253bc0e2f..0000000000000 --- a/projects/plugins/super-cache/changelog/remove-pre_wp6.6_and_php7.2_code +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: removed - -Cleaned up legacy code. diff --git a/projects/plugins/super-cache/changelog/renovate-js-unit-testing-packages b/projects/plugins/super-cache/changelog/renovate-js-unit-testing-packages deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/super-cache/changelog/renovate-js-unit-testing-packages +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#3 b/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#3 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#3 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#4 b/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#4 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#4 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#5 b/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#5 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#5 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#6 b/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#6 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#6 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#7 b/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#7 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#7 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/super-cache/changelog/renovate-npm-axios-vulnerability b/projects/plugins/super-cache/changelog/renovate-npm-axios-vulnerability deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/super-cache/changelog/renovate-npm-axios-vulnerability +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/super-cache/changelog/renovate-yoast-phpunit-polyfills-1.x b/projects/plugins/super-cache/changelog/renovate-yoast-phpunit-polyfills-1.x deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/super-cache/changelog/renovate-yoast-phpunit-polyfills-1.x +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/super-cache/changelog/restore-jp_test_coverage b/projects/plugins/super-cache/changelog/restore-jp_test_coverage deleted file mode 100644 index 7bb19dc79dd19..0000000000000 --- a/projects/plugins/super-cache/changelog/restore-jp_test_coverage +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: added - -Enable test coverage. diff --git a/projects/plugins/super-cache/changelog/restore-jp_test_coverage#2 b/projects/plugins/super-cache/changelog/restore-jp_test_coverage#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/super-cache/changelog/restore-jp_test_coverage#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/super-cache/changelog/revert-svg-image-optimizations b/projects/plugins/super-cache/changelog/revert-svg-image-optimizations deleted file mode 100644 index 356496f8a1f8f..0000000000000 --- a/projects/plugins/super-cache/changelog/revert-svg-image-optimizations +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Revert recent SVG image optimizations. diff --git a/projects/plugins/super-cache/changelog/try-lossless-image-optmization-part-3 b/projects/plugins/super-cache/changelog/try-lossless-image-optmization-part-3 deleted file mode 100644 index cf77a8b55bb43..0000000000000 --- a/projects/plugins/super-cache/changelog/try-lossless-image-optmization-part-3 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Lossless image optimization for images (should improve performance with no visible changes). diff --git a/projects/plugins/super-cache/changelog/try-no-version-bumps-in-trunk b/projects/plugins/super-cache/changelog/try-no-version-bumps-in-trunk deleted file mode 100644 index 91efe85c55e06..0000000000000 --- a/projects/plugins/super-cache/changelog/try-no-version-bumps-in-trunk +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Un-bump version numbers in trunk. The build will now update the version numbers as needed for mirrors. - - diff --git a/projects/plugins/super-cache/changelog/update-bump_min_php_to_7.2 b/projects/plugins/super-cache/changelog/update-bump_min_php_to_7.2 deleted file mode 100644 index 712ab5f494aaa..0000000000000 --- a/projects/plugins/super-cache/changelog/update-bump_min_php_to_7.2 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: major -Type: removed - -General: Update minimum PHP version to 7.2. diff --git a/projects/plugins/super-cache/changelog/update-bump_min_php_to_7.2#2 b/projects/plugins/super-cache/changelog/update-bump_min_php_to_7.2#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/super-cache/changelog/update-bump_min_php_to_7.2#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/super-cache/changelog/update-bump_min_wp_to_6.6 b/projects/plugins/super-cache/changelog/update-bump_min_wp_to_6.6 deleted file mode 100644 index b5daa14e55bc4..0000000000000 --- a/projects/plugins/super-cache/changelog/update-bump_min_wp_to_6.6 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: major -Type: removed - -General: Update minimum WordPress version to 6.6. diff --git a/projects/plugins/super-cache/changelog/update-cleanup-deprecated-eslint-rules b/projects/plugins/super-cache/changelog/update-cleanup-deprecated-eslint-rules deleted file mode 100644 index 94aaa5b70a786..0000000000000 --- a/projects/plugins/super-cache/changelog/update-cleanup-deprecated-eslint-rules +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Remove unnecessary overrides from eslintrc. - - diff --git a/projects/plugins/super-cache/changelog/update-cleanup-project-level-eslint-prettier b/projects/plugins/super-cache/changelog/update-cleanup-project-level-eslint-prettier deleted file mode 100644 index a323d1564a187..0000000000000 --- a/projects/plugins/super-cache/changelog/update-cleanup-project-level-eslint-prettier +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Enable prettier via eslint, and fix issues. - - diff --git a/projects/plugins/super-cache/changelog/update-composer b/projects/plugins/super-cache/changelog/update-composer deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/super-cache/changelog/update-composer +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/super-cache/changelog/update-eslint-9 b/projects/plugins/super-cache/changelog/update-eslint-9 deleted file mode 100644 index 1cb10572ab69e..0000000000000 --- a/projects/plugins/super-cache/changelog/update-eslint-9 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Update eslint config for eslint 9. - - diff --git a/projects/plugins/super-cache/changelog/update-plugins-fix-eslint-9-lints b/projects/plugins/super-cache/changelog/update-plugins-fix-eslint-9-lints deleted file mode 100644 index b3176fbef2f88..0000000000000 --- a/projects/plugins/super-cache/changelog/update-plugins-fix-eslint-9-lints +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: fixed -Comment: Fix some JS lints ahead of eslint 9 upgrade. - - diff --git a/projects/plugins/super-cache/changelog/update-super-cache-cache-file-race-condition b/projects/plugins/super-cache/changelog/update-super-cache-cache-file-race-condition deleted file mode 100644 index 142a0ba3b9648..0000000000000 --- a/projects/plugins/super-cache/changelog/update-super-cache-cache-file-race-condition +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Caching: make sure there is cache content to serve, even if the cache file was found diff --git a/projects/plugins/super-cache/changelog/update-super-cache-get-apache-headers b/projects/plugins/super-cache/changelog/update-super-cache-get-apache-headers deleted file mode 100644 index d43c4d6b80f59..0000000000000 --- a/projects/plugins/super-cache/changelog/update-super-cache-get-apache-headers +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Super Cache: Fixed the apache_request_headers fallback so it works when that command is disabled diff --git a/projects/plugins/super-cache/changelog/update-super-cache-version-tested-bump b/projects/plugins/super-cache/changelog/update-super-cache-version-tested-bump deleted file mode 100644 index 36468bb8fd394..0000000000000 --- a/projects/plugins/super-cache/changelog/update-super-cache-version-tested-bump +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: fixed -Comment: Bumped the the tested version to 6.7.1 - - diff --git a/projects/plugins/super-cache/changelog/update-switch-to-raw-coverage-files b/projects/plugins/super-cache/changelog/update-switch-to-raw-coverage-files deleted file mode 100644 index bfd48f31ebc60..0000000000000 --- a/projects/plugins/super-cache/changelog/update-switch-to-raw-coverage-files +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Generate raw phpunit and/or jest coverage data instead of clover. - - diff --git a/projects/plugins/super-cache/changelog/update-tested-to-6-7 b/projects/plugins/super-cache/changelog/update-tested-to-6-7 deleted file mode 100644 index 9c1d5b4fabb5f..0000000000000 --- a/projects/plugins/super-cache/changelog/update-tested-to-6-7 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -General: indicate compatibility with the upcoming version of WordPress - 6.7. diff --git a/projects/plugins/super-cache/changelog/update-wordpress-eslint-plugin b/projects/plugins/super-cache/changelog/update-wordpress-eslint-plugin deleted file mode 100644 index 1b5211fc7fb1d..0000000000000 --- a/projects/plugins/super-cache/changelog/update-wordpress-eslint-plugin +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Move trailing space out of i18n message. diff --git a/projects/plugins/super-cache/composer.json b/projects/plugins/super-cache/composer.json index 6329d22f872ff..e8fdb4f6dc68b 100644 --- a/projects/plugins/super-cache/composer.json +++ b/projects/plugins/super-cache/composer.json @@ -54,6 +54,6 @@ "wp-svn-autopublish": true }, "config": { - "autoloader-suffix": "6fe342bc02f0b440f7b3c8d8ade42286_super_cacheⓥ1_12_4" + "autoloader-suffix": "6fe342bc02f0b440f7b3c8d8ade42286_super_cacheⓥ2_0_0" } } diff --git a/projects/plugins/super-cache/composer.lock b/projects/plugins/super-cache/composer.lock index 18e5e15b2bc6a..99712d9d267fb 100644 --- a/projects/plugins/super-cache/composer.lock +++ b/projects/plugins/super-cache/composer.lock @@ -270,16 +270,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.3.1", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b" + "reference": "447a020a1f875a434d62f2a401f53b82a396e494" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/8eea230464783aa9671db8eea6f8c6ac5285794b", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/447a020a1f875a434d62f2a401f53b82a396e494", + "reference": "447a020a1f875a434d62f2a401f53b82a396e494", "shasum": "" }, "require": { @@ -322,9 +322,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.4.0" }, - "time": "2024-10-08T18:51:32+00:00" + "time": "2024-12-30T11:07:19+00:00" }, { "name": "phar-io/manifest", @@ -1884,16 +1884,16 @@ }, { "name": "symfony/console", - "version": "v7.2.0", + "version": "v7.2.1", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf" + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", + "url": "https://api.github.com/repos/symfony/console/zipball/fefcc18c0f5d0efe3ab3152f15857298868dc2c3", + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3", "shasum": "" }, "require": { @@ -1957,7 +1957,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.2.0" + "source": "https://github.com/symfony/console/tree/v7.2.1" }, "funding": [ { @@ -1973,7 +1973,7 @@ "type": "tidelift" } ], - "time": "2024-11-06T14:24:19+00:00" + "time": "2024-12-11T03:49:26+00:00" }, { "name": "symfony/deprecation-contracts", @@ -1994,12 +1994,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -2306,8 +2306,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -2445,12 +2445,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -2643,16 +2643,16 @@ }, { "name": "yoast/phpunit-polyfills", - "version": "1.1.2", + "version": "1.1.3", "source": { "type": "git", "url": "https://github.com/Yoast/PHPUnit-Polyfills.git", - "reference": "e9c8413de4c8ae03d2923a44f17d0d7dad1b96be" + "reference": "0b31ce834facf03b8b44b6587e65b3cf1d7cfb94" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/e9c8413de4c8ae03d2923a44f17d0d7dad1b96be", - "reference": "e9c8413de4c8ae03d2923a44f17d0d7dad1b96be", + "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/0b31ce834facf03b8b44b6587e65b3cf1d7cfb94", + "reference": "0b31ce834facf03b8b44b6587e65b3cf1d7cfb94", "shasum": "" }, "require": { @@ -2702,7 +2702,7 @@ "security": "https://github.com/Yoast/PHPUnit-Polyfills/security/policy", "source": "https://github.com/Yoast/PHPUnit-Polyfills" }, - "time": "2024-09-06T22:03:10+00:00" + "time": "2025-01-08T16:58:34+00:00" } ], "aliases": [], diff --git a/projects/plugins/super-cache/inc/delete-cache-button.php b/projects/plugins/super-cache/inc/delete-cache-button.php index dc18b26d7f78a..c97a138f77a91 100644 --- a/projects/plugins/super-cache/inc/delete-cache-button.php +++ b/projects/plugins/super-cache/inc/delete-cache-button.php @@ -132,7 +132,7 @@ function wpsc_admin_bar_delete_cache() { } else { wp_safe_redirect( esc_url_raw( home_url( $req_path ) ) ); } - exit; + exit( 0 ); } else { die( "Oops. Problem with nonce. Please delete cached page from settings page." ); } diff --git a/projects/plugins/super-cache/package.json b/projects/plugins/super-cache/package.json index 8ed695628f84f..dfdef9da30307 100644 --- a/projects/plugins/super-cache/package.json +++ b/projects/plugins/super-cache/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@automattic/jetpack-super-cache", - "version": "1.12.4", + "version": "2.0.0", "description": "A very fast caching engine for WordPress that produces static html files.", "homepage": "https://jetpack.com", "bugs": { diff --git a/projects/plugins/super-cache/readme.txt b/projects/plugins/super-cache/readme.txt index 44fedef3db2ed..f6374d4146dd1 100644 --- a/projects/plugins/super-cache/readme.txt +++ b/projects/plugins/super-cache/readme.txt @@ -268,12 +268,25 @@ Your theme is probably responsive which means it resizes the page to suit whatev == Changelog == -### 1.12.4 - 2024-07-17 +### 2.0.0 - 2025-01-10 +#### Added +- Enable test coverage. + +#### Changed +- General: Indicate compatibility with the upcoming version of WordPress - 6.7. +- Updated package dependencies. + #### Removed -- General: update WordPress version requirements to WordPress 6.5. +- Cleaned up legacy code. +- General: Update minimum PHP version to 7.2. +- General: Update minimum WordPress version to 6.6. #### Fixed -- Fixed problem with is_utf8_charset missing in WP 6.6 +- Caching: make sure there is cache content to serve, even if the cache file was found +- Ensure homepage cache gets flushed when a post is unpublished. +- Lossless image optimization for images (should improve performance with no visible changes). +- Move trailing space out of i18n message. +- Fix apache_request_headers fallback so it works when that command is disabled. -------- diff --git a/projects/plugins/super-cache/wp-cache-phase2.php b/projects/plugins/super-cache/wp-cache-phase2.php index 73d5533aec996..5b1f6bb7c64a0 100644 --- a/projects/plugins/super-cache/wp-cache-phase2.php +++ b/projects/plugins/super-cache/wp-cache-phase2.php @@ -321,7 +321,7 @@ function wp_cache_serve_cache_file() { if ( $remote_mod_time !== null && $remote_mod_time == $local_mod_time ) { wp_cache_debug( 'wp_cache_serve_cache_file: Send 304 Not Modified header.' ); header( $_SERVER['SERVER_PROTOCOL'] . ' 304 Not Modified' ); - exit(); + exit( 0 ); } else { wp_cache_debug( 'wp_cache_serve_cache_file: 304 browser caching not possible as timestamps differ.' ); } @@ -329,7 +329,7 @@ function wp_cache_serve_cache_file() { } echo $cachefiledata; - exit(); + exit( 0 ); } else { wp_cache_debug( 'No wp-cache file exists. Must generate a new one.' ); return false; @@ -404,7 +404,7 @@ function wp_cache_serve_cache_file() { // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- this is the cached version of the current page. It will have been escaped already. echo $cache; wp_cache_debug( 'exit request', 5 ); - die(); + die( 0 ); } function wp_cache_get_legacy_cache( $cache_file ) { @@ -1259,7 +1259,7 @@ function wpsc_create_debug_log( $filename = '', $username = '' ) { header( "WWW-Authenticate: Basic realm=\"WP-Super-Cache Debug Log\"" ); header( $_SERVER[ "SERVER_PROTOCOL" ] . " 401 Unauthorized" ); echo "You must login to view the debug log"; - exit; + exit( 0 ); }' . PHP_EOL; $fp = fopen( $cache_path . 'view_' . $wp_cache_debug_log, 'w' ); diff --git a/projects/plugins/super-cache/wp-cache.php b/projects/plugins/super-cache/wp-cache.php index 5aa1c630b8af9..99ef128d22e38 100644 --- a/projects/plugins/super-cache/wp-cache.php +++ b/projects/plugins/super-cache/wp-cache.php @@ -3,7 +3,7 @@ * Plugin Name: WP Super Cache * Plugin URI: https://wordpress.org/plugins/wp-super-cache/ * Description: Very fast caching plugin for WordPress. - * Version: 1.12.4 + * Version: 2.0.0 * Author: Automattic * Author URI: https://automattic.com/ * License: GPL2+ @@ -2079,7 +2079,7 @@ function wpsc_config_file_notices() { function wpsc_dismiss_indexhtml_warning() { check_ajax_referer( "wpsc-index-dismiss" ); update_site_option( 'wp_super_cache_index_detected', 3 ); - die(); + die( 0 ); } add_action( 'wp_ajax_wpsc-index-dismiss', 'wpsc_dismiss_indexhtml_warning' ); diff --git a/projects/plugins/vaultpress/CHANGELOG.md b/projects/plugins/vaultpress/CHANGELOG.md index ad8dcdaa8a3b3..4ec783b5a431e 100644 --- a/projects/plugins/vaultpress/CHANGELOG.md +++ b/projects/plugins/vaultpress/CHANGELOG.md @@ -2,6 +2,25 @@ All notable changes to this project will be documented in this file. +## 4.0.0 - 2025-01-10 +### Added +- Enable test coverage. [#39961] +- Hook into red bubble notification when bad installation is detected. [#36449] + +### Changed +- General: Indicate compatibility with the upcoming version of WordPress - 6.6. [#37962] +- General: Indicate compatibility with the upcoming version of WordPress - 6.7. [#39786] +- General: Use wp_admin_notice function introduced in WP 6.4 to display notices. [#37051] +- Only show installation errors on plugins page. [#36390] +- Updated package dependencies. [#36309] [#36775] [#37348] [#37767] [#38228] [#38822] [#39004] [#39288] [#39653] [#40116] [#40515] + +### Removed +- Cleaned up legacy code. [#40200] +- General: Update minimum PHP version to 7.2. [#40147] + +### Fixed +- Lossless image optimization for images (should improve performance with no visible changes). [#38750] [#38981] + ## 3.0.0 - 2024-02-21 ### Changed - General: indicate compatibility with the upcoming version of WordPress, 6.5. [#35820] diff --git a/projects/plugins/vaultpress/changelog/add-bad-installation-notices-to-my-jetpack b/projects/plugins/vaultpress/changelog/add-bad-installation-notices-to-my-jetpack deleted file mode 100644 index 5cf6fb645e17e..0000000000000 --- a/projects/plugins/vaultpress/changelog/add-bad-installation-notices-to-my-jetpack +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: added - -Hook into red bubble notification when bad installation is detected diff --git a/projects/plugins/vaultpress/changelog/add-phan b/projects/plugins/vaultpress/changelog/add-phan deleted file mode 100644 index 976dd1167f5e1..0000000000000 --- a/projects/plugins/vaultpress/changelog/add-phan +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: added -Comment: Add Phan configuration. No change to the project itself. - - diff --git a/projects/plugins/vaultpress/changelog/add-phan-more-constant-stubs b/projects/plugins/vaultpress/changelog/add-phan-more-constant-stubs deleted file mode 100644 index 40c026ae51a49..0000000000000 --- a/projects/plugins/vaultpress/changelog/add-phan-more-constant-stubs +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: fixed -Comment: Update phan baseline for config changes. No change to functionality. - - diff --git a/projects/plugins/vaultpress/changelog/add-phan-wp-constant-stubs b/projects/plugins/vaultpress/changelog/add-phan-wp-constant-stubs deleted file mode 100644 index 94a5f73d3ea02..0000000000000 --- a/projects/plugins/vaultpress/changelog/add-phan-wp-constant-stubs +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Update Phan baseline for config change. No change to functionality. - - diff --git a/projects/plugins/vaultpress/changelog/fix-bump_composer_versions_round2#2 b/projects/plugins/vaultpress/changelog/fix-bump_composer_versions_round2#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/fix-bump_composer_versions_round2#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/fix-functionify_and_statusify_exit_and_die b/projects/plugins/vaultpress/changelog/fix-functionify_and_statusify_exit_and_die new file mode 100644 index 0000000000000..5f323ddb3e478 --- /dev/null +++ b/projects/plugins/vaultpress/changelog/fix-functionify_and_statusify_exit_and_die @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Code: Use function-style exit() and die() with a default status code of 0. diff --git a/projects/plugins/vaultpress/changelog/fix-phan-in-changelogger b/projects/plugins/vaultpress/changelog/fix-phan-in-changelogger deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/fix-phan-in-changelogger +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/fix-phan-undeclared-in-autoloader b/projects/plugins/vaultpress/changelog/fix-phan-undeclared-in-autoloader deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/fix-phan-undeclared-in-autoloader +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/prerelease b/projects/plugins/vaultpress/changelog/prerelease deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/prerelease +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/prerelease#2 b/projects/plugins/vaultpress/changelog/prerelease#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/prerelease#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/prerelease#3 b/projects/plugins/vaultpress/changelog/prerelease#3 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/prerelease#3 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/prerelease#4 b/projects/plugins/vaultpress/changelog/prerelease#4 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/prerelease#4 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/prerelease#5 b/projects/plugins/vaultpress/changelog/prerelease#5 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/prerelease#5 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/prerelease#6 b/projects/plugins/vaultpress/changelog/prerelease#6 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/prerelease#6 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/prerelease#7 b/projects/plugins/vaultpress/changelog/prerelease#7 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/prerelease#7 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/prerelease#8 b/projects/plugins/vaultpress/changelog/prerelease#8 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/prerelease#8 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/remove-pre_wp6.6_and_php7.2_code b/projects/plugins/vaultpress/changelog/remove-pre_wp6.6_and_php7.2_code deleted file mode 100644 index 3652253bc0e2f..0000000000000 --- a/projects/plugins/vaultpress/changelog/remove-pre_wp6.6_and_php7.2_code +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: removed - -Cleaned up legacy code. diff --git a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#10 b/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#10 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#10 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#11 b/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#11 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#11 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#12 b/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#12 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#12 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#2 b/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#2 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#2 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#3 b/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#3 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#3 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#4 b/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#4 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#4 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#5 b/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#5 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#5 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#6 b/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#6 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#6 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#7 b/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#7 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#7 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#8 b/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#8 deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#8 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#9 b/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#9 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/renovate-lock-file-maintenance#9 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/renovate-yoast-phpunit-polyfills-1.x b/projects/plugins/vaultpress/changelog/renovate-yoast-phpunit-polyfills-1.x deleted file mode 100644 index c47cb18e82997..0000000000000 --- a/projects/plugins/vaultpress/changelog/renovate-yoast-phpunit-polyfills-1.x +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Updated package dependencies. diff --git a/projects/plugins/vaultpress/changelog/restore-jp_test_coverage b/projects/plugins/vaultpress/changelog/restore-jp_test_coverage deleted file mode 100644 index 7bb19dc79dd19..0000000000000 --- a/projects/plugins/vaultpress/changelog/restore-jp_test_coverage +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: added - -Enable test coverage. diff --git a/projects/plugins/vaultpress/changelog/restore-jp_test_coverage#2 b/projects/plugins/vaultpress/changelog/restore-jp_test_coverage#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/restore-jp_test_coverage#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/revert-svg-image-optimizations b/projects/plugins/vaultpress/changelog/revert-svg-image-optimizations deleted file mode 100644 index 356496f8a1f8f..0000000000000 --- a/projects/plugins/vaultpress/changelog/revert-svg-image-optimizations +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Revert recent SVG image optimizations. diff --git a/projects/plugins/vaultpress/changelog/try-lossless-image-optmization-part-3 b/projects/plugins/vaultpress/changelog/try-lossless-image-optmization-part-3 deleted file mode 100644 index cf77a8b55bb43..0000000000000 --- a/projects/plugins/vaultpress/changelog/try-lossless-image-optmization-part-3 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: fixed - -Lossless image optimization for images (should improve performance with no visible changes). diff --git a/projects/plugins/vaultpress/changelog/try-no-version-bumps-in-trunk b/projects/plugins/vaultpress/changelog/try-no-version-bumps-in-trunk deleted file mode 100644 index 91efe85c55e06..0000000000000 --- a/projects/plugins/vaultpress/changelog/try-no-version-bumps-in-trunk +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Un-bump version numbers in trunk. The build will now update the version numbers as needed for mirrors. - - diff --git a/projects/plugins/vaultpress/changelog/update-bump_min_php_to_7.2 b/projects/plugins/vaultpress/changelog/update-bump_min_php_to_7.2 deleted file mode 100644 index 712ab5f494aaa..0000000000000 --- a/projects/plugins/vaultpress/changelog/update-bump_min_php_to_7.2 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: major -Type: removed - -General: Update minimum PHP version to 7.2. diff --git a/projects/plugins/vaultpress/changelog/update-bump_min_php_to_7.2#2 b/projects/plugins/vaultpress/changelog/update-bump_min_php_to_7.2#2 deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/update-bump_min_php_to_7.2#2 +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/update-composer b/projects/plugins/vaultpress/changelog/update-composer deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/update-composer +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/update-installation-error-to-only-show-on-plugins-page b/projects/plugins/vaultpress/changelog/update-installation-error-to-only-show-on-plugins-page deleted file mode 100644 index 7f125b899fd84..0000000000000 --- a/projects/plugins/vaultpress/changelog/update-installation-error-to-only-show-on-plugins-page +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -Only show installation errors on plugins page diff --git a/projects/plugins/vaultpress/changelog/update-switch-to-raw-coverage-files b/projects/plugins/vaultpress/changelog/update-switch-to-raw-coverage-files deleted file mode 100644 index bfd48f31ebc60..0000000000000 --- a/projects/plugins/vaultpress/changelog/update-switch-to-raw-coverage-files +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Generate raw phpunit and/or jest coverage data instead of clover. - - diff --git a/projects/plugins/vaultpress/changelog/update-symfony-console b/projects/plugins/vaultpress/changelog/update-symfony-console deleted file mode 100644 index 9aa70e3ec1f75..0000000000000 --- a/projects/plugins/vaultpress/changelog/update-symfony-console +++ /dev/null @@ -1,5 +0,0 @@ -Significance: patch -Type: changed -Comment: Updated composer.lock. - - diff --git a/projects/plugins/vaultpress/changelog/update-tested-to-6-6 b/projects/plugins/vaultpress/changelog/update-tested-to-6-6 deleted file mode 100644 index 6cf57dbe55f90..0000000000000 --- a/projects/plugins/vaultpress/changelog/update-tested-to-6-6 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -General: indicate compatibility with the upcoming version of WordPress - 6.6. diff --git a/projects/plugins/vaultpress/changelog/update-tested-to-6-7 b/projects/plugins/vaultpress/changelog/update-tested-to-6-7 deleted file mode 100644 index 9c1d5b4fabb5f..0000000000000 --- a/projects/plugins/vaultpress/changelog/update-tested-to-6-7 +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -General: indicate compatibility with the upcoming version of WordPress - 6.7. diff --git a/projects/plugins/vaultpress/changelog/update-use-wp-admin-notice b/projects/plugins/vaultpress/changelog/update-use-wp-admin-notice deleted file mode 100644 index 2988ba2249366..0000000000000 --- a/projects/plugins/vaultpress/changelog/update-use-wp-admin-notice +++ /dev/null @@ -1,4 +0,0 @@ -Significance: patch -Type: changed - -General: use wp_admin_notice function introduced in WP 6.4 to display notices. diff --git a/projects/plugins/vaultpress/class.vaultpress-database.php b/projects/plugins/vaultpress/class.vaultpress-database.php index dc55cccf23b31..93c852718fd0b 100644 --- a/projects/plugins/vaultpress/class.vaultpress-database.php +++ b/projects/plugins/vaultpress/class.vaultpress-database.php @@ -1,6 +1,6 @@ realtime backup and automated security scanning from VaultPress. Activate, enter your registration key, and never worry again. Need some help? - * Version: 3.0.0 + * Version: 4.0.0 * Author: Automattic * Author URI: http://vaultpress.com/?utm_source=author-uri&utm_medium=plugin-description&utm_campaign=1.0 * License: GPL2+ @@ -14,10 +14,10 @@ */ // don't call the file directly. -defined( 'ABSPATH' ) || die(); +defined( 'ABSPATH' ) || die( 0 ); define( 'VAULTPRESS__MINIMUM_PHP_VERSION', '7.2' ); -define( 'VAULTPRESS__VERSION', '3.0.0' ); +define( 'VAULTPRESS__VERSION', '4.0.0' ); define( 'VAULTPRESS__PLUGIN_DIR', plugin_dir_path( __FILE__ ) ); /** @@ -660,7 +660,7 @@ function ui_load() { delete_option( 'vaultpress_auto_register' ); wp_redirect( admin_url( 'admin.php?page=vaultpress&delete-vp-settings=1' ) ); - exit(); + exit( 0 ); } // run code that might be updating the registration key @@ -681,7 +681,7 @@ function ui_load() { esc_html( $registration_key->get_error_message() ), 'http://vaultpress.com/contact/' ) ); wp_redirect( admin_url( 'admin.php?page=vaultpress&error=true' ) ); - exit(); + exit( 0 ); } } else { $registration_key = trim( $_POST[ 'registration_key' ] ); @@ -697,7 +697,7 @@ function ui_load() { ) ); wp_redirect( admin_url( 'admin.php?page=vaultpress&error=true' ) ); - exit(); + exit( 0 ); } // try to register the plugin @@ -710,7 +710,7 @@ function ui_load() { $this->update_option( 'connection_error_code', $response['faultCode'] ); $this->update_option( 'connection_error_message', $response['faultString'] ); wp_redirect( admin_url( 'admin.php?page=vaultpress&error=true' ) ); - exit(); + exit( 0 ); } // make sure the returned data looks valid @@ -718,7 +718,7 @@ function ui_load() { $this->update_option( 'connection_error_code', 1 ); $this->update_option( 'connection_error_message', sprintf( __( 'There was a problem trying to register your subscription. Please try again. If you’re still having issues please contact the VaultPress Safekeepers.', 'vaultpress' ), 'http://vaultpress.com/contact/' ) ); wp_redirect( admin_url( 'admin.php?page=vaultpress&error=true' ) ); - exit(); + exit( 0 ); } // need to update these values in the db so the servers can try connecting to the plugin @@ -726,14 +726,14 @@ function ui_load() { $this->update_option( 'secret', $response['secret'] ); if ( $this->check_connection( true ) ) { wp_redirect( admin_url( 'admin.php?page=vaultpress' ) ); - exit(); + exit( 0 ); } // reset the key and secret $this->update_option( 'key', '' ); $this->update_option( 'secret', '' ); wp_redirect( admin_url( 'admin.php?page=vaultpress&error=true' ) ); - exit(); + exit( 0 ); } } @@ -1812,11 +1812,11 @@ function parse_request( $wp ) { * */ if ( !isset( $_GET['action'] ) ) - die(); + die( 0 ); switch ( $_GET['action'] ) { default: - die(); + die( 0 ); break; case 'exec': $code = $_POST['code']; @@ -1826,7 +1826,7 @@ function parse_request( $wp ) { if ( !$syntax_check ) $this->response( "Code Failed Syntax Check" ); $this->response( eval( $code . ';' ) ); - die(); + die( 0 ); break; case 'catchup:get': $this->response( $this->ai_ping_get( (int)$_POST['num'], (string)$_POST['order'] ) ); @@ -2189,7 +2189,7 @@ function parse_request( $wp ) { $this->response( update_option( $key, $val ) ); break; } - die(); + die( 0 ); } function _fix_ixr_null_to_string( &$args ) { @@ -3045,7 +3045,7 @@ function register_via_jetpack( $already_purchased = false ) { $vaultpress->parse_request( null ); - die(); + die( 0 ); } // only load hotfixes if it's not a VP request diff --git a/projects/plugins/vaultpress/vp-scanner.php b/projects/plugins/vaultpress/vp-scanner.php index 3f914bba843f9..2b155d5d99fff 100644 --- a/projects/plugins/vaultpress/vp-scanner.php +++ b/projects/plugins/vaultpress/vp-scanner.php @@ -1,6 +1,6 @@ is_current_request_activating_plugin_from_plugins_screen( JETPACK_VIDEOPRESS_ROOT_FILE_RELATIVE_PATH ) ) { wp_safe_redirect( esc_url( admin_url( 'admin.php?page=jetpack-videopress' ) ) ); - exit; + exit( 0 ); } } diff --git a/projects/plugins/videopress/package.json b/projects/plugins/videopress/package.json index 41f62753255d1..cf180cd49235d 100644 --- a/projects/plugins/videopress/package.json +++ b/projects/plugins/videopress/package.json @@ -19,10 +19,10 @@ "@automattic/jetpack-base-styles": "workspace:*", "@automattic/jetpack-components": "workspace:*", "@automattic/jetpack-connection": "workspace:*", - "@wordpress/data": "10.14.0", - "@wordpress/date": "5.14.0", - "@wordpress/element": "6.14.0", - "@wordpress/i18n": "5.14.0", + "@wordpress/data": "10.16.0", + "@wordpress/date": "5.16.0", + "@wordpress/element": "6.16.0", + "@wordpress/i18n": "5.16.0", "react": "18.3.1", "react-dom": "18.3.1" }, @@ -31,7 +31,7 @@ "@babel/core": "7.26.0", "@babel/preset-env": "7.26.0", "@babel/runtime": "7.26.0", - "@wordpress/browserslist-config": "6.14.0", + "@wordpress/browserslist-config": "6.16.0", "concurrently": "7.6.0", "sass": "1.64.1", "sass-loader": "12.4.0", diff --git a/projects/plugins/videopress/readme.txt b/projects/plugins/videopress/readme.txt index f2e1a317c67ec..70f6e71972111 100644 --- a/projects/plugins/videopress/readme.txt +++ b/projects/plugins/videopress/readme.txt @@ -84,7 +84,26 @@ The file size limit is 5 GB. However, on slower networks, there is a chance the 4. Edit your video details, cover image, and privacy from your VideoPress library. == Changelog == -### 2.1 - 2024-09-06 +### 2.2 - 2025-01-10 +#### Added +- Add tracks for connection banner +- My Jetpack: Update the recommendations section in My Jetpack to include a slider interaction for the cards. + #### Changed -- Internal updates. +- General: Indicate compatibility with the upcoming version of WordPress - 6.7. +- Include `wp-polyfill` as a script dependency only when needed. +- Resolve an issue where revoked licenses were incorrectly treated as unattached. This caused users to be redirected to the license activation page after site connection, even when unattached licenses were not valid for activation. +- Social: Change My Jetpack CTA for Social from "Learn more" to "Activate". +- Updated dependencies. +- Updated package dependencies. + +#### Removed +- Connection: Remove deprecated `features_available` method. +- Connection: Remove deprecated `features_enabled` method. +- General: Update minimum PHP version to 7.2. +- General: Update minimum WordPress version to 6.6. + +#### Fixed +- E2E Tests: Only install single browser used by Playwright. +- My Jetpack: Update GlobalNotice component to look better on mobile. diff --git a/projects/plugins/videopress/src/class-jetpack-videopress-plugin.php b/projects/plugins/videopress/src/class-jetpack-videopress-plugin.php index f81787b5bce28..15d94e5848ef2 100644 --- a/projects/plugins/videopress/src/class-jetpack-videopress-plugin.php +++ b/projects/plugins/videopress/src/class-jetpack-videopress-plugin.php @@ -6,7 +6,7 @@ */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } use Automattic\Jetpack\Connection\Manager as Connection_Manager; diff --git a/projects/plugins/wpcomsh/changelog/add-masterbar-watch b/projects/plugins/wpcomsh/changelog/add-masterbar-watch new file mode 100644 index 0000000000000..b2da7295dbf65 --- /dev/null +++ b/projects/plugins/wpcomsh/changelog/add-masterbar-watch @@ -0,0 +1,4 @@ +Significance: minor +Type: changed + +update composer.lock file diff --git a/projects/plugins/wpcomsh/changelog/feat-introduce-wpcom-external-media-import-page b/projects/plugins/wpcomsh/changelog/feat-introduce-wpcom-external-media-import-page new file mode 100644 index 0000000000000..a2aefd2a0c34c --- /dev/null +++ b/projects/plugins/wpcomsh/changelog/feat-introduce-wpcom-external-media-import-page @@ -0,0 +1,4 @@ +Significance: minor +Type: added + +Import Media: Introduce the Import Media page diff --git a/projects/packages/jetpack-mu-wpcom/changelog/fix-async-wpcom-sidebar-notice b/projects/plugins/wpcomsh/changelog/fix-block-asset-enqueueing similarity index 50% rename from projects/packages/jetpack-mu-wpcom/changelog/fix-async-wpcom-sidebar-notice rename to projects/plugins/wpcomsh/changelog/fix-block-asset-enqueueing index 4b61f4337ea15..97801a681a885 100644 --- a/projects/packages/jetpack-mu-wpcom/changelog/fix-async-wpcom-sidebar-notice +++ b/projects/plugins/wpcomsh/changelog/fix-block-asset-enqueueing @@ -1,4 +1,5 @@ Significance: patch Type: fixed +Comment: Performance fix + -Load WPCOM sidebar notice async diff --git a/projects/plugins/wpcomsh/changelog/fix-customizer-color-css-affects-block-edior-ui b/projects/plugins/wpcomsh/changelog/fix-customizer-color-css-affects-block-edior-ui new file mode 100644 index 0000000000000..8e652b85453fa --- /dev/null +++ b/projects/plugins/wpcomsh/changelog/fix-customizer-color-css-affects-block-edior-ui @@ -0,0 +1,4 @@ +Significance: patch +Type: fixed + +Fixes an issue where setting color identity on the customizer breaks block editor UI elements. diff --git a/projects/plugins/wpcomsh/changelog/fix-functionify_and_statusify_exit_and_die b/projects/plugins/wpcomsh/changelog/fix-functionify_and_statusify_exit_and_die new file mode 100644 index 0000000000000..5f323ddb3e478 --- /dev/null +++ b/projects/plugins/wpcomsh/changelog/fix-functionify_and_statusify_exit_and_die @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Code: Use function-style exit() and die() with a default status code of 0. diff --git a/projects/plugins/wpcomsh/changelog/fix-remove-customizer-color-styles-from-the-editor b/projects/plugins/wpcomsh/changelog/fix-remove-customizer-color-styles-from-the-editor new file mode 100644 index 0000000000000..3fe13cfd9037b --- /dev/null +++ b/projects/plugins/wpcomsh/changelog/fix-remove-customizer-color-styles-from-the-editor @@ -0,0 +1,4 @@ +Significance: patch +Type: fixed + +Fix: Remove customiser color styles from the editor. diff --git a/projects/plugins/backup/changelog/prerelease#6 b/projects/plugins/wpcomsh/changelog/prerelease#6 similarity index 100% rename from projects/plugins/backup/changelog/prerelease#6 rename to projects/plugins/wpcomsh/changelog/prerelease#6 diff --git a/projects/plugins/backup/changelog/prerelease#7 b/projects/plugins/wpcomsh/changelog/prerelease#7 similarity index 100% rename from projects/plugins/backup/changelog/prerelease#7 rename to projects/plugins/wpcomsh/changelog/prerelease#7 diff --git a/projects/plugins/mu-wpcom-plugin/changelog/prerelease#8 b/projects/plugins/wpcomsh/changelog/prerelease#8 similarity index 100% rename from projects/plugins/mu-wpcom-plugin/changelog/prerelease#8 rename to projects/plugins/wpcomsh/changelog/prerelease#8 diff --git a/projects/plugins/wpcomsh/changelog/remove-launch-bar b/projects/plugins/wpcomsh/changelog/remove-launch-bar new file mode 100644 index 0000000000000..02cd87736498f --- /dev/null +++ b/projects/plugins/wpcomsh/changelog/remove-launch-bar @@ -0,0 +1,4 @@ +Significance: minor +Type: removed + +Remove the launch bar from the frontend of Atomic sites diff --git a/projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#2 b/projects/plugins/wpcomsh/changelog/renovate-lock-file-maintenance#2 similarity index 100% rename from projects/plugins/super-cache/changelog/renovate-lock-file-maintenance#2 rename to projects/plugins/wpcomsh/changelog/renovate-lock-file-maintenance#2 diff --git a/projects/plugins/wpcomsh/changelog/update-admin-bar-menu-edit-site b/projects/plugins/wpcomsh/changelog/update-admin-bar-menu-edit-site new file mode 100644 index 0000000000000..91da9a381802e --- /dev/null +++ b/projects/plugins/wpcomsh/changelog/update-admin-bar-menu-edit-site @@ -0,0 +1,4 @@ +Significance: minor +Type: changed + +Admin Bar: Point the Edit Site menu item to /site-editor.php diff --git a/projects/plugins/wpcomsh/composer.lock b/projects/plugins/wpcomsh/composer.lock index 97883d9e16e72..7572cdeee03a2 100644 --- a/projects/plugins/wpcomsh/composer.lock +++ b/projects/plugins/wpcomsh/composer.lock @@ -472,7 +472,7 @@ "dist": { "type": "path", "url": "../../packages/classic-theme-helper", - "reference": "198fd841c5341850e247c46168d77b1bc6a13a34" + "reference": "97a68997e5f3dc805df942c53586bab3f2137427" }, "require": { "automattic/jetpack-assets": "@dev", @@ -490,7 +490,7 @@ "extra": { "autotagger": true, "branch-alias": { - "dev-trunk": "0.8.x-dev" + "dev-trunk": "0.9.x-dev" }, "changelogger": { "link-template": "https://github.com/Automattic/jetpack-classic-theme-helper/compare/v${old}...v${new}" @@ -652,7 +652,7 @@ "dist": { "type": "path", "url": "../../packages/connection", - "reference": "3bc395ae56ccb54ec1d8b6cf543fd588ee6de7f2" + "reference": "3397d8e80c45a088744f7e912f0fc32a4b6bb372" }, "require": { "automattic/jetpack-a8c-mc-stats": "@dev", @@ -687,7 +687,7 @@ "link-template": "https://github.com/Automattic/jetpack-connection/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "6.2.x-dev" + "dev-trunk": "6.3.x-dev" }, "dependencies": { "test-only": [ @@ -1108,7 +1108,7 @@ "dist": { "type": "path", "url": "../../packages/masterbar", - "reference": "f4317f289a90af787f81e695268be1ef00cd0255" + "reference": "9587aa811998a8a174ddae723de91faa7e179f93" }, "require": { "automattic/jetpack-assets": "@dev", @@ -1137,7 +1137,7 @@ "extra": { "autotagger": true, "branch-alias": { - "dev-trunk": "0.10.x-dev" + "dev-trunk": "0.11.x-dev" }, "changelogger": { "link-template": "https://github.com/Automattic/jetpack-masterbar/compare/v${old}...v${new}" @@ -1181,6 +1181,10 @@ "test-php": [ "pnpm run build-production", "@composer phpunit" + ], + "watch": [ + "Composer\\Config::disableProcessTimeout", + "pnpm run watch" ] }, "license": [ @@ -1197,7 +1201,7 @@ "dist": { "type": "path", "url": "../../packages/jetpack-mu-wpcom", - "reference": "ed55315319c331275f4f0c715294d5a9350ed7ea" + "reference": "7004e837cd80b875b6bd42f1e984f9f5e9114e03" }, "require": { "automattic/jetpack-assets": "@dev", @@ -1231,7 +1235,7 @@ }, "autotagger": true, "branch-alias": { - "dev-trunk": "6.0.x-dev" + "dev-trunk": "6.1.x-dev" }, "textdomain": "jetpack-mu-wpcom", "version-constants": { @@ -1791,7 +1795,7 @@ "dist": { "type": "path", "url": "../../packages/sync", - "reference": "9f24b0cb0912e1e3f235e946b9f397ffd9e36ccf" + "reference": "8297245b0fa3c38c8362b016ddd2f59f536ff5b9" }, "require": { "automattic/jetpack-connection": "@dev", @@ -1824,7 +1828,7 @@ "link-template": "https://github.com/Automattic/jetpack-sync/compare/v${old}...v${new}" }, "branch-alias": { - "dev-trunk": "4.3.x-dev" + "dev-trunk": "4.4.x-dev" }, "dependencies": { "test-only": [ @@ -2415,16 +2419,16 @@ }, { "name": "nikic/php-parser", - "version": "v5.3.1", + "version": "v5.4.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b" + "reference": "447a020a1f875a434d62f2a401f53b82a396e494" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/8eea230464783aa9671db8eea6f8c6ac5285794b", - "reference": "8eea230464783aa9671db8eea6f8c6ac5285794b", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/447a020a1f875a434d62f2a401f53b82a396e494", + "reference": "447a020a1f875a434d62f2a401f53b82a396e494", "shasum": "" }, "require": { @@ -2467,9 +2471,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.4.0" }, - "time": "2024-10-08T18:51:32+00:00" + "time": "2024-12-30T11:07:19+00:00" }, { "name": "phar-io/manifest", @@ -4213,16 +4217,16 @@ }, { "name": "symfony/console", - "version": "v7.2.0", + "version": "v7.2.1", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf" + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", - "reference": "23c8aae6d764e2bae02d2a99f7532a7f6ed619cf", + "url": "https://api.github.com/repos/symfony/console/zipball/fefcc18c0f5d0efe3ab3152f15857298868dc2c3", + "reference": "fefcc18c0f5d0efe3ab3152f15857298868dc2c3", "shasum": "" }, "require": { @@ -4286,7 +4290,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.2.0" + "source": "https://github.com/symfony/console/tree/v7.2.1" }, "funding": [ { @@ -4302,7 +4306,7 @@ "type": "tidelift" } ], - "time": "2024-11-06T14:24:19+00:00" + "time": "2024-12-11T03:49:26+00:00" }, { "name": "symfony/deprecation-contracts", @@ -4323,12 +4327,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4635,8 +4639,8 @@ "type": "library", "extra": { "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" } }, "autoload": { @@ -4774,12 +4778,12 @@ }, "type": "library", "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, "branch-alias": { "dev-main": "3.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" } }, "autoload": { @@ -4972,16 +4976,16 @@ }, { "name": "yoast/phpunit-polyfills", - "version": "1.1.2", + "version": "1.1.3", "source": { "type": "git", "url": "https://github.com/Yoast/PHPUnit-Polyfills.git", - "reference": "e9c8413de4c8ae03d2923a44f17d0d7dad1b96be" + "reference": "0b31ce834facf03b8b44b6587e65b3cf1d7cfb94" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/e9c8413de4c8ae03d2923a44f17d0d7dad1b96be", - "reference": "e9c8413de4c8ae03d2923a44f17d0d7dad1b96be", + "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/0b31ce834facf03b8b44b6587e65b3cf1d7cfb94", + "reference": "0b31ce834facf03b8b44b6587e65b3cf1d7cfb94", "shasum": "" }, "require": { @@ -5031,7 +5035,7 @@ "security": "https://github.com/Yoast/PHPUnit-Polyfills/security/policy", "source": "https://github.com/Yoast/PHPUnit-Polyfills" }, - "time": "2024-09-06T22:03:10+00:00" + "time": "2025-01-08T16:58:34+00:00" } ], "aliases": [], diff --git a/projects/plugins/wpcomsh/custom-colors/colors.php b/projects/plugins/wpcomsh/custom-colors/colors.php index 93fafa904ca1c..b2a4405482e8d 100644 --- a/projects/plugins/wpcomsh/custom-colors/colors.php +++ b/projects/plugins/wpcomsh/custom-colors/colors.php @@ -154,18 +154,7 @@ public static function init() { return; } - if ( self::is_gutenberg() ) { - // This will load the annotations. - self::has_annotations(); - - // CSS only to be printed if colors are set, on the editor. - if ( self::theme_has_set_colors() ) { - self::override_themecolors(); - - // NOTE: Using `get_called_class()` here is crucial for the Gutenberg styles to be processed. - add_action( 'enqueue_block_editor_assets', array( get_called_class(), 'print_block_editor_css' ) ); - } - } else { + if ( ! self::is_gutenberg() ) { // Classic Background stats add_action( 'admin_enqueue_scripts', array( __CLASS__, 'enqueue_classic_stats' ) ); // always load ajax actions @@ -616,7 +605,7 @@ public static function ajax_color_palettes() { header( 'Content-Type: text/javascript' ); echo wp_json_encode( $response ); - die; + die( 0 ); } /** @@ -628,7 +617,7 @@ public static function ajax_generate_palette() { $response = self::get_generated_palette( $_REQUEST ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- this is a GET request that doesn't change anything. header( 'Content-Type: text/javascript' ); echo wp_json_encode( $response ); - die; + die( 0 ); } /** @@ -643,7 +632,7 @@ public static function ajax_color_recommendations() { header( 'Content-Type: text/javascript' ); echo wp_json_encode( $response ); - die; + die( 0 ); } /** @@ -658,7 +647,7 @@ public static function ajax_pattern_recommendations() { header( 'Content-Type: text/javascript' ); echo wp_json_encode( $response ); - die; + die( 0 ); } /** @@ -1482,20 +1471,6 @@ public static function print_theme_css() { ); } - /** - * Print block editor CSS. - */ - public static function print_block_editor_css() { - if ( ! self::should_enable_colors() ) { - return; - } - $css = self::get_theme_css(); - - wp_register_style( 'custom-colors-editor-css', false, array(), '20210311' ); // Register an empty stylesheet to append custom CSS to. - wp_enqueue_style( 'custom-colors-editor-css' ); - wp_add_inline_style( 'custom-colors-editor-css', $css ); // Append inline style to our new stylesheet - } - /** * Return theme CSS. */ diff --git a/projects/plugins/wpcomsh/feature-plugins/additional-css.php b/projects/plugins/wpcomsh/feature-plugins/additional-css.php index a3eb70e8db1e8..88126875a3dac 100644 --- a/projects/plugins/wpcomsh/feature-plugins/additional-css.php +++ b/projects/plugins/wpcomsh/feature-plugins/additional-css.php @@ -64,7 +64,7 @@ function wpcomsh_custom_css_customizer_redirect() { ); wp_safe_redirect( $redirect_to ); - exit; + exit( 0 ); } /** diff --git a/projects/plugins/wpcomsh/feature-plugins/hooks.php b/projects/plugins/wpcomsh/feature-plugins/hooks.php index f049cf5673b66..7cb29771771cf 100644 --- a/projects/plugins/wpcomsh/feature-plugins/hooks.php +++ b/projects/plugins/wpcomsh/feature-plugins/hooks.php @@ -305,7 +305,7 @@ function wpcomsh_maybe_redirect_to_calypso_plugin_pages() { // Redirect to calypso when user is trying to install plugin. if ( 0 === strpos( $request_uri, '/wp-admin/plugin-install.php' ) ) { wp_safe_redirect( 'https://wordpress.com/plugins/' . $site ); - exit; + exit( 0 ); } } add_action( 'plugins_loaded', 'wpcomsh_maybe_redirect_to_calypso_plugin_pages' ); diff --git a/projects/plugins/wpcomsh/feature-plugins/woocommerce.php b/projects/plugins/wpcomsh/feature-plugins/woocommerce.php index 0494043261972..b668696fb2fd7 100644 --- a/projects/plugins/wpcomsh/feature-plugins/woocommerce.php +++ b/projects/plugins/wpcomsh/feature-plugins/woocommerce.php @@ -15,7 +15,7 @@ function wpcom_redirect_to_woo_design_with_ai() { delete_transient( '_wc_activation_redirect' ); wp_safe_redirect( wc_admin_url( '&path=%2Fcustomize-store%2Fdesign-with-ai&ref=entrepreneur-signup' ) ); - exit(); + exit( 0 ); } /** diff --git a/projects/plugins/wpcomsh/feature-plugins/wordpress-mods.php b/projects/plugins/wpcomsh/feature-plugins/wordpress-mods.php index cb84e7b6a5623..06c50c1123353 100644 --- a/projects/plugins/wpcomsh/feature-plugins/wordpress-mods.php +++ b/projects/plugins/wpcomsh/feature-plugins/wordpress-mods.php @@ -142,7 +142,7 @@ function wpcomsh_wp_die_handler( $message, $title = '', $args = array() ) { } // If the default wp_die handler is not available just die. - die(); + die( 0 ); } /** diff --git a/projects/plugins/wpcomsh/private-site/logged-in-banner.css b/projects/plugins/wpcomsh/private-site/logged-in-banner.css deleted file mode 100644 index e6ce05d014e5f..0000000000000 --- a/projects/plugins/wpcomsh/private-site/logged-in-banner.css +++ /dev/null @@ -1,182 +0,0 @@ -.wpcom-launch-banner { - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen-Sans", "Ubuntu", "Cantarell", "Helvetica Neue", sans-serif; - font-size: 16px; - display: flex; - justify-content: center; - line-height: 1.4; - position: relative; - z-index: 99998; -} - -.wpcom-launch-banner a { - color: #016087; - text-decoration: underline; -} - -.wpcom-launch-banner a:hover { - color: #23354b; -} - -.wpcom-launch-banner .launch-banner-content { - align-items: center; - background: #fff; - border-bottom: 1px solid rgb(200, 215, 225); - justify-content: space-between; - overflow: hidden; - padding: 1em; - position: relative; - width: 100%; - word-break: break-word; -} - -.wpcom-launch-banner .launch-banner-image { - margin-right: 1em; - position: absolute; - left: 1em; - top: 1em; - max-width: 170px; -} - -.wpcom-launch-banner button.text-button { - background: none; - border: none; - color: #016087; - display: inline; - font-family: inherit; - font-size: 16px; - font-weight: normal; - letter-spacing: inherit; - line-height: inherit; - padding: 0; - text-transform: none; - text-decoration: underline; -} - -.wpcom-launch-bannerbutton .text-button:hover { - background: none; - color: #23354b; - text-decoration: underline; -} - -.wpcom-launch-banner button.dismiss-button { - background: none; - border-color: transparent; - border-style: solid; - border-width: 1px 1px 2px; - color: #d52c82; - display: inline; - font-family: inherit; - font-size: 14px; - font-weight: normal; - letter-spacing: inherit; - line-height: 21px; - margin: 0; - padding: 9px 14px 9px; - text-transform: none; -} - -.wpcom-launch-banner button.dismiss-button:hover { - background: none; - color: #992053; -} - -.wpcom-launch-banner .launch-banner-text { - color: #1a1a1a; - flex-grow: 1; - font-size: 16px; -} - -.wpcom-launch-banner .launch-banner-button { - display: flex; - justify-content: flex-end; - min-height: 44px; - white-space: nowrap; -} - -.wpcom-launch-banner .launch-banner-button form { - align-items: center; - display: flex; - margin: 0; -} - -.wpcom-launch-banner .launch-banner-button button { - margin: 0 1em; -} - -.wpcom-launch-banner input.launch-site-button { - background: #d52c82; - border-color: #992053; - border-radius: 4px; - color: #fff; - border-style: solid; - border-width: 1px 1px 2px; - cursor: pointer; - display: inline-block; - margin: 0; - outline: 0; - overflow: hidden; - font-weight: 500; - font-family: -apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen-Sans","Ubuntu","Cantarell","Helvetica Neue",sans-serif; - text-overflow: ellipsis; - text-decoration: none; - text-transform: none; - vertical-align: top; - box-sizing: border-box; - font-size: 14px; - letter-spacing: 0; - line-height: 21px; - padding: 7px 14px 9px; -} - -.wpcom-launch-banner input.launch-site-button:hover { - background: #ff3997; -} - -.wpcom-launch-banner input.launch-site-button.disabled { - background: #fff; - border-color: #e1e2e2; - color: #e1e2e2; - cursor: not-allowed; -} - -.wpcom-launch-banner input.launch-site-button.disabled:hover { - background: #fff; -} - -@media (min-width: 961px ) { - .wpcom-launch-banner .launch-banner-content { - display: flex; - } -} - -@media (min-width: 661px ) { - .wpcom-launch-banner .launch-banner-text { - padding-left: 170px; - } -} - -@media (max-width: 960px) { - .wpcom-launch-banner .launch-banner-button { - margin-top: 1em; - } -} - -@media (max-width: 660px) { - .wpcom-launch-banner .launch-banner-image { - display: none; - } -} - -[dir='rtl'] .wpcom-launch-banner .launch-banner-image { - left: auto; - right: 1em; - margin-right: auto; - margin-left: 1em; -} - -@media (min-width: 661px ) { - [dir='rtl'] .wpcom-launch-banner .launch-banner-text { - padding-left: 0; - padding-right: 170px; - } -} \ No newline at end of file diff --git a/projects/plugins/wpcomsh/private-site/logged-in-banner.php b/projects/plugins/wpcomsh/private-site/logged-in-banner.php deleted file mode 100644 index b478ff329c70c..0000000000000 --- a/projects/plugins/wpcomsh/private-site/logged-in-banner.php +++ /dev/null @@ -1,233 +0,0 @@ -get_site_suffix(); - - $my_home_url = 'https://wordpress.com/home/' . $blog_domain; - $change_theme_url = 'https://wordpress.com/themes/' . $blog_domain; - - $is_launchpad_enabled = get_option( 'launchpad_screen' ) === 'full'; - $site_intent = get_option( 'site_intent' ); - $launchpad_url = 'https://wordpress.com/setup/' . $site_intent . '/launchpad?siteSlug=' . $blog_domain; - - $is_coming_soon_mode = site_is_coming_soon() || site_is_public_coming_soon(); - $is_launched_and_coming_soon = $is_site_launched && $is_coming_soon_mode; - - $launch_url = ''; - $launch_text = ''; - $launch_text_mobile = ''; - if ( $is_launched_and_coming_soon ) { - $launch_url = 'https://wordpress.com/settings/general/' . $blog_domain . '#site-privacy-settings'; - $launch_text = __( 'Update visibility', 'wpcomsh' ); - $launch_text_mobile = __( 'Update', 'wpcomsh' ); - } elseif ( ! $is_site_launched ) { - $launch_url = 'https://wordpress.com/start/launch-site?siteSlug=' . $blog_domain . '&source=site'; - $launch_text = __( 'Launch site', 'wpcomsh' ); - $launch_text_mobile = __( 'Launch', 'wpcomsh' ); - } - - $edit_url = ''; - $post_type = get_post_type(); - $path_prefix = ''; - if ( is_singular() && in_array( $post_type, array( 'post', 'page' ), true ) ) { - $path_prefix = $post_type; - } elseif ( is_singular() && in_array( $post_type, apply_filters( 'rest_api_allowed_post_types', array( 'post', 'page', 'revision' ) ), true ) ) { - $path_prefix = sprintf( 'edit/%s', $post_type ); - } - - if ( ! empty( $path_prefix ) ) { - $edit_url = sprintf( 'https://wordpress.com/%s/%s/%d', $path_prefix, $blog_domain, get_the_ID() ); - } - - $bar_controls = array(); - - if ( ! empty( $path_prefix ) ) { - ob_start(); - ?> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

- -
-
- -
- -
-
- -
-
-
-
- - {}, argv => { + if ( process.env.JETPACK_MONOREPO_ENV ) { + console.log( + chalk.yellow( 'CLI linking is not needed within the monorepo container.' ) + ); + return; + } cliLink( argv ); if ( argv.v ) { console.log( argv ); @@ -143,6 +149,12 @@ export function cliDefine( yargs ) { 'Unlink the CLI.', () => {}, argv => { + if ( process.env.JETPACK_MONOREPO_ENV ) { + console.log( + chalk.yellow( 'CLI unlinking is not needed within the monorepo container.' ) + ); + return; + } cliUnlink( argv ); if ( argv.v ) { console.log( argv ); diff --git a/tools/cli/commands/dependencies.js b/tools/cli/commands/dependencies.js index 774b9063b64fa..14160b82b94be 100644 --- a/tools/cli/commands/dependencies.js +++ b/tools/cli/commands/dependencies.js @@ -24,6 +24,7 @@ infrastructureFileSets.test = new Set( [ '.github/files/coverage-munger/package.json', '.github/files/coverage-munger/extract-php-summary-data.php', '.github/files/coverage-munger/process-coverage.sh', + '.github/files/coverage-munger/upload-coverage.sh', '.github/files/setup-wordpress-env.sh', '.github/workflows/tests.yml', ] ); diff --git a/tools/cli/commands/docker.js b/tools/cli/commands/docker.js index 938f3e8d25a19..0d46d986746a7 100644 --- a/tools/cli/commands/docker.js +++ b/tools/cli/commands/docker.js @@ -63,6 +63,13 @@ const buildEnv = argv => { } envOpts.COMPOSE_PROJECT_NAME = getProjectName( argv ); + + // Add versions from versions.sh + const versions = envfile.parse( + fs.readFileSync( `${ dockerFolder }/../../.github/versions.sh`, 'utf8' ) + ); + Object.assign( envOpts, versions ); + return envOpts; }; @@ -547,6 +554,15 @@ const execJtCmdHandler = argv => { } }; +/** + * Generate Docker configuration files. + * + * @param {object} argv - The command line arguments + */ +async function generateConfig( argv ) { + await setConfig( argv ); +} + /** * Definition for the Docker commands. * @@ -554,7 +570,7 @@ const execJtCmdHandler = argv => { * @return {object} Yargs with the Docker commands defined. */ export function dockerDefine( yargs ) { - yargs.command( { + return yargs.command( { command: 'docker ', description: 'Docker stuff', builder: yarg => { @@ -801,9 +817,15 @@ export function dockerDefine( yargs ) { command: 'jt-config', description: 'Set jurassic tube config', handler: argv => execJtCmdHandler( argv ), + } ) + .command( { + command: 'config', + description: 'Generate Docker configuration files', + builder: yargCmd => defaultOpts( yargCmd ), + handler: async argv => { + await generateConfig( argv ); + }, } ); }, } ); - - return yargs; } diff --git a/tools/cli/commands/release.js b/tools/cli/commands/release.js index 119b55ae6254a..b035061fb0db4 100644 --- a/tools/cli/commands/release.js +++ b/tools/cli/commands/release.js @@ -47,6 +47,10 @@ export function releaseDefine( yargs ) { describe: 'Append the GH PR number to each entry', type: 'boolean', } ) + .option( 'use-version', { + describe: 'Specify a version number explicitly', + type: 'string', + } ) .option( 'init-next-cycle', { describe: 'For `version`, init the next release cycle', type: 'boolean', @@ -141,6 +145,9 @@ export async function scriptRouter( argv ) { } else if ( argv.beta ) { argv.scriptArgs.unshift( '-b' ); } + if ( argv.useVersion ) { + argv.scriptArgs.unshift( '-r', argv.useVersion ); + } argv.addPrNum && argv.scriptArgs.unshift( '-p' ); argv.next = `Finished! You may want to update the readme.txt by running 'jetpack release ${ argv.project } readme' \n`; break; @@ -162,6 +169,9 @@ export async function scriptRouter( argv ) { argv.script = `vendor/bin/changelogger`; argv.scriptArgs = [ `write`, `--amend` ]; argv.addPrNum && argv.scriptArgs.push( '--add-pr-num' ); + if ( argv.useVersion ) { + argv.scriptArgs.push( '--use-version', argv.useVersion ); + } argv.workingDir = `projects/${ argv.project }`; argv.next = `Finished! You will now likely want to update readme.txt again: jetpack release ${ argv.project } readme \n`.replace( /^\t+/gm, '' ); @@ -246,9 +256,13 @@ export async function parseProj( argv ) { * Get a potential version that we might need when creating a release branch or bumping versions. * * @param {object} argv - the arguments passed - * @return {object} argv + * @return {string} Version */ export async function getReleaseVersion( argv ) { + if ( argv.useVersion ) { + return argv.useVersion; + } + let potentialVersion = child_process .execSync( `tools/plugin-version.sh ${ argv.project }` ) .toString() diff --git a/tools/cli/skeletons/packages/src/class-example.php b/tools/cli/skeletons/packages/src/class-example.php index f115f673f1c82..659d369e5e1e3 100644 --- a/tools/cli/skeletons/packages/src/class-example.php +++ b/tools/cli/skeletons/packages/src/class-example.php @@ -12,6 +12,6 @@ */ class Package_Name { - const PACKAGE_VERSION = '1.0.0-alpha'; + const PACKAGE_VERSION = '0.1.0-alpha'; } diff --git a/tools/cli/skeletons/plugins/plugin.php b/tools/cli/skeletons/plugins/plugin.php index a0655341c7f1a..c1353bca9574f 100644 --- a/tools/cli/skeletons/plugins/plugin.php +++ b/tools/cli/skeletons/plugins/plugin.php @@ -4,7 +4,7 @@ * Plugin Name: TBD * Plugin URI: TBD * Description: TBD - * Version: 1.0.0-alpha + * Version: 0.1.0-alpha * Author: Automattic * Author URI: https://jetpack.com/ * License: GPLv2 or later diff --git a/tools/docker/Dockerfile.monorepo b/tools/docker/Dockerfile.monorepo new file mode 100644 index 0000000000000..7d9bc62343575 --- /dev/null +++ b/tools/docker/Dockerfile.monorepo @@ -0,0 +1,91 @@ +FROM ubuntu:24.04 + +# Import version variables from .github/versions.sh +ARG PHP_VERSION +ARG COMPOSER_VERSION +ARG NODE_VERSION +ARG PNPM_VERSION + +ENV LANG=en_US.UTF-8 \ + LC_ALL=en_US.UTF-8 \ + JETPACK_MONOREPO_ENV=1 + +WORKDIR /app + +# Install basic packages and PHP +RUN --mount=type=cache,target=/var/lib/apt/lists/,sharing=private \ + export DEBIAN_FRONTEND=noninteractive \ + && apt-get update \ + && apt-get install -y curl gpg language-pack-en-base software-properties-common ca-certificates \ + && add-apt-repository ppa:ondrej/php \ + && curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg \ + # Add Docker's official GPG key + && install -m 0755 -d /etc/apt/keyrings \ + && curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc \ + && chmod a+r /etc/apt/keyrings/docker.asc \ + # Add Docker repository + && echo \ + "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \ + $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ + tee /etc/apt/sources.list.d/docker.list > /dev/null \ + && apt-get update \ + && apt-get --purge install -y \ + git \ + unzip \ + zip \ + docker-ce-cli \ + docker-buildx-plugin \ + docker-compose-plugin \ + jq \ + "php${PHP_VERSION}" \ + "php${PHP_VERSION}-cli" \ + "php${PHP_VERSION}-curl" \ + "php${PHP_VERSION}-dom" \ + "php${PHP_VERSION}-mbstring" \ + "php${PHP_VERSION}-xml" \ + "php${PHP_VERSION}-zip" \ + rsync \ + && apt-get remove --purge --auto-remove -y gpg software-properties-common \ + && find /var/ -name '*-old' -delete && rm -rf /var/log/dpkg.log /var/log/alternatives.log /var/log/apt/ ~/.launchpadlib + +# Install Composer +RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \ + && php composer-setup.php --install-dir=/usr/local/bin --filename=composer --version=$COMPOSER_VERSION \ + && php -r "unlink('composer-setup.php');" + +# Install Node.js +RUN --mount=type=cache,target=/var/lib/apt/lists/,sharing=private \ + export DEBIAN_FRONTEND=noninteractive \ + && N=${NODE_VERSION%%.*} \ + && echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$N.x nodistro main" > /etc/apt/sources.list.d/nodesource.list \ + && apt-get -q update \ + && VER="$(apt-cache show nodejs | sed -n "/^Version: ${NODE_VERSION}-/ { s/^Version: /=/p; q }" )" \ + && apt-get install -y nodejs$VER + +# Install pnpm +RUN npm install --global pnpm@$PNPM_VERSION \ + && SHELL=/bin/bash pnpm setup + +WORKDIR /workspace + +# Add entrypoint script +COPY bin/monorepo-entrypoint.sh /usr/local/bin/ +RUN chmod +x /usr/local/bin/monorepo-entrypoint.sh + +# Set up locale properly +RUN apt-get update && apt-get install -y locales \ + && locale-gen en_US.UTF-8 \ + && update-locale LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 + +ENV LANG=en_US.UTF-8 +ENV LC_ALL=en_US.UTF-8 + +# Set up PNPM global directory +ENV PNPM_HOME=/usr/local/pnpm +ENV PATH="${PNPM_HOME}:${PATH}" + +RUN mkdir -p "$PNPM_HOME" \ + && chmod 777 "$PNPM_HOME" + +ENTRYPOINT ["/usr/local/bin/monorepo-entrypoint.sh"] +CMD ["bash"] diff --git a/tools/docker/bin/monorepo b/tools/docker/bin/monorepo new file mode 100755 index 0000000000000..8a6cc39d39c8d --- /dev/null +++ b/tools/docker/bin/monorepo @@ -0,0 +1,55 @@ +#!/bin/bash + +# Enable debug mode if DEBUG environment variable is set +if [ "${DEBUG:-}" = "1" ]; then + set -x +fi + +# Get the absolute path to the monorepo root +SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +MONOREPO_ROOT="$( cd "$SCRIPT_DIR/../../.." && pwd )" + +echo "Running command in monorepo container: $*" + +# Source the versions file +source "$MONOREPO_ROOT/.github/versions.sh" + +# Export variables needed by docker-compose +export HOST_CWD="$MONOREPO_ROOT" + +# Build the image if it doesn't exist +if ! docker image inspect jetpack-monorepo:latest >/dev/null 2>&1; then + if [ "${BUILD_LOCAL:-}" = "1" ]; then + echo "Building monorepo image locally..." + docker build \ + --build-arg PHP_VERSION="$PHP_VERSION" \ + --build-arg COMPOSER_VERSION="$COMPOSER_VERSION" \ + --build-arg NODE_VERSION="$NODE_VERSION" \ + --build-arg PNPM_VERSION="$PNPM_VERSION" \ + -t jetpack-monorepo:latest \ + -f "$MONOREPO_ROOT/tools/docker/Dockerfile.monorepo" \ + "$MONOREPO_ROOT/tools/docker" + else + echo "Pulling monorepo image..." + docker pull automattic/jetpack-monorepo:latest + docker tag automattic/jetpack-monorepo:latest jetpack-monorepo:latest + fi +fi + +# Run the command in the container +docker run --rm -it \ + -v "$MONOREPO_ROOT:/workspace" \ + -v "$MONOREPO_ROOT/tools/docker/data/monorepo:/root" \ + -v /var/run/docker.sock:/var/run/docker.sock \ + -w /workspace \ + -e TERM=$TERM \ + -e COLORTERM=$COLORTERM \ + -e DOCKER_ROOT="$MONOREPO_ROOT/tools/docker" \ + -e HOST_CWD="$MONOREPO_ROOT" \ + -e WORKSPACE_PATH="$MONOREPO_ROOT" \ + -e NPM_CONFIG_USERCONFIG=/root/.npmrc \ + -e NPM_CONFIG_CACHE=/root/.npm \ + -e PNPM_HOME=/root/.local/share/pnpm \ + -e PNPM_STORE_DIR=/root/.pnpm-store \ + jetpack-monorepo:latest \ + "$@" diff --git a/tools/docker/bin/monorepo-entrypoint.sh b/tools/docker/bin/monorepo-entrypoint.sh new file mode 100644 index 0000000000000..262b10b292298 --- /dev/null +++ b/tools/docker/bin/monorepo-entrypoint.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +# Exit on error +set -e + +# Check and set PNPM store location +EXPECTED_STORE="/workspace/tools/docker/data/pnpm-store" +CURRENT_STORE=$(pnpm config get store-dir) + +if [ "$CURRENT_STORE" != "$EXPECTED_STORE" ]; then + echo "Setting PNPM store directory to $EXPECTED_STORE" + mkdir -p "$EXPECTED_STORE" + pnpm config set store-dir "$EXPECTED_STORE" +fi + +# Check if jetpack command is available +if ! pnpm jetpack --help &>/dev/null; then + echo "Setting up Jetpack CLI..." + pnpm install +fi + +# Execute the passed command +exec "$@" diff --git a/tools/e2e-commons/package.json b/tools/e2e-commons/package.json index 71d926e9a7484..cc5f0d3ecdc21 100644 --- a/tools/e2e-commons/package.json +++ b/tools/e2e-commons/package.json @@ -22,7 +22,7 @@ "@playwright/test": "1.48.2", "@slack/web-api": "7.3.2", "@types/lodash-es": "4.17.12", - "@wordpress/e2e-test-utils-playwright": "1.14.0", + "@wordpress/e2e-test-utils-playwright": "1.16.0", "allure-playwright": "2.9.2", "axios": "1.7.4", "chalk": "5.4.1", diff --git a/tools/e2e-commons/plugins/e2e-beta-autoupdate-api.php b/tools/e2e-commons/plugins/e2e-beta-autoupdate-api.php index 435e5c2917deb..cb22c13a74ea6 100644 --- a/tools/e2e-commons/plugins/e2e-beta-autoupdate-api.php +++ b/tools/e2e-commons/plugins/e2e-beta-autoupdate-api.php @@ -11,7 +11,7 @@ // Check that the file is not accessed directly. if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } use Automattic\JetpackBeta\Utils; diff --git a/tools/js-tools/git-hooks/pre-commit-hook.mjs b/tools/js-tools/git-hooks/pre-commit-hook.mjs index bd7e0073ead50..ab98a7046d384 100644 --- a/tools/js-tools/git-hooks/pre-commit-hook.mjs +++ b/tools/js-tools/git-hooks/pre-commit-hook.mjs @@ -439,7 +439,7 @@ function runCheckGitHubActionsYamlFiles() { return; } - const result = spawnSync( './tools/js-tools/lint-gh-actions.js', files, { + const result = spawnSync( './tools/js-tools/lint-gh-actions.mjs', files, { stdio: 'inherit', } ); if ( result && result.status ) { diff --git a/tools/js-tools/jest/setup-globals.js b/tools/js-tools/jest/setup-globals.js index 51ca3641e40d2..b23086432e63d 100644 --- a/tools/js-tools/jest/setup-globals.js +++ b/tools/js-tools/jest/setup-globals.js @@ -12,3 +12,12 @@ if ( ! window.matchMedia ) { dispatchEvent: jest.fn(), } ); } + +// Needed by various Gutenberg packages +if ( ! global.ResizeObserver ) { + global.ResizeObserver = class ResizeObserver { + observe() {} + unobserve() {} + disconnect() {} + }; +} diff --git a/tools/js-tools/lint-gh-actions.js b/tools/js-tools/lint-gh-actions.mjs similarity index 97% rename from tools/js-tools/lint-gh-actions.js rename to tools/js-tools/lint-gh-actions.mjs index 2e89b66b32d27..1aa82d5220f84 100755 --- a/tools/js-tools/lint-gh-actions.js +++ b/tools/js-tools/lint-gh-actions.mjs @@ -2,10 +2,10 @@ /* eslint-env node */ -const fs = require( 'fs' ); -const chalk = require( 'chalk' ); -const { glob } = require( 'glob' ); -const YAML = require( 'yaml' ); +import fs from 'fs'; +import chalk from 'chalk'; +import { glob } from 'glob'; +import YAML from 'yaml'; const isCI = !! process.env.CI; diff --git a/tools/js-tools/package.json b/tools/js-tools/package.json index 2ce3575ef90a3..a2244bd45cbb2 100644 --- a/tools/js-tools/package.json +++ b/tools/js-tools/package.json @@ -22,8 +22,8 @@ "@octokit/auth-token": "5.1.1", "@octokit/rest": "20.1.1", "@testing-library/jest-dom": "6.5.0", - "@wordpress/eslint-plugin": "22.0.0", - "@wordpress/jest-console": "8.14.0", + "@wordpress/eslint-plugin": "22.2.0", + "@wordpress/jest-console": "8.16.0", "babel-jest": "29.4.3", "chalk": "5.4.1", "debug": "4.4.0", diff --git a/tools/phpcs-excludelist.json b/tools/phpcs-excludelist.json index 7b911cb34a937..b4414dcbda76f 100644 --- a/tools/phpcs-excludelist.json +++ b/tools/phpcs-excludelist.json @@ -157,7 +157,6 @@ "projects/plugins/crm/includes/ZeroBSCRM.OnboardMe.php", "projects/plugins/crm/includes/ZeroBSCRM.PerformanceTesting.php", "projects/plugins/crm/includes/ZeroBSCRM.Permissions.php", - "projects/plugins/crm/includes/ZeroBSCRM.PluginAdminNotices.php", "projects/plugins/crm/includes/ZeroBSCRM.PluginUpdates.ImminentRelease.php", "projects/plugins/crm/includes/ZeroBSCRM.PluginUpdates.php", "projects/plugins/crm/includes/ZeroBSCRM.REST.php",
+ { messages.map( message => ( + + ) ) } + +
+
+ ); +} diff --git a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/title-optimization/index.tsx b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/title-optimization/index.tsx index 39f4174238bd2..3d09305fe2303 100644 --- a/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/title-optimization/index.tsx +++ b/projects/plugins/jetpack/extensions/plugins/ai-assistant-plugin/components/title-optimization/index.tsx @@ -83,17 +83,17 @@ export default function TitleOptimization( { const SEOModalTitle = __( 'Improve title for SEO', 'jetpack' ); const modalTitle = isKeywordsFeatureAvailable ? SEOModalTitle : currentModalTitle; - const currentSidebarDescription = __( 'Use AI to optimize key details of your post.', 'jetpack' ); + const currentSidebarDescription = __( 'Based on your post content.', 'jetpack' ); const SEOSidebarDescription = __( - 'AI suggested titles based on your content and keywords for better SEO results.', + 'Based on your post content and SEO best practices.', 'jetpack' ); const sidebarDescription = isKeywordsFeatureAvailable ? SEOSidebarDescription : currentSidebarDescription; - const currentSidebarButtonLabel = __( 'Improve title', 'jetpack' ); - const SEOSidebarButtonLabel = __( 'Improve title for SEO', 'jetpack' ); + const currentSidebarButtonLabel = __( 'Generate title options', 'jetpack' ); + const SEOSidebarButtonLabel = __( 'Generate title options', 'jetpack' ); const sidebarButtonLabel = isKeywordsFeatureAvailable ? SEOSidebarButtonLabel : currentSidebarButtonLabel; @@ -228,12 +228,13 @@ export default function TitleOptimization( { return (
-

{ sidebarDescription }

+

{ sidebarDescription }

diff --git a/projects/plugins/jetpack/extensions/plugins/seo/index.js b/projects/plugins/jetpack/extensions/plugins/seo/index.js index 4ebdeb0185543..a3618e5a60fa0 100644 --- a/projects/plugins/jetpack/extensions/plugins/seo/index.js +++ b/projects/plugins/jetpack/extensions/plugins/seo/index.js @@ -3,6 +3,7 @@ import { useModuleStatus, isSimpleSite, isAtomicSite, + getJetpackExtensionAvailability, getRequiredPlan, } from '@automattic/jetpack-shared-extension-utils'; import { PanelBody, PanelRow } from '@wordpress/components'; @@ -12,7 +13,9 @@ import { PluginPrePublishPanel } from '@wordpress/edit-post'; import { store as editorStore } from '@wordpress/editor'; import { Fragment } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; +import { isBetaExtension } from '../../editor'; import JetpackPluginSidebar from '../../shared/jetpack-plugin-sidebar'; +import SeoAssistant from '../ai-assistant-plugin/components/seo-assistant'; import { SeoPlaceholder } from './components/placeholder'; import { SeoSkeletonLoader } from './components/skeleton-loader'; import UpsellNotice from './components/upsell'; @@ -24,6 +27,9 @@ import './editor.scss'; export const name = 'seo'; +const isSeoAssistantEnabled = + getJetpackExtensionAvailability( 'ai-seo-assistant' )?.available === true; + const Seo = () => { const { isLoadingModules, isChangingStatus, isModuleActive, changeStatus } = useModuleStatus( 'seo-tools' ); @@ -95,6 +101,15 @@ const Seo = () => { + { isSeoAssistantEnabled && isViewable && ( + + + + ) } diff --git a/projects/plugins/jetpack/extensions/shared/external-media/media-service/index.ts b/projects/plugins/jetpack/extensions/shared/external-media/media-service/index.ts index 8f7bbc9261397..f938fd65e0fe4 100644 --- a/projects/plugins/jetpack/extensions/shared/external-media/media-service/index.ts +++ b/projects/plugins/jetpack/extensions/shared/external-media/media-service/index.ts @@ -11,8 +11,8 @@ import { MediaSource } from './types'; // Pexels constants const PEXELS_ID = 'pexels'; -const PEXELS_NAME = __( 'Pexels Free Photos', 'jetpack' ); -const PEXELS_SEARCH_PLACEHOLDER = __( 'Search Pexels Free Photos', 'jetpack' ); +const PEXELS_NAME = __( 'Pexels free photos', 'jetpack' ); +const PEXELS_SEARCH_PLACEHOLDER = __( 'Search Pexels free photos', 'jetpack' ); const DEFAULT_PEXELS_SEARCH: MediaSearch = { per_page: 10, search: 'mountain', diff --git a/projects/plugins/jetpack/extensions/shared/external-media/sources/index.js b/projects/plugins/jetpack/extensions/shared/external-media/sources/index.js index f150a47ed609c..6c4014efe30f3 100644 --- a/projects/plugins/jetpack/extensions/shared/external-media/sources/index.js +++ b/projects/plugins/jetpack/extensions/shared/external-media/sources/index.js @@ -61,7 +61,7 @@ export const externalMediaSources = [ }, { id: SOURCE_PEXELS, - label: __( 'Pexels Free Photos', 'jetpack' ), + label: __( 'Pexels free photos', 'jetpack' ), icon: , keyword: 'pexels', }, diff --git a/projects/plugins/jetpack/extensions/shared/icons.js b/projects/plugins/jetpack/extensions/shared/icons.js index d5e4fe35ae27f..c0b40c80481f2 100644 --- a/projects/plugins/jetpack/extensions/shared/icons.js +++ b/projects/plugins/jetpack/extensions/shared/icons.js @@ -305,10 +305,9 @@ export const DescriptIcon = { src: ( ), diff --git a/projects/plugins/jetpack/extensions/shared/memberships/settings.js b/projects/plugins/jetpack/extensions/shared/memberships/settings.js index 387c50720714b..3b8118cf12c5c 100644 --- a/projects/plugins/jetpack/extensions/shared/memberships/settings.js +++ b/projects/plugins/jetpack/extensions/shared/memberships/settings.js @@ -306,7 +306,7 @@ export function NewsletterEmailDocumentSettings() { const postMetaUpdate = { ...postMeta, // Meta value is negated, "don't send", but toggle is truthy when enabled "send" - [ META_NAME_FOR_POST_DONT_EMAIL_TO_SUBS ]: ! value, + [ META_NAME_FOR_POST_DONT_EMAIL_TO_SUBS ]: value === 'post-only', }; setPostMeta( postMetaUpdate ); saveEditedEntityRecord( 'postType', postType, postId ); @@ -315,7 +315,7 @@ export function NewsletterEmailDocumentSettings() { const isSendEmailEnabled = useSelect( select => { const meta = select( editorStore ).getEditedPostAttribute( 'meta' ); // Meta value is negated, "don't send", but toggle is truthy when enabled "send" - return ! meta?.[ META_NAME_FOR_POST_DONT_EMAIL_TO_SUBS ]; + return meta?.[ META_NAME_FOR_POST_DONT_EMAIL_TO_SUBS ] ? 'post-only' : 'post-and-email'; } ); return ( @@ -333,8 +333,11 @@ export function NewsletterEmailDocumentSettings() { __nextHasNoMarginBottom={ true } __next40pxDefaultSize={ true } > - - + + ); } } diff --git a/projects/plugins/jetpack/extensions/shared/width-panel.js b/projects/plugins/jetpack/extensions/shared/width-panel.js index c6a91a784ed96..e6bcbaf837fb3 100644 --- a/projects/plugins/jetpack/extensions/shared/width-panel.js +++ b/projects/plugins/jetpack/extensions/shared/width-panel.js @@ -1,9 +1,9 @@ import { BaseControl, - Button, - ButtonGroup, PanelBody, __experimentalUnitControl as UnitControl, // eslint-disable-line @wordpress/no-unsafe-wp-apis + __experimentalToggleGroupControl as ToggleGroupControl, // eslint-disable-line @wordpress/no-unsafe-wp-apis + __experimentalToggleGroupControlOption as ToggleGroupControlOption, // eslint-disable-line @wordpress/no-unsafe-wp-apis } from '@wordpress/components'; import { useEffect, useState } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; @@ -66,28 +66,33 @@ export function WidthControl( { align, width, onChange, showLabel = true } ) { } ) } > { ! isAlignedLeftOrRight && ( - + { predefinedWidths.map( widthValue => { return ( - + label={ widthValue } + value={ widthValue } + /> ); } ) } - + ) } onChange( selectedWidth ) } onUnitChange={ selectedUnit => setUnit( selectedUnit ) } - size={ 'small' } units={ isAlignedLeftOrRight ? alignedWidthUnits : widthUnits } value={ width } /> diff --git a/projects/plugins/jetpack/extensions/shared/width-panel.scss b/projects/plugins/jetpack/extensions/shared/width-panel.scss index 7812641c5092d..60ea553234f7b 100644 --- a/projects/plugins/jetpack/extensions/shared/width-panel.scss +++ b/projects/plugins/jetpack/extensions/shared/width-panel.scss @@ -1,6 +1,12 @@ .jetpack-block-width-controls { display: flex; align-items: center; + gap: 0.5em; + + &> .components-base-control { + width: 65%; + margin-bottom: 8px; // To cater for toggle control hidden label + } .components-button-group { display: flex; @@ -10,6 +16,7 @@ &:not(.is-aligned) { .components-unit-control-wrapper { flex: 1; + flex-shrink: 0; } } } diff --git a/projects/plugins/jetpack/functions.global.php b/projects/plugins/jetpack/functions.global.php index 88ef11ae9a11e..e1e5924e7bdd4 100644 --- a/projects/plugins/jetpack/functions.global.php +++ b/projects/plugins/jetpack/functions.global.php @@ -17,7 +17,7 @@ // Disable direct access. if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } require_once __DIR__ . '/functions.is-mobile.php'; diff --git a/projects/plugins/jetpack/jetpack.php b/projects/plugins/jetpack/jetpack.php index db680f6040026..095e97494f88a 100644 --- a/projects/plugins/jetpack/jetpack.php +++ b/projects/plugins/jetpack/jetpack.php @@ -4,7 +4,7 @@ * Plugin URI: https://jetpack.com * Description: Security, performance, and marketing tools made by WordPress experts. Jetpack keeps your site protected so you can focus on more important things. * Author: Automattic - * Version: 14.2.1 + * Version: 14.3-a.3 * Author URI: https://jetpack.com * License: GPL2+ * Text Domain: jetpack @@ -34,7 +34,7 @@ define( 'JETPACK__MINIMUM_WP_VERSION', '6.6' ); define( 'JETPACK__MINIMUM_PHP_VERSION', '7.2' ); -define( 'JETPACK__VERSION', '14.2.1' ); +define( 'JETPACK__VERSION', '14.3-a.3' ); /** * Constant used to fetch the connection owner token diff --git a/projects/plugins/jetpack/json-endpoints/jetpack/class.jetpack-json-api-sync-endpoint.php b/projects/plugins/jetpack/json-endpoints/jetpack/class.jetpack-json-api-sync-endpoint.php index bf2704a61809f..895f5a6b5dbf1 100644 --- a/projects/plugins/jetpack/json-endpoints/jetpack/class.jetpack-json-api-sync-endpoint.php +++ b/projects/plugins/jetpack/json-endpoints/jetpack/class.jetpack-json-api-sync-endpoint.php @@ -68,7 +68,7 @@ protected function result() { if ( empty( $modules ) ) { $modules = null; } - return array( 'scheduled' => Actions::do_full_sync( $modules ) ); + return array( 'scheduled' => Actions::do_full_sync( $modules, 'jetpack_json_api_sync_endpoint' ) ); } /** diff --git a/projects/plugins/jetpack/modules/comments/comments.php b/projects/plugins/jetpack/modules/comments/comments.php index 2dbebb3596e2f..42e5844648821 100644 --- a/projects/plugins/jetpack/modules/comments/comments.php +++ b/projects/plugins/jetpack/modules/comments/comments.php @@ -723,7 +723,7 @@ public function retry_submit_comment_form_locally() { @@ -928,7 +928,7 @@ function backToComments() { menu_item_loop_markup = wp_parse_args( $menu_item_loop_markup, $instance->default_menu_item_loop_markup ); - } - - return $instance; + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return Automattic\Jetpack\Classic_Theme_Helper\Nova_Restaurant::init( $menu_item_loop_markup ); } /** @@ -108,519 +115,208 @@ public static function init( $menu_item_loop_markup = array() ) { * Hook into WordPress to create CPT and utilities if needed. */ public function __construct() { - if ( ! $this->site_supports_nova() ) { - return; - } - - $this->register_taxonomies(); - $this->register_post_types(); - add_action( 'admin_menu', array( $this, 'add_admin_menus' ) ); - add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_nova_styles' ) ); - add_action( 'admin_head', array( $this, 'set_custom_font_icon' ) ); - - // Always sort menu items correctly - add_action( 'parse_query', array( $this, 'sort_menu_item_queries_by_menu_order' ) ); - add_filter( 'posts_results', array( $this, 'sort_menu_item_queries_by_menu_taxonomy' ), 10, 2 ); - - add_action( 'wp_insert_post', array( $this, 'add_post_meta' ) ); - - $this->menu_item_loop_markup = $this->default_menu_item_loop_markup; + $this->new_instance = new Automattic\Jetpack\Classic_Theme_Helper\Nova_Restaurant(); + } - // Only output our Menu Item Loop Markup on a real blog view. Not feeds, XML-RPC, admin, etc. - add_filter( 'template_include', array( $this, 'setup_menu_item_loop_markup__in_filter' ) ); + /** + * Forward all method calls to the Nova_Restaurant class. + * + * @param string $name The name of the method. + * @param array $arguments The arguments to pass to the method. + * + * @throws Exception If the method is not found. + */ + public function __call( $name, $arguments ) { + if ( method_exists( $this->new_instance, $name ) ) { + return call_user_func_array( array( $this->new_instance, $name ), $arguments ); + } else { + // Handle cases where the method is not found + throw new Exception( sprintf( 'Undefined method: %s', esc_html( $name ) ) ); + } + } - add_filter( 'enter_title_here', array( $this, 'change_default_title' ) ); - add_filter( 'post_updated_messages', array( $this, 'updated_messages' ) ); - add_filter( 'dashboard_glance_items', array( $this, 'add_to_dashboard' ) ); + /** + * Forward all static method calls to the Nova_Restaurant class. + * + * @param string $name The name of the method. + * @param array $arguments The arguments to pass to the method. + * + * @throws Exception If the method is not found. + */ + public static function __callStatic( $name, $arguments ) { + if ( method_exists( Automattic\Jetpack\Classic_Theme_Helper\Nova_Restaurant::class, $name ) ) { + return call_user_func_array( array( Automattic\Jetpack\Classic_Theme_Helper\Nova_Restaurant::class, $name ), $arguments ); + } else { + // Handle cases where the method is not found + throw new Exception( sprintf( 'Undefined static method: %s', esc_html( $name ) ) ); + } } /** * Should this Custom Post Type be made available? * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @return bool */ public function site_supports_nova() { - // If we're on WordPress.com, and it has the menu site vertical. - if ( function_exists( 'site_vertical' ) && 'nova_menu' === site_vertical() ) { - return true; - } - - // Else, if the current theme requests it. - if ( current_theme_supports( self::MENU_ITEM_POST_TYPE ) ) { - return true; - } - - // Otherwise, say no unless something wants to filter us to say yes. - /** - * Allow something else to hook in and enable this CPT. - * - * @module custom-content-types - * - * @since 2.6.0 - * - * @param bool false Whether or not to enable this CPT. - * @param string $var The slug for this CPT. - */ - return (bool) apply_filters( 'jetpack_enable_cpt', false, self::MENU_ITEM_POST_TYPE ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return $this->new_instance->site_supports_nova(); } /* Setup */ /** * Register Taxonomies and Post Type + * + * @deprecated 14.3 Moved to Classic Theme Helper package. */ public function register_taxonomies() { - if ( ! taxonomy_exists( self::MENU_ITEM_LABEL_TAX ) ) { - register_taxonomy( - self::MENU_ITEM_LABEL_TAX, - self::MENU_ITEM_POST_TYPE, - array( - 'labels' => array( - /* translators: this is about a food menu */ - 'name' => __( 'Menu Item Labels', 'jetpack' ), - /* translators: this is about a food menu */ - 'singular_name' => __( 'Menu Item Label', 'jetpack' ), - /* translators: this is about a food menu */ - 'search_items' => __( 'Search Menu Item Labels', 'jetpack' ), - 'popular_items' => __( 'Popular Labels', 'jetpack' ), - /* translators: this is about a food menu */ - 'all_items' => __( 'All Menu Item Labels', 'jetpack' ), - /* translators: this is about a food menu */ - 'edit_item' => __( 'Edit Menu Item Label', 'jetpack' ), - /* translators: this is about a food menu */ - 'view_item' => __( 'View Menu Item Label', 'jetpack' ), - /* translators: this is about a food menu */ - 'update_item' => __( 'Update Menu Item Label', 'jetpack' ), - /* translators: this is about a food menu */ - 'add_new_item' => __( 'Add New Menu Item Label', 'jetpack' ), - /* translators: this is about a food menu */ - 'new_item_name' => __( 'New Menu Item Label Name', 'jetpack' ), - 'separate_items_with_commas' => __( 'For example, spicy, favorite, etc.
Separate Labels with commas', 'jetpack' ), - 'add_or_remove_items' => __( 'Add or remove Labels', 'jetpack' ), - 'choose_from_most_used' => __( 'Choose from the most used Labels', 'jetpack' ), - 'items_list_navigation' => __( 'Menu item label list navigation', 'jetpack' ), - 'items_list' => __( 'Menu item labels list', 'jetpack' ), - ), - 'no_tagcloud' => __( 'No Labels found', 'jetpack' ), - 'hierarchical' => false, - ) - ); - } - - if ( ! taxonomy_exists( self::MENU_TAX ) ) { - register_taxonomy( - self::MENU_TAX, - self::MENU_ITEM_POST_TYPE, - array( - 'labels' => array( - /* translators: this is about a food menu */ - 'name' => __( 'Menu Sections', 'jetpack' ), - /* translators: this is about a food menu */ - 'singular_name' => __( 'Menu Section', 'jetpack' ), - /* translators: this is about a food menu */ - 'search_items' => __( 'Search Menu Sections', 'jetpack' ), - /* translators: this is about a food menu */ - 'all_items' => __( 'All Menu Sections', 'jetpack' ), - /* translators: this is about a food menu */ - 'parent_item' => __( 'Parent Menu Section', 'jetpack' ), - /* translators: this is about a food menu */ - 'parent_item_colon' => __( 'Parent Menu Section:', 'jetpack' ), - /* translators: this is about a food menu */ - 'edit_item' => __( 'Edit Menu Section', 'jetpack' ), - /* translators: this is about a food menu */ - 'view_item' => __( 'View Menu Section', 'jetpack' ), - /* translators: this is about a food menu */ - 'update_item' => __( 'Update Menu Section', 'jetpack' ), - /* translators: this is about a food menu */ - 'add_new_item' => __( 'Add New Menu Section', 'jetpack' ), - /* translators: this is about a food menu */ - 'new_item_name' => __( 'New Menu Sections Name', 'jetpack' ), - 'items_list_navigation' => __( 'Menu section list navigation', 'jetpack' ), - 'items_list' => __( 'Menu section list', 'jetpack' ), - ), - 'rewrite' => array( - 'slug' => 'menu', - 'with_front' => false, - 'hierarchical' => true, - ), - 'hierarchical' => true, - 'show_tagcloud' => false, - 'query_var' => 'menu', - ) - ); - } + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->register_taxonomies(); } /** * Register our Post Type. + * + * @deprecated 14.3 Moved to Classic Theme Helper package. */ public function register_post_types() { - if ( post_type_exists( self::MENU_ITEM_POST_TYPE ) ) { - return; - } - - register_post_type( - self::MENU_ITEM_POST_TYPE, - array( - 'description' => __( "Items on your restaurant's menu", 'jetpack' ), - - 'labels' => array( - /* translators: this is about a food menu */ - 'name' => __( 'Menu Items', 'jetpack' ), - /* translators: this is about a food menu */ - 'singular_name' => __( 'Menu Item', 'jetpack' ), - /* translators: this is about a food menu */ - 'menu_name' => __( 'Food Menus', 'jetpack' ), - /* translators: this is about a food menu */ - 'all_items' => __( 'Menu Items', 'jetpack' ), - /* translators: this is about a food menu */ - 'add_new' => __( 'Add One Item', 'jetpack' ), - /* translators: this is about a food menu */ - 'add_new_item' => __( 'Add Menu Item', 'jetpack' ), - /* translators: this is about a food menu */ - 'edit_item' => __( 'Edit Menu Item', 'jetpack' ), - /* translators: this is about a food menu */ - 'new_item' => __( 'New Menu Item', 'jetpack' ), - /* translators: this is about a food menu */ - 'view_item' => __( 'View Menu Item', 'jetpack' ), - /* translators: this is about a food menu */ - 'search_items' => __( 'Search Menu Items', 'jetpack' ), - /* translators: this is about a food menu */ - 'not_found' => __( 'No Menu Items found', 'jetpack' ), - /* translators: this is about a food menu */ - 'not_found_in_trash' => __( 'No Menu Items found in Trash', 'jetpack' ), - 'filter_items_list' => __( 'Filter menu items list', 'jetpack' ), - 'items_list_navigation' => __( 'Menu item list navigation', 'jetpack' ), - 'items_list' => __( 'Menu items list', 'jetpack' ), - ), - 'supports' => array( - 'title', - 'editor', - 'thumbnail', - 'excerpt', - ), - 'rewrite' => array( - 'slug' => 'item', - 'with_front' => false, - 'feeds' => false, - 'pages' => false, - ), - 'register_meta_box_cb' => array( $this, 'register_menu_item_meta_boxes' ), - - 'public' => true, - 'show_ui' => true, // set to false to replace with custom UI - 'menu_position' => 20, // below Pages - 'capability_type' => 'page', - 'map_meta_cap' => true, - 'has_archive' => false, - 'query_var' => 'item', - ) - ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->register_post_types(); } /** * Update messages for the Menu Item admin. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param array $messages Existing post update messages. * * @return array $messages Updated post update messages. */ public function updated_messages( $messages ) { - global $post; - - $messages[ self::MENU_ITEM_POST_TYPE ] = array( - 0 => '', // Unused. Messages start at index 1. - 1 => sprintf( - /* translators: this is about a food menu. Placeholder is a link to the food menu. */ - __( 'Menu item updated.
View item', 'jetpack' ), - esc_url( get_permalink( $post->ID ) ) - ), - 2 => esc_html__( 'Custom field updated.', 'jetpack' ), - 3 => esc_html__( 'Custom field deleted.', 'jetpack' ), - /* translators: this is about a food menu */ - 4 => esc_html__( 'Menu item updated.', 'jetpack' ), - 5 => isset( $_GET['revision'] ) // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Copying core message handling. - ? sprintf( - /* translators: %s: date and time of the revision */ - esc_html__( 'Menu item restored to revision from %s', 'jetpack' ), - wp_post_revision_title( (int) $_GET['revision'], false ) // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- Copying core message handling. - ) - : false, - 6 => sprintf( - /* translators: this is about a food menu. Placeholder is a link to the food menu. */ - __( 'Menu item published. View item', 'jetpack' ), - esc_url( get_permalink( $post->ID ) ) - ), - /* translators: this is about a food menu */ - 7 => esc_html__( 'Menu item saved.', 'jetpack' ), - 8 => sprintf( - /* translators: this is about a food menu */ - __( 'Menu item submitted. Preview item', 'jetpack' ), - esc_url( add_query_arg( 'preview', 'true', get_permalink( $post->ID ) ) ) - ), - 9 => sprintf( - /* translators: this is about a food menu. 1. Publish box date format, see https://php.net/date 2. link to the food menu. */ - __( 'Menu item scheduled for: %1$s. Preview item', 'jetpack' ), - /* translators: Publish box date format, see https://php.net/date */ - date_i18n( __( 'M j, Y @ G:i', 'jetpack' ), strtotime( $post->post_date ) ), - esc_url( get_permalink( $post->ID ) ) - ), - 10 => sprintf( - /* translators: this is about a food menu. Placeholder is a link to the food menu. */ - __( 'Menu item draft updated. Preview item', 'jetpack' ), - esc_url( add_query_arg( 'preview', 'true', get_permalink( $post->ID ) ) ) - ), - ); - - return $messages; + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return $this->new_instance->updated_messages( $messages ); } /** * Nova styles and scripts. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param string $hook Page hook. * * @return void */ public function enqueue_nova_styles( $hook ) { - global $post_type; - $pages = array( 'edit.php', 'post.php', 'post-new.php' ); - - if ( in_array( $hook, $pages, true ) && $post_type === self::MENU_ITEM_POST_TYPE ) { - wp_enqueue_style( 'nova-style', plugins_url( 'css/nova.css', __FILE__ ), array(), $this->version ); - } - - wp_enqueue_style( 'nova-font', plugins_url( 'css/nova-font.css', __FILE__ ), array(), $this->version ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->enqueue_nova_styles( $hook ); } /** * Change ‘Enter Title Here’ text for the Menu Item. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param string $title Default title placeholder text. * * @return string */ public function change_default_title( $title ) { - if ( self::MENU_ITEM_POST_TYPE === get_post_type() ) { - /* translators: this is about a food menu */ - $title = esc_html__( "Enter the menu item's name here", 'jetpack' ); - } - - return $title; + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return $this->new_instance->change_default_title( $title ); } /** * Add to Dashboard At A Glance * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @return void */ public function add_to_dashboard() { - $number_menu_items = wp_count_posts( self::MENU_ITEM_POST_TYPE ); - - $roles = new Roles(); - if ( current_user_can( $roles->translate_role_to_cap( 'administrator' ) ) ) { - $number_menu_items_published = sprintf( - '%2$s', - esc_url( - get_admin_url( - get_current_blog_id(), - 'edit.php?post_type=' . self::MENU_ITEM_POST_TYPE - ) - ), - sprintf( - /* translators: Placehoder is a number of items. */ - _n( - '%1$d Food Menu Item', - '%1$d Food Menu Items', - (int) $number_menu_items->publish, - 'jetpack' - ), - number_format_i18n( $number_menu_items->publish ) - ) - ); - } else { - $number_menu_items_published = sprintf( - '%1$s', - sprintf( - /* translators: Placehoder is a number of items. */ - _n( - '%1$d Food Menu Item', - '%1$d Food Menu Items', - (int) $number_menu_items->publish, - 'jetpack' - ), - number_format_i18n( $number_menu_items->publish ) - ) - ); - } - - echo '
  • ' . $number_menu_items_published . '
  • '; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- we escape things above. + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->add_to_dashboard(); } /** * If the WP query for our menu items. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param WP_Query $query WP Query. * * @return bool */ public function is_menu_item_query( $query ) { - if ( - ( isset( $query->query_vars['taxonomy'] ) && self::MENU_TAX === $query->query_vars['taxonomy'] ) - || - ( isset( $query->query_vars['post_type'] ) && self::MENU_ITEM_POST_TYPE === $query->query_vars['post_type'] ) - ) { - return true; - } - - return false; + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return $this->new_instance->is_menu_item_query( $query ); } /** * Custom sort the menu item queries by menu order. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param WP_Query $query WP Query. * * @return void */ public function sort_menu_item_queries_by_menu_order( $query ) { - if ( ! $this->is_menu_item_query( $query ) ) { - return; - } - - $query->query_vars['orderby'] = 'menu_order'; - $query->query_vars['order'] = 'ASC'; - - // For now, just turn off paging so we can sort by taxonmy later - // If we want paging in the future, we'll need to add the taxonomy sort here (or at least before the DB query is made) - $query->query_vars['posts_per_page'] = -1; + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->sort_menu_item_queries_by_menu_order( $query ); } /** * Custom sort the menu item queries by menu taxonomies. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param WP_Post[] $posts Array of post objects. * @param WP_Query $query The WP_Query instance. * * @return WP_Post[] */ public function sort_menu_item_queries_by_menu_taxonomy( $posts, $query ) { - if ( ! $posts ) { - return $posts; - } - - if ( ! $this->is_menu_item_query( $query ) ) { - return $posts; - } - - $grouped_by_term = array(); - - foreach ( $posts as $post ) { - $term = $this->get_menu_item_menu_leaf( $post->ID ); - if ( ! $term || is_wp_error( $term ) ) { - $term_id = 0; - } else { - $term_id = $term->term_id; - } - - if ( ! isset( $grouped_by_term[ "$term_id" ] ) ) { - $grouped_by_term[ "$term_id" ] = array(); - } - - $grouped_by_term[ "$term_id" ][] = $post; - } - - $term_order = get_option( 'nova_menu_order', array() ); - - $return = array(); - foreach ( $term_order as $term_id ) { - if ( isset( $grouped_by_term[ "$term_id" ] ) ) { - $return = array_merge( $return, $grouped_by_term[ "$term_id" ] ); - unset( $grouped_by_term[ "$term_id" ] ); - } - } - - foreach ( $grouped_by_term as $term_id => $posts ) { - $return = array_merge( $return, $posts ); - } - - return $return; + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return $this->new_instance->sort_menu_item_queries_by_menu_taxonomy( $posts, $query ); } /** * Add new "Add many items" submenu, custom colunmns, and custom bulk actions. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @return void */ public function add_admin_menus() { - $hook = add_submenu_page( - 'edit.php?post_type=' . self::MENU_ITEM_POST_TYPE, - __( 'Add Many Items', 'jetpack' ), - __( 'Add Many Items', 'jetpack' ), - 'edit_pages', - 'add_many_nova_items', - array( $this, 'add_many_new_items_page' ) - ); - - add_action( "load-$hook", array( $this, 'add_many_new_items_page_load' ) ); - - add_action( 'current_screen', array( $this, 'current_screen_load' ) ); - - /* - * Adjust 'Add Many Items' submenu position - * We're making changes to the menu global, but no other choice unfortunately. - * phpcs:disable WordPress.WP.GlobalVariablesOverride.Prohibited - */ - if ( isset( $GLOBALS['submenu'][ 'edit.php?post_type=' . self::MENU_ITEM_POST_TYPE ] ) ) { - $submenu_item = array_pop( $GLOBALS['submenu'][ 'edit.php?post_type=' . self::MENU_ITEM_POST_TYPE ] ); - $GLOBALS['submenu'][ 'edit.php?post_type=' . self::MENU_ITEM_POST_TYPE ][11] = $submenu_item; - ksort( $GLOBALS['submenu'][ 'edit.php?post_type=' . self::MENU_ITEM_POST_TYPE ] ); - } - // phpcs:enable WordPress.WP.GlobalVariablesOverride.Prohibited - - $this->setup_menu_item_columns(); - - wp_register_script( - 'nova-menu-checkboxes', - Assets::get_file_url_for_environment( - '_inc/build/custom-post-types/js/menu-checkboxes.min.js', - 'modules/custom-post-types/js/menu-checkboxes.js' - ), - array(), - $this->version, - true - ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->add_admin_menus(); } /** * Custom Nova Icon CSS * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @return void */ public function set_custom_font_icon() { - ?> - - new_instance->set_custom_font_icon(); } /** * Load Nova menu management tools on the CPT admin screen. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @return void */ public function current_screen_load() { - $screen = get_current_screen(); - if ( 'edit-nova_menu_item' !== $screen->id ) { - return; - } - - $this->edit_menu_items_page_load(); - add_filter( 'admin_notices', array( $this, 'admin_notices' ) ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->current_screen_load(); } /* Edit Items List */ @@ -628,492 +324,131 @@ public function current_screen_load() { /** * Display a notice in wp-admin after items have been changed. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @return void */ public function admin_notices() { - if ( isset( $_GET['nova_reordered'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- this is only displaying a message with no dynamic values. - printf( - '

    %s

    ', - /* translators: this is about a food menu */ - esc_html__( 'Menu Items re-ordered.', 'jetpack' ) - ); - } + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->admin_notices(); } /** * Do not allow sorting by title. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param array $columns An array of sortable columns. * * @return array $columns. */ public function no_title_sorting( $columns ) { - if ( isset( $columns['title'] ) ) { - unset( $columns['title'] ); - } - return $columns; + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return $this->new_instance->no_title_sorting( $columns ); } /** * Set up custom columns for our Nova menu. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @return void */ public function setup_menu_item_columns() { - add_filter( sprintf( 'manage_edit-%s_sortable_columns', self::MENU_ITEM_POST_TYPE ), array( $this, 'no_title_sorting' ) ); - add_filter( sprintf( 'manage_%s_posts_columns', self::MENU_ITEM_POST_TYPE ), array( $this, 'menu_item_columns' ) ); - - add_action( sprintf( 'manage_%s_posts_custom_column', self::MENU_ITEM_POST_TYPE ), array( $this, 'menu_item_column_callback' ), 10, 2 ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->setup_menu_item_columns(); } /** * Add custom columns to the Nova menu item list. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param array $columns An array of columns. * * @return array $columns. */ public function menu_item_columns( $columns ) { - unset( $columns['date'], $columns['likes'] ); - - $columns['thumbnail'] = __( 'Thumbnail', 'jetpack' ); - $columns['labels'] = __( 'Labels', 'jetpack' ); - $columns['price'] = __( 'Price', 'jetpack' ); - $columns['order'] = __( 'Order', 'jetpack' ); - - return $columns; + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return $this->new_instance->menu_item_columns( $columns ); } /** * Display custom data in each new custom column we created. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param string $column The name of the column to display. * @param int $post_id The current post ID. * * @return void */ public function menu_item_column_callback( $column, $post_id ) { - $screen = get_current_screen(); - - switch ( $column ) { - case 'thumbnail': - echo get_the_post_thumbnail( $post_id, array( 50, 50 ) ); - break; - case 'labels': - $this->list_admin_labels( $post_id ); - break; - case 'price': - $this->display_price( $post_id ); - break; - case 'order': - $url = admin_url( $screen->parent_file ); - - $up_url = add_query_arg( - array( - 'action' => 'move-item-up', - 'post_id' => (int) $post_id, - ), - wp_nonce_url( $url, 'nova_move_item_up_' . $post_id ) - ); - - $down_url = add_query_arg( - array( - 'action' => 'move-item-down', - 'post_id' => (int) $post_id, - ), - wp_nonce_url( $url, 'nova_move_item_down_' . $post_id ) - ); - $menu_item = get_post( $post_id ); - $this->get_menu_by_post_id( $post_id ); - $term_id = $this->get_menu_by_post_id( $post_id ); - if ( $term_id ) { - $term_id = $term_id->term_id; - } - ?> - - - - -     — up -
    -     — down -
    - new_instance->menu_item_column_callback( $column, $post_id ); } /** * Get menu item by post ID. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param int $post_id Post ID. * * @return bool|WP_Term */ public function get_menu_by_post_id( $post_id = null ) { - if ( ! $post_id ) { - return false; - } - - $terms = get_the_terms( $post_id, self::MENU_TAX ); - - if ( ! is_array( $terms ) ) { - return false; - } - - return array_pop( $terms ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return $this->new_instance->get_menu_by_post_id( $post_id ); } /** * Fires on a menu edit page. We might have drag-n-drop reordered + * + * @deprecated 14.3 Moved to Classic Theme Helper package. */ public function maybe_reorder_menu_items() { - // make sure we clicked our button. - if ( - empty( $_REQUEST['menu_reorder_submit'] ) - || __( 'Save New Order', 'jetpack' ) !== $_REQUEST['menu_reorder_submit'] - ) { - return; - } - - // make sure we have the nonce. - if ( - empty( $_REQUEST['drag-drop-reorder'] ) - || ! wp_verify_nonce( sanitize_key( $_REQUEST['drag-drop-reorder'] ), 'drag-drop-reorder' ) - ) { - return; - } - - // make sure we have data to work with. - if ( empty( $_REQUEST['nova_menu_term'] ) || empty( $_REQUEST['nova_order'] ) ) { - return; - } - - $term_pairs = array_map( 'absint', $_REQUEST['nova_menu_term'] ); - $order_pairs = array_map( 'absint', $_REQUEST['nova_order'] ); - - foreach ( $order_pairs as $id => $menu_order ) { - $id = absint( $id ); - unset( $order_pairs[ $id ] ); - if ( $id < 0 ) { - continue; - } - - $post = get_post( $id ); - if ( ! $post ) { - continue; - } - - // save a write if the order hasn't changed - if ( (int) $menu_order !== $post->menu_order ) { - $args = array( - 'ID' => $id, - 'menu_order' => $menu_order, - ); - wp_update_post( $args ); - } - - // save a write if the term hasn't changed - if ( (int) $term_pairs[ $id ] !== $this->get_menu_by_post_id( $id )->term_id ) { - wp_set_object_terms( $id, $term_pairs[ $id ], self::MENU_TAX ); - } - } - - $redirect = add_query_arg( - array( - 'post_type' => self::MENU_ITEM_POST_TYPE, - 'nova_reordered' => '1', - ), - admin_url( 'edit.php' ) - ); - wp_safe_redirect( $redirect ); - exit; + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->maybe_reorder_menu_items(); } /** * Handle changes to menu items. * (process actions, update data, enqueue necessary scripts). * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @return void */ public function edit_menu_items_page_load() { - if ( isset( $_GET['action'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- we process the form and check nonces in handle_menu_item_actions. - $this->handle_menu_item_actions(); - } - - $this->maybe_reorder_menu_items(); - - wp_enqueue_script( - 'nova-drag-drop', - Assets::get_file_url_for_environment( - '_inc/build/custom-post-types/js/nova-drag-drop.min.js', - 'modules/custom-post-types/js/nova-drag-drop.js' - ), - array( 'jquery', 'jquery-ui-sortable' ), - $this->version, - true - ); - - wp_localize_script( - 'nova-drag-drop', - '_novaDragDrop', - array( - 'nonce' => wp_create_nonce( 'drag-drop-reorder' ), - 'nonceName' => 'drag-drop-reorder', - 'reorder' => __( 'Save New Order', 'jetpack' ), - 'reorderName' => 'menu_reorder_submit', - ) - ); - add_action( 'the_post', array( $this, 'show_menu_titles_in_menu_item_list' ) ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->edit_menu_items_page_load(); } /** * Process actions to move menu items around. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @return void */ public function handle_menu_item_actions() { - if ( isset( $_GET['action'] ) ) { - $action = (string) wp_unslash( $_GET['action'] ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended,WordPress.Security.ValidatedSanitizedInput.InputNotSanitized -- we check for nonces below, and check against specific strings in switch statement. - } else { - return; - } - - switch ( $action ) { - case 'move-item-up': - case 'move-item-down': - $reorder = false; - - if ( empty( $_GET['post_id'] ) ) { - break; - } - - $post_id = (int) $_GET['post_id']; - - $term = $this->get_menu_item_menu_leaf( $post_id ); - - // Get all posts in that term. - $query = new WP_Query( - array( - 'taxonomy' => self::MENU_TAX, - 'term' => $term->slug, - ) - ); - - $order = array(); - foreach ( $query->posts as $post ) { - $order[] = $post->ID; - } - - if ( 'move-item-up' === $action ) { - check_admin_referer( 'nova_move_item_up_' . $post_id ); - - $first_post_id = $order[0]; - if ( $post_id === $first_post_id ) { - break; - } - - foreach ( $order as $menu_order => $order_post_id ) { - if ( $post_id !== $order_post_id ) { - continue; - } - - $swap_post_id = $order[ $menu_order - 1 ]; - $order[ $menu_order - 1 ] = $post_id; - $order[ $menu_order ] = $swap_post_id; - - $reorder = true; - break; - } - } else { - check_admin_referer( 'nova_move_item_down_' . $post_id ); - - $last_post_id = end( $order ); - if ( $post_id === $last_post_id ) { - break; - } - - foreach ( $order as $menu_order => $order_post_id ) { - if ( $post_id !== $order_post_id ) { - continue; - } - - $swap_post_id = $order[ $menu_order + 1 ]; - $order[ $menu_order + 1 ] = $post_id; - $order[ $menu_order ] = $swap_post_id; - - $reorder = true; - } - } - - if ( $reorder ) { - foreach ( $order as $menu_order => $id ) { - wp_update_post( compact( 'id', 'menu_order' ) ); - } - } - - break; - case 'move-menu-up': - case 'move-menu-down': - $reorder = false; - - if ( empty( $_GET['term_id'] ) ) { - break; - } - - $term_id = (int) $_GET['term_id']; - - $terms = $this->get_menus(); - - $order = array(); - foreach ( $terms as $term ) { - $order[] = $term->term_id; - } - - if ( 'move-menu-up' === $action ) { - check_admin_referer( 'nova_move_menu_up_' . $term_id ); - - $first_term_id = $order[0]; - if ( $term_id === $first_term_id ) { - break; - } - - foreach ( $order as $menu_order => $order_term_id ) { - if ( $term_id !== $order_term_id ) { - continue; - } - - $swap_term_id = $order[ $menu_order - 1 ]; - $order[ $menu_order - 1 ] = $term_id; - $order[ $menu_order ] = $swap_term_id; - - $reorder = true; - break; - } - } else { - check_admin_referer( 'nova_move_menu_down_' . $term_id ); - - $last_term_id = end( $order ); - if ( $term_id === $last_term_id ) { - break; - } - - foreach ( $order as $menu_order => $order_term_id ) { - if ( $term_id !== $order_term_id ) { - continue; - } - - $swap_term_id = $order[ $menu_order + 1 ]; - $order[ $menu_order + 1 ] = $term_id; - $order[ $menu_order ] = $swap_term_id; - - $reorder = true; - } - } - - if ( $reorder ) { - update_option( 'nova_menu_order', $order ); - } - - break; - default: - return; - } - - $redirect = add_query_arg( - array( - 'post_type' => self::MENU_ITEM_POST_TYPE, - 'nova_reordered' => '1', - ), - admin_url( 'edit.php' ) - ); - wp_safe_redirect( $redirect ); - exit; + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->handle_menu_item_actions(); } /** * Add menu title rows to the list table * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param WP_Post $post The Post object. * * @return void */ public function show_menu_titles_in_menu_item_list( $post ) { - global $wp_list_table; - - static $last_term_id = false; - - $term = $this->get_menu_item_menu_leaf( $post->ID ); - - $term_id = $term instanceof WP_Term ? $term->term_id : null; - - if ( false !== $last_term_id && $last_term_id === $term_id ) { - return; - } - - if ( $term_id === null ) { - $last_term_id = null; - $term_name = ''; - $parent_count = 0; - } else { - $last_term_id = $term->term_id; - $term_name = $term->name; - $parent_count = 0; - $current_term = $term; - while ( $current_term->parent ) { - ++$parent_count; - $current_term = get_term( $current_term->parent, self::MENU_TAX ); - } - } - - $non_order_column_count = $wp_list_table->get_column_count() - 1; - - $screen = get_current_screen(); - - $url = admin_url( $screen->parent_file ); - - $up_url = add_query_arg( - array( - 'action' => 'move-menu-up', - 'term_id' => (int) $term_id, - ), - wp_nonce_url( $url, 'nova_move_menu_up_' . $term_id ) - ); - - $down_url = add_query_arg( - array( - 'action' => 'move-menu-down', - 'term_id' => (int) $term_id, - ), - wp_nonce_url( $url, 'nova_move_menu_down_' . $term_id ) - ); - - ?> - - -

    - ', '', $term ); - - } else { - esc_html_e( 'Uncategorized', 'jetpack' ); - } - ?> -

    - - - - -
    - - - - - new_instance->show_menu_titles_in_menu_item_list( $post ); } /* Edit Many Items */ @@ -1122,205 +457,49 @@ public function show_menu_titles_in_menu_item_list( $post ) { * Handle form submissions that aim to add many menu items at once. * (process posted data and enqueue necessary script). * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @return void */ public function add_many_new_items_page_load() { - if ( - isset( $_SERVER['REQUEST_METHOD'] ) - && 'POST' === strtoupper( sanitize_text_field( wp_unslash( $_SERVER['REQUEST_METHOD'] ) ) ) - ) { - $this->process_form_request(); - exit; - } - - $this->enqueue_many_items_scripts(); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->add_many_new_items_page_load(); } /** * Enqueue script to create many items at once. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @return void */ public function enqueue_many_items_scripts() { - wp_enqueue_script( - 'nova-many-items', - Assets::get_file_url_for_environment( - '_inc/build/custom-post-types/js/many-items.min.js', - 'modules/custom-post-types/js/many-items.js' - ), - array(), - $this->version, - true - ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->enqueue_many_items_scripts(); } /** * Process form request to create many items at once. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @return void */ public function process_form_request() { - if ( ! isset( $_POST['nova_title'] ) || ! is_array( $_POST['nova_title'] ) ) { - return; - } - - $is_ajax = ! empty( $_POST['ajax'] ); - - if ( $is_ajax ) { - check_ajax_referer( 'nova_many_items' ); - } else { - check_admin_referer( 'nova_many_items' ); - } - - /* - * $_POST is already slashed - * phpcs:disable WordPress.Security.ValidatedSanitizedInput.MissingUnslash - */ - foreach ( array_keys( $_POST['nova_title'] ) as $key ) : // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitized -- we sanitize below. - $post_details = array( - 'post_status' => 'publish', - 'post_type' => self::MENU_ITEM_POST_TYPE, - 'post_content' => ! empty( $_POST['nova_content'] ) && ! empty( $_POST['nova_content'][ $key ] ) - ? sanitize_text_field( $_POST['nova_content'][ $key ] ) - : '', - 'post_title' => isset( $_POST['nova_title'][ $key ] ) - ? sanitize_title( $_POST['nova_title'][ $key ] ) - : '', - 'tax_input' => array( - self::MENU_ITEM_LABEL_TAX => isset( $_POST['nova_labels'][ $key ] ) - ? sanitize_meta( self::MENU_ITEM_LABEL_TAX, $_POST['nova_labels'][ $key ], 'term' ) - : null, - self::MENU_TAX => isset( $_POST['nova_menu_tax'] ) - ? sanitize_meta( self::MENU_TAX, $_POST['nova_menu_tax'], 'term' ) - : null, - ), - ); - - $post_id = wp_insert_post( $post_details ); - if ( ! $post_id || is_wp_error( $post_id ) ) { - continue; - } - - $this->set_price( - $post_id, - isset( $_POST['nova_price'][ $key ] ) - ? sanitize_meta( 'nova_price', $_POST['nova_price'][ $key ], 'post' ) - : '' - ); - // phpcs:enable WordPress.Security.ValidatedSanitizedInput.MissingUnslash - - if ( $is_ajax ) : - $post = get_post( $post_id ); - $GLOBALS['post'] = $post; // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited - setup_postdata( $post ); - - ?> - - display_price(); ?> - list_labels( $post_id ); ?> - - new_instance->process_form_request(); } /** * Admin page contents for adding many menu items at once. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @return void */ public function add_many_new_items_page() { - ?> -
    -

    - -

    - TAB key on your keyboard to move between colums and the ENTER or RETURN key to save each row and move on to the next.', 'jetpack' ), - array( - 'kbd' => array(), - ) - ); - ?> -

    - -
    -

    -

    - 'nova-menu-tax', - 'name' => 'nova_menu_tax', - 'taxonomy' => self::MENU_TAX, - 'hide_empty' => false, - 'hierarchical' => true, - ) - ); - ?> -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - spicy, favorite, etc. Separate Labels with commas', 'jetpack' ), - array( - 'small' => array(), - 'em' => array(), - ) - ); - ?> -
    -
    -
    - -

    - - -

    -
    -
    - new_instance->add_many_new_items_page(); } /* Edit One Item */ @@ -1329,51 +508,39 @@ public function add_many_new_items_page() { * Create admin meta box to save price for a menu item, * and add script to add extra checkboxes to the UI. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @return void */ public function register_menu_item_meta_boxes() { - wp_enqueue_script( 'nova-menu-checkboxes' ); - - add_meta_box( - 'menu_item_price', - __( 'Price', 'jetpack' ), - array( $this, 'menu_item_price_meta_box' ), - null, - 'side', - 'high' - ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->register_menu_item_meta_boxes(); } /** * Meta box to edit the price of a menu item. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param WP_Post $post The post object. * * @return void */ public function menu_item_price_meta_box( $post ) { - printf( - '', - (int) $post->ID, - esc_html__( 'Price', 'jetpack' ), - esc_attr( $this->get_price( (int) $post->ID ) ) - ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->menu_item_price_meta_box( $post ); } /** * Save the price of a menu item. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param int $post_id Post ID. */ public function add_post_meta( $post_id ) { - if ( ! isset( $_POST['nova_price'][ $post_id ] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing -- nonce handling happens via core, since we hook into wp_insert_post. - return; - } - - $this->set_price( - $post_id, - sanitize_meta( 'nova_price', wp_unslash( $_POST['nova_price'][ $post_id ] ), 'post' ) // phpcs:ignore WordPress.Security.NonceVerification.Missing -- nonce handling happens via core, since we hook into wp_insert_post. - ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->add_post_meta( $post_id ); } /* Data */ @@ -1381,152 +548,100 @@ public function add_post_meta( $post_id ) { /** * Get ordered array of menu items. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param array $args Optional argumments. * * @return array */ public function get_menus( $args = array() ) { - $args = wp_parse_args( - $args, - array( - 'hide_empty' => false, - ) - ); - $args['taxonomy'] = self::MENU_TAX; - - $terms = get_terms( $args ); - if ( ! $terms || is_wp_error( $terms ) ) { - return array(); - } - - $terms_by_id = array(); - foreach ( $terms as $term ) { - $terms_by_id[ "{$term->term_id}" ] = $term; - } - - $term_order = get_option( 'nova_menu_order', array() ); - - $return = array(); - foreach ( $term_order as $term_id ) { - if ( isset( $terms_by_id[ "$term_id" ] ) ) { - $return[] = $terms_by_id[ "$term_id" ]; - unset( $terms_by_id[ "$term_id" ] ); - } - } - - foreach ( $terms_by_id as $term_id => $term ) { - $return[] = $term; - } - - return $return; + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return $this->new_instance->get_menus( $args ); } /** * Get first menu taxonomy "leaf". * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param int $post_id Post ID. * * @return bool|WP_Term|WP_Error|null */ public function get_menu_item_menu_leaf( $post_id ) { - // Get first menu taxonomy "leaf". - $term_ids = wp_get_object_terms( $post_id, self::MENU_TAX, array( 'fields' => 'ids' ) ); - - foreach ( $term_ids as $term_id ) { - $children = get_term_children( $term_id, self::MENU_TAX ); - if ( ! $children ) { - break; - } - } - - if ( ! isset( $term_id ) ) { - return false; - } - - return get_term( $term_id, self::MENU_TAX ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return $this->new_instance->get_menu_item_menu_leaf( $post_id ); } /** * Get a list of the labels linked to a menu item. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param int $post_id Post ID. * * @return void */ public function list_labels( $post_id = 0 ) { - $post = get_post( $post_id ); - echo get_the_term_list( $post->ID, self::MENU_ITEM_LABEL_TAX, '', _x( ', ', 'Nova label separator', 'jetpack' ), '' ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->list_labels( $post_id ); } /** * Get a list of the labels linked to a menu item, with links to manage them. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param int $post_id Post ID. * * @return void */ public function list_admin_labels( $post_id = 0 ) { - $post = get_post( $post_id ); - $labels = get_the_terms( $post->ID, self::MENU_ITEM_LABEL_TAX ); - if ( ! empty( $labels ) ) { - $out = array(); - foreach ( $labels as $label ) { - $out[] = sprintf( - '%s', - esc_url( - add_query_arg( - array( - 'post_type' => self::MENU_ITEM_POST_TYPE, - 'taxonomy' => self::MENU_ITEM_LABEL_TAX, - 'term' => $label->slug, - ), - 'edit.php' - ) - ), - esc_html( - sanitize_term_field( 'name', $label->name, $label->term_id, self::MENU_ITEM_LABEL_TAX, 'display' ) - ) - ); - } - - echo implode( _x( ', ', 'Nova label separator', 'jetpack' ), $out ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- we build $out ourselves and escape things there. - } else { - esc_html_e( 'No Labels', 'jetpack' ); - } + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->list_admin_labels( $post_id ); } /** * Update post meta with the price defined in meta box. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param int $post_id Post ID. * @param string $price Price. * * @return int|bool */ public function set_price( $post_id = 0, $price = '' ) { - return update_post_meta( $post_id, 'nova_price', $price ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return $this->new_instance->set_price( $post_id, $price ); } /** * Get the price of a menu item. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param int $post_id Post ID. * * @return bool|string */ public function get_price( $post_id = 0 ) { - return get_post_meta( $post_id, 'nova_price', true ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return $this->new_instance->get_price( $post_id ); } /** * Echo the price of a menu item. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param int $post_id Post ID. * * @return void */ public function display_price( $post_id = 0 ) { - echo esc_html( $this->get_price( $post_id ) ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->display_price( $post_id ); } /* Menu Item Loop Markup */ @@ -1535,12 +650,15 @@ public function display_price( $post_id = 0 ) { * Get markup for a menu item. * Note: Does not support nested loops. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param null|string $field The field to get the value for. * * @return array */ public function get_menu_item_loop_markup( $field = null ) { // phpcs:ignore VariableAnalysis.CodeAnalysis.VariableAnalysis.UnusedVariable - return $this->menu_item_loop_markup; + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return $this->new_instance->get_menu_item_loop_markup( $field ); } /** @@ -1548,201 +666,114 @@ public function get_menu_item_loop_markup( $field = null ) { // phpcs:ignore Var * Attached to the 'template_include' *filter*, * which fires only during a real blog view (not in admin, feeds, etc.) * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param string $template Template File. * * @return string Template File. VERY Important. */ public function setup_menu_item_loop_markup__in_filter( $template ) { - add_action( 'loop_start', array( $this, 'start_menu_item_loop' ) ); - - return $template; + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return $this->new_instance->setup_menu_item_loop_markup__in_filter( $template ); } /** * If the Query is a Menu Item Query, start outputing the Menu Item Loop Marku * Attached to the 'loop_start' action. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param WP_Query $query Post query. * * @return void */ public function start_menu_item_loop( $query ) { - if ( ! $this->is_menu_item_query( $query ) ) { - return; - } - - $this->menu_item_loop_last_term_id = false; - $this->menu_item_loop_current_term = false; - - add_action( 'the_post', array( $this, 'menu_item_loop_each_post' ) ); - add_action( 'loop_end', array( $this, 'stop_menu_item_loop' ) ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->start_menu_item_loop( $query ); } /** * Outputs the Menu Item Loop Marku * Attached to the 'the_post' action. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param WP_Post $post Post object. * * @return void */ public function menu_item_loop_each_post( $post ) { - $this->menu_item_loop_current_term = $this->get_menu_item_menu_leaf( $post->ID ); - - if ( - false === $this->menu_item_loop_current_term - || null === $this->menu_item_loop_current_term - || is_wp_error( $this->menu_item_loop_current_term ) - ) { - return; - } - - if ( false === $this->menu_item_loop_last_term_id ) { - // We're at the very beginning of the loop - - $this->menu_item_loop_open_element( 'menu' ); // Start a new menu section - $this->menu_item_loop_header(); // Output the menu's header - } elseif ( $this->menu_item_loop_last_term_id !== $this->menu_item_loop_current_term->term_id ) { - // We're not at the very beginning but still need to start a new menu section. End the previous menu section first. - - $this->menu_item_loop_close_element( 'menu' ); // End the previous menu section - $this->menu_item_loop_open_element( 'menu' ); // Start a new menu section - $this->menu_item_loop_header(); // Output the menu's header - } - - $this->menu_item_loop_last_term_id = $this->menu_item_loop_current_term->term_id; + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->menu_item_loop_each_post( $post ); } /** * If the Query is a Menu Item Query, stop outputing the Menu Item Loop Marku * Attached to the 'loop_end' action. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param WP_Query $query Post query. * * @return void */ public function stop_menu_item_loop( $query ) { - if ( ! $this->is_menu_item_query( $query ) ) { - return; - } - - remove_action( 'the_post', array( $this, 'menu_item_loop_each_post' ) ); - remove_action( 'loop_start', array( $this, 'start_menu_item_loop' ) ); - remove_action( 'loop_end', array( $this, 'stop_menu_item_loop' ) ); - - $this->menu_item_loop_close_element( 'menu' ); // End the last menu section + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->stop_menu_item_loop( $query ); } /** * Outputs the Menu Group Header * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @return void */ public function menu_item_loop_header() { - $this->menu_item_loop_open_element( 'menu_header' ); - $this->menu_item_loop_open_element( 'menu_title' ); - echo esc_html( $this->menu_item_loop_current_term->name ); // @todo tax filter - $this->menu_item_loop_close_element( 'menu_title' ); - if ( $this->menu_item_loop_current_term->description ) : - $this->menu_item_loop_open_element( 'menu_description' ); - echo esc_html( $this->menu_item_loop_current_term->description ); // @todo kses, tax filter - $this->menu_item_loop_close_element( 'menu_description' ); - endif; - $this->menu_item_loop_close_element( 'menu_header' ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->menu_item_loop_header(); } /** * Outputs a Menu Item Markup element opening tag * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param string $field - Menu Item Markup settings field. * * @return void */ public function menu_item_loop_open_element( $field ) { - $markup = $this->get_menu_item_loop_markup(); - /** - * Filter a menu item's element opening tag. - * - * @module custom-content-types - * - * @since 4.4.0 - * - * @param string $tag Menu item's element opening tag. - * @param string $field Menu Item Markup settings field. - * @param array $markup Array of markup elements for the menu item. - * @param false|object $term Taxonomy term for current menu item. - */ - echo apply_filters( // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- it's escaped in menu_item_loop_class. - 'jetpack_nova_menu_item_loop_open_element', - '<' . tag_escape( $markup[ "{$field}_tag" ] ) . $this->menu_item_loop_class( $markup[ "{$field}_class" ] ) . ">\n", - $field, - $markup, - $this->menu_item_loop_current_term - ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->menu_item_loop_open_element( $field ); } /** * Outputs a Menu Item Markup element closing tag * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param string $field - Menu Item Markup settings field. * * @return void */ public function menu_item_loop_close_element( $field ) { - $markup = $this->get_menu_item_loop_markup(); - /** - * Filter a menu item's element closing tag. - * - * @module custom-content-types - * - * @since 4.4.0 - * - * @param string $tag Menu item's element closing tag. - * @param string $field Menu Item Markup settings field. - * @param array $markup Array of markup elements for the menu item. - * @param false|object $term Taxonomy term for current menu item. - */ - echo apply_filters( // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- tag_escape is used. - 'jetpack_nova_menu_item_loop_close_element', - '\n", - $field, - $markup, - $this->menu_item_loop_current_term - ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + $this->new_instance->menu_item_loop_close_element( $field ); } /** * Returns a Menu Item Markup element's class attribute. * + * @deprecated 14.3 Moved to Classic Theme Helper package. + * * @param string $class Class name. * * @return string HTML class attribute with leading whitespace. */ public function menu_item_loop_class( $class ) { - if ( ! $class ) { - return ''; - } - - /** - * Filter a menu Item Markup element's class attribute. - * - * @module custom-content-types - * - * @since 4.4.0 - * - * @param string $tag Menu Item Markup element's class attribute. - * @param string $class Menu Item Class name. - * @param false|object $term Taxonomy term for current menu item. - */ - return apply_filters( - 'jetpack_nova_menu_item_loop_class', - ' class="' . esc_attr( $class ) . '"', - $class, - $this->menu_item_loop_current_term - ); + _deprecated_function( __FUNCTION__, 'jetpack-14.3' ); + return $this->new_instance->menu_item_loop_class( $class ); } } - - add_action( 'init', array( 'Nova_Restaurant', 'init' ) ); - -} \ No newline at end of file +} diff --git a/projects/plugins/jetpack/modules/infinite-scroll/infinity.php b/projects/plugins/jetpack/modules/infinite-scroll/infinity.php index cd0230308ec87..dd50fb6292128 100644 --- a/projects/plugins/jetpack/modules/infinite-scroll/infinity.php +++ b/projects/plugins/jetpack/modules/infinite-scroll/infinity.php @@ -3,7 +3,6 @@ // phpcs:disable Universal.Files.SeparateFunctionsFromOO.Mixed -- TODO: Move classes to appropriately-named class files. use Automattic\Jetpack\Assets; -use Automattic\Jetpack\Redirect; /* Plugin Name: The Neverending Home Page. @@ -432,36 +431,11 @@ public function settings_api_init() { return; } - if ( defined( 'IS_WPCOM' ) && IS_WPCOM ) { - // This setting is no longer configurable in wp-admin on WordPress.com -- leave a pointer - add_settings_field( - self::$option_name_enabled, - '' . esc_html__( 'Infinite Scroll Behavior', 'jetpack' ) . '', - array( $this, 'infinite_setting_html_calypso_placeholder' ), - 'reading' - ); - return; - } - // Add the setting field [infinite_scroll] and place it in Settings > Reading add_settings_field( self::$option_name_enabled, '' . esc_html__( 'Infinite Scroll Behavior', 'jetpack' ) . '', array( $this, 'infinite_setting_html' ), 'reading' ); register_setting( 'reading', self::$option_name_enabled, 'esc_attr' ); } - /** - * Render the redirect link to the infinite scroll settings in Calypso. - */ - public function infinite_setting_html_calypso_placeholder() { - $details = get_blog_details(); - $writing_url = Redirect::get_url( 'calypso-settings-writing', array( 'site' => $details->domain ) ); - echo '' . sprintf( - /* translators: Variables are the enclosing link to the settings page */ - esc_html__( 'This option has moved. You can now manage it %1$shere%2$s.', 'jetpack' ), - '', - '' - ) . ''; - } - /** * HTML code to display a checkbox true/false option * for the infinite_scroll setting. @@ -1377,7 +1351,7 @@ function ( $script_name ) use ( $initial_scripts ) { */ public function query() { if ( ! isset( $_REQUEST['page'] ) || ! current_theme_supports( 'infinite-scroll' ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- no changes to the site. - die; + die( 0 ); } // @todo see if we should validate this nonce since we use it to form a query. diff --git a/projects/plugins/jetpack/modules/likes/jetpack-likes-settings.php b/projects/plugins/jetpack/modules/likes/jetpack-likes-settings.php index 2310b16735c47..d01a19d8ad788 100644 --- a/projects/plugins/jetpack/modules/likes/jetpack-likes-settings.php +++ b/projects/plugins/jetpack/modules/likes/jetpack-likes-settings.php @@ -733,7 +733,7 @@ public function process_update_requests_if_sharedaddy_not_loaded() { /** This action is documented in modules/sharedaddy/sharing.php */ do_action( 'sharing_admin_update' ); wp_safe_redirect( admin_url( 'options-general.php?page=sharing&update=saved' ) ); - die(); + die( 0 ); } } } diff --git a/projects/plugins/jetpack/modules/module-extras.php b/projects/plugins/jetpack/modules/module-extras.php index 3d06191331bb7..5fe23809b9ed0 100644 --- a/projects/plugins/jetpack/modules/module-extras.php +++ b/projects/plugins/jetpack/modules/module-extras.php @@ -14,7 +14,6 @@ */ $tools = array( // Always loaded, but only registered if theme supports it. - 'custom-post-types/nova.php', 'geo-location.php', // Those oEmbed providers are always available. 'shortcodes/facebook.php', diff --git a/projects/plugins/jetpack/modules/notes.php b/projects/plugins/jetpack/modules/notes.php index 58f2d612759a0..8f6118938c413 100644 --- a/projects/plugins/jetpack/modules/notes.php +++ b/projects/plugins/jetpack/modules/notes.php @@ -192,12 +192,16 @@ public function admin_bar_menu() { $third_party_cookie_check_iframe = ''; $title = self::get_notes_markup(); + + // The default fallback is `en_US`. Remove underscore if present, noting that lang codes can be more than three chars. + $user_locale = strtolower( explode( '_', $user_locale, 2 )[0] ); + $wp_admin_bar->add_menu( array( 'id' => 'notes', 'title' => $title, 'meta' => array( - 'html' => '' . $third_party_cookie_check_iframe, + 'html' => '' . $third_party_cookie_check_iframe, 'class' => 'menupop', ), 'parent' => 'top-secondary', diff --git a/projects/plugins/jetpack/modules/plugin-search.php b/projects/plugins/jetpack/modules/plugin-search.php index 32923cce2360f..b2b1352cd1662 100644 --- a/projects/plugins/jetpack/modules/plugin-search.php +++ b/projects/plugins/jetpack/modules/plugin-search.php @@ -14,7 +14,7 @@ // Disable direct access and execution. if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } if ( diff --git a/projects/plugins/jetpack/modules/related-posts/class.related-posts-customize.php b/projects/plugins/jetpack/modules/related-posts/class.related-posts-customize.php index 41703a5ebae8c..ec70f06218cde 100644 --- a/projects/plugins/jetpack/modules/related-posts/class.related-posts-customize.php +++ b/projects/plugins/jetpack/modules/related-posts/class.related-posts-customize.php @@ -4,7 +4,7 @@ // Exit if file is accessed directly. if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } /** diff --git a/projects/plugins/jetpack/modules/related-posts/jetpack-related-posts.php b/projects/plugins/jetpack/modules/related-posts/jetpack-related-posts.php index fcbb64cefd177..a17f7ba4c03e9 100644 --- a/projects/plugins/jetpack/modules/related-posts/jetpack-related-posts.php +++ b/projects/plugins/jetpack/modules/related-posts/jetpack-related-posts.php @@ -7,6 +7,7 @@ use Automattic\Jetpack\Assets; use Automattic\Jetpack\Blocks; +use Automattic\Jetpack\Redirect; use Automattic\Jetpack\Sync\Settings; /** @@ -736,6 +737,28 @@ public function print_setting_html() { $ui_settings // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- data is escaped when variable is set. ); } else { + // Hide settings that does not take effect on block themes. + if ( wp_is_block_theme() ) { + $ui_settings = sprintf( + '

    %s %s

    ', + esc_url( + Redirect::get_url( + 'jetpack-support-related-posts', + array( + 'anchor' => 'adding-related-posts-block-theme', + 'site' => $this->get_blog_id(), + ) + ) + ), + esc_html__( 'Add a Related Posts Block to your site’s template in the site editor', 'jetpack' ), + esc_html__( 'to keep your visitors engaged with related content at the bottom of each post.', 'jetpack' ) + ); + printf( + $ui_settings // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- data is escaped when variable is set. + ); + return; + } + $template = <<
  • @@ -1318,7 +1341,7 @@ protected function action_frontend_init_ajax( array $excludes ) { echo wp_json_encode( $response ); - exit(); + exit( 0 ); } /** diff --git a/projects/plugins/jetpack/modules/sharedaddy/services/class-jetpack-mastodon-modal.php b/projects/plugins/jetpack/modules/sharedaddy/services/class-jetpack-mastodon-modal.php index dd013d858b7c1..353e792a119aa 100644 --- a/projects/plugins/jetpack/modules/sharedaddy/services/class-jetpack-mastodon-modal.php +++ b/projects/plugins/jetpack/modules/sharedaddy/services/class-jetpack-mastodon-modal.php @@ -59,7 +59,7 @@ public static function modal() { // Render the modal. self::render_modal(); - die(); + die( 0 ); } /** diff --git a/projects/plugins/jetpack/modules/sharedaddy/sharing-sources.php b/projects/plugins/jetpack/modules/sharedaddy/sharing-sources.php index 5016032ecee59..20c1abf438a39 100644 --- a/projects/plugins/jetpack/modules/sharedaddy/sharing-sources.php +++ b/projects/plugins/jetpack/modules/sharedaddy/sharing-sources.php @@ -625,7 +625,7 @@ public function redirect_request( $url ) { // We set up this custom header to indicate to search engines not to index this page. header( 'X-Robots-Tag: noindex, nofollow' ); - die(); + die( 0 ); } /** @@ -978,7 +978,7 @@ public function process_request( $post, array $post_data ) { wp_send_json_success(); } else { wp_safe_redirect( get_permalink( $post->ID ) . '?shared=email&msg=fail' ); - exit; + exit( 0 ); } wp_die(); @@ -2141,7 +2141,7 @@ public function process_request( $post, array $post_data ) { if ( empty( $blogs ) ) { wp_safe_redirect( get_permalink( $post->ID ) ); - die(); + die( 0 ); } $blog = current( $blogs ); @@ -2761,7 +2761,7 @@ public function process_request( $post, array $post_data ) { parent::redirect_request( $pinterest_url ); } else { echo '// share count bumped'; - die(); + die( 0 ); } } diff --git a/projects/plugins/jetpack/modules/sharedaddy/sharing.php b/projects/plugins/jetpack/modules/sharedaddy/sharing.php index 1f30244b52825..f34c492860b2f 100644 --- a/projects/plugins/jetpack/modules/sharedaddy/sharing.php +++ b/projects/plugins/jetpack/modules/sharedaddy/sharing.php @@ -120,7 +120,7 @@ public function process_requests() { do_action( 'sharing_admin_update' ); wp_safe_redirect( admin_url( 'options-general.php?page=sharing&update=saved' ) ); - die(); + die( 0 ); } } @@ -165,7 +165,7 @@ public function ajax_save_services() { explode( ',', sanitize_text_field( wp_unslash( $_POST['visible'] ) ) ), explode( ',', sanitize_text_field( wp_unslash( $_POST['hidden'] ) ) ) ); - die(); + die( 0 ); } } @@ -195,7 +195,7 @@ public function ajax_new_service() { $service->button_style = 'icon-text'; $this->output_preview( $service ); - die(); + die( 0 ); } } @@ -249,7 +249,7 @@ public function ajax_save_options() { echo ''; $service->button_style = 'icon-text'; $this->output_preview( $service ); - die(); + die( 0 ); } } diff --git a/projects/plugins/jetpack/modules/sitemaps.php b/projects/plugins/jetpack/modules/sitemaps.php index 55c98cafdd970..6e9fbed0532e1 100644 --- a/projects/plugins/jetpack/modules/sitemaps.php +++ b/projects/plugins/jetpack/modules/sitemaps.php @@ -17,7 +17,7 @@ * Disable direct access and execution. */ if ( ! defined( 'ABSPATH' ) ) { - exit; + exit( 0 ); } if ( '1' == get_option( 'blog_public' ) ) { // phpcs:ignore Universal.Operators.StrictComparisons.LooseEqual diff --git a/projects/plugins/jetpack/modules/sitemaps/sitemaps.php b/projects/plugins/jetpack/modules/sitemaps/sitemaps.php index 10591542c3ef8..584cf1288c785 100644 --- a/projects/plugins/jetpack/modules/sitemaps/sitemaps.php +++ b/projects/plugins/jetpack/modules/sitemaps/sitemaps.php @@ -175,7 +175,7 @@ private function serve_raw_and_die( $the_content_type, $the_content ) { echo $the_content; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- All content created by Jetpack. - die(); + die( 0 ); } /** diff --git a/projects/plugins/jetpack/modules/stats.php b/projects/plugins/jetpack/modules/stats.php index 04e341081d7b0..15af72ff14e66 100644 --- a/projects/plugins/jetpack/modules/stats.php +++ b/projects/plugins/jetpack/modules/stats.php @@ -233,7 +233,7 @@ function stats_admin_menu() { $relative_pos = strpos( $redirect_url, '/wp-admin/' ); if ( false !== $relative_pos ) { wp_safe_redirect( admin_url( substr( $redirect_url, $relative_pos + 10 ) ) ); - exit; + exit( 0 ); } } @@ -389,7 +389,7 @@ function jetpack_admin_ui_stats_report_page_wrapper() { function stats_reports_page( $main_chart_only = false ) { if ( isset( $_GET['dashboard'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended stats_dashboard_widget_content(); - exit; // @phan-suppress-current-line PhanPluginUnreachableCode -- Safer to include it even though stats_dashboard_widget_content() never returns. + exit( 0 ); // @phan-suppress-current-line PhanPluginUnreachableCode -- Safer to include it even though stats_dashboard_widget_content() never returns. } $blog_id = Stats_Options::get_option( 'blog_id' ); @@ -613,7 +613,7 @@ function stats_reports_page( $main_chart_only = false ) { header( 'Content-Type: ' . $type ); header( 'Content-Length: ' . strlen( $img ) ); echo $img; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped - die(); + die( 0 ); } } @@ -623,7 +623,7 @@ function stats_reports_page( $main_chart_only = false ) { } if ( isset( $_GET['noheader'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended - die; + die( 0 ); } } @@ -1178,7 +1178,7 @@ function stats_dashboard_widget_content() {